Bas URL och autentisering
Bas-URL:en för alla förfrågningar är https://api.veniceaiapipricing.com/v1. Du autentiserar genom att skicka ditt API-nyckel i Authorization header som ett bearer-token. Denna konfiguration fungerar med alla standard OpenAI SDK:er. Ersätt YOUR_API_KEY med nyckeln som genererats från ditt kontodashboard.
- Slutpunkt:
POST /v1/chat/completions - Huvud:
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"}]
}'
Slutpunkten /v1/chat/completions
Skicka din konversationshistorik till /v1/chat/completions med uncensored modell-ID. API:t accepterar standardmeddelandeobjekt med role och content fält. Inmatningstokens kostar $0.15 per miljon, och utmatningstokens kostar $0.50 per miljon. Fel och avslag konsumerar inte kredit.
Denna endpoint stöder textgenerering endast. Den hanterar inte bilder, ljud eller embeddingar. Du kan strömma svar eller hämta hela texten i ett enda JSON-objekt.
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)
Strömningsresponser (SSE)
Aktivera strömning genom att ställa in stream: true i din förfrågningskropp. API:et returnerar Server-Sent Events (SSE) för varje genererad token. Den sista delen innehåller total tokenanvändningsstatistik. Denna metod minskar den upplevda latensen för långa svar.
Strömhantering är avgörande för realtidsapplikationer. Du kan bearbeta token när de anländer istället för att vänta på hela slutförandet.
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)
Funktionsanrop och JSON-läge
API:et stöder strukturerade utdata och verktygsdefinitioner. Använd response_format: {"type": "json_object"} för att tvinga fram JSON-utdata. Du kan också skicka tools för funktionssamling, vilket gör att modellen kan returnera strukturerad data för din applikationslogik.
Denna funktion är användbar för att extrahera data eller utlösa åtgärder. Modellen returnerar verktygsanrop i ett standardiserat format. Du kan sedan köra dina funktioner och mata tillbaka resultat i samtalet.
Parametrar: Temperatur, Top P och Seed
Styr kreativitet med temperature och top_p. The seed parameter säkerställer deterministiska utdata för testning. Dessa parametrar följer standard OpenAI-konventioner. Justering av dem påverkar slumpmässigheten i den genererade texten.
Ställ in temperature till 0,7 för balanserad kreativitet. Använd seed för reproducerbara resultat. API:t ignorerar ej stödda parametrar på ett smidigt sätt.
Begränsningar för begäranderänta och begränsningar
Du är begränsad till 300 förfrågningar per minut per nyckel. Maximalt 8 parallella förfrågningar tillåts per nyckel. Storleken på förfrågningsbodyn är begränsad till 8 MB. Kontextfönstret är 100,000 tokens för input och output tillsammans. Maximal output per förfrågan är 16,000 tokens.
Att överskrida dessa gränser returnerar ett 429-fel. Se till att din klient hanterar försök igen lämpligt. API-nyckeln är unik per konto; att generera en ny nyckel ersätter den gamla.
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);