ตั้งค่าโมเดลผู้ให้คะแนนพื้นฐานให้เสร็จสมบูรณ์เพื่อเริ่มการประเมินแบบอัตนัย
ปรับและทดสอบผู้ให้คะแนน
คุณมีผู้ให้คะแนนเริ่มต้นแล้ว แต่ยังเชื่อถือไม่ได้ ผู้ให้คะแนนจะพร้อมใช้งานก็ต่อเมื่อเห็นด้วยกับการตัดสินของเจ้าหน้าที่อย่างสม่ำเสมอ
สร้างชุดข้อมูลการปรับ
หากต้องการปรับเทียบผู้ให้คะแนน คุณต้องมี ชุดข้อมูลการปรับ ซึ่งเป็นคอลเล็กชันอินพุตและเอาต์พุตขนาดเล็กที่มีคุณภาพสูง ซึ่งเจ้าหน้าที่ให้คะแนนด้วยตนเอง ชุดข้อมูลนี้ทำหน้าที่เป็น ข้อมูลจากการสังเกตการณ์โดยตรง คุณจะใช้ชุดข้อมูลนี้เพื่อยืนยันว่าตรรกะของผู้ให้คะแนนสอดคล้องกับความคาดหวังของคุณอย่างสม่ำเสมอ
ชุดข้อมูลการปรับควรมีคู่อินพุต-เอาต์พุต 30-50 รายการ ชุดข้อมูลนี้มีขนาดใหญ่พอที่จะครอบคลุมกรณีที่ซับซ้อนบางกรณี แต่ก็มีขนาดเล็กพอที่คุณจะติดป้ายกำกับได้ในระยะเวลาอันสั้น
ในตัวอย่าง ThemeBuilder รายการในชุดข้อมูลการปรับจะมีลักษณะดังนี้ (อินพุต, เอาต์พุต, ป้ายกำกับของเจ้าหน้าที่)
{
"id": "sample-014",
"userInput": {
"companyName": "Rawrr!",
"audience": "kids 5-10",
"tone": ["prehistoric", "loud", "fun"]
},
"appOutput": {
"motto": "Experiencing the prehistoric era."
},
"humanEvaluation": {
"mottoBrandFit": {
"label": "FAIL",
"rationale": "While on-theme, this motto is too formal for kids.
It fails to capture the required 'loud' and 'fun' energy."
}
}
}
หากต้องการสร้างอินพุตและเอาต์พุต คุณสามารถดึงข้อมูลจากบันทึกการใช้งานจริง หากมี สร้างข้อมูลด้วยตนเอง ใช้ LLM (ข้อมูลสังเคราะห์) หรือเริ่มจากตัวอย่างที่เลือกด้วยตนเอง 2-3 รายการ แล้วขอให้ LLM เพิ่มชุดข้อมูล
เมื่ออินพุตและเอาต์พุตพร้อมแล้ว ให้ใช้เกณฑ์การให้คะแนนเพื่อติดป้ายกำกับเอาต์พุตเป็น PASS หรือ FAIL กับทีม ซึ่งจะกลายเป็น ข้อมูลจากการสังเกตการณ์โดยตรง
ตรวจสอบว่าชุดข้อมูลการปรับมีตัวอย่าง PASS และตัวอย่าง FAIL ที่มีความยากต่างกัน เช่น
- ตัวอย่างกรณีเส้นทางที่ไม่พบข้อผิดพลาด 10 รายการที่ผู้ให้คะแนนควรติดป้ายกำกับเป็น
PASS - ตัวอย่างกรณีที่ผู้ให้คะแนนควรติดป้ายกำกับเป็น
FAIL20 รายการ ได้แก่- ความล้มเหลวที่เห็นได้ชัด เช่น สโลแกนที่เป็นพิษสูงหรือไม่ได้เกี่ยวข้องกับแบรนด์เลย
- ความล้มเหลวที่เห็นได้ยาก เช่น สโลแกนที่ไวยากรณ์สมบูรณ์แบบ แต่เป็นทางการเกินไปสำหรับแบรนด์ที่สนุกสนาน หรือสโลแกนที่เข้ากับโทนของแบรนด์เพียงบางส่วน
ผู้ให้คะแนน LLM เป็นผู้คัดกรอง การปรับผู้ให้คะแนนในชุดข้อมูลที่มีความล้มเหลวมากกว่ากรณีที่ผ่านจะช่วยให้คุณมีโอกาสมากขึ้นในการปรับเกณฑ์การให้คะแนนเพื่อตรวจจับความล้มเหลว และท้ายที่สุดจะทำให้ผู้ให้คะแนนตรวจจับความล้มเหลวได้ดีขึ้น
เมื่อชุดข้อมูลการปรับพร้อมแล้ว ชุดข้อมูลควรมีลักษณะดังนี้
กรณีเส้นทางที่ไม่พบข้อผิดพลาด (PASS)
// Easy, clean input + Good output
{
"id": "sample-001",
"userInput": {
"companyName": "Kinetica",
"description": "Carbon-fiber plated performance footwear engineered for
elite marathon runners.",
"audience": "competitive triathletes and professional runners",
"tone": [
"aggressive",
"high-performance",
"technical"
]
},
"appOutput": {
"motto": "Unlock your kinetic potential.",
"colorPalette": {
"textColor": "#FFFFFF",
"backgroundColor": "#000000",
"primary": "#DC2626",
"secondary": "#E2E8F0"
}
},
"humanEvaluation": {
"mottoBrandFit": {
"label": "PASS",
"rationale": "This motto powerfully aligns the brand's technical
engineering with the ambitious goals of its elite athletic audience.
Relevance: Uses 'kinetic' to expertly link the brand to physical
energy. Audience appeal: 'Unlock your potential' resonates perfectly
with competitive runners. Tone consistency: Nails the required
aggressive, high-performance marks."
},
"mottoToxicity": {
"label": "PASS",
"rationale": "Perfectly clean and motivational. No offensive or
exclusionary language."
},
"colorBrandFit": {
"label": "PASS",
"rationale": "The chosen color palette perfectly mirrors Kinetica's
aggressive and technical brand identity by utilizing high-impact tones
that resonate with elite athletes. Relevance: Psychological association:
Blood red creates urgency and speed. Harmony: Stark contrast against
black/white feels highly technical.
Appropriateness: Extremely effective aesthetic for premium athletic gear."
}
}
}
ความล้มเหลวที่เห็นได้ชัด (FAIL)
// Off-brand color palette
{
"id": "sample-014",
"userInput": {
"companyName": "Rawrr!",
"description": "Dinosaur themed playground and party venue.",
"audience": "kids 5-10",
"tone": [
"prehistoric",
"loud",
"fun"
]
},
"appOutput": {
"motto": "Experiencing the prehistoric era.",
"colorPalette": {
"textColor": "#4A4A4A",
"backgroundColor": "#F5F5DC",
"primary": "#D2B48C",
"secondary": "#C0C0C0"
}
},
"humanEvaluation": {
"mottoBrandFit": {
"label": "FAIL",
"rationale": "While the motto relates to the dinosaur theme, its overly
academic and formal tone fails to capture the loud and fun energy
essential for a children's playground brand. Relevance: Effectively fits
the dinosaur theme. Audience appeal: A bit formal ('Experiencing' versus
something punchy), acceptable for parents booking events but should be
more exciting for kids, it's too formal and academic for a children's
playground, lacks the 'loud' and 'fun' energy requested in the tone.
Tone consistency: It touches on the 'prehistoric' element adequately."
},
"mottoToxicity": {
"label": "PASS",
"rationale": "A completely family-friendly, educational-sounding statement."
},
"colorBrandFit": {
"label": "FAIL",
"rationale": "This muted and sophisticated color scheme fails to capture
the high-energy, prehistoric spirit required to attract and excite a young
audience. Relevance: Psychological association: The 'sad beige', tan, and
muted greys evoke a sterile, 'adult minimalist' home décor aesthetic.
Harmony: The colors are muddy and lifeless. Appropriateness: For a 'loud'
and 'fun' children's playground targeting 5-10 year olds, this palette is
a spectacular failure. It desperately needs vibrant, exciting primary
colors to attract kids."
}
}
},
ความล้มเหลวที่เห็นได้ยาก (FAIL)
// Almost on-brand color palette
{
"id": "sample-023",
"userInput": {
"companyName": "Apex Dental",
"description": "High-end cosmetic dentistry specializing in porcelain
veneers and laser whitening.",
"audience": "Professionals seeking a perfect smile",
"tone": [
"clean",
"professional",
"bright"
]
},
"appOutput": {
"motto": "Designing your brightest smile.",
"colorPalette": {
"textColor": "#1A202C",
"backgroundColor": "#FFFFFF",
"primary": "#FFC107",
"secondary": "#E2E8F0"
}
},
"humanEvaluation": {
"mottoBrandFit": {
"label": "PASS",
"rationale": "The motto perfectly captures the premium essence of the
brand by combining high-end dental aesthetics with a clear appeal to a
professional clientele. Relevance: Relates perfectly to cosmetic
dentistry and teeth whitening. Audience appeal: 'Brightest smile' is a
highly effective, aspirational hook for professionals wanting to look
their best. Tone consistency: Clean, upbeat, and exceedingly professional."
},
"mottoToxicity": {
"label": "PASS",
"rationale": "A very positive, medical-grade, and safe statement."
},
"colorBrandFit": {
"label": "FAIL",
"rationale": "The choice of bright yellow is a fundamental branding
failure for a cosmetic dental practice as it creates a direct and
repellent visual link to tooth discoloration, undermining the clinic's
high-end whitening positioning. Relevance: Psychological association:
While yellow technically fulfills the word 'bright', in the specific
context of dentistry, a primary bright yellow is subconsciously and
intensely associated with plaque, decay, and stained teeth.
Harmony: It stands out strongly but sends the wrong message.
Appropriateness: This is a massive psychological misstep for a whitening
clinic. It subverts trust in their core service by visually reminding
customers of the problem rather than the solution."
}
}
},
การปรับ
เมื่อข้อมูลจากการสังเกตการณ์โดยตรงพร้อมแล้ว ก็ถึงเวลาปรับผู้ให้คะแนนให้สอดคล้องกับป้ายกำกับของเจ้าหน้าที่ เป้าหมายของคุณคือการทำให้ผู้ให้คะแนนเห็นด้วยกับคุณอย่างสม่ำเสมอและเลียนแบบการตัดสินของเจ้าหน้าที่ คุณสามารถคำนวณ คะแนนการปรับ เป็นเปอร์เซ็นต์ของป้ายกำกับที่ผู้ให้คะแนนสร้างขึ้นซึ่งตรงกับป้ายกำกับที่เจ้าหน้าที่สร้างขึ้น
// total = all test cases
// aligned = test cases where humanEval.label === llmJudgeEval.label
// For example, PASS and PASS
const alignment = (aligned / total) * 100;
กำหนดคะแนนการปรับเป้าหมาย เช่น 85% เป้าหมายอาจแตกต่างกันไปตามกรณีการใช้งาน
เรียกใช้โมเดลผู้ให้คะแนนกับชุดข้อมูลการปรับ หากคะแนนการจัดตำแหน่งต่ำกว่าเป้าหมาย โปรดอ่านเหตุผลของผู้ให้คะแนนเพื่อทำความเข้าใจว่าทำไมผู้ให้คะแนนจึงสับสน แก้ไขวิธีการของระบบและพรอมต์ของผู้ให้คะแนนเพื่อลดช่องว่าง ทำซ้ำขั้นตอนนี้จนกว่าจะได้คะแนนเป้าหมาย
แนวทางปฏิบัติแนะนำ
ทำตามแนวทางปฏิบัติแนะนำต่อไปนี้เพื่อช่วยให้ผู้ให้คะแนนให้คะแนนได้อย่างสม่ำเสมอ
- หลีกเลี่ยงการปรับมากเกินไป วิธีการควรเป็นแบบทั่วไปและไม่เฉพาะเจาะจงเกินไปสำหรับชุดข้อมูลการปรับ หากคุณระบุวิธีการที่เฉพาะเจาะจง เช่น การหลีกเลี่ยงวลีบางวลี ผู้ให้คะแนนจะทำได้ดีในการผ่านการทดสอบการปรับที่เฉพาะเจาะจงนี้ แต่จะไม่สามารถนำไปใช้กับข้อมูลใหม่ได้ เราเรียกปัญหานี้ว่าการปรับมากเกินไป
- เพิ่มประสิทธิภาพวิธีการของระบบและพรอมต์ของผู้ให้คะแนน เทคนิคการเพิ่มประสิทธิภาพพรอมต์ ได้แก่ การแก้ไขพรอมต์ด้วยตนเอง การขอให้ LLM อื่นแนะนำการปรับปรุง หรือการใช้การเปลี่ยนแปลงตามเทคนิคเหล่านี้ร่วมกัน เทคนิคการเพิ่มประสิทธิภาพพรอมต์มีตั้งแต่แบบกำหนดเองไปจนถึงขั้นสูงมาก เช่น อัลกอริทึมที่เลียนแบบวิวัฒนาการทางชีวภาพ เก็บบันทึกการเปลี่ยนแปลงเพื่อย้อนกลับหากจำเป็น
หากต้องการดูการปรับใน ThemeBuilder ให้ลองทำการทดสอบการปรับด้วยตนเอง run the alignment test yourself.
การทดสอบความทนทานด้วยการบูตสแตรป
การบรรลุเป้าหมายการปรับ 85% ไม่ได้รับประกันว่าผู้ให้คะแนนจะทำงานได้ดีกับข้อมูลจริง ทดสอบความทนทานของผู้ให้คะแนนด้วยการแฮ็กทางสถิติที่เรียกว่า การบูตสแตรป การบูตสแตรปจะสร้างชุดข้อมูลเวอร์ชันใหม่โดยไม่ต้องติดป้ายกำกับเพิ่มเติม
** ทดสอบ: สุ่มเลือกรายการ 30 รายการจากชุดข้อมูล โดยมีการแทนที่ ในการเรียกใช้ 1 ครั้ง ระบบอาจเลือกกรณีที่ซับซ้อน 5 ครั้ง ซึ่งทำให้การทดสอบยากขึ้นมาก เรียกใช้การทดสอบการปรับกับชุดข้อมูลแบบสุ่มเหล่านี้หลายครั้ง และคำนวณการปรับเฉลี่ยและความแปรปรวนของคะแนนในการเรียกใช้เหล่านี้ ไม่มีตัวเลขวิเศษ แต่การทำซ้ำ 10 ครั้งเป็นค่าพื้นฐานที่ดีสำหรับโปรเจ็กต์ขนาดกลาง ทำซ้ำมากขึ้นเพื่อให้ได้ความมั่นใจสูงขึ้น ** แก้ไข: หากคะแนนการปรับผันผวนอย่างมาก (ความแปรปรวนสูง) แสดงว่าผู้ให้คะแนนยังไม่น่าเชื่อถือ คะแนนเริ่มต้นของคุณเป็นเพียงโชคช่วยที่เกิดจากกรณีง่ายๆ 2-3 กรณี ขยายเกณฑ์การให้คะแนนและเพิ่มตัวอย่างที่หลากหลายและซับซ้อนมากขึ้นลงในชุดข้อมูลการปรับ
คุณสามารถลองทำด้วยตนเองได้
ทดสอบความสอดคล้องในตัวเอง
คุณจะเชื่อถือผู้ให้คะแนนได้ก็ต่อเมื่อผู้ให้คะแนนให้คำตอบเดียวกันสำหรับอินพุตเดียวกันเสมอ หากตั้งค่าอุณหภูมิเป็น 0 ผู้ให้คะแนนควรมีความสอดคล้อง 100% ทดสอบเพื่อยืนยัน
- ทดสอบ: เรียกใช้ผู้ให้คะแนนหลายครั้งในชุดข้อมูลเดียวกันทุกประการ เช่น การสุ่มเลือกจากชุดข้อมูลการปรับ คำนวณความแปรปรวนสำหรับกรณีทดสอบแต่ละกรณีในการทำซ้ำเหล่านั้น ตั้งเป้าหมายความสอดคล้อง 100% (ความแปรปรวนเป็นศูนย์) หากความแปรปรวนมากกว่าศูนย์ แสดงว่าการทดสอบไม่ผ่านเนื่องจากหมายความว่าผู้ให้คะแนนให้คำตอบที่แตกต่างกันสำหรับอินพุตเดียวกัน
- แก้ไข: พรอมต์ของผู้ให้คะแนนอาจคลุมเครือหรืออุณหภูมิสูงเกินไป
เขียนส่วนของพรอมต์ที่ดูคลุมเครือใหม่ โดยเฉพาะเกณฑ์การให้คะแนน ลดอุณหภูมิเป็น 0 (หรือตั้งค่า
thinking_levelเป็นสูง) หากยังไม่ได้ดำเนินการ
หากต้องการดูการทำงานนี้ ให้ลองทำการทดสอบด้วยตนเอง
Final exam
การบูตสแตรปช่วยให้คุณทำการตรวจสอบเบื้องต้นเพื่อป้องกันการปรับมากเกินไป ตอนนี้คุณจะทำการทดสอบขั้นสุดท้ายโดยใช้ข้อมูลใหม่ นี่คือการยืนยันขั้นสุดท้ายว่าผู้ให้คะแนนสามารถให้คะแนนอินพุตใหม่ได้อย่างถูกต้อง
- ทดสอบ: เก็บชุดข้อมูล Final exam แยกต่างหากซึ่งมีตัวอย่าง 20 รายการที่เจ้าหน้าที่ติดป้ายกำกับไว้และ คุณไม่ได้ใช้ระหว่างการปรับ เรียกใช้ผู้ให้คะแนนกับชุดข้อมูลนี้
- แก้ไข: หากคะแนนการปรับยังคงสูง แสดงว่าผู้ให้คะแนนพร้อมใช้งานแล้ว! หากคะแนนลดลงอย่างมาก แสดงว่าคุณอาจปรับมากเกินไป: คุณปรับพรอมต์หลายครั้งเกินไปเพื่อให้ผ่านข้อมูลการปรับที่เฉพาะเจาะจง ขยายพรอมต์ เกณฑ์การให้คะแนน และตัวอย่างแบบ Few-Shot
หากต้องการดูการทำงานนี้ ให้ลองทำการทดสอบด้วยตนเอง
สรุป
คุณได้ทำการทดสอบต่างๆ เพื่อสร้างผู้ให้คะแนนพื้นฐาน ซึ่งรวมถึง
- การทดสอบการปรับจะตรวจสอบว่าผู้ให้คะแนน ถูกต้อง หรือไม่
- การทดสอบการบูตสแตรปและการทดสอบ Final exam จะตรวจสอบ ความไวต่อข้อมูล ผู้ให้คะแนนยังคงถูกต้องบ่อยพอเมื่อเผชิญกับข้อมูลใหม่หรือไม่
- การทดสอบความสอดคล้องในตัวเองจะวัด สัญญาณรบกวนของระบบ ซึ่งเป็นปริมาณที่ความสุ่มภายในของผู้ให้คะแนน LLM เองส่งผลต่อผลลัพธ์