﻿---
title: Gemini 3 tool calls fail on a Google Vertex AI inference endpoint
description: Troubleshooting guide for Gemini 3 tool-call failures on a Google Vertex AI inference endpoint in Elastic Agent Builder.
url: https://www.elastic.co/docs/explore-analyze/ai-features/agent-builder/troubleshooting/gemini-3-vertex-tool-calls
products:
  - Elastic Documentation
  - Elastic Observability
  - Elastic Security
  - Elasticsearch
  - Kibana
applies_to:
  - Elastic Cloud Serverless: Unavailable
  - Elastic Stack: Generally available in 9.3, Preview in 9.2
---

# Gemini 3 tool calls fail on a Google Vertex AI inference endpoint
On Stack 9.2 and 9.3, Elastic Agent Builder tool calls fail when using a Gemini 3.x model through a Google Vertex AI inference endpoint configured in [External inference](https://www.elastic.co/docs/explore-analyze/elastic-inference/external), even though endpoint creation succeeds.
<applies-to>Elastic Stack: Generally available in 9.3</applies-to> Gemini 3.x models remain supported through the [Elastic Inference Service (EIS)](https://www.elastic.co/docs/explore-analyze/elastic-inference/eis).

## Symptoms

- The agent fails when it tries to call a tool. You get no tool result.
- The error includes status `400` and `thought_signature`. For example:
  ```json
  Error: Received an unsuccessful status code for request from inference entity id [<inference_id>] status [400]. Function call is missing a thought_signature in functionCall parts. This is required for tools to work correctly, and missing thought_signature may lead to degraded model performance.
  ```
  `<inference_id>` is the ID of the Google Vertex AI endpoint Elastic Agent Builder is using.


## Resolution

You can choose one of the following options:
- [Upgrade](#upgrade) to Stack 9.5.6 or later.
- [Create a new endpoint that uses a Gemini 2.x model](#use-a-gemini-2.x-model).
- <applies-to>Elastic Stack: Generally available in 9.3</applies-to> [Use Gemini 3.x models through EIS](#use-gemini-3.x-through-eis).


### Upgrade

Upgrade your cluster to Stack 9.5.6 or later. For instructions, refer to [Upgrade your deployment or cluster](https://www.elastic.co/docs/deploy-manage/upgrade/deployment-or-cluster).

### Use a Gemini 2.x model

Create a new Google Vertex AI endpoint that uses a Gemini 2.x model. The model ID of an existing endpoint cannot be changed. For example:
```json

{
  "service": "googlevertexai",
  "service_settings": {
    "service_account_json": "<service_account_json>", <2>
    "model_id": "gemini-2.5-flash",
    "project_id": "<project_id>", <3>
    "location": "<location>" <4>
  }
}
```

Select this endpoint in the [model selector](/docs/explore-analyze/ai-features/agent-builder/models#switch-models-in-the-ui). For the full field list, refer to [Create a Google Vertex AI inference endpoint](https://www.elastic.co/docs/api/doc/elasticsearch/operation/operation-inference-put-googlevertexai).

### Use Gemini 3.x through EIS

<applies-to>
  - Elastic Stack: Generally available in 9.3
</applies-to>

Gemini 3.x models are available through the [Elastic Inference Service (EIS)](https://www.elastic.co/docs/explore-analyze/elastic-inference/eis). EIS is automatically available on Elastic Cloud Serverless projects and Elastic Cloud Hosted deployments. On Elastic Cloud Enterprise, Elastic Cloud on Kubernetes, and self-managed deployments, [connect the cluster to EIS](https://www.elastic.co/docs/explore-analyze/elastic-inference/connect-self-managed-cluster-to-eis) first.
To use a Gemini 3.x model on EIS, select it in the [model selector](/docs/explore-analyze/ai-features/agent-builder/chat#select-a-different-model).

## Resources

- [Recommended models](/docs/explore-analyze/ai-features/agent-builder/models#recommended-models)
- [Elastic Inference Service](https://www.elastic.co/docs/explore-analyze/elastic-inference/eis)