インストール
DigitalBase をサーバ / PC に導入し、起動するまでを行います。バックエンドは API とフロントエンドを同梱した単一構成で、ポート 8000 で動作します。
エディションと導入方法
DigitalBase には vLLM 版(Linux + NVIDIA GPU)と Ollama 版(Linux / macOS / Windows)の 2 つのエディションがあります。機能は同じで、ローカル LLM を動かすバックエンドだけが異なります。
| エディション | 環境 | スクリプト | インストール先 |
|---|---|---|---|
| vLLM 版 | Linux + GPU | install-linux-vllm.sh | ~/.local/db |
| Ollama 版 | Linux | install-linux.sh | ~/.local/db |
| Ollama 版 | macOS | install-macos.sh | ~/.local/db |
| Ollama 版 | Windows | install-windows.ps1 | %LOCALAPPDATA%\db |
| vLLM 版 / Ollama 版 | pip / uv | uvx digitalbase | ~/.local/db |
| vLLM 版 / Ollama 版 | Docker | install-docker.sh | ~/digitalbase(/app/data にマウント) |
| vLLM 版 / Ollama 版 | Linux(パッケージ) | digitalbase-<arch>.deb / .rpm | /opt/digitalbase |
エディションの選び方: NVIDIA GPU を積んだ Linux サーバに入れて複数人で使うなら vLLM 版、GPU の無い Linux や手元の Mac / Windows で使うなら Ollama 版です。
Bare Metal は単一バイナリ、Docker は単一イメージで、どちらのエディションも中身は同じものです。バックエンドは .env の LLM_BACKEND(vllm / ollama)で切り替わります。
導入方法の使い分け: 手元の 1 台にすぐ入れるならスクリプト(curl | bash)、既存のコンテナ基盤に載せるなら Docker、社内 IT の構成管理(Ansible 等)やオフライン持ち込みで配布するなら deb / rpm パッケージが向いています。
スクリプト / Docker / パッケージは、推論エンジン(vLLM / Ollama)や DB まで丸ごと入れる一式導入です。pip / uv は本体だけを wheel で入れる形で、Python の環境を一から自分で構築したい場合に向いています(DB と推論エンジンは自分で用意します)。
事前に必要なもの
| 用途 | 必要なもの |
|---|---|
| データベース | PostgreSQL 16 以降 + pgvector 拡張(RAG 用) |
| ローカル LLM | NVIDIA GPU + CUDA(vLLM 版)/ Ollama(Ollama 版) |
| 文字認識 | Tesseract OCR(画像・PDF の文字認識) |
| 文字起こし(任意) | FFmpeg(文字起こしで WAV 以外の音声・動画ファイルを扱う場合のみ) |
事前の環境設定
RAG(ナレッジ検索)にはベクトル拡張 pgvector を入れた PostgreSQL が必要です。インストーラはユーザー・DB の作成と拡張の有効化(bootstrap)を行いますが、PostgreSQL 本体と pgvector パッケージは事前に用意してください。OCR の日本語データもここで入れます。以下、エディション別の手順です。
1. Linux + GPU(vLLM 版) — NVIDIA ドライバ / CUDA が入っており nvidia-smi が動くことが前提です。
sudo apt install -y postgresql tesseract-ocr-jpn
sudo apt install -y postgresql-$(psql -V | grep -oE '[0-9]+' | head -1)-pgvector # PG のバージョンに合わせる
vLLM 版のインストーラは Python 環境・vLLM 本体・FFmpeg・Tesseract 本体を自動で導入するため、事前に用意するのは PostgreSQL + pgvector と GPU ドライバ、それに OCR の日本語データだけです。Ollama は不要です。
2. Linux(Ollama 版)
sudo apt install -y postgresql tesseract-ocr tesseract-ocr-jpn
sudo apt install -y postgresql-$(psql -V | grep -oE '[0-9]+' | head -1)-pgvector # PG のバージョンに合わせる
curl -fsSL https://ollama.com/install.sh | sh # ローカル LLM の Ollama
3. macOS(Ollama 版)
brew install postgresql@17 pgvector ollama tesseract tesseract-lang # 既存の対応版があればそれでよい
4. Windows(Ollama 版 / 管理者 PowerShell で実行)
irm https://pub-a2cab4360f1748cab5ae1c0f12cddc0a.r2.dev/vite-scripts/setup-windows.ps1 | iex
PostgreSQL / Ollama / Tesseract を winget で導入し、pgvector を配置します。apt / brew のない Windows では、このスクリプトが環境設定を担います。pgvector の配置に管理者権限が必要なため、必ず 「管理者として実行」 で実行してください。この手順を行わないと RAG(ベクトル検索)が無効化され、本製品の主要機能が使えません(pgvector 同梱の Docker 版を使う方法もあります)。
既存の PostgreSQL / RDS 等を使う場合は、.env の DATABASE_URL を向け先に書き換えます(その場合はユーザー・DB の作成と pgvector の用意を DBA に依頼してください)。
Bare Metal(スクリプトで導入)
上の「事前の環境設定」を済ませたうえで、エディションに応じたコマンドを実行します。インストール先・運用コマンド(db start / db stop など)はどのエディションでも共通です。
1. Linux + GPU(vLLM 版)
curl -fsSL https://pub-a2cab4360f1748cab5ae1c0f12cddc0a.r2.dev/vite-scripts/install-linux-vllm.sh | bash
~/.local/db に導入され、.env の LLM_BACKEND=vllm で動作します。初回起動時に HuggingFace からモデルをダウンロードします。
インストーラは vLLM・uv・PyTorch の版を配布元の latest.json に固定します(新規導入でも再実行でも同じ版になります。latest.json に版が無い場合はスクリプト同梱の既定版を [WARN] 付きで使用。--vllm-version X.Y.Z で上書き可)。本体バイナリは公開されている sha256 と照合し、一致しなければ中断します(sha256 を取得できない場合は [WARN] checksum unavailable を表示して続行)。
2. Linux(Ollama 版)
curl -fsSL https://pub-a2cab4360f1748cab5ae1c0f12cddc0a.r2.dev/vite-scripts/install-linux.sh | bash
~/.local/db に導入され、.env の LLM_BACKEND=ollama で動作します。Ollama が未導入でも [WARN] と導入コマンドを表示して続行します(サービスは導入され、Ollama を後から入れればチャットが使えます)。Ollama も一緒に入れる場合は --with-ollama を付けます。
curl -fsSL https://pub-a2cab4360f1748cab5ae1c0f12cddc0a.r2.dev/vite-scripts/install-linux.sh | bash -s -- --with-ollama
3. macOS(Ollama 版)
curl -fsSL https://pub-a2cab4360f1748cab5ae1c0f12cddc0a.r2.dev/vite-scripts/install-macos.sh | bash
4. Windows(Ollama 版 / PowerShell)
先に上の「事前の環境設定」(setup-windows.ps1)を管理者で実行しておいてください。本体は通常ユーザーで実行できます。
irm https://pub-a2cab4360f1748cab5ae1c0f12cddc0a.r2.dev/vite-scripts/install-windows.ps1 | iex
オフライン(閉域)でのインストール
インターネットに出られないサーバーには、Linux の vLLM 版インストーラを --offline --wheelhouse DIR で実行します。必要なファイルは、同じ CPU アーキテクチャ・CUDA 世代のオンライン PC であらかじめ集めて DIR に置きます。
| ファイル | 内容 | 入手先 |
|---|---|---|
lmlight-vite-linux-<arch> と .sha256 | 本体バイナリとチェックサム | 配布 URL(vite-latest/) |
latest.json | 版マニフェスト | 同上(--vllm-version を指定する場合は省略可) |
uv | uv 本体(マニフェストの uv_version) | GitHub astral-sh/uv の releases |
*.whl | vLLM と依存パッケージの wheel | pip download "vllm==<版>" "openai-whisper>=20231117" --dest DIR(PyTorch の index が必要なら --extra-index-url) |
hf-cache.tar(任意) | 配信するモデルを含む ~/.cache/huggingface の tar | オンライン PC で取得 |
サーバー側には Python(既定 3.13)が事前に入っている必要があります(uv はオフラインではインタープリタを取得できません)。
bash install-linux-vllm.sh --offline --wheelhouse /media/usb/wheelhouse
不足しているファイルがあると、インストーラは一覧を表示して停止します。モデルは導入後にモデル管理 › 閉域環境へのモデル持ち込みからも取り込めます。運用時は .env に HF_HUB_OFFLINE=1 を設定してください。
エディションの切り替え(Ollama 版 ⇄ vLLM 版)
導入後に別のエディションへ移せます(例: Ollama 版で使っていた Linux 機に GPU を積んだ)。ライセンスの差し替えは不要で、同じライセンスがどちらでも使えます。データ・設定・ファイルもそのまま引き継がれます。
Ollama 版 → vLLM 版
- NVIDIA ドライバ / CUDA を導入し、
nvidia-smiが動くことを確認する - vLLM 版のインストーラを実行する(新規導入と同じコマンド。Python 環境と vLLM が追加されます)
curl -fsSL https://pub-a2cab4360f1748cab5ae1c0f12cddc0a.r2.dev/vite-scripts/install-linux-vllm.sh | bash
~/.local/db/.envを編集し、バックエンドを vLLM に切り替える
LLM_BACKEND=vllm # ollama から変更
VLLM_AUTO_START=true # アプリが vLLM サーバを起動する(既定は false)
VLLM_CHAT_MODEL=Qwen/Qwen3.6-35B-A3B-FP8 # チャットモデル
VLLM_TOOL_CALL_PARSER=qwen3_coder # Qwen3.6 系のツール呼び出し形式
VLLM_EMBED_MODEL=Qwen/Qwen3-Embedding-0.6B # 以下は新規導入時の既定値
VLLM_GPU_MEMORY_UTILIZATION_CHAT=0.70
VLLM_GPU_MEMORY_UTILIZATION_EMBED=0.10
- 再起動する(
db stop→db start。systemd 管理ならsudo systemctl restart db)
新規導入時に生成される .env にはチャットモデルの行が無く、起動確認用の小型モデルが使われます。実運用では VLLM_CHAT_MODEL と VLLM_TOOL_CALL_PARSER を追加してください。
インストーラは既存の .env を書き換えません(新規導入時にだけ生成します)。そのため 3. を行わないと、vLLM が入っても Ollama のまま動きます。初回起動時に HuggingFace からモデルをダウンロードするため、チャットが応答するまで数分かかります。各設定の意味は環境変数を参照してください。
vLLM 版 → Ollama 版 — バイナリは共通なので入れ直しは不要です。Ollama 本体を導入し(curl -fsSL https://ollama.com/install.sh | sh)、モデルを取得してから、.env を LLM_BACKEND=ollama / OLLAMA_AUTO_START=true に変えて再起動します。
エディションによって embedding モデルが異なりベクトルの次元が変わるため、切り替え後は既存のナレッジを新しいモデルで検索・追加取込できません(「Embedding dimension mismatch」エラーになります)。次元はナレッジ単位で管理されるため、新しいナレッジはそのまま作成・利用できます。既存のナレッジを使い続けたい場合は、そのナレッジの文書を削除して取り込み直してください。チャット履歴・ファイル・ユーザー・その他の設定はそのまま残ります。
-- 全ナレッジをまとめて空にしたい場合のみ(接続情報は .env の DATABASE_URL)
DELETE FROM pgvector.embeddings;
ベクトル索引(HNSW)は取り込み時に次元ごとに自動作成されます(再起動や手動の索引操作は不要です)。
パッケージ(deb / rpm)
Linux 向けに deb / rpm パッケージも配布しています。OS のパッケージ管理に載るため、社内 IT の構成管理(Ansible / Puppet 等)やオフライン環境への持ち込み配布に向いています。事前準備(PostgreSQL + pgvector、Ollama など)は上の「事前の環境設定」と同じです。
# Ubuntu / Debian(arm64 の場合はファイル名を digitalbase-arm64.deb に)
curl -LO https://pub-a2cab4360f1748cab5ae1c0f12cddc0a.r2.dev/vite-latest/digitalbase-amd64.deb
sudo apt install ./digitalbase-amd64.deb
# RHEL / Rocky / AlmaLinux
curl -LO https://pub-a2cab4360f1748cab5ae1c0f12cddc0a.r2.dev/vite-latest/digitalbase-amd64.rpm
sudo dnf install ./digitalbase-amd64.rpm
改ざん確認(任意):
curl -LO https://pub-a2cab4360f1748cab5ae1c0f12cddc0a.r2.dev/vite-latest/digitalbase-amd64.deb.sha256
sha256sum -c digitalbase-amd64.deb.sha256
パッケージは以下を行います。
- 本体を
/opt/digitalbaseに、設定を/etc/digitalbase/.envに配置(初回にJWT_SECRETを自動生成。更新時に.envは上書きされません) - systemd サービス
db.serviceを登録(db start/db stop/db status/db logsのdbコマンドも同梱) - PostgreSQL が起動していれば DB ユーザー・データベース・pgvector 拡張を自動作成(未起動ならスキップし、後から再インストールで実行可)
インストール後は /etc/digitalbase/.env を確認し(vLLM 版は LLM_BACKEND=vllm に変更)、db start で起動します。ライセンスは /opt/digitalbase/license.lic に配置するか、管理画面の「登録管理」からアップロードします。
- アップデート: 新しいパッケージを同じコマンドで入れ直します(データ・
.envは保持) - バージョン固定: URL の
vite-latestをvite-<バージョンタグ>に変えると特定バージョンを取得できます - アンインストール:
sudo apt remove digitalbase/sudo dnf remove digitalbase(データ/opt/digitalbase/filesと設定/etc/digitalbaseは残ります)
pip / uv(Python で一から構築する)
digitalbase は PyPI に wheel(Python 3.13 用、Linux x86_64 / aarch64・macOS arm64・Windows x86_64)として公開しています。PostgreSQL(pgvector)と推論エンジン(vLLM / Ollama)を先に立てておけば、次の 2 行で動きます。
uv tool install --python 3.13 digitalbase
digitalbase serve # 作業ディレクトリの .env に DATABASE_URL と LLM_BACKEND=vllm|ollama を書いておく
- 置き場は bare metal と同じ
~/.local/db(license.lic、files/、mcp/)です。license は起動後に 管理画面 > ライセンス からも登録できます。 - 更新は
uv tool upgrade digitalbaseです。 - 閉域への持ち込みや vLLM 側の構成など、この形での詳しい導入はお問い合わせください。
Docker
単一イメージ lmlight/digitalbase:latest を使用します。PostgreSQL(pgvector)と LLM(vLLM / Ollama)はイメージに含まれないため別途用意してください。
# vLLM 版(既定)
curl -fsSL https://pub-a2cab4360f1748cab5ae1c0f12cddc0a.r2.dev/vite-scripts/install-docker.sh | bash
# Ollama 版
curl -fsSL https://pub-a2cab4360f1748cab5ae1c0f12cddc0a.r2.dev/vite-scripts/install-docker.sh | EDITION=ollama bash
install-docker.sh はイメージ取得・.env 生成・PostgreSQL(pgvector)コンテナ起動・アプリ起動までを自動で行います。データは既定で ~/digitalbase(DB_INSTALL_DIR で変更可)に保存され、コンテナの /app/data にマウントされます。
docker compose
A と同じ構成(PostgreSQL(pgvector)コンテナ + アプリケーションコンテナ)を 1 つの compose ファイルで起こします。中身が読めて差分管理でき、curl | bash を許可しない環境や、自前の compose / 基盤に取り込む場合に向きます。
mkdir -p digitalbase/data && cd digitalbase
curl -fsSL https://pub-a2cab4360f1748cab5ae1c0f12cddc0a.r2.dev/vite-scripts/docker-compose.yml -o docker-compose.yml
cp /path/to/license.lic data/license.lic # 無ければ起動後に 管理画面 > ライセンス から upload
docker compose up -d
- 設定は同じディレクトリの
.envに書きます(APP_PORT/LLM_BACKEND=ollama|vllm/DB_PASSWORD/DB_IMAGE_TAG/OLLAMA_BASE_URL/VLLM_BASE_URL/VLLM_EMBED_BASE_URL)。 JWT_SECRETとOAUTH_ENCRYPTION_KEYは未指定なら初回起動時にdata/に生成して永続します(コンテナを作り直しても変わりません)。固定したい場合はapp.environmentに追記します。- データは
data/(アプリ)とpostgres-data/(DB)。バックアップはこのディレクトリごと。 - 更新は
docker compose pull && docker compose up -d、停止はdocker compose down(データは残ります)。
手動でのデータベース作成
既存の PostgreSQL(RDS 等を含む)を使う場合の準備です(下の「手動 docker run」でも実施します)。アプリの DB ユーザーは一般ユーザーのため、データベース・ユーザー・pgvector 拡張は自分では作成できません(特に CREATE EXTENSION は superuser 必須)。superuser/DBA が一度だけ実行してください。
同梱スクリプトを実行(最も簡単。role/database/pgvector 拡張/schema を superuser 権限の自動判別で作成):
curl -fsSL https://pub-a2cab4360f1748cab5ae1c0f12cddc0a.r2.dev/vite-scripts/db_setup.sh | DB_PASS=<任意のパスワード> bash
または superuser で手動 SQL:
CREATE USER digitalbase WITH PASSWORD '<任意のパスワード>';
CREATE DATABASE digitalbase OWNER digitalbase;
\c digitalbase
CREATE EXTENSION vector; -- superuser 必須。RAG(ベクトル検索)の前提
スキーマ(approval / datalake / log / pgvector / vision)・テーブル・初期管理者はアプリ起動時に自動作成されます。
CREATE EXTENSION vector が無くてもアプリは起動しますが、RAG(ナレッジの取込・検索)だけ停止した状態になります(GET /api/status の rag.reason が pgvector_missing、RAG 画面にバナー)。後から DBA が拡張を作成したら、管理画面 > 登録管理 の RAG 検索強化にある 「有効化」 を押すと再起動なしで RAG 用テーブルが作られて使えるようになります(アプリの DB ユーザーで作成できる環境ならこのボタンだけで完了)。pgvector 同梱の自動経路(install-docker.sh)はこの作成まで自動で行うため、既存 PostgreSQL を使わない場合はそちらが簡単です。
手動 docker run(既存インフラへ組み込む)
既存の PostgreSQL と vLLM / Ollama がある場合は、アプリのコンテナだけを起動できます。先に 手動でのデータベース作成 を済ませ、DATABASE_URL をそのユーザー・パスワード・DB 名に合わせてください。
mkdir digitalbase && cd digitalbase
cat > .env <<EOF
LLM_BACKEND=vllm
DATABASE_URL=postgresql://digitalbase:digitalbase@host.docker.internal:5432/digitalbase
VLLM_BASE_URL=http://host.docker.internal:8080
VLLM_EMBED_BASE_URL=http://host.docker.internal:8081
JWT_SECRET=$(openssl rand -hex 32)
OAUTH_ENCRYPTION_KEY=$(openssl rand -base64 32 | tr '+/' '-_')
AUTH_MODE=local
EOF
cp /path/to/license.lic ./license.lic
docker run -d --name digitalbase-app \
-p 8000:8000 --env-file .env \
-v "$PWD":/app/data \
--add-host=host.docker.internal:host-gateway \
--restart unless-stopped \
lmlight/digitalbase:latest
スキーマ・テーブル・初期管理者は起動時に自動作成されます(上記のデータベース・ユーザー・pgvector 拡張は作成済みであることが前提)。Ollama 版は .env を LLM_BACKEND=ollama / OLLAMA_BASE_URL=http://host.docker.internal:11434 に変更します。
同ホストの PostgreSQL が localhost のみ待ち受ける設定だと host.docker.internal からは繋がりません。--network host にして DATABASE_URL を @localhost:5432 にするのが簡単です。
Kubernetes
専用 chart は配布していません。Docker Hub の lmlight/digitalbase:latest を引き、自前の manifest で配備してください(環境変数は Secret / ConfigMap、/app/data は PVC でマウント)。
起動・停止
| 環境 | start | stop | ログ | SSH 切断後 |
|---|---|---|---|---|
| Bare Metal(Linux) | db start | db stop | db logs | 稼働継続(systemd管理、クラッシュ自動復帰) |
| Bare Metal(macOS) | db start(前景実行) | db stop | 前景にそのまま出力 | 停止(tmux等の中で実行を推奨) |
| Docker | docker start digitalbase-app | docker stop digitalbase-app | docker logs -f digitalbase-app | 稼働継続(--restart unless-stopped) |
Linux は install 時に systemd サービス db.service を登録します(失敗時のみ macOS と同じ前景実行にフォールバック)。登録後はマシンの電源を入れるだけで自動起動します(db start 不要)。db stop は一時停止で、再起動すると再び自動で立ち上がります。自動起動をやめる場合は sudo systemctl disable --now db を実行してください。
アクセス
| 経路 | URL |
|---|---|
| ローカル | http://localhost:8000 |
| LAN | 起動時に LAN IP が表示され、他の PC / モバイルからアクセス可 |
→ ログイン画面が表示されます。初回ログインは初期設定に進んでください。 社内ネットワークでの公開・ホスト名設定はネットワーク / 動作環境を参照してください。
ライセンスは、管理画面の「登録管理」タブからもアップロードできます(詳細: ライセンス)。
データベース(自動セットアップ)
インストーラが DB に対して行うのは bootstrap(superuser でのみ可能な次の3つ)だけです。
- DB ユーザー作成(
digitalbase) - データベース作成(
digitalbase、owner = 同ユーザー) - pgvector 拡張の有効化(
CREATE EXTENSION vector。失敗時は RAG を無効化して起動を継続)
スキーマ・テーブル・インデックス・初期管理者ユーザーは、初回起動時に冪等に自動作成されます(アップデート時の列追加・移行も自動。再インストールしてもデータは保持されます)。手動操作は不要です。
- スキーマ構成:
public/approval/vision/log/datalake/pgvector - 既存 DB に向ける場合は
.envのDATABASE_URLを書き換えます(上記3つは DBA に依頼)。air-gapped などで事前にテーブルまで投入したい場合のみ、db_setup.shを superuser で実行します。
アップデート
同じインストールコマンドを再実行します(データは保持され、.env は上書きされません)。Linux(Bare Metal)では、管理画面 > 登録管理 の「アップデートを実行」からも同じ更新を実行できます。Docker の場合は docker pull lmlight/digitalbase:latest を実行してから再インストールします。各バージョンの変更内容は更新履歴を参照してください。
- 進行状況と結果 — 登録管理タブに、更新の進行段階・前回の結果(成功 / 失敗と終了コード)・再起動後の自己診断(
/api/ready)が表示されます。手順の記録はインストール先のupdate.log(例~/.local/db/update.log)に残ります。 - ロールバック — 更新前のバイナリは
api.prevとして残ります。更新後に起動しない場合はdb rollbackで直前のバイナリに戻せます(もう一度実行すると再び入れ替わります。データベースの内容は戻しません)。 - 版の固定 — 推論エンジン(vLLM / SGLang)と uv の版も更新時に
latest.jsonの値へ揃えられます。
追加コンポーネント
本体とは別にインストールするオプション機能です。未導入でも本体は動作し、対応する機能だけが無効になります。
文字起こし(Whisper)
チャットの音声ファイル添付・マイク入力と、ナレッジへの音声取込(文字起こし)に必要です。Whisper モデルを導入します。FFmpeg は WAV 以外のファイル(MP3 / M4A / 動画など)の変換に使います(マイク入力と WAV は FFmpeg なしで処理します)。
| OS | FFmpeg |
|---|---|
| macOS | brew install ffmpeg |
| Linux | sudo apt install -y ffmpeg |
| Windows | インストーラが winget で導入 |
# macOS / Linux(デフォルト tiny。末尾でモデル指定可: base / small / medium / large)
curl -fsSL https://pub-a2cab4360f1748cab5ae1c0f12cddc0a.r2.dev/vite-scripts/install-transcribe.sh | bash -s -- small
# Windows
irm https://pub-a2cab4360f1748cab5ae1c0f12cddc0a.r2.dev/vite-scripts/install-transcribe.ps1 | iex
インストール後、DigitalBase を再起動するとチャットで音声ファイル(WAV / MP3 / M4A / MP4 / WebM / OGG / FLAC / AAC)を添付できるようになります。導入状態は管理画面 > 登録管理 で確認できます。モデルを変更する場合は rm -rf ~/.local/db/stt-model/whisper を実行してから再インストールします。
NVIDIA GPU(RTX 50 シリーズを含む)で動かす場合、Linux(x86_64)ではインストールコマンドの末尾に --gpu を付けます(faster-whisper で CUDA を使用)。Windows の RTX 50 シリーズはプリビルドバイナリ未対応のため CPU 処理になり、GPU を使うにはソースからのビルドが必要です。
チャットのマイク入力
文字起こしを導入すると、チャットの入力欄にマイクボタンが表示され、話した内容を入力欄に入れられます(利用者は 設定 > 音声 で認識言語・自動送信を選べます)。
ブラウザは HTTPS か localhost でないとマイク録音を許可しません。HTTP で運用している場合、マイクボタンは録音ファイルからの入力(スマートフォンは録音アプリが開く)になります。ブラウザ上で直接録音したい場合は次のいずれかを行います(手順は管理画面 > 登録管理 の「HTTP でのマイク」にも表示されます)。
- リバースプロキシで HTTPS 化する(推奨)
- Chrome / Edge のポリシー
OverrideSecurityRestrictionsOnInsecureOriginに DigitalBase の URL(例:http://db-server:8000)を登録し、GPO / Intune で配布する
外部の文字起こし API を使う
ローカルの Whisper の代わりに、OpenAI 互換の文字起こし API(OpenAI、社内の speaches / vLLM 等)を使えます。環境変数 で STT_ENGINE=openai・STT_OPENAI_BASE_URL・STT_OPENAI_API_KEY・STT_OPENAI_MODEL を設定して再起動します。チャット添付・ナレッジ取込・マイク入力・/v1/audio/transcriptions のすべてがこの API を使い、音声はその API に送られます。
読み上げ(TTS)
チャットの回答を音声で読み上げます(回答ごとの読み上げボタン、設定で生成中の自動読み上げ)。既定では利用者のブラウザ内蔵の音声を使うため追加導入は不要です(声と品質は OS / ブラウザ次第。既定では端末内の音声だけを使い、本文を外部に送りません)。
声を揃えたい場合は、このサーバーに読み上げエンジンを導入します。スクリプトが Docker でエンジンを起動(127.0.0.1 のみで待ち受け)し、.env の TTS_* を設定します。
| エンジン | 特徴 |
|---|---|
| Kokoro(既定) | 多言語、CPU でも実用速度、Apache-2.0。日本語は女性 1 声 |
| VOICEVOX | 日本語の話者が多い。話者ごとの利用規約(クレジット表記等)を確認して使う |
# macOS / Linux(要 Docker。NVIDIA GPU で動かす場合は末尾に --gpu)
curl -fsSL https://pub-a2cab4360f1748cab5ae1c0f12cddc0a.r2.dev/vite-scripts/install-tts.sh | bash -s -- kokoro
curl -fsSL https://pub-a2cab4360f1748cab5ae1c0f12cddc0a.r2.dev/vite-scripts/install-tts.sh | bash -s -- voicevox
# Windows(要 Docker Desktop)
irm https://pub-a2cab4360f1748cab5ae1c0f12cddc0a.r2.dev/vite-scripts/install-tts.ps1 | iex
& ([scriptblock]::Create((irm https://pub-a2cab4360f1748cab5ae1c0f12cddc0a.r2.dev/vite-scripts/install-tts.ps1))) -Engine voicevox
Docker Compose 版は docker compose --profile tts up -d で Kokoro を起動し、環境変数 で TTS_ENGINE=openai・TTS_BASE_URL=http://tts:8880/v1・TTS_MODEL=kokoro・TTS_VOICE=jf_alpha を設定します。OpenAI 互換の外部 API を使う場合は TTS_ENGINE=openai と TTS_BASE_URL / TTS_API_KEY / TTS_MODEL を設定します(読み上げる本文がその API に送られます)。
いずれも DigitalBase の再起動後に反映され、導入状態は管理画面 > 登録管理 の「読み上げ (TTS)」で確認できます。利用者は 設定 > 音声 でサーバーの声 / ブラウザの声、声の種類、速度を選べます。
Office画像化(LibreOffice)
Word / Excel / PowerPoint をページ画像に変換し、「ベクトル処理」「高精度画像処理」でグラフ・図・レイアウトを読めるようにします。未導入時は同じ文書がテキスト抽出で処理されます。旧形式(.xls / .doc / .ppt)は読み取り方式にかかわらずこの変換を通すため、LibreOffice が無い、または Impress だけで Calc / Writer が無い環境では「LibreOffice (Calc) が必要」という明示エラーになります(スクリプトは 3 コンポーネントをまとめて入れます。ディスク約 400〜700MB、常駐プロセスなし。Docker イメージには同梱済み)。
# macOS / Linux
curl -fsSL https://pub-a2cab4360f1748cab5ae1c0f12cddc0a.r2.dev/vite-scripts/install-office.sh | bash
# Windows(winget で LibreOffice を導入)
irm https://pub-a2cab4360f1748cab5ae1c0f12cddc0a.r2.dev/vite-scripts/install-office.ps1 | iex
導入状態は管理画面 > 登録管理 の「Office画像化」で確認できます(DigitalBase の再起動は不要)。Linux で root 権限が無い環境では AppImage を ~/.local/db/tools/ に配置します(スクリプトが手順を表示します)。実行ファイルのパスを明示する場合は SOFFICE_PATH(環境変数)を設定します。
検索リランカー(Reranker)
ナレッジ(RAG)検索の候補を cross-encoder モデルで再採点し、参照元の上位精度を高めるオプションです(仕組みと手動設定)。vLLM 版では 1 コマンドで、リランカーサーバーの常駐(systemd)・モデル取得(既定 BAAI/bge-reranker-v2-m3、約 1.2GB / GPU メモリ 10% 使用)・.env の設定まで自動で行います。
# Linux(vLLM 版。モデルを変える場合は末尾に HuggingFace のモデル名)
curl -fsSL https://pub-a2cab4360f1748cab5ae1c0f12cddc0a.r2.dev/vite-scripts/install-reranker.sh | bash
実行後に DigitalBase を再起動すると有効になります。導入状態と疎通は管理画面 > 登録管理 の「RAG 検索強化」で確認できます。Ollama / SGLang 版はインストーラ対象外です(別マシン等でリランカーサーバーを用意し、手動設定で接続します)。
GPU 監視(DCGM exporter)
モデル管理画面に GPU の使用率・温度・電力・VRAM を表示するための exporter です。未導入でも本体は動作し、該当欄が「—」表示になるだけです。導入手順(ワンライナー)と前提条件は モデル管理 › GPU 監視(DCGM) を参照してください。
アンインストール
Linux / macOS
rm -rf ~/.local/db && sudo rm -f /usr/local/bin/db
Docker
docker rm -f digitalbase-app digitalbase-postgres
docker network rm digitalbase-net
rm -rf ~/digitalbase
Windows
Remove-Item -Recurse -Force "$env:LOCALAPPDATA\db"
ディレクトリ構造(Bare Metal)
~/.local/db/ # データ実体(Docker は ~/digitalbase)
├── api # バイナリ(API + フロントエンド同梱)
├── .env # 設定
├── license.lic # ライセンス
├── files/ # ユーザーファイル
├── logs/ # 推論サーバー(vLLM 等)の起動ログ
├── update.log # 本体アップデートの記録
├── api.prev # 更新前のバイナリ(db rollback 用)
└── start.sh / stop.sh # 起動・停止スクリプト