Google Gemini AI
Google Gemini çok modlu yapay zeka modellerini içerik üretimi, görme, yapılandırılmış çıktılar, embeddings ve akış ile Delphi, C++ Builder ve .NET uygulamalarınıza entegre edin.
Google Gemini çok modlu yapay zeka modellerini içerik üretimi, görme, yapılandırılmış çıktılar, embeddings ve akış ile Delphi, C++ Builder ve .NET uygulamalarınıza entegre edin.
İçerik üretimi, görme, yapılandırılmış çıktılar, token sayımı ve embeddings için Google Gemini REST API istemcisi.
TsgcHTTP_API_Gemini
HTTPS üzerinden Gemini REST API
Windows, macOS, Linux, iOS, Android
Enterprise (yapay zeka eklentisi)
API anahtarını GeminiOptions içinde ayarlayın, ardından bir TsgcGeminiClass_Request_GenerateContent oluşturup CreateContent çağırın veya hızlı tek seferlik bir istem için _CreateContent dize yardımcısını kullanın.
uses
sgcHTTP_API_Gemini;
var
Gemini: TsgcHTTP_API_Gemini;
Request: TsgcGeminiClass_Request_GenerateContent;
Response: TsgcGeminiClass_Response_GenerateContent;
begin
Gemini := TsgcHTTP_API_Gemini.Create(nil);
Gemini.GeminiOptions.ApiKey := 'YOUR_API_KEY';
// Typed content-generation request
Request := TsgcGeminiClass_Request_GenerateContent.Create;
Request.Model := 'gemini-2.0-flash';
Request.AddUserContent('What are the benefits of WebSockets?');
Response := Gemini.CreateContent(Request);
// Simple one-shot prompt via string helper
Memo1.Lines.Text := Gemini._CreateContent(
'gemini-2.0-flash',
'Summarise RFC 6455',
4096);
// Streaming — handle OnHTTPAPISSE per delta
Gemini.OnHTTPAPISSE := HandleSSE;
Gemini._CreateContentStream(
'gemini-2.0-flash',
'Explain quantum entanglement',
1024);
end;
procedure TForm1.HandleSSE(Sender: TObject;
const aEvent, aData: string;
var Cancel: Boolean);
begin
Memo1.Lines.Add(aEvent + ': ' + aData);
end;
// uses: sgcHTTP_API_Gemini
TsgcHTTP_API_Gemini *Gemini = new TsgcHTTP_API_Gemini(this);
Gemini->GeminiOptions->ApiKey = "YOUR_API_KEY";
// Typed content-generation request
TsgcGeminiClass_Request_GenerateContent *Request =
new TsgcGeminiClass_Request_GenerateContent();
Request->Model = "gemini-2.0-flash";
Request->AddUserContent("What are the benefits of WebSockets?");
TsgcGeminiClass_Response_GenerateContent *Response = Gemini->CreateContent(Request);
// Simple one-shot prompt via string helper
Memo1->Lines->Text = Gemini->_CreateContent(
"gemini-2.0-flash",
"Summarise RFC 6455",
4096);
// Streaming — OnHTTPAPISSE fires per delta
Gemini->OnHTTPAPISSE = HandleSSE;
Gemini->_CreateContentStream(
"gemini-2.0-flash",
"Explain quantum entanglement",
1024);
using esegece.sgcWebSockets;
var gemini = new TsgcHTTPAPI_Gemini();
gemini.GeminiOptions.ApiKey = "YOUR_API_KEY";
// Typed content-generation request
var request = new TsgcGeminiClass_Request_GenerateContent();
request.Model = "gemini-2.0-flash";
request.AddUserContent("What are the benefits of WebSockets?");
var response = gemini.CreateContent(request);
// Simple one-shot prompt via string helper
Console.WriteLine(gemini._CreateContent(
"gemini-2.0-flash",
"Summarise RFC 6455",
4096));
// Streaming via Server-Sent Events
gemini.OnHTTPAPISSE += (sender, ev, data, cancel) => Console.Write(data);
gemini._CreateContentStream(
"gemini-2.0-flash",
"Explain quantum entanglement",
1024);
İçerik üretimi, görme, yapılandırılmış çıktılar, token sayımı ve embeddings için türlenmiş istek / yanıt sınıfları, ayrıca akış ve dayanıklılık denetimleri.
CreateContent türlenmiş bir TsgcGeminiClass_Request_GenerateContent gönderir ve ayrıştırılmış bir yanıt döndürür. _CreateContent, _CreateContentWithSystem ve _CreateContentStream hızlı istemler ve akış için JSON dizesi kısayollarıdır.
_CreateVisionContent bir metin istemiyle birlikte base64 kodlu bir görsel gönderir; çok modlu anlama için image/jpeg, image/png, image/gif ve image/webp ortam türlerini destekler.
TsgcGeminiClass_Request_GenerateContent öğesine fonksiyon bildirimleri ve araçlar ekleyin; böylece Gemini, fonksiyonlarınızı çağırabilir ve aynı üretim isteği içinde yapılandırılmış araç çağrıları döndürebilir.
_CreateContentJSON, isteğe bir JSON şeması uygular; böylece model, beklenen çıktı biçiminize uyan yapılandırılmış JSON döndürür.
CountTokens, kota kullanımını tahmin etmek ve üretimden önce istemleri kısaltmak için bir TsgcGeminiClass_Request_CountTokens gönderir. Bu çağrı herhangi bir metin üretmez.
EmbedContent, anlamsal arama ve geri getirme işlem hatları için text-embedding-004 gibi bir embedding modeli kullanarak bir metin parçası için yoğun bir kayan nokta vektörü üretir.
_GetModels mevcut her Gemini modelini listeler ve _GetModel belirli bir model tanımlayıcısı için ayrıntıları getirir; böylece yetenekleri çalışma zamanında keşfedebilirsiniz.
Tekrarlanan hatalardan sonra CircuitBreaker istekleri kısa devre yaptırır; ReadTimeout ve TLSOptions HTTPS katmanını ayarlar; OnHTTPAPIException hataları açığa çıkarır; OnHTTPAPISSE sunucu tarafından gönderilen olayları akıtır.
Bu bileşenin uyguladığı protokoller için yetkili kaynaklar.
Bileşen referansına doğrudan bağlanın, çalışmaya hazır demo projesini alın ve denemeyi indirin.
| Çevrimiçi Yardım — Gemini Bu bileşen için tam özellik, metot ve olay referansı. | Aç | |
| Demo Projesi — Demos\AI\Gemini Çalışmaya hazır örnek proje. sgcWebSockets paketinin içinde gelir, aşağıdan denemeyi indirin. | Aç | |
| Kullanıcı Kılavuzu (PDF) Kütüphanedeki her bileşeni kapsayan kapsamlı kılavuz. | Aç |