da ▾

Ollama API-fejlfindingsguide

Denne guide forklarer, hvordan du korrekt konfigurerer, fejlsøger og sikrer dit LLM API-endpoint, uanset om du kører en lokal instans eller bruger en tredjepartsudbyder som vores uncensored OpenAI-kompatible service. Vi dækker almindelige forbindelsesfejl, streaming-konfigurationer og faktureringsmatematik for at hjælpe dig med at få din kode til at virke med det samme.

Sidst opdateret

Opsummering

  • Bekræft, at din base-URL og API-nøgle matcher udbyderens' dokumentation, før du fejlsøger kompleks kode.
  • Indstil eksplicitte token-grænser for at undgå uventet truncering eller faktureringsudgifter i streaming-svar.
  • Brug Google-login eller e-mail/adgangskode til øjeblikkelig nøglegenerering uden forsinkelse fra telefonverifikation.
  • Sikr dit lokale endpoint ved at ændre standardporte og begrænse adgang for at forhindre uautoriseret compute-anvendelse.

Forståelse af ollama API-endpunktstrukturen

The ollama endpoint følger et strengt RESTful-mønster, der efterligner OpenAI API-strukturen. Du interagerer med det ved at sende POST-anmodninger til /v1/chat/completions og forespørg tilgængelige modeller via GET /v1/models. Denne standardisering gør det muligt at skifte underliggende modeller uden at gen skrive din klientkode.

Mange udviklere antager, at endpointet understøtter embeddings eller billedgenerering som standard. Det gør det ikke. Vores hosted service f.eks. leverer kun tekstkompletteringer med en enkelt uncensored-model. Tjek altid GET /v1/models response for at se præcis, hvilke funktioner der er tilgængelige. Hvis du ser en liste over modeller, skal du verificere deres IDs, før du sender forespørgsler.

Når du bruger en lokal instans, kører endpointet typisk på http://localhost:11434. Til cloud-udbydere bruger du en custom base URL. Sørg for, at din HTTP-klient håndterer headers korrekt, især Content-Type: application/json. En manglende header forårsager ofte stille fejl, som ser ud som modelfejl.

Strukturelle elementer for nøgle:

  • model: Strengidentifikatoren for den specifikke LLM.
  • messages: Et array af rolle-baserede indholdobjekter.
  • stream: En boolean-flag, der aktiverer Server-Sent Events (SSE).

Hvorfor dine ollama API-kald kan fejle

API-opkald fejler normalt på grund af forkerte base-URL'er, udløbede nøgler eller fejlformaterede JSON-payloads. Den mest almindelige fejl er en 401 Unauthorized-respons, hvilket betyder, at din API-nøgle mangler eller er ugyldig. Et andet hyppigt problem er en 404 Not Found-fejl, der indikerer, at slutpunktet ikke understøtter den anmodede sti eller model-ID.

Tjek din request-body omhyggeligt. Hvis du sender en parameter, som endpointet ikke understøtter, såsom modalities til en tekstkunne-model, kan serveren afvise anmodningen. Vores service understøtter f.eks. ikke billedinput. At sende det resulterer i en øjeblikkelig fejl.

Tidsudløb forårsager også fejl. Hvis din lokale Ollama-instans er inaktiv, kan den fjerne modellen fra VRAM. Den første anmodning efter en kold start kan tage flere sekunder. Indstil en generøs tidsudløb i din HTTP-klient for at undgå for tidlige afbrydelser.

Almindelige fejlkoder:

  • 400: Bad Request (malformed JSON eller ugyldige parametre).
  • 401: Uautoriseret (ugyldig eller manglende API-nøgle).
  • 429: For mange anmodninger (rate limit overskredet).
  • 500: Internal Server Error (modelindlæsning mislykkedes).

Konfigurerer Uncensored ollama-modeller Korrekt

Ucensurerede modeller kræver ofte specifikke parametre for at opføre sig som forventet. Den primære forskel ligger i system prompt. Du skal eksplicit instruere modellen i at omgå standardafvisninger. Uden en stærk systemprompt kan modellen falde tilbage til standard sikkerhedsadfærd.

Vores endepunkt bruger model-ID' uncensored. Du sender anmodninger til dette ID, og serveren håndterer den underliggende modelvalg. Dette abstraherer kompleksiteten ved styring af modelversioner. Du behøver ikke vide, om den underliggende arkitektur er baseret på Llama eller Mistral.

Juster temperature parameter for at kontrollere kreativitet. En værdi på 0,7 er et godt udgangspunkt for balancerede svar. Højere værdier øger tilfældigheden, hvilket er nyttigt til kreativ skrivning, men kan reducere den faktuelle nøjagtighed. Lavere værdier gør outputtet mere deterministisk.

Konfigurationstips:

  • Brug top_p alongside temperature for bedre kontrol.
  • Indstil stop sekvenser til at forhindre uendelige løkker.
  • Medtag altid en system besked for rolledefinition.

Håndtering af streaming og tokenbegrænsninger

Streaming-respons returnerer data i chunks via Server-Sent Events (SSE). Hver chunk indeholder en delvis færdiggørelse. Du skal samle disse chunks for at få hele svaret. Vores service inkluderer tokensforbrugsstatistikker i den sidste chunk, hvilket giver dig mulighed for at spore omkostninger i realtid.

Tokengrænser er kritiske for lange samtaler. Vores endpoint understøtter et context-vindue på 100.000 tokens, der kombinerer både prompt og completion. Det maksimale output pr. forespørgsel er dog 16.000 tokens. Hvis du ikke indstiller max_tokens, standardværdien er 2.048 tokens. Dette kan afkorte lange svar uventet.

Når du streamer, skal du håndtere netværksafbrydelser elegant. Hvis forbindelsen bryder, kan du genoptage fra den sidste modtagne chunk, hvis serveren understøtter det. Ellers skal du muligvis gentage hele requestet. Overvåg altid usage felt i den sidste chunk for at undgå overraskelser ved fakturering.

Bedste praksis for streaming:

  • Parser SSE-hændelser korrekt og ignorer tomme linjer.
  • Ophob chunks i hukommelsen eller en buffer.
  • Tjek usage object i den sidste chunk til tokenantal.

Faktureringsfejl og Token-aritmetik

Faktureringsfejl skyldes ofte en misforståelse af, hvordan tokens optælles. Tokens opkræves for både input (prompt) og output (fuldførelse). Vores priser er $0.15 per 1M input-tokens og $0.50 per 1M output-tokens. Fejl og afvisninger er gratis, hvilket reducerer omkostningerne til fejlfinding.

Tokenizers mapper ikke altid 1:1 med tegn. Et enkelt ord kan være flere tokens. Hvis du estimerer omkostninger baseret på tegntælling, kan du undervurdere regningen. Brug en pålidelig tokenizer-bibliotek i din klient for at få nøjagtige tællinger, før du sender forespørgsler.

Kredit udløber ikke. Hvis du topped op med crypto, forbliver balancen, indtil du bruger den. Dette er nyttigt til langsigtede projekter. Vær dog opmærksom på, at hver request forbruger tokens fra din balance. Hvis din balance er lav, kan efterfølgende requests mislykkes.

Faktureringsråd:

  • Spor tokenforbrug i hvert svar.
  • Opsæt alarmer for lave saldogrænser.
  • Brug max_tokens til at caps potentielle omkostninger.

Sikkerheds- og portscanning-problemer

Lokale Ollama-endpoints er ofte eksponeret for netværket som standard. Dette gør dem sårbare over for portscannere, der leder efter gratis beregningskraft. Hvis du eksponerer port 11434 uden godkendelse, kan enhver bruge dine GPU-ressourcer. Dette kan føre til høje elregninger og langsom ydeevne.

Sikr dit endpoint ved at ændre standardporten eller bruge en reverse proxy med autentifikation. Vores hosted service håndterer sikkerheden for dig, så du ikke behøver at bekymre dig om porteksponering. Du skal kun holde din API-nøgle privat.

For lokale opsætninger skal du bruge en firewall til at begrænse adgangen til betroede IP-adresser. Du kan også aktivere token-baseret autentificering i Ollamas konfigurationsfil. Dette forhindrer uautoriserede brugere i at sende anmodninger.

Sikkerhedstrin:

  • Skift standardporten, hvis du udsætter det til internettet.
  • Brug en reverse proxy med HTTPS og auth.
  • Overvåg din netværkstrafik for unormal aktivitet.

Lokal vs Cloud ollama API-brug

Lokal brug giver dig fuld kontrol over dataprivacy og modelvalg. Du kan køre flere modeller samtidigt og skifte mellem dem øjeblikkeligt. Du er dog ansvarlig for hardwarevedligeholdelse, opdateringer og sikkerhed. Cloud-brug afvælger disse ansvar til udbyderen.

Vores cloud-service tilbyder en uncensored-model, der er optimeret til ubegrænset indholdsgenerering. Du får øjeblikkelig adgang uden at downloade store modelfiler. Ulempen er, at dine data passerer gennem vores servere. Til følsomme data kan lokal kørsel være at foretrække.

Cloud-tjenester har ofte højere latenstid på grund af netværksrundrejser. Lokale instanser har næsten nul latenstid, hvis GPU'en er hurtig nok. Lokale instanser kræver dog betydelig VRAM. Hvis din GPU løber tør for hukommelse, kan modellen swappe til CPU, hvilket drastisk sænker svarhastigheden.

Sammenligning:

  • Lokal: Privatliv, kontrol, hardwareafhængighed.
  • Cloud: Nemhed, skalerbarhed, dataoverførsel.

Almindelige fejl på klientsiden

Udvikler glemmer ofte at håndtere rate limits. Vores service tillader 300 anmodninger i minuttet per nøgle. Hvis du overskrider dette, modtager du en 429-fejl. Implementér eksponentiel backoff i din klient til at håndtere disse fejl elegant.

En anden fejl er ikke at indstille stream parameter korrekt. Hvis du forventer streaming, men ikke indstiller stream: true, vil du vente på hele svaret, før du modtager nogen data. Dette kan få din app til at føles langsom.

JSON-tilstand-fejl er også almindelige. Hvis du indstiller response_format: {type: "json_object"}, modellen skal returnere gyldig JSON. Hvis den ikke gør det, vil din parser fejle. Tilføj fejlhåndtering til at fange og gentage JSON-parseringsfejl.

Tjekliste:

  • Implementér håndtering af hastighedsbegrænsning.
  • Indstil stream: true for real-time opdateringer.
  • Valider JSON-output, når du bruger JSON-tilstand.

FAQ

Hvordan får jeg en API-nøgle til en uncensored ollama endpoint?

Du kan generere en API-nøgle med det samme ved at tilmelde dig med Google eller en e-mail og adgangskode. Vores service kræver ingen telefonnummer og giver nøglen øjeblikkeligt ved oprettelse. Dette giver dig mulighed for at starte med at teste din kode inden for sekunder.

Understøtter den ubegrænsede Ollama-model billedinput?

Nej, vores endpoint betjener kun tekstkompletteringer. Det understøtter ikke input af billeder, lyd eller video. Hvis du har brug for multimodale funktioner, skal du bruge en anden tjeneste eller en lokal multimodal model.

Hvad sker der, hvis jeg overskrider hastedsbegrænsningen?

Hvis du overskrider 300 anmodninger i minuttet, modtager du en 429 Too Many Requests-fejl. Din API-nøgle forbliver gyldig, men du skal vente, indtil rate limit-vinduet nulstilles. Det anbefales at implementere eksponentiel backoff i din klient.

Bruges mine data til træning, når jeg bruger denne API?

Nej, dine prompts bruges ikke til træning. Vi respekterer dit privatliv og opbevarer ikke dine data til modelforbedring. Dette gør vores tjeneste velegnet til generering af fortroligt eller følsomt indhold.

Hent din API-nøgle

Tilmeld dig, få nøglen, og peg på den nye base-URL. Færdig.

Start nu