3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Difyを使った複数LLMの投票システム構築

Posted at

LLMを多用して記事を作成しました。

AIの進化に伴い、複数のAIモデルを組み合わせたシステムの開発が進んでいます。特に、エヴァのMAGIシステムのように複数の大規模言語モデル(LLM)の出力を利用した意思決定システムの実装例が増えてきています。

従来のシステムでは、大きく2つの方式が一般的です:

  1. 統合判断方式: 複数のLLMの出力を参考にして、最終的な判断を1つのLLMが行う
  2. 投票方式: 複数のLLMが1つの議題に対して投票を行い、その結果で結論を出す

今回紹介するシステムでは、LLM自体が他のLLMの回答を評価し、投票するアプローチを採用しています。この仕組みにより、YES/NO質問以外の複雑な意思決定にも対応できるシステムを構築することができます。(何番煎じ感)

システムの特徴と仕組み

このシステムの特徴は、各LLMが他のLLMの回答を見て、自身がどの回答に投票するかを決めるプロセスを導入した点です。各LLMが単なる生成器ではなく、評価者としても機能します。

ワークフロー

mermaid-diagram-2024-10-23-012231.png

具体的なプロセス

  1. 各LLMが独自に回答を生成: 複数のLLMが個々に回答を出します
  2. LLMが他のLLMの回答を評価: 各LLMは、他のLLMの回答を見て、それを評価します
  3. LLMが自ら投票先を選択: 評価に基づき、最も信頼できると考える回答に投票します
  4. 専用LLMによる最終判断: 投票集計用のLLMが投票結果を分析し、最も適切な回答を最終結果として選択します

この仕組みにより、単純な多数決ではなく、投票パターンや各回答の特徴を考慮した、より洗練された選択が可能になっています。

従来方式との違い

  • 従来の方式: 各LLMが生成した回答をもとに、1つのLLMが総合的な判断を行う、またはLLMが単純に投票を行う
  • 新方式: 各LLMが他のLLMの回答を評価し、投票先を選択することで、より詳細な判断が可能

システムの特徴

  • 複雑な意思決定への対応: YES/NO形式以外の、複数の選択肢がある問題にも対応可能
  • 多様な視点の統合: 異なるアルゴリズムやデータセットを持つLLMの意見を統合
  • 評価プロセスの導入: 単純な多数決ではなく、回答の質も考慮した選択が可能

Difyを活用したシステム構築

このシステムは、DifyというAIプラットフォームを使用して構築されています。Difyは複数のAIモデルを組み合わせ、視覚的にフローを設計できるオープンソースのツールです。

Difyでのシステム構築ステップ

  1. アプリケーションの作成: 適切なアプリケーションタイプを選択
  2. フローの設計: WorkFlow機能を使い、複数LLMを組み合わせた意思決定フローを設計
  3. モデルプロバイダーの設定: 各LLMのAPIキーorローカルLLMを設定し、使用するモデルを選択

実装

全LLM回答

image.png

投票先検討

image.png

集計

image.png

  • ブロック図の命名は適当です。
  • ローカルLLMを使用しているのは、自分のPCで動くモノが好きだからです。
    • 大手APIを使用した方が早いし良い回答になります。
  • IFブロックなどで回答を無理やり遅延させていますが、他に良い方法があるかもしれません。
  • プロンプトやyamlは記事が煩雑になるので割愛。

動作

image.png
image.png

  • 質問を入力すると、3つのLLMで会議して一番良かった回答を出力してくれます。
  • 回答ブロックを適宜置くことで、進行ステータスを示せます。
    • 会議している感を出すポイントです。
  • 各LLMの投票時の根拠を回答ブロックで出力しても良いです。
    • 回答が煩雑になるので削除しました。

まとめ

  • Difyを活用することで、複数のLLMを組み合わせた投票システムを比較的容易に構築できます。
  • 普通に全てのLLMの回答入力にして再度回答させた方が出力の質が良くなります。
3
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?