Modellkatalog
- Normativ
- Entwurf 1.0
- Aktualisiert
- Als Markdown anzeigen
5.1 Modelle auflisten
GET /lmsp/v1/models?capability=chat&ready_only=false
Authorization: Bearer <token>
| Abfrageparameter | Bedeutung |
|---|---|
capability |
Gibt nur Modelle zurück, die die genannte Fähigkeit haben, zum Beispiel chat, embeddings oder tools. |
ready_only |
Bei true werden nur Modelle zurückgegeben, deren status ready ist. Standardwert ist false. |
{
"object": "list",
"catalog_revision": "42",
"data": [
{
"id": "qwen3:14b-q4_k_m",
"object": "model",
"display_name": "Qwen3 14B Q4_K_M",
"owned_by": "local",
"family": "qwen3",
"revision": "sha256:8f27c1a4e9b05d36f2a7c8e1b4d90a63c5e2f7b8a1d4c9e60b3f5a7d2c8e1b04",
"status": "ready",
"capabilities": {
"chat": true,
"completion": true,
"embeddings": false,
"tools": true,
"vision": false,
"structured_output": true,
"streaming": true
},
"input_modalities": ["text"],
"output_modalities": ["text"],
"context_window": 32768,
"max_output_tokens": 8192,
"runtime": {
"backend": "llama.cpp",
"device": "metal",
"load_on_demand": true
}
}
]
}
Damit Clients nicht immer wieder den vollständigen Katalog abrufen müssen, SOLLTE ein Dienst einen ETag-Header, ein Feld catalog_revision oder beides zurückgeben:
catalog_revisionist eine opake Zeichenfolge, die sich ändert, sobald sich der Katalog ändert.- Ein Dienst, der
ETagsendet, SOLLTE auf ein passendesIf-None-Matchmit304 Not Modifiedantworten.
5.2 Modellobjekt
| Feld | Bedeutung |
|---|---|
id |
Stabile Modellkennung, die in jeder Anfrage verwendet wird, die ein Modell benennt. |
object |
Immer "model". |
display_name |
Menschenlesbarer Name. Der Nutzer kann ihn ändern. |
aliases |
Optionale Liste alternativer Namen. Sie sind rein informativ. |
owned_by |
Woher das Modell stammt. local für auf diesem Gerät installierte Modelle. |
family |
Modellfamilie, etwa qwen3. |
revision |
Digest des Modellinhalts, etwa sha256:8f27.... |
status |
Lebenszyklus-Zustand (Abschnitt 5.3). |
capabilities |
Boolesche Schalter: chat, completion, embeddings, tools, vision, structured_output und streaming. |
input_modalities, output_modalities |
Die Arten von Inhalt, die das Modell liest und schreibt. text ist die einzige in 1.0 definierte Modalität. |
context_window |
Maximale Anzahl an Kontext-Tokens. |
max_output_tokens |
Maximale Anzahl an Tokens in einer Antwort. |
runtime |
backend (zum Beispiel llama.cpp), device (zum Beispiel metal) und load_on_demand. |
error |
Vorhanden, wenn status error ist. Ein Problemobjekt (Abschnitt 9.3). |
Die id eines Modells MUSS stabil sein. Anzeigename und Aliase kann der Nutzer ändern; sie DÜRFEN NICHT als Primärschlüssel verwendet werden.
5.3 Modell-Lebenszyklus
installed --> loading --> ready --> unloading --> installed
|
+-----> error
| Status | Bedeutung |
|---|---|
installed |
Das Modell existiert, ist aber nicht geladen. |
loading |
Speicher wird zugewiesen oder die Laufzeitumgebung wird initialisiert. |
ready |
Das Modell kann Anfragen sofort verarbeiten. |
unloading |
Ressourcen werden freigegeben. |
error |
Das Laden ist fehlgeschlagen. Das Modellobjekt SOLLTE einen strukturierten Fehler enthalten. |
Eine neue Ladeanfrage versetzt ein Modell im Zustand error zurück nach loading.
Benennt eine Anfrage ein Modell, das installed ist und dessen runtime.load_on_demand true ist, lädt der Dienst es im Rahmen der Anfrage. Kann das Modell nicht sofort verwendet werden und wird nicht bei Bedarf geladen, antwortet der Dienst mit 409 und model_not_ready. Schlägt das Laden fehl, lautet der Fehler model_load_failed.
5.4 Modelloperationen
GET /lmsp/v1/models/{model_id} gibt ein Modellobjekt zurück. Eine unbekannte ID ergibt 404 mit model_not_found.
Zwei optionale Endpunkte steuern das Laden explizit. Sie sind verfügbar, wenn die Fähigkeit model_management true ist, und erfordern den Scope models:manage (Abschnitt 10.3):
| Endpunkt | Verhalten |
|---|---|
POST /lmsp/v1/models/{model_id}/load |
Lädt das Modell vorab. Gibt das Modellobjekt mit 202 Accepted zurück, wenn das Laden begonnen hat, oder mit 200, wenn es bereits ready ist. |
POST /lmsp/v1/models/{model_id}/unload |
Entlädt das Modell. Gibt das Modellobjekt zurück. Die Wiederholung der Anfrage ist harmlos. |
Beide akzeptieren einen Idempotency-Key (Abschnitt 9.2).