बराबर मानों की औसत रैंक
अधिकतम 1000 सीमित संख्यात्मक मानों को मूल स्थान रखते हुए एक से शुरू औसत रैंक दें।
from math import isfinite
def average_ranks(values):
if type(values) not in (list, tuple) or len(values) > 1000:
raise ValueError("values.container")
values = tuple(values)
if len(values) > 1000 or any(
type(v) not in (int, float) or
(type(v) is float and not isfinite(v)) for v in values
):
raise ValueError("values.invalid")
order = sorted(range(len(values)), key=values.__getitem__)
result = [0.0] * len(values)
first = 0
while first < len(order):
end = first + 1
while end < len(order) and values[order[end]] == values[order[first]]:
end += 1
rank = (first + 1 + end) / 2
for i in order[first:end]:
result[i] = rank
first = end
return resultलागू करने से पहले समीक्षा करें
वास्तविक व्यवहार की अपेक्षित परिणाम से तुलना करें। जाँच असफल हो तो अगले बदलाव से पहले कारण समझें।
मॉडल
बेस URL और आवश्यक होने पर API कुंजी से OpenAI-संगत या Anthropic endpoint सेट करें। कनेक्शन जाँचें। स्थानीय मॉडल सर्वर चालू होना चाहिए; दूरस्थ उपकरण अलग से डेटा भेज सकते हैं।
प्रोजेक्ट
बराबरी, ऋणात्मक मान और खाली इनपुट जाँचें तथा छँटाई से पहले बूलियन और गैर-सीमित दशमलव मान अस्वीकार करें।
from math import isfinite
def average_ranks(values):
if type(values) not in (list, tuple) or len(values) > 1000:
raise ValueError("values.container")
values = tuple(values)
if len(values) > 1000 or any(
type(v) not in (int, float) or
(type(v) is float and not isfinite(v)) for v in values
):
raise ValueError("values.invalid")
order = sorted(range(len(values)), key=values.__getitem__)
result = [0.0] * len(values)
first = 0
while first < len(order):
end = first + 1
while end < len(order) and values[order[end]] == values[order[first]]:
end += 1
rank = (first + 1 + end) / 2
for i in order[first:end]:
result[i] = rank
first = end
return resultबराबर मानों को परिणाम में स्पष्ट स्थान दें
RankTrell डेटा नियमों को कार्यान्वयन बदलावों में बदलने वाले डेवलपर के लिए Windows एआई कोडिंग कार्यक्षेत्र है। प्रोजेक्ट खोलें और बताएँ कि अनुप्रयोग बराबर मान, अनुपस्थित परिणाम और इनपुट-आउटपुट क्रम के संबंध को कैसे सँभाले। जुड़े मॉडल से गणना और उपयोगकर्ता कोड जाँचवाएँ, ताकि प्रस्ताव केवल क्रमबद्ध सूची बनाने के बजाय व्यावसायिक नियम को संबोधित करे।
ranks.py का संदर्भ बराबर मानों के लिए औसत रैंक के कार्य का सुझाव देता है। पूछ सकते हैं कि परिणाम मूल स्थानों से कैसे जुड़ते हैं, फिर प्रोजेक्ट अलग व्यवहार करे तो केंद्रित संपादन माँगें। ज्ञात उत्तर वाले छोटे उदाहरणों से चर्चा ठोस रखें। बराबरी की नीति और अनुप्रयोग के बाकी हिस्से को लौटाए निरूपण, दोनों देखें।
कार्यान्वयन समीक्षा के लिए तैयार हो तो बराबर मानों, ऋणात्मक मानों और अस्वीकार किए जाने वाले इनपुट पर प्रोजेक्ट जाँचें चलाएँ। वास्तविक परिणामों को संपादन से पहले सहमत उदाहरणों से मिलाएँ। RankTrell आवश्यकतानुसार क्रेडेंशियल लेकर OpenAI-संगत या Anthropic मॉडल एंडपॉइंट समर्थित करता है। कनेक्शन से उपलब्ध अप्रतिबंधित एआई मॉडल उसके प्रदाता की शर्तों के अधीन चुन सकते हैं; टूल और संदर्भ सीमाएँ मॉडल तथा सर्वर पर निर्भर हैं। स्पष्ट अपेक्षित परिणाम उत्पन्न व्याख्या पर भरोसे से अधिक उपयोगी रहता है।
कोड स्वीकारने से पहले रैंकिंग के नियम तय करें
क्या बराबर मानों को अलग स्थान मिलने चाहिए?
यह अनुप्रयोग के आवश्यक रैंकिंग नियम पर निर्भर है। बताएँ कि बराबर मान औसत रैंक साझा करें, दूसरी रैंक साझा करें या द्वितीयक कुंजी इस्तेमाल करें। कार्यान्वयन से पहले उदाहरण माँगें ताकि चुनी नीति स्पष्ट और परीक्षण योग्य हो।
मूल इनपुट क्रम से संबंध क्यों बनाए रखें?
उपयोगकर्ता कोड को हर रैंक उस रिकॉर्ड से जोड़नी पड़ सकती है जिसने मान दिया था। यह मैपिंग स्पष्ट रूप से जाँचें; स्थान पुनर्स्थापित न हों तो सही क्रमबद्ध अनुक्रम भी गलत रिकॉर्ड को परिणाम दे सकता है।
क्या अमान्य संख्याएँ बस अंत में क्रमबद्ध हो सकती हैं?
केवल यदि यही निर्दिष्ट नीति हो और उपयोगकर्ता कोड उसे समझता हो। अन्यथा अस्वीकृति या दूसरा स्पष्ट निरूपण माँगें। रनटाइम तुलना व्यवहार से अनुप्रयोग नियम तय होने देने के बजाय रैंकिंग कोड के साथ संख्यात्मक सत्यापन जाँचें।
बड़े डेटासेट के बिना रैंकिंग रीफ़ैक्टर कैसे जाँचूँ?
बराबरी, अलग मान और खाली इनपुट के कुछ हाथ से जाँचने योग्य मामलों से शुरू करें। फिर आवश्यकतानुसार प्रतिनिधि प्रोजेक्ट डेटा चलाएँ। व्यापक सत्यापन का आकार बढ़ने से पहले छोटे मामले नीतियों के अंतर पहचानना आसान बनाते हैं।
RankTrell · अद्यतन 2026-10-25