[RAG] 송승호 한국마이크로소프트 애저 비즈니스 그룹 총괄, "RAG 구현은 방법론, 가장 강력한 LLM들과 애저가 생성형 AI 시대 핵심 경쟁력"

[테크수다 기자 도안구 eyeball@techsuda.com] "검색 증강 생성(RAG: Retrieval-Augmented Generation)은 방법론입니다. 결국에는 거대언어 모델의 한계성을 극복하기 위해 만들어진 겁니다. 저희는 고객들과 함께 다양한 PoC(Proof of Concept) 활동을 통해 고객들이 생성형 AI 시대에 대응할 수 있도록 돕고 있습니다. 또 기업 내 AI 해커톤도 다양하게 진행했습니다. 마이크로소프트 애저는 고객들의 AI 여정을 가장 잘 지원하고 협력하는 기반이 되고 있습니다."

모처럼 만난 송승호 한국마이크로소프트 애저 비지니스 그룹 총괄은 이런 말로 최근 달라진 마이크로소프트 클라우드와 AI의 위상에 대해 말했다.

송승호 한국마이크로소프트 애저 비지니스 그룹 총괄

생성형 AI 시대 포문을 연 게 오픈AI지만 그 회사가 제공하는 서비스와 동일하지만 엔터프라이즈 고객들을 위해 '보안'과 다양한 기업내 시스템간 연동, 기술지원 등이 가미된 마이크로소프트 애저 오픈AI 서비스(Azure OpenAI Service)는 마이크로소프트의 가장 강력한 서비스로 급부상하고 있다.

마이크로소프트 애저 오픈AI 서비스는 GPT-4o, GPT-4, GPT-4 Turbo with Vision, GPT-3.5-Turbo 및 임베딩(Embeddings) 모델 시리즈를 포함한 OpenAI의 강력한 언어 모델에 대한 REST API 액세스를 제공한다. 이 모델은 콘텐츠 세대, 요약, 이미지 해석, 의미 체계 검색, 자연어에서 코드로의 번역을 포함하되 이에 국한되지 않는 특정 작업에 쉽게 적용할 수 있다. 사용자는 REST API, Python SDK 또는 Azure OpenAI Studio의 웹 기반 인터페이스를 통해 서비스에 액세스할 수 있다.

한국마이크로소프트는 지난 4월 말 AI 투어 인 서울 행사도 마련하면서 AI 개발자 생태계 확보에 힘을 내고 있다.

지난 한해 가장 핫한 회사였지만 너무 조용히 지낸 거 아니냐는 기자의 농담에 "수많은 고객들의 요청을 처리하느라 정신이 없었습니다"라고 생성형 AI 시대 주목받고 있는 한국마이크로소프트의 상황을 설명했다.

많은 엔터프라이즈 기업들은 다양한 형태로 생성형 AI 시대에 대응하고 있다. 한국마이크로소프트 같은 클라우드 서비스 사업자와 협업하기도 하고 내부에 인프라를 구축해 시도하기도 한다. 시장을 이끌고 있는 AI 스타트업들이 모두 클라우드 서비스 사업자의 인프라 위헤서 서비스를 제공하고 있는 만큼 클라우드 기업들과의 협력은 가장 우선 순위다.

최근 끝난 마이크로소프트 빌드 2024에서는 최근 마이크로소프트의 행보를 다시 한번 확인할 수 있는 발표가 이어졌다.

마이크로소프트는 오픈AI와 관계가 계속 돈독하다는 점도 강조하고 멀티 모달 모델로 주목을 받은 GPT-4o의 애저 오픈AI 서비스 제공을 비롯해 다양한 오픈소스 LLM 모델들에 대한 서비스도 강화하면서 MaaS(Model as a Service) 사업도 전개하고 있다고 강조했다. 고객이 원하는 모델들을 발빠르게 서비스하고 있다는 설명이다.

오픈AI를 기본으로 하고 이렇게 다양한 모델들 그리고 마이크로소프트가 만든 경량화 모델인 Phi-3 등 선택지를 넓히면서 고객들의 선택 폭도 넓혀나가고 있다.

하지만 프로젝트를 할 때 가장 중요한 건 '보안'과 안전, 그리고 신뢰성이다.

송승호 한국마이크로소프트 애저 비지니스 그룹 총괄은 "생성형 AI 프로젝트를 진행하는 고객들 모두 보안을 가장 염두에 두고 있습니다. 프로젝트 전부터 완벽한 보안을 생각하고 진행할 정도로 데이터 유출 혹은 유해 정보나 잘못된 정보로 인한 고객 서비스 혹은 내부 고객 서비스 이슈를 원천적으로 차단하려고 하고 있습니다"라고 말했다.

다음은 송승호 한국마이크로소프트 애저 비지니스 그룹 총괄과 나눈 생성형 AI 분야 중 RAG(Retrieval-Augmented Generation) 관련 일문 일답니다.

1. 기업에서 RAG를 도입하려 할 때, 어떤 준비 작업이 필요한지 구체적으로 설명해 주실 수 있나요?

기업 내의 데이터를 효과적으로 활용하는 것이기 때문에, 기존 데이터 처리 방식과 비슷한 준비 작업이 필요합니다.

· 데이터 수집 및 정리를 위한 체계적인 프로세스를 마련해야 합니다. 이는 RAG 모델을 효과적으로 학습시키기 위해 필수적입니다.

· 기존 데이터에 대한 분석과 정제가 필요하며, 이는 모델의 성능을 향상시키는 데 중요합니다. 특히나, 기존 데이터를 문서에서 갖고 올 때에 발생할 수 있는 데이터 손실에 대해 점검이 필요합니다. 대부분 자동화 도구를 사용해서 문서를 읽어 들이는데, 문서의 형태에 따라서 데이터 손실이 발생할 수 있기 때문입니다.

· 모델을 통합하고 운영하기 위한 인프라 및 리소스를 확보해야 합니다. 이는 모델을 실제 운영 환경에 효과적으로 적용하는 데 필요한 요소입니다.

· 마지막으로, 모델의 성능을 지속적으로 모니터링하고 개선하기 위한 프로세스를 마련해야 합니다. 이를 통해 기업은 RAG를 성공적으로 도입하고 활용할 수 있습니다.

2. RAG 시스템 구축 시, 데이터 포맷 호환성 이슈(예: 한글 hwp, hwpx 파일 등)를 어떻게 해결할 수 있나요?

· 워드(Word)를 읽는 것에 문제가 없습니다. Hwp나 hwpx 와 같은 형식에 대한 지원에 대해서는 대안책으로서 hwp 형태의 파일을 PDF 전환 후에 읽어 들이면 가능할 것으로 보입니다.

3. RAG 시스템을 클라우드 환경에 구축할 때 구체적인 아키텍처와 프로세스를 설명해 주실 수 있나요?

· 아래 그림이 가장 대표적인 형태의 RAG 구성 모델입니다. 일단은 마이크로소프트 서비스 기준으로 정리하였습니다만, 다른 서비스 제공 업체의 형태도 크게 다르지 않습니다.

· RAG에서 사용될 데이터가 색인되어 데이터소스에 저장이 되어 있고, 사용자가 쿼리를 날리면, 애저 AI 서치(Azure AI Search) 통해 색인되어 저장된 데이터를 검색해서 갖고 옵니다. 그리고, 검색된 데이터의 내용을 미리 정의된 프롬프트 엔지니어링(Prompt engineering) 규칙에 따라서, 애저 오픈AI 서비스(Azure OpenAI Service)를 이용하여, 자연어 기반으로 답변을 출력하게 됩니다.

4.     시스템 개발에 소요되는 시간과 비용은 어느 정도로 예상되나요?

· 데이터 처리에 대한 기본 지식만 갖추고 있다면, RAG 시스템 원리와 구현 방법을 배우는 것은 1~2주 정도면 충분합니다. 배우는 것은 비교적 쉽게 배울 수 있습니다만, 이를 구현하는 시간과 비용은 천차만별입니다.

· RAG에 사용될 데이터 원본이 어떤 형태인지, 그리고 이를 색인화하여 저장하는 것이 편리한지, 추가적인 수작업이 얼마나 필요한지에 따라서, 초기 작업도 많이 달라집니다.

· 따라서 딱 얼마의 시간과 비용이 필요하다고 말씀드리기 어렵습니다. 서비스 제공 업체와 사전 컨설팅을 통해 확인하시는 것이 대략적인 기간과 비용 산출에 도움이 될 것으로 보입니다.


5. RAG시스템 도입 후, 지속적인 운영 및 유지보수를 위해 어느 정도의 인력과 비용이 필요한가요?

· 이것도 운영 방식에 따라 달라질 수 있어서 답변을 드리기가 어렵습니다. RAG에 새로운 데이터를 계속 부어 넣어서 유지보수를 해야 한다면, 추가 개발비가 발생할 것이고, 앞서 말씀드린 바와 같이, 데이터의 처리에 따라 비용이 천차만별로 달라질 수 있습니다.

· 그렇지 않고, 한번 구축된 RAG를 계속 사용하는 시나리오라고 가정한다면, 해당 시스템 인프라운영에 대한 비용과 유지인력이 필요한 정도로 생각하시면 됩니다.

6. RAG 시스템의 자동화 수준은 어느 정도이며, 어떤 부분에서 사람의 개입이 필요한가요?

· RAG 구현을 위한 자동화 수준으로 질문을 이해하였습니다. 앞서서 말씀드린 문서를 읽어 들이고 색인화하는 과정을 청킹(Chunking)이라고 부릅니다. 이 과정은 완벽한 자동화가 어렵고, 결국 사람의 개입이 필요합니다. 하나의 문서라고 하더라도 그 안에 어떤 페이지는 문서만 있고, 어떤 페이지는 문서와 그림 또는 표가 함께 공존하기 때문에, 시스템에서 잘못 인식할 수 있는 가능성이 있습니다.

· 그래서, 이를 확인하고, 필요한 경우 수작업을 통해 보정을 해야 합니다. 복구(Retrieval) 기술이 발전하면 자동화에 도움을 줄 수 있을 것으로 기대하고 있습니다. 나머지도 자동화 라기보다는 실제적인 구현이 필요합니다.

· 사용 측면에서는, 한번 구현이 되고 나면, 사용자의 별도의 개입 없이 시스템 운영은 가능 합니다.

7. 기업에서 RAG 도입을 검토할 때, 컨설팅 회사의 역할은 무엇이며 어떤 서비스를 제공하나요?

· RAG 이 도입 목적, 즉 어떤 것을 생성할 것인지에 대한 목표 설정, 그리고 어떤 데이터를 갖고 왔을 때 효과적으로 목적을 달성할 수 있을지에 대한 컨설팅 서비스가 가능할 것으로 보입니다.

· 경우에 따라서는 이를 직접 구현하는 것도 컨설팅 업체에서 제공할 수 있는 서비스라고 생각 합니다.

8. RAG 시스템의 사용자 인터페이스(UI)는 어떻게 구성되며, 사용자 친화적인 UI는 무엇인지 설명 부탁드립니다.

· 현재 가장 많이 활용되는 UI는 챗봇 서비스 형태입니다. 다양한 서비스 안에 구현되어서 제공되고 있으나, 결국 그 근본 형태는 챗봇입니다.

· 기존 챗봇과의 차이는 키워드 기반의 질의 응답이 아닌, 자연어 기반으로 질의 응답이 가능하다는 것이 특징입니다.

· 사용자 친화적인UI 라면, 결국 사용자의 input이 최소화되는 것이라고 생각합니다. 챗봇에 보이스 기능을 추가하여, 음성 기반으로 질의 응답이 이루어지게 하는 것이 현재로서는 가장 친화적인 UI 가 아닐까 생각됩니다.

9. 마이크로소프트 애저(Microsoft Azure)는 현재 RAG 기술을 어떤 서비스에 적용하고 있나요?

마이크로소프트 자체적으로 RAG 기술을 적용한 서비스가 있는지에 대해서 별도 공개된 자료는 없습니다. 다만, 마이크로소프트 애저 오픈AI서비스 (Azure OpenAI Service)상에서 RAG 기술을 보다 쉽고 광범위하게 활용할 수 있도록 서비스들이 제공되고 있고, 계속 개선 작업이 이루어지고 있습니다.

예를 들어, 애저 AI 스튜디오(Azure AI Studio)의 애저 AI 서치에서 벡터 서치(Vector Search) index 기능이 제공됩니다. 애저 오픈AI스튜디오 에서는 벡터사용 여부와 관계없이 검색 index 사용이 가능합니다.

일반적으로 RAG 기술은 다양한 서비스에 적용될 수 있습니다. 또한, RAG 구현 방법도 다양할 수 있습니다. 랭체인(LangChain)과 같은 유명한 도구를 활용해서 구현할 수도 있고, 랭체인이 아니더라도 시맨틱 커넬(Semantic Kernel)을 활용해서 구현할 수도 있습니다.

10.  RAG 기술이 기존 AI 모델의 한계를 어떻게 극복할 수 있다고 보시나요?

· 기존 LLM은 막강한 자연어 처리를 지원하지만, 이를 활용하는 Token의 한계(비용적 한계)가 있기도 하고, LLM 모델이 갖고 있는 데이터의 한계를 극복하기 위해 만들어진 기술이 RAG입니다.

· 우선, RAG 기술은 다양한 데이터 소스를 활용하여 학습하고 결과를 생성할 수 있습니다. 예를 들어 특정 기업 내부에서만 활용되는 정보는 LLM에서 학습될 수 없었던 데이터입니다. 이를 RAG를 활용하여 데이터를 가공하고 보관 후, 관련한 문의가 들어왔을 때 검색하여 결과를 LLM을 활용해서 출력해 줄 수 있습니다.

· 기존의 AI 모델은 모델 자체가 갖고 있는 데이터의 추론 성능에만 초점을 맞추었는데, RAG 기술은 데이터와 함께 지식을 관리하고 검색하며, 이를 바탕으로 문제를 해결하는 데 도움을 줄 수 있습니다.

11.   RAG 기술 개발에 있어 마이크로소프트 애저만의 차별화 포인트는 무엇인가요?

· 애저를 사용하면 민감한 정보 및 유해 정보에 대해서 유연하게 대응할 수 있도록 책임있는 AI(Responsible AI)가 적용되어 있습니다. RAG 에서도Responsible AI 와 협동해서 민감 정보 및 유해 정보에 대해 대응할 수 있습니다.

· 또한, 애저 AI 서치는 RAG에 강력한 인덱싱 및 쿼리 기능을 제공합니다. 이를 통해서 콘텐츠를 대규모로 검색하고 검색할 수 있도록 보장하여 엔터프라이즈 콘텐츠에 대한 RAG 구성의 완성도를 높일 수 있습니다.

12.  RAG 모델을 학습시키는 데 활용하는 데이터 소스는 무엇이며, 데이터 품질 관리는 어떻게 하고 있나요?

· 기존 LLM 모델을 학습시키는 데 활용되는 데이터 소스는 주로 인터넷에 공개된 대규모의 다양한 텍스트 데이터입니다. 이 데이터는 웹 문서, 뉴스 기사, 위키피디아 문서, 논문 등과 같은 다양한 출처에서 수집될 수 있습니다.

· RAG 모델은 이러한 출처 불분명의 한계를 뛰어넘기 위해 나온 기술이어서, RAG 모델에 활용되는 데이터 소스는 사용 용도에 따라 다양할 수 있습니다. 대부분은 RAG 도입 목적에 맞게 데이터 소스가 활용된다고 할 수 있습니다. 데이터 소스 형태는 현존하는 문서의 형태는 대부분 지원 가능하다고 보시면 됩니다. 워드, PDF는 물론이고, JSON 과 같은 파일 포멧도 데이터 소스로 활용될 수 있습니다.

· 이렇게 수집된 데이터는 작은 단위로 쪼개져서 벡터 서치가 가능한 형태로 저장되는 것이 일반적으로 활용되는 방법입니다. 이를 활용해서 답변이 필요한 경우, 이미 정의된 프롬프트 엔지니어링에 의거하여 LLM 이 답변을 생성하게 됩니다.

13.   개인정보 보호 및 보안 문제에 대해 어떻게 대응하고 계신가요?

· 해당 질문은 RAG 만을 위해 적용되는 질문이라고는 생각하지 않습니다. 마이크로소프트는 개인정보 보호 및 보안 문제에 대해 신중하게 대응합니다. 이를 위해 다음과 같은 방법을 사용합니다.

(1) 데이터 익명화 및 적법한 사용: 마이크로소프트는 학습 데이터를 익명화하고 적법한 방식으로 사용하는 데 주의를 기울입니다. 개인정보를 포함하는 데이터는 적절히 마스킹하거나 제거하여 개인을 식별할 수 없도록 처리됩니다.

(2) 데이터 보안 및 암호화: 마이크로소프트는 데이터를 안전하게 보호하기 위해 다양한 보안 기술을 활용합니다. 이에는 데이터 암호화, 네트워크 보안, 접근 제어 및 식별 관리 등이 포함될 수 있습니다.

(3) 규정 준수 및 인증: 마이크로소프트는 개인정보 보호에 관련된 규정 및 법률을 준수하며, 필요한 경우 외부 인증 기관으로부터 인증을 받습니다. 이를 통해 사용자에게 신뢰할 수 있는 서비스를 제공할 수 있습니다.

(4) 보안 감사 및 모니터링: 마이크로소프트는 시스템에 대한 보안 감사 및 모니터링을 수행하여 보안 위협을 식별하고 대응합니다. 이를 통해 시스템의 보안성을 유지하고 지속적으로 개선할 수 있습니다. 총론적으로, 마이크로소프트는RAG와 같은 기술을 개발하고 배포하는 과정에서 사용자의 개인정보 보호를 우선으로 생각하며, 다양한 보안 조치를 취하여 안전하고 신뢰할 수 있는 서비스를 제공합니다.

14.  향후 RAG 기술이 어떤 분야에서 가장 큰 영향을 미칠 것으로 예상하시나요?

· RAG 기술은 다양한 분야에서 큰 영향을 미칠 것으로 예상됩니다. 그 중에서도 몇 가지 주요한 분야는 다음과 같습니다.

(1) 자연어 이해 및 대화형 인터페이스: RAG 기술은 자연어 이해와 생성에 대한 발전을 이끌 것으로 예상됩니다. 이를 통해 더 자연스러운 대화형 인터페이스를 구현하고, 정보 검색 및 질문 응답 시스템을 개선할 수 있습니다.

(2) 지식 그래프 및 지식 그래픽 검색: RAG 기술은 대규모의 지식 그래프를 생성하고 활용할 수 있는 능력을 제공합니다. 이를 통해 사용자는 더욱 효율적으로 지식을 검색하고 응용할 수 있으며, 지식 기반 시스템의 발전을 촉진할 것으로 예상됩니다.

(3) 교육 및 학습 지원: RAG 기술은 교육 및 학습 분야에서도 큰 영향을 미칠 것으로 예상됩니다. 이를 통해 개별화된 학습 경험을 제공하고 학습자의 학습 과정을 지원할 수 있으며, 학습 자료의 생성 및 개선에 활용될 것으로 예상됩니다.

15.   RAG 기술의 상용화를 위해 어떤 노력을 기울이고 계신가요?

· RAG는 현재 AI의 한계를 보완하기 위한 기술이기 때문에, RAG 자체의 상용화를 위한 노력을 별도로 기울이고 있지는 않습니다.

· 하지만, 애저 오픈AI를 비롯한 AI 기술의 확산을 위해서, 프롬프트 엔지니어링 기반의 해커톤 행사를 주기적으로 진행하면서, 많은 고객분들이 조금 더 쉽고 재미있게 AI 와 익숙해질 수 있는 기회를 제공하고 있습니다. 올 하반기에는 해커톤을 조금 더 발전시켜서 AI 스튜디오를 활용한 AI 개발에 대해서도 쉽게 접극할 수 있는 세션을 마련하고자 합니다.

16.  RAG 기술 개발 과정에서 직면한 가장 큰 기술적 도전 과제는 무엇이었나요?

· RAG 가 결국에는 LLM 과 연동되어 작동하는 모델이기 때문에, LLM 이 갖고 있는 태생적인 문제를 동일하게 갖고 있습니다. 즉, LLM 자체가 결국 확률 기반 모델이기 때문이기 때문에 그 한계를 벗어나기는 어렵습니다.

· RAG 가 이 부분을 어느 정도 완화시켜 줄 수는 있으나, 완벽하게 문제를 해결할 수는 없습니다. 결국 LLM 데이터뿐만 아니라, RAG에 적용할 수 있는 데이터의 품질도 상당히 중요할 것으로 보입니다.

· 또한, RAG 에서도 특정한 데이터에 과도하게 노출되면 편향된 결과값을 출력할 수 있습니다. 이를 극복하고 일반화된 모델을 개발하는 것은 중요한 도전 과제입니다. 이러한 기술적 도전 과제를 극복하기 위해서는 혁신적인 알고리즘과 모델 아키텍처, 효율적인 데이터 수집 및 가공 방법, 그리고 강력한 컴퓨팅 자원과 인프라가 필요합니다.

· 결국 LLM이 갖고 있는 문제는 계속된 연구와 개발 노력을 통해 개선이 되어야 하고, 이를 기반으로 RAG 기술도 함께 발전해 나갈 수 있다고 생각됩니다.

17.  RAG를 활용한 AI 서비스의 성능을 평가하는 기준은 무엇인가요?

· 이는 결국 RAG 와 연동되는 LLM의 성능과 직접 연결되어 있습니다. LLM 서비스의 성능을 평가하는 기준은 다양할 수 있습니다만, 일반적으로 다음과 같은 요소들을 고려할 수 있습니다.

(1) 자연어 이해(Natural Language Understanding, NLU): AI 서비스가 사용자의 의도를 정확하게 이해하고 적절한 응답을 생성하는지를 평가합니다. 이는 문장의 의미를 올바르게 파악하고 관련된 정보를 추출하는 데에 중요한 요소입니다.

(2) 자연어 생성(Natural Language Generation, NLG): AI 서비스가 자연스러운 문장을 생성하고 의미적으로 일관된 내용을 제공하는지를 평가합니다. 이는 AI가 풍부한 어휘와 문법을 사용하여 사용자와 자연스러운 대화를 이끌어내는 데에 중요한 요소입니다.

(3) 문맥 이해(Contextual Understanding): AI 서비스가 문맥을 파악하고 이를 활용하여 응답을 생성하는지를 평가합니다. 이는 이전 대화 내용이나 주변 정보를 고려하여 응답을 개선하는 데에 중요한 요소입니다.

(4) 다양성(Diversity): AI 서비스가 다양한 종류의 응답을 생성하는지를 평가합니다. 이는 반복적이거나 지루한 응답을 방지하고 사용자에게 풍부한 경험을 제공하는 데에 중요한 요소입니다.

(5) 신뢰성(Reliability): AI 서비스가 정확하고 신뢰할 수 있는 응답을 생성하는지를 평가합니다. 이는 오류나 부정확한 정보를 최소화하고 사용자에게 신뢰할 수 있는 정보를 제공하는 데에 중요한 요소입니다.

18.  RAG 기술의 발전이 장기적으로 AI 산업에 어떤 변화를 가져올 것으로 전망하시나요?

· RAG 가 어떤 분야에서 가장 큰 영향을 미친 것인가와 비슷한 질문으로 이해했습니다. 결국 자연어 이해 및 생성의 발전, 교육 및 학습 지원의 발전을 통해서 AI 산업 발전에 중요한 역할을 하게 될 것이라 전망하고 있습니다.

[테크수다 기자 도안구 eyeball@techsuda.com]