Início rápido para usuários do NSFW Chatgpt
Integre nossa API LLM sem censura com SDKs padrão da OpenAI em minutos. Insira sua chave e comece a gerar texto sem filtros de conteúdo.
URL Base e Autenticação
A API de chat nsfw da Uncensored ChatGPT segue o padrão OpenAI chat-completions. Você se autentica usando um token Bearer no cabeçalho Authorization. A URL base é https://api.nsfwchatgpt.cc/v1. Crie uma conta gratuita para receber sua chave de API imediatamente; não é necessário cartão de crédito para o teste inicial.
curl https://api.nsfwchatgpt.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."}]
}'
Endpoint de Completions de Chat
Envie mensagens para o endpoint POST /v1/chat/completions. O ID do modelo é sempre uncensored. É um modelo de pesos abertos executado em nossos próprios servidores, distinto de GPT, Claude ou Llama. Ele aceita papéis de mensagem padrão como user e assistant. Você pode enviar até 8 requisições simultâneas por chave. Se precisar alternar as chaves, gerar uma nova substituirá a chave ativa anterior para essa conta.
from openai import OpenAI
client = OpenAI(base_url="https://api.nsfwchatgpt.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)
Respostas em Streaming
Ative o streaming definindo stream: true. A API retorna Server-Sent Events (SSE). Cada fragmento contém texto parcial. Os dados de uso de tokens são incluídos apenas no último fragmento do stream. Isso é ideal para criar interfaces de chat que renderizam o texto conforme ele é gerado. Certifique-se de que seu cliente lide corretamente com SSE para capturar a resposta completa e as contagens finais de tokens.
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)
Chamada de Funções e Ferramentas
A API suporta chamada de funções. Defina suas ferramentas no parâmetro tools e defina tool_choice como auto ou um nome de função específico. O modelo retornará chamadas de ferramentas em sua resposta quando apropriado. Isso permite que você integre nosso modelo sem censura em agentes que precisam interagir com APIs externas ou executar código. Certifique-se de que as definições das ferramentas sigam o esquema padrão da OpenAI para compatibilidade.
Modo JSON
Faça o modelo gerar JSON válido definindo response_format para {"type": "json_object"}. Isso é útil para geração de dados estruturados ou ao criar aplicações que analisam esquemas específicos. O modelo é ajustado para aderir à sintaxe JSON mesmo ao gerar objetos complexos e aninhados. Se a saída for inválida, a requisição pode falhar ou retornar texto malformado, portanto sempre valide a resposta no seu código.
Parâmetros: Temperatura e Top P
Controle a criatividade com temperature e a diversidade com top_p. Valores de temperatura mais altos tornam as respostas mais aleatórias e criativas, enquanto valores mais baixos as tornam mais determinísticas. top_p filtra tokens com base na probabilidade cumulativa. Você também pode definir sequências stop, seed para reprodutibilidade e penalidades por presença e frequência. Esses parâmetros permitem o ajuste fino do estilo de saída do modelo sem censura.
Node.js
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.nsfwchatgpt.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);Perguntas e respostas
Quais são os limites de tokens?
A janela de contexto é de 100.000 tokens para prompt e conclusão combinados. A saída máxima por requisição é de 32.000 tokens, ou 2.048 se você não definir <code>max_tokens</code>. Requisições que excedam esses limites serão rejeitadas.
O que acontece se eu receber um erro 401 ou 429?
Um erro 401 significa que sua chave de API é inválida ou está ausente. Um erro 429 indica que você atingiu o limite de requisições de 300 por minuto. Erros e recusas não consomem seu crédito de token pré-pago.
Como eu pago pelos tokens?
Aceitamos USDT (TRC20) e USDC (Base). O valor mínimo de recarga é $10, e você recebe um bônus para valores maiores. O crédito nunca expira, e você pode começar com uma avaliação grátis de $0,50.
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.
Ficha técnica da API
Todos os limites e recursos reais da API em um só lugar — confira antes de recarregar.
| 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.nsfwchatgpt.cc/v1 |
| ID do modelo | uncensored |
| Autenticação | Authorization: Bearer YOUR_KEY |
| Parâmetros | temperature, top_p, stop, seed, presence_penalty, frequency_penalty |
| Streaming | sim — server-sent events; o último bloco traz o uso de tokens |
| Janela de contexto | 100.000 tokens (entrada + saída) |
| Saída máxima | até o restante da janela de 100.000 tokens; max_tokens opcional (sem limite separado) |
| Modo JSON | response_format: {"type": "json_object"} |
| Chamada de funções | sim — tools, tool_choice; resposta com tool_calls, inclusive em streaming; resultados como role: tool |
| Tamanho | até 8 MB por requisição |
| Limite de taxa | 300 requisições por minuto por chave |
| Cabeçalhos | X-Request-Id, X-Balance-USD, X-RateLimit-Limit-Requests, X-RateLimit-Limit-Concurrency |
| Concorrência | 8 requisições ao mesmo tempo por chave |
| Preço | $0,25 por 1M tokens de entrada · $1,00 por 1M de saída |
| 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 |
| Validade | crédito pago não expira, sem assinatura |
| Recarga | USDT (TRC20) ou USDC (Base), qualquer valor inteiro de $10 a $500 |
| Cobrança | crédito pré-pago pelo uso real; erros e recusas são grátis |
| Login | Google ou e-mail e senha |
| Chaves | uma chave ativa por conta; uma nova substitui a anterior |
| Conteúdo | conteúdo adulto permitido; conteúdo sexual com menores é recusado |
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 |