UKA-GYRE 開発記 ― 読み物編 第2回
前回の記事:
この記事は「UKA-GYRE 開発記」 読み物編 第2回 です。
難しい専門的知識は出てきません。
エンジニアでない方も安心してお読みください。
1. AIの初日:「カロリーを控えましょう」しか言えなかった
忘れもしない、初めてAIにコメントを生成させた日のこと。
出てきたのはこんな文章だった。
「今週はカロリーが少しオーバーしています。カロリーを控えめにして、タンパク質を意識的に摂取しましょう。」
......うん。
間違ってはいない。
間違ってはいないんだけど、 これは誰に向けたコメントなの?
3週間チートデイなしで頑張ってきた人にも、3日連続でラーメン替え玉した人にも、同じことを言う。
まるで健康診断の結果用紙に印刷されている定型文のようだった。
足りないのは「情報」ではなく 「経験」 だった。
ベテラントレーナーが持っている「この状況なら、こう声をかける」という判断力。
何十人もの指導を通じて積み上げてきた暗黙知。
AIにはそれが一切なかった。
例えるなら、管理栄養士の資格を取りたての新人を採用したようなもの。
教科書の知識は完璧だけど、目の前のクライアントが何に悩んでいるかは分からない。
「正しいけど響かない」コメントしか書けない。
さて、この新人をどうやって育てるか。
ここからが本題である。
2. A/B比較:トレーナーは「選ぶだけ」
AIを育てるとなると、「じゃあトレーナーがAIに細かく教えればいいのでは?」と思うかもしれない。
だが、現場のトレーナーは忙しい。
毎日何人ものクライアントの食事を見て、コメントを返して、トレーニング指導もしている。「AIの教育係」をやっている暇はない。
そこで考えたのが、 「選ぶだけ」の仕組み だった。
このシステムでは、コメント生成のたびに A案とB案の2つ が同時に出てくる。
それぞれ別のAIモデルが書いている。
トレーナーがやることは、2つのコメントを読み比べて、「こっちの方がいい」と選ぶだけ。
ここに重要な設計思想がある。
「説明する」のは難しいが、「選ぶ」のは簡単 ということだ。
「なぜこのコメントが良いのか」を言語化するのは大変だ。
でも「AとBのどっちがいい?」と聞かれたら、ほとんどの人が即座に答えられる。
理由を説明できなくても構わない。
その「選んだ」という事実そのものが、とてつもなく価値のあるデータになる。
3. Good・Normal・Bad ― 3段階評価の意味
A案かB案を選んだら、次はたった一つの質問に答える。
「このコメント、どうだった?」
選択肢は3つだけ。
Good:「これ、そのまま送れる!」
完璧なコメント。
編集なしでそのままクライアントに送信する。
AIにとっては「お手本」として殿堂入りするデータだ。
Normal:「方向性はいいけど、ここだけ直した」
選んだコメントを一部修正してから送信する。
AIにとっては「何を直されたか」の差分が学習材料になる。
あと一歩で完璧だった、という貴重なフィードバックだ。
Bad:「ダメだ、ほぼ書き直した」
選んだコメントを大幅に書き直してから送信する。
AIにとっては「何がダメだったか」を知る教訓になり、同じ失敗を繰り返さなくなる。
そしてこの評価がたった3択だというのがポイントだ。
5段階評価やコメント記入を求めたら、トレーナーは面倒くさくなって評価をやめてしまう。
続けてもらうためには、とにかく手軽であること。
ここは人間の行動心理との戦いでもあった。
4. 毎週日曜深夜、AIが「復習」する時間
さて、トレーナーが日々の業務の中で「選んで」「評価して」くれたデータ。
これらは「CaseLog」として記録されていく。
では、このCaseLogがどうやって「AIの知恵」に変わるのか。
毎週日曜日の深夜3時。
クライアントは土曜の夜を楽しんで、ぐっすり眠っている。
トレーナーも日曜の朝をゆっくり過ごしている。
その裏で、AIが一人で黙々と「今週の復習」をしている。
自動バッチ処理が起動し、1週間分の全CaseLogを集めて、一つひとつ分析していく。
- 「このコメントはGood評価だった。何が良かったのか」
- 「このコメントはBad評価だった。何がダメだったのか」
この処理を、私は 「昇華(Sublimation)」 と呼んでいる。
化学の授業で習った「昇華」を覚えているだろうか。
固体が液体を経由せずに、直接気体になる現象だ。
ドライアイスが水にならずに煙になるアレである。
このシステムの昇華も同じ発想だ。
個別の体験(固体)が、人手による整理(液体)を経ずに、直接「再利用可能な知恵」(気体)に変わる。
面倒な中間工程をすっ飛ばして、個別の経験が自動的に汎用的な知識になる。
だから「昇華」なのだ。
5. 5種類の「知恵の結晶」ができるまで
昇華バッチが動くと、5種類の「知恵の結晶」が生成される。
このシステムでは Artifact(アーティファクト) と呼んでいる。
Artifact-1. SSOT ― 思考の土台
AIがコメントを書くときの「考え方の指針」だ。
個別のテクニックではなく、「クライアントの気持ちにまず寄り添え」「数値の指摘より行動の提案を優先しろ」「方針と矛盾するアドバイスは絶対にするな」といった、すべてのコメントの根底に流れる哲学を定めている。
他の4種類がAIによって自動生成されるのに対し、SSOTだけは人間が書き、人間が管理する。
毎回のコメント生成で必ず全文が読み込まれる、いわばAIの「憲法」だ。
Artifact-2. GOLD ― 殿堂入りコメント
トレーナーが「そのまま送れる!」とGood評価をつけたコメントを元に、AIが「なぜこのコメントが刺さったのか」を分析して構造化したもの。
どんな状況で効いたか、どんな言い回しがポイントだったかが整理される。次に似た状況が来たとき、AIはこのGOLDを「こういうコメントが正解だった」というお手本として参照する。
Artifact-3. PATTERN ― 成功レシピ
GoodやNormalの評価がついたコメントを、AIが似た栄養状態ごとにグルーピングして分析したもの。
「どんな状況で」「なぜうまくいったのか」「次も同じ状況が来たら何をすべきか」が構造化される。1件の成功からではなく、複数の似た成功事例を束ねて共通点を抽出するから、再現性の高いパターンになる。
Artifact-4. PITFALL ― やっちゃダメ集
Bad評価がついたコメントから、AIが1件ずつ個別に「何がまずかったのか」を分析したもの。
「どんな状況で失敗したか」「何をやってはいけなかったか」「正しくはどう対応すべきだったか」が整理される。同じ轍を二度と踏まないために、たった1回の失敗でも記録する。
Artifact-5. THOUGHT ― トレーナーの知見メモ
トレーナーが日々の指導で得た気づきを、「どんな状況で」「何を感じたか」「効果的だった言い回し」といった項目で登録する。
AIがこれを構造化し、再利用可能な知見に変換する。「夜食の報告が増えているクライアントには、夕食の満足感を上げる提案が効く」といったトレーナーの暗黙知が、システムの知恵になる。
これら5種類のArtifactは、ベクトルデータベースに格納される。
ベクトルデータベースとは「意味の近さ」で検索できるデータベースのことだ。
キーワード一致ではなく、「似た状況」「似た文脈」を探し当てられる。
だから次に似たような状況のクライアントが来たとき、AIはこれらの知恵を自動的に引っ張ってきて、コメント生成に活かすことができる。
6. 使えば使うほど賢くなる「正のスパイラル」
ここまでの話をつなげてみよう。
- トレーナーがデータを渡す。
- システムがデータを分析する。
- ナレッジベースからArtifactの検索をする。
- クライアントに向けて表現のチューニングを行う。
- A/Bで2パターンのコメントが生成される。
- 選択し、評価する。
- 評価結果を学習しナレッジにArtifactが追加される。
- そして、更にそのArtifactが検索される.....
実際の変化はこんな感じだった。
1週目:コメントは教科書的。
トレーナーの編集量が多い。
「ないよりマシかな」レベル。
4週目:コメントにトレーナーの口調が出始める。
「おっ、方向性は合ってるじゃん」と評価が上がり始める。
8週目:「......これ、私が書いたみたいだな」。
トレーナー自身が驚く瞬間が訪れる。
しかも、このシステムには 退役バッチ という仕組みもある。
長期間参照されなかった古い知識や、状況に合わなくなったArtifactを自動的に引退させる。知識が無限に溜まって陳腐化するのを防ぎ、常に「今使える知恵」だけが残る。
生成して、評価して、学んで、良くなって、また使う。
古くなったものは淘汰され、新しい知恵が生まれ続ける。
使うほどに回り続け、回るほどに良くなっていく。
さて、AIが「経験」を積んで賢くなる仕組みは分かった。
では、そのAIに渡す「今日のデータ」はどうやって作られるのか?
トレーナーがアップロードした1つのExcelから、AIが「今日のあなた」を理解するまでの道のりを、次回で語る。
コラム:「3日坊主」を科学する
ダイエットが続かない最大の理由、実は「やる気」じゃない。
ダイエットの失敗原因で最も多いのは、意志の弱さではなく フィードバックの欠如 だ。
「今日の食事が正しかったのか間違っていたのか」が分からないまま続けるのは、採点されないテストを毎日受けているようなもの。
そりゃ嫌になる。実はAIも全く同じ課題を抱えている。
評価データがなければ、AIは自分のコメントが良かったのか悪かったのかを知る術がない。
フィードバックなしでは、永遠に「カロリーを控えましょう」と言い続けるだけだ。人間もAIも、成長に必要なのは結局同じ3つ。 継続的な記録、正直なフィードバック、そして焦らない忍耐力。
そしてここに一つ皮肉がある。
ダイエッターの継続を助けるために作ったこのシステム、その学習精度を上げるには トレーナー自身が継続的に評価を入力し続ける必要がある のだ。
人に「続けましょう」と言う仕組みが、自分自身にも「続けてくれ」と頼んでいる。
なかなか示唆的ではないだろうか。
次回の記事:
「UKA-GYRE」開発記 シリーズ目次
読み物編 --- エンジニアでなくても楽しめる!
- プロローグ ― UKA-GYRE 開発記
- 読み物 第1回 ― ISTJには数字を、ENFPには共感を ― AIに「性格」を与えた日
- 読み物 第2回 ― 深夜3時はAIの経験値稼ぎタイム ― 「昇華」のメカニズム(この記事)
- 読み物 第3回 ― カロリーの数字の裏にある物語 ― AIが「今日のあなた」を理解するまで
- 読み物 第4回 ― 「何を書くか」より「どう伝えるか」 ― AIを使った大人の実験科学
- 読み物 第5回 ― 「AIが書いた」ではなく「AIと一緒に書いた」 ― Human-in-the-Loopという思想(完結)
- 読み物 番外 ― 自分が作ったAIに食べ過ぎを怒られ続けた話 ― 開発者の裏側
技術深掘り編 --- 設計判断と実装の詳細

