キャラクターカードを読み込む
SillyTavern の V1・V2・V3 キャラクターカード(PNG または JSON)に対応しています。カードの画像は物語の表紙に、ワールドブックは冒頭の世界づくりに使われます。
SillyTavern のキャラクターカードで遊ぶインタラクティブノベル。AI が一人称で物語を一場面書き、最後に選択肢を二つ出します。選択肢にないことをしたいときは、自分で一文書けます。
今のところ、サーバーは自分で動かす必要があります。Android は APK をそのままインストールできます。iPhone 版はまだ App Store に出ていないので Expo Go で開き、Web 版はローカルで起動します。
霧は海から上がってきた。桟橋の先まで来たときには、もう手すりまで呑まれていた。灯台はすぐ目の前なのに、灯りは消えている。 源さんは手紙に書いていた。霧港の灯りが消えたら、誰かがともしに行かなければならない、と――その手紙を書いた本人が、三日前から姿を消している。 背後で鐘が一つ鳴った。低く、湿った音。まるで水の底から浮かび上がってきたようだった。
選択肢を押すと読み進められます。主人公の名前の変更、ダークモードの切り替え、世界の状態の表示も試せます。実際には、各場面は設定したモデルが書きます。
必要なのはキャラクターカードと主人公の名前だけ。ほかの設定は空欄のままで構いません。
SillyTavern の V1・V2・V3 キャラクターカード(PNG または JSON)に対応しています。カードの画像は物語の表紙に、ワールドブックは冒頭の世界づくりに使われます。
名前は必須です。立場(通りすがりの旅人、昔なじみ……)や、一場面の長さ、文体も選べます。一枚のカードで物語をいくつも始められます。
AI が一人称で次の場面を書き、最後に選択肢を二つ出します。どちらかを選べば続きへ。別のことをしたいときは「自分で書く」を押します。
物語の開始時に、AI がキャラクターカードを読んで、人物・場所・アイテム・組織・秘密を整理します。以降の場面はすべてこれを踏まえて書かれ、展開に合わせて更新されます。
ノードにマウスを重ねると関係が強調され、クリックで詳細が見られます。ノードをタップすると、詳細と関係が見られます。
新しい夜番。目的:灯りをもう一度ともすこと。
本文は監督モデルが書きます。世界の状態、あらすじ、プロットはバックグラウンドで別に整理され、次の場面を待たせません。各場面を書くときはそれらがすべてコンテキストに入り、古い細部は監督が原文を読み返します。
章が終わると、バックグラウンドがその章をまとめ、古い章は物語全体のあらすじにまとめられます。原文はずっと残ります。人物や場所の状態は別に保存しているので、まとめても失われません。
プロットは本筋をビートに分けたもので、監督はどの場面を書くときも今のビートを見ています。展開がそれたら、バックグラウンドがプロットを直します。まだ回収されていない伏線は、別に記録しておきます。
前のどの場面にも戻って、選び直せます。世界の状態、あらすじ、プロットも、その場面のときの状態に戻ります。巻き戻せる回数はセーブごとに上限があり、初期設定では 1 回です。
選択肢にない行動は「自分で書く」を押して、何をするかを一文で監督に伝えます。
ネットワークが切れたり、アプリがバックグラウンドに回ったりしても、戻れば途切れたところから書き続けます。重複も欠けもありません。
「その他」から「結末を書く」を押すと、どんな結末にしたいかを伝えたうえで、AI が長めの結末を書きます。
「設定 → モデル」で追加します。プロバイダーを選んで API キーを貼り付けると、モデルの一覧が自動で出ます。いくつも追加でき、物語を書くモデルはワンタップで切り替えられます。料金は使った分だけモデルのプロバイダーに支払います。
スマホ・タブレット・Web のクライアントは同じサーバーにつながり、アカウントと物語を共有します。外観はシステムに合わせるか、ライト・ダークに固定できます。本文は明朝体かゴシック体を選べ、文字サイズも変えられます。
iOS と Android
React Native(Expo)で、両プラットフォームを同じコードで作っています。Android は APK をダウンロードしてインストールできます。iPhone 版はまだ App Store に出ていないので、今は Expo Go で開きます。
iPad と Android タブレット
スマホと同じアプリです。画面が広いときは本文を中央に組み、世界パネルを横に並べられます。
パソコンのブラウザ
サイドバーとキーボードショートカットがあり、キャラクターカードのファイルはウィンドウにドロップして読み込めます。ローカルでは make web で起動します。
今のところ公開サービスはありません。自分のパソコンかクラウドでサーバーを動かし、クライアントからそこへ接続します。
本番環境で初めて起動する前に、マスターキーとトークン署名鍵を生成してください。マスターキーをなくすと保存済みのモデルのキーを復号できなくなるので、別にバックアップしておいてください。
$ git clone https://github.com/Hexthebaldy/BetterTavern.git$ cd BetterTavern# 鍵を生成し、出力された 2 行を deploy/.env に書き込む$ docker compose -f deploy/docker-compose.yml run --rm migrate bettertavern keygen$ docker compose -f deploy/docker-compose.yml up -d# API は 127.0.0.1:8000 で待ち受ける。外部から使うときは TLS 付きのリバースプロキシの後ろに置く
$ git clone https://github.com/Hexthebaldy/BetterTavern.git$ cd BetterTavern$ cp apps/server/.env.example apps/server/.env# Docker で PostgreSQL を起動。手元の PostgreSQL 16 を使うならこの行は飛ばし、.env の DATABASE_URL を変える$ make db-up$ make install && make migrate$ make dev# 別のターミナルで、世界の状態を整理するバックグラウンドタスクを起動$ make worker# API ドキュメント:http://localhost:8000/docs
$ make js-install$ make web# ブラウザで http://localhost:5173 を開く# デプロイ時は make web-build で apps/web/dist を作り、API と同じドメインで配信する
$ cp apps/mobile/.env.example apps/mobile/.env# apps/mobile/.env のアドレスをパソコンの LAN の IP に変える$ make mobile-install$ cd apps/mobile && npm start# スマホの Expo Go でターミナルの QR コードを読み取る
かかりません。BetterTavern はオープンソースです。物語は自分のモデルのキーで書くので、料金は使った分だけモデルのプロバイダーに支払います。
はい、今のところ公開サービスはありません。物語、世界の状態、キーはすべて自分で動かすサーバーに保存されます。常時つけておくパソコンか、小さなクラウドサーバーが一台あれば十分です。
Android:このページ上部の「Android 版をダウンロード」から APK をダウンロードしてインストールします。インストール時に、ブラウザやファイル管理アプリからのインストールを許可するよう求められたら許可してください。Google Play にはまだ出ていません。iPhone:App Store にはまだ出ていないので、今は Expo Go で開きます。パソコンでクライアントを起動し(上の「デプロイ」の「スマホ」を参照)、ターミナルの QR コードをスマホで読み取ってください。スマホとパソコンは同じネットワークにつなぐか、Tailscale などのツールでつないでください。インストールしたら、ログイン画面の下にサーバーのアドレスを入力します。
SillyTavern のキャラクターカードです。PNG 画像か JSON ファイルで、V1・V2・V3 のどれでも使え、最大 16 MB です。PNG カードのデータは画像ファイルの中にあるため、圧縮した画像やスクリーンショットではデータが失われます。元のファイルを使ってください。
使えます。モデルを追加するときに「カスタム互換エンドポイント」を選び、OpenAI 互換 API のアドレスを入力します。エンドポイントが同じマシンや LAN の中にある場合は、サーバーで ALLOW_PRIVATE_ENDPOINTS=true を設定してください。
開始時に AI が世界の状態を整理し、その後は一場面ごとにバックグラウンドが展開に合わせて更新して、次の場面はそれを踏まえて書かれます。章が終わると、それまでの展開はまとめになります。バックグラウンドが管理するプロットも、監督が書くときに参照します。古い細部は監督が原文を読み返します。おかしな方向に進んだら、前の場面に戻って選び直せます。
画面は中国語・英語・日本語で、「設定 → 言語」で切り替えます。物語の本文の言語は決まっておらず、ふつうは開始時の画面の言語、キャラクターカード、自分が書いた文に合わせて書かれます。
BetterTavern は物語の内容を集めません。書くときに必要な前の展開は選んだモデルのプロバイダーへ送られ、その扱いは各社の規約によります。気になる場合は、自分のパソコンで動かすモデルを使えます。