Melacak agen

Halaman ini menunjukkan cara mengaktifkan Cloud Trace di agen dan melihat rekaman aktivitas untuk menganalisis waktu respons kueri dan operasi yang dijalankan.

Trace adalah linimasa permintaan saat agen Anda merespons setiap kueri. Misalnya, diagram berikut menunjukkan contoh rekaman aktivitas dari agen Agent Development Kit (ADK):

Contoh rekaman aktivitas untuk kueri

Rekaman aktivitas terdiri dari span individual, yang merepresentasikan satu unit tugas, seperti panggilan fungsi atau interaksi dengan LLM, dengan span pertama merepresentasikan keseluruhan permintaan. Setiap rentang memberikan detail tentang operasi tertentu, seperti nama operasi, waktu mulai dan berakhir, serta atribut yang relevan, dalam permintaan. Misalnya, JSON berikut menunjukkan rentang tunggal yang merepresentasikan panggilan ke model bahasa besar (LLM):

  {
    "name": "llm",
    "context": {
        "trace_id": "ed7b336d-e71a-46f0-a334-5f2e87cb6cfc",
        "span_id": "ad67332a-38bd-428e-9f62-538ba2fa90d4"
    },
    "span_kind": "LLM",
    "parent_id": "f89ebb7c-10f6-4bf8-8a74-57324d2556ef",
    "start_time": "2023-09-07T12:54:47.597121-06:00",
    "end_time": "2023-09-07T12:54:49.321811-06:00",
    "status_code": "OK",
    "status_message": "",
    "attributes": {
        "llm.input_messages": [
            {
                "message.role": "system",
                "message.content": "You are an expert Q&A system that is trusted around the world.\nAlways answer the query using the provided context information, and not prior knowledge.\nSome rules to follow:\n1. Never directly reference the given context in your answer.\n2. Avoid statements like 'Based on the context, ...' or 'The context information ...' or anything along those lines."
            },
            {
                "message.role": "user",
                "message.content": "Hello?"
            }
        ],
        "output.value": "assistant: Yes I am here",
        "output.mime_type": "text/plain"
    },
    "events": [],
  }

Untuk mengetahui detailnya, lihat dokumentasi Cloud Trace tentang Trace dan rentang dan Konteks trace.

Menulis rekaman aktivitas untuk agen

Untuk menulis rekaman aktivitas agen:

ADK

Untuk mengaktifkan OpenTelemetry untuk AdkApp, tetapkan variabel lingkungan berikut saat Anda men-deploy agen ke Vertex AI Agent Engine Runtime:

env_vars = {
  "GOOGLE_CLOUD_AGENT_ENGINE_ENABLE_TELEMETRY": "true",
  "OTEL_INSTRUMENTATION_GENAI_CAPTURE_MESSAGE_CONTENT": "true",
}

Perhatikan hal berikut:

  • GOOGLE_CLOUD_AGENT_ENGINE_ENABLE_TELEMETRY mengaktifkan rekaman aktivitas dan log agen, tetapi tidak menyertakan data perintah dan respons.

  • OTEL_INSTRUMENTATION_GENAI_CAPTURE_MESSAGE_CONTENT mengaktifkan logging perintah input dan respons output.

  • Untuk menggunakan penyerapan rekaman aktivitas, Anda harus mengaktifkan Telemetry API. Untuk mengetahui informasi selengkapnya, lihat Ringkasan Telemetry (OTLP) API

  • Untuk menggunakan penyerapan log, Anda harus mengaktifkan Logging API. Untuk mengetahui informasi selengkapnya, lihat Ringkasan Cloud Logging API.

LangchainAgent

Untuk mengaktifkan tracing untuk LangchainAgent, tentukan enable_tracing=True saat Anda mengembangkan agen LangChain. Contoh:

from vertexai.agent_engines import LangchainAgent

agent = LangchainAgent(
    model=model,                # Required.
    tools=[get_exchange_rate],  # Optional.
    enable_tracing=True,        # [New] Optional.
)

LanggraphAgent

Untuk mengaktifkan pelacakan untuk LanggraphAgent, tentukan enable_tracing=True saat Anda mengembangkan agen LangGraph. Contoh:

from vertexai.agent_engines import LanggraphAgent

agent = LanggraphAgent(
    model=model,                # Required.
    tools=[get_exchange_rate],  # Optional.
    enable_tracing=True,        # [New] Optional.
)

LlamaIndex

Untuk mengaktifkan pelacakan untuk LlamaIndexQueryPipelineAgent, tentukan enable_tracing=True saat Anda mengembangkan agen LlamaIndex. Contoh:

from vertexai.preview import reasoning_engines

  def runnable_with_tools_builder(model, runnable_kwargs=None, **kwargs):
      from llama_index.core.query_pipeline import QueryPipeline
      from llama_index.core.tools import FunctionTool
      from llama_index.core.agent import ReActAgent

      llama_index_tools = []
      for tool in runnable_kwargs.get("tools"):
          llama_index_tools.append(FunctionTool.from_defaults(tool))
      agent = ReActAgent.from_tools(llama_index_tools, llm=model, verbose=True)
      return QueryPipeline(modules = {"agent": agent})

  agent = reasoning_engines.LlamaIndexQueryPipelineAgent(
      model="gemini-2.0-flash",
      runnable_kwargs={"tools": [get_exchange_rate]},
      runnable_builder=runnable_with_tools_builder,
      enable_tracing=True,        # Optional
  )

Kustom

Untuk mengaktifkan pelacakan untuk agen kustom, buka Pelacakan menggunakan OpenTelemetry untuk mengetahui detailnya.

Tindakan ini mengekspor rekaman aktivitas ke Cloud Trace di project dalam Siapkan project Google Cloud .

Melihat rekaman aktivitas untuk agen

Untuk agen yang di-deploy, Anda dapat menggunakan konsol Google Cloud untuk melihat rekaman aktivitas agen:

  1. Di konsol Google Cloud , buka halaman Vertex AI Agent Engine.

    Buka Agent Engine

    Instance Agent Engine yang merupakan bagian dari project yang dipilih akan muncul dalam daftar. Anda dapat menggunakan kolom Filter untuk memfilter daftar menurut kolom yang Anda tentukan.

  2. Klik nama instance Agent Engine Anda.

  3. Klik tab Trace.

  4. Anda dapat memilih Tampilan sesi atau Tampilan rentang.

    Klik sesi atau rentang untuk memeriksa detail rekaman aktivitas, termasuk grafik asiklik terarah (DAG) rentang, input dan output, serta atribut metadata.

Kuota dan batas

Beberapa nilai atribut mungkin dipotong saat mencapai batas kuota. Untuk mengetahui informasi selengkapnya, lihat Kuota Cloud Trace.

Harga

Cloud Trace memiliki paket gratis. Untuk mengetahui informasi selengkapnya, lihat Harga Cloud Trace.