1999년 개봉한 영화 미라에는 고대 이집트의 신비로운 스크립트가 등장합니다. 영화에는이 스크립트를 이를 읽는 자에게 강력한 힘을 부여하거나 부활한 고대의 미라 군단을 자신의 뜻대로 부릴 수 있게 되는 장면이 나옵니다. 스크립트를 읽으면, 미라가 부활하게 되고 단순히 스크립트를 읽었을 뿐인데 미라들은 읽은 자에게 복종합니다.
출처 : 영화 '미라'
생성형 AI를 조종하는 시스템 프롬프트에는 미라를 복종시키는 스크립트와 비슷한 특성이 있습니다. 따라서 생성형 AI를 다루는 데에 있어서 이 스크립트의 존재를 아느냐 모르느냐는 하늘과 땅만큼의 차이를 만들어 냅니다. 이번 시간에는 이 마법 스크립트와도 같은 시스템 프롬프트를 통해 생성형 AI 모델을 어떻게 조종하는지 소개하겠습니다.
지난 시간에 LLM에 대한 기초 설정값을 지정해 주는 프롬프트인 시스템 프롬프트(system prompt)의 개념에 대해 설명했습니다. 쉽게 말해 시스템 프롬프트는 생성형 AI에게 인간이 가지고 있는 일종의 '정체성'이나 '성격'을 불어넣어 주는 역할을 합니다. 생성형 AI 모델에게 스스로의 작동 원칙을 설명하고, 응답의 일반적인 어조와 감정을 조정하는 역할을 하기 때문이지요.
즉, 시스템 프롬프트를 적용한 생성형 AI는 사람이 그렇듯이 일종의 정체성을 가지고 답을 하게 됩니다. 예를 들어 생성형 AI가 답변에 참고해야 할 내용을 시스템 프롬프트에 명시해 주는 것만으로도 '나는 요리 분야의 전문가이다.' 혹은 '나는 무슨 일이 있어도 인종차별적 발언을 절대로 하지 않는다.'와 같은 스스로의 역할과 정체성을 가지게 됩니다.
1. 시스템 프롬프트에 따라 천차만별로 달라지는 답변 내용들
이처럼 우리가 평소에 많이 사용하는 생성형 AI 서비스에는 단 하나의 예외도 없이 시스템 프롬프트가 적용되어 있습니다. 챗GPT의 GPT-4o 모델은 물론이고, 최근 출시된 o1이나 구글의 Gemini 역시 마찬가지입니다. 이러한 생성형 AI 모델들은 모두 나름의 시스템 프롬프트에 따라 일종의 '자아'와 '역할'이 형성되어 있는 샘입니다. 보통 이러한 시스템 프롬프트는 모델 자체의 아키텍처와 더불어 생성형 AI 기업의 영업비밀로 여겨지는 경우가 많습니다.
그런데 현존하는 LLM 중 가장 성능이 좋은 것으로 알려져 있는 Claude-3.5 Sonnet을 개발한 인공지능 개발 스타트업 앤트로픽(Anthropic)은 올해 8월 이러한 프롬프트를 대중에게 가감 없이 공개한 것으로 잘 알려져 있습니다. 엔트로픽은 시스템 프롬프트 공개에 앞서 "윤리적이고 투명한 AI 공급업체로 거듭나기 위한 지속적인 노력의 일환으로 클로드 iOS 및 안드로이드 앱과 웹에 최신 모델 클로드 3.5 오퍼스, 소네트 및 하이쿠에 대한 시스템 프롬프트를 게시한다"라고 밝혔습니다.
시스템 프롬프트를 그대로 공개한 엔트로픽(Anthropic)
우리가 보는 챗GPT의 답변 내용이 하루가 다르게 달라지는 듯 한 느낌은 기분 탓이 아닐 가능성이 큽니다. 단순히 모델의 편향과 가중치 정보를 가지고 있는 매개변수(parameter)의 숫자가 늘어나서 모델이 똑똑해졌기 때문만도 아닐 것입니다. 생성형 AI의 답변 품질과 내용을 결정짓는 의외의 숨은 주역은 시스템 프롬프트입니다. 시스템 프롬프트에 어떤 내용을 넣느냐에 따라 답변은 천차만별로 달라집니다.
2. 검색증강생성(RAG) 파이프라인에서 시스템 프롬프트의 역할
지난 글에서 살펴보았듯이 검색증강생성(RAG)은 생성형 AI가 단순히 훈련 데이터에 의존하는 것을 넘어, 필요한 정보를 외부 지식베이스에서 검색하여 더욱 정확하고 신뢰할 수 있는 답변을 생성하는 기술입니다. 이러한 RAG 파이프라인에서 시스템 프롬프트는 매우 중요한 역할을 합니다. 시스템 프롬프트를 적절히 활용하면 생성형 AI의 성능을 극대화할 수 있을 뿐만 아니라, 다양한 분야에 특화된 서비스를 개발할 수도 있습니다.
출처 : https://www.k2view.com/
우선 시스템 프롬프트를 통해 생성형 AI에게 어떤 종류의 정보를 검색해야 하는지 명확하게 지시할 수 있습니다. 예를 들어, "최신 과학 논문을 참고하여 답변해 주세요."와 같은 프롬프트는 AI 모델이 최신 연구 결과를 중심으로 정보를 검색하도록 유도합니다.
뿐만 아니라 검색된 정보를 어떻게 활용하여 답변을 구성할지에 대한 가이드라인을 제공합니다. 예를 들어, "검색된 정보를 요약하여 객관적인 답변을 생성해 주세요." 또는 "검색된 정보를 바탕으로 창의적인 글쓰기를 해주세요."와 같은 프롬프트를 통해 다양한 형태의 답변을 얻을 수 있습니다.
시스템 프롬프트를 통해 생성된 답변의 정확성, 관련성, 일관성 등을 높일 수 있다는 것도 큰 장점입니다. 예를 들어, "전문적인 용어는 쉽게 풀어서 설명해 주세요."와 같은 프롬프트는 일반 사용자도 이해할 수 있는 명확한 답변을 유도합니다.
3. 결론
시스템 프롬프트는 생성형 AI의 기능과 응답을 결정짓는 중요한 요소로, AI 모델에 특정한 정체성과 역할을 부여함으로써 사용자의 요구를 효과적으로 충족시키는데에 필수적입니다. 생성형 AI가 단순한 정보 제공을 넘어, 보다 전문적이고 창의적인 방식으로 정보를 처리하고 전달할 수 있게 하기 위해서는 효과적인 시스템 프롬프트 입력이 중요합니다.
결국, 시스템 프롬프트의 적절한 설계와 활용은 생성형 AI의 성능을 극대화하고, 사용자에게 높은 수준의 맞춤형 서비스를 제공하는 데 필수적입니다. 이러한 점을 통해 우리는 생성형 AI의 진화를 더욱 기대해 볼 수 있을 뿐만 아니라 다양한 분야에서 혁신적인 활용 가능성이 열릴 것입니다.