OpenAI codex api: Quickstart med Python
Denne guide viser, hvordan du bruger den ukensurerede LLM med standard OpenAI SDK'er via vores openai-kpatible API. Du kan begynde at sende anmodninger med det samme ved at opdatere din base-URL og API-nøgle.
Installer den officielle SDK
Brug det officielle SDK for at sikre kompatibilitet med vores openai proxy API. Denne tilgang fungerer med ethvert standardbibliotek, der understøtter OpenAI-protokollen.
- Installer pakken via din foretrukne pakkehåndtering.
- Verificér installationen ved at importere biblioteket.
from openai import OpenAI
client = OpenAI(base_url="https://api.openaicodexapi.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)import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.openaicodexapi.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);
Indstil din Base URL og nøgle
Peg din klient mod vores openai gateway endpoint for at få adgang til den ubegrænsede AI-model. Erstat standard base URL med vores specifikke endpoint.
- Indstil API-nøglen i dine miljøvariabler.
- Konfigurer base-URL'en til
https://api.openaicodexapi.com/v1.
Denne opsætning sikrer, at dine anmodninger dirigeres korrekt til vores servere uden at modificere din eksisterende kodestruktur.
curl https://api.openaicodexapi.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Explain how prepaid billing works for this API."}]
}'
Send din første forespørgsel
Send en simpel text completion for at teste forbindelsen. Brug model-ID uncensored til anmodningen.
- Definer meddeholdelsens indhold.
- Udfør anmodningen.
from openai import OpenAI
client = OpenAI(base_url="https://api.openaicodexapi.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)import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.openaicodexapi.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);Svaret returnerer den genererede tekst direkte.
Aktiver Streaming og JSON-tilstand
Stream-svar for lavere latens eller aktiver JSON-tilstand til strukturerede data. Indstil stream=true for real-time token levering.
- Brug
response_formattil JSON-output. - Håndter chunks i din kode.
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)curl https://api.openaicodexapi.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Explain how prepaid billing works for this API."}]
}'Streaming hjælper dig med hurtigt at vise delvise resultater.
Håndter tools og function calling
Definer værktøjer i din request for at aktivere function calling. Angiv værktogsdefinitionerne, og lad modellen afgøre, hvornår de skal bruges.
- Definer funktions-skemaet.
- Parser værktjskaldene i svaret.
from openai import OpenAI
client = OpenAI(base_url="https://api.openaicodexapi.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)import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.openaicodexapi.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);Denne funktion muliggør integration med eksterne systemer.
Begrænsninger, fejl og kontekstvindue
Overvåg dit forbrug for at undgå rate limits eller fejl. Context-vinduet understøtter i alt 100.000 tokens.
- Håndter 401-fejl for ugyldige nøgler.
- Håndter 402-fejl for utilstrækkelig kredit.
- Håndter 429-fejl for hastighedsbegrænsninger.
curl https://api.openaicodexapi.com/v1/chat/completions \
-H "Authorization: Bearer $API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "uncensored",
"messages": [{"role": "user", "content": "Explain how prepaid billing works for this API."}]
}'from openai import OpenAI
client = OpenAI(base_url="https://api.openaicodexapi.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)import OpenAI from "openai";
const client = new OpenAI({ baseURL: "https://api.openaicodexapi.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);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)FAQ
Hvad er OpenAI Codex API?
Det er en uncensureret LLM-API, der er kompatibel med OpenAI-protokollen. Du kan bruge den med standard SDK'er ved at opdatere base-URLen.
Hvordan håndterer jeg fejl?
Almindelige fejl inkluderer 401 for ugyldige nøgler, 402 for ingen kredit og 429 for hastighedsbegrænsninger. Tjek din konto balance og nøglegyldighed.
Hvad er størrelsen på context window?
Kontekstvinduet er 100,000 tokens for både prompt og completion kombineret. Max output er 16,000 tokens pr. anmodning.
Hent din API-nøgle
Tilmeld dig, kopier nøglen, og opdater base-URL'en. Det er alt.