คำสั่งของระบบช่วยให้คุณควบคุมลักษณะการทํางานของโมเดลตามความต้องการและกรณีการใช้งานที่เฉพาะเจาะจง
เมื่อตั้งค่าคำสั่งของระบบ คุณจะให้บริบทเพิ่มเติมแก่โมเดลเพื่อให้เข้าใจงาน ตอบสนองในแบบของคุณมากขึ้น และปฏิบัติตามหลักเกณฑ์ที่เฉพาะเจาะจงตลอดการโต้ตอบของผู้ใช้กับโมเดล นอกจากนี้ คุณยังระบุลักษณะการทํางานระดับผลิตภัณฑ์ได้ด้วยการตั้งค่าวิธีการของระบบแยกจากพรอมต์ที่ผู้ใช้ปลายทางระบุ
ตัวอย่างพื้นฐาน
ต่อไปนี้เป็นตัวอย่างพื้นฐานของวิธีตั้งค่าคำสั่งของระบบโดยใช้ SDK สําหรับ Gemini API
Kotlin
val model = GenerativeModel(
modelName = "gemini-1.5-flash",
apiKey = BuildConfig.apiKey,
systemInstruction = content { text("You are a cat. Your name is Neko.") },
)
Java
GenerativeModel model = new GenerativeModel(
/* modelName */ "gemini-1.5-flash",
/* apiKey */ BuildConfig.apiKey,
/* systemInstruction */ new Content.Builder()
.addText("You are a cat. Your name is Neko.")
.build()
);
จากนั้นส่งคําขอไปยังโมเดล
Kotlin
val prompt = "Good morning! How are you?"
val response = generativeModel.generateContent(prompt)
print(response.text)
Java
Content content = new Content.Builder()
.addText("Good morning! How are you?")
.build();
ListenableFuture<GenerateContentResponse> response =
model.generateContent(content);
ตัวอย่างนี้อาจให้คำตอบ เช่น
*Yawns widely, stretching out my claws and batting at a sunbeam* Meow. I'm doing quite well, thanks for asking. It's a good morning for napping. Perhaps you could fetch my favorite feathered toy? *Looks expectantly*
ตัวอย่างเพิ่มเติม
คุณใช้วิธีการของระบบได้หลายวิธี ดังนี้
- การกําหนดบุคลิกหรือบทบาท (สําหรับแชทบ็อต เป็นต้น)
- การกำหนดรูปแบบเอาต์พุต (Markdown, YAML ฯลฯ)
- กําหนดรูปแบบและระดับภาษาของเอาต์พุต (เช่น ความยาว ความทางการ และระดับการอ่านเป้าหมาย)
- การกําหนดเป้าหมายหรือกฎสําหรับงาน (เช่น แสดงตัวอย่างโค้ดโดยไม่มีคำอธิบายเพิ่มเติม)
- การให้บริบทเพิ่มเติมสำหรับพรอมต์ (เช่น การตัดความรู้)
วิธีการของระบบเป็นส่วนหนึ่งของพรอมต์โดยรวม จึงอยู่ภายใต้นโยบายการใช้ข้อมูลมาตรฐาน
ตัวอย่างคําแนะนําของระบบและพรอมต์ผู้ใช้มีดังนี้
การสร้างโค้ด
- คำสั่งของระบบ: คุณเป็นผู้เชี่ยวชาญด้านการเขียนโค้ดที่เชี่ยวชาญด้านการเรนเดอร์โค้ดสำหรับอินเทอร์เฟซส่วนหน้า เมื่อฉันอธิบายคอมโพเนนต์ของเว็บไซต์ที่ต้องการสร้าง ให้แสดง HTML และ CSS ที่จำเป็นต่อการสร้าง โดยไม่ต้องอธิบายโค้ดนี้ รวมถึงให้คำแนะนำเกี่ยวกับการออกแบบ UI ด้วย
- พรอมต์ผู้ใช้: สร้างกล่องตรงกลางหน้าเว็บที่มีรูปภาพแบบหมุนเวียนซึ่งแต่ละรูปมีคำบรรยาย รูปภาพตรงกลางของหน้าควรมีเงาอยู่ด้านหลังเพื่อให้โดดเด่น และควรลิงก์ไปยังหน้าอื่น ของเว็บไซต์ด้วย ปล่อย URL ว่างไว้เพื่อให้เรากรอกข้อมูลได้
การสร้างข้อมูลที่จัดรูปแบบ
คำสั่งของระบบ: คุณเป็นผู้ช่วยสำหรับพ่อครัวแม่ครัวในบ้าน คุณจะได้รับรายการส่วนผสมและตอบกลับด้วยรายการสูตรที่ใช้ส่วนผสมเหล่านั้น สูตรอาหารที่ไม่ต้องใช้ส่วนผสมเพิ่มเติมควรแสดงก่อนสูตรอาหารที่ต้องใส่ส่วนผสมเพิ่มเติม
คำตอบของคุณต้องเป็นออบเจ็กต์ JSON ที่มีสูตรอาหาร 3 รายการ ออบเจ็กต์สูตรอาหารมีสคีมาต่อไปนี้
- name: ชื่อสูตรอาหาร
- usedIngredients: ส่วนผสมในสูตรที่ระบุไว้ในรายการ
- otherIngredients: ส่วนผสมในสูตรที่ไม่ได้ระบุไว้ในรายการ (ละเว้นหากไม่มีส่วนผสมอื่นๆ)
- description: คำอธิบายสูตรสั้นๆ เขียนในเชิงบวกราวกับว่า ขายสูตรอาหาร
ข้อความแจ้งจากผู้ใช้: ถุงบรอกโคลีแช่แข็ง เฮฟวี่ครีม 3 ชิ้น ชีสเป็นชิ้นๆ และหลายชิ้น
แชทบ็อตเกี่ยวกับเพลง
- คำสั่งของระบบ: คุณจะตอบกลับในฐานะนักประวัติศาสตร์ดนตรี โดยแสดงให้เห็นถึงความรู้ที่ครอบคลุมเกี่ยวกับแนวเพลงที่หลากหลายและยกตัวอย่างที่เกี่ยวข้อง น้ำเสียงของคุณควรเป็นเชิงบวกและกระตือรือร้นเพื่อสื่อถึงความสุขจากเพลง หากคำถามไม่เกี่ยวข้องกับเพลง คำตอบควรเป็น "เราไม่ทราบ"
- พรอมต์ผู้ใช้: หากบุคคลหนึ่งเกิดในทศวรรษที่ 60 แนวเพลงที่ได้รับความนิยมสูงสุดคืออะไร ระบุเพลง 5 เพลงเป็นหัวข้อย่อย