LLineCitrine
مساحة عمل برمجية بالذكاء الاصطناعي

تقسيم الأسطر بأقل تفاوت

وزع ما يصل إلى 100 كلمة بلا فراغات على أسطر من 1 إلى 80 نقطة ترميز مع تقليل مربعات المساحة المتبقية باستثناء السطر الأخير.

● ● ●LineCitrine●
سير العمل · تقسيم الأسطر بأقل تفاوت ×
def wrap_words(words, width):
    words = tuple(words)
    if type(width) is not int or not 1 <= width <= 80 or len(words) > 100:
        raise ValueError("wrap.limit")
    if any(type(w) is not str or not w or len(w) > width or any(c.isspace() for c in w) for w in words):
        raise ValueError("wrap.word")
    n = len(words)
    costs, ends = [0] * (n+1), [0] * n
    for i in range(n-1, -1, -1):
        used, best = 0, None
        for j in range(i, n):
            used += len(words[j]) + (j > i)
            if used > width:
                break
            cost = 0 if j == n-1 else (width-used)**2 + costs[j+1]
            if best is None or cost < best:
                best, ends[i] = cost, j+1
        costs[i] = best
    lines, i = [], 0
    while i < n:
        lines.append(" ".join(words[i:ends[i]]))
        i = ends[i]
    return lines
✳وزع ما يصل إلى 100 كلمة بلا فراغات على أسطر من 1 إلى 80 نقطة ترميز مع تقليل مربعات المساحة المتبقية باستثناء السطر الأخير.
✓ التغييراتراجع قبل التطبيق ↗
رسم توضيحي لمساحة العمل
راجع قبل التطبيققارن السلوك الفعلي بالنتيجة المتوقعة. إذا فشل فحص، تحقّق من السبب قبل إجراء تغييرات إضافية.
النماذجاضبط نقطة اتصال متوافقة مع OpenAI أو Anthropic باستخدام العنوان الأساسي ومفتاح API عند الحاجة. اختبر الاتصال. يجب أن يعمل خادم النموذج المحلي؛ وقد ترسل الأدوات البعيدة البيانات بشكل منفصل.
المشروعاختبر الإدخال الفارغ وفواصل بديلة وارفض الكلمات الفارغة أو الطويلة دون ادعاء قياس عرض الطرفية.
سير العمل

تقسيم الأسطر بأقل تفاوت

سير العمل ↗
سير العمل
def wrap_words(words, width):
    words = tuple(words)
    if type(width) is not int or not 1 <= width <= 80 or len(words) > 100:
        raise ValueError("wrap.limit")
    if any(type(w) is not str or not w or len(w) > width or any(c.isspace() for c in w) for w in words):
        raise ValueError("wrap.word")
    n = len(words)
    costs, ends = [0] * (n+1), [0] * n
    for i in range(n-1, -1, -1):
        used, best = 0, None
        for j in range(i, n):
            used += len(words[j]) + (j > i)
            if used > width:
                break
            cost = 0 if j == n-1 else (width-used)**2 + costs[j+1]
            if best is None or cost < best:
                best, ends[i] = cost, j+1
        costs[i] = best
    lines, i = [], 0
    while i < n:
        lines.append(" ".join(words[i:ends[i]]))
        i = ends[i]
    return lines
مساحة عمل برمجية بالذكاء الاصطناعي

امنح تغيير تنسيق النص هدفاً يمكنك مراجعته

يوفر LineCitrine مساحة عمل برمجية على Windows للمطورين الذين يناقشون قرارات تنسيق المخرجات مع نموذج ذكاء اصطناعي متصل. تسهل مراجعة طلب التنسيق حين يحدد ما الذي يجعل النتيجة أفضل. افتح مجلد المشروع وأضف المنسق والشيفرة التي تستخدمه ومدخلاً تمثيلياً إلى المحادثة قبل طلب تغيير.

يطلب أحد الأمثلة فواصل أسطر لنص عادي تقلل مجموع مربعات المساحة غير المستخدمة مع معاملة السطر الأخير منفصلاً. حدد الكلمات المسموح بها وحد العرض وقاعدة التكلفة صراحة. اطلب من النموذج مقارنة الفواصل المرشحة بذلك الهدف. ميّز طول نقاط الترميز عن عرض الأعمدة المعروضة كي لا يعد الاقتراح ضمنياً بسلوك يتجاوز التمثيل المختار.

راجع التعديل المقترح بتنسيقات متنافسة ومدخل فارغ وكلمة تتجاوز العرض المقبول. شغّل فحوص المشروع واحسب التكاليف المتوقعة للأمثلة الصغيرة المختارة. ينبغي أن تحفظ النتيجة الكلمات وتحقق الهدف المحدد، لا أن تبدو متوازنة بخط واحد فحسب. أدرج تنسيق الجهة المستهلكة إذا فرض متطلبات إضافية.

توفر نقطة نهاية مدعومة متوافقة مع OpenAI أو نقطة نهاية Anthropic اتصال النموذج في LineCitrine. حيث تُعرض نماذج ذكاء اصطناعي بلا قيود يمكنك اختيار أحدها باستخدام بيانات الاعتماد المطلوبة. يحدد النموذج والخادم القيود وحدود السياق ودعم الأدوات؛ ويبقى هدف التنسيق متطلباً تحدده وتتحقق منه.

أسئلة عن اقتراح فواصل الأسطر

ماذا يحدد الطلب بشأن السطر الأخير؟

حدد ما إذا كانت مساحته غير المستخدمة تدخل في التكلفة. الهدف التوضيحي يستثنيها، ما قد يغير الفواصل المفضلة. أدرج مثالاً صغيراً يؤثر فيه هذا الاختيار وقارن المخرجات المقترحة بقاعدة التكلفة التي تقصدها فعلاً.

هل يمكن استخدام عدد نقاط الترميز بدلاً من عرض الطرفية؟

ليس عموماً. قد يختلف عرض العلامات المركبة والحروف العريضة عن عدد نقاط ترميزها. اجعل القياس صريحاً في العقد. إذا كانت أعمدة الطرفية مهمة، فحدد ذلك كمتطلب منفصل وراجع المعالجة اللازمة في بيئة العرض الفعلية.

كيف أراجع تحسيناً دون الوثوق بشرحه؟

استخدم مدخلات صغيرة لها بضعة خيارات متنافسة للفواصل واحسب تكاليفها المتوقعة بصورة مستقلة. تحقق من اختيار الاقتراح حداً أدنى مسموحاً وفق القاعدة المحددة. ثم شغّل حالات اختبار أوسع للمشروع للبحث عن تغير السلوك خارج تلك الأمثلة.

ماذا يحدث للكلمة الأطول من العرض؟

حدد ما إذا كان المنسق يرفضها أو يقسمها أو يسمح بتجاوزها. يرفض المثال الكلمات التي تتجاوز العرض المقبول. راجع هذا المسار والمستدعي كي لا يُدخل تعديل التنسيق تحويل محتوى أو سياسة أخطاء مختلفة بصمت.

تنزيل لنظام Windows ↗

LineCitrine · آخر تحديث 2026-10-25