Points de terminaison

4.1 Tableau des points de terminaison

Un service conforme DOIT implémenter chaque point de terminaison marqué obligatoire. Il PEUT implémenter les facultatifs, et les signale par les indicateurs de capacité de sa description de service.

Méthode Chemin Exigence Rôle
GET /.well-known/lmsp.json Obligatoire Découverte du service et de ses capacités
GET /lmsp/v1/openapi.json Obligatoire Spécification de l’interface lisible par machine
GET /lmsp/v1/health Obligatoire Contrôle de vivacité et de disponibilité
POST /lmsp/v1/pair Obligatoire Échanger un code d’appairage contre un jeton porteur
GET /lmsp/v1/models Obligatoire Lister les modèles locaux
GET /lmsp/v1/models/{model_id} Obligatoire Obtenir un modèle
POST /lmsp/v1/responses Obligatoire Génération synchrone ou en streaming
GET /lmsp/v1/responses/{response_id} Facultatif Récupérer une réponse stockée
POST /lmsp/v1/tasks Obligatoire Créer une tâche de génération asynchrone
GET /lmsp/v1/tasks/{task_id} Obligatoire Obtenir une tâche asynchrone
POST /lmsp/v1/tasks/{task_id}/cancel Obligatoire Annuler une tâche asynchrone
GET /lmsp/v1/tasks/{task_id}/events Facultatif S’abonner au flux d’événements ou le reprendre
POST /lmsp/v1/models/{model_id}/load Facultatif Précharger un modèle
POST /lmsp/v1/models/{model_id}/unload Facultatif Décharger un modèle

Les points de terminaison compatibles OpenAI sous /v1 et les points de terminaison facultatifs compatibles Ollama sont listés à la page 8.

4.2 Conventions

  • Corps. Les corps des requêtes et des réponses sont en JSON (application/json), sauf les flux d’événements (text/event-stream) et les erreurs (application/problem+json).
  • Paramètres de chemin. Un nom entre accolades, tel que {model_id}, est un espace réservé. Les valeurs DOIVENT être encodées en pourcentage. Un identifiant de modèle comme qwen3:14b-q4_k_m est envoyé sous la forme qwen3%3A14b-q4_k_m.
  • Authentification. Chaque point de terminaison exige Authorization: Bearer <token>, sauf /.well-known/lmsp.json, /lmsp/v1/openapi.json, /lmsp/v1/health et /lmsp/v1/pair.
  • Points de terminaison facultatifs. Un point de terminaison facultatif que le service n’implémente pas DOIT répondre 501 Not Implemented avec le code d’erreur unsupported_capability.
  • Versions et erreurs. Les requêtes peuvent porter des en-têtes de version, et chaque erreur utilise un format unique. Les deux sont définis à la page 9.
  • Contrat. Le document OpenAPI publié à l’adresse /lmsp/1.0/openapi.json est la forme lisible par machine de cette page. Le texte fait foi lorsque les deux diffèrent.