Gdy dokumenty są wysyłane z włączonymi cytowaniami, odpowiedź Claude zawiera odwołania do konkretnych części dokumentów źródłowych. Umożliwia to weryfikację twierdzeń i śledzenie informacji do ich źródła.
Należy ustawić CitationsEnabled na True w blokach zawartości dokumentów. Cytowania muszą być włączone dla WSZYSTKICH lub ŻADNEGO dokumentu w żądaniu.
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
Bloki treści tekstowej w odpowiedzi mogą zawierać tablicę Citations z odniesieniami do źródeł.
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;