पाठ 6 / 25
Grounding और Hallucination नियंत्रण
उत्तरों को retrieved प्रमाण से जोड़ें और उन दावों को चिह्नित करें जिन्हें स्रोत समर्थन नहीं देते।
प्रमाण से उत्तर दें
Hallucination के विरुद्ध सबसे अच्छा बचाव grounding है: model को संबंधित स्रोत text दें (retrieval), उसे निर्देश दें कि उत्तर सिर्फ़ उसी text से दे और जब उत्तर वहाँ न हो तो कहे, और उससे अंश उद्धृत करने को कहें। फिर ऐसी जाँच जोड़ें जो उत्तर की तुलना स्रोतों से करे। मोटी जाँच भी, जैसे उत्तर के कितने शब्द स्रोत में हैं, नए दावे जोड़ने वाले वाक्य चिह्नित कर सकती है। मज़बूत जाँचें दूसरे model या entailment classifier उपयोग करती हैं, जिनकी अपनी त्रुटि दरें हैं।
मोटा समर्थन score, चलाकर
मैंने यह चलाया। पहला वाक्य स्रोत से पूरी तरह ढका है (1.0); दूसरा "water damage and theft" जोड़ता है जिसका स्रोत में ज़िक्र नहीं, इसलिए उसके सिर्फ़ आधे शब्द समर्थित हैं (0.5)। यह सिखाने का खिलौना है, production जाँच नहीं।
import re
src = "The warranty lasts 12 months and covers manufacturing defects only."
def support(sentence, source):
w = set(re.findall(r"[a-z0-9]+", sentence.lower()))
s = set(re.findall(r"[a-z0-9]+", source.lower()))
return round(len(w & s) / len(w), 2)
for sent in ("The warranty lasts 12 months.",
"The warranty also covers water damage and theft."):
print(support(sent, src), sent)
Output:
1.0 The warranty lasts 12 months. 0.5 The warranty also covers water damage and theft.
"मुझे नहीं पता" की अनुमति दें
Models वहाँ भी उत्तर देने की प्रवृत्ति रखते हैं जहाँ उन्हें नहीं देना चाहिए। निर्देशों में स्पष्ट कहें कि अनुमान न लगाने से मना करना सही है, और ऐसे सवालों से परखें जिनके उत्तर दस्तावेज़ों में नहीं हैं।
त्वरित जाँच: दस्तावेज़ Q&A bot में hallucination घटाने का अच्छा निर्देश कौन-सा है?
- अनिश्चित हो तो अनुमान लगाओ
- हमेशा आत्मविश्वासी लगो
- स्रोतों का कभी ज़िक्र न करो
- सिर्फ़ दिए text से उत्तर दो और वहाँ न हो तो कहो
Answer
सिर्फ़ दिए text से उत्तर दो और वहाँ न हो तो कहो — उत्तर को दिए प्रमाण तक सीमित करना और "नहीं मिला" की अनुमति गढ़ने का दबाव हटाती है।