앱 기능 구축 위해 언어 모델과 외부 도구, 사슬 엮듯 연결
챗GPT가 애플리케이션, 플러그인으로 발전 추세 가속화
‘언어 모델과의 인터페이스 지원, 모듈 간 입․출력 연결, 메모리 기능’ 등

(사진=게티 이미지)
(사진=게티 이미지)

[애플경제 이윤순 기자] 챗GPT가 이젠 애플리케이션으로 발전하고 있는게 최근의 추세다. 이에 다양한 챗GPT 플러그인(GPTs)이 큰 관심을 받는가 하면, ‘캐릭터.ai’나 ‘제피’ 등과 같은 페르소나 챗봇과 앱스토어 경쟁을 벌일 것으로 전망되기도 한다.

그런 가운데 이런 추세를 뒷받침하는 도구로 이른바 ‘랭체인(LangChain)’이 주목받고 있다.

“일종의 SW키트 내지 개발 프레임워크”

언어모델(LLM 또는 sLLM)을 활용해 애플리케이션 등 각종 플러그인 서비스를 개발하기 위해선 매우 까다로운 개발 과정을 거쳐야 한다. 그 중에서도 특히 만들고자 하는 앱이나 플러그인의 다양한 기능을 언어모델과 연결 내지 결합하는 일이다.

이를 가능하게 하는 것이 ‘랭체인’이다. 사이버 전문기업인 이글루코퍼레이션은 “(언어모델과 다양한 애플리케이션 기능 간의)통합을 간소화하도록 설계된 일종의 SDK(Software Development Kit)이자, 다양한 언어 모델을 기반으로 하는 애플리케이션 개발을 위한 프레임워크”라고 랭체인을 정의하고 있다.

이는 최근의 LLM 트렌드와도 맞물리는 것으로 판단된다. 즉, 오픈소스로 공개된 LLM을 기반으로 자체 LLM을 구축하고, 자체 데이터를 활용해 다양한 오픈소스 LLM을 용도에 맞게 최적화하는 과정에서 ‘랭체인’의 역할을 매우 중요해지는 것이다.

최근 스타트업 페스티벌 ‘컴업 2023’에서 만난 한 개발업계의 전문가가 말한 ‘GPTs의 Action 기능’과도 맥이 통한다. 그는 “앞으로는 플러그인보다는 GPTs Action을 주로 사용해 다양한 서비스를 출시하게 될 것”이라고 했다. GPTs Action을 구축하는 과정에서 역시 ‘랭체인’의 역할이 클 수도 있다.

챗GPT의 용도와 성능 다양화에도 한 몫

이는 챗GPT의 용도와 성능을 다양화하는데도 중요한 요소가 되고 있다. 단순한 질의응답으로만 쓰이던 챗GPT가 랭체인을 통해 Action을 구축하고, 직접 다양한 작업들을 수행할 수 있게 된다. 예를 들어, 택배업체 A사의 ‘GPTs’라면 직접 A사 서버에 접속해서 상품을 보거나 주문을 할 수가 있게 하는 식이다.

그 덕분에 GPTs가 차세대 앱스토어로 발전할 가능성이 높다는게 개발자나 전문가들의 중론이다. 사용자 한 사람 한 사람이 각자 자신의 노하우가 담긴 강의나 아바타, 엔터테인먼트 봇을 쉽게 만들 수 있다. 대부분의 기업들 역시 자신들의 제품이나 서비스와 연동하는 GPT봇을 앱스토어에 올려놓을 가능성이 크다.

(사진=게티 이미지)
(사진=게티 이미지)

그런 추세 속에 랭체인은 날로 중요한 애플리케이션 구축을 위한 프레임워크로 주목받고 있다.

랭체인은 ‘랭’과 ‘체인’이란 단어가 뜻하듯, 언어 모델(Language model)과 외부 도구를 마치 사슬(Chain)처럼 엮어 결합시켜 주는 것이다. 이에 대해 보안업체 이글루 코퍼레이션은 ‘앵무새와 체인 이미지의 조합’으로 표현했다.

한가연 마케팅 연구원은 “앵무새는 언어의 의미를 진정으로 이해하지 못한 채, 단지 방대한 데이터를 학습한 후 확률적으로 나오는 단어를 조합해 앵무새처럼 따라 하는 ‘확률적 앵무새(Stochastic Parrot)’, 즉 언어 모델을 가리킨다.”면서 “다시 말해 ‘언어 모델과 연결’의 조합을 직관적으로 드러내는 표현이라고 할 수 있다”고 묘사했다.

‘앵무새와 체인 이미지의 조합’으로 LLM에 ‘날개’

한 연구원은 그러면서 “‘랭체인’은 LLM에 날개를 달아준 격”이라며 “지난 2022년 미국에서 시작된 랭체인 오픈소스 프로젝트 이후, 빠르게 보급되었다.”고 짚었다.

그에 따르면 랭체인에는 여러 개의 모듈(Module)들이 존재한다. 대표적으로 언어 모델과의 인터페이스를 지원하는 모델 I/O(Model I/O), 그리고 한 모듈의 출력을 다른 모듈의 입력으로 연결하여 여러 구성 요소를 결합할 수 있도록 도와주는 체인(Chain)이 있다, 또한 과거 메시지를 저장하고 접속할 수 있도록 지원하는 메모리(Memory)도 갖추고 있다.

사용자는 이처럼 사전에 설정된 모듈을 적절히 혼합, 구성 요소(Component)로 만든다. 그런 다음 각 구성 요소 간의 파이프라인을 설정해 일관된 단일 애플리케이션을 구축할 수 있게 된다.

“여러 가지의 모듈이 모여 하나의 구성 요소를 만들고, 이렇게 모인 구성 요소를 체인으로 엮으면서, 마치 차곡차곡 블록을 쌓고 합쳐가듯 최종 애플리케이션을 완성하게 되는 방식”이란 설명이다.

실제로 최근 개발자들이 실험적으로 시도하는 챗GPT 아바타 만들기도 그런 작업의 일환이다. 예를 들어 우선 특정 세대의 말투나, 특유의 문장, 습관적 단어 등의 프롬프트를 입력한다. 그리고 txt 파일에 레플리에 대한 정보를 입력, 놀리지(Knowledge)에 업로드하는 방법이다. 프롬프트는 길이에 한계가 있지만 놀리지는 제한이 없다. 그 결과 프롬프트에서 설정한 페르소나와 똑같은 수준의 챗봇을 쉽게 제작할 수 있다.

챗GPT 앱 구축에 큰 도움, ‘LLM 밀키트’ 비유

또 강의자료나 책을 올려 지식을 전달하거나, 구연동화나 재미있는 설화를 들려주는 엔터테인먼트 챗봇도 가능하다. 유명 인플루언서나 연예인을 그대로 모방한 아바타를 만들 수도 있다. 이런 모든 과정은 ‘랭체인’이 있기 때문에 가능한 것이다.

앞서 이글루의 한 연구원은 이를 ‘LLM 밀키트’에 비유하기도 했다. 즉 만들고 싶은 애플리케이션이 있지만 각 구성요소를 갖추기 어렵거나, 개발 방법이 복잡하거나, 개발할 시간이 넉넉하지 못할 때 랭체인을 활용하면 된다. 그러면 비교적 빠르고 간편하게 애플리케이션을 개발할 수 있다.

실제로 초거대 AI를 개발할 여력이 없는 기업들도 최근엔 비즈니스에 특화된 LLM을 구축하고 있다. 물론 ‘랭체인’과 성격은 다소 다를 수 있다. 그럼에도 불구하고, LLM이 더욱 널리, 그리고 한층 다양하게 활용될 수 있게 하는 최신 소프트웨어 스택의 한 요소로 ‘랭체인’이 빠르게 보급되고 있는게 최근의 추세다.

키워드

#LLM #랭체인
저작권자 © 애플경제 무단전재 및 재배포 금지