Aller au contenu principal

models.go (package eai)

Source : sdks/go/models.go. Retour à l'index de la référence du SDK Go.

remarque

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.

Modèle Money​

Money est un montant décimal sous forme de chaîne avec une devise ISO 4217.

Champs :

NomTypeRequisDescription
Amount (amount)stringouiMontant décimal exact sérialisé en chaîne, par exemple 12.50.
Currency (currency)stringouiCode de devise ISO 4217, par exemple EUR.

Modèle UsagePricing​

UsagePricing est le prix applicable au moment de l'appel.

Champs :

NomTypeRequisDescription
PriceCardID (price_card_id)*stringnonGrille tarifaire utilisée, omise si nil.
PricingVersion (pricing_version)stringouiVersion de la tarification utilisée.
Currency (currency)stringouiCode de devise ISO 4217, par exemple EUR.
EffectiveAt (effective_at)time.TimeouiHeure à partir de laquelle le prix s'applique.
ReasoningBilling (reasoning_billing)stringnonFacturation des jetons de raisonnement : included_in_output (par défaut), separate, not_billed ou not_exposed.
AllocationPolicyID (allocation_policy_id)*stringnonPolitique de répartition des coûts appliquée, omise si nil.

Modèle UsageCost​

UsageCost contient les coûts estimé, mesuré et facturé (chacun peut être nul).

Champs :

NomTypeRequisDescription
Estimated (estimated)*MoneynonCoût estimé : un montant décimal sous forme de chaîne avec une devise ISO 4217.
Measured (measured)*MoneynonCoût mesuré : un montant décimal sous forme de chaîne avec une devise ISO 4217.
Billed (billed)*MoneynonCoût facturé : un montant décimal sous forme de chaîne avec une devise ISO 4217.

Modèle UsageEvent​

UsageEvent est le contrat Usage Event v1 (contracts/v1/usage-event.schema.json).

Champs :

NomTypeRequisDescription
SchemaVersion (schema_version)stringouiVersion du contrat 1.<mineure> ; les versions mineures restent rétrocompatibles.
EventID (event_id)stringouiIdentifiant de l'événement, qui sert à le dédoublonner (event_id).
OccurredAt (occurred_at)time.TimeouiDate à laquelle l'usage a eu lieu.
TenantID (tenant_id)stringouiLocataire de l'agent. default par défaut.
ProjectID (project_id)*stringnonIdentifiant du projet, espace de travail d'un tenant qui porte les agents, les bases de connaissances, les quotas et les secrets.
Environment (environment)*stringnonEnvironnement de la consommation, omis si nil.
AgentID (agent_id)*stringnonAgent consommateur, nil s'il n'y en a pas.
SessionID (session_id)*stringnonSession de la consommation, nil s'il n'y en a pas.
RunID (run_id)*stringnonExécution consommatrice, omise si nil.
TaskID (task_id)*stringnonTâche de la consommation, nil s'il n'y en a pas.
RequestID (request_id)*stringnonIdentifiant de requête de la plateforme, omis si nil.
ProviderRequestID (provider_request_id)*stringnonIdentifiant de requête donné par le fournisseur, omis si nil.
TraceID (trace_id)*stringnonIdentifiant de trace W3C, 32 caractères hexadécimaux en minuscules, pour relier l'événement à une trace.
UsageType (usage_type)stringouiNature de la consommation, par exemple llm, reasoning, embeddings, tool ou gpu_local.
Provider (provider)stringouiFournisseur qui a servi l'appel, jamais vide.
ModelID (model_id)stringouiModèle de l'appel, comparé aux motifs de modèle des grilles tarifaires.
DeploymentID (deployment_id)*stringnonDéploiement de modèle qui tournait sur le GPU pendant l'échantillon.
Region (region)stringouiRégion de traitement, par exemple eu-west-1 ou on-prem-paris.
Units (units)map[string]float64ouiUnités consommées par nom, par exemple input_tokens, output_tokens, images ; au moins une.
Pricing (pricing)UsagePricingouiUsagePricing est le prix applicable au moment de l'appel.
Cost (cost)UsageCostouiUsageCost contient les coûts estimé, mesuré et facturé (chacun peut être nul).
Status (status)stringnonStatut du coût : estimated, measured ou reconciled.
Source (source)stringouiComposant qui a émis l'événement : gateway, litellm, adapter, runtime, tool_gateway, connector_hub, sandbox, gpu_exporter ou import.
Labels (labels)map[string]stringnonÉtiquettes de la machine sous forme de table de chaînes, qui remplacent les étiquettes actuelles, par exemple {"zone": "a"}.

Modèle AuditEvent​

AuditEvent est le contrat Audit Event v1 (contracts/v1/audit-event.schema.json).

Champs :

NomTypeRequisDescription
SchemaVersion (schema_version)stringouiVersion du contrat 1.<mineure> ; les versions mineures restent rétrocompatibles.
EventID (event_id)stringouiIdentifiant de l'événement d'audit (event_id).
Sequence (sequence)int64ouiÉtapes ordonnées de la bascule, sous forme d'objets libres.
OccurredAt (occurred_at)time.TimeouiDate à laquelle l'action auditée a eu lieu.
TenantID (tenant_id)stringouiLocataire de l'agent. default par défaut.
Actor (actor)json.RawMessageouiJSON brut de l'acteur : kind (user, service, agent, system) et id.
Action (action)stringouiAction auditée sous la forme domaine.verbe, par exemple model.invoke ou agent.suspend.
Resource (resource)json.RawMessageouiJSON brut de la ressource visée : type, id et name facultatif.
Decision (decision)json.RawMessagenonapprove ou reject.
Outcome (outcome)stringouiRésultat de l'action : success, failure ou error.
Evidence (evidence)json.RawMessagenonPreuves des mesures (journaux, horodatages, références de captures...).
Classification (classification)stringnonClassification des données : public, internal, confidential, restricted ou secret.
PrevHash (prev_hash)stringouiEmpreinte SHA-256 (64 caractères hexadécimaux) de l'événement précédent de la chaîne.
Hash (hash)stringouiEmpreinte du contenu source, par exemple sha256:....

Modèle ExecutionContract​

ExecutionContract est l'Execution Contract v1 d'une exécution (contracts/v1/execution-contract.schema.json).

Champs :

NomTypeRequisDescription
SchemaVersion (schema_version)stringouiVersion du contrat 1.<mineure> ; les versions mineures restent rétrocompatibles.
RunID (run_id)stringouiIdentifiant de l'exécution (run_id).
TenantID (tenant_id)stringouiLocataire de l'agent. default par défaut.
ProjectID (project_id)*stringnonIdentifiant du projet, espace de travail d'un tenant qui porte les agents, les bases de connaissances, les quotas et les secrets.
SessionID (session_id)*stringnonSession de l'exécution, nil si absente.
ParentRunID (parent_run_id)*stringnonExécution qui a lancé celle-ci comme sous-agent, nil pour une exécution racine.
Depth (depth)*intnonProfondeur de l'exécution dans l'arbre des sous-agents, 0 ou plus ; nil si absente.
Agent (agent)json.RawMessageouiJSON brut de l'agent : name et version sémantique.
Task (task)json.RawMessagenonJSON brut de la tâche : task_id, objective et input.
State (state)stringouiÉtat de l'exécution : pending, running, waiting_approval, waiting_input, suspended, succeeded, failed, cancelled ou timed_out.
Steps (steps)[]json.RawMessageouiJSON brut des étapes, chacune avec step_id, kind et state.
Budgets (budgets)json.RawMessageouiJSON brut des budgets : limits et ce qui a été consommé (consumed).
Errors (errors)[]json.RawMessagenonJSON brut des erreurs rencontrées par l'exécution.
RetryPolicy (retry_policy)json.RawMessagenonPolitique de nouvelle tentative : max_attempts (1 ou plus, 3 par défaut) et backoff_seconds (0 ou plus, 2 par défaut).
Resume (resume)json.RawMessagenonJSON brut des réglages de reprise : checkpoint_id et strategy.
Trace (trace)json.RawMessagenonJSON brut du contexte de trace : trace_id, span_id, parent_span_id.
CreatedAt (created_at)*time.TimenonHeure de création de l'exécution, nil si absente.
UpdatedAt (updated_at)*time.TimenonHeure de dernière mise à jour de l'exécution, nil si absente.

Modèle PolicyDecision​

PolicyDecision est la partie décision du Policy Contract v1.

Champs :

NomTypeRequisDescription
Allow (allow)boolouitrue quand la politique autorise la requête.
DecisionID (decision_id)stringouiIdentifiant de la décision, pour la retrouver dans la piste d'audit.
PolicyID (policy_id)stringnonPolitique que la candidate remplace ; null pour l'ajouter à l'ensemble actif.
PolicyVersion (policy_version)stringnonVersion de la politique qui a décidé.
Engine (engine)stringnonAuto (par défaut), HPA ou KEDA.
Reasons (reasons)[]stringouiRaisons données pour la décision.
Obligations (obligations)[]json.RawMessagenonObligations ajoutées à la décision quand cette règle d'autorisation s'applique.
EvaluatedAt (evaluated_at)*time.TimenonHeure de l'évaluation, nil si absente.

Modèle PolicyContract​

PolicyContract est le Policy Contract v1 (requête plus décision facultative).

Champs :

NomTypeRequisDescription
SchemaVersion (schema_version)stringouiVersion du contrat 1.<mineure> ; les versions mineures restent rétrocompatibles.
Request (request)json.RawMessageouiJSON brut de la requête : subject, resource, action et context.
Decision (decision)*PolicyDecisionnonapprove ou reject.

Modèle Metadata​

Metadata contient les métadonnées du manifeste (common.schema.json#/$defs/metadata).

Champs :

NomTypeRequisDescription
Name (name)stringouiNom stable de l'actif, de forme DNS.
Tenant (tenant)stringnonIdentifiant court du locataire.
Project (project)stringnonIdentifiant du projet auquel les résultats sont limités.
Environment (environment)stringnonEnvironnement cible : dev, test, staging ou prod.
Version (version)stringouiVersion sémantique de l'actif.
Owner (owner)stringouiResponsable de l'actif, identifiant d'équipe ou adresse e-mail.
Description (description)stringnonDescription libre, jusqu'à 4000 caractères.
Labels (labels)map[string]stringnonÉtiquettes de la machine sous forme de table de chaînes, qui remplacent les étiquettes actuelles, par exemple {"zone": "a"}.
Annotations (annotations)map[string]stringnonAnnotations de l'alerte ; summary et description alimentent l'incident.

Modèle Manifest​

Manifest est n'importe quel manifeste v1 (Agent, Model, Tool, Skill, Plugin, Connector, Channel).

Champs :

NomTypeRequisDescription
APIVersion (apiVersion)stringouiVersion d'API du manifeste, enterprise-ai.io/v1 (la constante APIVersion).
Kind (kind)stringouiKind du manifeste (Agent, Model, Tool...) ; ContractForKind donne son contrat.
Metadata (metadata)MetadataouiPaires clé-valeur libres enregistrées avec l'objet et renvoyées telles quelles ; la plateforme ne les interprète jamais.
Spec (spec)json.RawMessageouiSpécification : sites (valeur par site) et health_check avec son url, tous deux obligatoires.

Alias de type ModelManifest​

ModelManifest est un Model Manifest v1.

Définition : = Manifest.

Alias de type ToolManifest​

ToolManifest est un Tool Manifest v1.

Définition : = Manifest.

Modèle ChatMessage​

ChatMessage est un message compatible OpenAI.

Champs :

NomTypeRequisDescription
Role (role)stringouiRôle de l'auteur, par exemple system, user ou assistant.
Content (content)anyouiContenu du message : une chaîne ou des parties de contenu compatibles OpenAI.
Name (name)stringnonNom facultatif de l'auteur du message.

Modèle EaiExtension​

EaiExtension est le champ eai du corps des appels au gateway.

Champs :

NomTypeRequisDescription
Effort (effort)EffortnonEffort est l'effort de raisonnement normalisé (common.schema.json#/$defs/effort), traduit pour chaque modèle par le Capability Resolver.
AgentID (agent_id)stringnonAgent qui fait l'appel (agent_id).
SessionID (session_id)stringnonSession à laquelle appartient l'appel (session_id).
RunID (run_id)stringnonExécution à laquelle appartient l'appel (run_id).
TaskID (task_id)stringnonTâche à laquelle appartient l'appel (task_id).
DataClassification (data_classification)stringnonClassification des données envoyées (data_classification), par exemple confidential.
Purpose (purpose)stringnonUsage de la cible. backup par défaut.
RegionAllow (region_allow)[]stringnonRégions de traitement autorisées pour l'appel (region_allow).
FallbackPolicy (fallback_policy)stringnonPolitique de repli appliquée par le gateway quand le modèle est indisponible (fallback_policy).

Modèle ChatRequest​

ChatRequest est le corps de POST /v1/gateway/chat/completions.

Champs :

NomTypeRequisDescription
Model (model)stringouiAlias de modèle de la passerelle qui répond à la requête.
Messages (messages)[]ChatMessageouiConversation envoyée au modèle, dans l'ordre.
Temperature (temperature)*float64nonTempérature d'échantillonnage, omise si nil.
MaxTokens (max_tokens)*intnonNombre maximal de jetons de sortie ; s'il est fourni, c'est la sortie retenue pour le pire cas.
Tools (tools)[]map[string]anynonOutils que ses agents externes peuvent invoquer (noms ou motifs comme crm.*).
Stream (stream)boolnonDiffuser la réponse en Server-Sent Events ; ChatCompletions le force à false, ChatCompletionsStream à true.
Eai (eai)*EaiExtensionnonEaiExtension est le champ eai du corps des appels au gateway.

Modèle ChatResponse​

ChatResponse est une complétion de chat accompagnée des en-têtes du gateway.

Champs :

NomTypeRequisDescription
Rawjson.RawMessageouiCorps JSON brut de la réponse.
ModelstringouiModèle qui a produit la réponse.
ContentstringouiTexte de choices[0].message.content.
FinishReasonstringouifinish_reason du premier choix.
Usagemap[string]anyouiCompteurs d'usage ajoutés à la consommation de budget, par exemple input_tokens, output_tokens.
DecisionIDstringouiIdentifiant de la décision de politique, tiré de l'en-tête de réponse X-EAI-Decision-Id.
CostEstimatedstringouiValeur de l'en-tête de réponse X-EAI-Cost-Estimated.
CostMeasuredstringouiValeur de l'en-tête de réponse X-EAI-Cost-Measured.

Modèle ChatChunk​

ChatChunk est un fragment diffusé en flux.

Champs :

NomTypeRequisDescription
Rawjson.RawMessageouiDonnées JSON brutes de l'événement Server-Sent Events.
DeltastringouiTexte de choices[0].delta.content dans ce fragment.
FinishReasonstringouifinish_reason du premier choix, vide jusqu'au dernier fragment.
Usagemap[string]anyouiCompteurs d'usage ajoutés à la consommation de budget, par exemple input_tokens, output_tokens.