Envoyez une liste structurée de messages d'entrée avec du contenu textuel, et le modèle générera le prochain message dans la conversation.
Envoyez un message Hello à Claude.
Anthropic := TsgcHTTP_API_Anthropic.Create(nil);
Anthropic.AnthropicOptions.ApiKey := 'API_KEY';
WriteLn(Anthropic._CreateMessage('claude-sonnet-4-20250514', 'Hello!'));
Envoyez un message avec un prompt système pour contrôler le comportement de Claude.
Anthropic := TsgcHTTP_API_Anthropic.Create(nil);
Anthropic.AnthropicOptions.ApiKey := 'API_KEY';
WriteLn(Anthropic._CreateMessageWithSystem('claude-sonnet-4-20250514',
'You are a helpful assistant that responds in Spanish.',
'What is the capital of France?'));
Utilisez les classes de requête/réponse typées pour un contrôle complet des paramètres de message.
Anthropic := TsgcHTTP_API_Anthropic.Create(nil);
Anthropic.AnthropicOptions.ApiKey := 'API_KEY';
oRequest := TsgcAnthropicClass_Request_Messages.Create;
Try
oRequest.Model := 'claude-sonnet-4-20250514';
oRequest.MaxTokens := 1024;
oRequest.System := 'You are a helpful assistant.';
oRequest.Temperature := 0.7;
oMessage := TsgcAnthropicClass_Request_Message.Create;
oMessage.Role := 'user';
oMessage.Content := 'Hello!';
oMessages := oRequest.Messages;
SetLength(oMessages, 1);
oMessages[0] := oMessage;
oRequest.Messages := oMessages;
oResponse := Anthropic.CreateMessage(oRequest);
Try
if Length(oResponse.Content) > 0 then
WriteLn(oResponse.Content[0].Text);
Finally
oResponse.Free;
End;
Finally
oMessage.Free;
oRequest.Free;
End;
Utilisez Server-Sent Events (SSE) pour diffuser la réponse en temps réel. Affectez le gestionnaire d'événement OnHTTPAPISSE pour recevoir les événements en streaming.
Anthropic := TsgcHTTP_API_Anthropic.Create(nil);
Anthropic.AnthropicOptions.ApiKey := 'API_KEY';
Anthropic.OnHTTPAPISSE := OnSSEEvent;
Anthropic._CreateMessageStream('claude-sonnet-4-20250514', 'Tell me a story.');
procedure TForm1.OnSSEEvent(Sender: TObject; const aEvent, aData: string;
var Cancel: Boolean);
begin
// aEvent contains the event type (e.g. content_block_delta)
// aData contains the JSON data for this event
Memo1.Lines.Add(aData);
end;