Hi, can you provide a proxy support during external spring-ai api calls? e.g. to openai or azure or huggingface.. Thanks, regards
Comment From: yaoyuandev
Try command line option. I think it's more flexible. Java Networking and Proxies
java -Dhttp.proxyHost=localhost -Dhttp.proxyPort=18080 -jar app.jar
Comment From: williamspindox
Thanks, I put them in .mvn/jvm.config. To use a proxy even during debugging I solved it by using:
System.setProperty("https.proxyHost", "proxy.host"); System.setProperty("https.proxyPort", "proxy.port"); System.setProperty("https.proxyHost", "proxy.host"); System.setProperty("https.proxyPort", "proxy.port");
Comment From: williamspindox
The workaround worked with "spring-ai-openai-spring-boot-starter", but not for "spring-ai-azure-openai-spring-boot-starter", I get:
java.net.UnknownHostException: xxx-openai-api.openai.azure.com at java.base/java.net.InetAddress$CachedAddresses.get(InetAddress.java:801) ~[na:na] at java.base/java.net.InetAddress.getAllByName0(InetAddress.java:1533) ~[na:na] at java.base/java.net.InetAddress.getAllByName(InetAddress.java:1385) ~[na:na] at java.base/java.net.InetAddress.getAllByName(InetAddress.java:1306) ~[na:na] at io.netty.util.internal.SocketUtils$9.run(SocketUtils.java:169) ~[netty-common-4.1.101.Final.jar:4.1.101.Final] at io.netty.util.internal.SocketUtils$9.run(SocketUtils.java:166) ~[netty-common-4.1.101.Final.jar:4.1.101.Final] at java.base/java.security.AccessController.doPrivileged(AccessController.java:569) ~[na:na] at io.netty.util.internal.SocketUtils.allAddressesByName(SocketUtils.java:166) ~[netty-common-4.1.101.Final.jar:4.1.101.Final] at io.netty.resolver.DefaultNameResolver.doResolveAll(DefaultNameResolver.java:50) ~[netty-resolver-4.1.101.Final.jar:4.1.101.Final] at io.netty.resolver.SimpleNameResolver.resolveAll(SimpleNameResolver.java:79) ~[netty-resolver-4.1.101.Final.jar:4.1.101.Final] at io.netty.resolver.SimpleNameResolver.resolveAll(SimpleNameResolver.java:71) ~[netty-resolver-4.1.101.Final.jar:4.1.101.Final] at io.netty.resolver.InetSocketAddressResolver.doResolveAll(InetSocketAddressResolver.java:73) ~[netty-resolver-4.1.101.Final.jar:4.1.101.Final] at io.netty.resolver.InetSocketAddressResolver.doResolveAll(InetSocketAddressResolver.java:31) ~[netty-resolver-4.1.101.Final.jar:4.1.101.Final] at io.netty.resolver.AbstractAddressResolver.resolveAll(AbstractAddressResolver.java:158) ~[netty-resolver-4.1.101.Final.jar:4.1.101.Final] at reactor.netty.transport.TransportConnector.doResolveAndConnect(TransportConnector.java:335) ~[reactor-netty-core-1.1.13.jar:1.1.13] at reactor.netty.transport.TransportConnector.lambda$connect$6(TransportConnector.java:165) ~[reactor-netty-core-1.1.13.jar:1.1.13] at reactor.core.publisher.MonoFlatMap$FlatMapMain.onNext(MonoFlatMap.java:132) ~[reactor-core-3.6.0.jar:3.6.0] at reactor.netty.transport.TransportConnector$MonoChannelPromise._subscribe(TransportConnector.java:638) ~[reactor-netty-core-1.1.13.jar:1.1.13] at reactor.netty.transport.TransportConnector$MonoChannelPromise.lambda$subscribe$0(TransportConnector.java:550) ~[reactor-netty-core-1.1.13.jar:1.1.13] at io.netty.util.concurrent.AbstractEventExecutor.runTask(AbstractEventExecutor.java:173) ~[netty-common-4.1.101.Final.jar:4.1.101.Final] at io.netty.util.concurrent.AbstractEventExecutor.safeExecute(AbstractEventExecutor.java:166) ~[netty-common-4.1.101.Final.jar:4.1.101.Final] at io.netty.util.concurrent.SingleThreadEventExecutor.runAllTasks(SingleThreadEventExecutor.java:470) ~[netty-common-4.1.101.Final.jar:4.1.101.Final] at io.netty.channel.nio.NioEventLoop.run(NioEventLoop.java:569) ~[netty-transport-4.1.101.Final.jar:4.1.101.Final] at io.netty.util.concurrent.SingleThreadEventExecutor$4.run(SingleThreadEventExecutor.java:997) ~[netty-common-4.1.101.Final.jar:4.1.101.Final] at io.netty.util.internal.ThreadExecutorMap$2.run(ThreadExecutorMap.java:74) ~[netty-common-4.1.101.Final.jar:4.1.101.Final] at io.netty.util.concurrent.FastThreadLocalRunnable.run(FastThreadLocalRunnable.java:30) ~[netty-common-4.1.101.Final.jar:4.1.101.Final] at java.base/java.lang.Thread.run(Thread.java:833) ~[na:na]
Comment From: gterminator
I have the same problem. Setting environment variables, setting up Webclient Bean, setting up ClientHttpRequestFactory didn't work too.