cloudwego/eino

The ultimate LLM/AI application development framework in Go.

解消する課題

Einoは、GolangにおけるLLMアプリケーション開発を簡素化するために設計されたフレームワークであり、AIエージェントや複雑なワークフローを構築するための構造化された手法を提供します。自律的なエージェントの振る舞いと決定論的な実行フローの間のギャップを埋め、開発者が再利用可能なコンポーネントとカスタムロジックを組み合わせて、スケーラブルなAIシステムを構築できるようにします。

仕組み

Einoは、ChatModelToolRetrieverといったビルディングブロックをグラフやワークフローに接続するコンポーネントベースのアーキテクチャを採用しています。エージェントを構築するための主な方法は2つあります:

  • ChatModelAgent: ツールを呼び出すタイミングと応答するタイミングを決定するために、内部でReActループを処理する標準的なエージェント。
  • DeepAgent: 複雑なタスクをステップに分解し、サブエージェントに委譲し、進捗を追跡できる、より高度なエージェント。

開発者はcomposeモジュールを使用して、精密なグラフベースのワークフローを構築でき、それをエージェントが使用するツールとして公開することができます。

対象ユーザー

Goの慣習に従ったフレームワークを使用して、本番環境向けのAIエージェントやLLMを活用したアプリケーションを構築したいGolang開発者。

ハイライト

  • コンポーネント・エコシステム: OpenAI、Claude、Gemini、Ark、およびOllamaの公式実装。
  • ストリーム処理: グラフ内のノード間を流れるストリーミングデータのネイティブかつ自動的な処理。
  • Human-in-the-Loop: 人間の入力を得るために、エージェントの実行を中断および再開するための組み込みサポート。
  • コールバック・アスペクト: 主要な実行ポイントにおけるロギング、トレーシング、およびメトリクスの注入。
  • グラフベースのオーケストレーション: 決定論的なパイプラインと自律的なエージェントの振る舞いを組み合わせる能力。

関連

  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト
  • プロジェクト