Traitement par lots
Traitez de grands volumes de requêtes Messages de manière asynchrone avec l'API Message Batches, en réduisant les coûts de 50 % et en augmentant le débit.
Le « batch processing » (traitement par lots) est une approche puissante pour gérer efficacement de grands volumes de requêtes. Au lieu de traiter les requêtes une par une avec des réponses immédiates, le traitement par lots vous permet de soumettre plusieurs requêtes ensemble pour un traitement asynchrone. Ce modèle est particulièrement utile lorsque :
- Vous devez traiter de grands volumes de données
- Des réponses immédiates ne sont pas nécessaires
- Vous souhaitez optimiser la rentabilité
- Vous exécutez des évaluations ou des analyses à grande échelle
L'API Message Batches est la première implémentation de ce modèle par Anthropic.
API Message Batches
L'API Message Batches est un moyen puissant et économique de traiter de manière asynchrone de grands volumes de requêtes Messages. Cette approche convient bien aux tâches qui ne nécessitent pas de réponses immédiates, la plupart des lots se terminant en moins d'une heure tout en réduisant les coûts de 50 % et en augmentant le débit.
Vous pouvez explorer directement la référence de l'API, en complément de ce guide.
Fonctionnement de l'API Message Batches
Lorsque vous envoyez une requête à l'API Message Batches :
- Le système crée un nouveau Message Batch avec les requêtes Messages fournies.
- Le lot est ensuite traité de manière asynchrone, chaque requête étant gérée indépendamment.
- Vous pouvez interroger l'état du lot et récupérer les résultats lorsque le traitement est terminé pour toutes les requêtes.
Ceci est particulièrement utile pour les opérations en masse qui ne nécessitent pas de résultats immédiats, telles que :
- Évaluations à grande échelle : traitez efficacement des milliers de cas de test.
- Modération de contenu : analysez de manière asynchrone de grands volumes de contenu généré par les utilisateurs.
- Analyse de données : générez des informations ou des résumés pour de grands ensembles de données.
- Génération de contenu en masse : créez de grandes quantités de texte à des fins diverses (par exemple, descriptions de produits, résumés d'articles).
Limitations des lots
- Un Message Batch est limité soit à 100 000 requêtes Message, soit à une taille de 256 Mo, selon la limite atteinte en premier.
- Le système traite chaque lot aussi rapidement que possible, la plupart des lots se terminant en moins d'une heure. Vous pouvez accéder aux résultats du lot lorsque tous les messages sont terminés ou après 24 heures, selon ce qui survient en premier. Les lots expirent si le traitement ne se termine pas dans les 24 heures.
- Les résultats des lots sont disponibles pendant 29 jours après leur création. Après cela, vous pouvez toujours consulter le lot, mais ses résultats ne seront plus disponibles au téléchargement.
- Les lots sont rattachés à un Workspace. Vous pouvez consulter tous les lots (et leurs résultats) qui ont été créés dans le Workspace dans lequel votre requête s'exécute.
- Les « rate limits » (limites de débit) s'appliquent à la fois aux requêtes HTTP de l'API Batches et au nombre de requêtes en attente de traitement au sein d'un lot. Consultez les limites de débit de l'API Message Batches. De plus, le traitement peut être ralenti en fonction de la demande actuelle et de votre volume de requêtes. Dans ce cas, vous pourriez voir davantage de requêtes expirer après 24 heures.
- En raison du débit élevé et du traitement simultané, les lots peuvent légèrement dépasser la limite de dépenses configurée pour votre Workspace.
- Chaque requête d'un lot doit avoir un
max_tokensd'au moins1.max_tokens: 0(préchauffage du cache) n'est pas pris en charge dans un lot, car une entrée de cache éphémère écrite pendant le traitement du lot expirerait probablement avant l'exécution de la requête suivante.
Modèles pris en charge
Tous les modèles actifs prennent en charge l'API Message Batches.
Ce qui peut être traité par lots
Presque toutes les requêtes que vous pouvez adresser à l'API Messages peuvent être incluses dans un lot. Cela comprend :
- Vision
- « Tool use » (utilisation d'outils), y compris tous les outils serveur (recherche web, récupération web, exécution de code, connecteurs MCP, advisor et recherche d'outils)
- Messages système
- Conversations multi-tours
- « Extended thinking » (réflexion étendue)
- La plupart des fonctionnalités bêta
Comme chaque requête du lot est traitée indépendamment, vous pouvez mélanger différents types de requêtes au sein d'un même lot.
Un petit nombre de paramètres de l'API Messages ne sont pas pris en charge dans les requêtes par lots. L'inclusion de l'un d'entre eux renvoie une erreur de validation :
| Paramètre | Raison |
|---|---|
stream: true | Les résultats des lots sont renvoyés sous forme d'un fichier unique, et non d'un flux. |
speed (mode rapide) | Le mode rapide ajuste la latence synchrone, ce qui ne s'applique pas au traitement asynchrone par lots. |
max_tokens: 0 | Voir Limitations des lots. |
Tarification
L'API Batches offre des économies significatives. Toute l'utilisation est facturée à 50 % des prix standard de l'API.
| Modèle | Entrée par lots | Sortie par lots |
|---|---|---|
| Claude Fable 5.1 | 5 $ / MTok | 25 $ / MTok |
| Claude Mythos 5.1 (disponibilité limitée) | 5 $ / MTok | 25 $ / MTok |
| Claude Fable 5 | 5 $ / MTok | 25 $ / MTok |
| Claude Mythos 5 (disponibilité limitée) | 5 $ / MTok | 25 $ / MTok |
| Claude Opus 5 | 2,50 $ / MTok | 12,50 $ / MTok |
| Claude Opus 4.8 | 2,50 $ / MTok | 12,50 $ / MTok |
| Claude Opus 4.7 | 2,50 $ / MTok | 12,50 $ / MTok |
| Claude Opus 4.6 | 2,50 $ / MTok | 12,50 $ / MTok |
| Claude Opus 4.5 | 2,50 $ / MTok | 12,50 $ / MTok |
| Claude Opus 4.1 (retiré, sauf sur Bedrock et Google Cloud) | 7,50 $ / MTok | 37,50 $ / MTok |
| Claude Opus 4 (retiré, sauf sur Google Cloud) | 7,50 $ / MTok | 37,50 $ / MTok |
| Claude Sonnet 5 | 1 $ / MTok | 5 $ / MTok |
| Claude Sonnet 4.6 | 1,50 $ / MTok | 7,50 $ / MTok |
| Claude Sonnet 4.5 | 1,50 $ / MTok | 7,50 $ / MTok |
| Claude Sonnet 4 (retiré, sauf sur Bedrock et Google Cloud) | 1,50 $ / MTok | 7,50 $ / MTok |
| Claude Haiku 4.5 | 0,50 $ / MTok | 2,50 $ / MTok |
| Claude Haiku 3.5 (retiré, sauf sur Bedrock et Google Cloud) | 0,40 $ / MTok | 2 $ / MTok |
Comment utiliser l'API Message Batches
Préparer et créer votre lot
Un Message Batch est composé d'une liste de requêtes de création d'un Message. La forme d'une requête individuelle comprend :
- Un
custom_idunique pour identifier la requête Messages. Il doit comporter de 1 à 64 caractères et ne contenir que des caractères alphanumériques, des tirets et des traits de soulignement (correspondant à^[a-zA-Z0-9_-]{1,64}$). - Un objet
paramsavec les paramètres standard de l'API Messages
Vous pouvez créer un lot en passant cette liste dans le paramètre requests :
from anthropic.types.message_create_params import MessageCreateParamsNonStreaming
from anthropic.types.messages.batch_create_params import Request
client = anthropic.Anthropic()
message_batch = client.messages.batches.create(
requests=[
Request(
custom_id="my-first-request",
params=MessageCreateParamsNonStreaming(
model="claude-opus-5",
max_tokens=1024,
messages=[
{
"role": "user",
"content": "Hello, world",
}
],
),
),
Request(
custom_id="my-second-request",
params=MessageCreateParamsNonStreaming(
model="claude-opus-5",
max_tokens=1024,
messages=[
{
"role": "user",
"content": "Hi again, friend",
}
],
),
),
]
)
print(message_batch)Dans cet exemple, deux requêtes distinctes sont regroupées pour un traitement asynchrone. Chaque requête possède un custom_id unique et contient les paramètres standard que vous utiliseriez pour un appel à l'API Messages.
Lorsqu'un lot est créé pour la première fois, la réponse a un état de traitement in_progress.
{
"id": "msgbatch_01HkcTjaV5uDC8jWR4ZsDV8d",
"type": "message_batch",
"processing_status": "in_progress",
"request_counts": {
"processing": 2,
"succeeded": 0,
"errored": 0,
"canceled": 0,
"expired": 0
},
"ended_at": null,
"created_at": "2024-09-24T18:37:24.100435Z",
"expires_at": "2024-09-25T18:37:24.100435Z",
"cancel_initiated_at": null,
"results_url": null
}Suivi de votre lot
Le champ processing_status du Message Batch indique l'étape de traitement dans laquelle se trouve le lot. Il commence à in_progress, puis passe à ended une fois que toutes les requêtes du lot ont fini d'être traitées et que les résultats sont prêts. Vous pouvez surveiller l'état de votre lot en consultant la Console ou en utilisant le point de terminaison de récupération.
Interrogation de l'achèvement d'un Message Batch
Pour interroger un Message Batch, vous aurez besoin de son id, qui est fourni dans la réponse lors de la création d'un lot ou en listant les lots. Vous pouvez implémenter une boucle d'interrogation qui vérifie périodiquement l'état du lot jusqu'à ce que le traitement soit terminé :
import time
client = anthropic.Anthropic()
MESSAGE_BATCH_ID = "msgbatch_01HkcTjaV5uDC8jWR4ZsDV8d"
message_batch = None
while True:
message_batch = client.messages.batches.retrieve(MESSAGE_BATCH_ID)
if message_batch.processing_status == "ended":
break
print(f"Batch {MESSAGE_BATCH_ID} is still processing...")
time.sleep(60)
print(message_batch)Lister tous les Message Batches
Vous pouvez lister tous les Message Batches de votre Workspace à l'aide du point de terminaison de liste. L'API prend en charge la pagination, récupérant automatiquement les pages supplémentaires selon les besoins :
client = anthropic.Anthropic()
# Récupère automatiquement d'autres pages selon les besoins.
for message_batch in client.messages.batches.list(limit=20):
print(message_batch)Récupération des résultats d'un lot
Une fois le traitement du lot terminé, chaque requête Messages du lot possède un résultat. Il existe quatre types de résultats :
| Type de résultat | Description |
|---|---|
succeeded | La requête a réussi. Inclut le résultat du message. |
errored | La requête a rencontré une erreur et aucun message n'a été créé. Les erreurs possibles incluent les requêtes invalides et les erreurs internes du serveur. Ces requêtes ne vous seront pas facturées. |
canceled | L'utilisateur a annulé le lot avant que cette requête puisse être envoyée au modèle. Ces requêtes ne vous seront pas facturées. |
expired | Le lot a atteint son expiration de 24 heures avant que cette requête puisse être envoyée au modèle. Ces requêtes ne vous seront pas facturées. |
Le champ request_counts du lot présente une vue d'ensemble de vos résultats, indiquant combien de requêtes ont atteint chacun de ces quatre états.
Les résultats du lot sont disponibles au téléchargement via la propriété results_url du Message Batch et, si les autorisations de l'organisation le permettent, dans la Console. En raison de la taille potentiellement importante des résultats, il est recommandé de récupérer les résultats en streaming plutôt que de les télécharger tous en une seule fois.
client = anthropic.Anthropic()
# Lire le fichier de résultats en streaming par blocs économes en mémoire, en les traitant un par un
for result in client.messages.batches.results(
"msgbatch_01HkcTjaV5uDC8jWR4ZsDV8d",
):
match result.result.type:
case "succeeded":
print(f"Success! {result.custom_id}")
case "errored":
if result.result.error.error.type == "invalid_request_error":
# Le corps de la requête doit être corrigé avant de renvoyer la requête
print(f"Validation error {result.custom_id}")
else:
# La requête peut être réessayée directement
print(f"Server error {result.custom_id}")
case "expired":
print(f"Request expired {result.custom_id}")Les résultats sont au format .jsonl, où chaque ligne est un objet JSON valide représentant le résultat d'une seule requête du Message Batch. Pour chaque résultat reçu en streaming, vous pouvez effectuer une action différente en fonction de son custom_id et de son type de résultat. Voici un exemple d'ensemble de résultats :
{"custom_id":"my-second-request","result":{"type":"succeeded","message":{"id":"msg_014VwiXbi91y3JMjcpyGBHX5","type":"message","role":"assistant","model":"claude-opus-5","content":[{"type":"text","text":"Hello again! It's nice to see you. How can I assist you today? Is there anything specific you'd like to chat about or any questions you have?"}],"stop_reason":"end_turn","stop_sequence":null,"usage":{"input_tokens":11,"output_tokens":36}}}}
{"custom_id":"my-first-request","result":{"type":"succeeded","message":{"id":"msg_01FqfsLoHwgeFbguDgpz48m7","type":"message","role":"assistant","model":"claude-opus-5","content":[{"type":"text","text":"Hello! How can I assist you today? Feel free to ask me any questions or let me know if there's anything you'd like to chat about."}],"stop_reason":"end_turn","stop_sequence":null,"usage":{"input_tokens":10,"output_tokens":34}}}}Si votre résultat comporte une erreur, son result.error sera défini selon la forme d'erreur standard.
Annulation d'un Message Batch
Vous pouvez annuler un Message Batch en cours de traitement à l'aide du point de terminaison d'annulation. Immédiatement après l'annulation, le processing_status d'un lot sera canceling. Vous pouvez utiliser la même technique d'interrogation décrite précédemment pour attendre que l'annulation soit finalisée. Les lots annulés se terminent avec un état ended et peuvent contenir des résultats partiels pour les requêtes qui ont été traitées avant l'annulation.
client = anthropic.Anthropic()
MESSAGE_BATCH_ID = "msgbatch_01HkcTjaV5uDC8jWR4ZsDV8d"
message_batch = client.messages.batches.cancel(
MESSAGE_BATCH_ID,
)
print(message_batch)La réponse montre le lot dans un état canceling :
{
"id": "msgbatch_013Zva2CMHLNnXjNJJKqJ2EF",
"type": "message_batch",
"processing_status": "canceling",
"request_counts": {
"processing": 2,
"succeeded": 0,
"errored": 0,
"canceled": 0,
"expired": 0
},
"ended_at": null,
"created_at": "2024-09-24T18:37:24.100435Z",
"expires_at": "2024-09-25T18:37:24.100435Z",
"cancel_initiated_at": "2024-09-24T18:39:03.114875Z",
"results_url": null
}Utilisation de la mise en cache des prompts avec les Message Batches
L'API Message Batches prend en charge le « prompt caching » (mise en cache des prompts), ce qui vous permet de réduire potentiellement les coûts et le temps de traitement des requêtes par lots. Les remises tarifaires de la mise en cache des prompts et des Message Batches peuvent se cumuler, offrant des économies encore plus importantes lorsque les deux fonctionnalités sont utilisées ensemble. Cependant, comme les requêtes par lots sont traitées de manière asynchrone et simultanée, les succès du cache sont fournis dans la mesure du possible. Les utilisateurs constatent généralement des taux de succès du cache allant de 30 % à 98 %, selon leurs schémas de trafic.
Pour maximiser la probabilité de succès du cache dans vos requêtes par lots :
- Incluez des blocs
cache_controlidentiques dans chaque requête Message de votre lot. - Maintenez un flux régulier de requêtes pour éviter que les entrées du cache n'expirent après leur durée de vie de 5 minutes.
- Structurez vos requêtes de manière à partager autant de contenu mis en cache que possible.
Exemple d'implémentation de la mise en cache des prompts dans un lot :
from anthropic.types.message_create_params import MessageCreateParamsNonStreaming
from anthropic.types.messages.batch_create_params import Request
client = anthropic.Anthropic()
message_batch = client.messages.batches.create(
requests=[
Request(
custom_id="my-first-request",
params=MessageCreateParamsNonStreaming(
model="claude-opus-5",
max_tokens=1024,
system=[
{
"type": "text",
"text": "You are an AI assistant tasked with analyzing literary works. Your goal is to provide insightful commentary on themes, characters, and writing style.\n",
},
{
"type": "text",
"text": "<the entire contents of Pride and Prejudice>",
"cache_control": {"type": "ephemeral"},
},
],
messages=[
{
"role": "user",
"content": "Analyze the major themes in Pride and Prejudice.",
}
],
),
),
Request(
custom_id="my-second-request",
params=MessageCreateParamsNonStreaming(
model="claude-opus-5",
max_tokens=1024,
system=[
{
"type": "text",
"text": "You are an AI assistant tasked with analyzing literary works. Your goal is to provide insightful commentary on themes, characters, and writing style.\n",
},
{
"type": "text",
"text": "<the entire contents of Pride and Prejudice>",
"cache_control": {"type": "ephemeral"},
},
],
messages=[
{
"role": "user",
"content": "Write a summary of Pride and Prejudice.",
}
],
),
),
]
)Dans cet exemple, les deux requêtes du lot incluent des messages système identiques et le texte intégral d'Orgueil et Préjugés marqué avec cache_control afin d'augmenter la probabilité de succès du cache.
Outils serveur et boucle agentique
Tous les outils serveur (recherche web, récupération web, exécution de code, connecteurs MCP, advisor et recherche d'outils) fonctionnent dans les requêtes par lots. Le worker de lots exécute la même boucle agentique côté serveur que l'API Messages synchrone.
Comme il n'y a pas de connexion ouverte à maintenir, la boucle des lots exécute davantage d'itérations par tour qu'une requête synchrone avant de renvoyer stop_reason: "pause_turn". Si un résultat de lot revient avec pause_turn, le tour ne s'est pas terminé ; vous pouvez le poursuivre en soumettant le contenu assistant mis en pause dans une requête de suivi (par lot ou synchrone) exactement comme indiqué dans le modèle de continuation pause_turn.
Le worker de lots limite en outre web_search par organisation afin qu'un traitement par lots hautement simultané n'épuise pas la limite de débit de recherche web de votre organisation. Le lot relance automatiquement les requêtes limitées ; vous n'avez pas besoin de gérer cela vous-même, mais les très grands lots de recherche web peuvent prendre plus de temps à se terminer.
Sortie étendue (bêta)
L'en-tête bêta output-300k-2026-03-24 relève le plafond de max_tokens à 300 000 pour les requêtes par lots utilisant Claude Opus 5, Claude Opus 4.8, Claude Opus 4.7, Claude Opus 4.6, Claude Sonnet 5 ou Claude Sonnet 4.6. Incluez cet en-tête pour générer des sorties bien plus longues que la limite standard de 128k max_tokens en un seul tour.
Utilisez la sortie étendue pour la génération de contenus longs tels que des brouillons de la longueur d'un livre et de la documentation technique, l'extraction exhaustive de données structurées, de grandes structures de génération de code et de longues chaînes de raisonnement.
Une seule génération de 300k tokens peut prendre plus d'une heure, planifiez donc vos soumissions de lots en tenant compte de la fenêtre de traitement de 24 heures. La tarification standard des lots (50 % des prix standard de l'API) s'applique.
from anthropic.types.beta.message_create_params import MessageCreateParamsNonStreaming
from anthropic.types.beta.messages.batch_create_params import Request
client = anthropic.Anthropic()
message_batch = client.beta.messages.batches.create(
betas=["output-300k-2026-03-24"],
requests=[
Request(
custom_id="long-form-request",
params=MessageCreateParamsNonStreaming(
model="claude-opus-5",
max_tokens=300_000,
messages=[
{
"role": "user",
"content": "Write a comprehensive technical guide to building distributed systems, covering architecture patterns, consistency models, fault tolerance, and operational best practices.",
}
],
),
),
],
)
print(message_batch)Bonnes pratiques pour un traitement par lots efficace
Pour tirer le meilleur parti de l'API Batches :
- Surveillez régulièrement l'état de traitement des lots et implémentez une logique de nouvelle tentative appropriée pour les requêtes échouées.
- Utilisez des valeurs
custom_idsignificatives pour associer facilement les résultats aux requêtes, puisque l'ordre n'est pas garanti. - Envisagez de diviser les très grands ensembles de données en plusieurs lots pour une meilleure gestion.
- Testez à blanc une forme de requête unique avec l'API Messages pour éviter les erreurs de validation.
Résolution des problèmes courants
En cas de comportement inattendu :
- Vérifiez que la taille totale de la requête de lot ne dépasse pas 256 Mo. Si la taille de la requête est trop importante, vous pourriez obtenir une erreur 413
request_too_large. - Vérifiez que vous utilisez des modèles pris en charge pour toutes les requêtes du lot.
- Assurez-vous que chaque requête du lot possède un
custom_idunique. - Assurez-vous que moins de 29 jours se sont écoulés depuis l'heure
created_atdu lot (et non l'heureended_atdu traitement). Si plus de 29 jours se sont écoulés, les résultats ne seront plus consultables. - Confirmez que le lot n'a pas été annulé.
Notez que l'échec d'une requête dans un lot n'affecte pas le traitement des autres requêtes.
Stockage des lots et confidentialité
-
Isolation par Workspace : les lots sont isolés au sein du Workspace dans lequel ils sont créés. Ils ne sont accessibles que par les requêtes API de ce même Workspace, ou par les utilisateurs autorisés à consulter les lots du Workspace dans la Console.
-
Disponibilité des résultats : les résultats des lots sont disponibles pendant 29 jours après la création du lot, ce qui laisse amplement le temps de les récupérer et de les traiter.
Conservation des données
Le traitement par lots stocke les données de requête et de réponse jusqu'à 29 jours après la création du lot. Vous pouvez supprimer un lot de messages à tout moment après son traitement à l'aide du point de terminaison DELETE /v1/messages/batches/{batch_id}. Pour supprimer un lot en cours, annulez-le d'abord. Le traitement asynchrone nécessite le stockage côté serveur des entrées et des sorties jusqu'à l'achèvement du lot et la récupération des résultats.
Pour l'éligibilité ZDR de toutes les fonctionnalités, consultez API et conservation des données.
FAQ
Le traitement des lots peut prendre jusqu'à 24 heures, mais beaucoup se terminent plus tôt. Le temps de traitement réel dépend de la taille du lot, de la demande actuelle et de votre volume de requêtes. Il est possible qu'un lot expire et ne se termine pas dans les 24 heures.
Consultez Modèles pris en charge pour la liste des modèles pris en charge.
Oui, l'API Message Batches prend en charge presque toutes les fonctionnalités disponibles dans l'API Messages, y compris la plupart des fonctionnalités bêta. Un petit nombre de paramètres (stream, speed et max_tokens: 0) ne sont pas pris en charge. Consultez Ce qui peut être traité par lots pour la liste complète.
L'API Message Batches offre une remise de 50 % sur toute l'utilisation par rapport aux prix standard de l'API. Cela s'applique aux tokens d'entrée, aux tokens de sortie et à tous les tokens spéciaux. Pour en savoir plus sur la tarification, consultez Tarification.
Non, une fois qu'un lot a été soumis, il ne peut pas être modifié. Si vous devez apporter des modifications, vous devez annuler le lot actuel et en soumettre un nouveau. Notez que l'annulation peut ne pas prendre effet immédiatement.
L'API Message Batches possède des limites de débit basées sur les requêtes HTTP en plus de limites sur le nombre de requêtes en attente de traitement. Consultez les limites de débit de l'API Message Batches. L'utilisation de l'API Batches n'affecte pas les limites de débit de l'API Messages.
Lorsque vous récupérez les résultats, chaque requête possède un champ result indiquant si elle a succeeded, errored, a été canceled ou expired. Pour les résultats errored, des informations d'erreur supplémentaires sont fournies. Consultez l'objet de réponse d'erreur dans la référence de l'API.
L'API Message Batches est conçue avec de solides mesures de confidentialité et de séparation des données :
- Les lots et leurs résultats sont isolés au sein du Workspace dans lequel ils ont été créés. Cela signifie qu'ils ne sont accessibles que par les requêtes API de ce même Workspace.
- Chaque requête d'un lot est traitée indépendamment, sans fuite de données entre les requêtes.
- Les résultats ne sont disponibles que pendant une durée limitée (29 jours) et suivent la politique de conservation des données d'Anthropic.
- Le téléchargement des résultats de lots dans la Console peut être désactivé au niveau de l'organisation ou par Workspace.
Oui, il est possible d'utiliser la mise en cache des prompts avec l'API Message Batches. Cependant, comme les requêtes par lots asynchrones peuvent être traitées simultanément et dans n'importe quel ordre, les succès du cache sont fournis dans la mesure du possible.
Étapes suivantes
Activez des citations naturelles pour les applications RAG en fournissant des résultats de recherche avec attribution des sources.
Réduisez les coûts et la latence en mettant en cache les préfixes de prompts partagés entre les requêtes d'un lot.
Was this page helpful?