URL Base e Autenticação
A URL base para todas as solicitações é https://api.veniceaiapipricing.com/v1. Você autentica passando sua chave de API no Authorization cabeçalho como um token bearer. Esta configuração funciona com qualquer SDK padrão da OpenAI. Substitua YOUR_API_KEY com a chave gerada no painel da sua conta.
- Endpoint:
POST /v1/chat/completions - Cabeçalho:
Authorization: Bearer YOUR_API_KEY
curl https://api.veniceaiapipricing.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Return server status code 200"}]
}'
O Endpoint /v1/chat/completions
Envie seu histórico de conversas para /v1/chat/completions usando o uncensored ID do modelo. A API aceita objetos de mensagem padrão com role e content campos. Tokens de entrada custam $0,15 por milhão, e tokens de saída custam $0,50 por milhão. Erros e recusas não consomem crédito.
Este endpoint suporta geração apenas de texto. Ele não processa imagens, áudio ou embeddings. Você pode transmitir respostas ou recuperar o texto completo em um único objeto JSON.
from openai import OpenAI
client = OpenAI(base_url="https://api.veniceaiapipricing.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)
Respostas em Streaming (SSE)
Ative o streaming definindo stream: true no corpo da sua solicitação. A API retorna Eventos Enviados pelo Servidor (SSE) para cada token gerado. O último fragmento contém as estatísticas totais de uso de tokens. Este método reduz a latência percebida para respostas longas.
O tratamento de stream é essencial para aplicativos em tempo real. Você pode processar tokens conforme chegam em vez de esperar pela conclusão completa.
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ção e Modo JSON
A API suporta saídas estruturadas e definições de ferramentas. Use response_format: {"type": "json_object"} para forçar a saída JSON. Você também pode passar tools para chamada de função, permitindo que o modelo retorne dados estruturados para a lógica do seu aplicativo.
Este recurso é útil para extrair dados ou acionar ações. O modelo retorna chamadas de ferramentas em um formato padronizado. Você pode então executar suas funções e alimentar os resultados de volta na conversa.
Parâmetros: Temperatura, Top P e Seeds
Controle a criatividade com temperature e top_p. O seed parameter garante saídas determinísticas para testes. Esses parâmetros seguem as convenções padrão do OpenAI. Ajustá-los afeta a aleatoriedade do texto gerado.
Definir temperature para 0.7 para criatividade equilibrada. Use seed para resultados reproduzíveis. A API ignora parâmetros não suportados de forma graciosa.
Limites de Taxa e Restrições
Você está limitado a 300 solicitações por minuto por chave. Um máximo de 8 solicitações simultâneas é permitido por chave. O tamanho do corpo da solicitação é limitado a 8 MB. A janela de contexto é de 100.000 tokens para entrada e saída combinadas. A saída máxima por solicitação é de 16.000 tokens.
Exceder esses limites retorna um erro 429. Certifique-se de que seu cliente lide com as tentativas de novo adequadamente. A chave de API é exclusiva por conta; gerar uma nova chave substitui a antiga.
Node.js
import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.veniceaiapipricing.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);