Zintegruj Anthropic Claude API ze swoimi aplikacjami Delphi
sgcWebSockets dostarcza gotowy do produkcji komponent Delphi dla pełnego Anthropic Claude API — od generowania tekstu i rozumienia obrazów po użycie narzędzi, rozszerzone myślenie i więcej.
Anthropic Claude to jedna z najbardziej zaawansowanych rodzin modeli AI dostępnych obecnie, ceniona za wyjątkowe rozumowanie, projektowanie zorientowane na bezpieczeństwo i wszechstronne możliwości w zakresie tekstu, kodu, obrazów i danych strukturalnych. Dla deweloperów Delphi pragnących wykorzystać te możliwości sgcWebSockets dostarcza TsgcHTTP_API_Anthropic — kompletny, natywny komponent owijający całą powierzchnię Anthropic API.
Niezależnie od tego, czy tworzysz inteligentne chatboty, automatyzujesz analizę dokumentów, orkiestrujesz złożone pipelines narzędzi, czy przetwarzasz tysiące żądań wsadowo, komponent daje bezpośredni dostęp do każdej funkcji Claude przez czysty, typowany kod Delphi. Bez szablonowego kodu REST. Bez manipulowania JSON. Wystarczy wrzucić komponent, ustawić klucz API i zacząć budować.
Pełne pokrycie API
Każda główna funkcja Anthropic Claude API jest obsługiwana od razu po instalacji.
| Wiadomości i streaming Wysyłaj wiadomości z promptami systemowymi, odbieraj odpowiedzi synchronicznie lub strumieniowane w czasie rzeczywistym przez Server-Sent Events. |
Vision Analizuj obrazy w formatach JPEG, PNG, GIF i WebP. Claude opisuje, interpretuje i rozumuje o treści wizualnej. |
Użycie narzędzi Definiuj niestandardowe narzędzia za pomocą JSON Schema i pozwól Claude je wywoływać. Buduj agentic workflows z wywołaniami funkcji. |
| Rozszerzone myślenie Włącz rozumowanie krok po kroku dla złożonych zadań. Idealne do matematyki, analizy i rozwiązywania wieloetapowych problemów. |
Przetwarzanie dokumentów Wysyłaj dokumenty PDF i pliki tekstowe do analizy, streszczania i odpowiadania na pytania z obsługą cytatów. |
Wyniki strukturalne Wymuszaj na Claude zwracanie prawidłowego JSON zgodnego z Twoim schematem. Gwarantowane, parsowalne, typowane odpowiedzi. |
| Wyszukiwanie w sieci Pozwól Claude wyszukiwać informacje w czasie rzeczywistym podczas rozmów za pomocą wbudowanych narzędzi po stronie serwera. | Buforowanie promptów Buforuj prompty systemowe, bloki treści i definicje narzędzi. Redukuj koszty nawet o 90% przy powtarzającym się kontekście. | Wsadowe przetwarzanie wiadomości Przetwarzaj tysiące żądań asynchronicznie. Idealne do masowego generowania treści i potoków przetwarzania danych. |
| Files API Przesyłaj, listuj, pobieraj i zarządzaj plikami na serwerach Anthropic. Odwołuj się do nich w wielu rozmowach. | MCP Connector Połącz Claude z zewnętrznymi serwerami Model Context Protocol. Rozszerzaj możliwości o narzędzia i usługi trzecich stron. | Liczenie tokenów Licz tokeny przed wysyłaniem żądań. Dokładnie szacuj koszty i zarządzaj budżetem okna kontekstu. |
Pierwsze kroki
Zintegruj Claude z projektem Delphi w mniej niż minutę. Wrzuć komponent, skonfiguruj klucz API i wyślij pierwszą wiadomość.
// Create the component and configure the API key
var
Anthropic: TsgcHTTP_API_Anthropic;
vResponse: string;
begin
Anthropic := TsgcHTTP_API_Anthropic.Create(nil);
Try
Anthropic.AnthropicOptions.ApiKey := 'YOUR_API_KEY';
// Send a simple message to Claude
vResponse := Anthropic._CreateMessage(
'claude-sonnet-4-20250514', 'Hello, Claude!');
ShowMessage(vResponse);
Finally
Anthropic.Free;
End;
end;
Wiadomości i streaming
Messages API stanowi fundament każdej interakcji z Claude. Wysyłaj tekst z opcjonalnymi promptami systemowymi i odbieraj odpowiedzi synchronicznie lub strumieniowane w czasie rzeczywistym.
Prompty systemoweKontroluj zachowanie Claude, podając prompt systemowy ustawiający kontekst, osobowość lub ograniczenia rozmowy.
vResponse := Anthropic._CreateMessageWithSystem( 'claude-sonnet-4-20250514', 'You are a helpful assistant that responds in Spanish.', 'What is the capital of France?'); // Returns: "La capital de Francia es París."
Streaming w czasie rzeczywistym
Dla responsywnych interfejsów użytkownika strumieniuj odpowiedź Claude token po tokenie za pomocą Server-Sent Events. Przypisz handler zdarzenia OnHTTPAPISSE i wywołaj _CreateMessageStream.
// Enable streaming via SSE
Anthropic.OnHTTPAPISSE := OnSSEEvent;
Anthropic._CreateMessageStream('claude-sonnet-4-20250514',
'Tell me a story about a brave explorer.');
procedure TForm1.OnSSEEvent(Sender: TObject;
const aEvent, aData: string; var Cancel: Boolean);
begin
// aEvent: event type (e.g., content_block_delta)
// aData: JSON payload for this event
Memo1.Lines.Add(aData);
end;
Zaawansowane typowane API
Dla pełnej kontroli nad parametrami żądania — temperature, top-p, sekwencje stop, metadane — używaj typowanych klas żądania i odpowiedzi.
var
oRequest: TsgcAnthropicClass_Request_Messages;
oMessage: TsgcAnthropicClass_Request_Message;
oResponse: TsgcAnthropicClass_Response_Messages;
begin
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 := 'Explain quantum computing in simple terms.';
// ... add message to request, send, and process response
oResponse := Anthropic.CreateMessage(oRequest);
Try
if Length(oResponse.Content) > 0 then
ShowMessage(oResponse.Content[0].Text);
Finally
oResponse.Free;
End;
Finally
oMessage.Free;
oRequest.Free;
End;
end;
Vision — rozumienie obrazów
Claude może analizować i rozumować na temat obrazów. Wysyłaj zdjęcia, zrzuty ekranu, diagramy lub wykresy i otrzymuj szczegółowe opisy, ekstrakcję danych lub wizualne Q&A.
Obsługiwane formaty to JPEG, PNG, GIF i WebP. Obrazy są wysyłane jako bloki treści zakodowane w base64.
// Load an image and ask Claude to describe it
var
vBase64: string;
begin
vBase64 := sgcBase64Encode(LoadFileToBytes('product-photo.png'));
ShowMessage(Anthropic._CreateVisionMessage(
'claude-sonnet-4-20250514',
'Describe this product image for an e-commerce listing.',
vBase64, 'image/png'));
end;
Użycie narzędzi — wywołania funkcji
Definiuj niestandardowe narzędzia za pomocą JSON Schema, a Claude zdecyduje kiedy i jak je wywoływać. To fundament budowania agentic, wieloetapowych workflows.
Przepływ użycia narzędzi ma jasny wzorzec: zdefiniuj narzędzia, wyślij żądanie, wykryj tool_use w odpowiedzi, wykonaj funkcję lokalnie i zwróć wynik do Claude dla ostatecznej odpowiedzi.
// Define a weather tool with JSON Schema input
oTool := TsgcAnthropicClass_Request_Tool.Create;
oTool.Name := 'get_weather';
oTool.Description := 'Get the current weather in a given location';
oTool.InputSchema :=
'{"type":"object","properties":{"location":{"type":"string",' +
'"description":"The city and state"}},"required":["location"]}';
// Send request with tools defined
oResponse := Anthropic.CreateMessage(oRequest);
// Check if Claude wants to call a tool
if oResponse.StopReason = 'tool_use' then
begin
for i := 0 to Length(oResponse.Content) - 1 do
begin
if oResponse.Content[i].ContentType = 'tool_use' then
begin
vToolUseId := oResponse.Content[i].Id;
vToolName := oResponse.Content[i].Name;
vToolInput := oResponse.Content[i].Input;
// Execute the tool and return the result to Claude
end;
end;
end;
Przetwarzanie dokumentów i cytaty
Wysyłaj dokumenty PDF i pliki tekstowe do Claude w celu analizy, streszczania i odpowiadania na pytania. Włącz cytaty, aby otrzymać weryfikowalne odwołania do materiałów źródłowych.
// Send a PDF and ask Claude to summarize it
vBase64 := sgcBase64Encode(LoadFileToBytes('annual-report.pdf'));
vResponse := Anthropic._CreateDocumentMessage(
'claude-sonnet-4-20250514',
'Summarize the key findings of this report.',
vBase64, 'application/pdf');
Cytaty
Włącz cytaty w blokach treści dokumentu, aby otrzymywać odwołania do źródeł — w tym numery stron, zakresy znaków i cytowany tekst — w odpowiedzi Claude.
oDocBlock := TsgcAnthropicClass_Request_Content_Block.Create; oDocBlock.ContentType := 'document'; oDocBlock.SourceType := 'base64'; oDocBlock.MediaType := 'application/pdf'; oDocBlock.Data := vBase64; oDocBlock.Title := 'Annual Report'; oDocBlock.CitationsEnabled := True;
MCP Connector
Połącz Claude z zewnętrznymi serwerami Model Context Protocol (MCP), aby rozszerzyć jego możliwości o narzędzia i usługi trzecich stron — bazy danych, CRM, wewnętrzne API i inne.
Anthropic.AnthropicOptions.BetaHeaders := 'mcp-client-2025-11-20'; // Connect to an MCP server with one method call vResponse := Anthropic._CreateMessageWithMCP( 'claude-sonnet-4-20250514', 'What tools are available?', 'https://my-mcp-server.example.com/sse', 'my-mcp-server');
Uwierzytelnione serwery MCP
Dla serwerów wymagających uwierzytelnienia typowane API obsługuje tokeny OAuth Bearer.
oServer := TsgcAnthropicClass_Request_MCPServer.Create; oServer.ServerType := 'url'; oServer.Url := 'https://my-mcp-server.example.com/sse'; oServer.Name := 'my-server'; oServer.AuthorizationToken := 'OAUTH_TOKEN'; oTool := TsgcAnthropicClass_Request_Tool.Create; oTool.ToolType := 'mcp_toolset'; oTool.MCPServerName := 'my-server';
