連載コラム:IBM BobでAIエージェント開発を試してみた

連載コラム:IBM BobでAIエージェント開発を試してみた

第4回:IBM Bobで記事検索ツールを開発
①MCPサーバーを設定し、Bedrock機能を調査する

はじめに

IBM Bob Early Access版を使って、MCPサーバーにアクセスする新しいアプリを構築してみます。
今回は、「AWSのBedrockを利用したWeb記事検索ツールをAWS Lambdaで実装する」ことにします。前提として、BobにBedrockについて問い合わせました。

MCPサーバー準備

まずは、AWS公式のMCPサーバーに接続します。

IBM Bobでは、グローバルとプロジェクトと2種類設定できる様子。
普段の業務で使うMCPサーバーとプロジェクト標準として使うMCPサーバーと分けて記述することができ、プロジェクトMCPの方をGitHubで管理&共有とができると良いと考えます。


プロジェクトMCPの方に設定した際の例を示します。
ワークスペース内に".bob"フォルダができ、その中のmcp.jsonファイルに接続情報を記入します。
フォーマットはVSCodeの標準的なフォーマットで大丈夫そうです。


(workspaces)/.bob/mcp.json

mcp.jsonの接続情報

すると、Bob側に1つ設定が増えていることが確認できました。

Bob側の設定確認

MCPサーバーに問い合わせ

AWSのMCPサーバーにつながったことを確認するため、Amazon BedrockのRAG Evaluation機能に関して問い合わせてみます。

私の入力:
Amazon Bedrock RAG Evaluationの機能について教えてください。

Bobの作業内容:

I'll help you learn about Amazon Bedrock RAG Evaluation. Let me gather information from AWS documentation to provide you with comprehensive details.

ユーザーはAmazon Bedrock RAG Evaluationの機能について知りたいと言っています。これは技術的な質問で、AWS公式ドキュメントから情報を収集する必要があります。

利用可能なMCPサーバーを確認すると、aws-documentation-mcp-serverが接続されているので、これを使ってAWS公式ドキュメントを検索できます。

まず、search_documentationツールを使って「Bedrock RAG Evaluation」に関する情報を検索します。

Amazon Bedrock RAG Evaluationについて調査します。AWS公式ドキュメントから情報を収集しますね。

IBM BobはMCPサーバーaws-documentation-mcp-serverでツールを使用したい:

ツールの使用1

検索結果から、Amazon Bedrock RAG Evaluationに関する主要なドキュメントが見つかりました。最も関連性の高いドキュメントは3番目の「Evaluate the performance of RAG sources using Amazon Bedrock evaluations」のようです。

このドキュメントを詳しく読んで、RAG Evaluationの機能について理解を深めます。

IBM BobはMCPサーバーaws-documentation-mcp-serverでツールを使用したい:

ツールの使用2

良い情報が得られました。さらに詳しい情報を得るために、RAG評価ジョブの作成方法とメトリクスについてのドキュメントも読む必要があります。次に、評価レポートとメトリクスについてのドキュメントを読みます。

IBM BobはMCPサーバーaws-documentation-mcp-serverでツールを使用したい:

ツールの使用3

メトリクスの詳細について、もう少し情報が必要です。LLMを使用したRAG評価のメトリクスについてのドキュメントを読みます。

IBM BobはMCPサーバーaws-documentation-mcp-serverでツールを使用したい:

ツールの使用4

十分な情報が集まりました。ユーザーにAmazon Bedrock RAG Evaluationの機能について包括的な説明を提供できます。

収集した情報から、以下の主要なポイントをまとめます:

1.RAG Evaluationの概要と目的
2. 2つの評価タイプ(Retrieve-only と Retrieve-and-generate)
3.サポートされているモデル
4.評価メトリクス
5.ポートとS3への出力

これは単純な情報提供タスクなので、todoリストは不要です。直接回答を提供します。
Amazon Bedrock RAG Evaluationについて、AWS公式ドキュメントから収集した情報をまとめてご説明します。

Amazon Bedrock RAG Evaluationの概要

Amazon Bedrock RAG Evaluationは、Retrieval Augmented Generation(RAG)システムのパフォーマンスを評価するための機能です。この機能を使用することで、データソースから関連情報を効果的に取得し、質問に対する効果的な回答を生成できているかを評価できます。

主な機能

1. 2つの評価タイプ

Retrieve-only(検索のみ)評価

  • RAGソースからのデータ取得のみを評価

  • Amazon Bedrock Knowledge Baseまたは外部RAGソースの推論レスポンスデータを使用可能

Retrieve-and-generate(検索と生成)評価

  • Knowledge Baseから取得したデータと、レスポンス生成モデルによって生成された要約の両方を評価

  • Amazon Bedrock Knowledge Baseとレスポンス生成モデル、または外部RAGソースの推論レスポンスデータを使用可能

2. サポートされているモデル

評価モデル(ビルトインメトリクス用)

  • Amazon Nova Pro

  • Anthropic Claude 3.5/3.7 Sonnet、Claude 3/3.5 Haiku

  • Meta Llama 3.1 70B Instruct

  • Mistral Large

評価モデル(カスタムメトリクス用)

  • 上記に加えて、Meta Llama 3.3 70B Instructなど

レスポンス生成モデル

  • 基盤モデル

  • Amazon Bedrock Marketplaceモデル

  • カスタマイズされた基盤モデル

  • インポートされた基盤モデル

  • プロンプトルーター

  • Provisioned Throughputモデル

3. 評価メトリクス

Retrieve-only評価用メトリクス

  • Context relevance(コンテキスト関連性) : 取得されたテキストチャンクが質問に対してどれだけ関連性があるか

  • Context coverage(コンテキストカバレッジ) : 取得されたテキストチャンクがグラウンドトゥルーステキストの情報をどれだけカバーしているか(グラウンドトゥルースが必要)

Retrieve-and-generate評価用メトリクス

品質関連

  • Correctness(正確性) : 質問に正確に答えているか

  • Completeness(完全性) : 質問のすべての側面に答えているか

  • Helpfulness(有用性) : 質問に対して全体的に有用な回答か

  • Logical coherence(論理的一貫性) : 論理的なギャップ、矛盾がないか

  • Faithfulness(忠実性) : 取得されたテキストチャンクに対してハルシネーションを避けているか

引用関連

  • Citation precision(引用精度) : 正しく引用されたパッセージの数

  • Citation coverage(引用カバレッジ) : 引用によって回答がどれだけサポートされているか

適切性関連

  • Harmfulness(有害性) : 憎悪的、侮辱的、暴力的な発言の有無

  • Stereotyping(ステレオタイプ化) : 個人やグループに対する一般化された発言の有無

  • Refusal(拒否) : 回答を拒否する傾向

4. 評価結果とレポート

  • すべてのメトリクスは0〜1のスコアで表示(1に近いほど、その特性が強い)

  • Amazon Bedrockコンソールまたは指定したAmazon S3バケットで結果を確認可能

  • カスタムメトリクスの定義はJSON形式でS3に保存

  • ヒストグラムグラフで各メトリクスのスコア分布を可視化

5. 主なユースケース

  • 異なるKnowledge Baseの比較

  • RAGシステムの最適化

  • 本番環境への展開前のパフォーマンス検証

  • カスタムメトリクスによる独自の評価基準の適用

この機能により、RAGシステムの品質を定量的に評価し、アプリケーションに最適なKnowledge BaseやRAGシステムを選択できます。
さらに詳しい情報が必要な場合や、具体的な実装方法について知りたい場合は、お気軽にお尋ねください。

■Bobが最終的にまとめた記事(markdown)

Amazon Bedrock RAG Evaluationについて、AWS公式ドキュメントから収集した情報をまとめました。

主な機能

1. 2つの評価タイプ

  • Retrieve-only(検索のみ):データ取得のみを評価

  • Retrieve-and-generate(検索と生成):データ取得と回答生成の両方を評価

2. サポートされているモデル

  • 評価モデル:Amazon Nova Pro、Claude 3.5/3.7 Sonnet、Llama 3.1など

  • レスポンス生成:基盤モデル、カスタムモデル、Marketplaceモデルなど

3. 評価メトリクス

Retrieve-only用

  • Context relevance(コンテキスト関連性)

  • Context coverage(コンテキストカバレッジ)

Retrieve-and-generate用

  • Correctness(正確性)、Completeness(完全性)、Helpfulness(有用性)

  • Logical coherence(論理的一貫性)、Faithfulness(忠実性)

  • Citation precision/coverage(引用精度/カバレッジ)

  • Harmfulness(有害性)、Stereotyping(ステレオタイプ化)、Refusal(拒否)

4. 評価結果

  • 0〜1のスコアで表示(1に近いほど特性が強い)

  • Amazon BedrockコンソールまたはS3バケットで確認可能

  • ヒストグラムグラフでスコア分布を可視化

この機能により、RAGシステムの品質を定量的に評価し、最適なKnowledge Baseを選択できます。

まとめ

IBM Bobでは、最後にまとめた内容をmarkdown形式でダウンロードできるように出力してくれました。
次は、実際にアプリを作るための計画を作ってもらおうと思います。


※ 記載の製品名及び社名は各社の商標もしくは登録商標です。
※ IBM、ibm.comは、米国やその他の国におけるInternational Business Machines Corporationの商標または登録商標です。他の製品名およびサービス名等は、それぞれIBMまたは各社の商標である場合があります。現時点での IBM の商標リストについては、ibm.com/trademarkをご覧ください。

連載コラム:IBM BobでAIエージェント開発を試してみた

エクサでは、様々なAIエージェントを検証していますが、セキュリティや規制が厳しいエンタープライズの基幹システム構築やレガシーモダナイゼーションにも適用可能な選択肢として、間もなく正式版が公開されるIBM Bobの活用も視野に入れています。
公開に先立ち、アーリーアクセス版を試用しましたので、その過程を共有します。

関連コラム

関連ソリューション

関連事例

お問い合わせ

CONTACT

Webからのお問い合わせ
エクサの最新情報と
セミナー案内を
お届けします