[공지]벨루가 개인정보보호정책 개정 
Show more
Sign In
벨루가 블로그

추론 모델 프롬프팅관련 Openai 공식 조언

S
SangYeon_Lee
카테고리
Empty
최근 추론 모델 프롬프팅에 대한 문의가 꽤 있어 간단하게 OpenAI의 공식 문서 토대로 정리해 보았습니다.

추론 모델(reasoning models)을 효과적으로 프롬프팅하는 방법

이러한 모델들은 간단하고 직접적인 프롬프트가 가장 우수한 성능을 보인다. 일부 프롬프트 엔지니어링 기법(예: 모델에 "단계별로 생각하라"고 지시하는 것)은 성능 향상을 가져오지 못하거나 오히려 방해가 될 수 있다. 아래의 모범 사례를 참고하거나 프롬프트 예시로 시작하라.
개발자 메시지는 새로운 시스템 메시지이다: o1-2024-12-17 버전부터, 추론 모델은 시스템 메시지 대신 개발자 메시지를 지원하며, 모델 명세서에서 설명하는 명령 체계(chain of command) 동작에 부합한다.
프롬프트를 간단하고 직접적으로 유지하라: 모델은 짧고 명료한 지시 사항을 이해하고 응답하는 데 뛰어난 성능을 보인다.
생각 흐름(chain-of-thought) 프롬프팅을 피하라: 이 모델은 내부적으로 추론 과정을 수행하기 때문에, "단계별로 생각하라" 또는 "추론을 설명하라"와 같은 프롬프팅은 불필요하다.
명확성을 위한 구분자(delimiters)를 사용하라: 모델이 입력(input)의 구성 요소를 명확하게 해석하도록, 마크다운(markdown), XML 태그(tag), 구획(section) 제목 등과 같은 구분자를 사용하여 입력의 서로 다른 부분을 명확히 표시하라.
제로샷(zero-shot) 방식부터 시도하고, 필요하면 퓨샷(few-shot)을 사용하라: 추론 모델은 종종 좋은 결과를 내기 위해 예시가 없는(zero-shot) 프롬프트를 사용하는 것으로 충분하다. 따라서 먼저 예시 없이 프롬프팅을 시도하라. 보다 복잡한 출력 요구사항이 있다면, 입력과 원하는 출력의 예시 몇 가지를 프롬프트에 포함하면 도움이 될 수 있다. 이때 예시가 지시사항과 아주 밀접하게 일치하도록 주의하라. 예시와 지시사항이 불일치하면 성능이 저하될 수 있다.
구체적인 지침(guidelines)을 제시하라: 모델의 응답을 명시적으로 제약하고자 하는 사항이 있으면(예: "500달러 이하의 예산을 갖는 해결책을 제안하라"), 프롬프트에 이러한 제약 사항을 명확히 명시하라.
최종 목표(end goal)에 매우 구체적이 되어라: 지시사항에서 성공적인 응답을 얻기 위한 구체적인 매개변수(parameters)를 제시하고, 모델이 성공 기준(success criteria)을 만족할 때까지 반복하여 추론하도록 명확히 지시하라.
마크다운(Markdown) 형식: o1-2024-12-17 버전부터, API에서의 추론 모델은 기본적으로 마크다운 형식(markdown formatting)을 사용하여 응답하지 않는다. 모델이 마크다운 형식을 사용하여 응답하기를 원한다면, 개발자 메시지(developer message)의 첫 번째 줄에 "Formatting re-enabled"라는 문자열을 포함하라.
Subscribe to 'velugadoc'
Subscribe to my site to be the first to receive notifications and emails about the latest updates, including new posts.
Join Slashpage and subscribe to 'velugadoc'!
Subscribe
👍
1