5
respostas

Erro após incluir API

3 2024-05-26T22:36:53.510-03:00 INFO 17412 --- [ main] .s.b.a.l.ConditionEvaluationReportLogger :

Error starting ApplicationContext. To display the condition evaluation report re-run your application with 'debug' enabled. 2024-05-26T22:36:53.541-03:00 ERROR 17412 --- [ main] o.s.boot.SpringApplication : Application run failed

java.lang.IllegalStateException: Failed to execute CommandLineRunner at org.springframework.boot.SpringApplication.callRunner(SpringApplication.java:774) ~[spring-boot-3.1.1.jar:3.1.1] at org.springframework.boot.SpringApplication.callRunners(SpringApplication.java:755) ~[spring-boot-3.1.1.jar:3.1.1] at org.springframework.boot.SpringApplication.run(SpringApplication.java:319) ~[spring-boot-3.1.1.jar:3.1.1] at org.springframework.boot.SpringApplication.run(SpringApplication.java:1306) ~[spring-boot-3.1.1.jar:3.1.1] at org.springframework.boot.SpringApplication.run(SpringApplication.java:1295) ~[spring-boot-3.1.1.jar:3.1.1] at br.com.alura.screenmatch.ScreenmatchApplication.main(ScreenmatchApplication.java:12) ~[classes/:na] Caused by: com.theokanning.openai.OpenAiHttpException: You exceeded your current quota, please check your plan and billing details. For more information on this error, read the docs: https://platform.openai.com/docs/guides/error-codes/api-errors. at com.theokanning.openai.service.OpenAiService.execute(OpenAiService.java:326) ~[service-0.14.0.jar:na] at com.theokanning.openai.service.OpenAiService.createCompletion(OpenAiService.java:121) ~[service-0.14.0.jar:na] at br.com.alura.screenmatch.service.ConsultaChatGPT.obterTraducao(ConsultaChatGPT.java:17) ~[classes/:na] at br.com.alura.screenmatch.model.Serie.(Serie.java:25) ~[classes/:na] at br.com.alura.screenmatch.principal.Principal.lambda$listasSeriesBuscadas$0(Principal.java:84) ~[classes/:na] at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:197) ~[na:na] at java.base/java.util.ArrayList$ArrayListSpliterator.forEachRemaining(ArrayList.java:1625) ~[na:na] at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:509) ~[na:na] at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:499) ~[na:na] at java.base/java.util.stream.ReduceOps$ReduceOp.evaluateSequential(ReduceOps.java:921) ~[na:na] at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234) ~[na:na] at java.base/java.util.stream.ReferencePipeline.collect(ReferencePipeline.java:682) ~[na:na] at br.com.alura.screenmatch.principal.Principal.listasSeriesBuscadas(Principal.java:85) ~[classes/:na] at br.com.alura.screenmatch.principal.Principal.exibeMenu(Principal.java:44) ~[classes/:na] at br.com.alura.screenmatch.ScreenmatchApplication.run(ScreenmatchApplication.java:18) ~[classes/:na] at org.springframework.boot.SpringApplication.callRunner(SpringApplication.java:771) ~[spring-boot-3.1.1.jar:3.1.1] ... 5 common frames omitted Caused by: retrofit2.adapter.rxjava2.HttpException: HTTP 429 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:317) ~[service-0.14.0.jar:na] ... 20 common frames omitted

Process finished with exit code 1

5 respostas

Oi, Juliana! Tudo bem?

De acordo com a mensagem de erro "You exceeded your current quota, please check your plan and billing details.", você ultrapassou o limite de uso da sua chave de API, por isso o problema.

Para tentar contorná-lo podemos, então:

  1. Acessar o painel de controle da OpenAI e verificar o seu uso atual e o limite da sua conta. Caso ache necessário, há a opção de atualizar o plano ou adicionar mais créditos, o que seria uma opção paga.

  2. Porém, podemos gerar uma nova chave de API, se ainda estivermos dentro do período de uso gratuito, e substituir a chave antiga no código.

  3. É importante também reduzir o uso da API, diminuindo o número de chamadas para ela.

Espero ter ajudado!

Um forte abraço e bons estudos!

Caso este post tenha te ajudado, por favor, marcar como solucionado ✓

Olá Juliana, tudo bem?

Assim como a Sarah Ocy que te respondeu acima, também faço parte do Suporte Educacional no Fórum da Alura e só estou passando para te atualizar, que atualmente a API gratuita não está funcionando tão bem. Por isso, foi adicionada uma nova atividade utilizando outra API e você pode acessar a atividade clicando neste link.

Abraços e bons estudos!

Monalisa Meyrelle de Sousa Silva, a API dessa nova atividade, que utiliza a libretranslate.de, também não está funcionando, apesar da especificação na atividade de tentar uma ou duas vezes para estabilizar ela não funciona, eu já tentei mais de 10 vezes e sempre retorna esse erro.

net.suuft.libretranslate.exception.BadTranslatorResponseException
    at net.suuft.libretranslate.Translator.translate(Translator.java:39)
    at net.suuft.libretranslate.Translator.translate(Translator.java:54)

Oi Rodrigo.

Uma aluna estava enfrentando o mesmo e ela encontrou uma solução para esse problema no tópico [Projeto] Alternativa de tradução à API do ChatGPT.

De toda forma, o tópico será encaminhado para análise da equipe responsável. Agradeço por informar.

Abraços.

Oi Monalisa Meyrelle de Sousa Silva. Eu dei uma olhada nessa proposta de solução que você mencionou e dei uma alterada no código, acho que ficou mais otimizado e legível, gostaria que você desse uma olhada se possível. [Projeto] Alternativa de API para tradução