DifyでLLM同士の会話を出力
LLMとLLMで会話が成り立つようにDifyのworkflowを構築してみたので、メモを残しておく。
みはる:ネムル、明日の予定について何するの?
ネムル:あ、明日の予定については特にないですよ。
みはる:ねえ、特になかったら何かを作ろうよ!
ネムル:あ、作るのはいいアイデア!何かを作るのは久しぶりだな。何を作ろうかな?
みはる:何を作ろうかな?ゲームを作るのはどうかな?将棋やチェスみたいなものを作るのは面白そう!
ネムル:あ、ゲームを作るのはいいアイデア!将棋やチェスみたいなものを作るのは面白そう!じゃあ、どんなゲームを作るのかを考えてみようよ!将棋やチェスみたいなゲームなら、戦略的な要素を入れるとおもしろいんじゃないかな?
workflow
もともとは、以下の記事でLLMがLLMに指示を出すworkflowを構築したが、それをキャラクター同士が会話するようにカスタマイズしました。
今回利用するworkflowは以下の3つ。
利用しているgroq apiの無料枠の制限で、このworkflowの長さが上限となっている。課金したり、他のモデルを使えば、よる複雑なworkflowの実装は可能です。
ベクトル検索は、以下の記事の仕組みを利用しています。
少し複雑な処理なので、最初はベクトル検索の仕組みは削除して、実装した方がいいかもしれません。
【COM_LLM】メイン
【COM_LLM】agent(ネムルCRAG)
【COM_LLM】ベクトル検索ツール
出力結果
試しにお題を与えて会話させてみる。
モデルの問題か、少しおかしな出力になっているが、会話がある程度成立するテキストを出力することができる。
この記事が気に入ったらサポートをしてみませんか?