프롬프트 엔지니어링 (prompt engineering)

컴퓨터과학·AI
한 줄 정의: 모델의 가중치는 바꾸지 않고, 입력 지시문(프롬프트)의 구성과 표현을 설계해 언어 모델이 원하는 답을 내놓도록 유도하는 기법입니다.

쉽게 풀면

같은 사람에게 일을 시켜도 "이거 해줘"라고 대충 말하는 것과, 배경 설명과 예시를 곁들여 구체적으로 지시하는 것은 결과물의 질이 다릅니다. 프롬프트 엔지니어링은 언어 모델에게 "어떤 순서로, 어떤 형식으로, 어떤 예시와 함께" 질문을 던질지 설계해서, 모델 내부 가중치는 그대로 둔 채 출력 품질을 끌어올리는 작업입니다. 예시를 몇 개 보여주거나, 단계별로 생각하도록 지시하는 방식이 대표적입니다.

왜 중요한가

대규모 언어 모델을 파인튜닝하려면 많은 연산 자원과 데이터가 필요한 반면, 프롬프트 엔지니어링은 모델을 그대로 둔 채 입력 설계만으로 성능을 끌어올릴 수 있어 비용 효율적인 대안으로 주목받는다. 이 때문에 자연어처리, 인간-컴퓨터 상호작용, 응용 AI 연구 전반에서 특정 과제에 모델을 적용하는 가장 손쉬운 진입점으로 다뤄지며, 어떤 프롬프트 구조가 왜 더 나은 결과를 내는지를 설명하는 것 자체가 하나의 연구 주제이기도 하다.

논문에서는 이렇게 쓰입니다

"동일한 사전학습 모델에 대해 프롬프트 엔지니어링만으로 정답률이 62%에서 78%로 향상되었다."

이 문장은 모델을 재학습하거나 파인튜닝하지 않고, 입력 프롬프트의 형식과 예시 구성만 바꿔서 성능이 개선되었다는 의미입니다.

"의료 질의응답 과제에서 단계별 추론을 유도하는 프롬프트 엔지니어링 기법을 적용한 결과, 진단 근거의 논리적 일관성이 개선되었다."

의료 AI 응용 분야에서 프롬프트 설계를 통해 답변의 품질뿐 아니라 추론 과정의 신뢰성을 높이는 사례를 보고할 때 쓰이는 표현입니다.

"코드 생성 과제에서는 문제 설명과 함께 소수의 예시를 포함한 프롬프트 엔지니어링이 예시가 없는 프롬프트보다 일관되게 높은 성능을 보였다."

소프트웨어공학 분야에서 코드 생성 모델의 성능을 프롬프트 구성 방식에 따라 비교할 때도 활용됩니다.

조금 더 깊게 보면

프롬프트 엔지니어링에는 예시를 몇 개 제공하는 퓨샷 프롬프팅, 예시 없이 지시문만 주는 제로샷 프롬프팅, "단계별로 생각해보자"처럼 중간 추론 과정을 유도하는 사고연쇄(chain-of-thought) 프롬프팅 등 여러 하위 기법이 있으며, 과제 성격에 따라 어떤 기법이 더 효과적인지가 달라진다. 최근에는 프롬프트 자체를 사람이 손으로 다듬는 대신 알고리즘이나 별도 모델을 이용해 자동으로 탐색·최적화하는 접근도 연구되고 있다.

주의할 점

프롬프트 엔지니어링은 파인튜닝과 달리 모델의 가중치를 전혀 수정하지 않습니다. 따라서 효과가 프롬프트 표현에 민감하게 좌우되며, 같은 의미라도 문구를 조금만 바꾸면 결과가 크게 달라질 수 있다는 한계가 있습니다.

관련 용어