resources/llm.ts
Source : sdks/typescript/packages/sdk/src/resources/llm.ts. Retour à l'index de la référence du SDK TypeScript.
Cette page est générée par tools/docs/gen_sdk_reference.py depuis les sources du SDK et les dossiers de textes OpenAPI. Ne la modifiez pas à la main : changez la source et régénérez.
Classe ProvidersResource
LLM et passerelle de modèles. Fournisseurs de modèles, registre des modèles, règles de routage et passerelle de modèles (Model Gateway) : le seul chemin par lequel agents et applications appellent les modèles.
Resource
ProvidersResource.catalog
catalog(opts?: CallOptions)
Lire le catalogue des fournisseurs. Chaque type de fournisseur pris en charge par la plateforme, avec les champs et identifiants nécessaires, les libellés dans la langue de la requête, les fournisseurs configurés de chaque type, et la façon de trouver ses modèles (api : API de liste, manual_only : saisie par l'administrateur). Demande un rôle de lecteur.
Route : /v1/providers/catalog (GET).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
ProvidersResource.create
create(body: Doc, opts?: CallOptions)
Créer un fournisseur de modèles. Crée un fournisseur pour le tenant, ou un fournisseur partagé avec scope: platform (platform_admin seulement), et répond 201 sans les identifiants. Demande tenant_admin, platform_admin ou ai_platform_engineer.
Route : /v1/providers (POST).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
body | Doc | oui | provider_type (ou type, un type du catalogue ou un alias), name facultatif (le type par défaut), api_base (ou base_url), config, credentials (champs secrets), regions, retention, scope (platform pour un fournisseur partagé). | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
ProvidersResource.delete
delete(id: string, opts?: CallOptions)
Supprimer un fournisseur de modèles. Supprime le fournisseur et répond 204 ; un fournisseur partagé demande platform_admin (403 platform_only). Audité (provider.delete). Fournisseur inconnu ou invisible : 404 provider_not_found. Demande tenant_admin, platform_admin ou ai_platform_engineer.
Route : /v1/providers/{pid} (DELETE).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
id | string | oui | Identifiant (UUID) du fournisseur. | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
ProvidersResource.disable
disable(id: string, opts?: CallOptions)
Désactiver un fournisseur (kill switch). Kill switch du fournisseur : la passerelle refuse immédiatement ses modèles (403 provider_disabled) et la découverte est refusée (409). Un fournisseur partagé demande platform_admin. Audité (provider.disable). Demande tenant_admin, platform_admin, ai_platform_engineer ou security_officer.
Route : /v1/providers/{pid}/disable (POST).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
id | string | oui | Identifiant (UUID) du fournisseur. | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
ProvidersResource.discoverModels
discoverModels(id: string, opts?: CallOptions)
Découvrir les modèles d'un fournisseur. Modèles que le fournisseur configuré sert réellement, d'après sa propre API de liste avec les identifiants enregistrés et à travers la garde sortante (jamais une liste inventée). Chaque candidat porte ce que le fournisseur renvoie (fenêtre de contexte, sortie maximale, modalités, prix) complété par des indications de la plateforme, un identifiant de registre et une catégorie suggérés, et s'il est déjà enregistré ; 1000 candidats au plus. Les fournisseurs sans API de liste répondent manual_only. Un fournisseur désactivé répond 409 provider_disabled. Audité (provider.discover). Demande tenant_admin, platform_admin ou ai_platform_engineer.
Route : /v1/providers/{pid}/models/discover (POST).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
id | string | oui | Identifiant (UUID) du fournisseur. | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
ProvidersResource.enable
enable(id: string, opts?: CallOptions)
Réactiver un fournisseur désactivé. Lève le kill switch du fournisseur. Un fournisseur partagé demande platform_admin. Audité (provider.enable). Demande tenant_admin, platform_admin ou ai_platform_engineer.
Route : /v1/providers/{pid}/enable (POST).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
id | string | oui | Identifiant (UUID) du fournisseur. | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
ProvidersResource.get
get(id: string, opts?: CallOptions)
Lire un fournisseur configuré. Un fournisseur sans ses identifiants. Un fournisseur d'un autre tenant, ou un identifiant qui n'est pas un UUID, répond 404 provider_not_found. Demande un rôle de lecteur.
Route : /v1/providers/{pid} (GET).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
id | string | oui | Identifiant (UUID) du fournisseur. | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
ProvidersResource.list
list(params?: ListParams, opts?: CallOptions)
Lister les fournisseurs configurés. Fournisseurs partagés et fournisseurs du tenant de l'appelant, avec leur type, leur adresse, leur configuration, leurs régions, leur rétention, leur état et leur dernier test ; les identifiants ne sont jamais renvoyés (seulement les noms des champs renseignés). Demande un rôle de lecteur.
Route : /v1/providers (GET).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
params | ListParams | non | Champs supplémentaires fusionnés dans la requête. | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
ProvidersResource.test
test(id: string, opts?: CallOptions)
Tester la connexion d'un fournisseur. Appelle le point de liste du fournisseur avec ses identifiants enregistrés (pour les protocoles signés comme Bedrock et Vertex, vérifie que le jeu d'identifiants est complet) et répond ok, le statut HTTP, un détail et les modèles vus. Le résultat est enregistré comme état de connexion et audité (provider.test). Demande tenant_admin, platform_admin ou ai_platform_engineer.
Route : /v1/providers/{pid}/test (POST).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
id | string | oui | Identifiant (UUID) du fournisseur. | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
ProvidersResource.update
update(id: string, body: Doc, opts?: CallOptions)
Modifier un fournisseur de modèles. Modifie la configuration, l'adresse, les régions, la rétention ou les identifiants d'un fournisseur. Les nouveaux identifiants sont écrits dans le magasin de secrets et remettent à zéro l'état de connexion jusqu'au prochain test. Une adresse distante doit utiliser TLS (422 tls_required) et respecter les règles d'adresses sortantes ; un champ d'identifiant inconnu répond 422. Un fournisseur partagé demande platform_admin. Audité (provider.update, sans les valeurs). Demande tenant_admin, platform_admin ou ai_platform_engineer.
Route : /v1/providers/{pid} (PATCH).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
id | string | oui | Identifiant (UUID) du fournisseur. | |
body | Doc | oui | Champs à modifier : config, api_base (ou base_url), credentials (champs secrets ; un champ secret envoyé dans config y est déplacé), regions, retention. | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
Alias de type ModelStatus
Statut d'un modèle enregistré : approved, restricted, deprecated ou blocked.
Définition : "approved" \| "restricted" \| "deprecated" \| "blocked".
Classe ModelsResource
LLM et passerelle de modèles. Fournisseurs de modèles, registre des modèles, règles de routage et passerelle de modèles (Model Gateway) : le seul chemin par lequel agents et applications appellent les modèles.
Resource
ModelsResource.create
create(body: Doc, opts?: CallOptions)
Enregistrer un modèle. Enregistre un modèle pour le tenant, ou un modèle partagé avec scope: platform (platform_admin seulement), et répond 201. Le corps est un Model Manifest v1 ou une spec seule ; il doit être valide (422 invalid_manifest) et sa catégorie doit exister. Un identifiant de modèle déjà enregistré dans la même portée répond 409 model_exists. Audité (model.create). Demande tenant_admin, platform_admin ou ai_platform_engineer.
Route : /v1/models (POST).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
body | Doc | oui | Un Model Manifest v1 (kind: Model, metadata, spec) ou la spec seule (model_id, provider, provider_model_id, capabilities, context_window, status...), avec les champs de la fiche, pricing et scope facultatifs. | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
ModelsResource.createCategory
createCategory(body: { slug: string; label: { en: string; fr: string } } & Doc, opts?: CallOptions)
Créer une catégorie de modèles. Crée une catégorie pour le tenant, ou une catégorie partagée avec scope: platform (platform_admin seulement, 403 platform_only), et répond 201. Un slug déjà utilisé répond 409 category_exists ; des champs invalides 422 parameter_invalid. Audité. Demande tenant_admin, platform_admin ou ai_platform_engineer.
Route : /v1/llm/categories (POST).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
body | { slug: string; label: { en: string; fr: string } } & Doc | oui | slug (lettres minuscules, chiffres, tirets et soulignés, de 1 à 40 caractères, obligatoire), label (texte ou {en, fr}, 80 caractères au plus, obligatoire), description (500 caractères au plus), icon, sort_order (de 0 à 10000, 100 par défaut), scope (platform pour une catégorie partagée). | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
ModelsResource.createVersion
createVersion(modelId: string, body: Doc, opts?: CallOptions)
Enregistrer une version de modèle. Enregistre une version du modèle dans le tenant au statut draft et répond 201. La version demande une licence (expression SPDX, ou référence de conditions commençant par https:// ou LicenseRef-) et la provenance des poids ; des champs invalides répondent 422 model_version_invalid avec leurs noms, une version existante 409 model_version_exists. Audité (model.version.create). Demande un principal de tenant avec tenant_admin ou platform_admin.
Route : /v1/models/{model_id}/versions (POST).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
modelId | string | oui | Identifiant du modèle dans le registre. | |
body | Doc | oui | version (de 1 à 64 caractères : lettres, chiffres, points, tirets, soulignés, plus), licence_spdx ou licence_terms_ref, weights avec source (https://, oci://, hf://, s3:// ou registry://), digest (sha256: et 64 caractères hexadécimaux) et size_bytes (entier positif), capabilities facultatif (liste de textes). | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
ModelsResource.delete
delete(modelId: string, opts?: CallOptions)
Supprimer un modèle du registre. Supprime l'entrée du modèle propre au tenant (la suppression d'une surcharge d'un modèle partagé fait réapparaître l'entrée partagée), ou l'entrée partagée s'il n'y a pas d'entrée du tenant ; l'entrée partagée demande platform_admin (403 platform_only). Répond 204 ; audité (model.delete). Modèle inconnu : 404 model_not_found. Demande tenant_admin, platform_admin ou ai_platform_engineer.
Route : /v1/models/{model_id} (DELETE).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
modelId | string | oui | Identifiant du modèle dans le registre (pas l'identifiant du modèle chez le fournisseur). | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
ModelsResource.deleteCategory
deleteCategory(slug: string, opts?: CallOptions)
Supprimer une catégorie de modèles. Supprime une catégorie créée par le tenant ou la plateforme et répond 204. Une catégorie prédéfinie ne peut pas être supprimée (409 category_builtin), ni une catégorie encore utilisée par un modèle (409 category_in_use) ; une catégorie partagée demande platform_admin (403 platform_only). Audité. Demande tenant_admin, platform_admin ou ai_platform_engineer.
Route : /v1/llm/categories/{slug} (DELETE).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
slug | string | oui | Slug de la catégorie : lettres minuscules, chiffres, tirets et soulignés, de 1 à 40 caractères. | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
ModelsResource.disable
disable(modelId: string, opts?: CallOptions)
Désactiver un modèle (kill switch). Kill switch du modèle pour le tenant : la passerelle le refuse immédiatement (403 model_disabled). Sur un modèle partagé, cela crée une surcharge propre au tenant. Audité (model.disable). Demande tenant_admin, platform_admin, ai_platform_engineer ou security_officer.
Route : /v1/models/{model_id}/disable (POST).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
modelId | string | oui | Identifiant du modèle dans le registre. | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
ModelsResource.enable
enable(modelId: string, opts?: CallOptions)
Réactiver un modèle désactivé. Lève le kill switch du modèle pour le tenant. Audité (model.enable). Demande tenant_admin, platform_admin ou ai_platform_engineer.
Route : /v1/models/{model_id}/enable (POST).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
modelId | string | oui | Identifiant du modèle dans le registre. | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
ModelsResource.get
get(modelId: string, opts?: CallOptions)
Lire un modèle enregistré. Un modèle du registre, ou son Model Manifest v1 avec format=manifest. Modèle inconnu : 404 model_not_found. Demande un rôle de lecteur.
Route : /v1/models/{model_id} (GET).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
modelId | string | oui | Identifiant du modèle dans le registre. | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
ModelsResource.getCategory
getCategory(slug: string, opts?: CallOptions)
Lire une catégorie de modèles. Une catégorie de modèles avec son nombre de modèles. Slug inconnu : 404 category_not_found. Demande un rôle de lecteur.
Route : /v1/llm/categories/{slug} (GET).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
slug | string | oui | Slug de la catégorie. | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
ModelsResource.importModels
importModels(body: { provider_id: string; models: Doc[] } & Doc, opts?: CallOptions)
Importer des modèles découverts. Enregistre les modèles choisis lors d'une découverte. Idempotent : ceux déjà enregistrés (même identifiant, ou même fournisseur et même identifiant chez le fournisseur) sont ignorés et listés avec already_registered. Chaque élément est contrôlé d'abord ; un seul élément invalide refuse tout l'import avec 422 import_invalid et le problème de chaque élément. Chaque modèle et l'import sont audités. Demande tenant_admin, platform_admin ou ai_platform_engineer.
Route : /v1/models/import (POST).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
body | { provider_id: string; models: Doc[] } & Doc | oui | provider_id (identifiant ou nom du fournisseur, obligatoire), models (de 1 à 200 objets issus de la découverte : provider_model_id et, facultativement, l'identifiant du registre, la catégorie et les champs de la fiche), scope facultatif (platform). | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
ModelsResource.iterate
iterate(params?: ListParams, opts?: CallOptions)
Lister les modèles enregistrés. Modèles visibles par l'appelant (modèles partagés avec les surcharges du tenant appliquées, et modèles du tenant), éventuellement filtrés. Une seule page (next_cursor vaut toujours null). Demande un rôle de lecteur.
Route : /v1/models (GET).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
params | ListParams | non | Champs supplémentaires fusionnés dans la requête. | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
ModelsResource.list
list(params?: ListParams, opts?: CallOptions)
Lister les modèles enregistrés. Modèles visibles par l'appelant (modèles partagés avec les surcharges du tenant appliquées, et modèles du tenant), éventuellement filtrés. Une seule page (next_cursor vaut toujours null). Demande un rôle de lecteur.
Route : /v1/models (GET).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
params | ListParams | non | Champs supplémentaires fusionnés dans la requête. | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
ModelsResource.listCategories
listCategories(opts?: CallOptions)
Lister les catégories de modèles. Catégories de modèles visibles par l'appelant (prédéfinies, partagées et propres au tenant) avec leur libellé et leur description en anglais et en français, leur icône, leur ordre et le nombre de modèles qui les utilisent. Une seule page. Demande un rôle de lecteur.
Route : /v1/llm/categories (GET).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
ModelsResource.listVersions
listVersions(modelId: string, opts?: CallOptions)
Lister les versions d'un modèle. Versions du modèle dans le tenant, de la plus ancienne à la plus récente, avec licence, source, empreinte et taille des poids, capacités, statut (draft, pending_approval, canary, active, superseded, rolled_back) et approbation. Demande un principal de tenant avec tenant_admin, platform_admin, security_officer, finops, developer, auditor ou viewer.
Route : /v1/models/{model_id}/versions (GET).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
modelId | string | oui | Identifiant du modèle dans le registre. | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
ModelsResource.requestVersionApproval
requestVersionApproval(modelId: string, version: string, body: Doc = {}, opts?: CallOptions)
Demander l'approbation d'une version. Ouvre une demande d'approbation (action model_version_activation) pour une version draft et répond 202 avec son identifiant ; la version passe à pending_approval. Les approbateurs sont tenant_admin et security_officer, et le demandeur ne peut pas approuver sa propre demande (séparation des tâches). Une version qui n'est pas un brouillon répond 409 model_version_state. Audité. Demande un principal de tenant avec tenant_admin ou platform_admin.
Route : /v1/models/{model_id}/versions/{version}/approval (POST).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
modelId | string | oui | Identifiant du modèle dans le registre. | |
version | string | oui | Version à approuver, telle qu'enregistrée. | |
body | Doc | {} | non | {reason} facultatif, présenté aux approbateurs. |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
ModelsResource.resolve
resolve(body: Doc, opts?: CallOptions)
Résoudre les paramètres natifs d'appel. Capability Resolver : traduit des paramètres d'appel normalisés (par exemple l'effort de raisonnement none, low, medium, high, max) en paramètres natifs du modèle, d'après ce que déclare son manifeste. Une valeur non prise en charge est refusée avec un code explicite ou ajustée avec un avertissement dans la réponse, jamais silencieusement. Modèle inconnu : 404 model_not_found. Demande un rôle de lecteur.
Route : /v1/models/resolve (POST).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
body | Doc | oui | model (ou model_id) et les paramètres normalisés, soit dans params, soit à la racine du corps. | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
ModelsResource.rollback
rollback(modelId: string, body: Doc = {}, opts?: CallOptions)
Revenir à la version précédente d'un modèle. Pendant un canari, l'interrompt : la version active garde tout le trafic. Sinon, rétablit la version qui était active avant la dernière publication complète. La version quittée devient rolled_back, l'étape est ajoutée à l'historique de déploiement et auditée (model.rollout.rollback). Rien à annuler : 409 model_rollback_unavailable. Demande un principal de tenant avec tenant_admin ou platform_admin.
Route : /v1/models/{model_id}/rollback (POST).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
modelId | string | oui | Identifiant du modèle dans le registre. | |
body | Doc | {} | non | {reason} facultatif, inscrit dans l'historique de déploiement et le journal d'audit. |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
ModelsResource.rollout
rollout(modelId: string, opts?: CallOptions)
Lire le déploiement d'un modèle. Version active, version canari et part du canari du modèle dans le tenant, avec tout l'historique de déploiement (publication, canari, retour arrière, acteur, raison, approbation). Demande un principal de tenant avec tenant_admin, platform_admin, security_officer, finops, developer, auditor ou viewer.
Route : /v1/models/{model_id}/rollout (GET).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
modelId | string | oui | Identifiant du modèle dans le registre. | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
ModelsResource.setStatus
setStatus(modelId: string, status: ModelStatus, opts?: CallOptions)
Changer le statut d'un modèle. Fixe le statut à approved, restricted, deprecated ou blocked (422 status_invalid sinon). Pour un tenant, une promotion vers approved n'est pas appliquée tout de suite : une demande d'approbation est ouverte et la réponse est 202 avec elle ; le statut change une fois la demande approuvée. Les autres changements s'appliquent immédiatement et sont audités (model.status, avec l'ancien et le nouveau statut). Demande tenant_admin, platform_admin, ai_platform_engineer ou security_officer.
Route : /v1/models/{model_id}/status (POST).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
modelId | string | oui | Identifiant du modèle dans le registre. | |
status | ModelStatus | oui | Nouveau statut : approved, restricted, deprecated ou blocked. | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
ModelsResource.startRollout
startRollout(modelId: string, version: string, body: Doc, opts?: CallOptions)
Publier une version de modèle. Publie une version approuvée entièrement (canary_percent à 100, par défaut) ou en canari pour 1 à 99 pour cent du trafic, choisi de façon déterministe selon l'appelant (même session ou même principal, même version). Demande un principal de tenant avec tenant_admin ou platform_admin.
Route : /v1/models/{model_id}/versions/{version}/rollout (POST).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
modelId | string | oui | Identifiant du modèle dans le registre. | |
version | string | oui | Version approuvée à publier. | |
body | Doc | oui | canary_percent (entier de 1 à 100, 100 par défaut) et une reason facultative. | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
ModelsResource.update
update(modelId: string, body: Doc, opts?: CallOptions)
Modifier un modèle enregistré. Modifie des champs de la spec du modèle, de la fiche (category, display_name, knowledge_cutoff) ou des prix ; l'identifiant du modèle ne change jamais. Une modification d'un modèle partagé par un tenant crée une surcharge propre au tenant. La spec fusionnée doit rester un Model Manifest v1 valide (422 invalid_manifest) et la catégorie doit exister. Audité (model.update). Demande tenant_admin, platform_admin ou ai_platform_engineer.
Route : /v1/models/{model_id} (PATCH).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
modelId | string | oui | Identifiant du modèle dans le registre. | |
body | Doc | oui | Champs de la spec à modifier, champs de la fiche et pricing (par million de jetons : input_per_mtok, output_per_mtok, cached_input_per_mtok, cache_write_per_mtok ; par unité : per_image, per_second, per_character ; avec une devise). Utilisez POST .../status pour changer le statut. | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
ModelsResource.updateCategory
updateCategory(slug: string, body: Doc, opts?: CallOptions)
Modifier une catégorie de modèles. Modifie le libellé, la description, l'icône ou l'ordre d'une catégorie ; le slug ne change jamais. Une catégorie prédéfinie répond 409 category_builtin ; une catégorie partagée demande platform_admin. Des valeurs invalides répondent 422 parameter_invalid. Audité. Demande tenant_admin, platform_admin ou ai_platform_engineer.
Route : /v1/llm/categories/{slug} (PATCH).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
slug | string | oui | Slug de la catégorie. | |
body | Doc | oui | Champs à modifier : label et description (un texte, ou {en, fr} ; libellé de 80 caractères au plus, description de 500), icon (nom en minuscules de 1 à 48 caractères, ou null), sort_order (de 0 à 10000). | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
Classe IsolationResource
LLM et passerelle de modèles. Fournisseurs de modèles, registre des modèles, règles de routage et passerelle de modèles (Model Gateway) : le seul chemin par lequel agents et applications appellent les modèles.
Resource
IsolationResource.get
get(query: { project_id?: string } = {}, opts?: CallOptions)
Lire le mode d'isolation. Mode d'isolation effectif du tenant ou d'un de ses projets : le réglage du projet s'il existe, sinon celui du tenant, sinon connected, avec les hôtes internes déclarés. Demande un principal de tenant (400 tenant_required) avec tenant_admin, platform_admin, security_officer, finops, developer, auditor ou viewer.
Route : /v1/llm/isolation (GET).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
query | { project_id?: string } | {} | non | Paramètres de la chaîne de requête de la route. |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
IsolationResource.put
put(body: Doc, opts?: CallOptions)
Définir le mode d'isolation. Définit le mode d'isolation du tenant ou d'un projet. En local_only ou air_gapped, seuls les fournisseurs locaux (vLLM, Ollama, LM Studio) et les hôtes internes déclarés sont joignables : une route externe est refusée au contrôle préalable (403 isolation_external_route) et l'appel sortant est vérifié à nouveau (403 isolation_egress_denied). Audité (llm.isolation.set). Demande un principal de tenant avec tenant_admin, platform_admin ou security_officer.
Route : /v1/llm/isolation (PUT).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
body | Doc | oui | mode (connected, local_only ou air_gapped), project_id facultatif (vide pour tout le tenant) et internal_hosts (noms d'hôtes, éventuellement avec un port, en lettres minuscules, chiffres, points et tirets). | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
Classe RoutesResource
LLM et passerelle de modèles. Fournisseurs de modèles, registre des modèles, règles de routage et passerelle de modèles (Model Gateway) : le seul chemin par lequel agents et applications appellent les modèles.
Resource
RoutesResource.create
create(body: Doc, opts?: CallOptions)
Créer une règle de routage. Crée une règle de routage du tenant et répond 201. Un principal de plateforme sans tenant répond 403 platform_only ; une stratégie inconnue 422 parameter_invalid. Audité (route.create). Demande tenant_admin, platform_admin ou ai_platform_engineer.
Route : /v1/routes (POST).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
body | Doc | oui | name (default par défaut), match (champs de la requête auxquels la règle s'applique, une valeur ou une liste de valeurs), strategy (priority par défaut, cost, latency, quality), candidates (identifiants de modèles, ou un seul target_model), fallbacks, constraints, priority (100 par défaut, la plus basse d'abord), enabled (vrai par défaut). | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
RoutesResource.delete
delete(id: string, opts?: CallOptions)
Supprimer une règle de routage. Supprime une règle de routage du tenant et répond 204. Règle inconnue : 404 route_not_found. Audité (route.delete). Demande tenant_admin, platform_admin ou ai_platform_engineer.
Route : /v1/routes/{rid} (DELETE).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
id | string | oui | Identifiant de la règle de routage. | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
RoutesResource.list
list(params?: ListParams, opts?: CallOptions)
Lister les règles de routage. Règles de routage du tenant par priorité puis par nom, chacune avec ses critères, sa stratégie, ses candidats, ses replis, ses contraintes et son target_model (le premier candidat). Demande un rôle de lecteur.
Route : /v1/routes (GET).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
params | ListParams | non | Champs supplémentaires fusionnés dans la requête. | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
RoutesResource.replace
replace(id: string, body: Doc, opts?: CallOptions)
Remplacer une règle de routage. Remplace les critères, la stratégie, les candidats, les replis, les contraintes, la priorité et l'indicateur d'activation d'une règle du tenant (les champs omis prennent leur valeur par défaut ; le nom est conservé). Règle inconnue : 404 route_not_found. Audité (route.update). Demande tenant_admin, platform_admin ou ai_platform_engineer.
Route : /v1/routes/{rid} (PUT).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
id | string | oui | Identifiant de la règle de routage. | |
body | Doc | oui | La règle complète : mêmes champs qu'à la création sauf name. | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
RoutesResource.simulate
simulate(body: Doc, opts?: CallOptions)
Simuler le routage d'une requête. Indique vers quel modèle une requête serait routée, sans l'appeler : la règle donnée par route_id ou la première règle active qui correspond, les listes d'autorisation et d'interdiction du tenant (restreintes par la requête), la classification et la politique de repli. Répond le modèle choisi, les replis, les candidats écartés avec leur raison et la règle utilisée ; aucun modèle éligible répond 422 no_eligible_model. Les modèles restreints ne sont admis que pour tenant_admin et security_officer avec allow_restricted. Demande un rôle de lecteur.
Route : /v1/routes/simulate (POST).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
body | Doc | oui | Requête à simuler : model, candidates, strategy, purpose, capabilities, data_classification (internal par défaut), region_allow, provider_allow, model_allow, allow_restricted, fallback_policy (allowed par défaut), route_id facultatif, et tout champ sur lequel portent les règles. | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
Classe LiteLLMResource
LLM et passerelle de modèles. Fournisseurs de modèles, registre des modèles, règles de routage et passerelle de modèles (Model Gateway) : le seul chemin par lequel agents et applications appellent les modèles.
Resource
LiteLLMResource.config
config(opts?: CallOptions)
Générer la configuration LiteLLM. Configuration du proxy LiteLLM générée à partir des modèles visibles et des fournisseurs activés (un fournisseur du tenant l'emporte sur un fournisseur partagé du même type). Elle ne contient jamais de valeur secrète : les identifiants sont des références os.environ/<NOM> résolues par le déploiement LiteLLM. Demande tenant_admin, platform_admin, ai_platform_engineer, security_officer ou auditor.
Route : /v1/litellm/config (GET).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
LiteLLMResource.sync
sync(opts?: CallOptions)
Envoyer la configuration à LiteLLM. Fait en sorte que le proxy LiteLLM contienne exactement la liste de modèles générée : les modèles créés par le Control Plane et devenus inutiles sont retirés, ceux qui manquent sont ajoutés ; les modèles ajoutés à la main dans LiteLLM ne sont pas touchés. Sans EAI_LITELLM_URL rien n'est envoyé (mode: in_process). Une erreur de transport répond 502 upstream_error. Audité (litellm.sync). Demande tenant_admin, platform_admin ou ai_platform_engineer.
Route : /v1/litellm/sync (POST).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
Classe AdaptersResource
LLM et passerelle de modèles. Fournisseurs de modèles, registre des modèles, règles de routage et passerelle de modèles (Model Gateway) : le seul chemin par lequel agents et applications appellent les modèles.
Resource
AdaptersResource.list
list(opts?: CallOptions)
Lister les adaptateurs spécialisés. Adaptateurs spécialisés de la passerelle (génération d'images, transcription, synthèse vocale, génération de vidéo...) avec leur modalité, leur libellé dans la langue de la requête et dans les deux langues, leur statut (configured quand leur adresse est renseignée, sinon not_configured) et les contrôles qui leur sont appliqués. Demande un rôle de lecteur.
Route : /v1/adapters (GET).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
Classe ContextResource
Context Manager et jetons de contexte d'exécution (/v1/context) : plan de budget, émission, vérification et révocation des jetons, clés de signature.
Resource
ContextResource.issue
issue(body: { audience?: string; delegation_id?: string; run_id?: string; ttl_seconds?: number }, opts?: CallOptions)
Émettre un contexte d'exécution signé. Construit et signe un ExecutionContext pour l'appelant et renvoie token, context_id, kid, alg, issued_at et expires_at (201). - Avec run_id : l'appelant doit avoir créé le run, en être le principal racine ou l'utilisateur pour qui il agit, ou détenir agent, tenant_admin ou security_officer (403 forbidden) ; la délégation du run est revérifiée et le manifeste de l'agent est inclus. - Avec delegation_id : la délégation doit être valide et l'appelant l'une de ses parties, ou agent ou tenant_admin. Erreurs : 400 context_wrong_audience pour une audience que la plateforme n'accepte pas, 400 context_ttl_exceeded, 403 delegation_expired, 503 context_authority_unavailable. Audité sous context.issue.
Route : /v1/context/issue (POST).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
body | { audience?: string; delegation_id?: string; run_id?: string; ttl_seconds?: number } | oui | Audience, durée de vie et run ou délégation visés par le contexte. | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
ContextResource.jwks
jwks(opts?: CallOptions)
Lire les clés publiques de vérification. Clés publiques de vérification sous forme de JWKS (actives, et retirées encore dans leur fenêtre de vérification), chacune avec kid, alg (ES256 ou EdDSA) et use: sig. Tout principal authentifié peut la lire. 503 context_authority_unavailable quand le registre de clés est illisible.
Route : /v1/context/jwks (GET).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
ContextResource.listKeys
listKeys(opts?: CallOptions)
Lister les clés de signature. Registre des clés de signature des contextes : kid, algorithme, statut, dates d'utilisation, de retrait et de révocation. Demande security_officer ou auditor. 503 context_authority_unavailable quand le registre est illisible.
Route : /v1/context/keys (GET).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
ContextResource.plan
plan(body: { window: number; output: number; reasoning?: number; safety?: number; segments: Doc[] } & Doc, opts?: CallOptions)
Planifier la fenêtre de contexte. Simulation du Context Manager : calcule le budget de jetons d'une fenêtre de modèle (réserves de sortie, de raisonnement et de sécurité) et les segments conservés, compressés ou écartés selon leur priorité. Avec model, la fenêtre et la réserve de sortie viennent du registre. Une fenêtre qui n'est pas un entier positif répond 422 parameter_invalid ; des segments qui ne peuvent pas tenir répondent 422 context_overflow. Demande un rôle de lecteur.
Route : /v1/context/plan (POST).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
body | { window: number; output: number; reasoning?: number; safety?: number; segments: Doc[] } & Doc | oui | model (ou model_id), ou window (jetons) ; output (jetons de sortie réservés, par défaut le maximum du modèle plafonné à 4096), reasoning (jetons de raisonnement réservés), safety (marge) et segments (chacun avec type, et facultativement segment_id, priority, classification et son contenu). | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
ContextResource.revoke
revoke(contextId: string, opts?: CallOptions)
Révoquer un contexte d'exécution. Révoque un contexte émis avant son expiration ; sa vérification répond ensuite context_revoked. Permis pour le principal qui l'a émis, ou tenant_admin ou security_officer (403 forbidden). Une seconde révocation garde la première date. 404 context_not_found. Audité sous context.revoke.
Route : /v1/context/{context_id}/revoke (POST).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
contextId | string | oui | Identifiant (UUID) du contexte, la revendication jti de son jeton. | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
ContextResource.revokeKey
revokeKey(kid: string, body: { reason: string }, opts?: CallOptions)
Révoquer une clé de signature. Révoque immédiatement une clé de signature des contextes : les contextes qu'elle a signés ne sont plus valides. Demande platform_admin. 404 signing_key_not_found. Audité sous context.key.revoke au niveau de la plateforme.
Route : /v1/context/keys/{kid}/revoke (POST).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
kid | string | oui | Identifiant de clé, l'empreinte RFC 7638 de la clé publique. | |
body | { reason: string } | oui | Raison de la révocation. | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
ContextResource.verify
verify(body: { token: string; audience?: string }, opts?: CallOptions)
Vérifier un contexte d'exécution signé. Contrôle un jeton et renvoie valid, context_id, kid, alg, les revendications et le document de contexte. Contrôles, dans l'ordre : structure et forme canonique (context_malformed), algorithme et signature (context_invalid_signature), clé connue et non révoquée (context_unknown_key), émetteur (context_wrong_issuer), audience (context_wrong_audience), durée de vie (context_expired), tenant de l'appelant (403 context_tenant_mismatch), enregistrement d'émission (context_revoked), empreinte du document et chaîne de délégation (une délégation révoquée donne context_revoked). Les refus répondent 401 sauf mention contraire et sont audités ; un succès rattache l'identité vérifiée aux événements d'audit de la requête.
Route : /v1/context/verify (POST).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
body | { token: string; audience?: string } | oui | Jeton à vérifier et audience attendue. | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
Interface GatewayMeta
En-têtes de gouvernance d'une réponse de la passerelle, renvoyés par createWithMeta.
Champs :
| Nom | Type | Requis | Description |
|---|---|---|---|
decisionId | string | undefined | oui | Identifiant de la décision de politique, issu de l'en-tête x-eai-decision-id. |
costEstimated | string | undefined | oui | Coût estimé, issu de l'en-tête x-eai-cost-estimated. |
costMeasured | string | undefined | oui | Coût mesuré, issu de l'en-tête x-eai-cost-measured. |
requestId | string | undefined | oui | Identifiant de la requête. |
Interface TranscriptionInput
Entrée de gateway.audio.transcribe, convertie en formulaire multipart.
Champs :
| Nom | Type | Requis | Description |
|---|---|---|---|
file | Blob | oui | Audio à transcrire, envoyé avec filename (audio par défaut). |
filename | string | non | Nom du fichier audio envoyé avec la partie multipart (audio par défaut). |
model | string | oui | Alias de modèle de transcription de la passerelle. |
language | string | non | Langue de l'interface et des messages : en ou fr. |
prompt | string | non | Texte qui oriente la transcription. |
response_format | string | non | Format de la réponse de transcription. |
eai | Doc | non | Extension de gouvernance, envoyée comme champ de formulaire JSON. |
Classe GatewayResource
LLM et passerelle de modèles. Fournisseurs de modèles, registre des modèles, règles de routage et passerelle de modèles (Model Gateway) : le seul chemin par lequel agents et applications appellent les modèles.
Resource
Attributs :
| Nom | Type | Requis | Description |
|---|---|---|---|
audio | GatewayAudio | oui | Audio de la passerelle : transcribe (multipart) et speech (octets audio). |
chat | oui | Complétions de conversation de la passerelle : chat.completions.create, createWithMeta et stream. | |
images | GatewayImages | oui | Génération d'images de la passerelle (generate). |
video | GatewayVideo | oui | Génération de vidéos de la passerelle : generate et get. |
GatewayResource.embeddings
embeddings(body: EmbeddingRequest, opts?: CallOptions)
Calculer des embeddings. Embeddings compatibles OpenAI à travers les mêmes contrôles que la conversation (kill switches, listes d'autorisation, classification, DLP sur chaque entrée, garde-fous de coût, décision de politique, audit). Le modèle doit déclarer la capacité embeddings et, si dimensions est fourni, la prendre en charge (422 capability_not_supported, 422 embedding_dimensions_invalid). Demande un principal de tenant avec le scope models:invoke.
Route : /v1/gateway/embeddings (POST).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
body | EmbeddingRequest | oui | Requête d'embeddings OpenAI (model, input sous forme de texte ou de liste, dimensions facultatif) plus l'objet facultatif eai. | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
GatewayResource.estimate
estimate(body: Doc, opts?: CallOptions)
Estimer un appel à la passerelle. Exécute chaque contrôle préalable de la passerelle sans appeler le modèle et renvoie le modèle résolu, l'identifiant de décision, les jetons d'entrée, les jetons de sortie maximaux, l'estimateur, le coût estimé, la limite de coût, les replis, les avertissements et le plan de contexte. Une requête refusée par un contrôle répond la même erreur que l'appel réel. Demande un principal de tenant avec le scope models:invoke.
Route : /v1/gateway/estimate (POST).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
body | Doc | oui | Le corps de l'appel à estimer, avec kind facultatif (chat, embeddings ou rerank) ; sans kind, il est déduit de input (embeddings) ou query (rerank), sinon conversation. | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
GatewayResource.rerank
rerank(body: RerankRequest, opts?: CallOptions)
Réordonner des documents. Réordonne des documents par rapport à une query à travers les mêmes contrôles que la conversation (DLP sur la requête, garde-fous de coût, décision de politique, audit). Le modèle doit déclarer la capacité rerank (422 capability_not_supported). Demande un principal de tenant avec le scope models:invoke.
Route : /v1/gateway/rerank (POST).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
body | RerankRequest | oui | Requête de réordonnancement : model, query, documents (textes ou objets), top_n facultatif, plus l'objet facultatif eai. | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
Classe LlmResource
Interface llm unique : génération, flux, embeddings et vision, tous soumis aux contrôles du Model Gateway.
Resource
LlmResource.embed
embed(body: EmbeddingRequest, opts?: CallOptions)
Calculer des embeddings. Embeddings compatibles OpenAI à travers les mêmes contrôles que la conversation (kill switches, listes d'autorisation, classification, DLP sur chaque entrée, garde-fous de coût, décision de politique, audit). Le modèle doit déclarer la capacité embeddings et, si dimensions est fourni, la prendre en charge (422 capability_not_supported, 422 embedding_dimensions_invalid). Demande un principal de tenant avec le scope models:invoke.
Route : /v1/gateway/embeddings (POST).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
body | EmbeddingRequest | oui | Requête d'embeddings OpenAI (model, input sous forme de texte ou de liste, dimensions facultatif) plus l'objet facultatif eai. | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).
LlmResource.generate
generate(body: ChatCompletionRequest, opts?: CallOptions): Promise<ChatCompletion>
Appeler un modèle de conversation. Complétion de conversation compatible OpenAI à travers chaque contrôle de la passerelle ; avec stream: true la réponse est en Server-Sent Events, et les garde-fous de coût sont vérifiés pendant le flux. Demande un principal de tenant (403 platform_only) dont l'identifiant porte le scope models:invoke.
Route : /v1/gateway/chat/completions (POST).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
body | ChatCompletionRequest | oui | Requête de conversation OpenAI (model est l'identifiant du registre, messages, stream, max_tokens, tools...) plus l'objet facultatif eai : data_classification (public, internal par défaut, confidential, restricted, secret), agent_id, session_id, run_id, purpose, project_id, effort, max_cost, fallback_policy et des listes d'autorisation qui ne peuvent que restreindre celles du tenant (provider_allow, model_allow, region_allow). | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Retour : Promise<ChatCompletion>. Réponse JSON décodée de l'opération « Appeler un modèle de conversation ».
Erreurs levées : les erreurs typées du transport (Erreurs).
LlmResource.stream
stream(body: ChatCompletionRequest, opts?: CallOptions): AsyncGenerator<ChatCompletionChunk>
Appeler un modèle de conversation. Complétion de conversation compatible OpenAI à travers chaque contrôle de la passerelle ; avec stream: true la réponse est en Server-Sent Events, et les garde-fous de coût sont vérifiés pendant le flux. Demande un principal de tenant (403 platform_only) dont l'identifiant porte le scope models:invoke.
Route : /v1/gateway/chat/completions (POST).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
body | ChatCompletionRequest | oui | Requête de conversation OpenAI (model est l'identifiant du registre, messages, stream, max_tokens, tools...) plus l'objet facultatif eai : data_classification (public, internal par défaut, confidential, restricted, secret), agent_id, session_id, run_id, purpose, project_id, effort, max_cost, fallback_policy et des listes d'autorisation qui ne peuvent que restreindre celles du tenant (provider_allow, model_allow, region_allow). | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Retour : AsyncGenerator<ChatCompletionChunk>. Réponse JSON décodée de l'opération « Appeler un modèle de conversation ».
Erreurs levées : les erreurs typées du transport (Erreurs).
LlmResource.vision
vision(body: { prompt?: string; media_id?: string; content_base64?: string; mime_type?: string; model?: string } & Doc, opts?: CallOptions)
Analyser une image. Lance un travail d'analyse d'image sur un média image ou une image fournie directement avec un prompt (201, le travail). La réponse passe par la DLP avec dlp_mode. detail répond 422 parameter_unsupported quand le fournisseur configuré ne peut pas l'honorer ; une entrée qui n'est pas une image répond 422 unsupported_media. Demande tenant_admin, developer ou agent.
Route : /v1/multimodal/vision (POST).
| Nom | Type | Défaut | Requis | Description |
|---|---|---|---|---|
body | { prompt?: string; media_id?: string; content_base64?: string; mime_type?: string; model?: string } & Doc | oui | Image d'entrée, prompt, modèle, mode DLP et niveau de détail. | |
opts | CallOptions | non | Options de l'appel (requête, clé d'idempotence, traceparent, en-têtes). |
Erreurs levées : les erreurs typées du transport (Erreurs).