Basis-URL en authenticatie
De base URL voor alle verzoeken is https://api.veniceaiapipricing.com/v1. Je authenticeert door je API-sleutel mee te sturen in de Authorization header als Bearer-token. Deze setup werkt met elke standaard OpenAI SDK. Vervang YOUR_API_KEY met de sleutel die je hebt gegenereerd op je accountdashboard.
- Eindpunt:
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"}]
}'
Het /v1/chat/completions-eindpunt
Stuur uw gespreks geschiedenis naar /v1/chat/completions met behulp van de uncensored model-ID. De API accepteert standaard berichtobjecten met role en content velden. Invoertokens kosten $0.15 per miljoen, en uitvoertokens kosten $0.50 per miljoen. Fouten en weigeringen verbruiken geen krediet.
Dit eindpunt ondersteunt alleen tekstgeneratie. Het verwerkt geen afbeeldingen, audio of embeddings. Je kunt antwoorden streamen of de volledige tekst ophalen in één JSON-object.
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-responsen (SSE)
Activeer streaming door stream: true in je aanvraaglichaam. De API retourneert Server-Sent Events (SSE) voor elke gegenereerde token. Het laatste blok bevat de totale tokengebruiksstatistieken. Deze methode vermindert de waargenomen latentie voor lange antwoorden.
Streamafhandeling is essentieel voor realtime applicaties. Je kunt tokens verwerken zodra ze binnenkomen in plaats van te wachten op de volledige voltooiing.
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 en JSON-modus
De API ondersteunt gestructureerde outputs en tool-definities. Gebruik response_format: {"type": "json_object"} om JSON-uitvoer af te dwingen. U kunt ook tools voor function calling, waardoor het model gestructureerde gegevens kan retourneren voor je applicatielogica.
Deze functie is nuttig bij het extraheren van gegevens of het triggeren van acties. Het model retourneert toolaanroepen in een gestandaardiseerd formaat. Je kunt je functies vervolgens uitvoeren en resultaten terugvoeren in het gesprek.
Parameters: Temperature, Top P en Seeds
Beheers creativiteit met temperature en top_p. De seed parameter zorgt voor deterministische outputs voor testen. Deze parameters volgen standaard OpenAI-conventies. Het aanpassen ervan beïnvloedt de willekeurigheid van de gegenereerde tekst.
Instellen temperature na 0.7 voor evenwichtige creativiteit. Gebruik seed voor reproduceerbare resultaten. De API negeert niet-ondersteunde parameters op een soepele manier.
Rate Limits en beperkingen
Je bent beperkt tot 300 verzoeken per minuut per sleutel. Er zijn maximaal 8 gelijktijdige verzoeken toegestaan per sleutel. De grootte van de request body is beperkt tot 8 MB. Het contextvenster is 100.000 tokens voor input en output samen. Maximaal 16.000 tokens per verzoek.
Het overschrijden van deze limieten retourneert een 429-fout. Zorg ervoor dat je client retries appropriate afhandelt. De API-sleutel is uniek per account; het genereren van een nieuwe sleutel vervangt de oude.
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);