LLM의 답변을 결정하는 시스템 프롬프트란?

최근 GPT-4o와 Claude 3.7과 같은 거대언어모델(LLM)의 성능이 빠르게 향상되고 상향평준화됨에 따라, 차별화된 AI 답변을 생성하기 위한 프롬프트 엔지니어링이 다시 중요해지고 있습니다. 특히 사용자가 직접 입력하는 유저 프롬프트와 달리, LLM의 기본 행동 방식과 답변의 품질, 톤앤매너를 결정하는 시스템 프롬프트는 AI 출력물의 일관성과 품질을 좌우하는 핵심 요소입니다. 이 글에서는 시스템 프롬프트의 중요성과 효과적인 AI 응답 생성을 위한 시스템 프롬프트 설계 방법에 대해 알아봅니다.

LLM의 답변을 결정하는 시스템 프롬프트란?

GPT-4o와 Claude-3.7 등 빅테크 기업들이 성능좋은 SoTA 모델을 앞다투어 출시하고 초거대언어모델(이하 LLM)의 성능이 상향평준화 되면서 LLM 답변 차별화를 위한 대안으로 프롬프트 엔지니어링(Prompt Engineering)이 또다시 주목받고 있다. 그런데 프롬프트에는 유저가 직접 사용시 입력하는 유저 프롬프트(User Prompt) 뿐만 아니라 전체적인 답변 내용을 통제하는 시스템 프롬프트(System Prompt)도 있다. 여러 종류의 프롬프트 중에서도 LLM의 역할을 지정하고 답변 품질과 톤앤매너를 통제하는 시스템 프롬프트는 매우 중요하다.

시스템 프롬프트의 개념 (출처 : https://help.lucid.co/)

한마디로 시스템 프롬프트는 LLM에 대한 기초 설정값을 지정해 주는 프롬프트라고 할 수 있다. 시스템 프롬프트는 직접 모델의 하이퍼파라미터(hyperparameter)를 조절하지 않으면서도 LLM의 답변을 원하는 방식대로 조정할 수 있다는 점에서 매우 가성비가 좋은 방법이라고 할 수 있다. 이처럼 LLM 자체를 직접 수정하지 않으면서도 추론(Inference) 과정에서 프롬프트를 통해 원하는 방식으로 답변을 얻어내는 방식을 통해 모델의 답변 성능을 개선할 수 있다는 점이 시스템 프롬프트의 가장 큰 장점이다. 이번 시간에는 LLM 통제 기술의 핵심인 시스템 프롬프트에 대해 보다 자세히 알아보도록 하자.

1. 우리 일상속 시스템 프롬프트

시스템 프롬프트는 생각보다 우리의 일상과 가까운 곳에 있다. 업무와 학업등 평소에 많이 사용하는 생성형 AI 서비스에는 단 하나의 예외도 없이 시스템 프롬프트가 적용되어 있기 때문이다. 챗GPT의 GPT-4o 모델은 물론이고, 최근 출시된 o1이나 구글의 Gemini 역시 마찬가지다. 이러한 생성형 AI 모델들은 모두 나름의 시스템 프롬프트에 따라 일종의 '자아'와 '역할'이 형성되어 있는 샘이다. 보통 이러한 시스템 프롬프트는 모델 자체의 아키텍처와 더불어 생성형 AI 기업의 영업비밀로 여겨지는 경우가 많다.

Anthropic에서는 자사 모델에 대한 시스템 프롬프트를 공개하고 있다

그런데 인공지능 개발 스타트업 앤트로픽(Anthropic)은 24년 8월 이러한 프롬프트를 대중에게 가감 없이 공개한 것으로 잘 알려져 있다. 앤트로픽은 시스템 프롬프트 공개에 앞서 "윤리적이고 투명한 AI 공급업체로 거듭나기 위한 지속적인 노력의 일환으로 클로드 iOS 및 안드로이드 앱과 웹에 최신 모델 클로드 3.5 오퍼스, 소네트 및 하이쿠에 대한 시스템 프롬프트를 게시한다"라고 밝힌바 있다.

우리가 보는 챗GPT의 답변 내용이 하루가 다르게 달라지는 듯 한 느낌은 기분 탓이 아닐 가능성이 크다. 단순히 모델의 편향과 가중치 정보를 가지고 있는 매개변수(parameter)의 숫자가 늘어나서 모델이 똑똑해졌기 때문만도 아니다. 생성형 AI의 답변 품질과 내용을 결정짓는 의외의 숨은 주역은 시스템 프롬프트이다. 시스템 프롬프트에 어떤 내용을 넣느냐에 따라 답변은 천차만별로 달라지며, OpenAI와 Anthropic 그리고 Google 등 대부분의 빅테크에서 언어모델 품질 향상의 일환으로 시스템 프롬프트 개선 작업을 지속하고 있다.

2. 시스템 프롬프트의 구성요소

시스템 프롬프트는 LLM의 역할, 제한 사항, 예시와 정보 출처 등 여러 가지 구성요소로 이루어져 있으며, 이들 각각은 모델의 성능과 답변의 품질에 직접적인 영향을 미친다. 우선 시스템 프롬프트에는 LLM의 역할(Role)을 설정하는 부분이 반드시 들어가야 한다. 모델이 특정한 역할을 수행하도록 지시함으로써, 사용자에게 더 유용하고 맥락에 맞는 답변을 제공할 수 있다. 예를 들어, LLM에 심리 상담사 역할을 부여하면 보다 감정적으로 공감하는 답변을 기대할 수 있으며, 법률이나 의학 전문가 등의 역할을 부여하면 보다 전문적이고 신뢰감 있는 답변을 얻을 수 있다.

지침, 역할, 제한사항 등으로 구성되어 있는 앤트로픽의 시스템 프롬프트

역할 지정과 함께 고려해야 할 요소는 톤앤매너(Tone and Manner) 지정이다. 모델이 어떤 어조와 스타일로 응답해야 하는지를 명확히 지정함으로써, 사용자가 원하는 특정한 커뮤니케이션 방식을 구현할 수 있다. 예를들어 공식적인 문체나 캐주얼한 대화체 등 다양한 스타일이 존재하며, 이는 사용자의 요구에 따라 조정 가능하다.

다음으로 제한 사항(Constraints)을 열거하는 것 역시 중요하다. 여기에는 LLM이 피해야 할 주제나 발언, 혹은 특정한 표현을 포함할 수 있다. 예를들어 인종차별적 발언이나 특정 정치적 성향을 드러내는 편향된 답변 등을 방지하려면 제한 사항 지정이 필수적이다. 이는 LLM 사용자와의 신뢰를 구축하고, 비윤리적이거나 부적절한 내용의 생성을 예방하는 데에 있어서 매우 중요하다.

마지막으로, 정보 출처(Source of Information)에 대한 설정도 중요한 구성요소이다. 모델이 어떤 정보를 바탕으로 답변을 생성해야 하는지를 명시하면, 보다 신뢰할 수 있는 정보를 제공하는 데 기여할 수 있다. 생성형 AI 기반 검색 플랫폼 Perplexity나 Goover 역시 답변에 활용된 데이터 소스를 최대한 다양하고 정확하게 제공함으로써 사용자들의 신뢰를 얻고있다. 이러한 출처에 대한 설정은 특히 전문적인 주제에 대해 정확성을 높이는 데 도움을 준다. 이처럼 시스템 프롬프트는 다각적인 요소들로 구성되어 있으며, 이러한 요소들을 조합하여 최적의 답변을 이끌어내는 것이 중요하다. 각 요소의 적절한 설정은 LLM의 효과적인 활용에 있어 필수적인 과정으로 자리잡고 있다.

3. 결론

시스템 프롬프트는 생성형 AI의 기능과 응답을 결정짓는 매우 중요한 부분으로 AI 모델에 특정한 정체성과 역할을 부여함으로써 사용자의 요구를 효과적으로 충족시키는데에 필수적인 요소라고 할 수 있다. 생성형 AI가 단순한 정보 제공을 넘어, 보다 전문적이고 창의적인 방식으로 정보를 처리하고 전달할 수 있게 하기 위해서는 효과적인 시스템 프롬프트 입력이 중요하다. 이러한 시스템 프롬프트의 적절한 설계와 활용은 생성형 AI의 성능을 극대화하고, 사용자에게 높은 수준의 맞춤형 서비스를 제공하는 데에 있어서 빼놓을 수 없다.






문과 출신으로 AI 스타트업에서 데이터 사이언티스트로 일하고 있습니다. 


* 슈퍼브 블로그의 외부 기고 콘텐츠는 외부 전문가가 작성한 글로 운영 가이드라인에 따라 작성됩니다. 슈퍼브 블로그에서는 독자분들이 AI에 대한 소식을 더 쉽고 간편하게 이해하실 수 있도록 유용한 팁과 정보를 제공하고 있습니다.