AnythingLLMの名前はよく見るものの、「ローカルLLMをチャット画面で使えるツール」くらいの理解で止まっていた。
それならOllamaやLM Studioだけでもよさそうに見える。何が違うのか気になったので、公式ドキュメントを読み、手元のWindows環境に入っていたAnythingLLMの実行ファイルと保存領域も確認した。
先に結論を書くと、AnythingLLMの価値はLLMそのものではない。文書、RAG、モデル、Agent、MCPを1か所で扱えることにある。
手元の環境を確認した
確認日は2026年7月2日。手元のWindows PCにはAnythingLLM Desktop 1.9.1がインストールされており、Electronの関連プロセスが8個動いていた。
公式ドキュメント上の現行版は1.15.0なので、手元の環境は少し古い。以下では、保存状態の確認には手元の1.9.1、機能の確認には1.15.0の公式ドキュメントを使っている。
個人の文書名や会話内容は開かず、実行ファイルのバージョンとディレクトリ構造だけを確認した。
$exe = Get-Item "C:\Program Files\AnythingLLM\AnythingLLM.exe"
$exe.VersionInfo.ProductVersion
$storage = "$env:APPDATA\anythingllm-desktop\storage"
@(
"lancedb",
"documents",
"vector-cache",
"models",
"plugins",
"direct-uploads",
"logs",
"anythingllm.db"
) | ForEach-Object {
[pscustomobject]@{
Name = $_
Exists = Test-Path (Join-Path $storage $_)
}
}
結果は次のとおりだった。
| 項目 | 確認結果 |
|---|---|
| Desktopバージョン | 1.9.1 |
| 保存領域 | %APPDATA%\anythingllm-desktop\storage |
| ローカルVector DB |
lancedbあり |
| 解析済み文書 |
documentsあり |
| 埋め込みキャッシュ |
vector-cacheあり |
| ローカルモデル |
modelsあり |
| SQLite DB |
anythingllm.dbあり |
| 保存領域の合計 | 約5.0GB |
公式の保存先説明とも一致した。単にチャット履歴を保存しているだけではなく、文書の解析結果、ベクトル、モデル、プラグイン、SQLite DBが同じstorage配下にまとまっている。
これを見ると、AnythingLLMが「チャットUI」ではなく、ローカルのAIワークスペースとして作られていることが分かりやすい。
一番便利なのは、文書を使い回せること
個人的に一番差が出るのは文書の扱いだと思う。
AnythingLLM 1.8.5以降では、文書の使い方が2種類ある。
- チャットへ直接添付する
- ワークスペースへ埋め込み、RAGで検索する
直接添付した文書は、そのスレッド内で使われる。コンテキストに収まる場合は全文が渡され、長すぎる場合は埋め込みへの切り替えを提案される。
一方、ワークスペースへ埋め込んだ文書は、複数の会話から検索できる。設計書、議事録、マニュアルのように、同じ資料を何度も参照する用途はこちらが向いている。
ここは調べる前に誤解していた。AnythingLLMは「何でも最初からRAGにする」のではなく、短い文書は全文、長期的に使う文書はRAGという使い分けができる。
RAGに入れれば、全部覚えるわけではない
RAGでは、質問と近い文書断片をVector DBから探し、その断片をLLMへ渡す。
つまり、文書を登録しただけでモデルが全ファイルを暗記するわけではない。公式の説明でも、従来型のRAGでは関連すると判定された数個のチャンクを取得する仕組みになっている。
このため、次のような依頼は相性が違う。
- 「この仕様について書かれた箇所を探して」→ RAG向き
- 「この文書を要約して」→ 全文添付の方が扱いやすい場合がある
- 「全ファイルから漏れなく件数を集計して」→ RAGだけに任せるのは危険
RAGの回答が悪いとき、LLMだけを交換しても直らないことがある。チャンク分割、埋め込みモデル、類似度しきい値、取得件数、質問文も結果に影響するからだ。
「ローカルアプリ」でも、通信先は構成次第
保存先を確認すると、文書やベクトルがローカルに置かれていることは分かった。ただし、これだけで完全ローカルとは言えない。
AnythingLLMでは、LLM、埋め込みモデル、Vector DBをそれぞれ選べる。たとえばLLMにOpenAIやAnthropicを選べば、回答生成に必要な内容はそのAPIへ送られる。埋め込みだけクラウドを使う構成もあり得る。
完全に端末内へ閉じたいなら、少なくとも次を確認する必要がある。
- LLMがローカルか
- 埋め込みモデルがローカルか
- Vector DBがローカルか
- AgentやMCPがどこへ接続するか
- Web検索など外部ツールを有効にしていないか
- 匿名テレメトリを許可するか
「AnythingLLM Desktopを使っている」と「処理経路がすべてローカル」は別の話だった。
MCPまで同じ画面で管理できる
AnythingLLMはMCPサーバーにも対応している。公式ドキュメントを見ると、MCPサーバーの起動・停止、状態、エラーログ、公開されているツールをUIから確認できる。
RAGで文書を読むだけなら、文書チャット製品はほかにもある。AnythingLLMが一段広いのは、そこからファイル操作、データベース、外部APIなどのAgent処理へつなげられる点だ。
ただし、ここは便利さと危険性が同時に増える。ファイル書き込みや外部APIを扱うMCPには、読み取り専用、実行前確認、対象範囲の制限を付けた方がよい。
ローカルLLM目的なら、ボトルネックはAnythingLLMではない
公式の推奨構成はRAM 16GB、8コアCPU。WindowsでローカルLLMを快適に動かす場合はGPUが推奨され、8〜12GB以上のVRAMが目安として挙げられている。
ただし、重いのはAnythingLLM本体よりLLM側だ。クラウドLLMを使う構成なら、AnythingLLMは小さいマシンでも動かせる。GPUを持つ別PCでLLMを動かし、AnythingLLMからAPI接続する構成も取れる。
「AnythingLLMを入れれば、大きなローカルモデルも軽快に動く」という話ではない。
結局、誰に向いているか
調べた範囲では、次の人にはかなり分かりやすい選択肢だと思う。
- 同じ文書群へ何度も質問したい
- OllamaとクラウドLLMを用途によって替えたい
- RAG環境を一から組みたくない
- 文書チャットからAgentやMCPへ広げたい
- Desktopで試し、必要ならDockerの複数人運用へ移りたい
逆に、文書を使わず単発のチャットしかしないなら、既存のAIチャットとの差は小さい。
今回、手元では保存構造と導入状態まで確認した。実際の文書を使った検索精度やモデル別の速度比較は行っていない。そこは文書の種類とハードウェアに左右されるため、別途測る必要がある。
AnythingLLMは「賢いモデル」ではなく、自分の資料と複数のAI機能をまとめる作業台と考えると、何が便利なのか腑に落ちた。