go-micro: Go のサービスエンドポイントを AI 呼び出し可能ツールに変換するエージェントハーネス兼サービスフレームワーク
go-micro: Go のサービスエンドポイントを AI 呼び出し可能ツールに変換するエージェントハーネス兼サービスフレームワーク
解決する課題
Go Micro はエージェントハーネス兼サービスフレームワークで、AI エージェントの構築と運用をシンプルにします。エージェントを分散システムとして扱い、必要なランタイムインフラ(ツール、メモリ、ガードレール、サービスディスカバリ)を提供することで、開発者はモデルと実世界のツール・サービスを接続する運用負荷ではなく、エージェントのロジックに集中できます。
仕組み
このフレームワークは AI 機能を Go ベースのサービスアーキテクチャに直接統合します。開発者は標準的な Go サービスを書くだけで、エンドポイントが自動的に AI 呼び出し可能ツールになります。エージェントは Agent.Chat エンドポイントを持つサービスとして実装され、サービスレジストリを介してツールを検出・利用できます。
主なメカニズムは次のとおりです:
- Agent Harness: モデル用のプラグイン可能なランタイム、永続ストアバックされたメモリ、ツール実行を提供。
- Plan & Delegate: エージェントがマルチステップ計画を記録し、RPC を通じて他の専門エージェントにサブタスクを委譲できる組み込みツール。
- Gateways: MCP ゲートウェイがサービスをツールとして公開し、A2A ゲートウェイが Agent2Agent プロトコルを使用して他フレームワークからエージェントにアクセスできるようにします。
- Durable Flows: クラッシュに耐えるチェックポイント機能を持つイベント駆動型ワークフロー。
対象ユーザー
複雑なシステムを操作し、ターン間で状態を管理し、プロダクション環境で他のエージェントや外部サービスと連携する必要がある AI エージェントを構築する Go 開発者向け。
ハイライト
- Automatic Tooling: サービスエンドポイントはドキュメントコメントに基づき、AI ツールスキーマへ自動変換されます。
- AI-Driven Generation: 自然言語プロンプトから全サービスとハンドラを生成できる CLI。
- Interoperability: Model Context Protocol (MCP) と Agent2Agent (A2A) プロトコルをネイティブにサポート。
- Durable Memory: 永続ストアバックされた会話メモリで、長時間のインタラクション向けに要約機能を提供。
- Monetization: エージェント間ツール支払いのための x402 支払い標準をサポート。
- Multi-Provider: Anthropic、OpenAI、Gemini など、主要な 7 社の LLM プロバイダーに対応。
Sources
- undefinedmicro/go-micro