คำขอควรบอกอะไรเรื่องบรรทัดสุดท้าย
ระบุว่าพื้นที่ว่างของบรรทัดนั้นมีผลต่อต้นทุนหรือไม่ เป้าหมายตัวอย่างไม่นับส่วนนี้ ซึ่งอาจเปลี่ยนจุดตัดที่เหมาะสม ใส่ตัวอย่างเล็กที่การเลือกนี้มีผลและเทียบผลที่เสนอกับกฎต้นทุนที่ตั้งใจจริง
แบ่งคำที่ไม่มีช่องว่างไม่เกิน 100 คำเป็นบรรทัดหนึ่งถึง 80 จุดรหัสโดยลดผลรวมกำลังสองของพื้นที่เหลือยกเว้นบรรทัดสุดท้าย.
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| ตรวจสอบก่อนนำไปใช้ | เปรียบเทียบการทำงานจริงกับผลที่คาดหวัง หากการตรวจสอบไม่ผ่าน ให้หาสาเหตุก่อนแก้ไขเพิ่มเติม |
|---|---|
| โมเดล | ตั้งค่า endpoint ที่รองรับ OpenAI หรือ Anthropic ด้วย URL หลักและคีย์ 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 linesLineCitrine มีพื้นที่ทำงานเขียนโค้ดบน Windows สำหรับนักพัฒนาที่พิจารณาการจัดรูปแบบผลลัพธ์ร่วมกับโมเดล AI ที่เชื่อมต่อ คำขอจัดรูปแบบตรวจง่ายขึ้นเมื่อระบุว่าอะไรคือผลที่ดีกว่า เปิดโฟลเดอร์โปรเจกต์และนำตัวจัดรูปแบบ โค้ดที่ใช้ผล และอินพุตตัวแทนเข้าบทสนทนาก่อนขอแก้ไข
ตัวอย่างหนึ่งขอการตัดบรรทัดข้อความล้วนที่ทำให้ผลรวมกำลังสองของพื้นที่ว่างต่ำสุด โดยจัดการบรรทัดสุดท้ายแยกต่างหาก กำหนดคำที่อนุญาต ขีดจำกัดความกว้าง และกฎต้นทุนอย่างชัดเจน ขอให้โมเดลเปรียบเทียบจุดตัดที่เป็นไปได้กับเป้าหมายนั้น แยกความยาวตามจุดรหัสจากความกว้างคอลัมน์ที่แสดง เพื่อไม่ให้ข้อเสนอแอบสัญญาพฤติกรรมเกินรูปแบบที่เลือก
ตรวจการแก้ไขกับรูปแบบแข่งขันกัน อินพุตว่าง และคำที่เกินความกว้างยอมรับ รันการตรวจของโปรเจกต์และคำนวณต้นทุนคาดหวังสำหรับตัวอย่างเล็กที่เลือก ผลควรรักษาคำและบรรลุเป้าหมายที่ระบุ ไม่ใช่เพียงดูสมดุลในฟอนต์หนึ่ง ใส่รูปแบบของโค้ดที่ใช้ผลหากมีข้อกำหนดเพิ่ม
ปลายทางที่รองรับแบบเข้ากันได้กับ OpenAI หรือ Anthropic ให้การเชื่อมต่อโมเดลแก่ LineCitrine เมื่อมีโมเดล AI แบบไม่จำกัด คุณเลือกได้โดยใช้ข้อมูลรับรองที่จำเป็น โมเดลและเซิร์ฟเวอร์กำหนดข้อจำกัด ขีดจำกัดบริบท และการรองรับเครื่องมือ ส่วนเป้าหมายจัดรูปแบบยังเป็นข้อกำหนดที่คุณนิยามและตรวจยืนยัน
ระบุว่าพื้นที่ว่างของบรรทัดนั้นมีผลต่อต้นทุนหรือไม่ เป้าหมายตัวอย่างไม่นับส่วนนี้ ซึ่งอาจเปลี่ยนจุดตัดที่เหมาะสม ใส่ตัวอย่างเล็กที่การเลือกนี้มีผลและเทียบผลที่เสนอกับกฎต้นทุนที่ตั้งใจจริง
โดยทั่วไปไม่ได้ เครื่องหมายผสมและอักขระกว้างอาจแสดงต่างจากจำนวนจุดรหัส ระบุวิธีวัดในข้อกำหนดให้ชัด หากคอลัมน์เทอร์มินัลสำคัญ ให้กำหนดเป็นข้อกำหนดแยกและตรวจการจัดการที่จำเป็นในสภาพแวดล้อมแสดงผลจริง
ใช้อินพุตเล็กที่มีทางเลือกตัดบรรทัดไม่กี่แบบและคำนวณต้นทุนคาดหวังเอง ตรวจว่าข้อเสนอเลือกค่าต่ำสุดที่อนุญาตตามกฎ แล้วรันชุดทดสอบโปรเจกต์ที่กว้างขึ้นเพื่อหาพฤติกรรมเปลี่ยนนอกตัวอย่าง
ระบุว่าตัวจัดรูปแบบปฏิเสธ แบ่งคำ หรือยอมให้ล้น ตัวอย่างปฏิเสธคำเกินความกว้างที่ยอมรับ ตรวจเส้นทางนี้และผู้เรียก เพื่อไม่ให้การแก้รูปแบบแอบเปลี่ยนการแปลงเนื้อหาหรือนโยบายข้อผิดพลาด
LineCitrine · อัปเดต 2026-10-25