Skip to main content
POST
Chat Completion

Achèvement du chat

Le point de terminaison principal pour les discussions IA avec récupération de base de connaissances (RAG) facultative, redondance/basculement de modèle, politiques de sécurité par appel et streaming.

Point de terminaison

Description

Le point de terminaison principal pour les discussions IA avec récupération facultative de la base de connaissances (RAG). Il prend en charge :
  • Deux formulaires de saisie — une seule chaîne prompt (héritée) ou un tableau messages de style OpenAI.
  • Redondance du modèle — une chaîne de basculement définie par l’appelant (primaire + jusqu’à 2 solutions de secours). Voir Redondance & Failover.
  • Sécurité par appel — Sélection de stratégie SMLTP et remplacement du Prompt Shield en ligne.
  • Streaming — Événements envoyés par le serveur (SSE).
  • Reçus signés — une référence de reçu de conformité SMLTP sur les réponses acheminées via la passerelle.
Compatibilité avec le SDK OpenAISi vous souhaitez insérer SecureAI dans une intégration OpenAI existante avec zéro changement de code, utilisez plutôt le point de terminaison compatible OpenAI sur /api/external/v1/chat/completions. Ce point de terminaison classique est le seul à prendre en charge RAG.

Authentification

Obligatoire : clé API

En-têtes

Corps de la demande

Paramètres d’entrée

Fournissez soit prompt ou messages — pas les deux.

Paramètres de modèle et de redondance

Paramètres de récupération et de génération

Exemple de demande

Réponse

Réponse réussie (200)

Objet de métadonnées

Diffusion

Définissez "stream": true pour recevoir les événements envoyés par le serveur. Chaque ligne SSE est data: <json> et le flux se termine par data: [DONE]. Les trames sont saisies via un champ type :

Réponses d’erreur

400 Requête incorrecte

401 Non autorisé

403 Interdit

429/502 — Chaîne de redondance épuisée

Lorsque chaque modèle d’une chaîne de redondance échoue, la réponse signale chaque tentative. L’état est 429 si tous les échecs étaient des limites de débit, sinon 502.

500 Erreur de serveur interne

Exemple d’utilisation

JavaScript/Node.js

###Python

Remarques

  • index est requis. Envoyez index: "Zero-Knowledge" pour des réponses directes de l’IA sans RAG.
  • Le paramètre user_id facture la requête à un autre compte utilisateur (admin-gated).
  • La température est fixée à 0–2 ; max_tokens est plafonné à 4 000.
  • Pour valider une demande par rapport à chaque politique sans appeler un modèle ou dépenser des points, utilisez Policy Check.
  • Pour la sémantique de la chaîne de basculement (déclencheurs, délais d’attente, comportement de streaming, codes d’état d’épuisement), voir Redondance & Failover.

Autorisations

Authorization
string
header
requis

API key authentication using Bearer token format. Example: Authorization: Bearer sk-your-api-key-here

Corps

application/json
prompt
string
requis

The user's message/prompt

Exemple:

"What is the company's policy on remote work?"

model
string

The AI model to use for completion

Exemple:

"openai/gpt-4.1-mini"

index
string

Knowledge base to search for context (use 'Zero-Knowledge' for direct AI responses)

Exemple:

"my-knowledge-base"

smltp_policy
string

Security policy to apply

Exemple:

"internal"

temperature
number<float>
défaut:0.7

Controls randomness in the response (0 = deterministic, 2 = very random)

Plage requise: 0 <= x <= 2
Exemple:

0.7

max_tokens
integer
défaut:1000

Maximum number of tokens in the response

Plage requise: 1 <= x <= 4000
Exemple:

1000

stream
boolean
défaut:false

Whether to stream the response

Exemple:

false

conversation_id
string

Optional conversation ID for tracking

Exemple:

"conv-123"

system_message
string

Optional custom system message

Exemple:

"You are a helpful assistant."

use_rag
boolean
défaut:true

Whether to use RAG (knowledge base retrieval)

Exemple:

true

user_id
string

MongoDB ObjectId of the user to bill for this request. If not provided, the API key owner will be billed

Exemple:

"60a7c8f5e8b4f5001f7a8c23"

Réponse

Successful chat completion

success
boolean
Exemple:

true

id
string
Exemple:

"req-abc123"

object
string
Exemple:

"chat.completion"

created
integer
Exemple:

1705312200

model
string
Exemple:

"openai/gpt-4.1-mini"

choices
object[]
usage
object
metadata
object