This feature is eligible for Zero Data Retention (ZDR). When your organization has a ZDR arrangement, data sent through this feature is not stored after the API response is returned.
Claude est capable de fournir des citations détaillées lorsqu'il répond à des questions sur des documents, vous aidant à suivre et vérifier les sources d'information dans les réponses.
Tous les modèles actifs prennent en charge les citations, à l'exception de Haiku 3.
Partagez vos commentaires et suggestions sur la fonctionnalité de citations en utilisant ce formulaire.
Voici un exemple d'utilisation des citations avec l'API Messages :
curl https://api.anthropic.com/v1/messages \
-H "content-type: application/json" \
-H "x-api-key: $ANTHROPIC_API_KEY" \
-H "anthropic-version: 2023-06-01" \
-d '{
"model": "claude-opus-4-6",
"max_tokens": 1024,
"messages": [
{
"role": "user",
"content": [
{
"type": "document",
"source": {
"type": "text",
"media_type": "text/plain",
"data": "The grass is green. The sky is blue."
},
"title": "My Document",
"context": "This is a trustworthy document.",
"citations": {"enabled": true}
},
{
"type": "text",
"text": "What color is the grass and sky?"
}
]
}
]
}'Comparaison avec les approches basées sur les prompts
Par rapport aux solutions de citations basées sur les prompts, la fonctionnalité de citations présente les avantages suivants :
cited_text ne compte pas dans vos tokens de sortie.cited_text est extrait, les citations sont garanties de contenir des pointeurs valides vers les documents fournis.Intégrez les citations avec Claude en suivant ces étapes :
Fournir des document(s) et activer les citations
citations.enabled=true sur chacun de vos documents. Actuellement, les citations doivent être activées sur tous les documents d'une requête ou sur aucun d'entre eux.Les documents sont traités
Claude fournit une réponse citée
Découpage automatique vs contenu personnalisé
Par défaut, les documents en texte brut et les PDF sont automatiquement découpés en phrases. Si vous avez besoin de plus de contrôle sur la granularité des citations (par exemple, pour des listes à puces ou des transcriptions), utilisez plutôt des documents à contenu personnalisé. Consultez Types de documents pour plus de détails.
Par exemple, si vous souhaitez que Claude puisse citer des phrases spécifiques de vos morceaux RAG, vous devez placer chaque morceau RAG dans un document en texte brut. Sinon, si vous ne souhaitez pas de découpage supplémentaire, ou si vous souhaitez personnaliser tout découpage additionnel, vous pouvez placer les morceaux RAG dans un ou plusieurs documents à contenu personnalisé.
source d'un document peut être cité.title et context sont des champs optionnels qui seront transmis au modèle mais ne seront pas utilisés pour le contenu cité.title est limité en longueur, vous pourrez donc trouver le champ context utile pour stocker des métadonnées de document sous forme de texte ou de JSON stringifié.content fournie dans le document à contenu personnalisé.cited_text est fourni pour plus de commodité et ne compte pas dans les tokens de sortie.cited_text n'est pas non plus comptabilisé dans les tokens d'entrée.Les citations fonctionnent conjointement avec d'autres fonctionnalités de l'API, notamment la mise en cache des prompts, le comptage de tokens et le traitement par lots.
Les citations et les sorties structurées sont incompatibles
Les citations ne peuvent pas être utilisées conjointement avec les Sorties structurées. Si vous activez les citations sur un document fourni par l'utilisateur (blocs Document ou RequestSearchResultBlock) et incluez également le paramètre output_config.format (ou le paramètre déprécié output_format), l'API retournera une erreur 400.
Cela est dû au fait que les citations nécessitent l'entrelacement de blocs de citation avec la sortie de texte, ce qui est incompatible avec les contraintes strictes de schéma JSON des sorties structurées.
Les citations et la mise en cache des prompts peuvent être utilisées ensemble efficacement.
Les blocs de citation générés dans les réponses ne peuvent pas être mis en cache directement, mais les documents sources auxquels ils font référence peuvent l'être. Pour optimiser les performances, appliquez cache_control à vos blocs de contenu de document de niveau supérieur.
curl https://api.anthropic.com/v1/messages \
--header "x-api-key: $ANTHROPIC_API_KEY" \
--header "anthropic-version: 2023-06-01" \
--header "content-type: application/json" \
--data '{
"model": "claude-opus-4-6",
"max_tokens": 1024,
"messages": [
{
"role": "user",
"content": [
{
"type": "document",
"source": {
"type": "text",
"media_type": "text/plain",
"data": "This is a very long document with thousands of words..."
},
"citations": {"enabled": true},
"cache_control": {"type": "ephemeral"}
},
{
"type": "text",
"text": "What does this document say about API features?"
}
]
}
]
}'Dans cet exemple :
cache_control sur le bloc de documentTrois types de documents sont pris en charge pour les citations. Les documents peuvent être fournis directement dans le message (base64, texte ou URL) ou téléchargés via l'API Files et référencés par file_id :
| Type | Idéal pour | Découpage | Format de citation |
|---|---|---|---|
| Texte brut | Documents texte simples, prose | Phrase | Indices de caractères (indexés à partir de 0) |
| Fichiers PDF avec contenu textuel | Phrase | Numéros de page (indexés à partir de 1) | |
| Contenu personnalisé | Listes, transcriptions, mise en forme spéciale, citations plus granulaires | Pas de découpage supplémentaire | Indices de blocs (indexés à partir de 0) |
Les fichiers .csv, .xlsx, .docx, .md et .txt ne sont pas pris en charge en tant que blocs de document. Convertissez-les en texte brut et incluez-les directement dans le contenu du message. Consultez Travailler avec d'autres formats de fichiers.
Les documents en texte brut sont automatiquement découpés en phrases. Vous pouvez les fournir en ligne ou par référence avec leur file_id :
Les documents PDF peuvent être fournis sous forme de données encodées en base64 ou par file_id. Le texte PDF est extrait et découpé en phrases. Comme les citations d'images ne sont pas encore prises en charge, les PDF qui sont des numérisations de documents et ne contiennent pas de texte extractible ne pourront pas être cités.
Les documents à contenu personnalisé vous donnent le contrôle sur la granularité des citations. Aucun découpage supplémentaire n'est effectué et les morceaux sont fournis au modèle selon les blocs de contenu fournis.
{
"type": "document",
"source": {
"type": "content",
"content": [
{"type": "text", "text": "First chunk"},
{"type": "text", "text": "Second chunk"},
],
},
"title": "Document Title", # optionnel
"context": "Context about the document that will not be cited from", # optionnel
"citations": {"enabled": True},
}Lorsque les citations sont activées, les réponses incluent plusieurs blocs de texte avec des citations :
{
"content": [
{"type": "text", "text": "According to the document, "},
{
"type": "text",
"text": "the grass is green",
"citations": [
{
"type": "char_location",
"cited_text": "The grass is green.",
"document_index": 0,
"document_title": "Example Document",
"start_char_index": 0,
"end_char_index": 20,
}
],
},
{"type": "text", "text": " and "},
{
"type": "text",
"text": "the sky is blue",
"citations": [
{
"type": "char_location",
"cited_text": "The sky is blue.",
"document_index": 0,
"document_title": "Example Document",
"start_char_index": 20,
"end_char_index": 36,
}
],
},
{
"type": "text",
"text": ". Information from page 5 states that ",
},
{
"type": "text",
"text": "water is essential",
"citations": [
{
"type": "page_location",
"cited_text": "Water is essential for life.",
"document_index": 1,
"document_title": "PDF Document",
"start_page_number": 5,
"end_page_number": 6,
}
],
},
{
"type": "text",
"text": ". The custom document mentions ",
},
{
"type": "text",
"text": "important findings",
"citations": [
{
"type": "content_block_location",
"cited_text": "These are important findings.",
"document_index": 2,
"document_title": "Custom Content Document",
"start_block_index": 0,
"end_block_index": 1,
}
],
},
]
}Pour les réponses en streaming, un type citations_delta est inclus qui contient une seule citation à ajouter à la liste citations sur le bloc de contenu text actuel.
Was this page helpful?