Spring AI Получите «Невозможно найти действительный путь сертификации для запрошенной цели», используя пользовательскую JAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Spring AI Получите «Невозможно найти действительный путь сертификации для запрошенной цели», используя пользовательскую

Сообщение Anonymous »

Я использую Spring Boot AI для базового приложения LLM. Моя компания организовала свои модели LLM по адресу https://dummy-server.xyz.com/. Чтобы проверить, как это работает, я взял пример с официального сайта Spring AI и попробовал на местном уровне. Но получение приведенной ниже ошибки. Я пытался обойти проверку сертификата SSL, но это также не работает. Есть идеи, как это решить? Пожалуйста, найдите сообщение об ошибке и мой код. < /P>
@RestController
public class ChatController {

private final OpenAiChatModel chatModel;

@Autowired
public ChatController(@Qualifier("openAiChatModel") OpenAiChatModel chatModel) {
this.chatModel = chatModel;
}

@GetMapping("/ai/generate")
public Map generate(@RequestParam(value = "message", defaultValue = "Tell me a joke") String message) {
return Map.of("generation", this.chatModel.call(message));
}

@GetMapping("/ai/generateStream")
public Flux generateStream(@RequestParam(value = "message", defaultValue = "Tell me a joke") String message) {
Prompt prompt = new Prompt(new UserMessage(message));
return this.chatModel.stream(prompt);
}
}

@Configuration
public class ChatClientConfig {

@Bean
public OpenAiChatModel openAiChatModel(@Qualifier("unsafeWebClientBuilder") WebClient unsafeWebClientBuilder) {
OpenAiApi openAiApi = new OpenAiApi("https://dummy-server.xyz.com/","OTBjZWU ... 00Mm5sdsGH", RestClient.builder(),unsafeWebClientBuilder.mutate());
return new OpenAiChatModel(openAiApi);
}
}

@Configuration
public class UnsafeWebClientConfig {
@Bean
public WebClient unsafeWebClientBuilder() throws NoSuchAlgorithmException, KeyManagementException {
HttpClient httpClient = HttpClient.create()
.secure(sslContextSpec -> {
try {
sslContextSpec.sslContext(SslContextBuilder.forClient()
.trustManager(InsecureTrustManagerFactory.INSTANCE)
.build());
} catch (SSLException e) {
throw new RuntimeException("Failed to create SSL context", e);
}
});

return WebClient.builder()
.clientConnector(new ReactorClientHttpConnector(httpClient))
.build();

}
}
< /code>
к обходу сертификата Я пробовал другие методы, также доступные в Интернете, например, «x509certificate» < /p>
Ошибка: < /p>
org.springframework.web.client.ResourceAccessException: I/O error on POST request for "https://dummy-server.xyz.com/v1/v1/chat/completions": PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target

org.springframework.beans.factory.UnsatisfiedDependencyException: Error creating bean with name 'chatController' defined in file [C:\Users\Administrator\Documents\spring-ai-multi-llm-chat-svc-main\spring-ai-multi-llm-chat-svc-main\target\classes\com\raj\nola\llm\chat\controller\ChatController.class]: Unsatisfied dependency expressed through constructor parameter 0: Error creating bean with name 'openAiChatModel' defined in class path resource [com/raj/nola/llm/chat/controller/OpenAiClientConfig.class]: Unsatisfied dependency expressed through method 'openAiChatModel' parameter 0: Error creating bean with name 'openAiApi' defined in class path resource [com/raj/nola/llm/chat/controller/OpenAiClientConfig.class]: Failed to instantiate [org.springframework.ai.openai.api.OpenAiApi]: Factory method 'openAiApi' threw exception with message: class org.springframework.web.reactive.function.client.DefaultWebClient cannot be cast to class org.springframework.web.reactive.function.client.WebClient$Builder (org.springframework.web.reactive.function.client.DefaultWebClient and org.springframework.web.reactive.function.client.WebClient$Builder are in unnamed module of loader 'app')
< /code>
Интересная вещь - та же конечная точка, которую я могу использовать из Python. Я попробовал этот простой код, и он работает как очарование. < /P>
httpx_client = httpx.Client(verify=False)
llm = OpenAI(
base_url="https://dummy-server.xyz.com/v1",
model_name=model_name,
temperature=0.9,
api_key='API_KEY',
http_client=httpx_client
)
< /code>
Я не уверен, как решить эту проблему. Так что, если кто -то может помочь.

Подробнее здесь: https://stackoverflow.com/questions/795 ... ted-target
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»