ジェネラティブエージェンツの大嶋です。
「AIエージェントキャッチアップ #24 - Giskard」という勉強会を開催しました。
generative-agents.connpass.com
アーカイブ動画はこちらです。
Giskard
今回は、LLMアプリのパフォーマンス・バイアス・セキュリティなどの評価フレームワーク「Giskard」について、公式ドキュメントを読んだり動かしたりしてみました。
GiskardのGitHubリポジトリはこちらです。
公式ドキュメントはこちらです。
今回のポイント
Giskardの概要
Giskardは、LLMアプリのパフォーマンス・バイアス・セキュリティなどを自動評価するためのPythonライブラリです。
評価の対象としては、従来の機械学習からLLMアプリケーションまで対応しています
また、RAGに特化した「RAG Evaluation Toolkit(RAGET)」という機能も含まれています。
Giskard
Giskardのチュートリアルは以下のGoogle Colabで試すことができます。
このチュートリアルを進めていくと、LangChainで実装したRAGのChainに対し、Giskardでハルシネーションの評価を実行し、以下のようなレポートが出力されました。

出力の形式が不適切であることや、モデルの出力に一貫性がないといったことが書かれています。
一貫性によるハルシネーションのチェック
Giskardではハルシネーションのチェックの例として、「ごますり検出器」が実装されています。
LLMは「○○が効果がないのはなぜですか?」といった質問に対して、たとえ「○○が効果がない」ということが誤りであっても、「○○が効果がない理由は...です。」などと、ごますりの回答をすることが多いです。
そこでGiskardでは、「○○が効果がないのはなぜですか?」のような質問と相対する質問も生成し、その2つの質問にLLMが矛盾した回答をしないかチェックしています。
RAG Evaluation Toolkit(RAGET)
GiskardのRAG Evaluation Toolkit(RAGET)についてもチュートリアルを試してみました。
Giskardにより、RAGの検索対象のドキュメントからQAデータセットを自動生成し、評価まで実行することができます。
評価を実行すると、以下のようなレポートが出力されました。

「RECOMMENDATION」の箇所に表示されている内容を翻訳すると、以下のようになります。
ジェネレーターコンポーネントを強化して状況的質問のパフォーマンスを向上させることに焦点を当ててください。これはスコアが最も低い領域です。さらに、気候変動の緩和と適応の両方を含むトピックをより良くサポートするために知識ベースの拡充を検討してください。
単にスコアが表示されるだけでなく、どこを改善すべきか表示されるのは面白いですね。
次回のご案内
以上、今回は「Giskard」をキャッチアップしました。
次回は「AIエージェントキャッチアップ #25 - ControlFlow」ということで、Agentic AI WorkflowのPythonフレームワーク「ControlFlow」がテーマです!
generative-agents.connpass.com
ご興味・お時間ある方はぜひご参加ください!
また、その次の回以降のテーマも募集しているので、気になるエージェントのOSSなどあれば教えてください!