AiHummer
Norsk
Logg påKonto
v1.1.x
{ }Swagger

Chat-kompletterings-API

v1.1.x · oppdatert 2026-06-26

AiHummer eksponerer en enkelt OpenAI-kompatibel HTTP-endepunkt for tekstomganger: POST /v1/chat/completions. Enhver klient eller SDK som allerede bruker OpenAI Chat Completions-formatet kan kommunisere med AiHummer ved å endre basis-URLen og API-nøkkelen — ingen AiHummer-spesifikk kode er nødvendig.

Autentisering

Forespørsler blir autentisert med en personlig API-nøkkel som en Bearer-token. AiHummer-nøkler er prefikset med ah- og utstedes fra webadminbrukergrensesnittet.

POST /v1/chat/completions HTTP/1.1
Host: your-aihummer.example
Authorization: Bearer ah-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Content-Type: application/json

[!TIP] Grunn-URL-en er gateway-adressen din. I en standardinstallasjon lytter gatewayen på den offentlige porten :8780, så en lokal samtale går til http://localhost:8780/v1/chat/completions. Gatewayen eier sine porter direkte — det å sette en reverse proxy foran er operatørens valg, ikke en krav.

En enkel forespørsel

Send en JSON-kropp med messages, akkurat som du ville gjort med OpenAI. model feltet velger modellen (eller agenten) som er konfigurert på din instans.

curl https://your-aihummer.example/v1/chat/completions \
  -H "Authorization: Bearer ah-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "default",
    "messages": [
      { "role": "system", "content": "You are a helpful assistant." },
      { "role": "user", "content": "Summarise our refund policy in two sentences." }
    ],
    "temperature": 0.3
  }'

Et ikke-strømmende svar følger den kjente formen for Chat Fullføringer:

{
  "id": "chatcmpl-...",
  "object": "chat.completion",
  "created": 1750000000,
  "model": "default",
  "choices": [
    {
      "index": 0,
      "message": { "role": "assistant", "content": "Refunds are issued within 14 days..." },
      "finish_reason": "stop"
    }
  ],
  "usage": { "prompt_tokens": 0, "completion_tokens": 0, "total_tokens": 0 }
}

Strømming av svar (SSE)

Sett "stream": true å motta svaret trinnvis som Server-sendte hendelser. Hvert arrangement bærer en chat.completion.chunk delta, og strømmen avsluttes med en slutt data: [DONE] linje.

curl -N https://your-aihummer.example/v1/chat/completions \
  -H "Authorization: Bearer ah-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "default",
    "stream": true,
    "messages": [
      { "role": "user", "content": "Write a one-line greeting." }
    ]
  }'

Svaret er en text/event-stream:

data: {"id":"chatcmpl-...","object":"chat.completion.chunk","choices":[{"index":0,"delta":{"role":"assistant"}}]}

data: {"id":"chatcmpl-...","object":"chat.completion.chunk","choices":[{"index":0,"delta":{"content":"Hello"}}]}

data: {"id":"chatcmpl-...","object":"chat.completion.chunk","choices":[{"index":0,"delta":{"content":"!"},"finish_reason":"stop"}]}

data: [DONE]

[!WARNING] /v1/chat/completions er den bare endepunkt på OpenAI-kompatibel overflate. AiHummer gjør ikke eksponere /v1/models og gjør ikke eksponere /v1/embeddings — innebygginger er et internt delsystem og er ikke tilgjengelige over HTTP. Ikke stol på disse rutene; de returnerer 404.

Discovery- og skjemaoverflater

Selv om det ikke finnes /v1/models listing, AiHummer sender flere oppdagelsesflater slik at mennesker og verktøy kan utforske API-en:

Sti Hva det serverer
GET /docs Menneskelesbar dokumentasjonsinngang
GET /docs/api Interaktiv API-utforsker
GET /docs/openapi.json OpenAPI 3.x-spesifikasjon
GET /openapi.json OpenAPI 3.x-spesifikasjon (rotnavn)
GET /docs/llm.json Maskinlesbar API-oppsummering for LLM-verktøy
GET /llms.txt llms.txt indeks for LLM-agenter
# Fetch the OpenAPI spec
curl https://your-aihummer.example/openapi.json

Systemendepunkter

To lette, uautentiserte systemendepunkter hjelper med livstegn- og klokkesjekker:

Metode og sti Formål
GET /v1/ping Returnerer et enkelt respons på livstegn
GET /v1/time Returnerer gatewayens nåværende servertid
curl https://your-aihummer.example/v1/ping
curl https://your-aihummer.example/v1/time

Hvor til neste