🌊

LLM連携アプリ…というかAITuberを作るためのフレームワーク選定

2023/03/28に公開

月島のスキルレベルとAITuber構築に使う前提。上に行くほど今回の構築において有望そうだと感じた順番です。

ローカルでのLLM実行が追々可能になった際のローカルLLMとの連携は未調査。

LangChain Python https://github.com/hwchase17/langchain

恐らく2023-03-28時点でのデファクトスタンダード。

LLM関連では恐らく一番多く使われる言語、ライブラリがPythonとtransformersで、大半のモデルをローカルで動かす場合のこれらが最初の選択肢になる事もあって、同じくPython向けのフレームワークなのは相性が良い。

LLMに持たせる記憶部分に当たるMemory、「内容に問題ないかの監査役」「実際に発言を生成する役」という感じでLLMから複数役割を派生させるAgentなどの概念が実装されていて、恐らく今回確認した中では一番機能的にリッチ。

Dust Rust https://github.com/dust-tt/dust

READMEを見ているとデフォルトでSQLite対応な辺りにセンスの良さを感じる。Dust.ttが公式のホスティングサービス?のようだが、プラットフォームへのロックインのかおりを感じるのでLangChainに比べると微妙か。ユーザーによる日本語での資料も現状見当たらない。

BoxCar Ruby https://github.com/BoxcarsAI/boxcars

参考: https://qiita.com/tomoasleep/items/23d3a1d8234f4fda912d

Ruby版LangChainという趣き。LLM部分がOpenAI限定であったり、その他機能的には本家が勝るので、Webアプリが既にあったりRubyで書きたい事情がある場合に選ぶのが良さそう。

LangFlow TypeScript https://github.com/logspace-ai/langflow

LangChainGUI版。Blenderなどに見られるようなノードベースでの機能実装が可能らしい。機能が本家の一部らしいので興味があれば一緒に触るくらいで良さそう。

言語がTSなのはバックエンドがそのままLangChainでこれ自体はフロントエンドのみだから?

Discussion