AiHummer
Deutsch
AnmeldenKonto
v1.2.x
{ }Swagger

Chat-Vervollständigungs-API

v1.2.x · aktualisiert 2026-06-26

AiHummer enthüllt ein Einzelnes OpenAI-kompatibel HTTP-Endpunkt für Textdurchläufe: POST /v1/chat/completions. Jeder Client oder jedes SDK, das bereits das OpenAI Chat Completions-Format unterstützt, kann mit AiHummer kommunizieren, indem die Basis-URL und der API-Schlüssel geändert werden — es ist kein AiHummer-spezifischer Code erforderlich.

Authentifizierung

Anfragen werden mit einem authentifiziert persönlicher API-Schlüssel als Bearer-Token. AiHummer-Schlüssel sind mit dem Präfix versehen ah- und werden von der Web-Admin-Benutzeroberfläche ausgegeben.

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

[!TIP] Die Basis-URL ist Ihre Gateway-Adresse. In einer Standardinstallation hört das Gateway am öffentlichen Port :8780, sodass ein Ortsgespräch führt zu http://localhost:8780/v1/chat/completions. Das Gateway besitzt seine Ports direkt — einen Reverse-Proxy davor zu setzen, ist die Entscheidung des Betreibers, nicht eine Anforderung.

Eine grundlegende Anfrage

Senden Sie einen JSON-Body mit messages, genau so, wie Sie es bei OpenAI tun würden. Die model Das Feld wählt das auf Ihrer Instanz konfigurierte Modell (oder den Agenten) aus.

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
  }'

Eine nicht-Streaming-Antwort folgt der vertrauten Form der Chat-Vervollständigungen:

{
  "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 }
}

Streaming-Antworten (SSE)

Set "stream": true die Antwort schrittweise zu erhalten, während Server-Gesendete Ereignisse. Jedes Ereignis trägt eine chat.completion.chunk Delta, und der Strom endet mit einem letzten data: [DONE] Linie.

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." }
    ]
  }'

Die Antwort ist eine 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 ist der nur Endpunkt auf dem OpenAI-kompatiblen Oberfläche. AiHummer macht nicht aussetzen /v1/models und tut nicht aussetzen /v1/embeddings — Einbettungen sind ein internes Teilsystem und nicht erreichbar über HTTP. Verlassen Sie sich nicht auf diese Routen; sie geben 404 zurück.

Entdeckung & Schema-Oberflächen

Während es kein /v1/models Auflistung, AiHummer liefert mehrere Entdeckungsoberflächen, damit Menschen und Werkzeuge die API erkunden können:

Pfad Wem es dient
GET /docs Für Menschen lesbare Dokumentationseintrittsstelle
GET /docs/api Interaktiver API-Explorer
GET /docs/openapi.json OpenAPI 3.x Spezifikation
GET /openapi.json OpenAPI 3.x-Spezifikation (Wurzelalias)
GET /docs/llm.json Maschinenlesbare API-Zusammenfassung für LLM-Tools
GET /llms.txt llms.txt Index für LLM-Agenten
# Fetch the OpenAPI spec
curl https://your-aihummer.example/openapi.json

Systemendpunkte

Zwei leichtgewichtige, nicht authentifizierte Systemendpunkte helfen bei der Überprüfung der Lebensfähigkeit und der Uhrzeit:

Methode & Pfad Zweck
GET /v1/ping Gibt eine einfache Liveness-Antwort zurück
GET /v1/time Gibt die aktuelle Serverzeit des Gateways zurück
curl https://your-aihummer.example/v1/ping
curl https://your-aihummer.example/v1/time

Wohin als Nächstes