ここは一旦保留中LLMでどのグラフを使うか決定しているので。
1) 設定値の意味まとめ(config直書き用メモ)
工程4の tie-break を入れる前提で、registry が参照する“しきい値”系はだいたいこの3段階です。
A. ルールだけで確定できる条件(LLM呼ばない)
STRONG_MIN_CONF- 意味: **最上位候補の confidence がこの値以上なら「ほぼ当たり」**として確定して良い、という閾値
- 目安: 0.75〜0.90
- 上げると: 誤判定が減るが、曖昧扱いが増える(table.generic に落ちやすい / tie-break 発動しやすい)
- 下げると: 決まりやすいが誤判定が増える
STRONG_MIN_GAP(best と 2nd の差)- 意味: **1位と2位の差がこれ以上なら「競合してない」**として確定して良い、という閾値
- 目安: 0.08〜0.15
- 上げると: 競合扱いが増える(LLMやfallbackに寄る)
- 下げると: 競合でも確定してしまう(誤判定が増える)
STRONG_IF_SINGLE_CANDIDATE- 意味: 候補が1つしか出てないなら gap を見ずに確定するか
- 目安: True(普通はこれでOK)
B. 「曖昧」と判定する条件(ここだけ tie-break を呼ぶ)
AMBIG_MIN_CONF- 意味: best.confidence がこの値未満なら 曖昧(=人間が見ても微妙)
- 目安: 0.55〜0.75
AMBIG_MAX_GAP- 意味: best – second がこの値未満なら 曖昧(=競合)
- 目安: 0.06〜0.12
使い分けイメージ
- “確定”:
best.conf >= STRONG_MIN_CONFかつgap >= STRONG_MIN_GAP(or 候補1つ)- “曖昧”:
best.conf < AMBIG_MIN_CONFまたはgap < AMBIG_MAX_GAP- それ以外: ルールでbest採用(used_llm=false)でもOK(運用次第)
C. LLM tie-break に渡す入力量の上限(安全・コスト)
TIEBREAK_MAX_INPUT_ROWS- 意味: LLMに渡す rows の最大(サンプル)
- 目安: 20〜50(多すぎるとノイズ + トークン増)
TIEBREAK_MAX_COLS- 意味: LLMに渡す列数上限
- 目安: 15〜30
TIEBREAK_TIMEOUT_S / TEMPERATURE / MODEL- 意味: 失敗しても必ず
table.generic.v1に落とす前提なので、保守的に - 目安: timeout 5〜15s、temperature 0.0〜0.2
- 意味: 失敗しても必ず
コメントを残す