System Prompts
System prompts là một cách mạnh mẽ để tùy chỉnh cách Claude phản hồi với đầu vào của người dùng. Thay vì nhận được những câu trả lời chung chung, bạn có thể định hình giọng điệu, phong cách và cách tiếp cận của Claude để phù hợp với trường hợp sử dụng cụ thể của bạn.
Tại sao System Prompts quan trọng
Hãy xem xét việc xây dựng một chatbot gia sư toán học. Khi một học sinh hỏi "Làm thế nào để giải 5x + 2 = 3 tìm x?", bạn muốn Claude hoạt động như một gia sư thực sự, không chỉ đưa ra đáp án. Một gia sư toán tốt nên:
System prompts cung cấp cho Claude hướng dẫn về cách phản hồi. Bạn định nghĩa chúng dưới dạng chuỗi văn bản đơn giản và truyền vào lời gọi hàm create. Các lợi ích chính là:
python
system_prompt = """
Bạn là một gia sư toán học kiên nhẫn.
Đừng trả lời trực tiếp câu hỏi của học sinh.
Hướng dẫn họ đến giải pháp từng bước một.
"""
client.messages.create(
model=model,
messages=messages,
max_tokens=1000,
system=system_prompt
)
Nhìn thấy Sự khác biệt
Không có system prompt, Claude đưa ra lời giải từng bước hoàn chỉnh ngay lập tức. Điều này có thể hữu ích, nhưng nó không khuyến khích học sinh tự suy nghĩ qua bài toán.
Với system prompt của gia sư toán, phản hồi của Claude thay đổi đáng kể. Thay vì cung cấp lời giải đầy đủ, Claude đặt những câu hỏi hướng dẫn như "Em nghĩ bước đầu tiên tốt để tách x ra là gì? Hãy xem xét phép tính nào chúng ta có thể cần thực hiện ở cả hai vế để bắt đầu di chuyển các hạng tử."
Xây dựng Hàm Chat Linh hoạt
Thay vì mã hóa cứng system prompts, bạn có thể làm cho hàm chat của mình có thể tái sử dụng hơn bằng cách chấp nhận system prompts như tham số:
python
def chat(messages, system=None):
params = {
"model": model,
"max_tokens": 1000,
"messages": messages,
}
if system:
params["system"] = system
message = client.messages.create(**params)
return message.content[0].text
Cách tiếp cận này xử lý một chi tiết quan trọng: API của Claude không chấp nhận system=None, vì vậy bạn cần có điều kiện chỉ bao gồm tham số system khi nó được cung cấp.
Bây giờ bạn có thể gọi hàm chat của mình với hoặc không có system prompt:
python
# Không có system prompt
answer = chat(messages)
# Với system prompt
system = """
Bạn là một gia sư toán học kiên nhẫn.
Đừng trả lời trực tiếp câu hỏi của học sinh.
Hướng dẫn họ đến giải pháp từng bước một.
"""
answer = chat(messages, system=system)
System prompts rất cần thiết để tạo ra các ứng dụng AI hoạt động nhất quán và phù hợp với mục đích dự định của chúng. Chúng biến đổi những phản hồi AI chung chung thành các tương tác chuyên biệt, phù hợp với vai trò.
System prompts là một cách mạnh mẽ để tùy chỉnh cách Claude phản hồi với đầu vào của người dùng. Thay vì nhận được những câu trả lời chung chung, bạn có thể định hình giọng điệu, phong cách và cách tiếp cận của Claude để phù hợp với trường hợp sử dụng cụ thể của bạn.
Tại sao System Prompts quan trọng
Hãy xem xét việc xây dựng một chatbot gia sư toán học. Khi một học sinh hỏi "Làm thế nào để giải 5x + 2 = 3 tìm x?", bạn muốn Claude hoạt động như một gia sư thực sự, không chỉ đưa ra đáp án. Một gia sư toán tốt nên:
- Ban đầu đưa ra gợi ý thay vì giải pháp hoàn chỉnh
- Kiên nhẫn hướng dẫn học sinh qua từng bước của bài toán
- Hiển thị lời giải cho các bài tương tự làm ví dụ
- Ngay lập tức đưa ra câu trả lời trực tiếp
- Bảo học sinh chỉ cần dùng máy tính
System prompts cung cấp cho Claude hướng dẫn về cách phản hồi. Bạn định nghĩa chúng dưới dạng chuỗi văn bản đơn giản và truyền vào lời gọi hàm create. Các lợi ích chính là:
- System prompts cung cấp cho Claude hướng dẫn về cách phản hồi
- Claude sẽ cố gắng phản hồi theo cách mà ai đó trong vai trò được chỉ định sẽ phản hồi
- Giúp giữ Claude tập trung vào nhiệm vụ
python
system_prompt = """
Bạn là một gia sư toán học kiên nhẫn.
Đừng trả lời trực tiếp câu hỏi của học sinh.
Hướng dẫn họ đến giải pháp từng bước một.
"""
client.messages.create(
model=model,
messages=messages,
max_tokens=1000,
system=system_prompt
)
Nhìn thấy Sự khác biệt
Không có system prompt, Claude đưa ra lời giải từng bước hoàn chỉnh ngay lập tức. Điều này có thể hữu ích, nhưng nó không khuyến khích học sinh tự suy nghĩ qua bài toán.
Với system prompt của gia sư toán, phản hồi của Claude thay đổi đáng kể. Thay vì cung cấp lời giải đầy đủ, Claude đặt những câu hỏi hướng dẫn như "Em nghĩ bước đầu tiên tốt để tách x ra là gì? Hãy xem xét phép tính nào chúng ta có thể cần thực hiện ở cả hai vế để bắt đầu di chuyển các hạng tử."
Xây dựng Hàm Chat Linh hoạt
Thay vì mã hóa cứng system prompts, bạn có thể làm cho hàm chat của mình có thể tái sử dụng hơn bằng cách chấp nhận system prompts như tham số:
python
def chat(messages, system=None):
params = {
"model": model,
"max_tokens": 1000,
"messages": messages,
}
if system:
params["system"] = system
message = client.messages.create(**params)
return message.content[0].text
Cách tiếp cận này xử lý một chi tiết quan trọng: API của Claude không chấp nhận system=None, vì vậy bạn cần có điều kiện chỉ bao gồm tham số system khi nó được cung cấp.
Bây giờ bạn có thể gọi hàm chat của mình với hoặc không có system prompt:
python
# Không có system prompt
answer = chat(messages)
# Với system prompt
system = """
Bạn là một gia sư toán học kiên nhẫn.
Đừng trả lời trực tiếp câu hỏi của học sinh.
Hướng dẫn họ đến giải pháp từng bước một.
"""
answer = chat(messages, system=system)
System prompts rất cần thiết để tạo ra các ứng dụng AI hoạt động nhất quán và phù hợp với mục đích dự định của chúng. Chúng biến đổi những phản hồi AI chung chung thành các tương tác chuyên biệt, phù hợp với vai trò.