프롬프트 엔지니어링
더 나은 출력 제어를 위한 Claude의 응답 미리 채우기
Claude를 사용할 때, Assistant
메시지를 미리 채워 응답을 안내할 수 있는 고유한 기능이 있습니다. 이 강력한 기술을 통해 Claude의 행동을 지시하고, 서문을 건너뛰며, JSON이나 XML과 같은 특정 형식을 강제하고, 심지어 역할극 시나리오에서 Claude가 캐릭터의 일관성을 유지하도록 도울 수 있습니다.
Claude가 예상대로 수행하지 않는 일부 경우에서, 몇 문장을 미리 채우는 것만으로도 Claude의 성능을 크게 향상시킬 수 있습니다. 약간의 미리 채우기만으로도 큰 효과를 볼 수 있습니다!
Claude의 응답을 미리 채우는 방법
미리 채우기를 하려면, Assistant
메시지에 원하는 초기 텍스트를 포함시키세요(Claude의 응답은 Assistant
메시지가 끝나는 지점부터 계속됩니다):
import anthropic
client = anthropic.Anthropic()
response = client.messages.create(
model="claude-3-5-sonnet-20241022",
max_tokens=1024,
messages=[
{"role": "user", "content": "What is your favorite color?"},
{"role": "assistant", "content": "As an AI assistant, I don't have a favorite color, But if I had to pick, it would be green because"} # Prefill here
]
)
예시
예시 1: 출력 형식 제어 및 서문 건너뛰기
파워 유저 팁:
{
를 미리 채우면 Claude가 서문을 건너뛰고 JSON 객체를 직접 출력하도록 강제합니다. 이는 더 깔끔하고 간결하며, 추가 처리 없이 프로그램이 구문 분석하기 쉽습니다.예시 2: 역할극 시나리오에서 캐릭터 유지하기
역할극 팁: 대괄호로 묶인
[ROLE_NAME]
을 미리 채우면 Claude가 더 길고 복잡한 대화에서도 캐릭터를 유지하도록 상기시킬 수 있습니다. 이는 특히 system
매개변수의 역할 프롬프팅과 결합할 때 매우 강력합니다.