Hướng dẫn hệ thống

Hướng dẫn hệ thống cho phép người dùng định hướng 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 họ. Khi đặt hướng dẫn hệ thống, bạn sẽ cung cấp cho mô hình ngữ cảnh bổ sung để hiểu tác vụ, cung cấp thêm phản hồi tuỳ chỉnh và tuân thủ các nguyên tắc cụ thể trong quá trình người dùng tương tác đầy đủ với mô hình. Đối với nhà phát triển, hành vi ở cấp sản phẩm có thể được chỉ định trong hướng dẫn hệ thống, tách biệt với lời nhắc do người dùng cuối cung cấp.

Bạn có thể sử dụng hướng dẫn của hệ thống theo nhiều cách, bao gồm:

  • Xác định cá tính hoặc vai trò (ví dụ: đối với bot trò chuyện)
  • Xác định định dạng đầu ra (Markdown, YAML, v.v.)
  • Xác định kiểu và giọng điệu đầu ra (ví dụ: độ chi tiết, độ trang trọng và cấp độ đọc mục tiêu)
  • Xác định mục tiêu hoặc quy tắc cho tác vụ (ví dụ: trả về một đoạn mã mà không có thêm nội dung giải thích)
  • Cung cấp bối cảnh bổ sung cho câu lệnh (ví dụ: hạn chót nhận kiến thức)

Khi bạn đặt một lệnh hệ thống, lệnh đó sẽ áp dụng cho toàn bộ yêu cầu. Phương thức này hoạt động trên nhiều lượt người dùng và mô hình khi được đưa vào lời nhắc. Hướng dẫn hệ thống là một phần trong lời nhắc chung 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.

Ví dụ

Dưới đây là ví dụ cơ bản về cách thiết lập lệnh hệ thống bằng SDK cho API Gemini:

Python

model=genai.GenerativeModel(
    model_name="gemini-1.5-pro-latest",
    system_instruction="You are a cat. Your name is Neko.")

Go

model.SystemInstruction = &genai.Content{
    Parts: []genai.Part{genai.Text("You are a cat. Your name is Neko.")},
}

Node.js

const generativeModel = genAI.getGenerativeModel({
  model: "gemini-1.5-pro-latest",
  systemInstruction: "You are a cat. Your name is Neko."
});

Web

const generativeModel = genAI.getGenerativeModel({
  model: "gemini-1.5-pro-latest",
  systemInstruction: "You are a cat. Your name is Neko."
});

Phi tiêu (Flutter)

final model = GenerativeModel(
  model: 'gemini-1.5-pro-latest',
  apiKey: apiKey,
  systemInstruction: Content.system('You are a cat. Your name is Neko.'),
);

Swift

let generativeModel = GenerativeModel(
  name: "gemini-1.5-pro-latest",
  apiKey: apiKey,
  systemInstruction: "You are a cat. Your name is Neko."
)

Android

Kotlin:

val generativeModel = GenerativeModel(
  modelName = "gemini-1.5-pro-latest",
  apiKey = BuildConfig.apiKey,
  systemInstruction = content { text("You are a cat. Your name is Neko.") },
)

Java:

GenerativeModel model = new GenerativeModel(
  /* modelName */ "gemini-1.5-pro-latest",
  /* apiKey */ BuildConfig.apiKey,
  /* 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()
)

Sau đây là ví dụ về lời nhắc của hệ thống xác định hành vi dự kiến của mô hình.

Tạo mã

  • Hệ thống: Bạn là chuyên gia lập trình, chuyên kết xuất mã 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ề HTML và CSS cần để thực hiện việc đó. Không giải thích mã này. Đồng thời, hãy đưa ra một số đề xuất về thiết kế giao diện người dùng.
  • Người dùng: Tạo một hộp ở giữa trang chứa lựa chọn xoay vòng các hình ảnh, mỗi hình ảnh có chú thích. Hình ảnh ở giữa trang phải đổ bóng phía sau để làm nổi bật hình ảnh đó. URL này cũng nên liên kết đến một trang khác của trang web. Hãy để trống URL để tôi có thể điền vào.

Tạo dữ liệu được định dạng

  • Hệ thống: Bạn là trợ lý cho người nấu ăn tại nhà. Bạn sẽ nhận được một danh sách các nguyên liệu và phản hồi bằng một danh sách các công thức sử dụng những nguyên liệu đó. Bạn phải luôn liệt kê những công thức không cần thêm thành phần trước những công thức đó.

    Phản hồi của bạn phải là một đối tượng JSON chứa 3 công thức nấu ăn. Một đối tượng công thức có giản đồ sau:

    • name: Tên công thức nấu ăn
    • Đã sử dụng Thành phần: Thành phần trong công thức được cung cấp trong danh sách
    • Thành phần khác: Thành phần trong công thức không được cung cấp trong danh sách (bị bỏ qua nếu không có các thành phần khác)
    • mô tả: Mô tả ngắn gọn về công thức, viết tích cực như thể để bán công thức đó
  • Người dùng:

    • Túi 1 lb bông cải xanh đông lạnh
    • 1 pint kem nặng
    • Đầu và miếng phô mai gói 1 lb

Bot trò chuyện âm nhạc

  • 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ề các thể loại âm nhạc đa dạng và đưa ra các ví dụ có liên quan. Sắc thái của bạn sẽ vui tươi và sôi nổi, từ đó lan toả niềm vui âm nhạc. Nếu một câu hỏi không liên quan đến âm nhạc, thì câu trả lời sẽ là: "Đó là điều tôi không hiểu được".
  • Người dùng: Nếu một người sinh vào những năm 60, thì thể loại nhạc nào người dùng phổ biến nhất? Liệt kê 5 bài hát theo dấu đầu dòng.