以下に DelphiPython の両方で、
Gemini API を API キー経由で利用する最小コード例をまとめて示すよ。
検索結果の公式ドキュメントに基づいているので、構造は最新仕様に沿っている。
(Python SDK の情報は公式 Quickstart によるもの ai.google.dev


結論:Delphi では REST 呼び出し、Python では公式 SDK を使うのが最短ルート


🐍 Python:公式 SDK(google‑genai)を使う最短コード

Gemini API の Python Quickstart に基づく最小例だよ。
(公式の generateContent の例を参照 ai.google.dev

📦 インストール

pip install -q -U google-genai

🧪 最小コード例(テキスト生成)

from google import genai

client = genai.Client(api_key="YOUR_API_KEY")

response = client.models.generate_content(
    model="gemini-3-flash-preview",
    contents="Delphi から Gemini API を呼ぶ方法を説明して"
)

print(response.text)

🔍 ポイント

  • google-genai が公式 SDK
  • generate_content()modelcontents を渡すだけ
  • レスポンスは .text で取得できる

🟦 Delphi:REST API を直接叩く(REST.Client + JSON)

Delphi には公式 SDK がないので、
REST API を直接 POST するのが最短ルート。

以下は REST.Client(TRESTClient / TRESTRequest) を使った最小例。


🧪 Delphi(VCL/FMX 共通)最小コード例

🔧 1. REST クライアント設定

var
  Client: TRESTClient;
  Request: TRESTRequest;
  Response: TRESTResponse;
begin
  Client := TRESTClient.Create('https://generativelanguage.googleapis.com/v1beta/models/gemini-1.5-flash:generateContent?key=YOUR_API_KEY');
  Request := TRESTRequest.Create(nil);
  Response := TRESTResponse.Create(nil);

  Request.Client := Client;
  Request.Response := Response;
  Request.Method := rmPOST;

📝 2. JSON ボディを設定

Gemini API の標準 REST 形式(公式リファレンスより) ai.google.dev

  Request.AddBody(
    '{ "contents": [ { "parts": [ { "text": "Python と Delphi の比較を説明して" } ] } ] }',
    ctAPPLICATION_JSON
  );

▶ 3. 実行してレスポンスを取得

  Request.Execute;

  ShowMessage(Response.Content);
end;

🧩 Delphi 版のポイント

  • URL は
    https://generativelanguage.googleapis.com/v1beta/models/{model}:generateContent?key=API_KEY
  • Body は JSON で
    {
      "contents": [
        { "parts": [ { "text": "..." } ] }
      ]
    }
    
  • レスポンスは JSON で返るので、必要なら TJSONObject.ParseJSONValue で解析

📚 Python と Delphi の比較表

言語 利用方法 メリット デメリット
Python 公式 SDK(google‑genai) 最短・簡単・高機能 特になし
Delphi REST API を直接叩く どのバージョンでも動く JSON を自分で組む必要

🌱 次に進めるなら…

あなたのプロジェクト(Delphi → AI → 外部 API → Roblox/MCP)を考えると、
次のステップもすぐ作れるよ:

  • Delphi で関数呼び出し(function calling)を使う例
  • 画像を送って解析する例
  • ストリーミング API(リアルタイム)を Delphi で扱う方法
  • Delphi 側を「AI システムコールの ISA」として設計する雛形

どれを深掘りしたい?