Lorsque des documents sont envoyés avec les citations activées, la réponse de Claude inclut des références à des parties spécifiques des documents sources. Cela vous permet de vérifier les affirmations et de remonter l'information jusqu'à sa source.
Définissez CitationsEnabled sur True sur les blocs de contenu document. Les citations doivent être activées sur TOUS les documents d'une requête ou sur AUCUN.
oDocBlock := TsgcAnthropicClass_Request_Content_Block.Create;
oDocBlock.ContentType := 'document';
oDocBlock.SourceType := 'base64';
oDocBlock.MediaType := 'application/pdf';
oDocBlock.Data := sgcBase64Encode(LoadFileToBytes('report.pdf'));
oDocBlock.CitationsEnabled := True; // Enable citations
Les blocs de contenu texte dans la réponse peuvent contenir un tableau Citations avec des références sources.
oResponse := Anthropic.CreateMessage(oRequest);
Try
for i := 0 to Length(oResponse.Content) - 1 do
begin
if oResponse.Content[i].ContentType = 'text' then
begin
WriteLn(oResponse.Content[i].Text);
// Process citations
for j := 0 to Length(oResponse.Content[i].Citations) - 1 do
begin
oCitation := oResponse.Content[i].Citations[j];
WriteLn(Format(' Citation [%s]: "%s"',
[oCitation.CitationType, oCitation.CitedText]));
if oCitation.CitationType = 'page_location' then
WriteLn(Format(' Pages %d-%d of "%s"',
[oCitation.StartPageNumber, oCitation.EndPageNumber,
oCitation.DocumentTitle]));
end;
end;
end;
Finally
oResponse.Free;
End;