> ## Documentation Index
> Fetch the complete documentation index at: https://docs.sentivue.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Vertex AI Gemini Live

> Connect Vertex AI Gemini Live to SentiVue Talk

Vertex AI Gemini Live runs Google's **speech-to-speech** models through your own Google Cloud project, authenticated by a service account instead of an API key.

This is a different connection from [Gemini Live](/talk/configurations/providers/google-gemini-live), which reaches the same family of models with an AI Studio key. Use this one when you need Google Cloud billing, IAM controls, or data kept in a specific region. It is also separate from [Vertex AI Gemini](/talk/configurations/providers/vertex-ai), which serves Vertex Gemini as a standard language model.

## What you need

| Field                | Required |
| -------------------- | -------- |
| Service-account JSON | Yes      |

## Getting a service-account JSON

1. In the [Google Cloud Console](https://console.cloud.google.com/), select or create a project.
2. Enable the **Vertex AI API** (`aiplatform.googleapis.com`) on that project.
3. Go to **IAM & Admin → Service Accounts** and create one.
4. Grant it the **Vertex AI User** role (`roles/aiplatform.user`).
5. Open its **Keys** tab, choose **Add Key → Create new key**, and select **JSON**.
6. The file downloads once. Store it securely and treat it as a secret.

Upload the file as-is, including `private_key` and `client_email`. The project ID is read out of the JSON, so you do not type it — supplying a different one authenticates as the service account but targets another project, which fails mid-call with a 403.

## Adding the connection

1. Go to **Connections** and choose **Vertex AI Gemini Live**.
2. Use **Upload JSON** to attach the service-account file.
3. Save.

SentiVue Talk checks the credential with Google as you save. That confirms the service account authenticates — it does not confirm the project has the API enabled or the right role, which surface on the first call.

## What you can select afterwards

Choose your model on [Model Configurations](/talk/configurations/inference-providers).

**Model** — Google's native-audio Live model on Vertex. See Google's [Live API documentation](https://cloud.google.com/vertex-ai/generative-ai/docs/live-api).

**Voice** — the same voices as the AI Studio [Gemini Live](/talk/configurations/providers/google-gemini-live) connection, selected by name.

**Language** — the same set as the AI Studio Gemini Live connection.

**Region** — set per workflow, not on the connection, and it defaults to `us-central1`. The credentials and project ID stay on the connection, so they do not appear in the workflow's model settings.

## How a speech-to-speech call differs

A speech-to-speech model replaces the transcriber and the voice provider. When a workflow is set to realtime, those two settings no longer apply — the model hears the caller and speaks back itself.

* **The voice comes from the model.** You cannot pair a Gemini Live model with a voice from another provider.
* **You still need a language model configured.** It runs the work the realtime model does not — extracting variables and running post-call QA analysis. Without one, those features silently produce nothing. See [Realtime](/talk/configurations/realtime).
* **Moving between nodes reconnects the session.** Gemini Live cannot change its instructions mid-session, so a node transition restarts it. The reconnect waits until the agent has finished speaking, so the caller does not hear it cut off.
* **Context compaction does not apply.** It is a text-mode feature and has no effect in realtime mode.
* **You still get a transcript.** Both sides of the call are transcribed for the run record, so [tracing](/talk/configurations/tracing) and post-call analysis work as usual.

## Troubleshooting

<AccordionGroup>
  <Accordion title="The credential is rejected when saving">
    Paste the full service-account JSON key file, not an AI Studio API key. An API key belongs on the [Gemini Live](/talk/configurations/providers/google-gemini-live) connection instead. Check that the file is the complete JSON object, including the private key.
  </Accordion>

  <Accordion title="Calls fail with a 403">
    Either the **Vertex AI API** is not enabled on the project, or the service account is missing the **Vertex AI User** role. A 403 that appears at call time but not on save usually means the role rather than the credential.
  </Accordion>

  <Accordion title="The workflow still uses a separate voice and transcriber">
    The workflow is not set to realtime. Switch it over on [Model Configurations](/talk/configurations/inference-providers), then pick the Vertex AI Gemini Live model — the transcriber and voice settings stop applying at that point.
  </Accordion>
</AccordionGroup>

## Related providers

| Provider                                                         | Use it for                                 |
| ---------------------------------------------------------------- | ------------------------------------------ |
| [Gemini Live](/talk/configurations/providers/google-gemini-live) | The same models with an AI Studio API key  |
| [Vertex AI Gemini](/talk/configurations/providers/vertex-ai)     | Vertex Gemini as a standard language model |
| [Realtime](/talk/configurations/realtime)                        | The other speech-to-speech providers       |
