Open AI platform

[OpenAI platform] Guides - Prompt engineering

junslee 2025. 3. 3. 17:31

Prompt engineering

  • Get better results from LLMs

GPT-4o와 같은 LLM을 사용하기 위한 strategies와 tactics

'Prompt examples'를 통해 예시 prompt를 실행해 볼 수 있다.

 

더 나은 results를 위한 Six startegies 

1) Write clear instructions

  • 너의 생각을 model들은 알지 못한다.
    만약 output들이 너무 long하면, brief replies를 요청해라.
    만약 output들이 너무 simple하면, expert-level writing을 요청해라.
    만약 너가 그 format이 싫다면, 너가 보기 좋은 format을 demonstrate해라.
  • model이 너가 원하는 것을 guess하는 것이 less해질수록, 너가 원하는 것을 얻을 가능성이 높아진다.
  • Tactics
    - relevant한 answer들을 얻기 위해 너의 query에 detail들을 include해라.
    - persona를 adopt하도록 model에 ask해라.
    - input의 distinct한 part들을 clearly하게 indicate하기 위해 delimiter들을 사용해라.
    - task를 완료하기 위해 필요한 step들을 specify해라.
    - example들을 provide해라.
    - output의 desired한 length를 specify해라.
  •  

2) 참고 텍스트 제공

모델이 잘못된 정보를 생성하지 않도록 신뢰할 수 있는 참고 자료를 제공.

  • 전술:
    • 모델이 참고 텍스트를 기반으로 답변하도록 지시.
    • 참고 텍스트에서 인용을 추가하도록 요청.

3) 복잡한 작업을 단순한 하위 작업으로 분할

복잡한 작업은 오류율이 높으므로 간단한 단계로 나누어 처리.

  • 전술:
    • 의도 분류를 통해 적합한 지침 선택.
    • 긴 대화는 요약하거나 필터링하여 처리.
    • 긴 문서는 부분적으로 요약하고 이를 재귀적으로 통합.

4) 모델에게 "생각할 시간" 부여

모델이 바로 답변하지 않고 논리적으로 사고 과정을 거치도록 유도.

  • 전술:
    • 문제 해결 과정을 단계별로 작성하도록 요청.
    • 내부 독백(inner monologue)을 사용하여 모델의 사고 과정을 숨김.
    • 이전 답변에서 놓친 점이 있는지 확인하도록 요청.

5) 외부 도구 활용

모델의 한계를 보완하기 위해 외부 도구와 결합.

  • 전술:
    • 임베딩 기반 검색으로 효율적인 지식 검색 구현.
    • 코드 실행 기능을 활용해 정확한 계산 수행 또는 외부 API 호출.
    • 특정 함수에 접근 권한 제공.

6) 변경 사항을 체계적으로 테스트

프롬프트 수정이 성능에 미치는 영향을 평가하기 위해 테스트 절차(evals)를 정의.

  • 전술:
    • 골드 스탠다드(gold-standard) 답변과 비교하여 모델 출력을 평가.

3. 주요 전술 예시

명확한 지침 작성 예시

나쁜 질문 좋은 질문
"엑셀에서 숫자를 더하는 방법?" "엑셀에서 행의 금액 합계를 자동으로 계산하고, '총합' 열에 표시하는 방법은?"
"피보나치 수열 코드를 작성해줘." "TypeScript로 피보나치 수열을 효율적으로 계산하는 함수 코드를 작성해줘. 각 코드 부분에 주석 추가."
 

페르소나 요청 예시

  • 시스템 메시지: "당신은 유머러스하고 창의적인 작가입니다. 모든 문단에 농담을 포함하세요."
  • 사용자 질문: "스틸 볼트 납품업체에게 감사 편지를 써주세요."

4. 기타 팁 및 리소스

  • OpenAI Cookbook에서 추가 예제와 리소스 확인 가능.
  • 프롬프트 설계 도구, 가이드, 논문 등 다양한 자료 활용 가능.

첨부된 가이드는 프롬프트 엔지니어링의 기본 원칙부터 고급 기법까지 포괄적으로 다루며, 언어 모델 성능 최적화를 위한 실용적인 전략들을 제공합니다.