DeepSeek API
🇵🇹 Portuguese
  • 🇺🇸 English
  • 🇯🇵 Japanese
  • 🇰🇷 Korea
  • 🇵🇹 Portuguese
  1. API Guides
DeepSeek API
🇵🇹 Portuguese
  • 🇺🇸 English
  • 🇯🇵 Japanese
  • 🇰🇷 Korea
  • 🇵🇹 Portuguese
  • Comece rapidamente
    • Sua primeira chamada de API
    • Modelos e preços
    • O parâmetro de temperatura
    • Tokens e uso de token
    • LIMITE
    • Códigos de erro
  • ReferÃência da APl
    • Introdução
    • Crie conclusão de bate -papo
      POST
    • Crie FIM Conclusão (Beta)
      POST
    • Lista modelos
      GET
    • Obtenha o saldo do usuário
      GET
  • API Guides
    • Modelo de raciocínio (Deepseek Reautner)
    • Várias rodadas de conversas
    • Conclusão do prefixo de bate -papo (beta)
    • FIM Conclusão (Beta)
    • Saída JSON
    • Chamada de função
    • Cache de contexto
  • FAQ
    • FAQ
  1. API Guides

Modelo de raciocínio (Deepseek Reautner)

deepseek-reasoner é um modelo de raciocínio desenvolvido pela Deepseek. Antes de entregar a resposta final, o modelo gera primeiro uma cadeia de pensamento (COT) para melhorar a precisão de suas respostas. Nossa API fornece aos usuários acesso ao conteúdo do COT gerado pelo deepseek-reasoner , permitindo que eles visualizem, exibam e o destilam.
Ao usar deepseek-reasoner , atualize o SDK OpenAI primeiro para apoiar os novos parâmetros.
pip3 install -U openai

Parâmetros fogo#

Entrada :
max_tokens : o comprimento máximo da resposta final após a conclusão da saída da BOT, em 3K, com um máximo de 8k. Observe que a saída do COT pode atingir até 32k tokens e o parâmetro para controlar o comprimento do COT ( reasoning_effort ) estará disponível em breve.
Saída :
reasoning_content : O conteúdo do COT , que está no mesmo nível que content na estrutura de saída. Veja o exemplo da API para obter detalhes
content o conteúdo da resposta final
Comprimento do contexto : A API suporta um comprimento máximo de contexto de 64k e o comprimento do raciocínio de saída reasoning_content não é contado dentro do comprimento do contexto de 64k.
Recursos suportados : Conclusão de bate -papo 、 Conclusão do prefixo de bate -papo (beta)
Recursos não suportados : Função Chamada 、 JSON Saída 、 FIM (Beta)
Parâmetros não suportados : temperature 、 top_p 、 presence_penalty 、 frequency_penalty 、 logprobs 、 top_logprobs . Observe que, para garantir a compatibilidade com o software existente, definindo temperature 、 top_p 、 presence_penalty 、 frequency_penalty não desencadeará um erro, mas também não terá efeito. A configuração logprobs 、 top_logprobs acionará um erro.

Conversa multi-rodada#

Em cada rodada da conversa, o modelo gera o COT ( reasoning_content ) e a resposta final ( content ). Na próxima rodada da conversa, o berço das rodadas anteriores não é concatenado no contexto, conforme ilustrado no diagrama a seguir:
img
Observe que, se o campo reasoning_content estiver incluído na sequência de mensagens de entrada, a API retornará um erro 400 . Portanto, você deve remover o campo reasoning_content da resposta da API antes de fazer a solicitação da API, conforme demonstrado no exemplo da API .

Exemplo de API#

O código a seguir, usando o Python como exemplo, demonstra como acessar o COT e a resposta final, bem como como realizar conversas com várias rodadas:

NoStreaming#

from openai import OpenAI
client = OpenAI(api_key="<DeepSeek API Key>", base_url="https://api.deepseek.com")

# Round 1
messages = [{"role": "user", "content": "9.11 and 9.8, which is greater?"}]
response = client.chat.completions.create(
    model="deepseek-reasoner",
    messages=messages
)

reasoning_content = response.choices[0].message.reasoning_content
content = response.choices[0].message.content

# Round 2
messages.append({'role': 'assistant', 'content': content})
messages.append({'role': 'user', 'content': "How many Rs are there in the word 'strawberry'?"})
response = client.chat.completions.create(
    model="deepseek-reasoner",
    messages=messages
)
# ...

Streaming Transmissão#

from openai import OpenAI
client = OpenAI(api_key="<DeepSeek API Key>", base_url="https://api.deepseek.com")

# Round 1
messages = [{"role": "user", "content": "9.11 and 9.8, which is greater?"}]
response = client.chat.completions.create(
    model="deepseek-reasoner",
    messages=messages,
    stream=True
)

reasoning_content = ""
content = ""

for chunk in response:
    if chunk.choices[0].delta.reasoning_content:
        reasoning_content += chunk.choices[0].delta.reasoning_content
    else:
        content += chunk.choices[0].delta.content

# Round 2
messages.append({"role": "assistant", "content": content})
messages.append({'role': 'user', 'content': "How many Rs are there in the word 'strawberry'?"})
response = client.chat.completions.create(
    model="deepseek-reasoner",
    messages=messages,
    stream=True
)
# ...
Previous
Obtenha o saldo do usuário
Next
Várias rodadas de conversas
Built with