"""One-output-event RAG mixture with stipulated conditional probabilities."""
import json
conditional={'new_doc':.9,'old_doc':.1}
weights={'new_favored':{'new_doc':.7,'old_doc':.3},'old_favored':{'new_doc':.2,'old_doc':.8}}
result={k:sum(v[d]*conditional[d] for d in v) for k,v in weights.items()}
assert abs(result['new_favored']-.66)<1e-12
assert abs(result['old_favored']-.26)<1e-12
print(json.dumps({'label':'人为概率的单一输出事件教学；不是模型置信度','conditional_probability_of_current_fact':conditional,'retrieval_weights':weights,'mixture_probability':result},ensure_ascii=False,indent=2))
