LLMops

[Prompt Engineering] 프롬프트 엔지니어링의 심화 기법들(1)

dong_seok 2025. 4. 30. 22:03

대규모 언어 모델(LLM)의 능력이 발전함에 따라, 더 정교하고 효과적인 프롬프트 엔지니어링 기법들이 등장하고 있습니다. 기본적인 Zero-shot, Few-shot, Chain-of-Thought 프롬프팅을 넘어서, 복잡한 문제 해결과 정확도 향상을 위한 고급 프롬프트 기법들을 알아보겠습니다.

 

1. Generate Knowledge Prompting (GoT): 지식 기반 추론 강화

1) 개념

  • 언어 모델이 추론 전에 관련 지식을 먼저 생성하도록 하는 방법
  • 답변 생성 전 모델이 스스로 관련 정보를 가져오고 활용하는 방식
  • 할루시네이션(환각) 현상을 완화하기 위한 효과적인 접근법

2) 주요 목적

  • 모델의 환각 현상 감소 및 사실 기반 답변 강화
  • 추가 지식을 통한 추론 능력 향상
  • 오픈 Q-A 테스크 방식을 활용한 자발적 지식 생성

3) 작동 방식: 3단계 프로세스

  • 1단계: 지식 생성
    • Few-shot 프롬프팅을 사용해 모델로부터 관련 정보와 사실 생성
    • 질문과 관련된 배경 지식, 개념, 원리 등을 명시적으로 끌어냄
  • 2단계: 지식 통합
    • 생성된 지식을 프롬프트에 통합
    • 지식의 신뢰도 평가 및 관련성 확인
  • 3단계: 답변 생성
    • 확보한 지식을 바탕으로 최종 답변 도출
    • 근거 기반의 정확한 추론 수행

4) 프롬프트 예시

질문: 식물의 광합성 과정에서 빛 에너지는 어떻게 화학 에너지로 변환되나요?

단계 1: 이 질문에 답하기 위해 필요한 관련 지식을 먼저 정리해보세요.

[지식 생성 공간]
광합성은 식물이 빛 에너지를 이용해 이산화탄소와 물로부터 포도당을 합성하는 과정입니다.
광합성의 주요 단계는 명반응과 암반응으로 나눌 수 있습니다.
명반응은 엽록체의 틸라코이드 막에서 일어나며, 빛 에너지를 흡수해 ATP와 NADPH 형태의 화학 에너지로 변환합니다.
빛 에너지는 광계 I과 광계 II의 엽록소 분자에 의해 포착됩니다.
광계 II에서는 물 분자를 분해해 전자를 방출하고, 이 전자는 전자 전달계를 통해 ATP를 생성합니다.
광계 I에서는 추가 빛 에너지를 흡수하여 NADP+를 NADPH로 환원시킵니다.
암반응(캘빈 회로)에서는 명반응에서 생성된 ATP와 NADPH를 사용하여 이산화탄소를 포도당으로 고정합니다.

단계 2: 위 정보를 바탕으로 질문에 답변해주세요.

[답변 생성 공간]

5) 장점

  • 사실에 기반한 정확도 향상
  • 복잡한 도메인 지식이 필요한 질문에 효과적
  • 모델의 추론 과정이 투명하게 드러남

6) 한계점

  • 지식 생성 단계에서의 오류가 최종 답변에 영향
  • 프롬프트 길이 증가로 인한 토큰 소비 증가
  • 간단한 질문에는 불필요한 오버헤드 발생

2. Prompt Chaining: 복잡한 작업의 단계적 분해

1) 개념

  • 복잡한 작업을 작고 관리하기 쉬운 하위 작업으로 나누는 기법
  • 각 하위 작업을 별도의 프롬프트로 처리하는 연쇄적 접근법
  • 한 프롬프트의 출력이 다음 프롬프트의 입력으로 사용되는 파이프라인 구조

2) 핵심 원리

  • 문제 분해(Decomposition): 복잡한 작업을 독립적인 하위 작업으로 분할
  • 순차적 처리(Sequential Processing): 각 단계를 순서대로 처리하여 최종 결과 도출
  • 피드백 루프(Feedback Loop): 필요시 이전 단계로 돌아가 수정 및 개선 가능

3) 주요 장점

  • 다단계 작업 처리 강화
    • 조사, 계획, 작성 등 여러 단계가 필요한 작업에서 고품질 결과 보장
    • 각 단계별 최적화된 프롬프트 설계 가능
  • 복잡한 지시사항 관리 개선
    • LLM이 한 번에 처리하기 어려운 복잡한 작업을 단계적으로 분해
    • 각 단계의 작업 성능을 독립적으로 향상 가능
  • 출력물 검증 및 품질 향상
    • 중간 결과를 검증하고 필터링하는 단계 추가 가능
    • 최종 출력물의 안전성, 정확성, 관련성 향상
  • 병렬 처리 효율성
    • 독립적인 하위 작업을 병렬로 처리해 시간 절약
    • 리소스 활용 최적화 가능

4) 구현 예시: 연구 논문 작성 지원

# 단계 1: 주제 분석 및 정의
프롬프트: "인공지능 윤리에 관한 연구 주제를 구체화해 주세요. 주요 연구 질문 3개를 제안하세요."
출력: [연구 질문 리스트]

# 단계 2: 문헌 조사 가이드
프롬프트: "다음 연구 질문에 대한 문헌 조사를 위해 중요한 키워드와 검색 전략을 제안해 주세요: [단계 1 출력]"
출력: [키워드 및 검색 전략]

# 단계 3: 개요 작성
프롬프트: "다음 연구 질문과 키워드를 바탕으로 연구 논문의 상세 개요를 작성해 주세요: [단계 1, 2 출력]"
출력: [논문 개요]

# 단계 4: 각 섹션 작성
프롬프트: "다음 개요의 '방법론' 섹션을 상세히 작성해 주세요: [단계 3 출력]"
출력: [방법론 섹션 내용]

# 단계 5: 검토 및 개선
프롬프트: "다음 '방법론' 섹션을 검토하고 개선점을 제안해 주세요: [단계 4 출력]"
출력: [개선된 방법론 섹션]

5) 활용 영역

  • 복잡한 창작 작업 (에세이, 기사, 소설 등)
  • 다단계 분석 및 의사결정 프로세스
  • 코드 생성 및 디버깅
  • 복잡한 정보 합성 및 요약

6) 구현 시 고려사항

  • 적절한 작업 분해 수준 결정
  • 각 단계 간 정보 전달의 일관성 유지
  • 에러 전파 방지 메커니즘 구축
  • 전체 파이프라인의 효율성과 비용 균형

3. Tree of Thoughts (ToT): 전략적 탐색을 통한 문제 해결

1) 개념

  • Chain-of-Thought를 확장한 보다 전략적인 문제 해결 프레임워크
  • 여러 가능한 사고 경로를 트리 구조로 탐색하는 접근법
  • 문제 해결 과정에서 다양한 가능성을 탐색하고 평가하여 최적의 해결책 도출

2) CoT와의 차이점

  • CoT는 선형적(Linear)으로 한 사고 경로만 따라가는 반면, ToT는 다양한 경로를 동시에 탐색
  • ToT는 중간에 회귀하며 더 유망한 경로를 시도하는 적응적 탐색 방식 채택
  • 문제 해결의 각 단계에서 여러 대안을 평가하고 선택하는 의사결정 트리 구조

3) 4단계 작동 과정

  • 1단계: 생각 분해(Thought Decomposition)
    • 문제를 여러 중간 단계로 나누어 구조화
    • 각 단계에서 필요한 의사결정 포인트 식별
    • 문제 해결을 위한 전략적 계획 수립
  • 2단계: 생각 생성(Thought Generation)
    • 각 단계에서 여러 가능한 "생각"(사고 경로) 생성
    • 다양한 접근법과 가능성 탐색
    • 창의적이고 다각적인 해결책 모색
  • 3단계: 생각 평가(Thought Evaluation)
    • 생성된 각 생각의 유망성과 타당성 평가
    • 문제 해결 가능성과 효율성 기준으로 점수 부여
    • 가장 유망한 사고 경로 식별
  • 4단계: 검색 알고리즘(Search Strategy)
    • 깊이 우선 탐색(DFS) 또는 너비 우선 탐색(BFS) 전략 적용
    • 가장 유망한 경로를 우선적으로 탐색하는 전략적 접근
    • 필요시 백트래킹을 통한 대안 경로 탐색

 

고급 프롬프트 엔지니어링 기법들은 LLM의 능력을 한 단계 더 끌어올리는 중요한 도구입니다. Generate Knowledge Prompting은 지식 기반 추론을, Prompt Chaining은 복잡한 작업의 단계적 분해를, Tree of Thoughts는 전략적 문제 해결 능력을 강화합니다. 이러한 고급 기법들을 적절히 활용하면 더 정확하고, 신뢰할 수 있으며, 복잡한 작업도 효과적으로 수행할 수 있습니다.

 

참고자료

패스트 캠퍼스 - 국내 공채 1호 프롬프트 엔지니어 강수진의 프롬프트 엔지니어링 A to Z