はじめに
9月上旬から、「kotaemon」というドキュメントとチャットでやりとりができるOSSが流行っているようです(図1参照)。GitHub の Star History を見ると、利用者が急増していることが分かります(図2参照)。Docker で簡単に使えるようなので早速試してみました。今回の例では、LLM に OpenAI の GPT-4o を利用しましたが、他にも、Claude や Local LLM の Ollama も利用できるようです。
利用方法
以下の4ステップで、ローカルでウェブサービスが立ち上がり、利用できるようになります。
※ 前提として、Docker環境は構築済みとします。
1. リポジトリのクローン
公式の README を参考に docker compose にまとめました。
2. .env.sample
を参考に .env
を作成
基本、サンプルそのままでOKですが、OpenAI API は設定する必要があります。また、CHAT MODEL, EMBEDDINGS_MODELは別のモデルも設定可能です。
GRADIO_SERVER_NAME=0.0.0.0
GRADIO_SERVER_PORT=7860
GRADIO_SERVER_PORT_HOST=17860
OPENAI_API_BASE=https://api.openai.com/v1
OPENAI_API_KEY=<your OpenAI API key here>
OPENAI_CHAT_MODEL=gpt-4o
OPENAI_EMBEDDINGS_MODEL=text-embedding-3-large
3. サービス起動
プロジェクト直下のディレクトリで、コンポーズアップしてください。
# 起動
docker compose up -d
# 停止
docker compose down
ちなみに、docker-compose.yaml
は以下のように記載してあります。
version: "3.8"
services:
kotaemon:
image: ghcr.io/cinnamon/kotaemon:main-full
ports:
- "${GRADIO_SERVER_PORT_HOST}:${GRADIO_SERVER_PORT}"
env_file:
- .env
restart: always
4. ログイン
http://localhost:17860 にアクセスすると、ログイン画面が開くと思うので、以下のように ID, Password 共に admin
と入力しログインしてください。すると、図1のような画面が開かれるので、お好みのドキュメントをアップロードして、質問してみてください。kotaemonがなんでも教えてくれるはずです。
ID: admin
Password: admin
参照
- GitHub(公式)
- 生成AI図鑑
- ブログ