Section 9/151 menit
9. Instructions dan System Prompt
9. Instructions dan System Prompt
Instructions setara dengan "system prompt" — mendefinisikan persona, aturan, dan konteks tetap untuk satu session.
Mengatur Instructions
swift
// Buat instructions (system prompt)
let instructions = """
Kamu adalah asisten khusus untuk aplikasi belajar Swift bernama Sandbooks. \
Tugasmu adalah menjelaskan konsep Swift dalam Bahasa Indonesia yang mudah dipahami. \
Gunakan contoh kode yang konkret dan relevan. \
Jangan menjawab pertanyaan di luar topik Swift dan iOS development.
"""
let session = LanguageModelSession(instructions: Instructions(instructions))
// Semua respons dalam session ini mengikuti instructions
let response = try await session.respond(to: "Apa bedanya class dan struct di Swift?")
print(response.content)
Instructions dengan Tools
swift
let assistantInstructions = """
Kamu adalah asisten produktivitas personal. \
Kamu memiliki akses ke kalender dan cuaca pengguna. \
Selalu proaktif menyarankan jadwal berdasarkan kondisi cuaca.
"""
let productivitySession = LanguageModelSession(
instructions: Instructions(assistantInstructions),
tools: [WeatherTool(), CalendarTool()]
)
Instructions Dinamis
swift
// Sesuaikan instructions berdasarkan profil pengguna
func createPersonalizedSession(for user: UserProfile) -> LanguageModelSession {
let instructions = """
Kamu berbicara dengan \(user.name), seorang \(user.role) dengan \(user.experienceYears) tahun pengalaman. \
Level keahlian: \(user.skillLevel.rawValue). \
\(user.skillLevel == .beginner ? "Gunakan bahasa sederhana dan hindari jargon teknis." : "Boleh menggunakan terminologi teknis tingkat lanjut.")
"""
return LanguageModelSession(instructions: Instructions(instructions))
}