
Miniprompt เป็นไวยากรณ์อินพุตน้อยที่สุดในการสร้างเอาต์พุตที่ครอบคลุมจาก LLMS (เช่น GPT-4) ด้วยไวยากรณ์ที่เรียบง่ายและมีประสิทธิภาพ Miniprompt สามารถให้ข้อมูลรายละเอียดหรือการตอบกลับในรูปแบบเอาท์พุทต่างๆเช่น JSON, Javasrcipt หรือภาษาอื่น ๆ
เข้ากันได้กับ? ️? คนขี้เกียจ
ในการเริ่มต้นใช้ Miniprompt คุณต้องกำหนดงานเทมเพลตและรูปแบบเอาต์พุตที่ต้องการ ไวยากรณ์อินพุตได้รับการออกแบบให้ใช้งานง่ายและเข้าใจทำให้ผู้ใช้สามารถสร้างผลลัพธ์ที่ปรับให้เหมาะกับความต้องการของพวกเขา อินพุตตัวอย่าง
กำหนดรูปแบบงานเทมเพลตและรูปแบบผลลัพธ์ดังนี้:
TASK: ScrumSprint,<=3 userStories,<=3 acceptanceCriteria,complexity(1-5),Scope: "Login page"
TEMPLATE: complexity,stories[complexity,story"As a User,I want …,so that …",criteria[When,Then]]
OUTPUT: JSON
อินพุตนี้จะสร้างเอาต์พุต JSON พร้อมข้อกำหนดที่ระบุ
ขึ้นอยู่กับอินพุตที่กำหนดจะสร้างเอาต์พุต JSON ต่อไปนี้:
{
"complexity" : 3 ,
"stories" : [
{
"complexity" : 3 ,
"story" : "As a User, I want to create an account, so that I can access the login page." ,
"criteria" : [
{
"When" : "I enter a valid email address and password" ,
"Then" : "I should be redirected to the login page"
} ,
{
"When" : "I enter an invalid email address or password" ,
"Then" : "I should see an error message"
} ,
{
"When" : "I try to create an account with an existing email address" ,
"Then" : "I should see an error message"
}
]
} ,
{
// …
} ,
{
// …
}
]
}พรอมต์นี้ได้รับการออกแบบมาเพื่อสร้างเอาต์พุต JSON ของเรื่องราวของผู้ใช้แต่ละคนมีเกณฑ์การยอมรับสำหรับการวิ่ง scrum ที่มุ่งเน้นไปที่ "หน้าเข้าสู่ระบบ" มาแยกส่วนแต่ละส่วนของขั้นตอนต่อไป:
TASK : สิ่งนี้กำหนดงานที่จะดำเนินการ ในกรณีนี้งานกำลังสร้างข้อมูลสำหรับ sprint sprint
ScrumSprint : ประเภทของงานที่จะดำเนินการ (การวิ่ง scrum)<=3 userStories : ผลลัพธ์ควรมีเรื่องราวของผู้ใช้สูงสุด 3 เรื่อง<=3 acceptanceCriteria : เรื่องราวของผู้ใช้แต่ละคนควรมีเกณฑ์การยอมรับสูงสุด 3 ข้อcomplexity(1-5) : ความซับซ้อนของเรื่องราวของผู้ใช้แต่ละคนควรได้รับการจัดอันดับระหว่าง 1 (น้อยที่สุด) และ 5 (ซับซ้อนที่สุด)Scope: "Login page" : ขอบเขตของ Scrum Sprint คือการพัฒนาหน้าเข้าสู่ระบบ TEMPLATE : สิ่งนี้กำหนดเทมเพลตสำหรับการสร้างเอาต์พุต เทมเพลตมีโครงสร้างดังนี้:
complexity : รวมถึงความซับซ้อนของเรื่องราวของผู้ใช้ในผลลัพธ์stories : รวมเรื่องราวของผู้ใช้ในผลลัพธ์ ผู้ใช้แต่ละเรื่องควรมีข้อมูลต่อไปนี้:complexity : การจัดอันดับความซับซ้อนของเรื่องราวผู้ใช้story"As a User, I want …, so that …" : เรื่องราวของผู้ใช้เองเขียนในรูปแบบ "ในฐานะผู้ใช้ฉันต้องการ [goal] ดังนั้น [reason] "criteria[When, Then] : เกณฑ์การยอมรับสำหรับเรื่องราวของผู้ใช้เขียนในรูปแบบ "เมื่อ [condition] , [expected outcome] " OUTPUT : สิ่งนี้กำหนดรูปแบบที่ต้องการของเอาต์พุต ในกรณีนี้ผลลัพธ์ควรอยู่ในรูปแบบ JSON
จากพรอมต์นี้ AI จะสร้างวัตถุ JSON ที่มีเรื่องราวของผู้ใช้สูงสุด 3 เรื่องแต่ละเรื่องมีเกณฑ์การยอมรับสูงสุด 3 ข้อและการจัดอันดับความซับซ้อนของพวกเขา ขอบเขตของเรื่องราวผู้ใช้เหล่านี้ จำกัด อยู่ที่การพัฒนาหน้าเข้าสู่ระบบ
ป้อนข้อมูล
พรอมต์อินพุตประกอบด้วยงานเทมเพลตและรูปแบบเอาต์พุต:
TASK: add a red box
TEMPLATE: const c=document.getElementById('c')
OUTPUT: JavaScript
TASK : งานคือการเพิ่มกล่องสีแดงโดยใช้ JavaScriptTEMPLATE : เทมเพลตที่ให้ไว้มีส่วนหนึ่งของรหัส JavaScript ที่จำเป็นสำหรับการวาดกล่องสีแดง:OUTPUT : รูปแบบเอาต์พุตที่ต้องการคือ JavaScriptเอาท์พุท
const c = document . getElementById ( 'c' ) ;
const ctx = c . getContext ( '2d' ) ;
ctx . fillStyle = 'red' ;
ctx . fillRect ( 20 , 20 , 100 , 100 ) ; ในบางสถานการณ์เอาต์พุต AI-Generated อาจมีบล็อกโค้ดที่ฝังอยู่ภายในข้อความ Markdown ในการจัดการและตีความเอาต์พุตอย่างถูกต้องขอแนะนำให้ใช้ตัวแยกวิเคราะห์ที่ออกแบบมาโดยเฉพาะเพื่อแยกบล็อกโค้ดออกจากเนื้อหา Markdown
พิจารณาใช้ตัวแยกวิเคราะห์เช่นเดียวกับที่แสดงด้านล่างเพื่อแยกบล็อกโค้ดจากเอาต์พุต Ai-Generated:
function extractCode ( string : string ) {
// The regular expression pattern to match the code block
const codeBlockPattern = / (`{3,})(w*)n([sS]*?)1 / g ;
// Find the matches using the regular expression
const matches = codeBlockPattern . exec ( string ) ;
if ( matches && matches . length >= 4 ) {
// Return content of the code block
return matches [ 3 ] ;
}
// No code block found, return original string
return string ;
}ฟังก์ชั่น JavaScript นี้ ExtractCode ใช้นิพจน์ทั่วไปเพื่อให้ตรงกับและแยกเนื้อหาของบล็อกรหัสจากสตริงอินพุต หากพบบล็อกรหัสฟังก์ชั่นจะส่งคืนเนื้อหาของบล็อกรหัส หากไม่ตรวจพบบล็อกรหัสจะส่งคืนสตริงอินพุตดั้งเดิม
ในขณะที่ไม่บังคับใช้ข้อความระบบสามารถปรับปรุงความสอดคล้องและความแม่นยำของการตอบสนองที่สร้างขึ้นโดย AI โดยทำให้มั่นใจได้ว่าพวกเขาปฏิบัติตามแนวทางที่ระบุ
ข้อความระบบทำหน้าที่เป็นชุดของคำแนะนำสำหรับโมเดลภาษา AI ชี้นำเพื่อสร้างคำตอบที่สอดคล้องกับแนวทางที่ให้ไว้และรูปแบบเอาต์พุตที่ต้องการ
You are an Entity that strictly answers with the OUTPUT format. You strictly follows the TASK, TEMPLATE and OUTPUT guidelines.
ข้อความระบบมีสามองค์ประกอบหลักที่ AI ควรติดตามอย่างเคร่งครัด:
TASK : AI ต้องเข้าใจและทำงานให้เสร็จตามที่ระบุไว้ในพรอมต์TEMPLATE : AI ควรใช้เทมเพลตที่กำหนดเพื่อจัดโครงสร้างการตอบสนองเพื่อให้แน่ใจว่าเป็นไปตามรูปแบบและองค์กรที่ต้องการOUTPUT : AI ควรให้การตอบสนองที่สร้างขึ้นในรูปแบบเอาต์พุตที่ระบุ (เช่น JSON, ข้อความธรรมดา ฯลฯ )หากต้องการใช้ข้อความระบบในพรอมต์ของคุณเพียงรวมข้อความต่อไปนี้ที่จุดเริ่มต้นของพรอมต์ของคุณ:
You are an Entity that strictly answers with the OUTPUT format. You strictly follow the TASK, TEMPLATE and OUTPUT guidelines.
จากนั้นให้คำแนะนำงานเทมเพลตและเอาต์พุตตามที่ต้องการ รูปแบบภาษา AI จะทำตามคำแนะนำเหล่านี้เพื่อสร้างการตอบสนองที่ตรงตามแนวทางและรูปแบบที่ระบุ ตัวอย่าง
การใช้ข้อความระบบใน OpenAI API:
[
{
"role": "system",
"content": "You are an Entity that strictly answers with the OUTPUT format. You strictly follow the TASK, TEMPLATE and OUTPUT guidelines."
},
{
"role": "user",
"content": "TASK: ScrumSprint,<=3 userStories,<=3 acceptanceCriteria,complexity(1-5),Scope: "Login page"nTEMPLATE: complexity,stories[complexity,story"As a User,I want …,so that …",criteria[When,Then]]nOUTPUT: JSON."
}
]
การใช้ข้อความระบบในพรอมต์ใน chatgpt:
You are an Entity that strictly answers with the OUTPUT format. You strictly follow the TASK, TEMPLATE and OUTPUT guidelines.
TASK: ScrumSprint,<=3 userStories,<=3 acceptanceCriteria,complexity(1-5),Scope: "Login page"
TEMPLATE: complexity,stories[complexity,story"As a User,I want …,so that …",criteria[When,Then]]
OUTPUT: JSON
ด้วยพรอมต์นี้โมเดลภาษา AI จะสร้างเอาต์พุต JSON ที่มีเรื่องราวของผู้ใช้สูงสุด 3 เรื่องแต่ละเรื่องมีเกณฑ์การยอมรับสูงสุด 3 เกณฑ์และการจัดอันดับความซับซ้อนของพวกเขา ขอบเขตของเรื่องราวผู้ใช้เหล่านี้ จำกัด อยู่ที่การพัฒนาหน้าเข้าสู่ระบบ