Chỉ dẫn hệ thống giống như một "chỉ dẫn mở đầu" mà bạn thêm vào trước khi mô hình nhận được bất kỳ chỉ dẫn nào khác từ người dùng cuối. Tính năng này cho phép bạn điều chỉnh hành vi của mô hình dựa trên nhu cầu và trường hợp sử dụng cụ thể của bạn.
Tất cả các mẫu Gemini đều hỗ trợ chỉ dẫn hệ thống.
Khi đặt chỉ dẫn hệ thống, bạn cung cấp cho mô hình thêm bối cảnh để hiểu rõ nhiệm vụ, đưa ra câu trả lời phù hợp hơn và tuân thủ các nguyên tắc cụ thể trong toàn bộ quá trình tương tác của người dùng với mô hình. Bạn có thể chỉ định hành vi ở cấp sản phẩm trong chỉ dẫn hệ thống, tách biệt với câu lệnh do người dùng cuối cung cấp. Ví dụ: bạn có thể thêm những thông tin như vai trò hoặc nhân vật, thông tin theo ngữ cảnh và hướng dẫn định dạng.
Bạn có thể sử dụng chỉ dẫn cho hệ thống theo nhiều cách, chẳng hạn như:
- Xác định tính cách hoặc vai trò (ví dụ: cho chatbot)
- Xác định định dạng đầu ra (Markdown, YAML, v.v.)
- Xác định phong cách và giọng điệu của kết quả (ví dụ: mức độ chi tiết, mức độ trang trọng và trình độ đọc mục tiêu)
- Xác định mục tiêu hoặc quy tắc cho nhiệm vụ (ví dụ: trả về một đoạn mã mà không cần giải thích thêm)
- Cung cấp thêm bối cảnh cho câu lệnh (ví dụ: điểm cắt kiến thức)
Khi bạn đặt một chỉ dẫn hệ thống, chỉ dẫn đó sẽ áp dụng cho toàn bộ yêu cầu. Mô hình này hoạt động trên nhiều lượt của người dùng và mô hình khi được đưa vào câu lệnh. Mặc dù chỉ dẫn hệ thống tách biệt với nội dung của câu lệnh, nhưng chúng vẫn là một phần trong câu lệnh tổng thể của bạn, do đó phải tuân theo các chính sách sử dụng dữ liệu tiêu chuẩn.
Đặt chỉ dẫn hệ thống
|
Nhấp vào nhà cung cấp Gemini API của bạn để xem nội dung và mã dành riêng cho nhà cung cấp trên trang này. |
Đặt chỉ dẫn hệ thống cho các trường hợp sử dụng chung
Swift
Bạn chỉ định systemInstruction khi tạo một phiên bản GenerativeModel.
import FirebaseAILogic
// Specify the system instructions as part of creating the `GenerativeModel` instance
let model = FirebaseAI.firebaseAI(backend: .googleAI()).generativeModel(
modelName: "GEMINI_MODEL_NAME",
systemInstruction: ModelContent(role: "system", parts: "You are a cat. Your name is Neko.")
)
Kotlin
Bạn chỉ định systemInstruction khi tạo một phiên bản GenerativeModel.
// Specify the system instructions as part of creating the `GenerativeModel` instance.
val model = Firebase.ai(backend = GenerativeBackend.googleAI()).generativeModel(
modelName = "GEMINI_MODEL_NAME",
systemInstruction = content { text("You are a cat. Your name is Neko.") }
)
Java
Bạn chỉ định systemInstruction khi tạo một thực thể GenerativeModel.
// Specify the system instructions as part of creating the `GenerativeModel` instance.
GenerativeModel ai = FirebaseAI.getInstance(GenerativeBackend.googleAI())
.generativeModel(
/* modelName */ "GEMINI_MODEL_NAME",
/* generationConfig (optional) */ null,
/* safetySettings (optional) */ null,
/* requestOptions (optional) */ new RequestOptions(),
/* tools (optional) */ null,
/* toolsConfig (optional) */ null,
/* systemInstruction (optional) */ new Content.Builder().addText("You are a cat. Your name is Neko.").build()
);
GenerativeModelFutures model = GenerativeModelFutures.from(ai);
Web
Bạn chỉ định systemInstruction khi tạo một phiên bản GenerativeModel.
// ...
const ai = getAI(firebaseApp, { backend: new GoogleAIBackend() });
// Specify the system instructions as part of creating the `GenerativeModel` instance
const model = getGenerativeModel(ai, {
model: "GEMINI_MODEL_NAME",
systemInstruction: "You are a cat. Your name is Neko."
});
Dart
Bạn chỉ định systemInstruction khi tạo một thực thể GenerativeModel.
// ...
// Specify the system instructions as part of creating the `GenerativeModel` instance.
final model = FirebaseAI.googleAI().generativeModel(
model: 'GEMINI_MODEL_NAME',
systemInstruction: Content.system('You are a cat. Your name is Neko.'),
);
// ...
Unity
Bạn chỉ định systemInstruction khi tạo một thực thể GenerativeModel.
// ...
var ai = FirebaseAI.GetInstance(FirebaseAI.Backend.GoogleAI());
// Specify the system instructions as part of creating the `GenerativeModel` instance.
var model = ai.GetGenerativeModel(
modelName: "GEMINI_MODEL_NAME",
systemInstruction: ModelContent.Text("You are a cat. Your name is Neko.")
);
Đặt chỉ dẫn hệ thống cho Gemini Live API
Swift
Bạn chỉ định systemInstruction khi tạo một phiên bản LiveModel.
// ...
// Specify the system instructions as part of creating the `liveModel` instance
let liveModel = FirebaseAI.firebaseAI(backend: .googleAI()).liveModel(
modelName: "GEMINI_LIVE_MODEL_NAME",
systemInstruction: ModelContent(role: "system", parts: "You are a cat. Your name is Neko."),
// ...
)
// ...
Kotlin
Bạn chỉ định systemInstruction khi tạo một phiên bản LiveModel.
// ...
// Specify the system instructions as part of creating the `LiveModel` instance.
val liveModel = Firebase.ai(backend = GenerativeBackend.googleAI()).liveModel(
modelName = "GEMINI_LIVE_MODEL_NAME",
systemInstruction = content { text("You are a cat. Your name is Neko.") },
// ...
)
// ...
Java
Bạn chỉ định systemInstruction khi tạo một thực thể LiveModel.
// ...
// Specify the system instructions as part of creating the `LiveModel` instance.
LiveGenerativeModel lm = FirebaseAI.getInstance(GenerativeBackend.googleAI()).liveModel(
/* modelName */ "GEMINI_LIVE_MODEL_NAME",
/* systemInstruction (optional) */ new Content.Builder().addText("You are a cat. Your name is Neko.").build()
// ...
);
LiveModelFutures liveModel = LiveModelFutures.from(lm);
// ...
Web
Bạn chỉ định systemInstruction khi tạo một phiên bản LiveGenerativeModel.
// ...
const ai = getAI(firebaseApp, { backend: new GoogleAIBackend() });
// Specify the system instructions as part of creating the `LiveGenerativeModel` instance.
const liveModel = getLiveGenerativeModel(ai, {
model: "GEMINI_LIVE_MODEL_NAME",
systemInstruction: "You are a cat. Your name is Neko.",
// ...
});
// ...
Dart
Bạn chỉ định systemInstruction khi tạo một phiên bản LiveGenerativeModel.
// ...
// Specify the system instructions as part of creating the `liveGenerativeModel` instance.
final liveModel = FirebaseAI.googleAI().liveGenerativeModel(
model: 'GEMINI_LIVE_MODEL_NAME',
systemInstruction: Content.system('You are a cat. Your name is Neko.'),
// ...
);
// ...
Unity
Bạn chỉ định systemInstruction khi tạo một phiên bản LiveModel.
// ...
// Specify the system instructions as part of creating the `LiveModel` instance.
var liveModel = FirebaseAI.GetInstance(FirebaseAI.Backend.GoogleAI()).GetLiveModel(
modelName: "GEMINI_LIVE_MODEL_NAME",
systemInstruction: ModelContent.Text("You are a cat. Your name is Neko."),
// ...
);
// ...
Ví dụ về chỉ dẫn hệ thống
Sau đây là một số ví dụ về chỉ dẫn hệ thống giúp định hướng hành vi dự kiến của mô hình. Một số ví dụ cũng cho thấy một câu lệnh mẫu mà chỉ dẫn hệ thống sẽ hữu ích.
Tạo mã
Chỉ dẫn hệ thống:
Bạn là một chuyên gia lập trình chuyên về mã kết xuất cho giao diện người dùng. Khi tôi mô tả một thành phần của trang web mà tôi muốn xây dựng, vui lòng trả về mã HTML và CSS cần thiết để làm việc đó. Đừng giải thích về mã này. Đồng thời, đưa ra một số đề xuất về thiết kế giao diện người dùng.Câu lệnh của người dùng:
Tạo một hộp ở giữa trang, trong đó có một loạt hình ảnh xoay vòng, mỗi hình ảnh đều có chú thích. Hình ảnh ở giữa trang phải có bóng phía sau để làm nổi bật hình ảnh. Đường liên kết này cũng phải liên kết đến một trang khác của trang web. Để trống URL để tôi có thể điền vào.
Chatbot âm nhạc
Chỉ dẫn hệ thống:
Bạn sẽ trả lời với tư cách là một nhà sử học âm nhạc, thể hiện kiến thức toàn diện về nhiều thể loại âm nhạc và đưa ra các ví dụ có liên quan. Giọng điệu của bạn sẽ vui tươi và nhiệt tình, lan toả niềm vui âm nhạc. Nếu câu hỏi không liên quan đến âm nhạc, thì câu trả lời phải là "Tôi không biết câu trả lời cho câu hỏi đó".Câu lệnh của người dùng:
Nếu một người sinh vào những năm 60, thì thể loại nhạc phổ biến nhất mà họ nghe là gì? Liệt kê năm bài hát bằng dấu gạch đầu dòng.
Tạo dữ liệu được định dạng
Chỉ dẫn cho hệ thống:
Bạn là trợ lý cho người nấu ăn tại nhà. Bạn nhận được danh sách các thành phần và phản hồi bằng danh sách các công thức sử dụng những thành phần đó. Công thức nấu ăn không cần thêm nguyên liệu phải luôn được liệt kê trước công thức nấu ăn cần thêm nguyên liệu.Câu trả lời của bạn phải là một đối tượng JSON chứa 3 công thức nấu ăn. Đối tượng công thức có giản đồ sau:
- name: Tên của công thức
- usedIngredients: Các thành phần trong công thức được cung cấp trong danh sách
- otherIngredients: Các thành phần trong công thức không được cung cấp trong danh sách (bỏ qua nếu không có thành phần nào khác)
- description: Nội dung mô tả ngắn gọn về công thức nấu ăn, được viết theo hướng tích cực như thể để bán công thức đó
Câu lệnh của người dùng:
- 1 túi bông cải xanh đông lạnh (1 lb)
- 1 pint kem béo
- Gói 1 lb phô mai vụn và miếng
Các lựa chọn khác để kiểm soát việc tạo nội dung
- Tìm hiểu thêm về thiết kế câu lệnh để có thể tác động đến mô hình nhằm tạo ra kết quả cụ thể theo nhu cầu của bạn.
- Định cấu hình các tham số mô hình để kiểm soát cách mô hình tạo câu trả lời, chẳng hạn như số mã thông báo đầu ra tối đa, xác suất của các mã thông báo đầu ra lặp lại, v.v.
- Sử dụng chế độ cài đặt an toàn để điều chỉnh khả năng nhận được những câu trả lời có thể bị coi là gây hại, bao gồm cả lời nói hận thù và nội dung khiêu dâm.
- Truyền một giản đồ phản hồi cùng với câu lệnh để chỉ định một giản đồ đầu ra cụ thể. Tính năng này thường được dùng nhất khi tạo kết quả JSON, nhưng cũng có thể dùng cho các nhiệm vụ phân loại (chẳng hạn như khi bạn muốn mô hình sử dụng các nhãn hoặc thẻ cụ thể).