PT ▾
Obter chave de API

Início rápido para usuários do Minicpm

Conecte seu cliente OpenAI-compatível existente à nossa API sem censura em menos de um minuto. Substitua sua URL base, defina sua chave e comece a gerar texto com o modelo "sem censura".

Base URL e Autenticação

Para usar esta API, você precisa de uma chave de API e da URL base correta. Nosso serviço é totalmente compatível com as bibliotecas padrão de cliente OpenAI. Você não precisa instalar novas dependências ou aprender um novo SDK. Basta apontar seu cliente existente para nosso endpoint.

Gere uma chave na página Obter chave de API. Você pode entrar com Google ou usar e-mail e senha. A chave é exibida imediatamente. Armazene-a com segurança. Cada requisição deve incluir esta chave no cabeçalho Authorization.

A URL base para todas as requisições é: https://api.minicpm.cc/v1. Esta URL lida com completions de chat, listagem de modelos e respostas em streaming. Não há endpoints separados para embeddings ou visão. Esta é uma API apenas de texto.

Primeira Requisição

Envie uma requisição padrão de completions de chat para começar a gerar texto. O ID do modelo é sempre uncensored. Este modelo é um grande modelo de linguagem de pesos abertos ajustado para responder sem recusas de conteúdo para uso adulto lícito. Não é GPT, Claude ou qualquer outro modelo de fornecedor.

Defina o campo model para uncensored. Forneça suas mensagens no formato de array padrão. A API retorna uma resposta de texto. Você pode controlar o comprimento da saída com max_tokens. Se não definir, o max de saída padrão é 2.048 tokens.

Integração com SDK Python

Use a biblioteca oficial OpenAI Python para interagir com a API. Você só precisa configurar a base URL e a chave de API. O restante da biblioteca funciona como esperado. Isso inclui suporte para streaming, chamada de funções e modo JSON.

Instale a biblioteca com pip install openai. Inicialize o cliente com sua URL base e chave. Envie mensagens para o endpoint de completions de chat. O objeto de resposta contém o texto gerado, o uso de tokens e o motivo do término. Você pode acessar esses campos diretamente no seu código Python.

Integração com SDK Node.js

O SDK Node.js funciona de forma idêntica à versão Python. Instale o pacote e configure a base URL. O cliente gerencia autenticação e formatação de requisições automaticamente. Isso permite integrar a API aos seus serviços backend rapidamente.

Passe a base URL e a chave de API para o construtor do cliente OpenAI. Use o método chat.completions.create. A estrutura da resposta corresponde ao padrão OpenAI. Você pode lidar com erros, verificar o uso de tokens e processar o conteúdo. Esta abordagem garante compatibilidade com bases de código existentes que já usam OpenAI.

Respostas em Streaming

Ative o streaming definindo stream: true na sua requisição. A API retorna uma sequência de Server-Sent Events (SSE). Cada evento contém um fragmento da resposta. Isso permite que você exiba texto ao usuário conforme ele é gerado.

O último fragmento inclui as estatísticas de uso de tokens. Isso é útil para rastrear custos. O streaming reduz a latência percebida para os usuários. É recomendado para interfaces de chat. Você pode analisar os eventos no código do seu cliente para construir a resposta final ou exibir tokens em tempo real.

Limites, Erros e Contexto

O modelo suporta uma janela de contexto de 100.000 tokens. Isso inclui tanto o prompt quanto a conclusão. A saída máxima por requisição é de 32.000 tokens. Você pode ajustar o parâmetro max_tokens para controlar isso.

Os limites de taxa são definidos para 300 requisições por minuto por chave. Você pode ter 8 requisições simultâneas. O corpo da requisição deve ter menos de 8 MB. Se a chave for inválida, você receberá um erro 401. Se não tiver crédito, você receberá um erro 402. Se exceder o limite de taxa, você receberá um erro 429. Erros e recusas não consomem crédito.

cURL

curl https://api.minicpm.cc/v1/chat/completions \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "uncensored",
    "messages": [{"role": "user", "content": "Write a blunt product review of a cheap VPN."}]
  }'

Python

from openai import OpenAI

client = OpenAI(base_url="https://api.minicpm.cc/v1", api_key="YOUR_KEY")

resp = client.chat.completions.create(
    model="uncensored",
    messages=[{"role": "user", "content": "Summarise this thread without softening it."}],
)
print(resp.choices[0].message.content)

Node.js

import OpenAI from "openai";

const client = new OpenAI({ baseURL: "https://api.minicpm.cc/v1", apiKey: process.env.API_KEY });

const resp = await client.chat.completions.create({
  model: "uncensored",
  messages: [{ role: "user", content: "Draft a villain monologue for my game." }],
});
console.log(resp.choices[0].message.content);

Streaming

stream = client.chat.completions.create(
    model="uncensored",
    messages=[{"role": "user", "content": "Tell the story in second person."}],
    stream=True,
)
for chunk in stream:
    if chunk.choices and chunk.choices[0].delta.content:
        print(chunk.choices[0].delta.content, end="", flush=True)

Recursos e limites

Uma tabela com cada limite, recurso e preço.

ItemValor
Formatocompatível com OpenAI: qualquer SDK da OpenAI funciona trocando a base URL e a chave
Base URLhttps://api.minicpm.cc/v1
ID do modelouncensored
AutenticaçãoAuthorization: Bearer YOUR_KEY
EndpointsPOST /v1/chat/completions · GET /v1/models
Parâmetrostemperature, top_p, stop, seed, presence_penalty, frequency_penalty
Streamingsim — server-sent events; o último bloco traz o uso de tokens
Chamada de funçõessim — tools, tool_choice; resposta com tool_calls, inclusive em streaming; resultados como role: tool
Modo JSONresponse_format: {"type": "json_object"}
Janela de contexto100.000 tokens (entrada + saída)
Saída máximaaté o restante da janela de 100.000 tokens; max_tokens opcional (sem limite separado)
Concorrência8 requisições ao mesmo tempo por chave
Tamanhoaté 8 MB por requisição
Limite de taxa300 requisições por minuto por chave
CabeçalhosX-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency
Cobrançacrédito pré-pago pelo uso real; erros e recusas são grátis
RecargaUSDT (TRC20) ou USDC (Base), qualquer valor inteiro de $10 a $500
Validadecrédito pago não expira, sem assinatura
Preço$0,25 por 1M tokens de entrada · $1,00 por 1M de saída
Teste grátis$0,50 por 7 dias, sem cartão · Chave de teste: 2 requisições paralelas, 60 por minuto; limites totais (8 e 300) após a primeira recarga
Bônus+5% a partir de $50, +10% a partir de $100
LoginGoogle ou e-mail e senha
Conteúdoconteúdo adulto permitido; conteúdo sexual com menores é recusado
Chavesuma chave ativa por conta; uma nova substitui a anterior

Códigos de erro

Erros chegam em JSON com um type fixo; requisições com falha ou recusadas não são cobradas.

CódigoTipoSignificado
400bad_requestJSON inválido, mensagens vazias, parâmetro errado ou contexto longo demais
401missing_key · invalid_key · key_revokedchave ausente, errada ou substituída
402no_creditsem crédito — recarregue e continue na hora
403content_blockedconteúdo sexual com menores — recusado, sem cobrança
404not_foundendpoint desconhecido
413request_too_largecorpo acima de 8 MB
429rate_limited · concurrencyacima de 300/min ou 8 em paralelo — aguarde e tente de novo
503upstream_busymodelo ocupado — tente em alguns segundos

Perguntas e respostas

Qual o tamanho da janela de contexto?

A janela de contexto é de 100.000 tokens, incluindo o prompt de entrada e a conclusão de saída. A saída máxima por requisição é de 32.000 tokens.

Como lidar com erros?

Um erro 401 indica uma chave de API inválida. Um erro 402 indica que seu crédito pré-pago está esgotado. Um erro 429 significa que você excedeu o limite de requisições de 300 requisições por minuto. Os erros não consomem seu crédito.

Posso usar streaming?

Sim. Defina <code>stream: true</code> na sua requisição. A API retorna Server-Sent Events (SSE). O último fragmento contém as estatísticas de uso de tokens.

Sua chave está a um formulário de distância

Crie uma conta, copie a chave, altere a base URL. Essa é toda a configuração.

Obter chave de API