본문 바로가기
IT/Etc

프롬프트 엔지니어링 기법들

by 조병희 2024. 6. 20.

프롬프트 엔지니어링 기법들에 대한 설명

Zero-Shot Prompting

설명: 모델이 사전에 학습한 정보만을 바탕으로 질문에 답변하는 기법.

  1. 질문: "태양계에서 가장 큰 행성은 무엇인가요?"
    답변: "목성입니다."
  2. 질문: "'오만과 편견'을 쓴 작가는 누구인가요?"
    답변: "제인 오스틴입니다."
  3. 질문: "'Thank you'를 스페인어로 번역해 주세요."
    답변: "Gracias."

One-Shot Prompting

설명: 예시 하나를 제공하여 모델이 이를 바탕으로 답변하는 기법.

  1. 질문: "'I love you.'를 프랑스어로 번역해 주세요. 예: 'Good morning' -> 'Bonjour'"
    답변: "'I love you' -> 'Je t'aime.'"
  2. 질문: "'happy'의 동의어를 만들어 주세요. 예: 'Sad' -> 'Unhappy'"
    답변: "'Happy' -> 'Joyful.'"
  3. 질문: "다음 숫자를 이진수로 변환해 주세요: '7'. 예: '5' -> '101'"
    답변: "'7' -> '111.'"

Few-Shot Prompting

설명: 여러 개의 예시를 제공하여 모델이 이를 바탕으로 패턴을 학습하고 답변하는 기법.

  1. 질문: "다음 문장을 스페인어로 번역해 주세요: 'Hello' -> 'Hola', 'Goodbye' -> 'Adiós', 'Please' -> 'Por favor'"
    답변: "'Thank you' -> 'Gracias.'"
  2. 질문: "다음 동사들의 과거형을 만들어 주세요: 'Run' -> 'Ran', 'Speak' -> 'Spoke', 'Write' -> 'Wrote'"
    답변: "'Eat' -> 'Ate.'"
  3. 질문: "다음 단어들의 반의를 제공해 주세요: 'Hot' -> 'Cold', 'Big' -> 'Small', 'Fast' -> 'Slow'"
    답변: "'Happy' -> 'Sad.'"

Chain of Thought

설명: 문제 해결 과정을 단계별로 나누어 설명하게 하는 기법.

  1. 질문: "다음 수학 문제를 단계별로 풀어주세요: 35 + 47"
    답변:
    1. 십의 자리 숫자를 더하세요: 30 + 40 = 70.
    2. 일의 자리 숫자를 더하세요: 5 + 7 = 12.
    3. 두 결과를 더하세요: 70 + 12 = 82.
  2. 질문: "광합성이 어떻게 이루어지는지 설명해주세요."
    답변:
    1. 식물은 공기 중의 이산화탄소를 흡수합니다.
    2. 잎의 엽록소를 통해 태양빛을 흡수합니다.
    3. 뿌리에서 흡수한 물과 이산화탄소를 결합하여 포도당과 산소를 만듭니다.
  3. 질문: "물 순환이 어떻게 작동하는지 설명해주세요."
    답변:
    1. 물이 호수나 바다에서 증발합니다.
    2. 물이 구름으로 응결합니다.
    3. 비나 눈으로 지상에 다시 떨어집니다.

Tree of Thought (ToT)

설명: 여러 가지 가능성을 나무 구조로 확장하여 탐색하는 기법.

  1. 질문: "탄소 발자국을 줄이는 방법을 탐색해 주세요."
    답변:
    1. 재생 가능 에너지 사용.
      • 태양광 발전
      • 풍력 발전
    2. 에너지 효율 향상.
      • LED 조명
      • 에너지 효율이 높은 가전제품
    3. 지속 가능한 교통수단 사용.
      • 전기 자동차
      • 대중교통
  2. 질문: "컴퓨터 과학을 공부한 후의 잠재적인 직업 경로는 무엇인가요?"
    답변:
    1. 소프트웨어 개발
      • 모바일 앱 개발자
      • 웹 개발자
    2. 데이터 과학
      • 데이터 분석가
      • 머신러닝 엔지니어
    3. 사이버 보안
      • 보안 분석가
      • 윤리적 해커
  3. 질문: "공공 건강을 개선하는 방법은 무엇인가요?"
    답변:
    1. 건강한 생활 습관 장려.
      • 운동 프로그램
      • 영양 교육
    2. 의료 접근성 향상.
      • 저렴한 진료소
      • 원격 진료
    3. 질병 예방.
      • 예방 접종 프로그램
      • 위생 개선

Zero Shot Chain of Thought

설명: 사전 학습된 지식을 바탕으로 단계별로 문제를 해결하는 기법.

  1. 질문: "유사 분열 과정을 설명해 주세요."
    답변:
    1. 전기: 염색체가 응축되어 보이기 시작합니다.
    2. 중기: 염색체가 세포의 적도에 배열됩니다.
    3. 후기: 염색 분체가 분리되어 양극으로 이동합니다.
    4. 말기: 염색체 주위에 핵막이 형성됩니다.
    5. 세포질 분열: 세포가 두 개의 딸세포로 나뉩니다.
  2. 질문: "물 순환 단계를 설명해 주세요."
    답변:
    1. 증발: 물이 증기로 변해 대기로 올라갑니다.
    2. 응결: 수증기가 냉각되어 구름을 형성합니다.
    3. 강수: 물이 비나 눈으로 지상에 떨어집니다.
    4. 집수: 물이 강, 호수, 바다에 모입니다.
  3. 질문: "DNA 복제의 주요 단계를 설명해 주세요."
    답변:
    1. 개시: 헬리케이스가 DNA 이중 나선을 풀어줍니다.
    2. 신장: DNA 폴리메라아제가 선도와 지연 가닥에 뉴클레오타이드를 추가합니다.
    3. 종결: 리가아제가 새로운 DNA 가닥을 밀봉하여 두 개의 완전한 이중 나선을 형성합니다.

Self Consistency

설명: 다양한 프롬프트를 통해 여러 번 답변을 생성하고 가장 일관된 답변을 선택하는 기법.

  1. 질문: "규칙적인 운동의 장점은 무엇인가요?"
    답변:
    1. 심혈관 건강 개선.
    2. 정신 건강과 기분 향상.
    3. 근력과 유연성 증대.
  2. 질문: "왜 재활용이 중요한가요?"
    답변:
    1. 매립지의 쓰레기 감소.
    2. 천연 자원 보존.
    3. 에너지 절약 및 온실가스 배출 감소.
  3. 질문: "계절이 바뀌는 원인은 무엇인가요?"
    답변:
    1. 지구의 축 기울기.
    2. 태양 주위를 도는 지구의 궤도.
    3. 일년 동안 태양광의 각도 변화.

Meta-Reasoning over Multiple Chains

설명: 여러 가지 추론 경로를 생성하고, 각 경로를 평가하여 최종 답변을 선택하는 기법.

  1. 질문: "채식주의 식단을 선택하는 이유는 무엇인가요?"
    답변:
    • 건강상의 이유: 심장병과 특정 암의 위험 감소.
    • 윤리적인 이유: 동물에 대한 피해 방지.
    • 환경적인 이유: 탄소 발자국 감소 및 자원 절약.
  2. 질문: "인공지능이 의료 분야에서 어떤 영향을 미칠 수 있나요?"
    답변:
    • 진단 개선: AI가 의료 데이터를 더 정확하게 분석.
    • 개인 맞춤 치료: AI가 개별 환자에 맞춤형 치료 제공.
    • 효율성: AI가 일상적인 작업을 자동화하여 의료 전문가가 더 복잡한 치료에 집중.
  3. 질문: "소셜 미디어의 잠재적 단점은 무엇인가요?"
    답변:
    • 개인정보 보호 문제: 개인 데이터가 노출될 수 있음.
    • 정신 건강 문제: 사회적 비교로 인한 불안과 우울증 증가.
    • 잘못된 정보: 거짓 정보나 오해의 소지가 있는 정보의 확산.

Generated Knowledge Prompting

설명: 사전에 생성된 지식을 바탕으로 답변을 생성하는 기법.

  1. 질문: "재생 가능 에너지의 중요성에 대해 설명해 주세요."
    답변: "재생 가능 에너지원인 태양광과 풍력은 화석 연료에 대한 의존도를 줄이고, 온실가스 배출을 낮추며, 지속 가능한 에너지 솔루션을 제공합니다."
  2. 질문: "생성된 지식을 바탕으로, 산림 파괴가 생물 다양성에 미치는 영향을 설명해 주세요."
    답변: "산림 파괴는 서식지 상실을 초래하여 많은 종의 생존을 위협하고, 생물 다양성을 감소시키며, 생태계를 파괴합니다."
  3. 질문: "생성된 지식을 사용하여, 균형 잡힌 식단의 이점을 설명해 주세요."
    답변: "균형 잡힌 식단은 필수 영양소를 제공하며, 전반적인 건강을 지원하고, 면역 체계를 강화하며, 만성 질환의 위험을 줄여줍니다."

Synthetic Prompting

설명: 인공적으로 생성된 데이터를 사용하여 모델을 학습시키고 답변을 생성하는 기법.

  1. 질문: "인공지능 모델 훈련에 합성 데이터를 사용하는 방법은?"
    답변: "합성 데이터는 실제 데이터를 증강하여 모델의 정확도를 높이고, 다양한 시나리오를 제공하여 일반화를 개선하며, 실제 데이터 사용을 피함으로써 개인정보를 보호합니다."
  2. 질문: "손으로 쓴 숫자를 인식하는 모델을 훈련하기 위한 합성 데이터셋을 생성해 주세요."
    답변: "다양한 글꼴, 크기 및 방향의 숫자 이미지를 생성하여, 견고한 모델 훈련을 위해 광범위한 스타일을 포함시킵니다."
  3. 질문: "기계 학습에서 합성 데이터를 사용하는 장점은 무엇인가요?"
    답변: "합성 데이터는 데이터 다양성을 높이고, 프라이버시를 보호하며, 데이터 수집에 드는 비용과 시간을 줄일 수 있습니다."

MRKL (Modular Reasoning, Knowledge and Language)

설명: 모듈화된 추론, 지식 및 언어를 결합하여 문제를 해결하는 기법.

  1. 질문: "MRKL 시스템을 사용하여 기후 변화의 주요 요인을 설명해 주세요."
    답변: "1. 모듈화된 추론: 과학적 데이터와 패턴 분석. 2. 지식: 기후 과학 데이터베이스 참조. 3. 언어: 일관된 설명 생성. 주요 요인에는 온실가스 배출, 산림 파괴, 산업 활동이 포함됩니다."
  2. 질문: "MRKL 시스템이 복잡한 수학 문제를 어떻게 해결하나요?"
    답변: "1. 모듈화된 추론: 문제를 작은 부분으로 나눔. 2. 지식: 수학 원리와 공식을 사용. 3. 언어: 각 단계를 명확하게 설명. 예: 2x + 3 = 11을 풀기. - 양변에서 3을 뺌: 2x = 8. - 양변을 2로 나눔: x = 4."
  3. 질문: "MRKL 시스템이 의료 진단에 어떻게 도움이 될 수 있나요?"
    답변: "1. 모듈화된 추론: 환자의 증상과 검사 결과 분석. 2. 지식: 의료 데이터베이스 및 문헌 참조. 3. 언어: 상세한 진단 보고서 제공. 예: 흉통과 호흡 곤란을 겪는 환자의 경우, 시스템은 심장 질환이나 호흡기 질환을 잠재적 원인으로 식별할 수 있습니다."

Self Refine

설명: 모델이 첫 번째 답변을 생성한 후 이를 스스로 검토하고 수정하여 최종 답변을 제공하는 기법.

  1. 질문: "지구 온난화의 원인은 무엇인가요?"
    첫 번째 답변: "지구 온난화는 화석 연료의 온실가스 배출로 인해 발생합니다."
    수정된 답변: "지구 온난화는 주로 화석 연료의 연소, 산림 파괴 및 산업 활동으로 인한 온실가스 배출로 인해 지구의 평균 온도가 상승하는 것입니다."
  2. 질문: "물 순환을 설명해 주세요."
    첫 번째 답변: "물 순환에는 증발, 응결, 강수가 포함됩니다."
    수정된 답변: "물 순환에는 물이 증발하여 대기로 올라가고, 구름으로 응결하며, 비나 눈으로 지상에 다시 떨어지는 과정이 포함됩니다."
  3. 질문: "재활용의 중요성을 설명해 주세요."
    첫 번째 답변: "재활용은 쓰레기를 줄이는 데 도움이 됩니다."
    수정된 답변: "재활용은 매립지의 쓰레기를 줄이고, 천연 자원을 보존하며, 에너지를 절약하고, 오염과 온실가스 배출을 감소시키는 데 중요합니다."

ReAct Prompting

설명: 반응형 프롬프트를 사용하여 상호작용을 유도하는 기법.

  1. 질문: "당신은 고객 서비스 챗봇입니다. 고객을 환영하고 어떻게 도울 수 있을지 물어보세요."
    답변: "안녕하세요! 저희 서비스에 오신 것을 환영합니다. 무엇을 도와드릴까요?"
  2. 질문: "당신은 일정 관리 가상 비서입니다. 회의의 세부 사항을 물어보세요."
    답변: "물론입니다. 회의 날짜, 시간, 참가자를 알려주실 수 있나요?"
  3. 질문: "당신은 AI 튜터입니다. 광합성의 개념을 설명하고 학생에게 질문이 있는지 물어보세요."
    답변: "광합성은 식물이 햇빛을 에너지로 변환하는 과정입니다. 이 과정에서 이산화탄소와 물을 흡수하여 포도당과 산소를 만듭니다. 이 과정에 대해 질문이 있나요?"

Automatic Prompt Engineering

설명: 자동으로 생성된 프롬프트를 사용하여 모델의 응답을 유도하는 기법.

  1. 질문: "책의 요약을 요청하는 가장 좋은 방법을 찾아보세요."
    자동 생성된 프롬프트: "'1984' by 조지 오웰의 주요 내용을 요약해 주세요."
  2. 질문: "명상에 대한 이점을 묻는 가장 효과적인 프롬프트를 찾아보세요."
    자동 생성된 프롬프트: "정기적으로 명상을 하면 어떤 주요 이점이 있나요?"
  3. 질문: "공공 연설 능력을 향상시키기 위한 조언을 요청하는 프롬프트를 생성해 주세요."
    자동 생성된 프롬프트: "공공 연설 능력을 향상시키기 위한 팁과 기술을 알려주세요."

ChatGPT와 Gemini를 활용하여 작성된 내용입니다.

 

'IT > Etc' 카테고리의 다른 글

LLM App Builder Tool - Flowise  (0) 2024.07.23
시스템 설계 - C4 Model  (0) 2024.06.21
LlamaIndex  (0) 2024.05.09
셀룰러가 없는 Y700과 아이폰 테더링  (0) 2024.03.30
XOps 간 비교(DevOps, DataOps, MLOps, AIOps)  (0) 2023.08.09

댓글