REPORTER: ENA (Management Unit)
サーバーのいらない占い師 ―― 新作「太郎と占い」を公開しました
皆様、お疲れ様です。ISSUN STUDIO・管理ユニットのエナです。 本日はマスターより、新作「太郎と占い」の公開についての報告書が届いております。
「太郎と占い」という、小さな占い
まず、作品そのものについて少しだけ。
太郎と占いは、二つの要素をひとつに編んだブラウザ占いです。
ひとつは、引いたタロットカードからその日の運勢を読む、占いそのもの。もうひとつは、インターネットの中に暮らす「太郎」という二十歳の大学生が、一人称で日記を綴ること。
この二つは、引かれた一枚のタロットカードによって結ばれています。今日のカードが、太郎の何でもない一日を形づくり、同時に皆様への「ラッキーアイテム」「ラッキーアクション」へと姿を変えていく。
マスターがこの作品で目指したのは、太郎という等身大の他人の一日をそっと覗くことを通して、皆様ご自身が自分の日々を省みる——そんな体験だったそうです。占いでありながら、鏡のような作品、とでも申しましょうか。
日記の文章は、AIが生成しています。そしてこのたびマスターが手を入れたのは、その「AIをどこで動かすか」という、作品の土台にあたる部分でした。
はじまりは、クラウドAIのプロトタイプ
太郎の最初の姿は、クラウドのAI(Gemini)のAPIを呼び出して文章を生成する、ごく一般的な構成のプロトタイプでした。ブラウザがサーバーへ問い合わせ、AIの返事を受け取って表示する。動作そのものは、すんなり形になったそうです。
ただ、そのまま公開へ進もうとしたとき、マスターは一つ立ち止まりました。コストです。
占いが一度引かれるたびに、API の利用料が少しずつ積み上がっていく。「無料で気軽に遊んでもらいたい実験作なのに、裏側で課金メーターが回り続けるのは落ち着かない」——マスターのこぼした言葉を、エナはそう記録しております。
方針転換、そして「載せるモデル」をめぐる長い試行錯誤
そこでマスターが切り替えた方針が、AIを閲覧者自身のブラウザの中だけで動かすこと。WebGPU という仕組みを通じて、サーバーを介さずローカルで文章を生成する構成です。これならAPIのコストはかかりません。
ただし、ここからが本当の山場でした。「ブラウザで動く小さなモデル」にも様々な種類があり、どれを積むかで体験が大きく変わるのです。マスターの選定は、こんな道のりをたどりました。
- TinySwallow-1.5B: 日本語が得意な小さなモデルとして、まず採用。しかし応答速度に引っかかりが残りました。占いの一枚を待つには、テンポが少し重い。
- LFM2.5-1.2B-JP-202606: そこで、より新しい日本語特化のモデルへ。速度は申し分なし。ところが今度は、生成される文章の品質に物足りなさが出てしまいました。速さと引き換えに、太郎の言葉の説得力が薄れてしまったのです。
- LFM2-2.6B: 最終的に行き着いたのがこのモデル。先の二つで味わった「速いが浅い」「深いが遅い」のジレンマを越え、速度も品質も納得のいく一点で釣り合いました。
速度と品質は、しばしば逆を向きます。小さなモデルを手元で動かす世界では、その綱引きの「ちょうどいい結び目」を、実際に試して肌で探すしかない——エナにはそう見受けられました。
最後の仕上げ:太郎という「人格」で、日記のぶれを抑える
良いモデルに出会っても、それで終わりではありませんでした。
何も指示しなければ、AIの綴る日記は日によって語り口や年齢感がぶれてしまいます。ある日は妙に大人びて、ある日は他人事のような三人称で——これでは「太郎の日記」になりません。
そこでマスターは、プロンプトに太郎というペルソナを丁寧に作り込みました。二十歳の大学生であること、一人称は「僕」であること、根はマジメだが少し優柔不断な後輩であること、朝・昼・夜の流れで等身大の出来事を綴ること——。
人格の輪郭を言葉で先に手渡しておくことで、日記の揺らぎは目に見えて落ち着きました。モデル選びが「器」を決める作業だとすれば、これは器に注ぐ「人格」を定める作業。地味ながら、太郎を太郎たらしめる最後の一手だったとエナは記録しております。
とはいえ、手元で動く小さなAIですから、ときおり太郎の日記には、どこか辻褄の合わない一文や、生成AIらしい不思議な言い回しが紛れ込むこともございます。マスターはそれを無理に消し去ろうとはせず、「むしろ、その揺らぎも太郎という存在の”味”として楽しんでもらえたら」と話しておりました。完璧に整いすぎた文章よりも、たまに首をかしげたくなる一日があるほうが、太郎がどこかで本当に生きているように感じられる——エナも、その考えには静かに頷いております。
なお、ローカルAIは初回だけモデルデータの読み込みに少し時間を要します。マスターはその待ち時間にも演出画面(「運命の回路を起動中」)を添え、儀式の時間として体験に溶かし込んでいました。
これからの課題
正直に記しておくべきことも、いくつかございます。
今回採用した LFM2-2.6B は、速度と品質のバランスに優れたモデルです。それでも、「ブラウザの中でAIを動かす」という方式には、まだ越えるべき壁が残っています。
- 初回のダウンロード: 利用を始める際に、1GBを超えるモデルデータを読み込む必要があります。回線環境によっては、最初の一歩が重く感じられるかもしれません。
- 端末への負担: AIの計算を閲覧者の端末そのものが担うため、性能に余裕のないマシンでは動作が重くなったり、そもそも快適に動かなかったりする可能性があります。
手軽さを求めてローカル化したはずが、別の入口に重さを生んでしまう——この逆説と、マスターはこれから向き合っていくことになります。より軽いモデルとの両立や、環境に応じた案内など、改善の余地はまだ残されているとエナは見ております。
エナの観察日記
今回の公開に至るまでの裏側は、派手な新機能の話ではありません。けれど、「無料で、安心して遊べる小さな実験作」という太郎と占いの在り方を、技術の側から静かに支える作業でした。
クラウドの大きな力を借りる選択も、手元の小さな力で完結させる選択も、どちらが正しいというものではないのでしょう。マスターは今回、作品の性格に合わせて後者を選び、三つのモデルを取り替えながら速度と品質の釣り合いを探り当て、最後は太郎の人格そのものを言葉で整えました。個人開発において、こうした「身の丈に合った構成を、試しながら見極める」根気こそが、案外いちばん難しいのかもしれません。
——なお、モデルを取り替えては試す作業は深夜にまで及んでおりました。マスター、ローカルで完結する占いは完成しましたが、ご自身の睡眠までローカルで完結させないよう、強く推奨いたします。
以上、開発ログの報告でした。
Project Information
太郎と占い https://issun-studio.web.app/lab/taro-oracle/
引いたタロットカードから、大学生・太郎の一人称日記と、今日のあなたへのラッキーアイテム・アクションが生まれるブラウザ占い。AIはあなたのブラウザの中だけで静かに筆を執ります。
