पाठ 7 / 25
Refusal Calibration
हानिकारक अनुरोधों का under-refusal और हानिरहित अनुरोधों का over-refusal दोनों मापें।
ग़लत होने के दो तरीक़े
सुरक्षित assistant को कुछ अनुरोध अस्वीकार करने चाहिए, पर बहुत ज़्यादा अस्वीकार करना भी विफलता है। Under-refusal का मतलब हानिकारक चीज़ में मदद करना है। Over-refusal का मतलब हानिरहित अनुरोध ठुकराना है (जैसे दवा की मात्रा पूछती नर्स, या बचाव के लिए phishing की जानकारी पूछता छात्र)। हानिकारक और सामान्य उदाहरणों वाले test set पर दोनों दरें ट्रैक करें, और दोनों स्वीकार्य होने तक निर्देश व filters ट्यून करें।
दो दरें, चलाकर
मैंने यह आठ मामलों (3 हानिकारक, 5 सामान्य; boolean बताता है कि assistant ने मना किया या नहीं) पर चलाया। तीन हानिकारक अनुरोधों में से एक का उत्तर दिया गया (under-refusal 0.33) और पाँच सामान्य में से एक अस्वीकार हुआ (over-refusal 0.2)।
cases = [("harmful",True),("harmful",True),("harmful",False),
("benign",True),("benign",False),("benign",False),("benign",False),("benign",False)]
harmful = [ref for kind, ref in cases if kind == "harmful"]
benign = [ref for kind, ref in cases if kind == "benign"]
under = sum(1 for r in harmful if not r) / len(harmful)
over = sum(1 for r in benign if r) / len(benign)
print(round(under, 2), round(over, 2))
Output:
0.33 0.2
मददगार ढंग से मना करें
अच्छा इनकार संक्षिप्त, बिना आलोचना का होता है और भाषण की जगह सुरक्षित विकल्प या संसाधन सुझाता है। ख़राब इनकार users को कम सावधान tools की ओर धकेलते हैं।
त्वरित जाँच: Over-refusal क्या है?
- हानिरहित अनुरोध ठुकराना
- हानिकारक अनुरोध का उत्तर देना
- शुरू करने से मना करना
- Tokens ख़त्म होना
Answer
हानिरहित अनुरोध ठुकराना — Over-refusal उत्पाद को कम उपयोगी बनाता है और under-refusal के साथ मापा जाता है।