6
respostas

Erro ao executar o código

Esse erro está aparecendo e o código não roda.

You tried to access openai.ChatCompletion, but this is no longer supported in openai>=1.0.0 - see the README at https://github.com/openai/openai-python for the API.

You can run openai migrate to automatically upgrade your codebase to use the 1.0.0 interface.

Alternatively, you can pin your installation to the old version, e.g. pip install openai==0.28

A detailed migration guide is available here: https://github.com/openai/openai-python/discussions/742

6 respostas

Oi

Esse erro indica que você está tentando acessar a classe openai.ChatCompletion, que não é mais suportada na versão 1.0.0 ou superior da biblioteca OpenAI. O código que você está utilizando precisa ser atualizado para usar a nova interface.

Você tem duas opções principais para resolver isso:

  1. Atualizar seu código para usar a nova interface (recomendado):

    • Execute o comando openai migrate no seu terminal para atualizar automaticamente o seu código para a nova interface. Isso deve ajustar as chamadas de API conforme as mudanças feitas nas versões mais recentes da biblioteca.
  2. Fixar a versão da biblioteca OpenAI para uma versão mais antiga:

    • Execute o comando pip install openai==0.28 para instalar a versão 0.28 da biblioteca OpenAI. Isso manterá seu código compatível com a interface antiga, mas não é uma solução sustentável a longo prazo, pois versões mais antigas podem perder suporte e funcionalidades.

Certifique-se de revisar o guia de migração fornecido no link: https://github.com/openai/openai-python/discussions/742. Ele deve conter informações detalhadas sobre as alterações na interface e como ajustar seu código.

O comando openai migrate não funciona para Windows (Windows is not supported yet in the migration CLI). Existe alguma forma de fazer o uso sem ter que fixar a blibioteca para uma versão mais antiga?

import openai

from openai import OpenAI

client = OpenAI( # api_key defaults to os.environ.get("OPENAI_API_KEY") api_key="", )

chat_completion = client.chat.completions.create( messages=[ { "role": "system", "content": "Gere nomes de produtos fictícios sem descrição de acordo com a requisição do usuário" }, { "role": "user", "content": "Gere 5 produtos" } ], model="gpt-3.5-turbo", )

print(chat_completion)

Pode ser erro da versão do openAI tente isso depois de criar o .env com sua chave::

import os from openai import OpenAI import dotenv

dotenv.load_dotenv()

client = OpenAI( api_key=os.environ.get("OPENAI_API_KEY"), ) resposta = client.chat.completions.create( model="gpt-3.5-turbo", messages=[ { "role": "system", "content": "Gere nomes de produtos fictícios sem descrição de acordo com a requisição do usuário." }, { "role": "user", "content": "Gere 5 produtos para um e-commerce" } ] ) print(resposta)

o projeto do curso está desatualizado, as chamadas das apis mudaram https://pypi.org/project/openai/

import os
from openai import OpenAI

client = OpenAI(
    # This is the default and can be omitted
    api_key=os.environ.get("OPENAI_API_KEY"),
)

chat_completion = client.chat.completions.create(
    messages=[
        {
            "role": "user",
            "content": "Say this is a test",
        }
    ],
    model="gpt-3.5-turbo",
)

Na aula 01 - 07 Integração via código

Tive o mesmo problema dos colegas, vou tentar usar as alternativas oferecidas pelos colegas, mas o ideal seria um tutor da Alura revisar o curso e dai informar se existem poucas situações que devem ser corrigidas ou entregar outro curso com conteúdo atualizado e funcional.