Intent Classification(意図分類)|チャットボットが自然に会話するために必要なもの
作成日:2025-06-03
更新日:2025-06-03

Intent Classification

Intent ?

日本語で言えば、
意図(Intent)を
分類すること
AIの意図分類(Intent Classification)って何?
ボットが一つの窓口でいろんな質問に答えようとする時。
まずやらなあかんのが「これって何の話?」って見分けること。
たとえば、こんな質問が飛んでくるとして。
- 「今の天気は?」
- → 天気APIを叩く系
- 「ありがとう」
- → 雑談として処理
- 「PDFを読んで教えて」
- → 自社文書の検索
- 「明日の会議予定ある?」
- → スケジュール確認
これを一つの入口で全部受け付けて、正しい返しをするには、まず“分類”せんと始まらんわけや。
チャットボットでの Intent Classification のやり方
チャットボット界では、大きく分けてこんな方法が使われてる。
Rule-based(ルールベース)
「ありがとう」「よろしく」みたいなキーワードで条件分岐。
手作業やけどシンプルで速い。精度はまあまあ。
MLモデル(機械学習)
過去の会話ログを学習させて、「これは雑談」「これは質問」って自動で判断。
精度は高いけど、学習データと保守がちょい重め。
LLM利用(ChatGPTなど)
プロンプトで「これって何系の質問?」って分類させる。
ラクやけどAPIコストがかかる。
ハイブリッド型
最初はRuleでふるいにかけて、あいまいなやつだけLLMに回す。
速さと精度のバランスが良くて、実用的なやり方。
実例:GoogleやLINE Botでも採用されてる
たとえばDialogflow(Google AssistantやLINE BOTで使われるやつ)も、
- ユーザーの入力を「Intent」として分類
- そのIntentに応じた処理や返事を実行
- GUIで「どんな言葉がどのIntentか」設定できる
つまりIntent分類って、**会話設計の“心臓部”**なんよ。
よくある誤解と実際の構造
意外と多いのが、「AIなら勝手にええ感じにやってくれるやろ!」って思い込み。
でもな、現実はぜんっぜんちゃうねん。
みんなの期待 | 実際にやってること |
---|---|
勝手に意図を読み取ってくれるやろ? | ルールや分類器で「これは雑談」「これは質問」って一つずつ設計してる |
適当に答えてくれるんちゃう? | DB検索とかRAGとかで、構造設計しながら返してる |
文脈もずっと覚えてるはず | ログを残して順番や構造まで管理してる |
どんなファイルでも答えてくれるやろ? | PDFごとにインデックス作って、フィルターも実装してる |

裏では、
地味に分類してるんだ
魔法感を作るための「地道な構造設計」
AIが自然に見える裏には、こんだけの設計が詰まってる。
- ルールで意図分類
- 質問文をチャンク分割
- ベクトル検索
- 結果の整形
- 文章の生成
- ログ出力と構造管理
ここまでして、ようやく「あっ、なんか自然に答えてくれた」ってなるわけ。
まとめ
意図分類は、複数の機能を持たせたボットには絶対必要な設計やで。
結局、ボットにとって「これは質問?お願い?それとも世間話?」ってのは、教えられんとわからん世界。
そしてその“教え”をどうデザインするかが、チャットボット設計の奥深いところ。

ひとことで言うと
けっこう大変なんだってこと
2025-06-03
編集後記:
この記事の内容がベストではないかもしれません。
記事一覧
-
[LangChain]FAISS.load_local LangChainのFAISS.load_localとは|検索インデックスを再利用する方法 -
[What's AI ?]AI is the brain, robots are the body. AIの基礎知識|そもそもAIとロボットの違いは?(2025年) -
Why Pythonfor AI? なぜAI開発はPythonでおこなうの? -
[What's AI ?]Basic Knowledge 生成AIの基礎知識|四天王の得意技とディープフェイクまとめ(2025年) -
[ChatGPT]How to workwith it. ChatGPTとの付き合い方|AIを犬型ロボットとして理解する(2025年) -
[LangChain]thresholdしきい値 LangChain のthreshold(しきい値)とは|ベクトル検索における「信用のボーダーライン」設計