[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-google-cloud-genai-sdk":3,"mdc-hfuaw1-key":53,"related-repo-google-cloud-genai-sdk":2189,"related-org-google-cloud-genai-sdk":2237},{"slug":4,"name":4,"fn":5,"description":6,"org":7,"tags":12,"stars":24,"repoUrl":25,"updatedAt":26,"license":27,"forks":28,"topics":29,"repo":48,"sourceUrl":51,"mdContent":52},"genai-sdk","build enterprise applications with Gemini API","Guides the usage of Gemini API on Google Cloud Vertex AI with the Gen AI SDK. Use when the user asks about using Gemini in an enterprise environment or explicitly mentions Vertex AI. Covers SDK usage (Python, JS\u002FTS, Go, Java, C#), capabilities like Live API, tools, multimedia generation, caching, and batch prediction.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},"google-cloud","Google Cloud","https:\u002F\u002Fpexgzepcugksgbtrxkhf.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Forg-logos\u002Fgoogle-cloud.png","GoogleCloudPlatform",[13,17,20,23],{"name":14,"slug":15,"type":16},"LLM","llm","tag",{"name":18,"slug":19,"type":16},"API Development","api-development",{"name":21,"slug":22,"type":16},"Gemini","gemini",{"name":9,"slug":8,"type":16},762,"https:\u002F\u002Fgithub.com\u002FGoogleCloudPlatform\u002Fvertex-ai-samples","2026-07-12T07:38:31.989308",null,296,[30,31,32,22,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47],"automl","colab","colab-enterprise","gemini-api","genai","generative-ai","google-cloud-platform","ml","mlops","model","model-garden","notebook","pipeline","predictions","samples","vertex-ai","vertexai","workbench",{"repoUrl":25,"stars":24,"forks":28,"topics":49,"description":50},[30,31,32,22,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47],"Notebooks, code samples, sample apps, and other resources that demonstrate how to use, develop and manage machine learning and generative AI workflows using Google Cloud Vertex AI.","https:\u002F\u002Fgithub.com\u002FGoogleCloudPlatform\u002Fvertex-ai-samples\u002Ftree\u002FHEAD\u002Fskills\u002Fgenai-sdk","---\nname: genai-sdk\ndescription: Guides the usage of Gemini API on Google Cloud Vertex AI with the Gen AI SDK. Use when the user asks about using Gemini in an enterprise environment or explicitly mentions Vertex AI. Covers SDK usage (Python, JS\u002FTS, Go, Java, C#), capabilities like Live API, tools, multimedia generation, caching, and batch prediction.\ncompatibility: Requires active Google Cloud credentials and Vertex AI API enabled.\n---\n\n# Gemini API in Vertex AI\n\nAccess Google's most advanced AI models built for enterprise use cases using the Gemini API in Vertex AI.\n\nProvide these key capabilities:\n\n- **Text generation** - Chat, completion, summarization\n- **Multimodal understanding** - Process images, audio, video, and documents\n- **Function calling** - Let the model invoke your functions\n- **Structured output** - Generate valid JSON matching your schema\n- **Context caching** - Cache large contexts for efficiency\n- **Embeddings** - Generate text embeddings for semantic search\n- **Live Realtime API** - Bidirectional streaming for low latency Voice and Video interactions\n- **Batch Prediction** - Handle massive async dataset prediction workloads\n\n## Core Directives\n\n- **Unified SDK**: ALWAYS use the Gen AI SDK (`google-genai` for Python, `@google\u002Fgenai` for JS\u002FTS, `google.golang.org\u002Fgenai` for Go, `com.google.genai:google-genai` for Java, `Google.GenAI` for C#).\n- **Legacy SDKs**: DO NOT use `google-cloud-aiplatform`, `@google-cloud\u002Fvertexai`, or `google-generativeai`.\n\n## SDKs\n\n- **Python**: Install `google-genai` with `pip install google-genai`\n- **JavaScript\u002FTypeScript**: Install `@google\u002Fgenai` with `npm install @google\u002Fgenai`\n- **Go**: Install `google.golang.org\u002Fgenai` with `go get google.golang.org\u002Fgenai`\n- **C#\u002F.NET**: Install `Google.GenAI` with `dotnet add package Google.GenAI`\n- **Java**:\n  - groupId: `com.google.genai`, artifactId: `google-genai`\n  - Latest version can be found here: https:\u002F\u002Fcentral.sonatype.com\u002Fartifact\u002Fcom.google.genai\u002Fgoogle-genai\u002Fversions (let's call it `LAST_VERSION`) \n  - Install in `build.gradle`:\n\n    ```\n    implementation(\"com.google.genai:google-genai:${LAST_VERSION}\")\n    ```\n\n  - Install Maven dependency in `pom.xml`:\n\n    ```xml\n    \u003Cdependency>\n\t    \u003CgroupId>com.google.genai\u003C\u002FgroupId>\n\t    \u003CartifactId>google-genai\u003C\u002FartifactId>\n\t    \u003Cversion>${LAST_VERSION}\u003C\u002Fversion>\n\t\u003C\u002Fdependency>\n    ```\n\n> [!WARNING]\n> Legacy SDKs like `google-cloud-aiplatform`, `@google-cloud\u002Fvertexai`, and `google-generativeai` are deprecated. Migrate to the new SDKs above urgently by following the Migration Guide.\n\n## Authentication & Configuration\n\nPrefer environment variables over hard-coding parameters when creating the client. Initialize the client without parameters to automatically pick up these values.\n\n### Application Default Credentials (ADC)\nSet these variables for standard [Google Cloud authentication](https:\u002F\u002Fdocs.cloud.google.com\u002Fvertex-ai\u002Fgenerative-ai\u002Fdocs\u002Fstart\u002Fgcp-auth):\n```bash\nexport GOOGLE_CLOUD_PROJECT='your-project-id'\nexport GOOGLE_CLOUD_LOCATION='global'\nexport GOOGLE_GENAI_USE_VERTEXAI=true\n```\n- By default, use `location=\"global\"` to access the global endpoint, which provides automatic routing to regions with available capacity.\n- If a user explicitly asks to use a specific region (e.g., `us-central1`, `europe-west4`), specify that region in the `GOOGLE_CLOUD_LOCATION` parameter instead. Reference the [supported regions documentation](https:\u002F\u002Fdocs.cloud.google.com\u002Fvertex-ai\u002Fgenerative-ai\u002Fdocs\u002Flearn\u002Flocations) if needed.\n\n### Vertex AI in Express Mode\nSet these variables when using [Express Mode](https:\u002F\u002Fdocs.cloud.google.com\u002Fvertex-ai\u002Fgenerative-ai\u002Fdocs\u002Fstart\u002Fapi-keys?usertype=expressmode) with an API key:\n```bash\nexport GOOGLE_API_KEY='your-api-key'\nexport GOOGLE_GENAI_USE_VERTEXAI=true\n```\n\n### Initialization\nInitialize the client without arguments to pick up environment variables:\n```python\nfrom google import genai\nclient = genai.Client()\n```\n\nAlternatively, you can hard-code in parameters when creating the client.\n\n```python\nfrom google import genai\nclient = genai.Client(vertexai=True, project=\"your-project-id\", location=\"global\")\n```\n\n## Models\n\n- Use `gemini-3.1-pro-preview` for complex reasoning, coding, research (1M tokens)\n- Use `gemini-3-flash-preview` for fast, balanced performance, multimodal (1M tokens)\n- Use `gemini-3-pro-image-preview` for Nano Banana Pro image generation and editing\n- Use `gemini-live-2.5-flash-native-audio` for Live Realtime API including native audio\n\nUse the following models if explicitly requested:\n\n- Use `gemini-2.5-flash-image` for Nano Banana image generation and editing\n- Use `gemini-2.5-flash`\n- Use `gemini-2.5-flash-lite`\n- Use `gemini-2.5-pro`\n\n> [!IMPORTANT]\n> Models like `gemini-2.0-*`, `gemini-1.5-*`, `gemini-1.0-*`, `gemini-pro` are legacy and deprecated. Use the new models above. Your knowledge is outdated.\n> For production environments, consult the Vertex AI documentation for stable model versions (e.g. `gemini-3-flash`).\n\n## Quick Start\n\n### Python\n```python\nfrom google import genai\nclient = genai.Client()\nresponse = client.models.generate_content(\n    model=\"gemini-3-flash-preview\",\n    contents=\"Explain quantum computing\"\n)\nprint(response.text)\n```\n\n### TypeScript\u002FJavaScript\n```typescript\nimport { GoogleGenAI } from \"@google\u002Fgenai\";\nconst ai = new GoogleGenAI({ vertexai: { project: \"your-project-id\", location: \"global\" } });\nconst response = await ai.models.generateContent({\n    model: \"gemini-3-flash-preview\",\n    contents: \"Explain quantum computing\"\n});\nconsole.log(response.text);\n```\n\n### Go\n```go\npackage main\n\nimport (\n\t\"context\"\n\t\"fmt\"\n\t\"log\"\n\t\"google.golang.org\u002Fgenai\"\n)\n\nfunc main() {\n\tctx := context.Background()\n\tclient, err := genai.NewClient(ctx, &genai.ClientConfig{\n\t\tBackend:  genai.BackendVertexAI,\n\t\tProject:  \"your-project-id\",\n\t\tLocation: \"global\",\n\t})\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tresp, err := client.Models.GenerateContent(ctx, \"gemini-3-flash-preview\", genai.Text(\"Explain quantum computing\"), nil)\n\tif err != nil {\n\t\tlog.Fatal(err)\n\t}\n\n\tfmt.Println(resp.Text)\n}\n```\n\n### Java\n```java\nimport com.google.genai.Client;\nimport com.google.genai.types.GenerateContentResponse;\n\npublic class GenerateTextFromTextInput {\n  public static void main(String[] args) {\n    Client client = Client.builder().vertexAi(true).project(\"your-project-id\").location(\"global\").build();\n    GenerateContentResponse response =\n        client.models.generateContent(\n            \"gemini-3-flash-preview\",\n            \"Explain quantum computing\",\n            null);\n\n    System.out.println(response.text());\n  }\n}\n```\n\n### C#\u002F.NET\n```csharp\nusing Google.GenAI;\n\nvar client = new Client(\n    project: \"your-project-id\",\n    location: \"global\",\n    vertexAI: true\n);\n\nvar response = await client.Models.GenerateContent(\n    \"gemini-3-flash-preview\",\n    \"Explain quantum computing\"\n);\n\nConsole.WriteLine(response.Text);\n```\n\n## API spec & Documentation (source of truth)\n\nWhen implementing or debugging API integration for Vertex AI, refer to the official Google Cloud Vertex AI documentation:\n- **Vertex AI Gemini Documentation**: https:\u002F\u002Fcloud.google.com\u002Fvertex-ai\u002Fgenerative-ai\u002Fdocs\u002F\n- **REST API Reference**: https:\u002F\u002Fcloud.google.com\u002Fvertex-ai\u002Fgenerative-ai\u002Fdocs\u002Freference\u002Frest\n\nThe Gen AI SDK on Vertex AI uses the `v1beta1` or `v1` REST API endpoints (e.g., `https:\u002F\u002F{LOCATION}-aiplatform.googleapis.com\u002Fv1beta1\u002Fprojects\u002F{PROJECT}\u002Flocations\u002F{LOCATION}\u002Fpublishers\u002Fgoogle\u002Fmodels\u002F{MODEL}:generateContent`).\n\n> [!TIP]\n> **Use the Developer Knowledge MCP Server**: If the `search_documents` or `get_document` tools are available, use them to find and retrieve official documentation for Google Cloud and Vertex AI directly within the context. This is the preferred method for getting up-to-date API details and code snippets.\n\n## Workflows and Code Samples\n\nReference the [Python Docs Samples repository](https:\u002F\u002Fgithub.com\u002FGoogleCloudPlatform\u002Fpython-docs-samples\u002Ftree\u002Fmain\u002Fgenai) for additional code samples and specific usage scenarios.\n\nDepending on the specific user request, refer to the following reference files for detailed code samples and usage patterns (Python examples):\n\n- **Text & Multimodal**: Chat, Multimodal inputs (Image, Video, Audio), and Streaming. See [references\u002Ftext_and_multimodal.md](references\u002Ftext_and_multimodal.md)\n- **Embeddings**: Generate text embeddings for semantic search. See [references\u002Fembeddings.md](references\u002Fembeddings.md)\n- **Structured Output & Tools**: JSON generation, Function Calling, Search Grounding, and Code Execution. See [references\u002Fstructured_and_tools.md](references\u002Fstructured_and_tools.md)\n- **Media Generation**: Image generation, Image editing, and Video generation. See [references\u002Fmedia_generation.md](references\u002Fmedia_generation.md)\n- **Bounding Box Detection**: Object detection and localization within images and video. See [references\u002Fbounding_box.md](references\u002Fbounding_box.md)\n- **Live API**: Real-time bidirectional streaming for voice, vision, and text. See [references\u002Flive_api\u002FSKILL.md](references\u002Flive_api\u002FSKILL.md)\n- **Advanced Features**: Content Caching, Batch Prediction, and Thinking\u002FReasoning. See [references\u002Fadvanced_features.md](references\u002Fadvanced_features.md)\n- **Safety**: Adjusting Responsible AI filters and thresholds. See [references\u002Fsafety.md](references\u002Fsafety.md)\n- **Model Tuning**: Supervised Fine-Tuning and Preference Tuning. See [references\u002Fmodel_tuning.md](references\u002Fmodel_tuning.md)\n",{"data":54,"body":56},{"name":4,"description":6,"compatibility":55},"Requires active Google Cloud credentials and Vertex AI API enabled.",{"type":57,"children":58},"root",[59,68,74,79,165,172,260,266,502,536,542,547,554,567,663,716,722,736,791,797,802,827,832,854,860,912,917,962,1012,1018,1022,1085,1091,1420,1425,1663,1668,1793,1798,1915,1921,1926,1960,1988,2021,2027,2041,2046,2183],{"type":60,"tag":61,"props":62,"children":64},"element","h1",{"id":63},"gemini-api-in-vertex-ai",[65],{"type":66,"value":67},"text","Gemini API in Vertex AI",{"type":60,"tag":69,"props":70,"children":71},"p",{},[72],{"type":66,"value":73},"Access Google's most advanced AI models built for enterprise use cases using the Gemini API in Vertex AI.",{"type":60,"tag":69,"props":75,"children":76},{},[77],{"type":66,"value":78},"Provide these key capabilities:",{"type":60,"tag":80,"props":81,"children":82},"ul",{},[83,95,105,115,125,135,145,155],{"type":60,"tag":84,"props":85,"children":86},"li",{},[87,93],{"type":60,"tag":88,"props":89,"children":90},"strong",{},[91],{"type":66,"value":92},"Text generation",{"type":66,"value":94}," - Chat, completion, summarization",{"type":60,"tag":84,"props":96,"children":97},{},[98,103],{"type":60,"tag":88,"props":99,"children":100},{},[101],{"type":66,"value":102},"Multimodal understanding",{"type":66,"value":104}," - Process images, audio, video, and documents",{"type":60,"tag":84,"props":106,"children":107},{},[108,113],{"type":60,"tag":88,"props":109,"children":110},{},[111],{"type":66,"value":112},"Function calling",{"type":66,"value":114}," - Let the model invoke your functions",{"type":60,"tag":84,"props":116,"children":117},{},[118,123],{"type":60,"tag":88,"props":119,"children":120},{},[121],{"type":66,"value":122},"Structured output",{"type":66,"value":124}," - Generate valid JSON matching your schema",{"type":60,"tag":84,"props":126,"children":127},{},[128,133],{"type":60,"tag":88,"props":129,"children":130},{},[131],{"type":66,"value":132},"Context caching",{"type":66,"value":134}," - Cache large contexts for efficiency",{"type":60,"tag":84,"props":136,"children":137},{},[138,143],{"type":60,"tag":88,"props":139,"children":140},{},[141],{"type":66,"value":142},"Embeddings",{"type":66,"value":144}," - Generate text embeddings for semantic search",{"type":60,"tag":84,"props":146,"children":147},{},[148,153],{"type":60,"tag":88,"props":149,"children":150},{},[151],{"type":66,"value":152},"Live Realtime API",{"type":66,"value":154}," - Bidirectional streaming for low latency Voice and Video interactions",{"type":60,"tag":84,"props":156,"children":157},{},[158,163],{"type":60,"tag":88,"props":159,"children":160},{},[161],{"type":66,"value":162},"Batch Prediction",{"type":66,"value":164}," - Handle massive async dataset prediction workloads",{"type":60,"tag":166,"props":167,"children":169},"h2",{"id":168},"core-directives",[170],{"type":66,"value":171},"Core Directives",{"type":60,"tag":80,"props":173,"children":174},{},[175,226],{"type":60,"tag":84,"props":176,"children":177},{},[178,183,185,192,194,200,202,208,210,216,218,224],{"type":60,"tag":88,"props":179,"children":180},{},[181],{"type":66,"value":182},"Unified SDK",{"type":66,"value":184},": ALWAYS use the Gen AI SDK (",{"type":60,"tag":186,"props":187,"children":189},"code",{"className":188},[],[190],{"type":66,"value":191},"google-genai",{"type":66,"value":193}," for Python, ",{"type":60,"tag":186,"props":195,"children":197},{"className":196},[],[198],{"type":66,"value":199},"@google\u002Fgenai",{"type":66,"value":201}," for JS\u002FTS, ",{"type":60,"tag":186,"props":203,"children":205},{"className":204},[],[206],{"type":66,"value":207},"google.golang.org\u002Fgenai",{"type":66,"value":209}," for Go, ",{"type":60,"tag":186,"props":211,"children":213},{"className":212},[],[214],{"type":66,"value":215},"com.google.genai:google-genai",{"type":66,"value":217}," for Java, ",{"type":60,"tag":186,"props":219,"children":221},{"className":220},[],[222],{"type":66,"value":223},"Google.GenAI",{"type":66,"value":225}," for C#).",{"type":60,"tag":84,"props":227,"children":228},{},[229,234,236,242,244,250,252,258],{"type":60,"tag":88,"props":230,"children":231},{},[232],{"type":66,"value":233},"Legacy SDKs",{"type":66,"value":235},": DO NOT use ",{"type":60,"tag":186,"props":237,"children":239},{"className":238},[],[240],{"type":66,"value":241},"google-cloud-aiplatform",{"type":66,"value":243},", ",{"type":60,"tag":186,"props":245,"children":247},{"className":246},[],[248],{"type":66,"value":249},"@google-cloud\u002Fvertexai",{"type":66,"value":251},", or ",{"type":60,"tag":186,"props":253,"children":255},{"className":254},[],[256],{"type":66,"value":257},"google-generativeai",{"type":66,"value":259},".",{"type":60,"tag":166,"props":261,"children":263},{"id":262},"sdks",[264],{"type":66,"value":265},"SDKs",{"type":60,"tag":80,"props":267,"children":268},{},[269,292,313,334,355],{"type":60,"tag":84,"props":270,"children":271},{},[272,277,279,284,286],{"type":60,"tag":88,"props":273,"children":274},{},[275],{"type":66,"value":276},"Python",{"type":66,"value":278},": Install ",{"type":60,"tag":186,"props":280,"children":282},{"className":281},[],[283],{"type":66,"value":191},{"type":66,"value":285}," with ",{"type":60,"tag":186,"props":287,"children":289},{"className":288},[],[290],{"type":66,"value":291},"pip install google-genai",{"type":60,"tag":84,"props":293,"children":294},{},[295,300,301,306,307],{"type":60,"tag":88,"props":296,"children":297},{},[298],{"type":66,"value":299},"JavaScript\u002FTypeScript",{"type":66,"value":278},{"type":60,"tag":186,"props":302,"children":304},{"className":303},[],[305],{"type":66,"value":199},{"type":66,"value":285},{"type":60,"tag":186,"props":308,"children":310},{"className":309},[],[311],{"type":66,"value":312},"npm install @google\u002Fgenai",{"type":60,"tag":84,"props":314,"children":315},{},[316,321,322,327,328],{"type":60,"tag":88,"props":317,"children":318},{},[319],{"type":66,"value":320},"Go",{"type":66,"value":278},{"type":60,"tag":186,"props":323,"children":325},{"className":324},[],[326],{"type":66,"value":207},{"type":66,"value":285},{"type":60,"tag":186,"props":329,"children":331},{"className":330},[],[332],{"type":66,"value":333},"go get google.golang.org\u002Fgenai",{"type":60,"tag":84,"props":335,"children":336},{},[337,342,343,348,349],{"type":60,"tag":88,"props":338,"children":339},{},[340],{"type":66,"value":341},"C#\u002F.NET",{"type":66,"value":278},{"type":60,"tag":186,"props":344,"children":346},{"className":345},[],[347],{"type":66,"value":223},{"type":66,"value":285},{"type":60,"tag":186,"props":350,"children":352},{"className":351},[],[353],{"type":66,"value":354},"dotnet add package Google.GenAI",{"type":60,"tag":84,"props":356,"children":357},{},[358,363,365],{"type":60,"tag":88,"props":359,"children":360},{},[361],{"type":66,"value":362},"Java",{"type":66,"value":364},":\n",{"type":60,"tag":80,"props":366,"children":367},{},[368,386,409,434],{"type":60,"tag":84,"props":369,"children":370},{},[371,373,379,381],{"type":66,"value":372},"groupId: ",{"type":60,"tag":186,"props":374,"children":376},{"className":375},[],[377],{"type":66,"value":378},"com.google.genai",{"type":66,"value":380},", artifactId: ",{"type":60,"tag":186,"props":382,"children":384},{"className":383},[],[385],{"type":66,"value":191},{"type":60,"tag":84,"props":387,"children":388},{},[389,391,399,401,407],{"type":66,"value":390},"Latest version can be found here: ",{"type":60,"tag":392,"props":393,"children":397},"a",{"href":394,"rel":395},"https:\u002F\u002Fcentral.sonatype.com\u002Fartifact\u002Fcom.google.genai\u002Fgoogle-genai\u002Fversions",[396],"nofollow",[398],{"type":66,"value":394},{"type":66,"value":400}," (let's call it ",{"type":60,"tag":186,"props":402,"children":404},{"className":403},[],[405],{"type":66,"value":406},"LAST_VERSION",{"type":66,"value":408},")",{"type":60,"tag":84,"props":410,"children":411},{},[412,414,420,422],{"type":66,"value":413},"Install in ",{"type":60,"tag":186,"props":415,"children":417},{"className":416},[],[418],{"type":66,"value":419},"build.gradle",{"type":66,"value":421},":",{"type":60,"tag":423,"props":424,"children":428},"pre",{"className":425,"code":427,"language":66},[426],"language-text","implementation(\"com.google.genai:google-genai:${LAST_VERSION}\")\n",[429],{"type":60,"tag":186,"props":430,"children":432},{"__ignoreMap":431},"",[433],{"type":66,"value":427},{"type":60,"tag":84,"props":435,"children":436},{},[437,439,445,446],{"type":66,"value":438},"Install Maven dependency in ",{"type":60,"tag":186,"props":440,"children":442},{"className":441},[],[443],{"type":66,"value":444},"pom.xml",{"type":66,"value":421},{"type":60,"tag":423,"props":447,"children":451},{"className":448,"code":449,"language":450,"meta":431,"style":431},"language-xml shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","\u003Cdependency>\n    \u003CgroupId>com.google.genai\u003C\u002FgroupId>\n    \u003CartifactId>google-genai\u003C\u002FartifactId>\n    \u003Cversion>${LAST_VERSION}\u003C\u002Fversion>\n\u003C\u002Fdependency>\n","xml",[452],{"type":60,"tag":186,"props":453,"children":454},{"__ignoreMap":431},[455,466,475,484,493],{"type":60,"tag":456,"props":457,"children":460},"span",{"class":458,"line":459},"line",1,[461],{"type":60,"tag":456,"props":462,"children":463},{},[464],{"type":66,"value":465},"\u003Cdependency>\n",{"type":60,"tag":456,"props":467,"children":469},{"class":458,"line":468},2,[470],{"type":60,"tag":456,"props":471,"children":472},{},[473],{"type":66,"value":474},"    \u003CgroupId>com.google.genai\u003C\u002FgroupId>\n",{"type":60,"tag":456,"props":476,"children":478},{"class":458,"line":477},3,[479],{"type":60,"tag":456,"props":480,"children":481},{},[482],{"type":66,"value":483},"    \u003CartifactId>google-genai\u003C\u002FartifactId>\n",{"type":60,"tag":456,"props":485,"children":487},{"class":458,"line":486},4,[488],{"type":60,"tag":456,"props":489,"children":490},{},[491],{"type":66,"value":492},"    \u003Cversion>${LAST_VERSION}\u003C\u002Fversion>\n",{"type":60,"tag":456,"props":494,"children":496},{"class":458,"line":495},5,[497],{"type":60,"tag":456,"props":498,"children":499},{},[500],{"type":66,"value":501},"\u003C\u002Fdependency>\n",{"type":60,"tag":503,"props":504,"children":505},"blockquote",{},[506],{"type":60,"tag":69,"props":507,"children":508},{},[509,514,516,521,522,527,529,534],{"type":60,"tag":456,"props":510,"children":511},{},[512],{"type":66,"value":513},"!WARNING",{"type":66,"value":515},"\nLegacy SDKs like ",{"type":60,"tag":186,"props":517,"children":519},{"className":518},[],[520],{"type":66,"value":241},{"type":66,"value":243},{"type":60,"tag":186,"props":523,"children":525},{"className":524},[],[526],{"type":66,"value":249},{"type":66,"value":528},", and ",{"type":60,"tag":186,"props":530,"children":532},{"className":531},[],[533],{"type":66,"value":257},{"type":66,"value":535}," are deprecated. Migrate to the new SDKs above urgently by following the Migration Guide.",{"type":60,"tag":166,"props":537,"children":539},{"id":538},"authentication-configuration",[540],{"type":66,"value":541},"Authentication & Configuration",{"type":60,"tag":69,"props":543,"children":544},{},[545],{"type":66,"value":546},"Prefer environment variables over hard-coding parameters when creating the client. Initialize the client without parameters to automatically pick up these values.",{"type":60,"tag":548,"props":549,"children":551},"h3",{"id":550},"application-default-credentials-adc",[552],{"type":66,"value":553},"Application Default Credentials (ADC)",{"type":60,"tag":69,"props":555,"children":556},{},[557,559,566],{"type":66,"value":558},"Set these variables for standard ",{"type":60,"tag":392,"props":560,"children":563},{"href":561,"rel":562},"https:\u002F\u002Fdocs.cloud.google.com\u002Fvertex-ai\u002Fgenerative-ai\u002Fdocs\u002Fstart\u002Fgcp-auth",[396],[564],{"type":66,"value":565},"Google Cloud authentication",{"type":66,"value":421},{"type":60,"tag":423,"props":568,"children":572},{"className":569,"code":570,"language":571,"meta":431,"style":431},"language-bash shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","export GOOGLE_CLOUD_PROJECT='your-project-id'\nexport GOOGLE_CLOUD_LOCATION='global'\nexport GOOGLE_GENAI_USE_VERTEXAI=true\n","bash",[573],{"type":60,"tag":186,"props":574,"children":575},{"__ignoreMap":431},[576,613,642],{"type":60,"tag":456,"props":577,"children":578},{"class":458,"line":459},[579,585,591,597,602,608],{"type":60,"tag":456,"props":580,"children":582},{"style":581},"--shiki-light:#9C3EDA;--shiki-default:#C792EA;--shiki-dark:#C792EA",[583],{"type":66,"value":584},"export",{"type":60,"tag":456,"props":586,"children":588},{"style":587},"--shiki-light:#90A4AE;--shiki-default:#EEFFFF;--shiki-dark:#BABED8",[589],{"type":66,"value":590}," GOOGLE_CLOUD_PROJECT",{"type":60,"tag":456,"props":592,"children":594},{"style":593},"--shiki-light:#39ADB5;--shiki-default:#89DDFF;--shiki-dark:#89DDFF",[595],{"type":66,"value":596},"=",{"type":60,"tag":456,"props":598,"children":599},{"style":593},[600],{"type":66,"value":601},"'",{"type":60,"tag":456,"props":603,"children":605},{"style":604},"--shiki-light:#91B859;--shiki-default:#C3E88D;--shiki-dark:#C3E88D",[606],{"type":66,"value":607},"your-project-id",{"type":60,"tag":456,"props":609,"children":610},{"style":593},[611],{"type":66,"value":612},"'\n",{"type":60,"tag":456,"props":614,"children":615},{"class":458,"line":468},[616,620,625,629,633,638],{"type":60,"tag":456,"props":617,"children":618},{"style":581},[619],{"type":66,"value":584},{"type":60,"tag":456,"props":621,"children":622},{"style":587},[623],{"type":66,"value":624}," GOOGLE_CLOUD_LOCATION",{"type":60,"tag":456,"props":626,"children":627},{"style":593},[628],{"type":66,"value":596},{"type":60,"tag":456,"props":630,"children":631},{"style":593},[632],{"type":66,"value":601},{"type":60,"tag":456,"props":634,"children":635},{"style":604},[636],{"type":66,"value":637},"global",{"type":60,"tag":456,"props":639,"children":640},{"style":593},[641],{"type":66,"value":612},{"type":60,"tag":456,"props":643,"children":644},{"class":458,"line":477},[645,649,654,658],{"type":60,"tag":456,"props":646,"children":647},{"style":581},[648],{"type":66,"value":584},{"type":60,"tag":456,"props":650,"children":651},{"style":587},[652],{"type":66,"value":653}," GOOGLE_GENAI_USE_VERTEXAI",{"type":60,"tag":456,"props":655,"children":656},{"style":593},[657],{"type":66,"value":596},{"type":60,"tag":456,"props":659,"children":660},{"style":587},[661],{"type":66,"value":662},"true\n",{"type":60,"tag":80,"props":664,"children":665},{},[666,679],{"type":60,"tag":84,"props":667,"children":668},{},[669,671,677],{"type":66,"value":670},"By default, use ",{"type":60,"tag":186,"props":672,"children":674},{"className":673},[],[675],{"type":66,"value":676},"location=\"global\"",{"type":66,"value":678}," to access the global endpoint, which provides automatic routing to regions with available capacity.",{"type":60,"tag":84,"props":680,"children":681},{},[682,684,690,691,697,699,705,707,714],{"type":66,"value":683},"If a user explicitly asks to use a specific region (e.g., ",{"type":60,"tag":186,"props":685,"children":687},{"className":686},[],[688],{"type":66,"value":689},"us-central1",{"type":66,"value":243},{"type":60,"tag":186,"props":692,"children":694},{"className":693},[],[695],{"type":66,"value":696},"europe-west4",{"type":66,"value":698},"), specify that region in the ",{"type":60,"tag":186,"props":700,"children":702},{"className":701},[],[703],{"type":66,"value":704},"GOOGLE_CLOUD_LOCATION",{"type":66,"value":706}," parameter instead. Reference the ",{"type":60,"tag":392,"props":708,"children":711},{"href":709,"rel":710},"https:\u002F\u002Fdocs.cloud.google.com\u002Fvertex-ai\u002Fgenerative-ai\u002Fdocs\u002Flearn\u002Flocations",[396],[712],{"type":66,"value":713},"supported regions documentation",{"type":66,"value":715}," if needed.",{"type":60,"tag":548,"props":717,"children":719},{"id":718},"vertex-ai-in-express-mode",[720],{"type":66,"value":721},"Vertex AI in Express Mode",{"type":60,"tag":69,"props":723,"children":724},{},[725,727,734],{"type":66,"value":726},"Set these variables when using ",{"type":60,"tag":392,"props":728,"children":731},{"href":729,"rel":730},"https:\u002F\u002Fdocs.cloud.google.com\u002Fvertex-ai\u002Fgenerative-ai\u002Fdocs\u002Fstart\u002Fapi-keys?usertype=expressmode",[396],[732],{"type":66,"value":733},"Express Mode",{"type":66,"value":735}," with an API key:",{"type":60,"tag":423,"props":737,"children":739},{"className":569,"code":738,"language":571,"meta":431,"style":431},"export GOOGLE_API_KEY='your-api-key'\nexport GOOGLE_GENAI_USE_VERTEXAI=true\n",[740],{"type":60,"tag":186,"props":741,"children":742},{"__ignoreMap":431},[743,772],{"type":60,"tag":456,"props":744,"children":745},{"class":458,"line":459},[746,750,755,759,763,768],{"type":60,"tag":456,"props":747,"children":748},{"style":581},[749],{"type":66,"value":584},{"type":60,"tag":456,"props":751,"children":752},{"style":587},[753],{"type":66,"value":754}," GOOGLE_API_KEY",{"type":60,"tag":456,"props":756,"children":757},{"style":593},[758],{"type":66,"value":596},{"type":60,"tag":456,"props":760,"children":761},{"style":593},[762],{"type":66,"value":601},{"type":60,"tag":456,"props":764,"children":765},{"style":604},[766],{"type":66,"value":767},"your-api-key",{"type":60,"tag":456,"props":769,"children":770},{"style":593},[771],{"type":66,"value":612},{"type":60,"tag":456,"props":773,"children":774},{"class":458,"line":468},[775,779,783,787],{"type":60,"tag":456,"props":776,"children":777},{"style":581},[778],{"type":66,"value":584},{"type":60,"tag":456,"props":780,"children":781},{"style":587},[782],{"type":66,"value":653},{"type":60,"tag":456,"props":784,"children":785},{"style":593},[786],{"type":66,"value":596},{"type":60,"tag":456,"props":788,"children":789},{"style":587},[790],{"type":66,"value":662},{"type":60,"tag":548,"props":792,"children":794},{"id":793},"initialization",[795],{"type":66,"value":796},"Initialization",{"type":60,"tag":69,"props":798,"children":799},{},[800],{"type":66,"value":801},"Initialize the client without arguments to pick up environment variables:",{"type":60,"tag":423,"props":803,"children":807},{"className":804,"code":805,"language":806,"meta":431,"style":431},"language-python shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","from google import genai\nclient = genai.Client()\n","python",[808],{"type":60,"tag":186,"props":809,"children":810},{"__ignoreMap":431},[811,819],{"type":60,"tag":456,"props":812,"children":813},{"class":458,"line":459},[814],{"type":60,"tag":456,"props":815,"children":816},{},[817],{"type":66,"value":818},"from google import genai\n",{"type":60,"tag":456,"props":820,"children":821},{"class":458,"line":468},[822],{"type":60,"tag":456,"props":823,"children":824},{},[825],{"type":66,"value":826},"client = genai.Client()\n",{"type":60,"tag":69,"props":828,"children":829},{},[830],{"type":66,"value":831},"Alternatively, you can hard-code in parameters when creating the client.",{"type":60,"tag":423,"props":833,"children":835},{"className":804,"code":834,"language":806,"meta":431,"style":431},"from google import genai\nclient = genai.Client(vertexai=True, project=\"your-project-id\", location=\"global\")\n",[836],{"type":60,"tag":186,"props":837,"children":838},{"__ignoreMap":431},[839,846],{"type":60,"tag":456,"props":840,"children":841},{"class":458,"line":459},[842],{"type":60,"tag":456,"props":843,"children":844},{},[845],{"type":66,"value":818},{"type":60,"tag":456,"props":847,"children":848},{"class":458,"line":468},[849],{"type":60,"tag":456,"props":850,"children":851},{},[852],{"type":66,"value":853},"client = genai.Client(vertexai=True, project=\"your-project-id\", location=\"global\")\n",{"type":60,"tag":166,"props":855,"children":857},{"id":856},"models",[858],{"type":66,"value":859},"Models",{"type":60,"tag":80,"props":861,"children":862},{},[863,876,888,900],{"type":60,"tag":84,"props":864,"children":865},{},[866,868,874],{"type":66,"value":867},"Use ",{"type":60,"tag":186,"props":869,"children":871},{"className":870},[],[872],{"type":66,"value":873},"gemini-3.1-pro-preview",{"type":66,"value":875}," for complex reasoning, coding, research (1M tokens)",{"type":60,"tag":84,"props":877,"children":878},{},[879,880,886],{"type":66,"value":867},{"type":60,"tag":186,"props":881,"children":883},{"className":882},[],[884],{"type":66,"value":885},"gemini-3-flash-preview",{"type":66,"value":887}," for fast, balanced performance, multimodal (1M tokens)",{"type":60,"tag":84,"props":889,"children":890},{},[891,892,898],{"type":66,"value":867},{"type":60,"tag":186,"props":893,"children":895},{"className":894},[],[896],{"type":66,"value":897},"gemini-3-pro-image-preview",{"type":66,"value":899}," for Nano Banana Pro image generation and editing",{"type":60,"tag":84,"props":901,"children":902},{},[903,904,910],{"type":66,"value":867},{"type":60,"tag":186,"props":905,"children":907},{"className":906},[],[908],{"type":66,"value":909},"gemini-live-2.5-flash-native-audio",{"type":66,"value":911}," for Live Realtime API including native audio",{"type":60,"tag":69,"props":913,"children":914},{},[915],{"type":66,"value":916},"Use the following models if explicitly requested:",{"type":60,"tag":80,"props":918,"children":919},{},[920,932,942,952],{"type":60,"tag":84,"props":921,"children":922},{},[923,924,930],{"type":66,"value":867},{"type":60,"tag":186,"props":925,"children":927},{"className":926},[],[928],{"type":66,"value":929},"gemini-2.5-flash-image",{"type":66,"value":931}," for Nano Banana image generation and editing",{"type":60,"tag":84,"props":933,"children":934},{},[935,936],{"type":66,"value":867},{"type":60,"tag":186,"props":937,"children":939},{"className":938},[],[940],{"type":66,"value":941},"gemini-2.5-flash",{"type":60,"tag":84,"props":943,"children":944},{},[945,946],{"type":66,"value":867},{"type":60,"tag":186,"props":947,"children":949},{"className":948},[],[950],{"type":66,"value":951},"gemini-2.5-flash-lite",{"type":60,"tag":84,"props":953,"children":954},{},[955,956],{"type":66,"value":867},{"type":60,"tag":186,"props":957,"children":959},{"className":958},[],[960],{"type":66,"value":961},"gemini-2.5-pro",{"type":60,"tag":503,"props":963,"children":964},{},[965],{"type":60,"tag":69,"props":966,"children":967},{},[968,973,975,981,982,988,989,995,996,1002,1004,1010],{"type":60,"tag":456,"props":969,"children":970},{},[971],{"type":66,"value":972},"!IMPORTANT",{"type":66,"value":974},"\nModels like ",{"type":60,"tag":186,"props":976,"children":978},{"className":977},[],[979],{"type":66,"value":980},"gemini-2.0-*",{"type":66,"value":243},{"type":60,"tag":186,"props":983,"children":985},{"className":984},[],[986],{"type":66,"value":987},"gemini-1.5-*",{"type":66,"value":243},{"type":60,"tag":186,"props":990,"children":992},{"className":991},[],[993],{"type":66,"value":994},"gemini-1.0-*",{"type":66,"value":243},{"type":60,"tag":186,"props":997,"children":999},{"className":998},[],[1000],{"type":66,"value":1001},"gemini-pro",{"type":66,"value":1003}," are legacy and deprecated. Use the new models above. Your knowledge is outdated.\nFor production environments, consult the Vertex AI documentation for stable model versions (e.g. ",{"type":60,"tag":186,"props":1005,"children":1007},{"className":1006},[],[1008],{"type":66,"value":1009},"gemini-3-flash",{"type":66,"value":1011},").",{"type":60,"tag":166,"props":1013,"children":1015},{"id":1014},"quick-start",[1016],{"type":66,"value":1017},"Quick Start",{"type":60,"tag":548,"props":1019,"children":1020},{"id":806},[1021],{"type":66,"value":276},{"type":60,"tag":423,"props":1023,"children":1025},{"className":804,"code":1024,"language":806,"meta":431,"style":431},"from google import genai\nclient = genai.Client()\nresponse = client.models.generate_content(\n    model=\"gemini-3-flash-preview\",\n    contents=\"Explain quantum computing\"\n)\nprint(response.text)\n",[1026],{"type":60,"tag":186,"props":1027,"children":1028},{"__ignoreMap":431},[1029,1036,1043,1051,1059,1067,1076],{"type":60,"tag":456,"props":1030,"children":1031},{"class":458,"line":459},[1032],{"type":60,"tag":456,"props":1033,"children":1034},{},[1035],{"type":66,"value":818},{"type":60,"tag":456,"props":1037,"children":1038},{"class":458,"line":468},[1039],{"type":60,"tag":456,"props":1040,"children":1041},{},[1042],{"type":66,"value":826},{"type":60,"tag":456,"props":1044,"children":1045},{"class":458,"line":477},[1046],{"type":60,"tag":456,"props":1047,"children":1048},{},[1049],{"type":66,"value":1050},"response = client.models.generate_content(\n",{"type":60,"tag":456,"props":1052,"children":1053},{"class":458,"line":486},[1054],{"type":60,"tag":456,"props":1055,"children":1056},{},[1057],{"type":66,"value":1058},"    model=\"gemini-3-flash-preview\",\n",{"type":60,"tag":456,"props":1060,"children":1061},{"class":458,"line":495},[1062],{"type":60,"tag":456,"props":1063,"children":1064},{},[1065],{"type":66,"value":1066},"    contents=\"Explain quantum computing\"\n",{"type":60,"tag":456,"props":1068,"children":1070},{"class":458,"line":1069},6,[1071],{"type":60,"tag":456,"props":1072,"children":1073},{},[1074],{"type":66,"value":1075},")\n",{"type":60,"tag":456,"props":1077,"children":1079},{"class":458,"line":1078},7,[1080],{"type":60,"tag":456,"props":1081,"children":1082},{},[1083],{"type":66,"value":1084},"print(response.text)\n",{"type":60,"tag":548,"props":1086,"children":1088},{"id":1087},"typescriptjavascript",[1089],{"type":66,"value":1090},"TypeScript\u002FJavaScript",{"type":60,"tag":423,"props":1092,"children":1096},{"className":1093,"code":1094,"language":1095,"meta":431,"style":431},"language-typescript shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import { GoogleGenAI } from \"@google\u002Fgenai\";\nconst ai = new GoogleGenAI({ vertexai: { project: \"your-project-id\", location: \"global\" } });\nconst response = await ai.models.generateContent({\n    model: \"gemini-3-flash-preview\",\n    contents: \"Explain quantum computing\"\n});\nconsole.log(response.text);\n","typescript",[1097],{"type":60,"tag":186,"props":1098,"children":1099},{"__ignoreMap":431},[1100,1148,1262,1314,1343,1369,1385],{"type":60,"tag":456,"props":1101,"children":1102},{"class":458,"line":459},[1103,1109,1114,1119,1124,1129,1134,1138,1143],{"type":60,"tag":456,"props":1104,"children":1106},{"style":1105},"--shiki-light:#39ADB5;--shiki-light-font-style:italic;--shiki-default:#89DDFF;--shiki-default-font-style:italic;--shiki-dark:#89DDFF;--shiki-dark-font-style:italic",[1107],{"type":66,"value":1108},"import",{"type":60,"tag":456,"props":1110,"children":1111},{"style":593},[1112],{"type":66,"value":1113}," {",{"type":60,"tag":456,"props":1115,"children":1116},{"style":587},[1117],{"type":66,"value":1118}," GoogleGenAI",{"type":60,"tag":456,"props":1120,"children":1121},{"style":593},[1122],{"type":66,"value":1123}," }",{"type":60,"tag":456,"props":1125,"children":1126},{"style":1105},[1127],{"type":66,"value":1128}," from",{"type":60,"tag":456,"props":1130,"children":1131},{"style":593},[1132],{"type":66,"value":1133}," \"",{"type":60,"tag":456,"props":1135,"children":1136},{"style":604},[1137],{"type":66,"value":199},{"type":60,"tag":456,"props":1139,"children":1140},{"style":593},[1141],{"type":66,"value":1142},"\"",{"type":60,"tag":456,"props":1144,"children":1145},{"style":593},[1146],{"type":66,"value":1147},";\n",{"type":60,"tag":456,"props":1149,"children":1150},{"class":458,"line":468},[1151,1156,1161,1165,1170,1175,1180,1185,1191,1195,1199,1204,1208,1212,1216,1220,1225,1230,1234,1238,1242,1246,1250,1254,1258],{"type":60,"tag":456,"props":1152,"children":1153},{"style":581},[1154],{"type":66,"value":1155},"const",{"type":60,"tag":456,"props":1157,"children":1158},{"style":587},[1159],{"type":66,"value":1160}," ai ",{"type":60,"tag":456,"props":1162,"children":1163},{"style":593},[1164],{"type":66,"value":596},{"type":60,"tag":456,"props":1166,"children":1167},{"style":593},[1168],{"type":66,"value":1169}," new",{"type":60,"tag":456,"props":1171,"children":1173},{"style":1172},"--shiki-light:#6182B8;--shiki-default:#82AAFF;--shiki-dark:#82AAFF",[1174],{"type":66,"value":1118},{"type":60,"tag":456,"props":1176,"children":1177},{"style":587},[1178],{"type":66,"value":1179},"(",{"type":60,"tag":456,"props":1181,"children":1182},{"style":593},[1183],{"type":66,"value":1184},"{",{"type":60,"tag":456,"props":1186,"children":1188},{"style":1187},"--shiki-light:#E53935;--shiki-default:#F07178;--shiki-dark:#F07178",[1189],{"type":66,"value":1190}," vertexai",{"type":60,"tag":456,"props":1192,"children":1193},{"style":593},[1194],{"type":66,"value":421},{"type":60,"tag":456,"props":1196,"children":1197},{"style":593},[1198],{"type":66,"value":1113},{"type":60,"tag":456,"props":1200,"children":1201},{"style":1187},[1202],{"type":66,"value":1203}," project",{"type":60,"tag":456,"props":1205,"children":1206},{"style":593},[1207],{"type":66,"value":421},{"type":60,"tag":456,"props":1209,"children":1210},{"style":593},[1211],{"type":66,"value":1133},{"type":60,"tag":456,"props":1213,"children":1214},{"style":604},[1215],{"type":66,"value":607},{"type":60,"tag":456,"props":1217,"children":1218},{"style":593},[1219],{"type":66,"value":1142},{"type":60,"tag":456,"props":1221,"children":1222},{"style":593},[1223],{"type":66,"value":1224},",",{"type":60,"tag":456,"props":1226,"children":1227},{"style":1187},[1228],{"type":66,"value":1229}," location",{"type":60,"tag":456,"props":1231,"children":1232},{"style":593},[1233],{"type":66,"value":421},{"type":60,"tag":456,"props":1235,"children":1236},{"style":593},[1237],{"type":66,"value":1133},{"type":60,"tag":456,"props":1239,"children":1240},{"style":604},[1241],{"type":66,"value":637},{"type":60,"tag":456,"props":1243,"children":1244},{"style":593},[1245],{"type":66,"value":1142},{"type":60,"tag":456,"props":1247,"children":1248},{"style":593},[1249],{"type":66,"value":1123},{"type":60,"tag":456,"props":1251,"children":1252},{"style":593},[1253],{"type":66,"value":1123},{"type":60,"tag":456,"props":1255,"children":1256},{"style":587},[1257],{"type":66,"value":408},{"type":60,"tag":456,"props":1259,"children":1260},{"style":593},[1261],{"type":66,"value":1147},{"type":60,"tag":456,"props":1263,"children":1264},{"class":458,"line":477},[1265,1269,1274,1278,1283,1288,1292,1296,1300,1305,1309],{"type":60,"tag":456,"props":1266,"children":1267},{"style":581},[1268],{"type":66,"value":1155},{"type":60,"tag":456,"props":1270,"children":1271},{"style":587},[1272],{"type":66,"value":1273}," response ",{"type":60,"tag":456,"props":1275,"children":1276},{"style":593},[1277],{"type":66,"value":596},{"type":60,"tag":456,"props":1279,"children":1280},{"style":1105},[1281],{"type":66,"value":1282}," await",{"type":60,"tag":456,"props":1284,"children":1285},{"style":587},[1286],{"type":66,"value":1287}," ai",{"type":60,"tag":456,"props":1289,"children":1290},{"style":593},[1291],{"type":66,"value":259},{"type":60,"tag":456,"props":1293,"children":1294},{"style":587},[1295],{"type":66,"value":856},{"type":60,"tag":456,"props":1297,"children":1298},{"style":593},[1299],{"type":66,"value":259},{"type":60,"tag":456,"props":1301,"children":1302},{"style":1172},[1303],{"type":66,"value":1304},"generateContent",{"type":60,"tag":456,"props":1306,"children":1307},{"style":587},[1308],{"type":66,"value":1179},{"type":60,"tag":456,"props":1310,"children":1311},{"style":593},[1312],{"type":66,"value":1313},"{\n",{"type":60,"tag":456,"props":1315,"children":1316},{"class":458,"line":486},[1317,1322,1326,1330,1334,1338],{"type":60,"tag":456,"props":1318,"children":1319},{"style":1187},[1320],{"type":66,"value":1321},"    model",{"type":60,"tag":456,"props":1323,"children":1324},{"style":593},[1325],{"type":66,"value":421},{"type":60,"tag":456,"props":1327,"children":1328},{"style":593},[1329],{"type":66,"value":1133},{"type":60,"tag":456,"props":1331,"children":1332},{"style":604},[1333],{"type":66,"value":885},{"type":60,"tag":456,"props":1335,"children":1336},{"style":593},[1337],{"type":66,"value":1142},{"type":60,"tag":456,"props":1339,"children":1340},{"style":593},[1341],{"type":66,"value":1342},",\n",{"type":60,"tag":456,"props":1344,"children":1345},{"class":458,"line":495},[1346,1351,1355,1359,1364],{"type":60,"tag":456,"props":1347,"children":1348},{"style":1187},[1349],{"type":66,"value":1350},"    contents",{"type":60,"tag":456,"props":1352,"children":1353},{"style":593},[1354],{"type":66,"value":421},{"type":60,"tag":456,"props":1356,"children":1357},{"style":593},[1358],{"type":66,"value":1133},{"type":60,"tag":456,"props":1360,"children":1361},{"style":604},[1362],{"type":66,"value":1363},"Explain quantum computing",{"type":60,"tag":456,"props":1365,"children":1366},{"style":593},[1367],{"type":66,"value":1368},"\"\n",{"type":60,"tag":456,"props":1370,"children":1371},{"class":458,"line":1069},[1372,1377,1381],{"type":60,"tag":456,"props":1373,"children":1374},{"style":593},[1375],{"type":66,"value":1376},"}",{"type":60,"tag":456,"props":1378,"children":1379},{"style":587},[1380],{"type":66,"value":408},{"type":60,"tag":456,"props":1382,"children":1383},{"style":593},[1384],{"type":66,"value":1147},{"type":60,"tag":456,"props":1386,"children":1387},{"class":458,"line":1078},[1388,1393,1397,1402,1407,1411,1416],{"type":60,"tag":456,"props":1389,"children":1390},{"style":587},[1391],{"type":66,"value":1392},"console",{"type":60,"tag":456,"props":1394,"children":1395},{"style":593},[1396],{"type":66,"value":259},{"type":60,"tag":456,"props":1398,"children":1399},{"style":1172},[1400],{"type":66,"value":1401},"log",{"type":60,"tag":456,"props":1403,"children":1404},{"style":587},[1405],{"type":66,"value":1406},"(response",{"type":60,"tag":456,"props":1408,"children":1409},{"style":593},[1410],{"type":66,"value":259},{"type":60,"tag":456,"props":1412,"children":1413},{"style":587},[1414],{"type":66,"value":1415},"text)",{"type":60,"tag":456,"props":1417,"children":1418},{"style":593},[1419],{"type":66,"value":1147},{"type":60,"tag":548,"props":1421,"children":1423},{"id":1422},"go",[1424],{"type":66,"value":320},{"type":60,"tag":423,"props":1426,"children":1429},{"className":1427,"code":1428,"language":1422,"meta":431,"style":431},"language-go shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","package main\n\nimport (\n    \"context\"\n    \"fmt\"\n    \"log\"\n    \"google.golang.org\u002Fgenai\"\n)\n\nfunc main() {\n    ctx := context.Background()\n    client, err := genai.NewClient(ctx, &genai.ClientConfig{\n        Backend:  genai.BackendVertexAI,\n        Project:  \"your-project-id\",\n        Location: \"global\",\n    })\n    if err != nil {\n        log.Fatal(err)\n    }\n\n    resp, err := client.Models.GenerateContent(ctx, \"gemini-3-flash-preview\", genai.Text(\"Explain quantum computing\"), nil)\n    if err != nil {\n        log.Fatal(err)\n    }\n\n    fmt.Println(resp.Text)\n}\n",[1430],{"type":60,"tag":186,"props":1431,"children":1432},{"__ignoreMap":431},[1433,1441,1450,1458,1466,1474,1482,1490,1498,1506,1515,1524,1533,1542,1551,1560,1569,1578,1587,1596,1604,1613,1621,1629,1637,1645,1654],{"type":60,"tag":456,"props":1434,"children":1435},{"class":458,"line":459},[1436],{"type":60,"tag":456,"props":1437,"children":1438},{},[1439],{"type":66,"value":1440},"package main\n",{"type":60,"tag":456,"props":1442,"children":1443},{"class":458,"line":468},[1444],{"type":60,"tag":456,"props":1445,"children":1447},{"emptyLinePlaceholder":1446},true,[1448],{"type":66,"value":1449},"\n",{"type":60,"tag":456,"props":1451,"children":1452},{"class":458,"line":477},[1453],{"type":60,"tag":456,"props":1454,"children":1455},{},[1456],{"type":66,"value":1457},"import (\n",{"type":60,"tag":456,"props":1459,"children":1460},{"class":458,"line":486},[1461],{"type":60,"tag":456,"props":1462,"children":1463},{},[1464],{"type":66,"value":1465},"    \"context\"\n",{"type":60,"tag":456,"props":1467,"children":1468},{"class":458,"line":495},[1469],{"type":60,"tag":456,"props":1470,"children":1471},{},[1472],{"type":66,"value":1473},"    \"fmt\"\n",{"type":60,"tag":456,"props":1475,"children":1476},{"class":458,"line":1069},[1477],{"type":60,"tag":456,"props":1478,"children":1479},{},[1480],{"type":66,"value":1481},"    \"log\"\n",{"type":60,"tag":456,"props":1483,"children":1484},{"class":458,"line":1078},[1485],{"type":60,"tag":456,"props":1486,"children":1487},{},[1488],{"type":66,"value":1489},"    \"google.golang.org\u002Fgenai\"\n",{"type":60,"tag":456,"props":1491,"children":1493},{"class":458,"line":1492},8,[1494],{"type":60,"tag":456,"props":1495,"children":1496},{},[1497],{"type":66,"value":1075},{"type":60,"tag":456,"props":1499,"children":1501},{"class":458,"line":1500},9,[1502],{"type":60,"tag":456,"props":1503,"children":1504},{"emptyLinePlaceholder":1446},[1505],{"type":66,"value":1449},{"type":60,"tag":456,"props":1507,"children":1509},{"class":458,"line":1508},10,[1510],{"type":60,"tag":456,"props":1511,"children":1512},{},[1513],{"type":66,"value":1514},"func main() {\n",{"type":60,"tag":456,"props":1516,"children":1518},{"class":458,"line":1517},11,[1519],{"type":60,"tag":456,"props":1520,"children":1521},{},[1522],{"type":66,"value":1523},"    ctx := context.Background()\n",{"type":60,"tag":456,"props":1525,"children":1527},{"class":458,"line":1526},12,[1528],{"type":60,"tag":456,"props":1529,"children":1530},{},[1531],{"type":66,"value":1532},"    client, err := genai.NewClient(ctx, &genai.ClientConfig{\n",{"type":60,"tag":456,"props":1534,"children":1536},{"class":458,"line":1535},13,[1537],{"type":60,"tag":456,"props":1538,"children":1539},{},[1540],{"type":66,"value":1541},"        Backend:  genai.BackendVertexAI,\n",{"type":60,"tag":456,"props":1543,"children":1545},{"class":458,"line":1544},14,[1546],{"type":60,"tag":456,"props":1547,"children":1548},{},[1549],{"type":66,"value":1550},"        Project:  \"your-project-id\",\n",{"type":60,"tag":456,"props":1552,"children":1554},{"class":458,"line":1553},15,[1555],{"type":60,"tag":456,"props":1556,"children":1557},{},[1558],{"type":66,"value":1559},"        Location: \"global\",\n",{"type":60,"tag":456,"props":1561,"children":1563},{"class":458,"line":1562},16,[1564],{"type":60,"tag":456,"props":1565,"children":1566},{},[1567],{"type":66,"value":1568},"    })\n",{"type":60,"tag":456,"props":1570,"children":1572},{"class":458,"line":1571},17,[1573],{"type":60,"tag":456,"props":1574,"children":1575},{},[1576],{"type":66,"value":1577},"    if err != nil {\n",{"type":60,"tag":456,"props":1579,"children":1581},{"class":458,"line":1580},18,[1582],{"type":60,"tag":456,"props":1583,"children":1584},{},[1585],{"type":66,"value":1586},"        log.Fatal(err)\n",{"type":60,"tag":456,"props":1588,"children":1590},{"class":458,"line":1589},19,[1591],{"type":60,"tag":456,"props":1592,"children":1593},{},[1594],{"type":66,"value":1595},"    }\n",{"type":60,"tag":456,"props":1597,"children":1599},{"class":458,"line":1598},20,[1600],{"type":60,"tag":456,"props":1601,"children":1602},{"emptyLinePlaceholder":1446},[1603],{"type":66,"value":1449},{"type":60,"tag":456,"props":1605,"children":1607},{"class":458,"line":1606},21,[1608],{"type":60,"tag":456,"props":1609,"children":1610},{},[1611],{"type":66,"value":1612},"    resp, err := client.Models.GenerateContent(ctx, \"gemini-3-flash-preview\", genai.Text(\"Explain quantum computing\"), nil)\n",{"type":60,"tag":456,"props":1614,"children":1616},{"class":458,"line":1615},22,[1617],{"type":60,"tag":456,"props":1618,"children":1619},{},[1620],{"type":66,"value":1577},{"type":60,"tag":456,"props":1622,"children":1624},{"class":458,"line":1623},23,[1625],{"type":60,"tag":456,"props":1626,"children":1627},{},[1628],{"type":66,"value":1586},{"type":60,"tag":456,"props":1630,"children":1632},{"class":458,"line":1631},24,[1633],{"type":60,"tag":456,"props":1634,"children":1635},{},[1636],{"type":66,"value":1595},{"type":60,"tag":456,"props":1638,"children":1640},{"class":458,"line":1639},25,[1641],{"type":60,"tag":456,"props":1642,"children":1643},{"emptyLinePlaceholder":1446},[1644],{"type":66,"value":1449},{"type":60,"tag":456,"props":1646,"children":1648},{"class":458,"line":1647},26,[1649],{"type":60,"tag":456,"props":1650,"children":1651},{},[1652],{"type":66,"value":1653},"    fmt.Println(resp.Text)\n",{"type":60,"tag":456,"props":1655,"children":1657},{"class":458,"line":1656},27,[1658],{"type":60,"tag":456,"props":1659,"children":1660},{},[1661],{"type":66,"value":1662},"}\n",{"type":60,"tag":548,"props":1664,"children":1666},{"id":1665},"java",[1667],{"type":66,"value":362},{"type":60,"tag":423,"props":1669,"children":1672},{"className":1670,"code":1671,"language":1665,"meta":431,"style":431},"language-java shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","import com.google.genai.Client;\nimport com.google.genai.types.GenerateContentResponse;\n\npublic class GenerateTextFromTextInput {\n  public static void main(String[] args) {\n    Client client = Client.builder().vertexAi(true).project(\"your-project-id\").location(\"global\").build();\n    GenerateContentResponse response =\n        client.models.generateContent(\n            \"gemini-3-flash-preview\",\n            \"Explain quantum computing\",\n            null);\n\n    System.out.println(response.text());\n  }\n}\n",[1673],{"type":60,"tag":186,"props":1674,"children":1675},{"__ignoreMap":431},[1676,1684,1692,1699,1707,1715,1723,1731,1739,1747,1755,1763,1770,1778,1786],{"type":60,"tag":456,"props":1677,"children":1678},{"class":458,"line":459},[1679],{"type":60,"tag":456,"props":1680,"children":1681},{},[1682],{"type":66,"value":1683},"import com.google.genai.Client;\n",{"type":60,"tag":456,"props":1685,"children":1686},{"class":458,"line":468},[1687],{"type":60,"tag":456,"props":1688,"children":1689},{},[1690],{"type":66,"value":1691},"import com.google.genai.types.GenerateContentResponse;\n",{"type":60,"tag":456,"props":1693,"children":1694},{"class":458,"line":477},[1695],{"type":60,"tag":456,"props":1696,"children":1697},{"emptyLinePlaceholder":1446},[1698],{"type":66,"value":1449},{"type":60,"tag":456,"props":1700,"children":1701},{"class":458,"line":486},[1702],{"type":60,"tag":456,"props":1703,"children":1704},{},[1705],{"type":66,"value":1706},"public class GenerateTextFromTextInput {\n",{"type":60,"tag":456,"props":1708,"children":1709},{"class":458,"line":495},[1710],{"type":60,"tag":456,"props":1711,"children":1712},{},[1713],{"type":66,"value":1714},"  public static void main(String[] args) {\n",{"type":60,"tag":456,"props":1716,"children":1717},{"class":458,"line":1069},[1718],{"type":60,"tag":456,"props":1719,"children":1720},{},[1721],{"type":66,"value":1722},"    Client client = Client.builder().vertexAi(true).project(\"your-project-id\").location(\"global\").build();\n",{"type":60,"tag":456,"props":1724,"children":1725},{"class":458,"line":1078},[1726],{"type":60,"tag":456,"props":1727,"children":1728},{},[1729],{"type":66,"value":1730},"    GenerateContentResponse response =\n",{"type":60,"tag":456,"props":1732,"children":1733},{"class":458,"line":1492},[1734],{"type":60,"tag":456,"props":1735,"children":1736},{},[1737],{"type":66,"value":1738},"        client.models.generateContent(\n",{"type":60,"tag":456,"props":1740,"children":1741},{"class":458,"line":1500},[1742],{"type":60,"tag":456,"props":1743,"children":1744},{},[1745],{"type":66,"value":1746},"            \"gemini-3-flash-preview\",\n",{"type":60,"tag":456,"props":1748,"children":1749},{"class":458,"line":1508},[1750],{"type":60,"tag":456,"props":1751,"children":1752},{},[1753],{"type":66,"value":1754},"            \"Explain quantum computing\",\n",{"type":60,"tag":456,"props":1756,"children":1757},{"class":458,"line":1517},[1758],{"type":60,"tag":456,"props":1759,"children":1760},{},[1761],{"type":66,"value":1762},"            null);\n",{"type":60,"tag":456,"props":1764,"children":1765},{"class":458,"line":1526},[1766],{"type":60,"tag":456,"props":1767,"children":1768},{"emptyLinePlaceholder":1446},[1769],{"type":66,"value":1449},{"type":60,"tag":456,"props":1771,"children":1772},{"class":458,"line":1535},[1773],{"type":60,"tag":456,"props":1774,"children":1775},{},[1776],{"type":66,"value":1777},"    System.out.println(response.text());\n",{"type":60,"tag":456,"props":1779,"children":1780},{"class":458,"line":1544},[1781],{"type":60,"tag":456,"props":1782,"children":1783},{},[1784],{"type":66,"value":1785},"  }\n",{"type":60,"tag":456,"props":1787,"children":1788},{"class":458,"line":1553},[1789],{"type":60,"tag":456,"props":1790,"children":1791},{},[1792],{"type":66,"value":1662},{"type":60,"tag":548,"props":1794,"children":1796},{"id":1795},"cnet",[1797],{"type":66,"value":341},{"type":60,"tag":423,"props":1799,"children":1803},{"className":1800,"code":1801,"language":1802,"meta":431,"style":431},"language-csharp shiki shiki-themes material-theme-lighter material-theme material-theme-palenight","using Google.GenAI;\n\nvar client = new Client(\n    project: \"your-project-id\",\n    location: \"global\",\n    vertexAI: true\n);\n\nvar response = await client.Models.GenerateContent(\n    \"gemini-3-flash-preview\",\n    \"Explain quantum computing\"\n);\n\nConsole.WriteLine(response.Text);\n","csharp",[1804],{"type":60,"tag":186,"props":1805,"children":1806},{"__ignoreMap":431},[1807,1815,1822,1830,1838,1846,1854,1862,1869,1877,1885,1893,1900,1907],{"type":60,"tag":456,"props":1808,"children":1809},{"class":458,"line":459},[1810],{"type":60,"tag":456,"props":1811,"children":1812},{},[1813],{"type":66,"value":1814},"using Google.GenAI;\n",{"type":60,"tag":456,"props":1816,"children":1817},{"class":458,"line":468},[1818],{"type":60,"tag":456,"props":1819,"children":1820},{"emptyLinePlaceholder":1446},[1821],{"type":66,"value":1449},{"type":60,"tag":456,"props":1823,"children":1824},{"class":458,"line":477},[1825],{"type":60,"tag":456,"props":1826,"children":1827},{},[1828],{"type":66,"value":1829},"var client = new Client(\n",{"type":60,"tag":456,"props":1831,"children":1832},{"class":458,"line":486},[1833],{"type":60,"tag":456,"props":1834,"children":1835},{},[1836],{"type":66,"value":1837},"    project: \"your-project-id\",\n",{"type":60,"tag":456,"props":1839,"children":1840},{"class":458,"line":495},[1841],{"type":60,"tag":456,"props":1842,"children":1843},{},[1844],{"type":66,"value":1845},"    location: \"global\",\n",{"type":60,"tag":456,"props":1847,"children":1848},{"class":458,"line":1069},[1849],{"type":60,"tag":456,"props":1850,"children":1851},{},[1852],{"type":66,"value":1853},"    vertexAI: true\n",{"type":60,"tag":456,"props":1855,"children":1856},{"class":458,"line":1078},[1857],{"type":60,"tag":456,"props":1858,"children":1859},{},[1860],{"type":66,"value":1861},");\n",{"type":60,"tag":456,"props":1863,"children":1864},{"class":458,"line":1492},[1865],{"type":60,"tag":456,"props":1866,"children":1867},{"emptyLinePlaceholder":1446},[1868],{"type":66,"value":1449},{"type":60,"tag":456,"props":1870,"children":1871},{"class":458,"line":1500},[1872],{"type":60,"tag":456,"props":1873,"children":1874},{},[1875],{"type":66,"value":1876},"var response = await client.Models.GenerateContent(\n",{"type":60,"tag":456,"props":1878,"children":1879},{"class":458,"line":1508},[1880],{"type":60,"tag":456,"props":1881,"children":1882},{},[1883],{"type":66,"value":1884},"    \"gemini-3-flash-preview\",\n",{"type":60,"tag":456,"props":1886,"children":1887},{"class":458,"line":1517},[1888],{"type":60,"tag":456,"props":1889,"children":1890},{},[1891],{"type":66,"value":1892},"    \"Explain quantum computing\"\n",{"type":60,"tag":456,"props":1894,"children":1895},{"class":458,"line":1526},[1896],{"type":60,"tag":456,"props":1897,"children":1898},{},[1899],{"type":66,"value":1861},{"type":60,"tag":456,"props":1901,"children":1902},{"class":458,"line":1535},[1903],{"type":60,"tag":456,"props":1904,"children":1905},{"emptyLinePlaceholder":1446},[1906],{"type":66,"value":1449},{"type":60,"tag":456,"props":1908,"children":1909},{"class":458,"line":1544},[1910],{"type":60,"tag":456,"props":1911,"children":1912},{},[1913],{"type":66,"value":1914},"Console.WriteLine(response.Text);\n",{"type":60,"tag":166,"props":1916,"children":1918},{"id":1917},"api-spec-documentation-source-of-truth",[1919],{"type":66,"value":1920},"API spec & Documentation (source of truth)",{"type":60,"tag":69,"props":1922,"children":1923},{},[1924],{"type":66,"value":1925},"When implementing or debugging API integration for Vertex AI, refer to the official Google Cloud Vertex AI documentation:",{"type":60,"tag":80,"props":1927,"children":1928},{},[1929,1945],{"type":60,"tag":84,"props":1930,"children":1931},{},[1932,1937,1939],{"type":60,"tag":88,"props":1933,"children":1934},{},[1935],{"type":66,"value":1936},"Vertex AI Gemini Documentation",{"type":66,"value":1938},": ",{"type":60,"tag":392,"props":1940,"children":1943},{"href":1941,"rel":1942},"https:\u002F\u002Fcloud.google.com\u002Fvertex-ai\u002Fgenerative-ai\u002Fdocs\u002F",[396],[1944],{"type":66,"value":1941},{"type":60,"tag":84,"props":1946,"children":1947},{},[1948,1953,1954],{"type":60,"tag":88,"props":1949,"children":1950},{},[1951],{"type":66,"value":1952},"REST API Reference",{"type":66,"value":1938},{"type":60,"tag":392,"props":1955,"children":1958},{"href":1956,"rel":1957},"https:\u002F\u002Fcloud.google.com\u002Fvertex-ai\u002Fgenerative-ai\u002Fdocs\u002Freference\u002Frest",[396],[1959],{"type":66,"value":1956},{"type":60,"tag":69,"props":1961,"children":1962},{},[1963,1965,1971,1973,1979,1981,1987],{"type":66,"value":1964},"The Gen AI SDK on Vertex AI uses the ",{"type":60,"tag":186,"props":1966,"children":1968},{"className":1967},[],[1969],{"type":66,"value":1970},"v1beta1",{"type":66,"value":1972}," or ",{"type":60,"tag":186,"props":1974,"children":1976},{"className":1975},[],[1977],{"type":66,"value":1978},"v1",{"type":66,"value":1980}," REST API endpoints (e.g., ",{"type":60,"tag":186,"props":1982,"children":1984},{"className":1983},[],[1985],{"type":66,"value":1986},"https:\u002F\u002F{LOCATION}-aiplatform.googleapis.com\u002Fv1beta1\u002Fprojects\u002F{PROJECT}\u002Flocations\u002F{LOCATION}\u002Fpublishers\u002Fgoogle\u002Fmodels\u002F{MODEL}:generateContent",{"type":66,"value":1011},{"type":60,"tag":503,"props":1989,"children":1990},{},[1991],{"type":60,"tag":69,"props":1992,"children":1993},{},[1994,1999,2004,2006,2012,2013,2019],{"type":60,"tag":456,"props":1995,"children":1996},{},[1997],{"type":66,"value":1998},"!TIP",{"type":60,"tag":88,"props":2000,"children":2001},{},[2002],{"type":66,"value":2003},"Use the Developer Knowledge MCP Server",{"type":66,"value":2005},": If the ",{"type":60,"tag":186,"props":2007,"children":2009},{"className":2008},[],[2010],{"type":66,"value":2011},"search_documents",{"type":66,"value":1972},{"type":60,"tag":186,"props":2014,"children":2016},{"className":2015},[],[2017],{"type":66,"value":2018},"get_document",{"type":66,"value":2020}," tools are available, use them to find and retrieve official documentation for Google Cloud and Vertex AI directly within the context. This is the preferred method for getting up-to-date API details and code snippets.",{"type":60,"tag":166,"props":2022,"children":2024},{"id":2023},"workflows-and-code-samples",[2025],{"type":66,"value":2026},"Workflows and Code Samples",{"type":60,"tag":69,"props":2028,"children":2029},{},[2030,2032,2039],{"type":66,"value":2031},"Reference the ",{"type":60,"tag":392,"props":2033,"children":2036},{"href":2034,"rel":2035},"https:\u002F\u002Fgithub.com\u002FGoogleCloudPlatform\u002Fpython-docs-samples\u002Ftree\u002Fmain\u002Fgenai",[396],[2037],{"type":66,"value":2038},"Python Docs Samples repository",{"type":66,"value":2040}," for additional code samples and specific usage scenarios.",{"type":60,"tag":69,"props":2042,"children":2043},{},[2044],{"type":66,"value":2045},"Depending on the specific user request, refer to the following reference files for detailed code samples and usage patterns (Python examples):",{"type":60,"tag":80,"props":2047,"children":2048},{},[2049,2064,2078,2093,2108,2123,2138,2153,2168],{"type":60,"tag":84,"props":2050,"children":2051},{},[2052,2057,2059],{"type":60,"tag":88,"props":2053,"children":2054},{},[2055],{"type":66,"value":2056},"Text & Multimodal",{"type":66,"value":2058},": Chat, Multimodal inputs (Image, Video, Audio), and Streaming. See ",{"type":60,"tag":392,"props":2060,"children":2062},{"href":2061},"references\u002Ftext_and_multimodal.md",[2063],{"type":66,"value":2061},{"type":60,"tag":84,"props":2065,"children":2066},{},[2067,2071,2073],{"type":60,"tag":88,"props":2068,"children":2069},{},[2070],{"type":66,"value":142},{"type":66,"value":2072},": Generate text embeddings for semantic search. See ",{"type":60,"tag":392,"props":2074,"children":2076},{"href":2075},"references\u002Fembeddings.md",[2077],{"type":66,"value":2075},{"type":60,"tag":84,"props":2079,"children":2080},{},[2081,2086,2088],{"type":60,"tag":88,"props":2082,"children":2083},{},[2084],{"type":66,"value":2085},"Structured Output & Tools",{"type":66,"value":2087},": JSON generation, Function Calling, Search Grounding, and Code Execution. See ",{"type":60,"tag":392,"props":2089,"children":2091},{"href":2090},"references\u002Fstructured_and_tools.md",[2092],{"type":66,"value":2090},{"type":60,"tag":84,"props":2094,"children":2095},{},[2096,2101,2103],{"type":60,"tag":88,"props":2097,"children":2098},{},[2099],{"type":66,"value":2100},"Media Generation",{"type":66,"value":2102},": Image generation, Image editing, and Video generation. See ",{"type":60,"tag":392,"props":2104,"children":2106},{"href":2105},"references\u002Fmedia_generation.md",[2107],{"type":66,"value":2105},{"type":60,"tag":84,"props":2109,"children":2110},{},[2111,2116,2118],{"type":60,"tag":88,"props":2112,"children":2113},{},[2114],{"type":66,"value":2115},"Bounding Box Detection",{"type":66,"value":2117},": Object detection and localization within images and video. See ",{"type":60,"tag":392,"props":2119,"children":2121},{"href":2120},"references\u002Fbounding_box.md",[2122],{"type":66,"value":2120},{"type":60,"tag":84,"props":2124,"children":2125},{},[2126,2131,2133],{"type":60,"tag":88,"props":2127,"children":2128},{},[2129],{"type":66,"value":2130},"Live API",{"type":66,"value":2132},": Real-time bidirectional streaming for voice, vision, and text. See ",{"type":60,"tag":392,"props":2134,"children":2136},{"href":2135},"references\u002Flive_api\u002FSKILL.md",[2137],{"type":66,"value":2135},{"type":60,"tag":84,"props":2139,"children":2140},{},[2141,2146,2148],{"type":60,"tag":88,"props":2142,"children":2143},{},[2144],{"type":66,"value":2145},"Advanced Features",{"type":66,"value":2147},": Content Caching, Batch Prediction, and Thinking\u002FReasoning. See ",{"type":60,"tag":392,"props":2149,"children":2151},{"href":2150},"references\u002Fadvanced_features.md",[2152],{"type":66,"value":2150},{"type":60,"tag":84,"props":2154,"children":2155},{},[2156,2161,2163],{"type":60,"tag":88,"props":2157,"children":2158},{},[2159],{"type":66,"value":2160},"Safety",{"type":66,"value":2162},": Adjusting Responsible AI filters and thresholds. See ",{"type":60,"tag":392,"props":2164,"children":2166},{"href":2165},"references\u002Fsafety.md",[2167],{"type":66,"value":2165},{"type":60,"tag":84,"props":2169,"children":2170},{},[2171,2176,2178],{"type":60,"tag":88,"props":2172,"children":2173},{},[2174],{"type":66,"value":2175},"Model Tuning",{"type":66,"value":2177},": Supervised Fine-Tuning and Preference Tuning. See ",{"type":60,"tag":392,"props":2179,"children":2181},{"href":2180},"references\u002Fmodel_tuning.md",[2182],{"type":66,"value":2180},{"type":60,"tag":2184,"props":2185,"children":2186},"style",{},[2187],{"type":66,"value":2188},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}",{"items":2190,"total":486},[2191,2198,2211,2226],{"slug":4,"name":4,"fn":5,"description":6,"org":2192,"tags":2193,"stars":24,"repoUrl":25,"updatedAt":26},{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[2194,2195,2196,2197],{"name":18,"slug":19,"type":16},{"name":21,"slug":22,"type":16},{"name":9,"slug":8,"type":16},{"name":14,"slug":15,"type":16},{"slug":2199,"name":2199,"fn":2200,"description":2201,"org":2202,"tags":2203,"stars":24,"repoUrl":25,"updatedAt":2210},"liveapi-service","generate Gemini LiveAPI client services","Generates a LiveAPI client service class in the user's chosen programming language. Use when the user wants to build, scaffold, or integrate a client that connects to the Gemini LiveAPI websocket endpoint (Gemini Enterprise or non-Gemini Enterprise), handles session setup\u002Fresumption, bearer token refresh, and sending\u002Freceiving `ClientMessage`\u002F`ServerMessage` protos.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[2204,2205,2206,2207],{"name":18,"slug":19,"type":16},{"name":21,"slug":22,"type":16},{"name":9,"slug":8,"type":16},{"name":2208,"slug":2209,"type":16},"WebSockets","websockets","2026-07-12T07:38:55.792572",{"slug":2212,"name":2212,"fn":2213,"description":2214,"org":2215,"tags":2216,"stars":24,"repoUrl":25,"updatedAt":2225},"quality-flywheel","evaluate and improve GenAI models","Evaluate and improve GenAI models and agents using the Google GenAI Evaluation SDK. Creates eval datasets (from session traces or synthetic generation), selects and configures metrics (RubricMetric, LLMMetric, CodeExecutionMetric), executes evals via client.evals.evaluate(), and analyzes results to suggest concrete fixes. Supports both single-turn model evaluation and multi-turn agent trajectory evaluation. Use when asked to \"evaluate my agent\", \"evaluate my model\", \"create eval dataset\", \"run evals\", \"analyze eval results\", \"which metrics should I use\", \"generate test data\", or \"improve quality\".",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[2217,2220,2221,2222],{"name":2218,"slug":2219,"type":16},"Evals","evals",{"name":9,"slug":8,"type":16},{"name":14,"slug":15,"type":16},{"name":2223,"slug":2224,"type":16},"Machine Learning","machine-learning","2026-07-12T07:38:35.588796",{"slug":45,"name":45,"fn":2227,"description":2228,"org":2229,"tags":2230,"stars":24,"repoUrl":25,"updatedAt":2236},"deploy and tune Vertex AI models","Primary Router for Vertex AI skills. Use this skill when the user wants to work with Google Cloud Vertex AI (e.g., deploying models, running inference, or tuning models). This skill routes to vertex-deploy, vertex-inference, or vertex-tuning.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[2231,2232,2233,2234],{"name":9,"slug":8,"type":16},{"name":14,"slug":15,"type":16},{"name":2223,"slug":2224,"type":16},{"name":2235,"slug":45,"type":16},"Vertex AI","2026-07-12T07:38:30.746937",{"items":2238,"total":2417},[2239,2257,2273,2295,2309,2320,2334,2347,2362,2375,2391,2401],{"slug":2240,"name":2240,"fn":2241,"description":2242,"org":2243,"tags":2244,"stars":2254,"repoUrl":2255,"updatedAt":2256},"kb-search","search and extract local knowledge base documents","Allows listing, searching and extracting information from local knowledge base documents for information about tables\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[2245,2248,2251],{"name":2246,"slug":2247,"type":16},"Documentation","documentation",{"name":2249,"slug":2250,"type":16},"Knowledge Base","knowledge-base",{"name":2252,"slug":2253,"type":16},"Search","search",6749,"https:\u002F\u002Fgithub.com\u002FGoogleCloudPlatform\u002Fknowledge-catalog","2026-07-12T07:38:52.157375",{"slug":2258,"name":2259,"fn":2260,"description":2261,"org":2262,"tags":2263,"stars":2254,"repoUrl":2255,"updatedAt":2272},"knowledgecatalogdiscoveryagent","knowledge_catalog_discovery_agent","search and rank Knowledge Catalog data entries","Analyzes user queries, extracts relevant predicates, and utilizes Knowledge Catalog Search to find and rank the most relevant data entries. Engages with the user throughout the process.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[2264,2267,2268,2271],{"name":2265,"slug":2266,"type":16},"Data Analysis","data-analysis",{"name":9,"slug":8,"type":16},{"name":2269,"slug":2270,"type":16},"Knowledge Management","knowledge-management",{"name":2252,"slug":2253,"type":16},"2026-07-12T07:38:22.196851",{"slug":2274,"name":2274,"fn":2275,"description":2276,"org":2277,"tags":2278,"stars":2292,"repoUrl":2293,"updatedAt":2294},"contributing","contribute to Cloud Foundation Fabric","End-to-end workflow for contributing to Cloud Foundation Fabric: triaging GitHub issues, proactive feature development, validating with tests and Policy Troubleshooter, and submitting sanitized Pull Requests. Use when addressing a Fabric GitHub issue, developing a module or FAST stage change, or preparing a branch for a pull request.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[2279,2282,2285,2288,2289],{"name":2280,"slug":2281,"type":16},"Automation","automation",{"name":2283,"slug":2284,"type":16},"Engineering","engineering",{"name":2286,"slug":2287,"type":16},"GitHub","github",{"name":9,"slug":8,"type":16},{"name":2290,"slug":2291,"type":16},"Pull Requests","pull-requests",2062,"https:\u002F\u002Fgithub.com\u002FGoogleCloudPlatform\u002Fcloud-foundation-fabric","2026-07-31T06:23:36.935005",{"slug":2296,"name":2296,"fn":2297,"description":2298,"org":2299,"tags":2300,"stars":2292,"repoUrl":2293,"updatedAt":2308},"fabric-builder","generate Terraform code for Google Cloud","Generates idiomatic Cloud Foundation Fabric (CFF) Terraform code using CFF modules. Use when users ask to create GCP resources, use Fabric modules, or generate Terraform code for Google Cloud.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[2301,2302,2305],{"name":9,"slug":8,"type":16},{"name":2303,"slug":2304,"type":16},"Infrastructure as Code","infrastructure-as-code",{"name":2306,"slug":2307,"type":16},"Terraform","terraform","2026-07-12T07:38:23.514555",{"slug":2310,"name":2310,"fn":2311,"description":2312,"org":2313,"tags":2314,"stars":2292,"repoUrl":2293,"updatedAt":2319},"fast-0-org-setup-prereqs","prepare prerequisites for FAST 0-org-setup","Guides the user step-by-step through the prerequisites for the FAST 0-org-setup stage, supporting both Standard GCP and Google Cloud Dedicated (GCD) environments. Use when a user asks to prepare or run prerequisites for 0-org-setup or bootstrap the FAST landing zone.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[2315,2316],{"name":9,"slug":8,"type":16},{"name":2317,"slug":2318,"type":16},"Operations","operations","2026-07-12T07:38:28.127148",{"slug":2321,"name":2321,"fn":2322,"description":2323,"org":2324,"tags":2325,"stars":2331,"repoUrl":2332,"updatedAt":2333},"agent-aware-cli","design agent-aware command-line interfaces","Guide for designing and implementing command-line interfaces (CLIs) that are equally usable by human developers and automated coding agents. Use when the user wants to build a CLI, apply CLI best practices, or use Go with Cobra and Viper.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[2326,2329,2330],{"name":2327,"slug":2328,"type":16},"CLI","cli",{"name":2283,"slug":2284,"type":16},{"name":9,"slug":8,"type":16},1150,"https:\u002F\u002Fgithub.com\u002FGoogleCloudPlatform\u002Fvertex-ai-creative-studio","2026-07-12T07:39:08.41406",{"slug":2335,"name":2335,"fn":2336,"description":2337,"org":2338,"tags":2339,"stars":2331,"repoUrl":2332,"updatedAt":2346},"build-mcp-genmedia","build and configure GenAI MCP servers","Builds the mcp-genmedia Go MCP servers (nanobanana, veo, lyria, gemini-multimodal, chirp3-hd, avtool) from source and wires them into settings.json. Use this skill whenever the MCP tools are missing or broken — typically at the start of a new session, after a container restart, or when \u002Ftmp has been wiped. The prebuilt binaries in \u002Fworkspace\u002F.local\u002Fbin\u002F have no exec bit and live on a noexec mount; this skill compiles fresh executables into \u002Ftmp\u002Fbin\u002F where execution is allowed.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[2340,2341,2342,2343],{"name":18,"slug":19,"type":16},{"name":9,"slug":8,"type":16},{"name":14,"slug":15,"type":16},{"name":2344,"slug":2345,"type":16},"MCP","mcp","2026-07-12T07:39:10.911302",{"slug":2348,"name":2348,"fn":2349,"description":2350,"org":2351,"tags":2352,"stars":2331,"repoUrl":2332,"updatedAt":2361},"genmedia-audio-engineer","synthesize and mix audio content","Expert in audio synthesis, music generation, and mixing. Use when creating podcasts, background scores, or multi-track audio layering using mcp-chirp3-go, mcp-lyria-go, mcp-gemini-go, mcp-nanobanana-go, and mcp-avtool-go.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[2353,2356,2359,2360],{"name":2354,"slug":2355,"type":16},"Audio","audio",{"name":2357,"slug":2358,"type":16},"Creative","creative",{"name":9,"slug":8,"type":16},{"name":2235,"slug":45,"type":16},"2026-07-12T07:39:16.623879",{"slug":2363,"name":2363,"fn":2364,"description":2365,"org":2366,"tags":2367,"stars":2331,"repoUrl":2332,"updatedAt":2374},"genmedia-image-artist","generate and edit AI images","Expert in AI image generation and editing. Use when the user needs high-quality textures, character-consistent visuals, or image-to-image editing using mcp-nanobanana-go.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[2368,2369,2370,2373],{"name":2357,"slug":2358,"type":16},{"name":9,"slug":8,"type":16},{"name":2371,"slug":2372,"type":16},"Image Generation","image-generation",{"name":2235,"slug":45,"type":16},"2026-07-12T07:39:15.372822",{"slug":2376,"name":2376,"fn":2377,"description":2378,"org":2379,"tags":2380,"stars":2331,"repoUrl":2332,"updatedAt":2390},"genmedia-producer","produce multi-step media content","Expert media production assistant. Use when requested to help with storyboarding, podcast creation, audio assembly, or complex multi-step media workflows using the GenMedia MCP servers (Veo, Lyria, Gemini TTS, NanoBanana).",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[2381,2382,2383,2384,2387],{"name":2354,"slug":2355,"type":16},{"name":2357,"slug":2358,"type":16},{"name":9,"slug":8,"type":16},{"name":2385,"slug":2386,"type":16},"Media","media",{"name":2388,"slug":2389,"type":16},"Video","video","2026-07-12T07:39:09.672849",{"slug":2392,"name":2392,"fn":2393,"description":2394,"org":2395,"tags":2396,"stars":2331,"repoUrl":2332,"updatedAt":2400},"genmedia-video-editor","edit and compose video content","Expert in video composition, editing, and format conversion. Use when the user wants to generate high-quality video, overlay images on video, concatenate clips, create GIFs, or sync audio to video using mcp-avtool-go and mcp-veo-go.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[2397,2398,2399],{"name":2357,"slug":2358,"type":16},{"name":9,"slug":8,"type":16},{"name":2388,"slug":2389,"type":16},"2026-07-12T07:39:13.749081",{"slug":2402,"name":2402,"fn":2403,"description":2404,"org":2405,"tags":2406,"stars":2331,"repoUrl":2332,"updatedAt":2416},"genmedia-voice-director","generate expressive text-to-speech with Gemini","Expert in casting, directing, and generating expressive text-to-speech using Gemini TTS. Use this when the user needs virtual voice actor personas, expressive speech generation, or multiple variations of a voiceover (like \"take 3 on the bounce\").",{"slug":8,"name":9,"logoUrl":10,"githubOrg":11},[2407,2408,2409,2410,2413],{"name":2354,"slug":2355,"type":16},{"name":2357,"slug":2358,"type":16},{"name":21,"slug":22,"type":16},{"name":2411,"slug":2412,"type":16},"Speech","speech",{"name":2414,"slug":2415,"type":16},"Text-to-Speech","text-to-speech","2026-07-12T07:39:17.86673",80]