NsfwLocalDocumentação para desenvolvedores
Documentação da API
Comece a usar a API LLM sem censura em minutos. Use ferramentas padrão compatíveis com OpenAI para enviar solicitações de texto e receber respostas diretas e sem filtros.
Início rápido para sua primeira solicitação
Comece a gerar texto imediatamente apontando seu cliente para nossa URL base e autenticando com uma chave de API gerada. A interface segue convenções padrão, então você pode usar SDKs existentes sem aprender um novo protocolo. Você enviará prompts para o uncensored modelo e receba respostas de texto que não aplicam filtros de conteúdo típicos para uso adulto legal.
Configure a URL base e a chave
Defina suas variáveis de ambiente para rotear solicitações para nosso endpoint específico. Substitua a chave de espaço reservado pela gerada durante o cadastro. Isso garante que todas as chamadas subsequentes usem a instância correta do modelo uncensored.
- URL Base:
https://api.nsfwlocalllm.com/v1 - Cabeçalho de Autenticação:
Authorization: Bearer YOUR_API_KEY
Você pode verificar se sua chave funciona verificando o endpoint de modelos. Uma chave válida retorna o ID do modelo disponível imediatamente.
Envie uma solicitação de conclusão de chat
Envie um payload padrão de conclusão de chat para gerar texto. O sistema processa sua entrada e retorna a resposta do modelo. Use o uncensored ID do modelo para garantir que você está atingindo a instância sem filtros.
A resposta inclui o texto gerado e as estatísticas de uso de tokens. Você pode analisar isso diretamente na lógica do seu aplicativo.
curl https://api.nsfwlocalllm.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Send me the server uptime stats"}]
}'Verifique códigos de status HTTP padrão para lidar com casos de sucesso ou falha.
Ative o streaming para saída em tempo real
Transmita respostas para reduzir a latência percebida para seus usuários. Habilite o streaming definindo stream: true no corpo da sua solicitação. A API retorna uma série de Eventos Enviados pelo Servidor (SSE) contendo tokens parciais.
Agregue esses tokens no lado do cliente para reconstruir a mensagem completa. Esta abordagem é ideal para interfaces de chat onde o feedback imediato é importante. O último evento SSE contém o uso total de tokens para a solicitação.
from openai import OpenAI
client = OpenAI(base_url="https://api.nsfwlocalllm.com/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)Lide com erros de conexão de forma elegante para garantir uma experiência de usuário fluida.
Use o modo JSON para dados estruturados
Força o modelo a gerar JSON válido para consumo programático. Defina response_format para {"type": "json_object"} na sua solicitação. Isso reduz erros de análise e garante estruturas de dados consistentes.
Use isso para gerar prompts estruturados, extrair entidades ou criar conteúdo dinâmico. O modelo adere às restrições de formato fornecidas em suas instruções do sistema. Isso é crucial para uma integração confiável com outros serviços.
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.nsfwlocalllm.com/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);Valide a saída JSON no seu lado para capturar casos extremos.
Implemente chamada de função
Defina ferramentas para estender as capacidades do modelo. Passe uma tools array com definições de função para a solicitação. O modelo pode escolher chamar essas funções com base no contexto.
Isso permite fluxos de trabalho complexos onde o LLM decide quando buscar dados ou executar ações. Você recebe os argumentos da função na resposta e os executa no seu lado. Passe os resultados de volta ao modelo para raciocínio adicional.
Definir tool_choice para auto para tomada de decisões flexível. Este recurso suporta cenários avançados de roleplay que exigem acesso a dados externos.
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)Perguntas frequentes
Qual é o tamanho da janela de contexto?
A janela de contexto é de 100.000 tokens, abrangendo o prompt e a conclusão. Isso permite conversas longas e documentos grandes sem perder o contexto.
O que acontece se eu ficar sem crédito?
As solicitações falham com o código de status 402 quando seu saldo pré-pago é insuficiente. Você pode recarregar via criptomoeda para retomar o serviço imediatamente. Erros como limites de taxa não consomem crédito.
Como lidar com limites de taxa?
A API limita a 300 requisições por minuto por chave. Se você exceder isso, receberá um código de status 429. Implemente backoff exponencial no seu cliente para lidar com esses atrasos de forma eficaz.
Recupere sua chave de API instantaneamente
Faça o cadastro, copie o token e atualize a URL base. A configuração está completa.
Obter chave de API