Inkubus の仕組み(アーキテクチャ)
しっかり使いたい人向けに、Inkubus が内部でどう動いているかをまとめました。ざっくり言うと 「Inkubus 本体」と「Ollama」の 2 つだけです。この関係さえ掴めば、1 台で動かすのも、強い GPU を別に用意するのも、考え方は同じだと分かります。
01 全体像:Inkubus と Ollama
Inkubus は 2 つの部品でできています。操作と保存を受け持つ Inkubus 本体と、実際に文章を書く頭脳である Ollama(ローカル LLM)です。本体が Ollama に「この設定で書いて」と頼み、返ってきた文章を保存して画面に表示します。
Inkubus 本体 Node.js
ブラウザで開く画面。PC でもスマホでも。
夜通し小説を書く本体。タブを閉じても動き続けます。
SQLite(本文もメタ情報も)
v2.9 より前の作品は .md ファイル
Ollama ローカル LLM
ビデオカードがあれば GPU、無ければ CPU。
この 2 つの間は ふつうの HTTP 通信です。だから Ollama は「同じ PC の中」でも「家の別の PC」でも「クラウド」でも、URL を変えるだけで差し替えられます(→ 3 つの構成パターン)。
02 Inkubus の中身(Node.js)
Inkubus 本体は Node.js でできた 1 つのプログラムで、役割が 2 つに分かれています。
- Web(操作画面) — あなたがブラウザで見て操作する画面。新規実行・ライブラリ・ジョブなどの画面はすべてここ。
- Worker(生成エンジン) — 実際に Ollama を呼んで小説を組み立てる本体。生成はこちらのサーバプロセスで進むので、ブラウザのタブを閉じても、スリープしても止まりません。開き直せば途中から追いつきます。
どのポート番号で待ち受けるかは起動したターミナルに表示されます。番号を変えて起動することもできるので、ヘルプの固定値ではなくその表示を見てください(→ セットアップ)。
生成された本文も、タイトルやお気に入りなどのメタ情報も、SQLite(node:sqlite)のデータベースに保存されます(v2.9 から。それ以前のバージョンで作った作品は Markdown ファイルのまま残り、そのまま読めます)。どちらにしてもあなたの PC の中です。
セットアップさえ済めば、Inkubus 本体はインターネットにつながりません。唯一の通信相手は、あなたが選んだ Ollama だけ。localhost の Ollama を使う構成なら完全オフラインで動きます。
03 3 つの構成パターン
「Inkubus 本体」と「Ollama」をどこに置くかで、大きく 3 通りの構成があります。どれも仕組みは同じ(本体 → Ollama)で、Ollama の場所が違うだけです。
パターン 1
ぜんぶ 1 台の PC で(オールインワン)
いちばん手軽。Inkubus も Ollama も同じ PC に入れて、その PC の GPU で動かします。まずはこれで十分です。
パターン 2
家のネットワーク(2 台の PC)
ふだん使いの PC で Inkubus を操作し、Ollama だけを強い GPU の PCに置いて、家の LAN 越しに使います。非力なノート PC から、デスクトップの GPU を借りるイメージ。
パターン 3
クラウド GPU(RunPod 等)
高性能なビデオカードを持っていなくても、クラウドの GPU 上で動く Ollama にインターネット越しに接続できます。必要なときだけ強い GPU を借りる使い方です。
パターン 2・3 では「Inkubus 本体は手元、GPU だけ外」になります。外出先のスマホから使う応用は Inkubus を使いこなす に、接続の具体手順は リモート Ollama にまとめています。
04 LLM 処理は同時に 1 つ
Inkubus が Ollama に投げる仕事は 4 種類ありますが、1 つの Ollama を取り合わないよう、同時に走るのは 1 件だけに制御されています(排他)。AI 1・AI 2・AI 3 はキャストの画面で AI に頼める 3 つのことで、AI 2 と AI 3 は同じ 1 枠を分け合います。
Ollama
この仕組みのおかげで、寝る前に小説生成を積んでおき、起きてからキャストの画像を登録する、といった運用でも GPU が取り合いになりません。詳しくは ジョブの排他制御。
05 データの保存場所
あなたの作品は 2 か所に分かれて保存されます。バックアップは両方そろって 1 セットです。
- データベース —
server/data/app.sqlite。本文(あらすじ・登場人物・各章・あとがき)と、作品の一覧・設定・ロール・ブックマークなどのメタ情報がここに入ります。あわせてキャストの画像(server/data/cast/)もserver/data/の中です。 - 以前の作品のファイル —
server/output/の中の.mdファイル。v2.9 より前のバージョンで作った作品の本文はここにあり、そのまま読めます。
本文をデータベースに入れる形は v2.9 からです(それまでは 1 作品ごとの Markdown ファイル)。作品が増えてもファイルがたまらなくなり、検索や一覧が速くなります。以前の作品のファイルをデータベースへ取り込む「統合」は、設定画面の「データ管理」タブから任意で実行できます(元のファイルは残ります)。データベースの置き場所・サイズ・中身の内訳も同じタブで確認できます。バックアップ手順は アップデート の「バックアップ」を参照してください。