Skip to main content
OpenAI ChatGPT é um sistema de diálogo AI muito poderoso, que pode gerar respostas fluentes e naturais em apenas alguns segundos ao inserir palavras-chave. O ChatGPT se destaca na indústria por sua excelente capacidade de compreensão e geração de linguagem, e hoje, o ChatGPT já está amplamente aplicado em vários setores e áreas, com sua influência se tornando cada vez mais significativa. Seja em diálogos diários, escrita criativa, ou consultoria profissional, programação de código, o ChatGPT pode fornecer assistência inteligente impressionante, aumentando significativamente a eficiência e a criatividade do trabalho humano. Este documento apresenta principalmente o fluxo de uso da API OpenAI Chat Completion, que nos permite usar facilmente a funcionalidade de diálogo do OpenAI ChatGPT oficial.

Fluxo de Solicitação

Para usar a API OpenAI Chat Completion, primeiro você pode acessar a página OpenAI Chat Completion API e clicar no botão “Acquire” para obter as credenciais necessárias para a solicitação: Se você ainda não estiver logado ou registrado, será redirecionado automaticamente para a página de login, convidando-o a se registrar e fazer login. Após o registro e login, você será redirecionado de volta para a página atual. Na primeira solicitação, haverá um crédito gratuito disponível, permitindo o uso gratuito dessa API.

Uso Básico

Em seguida, você pode preencher o conteúdo correspondente na interface, como mostrado na imagem:

Na primeira vez que usar essa interface, precisamos preencher pelo menos três conteúdos: um é authorization, que pode ser selecionado diretamente na lista suspensa. O outro parâmetro é model, que é a categoria do modelo do OpenAI ChatGPT que escolhemos usar; aqui temos principalmente 20 modelos, e os detalhes podem ser vistos nos modelos que fornecemos. O último parâmetro é messages, que é um array de palavras-chave que inserimos, representando a possibilidade de enviar várias palavras-chave ao mesmo tempo, onde cada palavra-chave contém role e content, sendo que role representa o papel do questionador, e oferecemos três identidades: user, assistant, system. O outro content é o conteúdo específico da nossa pergunta. Você também pode notar que há um código de chamada correspondente gerado à direita, que você pode copiar e executar diretamente, ou pode clicar no botão “Try” para testar. Parâmetros opcionais comuns:
  • max_tokens: limita o número máximo de tokens na resposta única.
  • temperature: gera aleatoriedade, entre 0-2, quanto maior o valor, mais disperso.
  • n: quantas respostas candidatas gerar de uma vez.
  • response_format: configuração do formato de retorno.

Após a chamada, descobrimos que o resultado retornado é o seguinte:
O resultado retornado contém vários campos, descritos a seguir:
  • id, o ID da tarefa de diálogo gerada, usado para identificar exclusivamente essa tarefa de diálogo.
  • model, o modelo do OpenAI ChatGPT escolhido.
  • choices, as informações de resposta que o ChatGPT fornece para as palavras-chave.
  • usage: informações estatísticas sobre os tokens para esta pergunta e resposta.
Entre eles, choices contém as informações de resposta do ChatGPT, onde podemos ver como mostrado na imagem.

Podemos ver que o campo content dentro de choices contém o conteúdo específico da resposta do ChatGPT.

Resposta em Fluxo

Essa interface também suporta resposta em fluxo, o que é muito útil para integração com páginas da web, permitindo que a página exiba o efeito de exibição palavra por palavra. Se você deseja retornar a resposta em fluxo, pode alterar o parâmetro stream no cabeçalho da solicitação para true. A modificação é mostrada na imagem, mas o código de chamada precisa ter as alterações correspondentes para suportar a resposta em fluxo.

Após alterar stream para true, a API retornará os dados JSON correspondentes linha por linha, e no nível do código, precisamos fazer as modificações necessárias para obter os resultados linha por linha. Exemplo de código de chamada em Python:
O efeito de saída é o seguinte:
Pode-se ver que a resposta contém muitos data, onde data contém as choices, que são o conteúdo da resposta mais recente, consistente com o conteúdo apresentado anteriormente. choices é o novo conteúdo da resposta, que você pode integrar ao seu sistema. Além disso, o término da resposta em fluxo é determinado pelo conteúdo de data; se o conteúdo for [DONE], isso indica que a resposta em fluxo foi completamente finalizada. O resultado retornado em data possui vários campos, conforme descrito a seguir:
  • id, o ID gerado para esta tarefa de diálogo, usado para identificar exclusivamente esta tarefa de diálogo.
  • model, o modelo escolhido do site oficial do OpenAI ChatGPT.
  • choices, as informações de resposta que o ChatGPT forneceu em resposta à pergunta.
JavaScript também é suportado, como mostrado no código de chamada em fluxo abaixo:
Exemplo de código em Java:
Outras linguagens podem ser adaptadas conforme necessário, o princípio é o mesmo.

Diálogo em várias rodadas

Se você deseja integrar a funcionalidade de diálogo em várias rodadas, precisa enviar vários termos de pergunta no campo messages, exemplos específicos de vários termos de pergunta são mostrados na imagem abaixo:

Código de exemplo em Python:
Ao enviar várias perguntas, é possível realizar um diálogo em várias rodadas e obter a seguinte resposta:
Pode-se ver que as informações contidas em choices são consistentes com o conteúdo de uso básico, incluindo o conteúdo específico da resposta do ChatGPT a múltiplos diálogos, permitindo assim responder a perguntas correspondentes com base em múltiplos conteúdos de diálogo.

Integração com OpenAI-Python

O serviço da API de conclusão de chat do OpenAI é alimentado pelo serviço oficial do OpenAI, que pode ser consultado no OpenAI-Python. Este artigo irá apresentar brevemente como usar o serviço fornecido oficialmente.
  1. Primeiro, é necessário configurar um ambiente local de Python, este processo pode ser pesquisado no Google.
  2. Baixe e instale um ambiente de desenvolvimento, como o editor VSCode.
  3. Configure a variável de ambiente OpenAI.
  • No diretório do projeto, crie um arquivo chamado .env e salve.
  • Conteúdo do arquivo .env:
Substitua sk-xxx pela sua própria chave. OPENAI_BASE_URL é a interface proxy para acessar o OpenAI.
  1. Instale os pacotes de dependência do projeto.
No Mac OS, o comando é:
  1. Crie um arquivo de código de exemplo.
Suponha que criamos um código de exemplo index.py, com o seguinte conteúdo:

Modelo de Navegação

Os modelos gpt-3.5-browsing e gpt-4-browsing diferem de outros modelos, pois podem realizar buscas na internet com base nas perguntas e retornar os resultados ajustados para você. Este artigo irá demonstrar a funcionalidade de navegação com um exemplo específico, e você pode preencher o conteúdo correspondente na interface da API de conclusão de chat do OpenAI, como mostrado na imagem:

Você também pode notar que há um código de chamada correspondente gerado à direita, que você pode copiar e executar diretamente, ou pode clicar no botão “Try” para testar.

Após a chamada, descobrimos que o resultado retornado é o seguinte:
Pode-se ver que as informações de resposta dentro de choices são obtidas com base na consulta à internet e também fornecem links relevantes. As informações de resposta dentro de choices devem ser renderizadas usando a sintaxe markdown para obter a melhor experiência, refletindo assim a poderosa vantagem da funcionalidade de navegação do nosso modelo.

Modelo Visual

gpt-4o é um modelo de linguagem de grande porte multimodal desenvolvido pela OpenAI, que adiciona capacidade de compreensão visual ao GPT-4. Este modelo pode processar simultaneamente entradas de texto e imagem, realizando compreensão e geração multimodal. O processamento de texto usando o modelo gpt-4o é consistente com o conteúdo de uso básico mencionado anteriormente. Abaixo, será apresentada uma breve introdução sobre como usar a capacidade de processamento de imagem do modelo. A capacidade de processamento de imagem do modelo gpt-4o é principalmente ativada adicionando um campo type ao conteúdo original de content, permitindo saber se o que está sendo enviado é texto ou imagem, e assim utilizar a capacidade de processamento de imagem do modelo gpt-4o. A seguir, serão abordadas duas maneiras de chamar essa funcionalidade: usando Curl e Python.
  • Método de script Curl
  • Método de script Python
Então, pode-se obter o resultado abaixo, onde as informações dos campos são consistentes com o texto acima, conforme segue:
Pode-se ver que o conteúdo da resposta é baseado na imagem, portanto, através das duas maneiras acima, é possível utilizar facilmente as capacidades de processamento de texto e imagem do modelo gpt-4-vision. Além do gpt-4o, há um modelo de custo mais baixo chamado gpt-4o-mini. O gpt-4o-mini é a mais nova geração de modelos de linguagem de grande porte desenvolvidos pela OpenAI, que não só tem uma resposta rápida, mas também é mais barato e suporta multimodalidade. O uso da funcionalidade de visão pode ser referenciado no conteúdo de uso do modelo gpt-4o acima.

Modelo de Desenho GPT-4o

Exemplo de solicitação:
Exemplo de resultado:

Tratamento de Erros

Ao chamar a API, se ocorrer um erro, a API retornará o código de erro e a informação correspondente. Por exemplo:
  • 400 token_mismatched: Solicitação inválida, possivelmente devido a parâmetros ausentes ou inválidos.
  • 400 api_not_implemented: Solicitação inválida, possivelmente devido a parâmetros ausentes ou inválidos.
  • 401 invalid_token: Não autorizado, token de autorização inválido ou ausente.
  • 429 too_many_requests: Muitas solicitações, você excedeu o limite de taxa.
  • 500 api_error: Erro interno do servidor, algo deu errado no servidor.

Exemplo de Resposta de Erro

Conclusão

Através deste documento, você já entendeu como usar a API de Conclusão de Chat da OpenAI para implementar facilmente a funcionalidade de conversa do OpenAI ChatGPT. Esperamos que este documento possa ajudá-lo a integrar e usar melhor essa API. Se tiver alguma dúvida, entre em contato com nossa equipe de suporte técnico.