การถดถอยไอโซโทนิกแบบไม่ถ่วงน้ำหนัก
หาลำดับไม่ลดลงที่พอดีกับข้อมูลจำกัดไม่เกิน 128 ค่าภายใน ±10^6 ด้วยกำลังสองน้อยที่สุดน้ำหนักเท่ากัน.
from math import isfinite
def isotonic_fit(values):
if type(values) is not list or len(values) > 128:
raise ValueError("bounded list")
if any(type(x) not in (int, float) or abs(x) > 10**6 or
not isfinite(x) for x in values):
raise ValueError("bounded finite values")
blocks = []
for value in values:
blocks.append([float(value), 1])
while len(blocks) > 1 and (
blocks[-2][0] / blocks[-2][1] > blocks[-1][0] / blocks[-1][1]):
total, count = blocks.pop()
blocks[-1][0] += total; blocks[-1][1] += count
return [total / count for total, count in blocks for _ in range(count)]โปรเจกต์
ทดสอบข้อมูลว่างและลดลง พร้อมปฏิเสธบูลีนและรักษารายการต้นทาง.
ตรวจสอบก่อนนำไปใช้
เปรียบเทียบการทำงานจริงกับผลที่คาดหวัง หากการตรวจสอบไม่ผ่าน ให้หาสาเหตุก่อนแก้ไขเพิ่มเติม
โมเดล
ตั้งค่า endpoint ที่รองรับ OpenAI หรือ Anthropic ด้วย URL หลักและคีย์ API หากจำเป็น ทดสอบการเชื่อมต่อ เซิร์ฟเวอร์โมเดลในเครื่องต้องทำงานอยู่ เครื่องมือระยะไกลอาจส่งข้อมูลแยกต่างหาก
from math import isfinite
def isotonic_fit(values):
if type(values) is not list or len(values) > 128:
raise ValueError("bounded list")
if any(type(x) not in (int, float) or abs(x) > 10**6 or
not isfinite(x) for x in values):
raise ValueError("bounded finite values")
blocks = []
for value in values:
blocks.append([float(value), 1])
while len(blocks) > 1 and (
blocks[-2][0] / blocks[-2][1] > blocks[-1][0] / blocks[-1][1]):
total, count = blocks.pop()
blocks[-1][0] += total; blocks[-1][1] += count
return [total / count for total, count in blocks for _ in range(count)]ขอหลักฐานที่แยกการแก้จริงจากการเขียนใหม่ที่ดูน่าเชื่อ
OrderSaffron เป็นซอฟต์แวร์เขียนโค้ดด้วย AI บน Windows เพื่อให้ประเมินการแก้ไขที่เสนอได้ง่ายผ่านการตรวจที่มีความหมาย เปิดโฟลเดอร์โปรเจกต์และอธิบายพฤติกรรมที่ต้องมีหลักฐาน โมเดลที่เชื่อมต่อช่วยตรวจโค้ดและทดสอบร่วมกัน เพื่อให้บทสนทนาถามว่าเงื่อนไขทดสอบจับข้อกำหนดหรือไม่ แทนถามเพียงโค้ดปัจจุบันผ่านหรือไม่
ตัวอย่าง isotonic_fit.py ให้งานสร้างลำดับที่ปรับให้ไม่ลดลง นำอินพุตเล็กที่ทราบผลคาดหวังและถามว่ากรณีใดแยกพฤติกรรมที่ต้องการจากผลที่เพียงดูเรียงแล้ว ใส่ค่าเท่ากันและอินพุตเรียงอยู่แล้ว ตัวอย่างเป็นแบบฝึกตรวจโปรเจกต์ ไม่ได้หมายความว่าพื้นที่ทำงานมีผลิตภัณฑ์ปรับข้อมูลเชิงตัวเลขหรือบริการรับรองการทดสอบอัตโนมัติ
เลือกโมเดล AI ไม่กรองเนื้อหาได้หากปลายทางที่รองรับแบบเข้ากันได้กับ OpenAI หรือ Anthropic มีให้ ตั้งค่ารายละเอียดเชื่อมต่อจำเป็นและประเมินขีดจำกัดเครื่องมือกับบริบทของโมเดล ตรวจทั้งแพตช์ซอร์สและทดสอบที่เสนอก่อนรันการตรวจโปรเจกต์ รักษาความคาดหวังอิสระและรายงานช่องว่างใด ๆ ผลผ่านเป็นหลักฐานมีประโยชน์เมื่อทดสอบครอบคลุมข้อกำหนดที่คุณตั้งใจรักษาหรือเปลี่ยนเท่านั้น
ประเมินชุดทดสอบเชิงตัวเลขที่เสนอ
- ทำไมตรวจลำดับไม่ลดลงยังไม่เพียงพอ
หลายผลเรียงได้โดยไม่ใช่ผลปรับที่ต้องการ ใส่ค่าคาดหวังเล็กที่คำนวณอิสระและคุณสมบัติข้อกำหนดอื่น เช่น ความยาวผล ถามว่าแต่ละการตรวจจับความผิดโค้ดชนิดใดก่อนยอมรับชุดทดสอบเป็นหลักฐาน
- ควรใส่อินพุตที่เรียงแล้วในทดสอบหรือไม่
ควร เมื่อพฤติกรรมที่ตั้งใจคือรักษามันไว้ กรณีนี้เผยการเปลี่ยนที่ไม่จำเป็นหรือข้อผิดดัชนีได้ ระบุค่าคาดหวังชัดและใส่ค่าซ้ำเพื่อทดสอบความเท่ากันด้วย ไม่ใช่แค่อินพุตเพิ่มขึ้นอย่างเคร่งครัด
- ผู้ช่วยเขียนทั้งโค้ดและทดสอบได้หรือไม่
เสนอทั้งคู่ได้ภายในเครื่องมือที่มี แต่ควรตรวจเหตุผลแยกกัน ทดสอบที่มาจากข้อสมมติผิดเดียวกันอาจตรงกับโค้ดผิด ใช้ข้อกำหนดภายนอกหรือตัวอย่างที่ตรวจด้วยมือเป็นหลักให้ผลคาดหวัง
- ควรรายงานการยืนยันที่ยังไม่ครบอย่างไร
แยกการตรวจที่รันจริงจากการตรวจที่เสนอและข้อสมมติที่ยังไม่คลี่คลาย รวมความล้มเหลวและข้อจำกัดสภาพแวดล้อมแทนถือว่าไม่มีผลคือสำเร็จ เพื่อให้ผู้ตรวจถัดไปเห็นชัดว่าแพตช์แสดงอะไรได้และยังไม่แน่อะไร
OrderSaffron · อัปเดต 2026-10-25