Passer au contenu principal
POST
/
v1
/
chat
/
completions
Créer une Chat Completion
curl --request POST \
  --url https://api.example.com/v1/chat/completions/ \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "messages": [
    {
      "content": "<string>",
      "role": "<string>",
      "name": "<string>"
    }
  ],
  "add_generation_prompt": true,
  "add_special_tokens": false,
  "allowed_token_ids": [
    123
  ],
  "bad_words": [
    "<string>"
  ],
  "cache_salt": "<string>",
  "chat_template": "<string>",
  "chat_template_kwargs": {},
  "continue_final_message": false,
  "documents": [
    {}
  ],
  "echo": false,
  "frequency_penalty": 0,
  "ignore_eos": false,
  "include_reasoning": true,
  "include_stop_str_in_output": false,
  "kv_transfer_params": {},
  "length_penalty": 1,
  "logit_bias": {},
  "logprobs": false,
  "max_completion_tokens": 123,
  "max_tokens": 123,
  "min_p": 123,
  "min_tokens": 0,
  "mm_processor_kwargs": {},
  "model": "<string>",
  "n": 1,
  "parallel_tool_calls": true,
  "presence_penalty": 0,
  "priority": 0,
  "prompt_logprobs": 123,
  "repetition_detection": {
    "max_pattern_size": 0,
    "min_count": 0,
    "min_pattern_size": 0
  },
  "repetition_penalty": 123,
  "request_id": "<string>",
  "response_format": {
    "json_schema": {
      "name": "<string>",
      "description": "<string>",
      "schema": {},
      "strict": true
    }
  },
  "return_token_ids": true,
  "return_tokens_as_token_ids": true,
  "seed": 0,
  "skip_special_tokens": true,
  "spaces_between_special_tokens": true,
  "stop": [],
  "stop_token_ids": [],
  "stream": false,
  "stream_options": {
    "continuous_usage_stats": false,
    "include_usage": true
  },
  "structured_outputs": {
    "_backend": "<string>",
    "_backend_was_auto": false,
    "choice": [
      "<string>"
    ],
    "disable_additional_properties": false,
    "disable_any_whitespace": false,
    "disable_fallback": false,
    "grammar": "<string>",
    "json": "<string>",
    "json_object": true,
    "regex": "<string>",
    "structural_tag": "<string>",
    "whitespace_pattern": "<string>"
  },
  "temperature": 123,
  "tool_choice": "none",
  "tools": [
    {
      "function": {
        "name": "<string>",
        "description": "<string>",
        "parameters": {}
      },
      "type": "function"
    }
  ],
  "top_k": 123,
  "top_logprobs": 0,
  "top_p": 123,
  "truncate_prompt_tokens": 4611686018427388000,
  "use_beam_search": false,
  "user": "<string>",
  "vllm_xargs": {}
}
'
{
  "choices": [
    {
      "index": 123,
      "message": {
        "role": "<string>",
        "annotations": {
          "type": "<string>",
          "url_citation": {
            "end_index": 123,
            "start_index": 123,
            "title": "<string>",
            "url": "<string>"
          }
        },
        "audio": {
          "data": "<string>",
          "expires_at": 123,
          "id": "<string>",
          "transcript": "<string>"
        },
        "content": "<string>",
        "function_call": {
          "arguments": "<string>",
          "name": "<string>"
        },
        "reasoning": "<string>",
        "refusal": "<string>",
        "tool_calls": [
          {
            "function": {
              "arguments": "<string>",
              "name": "<string>"
            },
            "id": "<string>",
            "type": "function"
          }
        ]
      },
      "finish_reason": "stop",
      "logprobs": {
        "content": [
          {
            "token": "<string>",
            "bytes": [
              123
            ],
            "logprob": -9999,
            "top_logprobs": [
              {
                "token": "<string>",
                "bytes": [
                  123
                ],
                "logprob": -9999
              }
            ]
          }
        ]
      },
      "stop_reason": 123,
      "token_ids": [
        123
      ]
    }
  ],
  "model": "<string>",
  "usage": {
    "completion_tokens": 0,
    "prompt_tokens": 0,
    "prompt_tokens_details": {
      "cached_tokens": 123
    },
    "total_tokens": 0
  },
  "created": 123,
  "id": "<string>",
  "kv_transfer_params": {},
  "object": "chat.completion",
  "prompt_logprobs": [
    {}
  ],
  "prompt_token_ids": [
    123
  ],
  "system_fingerprint": "<string>"
}

Documentation Index

Fetch the complete documentation index at: https://docs.wandb.ai/llms.txt

Use this file to discover all available pages before exploring further.

Autorisations

Authorization
string
header
requis

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Corps

application/json
messages
(ChatCompletionDeveloperMessageParam · object | ChatCompletionSystemMessageParam · object | ChatCompletionUserMessageParam · object | ChatCompletionAssistantMessageParam · object | ChatCompletionToolMessageParam · object | ChatCompletionFunctionMessageParam · object | CustomChatCompletionMessageParam · object | Message · object)[]
requis

Instructions fournies par le développeur que le modèle doit suivre, quels que soient les messages envoyés par l’utilisateur. Avec les modèles o1 et versions ultérieures, les messages developer remplacent les anciens messages system.

add_generation_prompt
boolean
défaut:true

Si la valeur est true, l’invite de génération sera ajoutée au modèle de chat. Il s’agit d’un paramètre utilisé par le modèle de chat dans la configuration du tokenizer du modèle.

add_special_tokens
boolean
défaut:false

Si la valeur est true, des token spéciaux (par ex. BOS) seront ajoutés à l’invite en plus de ceux ajoutés par le modèle de chat. Pour la plupart des modèles, le modèle de chat se charge d’ajouter les token spéciaux ; cette valeur doit donc être définie sur false (valeur par défaut).

allowed_token_ids
integer[] | null
bad_words
string[]
cache_salt
string | null

Si spécifié, le cache de préfixes sera salé avec la chaîne fournie afin d’empêcher un attaquant de deviner les prompts dans des environnements multi-utilisateurs. Le sel doit être aléatoire, protégé contre tout accès de tiers et suffisamment long pour être imprévisible (par exemple, 43 caractères encodés en base64, correspondant à 256 bits).

chat_template
string | null

Un modèle Jinja à utiliser pour cette conversion. À partir de transformers v4.44, le modèle de chat par défaut n’est plus autorisé ; vous devez donc fournir un modèle de chat si le tokenizer n’en définit pas.

chat_template_kwargs
Chat Template Kwargs · object

Arguments nommés supplémentaires à transmettre au moteur de rendu du modèle. Ils seront accessibles depuis le modèle de chat.

continue_final_message
boolean
défaut:false

Si cette valeur est définie, le chat sera formaté de sorte que le dernier message dans le chat reste ouvert, sans aucun token EOS. Le modèle poursuivra ce message au lieu d’en commencer un nouveau. Cela vous permet de « préremplir » une partie de la réponse du modèle. Ne peut pas être utilisé en même temps que add_generation_prompt.

documents
Documents · object[] | null

Une liste de dicts représentant des documents auxquels le modèle aura accès s’il effectue du RAG (génération augmentée par récupération). Si le modèle ne prend pas en charge le RAG, cet argument n’aura aucun effet. Nous recommandons que chaque document soit un dict contenant les clés "title" et "text".

echo
boolean
défaut:false

Si la valeur est true, le nouveau message sera ajouté au début avec le dernier message s’ils ont le même rôle.

frequency_penalty
number | null
défaut:0
ignore_eos
boolean
défaut:false
include_reasoning
boolean
défaut:true
include_stop_str_in_output
boolean
défaut:false
kv_transfer_params
Kv Transfer Params · object

Paramètres KVTransfer utilisés pour le serving désagrégé.

length_penalty
number
défaut:1
logit_bias
Logit Bias · object
logprobs
boolean | null
défaut:false
max_completion_tokens
integer | null
max_tokens
integer | null
obsolète
min_p
number | null
min_tokens
integer
défaut:0
mm_processor_kwargs
Mm Processor Kwargs · object

Arguments nommés supplémentaires à transmettre au processeur HF.

model
string | null
n
integer | null
défaut:1
parallel_tool_calls
boolean | null
défaut:true
presence_penalty
number | null
défaut:0
priority
integer
défaut:0

La priorité de la requête (une valeur plus faible signifie un traitement plus tôt ; valeur par défaut : 0). Toute priorité autre que 0 entraînera une erreur si le modèle servi n’utilise pas d’ordonnancement par priorité.

prompt_logprobs
integer | null
reasoning_effort
enum<string> | null
Options disponibles:
low,
medium,
high
repetition_detection
RepetitionDetectionParams · object

Paramètres permettant de détecter des motifs répétitifs de n-grammes dans les jetons de sortie. Si une telle répétition est détectée, la génération s’arrête plus tôt. Les LLM peuvent parfois générer des séquences de jetons répétitives et peu utiles, et ne s’arrêter que lorsqu’ils atteignent la longueur de sortie maximale (par exemple, 'abcdabcdabcd...' ou '\emoji \emoji \emoji ...'). Cette fonctionnalité permet de détecter ce comportement et d’interrompre la génération plus tôt, afin d’économiser du temps et des jetons.

repetition_penalty
number | null
request_id
string

Le request_id associé à cette requête. Si l’appelant ne le définit pas, un random_uuid est généré. Cet ID est utilisé tout au long du processus d’inférence et renvoyé dans la réponse.

response_format
ResponseFormat · object
return_token_ids
boolean | null

Si spécifié, le résultat inclut les ID de token en plus du texte généré. En mode streaming, prompt_token_ids n’est inclus que dans le premier bloc, et token_ids contient les tokens delta de chaque bloc. Cela est utile pour le débogage ou lorsque vous devez faire correspondre le texte généré aux tokens d’entrée.

return_tokens_as_token_ids
boolean | null

Si spécifié avec 'logprobs', les tokens sont représentés sous forme de chaînes au format 'token_id:{token_id}', afin de pouvoir identifier les tokens qui ne peuvent pas être encodés en JSON.

seed
integer | null
Plage requise: -9223372036854776000 <= x <= 9223372036854776000
skip_special_tokens
boolean
défaut:true
spaces_between_special_tokens
boolean
défaut:true
stop
défaut:[]
stop_token_ids
integer[] | null
stream
boolean | null
défaut:false
stream_options
StreamOptions · object
structured_outputs
StructuredOutputsParams · object

Arguments nommés supplémentaires pour les sorties structurées

temperature
number | null
tool_choice
défaut:none
Allowed value: "none"
tools
ChatCompletionToolsParam · object[] | null
top_k
integer | null
top_logprobs
integer | null
défaut:0
top_p
number | null
truncate_prompt_tokens
integer | null
Plage requise: -1 <= x <= 9223372036854776000
user
string | null
vllm_xargs
Vllm Xargs · object

Paramètres de requête supplémentaires avec des valeurs de type chaîne ou numérique, ou des listes de telles valeurs, utilisés par des extensions personnalisées.

Réponse

Réponse réussie

choices
ChatCompletionResponseChoice · object[]
requis
model
string
requis
usage
UsageInfo · object
requis
created
integer
id
string
kv_transfer_params
Kv Transfer Params · object

Paramètres KVTransfer.

object
string
défaut:chat.completion
Allowed value: "chat.completion"
prompt_logprobs
(object | null)[] | null
prompt_token_ids
integer[] | null
service_tier
enum<string> | null
Options disponibles:
auto,
default,
flex,
scale,
priority
system_fingerprint
string | null