OpenAI vs Anthropic vs Gemini w Delphi: którego API AI użyć?

· Komponenty

Szybka odpowiedź: sgcWebSockets dostarcza natywny komponent dla każdego głównego dostawcy LLM — TsgcHTTP_API_OpenAI, TsgcHTTP_API_Anthropic, TsgcHTTP_API_Gemini, a także Grok, Mistral, DeepSeek oraz wyłącznie lokalny TsgcHTTP_API_Ollama. Współdzielą ten sam wzorzec: upuść komponent, ustaw klucz, wywołaj jedną metodę, więc poniższa decyzja jest niskiego ryzyka: wybierz model pasujący do Twojego przypadku użycia dzisiaj, a dostawcę zmienisz później kilkoma liniami kodu.

Jeśli dodajesz AI do aplikacji Delphi lub C++ Builder, pierwszym pytaniem jest zwykle „którego dostawcę?” OpenAI, Anthropic i Google oferują wydajne modele czatu dostępne przez API HTTP. Z poziomu Delphi praca integracyjna jest niemal identyczna niezależnie od tego, którego wybierzesz, ponieważ sgcWebSockets opakowuje każdego dostawcę w komponent o tym samym kształcie. Oznacza to, że prawdziwy wybór dotyczy mocnych stron modelu, a nie tego, ile kodu będziesz musiał napisać lub przepisać.

Krótka odpowiedź, według przypadku użycia

Potraktuj to jako punkt wyjścia, a następnie zweryfikuj na własnych promptach.

Jeśli chcesz…Zacznij odKomponent
Najszerszego ekosystemu oraz wbudowanego generowania obrazów, transkrypcji i osadzeń (embeddings)OpenAITsgcHTTP_API_OpenAI
Starannego, długiego rozumowania, dużych dokumentów i użycia narzędziAnthropic ClaudeTsgcHTTP_API_Anthropic
Ścisłej integracji z Google Cloud i wejścia multimodalnegoGoogle GeminiTsgcHTTP_API_Gemini
W pełni lokalnego działania, offline, bez klucza API, dane nigdy nie opuszczają maszynyOllama (Llama, Mistral, …)TsgcHTTP_API_Ollama
Tańszej alternatywy lub konkretnego otwartego modeluDeepSeek, Mistral, GrokTsgcHTTP_API_DeepSeek · _Mistral · _Grok

Jak każdy wygląda w Delphi

Wzorzec jest za każdym razem taki sam: utwórz komponent, ustaw klucz API, wywołaj jednolinijkową metodę pomocniczą dla szybkiego wyniku lub przypisz OnHTTPAPISSE, aby strumieniować odpowiedź token po tokenie.

OpenAI

uses
  sgcHTTP_API_OpenAI;

var
  OpenAI: TsgcHTTP_API_OpenAI;
begin
  OpenAI := TsgcHTTP_API_OpenAI.Create(nil);
  OpenAI.OpenAIOptions.ApiKey := 'sk-...';

  Memo1.Lines.Text := OpenAI._CreateChatCompletion(
    'gpt-4o-mini', 'Hello, world.');
end;

Anthropic Claude

uses
  sgcHTTP_API_Anthropic;

var
  Anthropic: TsgcHTTP_API_Anthropic;
begin
  Anthropic := TsgcHTTP_API_Anthropic.Create(nil);
  Anthropic.AnthropicOptions.ApiKey := 'sk-ant-...';

  Memo1.Lines.Text := Anthropic._CreateMessage(
    'claude-3-5-sonnet-latest',
    'What are the benefits of WebSockets?',
    4096);
end;

Google Gemini

uses
  sgcHTTP_API_Gemini;

var
  Gemini: TsgcHTTP_API_Gemini;
begin
  Gemini := TsgcHTTP_API_Gemini.Create(nil);
  Gemini.GeminiOptions.ApiKey := 'YOUR_API_KEY';

  Memo1.Lines.Text := Gemini._CreateContent(
    'gemini-2.0-flash',
    'Summarise RFC 6455',
    4096);
end;

Trzech dostawców, trzy klucze, jeden model myślenia. Strumieniowanie jest równie jednolite — przypisz uchwyt SSE i wywołaj wariant strumieniowy (_CreateChatCompletion z Stream := True dla OpenAI, _CreateMessageStream dla Anthropic, _CreateContentStream dla Gemini):

procedure TForm1.HandleSSE(Sender: TObject;
  const aEvent, aData: string; var Cancel: Boolean);
begin
  Memo1.Lines.Add(aData);
end;

OpenAI: najszerszy zestaw narzędzi

OpenAI to bezpieczny wybór domyślny, gdy potrzebujesz czegoś więcej niż czatu. Ten sam komponent TsgcHTTP_API_OpenAI obsługuje uzupełnienia czatu, osadzenia (_CreateEmbeddings), generowanie obrazów (_CreateImage), moderację oraz transkrypcję Whisper, więc jedna zależność może zasilać chatbota, funkcję wyszukiwania semantycznego i narzędzie „opisz ten obraz”. Jeśli Twoja mapa drogowa dotyka kilku możliwości AI, rozpoczęcie tutaj oznacza mniej ruchomych części. Zobacz stronę komponentu OpenAI oraz samouczek OpenAI w Delphi.

Anthropic Claude: rozumowanie i długi kontekst

Claude to mocny wybór, gdy praca obciąża czytaniem: streszczanie długich dokumentów, wykonywanie wielokrokowych instrukcji lub niezawodne korzystanie z narzędzi. Komponent TsgcHTTP_API_Anthropic udostępnia wiadomości, strumieniowanie, wejścia wizyjne i dokumentowe oraz użycie narzędzi, z nazwami modeli takimi jak claude-3-5-sonnet-latest. Pełny przewodnik znajdziesz w samouczku Anthropic Claude w Delphi oraz na stronie komponentu Anthropic.

Google Gemini: multimodalny i natywny dla Google

Gemini dobrze pasuje, jeśli już jesteś w świecie Google Cloud lub potrzebujesz wejścia multimodalnego. TsgcHTTP_API_Gemini oferuje zarówno typowane API żądań (CreateContent z TsgcGeminiClass_Request_GenerateContent), jak i jednolinijkowe wersje na łańcuchach znaków (_CreateContent), a także strumieniowanie. Szczegóły na stronie komponentu Gemini oraz w wpisie o kliencie Gemini dla Delphi.

Uruchamianie lokalnie: Ollama i otwarte modele

Gdy dane nie mogą opuścić maszyny lub po prostu nie chcesz rachunku za token, TsgcHTTP_API_Ollama komunikuje się z lokalnym serwerem Ollama bez klucza API — wystarczy skierować OllamaOptions.BaseUrl na http://localhost:11434/api i uruchomić Llama, Mistral lub inny otwarty model na własnym sprzęcie. Zachowuje ten sam kształt _CreateMessage / _CreateMessageStream co komponenty chmurowe. Istnieją również dedykowane komponenty dla DeepSeek, Mistral i Grok, gdy chcesz konkretnego hostowanego modelu.

Porównanie funkcji

DostawcaKomponentWywołanie jednolinijkoweStrumieniowanie (OnHTTPAPISSE)Działa lokalnie
OpenAITsgcHTTP_API_OpenAI_CreateChatCompletionTakNie
AnthropicTsgcHTTP_API_Anthropic_CreateMessageTakNie
GeminiTsgcHTTP_API_Gemini_CreateContentTakNie
OllamaTsgcHTTP_API_Ollama_CreateMessageTakTak
DeepSeekTsgcHTTP_API_DeepSeek_CreateMessageTakNie

Jeden wzorzec, wielu dostawców

Ponieważ każdy komponent stosuje ten sam projekt komponent-plus-klucz-plus-metoda, koszt zmiany zdania jest niewielki. Zbuduj prototyp na dowolnym dostawcy, do którego masz klucz, opakuj wywołanie własną funkcją, a późniejsza zamiana TsgcHTTP_API_OpenAI na TsgcHTTP_API_Anthropic będzie lokalną edycją, a nie przepisywaniem. Wiele zespołów utrzymuje nawet dwóch dostawców podłączonych jednocześnie i przełącza się między nimi w razie awarii. Przejrzyj wszystkie na centrum komponentów AI & LLM.

Pierwsze kroki

Wszystkie są dostarczane w sgcWebSockets. Pobierz darmową wersję próbną, upuść komponent dla dostawcy, którego chcesz wypróbować jako pierwszy, a w kilku liniach uzyskasz działające wywołanie.

Pytania, opinie lub pomoc w wyborze? Skontaktuj się — otrzymasz odpowiedź od ludzi, którzy napisali ten kod.

Powiązane