프롬프트 최적화로 LLM 성능을 극대화하는 4가지 전략

0

오늘날 ChatGPT, Claude와 같은 거대 언어 모델(LLM)은 우리 일상과 업무 환경에 깊숙이 자리 잡았습니다. 이러한 생성형 AI 도구들의 성능을 최대한 끌어내는 데 있어 ‘프롬프트 최적화’는 필수적인 요소로 자리 잡고 있습니다. 적절한 프롬프팅 전략을 통해 질문을 더 명확하게 하거나, 복잡한 문제를 분해하거나, 검색 결과의 관련성을 높일 수 있기 때문입니다.

이 글에서는 NTT Data의 AI 엔지니어 Isabel Gonzalez가 연구하고 정리한 ‘프롬프트 최적화’의 핵심 요소들을 살펴보겠습니다. Isabel은 머신러닝, 자연어 처리, 컴퓨터 비전 영역에서 풍부한 경험을 갖춘 AI 전문가로, 혁신적인 기술 연구 및 개발에 열정을 가지고 있습니다.

pexels

확장(Expansion) 전략

프롬프트 최적화의 가장 기본적인 기법인 ‘확장’은 원래 질의에 추가적인 관련 정보를 보완하는 방법입니다. 특히 맥락상 공백을 채우거나, 숨겨진 연관성을 발견하거나, 초기 프롬프트가 지나치게 모호한 경우에 효과적입니다.

내부 확장과 외부 확장

확장 전략은 크게 ‘내부 확장’과 ‘외부 확장’ 두 가지로 나눌 수 있습니다:

내부 확장(Internal Expansion)

내부 확장은 LLM에 이미 내장된 지식을 활용하는 방식입니다. 원래 질의를 분석하고 맥락적 단서, 동의어, 연관된 아이디어를 추가해 모델이 질의를 더 탄탄한 버전으로 재구성할 수 있게 합니다.

예시: “기후 변화의 영향은 무엇인가?”라는 프롬프트에 “생태계에 대한 영향, 지구의 온도 상승, 경제적인 영향”과 같은 구문을 포함시켜 모델이 더 포괄적인 응답을 하도록 유도할 수 있습니다.

내부 확장은 필요한 정보가 이미 모델의 지식 기반에 포함되어 있고, 시간이 지나도 변화가 크지 않은 주제에 특히 효과적입니다.

외부 확장(External Expansion)

외부 확장은 웹이나 구조화된 지식 베이스 등 모델 외부의 출처에서 보충 데이터를 결합하는 방식입니다. 이 방법은 시간에 따라 정보가 업데이트되거나 최신 정보가 필요한 주제에 특히 유용합니다.

예시: “2024년 올림픽은 어디에서 개최될까요?”와 같은 질문은 정확한 답변을 위해 관련된 업데이트나 공식 발표를 검색하는 방식으로 확장할 수 있습니다.

외부 확장은 정적인 사전 학습 지식과 역동적으로 변화하는 실세계 정보 사이의 간극을 메워주는 역할을 합니다. RAG(Retrieval-Augmented Generation) 시스템이 바로 이러한 외부 확장의 대표적인 응용 사례입니다.

분해(Decomposition) 전략

‘분해’는 복잡한 질의를 더 단순한 하위 질문들로 나누어 모델이 처리해야 하는 인지적 부담을 줄이고, 정확한 응답을 생성할 가능성을 높이는 전략입니다. 질의의 각 구성 요소를 독립적으로 처리하여 최종적으로 일관성 있고 포괄적인 답변을 만들어냅니다.

복잡한 질의를 하나의 프롬프트로 처리하면 모델에 과부하가 걸려 모호하거나 불완전한 답변이 나올 수 있습니다. 분해 전략은 명확성을 높이고, 모델이 좁은 맥락에 집중할 수 있게 하며, 확장성도 향상시켜 줍니다.

순차적 분해(Sequential Decomposition)

논리적 진행을 따르는 질의의 경우, 작업을 단계별로 나누는 방식입니다.

원래 질의: “2024 올림픽에서 중국은 탁구와 배드민턴 중 어느 종목에서 더 많은 메달을 획득했나요?”

분해된 질의:

  • “2024 올림픽에서 중국은 탁구에서 몇 개의 메달을 획득했나요?”
  • “2024 올림픽에서 중국은 배드민턴에서 몇 개의 메달을 획득했나요?”

이렇게 분해된 하위 질의들에 대한 답변을 종합하여 더 많은 메달을 획득한 종목을 파악할 수 있습니다.

병렬적 분해(Parallel Decomposition)

여러 독립적인 사실이 필요한 질의의 경우, 구성 요소들을 동시에 처리하는 방식입니다.

원래 질의: “삼림 벌채가 환경과 경제에 미치는 영향은 무엇인가요?”

분해된 질의:

  • “삼림 벌채가 환경에 미치는 영향은 무엇인가요?”
  • “삼림 벌채가 경제에 미치는 영향은 무엇인가요?”

분해된 각 하위 질의는 문제의 서로 다른 측면을 탐구하여 중요한 세부 사항이 누락되지 않도록 합니다.

모호성 제거(Disambiguation) 전략

언어는 본질적으로 미묘한 뉘앙스 차이가 있기 때문에, 비슷하게 들리는 질의도 매우 다르게 해석될 수 있습니다. ‘모호성 제거’ 전략은 이러한 불명확함을 해소하기 위해 질의를 구체화하고 명확히 하는 방법입니다.

모호한 부분을 명확하게 표현하기

원래 질의: “2024 올림픽 탁구 챔피언은 누구인가요?”

명확하게 표현된 질의:

  • “2024 올림픽 남자 단식 탁구 챔피언은 누구인가요?”
  • “2024 올림픽 여자 단식 탁구 챔피언은 누구인가요?”

이런 방식으로 질문하면 두 가지 카테고리에 대해 정확한 답변을 얻을 수 있습니다.

멀티 턴 대화를 통한 명확화

대화형 상황에서는 이전 대화의 맥락을 반영하여 질의를 재구성함으로써 명확성을 높일 수 있습니다.

사전 대화 맥락:

  • 사용자: “금메달은 누가 땄나요?”
  • 모델: “어떤 종목에서요?”
  • 사용자: “탁구요.”

멀티 턴을 통해 명확하게 구성된 질의: “2024 올림픽 탁구 종목에서 누가 금메달을 획득했나요?”

범위가 넓은 질의의 구체화

원래 질의: “기후 변화의 영향이 무엇인가요?”

구체화된 질의:

  • “기후 변화가 환경에 미치는 영향은 무엇인가요?”
  • “기후 변화가 경제에 미치는 영향은 무엇인가요?”

이 방법은 모델이 넓은 범위의 문제에 대해 다양한 측면을 포괄적으로 탐구할 수 있게 해줍니다.

추상화(Abstraction) 전략

‘추상화’는 세부적인 내용에서 전반적인 목표로 초점을 이동시켜, 모델이 더 포괄적인 정보를 종합하고 유의미한 수준에서 추론할 수 있게 하는 전략입니다. 이 방법은 특히 분해와 같은 상세한 단계적 분석이 오히려 과정을 복잡하게 만들거나 의미를 희석시킬 수 있는 상황에서 유용합니다.

범위(Scope) 확장하기

원래 질의: “중국은 올림픽을 몇 번 개최했나요?”

추상화된 질의: “중국의 올림픽 개최 역사는 어떠한가요?”

이렇게 질의를 추상화하고 재구성함으로써, 모델이 단순한 수치 정보뿐 아니라 더 넓은 관점에서 맥락과 추가적인 통찰력을 제공할 수 있도록 유도합니다.

핵심 개념 식별하기

원래 질의: “지난 10년간 브라질의 산림 벌채가 경제에 미친 주요 영향은 무엇인가요?”

추상화된 질의: “산림 벌채가 경제에 미치는 영향은 무엇인가요?”

시간적, 지리적 제약을 제거하여 모델이 세부 사항보다 기초적인 지식을 먼저 탐구할 수 있게 함으로써 더 포괄적인 응답을 이끌어냅니다.

프롬프팅 전략 결합하기

추상화는 다른 프롬프팅 전략과 잘 결합됩니다. 예를 들어:

  • 핵심 개념 파악을 위해 추상적인 질의로 시작
  • 이후 더 작은 하위 질의로 나누기 위해 ‘분해’ 전략 사용
  • 관련 세부 사항이나 데이터로 질의를 보강하기 위해 ‘확장’ 전략 적용

결론: 프롬프트 최적화의 미래

프롬프트 최적화는 모델의 작동 원리에 대한 이해와 질의 개선을 위한 구조화된 접근 방식을 결합한 ‘예술이자 과학’입니다. 위에서 소개한 ‘확장’, ‘분해’, ‘모호성 제거’, ‘추상화’의 원칙을 유연하게 활용하고 결합함으로써, 개발자들은 다양한 애플리케이션에서 LLM의 잠재력을 최대한 끌어낼 수 있습니다.

이 분야가 발전해 가면서, 프롬프팅 기법을 중요한 벤치마크와 다양한 인프라 도구들에 통합하는 것은 LLM 기반 시스템의 효과와 ROI를 높이는 데 있어 핵심이 될 것입니다.

더 자세하고 기술적인 내용에 관심이 있다면, Mingyang Song과 Mao Zheng의 연구 ‘A Survey of Query Optimization in Large Language Models’를 읽어보시기 바랍니다. 이 연구는 LLM 질의 최적화에 대한 포괄적이고 기초적인 내용을 제공합니다.

참고 자료

답글 남기기