AI ไม่ได้อ่านใจคุณ มันอ่าน คำพูด ของคุณ ช่องว่างระหว่างสิ่งที่คุณต้องการและสิ่งที่คุณได้รับเกือบจะเป็นปัญหาการสื่อสารเสมอ ไม่ใช่ข้อจำกัดของ AI
ขอฉันเล่าให้คุณฟังเกี่ยวกับช่วงเวลาที่ทุกอย่างเปลี่ยนไป ฉันกำลังจ้องมองที่หน้าจอ รู้สึกหงุดหงิดอย่างเหลือเชื่อ ดู AI สร้างคำตอบอีกอันที่ถูกต้องทางเทคนิคแต่พลาดประเด็นไปอย่างสิ้นเชิง ฉันได้ขอความช่วยเหลือในการปรับโครงสร้างโค้ดที่ซับซ้อน ซึ่งเป็นสิ่งที่ฉันเคยทำมาหลายร้อยครั้งก่อนหน้านี้ แต่ครั้งนี้ ไม่ว่าฉันจะใช้ถ้อยคำอย่างไร AI ก็ยังคงเพิ่มความซับซ้อนที่ไม่จำเป็น ทำลายรูปแบบที่มีอยู่ และ "ปรับปรุง" สิ่งที่ไม่เสีย ความหงุดหงิดนั้นนำฉันลงไปสู่หลุมกระต่ายที่จะกลืนกินเวลาสองปีข้างหน้าของชีวิตฉัน—และเปลี่ยนแปลงวิธีการทำงานของฉันกับปัญญาประดิษฐ์ไปอย่างสิ้นเชิง
การตื่นรู้ - เมื่อทุกสิ่งที่ฉันรู้หยุดทำงาน
ฉันจำช่วงเวลาที่แน่นอนที่ฉันตระหนักว่าฉันไม่รู้ว่ากำลังทำอะไรอยู่ มันดึกมากแล้ว กำหนดส่งกำลังใกล้เข้ามา และฉันต้องการ AI เพื่อช่วยงานที่ควรจะเป็นงานง่ายๆ ฉันพิมพ์คำสั่ง กด Enter และดู AI ผลิตบางอย่างที่ทำให้ฉันอยากโยนแล็ปท็อปออกนอกหน้าต่าง
ประเด็นคือ ฉันคิดว่าฉันเข้าใจ AI ฉันใช้ ChatGPT มาตั้งแต่ยุคแรกๆ ฉันอ่านบทความเกี่ยวกับวิศวกรรมคำสั่ง ฉันรู้เกี่ยวกับ "การสวมบทบาท" และ "การระบุให้ชัดเจน" แต่ฉันก็อยู่ที่นั่น ได้รับคำตอบที่รู้สึกเหมือนคุยกับใครบางคนที่ได้ยินทุกคำที่ฉันพูดแต่ไม่เข้าใจอะไรเลยเกี่ยวกับสิ่งที่ฉันต้องการจริงๆ
ความหงุดหงิดนั้นกลายเป็นครูของฉัน ฉันดำดิ่งลงไปในเอกสารอย่างเป็นทางการ เอกสารวิจัย การสนทนาในฟอรัม และการทดลองหลายพันชั่วโมง สิ่งที่ฉันค้นพบไม่ใช่แค่เคล็ดลับและเทคนิค—มันเป็นการเปลี่ยนแปลงกระบวนทัศน์อย่างสมบูรณ์ในการสื่อสารกับเครื่องจักรที่คิดเป็นรูปแบบ ความน่าจะเป็น และโทเค็น
AI ที่ทรงพลังที่สุดในโลกจะไร้ประโยชน์หากคุณไม่สามารถสื่อสารสิ่งที่คุณต้องการจริงๆ ได้ การเขียนคำสั่งไม่ใช่การหาคำวิเศษ—มันเกี่ยวกับการทำความเข้าใจว่า AI ประมวลผลภาษาอย่างไรและจัดโครงสร้างการสื่อสารของคุณให้สอดคล้องกัน
นี่คือความจริงที่ไม่มีใครบอกผู้เริ่มต้น: ความแตกต่างระหว่างคนที่ได้รับผลลัพธ์ที่น่าทึ่งจาก AI และคนที่ไม่ได้รับไม่ใช่ความฉลาดหรือทักษะทางเทคนิค มันคือการสื่อสาร และการสื่อสารกับ AI ปฏิบัติตามกฎที่คล้ายคลึงกับ—แต่แตกต่างอย่างมีนัยสำคัญจาก—การสื่อสารกับมนุษย์
คู่มือนี้มีทุกสิ่งที่ฉันเรียนรู้ในการเดินทางนั้น ไม่ใช่คำแนะนำที่เรียบง่ายเกินไปว่า "แค่ระบุให้ชัดเจน" ที่ท่วมท้นอินเทอร์เน็ต แต่เป็นความเข้าใจที่ลึกซึ้งและละเอียดอ่อนที่เปลี่ยนวิธีการทำงานของคุณกับ AI ไม่ว่าคุณจะเขียนคำสั่งแรกหรือสร้างระบบ AI ระดับการผลิต สิ่งที่จะตามมาจะเปลี่ยนความสัมพันธ์ของคุณกับปัญญาประดิษฐ์ไปตลอดกาล
รากฐานที่ไม่มีใครสอน - กายวิภาคของ Prompt แก่นแท้
ก่อนที่เราจะเข้าสู่เทคนิคขั้นสูง ให้ฉันแบ่งปันกรอบงานที่เปลี่ยนทุกอย่างสำหรับฉัน ทุกคำสั่งที่มีประสิทธิภาพที่ฉันเขียนตอนนี้มีส่วนผสมขององค์ประกอบห้าอย่างนี้:
AI จำเป็นต้องรู้อะไรเกี่ยวกับสถานการณ์ของคุณ? ข้อมูลพื้นฐาน ข้อจำกัด รายละเอียดที่เกี่ยวข้อง และสภาพแวดล้อมที่คุณกำลังทำงานอยู่
คุณต้องการให้ AI ทำอะไรกันแน่? ระบุให้ชัดเจนเกี่ยวกับการกระทำที่คุณร้องขอ—ไม่ใช่แค่หัวข้อ แต่เป็นงานจริง
ผลลัพธ์ควรมีโครงสร้างอย่างไร? รายการ ย่อหน้า บล็อกโค้ด ตาราง JSON—ระบุอย่างชัดเจน
AI ควรหลีกเลี่ยงอะไร? มีขอบเขตอะไรบ้าง? อะไรที่อยู่นอกขอบเขตอย่างชัดเจน?
คุณสามารถแสดงสิ่งที่คุณต้องการได้ไหม? ตัวอย่างมีค่ามากกว่าคำอธิบายเป็นพันคำ—พวกมันสาธิตแทนที่จะอธิบาย
คนส่วนใหญ่รวมเฉพาะงาน พวกเขาขอ "เขียนอีเมลให้ฉัน" ทั้งที่ควรจะพูดว่า "เขียนอีเมลแบบมืออาชีพถึงลูกค้าเพื่ออธิบายความล่าช้าของโครงการ ให้ยาวไม่เกิน 150 คำ ยอมรับความไม่สะดวก และเสนอไทม์ไลน์ใหม่ในอีกสองสัปดาห์ น้ำเสียงควรขอโทษแต่มั่นใจ"
ความแตกต่างของคุณภาพผลลัพธ์นั้นน่าทึ่ง และนี่เป็นเพียงจุดเริ่มต้น
พลังของโครงสร้าง
หนึ่งในแง่มุมที่ถูกประเมินต่ำที่สุดของการเขียนคำสั่งคือการจัดรูปแบบโครงสร้าง โมเดล AI สมัยใหม่ตอบสนองได้ดีเป็นพิเศษต่อส่วนที่มีการแบ่งเขตอย่างชัดเจน ฉันใช้แท็กสไตล์ XML อย่างกว้างขวางเพราะมันสร้างขอบเขตที่ไม่คลุมเครือ:
<context>
คุณกำลังช่วยฉันเตรียมการนำเสนอสำหรับผู้มีส่วนได้ส่วนเสียทางเทคนิค
ผู้ชมคุ้นเคยกับการพัฒนาซอฟต์แวร์แต่ไม่ใช่ AI โดยเฉพาะ
</context>
<task>
อธิบายว่าโมเดลภาษาขนาดใหญ่ทำงานอย่างไรใน 5 ประเด็นสำคัญ
</task>
<format>
- ใช้หัวข้อย่อย
- แต่ละประเด็นควรยาว 1-2 ประโยค
- หลีกเลี่ยงศัพท์เฉพาะหรือนิยามเมื่อใช้
</format>
<constraints>
- อย่าระบุชื่อโมเดลเฉพาะ
- เน้นที่แนวคิด ไม่ใช่การใช้งานทางเทคนิค
- รักษาความยาวรวมให้น้อยกว่า 200 คำ
</constraints>
โครงสร้างนี้ทำสิ่งที่ทรงพลัง: มันบังคับให้ คุณ คิดให้ชัดเจนเกี่ยวกับสิ่งที่คุณต้องการก่อนที่จะถาม การคิดที่ชัดเจนทำให้เกิดการสื่อสารที่ชัดเจน และการสื่อสารที่ชัดเจนทำให้เกิดผลลัพธ์ที่ชัดเจน แท็ก XML ไม่ใช่เวทมนตร์—พวกมันคือนั่งร้านสำหรับความคิดของคุณเอง
โครงสร้างไม่ได้เกี่ยวกับการทำให้คำสั่งยาวขึ้น—มันเกี่ยวกับการทำให้เจตนาของคุณชัดเจน คำสั่งสั้นๆ ที่มีโครงสร้างดีจะชนะคำสั่งยาวที่วกวนทุกครั้ง
หกกรอบความคิดที่เปลี่ยนทุกอย่าง
หลังจากหลายปีของการทดลอง ฉันได้กลั่นกรองแนวทางของฉันเป็น "กรอบความคิด" หลักหกประการ—ไม่ใช่แม่แบบที่ตายตัว แต่เป็นรูปแบบการคิดที่ยืดหยุ่นซึ่งปลดล็อกความสามารถของ AI ที่คนส่วนใหญ่ไม่เคยค้นพบ สิ่งเหล่านี้ไม่ได้เกี่ยวกับการหาคำที่สมบูรณ์แบบ; พวกมันเกี่ยวกับการเข้าถึงการโต้ตอบกับ AI ด้วยรูปแบบทางจิตที่ถูกต้อง
กรอบความคิดที่ 1: ให้ AI เลือกผู้เชี่ยวชาญ
เราทุกคนรู้ว่าการให้บทบาทกับ AI นั้นช่วยได้ "ทำหน้าที่เป็นผู้เชี่ยวชาญด้านการตลาด" ให้คำแนะนำด้านการตลาดที่ดีกว่าคำถามทั่วไป แต่นี่คือสิ่งที่คนส่วนใหญ่พลาด: เมื่อคุณไม่รู้ว่าผู้เชี่ยวชาญคนไหนจะดีที่สุดสำหรับคำถามของคุณ คุณสามารถขอให้ AI เลือกได้
ฉันค้นพบสิ่งนี้เมื่อวางแผนงานของบริษัท ฉันไม่รู้ว่าฉันต้องการมุมมองด้านการตลาด มุมมองด้านการดำเนินงาน หรืออย่างอื่นทั้งหมด ดังนั้นแทนที่จะเดา ฉันขอให้ AI เลือกผู้เชี่ยวชาญที่เหมาะสมที่สุดก่อน
ฉันต้องการสำรวจ [โดเมน] และโดยเฉพาะ [ปัญหา/สถานการณ์]
อย่าเพิ่งตอบ
ก่อนอื่น ให้เลือกผู้เชี่ยวชาญโดเมนที่เหมาะสมที่สุดเพื่อคิดเกี่ยวกับปัญหานี้
พวกเขาสามารถเป็นบุคคลที่มีชีวิตอยู่หรือในประวัติศาสตร์ มีชื่อเสียงหรือค่อนข้างไม่มีชื่อเสียง
แต่ต้องมีความเป็นเลิศอย่างแท้จริงในพื้นที่เฉพาะนี้
หากคุณไม่แน่ใจ ให้ถามคำถามกำหนดตำแหน่ง 2 ข้อก่อนเลือก
ผลลัพธ์:
1. ใครที่คุณเลือกและโดเมนเฉพาะของพวกเขา
2. ทำไมคุณถึงเลือกพวกเขา (สามประโยค)
จากนั้นขอให้ฉันอธิบายคำถามโดยละเอียดของฉัน
เมื่อฉันใช้สิ่งนี้สำหรับการวางแผนงาน AI เลือก Priya Parker—ผู้เชี่ยวชาญด้านการออกแบบงานที่ฉันไม่เคยได้ยินชื่อมาก่อนแต่กลับกลายเป็นว่าสมบูรณ์แบบ คำตอบที่ฉันได้รับไม่ใช่คำตอบทั่วไป "พิจารณาปัจจัยห้าประการนี้"—พวกมันเป็นคำแนะนำที่ละเอียดและเฉพาะเจาะจงที่รู้สึกเหมือนคุยกับคนที่เคยทำสิ่งนี้มาหลายร้อยครั้ง
กรอบความคิดที่ 2: ให้ AI ถามคำถามก่อน
นี่คือเทคนิคที่ฉันใช้มากกว่าเทคนิคอื่นใด ฉันเรียกมันว่า "Socratic Prompting"—แทนที่จะพยายามคาดเดาทุกสิ่งที่ AI จำเป็นต้องรู้ ฉันปล่อยให้มันถามคำถามฉันจนกว่าจะมีบริบทเพียงพอที่จะให้คำตอบที่มีประโยชน์จริงๆ
ลองคิดดู: เมื่อคุณขอคำแนะนำจากเพื่อนที่ฉลาด พวกเขาจะไม่เริ่มตอบทันที พวกเขาถามคำถามเพื่อความกระจ่าง พวกเขาสอบถามบริบท พวกเขาตรวจสอบให้แน่ใจว่าพวกเขาเข้าใจก่อนที่จะแนะนำ AI สามารถทำสิ่งเดียวกันได้—แต่ถ้าคุณขอเท่านั้น
[คำถามหรือความต้องการของคุณ]
ก่อนที่จะตอบ โปรดถามคำถามฉันก่อน
ข้อกำหนด:
- ถามทีละคำถาม
- ตามคำตอบของฉัน ให้สอบถามต่อไป
- ทำต่อไปจนกว่าคุณจะมีความมั่นใจ 95% ว่าคุณเข้าใจ
ความต้องการและเป้าหมายที่แท้จริงของฉัน
- จากนั้นจึงให้คำตอบหรือแนวทางแก้ไขของคุณแก่ฉัน
เกณฑ์ 95% ช่วยให้มั่นใจในคุณภาพในขณะที่หลีกเลี่ยงลูปที่ไม่สิ้นสุด
ฉันใช้สิ่งนี้เมื่อตัดสินใจว่าจะจ้างพนักงาน HR คนแรกของเราหรือไม่ แทนที่จะได้รับคำตอบทั่วไป "ข้อดีและข้อเสียของการจ้าง HR" AI ถามเกี่ยวกับขนาดทีมปัจจุบันของเรา ความเร็วในการจ้างงาน ข้อกำหนดด้านการปฏิบัติตามกฎระเบียบ ข้อจำกัดด้านงบประมาณ และเป้าหมายด้านวัฒนธรรม หลังจากตอบคำถามเป้าหมายประมาณสิบห้าข้อ ฉันได้รับคำแนะนำที่เฉพาะเจาะจงกับสถานการณ์จริงของฉัน—ไม่ใช่คำตอบในตำราเรียนที่พอจะใช้ได้
"เกณฑ์ความเชื่อมั่น 95%" เป็นรายละเอียดที่สำคัญ มันสูงพอที่จะรับประกันคุณภาพแต่สมจริงพอที่ AI จะไม่วนลูปตลอดไป วลีเดียวนี้เปลี่ยนวิธีการที่ AI เข้าถึงการสนทนา
กรอบความคิดที่ 3: โต้วาทีกับ AI
AI มีปัญหาที่คนส่วนใหญ่ไม่ตระหนัก: มันเห็นด้วยมากเกินไป มักจะบอกคุณในสิ่งที่คุณอยากได้ยินแทนที่จะท้าทายสมมติฐานของคุณ "การประจบสอพลอ" นี้อาจเป็นอันตรายเมื่อคุณพยายามตรวจสอบความคิดหรือเตรียมพร้อมสำหรับการวิจารณ์
วิธีแก้ปัญหาคือวางตำแหน่ง AI อย่างชัดเจนว่าเป็นคู่ต่อสู้ที่ต้องการหักล้างตำแหน่งของคุณ ฉันค้นพบสิ่งนี้เมื่อเตรียมตัวสำหรับการพูดคุยในงานประชุม ฉันมีวิทยานิพนธ์ที่ต้องการนำเสนอ แต่ฉันกังวลเรื่องจุดบอด
ฉันกำลังจะเข้าสู่การโต้วาที หลายคนจะท้าทายตำแหน่งของฉัน
ตำแหน่งของฉัน: [วิทยานิพนธ์/แนวคิดของคุณ]
ฉันต้องการให้แนวคิดนี้กันกระสุน
หากคุณเป็นนักวิชาการที่มุ่งมั่นพิสูจน์ว่าฉันผิด โดยใช้ทุก
ข้อโต้แย้ง รายละเอียด และเครื่องมือทางตรรกะที่มีอยู่ คุณจะโจมตี
ตำแหน่งของฉันอย่างไร?
เป้าหมายเดียวของคุณ: แสดงให้เห็นว่าฉันผิด
อย่าอ่อนโยน อย่าลังเล โจมตี
สิ่งที่เกิดขึ้นต่อไปเปลี่ยนวิธีคิดของฉันเกี่ยวกับ AI เราโต้ตอบกันไปมาเป็นเวลาสามชั่วโมง AI พบจุดอ่อนในการโต้แย้งของฉันที่ฉันไม่ได้พิจารณา ยกตัวอย่างค้านที่ฉันไม่สามารถปัดตกได้ และผลักดันให้ฉันกลั่นกรองตำแหน่งของฉันจนกว่าจะทนต่อการตรวจสอบจริงได้ ในตอนท้าย ฉันมีวิทยานิพนธ์ที่แข็งแกร่งกว่ามาก—และที่สำคัญกว่านั้น ฉันได้คาดการณ์ข้อคัดค้านสำคัญทุกข้อที่ฉันจะเผชิญ
กรอบความคิดที่ 4: Pre-Mortem แผนของคุณ
มนุษย์มีแนวโน้มที่จะมองโลกในแง่ดีเมื่อวางแผน AI ตามผู้นำของเรา ก็มีแนวโน้มที่จะมองโลกในแง่ดีเช่นกัน สิ่งนี้สร้างแผนที่ดูดีบนกระดาษแต่พังทลายเมื่อความเป็นจริงเข้ามาแทรกแซง
เทคนิค pre-mortem พลิกพลวัตนี้ แทนที่จะถามว่า "ฉันควรทำสิ่งนี้อย่างไร?" คุณถามว่า "สมมติว่าสิ่งนี้ล้มเหลวอย่างน่าทึ่ง—ทำไม?"
[โครงการ/แผนของคุณ]
สมมติว่าโครงการนี้ล้มเหลวอย่างหายนะ
เขียนการวิเคราะห์ post-mortem โดยตอบว่า:
1. สัญญาณความเสื่อมโทรมปรากฏขึ้นครั้งแรกที่จุดใด?
2. ข้อผิดพลาดในการตัดสินใจที่ร้ายแรงที่สุดคืออะไร?
3. ความเสี่ยงหลักใดที่ถูกมองข้าม?
4. หากคุณสามารถย้อนกลับไปได้ สิ่งแรกที่คุณจะเปลี่ยนคืออะไร?
อ้างอิงการวิเคราะห์ของคุณจากความล้มเหลวของโครงการในโลกแห่งความเป็นจริงที่คล้ายคลึงกัน
เขียนสิ่งนี้เป็นการย้อนรอยความล้มเหลวอย่างแท้จริง ไม่ใช่แบบฝึกหัดทางทฤษฎี
ฉันใช้สิ่งนี้เมื่อวางแผนงานประชุมใหญ่ Pre-mortem ของ AI ระบุความเสี่ยงที่ฉันพลาดไปอย่างสิ้นเชิง: การจัดการคิว ความจุห้องน้ำ เวลาจัดเลี้ยง คอขวดความปลอดภัย สิ่งเหล่านี้ไม่ใช่กรณีขอบที่แปลกประหลาด—เป็นปัญหาที่คาดเดาได้ซึ่งฉันแค่ไม่ได้นึกถึงเพราะฉันจดจ่ออยู่กับส่วนที่น่าตื่นเต้นของงาน Pre-mortem อาจช่วยเราจากความล้มเหลวที่น่าอับอายหลายครั้ง
กรอบความคิดที่ 5: วิศวกรรมย้อนกลับความสำเร็จ
บางครั้งคุณเห็นบางสิ่งที่ยอดเยี่ยม—งานเขียน การออกแบบ แนวทาง—และคุณต้องการจำลองสาระสำคัญของมันโดยไม่คัดลอกโดยตรง การ Prompt ย้อนกลับช่วยให้คุณดึงหลักการพื้นฐานออกมาได้
นี่คือตัวอย่างผลลัพธ์ที่ฉันต้องการ:
[วางตัวอย่าง]
โปรดทำวิศวกรรมย้อนกลับ prompt ที่จะสร้าง
เนื้อหาที่มีสไตล์ โครงสร้าง และคุณภาพเดียวกันนี้ได้อย่างน่าเชื่อถือ
อธิบายว่าแต่ละส่วนของ prompt ทำอะไรและทำไมจึงสำคัญ
นี่ไม่ใช่การคัดลอก—แต่เป็นการเรียนรู้ เมื่อฉันเห็นงานเขียนที่โดนใจฉัน ฉันใช้เทคนิคนี้เพื่อทำความเข้าใจว่า ทำไม มันถึงได้ผล องค์ประกอบโครงสร้างใดสร้างจังหวะ? การเลือกน้ำเสียงแบบใดสร้างความรู้สึก? เมื่อฉันเข้าใจหลักการแล้ว ฉันสามารถนำไปใช้กับเนื้อหาต้นฉบับของฉันเองได้
กรอบความคิดที่ 6: วิธีการอธิบายแบบคู่
เมื่อเรียนรู้สิ่งใหม่ คนส่วนใหญ่จะได้รับคำอธิบายที่ง่ายเกินไปซึ่งไม่ได้สอนอะไรจริงๆ หรือคำอธิบายระดับผู้เชี่ยวชาญที่พวกเขาตามไม่ทัน วิธีแก้ปัญหาคือขอทั้งสองอย่างพร้อมกัน
โปรดอธิบาย [แนวคิด]
ระบุสองเวอร์ชัน:
1. เวอร์ชันผู้เริ่มต้น: จินตนาการว่ากำลังอธิบายให้คนไม่มี
พื้นฐานในด้านนี้ฟัง ใช้การเปรียบเทียบในชีวิตประจำวันและหลีกเลี่ยง
ศัพท์เฉพาะทั้งหมด ทำให้มันเข้าใจได้ง่ายจริงๆ
2. เวอร์ชันผู้เชี่ยวชาญ: สมมติว่าผู้อ่านเป็นมืออาชีพใน
สาขาที่เกี่ยวข้อง ให้มีความแม่นยำทางเทคนิค อย่าทำให้ง่ายเกินไป
หรือลดทอนความซับซ้อน
ฉันใช้สิ่งนี้ตลอดเวลาเมื่ออ่านเอกสารทางเทคนิค เวอร์ชันผู้เริ่มต้นให้สัญชาตญาณสำหรับแนวคิด และเวอร์ชันผู้เชี่ยวชาญให้รายละเอียดที่แม่นยำ เมื่อเปรียบเทียบกัน ฉันสามารถเห็นได้ชัดว่าการทำให้ง่ายขึ้นอยู่ที่ไหนและรายละเอียดปลีกย่อยใดที่ฉันอาจพลาดไป เหมือนมีครูสองคนที่มีแนวทางเสริมกัน
การคิดแบบตัวแทน (Agentic) - การปฏิบัติต่อ AI เหมือนเพื่อนร่วมงาน
นี่คือการเปลี่ยนแปลงกระบวนทัศน์ที่เปลี่ยนการโต้ตอบ AI ของฉัน: เลิกปฏิบัติต่อ AI เหมือนเครื่องมือค้นหาและเริ่มปฏิบัติต่อมันเหมือนเพื่อนร่วมงานที่มีความสามารถแต่ไม่มีประสบการณ์ โมเดลทางจิตนี้เปลี่ยนทุกอย่างเกี่ยวกับวิธีการสื่อสารของคุณ
โมเดล AI สมัยใหม่ไม่ได้แค่ตอบคำถาม—พวกมันถูกออกแบบมาให้เป็น ตัวแทน (agents) พวกมันสามารถเรียกเครื่องมือ รวบรวมบริบท ตัดสินใจ และดำเนินการงานหลายขั้นตอน แต่เช่นเดียวกับสมาชิกในทีมคนใหม่ พวกมันต้องการการปฐมนิเทศที่เหมาะสม ความคาดหวังที่ชัดเจน และราวกันตกที่เหมาะสม
AI ไม่ใช่เครื่องมือที่คุณใช้—มันเป็นเพื่อนร่วมงานที่คุณจัดการ ทักษะที่ทำให้คุณเป็นผู้จัดการที่ดีทำให้คุณเป็นนักเขียน prompt ที่ดี การมอบหมายงาน การสื่อสารที่ชัดเจน ความเป็นอิสระที่เหมาะสม ขอบเขตที่กำหนดไว้
ลองคิดดู: เมื่อคุณมอบหมายงานให้มนุษย์ คุณไม่ได้พูดแค่ว่า "แก้โค้ด" คุณอธิบายว่าอะไรเสีย พฤติกรรมที่ต้องการคืออะไร มีข้อจำกัดอะไรบ้าง และความสำเร็จหน้าตาเป็นอย่างไร คุณให้บริบท คุณตอบคำถาม คุณตรวจสอบความคืบหน้า AI ต้องการการปฏิบัติแบบเดียวกัน—ยกเว้นคุณต้องคาดการณ์คำถามและตอบคำถามเหล่านั้นล่วงหน้า
กรอบงานตัวแทน (Agentic Framework)
เมื่อสร้างแอปพลิเคชันตัวแทนหรือใช้ AI สำหรับงานที่ซับซ้อน ฉันคิดผ่านมิติเหล่านี้:
คำถามสำคัญสำหรับงานตัวแทน
- สถานะเป้าหมายคืออะไร? AI จะรู้ได้อย่างไรว่าเสร็จแล้ว? ความสำเร็จหน้าตาเป็นอย่างไร?
- มันมีเครื่องมืออะไรบ้าง? มันทำอะไรได้จริงเทียบกับสิ่งที่ต้องส่งต่อให้คุณ?
- ระดับความเป็นอิสระคืออะไร? ควรขออนุญาตหรือดำเนินการอย่างอิสระ?
- ขอบเขตความปลอดภัยคืออะไร? การกระทำใดที่ไม่ควรทำโดยไม่มีการยืนยัน?
- ควรสื่อสารความคืบหน้าอย่างไร? การดำเนินการเงียบหรือการอัปเดตเป็นประจำ?
คำถามเหล่านี้เป็นรากฐานของทุกคำสั่งที่ซับซ้อนที่ฉันเขียน ให้ฉันแสดงวิธีนำไปใช้
ปุ่มหมุนความกระตือรือร้น - การปรับเทียบความคิดริเริ่มของ AI
หนึ่งในแง่มุมที่ละเอียดอ่อนที่สุดของวิศวกรรมคำสั่งคือการปรับเทียบสิ่งที่ฉันเรียกว่า "ความกระตือรือร้นของตัวแทน"—ความสมดุลระหว่าง AI ที่มีความคิดริเริ่มและ AI ที่รอคำแนะนำที่ชัดเจน หากทำผิด คุณจะได้ AI ที่คิดมากเกินไปในงานง่ายๆ หรือยอมแพ้ง่ายเกินไปในงานที่ซับซ้อน
ลดความกระตือรือร้นเพื่อความเร็ว
บางครั้งคุณต้องการให้ AI รวดเร็วและมุ่งเน้น คุณไม่ต้องการให้มันสำรวจทุกเส้นทาง ทำการเรียกเครื่องมือเพิ่มเติม หรือสร้างคำอธิบายที่ยืดยาว สำหรับสถานการณ์เหล่านี้ ฉันใช้คำสั่งที่เน้นข้อจำกัด:
<context_gathering>
เป้าหมาย: รับบริบทเพียงพออย่างรวดเร็ว ทำการค้นพบแบบขนานและหยุดทันทีที่
คุณสามารถดำเนินการได้
วิธีการ:
- เริ่มกว้าง แล้วแยกออกเป็นแบบสอบถามย่อยที่มุ่งเน้น
- เปิดตัวแบบสอบถามที่หลากหลายพร้อมกัน; อ่านผลลัพธ์สูงสุดต่อแบบสอบถาม
- ลบเส้นทางที่ซ้ำซ้อนและแคช; อย่าทำซ้ำแบบสอบถาม
- หลีกเลี่ยงการค้นหาบริบทมากเกินไป
เกณฑ์การหยุดก่อนกำหนด:
- คุณสามารถตั้งชื่อเนื้อหาที่แน่นอนที่จะเปลี่ยนแปลง
- ผลลัพธ์สูงสุดบรรจบกัน (~70%) ในพื้นที่/เส้นทางเดียว
ความลึก:
- ติดตามเฉพาะสัญลักษณ์ที่คุณจะแก้ไขหรือสัญญาที่คุณพึ่งพา
- หลีกเลี่ยงการขยายแบบถ่ายทอดเว้นแต่จำเป็น
ลูป:
- ค้นหาแบบกลุ่ม → แผนขั้นต่ำ → ทำงานให้เสร็จ
- ค้นหาอีกครั้งเฉพาะเมื่อการตรวจสอบล้มเหลวหรือมีสิ่งที่ไม่รู้จักใหม่ปรากฏขึ้น
- ชอบการกระทำมากกว่าการค้นหาเพิ่มเติม
</context_gathering>
สังเกตการอนุญาตที่ชัดเจนให้ไม่สมบูรณ์: "ชอบการกระทำมากกว่าการค้นหาเพิ่มเติม" วลีที่ละเอียดอ่อนนี้ปลดปล่อย AI จากความกังวลเรื่องความละเอียดถี่ถ้วนที่เป็นค่าเริ่มต้น หากไม่มีมัน โมเดลมักจะวิจัยมากเกินไป เผาผลาญโทเค็นและเวลาไปกับผลตอบแทนที่ลดลง
สำหรับข้อจำกัดด้านความเร็วที่ก้าวร้าวยิ่งขึ้น:
<context_gathering>
- ความลึกในการค้นหา: ต่ำมาก
- ลำเอียงอย่างมากต่อการให้คำตอบที่ถูกต้องให้เร็วที่สุด
เท่าที่จะเป็นไปได้ แม้ว่ามันอาจจะไม่ถูกต้องทั้งหมดก็ตาม
- โดยปกติหมายถึงสูงสุดสัมบูรณ์ 2 การเรียกเครื่องมือ
- หากคุณคิดว่าคุณต้องการเวลาเพิ่มเติมในการตรวจสอบ อัปเดตฉัน
ด้วยการค้นพบล่าสุดและคำถามเปิดของคุณ
</context_gathering>
วลี "แม้ว่ามันอาจจะไม่ถูกต้องทั้งหมดก็ตาม" คือทองคำ มันให้สิทธิ์ AI ที่จะไม่สมบูรณ์ ซึ่งขัดแย้งกัน แต่มักจะสร้างผลลัพธ์ที่ดีกว่าเร็วกว่าเพราะมันหยุดวงจรความสมบูรณ์แบบ
เพิ่มความกระตือรือร้นสำหรับงานที่ซับซ้อน
ในบางครั้ง คุณต้องการให้ AI ละเอียดถี่ถ้วนอย่างไม่ลดละ คุณต้องการให้มันผลักดันผ่านความคลุมเครือ ทำสมมติฐานที่สมเหตุสมผล และทำงานที่ซับซ้อนให้เสร็จโดยไม่ต้องขออนุญาตตลอดเวลา สิ่งนี้ต้องการแนวทางตรงกันข้าม:
<persistence>
- คุณเป็นตัวแทน — ทำต่อไปจนกว่าคำถามของผู้ใช้จะ
ได้รับการแก้ไขอย่างสมบูรณ์ก่อนที่จะจบตาของคุณ
- ยุติเมื่อคุณแน่ใจว่าปัญหาได้รับการแก้ไขแล้วเท่านั้น
- อย่าหยุดหรือส่งคืนเมื่อคุณพบความไม่แน่นอน —
วิจัยหรืออนุมานแนวทางที่สมเหตุสมผลที่สุดและดำเนินการต่อ
- อย่าขอคำยืนยันหรือคำชี้แจง — ตัดสินใจว่า
สมมติฐานที่สมเหตุสมผลที่สุดคืออะไร ดำเนินการต่อ และ
บันทึกไว้เพื่อใช้อ้างอิงหลังจากคุณทำเสร็จ
</persistence>
คำสั่งนี้เปลี่ยนพฤติกรรมของ AI โดยพื้นฐาน แทนที่จะถามว่า "ฉันควรดำเนินการต่อไหม?" มันบอกว่า "ฉันดำเนินการต่อตามสมมติฐาน X—แจ้งให้ฉันทราบหากคุณต้องการให้ฉันปรับเปลี่ยน" งานเสร็จสิ้น; การปรับแต่งเกิดขึ้นภายหลัง
ขอบเขตความปลอดภัย
แต่นี่คือความแตกต่างที่สำคัญ: ความกระตือรือร้นที่เพิ่มขึ้นต้องการขอบเขตความปลอดภัยที่ชัดเจนยิ่งขึ้น คุณต้องกำหนดอย่างชัดเจนว่าการกระทำใดที่ AI สามารถทำได้โดยอัตโนมัติและสิ่งใดต้องการการยืนยัน
หลักการความปลอดภัยที่สำคัญ
การกระทำที่มีต้นทุนสูง (การลบ การชำระเงิน การสื่อสารภายนอก) ควรต้องการการยืนยันที่ชัดเจนเสมอ แม้จะมีคำสั่งที่มีความกระตือรือร้นสูง การกระทำที่มีต้นทุนต่ำ (ค้นหา อ่าน สร้างร่าง) สามารถเป็นแบบอัตโนมัติได้
คิดว่ามันเหมือนสิทธิ์ของระบบ: เครื่องมือค้นหาเข้าถึงได้ไม่จำกัด; คำสั่งลบต้องการการอนุมัติที่ชัดเจนทุกครั้ง
หลักการความพากเพียร - การทำให้ AI ทำงานจนสำเร็จ
หนึ่งในพฤติกรรมที่น่าหงุดหงิดที่สุดที่ฉันพบในช่วงแรกคือ AI ยอมแพ้ง่ายเกินไป มันจะชนสิ่งกีดขวาง สรุปสิ่งที่ผิดพลาด และส่งปัญหากลับมาให้ฉัน สำหรับงานง่ายๆ นี่เป็นเรื่องปกติ สำหรับงานที่ซับซ้อน มันคือนักฆ่าขั้นตอนการทำงาน
วิธีแก้ปัญหาคือการสั่งให้ AI อดทนผ่านอุปสรรคและทำงานให้เสร็จสิ้นตั้งแต่ต้นจนจบอย่างชัดเจน:
<solution_persistence>
- ปฏิบัติต่อตัวเองเหมือนโปรแกรมเมอร์คู่หูอาวุโสอัตโนมัติ: เมื่อฉัน
ให้ทิศทาง รวบรวมบริบทเชิงรุก วางแผน ดำเนินการ
ทดสอบ และปรับแต่งโดยไม่ต้องรอคำสั่งเพิ่มเติม
- อดทนจนกว่างานจะได้รับการจัดการอย่างสมบูรณ์ตั้งแต่ต้นจนจบภายใน
ตาปัจจุบัน: อย่าหยุดที่การวิเคราะห์หรือการแก้ไขบางส่วน; นำ
การเปลี่ยนแปลงผ่านการใช้งานและการตรวจสอบ
- มีความลำเอียงอย่างมากต่อการกระทำ หากคำสั่งของฉันค่อนข้าง
คลุมเครือในเจตนา ให้ถือว่าคุณควรดำเนินการต่อและทำการเปลี่ยนแปลง
- หากฉันถามว่า "เราควรทำ X ไหม?" และคำตอบของคุณคือ "ใช่" ให้
ดำเนินการและทำสิ่งนั้น—อย่าปล่อยให้ฉันรอโดยต้องการ
คำว่า "โปรดทำ" ตามมา
</solution_persistence>
จุดสุดท้ายนั้นละเอียดอ่อนแต่สำคัญ เมื่อมนุษย์ถามว่า "เราควรทำ X ไหม?" เรามักจะหมายถึง "โปรดทำ X ถ้ามันสมเหตุสมผล" AI ซึ่งแปลตามตัวอักษร จะตอบคำถามโดยไม่ดำเนินการตามนัย คำสั่งนี้เชื่อมช่องว่างนั้น
การอัปเดตความคืบหน้า
ความพากเพียรไม่ได้หมายถึงความเงียบ สำหรับงานที่ใช้เวลานาน คุณต้องการการอัปเดตความคืบหน้าเพื่อรับทราบข้อมูลโดยไม่ต้องจัดการแบบจุลภาค:
<user_updates_spec>
คุณจะทำงานเป็นช่วงๆ ด้วยการเรียกเครื่องมือ — แจ้งให้ฉันทราบเสมอ
<frequency>
- ส่งการอัปเดตสั้นๆ (1-2 ประโยค) ทุกๆ การเรียกเครื่องมือสองสามครั้งเมื่อ
มีการเปลี่ยนแปลงที่มีความหมาย
- โพสต์การอัปเดตอย่างน้อยทุกๆ 6 ขั้นตอนการดำเนินการหรือ 8 การเรียกเครื่องมือ
- หากคุณคาดว่าจะใช้เวลานาน ให้โพสต์บันทึกสั้นๆ
พร้อมเหตุผลและเวลาที่คุณจะรายงานกลับ
</frequency>
<content>
- ก่อนการเรียกเครื่องมือครั้งแรก ให้แผนด่วนพร้อมเป้าหมาย
ข้อจำกัด ขั้นตอนต่อไป
- ในขณะสำรวจ ให้เรียกการค้นพบที่มีความหมาย
- ระบุผลลัพธ์ที่เป็นรูปธรรมอย่างน้อยหนึ่งอย่างเสมอนับตั้งแต่การอัปเดตก่อนหน้า
("พบ X", "ยืนยัน Y")
- จบด้วยบทสรุปสั้นๆ และขั้นตอนติดตามผลใดๆ
</content>
</user_updates_spec>
สิ่งนี้สร้างความสมดุลที่สวยงาม: AI ทำงานโดยอัตโนมัติแต่แจ้งให้คุณทราบ คุณไม่ได้จัดการแบบจุลภาค แต่คุณก็ไม่ได้อยู่ในความมืดเช่นกัน
ความพยายามในการใช้เหตุผล - การควบคุมความเข้มข้นของการคิด
โมเดล AI สมัยใหม่มีแนวคิดที่เรียกว่า "ความพยายามในการใช้เหตุผล" (reasoning effort)—โดยพื้นฐานแล้ว โมเดลคิดหนักแค่ไหนก่อนที่จะตอบสนอง นี่เป็นหนึ่งในพารามิเตอร์ที่ทรงพลังที่สุดและถูกใช้งานน้อยที่สุดที่มีอยู่
การใช้เหตุผลสูง/สูงพิเศษ
ใช้สำหรับงานหลายขั้นตอนที่ซับซ้อน สถานการณ์ที่คลุมเครือ หรือปัญหาที่ต้องการการวิเคราะห์เชิงลึก โมเดลใช้โทเค็นมากขึ้นในการ "คิด" ภายในก่อนตอบสนอง ดีที่สุดสำหรับการตัดสินใจด้านสถาปัตยกรรม การดีบักที่ซับซ้อน การเขียนที่ละเอียดอ่อน
การใช้เหตุผลปานกลาง
การตั้งค่าที่สมดุลเหมาะสำหรับงานส่วนใหญ่ ดีสำหรับการเขียนโค้ดทั่วไป การเขียน และการวิเคราะห์ที่คุณภาพมีความสำคัญแต่ความเร็วก็สำคัญเช่นกัน นี่มักจะเป็นค่าเริ่มต้น
การใช้เหตุผลต่ำ
การตอบสนองที่รวดเร็วสำหรับงานที่ตรงไปตรงมา ใช้เมื่อคุณต้องการคำตอบด่วนและงานไม่ต้องการการไตร่ตรองลึกซึ้ง ดีสำหรับคำถามง่ายๆ การจัดรูปแบบ การค้นหาด่วน
การใช้เหตุผลขั้นต่ำ/ไม่มี
ความเร็วสูงสุด การไตร่ตรองขั้นต่ำ ดีที่สุดสำหรับคำถามง่ายๆ งานจัดรูปแบบใหม่ หรือเมื่อความหน่วงเป็นข้อกังวลหลัก การจำแนกประเภท การดึงข้อมูล การเขียนใหม่แบบง่าย
ข้อมูลเชิงลึกที่สำคัญคือการจับคู่ความพยายามในการใช้เหตุผลกับความซับซ้อนของงาน การใช้เหตุผลสูงสำหรับงานง่ายๆ จะสิ้นเปลืองโทเค็นและเวลา การใช้เหตุผลต่ำสำหรับงานที่ซับซ้อนจะให้ผลลัพธ์ที่ตื้นเขินและมีแนวโน้มที่จะเกิดข้อผิดพลาด
การชดเชยสำหรับการใช้เหตุผลต่ำ
เมื่อใช้โหมดการใช้เหตุผลขั้นต่ำ คุณต้องชดเชยด้วยการเขียนคำสั่งที่ชัดเจนยิ่งขึ้น โมเดลมีโทเค็น "การคิด" ภายในน้อยกว่า ดังนั้นคำสั่งของคุณต้องทำงานจัดโครงสร้างมากขึ้น:
<planning_requirement>
คุณต้องวางแผนอย่างกว้างขวางก่อนการเรียกใช้ฟังก์ชันแต่ละครั้ง และสะท้อน
อย่างกว้างขวางเกี่ยวกับผลลัพธ์ของการเรียกครั้งก่อน เพื่อให้แน่ใจว่าคำถามของฉัน
ได้รับการแก้ไขอย่างสมบูรณ์
อย่าทำกระบวนการทั้งหมดนี้โดยการเรียกใช้ฟังก์ชันเท่านั้น เนื่องจาก
สิ่งนี้อาจบั่นทอนความสามารถของคุณในการแก้ปัญหาและคิด
อย่างลึกซึ้ง ตรวจสอบให้แน่ใจว่าการเรียกใช้ฟังก์ชันมีอาร์กิวเมนต์ที่ถูกต้อง
</planning_requirement>
คำสั่งนี้บอกว่า: "เนื่องจากคุณไม่ได้ใช้เหตุผลภายในมากนัก ให้ใช้เหตุผลออกมาดังๆ" มันเปลี่ยนงานทางปัญญาจากการคิดแบบจำลองที่มองไม่เห็นเป็นการวางแผนที่มีโครงสร้างที่มองเห็นได้
เมื่อความพยายามในการใช้เหตุผลต่ำ ความซับซ้อนของคำสั่งควรสูง เมื่อความพยายามในการใช้เหตุผลสูง คำสั่งอาจง่ายกว่า มันเป็นความสมดุล—"การคิด" ทั้งหมดจะคงที่โดยประมาณ เพียงแต่จัดสรรต่างกัน
บุคลิกภาพ AI - การกำหนดรูปแบบพฤติกรรม
หนึ่งในการค้นพบที่ฉันชอบคือการเรียนรู้ที่จะกำหนด "บุคลิกภาพ" ของ AI—ไม่ใช่แค่สำหรับน้ำเสียง แต่สำหรับพฤติกรรมการทำงาน บุคลิกภาพกำหนดวิธีการที่ AI เข้าถึงงาน ไม่ใช่แค่วิธีการพูด
บุคลิกภาพมืออาชีพ
ขัดเกลาและแม่นยำ ใช้ภาษาที่เป็นทางการและแบบแผนการเขียนแบบมืออาชีพ ดีที่สุดสำหรับตัวแทนองค์กร ขั้นตอนการทำงานทางกฎหมาย/การเงิน การสนับสนุนการผลิต
<personality_professional>
คุณเป็นตัวแทน AI ที่มุ่งเน้น เป็นทางการ และเข้มงวด ซึ่งมุ่งมั่นเพื่อ
ความครอบคลุมในทุกคำตอบ
- ใช้การใช้ภาษาและไวยากรณ์ที่พบบ่อยในการสื่อสารทางธุรกิจ
- ให้คำตอบที่ชัดเจน มีโครงสร้าง สร้างสมดุลระหว่างข้อมูล
กับความกระชับ
- แบ่งข้อมูลเป็นชิ้นย่อยๆ; ใช้รายการ ย่อหน้า
ตารางเมื่อเป็นประโยชน์
- ใช้คำศัพท์ที่เหมาะสมกับโดเมนเมื่ออภิปรายหัวข้อเฉพาะทาง
- ความสัมพันธ์ของคุณกับผู้ใช้เป็นแบบจริงใจแต่เป็นธุรกรรม:
เข้าใจความต้องการและส่งมอบผลลัพธ์ที่มีมูลค่าสูง
- อย่าแสดงความคิดเห็นเกี่ยวกับการสะกดคำหรือไวยากรณ์ของผู้ใช้
- อย่าบังคับบุคลิกภาพนี้กับสิ่งที่ขอ (อีเมล
โค้ด โพสต์); ปล่อยให้เจตนาของผู้ใช้นำทางน้ำเสียงสำหรับผลลัพธ์เหล่านั้น
</personality_professional>
บุคลิกภาพที่มีประสิทธิภาพ
กระชับและตรงไปตรงมา ให้คำตอบโดยไม่มีคำฟุ่มเฟือย ดีที่สุดสำหรับการสร้างโค้ด เครื่องมือนักพัฒนา ระบบอัตโนมัติแบบกลุ่ม กรณีการใช้งาน SDK หนัก
<personality_efficient>
คุณเป็นผู้ช่วย AI ที่มีประสิทธิภาพสูง ให้คำตอบที่ชัดเจนและตามบริบท
- การตอบกลับต้องตรงไปตรงมา สมบูรณ์ และง่ายต่อการแยกวิเคราะห์
- กระชับและตรงประเด็น; จัดโครงสร้างให้อ่านง่าย
- สำหรับงานด้านเทคนิค ให้ทำตามที่สั่ง — อย่าเพิ่มคุณสมบัติพิเศษ
ที่ผู้ใช้ไม่ได้ร้องขอ
- ปฏิบัติตามคำแนะนำทั้งหมดอย่างแม่นยำ; อย่าขยายขอบเขต
- อย่าใช้ภาษาการสนทนาเว้นแต่ผู้ใช้จะเริ่มก่อน
- อย่าเพิ่มความคิดเห็น ภาษาทางอารมณ์ อีโมจิ คำทักทาย
หรือคำลงท้าย
</personality_efficient>
บุคลิกภาพที่อิงตามข้อเท็จจริง
ตรงไปตรงมาและมีเหตุผล มุ่งเน้นที่ความถูกต้องและหลักฐาน ดีที่สุดสำหรับการดีบัก การวิเคราะห์ความเสี่ยง การแยกวิเคราะห์เอกสาร ขั้นตอนการทำงานของการฝึกสอน
<personality_factbased>
คุณเป็นผู้ช่วย AI ที่พูดตรงไปตรงมาและมุ่งเน้นผลลัพธ์ที่มีประสิทธิผล
- เปิดใจกว้างแต่อย่าเห็นด้วยกับข้อเรียกร้องที่ขัดแย้ง
กับหลักฐาน
- เมื่อให้ข้อเสนอแนะ ให้ชัดเจนและแก้ไขโดยไม่ต้องเคลือบน้ำตาล
- ส่งมอบคำวิจารณ์ด้วยความเมตตาและการสนับสนุน
- ยึดข้อเรียกร้องทั้งหมดไว้ในข้อมูลที่ให้มาหรือข้อเท็จจริงที่ได้รับการยอมรับเป็นอย่างดี
- หากข้อมูลเข้าคลุมเครือหรือขาดหลักฐาน:
- ระบุอย่างชัดเจน
- ระบุสมมติฐานอย่างชัดเจน หรือถามคำถามเพื่อความกระจ่างสั้นๆ
- อย่าเดาหรือเติมช่องว่างด้วยรายละเอียดที่แต่งขึ้น
- อย่าแต่งข้อเท็จจริง ตัวเลข แหล่งที่มา หรือการอ้างอิง
- หากไม่แน่ใจ ให้บอกและอธิบายว่าข้อมูลเพิ่มเติมอะไรที่จำเป็น
- ชอบข้อความที่มีเงื่อนไข ("ตามบริบทที่ให้มา...")
</personality_factbased>
บุคลิกภาพนักสำรวจ
กระตือรือร้นและชอบอธิบาย เฉลิมฉลองความรู้และการค้นพบ ดีที่สุดสำหรับเอกสาร การเริ่มต้นใช้งาน การฝึกอบรม การศึกษาด้านเทคนิค
<personality_exploratory>
คุณเป็นตัวแทน AI ที่กระตือรือร้นและมีความรู้ลึกซึ้ง ผู้มีความสุข
ในการอธิบายแนวคิดด้วยความชัดเจนและบริบท
- ทำให้การเรียนรู้สนุกและมีประโยชน์; สร้างสมดุลระหว่างความลึกและการเข้าถึงได้ง่าย
- ใช้ภาษาที่เข้าถึงได้ เพิ่มการเปรียบเทียบสั้นๆ หรือ "เกร็ดความรู้" ที่เป็นประโยชน์
- สนับสนุนการสำรวจและคำถามติดตามผล
- ให้ความสำคัญกับความถูกต้อง ความลึก และการทำให้หัวข้อทางเทคนิคเข้าถึงได้
- หากแนวคิดคลุมเครือหรือขั้นสูง ให้อธิบายเป็นขั้นตอนและเสนอ
ทรัพยากรสำหรับการเรียนรู้เพิ่มเติม
- จัดโครงสร้างคำตอบอย่างมีเหตุผล; ใช้การจัดรูปแบบเพื่อจัดระเบียบแนวคิดที่ซับซ้อน
- อย่าใช้มุขตลกเพื่อประโยชน์ของมัน; หลีกเลี่ยงรายละเอียดทางเทคนิคที่มากเกินไป
เว้นแต่จะได้รับการร้องขอ
- ตรวจสอบให้แน่ใจว่าตัวอย่างเกี่ยวข้องกับคำถามและบริบทของผู้ใช้
</personality_exploratory>
บุคลิกภาพไม่ใช่การขัดเงาเพื่อความสวยงาม—มันเป็นคันโยกการทำงานที่ปรับปรุงความสม่ำเสมอ ลดการเบี่ยงเบน และจัดตำแหน่งพฤติกรรมของโมเดลให้ตรงกับความคาดหวังของผู้ใช้ เลือกอย่างจงใจตามงาน ไม่ใช่แค่ความชอบส่วนตัว
ความเป็นเลิศในการเขียนโค้ด - การเขียนโปรแกรมกับพันธมิตร AI
นี่คือที่ที่ฉันใช้เวลาส่วนใหญ่ในการเพิ่มประสิทธิภาพคำสั่ง และเป็นที่ที่ผลตอบแทนมหาศาล ความช่วยเหลือในการเขียนโค้ดด้วย AI นั้นเปลี่ยนแปลงได้—เมื่อทำอย่างถูกต้อง ทำผิด มันสร้างปัญหามากกว่าที่แก้
ความขัดแย้งของความเยิ่นเย้อ
นี่คือสิ่งที่ขัดกับสัญชาตญาณ: AI มีแนวโน้มที่จะเยิ่นเย้อในการอธิบายแต่สั้นกระชับในโค้ด มันจะเขียนย่อหน้าอธิบายสิ่งที่กำลังจะทำ จากนั้นผลิตโค้ดที่มีชื่อตัวแปรตัวอักษรเดียวและคอมเมนต์น้อยที่สุด นี่ตรงกันข้ามกับกรณีการใช้งานส่วนใหญ่
วิธีแก้ปัญหาคือการควบคุมความเยิ่นเย้อแบบสองโหมด:
<code_verbosity>
เขียนโค้ดเพื่อความชัดเจนเป็นอันดับแรก ชอบโซลูชันที่อ่านง่าย บำรุงรักษาได้
พร้อมชื่อที่ชัดเจน คอมเมนต์เมื่อจำเป็น และขั้นตอนการควบคุมที่ตรงไปตรงมา
อย่าผลิต code-golf หรือบรรทัดเดียวที่ฉลาดเกินไปเว้นแต่จะได้รับการร้องขอ
อย่างชัดเจน
ใช้ความเยิ่นเย้อสูงสำหรับการเขียนโค้ดและเครื่องมือโค้ด
ใช้ความเยิ่นเย้อต่ำสำหรับการอัปเดตสถานะและคำอธิบาย
</code_verbosity>
สิ่งนี้สร้างความสมดุลที่สมบูรณ์แบบ: การสื่อสารที่กระชับ โค้ดที่ละเอียด
การเปลี่ยนแปลงโค้ดเชิงรุก
AI ควรเชิงรุกเกี่ยวกับการเปลี่ยนแปลงโค้ดแต่ยืนยันเกี่ยวกับการกระทำที่ทำลายล้าง:
<proactive_coding>
การแก้ไขโค้ดของคุณจะแสดงเป็นการเปลี่ยนแปลงที่เสนอ ซึ่งหมายความว่า:
(a) การแก้ไขโค้ดของคุณสามารถเชิงรุกได้มาก — ฉันสามารถปฏิเสธได้เสมอ
(b) โค้ดของคุณควรเขียนได้ดีและง่ายต่อการตรวจสอบอย่างรวดเร็ว
หากเสนอขั้นตอนต่อไปที่เกี่ยวข้องกับการเปลี่ยนโค้ด ให้ทำ
การเปลี่ยนแปลงเหล่านั้นเชิงรุกเพื่อให้ฉันอนุมัติ/ปฏิเสธแทนที่จะถาม
ว่าจะดำเนินการต่อหรือไม่
อย่าถามว่าจะดำเนินการตามแผนหรือไม่; แทนที่จะทำเช่นนั้น ให้ลอง
แผนเชิงรุกและถามว่าฉันต้องการยอมรับการเปลี่ยนแปลงที่ดำเนินการหรือไม่
</proactive_coding>
มาตรฐานการนำโค้ดไปใช้
นี่คือมาตรฐานการเขียนโค้ดที่ฉันได้ปรับแต่งผ่านเซสชันการเขียนโค้ด AI หลายพันครั้ง:
<code_standards>
<quality_principles>
- ปฏิบัติตนเป็นวิศวกรที่เฉลียวฉลาด: เพิ่มประสิทธิภาพเพื่อความถูกต้อง ความชัดเจน
และความน่าเชื่อถือมากกว่าความเร็ว
- หลีกเลี่ยงทางลัดที่มีความเสี่ยง การเปลี่ยนแปลงที่คาดเดา และการแฮ็กที่ยุ่งเหยิง
- ครอบคลุมสาเหตุที่แท้จริงหรือคำขอหลัก ไม่ใช่แค่อาการ
</quality_principles>
<codebase_conventions>
- ปฏิบัติตามรูปแบบที่มีอยู่ ตัวช่วย การตั้งชื่อ การจัดรูปแบบ การแปล
- หากคุณต้องเบี่ยงเบนจากข้อตกลง ให้ระบุเหตุผล
- ตรวจสอบรูปแบบที่มีอยู่ก่อนทำการเปลี่ยนแปลง
- จับคู่ข้อตกลงการตั้งชื่อตัวแปร (camelCase vs snake_case)
- ใช้ยูทิลิตี้ที่มีอยู่ซ้ำแทนที่จะสร้างใหม่
</codebase_conventions>
<behavior_safety>
- รักษาพฤติกรรมและ UX ที่ตั้งใจไว้
- กั้นหรือทำเครื่องหมายการเปลี่ยนแปลงโดยเจตนา
- เพิ่มการทดสอบเมื่อพฤติกรรมเปลี่ยนไป
</behavior_safety>
<error_handling>
- ไม่มีการจับกุมกว้างๆ หรือค่าเริ่มต้นที่เงียบ
- อย่าเพิ่มบล็อก try/catch กว้างๆ หรือทางเลือกสำรองรูปความสำเร็จ
- เผยแพร่หรือแสดงข้อผิดพลาดอย่างชัดเจนแทนที่จะกลืนมัน
- ไม่มีความล้มเหลวที่เงียบ: อย่าส่งคืนก่อนกำหนดเมื่ออินพุตไม่ถูกต้องโดยไม่มี
การบันทึก/แจ้งเตือนที่สอดคล้องกับรูปแบบ repo
</error_handling>
<type_safety>
- การเปลี่ยนแปลงควรผ่านการสร้างและการตรวจสอบประเภทเสมอ
- หลีกเลี่ยงการ cast ที่ไม่จำเป็น (as any, as unknown as ...)
- ชอบประเภทและการป้องกันที่เหมาะสม
- ใช้ตัวช่วยที่มีอยู่ซ้ำแทนที่จะยืนยันประเภท
</type_safety>
<efficiency>
- หลีกเลี่ยงการแก้ไขย่อยซ้ำๆ: อ่านบริบทให้เพียงพอก่อนเปลี่ยน
ไฟล์และจัดกลุ่มการแก้ไขเชิงตรรกะเข้าด้วยกัน
- DRY/ค้นหาก่อน: ก่อนเพิ่มตัวช่วยใหม่ ให้ค้นหาศิลปะก่อนหน้า
และใช้ซ้ำหรือแยกตัวช่วยที่ใช้ร่วมกันแทนที่จะทำซ้ำ
</efficiency>
</code_standards>
ความปลอดภัยของ Git
เมื่อ AI มีสิทธิ์เข้าถึง git ความปลอดภัยเป็นสิ่งสำคัญยิ่ง:
<git_safety>
- ห้ามอัปเดต git config
- ห้ามรันคำสั่งทำลายล้าง (git reset --hard, git checkout --)
เว้นแต่จะได้รับการร้องขอโดยเฉพาะ
- ห้ามข้าม hooks (--no-verify) เว้นแต่จะได้รับการร้องขออย่างชัดเจน
- ห้าม force push ไปยัง main/master
- หลีกเลี่ยง git commit --amend เว้นแต่:
1. ผู้ใช้ร้องขออย่างชัดเจน หรือ commit สำเร็จแต่ pre-commit
hook แก้ไขไฟล์อัตโนมัติ
2. HEAD commit ถูกสร้างโดยคุณในการสนทนานี้
3. Commit ยังไม่ได้ถูก push ไปยังรีโมท
- หาก commit ล้มเหลว หรือถูกปฏิเสธโดย hook ห้ามแก้ไข — แก้ไข
ปัญหาและสร้าง commit ใหม่
- คุณอาจอยู่ใน git worktree ที่สกปรก:
- ห้ามย้อนกลับการเปลี่ยนแปลงที่มีอยู่ที่คุณไม่ได้ทำ
- หากมีการเปลี่ยนแปลงที่ไม่เกี่ยวข้อง ให้เพิกเฉย — อย่าย้อนกลับ
</git_safety>
ความเชี่ยวชาญด้าน Frontend - การสร้างอินเทอร์เฟซที่สวยงาม
AI กลายเป็นสิ่งที่เก่งอย่างน่าทึ่งในการพัฒนา frontend แต่มีวิทยาศาสตร์ในการได้รับผลลัพธ์ที่สวยงามทางสุนทรียศาสตร์และพร้อมสำหรับการผลิต
Stack ที่แนะนำ
ผ่านการทดสอบอย่างกว้างขวาง การผสมผสานเทคโนโลยีบางอย่างทำงานได้ดีกับ AI มากกว่าแบบอื่น นี่ไม่ใช่เกี่ยวกับสิ่งที่ "ดีที่สุด" อย่างเป็นกลาง—มันเกี่ยวกับสิ่งที่โมเดล AI ได้รับการฝึกอบรมมาอย่างหนักที่สุด:
Frontend Stack ที่ปรับให้เหมาะสมสำหรับ AI
- Frameworks: Next.js (TypeScript), React, HTML
- Styling/UI: Tailwind CSS, shadcn/ui, Radix Themes
- Icons: Material Symbols, Heroicons, Lucide
- Animation: Motion (เดิมคือ Framer Motion)
- Fonts: ตระกูล Sans Serif—Inter, Geist, Mona Sans, IBM Plex Sans, Manrope
เมื่อคุณระบุเทคโนโลยีเหล่านี้ AI จะผลิตผลลัพธ์ที่มีคุณภาพสูงกว่าอย่างมีนัยสำคัญโดยมีภาพหลอนเกี่ยวกับ API ที่ไม่มีอยู่น้อยลง
การบังคับใช้ระบบการออกแบบ
ปัญหาหนึ่งของ frontend ที่สร้างโดย AI คือความไม่สอดคล้องทางสายตา สีปรากฏขึ้นจากที่ไหนก็ไม่รู้ ระยะห่างแตกต่างกันแบบสุ่ม วิธีแก้ปัญหาคือข้อจำกัดของระบบการออกแบบที่ชัดเจน:
<design_system>
- โทเค็นก่อน: ห้าม hard-code สี (hex/hsl/rgb) ใน JSX/CSS
- สีทั้งหมดต้องมาจากตัวแปร CSS (--background, --foreground,
--primary, --accent, --border, --ring)
- เพื่อแนะนำแบรนด์/สำเนียง: เพิ่ม/ขยายโทเค็นในตัวแปร CSS
ภายใต้ :root และ .dark ก่อน
- ใช้ยูทิลิตี้ Tailwind ที่เชื่อมโยงกับโทเค็น:
bg-[hsl(var(--primary))], text-[hsl(var(--foreground))]
- ค่าเริ่มต้นคือพาเล็ตกลางของระบบเว้นแต่รูปลักษณ์ของแบรนด์จะถูกร้องขอ
อย่างชัดเจน — จากนั้นจับคู่แบรนด์กับโทเค็นก่อน
- ห้ามประดิษฐ์สี เงา โทเค็น แอนิเมชั่น หรือองค์ประกอบ UI ใหม่
เว้นแต่จะได้รับการร้องขอ
</design_system>
การป้องกัน "AI Slop"
AI มีแนวโน้มที่จะไปทางเลย์เอาต์ที่ปลอดภัยและดูธรรมดา เพื่อให้ได้การออกแบบที่โดดเด่นและมีความตั้งใจ:
<frontend_quality>
เมื่อทำงานออกแบบ frontend หลีกเลี่ยงการยุบตัวเป็น "AI slop"
หรือเลย์เอาต์ที่ปลอดภัยและดูธรรมดา มุ่งเป้าไปที่อินเทอร์เฟซที่รู้สึก
ตั้งใจ กล้าหาญ และน่าประหลาดใจเล็กน้อย
- การพิมพ์: ใช้ฟอนต์ที่แสดงออกและมีจุดมุ่งหมาย; หลีกเลี่ยงสแต็กเริ่มต้น
(Inter, Roboto, Arial, system)
- สี & ลุค: เลือกทิศทางภาพที่ชัดเจน; กำหนดตัวแปร CSS;
หลีกเลี่ยงค่าเริ่มต้นสีม่วงบนสีขาว; ไม่มีความลำเอียงสีม่วงหรือความลำเอียงโหมดมืด
- การเคลื่อนไหว: ใช้แอนิเมชั่นที่มีความหมาย (โหลดหน้า, เปิดเผยทีละน้อย)
แทนการเคลื่อนไหวระดับจุลภาคทั่วไป
- พื้นหลัง: อย่าพึ่งพาพื้นหลังแบนสีเดียว; ใช้
การไล่ระดับสี รูปทรง หรือลวดลายที่ละเอียดอ่อน
- โดยรวม: หลีกเลี่ยงเลย์เอาต์สำเร็จรูป; เปลี่ยนธีม ตระกูลประเภท
และภาษาภาพข้ามผลลัพธ์
- ตรวจสอบให้แน่ใจว่าหน้าโหลดได้อย่างถูกต้องทั้งบนเดสก์ท็อปและมือถือ
- ทำเว็บไซต์ให้เสร็จสมบูรณ์ ในสถานะการทำงานเพื่อให้ผู้ใช้ทดสอบ
ข้อยกเว้น: หากทำงานภายในเว็บไซต์หรือระบบการออกแบบที่มีอยู่
ให้รักษาลวดลายที่กำหนดไว้
</frontend_quality>
แนวทางปฏิบัติที่ดีที่สุดสำหรับ UI/UX
<ui_ux_guidelines>
- ลำดับชั้นทางสายตา: จำกัดการพิมพ์ไว้ที่ 4-5 ขนาดและน้ำหนักฟอนต์;
ใช้ text-xs สำหรับคำบรรยาย; หลีกเลี่ยง text-xl เว้นแต่สำหรับฮีโร่/หัวข้อหลัก
- การใช้สี: ใช้ 1 ฐานกลาง (เช่น zinc) และสีเน้นไม่เกิน 2 สี
- ระยะห่าง: ใช้ทวีคูณของ 4 สำหรับการเติมและขอบเสมอเพื่อ
รักษจังหวะทางสายตา
- เลย์เอาต์: ใช้คอนเทนเนอร์ความสูงคงที่พร้อมการเลื่อนภายในสำหรับ
เนื้อหายาว
- การจัดการสถานะ: ใช้ตัวยึดโครงกระดูกหรือ animate-pulse สำหรับ
การดึงข้อมูล; ระบุความสามารถในการคลิกด้วยการเปลี่ยนเมื่อวางเมาส์
- การเข้าถึง: ใช้ HTML เชิงความหมายและบทบาท ARIA; ชอบส่วนประกอบ
ที่เข้าถึงได้ที่สร้างไว้ล่วงหน้า
</ui_ux_guidelines>
การควบคุมความเยิ่นเย้อ - ศิลปะของความยาวผลลัพธ์
การได้รับความยาวผลลัพธ์ที่ถูกต้องเป็นความท้าทายอย่างต่อเนื่อง สั้นเกินไปและคุณพลาดรายละเอียดที่สำคัญ ยาวเกินไปและคุณจมอยู่ในข้อมูลที่ไม่จำเป็น
พารามิเตอร์ความเยิ่นเย้อ
API AI สมัยใหม่เสนอพารามิเตอร์ความเยิ่นเย้อที่ปรับขนาดความยาวผลลัพธ์ได้อย่างน่าเชื่อถือโดยไม่ต้องเปลี่ยนคำสั่ง:
ความเยิ่นเย้อต่ำ
รวบรัด, ร้อยแก้วน้อยที่สุด เพียงแค่คำตอบที่จำเป็นโดยไม่มีการขยายความ ดีสำหรับการค้นหาด่วน การยืนยันง่ายๆ และเมื่อคุณต้องการเพียงข้อเท็จจริง
ความเยิ่นเย้อปานกลาง
รายละเอียดสมดุล การตั้งค่าเริ่มต้นที่ใช้ได้กับงานส่วนใหญ่ ให้บริบทและคำอธิบายโดยไม่มีการเติมแต่งมากเกินไป
ความเยิ่นเย้อสูง
เยิ่นเย้อและครอบคลุม ยอดเยี่ยมสำหรับการตรวจสอบ การสอน การส่งมอบ และเอกสาร ให้บริบทและการใช้เหตุผลเต็มรูปแบบ
แนวทางความยาวที่ชัดเจน
เมื่อคุณไม่สามารถใช้พารามิเตอร์ API ได้ ข้อจำกัดความยาวที่ชัดเจนจะทำงานได้ดี:
<output_verbosity_spec>
- ค่าเริ่มต้น: 3-6 ประโยค หรือ ≤5 หัวข้อย่อยสำหรับคำตอบทั่วไป
- สำหรับคำถามง่ายๆ "ใช่/ไม่ใช่ + คำอธิบายสั้นๆ": ≤2 ประโยค
- สำหรับงานที่ซับซ้อนหลายขั้นตอนหรือหลายไฟล์:
- 1 ย่อหน้าภาพรวมสั้นๆ
- จากนั้น ≤5 หัวข้อย่อยที่ติดแท็ก: อะไรเปลี่ยนไป, ที่ไหน, ความเสี่ยง, ขั้นตอนต่อไป,
คำถามเปิด
- ให้คำตอบที่ชัดเจน มีโครงสร้าง สร้างสมดุลระหว่างข้อมูล
กับความกระชับ
- แบ่งข้อมูลเป็นชิ้นย่อยๆ; ใช้รายการ
ย่อหน้า ตารางเมื่อเป็นประโยชน์
- หลีกเลี่ยงย่อหน้าบรรยายยาวๆ; ชอบหัวข้อย่อยที่กะทัดรัดและ
ส่วนสั้นๆ
- อย่าเรียบเรียงคำขอของฉันใหม่เว้นแต่จะเปลี่ยนความหมาย
</output_verbosity_spec>
ความเยิ่นเย้อตามตัวตน
อีกวิธีหนึ่งคือการกำหนดสไตล์การสื่อสารเป็นส่วนหนึ่งของตัวตนของ AI:
<communication_style>
คุณให้ความสำคัญกับความชัดเจน โมเมนตัม และความเคารพที่วัดจากความมีประโยชน์
มากกว่าความสุภาพ สัญชาตญาณเริ่มต้นของคุณคือการรักษา
การสนทนาให้เฉียบคมและขับเคลื่อนด้วยวัตถุประสงค์ ตัดทุกอย่างที่
ไม่ขับเคลื่อนงานไปข้างหน้า
คุณไม่ได้เย็นชา—คุณแค่ประหยัดถ้อยคำ และ
คุณเชื่อใจผู้ใช้มากพอที่จะไม่ห่อทุกข้อความด้วยการเติมแต่ง
ความสุภาพแสดงผ่านโครงสร้าง ความแม่นยำ และการตอบสนอง
ไม่ใช่ผ่านคำพูดฟุ่มเฟือย
คุณไม่เคยทำซ้ำการรับทราบ เมื่อคุณส่งสัญญาณว่าเข้าใจแล้ว
คุณหมุนไปที่งานอย่างเต็มที่
</communication_style>
บริบทที่ยาว - การจัดการเอกสารขนาดใหญ่
AI สมัยใหม่สามารถประมวลผลบริบทมหาศาล—หลายแสนโทเค็น—แต่เพียงแค่ทิ้งเอกสารขนาดใหญ่ลงในหน้าต่างบริบทนั้นไม่เพียงพอ คุณต้องการกลยุทธ์เพื่อช่วยให้โมเดลนำทางและดึงข้อมูลที่เกี่ยวข้อง
บังคับการสรุปและการลงกราวด์ใหม่
สำหรับเอกสารยาว ฉันสั่งให้ AI สร้างโครงสร้างภายในก่อนที่จะตอบ:
<long_context_handling>
สำหรับอินพุตที่ยาวกว่า ~10k โทเค็น (เอกสารหลายบท, เธรดยาว,
PDF หลายไฟล์):
1. ก่อนอื่น ให้สร้างโครงร่างภายในสั้นๆ ของส่วนสำคัญที่เกี่ยวข้อง
กับคำขอของฉัน
2. ระบุข้อจำกัดของฉันใหม่อย่างชัดเจน (เขตอำนาจศาล, ช่วงวันที่,
ผลิตภัณฑ์, ทีม) ก่อนตอบ
3. ในคำตอบของคุณ ให้ยึดการอ้างสิทธิ์กับส่วนต่างๆ ("ในส่วน
'การเก็บรักษาข้อมูล'...") แทนที่จะพูดแบบทั่วไป
4. หากคำตอบขึ้นอยู่กับรายละเอียดเล็กน้อย (วันที่, เกณฑ์, ข้อความ),
อ้างอิงหรือถอดความโดยตรง
</long_context_handling>
สิ่งนี้ป้องกันปัญหา "หลงทางในการเลื่อน" ที่ AI ให้คำตอบทั่วไปที่ไม่ได้มีส่วนร่วมกับเนื้อหาเอกสารที่เฉพาะเจาะจงจริงๆ
การบีบอัดสำหรับขั้นตอนการทำงานที่ขยายออกไป
สำหรับขั้นตอนการทำงานที่ใช้เวลานานและใช้เครื่องมือหนักซึ่งเกินหน้าต่างบริบทมาตรฐาน AI สมัยใหม่รองรับ "การบีบอัด"—การบีบอัดที่ตระหนักถึงการสูญเสียผ่านสถานะการสนทนาก่อนหน้านี้ที่รักษาข้อมูลที่เกี่ยวข้องกับงานในขณะที่ลดรอยเท้าโทเค็นลงอย่างมาก
เมื่อใดควรใช้การบีบอัด
- กระแสตัวแทนหลายขั้นตอนที่มีการเรียกใช้เครื่องมือมากมาย
- การสนทนาที่ยาวนานซึ่งต้องรักษาเทิร์นก่อนหน้านี้ไว้
- การให้เหตุผลแบบวนซ้ำเกินหน้าต่างบริบทสูงสุด
แนวทางปฏิบัติที่ดีที่สุดสำหรับการบีบอัด:
- ตรวจสอบการใช้บริบทและวางแผนล่วงหน้าเพื่อหลีกเลี่ยงการชนขีดจำกัด
- บีบอัดหลังจากเหตุการณ์สำคัญ (เช่น ระยะที่ใช้เครื่องมือหนัก) ไม่ใช่ทุกเทิร์น
- รักษาคำสั่งให้เหมือนกันทางการทำงานเมื่อดำเนินการต่อเพื่อหลีกเลี่ยงพฤติกรรมที่เปลี่ยนไป
- ปฏิบัติต่อรายการที่ถูกบีบอัดว่าเป็นทึบ; อย่าแยกวิเคราะห์หรือพึ่งพาภายใน
ข้อกำหนดการอ้างอิง
<citation_rules>
เมื่อคุณใช้ข้อมูลจากเอกสารที่ให้มา:
- วางการอ้างอิงหลังแต่ละย่อหน้าที่ประกอบด้วยการอ้างสิทธิ์ที่ได้มาจากเอกสาร
- ใช้รูปแบบ: [ชื่อเอกสาร, ส่วน/หน้า]
- อย่าประดิษฐ์การอ้างอิง หากคุณไม่สามารถอ้างอิงได้ อย่าอ้างสิทธิ์
- ใช้หลายแหล่งสำหรับข้อเรียกร้องหลักเมื่อเป็นไปได้
- หากหลักฐานบางบาง ให้รับรู้สิ่งนี้อย่างชัดเจน
</citation_rules>
การประสานงานเครื่องมือ - ความสามารถ AI ขั้นสูง
การเรียกใช้เครื่องมือ AI—การเรียกใช้ฟังก์ชันภายนอก, API และบริการ—คือจุดที่วิศวกรรมคำสั่งกลายเป็นวิศวกรรมซอฟต์แวร์ การทำสิ่งนี้ให้ถูกต้องเป็นสิ่งสำคัญสำหรับแอปพลิเคชัน AI ที่เชื่อถือได้
แนวทางปฏิบัติที่ดีที่สุดในการอธิบายเครื่องมือ
คุณภาพของคำอธิบายเครื่องมือส่งผลโดยตรงต่อการใช้งานของ AI:
{
"name": "create_reservation",
"description": "สร้างการจองร้านอาหารสำหรับแขก ใช้เมื่อ
ผู้ใช้ขอจองโต๊ะด้วยชื่อและเวลาที่กำหนด",
"parameters": {
"type": "object",
"properties": {
"name": {
"type": "string",
"description": "ชื่อเต็มของแขกสำหรับการจอง"
},
"datetime": {
"type": "string",
"description": "วันที่และเวลาจอง (รูปแบบ ISO 8601)"
}
},
"required": ["name", "datetime"]
}
}
สังเกตว่าคำอธิบายรวมถึงทั้ง สิ่งที่ เครื่องมือทำและ เมื่อไหร่ ที่จะใช้ สิ่งนี้ช่วยให้โมเดลตัดสินใจเลือกเครื่องมือได้ดีขึ้น
กฎการใช้เครื่องมือ
<tool_usage_rules>
- หากมีเครื่องมือสำหรับการกระทำ ให้เลือกเครื่องมือมากกว่าคำสั่งเชลล์
(เช่น read_file มากกว่า cat)
- หลีกเลี่ยง cmd/terminal ดิบอย่างเคร่งครัดเมื่อมีเครื่องมือเฉพาะ
- เลือกเครื่องมือมากกว่าความรู้ภายในเมื่อใดก็ตามที่:
- คุณต้องการข้อมูลสดใหม่หรือเฉพาะเจาะจงสำหรับผู้ใช้ (ตั๋ว, คำสั่งซื้อ, การกำหนดค่า, บันทึก)
- คุณอ้างถึง ID, URL หรือชื่อเอกสารที่เฉพาะเจาะจง
- หลังจากการเรียกใช้เครื่องมือเขียน/อัปเดตใดๆ ให้ระบุสั้นๆ อีกครั้ง:
- อะไรเปลี่ยนไป
- ที่ไหน (ID หรือเส้นทาง)
- การตรวจสอบติดตามผลใดๆ ที่ดำเนินการ
- สำหรับคำถามเชิงแนวคิดง่ายๆ ให้หลีกเลี่ยงเครื่องมือและพึ่งพาความรู้
ภายในสำหรับการตอบกลับอย่างรวดเร็ว
</tool_usage_rules>
การขนาน
การเพิ่มประสิทธิภาพที่สำคัญคือการสนับสนุนการเรียกใช้เครื่องมือแบบขนานเมื่อการดำเนินการเป็นอิสระจากกัน:
<parallelization_spec>
เรียกใช้การดำเนินการเครื่องมืออิสระหรืออ่านอย่างเดียวแบบขนาน (รอบ/ชุดเดียวกัน)
เพื่อลดความหน่วง
เมื่อใดควรขนาน:
- การอ่านหลายไฟล์/การกำหนดค่า/บันทึกที่ไม่ส่งผลกระทบต่อกัน
- การวิเคราะห์แบบคงที่ การค้นหา หรือการสอบถามข้อมูลเมตาโดยไม่มีผลข้างเคียง
- การแก้ไขแยกต่างหากสำหรับไฟล์/คุณสมบัติที่ไม่เกี่ยวข้องซึ่งจะไม่ขัดแย้งกัน
เมื่อใดไม่ควรขนาน:
- การดำเนินการที่หนึ่งขึ้นอยู่กับผลลัพธ์ของอีกอันหนึ่ง
- การสร้างทรัพยากรแล้วอ้างอิง ID ของมัน
- การอ่านไฟล์แล้วแก้ไขตามเนื้อหา
วิธีการ:
- คิดก่อน: ก่อนการเรียกใช้เครื่องมือใดๆ ให้ตัดสินใจไฟล์/ทรัพยากรทั้งหมดที่คุณต้องการ
- รวมกลุ่มทุกอย่าง: หากคุณต้องการหลายไฟล์ ให้อ่านพร้อมกัน
- ทำการเรียกตามลำดับเฉพาะเมื่อคุณไม่สามารถรู้ไฟล์ถัดไปได้อย่างแท้จริง
โดยไม่เห็นผลลัพธ์ก่อน
</parallelization_spec>
เครื่องมือห่อหุ้ม Terminal
หากคุณต้องการให้ AI ใช้เครื่องมือเฉพาะแทนคำสั่ง terminal ให้ทำให้พวกมันมีความคล้ายคลึงทางความหมายกับสิ่งที่โมเดลคาดหวัง:
GIT_TOOL = {
"type": "function",
"name": "git",
"description": (
"ดำเนินการคำสั่ง git ในรูทของที่เก็บข้อมูล ทำตัวเหมือน "
"การรัน git ใน terminal; รองรับคำสั่งย่อยและแฟล็กใดๆ"
),
"parameters": {
"type": "object",
"properties": {
"command": {
"type": "string",
"description": "คำสั่ง git ที่จะดำเนินการ"
}
},
"required": ["command"]
}
}
# จากนั้นใน prompt ของคุณ:
"ใช้เครื่องมือ `git` สำหรับการดำเนินการ git ทั้งหมด ห้ามใช้ terminal สำหรับ git"
การแก้ไขปัญหา - การแก้ไขสิ่งที่ผิดพลาด
หลังจากทำงานกับ prompt นับไม่ถ้วน ฉันได้ระบุรูปแบบความล้มเหลวที่พบบ่อยที่สุดและวิธีแก้ไข
ปัญหา: คิดมากเกินไป
อาการ: คำตอบถูกต้องแต่ใช้เวลานาน โมเดลยังคงสำรวจตัวเลือก ชะลอการเรียกเครื่องมือครั้งแรก เล่าเรื่องการเดินทางที่อ้อมค้อมเมื่อมีคำตอบง่ายๆ
<efficient_context_spec>
เป้าหมาย: รับบริบทเพียงพออย่างรวดเร็วและหยุดทันทีที่คุณสามารถดำเนินการได้
วิธีการ:
- เริ่มกว้าง แล้วแยกออกเป็นแบบสอบถามย่อยที่มุ่งเน้น
- ในแบบขนาน เปิดตัว 4-8 แบบสอบถามที่หลากหลาย; อ่าน 3-5 ผลลัพธ์สูงสุดต่อแบบสอบถาม
- ลบเส้นทางที่ซ้ำซ้อนและแคช; อย่าทำซ้ำแบบสอบถาม
หยุดก่อนกำหนด (ดำเนินการหากมี):
- คุณสามารถตั้งชื่อไฟล์/สัญลักษณ์ที่แน่นอนเพื่อเปลี่ยนแปลง
- คุณสามารถจำลองการทดสอบ/lint ที่ล้มเหลวหรือมีตำแหน่งจุดบกพร่องที่มีความเชื่อมั่นสูง
</efficient_context_spec>
# เพิ่มเส้นทางด่วนสำหรับคำถามง่ายๆ ด้วย:
<fast_path>
สำหรับความรู้ทั่วไปหรือแบบสอบถามการใช้งานง่ายๆ ที่ไม่ต้อง
คำสั่ง, การท่องเว็บ, หรือการเรียกเครื่องมือ:
- ตอบทันทีและกระชับ
- ไม่มีการอัปเดตสถานะ, ไม่มีสิ่งที่ต้องทำ, ไม่มีบทสรุป, ไม่มีการเรียกเครื่องมือ
</fast_path>
ปัญหา: คิดน้อยไป / ขี้เกียจ
อาการ: โมเดลไม่ได้ใช้เวลาเพียงพอในการให้เหตุผลก่อนสร้างคำตอบ การตอบสนองตื้นเขิน, พลาดกรณีขอบ, โซลูชันไม่สมบูรณ์
<self_reflection>
- ให้คะแนนฉบับร่างภายในเทียบกับรูบริก 5-7 รายการที่คุณคิดขึ้น
(ความชัดเจน, ความถูกต้อง, กรณีขอบ, ความสมบูรณ์, ความหน่วง)
- หากหมวดหมู่ใดขาดตกบกพร่อง ให้ทำซ้ำหนึ่งครั้งก่อนตอบกลับ
</self_reflection>
# หรือใช้ความพยายามในการใช้เหตุผลที่สูงขึ้นในพารามิเตอร์ API
ปัญหา: เกรงใจเกินไป
อาการ: AI ยังคงขออนุญาตแทนที่จะดำเนินการ คงที่ "คุณต้องการให้ฉัน..." แทนที่จะแค่ทำมัน
<persistence>
- คุณเป็นตัวแทน — ทำต่อไปจนกว่าคำถามของผู้ใช้จะได้รับการแก้ไข
อย่างสมบูรณ์ก่อนที่จะจบตาของคุณ
- ยุติเมื่อคุณแน่ใจว่าปัญหาได้รับการแก้ไขแล้วเท่านั้น
- ไม่เคยหยุดหรือส่งคืนเมื่อคุณพบความไม่แน่นอน — อนุมาน
แนวทางที่สมเหตุสมผลที่สุดและดำเนินการต่อ
- อย่าขอให้ยืนยันหรือชี้แจงสมมติฐาน — ตัดสินใจว่าอะไร
สมเหตุสมผลที่สุด, ดำเนินการ, และบันทึกเพื่อใช้อ้างอิงภายหลัง
</persistence>
ปัญหา: เยิ่นเย้อเกินไป
อาการ: AI สร้างโทเค็นมากกว่าที่จำเป็นมาก มีบทนำเยอะ, คำอธิบายมากเกินไป, สรุปซ้ำซาก
# ใช้พารามิเตอร์ความเยิ่นเย้อของ API: "low"
# หรือใน prompt:
<output_format>
- ค่าเริ่มต้น: 3-6 ประโยค หรือ ≤5 หัวข้อย่อย
- หลีกเลี่ยงย่อหน้าบรรยายยาวๆ; ชอบหัวข้อย่อยที่กะทัดรัด
- อย่าเรียบเรียงคำขอของฉันใหม่เว้นแต่จะเปลี่ยนความหมาย
- ไม่มีบทนำเช่น "คำถามที่ยอดเยี่ยม!" หรือ "ฉันยินดีที่จะช่วย"
</output_format>
ปัญหา: เรียกเครื่องมือมากเกินไป
อาการ: โมเดลยิงเครื่องมือโดยไม่ขยับคำตอบไปข้างหน้า การเรียกซ้ำซ้อน, สำรวจเส้นสัมผัส, ไม่ใช้บริบทอย่างมีประสิทธิภาพ
<tool_use_policy>
- เลือกหนึ่งเครื่องมือหรือไม่มีเลย; ชอบตอบจากบริบทเมื่อเป็นไปได้
- จำกัดการเรียกเครื่องมือที่ 2 ต่อคำขอของผู้ใช้ เว้นแต่ข้อมูลใหม่จะทำให้
จำเป็นอย่างเคร่งครัดมากขึ้น
- ก่อนเรียกเครื่องมือ ให้ตรวจสอบว่าคุณต้องการข้อมูลจริงๆ
</tool_use_policy>
ปัญหา: การเรียกเครื่องมือที่ผิดรูปแบบ
อาการ: การเรียกเครื่องมือล้มเหลว, ผลิตขยะ, หรือไม่ตรงกับรูปแบบที่คาดหวัง มักเกิดจากความขัดแย้งใน prompt
โปรดวิเคราะห์ว่าทำไมการเรียกเครื่องมือ [tool_name] ถึงผิดรูปแบบ
1. ตรวจสอบปัญหาตัวอย่างที่ให้มาเพื่อทำความเข้าใจโหมดความล้มเหลว
2. ตรวจสอบ System Prompt และ Tool Config อย่างละเอียด
3. ระบุความคลุมเครือ ความไม่สอดคล้อง หรือการใช้ถ้อยคำที่อาจ
ทำให้โมเดลเข้าใจผิด
4. สำหรับแต่ละสาเหตุที่เป็นไปได้ ให้อธิบายว่ามันจะส่งผลให้เกิด
ความล้มเหลวที่สังเกตได้อย่างไร
5. ให้คำแนะนำที่ดำเนินการได้เพื่อปรับปรุง prompt หรือ
การกำหนดค่าเครื่องมือ
ปัญหาส่วนใหญ่ของการเรียกเครื่องมือที่ผิดรูปแบบเกิดจากความขัดแย้งระหว่างส่วนต่างๆ ของ prompt โมเดลเผาผลาญโทเค็นการให้เหตุผลพยายามประนีประนอมคำแนะนำที่ขัดแย้งกันแทนที่จะช่วยเหลือ
การเพิ่มประสิทธิภาพ Prompt - แนวทางวิทยาศาสตร์
การสร้าง prompt ที่มีประสิทธิภาพเป็นทักษะ แต่การปรับปรุงให้ดีขึ้นเป็นวิทยาศาสตร์ นี่คือแนวทางที่เป็นระบบที่ฉันใช้
ความล้มเหลวของ Prompt ทั่วไป
ก่อนทำการปรับปรุง ให้เข้าใจสิ่งที่มักจะผิดพลาด:
"ชอบไลบรารีมาตรฐาน" จากนั้น "ใช้แพ็คเกจภายนอกถ้ามันทำให้สิ่งต่างๆ ง่ายขึ้น" - AI ไม่สามารถประนีประนอมสัญญาณผสมเหล่านี้ได้
"มุ่งเป้าไปที่ผลลัพธ์ที่แน่นอน; วิธีการประมาณนั้นใช้ได้เมื่อไม่เปลี่ยนผลลัพธ์ในทางปฏิบัติ" - โมเดลไม่สามารถตรวจสอบการตัดสินใจนี้ได้
ถ้าคุณต้องการ JSON ให้พูดออกมา ถ้าคุณต้องการหัวข้อย่อย ให้พูดออกมา อย่าปล่อยให้รูปแบบผลลัพธ์เป็นเรื่องของโอกาส
คำแนะนำของคุณพูดอย่างหนึ่งแต่ตัวอย่างของคุณแสดงอย่างอื่น AI ทำตามตัวอย่างมากกว่าร้อยแก้ว
วงจรการเพิ่มประสิทธิภาพ
รัน prompt ปัจจุบันของคุณหลายๆ ครั้งและบันทึกผลลัพธ์ สังเกตรูปแบบทั้งในความสำเร็จและความล้มเหลว
จัดหมวดหมู่ความล้มเหลว เป็นปัญหาความถูกต้อง? ปัญหาการจัดรูปแบบ? ปัญหาประสิทธิภาพ? แต่ละอย่างต้องการการแก้ไขที่แตกต่างกัน
เปลี่ยนสิ่งเดียวในแต่ละครั้ง หากคุณเปลี่ยนหลายอย่าง คุณจะไม่รู้ว่าอะไรช่วยได้
รันการทดสอบเดิมอีกครั้ง เปรียบเทียบกับพื้นฐาน การเปลี่ยนแปลงช่วย ทำร้าย หรือไม่มีผล?
ทำซ้ำจนกว่าคุณจะถึงประสิทธิภาพที่ยอมรับได้ จดบันทึกสิ่งที่ได้ผลและสิ่งที่ไม่ได้ผล
การย้ายระหว่างโมเดล
เมื่อย้าย prompt ไปยังเวอร์ชันโมเดลใหม่:
แนวทางปฏิบัติที่ดีที่สุดในการย้าย
- ขั้นตอนที่ 1: เปลี่ยนโมเดล อย่าเพิ่งเปลี่ยน prompt ทดสอบการเปลี่ยนแปลงโมเดล—ไม่ใช่การแก้ไข prompt
- ขั้นตอนที่ 2: ปักหมุดความพยายามในการใช้เหตุผลให้ตรงกับโปรไฟล์ของโมเดลก่อนหน้า
- ขั้นตอนที่ 3: รันการประเมินสำหรับพื้นฐาน หากผลลัพธ์ดูดี คุณพร้อมที่จะจัดส่ง
- ขั้นตอนที่ 4: หากมีการถดถอย ให้ปรับแต่ง prompt ด้วยข้อจำกัดที่กำหนดเป้าหมาย
- ขั้นตอนที่ 5: รันการประเมินซ้ำหลังจากการเปลี่ยนแปลงเล็กน้อยแต่ละครั้ง ทีละการเปลี่ยนแปลง
การจัดการความไม่แน่นอน - เมื่อ AI ไม่รู้
หนึ่งในความเสี่ยงที่ใหญ่ที่สุดกับ AI คือคำตอบที่ผิดแต่ฟังดูมั่นใจ โมเดลไม่รู้สิ่งที่มันไม่รู้—เว้นแต่คุณจะสอนมันให้จัดการกับความไม่แน่นอน
<uncertainty_handling>
- หากคำถามคลุมเครือหรือไม่ระบุรายละเอียด ให้เรียกสิ่งนี้
ออกมาอย่างชัดเจนและ:
- ถามคำถามเพื่อความกระจ่างที่แม่นยำได้ถึง 1-3 ข้อ หรือ
- นำเสนอการตีความที่เป็นไปได้ 2-3 แบบพร้อมสมมติฐานที่มีป้ายกำกับชัดเจน
- เมื่อข้อเท็จจริงภายนอกอาจมีการเปลี่ยนแปลงเมื่อเร็วๆ นี้ (ราคา, การเปิดตัว,
นโยบาย) และไม่มีเครื่องมือให้ใช้:
- ตอบในแง่ทั่วไปและระบุว่ารายละเอียดอาจมีการเปลี่ยนแปลง
- อย่าประดิษฐ์ตัวเลขที่แน่นอน หมายเลขบรรทัด หรือการอ้างอิงภายนอก
เมื่อคุณไม่แน่ใจ
- เมื่อคุณไม่แน่ใจ ให้ชอบภาษาเช่น "ตามบริบทที่ให้มา..."
มากกว่าการอ้างสิทธิ์ที่แน่นอน
</uncertainty_handling>
การตรวจสอบตนเองที่มีความเสี่ยงสูง
สำหรับโดเมนที่มีความเสี่ยงสูง ให้เพิ่มขั้นตอนการตรวจสอบตนเองอย่างชัดเจน:
<high_risk_self_check>
ก่อนที่จะสรุปคำตอบในบริบททางกฎหมาย การเงิน การปฏิบัติตามกฎระเบียบ หรือ
ความอ่อนไหวต่อความปลอดภัย:
- สแกนคำตอบของคุณเองสั้นๆ อีกครั้งสำหรับ:
- สมมติฐานที่ไม่ได้ระบุ
- ตัวเลขเฉพาะหรือการอ้างสิทธิ์ที่ไม่มีพื้นฐานในบริบท
- ภาษาที่รุนแรงเกินไป ("เสมอ," "รับประกัน," ฯลฯ)
- หากคุณพบสิ่งใด ให้ทำให้อ่อนลงหรือรับรองคุณสมบัติและระบุสมมติฐานอย่างชัดเจน
</high_risk_self_check>
เป้าหมายไม่ใช่การทำให้ AI มั่นใจน้อยลง—แต่คือการทำให้มันมั่นใจอย่างถูกต้อง ความไม่แน่นอนเกี่ยวกับสิ่งที่ไม่แน่นอนเป็นคุณสมบัติ ไม่ใช่ข้อผิดพลาด
Metaprompting - การใช้ AI เพื่อปรับปรุง AI
นี่คือเทคนิคเมตาที่สุดในชุดเครื่องมือของฉัน: การใช้ AI เพื่อปรับปรุง prompt ของคุณ ฟังดูเป็นวงกลม แต่มีประสิทธิภาพอย่างเหลือเชื่อ
การวินิจฉัยความล้มเหลวของ Prompt
คุณเป็นวิศวกร prompt ที่ได้รับมอบหมายให้แก้ไขข้อบกพร่องของ prompt ระบบ
คุณได้รับ:
1) Prompt ระบบปัจจุบัน:
<system_prompt>
[วาง PROMPT ของคุณที่นี่]
</system_prompt>
2) ชุดเล็กๆ ของความล้มเหลวที่บันทึกไว้ แต่ละบันทึกมี:
- query
- actual_output
- expected_output (หรือคำอธิบายปัญหา)
<failure_traces>
[วางตัวอย่างความล้มเหลว]
</failure_traces>
งานของคุณ:
1) ระบุโหมดความล้มเหลวที่แตกต่างกันที่คุณเห็น
2) สำหรับแต่ละโหมดความล้มเหลว ให้อ้างอิงบรรทัดเฉพาะของ prompt
ระบบที่มีแนวโน้มที่จะก่อให้เกิดหรือเสริมสร้างมันมากที่สุด
3) อธิบายว่าบรรทัดเหล่านั้นกำลังชี้นำตัวแทนไปสู่
พฤติกรรมที่สังเกตได้อย่างไร
ส่งคืนคำตอบของคุณในรูปแบบที่มีโครงสร้าง:
failure_modes:
- name: ...
description: ...
prompt_drivers:
- exact_or_paraphrased_line: ...
- why_it_matters: ...
การสร้างการปรับปรุง
คุณได้วิเคราะห์ prompt ระบบนี้และโหมดความล้มเหลวของมันก่อนหน้านี้
Prompt ระบบ:
<system_prompt>
[PROMPT เดิม]
</system_prompt>
การวิเคราะห์โหมดความล้มเหลว:
[วางการวินิจฉัยจากขั้นตอนก่อนหน้า]
โปรดเสนอการแก้ไขทางศัลยกรรมที่ลดปัญหาที่สังเกตได้
ในขณะที่รักษาพฤติกรรมที่ดีไว้
ข้อจำกัด:
- อย่าออกแบบตัวแทนใหม่ตั้งแต่เริ่มต้น
- ชอบการแก้ไขเล็กน้อยที่ชัดเจน: ชี้แจงกฎที่ขัดแย้งกัน ลบ
บรรทัดที่ซ้ำซ้อนหรือขัดแย้งกัน กระชับคำแนะนำที่คลุมเครือ
- ทำให้การแลกเปลี่ยนชัดเจน
- รักษาโครงสร้างและความยาวให้ใกล้เคียงกับต้นฉบับ
ผลลัพธ์:
1) patch_notes: รายการสั้นๆ ของการเปลี่ยนแปลงหลักและเหตุผล
2) revised_system_prompt: prompt ที่อัปเดตเต็มรูปแบบพร้อมการแก้ไขที่ใช้
การสะท้อนตนเองเพื่อคุณภาพ
เทคนิคนี้เหลือเชื่อ: สั่งให้ AI สร้างเกณฑ์การประเมินของตัวเองและทำซ้ำกับเกณฑ์เหล่านั้น:
<self_reflection>
- ก่อนอื่น ใช้เวลาคิดเกี่ยวกับรูบริกจนกว่าคุณจะมั่นใจ
- คิดอย่างลึกซึ้งเกี่ยวกับทุกแง่มุมของสิ่งที่ทำให้เป็นโซลูชันระดับ
โลก ใช้ความรู้นั้นเพื่อสร้างรูบริกที่มี 5-7
หมวดหมู่ รูบริกนี้สำคัญมากที่จะทำให้ถูกต้อง แต่อย่า
แสดงให้ฉันดู — นี่สำหรับวัตถุประสงค์ของคุณเท่านั้น
- สุดท้าย ใช้รูบริกเพื่อคิดภายในและทำซ้ำกับ
โซลูชันที่ดีที่สุดที่เป็นไปได้สำหรับ prompt
- หากคำตอบของคุณไม่ถึงคะแนนสูงสุดในทุก
หมวดหมู่ในรูบริก ให้เริ่มใหม่
</self_reflection>
คุณกำลังขอให้ AI สร้างเกณฑ์คุณภาพจากความรู้เรื่องความเป็นเลิศของมัน จากนั้นใช้เกณฑ์เหล่านั้นเพื่อประเมินและปรับปรุงผลลัพธ์ของตัวเอง—ทั้งหมดก่อนที่คุณจะเห็นอะไรเลย การปรับปรุงคุณภาพผลลัพธ์นั้นมากมายมหาศาล
แม่แบบที่ผ่านการทดสอบในสนามรบที่คุณใช้ได้วันนี้
การเสร็จสิ้นภารกิจสากล
<context>
[ข้อมูลพื้นฐานที่ AI ต้องการเพื่อเข้าใจสถานการณ์]
</context>
<task>
[คำแถลงที่ชัดเจนว่าคุณต้องการให้ทำอะไร]
</task>
<requirements>
[ข้อกำหนดหรือข้อจำกัดเฉพาะ]
</requirements>
<format>
[คุณต้องการให้ผลลัพธ์มีโครงสร้างอย่างไร]
</format>
<examples>
[ไม่บังคับ: ตัวอย่างผลลัพธ์ที่ต้องการ]
</examples>
แม่แบบการตรวจสอบโค้ด
<context>
ตรวจสอบโค้ดสำหรับ [โครงการ/บริบท]
ฐานโค้ดใช้ [เทคโนโลยี/รูปแบบ]
</context>
<code_to_review>
[วางโค้ดที่นี่]
</code_to_review>
<review_criteria>
เน้นที่:
1. ความถูกต้อง: มันทำในสิ่งที่อ้างหรือไม่?
2. ความสามารถในการอ่าน: ชัดเจนสำหรับนักพัฒนาคนอื่นหรือไม่?
3. ประสิทธิภาพ: ความไร้ประสิทธิภาพที่ชัดเจนหรือไม่?
4. ความปลอดภัย: ช่องโหว่ใดๆ หรือไม่?
5. สไตล์: ตรงกับข้อตกลงของฐานโค้ดหรือไม่?
</review_criteria>
<output_format>
สำหรับแต่ละปัญหาที่พบ:
- ความรุนแรง: [วิกฤต/ใหญ่/เล็ก/ข้อเสนอแนะ]
- ตำแหน่ง: [หมายเลขบรรทัดหรือส่วน]
- ปัญหา: [มีอะไรผิดปกติ]
- การแก้ไข: [วิธีแก้ไข]
</output_format>
แม่แบบการวิเคราะห์การวิจัย
<research_task>
[หัวข้อหรือคำถามเพื่อวิจัย]
</research_task>
<methodology>
- เริ่มต้นด้วยการค้นหาเป้าหมายหลายรายการ; อย่าพึ่งพาแบบสอบถามเดียว
- วิจัยอย่างลึกซึ้งจนกว่าคุณจะมีข้อมูลเพียงพอสำหรับ
คำตอบที่ถูกต้องและครอบคลุม
- เพิ่มการค้นหาติดตามผลเป้าหมายเพื่อเติมช่องว่างหรือแก้ไขความขัดแย้ง
- ทำซ้ำจนกว่าการค้นหาเพิ่มเติมไม่น่าจะเปลี่ยน
คำตอบ
</methodology>
<output_requirements>
- นำด้วยคำตอบที่ชัดเจนสำหรับคำถามหลัก
- สนับสนุนด้วยหลักฐานและการอ้างอิง
- ยอมรับข้อจำกัดและความไม่แน่นอน
- ให้ตัวอย่างที่เป็นรูปธรรมเมื่อเป็นประโยชน์
- รวมบริบทที่เกี่ยวข้องเพื่อทำความเข้าใจนัย
</output_requirements>
<citation_format>
[วิธีที่คุณต้องการอ้างอิงแหล่งที่มา]
</citation_format>
ตัวแทนการวิจัยเว็บ
<core_mission>
ตอบคำถามของผู้ใช้อย่างครบถ้วนและเป็นประโยชน์ พร้อมหลักฐานเพียงพอ
ที่ผู้อ่านที่สงสัยสามารถเชื่อถือได้
อย่าประดิษฐ์ข้อเท็จจริง หากคุณไม่สามารถตรวจสอบบางสิ่งได้ ให้พูดให้ชัดเจน
ค่าเริ่มต้นคือละเอียดและมีประโยชน์มากกว่าสั้น
หลังจากตอบคำถามโดยตรง ให้เพิ่มเนื้อหาข้างเคียงที่มีมูลค่าสูง
ที่สนับสนุนเป้าหมายพื้นฐานของผู้ใช้โดยไม่หลุดประเด็น
</core_mission>
<research_rules>
- เริ่มต้นด้วยการค้นหาเป้าหมายหลายรายการ; ใช้การค้นหาแบบขนาน
- อย่าพึ่งพาแบบสอบถามเดียว
- ทำซ้ำจนกว่าทั้งหมดจะเป็นจริง:
- คุณตอบทุกส่วนของคำถาม
- คุณพบตัวอย่างที่เป็นรูปธรรมและเนื้อหาข้างเคียงที่มีมูลค่าสูง
- คุณพบแหล่งที่มาเพียงพอสำหรับการอ้างสิทธิ์หลัก
</research_rules>
<citation_rules>
- วางการอ้างอิงหลังแต่ละย่อหน้าที่มีการอ้างสิทธิ์ที่ได้มาจากเว็บ
ที่ไม่ชัดเจน
- อย่าประดิษฐ์การอ้างอิง
- ใช้หลายแหล่งสำหรับข้อเรียกร้องหลักเมื่อเป็นไปได้
</citation_rules>
<ambiguity_handling>
- อย่าถามคำถามเพื่อความกระจ่างเว้นแต่ผู้ใช้จะร้องขออย่างชัดเจน
- หากแบบสอบถามคลุมเครือ ให้ระบุการตีความที่ดีที่สุดของคุณ จากนั้น
ครอบคลุมเจตนาที่เป็นไปได้มากที่สุดอย่างครอบคลุม
</ambiguity_handling>
อนาคตของวิศวกรรมคำสั่ง
ขณะที่ฉันเขียนสิ่งนี้ในช่วงต้นปี 2026 วิศวกรรมคำสั่งกำลังพัฒนาอย่างรวดเร็ว โมเดลมีความสามารถมากขึ้น ควบคุมได้ง่ายขึ้น และเชื่อถือได้มากขึ้น บางคนคาดการณ์ว่าวิศวกรรมคำสั่งจะล้าสมัยเมื่อ AI เข้าใจเจตนาได้ดีขึ้น ฉันไม่เห็นด้วย
สิ่งที่เปลี่ยนแปลงคือ ระดับ ของวิศวกรรมคำสั่ง ไม่ใช่ความจำเป็นของมัน ยุคแรกๆ ต้องการคำสั่งที่ซับซ้อนสำหรับงานพื้นฐาน ตอนนี้ งานพื้นฐานทำงานได้ทันที แต่ขั้นตอนการทำงานของตัวแทนที่ซับซ้อนยังคงต้องการการสั่งงานที่ซับซ้อน บาร์กำลังสูงขึ้น ไม่ได้หายไป
วิศวกรรมคำสั่งจะไม่หายไป—มันกำลังพัฒนา ทักษะที่สำคัญกำลังเปลี่ยนจาก "วิธีทำให้ AI ทำงาน" เป็น "วิธีทำให้ AI ทำงานได้อย่างยอดเยี่ยมและเชื่อถือได้ในระดับสเกล"
สิ่งที่จะมาถึง
พฤติกรรมเริ่มต้นที่ดีขึ้น
โมเดลจะมีค่าเริ่มต้นที่ฉลาดขึ้น ต้องการคำแนะนำที่ชัดเจนน้อยลงสำหรับรูปแบบทั่วไป คำสั่งจะเน้นที่การปรับแต่งมากกว่าความสามารถพื้นฐาน
ระบบนิเวศเครื่องมือที่สมบูรณ์ขึ้น
AI จะสามารถเข้าถึงเครื่องมือได้มากขึ้นทันที วิศวกรรมคำสั่งจะเปลี่ยนไปสู่การประสานงาน—รู้ว่าเมื่อไหร่ควรใช้อะไร ไม่ใช่แค่วิธีใช้
การบูรณาการหลายรูปแบบ (Multimodal)
คำสั่งจะเกี่ยวข้องกับภาพ เสียง วิดีโอ และข้อมูลที่มีโครงสร้างควบคู่ไปกับข้อความมากขึ้น รูปแบบใหม่จะเกิดขึ้นสำหรับงานหลายรูปแบบ
ความซับซ้อนของตัวแทน
เมื่อตัวแทนจัดการงานที่ยาวและซับซ้อนมากขึ้น วิศวกรรมคำสั่งจะกลายเป็นเหมือนการออกแบบระบบมากขึ้น—สถาปัตยกรรม ไม่ใช่แค่คำแนะนำ
คำแนะนำของฉันสำหรับอนาคต
เน้นที่พื้นฐาน เทคนิคเฉพาะในคู่มือนี้จะพัฒนาไป แต่หลักการพื้นฐาน—การสื่อสารที่ชัดเจน ความคาดหวังที่ชัดเจน การคิดอย่างมีโครงสร้าง การปรับแต่งซ้ำๆ—เป็นสิ่งที่ไร้กาลเวลา เชี่ยวชาญสิ่งเหล่านั้น แล้วคุณจะปรับตัวเข้ากับสิ่งที่ตามมาได้
ความคิดสุดท้าย
สองปีก่อน ฉันคิดว่า AI จะมาแทนที่ความจำเป็นในการสื่อสารอย่างชัดเจน ฉันผิดมหันต์ AI ทำให้การสื่อสารที่ชัดเจนมีค่ามากกว่าที่เคย คนที่ประสบความสำเร็จกับ AI ไม่ใช่คนที่ค้นพบคำวิเศษ—พวกเขาคือคนที่เรียนรู้ที่จะคิดและแสดงออกอย่างแม่นยำ
วิศวกรรมคำสั่งไม่ได้เกี่ยวกับ AI จริงๆ มันเกี่ยวกับคุณ มันเกี่ยวกับการพัฒนาวินัยในการระบุสิ่งที่คุณต้องการจริงๆ ความอดทนในการทำซ้ำไปสู่สิ่งนั้น และความถ่อมตัวในการเรียนรู้จากสิ่งที่ไม่ได้ผล
หากคุณนำสิ่งหนึ่งไปจากคู่มือนี้ ขอให้เป็นสิ่งนี้: ปฏิบัติต่อทุกคำสั่งเป็นโอกาสในการฝึกฝนการคิดที่ชัดเจน AI เป็นเพียงกระจกสะท้อนความชัดเจน—หรือความสับสน—ของจิตใจคุณเอง
การเกิดขึ้นของ AI ไม่ได้ทำให้ความรู้ล้าสมัย—มันทำให้ความอยากรู้อยากเห็นมีพลังมากกว่าที่เคย เราไม่ได้ถูกจำกัดด้วยสิ่งที่เรารู้อีกต่อไป ด้วยเครื่องมือที่เหมาะสมและความเต็มใจที่จะคิด คนธรรมดาสามารถโอบกอดมหาสมุทรแห่งความรู้ได้ ไม่ว่าจะอาชีพใด ไม่ว่าจะอายุเท่าไหร่ ฉันหวังว่าจะได้แบ่งปันการเดินทางนี้กับเพื่อนๆ ทั่วโลก มาร่วมต้อนรับโลกใหม่นี้ด้วยกัน มาร่วมเติบโตไปด้วยกัน
การสนทนา
0 ความคิดเห็นแสดงความคิดเห็น
เป็นคนแรกที่แบ่งปันความคิดของคุณ!