桃子桃子快讯
返回首页
工具

Grafana 开源 Go 版 LLM SDK,兼容 Vercel AI SDK

Grafana 发布 Go 语言 LLM SDK,支持流式输出、工具调用与多步智能体,并保持与 Vercel AI SD…

2026.07.30 · 周四3 分钟阅读

Grafana 近日开源了一套面向 Go 语言的 LLM 开发套件 ai-sdk,定位是为 Go 后端提供统一的模型调用、流式输出、工具调用、结构化输出与多步智能体(agent)能力,并保持与 Vercel AI SDK 前端协议完全兼容。这意味着开发者可以用 Go 直接生成 Server-Sent Events(SSE)流,并被前端的 useChat 等 React Hook 直接消费,无需额外编写协议适配层。

设计思路与适用场景

ai-sdk 在设计上明确对齐 Vercel 的 AI SDK:API 形态保持一致,前端 SSE 协议也保持 wire-compatible。这带来一个直接好处——已经基于 Vercel AI SDK 构建 React 前端的团队,可以直接把后端从 TypeScript 替换为 Go,而无需改动前端,也无需在两侧之间再写一层协议转换。对于内部基础设施已经在 Go 技术栈、但前端仍希望沿用 useChat / useCompletion / useObject 等熟悉 Hook 的团队,这一兼容性是项目强调的核心卖点。

主要能力

  • StreamText / GenerateText:可选择流式返回或等待完整结果,内置重试与多步工具执行。
  • React 前端兼容:服务端可直接为 useChat、useCompletion、useObject 提供数据。
  • 可组合的工具调用:模型可以调用普通 Go 函数,并支持对高风险操作要求人工审批。
  • 结构化输出:可生成符合 schema 的对象、数组与枚举值。
  • 多 Provider 支持:覆盖 Anthropic、Amazon Bedrock、OpenAI、OpenAI 兼容 API,以及 Grafana 内部托管的端点,便于内网服务统一调用。

生产化与可观测性

面向生产部署,ai-sdk 提供了超时控制、Provider 回退、日志、Prometheus 指标以及 Agent Observability 等能力。开发者可以在中间件层统一接入观测和限流策略,而无需在每个调用点重复实现。

快速上手

在已有 Go 模块中引入核心包与对应 Provider 即可启用,例如对接 Anthropic:

  • go get github.com/grafana/ai-sdk
  • go get github.com/grafana/ai-sdk/providers/anthropic

随后使用 ANTHROPIC_API_KEY 环境变量调用 anthropic.New 与 aisdk.GenerateText 即可发起一次模型调用,并将结果打印输出;如需流式输出到前端,可继续按官方文档构建全栈聊天示例。

许可证与生态

ai-sdk 采用 Apache License 2.0 协议开源,遵循 Vercel AI SDK 的设计并保留相应署名。项目欢迎贡献,并明确以「上游对齐 Vercel AI SDK」与「基于 OpenSpec 的规范驱动开发」作为两条核心约定。后续文档与可运行示例分别托管在官方站点与 pkg.go.dev,感兴趣的开发者可直接查阅。

信源