1
resposta

Erro ChatGpt com o Assistant

No Curso "Gpt e Java ... Chatbot" tentei rodar o código implementado na aula, mas o código exibe um erro

2025-04-06T18:55:29.363-03:00 ERROR 23957 --- [nio-8080-exec-7] o.a.c.c.C.[.[.[/].[dispatcherServlet]    : 
Servlet.service() for servlet [dispatcherServlet] in context with path [] threw exception [Request processing failed: 
com.theokanning.openai.OpenAiHttpException: 
The v1 Assistants API has been deprecated. 
Please try again by setting the header 'OpenAI-Beta: assistants=v2'. 
See the migration guide for more information: https://platform.openai.com/docs/assistants/migration.] with root cause

retrofit2.adapter.rxjava2.HttpException: HTTP 400 
    at retrofit2.adapter.rxjava2.BodyObservable$BodyObserver.onNext(BodyObservable.java:57) ~[adapter-rxjava2-2.9.0.jar:na]
    at retrofit2.adapter.rxjava2.BodyObservable$BodyObserver.onNext(BodyObservable.java:38) ~[adapter-rxjava2-2.9.0.jar:na]
    at retrofit2.adapter.rxjava2.CallExecuteObservable.subscribeActual(CallExecuteObservable.java:48) ~[adapter-rxjava2-2.9.0.jar:na]
    at io.reactivex.Observable.subscribe(Observable.java:10151) ~[rxjava-2.0.0.jar:2.0.0]
    at retrofit2.adapter.rxjava2.BodyObservable.subscribeActual(BodyObservable.java:35) ~[adapter-rxjava2-2.9.0.jar:na]
    at io.reactivex.Observable.subscribe(Observable.java:10151) ~[rxjava-2.0.0.jar:2.0.0]
    at io.reactivex.internal.operators.observable.ObservableSingleSingle.subscribeActual(ObservableSingleSingle.java:35) ~[rxjava-2.0.0.jar:2.0.0]
    at io.reactivex.Single.subscribe(Single.java:2517) ~[rxjava-2.0.0.jar:2.0.0]
    at io.reactivex.Single.blockingGet(Single.java:2001) ~[rxjava-2.0.0.jar:2.0.0]
    at com.theokanning.openai.service.OpenAiService.execute(OpenAiService.java:513) ~[service-0.18.2.jar:na]
    at com.theokanning.openai.service.OpenAiService.createThread(OpenAiService.java:411) ~[service-0.18.2.jar:na]
    at br.com.alura.ecomart.chatbot.infra.openai.OpenAIClient.enviarRequisicaoChatCompletion(OpenAIClient.java:49) ~[classes/:na]
    at br.com.alura.ecomart.chatbot.domain.service.ChatbotService.responderPergunta(ChatbotService.java:21) ~[classes/:na]
    at br.com.alura.ecomart.chatbot.web.controller.ChatController.responderPergunta(ChatController.java:28) ~[classes/:na]
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) ~[na:na]
    at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) ~[na:na]
    at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) ~[na:na]
    at java.base/java.lang.reflect.Method.invoke(Method.java:568) ~[na:na]
    at org.springframework.web.method.support.InvocableHandlerMethod.doInvoke(InvocableHandlerMethod.java:254) ~[spring-web-6.1.1.jar:6.1.1]
    at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:182) ~[spring-web-6.1.1.jar:6.1.1]
    

Alguma solução para o problema?

1 resposta

Oi Luciano!

A lib adiciona um header na requisição: OpenAI-Beta: assistants=v1, mas a V1 está deprecated pela OpenAI, sendo necessário utilizar a versão V2. Porém, a lib do TheoKanning foi descontinuada e não tem como personalizar esse cabeçalho.

Infelizmente não é mais possível utilizar o modo Assistant com essa lib.

Esses cursos de integração com a OpenAI em Java serão regravados futuramente, utilizando a lib oficial da própria OpenAI.