🧠

LLMを使わずに「人格のある対話AI」を作ろうとして考えたこと

に公開

LLMを使わずに「人格のある対話AI」を作ろうとして考えたこと

— 個人開発における非LLM対話AIとLLM方式の比較 —

はじめに:なぜLLMを使わない対話AIを考えたのか

個人開発で対話AIを作るなら、今はLLMを使うのが最短ルートです。
実際、APIを呼べばそれらしい会話はすぐに成立します。

それでも私は、あえてLLMを使わない構成を検討しました。

理由は単純で、

  • 人格や口調が安定しない
  • なぜその発言になったのか説明できない
  • 「それっぽいが信用できない」挙動が気になった

といった違和感を、実装を進めるほど強く感じたからです。

この記事では、
LLMを使わない対話AIを個人で構築する場合に何が可能で、何が難しいのかを、
設計視点で整理します。


理想とする「人間らしい対話AI」とは何か

私が理想とした対話AIは、単なるQ&Aマシンではありません。

  • 自分自身を一つの存在として認識している
  • 感情や状態を内部に持ち、会話に反映される
  • 会話の流れを理解し、能動的に振る舞える

心理学で言われる基本感情(喜び・悲しみ・怒り・恐れなど)を
内部状態としてモデル化し、
それが発話の文体や態度に影響する──
そんな「人格の一貫したAI」を理想像としました。


現実的に作れる最小構成(非LLM)

理想像をそのまま実装するのは非現実的です。
そこで、個人のPC環境でも構築可能な最小構成を考えました。

自然言語理解(NLU)

  • 形態素解析やキーワード判定
  • 正規表現やルールによる意図分類
  • 必要に応じて簡易的な感情判定

知識ベースと人格プロファイル

  • AI自身の設定(名前・性格・立場)
  • 雑談用の話題・定型知識
  • 明示的に管理できる構造

感情・状態モデル

  • 数値やフラグによる感情状態
  • 会話モード(聞き役・軽口など)
  • 状態によって応答トーンを切り替える

対話管理(Dialog Manager)

  • if-thenベースの明示的な制御
  • 発話内容・タイミングの管理
  • ランダム性を加えた応答選択

自然言語生成(NLG)

  • テンプレートベース
  • 言い換え辞書や文型パターン
  • 必要最小限の多様性確保

LLM方式と比較して見えた非LLM方式の強み

人格と口調の一貫性

非LLM方式では、
人格が設計通りにブレないという大きな利点があります。

LLMは柔軟である一方、
文脈や指示によって人格が簡単に変化してしまいます。

自律性と能動性

対話管理を自前で持つことで、

  • 話題を振る
  • 沈黙を埋める
  • 会話をリードする

といった挙動を明示的に設計できます。

制御性と安全性

  • 何を言うかが完全に把握できる
  • 不適切な話題を確実に排除できる
  • 誤情報を出さない構造を作れる

ブラックボックスにならない点は、個人開発では特に重要です。

リソース効率

  • GPU不要
  • オフライン動作可能
  • 組み込みやローカル実行が容易

それでも非LLM方式が抱える限界

正直に言うと、欠点も明確です。

表現力と自然さ

テンプレート中心の生成では、
LLMのような自然さ・創造性には及びません。

知識量の限界

知識ベースは手作業で増やす必要があり、
網羅性ではLLMに勝てません。

学習・適応の弱さ

  • 自動で賢くなることはほぼない
  • 改善は開発者の手作業頼み

想定外入力への弱さ

オープンドメイン雑談では破綻しやすく、
ロバスト性確保が難しいのも事実です。


結論:どちらを選ぶべきか

両者を比較した結果、私は次のように考えています。

  • 人格・制御・安全性重視 → 非LLM方式
  • 自然さ・知識量・汎用性重視 → LLM方式

個人開発では、
「何をAIに任せ、何を設計者が管理するか」を
意識的に選ぶことが重要です。

万能AIを目指すより、
目的を絞った対話エージェントの方が、
結果的に満足度の高いものになります。


おわりに

LLMは非常に強力ですが、
すべてを任せると「理解できない存在」になりがちです。

非LLM方式は不器用ですが、
挙動を理解でき、説明できるAIを作れるという魅力があります。

この記事が、
「LLM以外の選択肢」を考えるきっかけになれば幸いです。


Discussion