Primeira requisição em cinco minutos
Comece com a API LLM sem censura Apertus em minutos. Este guia rápido cobre autenticação, requisições básicas e streaming usando a interface compatível com OpenAI.
URL Base e Autenticação
Acesse a API usando a URL base dedicada https://api.apertus.top/v1. O serviço é compatível com OpenAI, o que significa que você pode usar SDKs padrão atualizando o base_url e fornecendo sua chave de API. Cadastre-se na página Obter chave de API usando Google ou um endereço de e-mail. Sua chave é exibida imediatamente após a criação. Cada conta possui uma chave ativa; gerar uma nova substitui a chave anterior. Não há assinaturas mensais ou datas de expiração de chave. O crédito pré-pago nunca expira e os fundos não utilizados permanecem disponíveis para requisições futuras. Erros e recusas não consomem seu crédito.
Primeira Requisição
Envie uma solicitação simples de conclusão de texto para testar conectividade e cobrança. Use o ID do modelo uncensored para acessar o único modelo de pesos abertos hospedado em nossos servidores. Este modelo é ajustado para responder sem recusas de conteúdo para uso adulto lícito. A URL base é https://api.apertus.top/v1. O preço é transparente: $0,25 por 1M de tokens de entrada e $1,00 por 1M de tokens de saída. Você paga apenas pelo que usa.
curl https://api.apertus.top/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."}]
}'
A resposta retorna o texto gerado. Se seu crédito for insuficiente, você receberá um erro de cobrança. Erros durante o processamento não cobram sua conta. Você pode recarregar usando USDT (TRC20) ou USDC (Base) através do painel.
Integração com SDK Python
Use o SDK Python oficial da OpenAI ou qualquer cliente compatível. Defina o base_url para https://api.apertus.top/v1 e forneça sua chave de API. Isso permite que você aproveite bases de código existentes projetadas para OpenAI. O endpoint /v1/chat/completions cuida de toda a geração de texto. O ID do modelo é uncensored. Parâmetros como temperature, top_p e stop são suportados. Respostas em streaming incluem detalhes de uso de tokens no último chunk. Chamada de funções e modo JSON também estão disponíveis para saídas estruturadas.
from openai import OpenAI
client = OpenAI(base_url="https://api.apertus.top/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)
Integração com SDK Node.js
Inicialize o cliente com a URL base Apertus. A classe OpenAI aceita os parâmetros de configuração padrão. Passe sua chave de API e defina a URL base para https://api.apertus.top/v1. Isso garante compatibilidade com aplicativos Node.js existentes. O ID do modelo uncensored é necessário para todas as requisições. Você pode controlar o comprimento da saída usando max_tokens. O max de saída padrão é 2.048 tokens se não especificado, com um limite rígido de 32.000 tokens por requisição.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.apertus.top/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);
Respostas em Streaming
Ative o streaming definindo stream: true em sua requisição. A API retorna um stream de Server-Sent Events (SSE). Cada chunk contém texto parcial. O último chunk inclui as estatísticas completas de uso de tokens para a requisição. Isso permite que você exiba resultados em tempo real enquanto rastreia os custos. O streaming funciona com todos os parâmetros, incluindo chamada de funções. Certifique-se de que seu cliente lide corretamente com eventos SSE. A janela de contexto suporta até 100.000 tokens para prompt e conclusão combinados.
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)
Limites, Erros e Contexto
A API impõe um limite de 300 requisições por minuto por chave e permite 8 requisições simultâneas. O tamanho máximo do corpo da requisição é 8 MB. Se a chave de autenticação for inválida, você receberá um erro 401. Se seu crédito pré-pago for esgotado, você receberá um erro 402 indicando fundos insuficientes. O limite de taxa é aplicado com base na cota por minuto. A janela de contexto é de 100.000 tokens no total. A saída máxima por requisição é de 32.000 tokens. Requisições que excedem esse limite são tratadas pelo comportamento padrão do modelo. Nenhuma porcentagem de SLA é garantida. A privacidade é mantida; os prompts não são usados para treinamento.
Recursos e limites
Uma tabela com cada limite, recurso e preço.
| Item | Valor |
|---|---|
| Formato | compatível com OpenAI: qualquer SDK da OpenAI funciona trocando a base URL e a chave |
| Endpoints | POST /v1/chat/completions · GET /v1/models |
| Base URL | https://api.apertus.top/v1 |
| ID do modelo | uncensored |
| Autenticação | Authorization: Bearer YOUR_KEY |
| Chamada de funções | sim — tools, tool_choice; resposta com tool_calls, inclusive em streaming; resultados como role: tool |
| Streaming | sim — server-sent events; o último bloco traz o uso de tokens |
| Saída máxima | até o restante da janela de 64.000 tokens; max_tokens opcional (sem limite separado) |
| Parâmetros | temperature, top_p, stop, seed, presence_penalty, frequency_penalty |
| Modo JSON | response_format: {"type": "json_object"} |
| Janela de contexto | 64.000 tokens (entrada + saída) |
| Limite de taxa | 300 requisições por minuto por chave |
| Concorrência | 8 requisições ao mesmo tempo por chave |
| Cabeçalhos | X-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency |
| Tamanho | até 8 MB por requisição |
| Bônus | +5% a partir de $50, +10% a partir de $100 |
| 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 |
| Cobrança | crédito pré-pago pelo uso real; erros e recusas são grátis |
| Recarga | USDT (TRC20) ou USDC (Base), qualquer valor inteiro de $10 a $500 |
| Validade | crédito pago não expira, sem assinatura |
| Preço | $0,25 por 1M tokens de entrada · $1,00 por 1M de saída |
| Login | Google ou e-mail e senha |
| Conteúdo | conteúdo adulto permitido; conteúdo sexual com menores é recusado |
| Chaves | uma 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ódigo | Tipo | Significado |
|---|---|---|
400 | bad_request | JSON inválido, mensagens vazias, parâmetro errado ou contexto longo demais |
401 | missing_key · invalid_key · key_revoked | chave ausente, errada ou substituída |
402 | no_credit | sem crédito — recarregue e continue na hora |
403 | content_blocked | conteúdo sexual com menores — recusado, sem cobrança |
404 | not_found | endpoint desconhecido |
413 | request_too_large | corpo acima de 8 MB |
429 | rate_limited · concurrency | acima de 300/min ou 8 em paralelo — aguarde e tente de novo |
503 | upstream_busy | modelo ocupado — tente em alguns segundos |
Perguntas e respostas
Minha chave de API expira?
Não, sua chave de API não expira. Não há assinaturas mensais ou taxas recorrentes associadas à sua conta. Você pode usar sua chave indefinidamente até decidir revogá-la.
O que acontece se eu atingir o limite de requisições?
A API limita você a 300 requisições por minuto por chave. Se você exceder isso, as requisições subsequentes podem ser atrasadas ou rejeitadas. Você também pode fazer 8 requisições simultâneas por vez. Monitore seu uso para permanecer dentro desses limites.
A saída é truncada se exceder 32.000 tokens?
O modelo suporta uma saída máxima de 32.000 tokens por requisição. Se o texto gerado exceder isso, a resposta é truncada pelo modelo. Você pode ajustar o <code>max_tokens</code> parâmetro para controlar o comprimento da saída dentro deste limite.
Sua chave está a um formulário de distância
Crie uma conta, copie a chave, altere a URL base. Essa é toda a configuração.