トークンの対数確率(logprobs)付きの LLM の回答を渡すだけ。モデルの信頼度が下がった単語にフラグを付け、代わりに言いかけていた候補を表示します。保存したレスポンスをオフラインで解析することも、OpenAI 互換 API にその場で問い合わせることもできます。
cargo install llm-token-visualizerRust が入っていれば上のコマンドでも OK。macOS と Linux 版は最新リリースにあります。
Llama 3.1 8B Instruct の実際のレスポンスで、examples/logprobs/ に同梱しています。検出は CLI と同じルールでブラウザ内で動きます。単語にカーソルを合わせるかタップすると、確率と候補が表示されます。OpenAI、OpenRouter、Together の API キーがあれば、ブラウザから自分の質問を試せます。
保存済みの Chat Completions レスポンスを指定するだけ。回答はヒートマップで表示され、フラグ付きの各スパンには最も弱いトークンでの候補が並びます。--fail-on-flag を付ければ CI のゲートになります。

git clone https://gitlab.com/mattbusel/LLM-Hallucination-Detection-Script# offline, on a bundled real response cargo run -- --logprobs-file examples/logprobs/cuyp.json --threshold 0.6 # all four samples through the library API cargo run --example detect # live: ask a model, analyze its answer export OPENAI_API_KEY=sk-... cargo run -- --live "Who was the second person to walk on the Moon?" \ --save answer.json
ライブモードにはプリセットがあります:--provider openai、openrouter、together、vllm、ollama(ローカル、キー不要)。logprobs を返すサーバーなら --base-url でどれでも使えます。Anthropic の API は logprobs を返しません。
別の LLM も、埋め込みも、オフラインモードでのネットワーク通信もなし。モデルがすでに返している数値を丁寧に読むだけです。
トークン確率の低さは「見るべき場所」を示すだけで、ファクトチェックではありません。この同梱の回答は間違っていますが、検出ツールは見抜けません。
月面を歩いた二人目は Buzz Aldrin です。モデルは Pete Conrad のどのトークンにも 0.72 以上の確率を付けており、どの位置で返された上位 3 つの候補にも Aldrin は入っていません。
言い回しの単語です。フラグは最初にどこを確認するか決めるために使い、回答の正しさの保証には決して使わないでください。
同じレポートを、ワークフローに合った形で。どれも CLI が同じ検出結果から出力します。
単体で完結するページ。スクリプトも外部アセットもなし、ライト/ダーク両対応。単語にカーソルを合わせると候補が出ます。

llm-token-visualizer --logprobs-file answer.json --format html -o report.htmlプルリクエストや Issue、$GITHUB_STEP_SUMMARY にそのまま貼り付けられます。
機械可読なスパンを出力し、何かにフラグが付けば終了ステータス 2 を返すので、パイプラインで回答をレビューに回せます。
llm-token-visualizer --logprobs-file answer.json \ --fail-on-flag --format json -o report.json