기획특집 제조업의 생성형 AI 적용 방안 (1)
페이지 정보
작성자 최고관리자 댓글 0건 조회 899회 작성일 24-06-14 12:44본문
생성형 AI 서비스 시장의 확대
신용평가기관인 S&P에 따르면 생성형 AI 시장은 2023년 37억 360만 달러에서 2028년에는 365억 5,810만 달러 성장이 예상되며, 새롭게 생성형 AI 시장에 참여한 기업들을 포함한다면 2028년경에는 500억 달러에 이르며, 연평균 57.9%의 성장률을 보일 것으로 전망된다. 이러한 생성형 AI 기술은 텍스트 생성에서부터 비디오 생성까지 영역을 확대하고 있으며, 이에 대한 상업적 주도는 OpenAI를 중심으로 진행되고 있다.
생성형 AI의 흐름은 OpenAI의 연구와 상업적 시도를 보면 잘 이해할 수 있는데, 2018년도 GPT를 선보인 이후 DALL-E(2021.01)와 같은 이미지 생성과 Codex(2021.01)와 같은 코드 작성 그리고 대화형 서비스인 ChatGPT(2022.11)에 이르러 일반 대중에게 선보이면서 시장에 엄청난 충격과 파급효과를 보였다. 이후 GPT-4를 통해 더욱 성능 높은 생성형 AI 서비스를 내놓으면서 이른바 애플 App store와 유사한 GTS를 선보였다.
텍스트 생성 및 챗봇 AI는 전 세계적으로 최소 700개 이상의 기업이 경쟁을 벌이고 있다. 생성 AI는 텍스트 요약, 감정 분석, 텍스트 번역(이상 텍스트 분석), 가상 비서, 챗봇 구축 플랫폼, 챗봇 프레임워크 및 NLP 엔진(이상 대화형 AI), 글쓰기 도구, 코드 생성, 검색, 언어모델 등 10개의 카테고리에 걸쳐 업체들이 경쟁하고 있다.1) 국내 기업들도 자체 개발한 초거대 인공지능 언어모델을 연이어 공개하고 있다.
ChatGPT의 등장으로 초거대 언어모델에 대한 관심이 급증했다. ChatGPT 역시 언어모델의 일종으로 볼 수 있는데, 언어모델에 대한 연구는 오랫동안 진행해 왔으며, 대규모 데이터셋을 사용하면 광범위한 이해도와 함께 추론 능력이 생김을 알게 되면서 초거대 AI의 경쟁이 진행되고 있다.
실제 언어모델은 통계적 언어모델, 신경망 언어모델, 사전학습 언어모델 그리고 초거대 언어모델이 있으며, 모델들은 목적에 맞게 상호보완적인 관계로 사용되고 있다. 생성형 언어모델은 트랜스포머 아키텍처에 기반한 GPT와 같은 형태의 언어모델을 지칭하며, 대표적 모델로는 OpenAI의 Chat GPT, GPT4가 있고, Meta의 LLaMA Family, Mistral 그리고 Google의 PaLM Family 등이 있다.
생성형 AI를 언론에서 LLM 또는 sLLM 등으로 표기하는데, 현재 시장에서 정해진 기준이 명확하지 않게 불리는 경향이 있다. 2024년 초에 게재된 LLM Survey 논문2)을 기준으로 보면 표 2와 같이 언어모델을 구분할 수 있다.
위 논문의 기준으로 본다면 GPT3.5-Turbo의 경우, Large Size의 20B의 Parameter크기로 Chat Type의 Tuned Model이면서 외부에 모델과 가중치가 공개되지 않은 모델임을 알 수 있다. 또한 LLAMA2 7B의 경우, Medium Size의 7B의 Parameter 크기를 가진 Chat 타입의 Tuned 되어 외부에 공개되어 있는 모델임을 알 수 있다.
생성형 AI의 대표 모델로 지목된 ChatGPT의 파급력이 상당한데, 실제 블룸베리(Bloomberry)가 조사한 Upwork에서 AI로 대체된 일자리 상황3)을 보면 그 파급력을 실감할 수 있다.
Upwork는 우리나라의 크몽이나 숨고와 같이 세계 각국의 프리랜서들과 기업을 연결해 주는 온라인 서비스로, 다양한 분야의 전문가들이 자신의 전문성을 활용하여 일할 수 있도록 도와주는 플랫폼이다. 상기 차트에서 볼 수 있듯이 Writing 업무가 가장 많이 감소했고, 그 뒤를 이어 Translation과 Customer Service가 대폭 감소했다. 실제 기업에서 ChatGPT를 활용한 해당 업무가 감소했을 가능성이 높다.
2024년 Deloitte Insights가 발간한 ‘생성형 AI 도입 현장에서 확인한 시사점’의 본문을 살펴보면 생성형 AI에 대한 기대감이 높으며, 향후 3년 내에 자신의 조직 및 산업에 상당한 변화를 가져올 것으로 전망하고 있다. 불확실성에 대한 우려도 30%에 달했는데, 이는 오해의 소지가 있는 정보, 모델 현황 관리, 잠재적 지적재산 문제 평가 그리고 투명성 및 설명 가능성이 포함된다.
시라그 드카테 가트너 분석가는 최근 열린 AWS의 연례 킥오프 행사에서 업계가 LLM 및 생성형 AI에 대한 하이프 사이클(Hype Cycle)의 정점인 부풀려진 기대의 정점(Peak of Inflated Expectations)에 서있고, 기업들이 기술의 한계를 깨닫게 되면서 환멸의 골짜기 단계(Trough of Disillusionment)로 급격하게 떨어질 수 있다고 지적4)했다. 다시 정리하면, 생성형 AI 기술에 대한 기대가 과도하게 높아진 상태에서 실제로 기술이 제공할 수 있는 가치와 성능에 대한 실망감이 발생할 수 있음을 지적하는 것이고, 이는 기술에 대한 초기 흥분과 과장된 기대가 실제 사용 사례와 성과에 부합하지 않을 때 흔히 나타나는 현상으로 정리할 수 있다.
디인포메이션(The Information)은 이런 지적이 업계 내부에서도 나타나고 있다고 했다.5)
마이크로소프트나 아마존웹서비스(AWS), 구글 등 주요 클라우드 업체의 임직원은 대부분 기업이 생성 AI 도입의 높은 가격과 이에 따른 이득을 정확하게 산정할 수 없다는 문제(기술 도입에 대해)에 신중한 모습이라고 전했다. 클라우드 업체가 생성 AI 서비스를 도입하기 위해(GPU 확보에) 지난 해에만 수백억 달러를 지출했지만, 이로 인해 얼마나 수익을 거뒀는지 답을 못하고 있다. 스웨덴의 유명 핀테크 기업 ‘클라나’는 지난달 오픈 AI 기술로 고객 서비스 직원 700명을 대체하여 4000만 달러(약 530억 원)을 절약했다고 밝혔다가 구설에 오르기도 했다. 비용 절감을 위해 기술에 투자한 금액이 얼마인지, 챗봇이 구체적으로 어떻게 사용되고 있는지에 대한 설명이 빠져 있기 때문이다. 비용 문제를 차치하고도 아직 생성형 AI가 환각 현상에서 완전히 자유롭지 못하다는 점도 환멸의 골짜기 진입 시기를 앞당길 요소로 꼽는다.
홍공과학기술대학교 인공지능연구센터(CAiRE) 연구진에 따르면, 환각 현상은 내재적(Instrinsic) 환상과 외재적(Extrinsic) 환상에 기인한다고 정의하고 있다.
즉, ‘데이터에 의한 환각’과 ‘학습 및 학습 단위에 의한 환각’이 발생될 수 있음을 주목하는 것이다. 또한 생성형 AI가 답변을 공급자의 입장과 기준을 감안하여 ‘알아서(?)’ 잘 생성해 줄 지도 확신하기 어렵다. 왜냐하면 사전에 학습된 데이터 내에서 ‘관계성’에 기반에 나름의 지식체계를 만들고, 출력된 문장에 따라 다음 문장이 ‘관계성’을 감안하여 출력하기 때문이다.
LLM의 한계점을 정리6)하면 다음과 같다.
첫째, LLM은 현재의 상태나 과거에 대한 기억이 없다. ChatGPT 등을 사용할 때 과거의 질문들을 이해하는 것처럼 느끼는 것은 이전 질문을 프롬프트에 같이 보내어 과거 질문 등을 이해하는 것으로 보는 것이다. API 형태로 사용하는 LLM 서비스의 경우 사용하는 토큰 양을 기준으로 과금하는 것을 볼 때, 이런 부분은 경제적 비용으로 사용자에게 전가된다.
둘째, LLM 자체는 통계/확률적이다. 동일한 프롬프트를 입력해도 때때로 다른 답변이 나올 수 있으며, 학습한 데이터의 분포를 통해 편향(Bias)이 발생될 수 있다.
셋째, 모델 자체 정보는 최신 정보가 아니며, 그 자체로 외부 정보를 접근할 수 없다.
넷째, 일반적으로 매우 규모가 커서 서비스나 학습을 위해서 GPU 도입 비용이 높을 수밖에 없다. 마지막으로 상술한 환각 현상(Hallucination)이다. LLM의 이런 환각 현상을 최소하기 위한 연구가 지속되어 많이 향상되고 있지만, 아직까지 환각 현상은 LLM의 치명적인 한계점이다.
생성형 AI 서비스를
기업/기관에서 활용 시도
ChatGPT의 파급력과 생산성을 보고, 초기에 기업들은 이를 활용하는 방식을 취했다. 그러나 삼성전자의 반도체 생산 단계에서 필요한 ‘설비 계측’과
‘수율 / 불량’ 등과 관련한 프로그램이 입력되는 사고가 발생하여 사내 ChatGPT 접근을 차단하는 등의 조치를 시행한 바 있다.7) 일련의 상황은 기업들에게 회사 기밀정보 유출에 대한 보안 경각심을 불러왔지만, 궁극적으로 기업 환경에서 초거대 AI의 생성형 모델을 활용하여 생산성을 높이는 방법에 대한 진지한 고민을 하게 만들었다.
초거대 AI의 생성형 모델을 기반으로 기업이 시범적으로 적용하는 분야는 전통적으로 Cost Center로 지목 받고 있는 대내외 고객 응대 서비스8)이다. 시장 조사업체 Precedence Research에 의하면 (서비스 분야에서의) 대화형 AI 서비스의 채택률은 전체 시장의 36%를 차지하고 있다고 한다. 반복적이고 단순한 업무는 챗봇으로 대신 처리하여 기업 및 기관의 운영 비용을 절감하려는 목적이다.
Deloitte Insights9)는 현재의 생성형 AI는 혁신과 성장보다는 운영 효율성과 생산성 및 비용 절감에 집중하고 있다고 지적한다. 이는 과거의 기술 도입 패턴과 일치한다. 단기적으로 효과가 두각될 수 있는 부분부터 적용하면서 새로운 기술에 대한 지식, 경험 및 자신감을 쌓은 후 더 혁신적이고 전략적이며, 변화를 가져오는 개선에 초점을 맞추려고 한다.
기업/공공 시장의 LLM 기반
대화형 AI 서비스 요구 사항
기업/공공 가릴 것 없이 대내외 고객 문의에 대응하는 생성형 AI 서비스에 대한 요구 사항이 계속적으로 발생하고 있다. 대화형 AI 기술에 바라는 궁극적인 요구 사항은 AI가 기업의 데이터를 활용해 적절하게 대화형으로 서비스 해주는 것이다.
2016년부터 기업 환경에 적용된 대화형 서비스는 분류 또는 유사도 높은 주제를 추천하고, 이에 대한 시나리오 형태로 사람이 지정한 답변을 출력하는 서비스였다. 이후 언어모델을 기반으로 한 생성형 서비스가 시장에 선보이는 상황에서도 기업 정보를 기반하여 답을 내주는 부분에서는 생성형 답변을 제공할 수 없었다.
우리에게 익숙한 ‘챗봇’은 목적지향형으로 사용자의 의도를 파악하여 분류하는 영역에서 인공지능을 활용하고, 정해진 답을 주는 형태이기 때문에 ‘최소한’ 답변이 잘못 나가지 않는 이상 사전에 정의해 둔 답변을 내보낼 수 있었다.
기업 또는 기관의 요구 사항은 기존에 목적지향적인 챗봇의 단점을 극복하고, 생성형 답변을 기업 지식을 참조하여 고객 또는 내부 상담사에게 답을 주는 것이다.
비즈니스 환경에서 LLM의 우선 적용 분야는 다름 아닌 대화형 고객 대응 서비스였고, 자체 보유한 매뉴얼과 자료를 기반으로 고객 친화적인 자연스러운 문장 생성으로 고객 질의에 답변을 주거나, 기업 데이터를 통해 고객에게 질문하고 답변에 정확도를 판단하는 서비스들이다.
LLM에 기업/기관 데이터 접목시키기
그럼 기업 데이터를 LLM에 접목해서 활용할 수 있는 방법은 무엇일까? 우선 OpenAI10)와 Facebook AI11)에서 작성한 논문 두 가지 부분을 접목해서 정의할 수 있으며, In-Context Learning 방식과 Fine-Tuning 방식과 검색 증강 생성(Retrieval-Augmented Generation, 이하 RAG) 방식이 있다. 모델 성능에 영향을 주는 파라미터 업데이트 유무와 모델 외적으로 확장된 개념의 지식을 활용하는 세 가지 방식이 있다.
최근에는 특정 도메인 목적에 부합되도록 Fine-Tuning하여 모델 자체의 성능을 높이려는 시도와 RAG를 활용하여 기업 내부 데이터를 검색하여 생성형 AI를 통해 답변을 생성하는 두 가지 분야로 구분되어 전문 솔루션 또는 서비스 기업이 제품 및 모델을 출시하고 있다. 최근에는 프롬프트를 통한 In-Context Learning과 RAG 방식을 통해 LLM을 기업/기관에 적용하는 시도를 보이고 있다. RAG 방식은 기업/기관 내부 데이터를 외부에 노출이나 학습할 필요 없이 바로 활용해서 서비스할 수 있다.
이번에는 별도의 Fine-Tuning 없이 기업 내부 데이터의 최신성을 유지하면서 적절히 가능하도록 하는 생성형 AI 서비스 구축 방식을 이야기해 보자. 검색 증강 생성 기술, 즉 RAG는 Facebook AI에서 연구를 시작했고, 현재 MS의 Cognitive Search를 시작으로 AWS, IBM 등 글로벌 선도 업체가 모두 제안하는 개념이다. 그림 5는 Facebook AI 연구 논문에 포함되어 있는 개념도이다. 검색 증강 생성은 사용자 질의를 Query Encoder로 인코딩하고, 사전에 색인되어 있는 문서에서 유사도가 높은 문서들을 검색/추출하고, 생성형 AI를 통해 답변을 생성하는 방식이다.
조금 더 단순화하면 그림 6과 같다. 모델이 학습하지 못하는 최신의 내부 문서/매뉴얼/ERP 등 내부 시스템 내의 데이터를 의미 있는 단위로 자르고, 이를 임베딩 과정을 거쳐 색인한다. 이후에 사용자가 질의를 하면 이를 임베딩하여 벡터화하고, 색인된 문서와 유사도를 판단하여 의도에 부합된 문장을 선별하고, 생성형 AI에 전달하여 답변을 생성하는 과정을 거친다.
기존에 사전 및 단어 단위로 색인하는 과정에서 Passage라는 의미 있는 문서 그룹 단위로 임베딩하여 색인한다는 것이 기술적인 차이점이다. 형태소 분석기에 따라 성능이 달라지기 때문에 문서 유형의 특성을 감안하고, 문장 내 유의미한 요소를 추출해주는 기능에 따라 답변 정확도와 시스템 성능에 차이가 날 수 있다. 이렇게 내부 데이터를 활용하고, LLM을 통해 생성하는 흐름의 예시는 그림 6과 같다.
사용자가 “OpenAI의 CEO인 샘 알트만이 이사회에 의해 갑작스럽게 해고된 후 단 삼일 만에 다시 회사에 재고용되었는데, 이는 권력 역학 측면에서 실제 ‘왕좌의 게임’을 연상시킨다고 생각하나요?”라고 질문을 했을 경우, 최신의 데이터를 갖고 있지 않고 RAG를 활용하지 않는 LLM의 경우 답을 줄 수 없다.
하지만 지속적으로 뉴스 데이터를 수집하여 RAG 구성을 하고 있을 경우 해당 데이터에서 유사도 검색을 통해 연관된 문서(Relevant Documents)를 추출하여 이를 프롬프트를 활용하여 추출된 문서 내에서만 질의에 대한 답변을 생성하는 원리이다. 이를 오픈북(Open Book) 방식의 해결 방식이라고 한다. 정답 후보군을 알려주고, 답을 생성하게 하는 방식이기 때문에 최신성과 정확성 이슈를 상당 부분 해결할 수 있다.
다만 RAG 기술을 도입할 시에는 내부 문서 색인 시 의미 기반으로 인덱싱하는 기술과 의미 기반 검색 이후 사용자의 질의 의도를 반영하여 우선순위(Ranking)를 정하고, LLM에 전달하는 Advanced RAG의 기능 요소들이 포함돼야 한다. 1세대 RAG를 Naïve RAG라고 칭하며, 비교적 단순한 구조이기 때문에 의미에 부합되지 않는 문서가 정제되지 않고 답변에 도출되는 우려가 있다. 실제 Advanced RAG를 반영한 솔루션 예시는 그림 9와 같다.
기업 내부의 데이터를 수집 및 전처리하는 과정에서 의미 단위로 텍스트를 구분하여 벡터화 및 인덱싱을 진행한 후 사용자 질의가 들어오면 하이브리드 방식으로 검색을 진행하고, 사용자 의도에 부합되는지에 따라 검색 결과의 랭킹을 조정하고, 이를 기반으로 답변을 생성한다.
RAG 기반 대화형
AI 서비스 구축 절차
1) Contextual Data의 준비
사내에 존재하는 PDF 등의 텍스트 문서와 엑셀파일 등의 계산 효율을 높이기 위해 절절한 단위로 나누는 문서 청킹(Chunking) 과정을 진행하고, 이후 각 청크를 임베딩 과정을 거쳐 고정 길이 벡터로 변환하는 과정을 진행한다. 이후 각 청크의 임베딩 벡터를 인덱싱하고 저장하는 과정을 진행한다. 이를 Data preprocessing으로 불러도 좋을 것이다.
2) Prompt Engineering
LLM에서 응답을 생성하기 위한 입력값으로 최상의 답변을 이끌어내기 위해 최적의 단어, 입력값들의 조합을 찾는 과정이다. 이를 위해 특정 테스트 및 지시문(Instruction)과 답변유도문(Context), 답을 구하고자 하는 것에 대한 질문(Input Data), 결과물의 유형 또는 형식 제안(Output Indicator)을 통해 프롬프트를 구성한다.
3) Orchestration frameworks
사용자의 복잡한 질문이나 요청에 대해 세부적이고 순차적인 작업을 가능케 하는 프롬프트 체인을 추상화하고, 외부 API와의 인터페이스 그리고 벡터데이터베이스 등과 연계하여 데이터를 검색하고, 그 결과를 사용자에게 제공하는 일련의 작업을 수행한다. LLM과 연계하여 복잡한 작업을 쉽게 처리할 수 있도록 개발 도구를 활용하면, 상당 부분을 Low Code(적은 코딩으로 동일한 결과를 도출) 형태로 구현이 가능하다.