أقصر السلاسل الفرعية المغطية
جد أقصر سلسلة فرعية تغطي الأعداد المطلوبة في نصين لا يتجاوز كل منهما 1024 نقطة شفرة.
from collections import Counter
def covering_window(text, required):
if type(text) is not str or type(required) is not str or max(len(text), len(required)) > 1024:
raise ValueError("window.input")
if not required:
return ""
need, missing, left, best = Counter(required), len(required), 0, None
for right, char in enumerate(text, 1):
if need[char] > 0:
missing -= 1
need[char] -= 1
while missing == 0:
if best is None or right-left < best[1]-best[0]:
best = (left, right)
old = text[left]
need[old] += 1
if need[old] > 0:
missing += 1
left += 1
return "" if best is None else text[best[0]:best[1]]- النماذج
- اضبط نقطة اتصال متوافقة مع OpenAI أو Anthropic باستخدام العنوان الأساسي ومفتاح API عند الحاجة. اختبر الاتصال. يجب أن يعمل خادم النموذج المحلي؛ وقد ترسل الأدوات البعيدة البيانات بشكل منفصل.
- المشروع
- اختبر المتطلبات الفارغة وغياب النتيجة واختر أول تعادل دون تطبيع Unicode.
- راجع قبل التطبيق
- قارن السلوك الفعلي بالنتيجة المتوقعة. إذا فشل فحص، تحقّق من السبب قبل إجراء تغييرات إضافية.
from collections import Counter
def covering_window(text, required):
if type(text) is not str or type(required) is not str or max(len(text), len(required)) > 1024:
raise ValueError("window.input")
if not required:
return ""
need, missing, left, best = Counter(required), len(required), 0, None
for right, char in enumerate(text, 1):
if need[char] > 0:
missing -= 1
need[char] -= 1
while missing == 0:
if best is None or right-left < best[1]-best[0]:
best = (left, right)
old = text[left]
need[old] += 1
if need[old] > 0:
missing += 1
left += 1
return "" if best is None else text[best[0]:best[1]]صف قاعدة الاختيار التي يجب أن تتبعها ميزة النص
يسهل تغيير ميزة نصية حين تحدد النتيجة المطلوبة بدقة. يمنحك NeedleThyme مساحة برمجة بالذكاء الاصطناعي على Windows لتطوير هذه المتطلبات بجانب ملفات المشروع. صف المدخل والمحتوى الذي يجب أن يتضمنه المقطع المعاد وكيف يستخدمه التطبيق. اطلب من المساعد المتصل فحص كود الاختيار الحالي قبل اقتراح قاعدة مختلفة.
يقدم مثال النافذة المغطية مهمة محددة: العثور على مقطع قصير يحتوي على المحارف المطلوبة، بما فيها التكرارات المطلوبة. يمكنك طلب مراجعة تمييز المستدعي بين غياب النتيجة ونتيجة خالية صالحة، وكيفية معالجة المرشحين المتساوين. أبق القرارات مرتبطة بالميزة التي تبنيها. لا يثبت التنفيذ الموجز وحده أن النتيجة المرئية تحمل المعنى المقصود.
صل نموذجا متاحا بلا رقابة عبر نقطة نهاية مدعومة متوافقة مع OpenAI أو تابعة لـ Anthropic، مع بيانات الاعتماد إن لزمت. تعتمد حدود السياق والأدوات والقيود على النموذج والخادم المختارين. راجع التعديلات المقترحة واختبر مقاطع ممثلة عبر الميزة المستدعية. يحدد خادم نموذج محلي يعمل منفصلا اتصال الاستدلال، لكنه لا يجعل كل الأدوات أو الخدمات المتصلة محلية.
أسئلة حول المقطع النصي المعاد
كيف ينبغي وصف المحارف المطلوبة المتكررة؟
حدد ما إذا كان يجب تمثيل كل تكرار أم يكفي الوجود وحده. قدم مثالا قصيرا يميز القاعدتين. يستطيع المساعد عندئذ مراجعة الكود الحالي وفق السلوك المقصود بدلا من التخمين من اسم الميزة.
ماذا لو تأهل أكثر من مقطع أقصر؟
اختر قاعدة لكسر التعادل إذا احتاج التطبيق مخرجا ثابتا، وافحص التزام التنفيذ بها. أدرج أمثلة التعادل في اختبارات المشروع. قد تستوفي النتيجة شرط الطول وتتغير مع ذلك على نحو غير متوقع من منظور المستخدم.
لماذا أميز غياب التطابق عن متطلب خال؟
قد تقتضي الحالتان رسائل واجهة أو إجراءات لاحقة مختلفة. حدد التمثيل الذي يتوقعه كل مستدع وافحص كيفية استخدامه. تجنب تغيير اصطلاح إرجاع الدالة دون مراجعة الميزة التي تفسر القيمة المعادة.
هل يبني NeedleThyme واجهة بحث نصي كاملة؟
يمكنك استخدام مساحة العمل لتطوير كود المشروع اللازم، لكن المثال يحدد مهمة اختيار واحدة فقط. صف سلوك الواجهة الإضافي على حدة وراجع الملفات المقترحة وتحقق من الميزة المتكاملة في بيئة تطبيقك.
NeedleThyme · آخر تحديث 2026-10-25