1. 프롬프트 엔지니어링의 이해와 중요성 [0]

thumbnail 프롬프트 엔지니어링은 LLM(대규모 언어 모델)의 행동을 원하는 대로 이끌어내기 위해 자연어를 활용하는 기술이며, 반복적인 개선 과정을 통해 최적의 결과를 도출한다.

1.1. 프롬프트 엔지니어링의 개념과 발전 [0]

  1. 프롬프트 엔지니어링의 정의 [0]
    1. 프롬프트 엔지니어링은 LLM에 입력하는 프롬프트(자연어)를 통해 원하는 결과값을 얻는 기술이다. [4]
    2. 이는 마치 동네 분위기를 살피듯, 프롬프트 엔지니어링 기법들을 모아 카테고리화하고 발전 과정을 파악하는 개념이다. [2]
  2. 반복적 개선 과정의 중요성 [4]
    1. LLM에 프롬프트를 한 번 입력하여 만족스러운 결과를 얻기 어렵다. [4]
    2. 따라서 프롬프트 엔지니어링은 이터레이티브(iterative), 즉 반복적인 개선 과정을 거쳐 LLM과 상호작용하며 결과를 얻어내는 작업이다. [5]
  3. 최신 연구 동향 [7]
    1. "A systematic survey of prompt engineering in LLM techniques and applications" 논문은 프롬프트 엔지니어링 기법들을 체계적으로 정리한 교과서 같은 자료이다. [8]
    2. 이 논문의 2024년 버전 1과 2025년 3월 버전 2를 비교했을 때, 추론(Reasoning) 및 논리(Logic) 관련 기법들이 크게 증가했다. [11]
    3. 이는 체인 오브 X(Chain of X) 패러다임(예: Chain of Thought, Chain of Action)의 시대가 도래했음을 의미한다. [17]

1.2. 프롬프트 엔지니어링의 핵심 가치 [19]

  1. 필수적인 기술로서의 위상 [19]
    1. 프롬프트 엔지니어링은 LLM뿐만 아니라 비전 모델에서도 필수적인(indispensable) 기술로 평가받는다. [21]
  2. 기존 패러다임과의 차별점 [24]
    1. 모델의 파라미터를 업데이트하는 대신, 자연어 프롬프트를 통해 사전 학습된 모델의 행동을 원하는 대로 도출하는 기술이기 때문에 중요하다. [24]
    2. 이는 모델 학습 및 사용 방식에 있어 기존과는 다른 전환적 패러다임(transitional paradigm)을 제시한다. [25]
  3. 주요 장점 [26]
    1. 학습 데이터 없이도 답변을 잘 생성하거나, 특정 작업에 대한 성능을 자연어만으로 끌어낼 수 있다. [26]
  4. 빠른 발전 속도 [27]
    1. 챗GPT 출시(2022년) 이후 2025년 6월까지 프롬프트 엔지니어링 기술은 매우 빠르게 발전하고 있다. [27]
    2. 초기에는 제로샷(Zero-shot)이나 퓨샷(Few-shot) 프롬프트와 같이 예제 사용 여부에 따른 기초적인 기법이 주를 이루었다. [28]
    3. 현재는 체인 오브 코드(Chain of Code) 프롬프트와 같은 복잡한 방법론으로 확장되고 있다. [30]
    4. 이는 현업에서 파인튜닝(Fine-tuning)보다 프롬프트 엔지니어링으로 해결할 수 있는 문제의 범위가 넓어지고 있음을 의미한다. [31]

2. 2025년 프롬프트 엔지니어링의 주요 흐름과 기법 [32]

thumbnail 2025년 프롬프트 엔지니어링은 최소 학습(No-tuning), LLM 사고 강화, 사실성 및 신뢰도 향상, 자동화 및 적응의 네 가지 핵심 흐름을 중심으로 발전하고 있다.

2.1. 프롬프트 엔지니어링의 네 가지 핵심 흐름 [32]

  1. 최소 학습(No-tuning) [32]
    1. 개념: 사전 학습된 LLM에 별도의 파인튜닝 없이 최소한의 예제만으로 활용하는 기법이다. [62]
    2. 장점: 빠른 실험과 적용이 가능하다. [63]
    3. 주요 기법:
      1. 제로샷 프롬프트(Zero-shot Prompting): 예제를 제공하지 않고 답변을 유도한다. [36]
      2. 퓨샷 프롬프트(Few-shot Prompting): 소수의 예제를 제공하여 모델의 성능을 향상시킨다. [36]
  2. LLM 사고 강화 [38]
    1. 개념: 프롬프트 엔지니어링만으로 언어 모델의 사고 능력을 향상시켜 복잡한 문제를 해결하게 하는 방식이다. [64]
    2. 주요 기법:
      1. 체인 오브 소트(Chain of Thought, CoT): 모델이 추론 과정을 단계별로 생각하도록 유도하여 복잡한 문제 해결 능력을 높인다. [17]
      2. 렛츠 띵크 스텝 바이 스텝(Let's Think Step by Step): CoT와 유사하게 단계별 사고를 유도한다. [44]
      3. 자기 일관성(Self-Consistency): 모델이 여러 추론 경로를 탐색하여 일관된 답변을 도출한다. [44]
      4. 트리 오브 소트(Tree of Thoughts) 및 그래프 오브 소트(Graph of Thoughts): 탐색 툴이나 그래프 구조를 활용하여 깊이 있는 추론을 통해 문제 해결 능력을 대폭 상승시킨다. [44]
  3. 사실성 및 신뢰도 향상 [38]
    1. 개념: LLM의 환각(hallucination) 현상을 줄이고 외부 지식을 활용하여 답변의 정확도를 높이는 기법이다. [38]
    2. 주요 기법:
      1. 검증 체인(Chain of Verification): 교차 검증을 통해 허위 정보를 감소시킨다. [45]
      2. 리트리벌 프롬프트(Retrieval Prompting): 외부 검색(예: 위키 지식)을 통해 정보를 호출하고 통합하여 답변의 정확도를 높인다. [45]
  4. 자동화 및 적응 [38]
    1. 개념: 사람이 직접 프롬프트를 작성하는 대신, 알고리즘이 최적의 프롬프트를 탐색하거나 사용자 피드백에 따라 동적으로 프롬프트를 변경하는 방식이다. [38]
    2. 주요 기법:
      1. 자동 프롬프트 엔지니어(Automatic Prompt Engineer, APE): 최적화된 알고리즘이 프롬프트를 탐색한다. [47]
      2. 그래디언트 기반(Gradient-based) 및 강화 학습 기반(RL-based) 프롬프트 튜닝: 사람이 일일이 실험하지 않고 알고리즘이 최적의 프롬프트를 찾는다. [71]
      3. 액티브 프롬프트(Active Prompting): 사용자의 피드백을 실시간으로 반영하여 프롬프트를 동적으로 처리한다. [46]
      4. 랭그래프(LangGraph) 및 에이전트(Agents): 동적인 상호작용을 통해 프롬프트를 적응시킨다. [46]
      5. 멀티모달 프롬프팅(Multimodal Prompting): 이미지, 코드 생성 등 다양한 형태의 데이터를 처리한다. [73]

2.2. 프롬프트 엔지니어링 발전의 네 가지 축 [75]

  1. 수동에서 자동화로 [77]
    1. 과거에는 사람이 직접 프롬프트를 작성했지만, 현재는 최적화 알고리즘이 최적의 프롬프트를 찾아주는 방향으로 발전하고 있다. [78]
  2. 단일 추론에서 복잡한 추론으로 [80]
    1. 과거에는 단일 프롬프트가 단일 답변을 생성했지만, 현재는 복잡한 추론 단계를 거쳐 모델의 사고 과정을 늘리고 지연 시간을 확보하여 복잡한 문제를 해결한다. [80]
  3. 내장 지식 의존에서 외부 지식 활용으로 [82]
    1. 과거에는 모델 내장 지식에만 의존했지만, 현재는 에이전트(Agentic) 방식과 툴 유즈(Tool Use)를 통해 외부 API나 지식을 활용하여 모델의 한계를 극복한다. [82]
  4. 정적에서 적응적/상호작용 방식으로 [84]
    1. 과거에는 한 번 설계된 프롬프트가 고정되어 사용되었지만, 현재는 사용자의 맥락에 따라 프롬프트를 실시간으로 재생성하고 수정하는 동적인(interactive) 방식으로 발전하고 있다. [84]
    2. 이는 모델의 단점을 보완할 수 있지만, 시간 지연이나 비용 증가와 같은 단점도 존재한다. [85]
    3. 메타인지(Metacognition): 결과 도출 전에 자기 검증(Self-verification) 및 자기 수정 루프(Self-correction loop)를 도입하여 신뢰성을 강화하고 정확한 결과물을 얻는 방향으로 발전하고 있다. [87]