APIMaster.ai

Tutorial da API DeepSeek: V4 Flash / Pro com Python e JavaScript

Chame o DeepSeek V4 Flash e Pro através do APIMaster com curl, Python e JavaScript. Configure sua chave de API, transmita respostas e solucione erros comuns.

Você pode chamar o DeepSeek com o SDK da OpenAI? Sim. Através do APIMaster, defina a URL base da API como https://apimaster.ai/v1, use sua chave de API do APIMaster e selecione deepseek-v4-flash ou deepseek-v4-pro. Este guia cobre essa configuração de gateway; uma chave emitida por outro provedor não é intercambiável.

Último teste: 2026-09-07. Ambos os modelos retornaram HTTP 200 e o texto esperado em nosso teste de Chat Completions. Codex CLI 0.153.4 e Claude Code 2.1.239 também concluíram testes de ferramentas de leitura de texto e arquivo através do mesmo gateway. Estas são verificações funcionais curtas, não um benchmark de contexto longo ou confiabilidade. Os exemplos em Python, JavaScript e streaming abaixo demonstram o uso correspondente da API; eles não são resultados de benchmark separados.

1. Obtenha sua chave e escolha um modelo

Crie uma conta e obtenha uma chave de API. Garanta que a chave tenha acesso ao modelo selecionado e cota suficiente. Verifique os preços atuais no marketplace de modelos; as tarifas podem variar por rota e horário.

Configuração Valor
URL base do SDK https://apimaster.ai/v1
Endpoint HTTP POST https://apimaster.ai/v1/chat/completions
Autorização Authorization: Bearer YOUR_APIMASTER_API_KEY
Modelo Flash deepseek-v4-flash
Modelo Pro deepseek-v4-pro

Ambos os modelos usam o mesmo formato de solicitação. Comece com qualquer um dos modelos e depois compare os resultados em sua própria carga de trabalho. Substitua YOUR_APIMASTER_API_KEY abaixo pela sua chave localmente; não a envie para o controle de versão nem a coloque em código de navegador.

macOS / Linux:

export APIMASTER_API_KEY='YOUR_APIMASTER_API_KEY'

Windows PowerShell:

$env:APIMASTER_API_KEY = 'YOUR_APIMASTER_API_KEY'

Essas variáveis se aplicam ao terminal atual. Execute os exemplos a seguir nesse terminal.

2. Faça sua primeira solicitação com curl

O comando a seguir usa sintaxe de shell macOS / Linux. Usuários do Windows podem usar o exemplo Python multiplataforma abaixo.

curl --fail-with-body 'https://apimaster.ai/v1/chat/completions' \
  -H "Authorization: Bearer $APIMASTER_API_KEY" \
  -H 'Content-Type: application/json' \
  -d '{
    "model": "deepseek-v4-flash",
    "messages": [{"role": "user", "content": "Reply with exactly: DEEPSEEK_TEST_OK"}],
    "max_tokens": 256,
    "stream": false
  }'

Esperado: HTTP 200 e choices[0].message.content igual a DEEPSEEK_TEST_OK. Altere apenas model para deepseek-v4-pro para repetir o teste. A resposta pode incluir um nome de modelo com versão; continue usando os IDs de modelo públicos acima nas solicitações.

3. Chame o DeepSeek a partir do Python

Instale o SDK:

python -m pip install openai

Salve como deepseek_example.py e execute python deepseek_example.py:

import os
from openai import OpenAI

client = OpenAI(
    api_key=os.environ["APIMASTER_API_KEY"],
    base_url="https://apimaster.ai/v1",
)
response = client.chat.completions.create(
    model="deepseek-v4-flash",
    messages=[{"role": "user", "content": "Reply with exactly: DEEPSEEK_TEST_OK"}],
    max_tokens=256,
)
print(response.choices[0].message.content)

Para uma tarefa de codificação, substitua o prompt pelos seus requisitos. Aumente o orçamento de saída para respostas mais longas; o orçamento curto de teste não é adequado para gerar um aplicativo completo.

4. Chame o DeepSeek a partir do JavaScript

Use um ambiente Node.js no lado do servidor:

npm install openai

Salve como deepseek_example.mjs e execute node deepseek_example.mjs:

import OpenAI from "openai";

const client = new OpenAI({
  apiKey: process.env.APIMASTER_API_KEY,
  baseURL: "https://apimaster.ai/v1",
});
const response = await client.chat.completions.create({
  model: "deepseek-v4-pro",
  messages: [{ role: "user", content: "Reply with exactly: DEEPSEEK_TEST_OK" }],
  max_tokens: 256,
});
console.log(response.choices[0].message.content);

5. Transmita a resposta final

Usando o client Python acima:

stream = client.chat.completions.create(
    model="deepseek-v4-flash",
    messages=[{"role": "user", "content": "Explain a Python dictionary in three sentences."}],
    max_tokens=1024,
    stream=True,
)
for chunk in stream:
    if not chunk.choices:
        continue
    text = chunk.choices[0].delta.content
    if text:
        print(text, end="", flush=True)
print()

Isso imprime o texto da resposta final de content. Algumas respostas também expõem reasoning_content; ele é separado da resposta final. Não presuma que cada bloco de streaming contém texto ou uma entrada choices.

Solução de problemas

Sintoma O que verificar
401 Use uma chave APIMaster, verifique espaços em branco e o cabeçalho Bearer, e confirme se a variável de ambiente está definida neste terminal.
403 ou erro de acesso ao modelo Verifique as permissões de modelo da chave e as restrições da conta.
404 Use /v1/chat/completions; não duplique /v1 nem anexe o endpoint a uma URL base do SDK.
429 ou cota insuficiente Leia o corpo do erro para distinguir um limite de taxa de esgotamento de cota. Repita com backoff para limites de taxa; verifique o saldo para erros de cota.
Resposta vazia ou truncada Inspecione finish_reason, aumente o orçamento de tokens e distinga content de campos de raciocínio.
Tempo limite ou 5xx Registre o timestamp e o ID da solicitação, repita com backoff e entre em contato com o suporte se persistir. Nunca envie sua chave completa em um relatório de bug.

Perguntas frequentes

A chave de API é a mesma que uma chave oficial do DeepSeek?

Não. Este tutorial usa uma chave emitida pela APIMaster com o endpoint da APIMaster. Mantenha a chave e o endpoint do provedor emissor pareados.

Posso alternar entre Flash e Pro sem reescrever minha integração?

Sim, altere o campo model entre deepseek-v4-flash e deepseek-v4-pro, desde que sua chave possa acessar ambos. Verifique a saída de cada modelo e o preço atual para sua carga de trabalho.

Uma solicitação bem-sucedida prova a identidade do modelo subjacente?

Não. O sucesso HTTP e um nome de modelo retornado estabelecem que uma solicitação foi concluída; eles não verificam independentemente a identidade do modelo.

Posso usar esses modelos no Codex e no Claude Code?

Nossas configurações testadas concluíram solicitações de ferramentas de leitura de texto e arquivo em ambos os CLIs. Os protocolos diferem: Codex usa /v1/responses, enquanto Claude Code usa /v1/messages. Siga os guias dedicados em vez de substituir o endpoint de Chat Completions em uma configuração de CLI.

Continue com o DeepSeek