Offcanvas

AI / How To

'AI, 입맛에 맞게 조련하라' 프롬프트 엔지니어링 활용법

2023.03.24 Lucas Mearian  |  Computerworld
오픈AI의 GPT-4를 비롯한 많은 대규모 언어 모델(LLM)은 사전에 방대한 양의 정보가 채워져 있지만, ‘프롬프트 엔지니어링’을 사용하면 특정 산업 또는 조직에서 활용할 수 있도록 생성형 AI를 맞춤화할 수 있다. 

AI 기반 챗봇이 최근 몇 달 동안 전 세계를 떠들썩하게 한 이유는 광고 제작, 이력서 작성 등 다양한 목적으로 능숙하게 텍스트를 생성할 수 있기 때문이다. 이런 챗봇에 사용하는 대규모 언어 모델(LLM) 알고리즘은 인간의 지능을 모방해 텍스트 콘텐츠는 물론 오디오, 동영상, 이미지, 컴퓨터 코드까지 생성할 수 있다. LLM은 자연어를 입력했을 때 사람과 유사한 응답을 내놓을 수 있도록 방대한 양의 기사, 도서, 인터넷 자료 및 기타 입력을 학습한 일종의 인공지능이다. 
 
ⓒGetty Images Bank

많은 기술 기업이 애플리케이션 작업을 자동화하는 비즈니스용 LLM 기반 생성형 AI 도구를 속속 선보이고 있다. 예를 들면 지난주 마이크로소프트가 공개한 ChatGPT 기반 챗봇은 마이크로소프트 365에 통합돼 CRM 및 ERP 애플리케이션 기능을 자동화할 수 있다. 새로운 마이크로소프트 365 코파일럿(Microsoft 365 Copilot)은 워드에서 문서 초안을 작성하는 데 사용할 수 있다. 세일즈포스도 자사 CRM 플랫폼에서 쓸 수 있는 GPT 기반 챗봇을 출시할 계획이라고 발표했다.
 
사용자 프롬프트를 통해 소프트웨어 코드를 생성하는 생성형 AI의 예시. 세일즈포스의 아인슈타인 챗봇은 오픈AI의 GPT-3.5 대규모 언어 모델을 사용해 구축됐다. ⓒSalesforce

LLM(예 : 오픈AI의 GPT-4)은 다음에 나올 단어나 내용을 예측하도록 사전 학습돼 있기 때문에, 대부분 기업은 ‘바로 사용’할 수 있다. 물론 LLM 기반 챗봇에서 종종 오류가 발생하기도 하지만, 사전 학습된 LLM은 적어도 시작점으로 사용할 수 있는, 대부분 정확하고 설득력 있는 콘텐츠를 비교적 능숙하게 제공한다. 

하지만 많은 업계에서는 해당 산업의 전문 용어를 이해하고 사용자에게 맞는 콘텐츠를 생성하는 맞춤형 LLM 알고리즘이 필요하다. 가령 의료 업계용 LLM이라면 전자건강기록(EHR)을 처리 및 해석해 치료 방법을 제안하거나, 의사가 남긴 메모나 음성 녹음을 바탕으로 환자 건강 상태를 요약한 보고서를 작성해야 한다. 금융 서비스용 LLM은 실적 발표를 요약하고, 회의록을 작성하며, 사기 행위를 분석해야 한다. 따라서 다양한 산업에서 높은 수준의 응답 정확성을 확보하는 일이 무엇보다 중요해질 전망이다.

대부분 LLM은 API를 통해 접근할 수 있으며, 사용자는 API를 활용해 매개변수를 생성하거나 LLM의 응답 방식을 조정할 수 있다. 챗봇에게 보내는 질문이나 요청을 사용자가 응답을 유도(prompt)한다는 의미에서 프롬프트(prompt)라고 한다. 자연어 질문, 코드 스니펫, 명령어 등을 프롬프트로 사용할 수 있는데, LLM이 정확하려면 프롬프트 역시 정확해야 한다. 이런 수요를 충족하기 위해 ‘프롬프트 엔지니어링’이라는 새로운 기술이 등장했다.
 

프롬프트 엔지니어링이란?

프롬프트 엔지니어링은 LLM에서 원하는 결과를 얻기 위해 텍스트 프롬프트를 공들여 만들고 최적화하는 과정이다. AI용 반도체를 개발하는 실리콘 밸리 스타트업 삼바노바 시스템즈(SambaNova Systems)의 제품 담당 SVP 마샬 초이는 프롬프트 엔지니어링에 관해 “작업 요건에 정확하게 맞도록 LLM을 빠르고 쉽게 맞춤화하여 제품 프로토타이핑 및 탐색을 신속하게 반복할 수 있도록 지원한다”라고 말했다.

LLM을 개발하고 호스팅하는 커뮤니티 플랫폼 허깅 페이스(Hugging Face)의 머신러닝 엔지니어 에노 레이예스에 따르면 프롬프트 엔지니어링은 사용자뿐만 아니라 IT 및 비즈니스 전문가에게도 필수적인 기술이 될 전망이다. “소프트웨어, IT, 컨설팅 업계의 많은 사람이 업무에 프롬프트 엔지니어링을 사용한다. LLM이 다양한 산업에 통합되고 있으며, 생산성을 향상시킬 수 있는 LLM의 잠재력은 엄청나다”라고 덧붙였다. 

비즈니스 사용자는 프롬프트 엔지니어링을 활용해 LLM을 최적화할 수 있다. 이를 통해 고객 지원부터 콘텐츠 생성, 데이터 분석까지 다양한 작업을 더 효율적이고 정확하게 수행할 수 있다는 것이 레이예스의 설명이다. 

챗GPT에 사용돼 현재 가장 널리 알려져 있는 오픈AI의 GPT-3 LLM은 1,750억 개의 매개변수로 구성돼 있으며, 짧은 프롬프트로 텍스트와 컴퓨터 코드를 생성할 수 있다. 최신 버전인 GPT-4는 약 2,800억 개의 매개변수가 있는 것으로 추정되며, 따라서 정확한 응답을 생성할 가능성이 훨씬 더 높다. 이 밖에 많이 사용되는 생성형 AI 플랫폼에는 허깅 페이스의 블룸(BLOOM), XLM-RoBERTa, 엔비디아의 니모(NeMO) , XLNet, Co:here, GLM-130B 등의 개방형 모델이 있다. 

단, 프롬프트 엔지니어링은 아직 초기 단계다. AI 애플리케이션에서 최적의 응답을 얻으려면 ‘챗GPT를 위한 최고의 프롬프트 100선(100 best prompts for ChatGPT)’ 등 관련 서적과 프롬프트 가이드를 활용할 수 있다. 

가트너 리서치의 수석 부사장 겸 애널리스트 아룬 찬드라세카란은 “심지어 프롬프트 제안이 판매되기도 한다”라며, 최근 생성형 AI가 주목받으면서 프롬프트 엔지니어링을 개선할 필요성도 대두됐다고 언급했다. “비교적 새로운 분야다. AI 모델에서 최적의 응답을 얻으려면 더 많은 노하우와 시행 착오가 필요하다. 점점 더 성숙해지면 AI 모델 개발자가 제공하는, AI 모델 및 애플리케이션을 효과적으로 활용하는 방법에 관한 가이드라인과 모범 사례를 볼 수 있을 것”이라고 덧붙였다. 
 

입력이 좋아야 출력도 좋다 

LLM의 머신러닝은 입력된 데이터를 자동으로 학습한다. 오픈AI는 LLM 개발에 사용된 데이터 외에, 사람이 사람 같은 대답을 하도록 모델을 훈련시키는 ‘인간 피드백 기반 강화 학습(RLwHF)’을 만들었다. 예를 들면 사용자가 질문과 이상적인 답변을 작성한다. 그다음 LLM에게 동일한 질문을 반복해서 던진다. 사실 관계 질문에는 방금 전과 같은 답을 내놓아야 하고, 정답이 없는 질문에는 사람처럼 창의적이고 다양한 답을 제시해야 한다.

찬드라세카란은 “즉, 사람이 LLM를 훈련시키는 방식은 LLM의 답변을 최고에서 최악 사이로 평가하는 것이다. LLM에게 평가 결과를 입력해 LLM이 사람의 답변에 가까운 답변이나 최고의 답변을 내놓게 하는 한편, 최악의 답변은 최소화한다. 하지만 질문 구성 방식이 LLM의 출력에 큰 영향을 미친다”라고 설명했다.

기업은 내부의 맞춤형 데이터 집합을 입력해 GPT-모델을 학습시킬 수 있다. 예를 들면 기업 데이터에 라벨을 지정하고 주석을 달아 품질을 높인 다음, GPT-4 모델에 입력시킨다. 이런 세부조정을 통해 GPT-4 모델은 해당 조직에 특화된 질문에 답할 수 있다. 세부조정은 업계에 따라 달라질 수 있는데, 이미 특정 산업에 특화된 많은 정보를 GPT-4에 입력하는 소규모 스타트업이 등장하고 있다(예 : 금융 서비스 등).

찬드라세카란은 “이런 스타트업은 렉시스-넥시스(Lexis-Nexis)나 블룸버그(Bloomberg) 정보, 미국 증권거래위원회 수시 보고서와 연차 보고서 등의 정보를 입력할 수 있다. 중요한 점은 GPT-4 모델이 해당 산업에 특화된 정보나 용어를 많이 학습한다는 것이다. 따라서 세부조정은 업계 수준이나 조직 수준에서 이뤄질 수 있다”라고 말했다.

예를 들어 스타트업 하비(Harvey)는 오픈AI와 협력해 ‘변호사를 위한 코파일럿’이라는 법률 전문가용 챗GPT를 만들었다. 찬드라세카란은 변호사가 맞춤형 챗GPT로 특정 판사의 판례를 검색해 다음 사건을 준비할 수 있다고 설명했다.

이어 “프롬프트의 가치가 가장 높은 곳은 언어가 아닌 이미지 생성 분야라고 생각한다. 생성형 AI 분야에는 텍스트를 이미지로 전환해 주는 모델을 비롯해 온갖 종류의 모델이 있다. 예를 들면 사용자는 생성형 AI 모델에게 ‘달에서 기타를 치는 사람’의 이미지를 만들어 달라고 요청할 수 있다. 텍스트를 이미지로 전환하는 분야가 프롬프트 시장에서 더 중요해질 것”이라고 찬드라세카란은 말했다.
 

원스톱 LLM 허브 역할을 하는 허깅 페이스

허깅 페이스는 자체 LLM 개발(예 : 블룸)도 하지만 핵심은 서드파티 머신러닝 모델을 위한 허브 역할이다. 깃허브가 코드의 허브 역할을 하는 것과 비슷하다. 허깅 페이스는 현재 스타트업과 기술 대기업의 다양한 LLM을 포함해 10만 개 이상의 머신러닝 모델을 호스팅하고 있다.

새로운 모델은 대부분 오픈소스이기 때문에 허브에서 사용할 수 있다. 즉, 허깅 페이스는 새로운 오픈소스 LLM을 한 곳에 모으는 원스톱 목적지다. 허깅 페이스를 활용해 특정 비즈니스나 산업에 맞춰 LLM을 세부조정하려면 허깅 페이스의 트랜스포머(Transformerr) API와 데이터세트 라이브러리를 사용하면 된다. 

예를 들어 금융 서비스 산업에서는 플랜-UL2(Flan-UL2) 등 사전 학습된 LLM을 가져온 다음, 금융 뉴스 기사의 데이터세트를 불러오고, ‘트랜스포머’ 트레이너를 활용해 모델을 세부조정해 해당 기사의 요약본을 생성할 수 있다. AWS, 딥스피드(DeepSpeed), 액셀러레이트(Accelerate) 등을 통합하면 학습을 더 간소화되고 최적화할 수 있다. 레이예스에 따르면 모든 과정은 100줄 이하의 코드로 완료할 수 있다. 

프롬프트 엔지니어링을 시작하는 또 다른 방법은 허깅 페이스의 추론 API를 사용하는 것이다. 레이예스에 의하면 이 API는 8만 개 이상의 트랜스포머 모델을 지원하는 간단한 HTTP 요청 엔드포인트다. “이 API를 활용해 LLM을 비롯한 플랫폼의 오픈소스 모델에 텍스트 프롬프트를 보내고 응답을 받을 수 있다. 더 간단한 방법을 원한다면 허깅 페이스 허브의 LLM 모델에서 추론 위젯을 사용해 코드 없이 텍스트를 보낼 수 있다”라고 설명했다.
 

퓨샷 학습과 제로샷 학습

일반적으로 LLM 프롬프트 엔지니어링의 학습 방식은 ‘퓨샷(few-shot)’과 ‘제로샷(zero-shot)’ 2가지로 나뉜다. 제로샷 학습은 간단한 명령어를 프롬프트로 입력하여 LLM에서 예상되는 응답을 생성하는 방식이다. 특정 작업과 관련된 라벨이 지정된 데이터를 사용하지 않고도 새로운 작업을 수행하도록 LLM을 학습시키는 것이 목적이다. 제로샷 학습은 강화 학습과 비슷하다고 보면 된다. 퓨샷 학습은 원하는 응답을 얻기 위해 소량의 샘플 정보나 데이터를 사용해 LLM을 훈련시키는 방식이다. 퓨삿 학습에는 3가지 구성 요소가 있다.
 
작업 설명(Task Description): 모델이 수행할 작업에 관한 간단한 설명(예 : “해달이라는 영어 단어를 프랑스어로 번역”)
예시(Examples): 모델이 수행할 작업을 보여주는 몇 가지 예시(예 : ‘sea otter → loutre de mer’라는 예를 제시)
프롬프트(Prompt): 새로운 예시의 시작 부분. 모델은 누락된 텍스트를 생성하여 예시를 완성해야 한다(예 : ‘치즈’라는 영어 단어를 ‘cheese → ‘로 제시하면 여기에 해당하는 프랑스어 단어를 모델이 생성.)

찬드라세카란에 따르면 대부분 모델이 아직 개발 초기 단계이기 때문에 실제로 필요에 맞는 맞춤형 학습 모델을 갖춘 기업은 거의 없다. 또한 IT 사용자와 비즈니스 사용자가 프롬프트 엔지니어링이라는 스킬을 배우는 것이 중요하다고 그는 강조했다.

찬드라세카란은 “프롬프트 엔지니어링은 오늘날 갖춰야 할 중요한 스킬이다. 파운데이션 모델이 퓨샷 및 제로샷 학습을 잘하더라도 그 성능은 사용자가 어떻게 체계적으로 공을 들여 프롬프트를 만드냐에 따라 영향을 받는다. 사용 사례와 산업에 따라 이 스킬은 IT 사용자와 비즈니스 사용자 모두에게 중요해질 것”이라고 말했다.

대부분 API에서는 사용자가 자체적인 프롬프트 엔지니어링 기법을 적용할 수 있다. 레이예스에 따르면 사용자가 LLM에 텍스트를 보낼 때마다 특정 결과가 나오도록 프롬프트를 개선할 가능성이 있다. “하지만 이런 유연성은 프롬프트 인젝션 등 악의적인 사용 사례의 가능성을 열기도 한다. 빙(Bing)의 시드니(Sydney)와 같은 사례는 사람들이 의도치 않은 목적으로 사람들이 프롬프트 엔지니어링을 악용할 수 있다는 사실을 증명했다. 프롬프트 인젝션은 성장하고 있는 연구 분야다. 다양한 애플리케이션에 걸쳐 LLM이 책임 있고 안전하게 사용될 수 있도록, 악성 사용 사례는 물론 프롬프트 인젝션 문제를 해결하는 일이 향후 매우 중요해질 전망이다”라고 말했다.
editor@itworld.co.kr
 
추천 테크라이브러리

회사명:한국IDG 제호: CIO Korea 주소 : 서울시 중구 세종대로 23, 4층 우)04512
등록번호 : 서울 아01641 등록발행일자 : 2011년 05월 27일

발행인 : 박형미 편집인 : 천신응 청소년보호책임자 : 한정규
사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2024 International Data Group. All rights reserved.