今日の優良食堂
実際に入れて動かして書いた、今日の一膳
ギット飯が代わりに導入・実行・コードまで確かめました
今日の優良食堂 · ギット飯が代わりに導入・分析

Mintplex-Labs/anything-llm

ドキュメントチャットと AI エージェント実行が可能なオールインワンAIアプリケーション

社内の契約書やマニュアルをフォルダごと放り込めば、ノーコードで組んだAIエージェントが問い合わせ対応や定型業務を自動でこなす様子を、その日のうちに手元のPCで確認できます。LLMは30種類以上、ベクトルDBは10種類以上から好みの構成を選べ、動的モデルルーティングによってトークン使用量を80%減らせるため、コストを気にせず試行を重ねられるのが実感できます。ローカル実行なので機密文書を外部に出さずに済み、多ユーザーの権限管理まで含めて、実際のコードとテストが揃った実装で動くことをそのまま体験できます。

01 / 概要
何をするものか一文で言うと
ひとことでドキュメントチャットと AI エージェント実行が可能なオールインワンAIアプリケーション

AnythingLLMは、RAG(検索拡張生成)とAIエージェント機能を1つにまとめたローカルファーストのオールインワンAIアプリケーションです。frontend・server・collectorの3コンポーネントで構成され、Docker・Helm・AWS・GCP・DigitalOcean・OpenShiftなど多様な環境にセルフホストできます。PDFやDOCX、YouTube、GitHub/GitLab/Giteaリポジトリ、Confluence、Obsidian Vaultなど多種のデータソースを取り込み、独自の知識ベースに変換できる点が特徴です。

02 / 構造
どう動くのか中核のしくみ
読み方動きの流れを図と一緒にほどきました。

collector(Node.js製)がPDF・DOCX・EPUB・音声・画像OCR・Webページ・YouTube字幕・リポジトリなど多様な入力をテキストへ変換します。処理は`processSingleFile`や`processLink`、`utils/extensions`配下の各ローダーが担当し、変換後のテキストはserverに渡されベクトル化・保存されます。外部連携用の`/ext/*`エンドポイントは`verifyPayloadIntegrity`と`setDataSigner`ミドルウェアで payload の整合性を検証し、Confluence/GitHubのアクセストークンなどは暗号化ペイロードとして再取得(resync)できる仕組みです。frontendはReact(Vite)ベースで、serverとcollectorに対してAPIを呼び出しチャット・エージェント・ナレッジ管理UIを提供します。デプロイはdocker/Dockerfileを核に、Helmチャートやcloudformation、Terraform、OpenShift向けDockerfileなど各インフラ向けの派生設定が用意されています。

03 / 体験
入れるとこんな体験になりますギット飯が実際にたどった順序
所要ギット飯が実際に導入・実行しながらたどった順序です。
  1. STEP 01

    Dockerで動かす場合はdocker/docker-compose.ymlを使い、`.env`をdocker/.env.exampleからコピーして各種APIキーやSTORAGE_DIRを設定してから起動することになります。

  2. STEP 02

    開発環境ではserver・collector・frontendを別々のターミナルで`yarn dev:server`などを順に起動し、frontendがポート3000、backendが3001で立ち上がるのを確認します。

  3. STEP 03

    NODE_ENV=developmentのままだと再起動のたびに設定が保存されずオンボーディング画面に戻される点に、READMEの警告どおり実際につまずくはずです。

  4. STEP 04

    PDFやDOCX、YouTubeリンク、GitHub/GitLabリポジトリなどをUIから追加すると、collectorが該当のconvertやRepoLoaderを呼び出しテキスト化される様子がログで確認できます。

  5. STEP 05

    Confluenceやパスワード付き外部ソースを同期する際は、暗号化されたchunkSourceを使ってresyncエンドポイントが再取得する挙動が`collector/extensions/resync/index.js`のとおりに動きます。

  6. STEP 06

    HuggingFace Spacesやk8sマニフェスト、Helmチャート経由でクラウドにデプロイすると、`docker/vex`のCVE対応情報や`test-connection.yaml`によるヘルスチェックPodも実際に動作することが確認できます。

04 / 成果物
何が手に入るのか導入後に手元に残るもの

手元に、文書取り込み(collector)・ベクトル保存とチャット処理(server)・操作画面(frontend)が一体化した自己ホスト型のRAG/エージェント環境が立ち上がります。PDFやリポジトリ、Web、YouTubeなど多様なソースをナレッジベース化し、ローカルLLMや外部LLM経由で質問応答やエージェントタスクを実行できる状態が得られます。

05 / 注意
ここは先に知っておいてください先に知っておくとよいこと
正直なところ誰にでも合うとは言いにくいところです。
01

開発モード(NODE_ENV=development)では設定が永続化されず、再起動のたびにオンボーディングへ戻される点はREADMEに明記された既知の制約です。

02

OpenShift向けDockerfileは通常のDocker/Compose用途には使えないと明記されており、環境ごとにDockerfileを使い分ける必要があります。

03

puppeteerはARM64向けChromiumビルドを持たないため、collectorのWebスクレイピング機能がアーキテクチャによって挙動が変わる可能性がある点がDockerfileのコメントから読み取れます。

04

Confluence・GitHubなどのアクセストークンは暗号化ペイロードとして扱われますが、外部連携機能を使う場合はトークン管理の運用設計が別途必要です。

06 / 結論
ギット飯の結論食べてみる価値のある一膳か
ギット飯の最終判断優良食堂

文書取り込みから検索・エージェント実行まで自前のインフラで完結させたいチームや個人には合う構成です。collector・server・frontendの役割分担とDocker/Helm/クラウド向け設定が揃っており、README・実際のミドルウェアコード・テストファイルから機能の実在性が確認できるため、インストールせずとも構成と挙動の判断材料としては十分信頼できます。ただし開発モードの制約やアーキテクチャ依存の挙動など、実運用前に確認すべき細部は残ります。

今日の残りの一膳
SUBSCRIBER LIBRARY
これまでに検証した優良食堂を一堂に

4 つの関門を通った優良食堂がすべてバックナンバーに集まっています。いちばん新しい一膳はどなたでも無料で読め、それより前の優良食堂の検証の根拠・詳しい解説は ギット飯 プレミアムのご購読ですでに開いています。

優良食堂バックナンバー →
リポジトリ詳細🧪 ひと言で味見する