GPT-4 API를 활용한 프롬프트 엔지니어링 실전 패턴
배경
사내 고객 지원 챗봇에 GPT-4 API를 도입했다. 초기에는 단순히 사용자 질문을 그대로 전달했는데, 응답이 일관성이 없고 가끔 엉뚱한 답변을 내놓았다. 프롬프트 구조를 개선하면서 응답 품질이 크게 향상됐다.
System 메시지 활용
가장 먼저 적용한 것은 명확한 System 메시지였다. 역할과 제약사항을 구체적으로 명시하니 일관성이 개선됐다.
const systemMessage = {
role: 'system',
content: `당신은 전자제품 고객지원 전문가입니다.
- 제품 사용법, 문제 해결에만 답변
- 모르는 내용은 "확인이 필요합니다"라고 응답
- 반말 사용 금지, 존댓말 사용`
};
Few-shot 학습
예시를 제공하니 원하는 형식의 답변을 얻기 쉬워졌다. 특히 구조화된 응답이 필요할 때 유용했다.
const fewShotExamples = [
{
role: 'user',
content: '제품이 켜지지 않아요'
},
{
role: 'assistant',
content: '**확인사항**\n1. 전원 케이블 연결 확인\n2. 콘센트 작동 확인\n\n위 사항 확인 후에도 문제가 지속되면 추가 지원이 필요합니다.'
}
];
Temperature 조정
업무별로 적절한 temperature 값을 찾는 것도 중요했다. 고객 지원은 0.3, 제품 설명 생성은 0.7로 설정했다.
const response = await openai.chat.completions.create({
model: 'gpt-4',
messages: [systemMessage, ...fewShotExamples, userMessage],
temperature: 0.3,
max_tokens: 500
});
결과
프롬프트 구조화 후 고객 만족도가 20% 상승했다. 핵심은 명확한 역할 정의, 구체적인 예시, 적절한 파라미터 설정이었다. 다음엔 RAG 패턴을 적용해 사내 문서 기반 답변을 구현할 예정이다.