Skip to main content
AnythingLLM は、「ドキュメント → プライベート ChatGPT」を位置付けとするオープンソースのクライアントであり、中心となる概念は Workspace です——各 Workspace は一組のドキュメント、一組のユーザー、一組の Agent ツールで構成され、独立して分離されています。ドキュメント対話向けに特化して設計されており、デスクトップ App と Docker の2つの形態を提供しています。LLM Provider には、カスタム Base URL を入力できる OpenAI (Generic) が組み込まれているため、対話モデルを直接 Ace Data Cloud に向けることができます。本記事では設定手順を紹介します。

申請手順

AnythingLLM で Ace Data Cloud を接続するには、まず Ace Data Cloud コンソール にアクセスし、API Token を取得して控えておきます。 Ace Data Cloud API Key を取得する まだログインまたは登録していない場合は、ログインページに自動的にリダイレクトされ、登録とログインが案内されます。ログインまたは登録後は、自動的に現在のページへ戻ります。 初回申請時には無料クレジットが付与され、Ace Data Cloud のモデルサービスを無料で体験できます。

AnythingLLM をダウンロードする

個人利用では デスクトップ版 をダウンロードできます。ベクトルデータベース(LanceDB)はローカルで動作するため、ドキュメント検索は完全にオフラインで行われ、モデル呼び出し時のみネットワークに接続します。チームでの複数ユーザー利用では Docker デプロイ を使用します。

対話モデルを設定する

AnythingLLM を起動し、Settings → LLM Preference に進み、Provider で OpenAI (Generic) を選択します(通常の OpenAI は選択しないでください。これは api.openai.com に固定されており、カスタム Base URL はありません)。公式ドキュメントは OpenAI (Generic) LLM Provider を参照してください。 AnythingLLM Generic OpenAI 設定画面
モデルの機能とコンテキスト上限は、現在のモデルディレクトリに従ってください。
Base URL のパス規則に注意してください:

Embedding モデルを設定する

AnythingLLM の中核は RAG であり、ドキュメントをベクトル化するための埋め込みモデルが必要です。その Embedding Preference と LLM Preference は、相互に独立した2つの設定です——Embedder 設定概要 を参照してください。内蔵の AnythingLLM Embedder(Built-in / Native) はローカルで直接動作し、すぐに使えて設定不要であり、デフォルトかつ推奨される選択肢です: Settings → Embedding Preference に進み、Provider はデフォルトの AnythingLLM Embedder のままで構いません。キーを入力する必要はありません。ドキュメントのベクトル化はローカルで完了し、元のテキストとベクトルはどちらもローカルの LanceDB に保存され、クラウドには送信されません。
AnythingLLM の Embedder 候補(クラウド:OpenAI / Azure OpenAI / Cohere、ローカル:Built-in、LM Studio、LocalAI、Ollama)は、すべてそれぞれの固定形式で接続されます。そのうちクラウド OpenAI の埋め込みは api.openai.com に固定されており、カスタム Base URL はサポートしていません。カスタムエンドポイントを使用したい場合は、Generic OpenAI Embedder(同様に Base URL フィールドがあり、Ace Data Cloud の text-embedding-3-large を指定可能)またはローカルの LocalAI Embedder を使用できます。本記事では対話モデルに Ace Data Cloud を使用し、埋め込みには AnythingLLM 内蔵のローカル Embedder を使用します。両者は互いに影響しません。

モデルを選択する

モデルディレクトリは継続的に更新されます。クライアントが自動読み込みしたモデルリストを優先して使用してください。手動入力が必要な場合は、まず GET https://api.acedata.cloud/v1/models をリクエストして現在のモデル ID を取得し、その後クライアントがサポートするコンテキスト、画像、ツール呼び出し機能に応じて選択してください。

接続を確認する

問題が AnythingLLM にあるのかネットワークにあるのか分からない場合は、まず curl を使用してエンドポイントを直接確認できます({token} をあなたの Token に置き換えてください):
OpenAI 互換の chat.completion オブジェクトが返されれば、Token とエンドポイントの両方が準備できていることを示します。HTTP 403 used_up が返された場合は、Token は有効ですが残高が不足していることを示します。コンソール でチャージしてください。

上級:Workspace とドキュメント対話

新しい Workspace を作成して PDF / Word / Markdown などのドキュメントをアップロードすると、AnythingLLM は段落ごとに分割し、ローカル Embedder でベクトルを生成してローカル LanceDB に保存します。対話時には、まず関連する断片を検索し、その断片とあなたの質問を一緒に対話モデル(つまり Ace Data Cloud)に渡して回答させ、回答の下に引用元を表示します。各 Workspace の上部では、Query(ドキュメントのみに基づいて回答)と Chat(一般知識を混在)モードを切り替えられます。厳密な場面では、ハルシネーションを避けるため Query モードの使用を推奨します。Docker デプロイ時は、GENERIC_OPEN_AI_BASE_PATH、GENERIC_OPEN_AI_API_KEY、GENERIC_OPEN_AI_MODEL_PREF などの環境変数を使用して、同じ対話モデル接続を事前設定し、複数ユーザーモードを有効化できます。

よくある質問

404 / connection fail と表示される

通常は Base URL を .../openai/v1 と記述したか、/v1 が抜けています。https://api.acedata.cloud/v1 に変更してください。

ドキュメントをアップロードした後に対話できない

Settings → Embedding Preference で使用可能な Embedder が選択されていることを確認してください(デフォルトの AnythingLLM Embedder はローカルで実行でき、追加設定は不要です)。そしてベクトルを生成するためにドキュメントを再アップロードしてください。

401 Unauthorized と表示される

API Key に貼り付けたものが Ace Data Cloud の Token であること(Bearer プレフィックスを含まず、余分なスペースがないこと)、および所属アプリケーションの残高が十分であることを確認してください。

ローカル文書はクラウドにアップロードされますか

いいえ。文書の原文はローカルの LanceDB に保存され、検索でヒットした断片とあなたの質問のみがモデルに送信されます。

詳細はこちら