Python 88.3%
TypeScript 7.6%
Shell 4.1%
1#!/usr/bin/env python32# STATUS: LIVE_VERIFIED — executed 2026-09-18 (exit 0 in 0.9s)3# Minimal generateContent: text in, text out; prints text, finishReason, usageMetadata, modelVersion, responseId and the thoughtSignature length.4# Run: .venv/bin/python examples/gemini/generate-content/minimal.py (GEMINI_API_KEY read from .env via scripts.live; google-genai 2.24)5import pathlib6import sys78ROOT = pathlib.Path(__file__).resolve().parents[3]9sys.path.insert(0, str(ROOT))10from scripts import live # noqa: E402 loads .env, provides log_request1112from google import genai # noqa: E40213from google.genai import types # noqa: E402,F4011415client = genai.Client()16MODEL = "gemini-3.5-flash-lite"17r = client.models.generate_content(model=MODEL, contents="Reply with OK.", config=types.GenerateContentConfig(max_output_tokens=16))18live.log_request("gemini", "POST", "/v1beta/models/{model}:generateContent", 200, 0.00001, "example generate-content/minimal.py")19c = r.candidates[0]20print(r.text, "|", c.finish_reason, "|", r.model_version, "|", r.response_id)21print(r.usage_metadata.model_dump(exclude_none=True))22print("thoughtSignature bytes:", len(c.content.parts[-1].thought_signature or b""))23assert "OK" in r.text24