요청에서 먼저 보이는 다섯 필드
Messages API가 반드시 요구하는 값은 model, max_tokens, messages야. system과 temperature는 선택 항목이지만 실제 제품에서는 자주 써. 여기에 응답 전체를 한 번에 받을지, 생성되는 대로 스트리밍할지 결정하면 기본 요청 모양이 완성돼.
출력 예산은 호출자가 정해
Anthropic은 호출마다 max_tokens를 명시하게 해. 이 값은 단순한 권장 길이가 아니라 비용 상한이자 지연 조절 장치야. 정상 답변을 자르지 않을 만큼 넉넉하되, 모델이 끝없이 생성해도 제품 예산을 넘지 않게 잡아야 해. 작업별 예상 길이를 재고 별도 값을 두는 편이 안전해.
메시지 배열과 시스템 지침은 자리가 달라
messages에는 {role, content} 객체가 들어가고 역할은 user와 assistant가 번갈아 나와. 배열 안에는 system 역할이 없어. 전체 대화에 적용할 지침은 최상위 system 필드에 두고, 특정 턴의 추가 자료는 해당 사용자 메시지 안에 넣어.
원칙: SDK 도우미보다 요청 본문 계약을 먼저 이해해. 편의 함수가 바뀌어도 API의 구조는 남아.