Base URL og autentificering
Base-URL'en til alle anmodninger er https://api.veniceaiapipricing.com/v1. Du autentificerer ved at sende dit API-nøgle i Authorization header som en bearer-token. Denne opsætning fungerer med ethvert standard OpenAI SDK. Erstat YOUR_API_KEY med nøglen genereret fra dit kontodashboard.
- Endpoint:
POST /v1/chat/completions - Header:
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"}]
}'
Endpointet /v1/chat/completions
Send din samtalehistorik til /v1/chat/completions ved brug af uncensored model-ID. API'et accepterer standard message-objekter med role og content felter. Input-tokens koster $0,15 per million, og output-tokens koster $0,50 per million. Fejl og afvisninger forbruger ikke kredit.
Denne endpoint understøtter tekstgenerering alene. Den håndterer ikke billeder, lyd eller embeddings. Du kan streame svar eller hente den fulde tekst i et enkelt 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)
Streaming-svar (SSE)
Aktivér streaming ved at indstille stream: true i din anmodningskrop. API'et returnerer Server-Sent Events (SSE) for hvert genereret token. Den sidste del indeholder de totale tokenbrugsstatistikker. Denne metode reducerer den opfattede latens for lange svar.
Stream-håndtering er essentiel til realtidsapplikationer. Du kan behandle tokens, mens de ankommer, i stedet for at vente på fuld afslutning.
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)
Function Calling og JSON-tilstand
API'en understøtter strukturerede outputs og værktøjsdefinitioner. Brug response_format: {"type": "json_object"} for at tvinge JSON-output. Du kan også sende tools til function calling, hvilket giver modellen mulighed for at returnere struktureret data til din applikationslogik.
Denne funktion er nyttig til at udtrække data eller udløse handlinger. Modellen returnerer tool-kald i et standardiseret format. Du kan derefter udføre dine funktioner og sende resultater tilbage i samtalen.
Parametre: Temperatur, Top P og Seeds
Kontroller kreativitet med temperature og top_pThe seed parameter sikrer deterministiske output til test. Disse parametre følger standard OpenAI-konventioner. Justering af dem påvirker tilfældigheden af den genererede tekst.
Indstil temperature til 0,7 for balanceret kreativitet. Brug seed for reproducerbare resultater. API'et ignorerer ikke-understøttede parametre på en smidig måde.
Rate Limits og Begrænsninger
Du er begrænset til 300 anmodninger i minuttet pr. nøgle. Der er tilladt maks. 8 samtidige anmodninger pr. nøgle. Størrelsen af anmodningskroppen er begrænset til 8 MB. Kontekstvinduet er på 100.000 tokens for input og output tilsammen. Maksimum output pr. anmodning er 16.000 tokens.
Overskridelse af disse grænser returnerer en 429-fejl. Sørg for, at din klient håndterer forsøg på fornyelse passende. API-nøglen er unik pr. konto; generering af en ny nøgle erstatter den gamle.
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);