技術コラム
AIチャットボットの精度は、AIモデルではなく「材料の作り方」で決まる
AIモデルの差は、思っているより小さい
ホームページの内容を答えるAIチャットボットは、どの製品も内部でほぼ同じことをしています。訪問者の質問に近い箇所を、あらかじめ取り込んだサイトの文章から探し出し(検索)、見つかった箇所を材料にしてAIが回答文を書く(生成)。この「検索してから生成する」方式は RAG と呼ばれ、今では標準的な作り方です。
生成を担うAIモデルは、正しい材料を渡せばどのモデルでもだいたい正しく書きます。逆に、材料が間違っていれば、どんなに高性能なモデルでも間違えます。つまり精度の差は、モデルの前段、「何を材料として渡すか」を決める工程で生まれます。ここは製品ごとの作り込みで、外からは見えません。
精度が決まる7つの場所
1. 検索 ― 短い聞き方を取りこぼさないか
多くの製品は「意味の近さ」で文章を探す検索(ベクトル検索)を使います。言い回しが違っても意味が近ければ見つかる、優れた方式ですが、弱点があります。「料金はいくら?」のような短い質問は、意味の情報が少なく、料金表のページと結びつきにくいのです。
対策は、意味の近さに加えて「質問の言葉が本文にあるか」も見て探すこと(ハイブリッド検索)。地味ですが、この違いは訪問者には「なぜか答えてくれない」としか見えません。
2. 取り込みの質 ― ゴミが混ざっていないか
「URLを登録するだけ」で動く製品は、ページからどの部分を本文として取り込むかを自動で判断しています。ここが雑だと、ナビゲーション、フッター、ふりがな、画面イメージの中のダミー文言までが「知識」として混ざります。すると検索の上位がゴミで埋まり、本当の答えが埋もれます。
3. 文章の切り方 ― 一番近い答えが埋もれていないか
取り込んだ文章は、検索しやすい長さの塊(チャンク)に切って保存されます。文字数で機械的に切ると、複数のFAQや機能説明が1つの塊に入り、質問に一番近い部分が他の話題に薄められて上位に来なくなります。見出し単位で切るだけで、正しい根拠を1件目で取れる率が数ポイント変わりました。
4. 答えない判断 ― 知らないことを作文しないか
ここは精度というより設計思想です。根拠が弱いときに黙るか、それらしく作文するか。作文する製品は「賢そう」に見えますが、間違った案内をお店の名前で出します。営業時間や料金の間違いは、クレームに直結します。「根拠が見つからなければ答えず、問い合わせ先を案内する」作りになっているかは、必ず確認したい点です。
5. 多言語 ― 訳してから探しているか
日本語で書かれたサイトに外国語で質問されたとき、そのまま検索すると、言語をまたぐぶんだけ一律に精度が下がります。韓国語では「関係ある質問」のスコアが「無関係な質問」より低くなる、という現象も測って初めて分かりました。質問をいったん日本語に訳してから探す、という一手間で解決しますが、これも外からは見えない作り込みです。
6. 更新 ― 古い答えを出し続けていないか
どんなに検索が良くても、取り込んだ情報が古ければ古い答えになります。サイトを自動で定期的に読み直しているか、変わったページだけを賢く取り込み直しているか。地味ですが、料金改定や営業時間の変更のたびに手作業が要る製品は、いずれ放置されます。
7. 会話の流れ ― 追質問で話題を取り違えないか
チャットでは、1回で聞き終わることはあまりありません。「駐車場はありますか?」と聞いた人は、続けて「料金は?」と聞きます。人間なら駐車場の料金だと分かりますが、検索に渡るのが「料金は?」という文だけだと、駐車場とは関係のない料金の情報を見つけてしまいます。回答を書くAIには会話の流れが見えていても、渡された材料が別の話題なら、正しくは答えられません。
対策は、続けての質問をそれまでの会話を踏まえて「駐車場の料金はかかりますか?」と補ってから探すこと。補うのは会話に出てきた話題だけで、話していない条件は付け足しません。1問だけのデモでは見えない差なので、確かめるには続けて質問してみるしかありません。
自社で測ってみた
「精度が上がった」を感覚で言わないために、質問セットを作って測っています。自社サイトの内容について54問(日本語33問、英語・中国語・韓国語で21問)。答えられるはずの質問には「この箇所が根拠になるべき」を決めておき、答えてはいけない質問(サイトに無い話題)も10問混ぜます。測るのは次の2つです。
- 正しい根拠を取れた率:検索の上位に、答えの根拠となる箇所が入ったか
- 答える/答えないの判断が正しかった率:無い話題を「答えない」と判断できたか
この質問セットで、上に挙げた対策を1つずつ入れながら測った結果です(正しい根拠が検索の上位1件に入った率)。
| 段階 | 上位1件 | 上位4件 |
|---|---|---|
| ベクトル検索のみ | 64% | 89% |
| +ハイブリッド検索 | 82% | 98% |
| +見出し単位の切り方 | 89% | 98% |
※ 自社サイト(1ページ・54問)での測定。ナレッジの内容や規模によって数値は変わります。AIモデルは全段階で同じものを使っています。
AIモデルには一切触れずに、検索の作り方だけでこれだけ動きます。「どのAIを使っているか」より、こうした測定をしているかどうかのほうが、精度を語る上では本質的だと考えています。
検索の測定とは別に、正しい根拠を渡したときに、AIがそのとおりに答えるかも確かめています。AIは一般的な常識を強く覚えているので、根拠を渡しても常識の側で答えてしまうことがあるからです。「見積もりは有料」「定休日は水曜日で、日曜日は営業」のように常識と逆のルールを登録し、そのルールどおりに答えるかを、設定やAIモデルを変えるたびに確かめています。続けての質問(上の7.)も同じように確かめています。
製品を選ぶときに聞く6つの質問
デモを見るときや商談で、次の質問をしてみてください。作り込みの深さがそのまま答えに出ます。
- 知らないことを聞かれたら、どうなりますか?「答えられません」と言って問い合わせ先を案内するのが正解です。それらしく答える製品は、導入後に必ず問題を起こします。
- 「料金はいくら?」のような短い聞き方でも大丈夫ですか?その場でデモに打ち込むのが確実です。意味の近さだけで探す製品は、ここで取りこぼします。
- ホームページを更新したら、回答はいつ変わりますか?自動で読み直す周期と、変わったページだけを取り込み直す仕組みがあるかを確認します。
- 外国語の質問は、どう処理していますか?「訳してから探す」と答えられるかどうか。「AIが多言語対応なので」だけの答えは、測っていない可能性があります。
- 続けて質問したら、話題を覚えていますか?デモで「駐車場はありますか?」→「料金は?」と続けて聞いてみてください。別の料金を答える製品は、質問の文だけで探しています。
- 精度をどうやって測っていますか?質問セットで測っている製品は、数字で答えられます。答えられない製品は、精度を感覚で語っています。
まとめ
AIチャットボットの精度は、AIモデルの性能ではなく、検索・取り込み・切り方・答えない判断・多言語・更新・会話の流れという「材料を作る工程」で決まります。そして、その工程の良し悪しは外からは見えず、実際に自分のサイトで試して、意地悪な質問をぶつけてみるのが一番の確認方法です。
サンノートAIは、ホームページのURLを登録するだけで5分で動きます。ご自身のサイトで、上の6つの質問をそのまま試してみてください。