da ▾
Få API-nøgle

Migration API: Fejlfinding af almindelige LLM-integrationsfejl

Migration af din LLM-integration fejler ofte på grund af subtile konfigurationsfejl snarere end komplekse logikbugs. Denne guide adresserer de hyppigste faldgruber ved overgang til en ny usensureret AI-API, så din kode fungerer pålideligt fra dag ét.

Sidst opdateret

Opsummering

  • Base URL-misconfiguration er den mest almindelige årsag til øjeblikkelige forbindelsesfejl.
  • Ignorerer kontekstvinduet på 100.000 tokens fører til stiltiende afkortning af lange samtaler.
  • Streaming kræver specifikke header- og eventhåndteringer, som standard synkronopkald ikke behøver.
  • Ratebegrænsninger på 300 anmodninger per minut kræver robust retry-logik for at undgå 429-fejl.

Konfigurerer Base URL'en forkert

Det første punkt af svigt er næsten altid base URL'en. Når du skifter udbyder, skal du opdatere endpointet, som dit SDK kontakter. En forkert URL resulterer i en 404- eller 403-fejl, før din payload overhovedet forlader din maskine.

Sørg for, at din klient peger på den korrekte domæne. Til vores tjeneste er den basale URL https://api.apimigration.com/v1. Denne URL fungerer med standard OpenAI SDK'er ved blot at ændre base_url parameter.

  • Verificér protokollen (HTTPS vs HTTP).
  • Tjek for efterfølgende skråstreger i din klientkonfiguration.
  • Bekræft, at versionsstien (/v1) matcher din API-specifikation.
curl https://api.apimigration.com/v1/chat/completions \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "uncensored",
    "messages": [{"role": "user", "content": "Run the latest migration script for the user table"}]
  }'

Ignorerer kontekstvinduesgrænser

Din model har en hard grænse på 100.000 tokens for den kombinerede prompt og completion. Hvis du overskrider dette, afviser API'en anmodningen eller forkorter din historie stille afhængigt af implementeringen. Hold altid styr på dit token-forbrug for at undgå at ramme denne væg.

Det maksimale output pr. request er 16.000 tokens. Hvis du ikke indstiller max_tokens, standardværdien er 2.048 tokens. Denne forskel er betydelig for opgaver med generering af langt indhold.

  • Overvåg totalt tokenantal pr. anmodning.
  • Indstil max_tokens eksplicit til lange output.
  • Implementér glidende vindueslogik til meget lange samtaler.
from openai import OpenAI

client = OpenAI(base_url="https://api.apimigration.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)

Unøjagtig streaming-implementering

Streaming-respons kræver specifik håndtering af Server-Sent Events (SSE). Hvis du behandler en stream som et enkelt JSON-objekt, vil din kode hænge eller krashe. Hver chunk indeholder delvise data, og den sidste chunk indeholder tokensforbrugsstatistikker.

Læs streamen inkrementelt. Behandl hver begivenhed, når den ankommer. Dette reducerer den opfattede latens for slutbrugere. Vent ikke på hele svaret, før du behandler det.

  • Åbn en forbindelse og læs linje for linje.
  • Parser data: linjer som JSON.
  • Håndter [DONE] signal korrekt.
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)

At overse hastighedsbegrænsninger

Vores API tillader 300 requests i minuttet per nøgle. Hvis din applikation spidser af, modtager du 429 Too Many Requests-fejl. Du skal implementere exponential backoff for at håndtere disse graceful.

Samtidige forespørgsler er også begrænset til 8 ad gangen per nøgle. Overskridelse af denne grænse kan forårsage udtømning af forbindelsespuljen. Overvåg dine samtidige forbindelser nøje.

  • Implementer eksponentiel backoff for 429-fejl.
  • Begræns samtidige forbindelser til 8.
  • Brug et circuit breaker-mønster ved høj belastning.
import OpenAI from "openai";

const client = new OpenAI({ baseURL: "https://api.apimigration.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);

Antagende standard JSON-formater

Selvom vi følger OpenAI-kompatible formater, kan antagelser bryde din integration. Sørg for at anmode json_object i response_format hvis du har brug for streng JSON. Uden dette kan modellen returnere markdown eller ren tekst.

Parser svaret omhyggeligt. Valider JSON-strukturen, før du bruger den. Dette forhindrer runtime-fejl i downstream-tjenester.

  • Indstil response_format til {"type": "json_object"}.
  • Valider JSON, før du parser den.
  • Håndter malformede svar graceful.
curl https://api.apimigration.com/v1/chat/completions \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "uncensored",
    "messages": [{"role": "user", "content": "Run the latest migration script for the user table"}]
  }'

Tilbageholdenhed ved fejlhåndtering

API'er fejler. Netværks-timeouts, serverfejl og ugyldige payloads sker. Din kode skal håndtere disse fejl uden at krashe. Log fejl detaljerne til fejlfinding.

Tjek fejlkoden og meddelelsen. Prøv igen ved overgangsfejl. Fejl hurtigt ved permanente fejl. Denne adskillelse sparer tid og ressourcer.

  • Log fejlkoder og beskeder.
  • Retry på 5xx-fejl med backoff.
  • Fejl hurtigt ved 4xx-fejl.
from openai import OpenAI

client = OpenAI(base_url="https://api.apimigration.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)

Betaling og problemer med nøglerotation

Vores API bruger forudbetalt kredit via krypto. Kredit udløber ikke. Hvis du løber tør for kredit, mislykkes anmodninger. Overvåg din saldo og toppede op, før den når nul.

Hver konto har én aktiv nøgle. Generering af en ny nøgle gør den gamle nøgle øjeblikkelig ugyldig. Sørg for, at din deployment opdaterer nøglen atomisk for at undgå nedetid.

  • Overvåg kreditbalancen regelmæssigt.
  • Roter nøgler atomisk.
  • Opdater alle instanser samtidigt.
import OpenAI from "openai";

const client = new OpenAI({ baseURL: "https://api.apimigration.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);

Opsummering af bedste praksis

Migrationssucces afhænger af opmærksomhed på detaljer. Verificer din base-URL. Respekter kontekstgrænser. Håndter streaming korrekt. Håndter rate limits. Valider JSON. Håndter fejl. Håndter betalinger og nøgler. Følg disse trin for at sikre en glidende overgang.

Test din integration grundigt, før du går live. Brug prøve-kreditten til at verificere din opsætning. Dette forhindrer dyre nedbrud i produktion.

  • Bekræft base URL.
  • Respekter kontekstgrænser.
  • Håndtering af streaming korrekt.
  • Håndter rate limits.
  • Valider JSON.
  • Håndter fejl.
  • Håndter betalinger og nøgler.
curl https://api.apimigration.com/v1/chat/completions \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "uncensored",
    "messages": [{"role": "user", "content": "Run the latest migration script for the user table"}]
  }'

Almindelige spørgsmål

Hvad er størrelsen på context window?

Kontekstvinduet er 100.000 tokens for prompt og completion tilsammen. Den maksimale output pr. anmodning er 16.000 tokens. Hvis du ikke angiver max_tokens, er standardværdien 2.048 tokens.

Hvordan streamer jeg svar?

Brug Server-Sendte Begivenheder (SSE). Læs hver linje og parse JSON-dataene. Den sidste chunk indeholder tokenforbrug. Vent ikke på hele svaret.

Hvad er hastedsbegrænsningerne?

Du kan lave 300 anmodninger per minut per nøgle. Du kan have 8 samtidige anmodninger per nøgle. Overskridelse af disse grænser resulterer i 429-fejl.

Hvordan betaler jeg for API'en?

Betalinger er kun krypto. Du kan bruge USDT (TRC20) eller USDC (Base). Indbetalinger ligger mellem $20 og $500. Kreditten udløber ikke.

Hent din API-nøgle

Tilmeld dig, kopier nøglen, opdater base-URL. Opsætningen er fuldført.

Få API-nøgle