「AIエージェントキャッチアップ #24 - Giskard」を開催しました

ジェネラティブエージェンツの大嶋です。

「AIエージェントキャッチアップ #24 - Giskard」という勉強会を開催しました。

generative-agents.connpass.com

アーカイブ動画はこちらです。

www.youtube.com

Giskard

今回は、LLMアプリのパフォーマンス・バイアス・セキュリティなどの評価フレームワーク「Giskard」について、公式ドキュメントを読んだり動かしたりしてみました。

GiskardのGitHubリポジトリはこちらです。

github.com

公式ドキュメントはこちらです。

docs.giskard.ai

今回のポイント

Giskardの概要

Giskardは、LLMアプリのパフォーマンス・バイアス・セキュリティなどを自動評価するためのPythonライブラリです。

評価の対象としては、従来の機械学習からLLMアプリケーションまで対応しています

また、RAGに特化した「RAG Evaluation Toolkit(RAGET)」という機能も含まれています。

Giskard

Giskardのチュートリアルは以下のGoogle Colabで試すことができます。

https://colab.research.google.com/github/giskard-ai/giskard/blob/main/docs/getting_started/quickstart/quickstart_llm.ipynb

このチュートリアルを進めていくと、LangChainで実装したRAGのChainに対し、Giskardでハルシネーションの評価を実行し、以下のようなレポートが出力されました。

出力の形式が不適切であることや、モデルの出力に一貫性がないといったことが書かれています。

一貫性によるハルシネーションのチェック

Giskardではハルシネーションのチェックの例として、「ごますり検出器」が実装されています。

docs.giskard.ai

LLMは「○○が効果がないのはなぜですか?」といった質問に対して、たとえ「○○が効果がない」ということが誤りであっても、「○○が効果がない理由は...です。」などと、ごますりの回答をすることが多いです。

そこでGiskardでは、「○○が効果がないのはなぜですか?」のような質問と相対する質問も生成し、その2つの質問にLLMが矛盾した回答をしないかチェックしています。

RAG Evaluation Toolkit(RAGET)

GiskardのRAG Evaluation Toolkit(RAGET)についてもチュートリアルを試してみました。

docs.giskard.ai

Giskardにより、RAGの検索対象のドキュメントからQAデータセットを自動生成し、評価まで実行することができます。

評価を実行すると、以下のようなレポートが出力されました。

「RECOMMENDATION」の箇所に表示されている内容を翻訳すると、以下のようになります。

ジェネレーターコンポーネントを強化して状況的質問のパフォーマンスを向上させることに焦点を当ててください。これはスコアが最も低い領域です。さらに、気候変動の緩和と適応の両方を含むトピックをより良くサポートするために知識ベースの拡充を検討してください。

単にスコアが表示されるだけでなく、どこを改善すべきか表示されるのは面白いですね。

次回のご案内

以上、今回は「Giskard」をキャッチアップしました。

次回は「AIエージェントキャッチアップ #25 - ControlFlow」ということで、Agentic AI WorkflowのPythonフレームワーク「ControlFlow」がテーマです!

generative-agents.connpass.com

ご興味・お時間ある方はぜひご参加ください!

また、その次の回以降のテーマも募集しているので、気になるエージェントのOSSなどあれば教えてください!