Antworten für Gemini-Modelle fundieren

Mit Vertex AI können Sie Modellausgaben so fundieren:

  • Mit der Google Suche fundieren – Ein Modell mit öffentlich verfügbaren Webdaten fundieren.
  • Fundierung auf Ihren eigenen Daten – Fundieren Sie ein Modell mit Ihren eigenen Daten aus Vertex AI Search als Datenspeicher (Vorschau).

Fundierung mit der Google Suche

Verwenden Sie Fundierung mit der Google Suche, wenn Sie das Modell mit Weltwissen, einer Vielzahl von Themen oder aktuellen Informationen im Internet verbinden möchten.

Wenn Sie diese Funktion verwenden, muss ein Einstiegspunkt für die Google Suche angezeigt werden. Weitere Informationen zu den Anforderungen finden Sie unter Einstiegspunkt für die Google Suche.

Weitere Informationen zur Fundierung in Vertex AI finden Sie im Fundierungs-Überblick.

Unterstützte Modelle

Die folgenden Modelle unterstützen Grounding:

  • Gemini 1.5 Pro nur mit Texteingabe
  • Gemini 1.5 Flash nur mit Texteingabe
  • Gemini 1.0 Pro nur mit Texteingabe

Unterstützte Sprachen

  • Englisch (en)
  • Spanisch (es)
  • Japanisch (ja)

Gehen Sie nach der folgenden Anleitung vor, um ein Modell mit öffentlich verfügbaren Webdaten zu fundieren.

Hinweise

  • Wenn Sie die Fundierung mit der Google Suche verwenden möchten, müssen Sie einen Einstiegspunkt für die Google Suche aktivieren. Weitere Informationen finden Sie unter Einstiegspunkt für die Google Suche.

  • Die idealen Ergebnisse erzielen Sie mit einer Temperatur von 0.0. Weitere Informationen zum Festlegen dieser Konfiguration finden Sie unter Gemini API-Anfragetext in der Modellreferenz.

  • Die Fundierung mit der Google Suche ist auf eine Million Abfragen pro Tag beschränkt. Falls Sie mehr benötigen, wenden Sie sich an Ihr Supportteam.

REST

Ersetzen Sie diese Werte in den folgenden Anfragedaten:

  • LOCATION: Die Region, in der die Anfrage verarbeitet werden soll.
  • PROJECT_ID: Ihre Projekt-ID.
  • MODEL_ID: Die Modell-ID des multimodalen Modells.
  • TEXT: Die Textanleitung, die in den Prompt eingefügt werden soll.

HTTP-Methode und URL:

POST https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_ID:generateContent

JSON-Text anfordern:

{
  "contents": [{
    "role": "user",
    "parts": [{
      "text": "TEXT"
    }]
  }],
  "tools": [{
    "googleSearchRetrieval": {}
  }],
  "model": "projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_ID"
}

Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

Sie sollten in etwa folgende JSON-Antwort erhalten:

{
   "candidates": [
     {
       "content": {
         "role": "model",
         "parts": [
           {
             "text": "Chicago weather changes rapidly, so layers let you adjust easily. Consider a base layer, a warm mid-layer (sweater-fleece), and a weatherproof outer layer."
           }
         ]
       },
       "finishReason": "STOP",
       "safetyRatings":[
       "..."
    ],
       "groundingMetadata": {
         "webSearchQueries": [
           "What's the weather in Chicago this weekend?"
         ],
         "searchEntryPoint": {
            "renderedContent": "....................."
         }
       }
     }
   ],
   "usageMetadata": { "..."
   }
 }

Console

So verwenden Sie die Fundierung mit der Google Suche mit Vertex AI Studio:

  1. Rufen Sie in der Google Cloud Console die Seite „Vertex AI Studio“ auf.

    Zu Vertex AI Studio

  2. Klicken Sie auf den Tab Freies Format.
  3. Klicken Sie in der Seitenleiste auf die Ein/Aus-Schaltfläche Antworten des Bodenmodells.
  4. Klicken Sie auf Anpassen und legen Sie die Google Suche als Quelle fest.
  5. Geben Sie Ihren Prompt in das Textfeld ein und klicken Sie auf Senden.

Ihre Prompt-Antworten werden jetzt in der Google Suche fundiert.

Python

Informationen zur Installation des Vertex AI SDK for Python finden Sie unter Vertex AI SDK for Python installieren. Weitere Informationen finden Sie in der Referenzdokumentation zur Python API.

import vertexai

from vertexai.generative_models import (
    GenerationConfig,
    GenerativeModel,
    Tool,
    grounding,
)

# TODO (developer): update project_id
vertexai.init(project=PROJECT_ID, location="us-central1")

model = GenerativeModel("gemini-1.5-flash-001")

# Use Google Search for grounding
tool = Tool.from_google_search_retrieval(grounding.GoogleSearchRetrieval())

prompt = "When is the next total solar eclipse in US?"
response = model.generate_content(
    prompt,
    tools=[tool],
    generation_config=GenerationConfig(
        temperature=0.0,
    ),
)

print(response.text)

Ihre Antwort nachvollziehen

Wenn Ihr Modell-Prompt von Vertex AI Studio oder der API erfolgreich bei der Google Suche fundiert wird, enthalten die Antworten Metadaten mit Quelllinks (Web-URLs). Es gibt jedoch mehrere Gründe, warum diese Metadaten möglicherweise nicht bereitgestellt werden und die Prompt-Antwort nicht fundiert wird. Zu diesen Gründen gehören eine geringe Quellrelevanz oder unvollständige Informationen in der Antwort des Modells.

Zitate

Die Anzeige von Zitaten wird dringend empfohlen. Sie helfen den Nutzern, die Antworten der Publisher selbst zu validieren, und bieten Möglichkeiten zum weiteren Lernen.

Zitate für Antworten aus Quellen der Google Suche sollten sowohl inline als auch aggregiert angezeigt werden. In der folgenden Abbildung sehen Sie einen Vorschlag dafür.

Beispiele für Zitate

Alternative Suchmaschinenoptionen verwenden

Die Verwendung der Fundierung mit der Google Suche durch den Kunden verhindert nicht, dass der Kunde alternative Suchmaschinenoptionen anbietet, alternative Suchoptionen zur Standardoption von Kundenanwendungen macht oder seine eigenen Suchvorschläge oder Suchergebnisse oder die von Dritten in Kundenanwendungen anzeigt, vorausgesetzt, dass solche Nicht-Google-Suchdienste oder zugehörige Ergebnisse getrennt von den fundierten Ergebnissen und Sucheinstiegspunkten angezeigt werden und in hinreichender Weise nicht den Ergebnissen von Google zugeordnet oder mit diesen verwechselt werden können.

Gemini in Ihren Daten fundieren

In diesem Abschnitt wird gezeigt, wie Sie mithilfe der Vertex AI API Textantworten auf einem Vertex AI Agent Builder-Datenspeicher fundieren.

Unterstützte Modelle

Die folgenden Modelle unterstützen Grounding:

  • Gemini 1.5 Pro nur mit Texteingabe
  • Gemini 1.5 Flash nur mit Texteingabe
  • Gemini 1.0 Pro nur mit Texteingabe

Vorbereitung

Es sind bestimmte Voraussetzungen erforderlich, bevor Sie die Modellausgabe auf Ihren Daten fundieren können.

  1. Aktivieren Sie Vertex AI Agent Builder und die API.
  2. Erstellen Sie Datenquelle und Anwendung für Vertex AI Agent Builder.
  3. Verknüpfen Sie Ihren Datenspeicher mit Ihrer Anwendung im Vertex AI Agent Builder. Die Datenquelle dient als Grundlage für das Grounding von Gemini 1.0 Pro in Vertex AI.
  4. Aktivieren Sie die Enterprise-Version für Ihren Datenspeicher.

Weitere Informationen finden Sie unter Einführung in Vertex AI Search.

Vertex AI Agent Builder aktivieren

  1. Rufen Sie in der Google Cloud Console die Seite Agent Builder auf.

    Zum Agent Builder

  2. Lesen und akzeptieren Sie die Nutzungsbedingungen und klicken Sie anschließend auf Fortfahren und API aktivieren.

Vertex AI Agent Builder ist am Standort global oder am multiregionalen Standort eu und us verfügbar. Weitere Informationen finden Sie unter Standorte von Vertex AI Agent Builder.

Datenspeicher in Vertex AI Agent Builder erstellen

Um Ihre Modelle auf Ihren Quelldaten zu fundieren, müssen Sie die Daten vorbereitet und in Vertex AI Search gespeichert haben. Dazu müssen Sie einen Datenspeicher in Vertex AI Agent Builder erstellen.

Wenn Sie bei null beginnen, müssen Sie Ihre Daten für die Aufnahme in den Vertex AI Agent Builder vorbereiten. Weitere Informationen finden Sie unter Daten für die Aufnahme vorbereiten. Je nach Größe Ihrer Daten kann die Aufnahme einige Minuten bis mehrere Stunden dauern. Nur unstrukturierte Datenspeicher werden für das Fundieren unterstützt.

Nachdem Sie Ihre Daten für die Aufnahme vorbereitet haben, können Sie einen Suchdatenspeicher erstellen. Nachdem Sie erfolgreich einen Datenspeicher erstellt haben, erstellen Sie eine Suchanwendung, um eine Verknüpfung dazu herzustellen, und aktivieren Sie die Enterprise-Version.

Beispiel: Gemini 1.5-Flash-Modell fundieren

Folgen Sie der nachstehenden Anleitung, um ein Modell mit Ihren eigenen Daten zu fundieren.

Wenn Sie die Datenspeicher-ID nicht kennen, gehen Sie so vor:

  1. Rufen Sie in der Google Cloud Console die Seite Vertex AI Agent Builder auf und klicken Sie im Navigationsmenü auf Datenspeicher.

    Zur Seite „Datenspeicher“

  2. Klicken Sie auf den Namen Ihres Datenspeichers.

  3. Rufen Sie auf der Datenseite Ihres Datenspeichers die Datenspeicher-ID ab.

REST

Senden Sie zum Testen eines Text-Prompts mit der Vertex AI API eine POST-Anfrage an den Endpunkt des Publisher-Modells.

Ersetzen Sie diese Werte in den folgenden Anfragedaten:

  • LOCATION: Die Region, in der die Anfrage verarbeitet werden soll.
  • PROJECT_ID: Ihre Projekt-ID.
  • MODEL_ID: Die Modell-ID des multimodalen Modells.
  • TEXT: Die Textanleitung, die in den Prompt eingefügt werden soll.

HTTP-Methode und URL:

POST https://LOCATION-aiplatform.googleapis.com/v1beta1/projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_ID:generateContent

JSON-Text anfordern:

{
  "contents": [{
    "role": "user",
    "parts": [{
      "text": "TEXT"
    }]
  }],
  "tools": [{
    "retrieval": {
      "vertexAiSearch": {
        "datastore": projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID
      }
    }
  }],
  "model": "projects/PROJECT_ID/locations/LOCATION/publishers/google/models/MODEL_ID"
}

Wenn Sie die Anfrage senden möchten, maximieren Sie eine der folgenden Optionen:

Sie sollten in etwa folgende JSON-Antwort erhalten:

{
  "candidates": [
    {
      "content": {
        "role": "model",
        "parts": [
          {
            "text": "You can make an appointment on the website https://dmv.gov/"
          }
        ]
      },
      "finishReason": "STOP",
      "safetyRatings": [
        "..."
      ],
      "groundingMetadata": {
        "retrievalQueries": [
          "How to make appointment to renew driving license?"
        ],
        "groundingChunks": [
          {
            "retrievedContext": {
              "uri": "gs://my-data-bucket/dmv.txt",
              "title": "dmv"
            }
          }
        ],
        "groundingSupport": [
          {
            "segment": {
              "startIndex": 25,
              "endIndex": 147
            },
            "segment_text": "ipsum lorem ...",
            "supportChunkIndices": [1, 2],
            "confidenceScore": [0.9541752, 0.97726375]
          },
          {
            "segment": {
              "startIndex": 294,
              "endIndex": 439
            },
            "segment_text": "ipsum lorem ...",
            "supportChunkIndices": [1],
            "confidenceScore": [0.9541752, 0.9325467]
          }
        ]
      }
    }
  ],
  "usageMetadata": {
    "..."
  }
}

Ihre Antwort verstehen

groundingSupport ist ein Antwortfeld, das im Feld groundingMetadata angezeigt wird. Sie enthält die Informationen zu den Supportblöcken, die zum Generieren der Antwort verwendet wurden. Dieses Feld enthält den Inhalt, aus dem die Informationen stammen. Dies ist mit der Bereitstellung von Fußnoten oder Zitationen vergleichbar. So können Sie prüfen, ob die Antwort der KI korrekt und vertrauenswürdig ist.

Python

Informationen zur Installation des Vertex AI SDK for Python finden Sie unter Vertex AI SDK for Python installieren. Weitere Informationen finden Sie in der Referenzdokumentation zur Python API.

import vertexai

from vertexai.preview.generative_models import (
    GenerationConfig,
    GenerativeModel,
    Tool,
    grounding,
)

# TODO (developer): update project_id
vertexai.init(project=PROJECT_ID, location="us-central1")

model = GenerativeModel("gemini-1.5-flash-001")

# TODO(developer): Update project id, location, and data store id for your Vertex AI Search data store.
# data_store_id = "DATA_STORE_ID"

tool = Tool.from_retrieval(
    grounding.Retrieval(
        grounding.VertexAISearch(
            datastore=data_store_id,
            project=PROJECT_ID,
            location="global",
        )
    )
)

prompt = "How do I make an appointment to renew my driver's license?"
response = model.generate_content(
    prompt,
    tools=[tool],
    generation_config=GenerationConfig(
        temperature=0.0,
    ),
)

print(response.text)

Console

Führen Sie die folgenden Schritte aus, um Ihre Modellausgabe im Vertex AI Agent Builder zu fundieren. Dazu nutzen Sie Vertex AI Studio in der Google Cloud Console:

  1. Rufen Sie in der Google Cloud Console die Seite „Vertex AI Studio“ auf.

    Zu Vertex AI Studio

  2. Klicken Sie auf den Tab Freies Format.
  3. Klicken Sie in der Seitenleiste auf die Ein/Aus-Schaltfläche Antworten des Fundierungsmodells, um die Fundierung zu aktivieren.
  4. Klicken Sie auf Anpassen und legen Sie Vertex AI Agent Builder als Quelle fest. Der Pfad sollte dieses Format haben: projects/project_id/locations/global/collections/default_collection/dataStores/data_store_id.
  5. Geben Sie Ihren Prompt in das Textfeld ein und klicken Sie auf Senden.

Ihre Prompt-Antworten werden jetzt in Vertex AI Agent Builder fundiert.

Nächste Schritte