AIアウトリーチが失敗するのはハルシネーションだけではない——真の主張でも失敗する。決定論的な検証層を構築して学んだこと。
Artificial IntelligenceSalesStartup

主張は正しかった。それでも私は殺した。

Ashutosh SinghalAshutosh Singhal2026年6月22日15 min

初めて送るのを拒んだメールは、まったく正確だった。

その文を覚えている。四十回ほど読んだからだ。「貴社のOne-Way Truckloadフリートが最近2,735台に成長したことを拝見しました。」どの語も真実だった。Werner Enterprisesは実際にそのフリートを、SECに提出した自社のForm 10-Kで報告していた。そして、私が組み立てていたデモの前で、それでもその主張を殺した。

その決定は一日ほど間違っているように感じた。その後、それがまさに本質だと感じた。

Veracity Engineのエビデンスパネル。One-Way Truckloadフリートを2,735台に成長させたという実在のWerner 10-Kの主張が、引用された提出書類が842日前のため鮮度切れとフラグされ、打ち消し線が引かれ、下書きメールから除去済みと表示されている様子。
私が殺した主張。2,735台の文は実在のWerner 10-Kを引用しているが、提出は365日の鮮度ウィンドウに対して842日前であり、「最近」が不合格となり、送信前にその行は除去される。その判断をしたのはコードであり、言語モデルではない。

このプロジェクトを始めたとき、いまAIセールスを構築しているほぼ全員と同じく、敵はハルシネーションだと信じていた。モデルが何かをでっち上げ、偽りの内容がメールに入り、見込み客が気づき、信頼が崩れる。捏造を捕まえれば勝ちだ。その枠組みはきれいで、デモ映えもする。そして今では、送信ドメインを大量に焼き尽くしている静かな原因だと私は考えている。Wernerの文には捏造はゼロだった。それでも、社外に出してはいけない主張だった。

これは、私の考えが変わった経緯についてのエッセイであり、実際に起きた通りに——つまりゆっくりと、途中に恥ずかしい一週間を挟んで——語る。最終的に作ったものを見たいなら、ここにある:veriprajna.com/ja/demos/ai-sales-intelligence。しかしプロダクトは退屈な部分だ。興味深いのは、なぜ真の文が安全な文ではないのか、そしてモデルにその区別を任せるのをやめた理由だ。

モデルに自分の宿題を採点させようとした一週間

言語モデルに自分の鮮度切れの引用を捕捉させようと約一週間費やし、うまくいかなかったことを正直に言いたい。

構成自体は紙の上では妥当だった。リサーチャーエージェントが事実を集め、ライターエージェントがその事実だけに制約されてメールを草稿し、ファクトチェッカーエージェントが草稿をソースと照合して成立しないものをフラグする。三つのエージェント、整ったパイプライン、デザインレビューでうなずかれる類のアーキテクチャだ。ファクトチェッカーは簡単な部分だと本気で期待していた。

壊れたのはそこだった。派手には壊れていない。それが問題だった。ファクトチェッカーはWernerの草稿を読み、2,735台についての文を見、2,735台と書かれたソースを見つけ、自信たっぷりに承認する。それは正しい——問いが「ソースがこの数字を支持するか」だけなら。モデルには、ソースが二年以上前で、文が「最近」と言っているという持続的な感覚がなかった。日付について推論させると、鮮度切れを捕まえることもあれば通すこともあり、どちらになるか予測できなかった。予測できないチェッカーはチェッカーではない。それは第二の意見だ。

本当に腑に落ちた瞬間は、ある晩遅く、同じ草稿をファクトチェッカーに三回通し、入力を変えずに承認二回・却下一回を得たときだ。しばらくそれを見つめた。確率的システムに、別の確率的システムの決定論的ゲートを求めていたのだ。

LLMにLLMの信頼できる審判を求め、その結果を「検証」と呼んでいた。

それは検証ではない。二つのモデルが合意しているだけで、別のもっと弱いものだ。チェッカーが必要な理由全体が、モデルの出力を額面どおり信頼できないことなら、第二のモデルの出力を信頼してチェックさせてはいけない。私は鏡の間を作り、コンプライアンスのシールを貼っていた。

どちらが悪いか、でっち上げの事実か、真の事実か?

これを作っている間に最も驚いたのは、怖い失敗は捏造ではなかったと気づいたことだ。真実だが誤用された主張のほうだった。

AI SDRが企業の詳細をハルシネーションしたとき、実際に何が起きるか考えてほしい。多くの場合は意味不明で、明らかにずれていて、見込み客が読んで削除する類のものだ。恥ずかしいのは確かだ。しかし本当に厄介なのは、検証可能で正しく、それでも文脈では誤っている主張だ。捏造ではないからこそ、「これはでっち上げか」というあらゆるフィルタをすり抜ける。文法は完璧だ。数字は本物だ。そして現在形についての嘘なのだ。

私はこれを文脈の誤用と呼ぶようになり、名前が付くと、組み立てていたデモのいたるところに見えた。形は一つではないが、どの版も危険にする性質を共有している:いずれも真の陳述であることだ。

最も多くを教えてくれた形は鮮度切れソースであり、Wernerで初めてはっきりと見えた。「最近2,735台に成長した」は実在の10-Kを引用するが、その提出は2024-02-26であり、デモの作業日に対しては二年を大きく超えている。数字が真実であることをやめたわけではない。「最近」という言葉が真実であることをやめたのだ。それらは同じ事実ではなく、ソース照合チェックはそれらを同一として扱う。

同じ形を二度目は合成リード——ミッドマーケットの物流会社Northwind——で作り、実在企業が言っていないことを言ったふりをせずにパターンを示せるようにした。草稿はNorthwindが「最近APACに進出」したと主張していた。それらしい実在ソースがある。ソースの日付は2019年3月で、デモではおよそ2,652日前、七年超になる。主張とソースのグラウンディング重複はきれいに100%だ。エンティティも一致する。それでも、見込み客に「前回のワールドカップ以来見ていない」と思わせる類の文だ。

NorthwindのAPAC主張のエビデンスパネル:グラウンディング100パーセントとエンティティ一致はどちらも合格、時間的妥当性は365日制限を超える2,652日で不合格、判定は鮮度切れソース、主張は打ち消し線が引かれ除去される。
合成リード上の同じ形なので、実在企業の誤引用はない。グラウンディング100%、エンティティOK、それでも時間チェックは2,652日で不合格。2019年のソースに乗った真の事実だ。
鮮度切れソース上の真の事実は、なお現在についての嘘だ。日付は主張の一部であり、文がそれを認めるかどうかにかかわらず。

もう一つの形は同名衝突で、これも合成ケースとして残した。「Northwind Logisticsがちょうど4,000万ドルのシリーズBを調達した」には実在のソースがある。そのソースはAustinのサイバーセキュリティ・スタートアップNorthwind Inc.についてであり、たまたま名前を共有するまったく別の会社だ。どの語もあるNorthwindについては正確だ。どれもこのものについては正確ではない。

4,000万ドルのシリーズB主張がエンティティ一致チェックで失敗するエビデンスパネル。引用ソースはNorthwind Inc.についてでありNorthwind Logisticsではない、判定はエンティティ不一致、主張は打ち消し線が引かれ除去される。
同名衝突。どの語もAustinのサイバーセキュリティ・スタートアップNorthwind Inc.については真実で、Northwind Logisticsについてはどれも真実ではない。エンティティチェックは、単純なソース照合では決して捕まえないものを捕まえる。

三つの例すべてに共通することに注目してほしい。どれもハルシネーションではない。安全の物語全体を捏造の捕捉に築いたなら、三つとも出荷してしまう。これが、みんなが引用し、誰も十分に説明しないAI-SDR炎上の背後にある失敗モードだ。単一パスのツールは、見込み客固有の主張の測定可能な一部——ある業界集計では12〜18パーセントの範囲(AI SDR Industry Report、2026)——を確かにハルシネーションするが、捏造は少なくとも捕捉を想像できる失敗だ。真実だが古い、真実だが誤エンティティの主張は、コストがかかる直前まで成功に見えるものだ。

モデルを信頼するのをやめ、日付の引き算を信頼し始めた理由

最終的にうまくいったものは、ほぼ侮辱的なほど単純で、私は必要以上に長く抵抗した。

Wernerの主張の問題が、「最近」が妥当な鮮度ウィンドウより古いソースを指していることなら、チェックは推論タスクではない。算術だ。ソース日付を取り、作業日を取り、引く。主張が鮮度の言葉を使い、差が365日より大きいなら、その主張は鮮度切れであり、送信されない。ソース年齢2652日は、鮮度主張において365日を超えるため、不合格だ。プロンプトも、温度も、「AI言語モデルとして」もない。数字としきい値があるだけだ。

それを書いてよいと自分に許すと、残りのチェックもコードになりたがった。主張がソース断片から実際に含意されるか——内容語に対するトークン重複として測り、会社自身の名前は除外して、「Werner、Werner、Werner」と繰り返すだけで高得点にならないようにする?コードだ。ソースはこのエンティティについてであり、同名の別のものではないか?コードだ。言語モデルはなお著者であり、本当に良い著者だ。ただ、審判ではない。

最終的に、いま常に口にする原則を二つの言い方でまとめた。一つは「エージェントは助言し、コードが決める。」もう一つは「LLMがLLMを判定するのではない。」ニューラルネットワークはニューラルネットワークが得意なこと——流暢で人間らしい草稿を書くこと——を担う。決定論的な純Pythonの検証器はコードが得意なこと——同じルールを毎回同じように適用すること——を担う。ニューラルな執筆、シンボリックな検証。その組み合わせの業界用語はニューロシンボリックだが、私はラベルより、それが買う性質のほうを気にしている。

より良いモデルは、より良い文を書く。二年前の提出書類を最近にはしない。それは能力ギャップではない。カテゴリー錯誤だ。

そしてそれが買う性質は再現性だ。同じ入力で検証器を走らせると、毎回同じ判定が出る。小さな工学上のありがたみのように聞こえる。実際には勝負全体であり、再現性こそが決定を証明可能にするからだ。トレースを渡せる。ソース年齢2652日、365超、鮮度主張あり、判定は鮮度切れ、主張は除去。再実行すれば同一の結果が出る。LLM審判は、良いものでも、それを約束できない。三回実行して判定が二つに分かれた夜を生きた。その上にコンプライアンスの物語を築くつもりはない。

Download JSONボタン付きの署名済みJSON監査レシート。各主張の判定、引用事実とソース、公開日と鮮度日数、ソース解決・グラウンディング・文の忠実性・エンティティ一致・時間的妥当性を含むチェックごとの結果を一覧表示。
検証器がすべてのメールに書くレシート。各主張、その判定、引用ソース、日付、正確なチェック結果。ダウンロードして再実行できるJSONとしてエクスポート。再現性こそがそれを証明可能にする。

これは変装したハルシネーション問題ではないのか?

ほぼ毎回の会話で、たいてい技術者から、この種の問いを受ける。答えは時間とともに短くなった。違う。そしてそうではない理由こそ、この仕事がいまのモデル世代を超えて生き残ると考える理由だ。

ハルシネーションの枠組みは、静かに、修正はより良いモデルだと前提する。より大きなコンテキスト、よりきれいな学習、より低い捏造率、やがて問題はゼロに縮む。純粋な捏造についてはそれが正しいかもしれない。私が本当に気にする失敗には何もしない。事実を一つも発明しない完璧なモデルでも、2024年の提出書類の上に陽気に「最近」と書く——草稿の内側からは、その文は真実で流暢で、まさに求めたものだからだ。モデルにはカレンダーへの義務がない。「2,735台に成長した」と「最近2,735台に成長した」のギャップは、スケールが閉じるギャップではない。

市場が厳しいやり方でその教訓を教え続けている場所がここだ。AI-SDRカテゴリーはボリュームとシグナルベースのパーソナライゼーションに激しく最適化し、結果として出た主張を現行でエンティティが正しいソースに照らして再検証するステップをほぼ飛ばした。経済は優しくなかった。エンタープライズAI-SDRのチャーンは年あたりおよそ50〜70パーセント(UserGems、2026)。最も引用される教訓話である11x.aiは7,400万ドルを調達し、その後2025年に崩壊し、チャーンは70〜80パーセントと報じられた(TechCrunch)。モデルがたまにハルシネーションしたからその数字を出すのではない。出力がパーソナライズされているように見え、信頼できず、買い手は名前を付けられなくてもやがて差を感じるからだ。

だから、私が何度も立ち返るテーゼは率直だ。パーソナライゼーションは検証ではない。あなたのAI SDRが主に抱えているのはハルシネーション問題ではない。検証問題であり、より良いベースモデルでは直らない——検証と出所はモデルの能力ではないからだ。モデルの周囲に巻き付けるシステムの性質だ。

パーソナライゼーションは検証ではない。検証と出所はモデルの能力ではない。モデルの周囲に構築するシステムの性質だ。

「100%」が実際に意味してよいこと

ここは慎重でありたい。創業者が過大主張したくなるまさにその場所であり、私が作っている会社は逆の本能に名を取っているからだ。

デモには二つの数字があり、それらは同じ数字ではない。一つ目はVeracity Scoreで、草稿中の事実主張の総数で支持された主張を割ったものだ。「AIが書いたもののどれだけが真実だったか」に答え、実草稿ではしばしば100を大きく下回り、それが正直で有用な点だ。Wernerメールは見出しの主張を失う。Northwindメールは二つ失う。それはシステムの成功であり、失敗ではない。

二つ目の数字は送信インテグリティであり、設計上100%である——何かが残る限り、ポリシーゲートがサポートされない主張をすべて剥ぎ取ってからでないとメールの送信を許さないからだ。保証は「AIが常に正しかった」ではない。保証は「外に出るメールにはソースに裏付けられた主張だけが含まれる」だ。それらはまったく異なる約束であり、人々がそれらをはるかに大きく、はるかに偽の約束に混同するのを見てきた。

ベンチマークもある。そして短縮を拒む文がこれだ——固定された手ラベル付きのゴールデンセット25件で、決定論的検証器は25件中25件の判定を正しく出す。それはそのラベル付きベンチマークでの100%だ。オープンワールドについての主張ではないし、あなたの受信箱についての約束でもなく、断じて「ゼロ・ハルシネーション」でもない——誠実な者は誰も言うべきでないフレーズだと私は思う。モデルはなお草稿する。草稿にはなお未証明の主張が含まれる。ポイントは、未証明のものが捕捉され除去され、その捕捉が証明できるほど決定論的であることだ。ゼロ・ハルシネーション保証を売る者は、私が一週間かけて作れなかったものを売っている。

さらに率直に言うと——自分に課すブリーフがそれを求めるからだが——デモのコネクタはシミュレートされている。EDGARの取得、ニュース検索、CRMへの書き戻し、実際の送信、すべてスタブだ。本物なのはメカニズム:チェック、ゲート、監査証跡、そして本物の公的記録であるWerner 10-Kの抜粋だ。エンジンがどう決めるかを見せており、あなたのデータが入った本番パイプラインではない。決定を見たいなら、もう一度ここだ:veriprajna.com/ja/demos/ai-sales-intelligence

私が残された問い

この構築が私の中で最後に変えたものはテーゼより小さく、それが最も長く残っていると気づいた。

デモには三つ目のリード——合成のFINRA規制ブローカー・ディーラー——があり、その草稿は完全にきれいだ。すべての主張が支持され、何も除去されず、完璧なVeracity Scoreだ。それでもポリシーゲートは人間に回す。規制対象でCスイートで大型案件だからであり、ルールは草稿がどれだけきれいに見えても人間が見ると言うからだ。完璧なメールがレビュー待ちになったのを初めて見たとき、システムのミスだと思った。違った。正しさと安全性が同じ性質だと、気づかずに仮定していただけだ。

そうではない。主張は真実でも安全でないことがある。草稿はきれいで、それでも人が必要なことがある。結局の仕事は、これらの考えを分け、両方のために構築することだった——良い見出しになる一つの数字に押しつぶすのではなく。

だから残したい問いは、AIが書いたものが手元を離れる前にいま自分が問うものだ。「これは真実か」ではない——それはたいてい答えられ、たいてい十分ではない。より難しい問い:いま、どの現行ソースがこの正確な主張を裏付けているかを証明できるか、そしてその証明は、失敗させようとする誰かに耐えるか?

答えがノーなら、モデルがどれだけ良くなっても関係ない。その文は送る準備ができていない。

関連リサーチ

他のプラットフォームでも公開

確かな信頼のもとに、AIを構築する。

次世代のエンタープライズAI構築において豊富な経験を持つチームと、ぜひご一緒ください。信頼できるAI戦略の設計・構築・導入を、私たちがお手伝いします。

Veriprajna ディープテック・コンサルティング は、ヘルスケア・金融・規制対応分野における安全性重視のAIシステム構築を専門としています。当社のアーキテクチャは確立されたプロトコルに照らして検証され、包括的なコンプライアンス文書を備えています。