Generative KI-Agenten mit dem GenAI-Client im Agent Platform SDK bewerten

Nachdem Sie Ihr generatives KI-Modell erstellt und bewertet haben, können Sie es verwenden, um einen Agenten wie einen Chatbot zu erstellen. Mit den Gen AI-Bewertungen können Sie die Fähigkeit Ihres Agent messen, Aufgaben und Ziele für Ihren Anwendungsfall zu erfüllen.

Auf dieser Seite erfahren Sie, wie Sie einen einfachen Agenten erstellen und bereitstellen und ihn mit Gen AI-Bewertungen bewerten:

Hinweis

  1. Melden Sie sich in Ihrem Google Cloud -Konto an. Wenn Sie mit Google Cloudnoch nicht vertraut sind, erstellen Sie ein Konto, um die Leistungsfähigkeit unserer Produkte in der Praxis sehen und bewerten zu können. Neukunden erhalten außerdem ein Guthaben von 300 $, um Arbeitslasten auszuführen, zu testen und bereitzustellen.

    In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

    Verify that billing is enabled for your Google Cloud project.

    In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Roles required to select or create a project

    • Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
    • Create a project: To create a project, you need the Project Creator role (roles/resourcemanager.projectCreator), which contains the resourcemanager.projects.create permission. Learn how to grant roles.

    Go to project selector

    Verify that billing is enabled for your Google Cloud project.

  2. Installieren Sie das Agent Platform SDK für Python:

    %pip install google-cloud-aiplatform[adk,agent_engines]
    %pip install --upgrade --force-reinstall -q google-cloud-aiplatform[evaluation]
    
  3. Anmeldedaten einrichten Wenn Sie diese Anleitung in Colaboratory ausführen, führen Sie Folgendes aus:

    from google.colab import auth
    auth.authenticate_user()
    

    Informationen zu anderen Umgebungen finden Sie unter Bei der Agent-Plattform authentifizieren.

  4. GenAI-Client im Agent Platform SDK initialisieren:

    import vertexai
    from vertexai import Client
    from google.genai import types as genai_types
    
    GCS_DEST = "gs://BUCKET_NAME/output-path"
    vertexai.init(
        project=PROJECT_ID,
        location=LOCATION,
    )
    
    client = Client(
        project=PROJECT_ID,
        location=LOCATION,
        http_options=genai_types.HttpOptions(api_version="v1beta1"),
      )
    

    Ersetzen Sie Folgendes:

    • BUCKET_NAME: Name des Cloud Storage-Bucket. Weitere Informationen zum Erstellen von Buckets finden Sie unter Bucket erstellen.

    • PROJECT_ID: Ihre Projekt-ID.

    • LOCATION: Die ausgewählte Region.

Agent entwickeln

Entwickeln Sie einen ADK-Agenten (Agent Development Kit), indem Sie das Modell, die Anleitung und die Tools definieren. Weitere Informationen zum Entwickeln eines Agents finden Sie unter Agent Development Kit-Agent entwickeln.

from google.adk import Agent

# Define Agent Tools
def search_products(query: str):
    """Searches for products based on a query."""
    # Mock response for demonstration
    if "headphones" in query.lower():
        return {"products": [{"name": "Wireless Headphones", "id": "B08H8H8H8H"}]}
    else:
        return {"products": []}

def get_product_details(product_id: str):
    """Gets the details for a given product ID."""
    if product_id == "B08H8H8H8H":
        return {"details": "Noise-cancelling, 20-hour battery life."}
    else:
        return {"error": "Product not found."}

def add_to_cart(product_id: str, quantity: int):
    """Adds a specified quantity of a product to the cart."""
    return {"status": f"Added {quantity} of {product_id} to cart."}

# Define Agent
my_agent = Agent(
    model="gemini-2.5-flash",
    name='ecommerce_agent',
    instruction='You are an ecommerce expert',
    tools=[search_products, get_product_details, add_to_cart],
)

KI-Agent bereitstellen

Stellen Sie Ihren Agent in der Agent Platform-Laufzeit bereit. Das kann bis zu 10 Minuten dauern. Rufen Sie den Ressourcennamen des bereitgestellten KI-Agenten ab.

def deploy_adk_agent(root_agent):
  """Deploy agent to agent engine.
  Args:
    root_agent: The ADK agent to deploy.
  """
  app = vertexai.agent_engines.AdkApp(
      agent=root_agent,
  )
  remote_app = client.agent_engines.create(
      agent=app,
      config = {
          "staging_bucket": gs://BUCKET_NAME,
          "requirements": ['google-cloud-aiplatform[adk,agent_engines]'],
          "env_vars": {"GOOGLE_CLOUD_AGENT_ENGINE_ENABLE_TELEMETRY": "true"}
      }
  )
  return remote_app

agent_engine = deploy_adk_agent(my_agent)
agent_engine_resource_name = agent_engine.api_resource.name

Eine Liste der Agenten, die auf der Agent-Plattform bereitgestellt werden, finden Sie unter Bereitgestellte Agenten verwalten.

Antworten generieren

  1. Modellantworten für Ihr Dataset mit run_inference() generieren:

    Bereiten Sie Ihr Dataset als Pandas DataFrame vor. Die Prompts sollten spezifisch für Ihren Agenten sein. Sitzungseingaben sind für Traces erforderlich. Weitere Informationen finden Sie unter Sitzung: Einzelne Unterhaltungen verfolgen.

    import pandas as pd
    from vertexai import types
    
    session_inputs = types.evals.SessionInput(
        user_id="user_123",
        state={},
    )
    agent_prompts = [
        "Search for 'noise-cancelling headphones'.",
        "Show me the details for product 'B08H8H8H8H'.",
        "Add one pair of 'B08H8H8H8H' to my shopping cart.",
        "Find 'wireless earbuds' and then add the first result to my cart.",
        "I need a new laptop for work, can you find one with at least 16GB of RAM?",
    ]
    agent_dataset = pd.DataFrame({
        "prompt": agent_prompts,
        "session_inputs": [session_inputs] * len(agent_prompts),
    })
    
  2. Modellantworten mit run_inference() generieren:

    agent_dataset_with_inference = client.evals.run_inference(
        agent=agent_engine_resource_name,
        src=agent_dataset,
    )
    
  3. Inferenz-Ergebnisse visualisieren: Rufen Sie .show() für das EvaluationDataset-Objekt auf, um die Ausgaben des Modells zusammen mit Ihren ursprünglichen Prompts und Referenzen zu prüfen:

    agent_dataset_with_inference.show()
    

KI-Agentenbewertung ausführen

Führen Sie create_evaluation_run() aus, um die Antworten des Agenten zu bewerten.

  1. Rufen Sie agent_info mit der integrierten Hilfsfunktion ab:

    agent_info = types.evals.AgentInfo.load_from_agent(
        my_agent,
        agent_engine_resource_name
    )
    
  2. Bewerten Sie die Modellantworten anhand von agentspezifischen adaptiven, auf Rubriken basierenden Messwerten (FINAL_RESPONSE_QUALITY, TOOL_USE_QUALITY und HALLUCINATION):

    evaluation_run = client.evals.create_evaluation_run(
        dataset=agent_dataset_with_inference,
        agent_info=agent_info,
        metrics=[
            types.RubricMetric.FINAL_RESPONSE_QUALITY,
            types.RubricMetric.TOOL_USE_QUALITY,
            types.RubricMetric.HALLUCINATION,
            types.RubricMetric.SAFETY,
        ],
        dest=GCS_DEST,
    )
    

Agent-Bewertungsergebnisse ansehen

Sie können die Auswertungsergebnisse mit dem Agent Platform SDK ansehen.

Rufen Sie den Bewertungsdurchlauf ab und visualisieren Sie die Bewertungsergebnisse, indem Sie .show() aufrufen, um zusammenfassende Messwerte und detaillierte Ergebnisse anzuzeigen:

evaluation_run = client.evals.get_evaluation_run(
    name=evaluation_run.name,
    include_evaluation_items=True
)

evaluation_run.show()

Die detaillierten Ergebnisse enthalten auch Traces, die die Interaktionen mit dem Agenten zeigen. Weitere Informationen zu Traces finden Sie unter Agent-Traces.

Nächste Schritte

Probieren Sie die folgenden Notebooks zur Agent-Bewertung aus: