들어가며
거대 언어 모델 (이하 LLM, Large Language Model)이 빠르게 기술 시장을 잠식하는 시대에 접어들며 FMOps (Foundation Model Operations)라는 방법론이 떠오르고 있습니다. 기반 모델 (Foundation Model; 줄여서 FM)이라는 용어는 2021년 8월에 스탠퍼드 대학에서 처음 사용된 만큼, 기반 모델이라는 용어를 포함하는 FMOps라는 기술 트렌드는 비교적 새롭게 등장한 기술 트렌드입니다 (LLMOps라고도 칭합니다). 현재 FMOps 시장은 활발하게 형성되고 있는 단계인 것으로 보이며, 개별적인 단계를 지원하는 플레이어들이 있는 반면에 가장 최근에는 MS와 같이 풀스택, 엔드 투 엔드 FMOps 플랫폼 구축을 시도하는 사례가 등장하고 있습니다. 그럼 금주에는 FMOps라는 새롭게 등장한 기술 트렌드와 최신 주요 사례들은 무엇이 있는지 살펴보고, FMOps의 필요성에 대하여 간략히 다루어 보겠습니다.
FMOps란?
MLOps에 이어 새롭게 등장하고 떠오르고 있는 기반 모델, 그중에서도 특히 LLM 기반의 앱 개발을 위한 방법론입니다.
기반 모델이 더욱 빠른 속도로 발전하고 있는 LLM 시대 속 AI 앱을 개발하는 새로운 수단으로 떠오르고 있습니다.
※ LLMOps가 아닌 FMOps라는 표현을 선택하여 사용하는 이유는? LLMOps는 자연어 처리 분야에만 국한되는 기반 모델을 칭하는 용어인 LLM이 포함된 반면 FMOps는 자연어 처리를 포함한 이미지, 음성 등 더욱 다양한 모달리티의 기반 모델들 (예: DALL-E) 을 포함하여 해당 용어를 사용하게 되었습니다. 하지만 현재 시장에서는 기반 모델 중에서도 LLM을 활용하여 앱을 개발하는 것에 관심이 몰려있기 때문에 두 용어는 현재 혼재되어 사용되고 있습니다.
FMOps 워크플로우와 핵심 기술 요소들
FMOps를 제공하는 서비스나 플랫폼이 되기 위해 요구되는 핵심 기술 요소들을 정리해 보았습니다. 이 요소들은 향후 LLM 기반 앱 개발이 보편화되면서 앞으로 더 중요성이 커질 것으로 전망됩니다.
1. 프롬프트 엔지니어링, 관리, 그리고 체이닝
LangChain은 복잡한 태스크 수행이 가능한 LLM 앱 개발을 위해 꼭 필요한 체인 (또는 모델 API) 프레임워크로 꼽힙니다. 이와 같은 개념은 2022년 하반기에 처음 등장하였고 당시에는 널리 알려지고 회자되는 개념은 아니었는데요, 올해 상반기 기반 모델 기반 커스텀 앱 개발에 대한 관심이 높아지면서 현재는 메인스트림한 기술 프레임워크로 자리 잡았습니다. LangChain과 같은 체인 프레임워크와 프롬프트 체이닝 기법은 이전에 소개드린 자율 AI 에이전트의 핵심 기술 요소이기도 한데요. FMOps는 기반 모델의 성능 향상을 위한 주요 수단으로 프롬프트 엔지니어링과 프롬프트 관리 기능을 제공하는 것은 물론, LangChain과 같은 체인 프레임워크를 기반으로 LLM이 외부 툴을 활용하여 보다 복잡한 태스크를 수행할 수 있도록 여러 개의 프롬프트들을 연결하는 ‘프롬프트 체이닝 (Prompt Chaining)’을 지원하는 것이 가장 주된 특징입니다.
2. 데이터 임베딩과 기반 모델 파인튜닝
기반 모델들에 주입하는 데이터는 모델의 성능과 직결되어 매우 중요한 요소로 꼽힙니다. 기반 모델은 다량의 일반적이고 광범위한 데이터를 기반으로 학습된 거대한 언어 모델이기 때문에 기반 모델이 특정 유즈 케이스에서 원하는 성능을 발휘하도록 하기 위해서는 도메인, 사용자 등 특정 데이터를 가져오고, 인덱싱한 후 모델에 주입하여 파인튜닝해주어야 합니다. FMOps에서는 기본적으로 반복적인 프롬프트 엔지니어링을 통해 기반 모델의 답변 성능을 향상합니다. 하지만 프롬프팅만으로 기반 모델 답변 향상에 한계가 있거나, 토큰 소비량이나 답변 지연성을 대폭 줄여야 한다고 판단이 될 때에는 파인튜닝이 필요합니다. 파인튜닝의 방식은 다양하지만, 기존에 특정 태스크 데이터를 기반으로 학습된 기반 모델에 특정 도메인이나 내용의 질문에 답변을 더욱 잘할 수 있도록 사용자의 특정 데이터를 추가로 주입하는 전이 학습 (Transfer Learning) 방식이 FMOps에서 가장 대표적으로 사용되고 있습니다.
3. 모델 모니터링과 검증
모델 모니터링과 검증은 AI/ML 분야에서 새로운 것은 아니지만, 최근 사람들의 기반 모델에 대한 관심이 증가하면서 니치 (niche)한 시장에서 메인스트림 (mainstream)한 시장으로 이동하고 있습니다. 특히 LLM으로 인해 대중의 responsible AI (책임감 있는 AI, 편향되거나 위험한 정보를 분별하는 AI)에 대한 인식과 우려가 높아졌고, LLM의 이러한 문제점을 완화하기 위한 장치로서 모델의 지속적인 모니터링과 검증은 더욱 필수적이고 중요해지고 있습니다.
MLOps와는 무엇이 다른가?
사용자가 MLOps와 FMOps 플랫폼에서 각각 모델을 어떻게 다루는지, 주요 차이점을 중심으로 표로 정리해 보았습니다. MLOps가 AI 모델의 개발, 배포, 최적화를 위한 플랫폼이라면 FMOps는 이미 학습을 마치고 배포된 모델과 자사 또는 자신의 데이터를 결합하여 커스텀한 LLM 기반 AI 앱을 만드는 것이 주된 차이점이라고 할 수 있습니다.
FMOps 주요 오퍼링과 플레이어들
아래는 FMOps 플랫폼이 계층별로 어떤 주된 기능들을 제공하는지 표로 정리해 본 것입니다. FMOps의 사전적 정의는 ‘방법론'이지만 이를 전체적으로, 또는 부분적으로 지원하기 위한 서비스와 플랫폼이 제공되고 있습니다. 기존에는 아래와 같이 각 계층의 기능 별 주요 플레이어를 함께 정리해 두었습니다. 주요 플레이어들은 FMOps의 기능 일부를 제공하는 플레이어들이 자리 잡고 있었으며, 가장 최근에는 MS가 같이 모든 계층의 오퍼링을 아우르는, 엔드 투 엔드 플랫폼을 제공하고자 하는 것을 볼 수 있습니다.
FMOps 최신 주요 플레이어들
기존에 MLOps 플랫폼도 초반에는 엔드 투 엔드 플랫폼을 지향하였으나, 복잡도로 인하여 실패로 끝났습니다. 오늘날 사용자 및 기업은 섬세한, 원하는 퀄리티의 모델을 인하우스로 개발, 학습 및 배포를 시킬 수 있었지만 MLOps의 스택은 올인원의 형태가 아닌 모듈화 되어 있으며, 각 모듈 별로 다수의 벤더가 서로 얽혀있습니다. FMOps 또한 MLOps와 마찬가지로 다수의 벤더사들이 얽혀 있는데요. 최근에는 이에 반해 보다 간단히 모델을 API로 호출하고, 모델을 파인튜닝이 아닌 프롬프트 엔지니어링과 체이닝을 통해 원하는 목적에 맞는 대화형 앱을 설계한 후 최종적으로 배포까지 단일 플랫폼에서 FMOps 워크플로우를 엔드 투 엔드로 제공하려는 시도가 이루어지고 있습니다. 이와 같은 시도들은 최근에 관측되기 시작하여, 향후 시장에 어떤 플레이어들이 추가적으로 등장할지 지켜보아야 할 것 같습니다. 엔드 투 엔드 FMOps 플랫폼을 제공하고자 하는 가장 대표적인 기업과 오퍼링은 'MS의 Azure AI Studio'와 ML Studio의 신규 기능 'Prompt Flow'가 있으며, 오픈소스 진영에서는 엔드 투 엔드는 아니지만 LangChain 기반 프롬프트 체이닝을 노코드 드래그 앤 드롭 UI로 제공하는 'FlowiseAI'가 있어 아래 간단하게 소개드립니다. 이외에도 위 도표에서 살펴보았듯이 기존에 FMOps의 핵심 오퍼링을 제공하는 주요 플레이어들이 다수 존재하지만, 본 글에서는 가장 최근에 발견되거나 많이 회자되고 있는 사례들을 추린 것 입니다.
MS Azure AI Studio
Microsoft Build 2023에서 MS가 AI 에이전트 Copilot을 행사 전반을 관통하는 핵심 오퍼링으로 포지셔닝하였다는 점이 인상 깊었는데요. B2C 시장에서는 코파일럿이 있다면, B2B 시장에서는 MS가 고객이 보다 자신의 조직의 니즈에 맞는 커스텀한 코파일럿을 쉽게 만들고 배포할 수 있는 플랫폼인 ‘Azure AI Studio’, 그리고 이 코파일럿의 성능을 보다 쉬운 프롬프트 엔지니어링을 통해 향상할 수 있게 돕는 Azure ML Studio의 ‘Prompt Flow’ 기능에 주목할 필요가 있습니다.
※ 아래 내용들은 Microsoft Build 2023의 데모 영상과 MS 공식 블로그 글에 이제까지 발표된 내용들을 토대로 작성한 것이며, 제품의 명칭과 모습 등 보다 세부적인 것들은 추후 변형될 수 있을 것으로 예상되는 점 참고 부탁드립니다. 특히 MS가 기존에 제공하던 Azure ML Studio와 밀접한 연관이 있어 두 가지로 나뉘어보이는 오퍼링들이 추후에는 하나로 소개될 가능성도 있다고 보여집니다.
기업 사용자들이 커스텀 LLM 앱을 개발부터 배포까지 할 수 있는 플랫폼입니다. 현재 Azure AI Studio는 Preview로 사용해 볼 수 있도록 도큐멘테이션과 공지를 준비 중에 있습니다. 단 몇 번의 클릭만으로 개발자들이 자신의 데이터를 가져와 LLM 기반의 대화형 AI 모델을 개발 및 배포할 수 있는 것이 특징입니다. 사용자는 OpenAI, HuggingFace, Open Source LLM 모델들 중에 선택 가능합니다.
Azure ML Studio ‘Prompt Flow’ 기능
Azure AI Studio에서 모델과 데이터를 연결하여 LLM 기반 앱을 1차적으로 완성했다면, Prompt Flow는 프롬프트 엔지니어링과 프롬프트 체이닝을 통해 모델이 더욱 나은 답변을 줄 수 있게 하고 또 프롬프트들을 서로 체인으로 연결시켜 보다 복잡한 태스크 수행이 가능하도록 상세하게 프롬프트의 흐름을 수정할 수 있게 하는 기능입니다. MS는 금년 Build 행사에서 이를 머신러닝이나 AI에 대한 정보 없이도 프롬프트 엔지니어링이 가능한 최초의 E2E 프롬프트 엔지니어링 툴이라고 소개하였습니다.
또한 Prompt Flow는 작업에 필요한 자체 그리고 외부 도구들을 준비해놓고, 또 작업의 흐름도를 보다 직관적으로 보여주어 애자일한 프롬프트 엔지니어링이 가능해졌다는 것이 차별점으로 두고 있습니다. MS는 빌트인 툴 및 리소스 (자연어 프롬프트 결합, 언어 템플릿화, 파이썬 코드)를 통해 사용자들이 보다 쉽게 자신의 프롬프트들을 트래킹 하고, 재생산하고, 시각화하고, 비고 하고, 분석하고, 향상할 수 있게 하였습니다. 또한 사용자가 보다 빠르게 프롬프트를 보고, 설계하고 관리할 수 있도록 하는 노트북 형태의 프로그래밍 인터페이스, Directed Acyclic Graph (DAG) View, 그리고 Chatbot 테스트 대화 창을 제공하여 사용자가 기존보다 빠르고 쉽게 기업의 특성에 맞는 LLM 기반 앱 개발을 할 수 있도록 UI를 설계하였습니다.
FlowiseAI
LangChain 기반의 노코드 LLM 앱 개발 플랫폼입니다. 오픈소스로 무료이며 MIT 라이선스 기반으로 앱 개발 후 상업 용도로 사용할 수 있습니다 (플랫폼을 사용하는 것 자체는 무료이지만 당연하게도 호스팅 하는 모델에 따라 과금이 될 수 있습니다). FlowiseAI가 출시되기 전, 오픈소스로 LangFlow라는 유사한 플랫폼이 먼재 출시 및 많은 사람들의 관심을 받았는데요. 현재는 FlowiseAI가 보다 빠른 속도로 LangFlow와 거의 유사한 인지도를 얻고 있습니다.
FlowiseAI 사용자는 LLM 모델과 외부 API 간 연결(프롬프트 체이닝)을 드래그 앤 드롭으로 할 수 있어 오픈소스 LLM 앱을 빠르게 개발하고 배포한 후 동작하는 것까지 확인해 볼 수 있는 것이 특징입니다. 하지만 마이크로소프트와 같이 LangChain 외 다른 체인 프레임워크를 지원하지 않으며 FMOps 워크플로우 중에서도 프롬프트 체이닝 과정을 사용자가 보다 직관적으로 수행할 수 있도록 노코드, UI화 하였다는 것이 특징입니다. 따라서 FlowiseAI의 경우, MS ML Studio의 Prompt Flow 기능과 비교할 수 있는 오퍼링이라고 보여집니다.
나가며
LLM의 전세계적 열풍과 함께 이를 기반으로 한 앱 개발에 대한 관심 또한 높아졌고, 이에 FMOps라는 신생 기술 트렌드가 등장했습니다. FMOps는 누구나 보다 쉽고 빠르게 클릭과 자연어만으로 LLM 기반 AI 앱을 단일 플랫폼에서 개발, 배포 그리고 관리까지 할 수 있는 엔드 투 엔드 플랫폼으로 거듭나고 있으며, AI 산업 시대 속 전문가 뿐만이 아닌 더 많은 사용자들이 커스텀한 AI 앱, 어시스턴트를 개발할 수 있는 주된 방법으로 자리잡을 것으로 전망됩니다.
FMOps의 필요성 (1) 노코드 • 로우코드 오퍼링으로 전문가와 비전문가 사용자 모두가 LLM 기반 앱 개발 가능
MLOps와는 다르게, FMOps는 전문 지식이나 경험이 없어도 기반 모델을 활용하여 앱을 누구나 클릭만으로 개발, 배포, 최적화까지 할 수 있습니다. 사용자는 기반 모델과 자신의 커스텀한 데이터를 가져오기만 하면 LLM 기반의 앱, 즉 대화형 어시스턴트 설계가 가능한데요. 누구에게나 친숙한 임시 채팅 인터페이스에서 앱과 대화를 하며 즉각적으로 성능을 확인해볼 수 있으며, 배포 후 관리도 스스로 할 수 있습니다. 사용자들은 FMOps로 전문 지식의 유무와 관계없이 더 많은 유형의 사용자들이 기반 모델을 가지고 다양한 실험과 실제 사용할 앱 개발을 보다 쉽고 빠르게 수행할 수 있습니다.
FMOps의 필요성(2) 프롬프트 엔지니어들의 플레이그라운드
LLM이 보다 정확하게 원하는 답변을 내놓게끔 유도하는 방식인 프롬프트 엔지니어링을 이전에 소개드린 바 있습니다. 프롬프트 엔지니어링은 프롬프트를 설계하는 단계도 있지만, 더 나아가 프롬프트 관리와 프롬프트끼리 서로 연결하여 LLM이 더욱 복잡한 태스크 수행을 할 수 있게 하는 프롬프트 체이닝이 있습니다. FMOps 서비스와 플랫폼은 프롬프트를 반복적으로 설계하여 입력하는 과정을 간소화 해줄 뿐만 아니라, 프롬프트 체이닝 기능을 통해 기반 모델이 더욱 복잡한 태스크를 수행할 수 있도록 합니다. MS Azure ML Studio의 Prompt Flow가 LLM 시대에서 필수적인 프롬프트 엔지니어링, 관리, 그리고 체이닝에 필요한 직관적인 인터페이스와 각종 빌트인 툴들을 한데 제공하는 것을 보며, 이와 같은 FMOps 오퍼링을 제공하는 서비스와 플랫폼들이 향후 프롬프트 엔지니어들의 주 무대가 될 것으로 예상됩니다.
written by Sarah
댓글