Skip to content

ADK Go 快速入门

本指南将向你介绍如何开始使用 Agent Development Kit for Go。在开始之前,请确保你已安装以下软件:

  • Go 1.25 或更高版本
  • ADK Go v2.0.0 或更高版本

ADK Go 2.0 的新特性

ADK Go 2.0 引入了基于图的工作流智能体、并行和循环执行原语以及人工参与(HITL)工具确认。查看 ADK 2.0 发布页面了解完整功能列表和迁移指南。

创建智能体项目

创建一个包含以下文件和目录结构的智能体项目:

my_agent/
    agent.go    # 主智能体代码
    .env        # API 密钥或项目 ID
使用命令行创建此项目结构
mkdir my_agent\
type nul > my_agent\agent.go
type nul > my_agent\env.bat
mkdir -p my_agent/ && \
    touch my_agent/agent.go && \
    touch my_agent/.env

定义智能体代码

创建一个使用内置 Google 搜索工具的基础智能体代码。将以下代码添加到项目目录中的 my_agent/agent.go 文件:

my_agent/agent.go
package main

import (
    "context"
    "log"
    "os"

    "google.golang.org/adk/v2/agent"
    "google.golang.org/adk/v2/agent/llmagent"
    "google.golang.org/adk/v2/cmd/launcher"
    "google.golang.org/adk/v2/cmd/launcher/full"
    "google.golang.org/adk/v2/model/gemini"
    "google.golang.org/adk/v2/tool"
    "google.golang.org/adk/v2/tool/geminitool"
    "google.golang.org/genai"
)

func main() {
    ctx := context.Background()

    model, err := gemini.NewModel(ctx, "gemini-flash-latest", &genai.ClientConfig{
        APIKey: os.Getenv("GOOGLE_API_KEY"),
    })
    if err != nil {
        log.Fatalf("创建模型失败: %v", err)
    }

    timeAgent, err := llmagent.New(llmagent.Config{
        Name:        "hello_time_agent",
        Model:       model,
        Description: "报告指定城市的当前时间。",
        Instruction: "你是一个有用的助手,可以报告城市的当前时间。",
        Tools: []tool.Tool{
            geminitool.GoogleSearch{},
        },
    })
    if err != nil {
        log.Fatalf("创建智能体失败: %v", err)
    }

    config := &launcher.Config{
        AgentLoader: agent.NewSingleLoader(timeAgent),
    }

    l := full.NewLauncher()
    if err = l.Execute(ctx, config, os.Args[1:]); err != nil {
        log.Fatalf("运行失败: %v\n\n%s", err, l.CommandLineSyntax())
    }
}

配置项目和依赖项

初始化你的模块,将 ADK Go 2.0 添加为固定依赖项,然后让 go mod tidy 根据你的智能体代码文件中的 import 语句解析其余包:

go mod init my-agent/main
go get google.golang.org/adk/v2
go mod tidy

设置你的 API 密钥

此项目使用需要 API 密钥的 Gemini API。如果你还没有 Gemini API 密钥,请在 Google AI Studio 的 API 密钥 页面创建一个。

在终端窗口中,将你的 API 密钥写入项目的 .envenv.bat 文件中以设置环境变量:

Update: my_agent/.env
echo 'export GOOGLE_API_KEY="YOUR_API_KEY"' > .env
Update: my_agent/env.bat
echo 'set GOOGLE_API_KEY="YOUR_API_KEY"' > env.bat
Update: my_agent/env.bat
echo set GOOGLE_API_KEY="YOUR_API_KEY" > env.bat
在 ADK 中使用其他 AI 模型

ADK 支持使用多种生成式 AI 模型。有关在 ADK 智能体中配置其他模型的更多信息,请参阅模型与身份验证

运行你的智能体

你可以使用交互式命令行界面或 ADK Web 用户界面运行你的 ADK 智能体。两个选项都允许你测试和与智能体交互。

使用命令行界面运行

使用以下 Go 命令运行你的智能体:

在 my_agent/ 目录下运行
# 记得加载密钥和设置:source .env  env.bat
go run agent.go

adk-run.png

使用网页界面运行

使用以下 Go 命令通过 ADK 网页界面运行你的智能体:

在 my_agent/ 目录下运行
# 记得加载密钥和设置:source .env  env.bat
go run agent.go web api webui

此命令启动一个带有智能体聊天界面的 Web 服务器。你可以在 http://localhost:8080 访问网页界面。在左上角选择你的智能体并键入请求。

adk-web-dev-ui-chat.png

注意:ADK Web 仅限开发使用

ADK Web 不适用于生产部署。你应该仅将 ADK Web 用于开发和调试目的。

下一步:构建你的智能体

现在你已经安装了 ADK 并运行了你的第一个智能体,尝试使用我们的构建指南来构建你自己的智能体: