2024년에는 선택할 수 있는 오픈 소스 챗봇 플랫폼이 많이 있습니다. 가장 적합한 플랫폼은 사용자의 경험, 코딩 언어, 원하는 기능, 특정 사용 사례 등 챗봇 구축 요구사항에 따라 달라집니다.
최고의 오픈 소스 챗봇 플랫폼 목록을 정리해 보았습니다. 개인이 직접 구축하든 회사에서 구축하든 프로젝트에 적합한 플랫폼을 찾을 수 있습니다.
오픈 소스 챗봇이란 무엇인가요?
오픈소스 챗봇은 사람의 대화를 모방한 메시징 애플리케이션입니다. 오픈소스란 소프트웨어의 원본 코드가 자유롭게 배포되고 쉽게 수정할 수 있다는 의미입니다.
오픈소스 소프트웨어는 공유된 기여를 통해 더 높은 수준의 투명성, 효율성 및 제어를 제공합니다. 이를 통해 개발자는 소프트웨어 플랫폼 자체에 대한 지식을 늘리면서 더 높은 품질의 소프트웨어를 만들 수 있습니다.
또는 오픈 소스 챗봇과 독점 솔루션을 비교하는 몇 가지 장단점을 간략하게 설명한 클로즈드 소스 chatbots 소프트웨어도 있습니다.
이제 2024년 최고의 오픈소스 챗봇 몇 가지를 살펴보겠습니다.
1. Botpress
Botpress 는 다양한 자연어 이해(NLU) 라이브러리를 지원하는 오픈 소스 대화형 AI 소프트웨어입니다.
Botpress 은 시각적 흐름과 인텐트, 엔티티, 슬롯 형태의 소량의 트레이닝 데이터를 사용하여 챗봇을 구축하도록 설계되었습니다. 이를 통해 챗봇 개발 비용을 크게 절감하고 데이터 요구 사항으로 인한 진입 장벽을 낮출 수 있습니다.
Botpress 에는 시각적 대화 빌더와 대화를 테스트할 수 있는 에뮬레이터가 있습니다. 내장된 JavaScript 코드 편집기를 사용하면 특정 작업을 수행하는 데 사용할 수 있는 작업을 코딩할 수 있습니다. NLU 모듈을 사용하면 인텐트, 엔티티, 슬롯을 정의할 수 있습니다. 이를 통해 대화 어시스턴트가 사용자의 입력을 이해할 수 있습니다.
Botpress 는 Facebook Messenger, Slack, Microsoft Teams, Telegram 등 가장 인기 있는 메시징 서비스와의 통합을 적극적으로 유지하고 있습니다.
이 플랫폼은 주로 최대한의 제어 기능을 갖춘 개방형 시스템을 필요로 하는 개발자를 위해 만들어졌습니다. 하지만 시각적 대화 빌더 덕분에 대화 디자이너가 개발자를 대신하여 프로젝트에 참여하여 협업하는 것도 쉽습니다.
Botpress 를 사용하면 서로 다른 기술을 가진 전문가들이 협업하여 더 나은 대화형 어시스턴트를 구축할 수 있습니다.
G2와 Chatimize에서 Botpress 에 대한 종합적인 리뷰를 읽어볼 수 있습니다.
2. Microsoft 봇 프레임워크↪CF_200D↩ 2.
Microsoft 봇 프레임워크(MBF)는 봇을 구축하기 위한 오픈 소스 플랫폼을 제공합니다.
Microsoft의 접근 방식은 주로 코드 중심이며 개발자만을 대상으로 합니다. 개발자는 MBF를 통해 챗봇 구축 환경을 세밀하게 제어하고 다양한 기능과 커넥터에 즉시 액세스할 수 있습니다.
MBF는 챗봇을 만드는 과정을 지원하는 다양한 도구를 제공합니다. 또한 자연어 이해 엔진인 루이스와 통합할 수도 있습니다.
Microsoft는 또 다른 오픈 소스 플랫폼인 Botkit도 인수했습니다. 봇킷은 시각적 대화 빌더에 가깝지만 사용자가 사용할 수 있는 UI 작업에 더 중점을 두고 있습니다.
MBF에서 사용하는 NLU 엔진인 루이스는 독점 소프트웨어이므로 완전한 오픈 소스로 간주할 수 없습니다. 이는 사용자의 상황에 따라 더 많은 제어권을 갖는 데 문제가 될 수 있습니다.
오픈 소스가 아닌 NLU 엔진의 단점은 온프레미스에 설치할 수 없다는 것입니다. 이 역시 Microsoft의 입장에서는 이해할 수 있는 부분인데, MBF와 Luis는 Azure 플랫폼 사용을 촉진하기 위해 내장된 제품이기 때문입니다. 루이스는 각 API 호출에 대해 비용을 지불하는 서비스이므로 월별 청구서가 가파르게 증가할 수 있습니다.
3. 봇킷↪CF_200D↩
봇킷은 이제 Microsoft 봇 프레임워크의 일부입니다. 개발자를 위해 만들어진 코드 중심 플랫폼으로 잘 알려져 있습니다.
봇킷은 Microsoft 봇 프레임워크를 포괄하는 더 큰 개발자 도구 및 SDK 세트의 일부일 뿐입니다. 봇 프레임워크 SDK는 봇킷이 구축되는 기반을 제공합니다. 여러 프로그래밍 언어로 제공됩니다!
웹엑스, Slack, 페이스북 Messenger, 구글 행아웃 등 다양한 채팅 플랫폼용 플러그인을 다수 보유하고 있습니다.
봇킷은 최근 코딩 경험이 많지 않은 사용자도 참여할 수 있는 chatbots 개발을 돕기 위해 시각적 대화 빌더를 만들었습니다.
봇킷은 루이스를 기본 NLU 엔진으로 사용합니다. 그러나 필요한 경우 다른 NLU 엔진과 통합할 수 있습니다.
4. Rasa
Rasa는 챗봇 구축에 대한 스토리 접근 방식에 중점을 둔 오픈 소스 봇 구축 프레임워크입니다. Rasa는 오픈 소스 자연어 이해 엔진의 선구자이자 잘 정립된 프레임워크입니다.
이들은 인공지능과 개발자가 지속적으로 인공지능 비서를 구축하고 개선할 수 있는 프레임워크 구축에 중점을 둡니다.
개발자는 플랫폼 내에서 시각적 흐름과 의도를 정의하는 대신 Rasa를 사용하여 봇을 학습시키기 위해 설계된 스토리(학습 데이터 시나리오)를 만들 수 있습니다.
Rasa는 완전한 오픈 소스인 표준 NLU 엔진을 온프레미스로 제공합니다. 개발자가 대화를 검토하고 어시스턴트를 개선하는 데 도움이 되는 도구 세트인 Rasa X를 구축했습니다. Rasa는 또한 엔터프라이즈 라이선스로 사용할 수 있는 많은 프리미엄 기능을 제공합니다.
모든 챗봇 플랫폼에는 일정량의 학습 데이터가 필요하지만, Rasa는 일반적으로 고객 서비스 채팅 로그 형태의 대규모 학습 데이터 세트가 제공될 때 가장 잘 작동합니다. 이러한 고객 서비스 채팅은 구문 분석, 정리, 분류를 거쳐 최종적으로 NLU 엔진을 훈련하는 데 사용됩니다.
스토리 접근 방식의 한 가지 잠재적인 문제는 기본 로직에 접근할 수 없는 블랙박스이기 때문에 특정 순간에 봇이 어떤 말을 할지 예측하기 어려울 수 있다는 것입니다. 대량의 고품질 학습 데이터를 보유하면 이러한 위험을 줄일 수 있습니다.
5. Wit.ai
Wit.ai는 2015년에 Facebook이 인수한 오픈소스 챗봇 프레임워크입니다. 오픈 소스이기 때문에 Wit.ai를 사용하여 구축된 기존 봇과 앱을 검색하여 프로젝트에 대한 영감을 얻을 수 있습니다.
Wit.ai는 플랫폼을 처음 접하는 개발자도 빠르게 시작할 수 있도록 잘 문서화된 오픈 소스 챗봇 API를 제공합니다.
페이스북이 소유하고 있기 때문에 페이스북 Messenger 에 봇을 배포할 계획이라면 Wit.ai 를 선택하는 것이 좋습니다. Facebook은 Messenger 에서 Wit.ai chatbots 를 간단하게 배포할 수 있습니다.
Wit.ai의 챗봇 프레임워크에 탑재된 자연어 처리(NLP) 엔진은 Microsoft, Amazon, IBM과 같은 경쟁사와 비교했을 때 강력하고 뛰어난 성능을 자랑합니다.
Wit.ai용 SDK는 Python, Ruby, NodeJS 등 여러 언어로 제공됩니다.
Wit.ai는 Facebook Messenger, Slack, 웨어러블 기기, 홈 오토메이션 등 다양한 플랫폼과 쉽게 통합됩니다.
이 프레임워크의 단점 중 하나는 교육이 상당히 힘들 수 있다는 것입니다. 필요한 양의 슬롯과 매개변수가 부족합니다. 이를 보완하려면 명시되지 않은 정보를 처리하기 위해 비즈니스 로직을 사용해야 합니다.
6. OpenDialog
오픈다이얼로그는 2018년에 시작된 엔터프라이즈 규모의 오픈소스 대화형 AI 플랫폼입니다.
OpenDialog를 사용하면 효율적으로 배포, 통합 및 교육할 수 있습니다. 스마트 대화 엔진을 통해 사용자는 필요에 따라 사용자 지정하고 통합할 수 있습니다. 유연한 NLU 지원으로 당면한 문제에 가장 적합한 AI 기술을 사용할 수 있습니다.
또한 OpenDialog에는 코드 없이 대화를 디자인하고 프로토타입을 빠르게 제작할 수 있는 대화 디자이너가 있습니다.
대화형 AI 전략을 관리하고 미래에 대비할 수 있습니다.
오픈 소스이며 쉽게 확장 가능한 아키텍처는 혁신을 지원하며, 솔루션 전반에서 대화 구성 요소를 재사용할 수 있어 팀과 함께 확장할 수 있는 툴입니다.
OpenDialog의 주요 기능은 다음과 같습니다:
- 실시간 STT 프로세스 수행 능력
- 낮은 메모리 사용량(20,000단어 기준 64MB 미만)
- N- 베스트/워드 그래프 출력 생성 기능
- 서버 단위로 작업할 수 있는 기능.
이 소프트웨어를 사용하면 코딩 언어에 대한 사전 경험이 없어도 첫 번째 대화형 애플리케이션을 쉽게 구축할 수 있습니다.
OpenDialog는 PHP로 작성된 노코드 플랫폼으로 Linux, Windows, macOS에서 작동합니다. OpenDialog는 Apache 라이선스 버전 2.0에 따라 라이선스가 부여됩니다.
7. 보토닉
Botonic은 대화형 앱을 구축하기 위한 리액트 프레임워크입니다. 단순한 텍스트 기반 챗봇을 만드는 것 이상의 기능을 제공합니다. 개발자를 위해 구축되었으며 완전한 서버리스 솔루션(stack )을 제공합니다. 이를 통해 개발자는 웹, 모바일, 메시징 앱( Messenger, Whatsapp, Telegram 등 여러 플랫폼에서 작동하는 챗봇과 최신 대화형 앱을 만들 수 있습니다.
Botonic을 사용하면 텍스트 인터페이스(단순성, 자연어 상호 작용)와 그래픽 인터페이스(멀티미디어, 시각적 컨텍스트, 풍부한 상호 작용)의 장점을 통합한 대화형 애플리케이션을 만들 수 있습니다. 이는 텍스트와 NLP에만 의존하는 기존 chatbots 보다 더 나은 사용자 경험을 제공하는 강력한 조합입니다.
Botonic 기능에는 인기 있는 서비스를 프로젝트에 쉽게 통합할 수 있도록 다양한 플러그인이 포함되어 있습니다.
Botonic은 타입스크립트와 자바스크립트로 작성되었습니다. React, 서버리스, 텐서플로우를 기반으로 구축되었습니다. Botonic은 Linux, Windows, macOS에서 작동합니다.
Botonic은 MIT 라이선스에 따라 라이선스가 부여됩니다.
8. 클라우디아 봇 빌더
클라우디아 봇 빌더는 Facebook Messenger, Telegram, Skype, Slack 슬래시 명령, Twilio, Kik 및 GroupMe용 봇을 만들 수 있도록 도와주는 클라우디아.js의 확장 라이브러리입니다. 이 오픈 소스 프로젝트의 핵심 아이디어는 모든 상용구 코드와 일반적인 인프라 작업을 제거하여 봇의 정말 중요한 부분을 작성하는 데 집중할 수 있도록 하는 것입니다.
클라우디아는 지원되는 모든 플랫폼에 적합한 웹훅을 자동으로 설정하고 액세스 구성 과정을 안내하므로 빠르게 시작할 수 있습니다.
클라우디아 봇 빌더는 메시징 워크플로우를 간소화하고 지원되는 모든 플랫폼에서 수신되는 메시지를 공통 형식으로 변환하므로 쉽게 처리할 수 있습니다. 또한 텍스트 응답을 요청하는 봇 엔진에 적합한 형식으로 자동으로 패키징하므로 간단한 응답에 대한 결과 서식 지정에 대해 걱정할 필요가 없습니다.
클라우디아는 MIT 라이선스에 따라 라이선스가 부여되었습니다.
9. 9.
Tock은 오픈 소스 대화형 AI 플랫폼입니다. 대화형 에이전트와 봇을 구축할 수 있는 완벽한 솔루션입니다. 타사 API를 지원하거나 이에 의존하지 않습니다.
Tock은 스토리 및 분석 기능을 구축할 수 있으며, Kotlin, Node.js, Python 및 REST API를 위한 대화형 DSL을 갖추고 있으며, 다양한 텍스트/음성 채널에 연결할 수 있습니다: Messenger, WhatsApp, 구글 어시스턴트, 알렉사, 트위터 등 다양한 텍스트/음성 채널에 연결할 수 있습니다.
Tock은 사용자 정의 웹/모바일 통합을 위한 툴킷을 React 및 Flutter와 함께 제공하며, cloud 또는 온프레미스에서 Docker를 사용하여 배포할 수 있는 기능을 제공합니다. Tock은 Apache 라이선스 버전 2.0에 따라 라이선스가 부여되었습니다.
10. BotMan
BotMan은 챗봇 개발을 위한 무료 PHP 프레임워크입니다. 전 세계에서 가장 인기 있는 오픈 소스 PHP 챗봇입니다. BotMan은 개발자가 Slack, Telegram, 마이크로소프트 봇 프레임워크, 넥스모, 힙챗, 페이스북 Messenger, 위챗 등 여러 메시징 플랫폼을 위한 혁신적인 봇을 개발하는 작업을 간소화할 수 있도록 만들어졌습니다.
BotMan을 사용하면 챗봇 로직을 한 번 작성하여 Amazon Alexa, Facebook Messenger, Slack, Telegram, 또는 자체 웹사이트를 포함한 다양한 메시징 서비스에 연결할 수 있습니다.
BotMan은 프레임워크에 구애받지 않으므로 기존 코드베이스에서 원하는 프레임워크로 사용할 수 있습니다. BotMan은 프레임워크 코드가 아닌 비즈니스 로직에 집중할 수 있도록 표현력이 뛰어나면서도 강력한 구문을 제공합니다.
BotMan은 전체 설명서를 제공하며 PHP로 작성되어 Linux, Windows, macOS에서 작동합니다. BotMan은 MIT 라이선스에 따라 라이선스가 부여됩니다.
11. 보텐더
Bottender는 대화형 사용자 인터페이스를 구축하기 위한 프레임워크로서 메시징 API를 기반으로 구축됩니다.
이 프레임워크는 설정이 간편하고 실제 사용 사례, 자동 일괄 처리 요청, 직관적인 API 등 수십 가지의 매력적인 기능에 최적화되어 있습니다.
Bottender는 복잡한 대화형 UI를 대신 처리해줍니다. 각 이벤트에 대한 액션을 디자인하고 애플리케이션에 명시하면 Bottender가 그에 따라 실행됩니다. 이 접근 방식은 코드를 더 예측 가능하고 디버깅하기 쉽게 만듭니다.
Bottender를 사용하면 채널, 자동 서버 수신, webhook 설정, 서명 인증 등 몇 가지 설정만 하면 봇을 작동시킬 수 있습니다.
수천 개의 봇이 Bottender로 구동되고 있습니다. 실제 사용 사례, 자동 일괄 처리 요청 및 기타 수십 가지의 매력적인 기능에 최적화되어 있습니다.
Bottender를 사용하면 모든 채널에서 앱을 제작할 수 있으며 사용자 경험에 타협하지 않아도 됩니다. 빌딩 블록에 점진적인 개선 또는 점진적인 성능 저하 전략을 적용할 수 있습니다.
Bottender에는 대화를 정의하는 데 도움이 되는 몇 가지 기능적 및 선언적 접근 방식이 있습니다. 대부분의 애플리케이션의 경우 웹 애플리케이션을 개발할 때 익숙한 경로를 정의하는 것부터 시작합니다.
Bottender는 타입스크립트, 자바스크립트로 작성되었으며 Linux, Windows, macOS에서 작동합니다. MIT 라이선스에 따라 라이선스가 부여됩니다.
12. 12.
딥러닝, 엔드투엔드 대화 시스템, 챗봇을 위한 오픈 소스 대화형 AI 프레임워크인 DeepPavlov. 초보자부터 전문가까지 모두 대화 시스템을 만들 수 있습니다. 개발자와 NLP 연구자가 프로덕션에 바로 사용할 수 있는 대화 기술과 복잡한 멀티 스킬 대화 비서를 만들 수 있는 포괄적이고 유연한 도구가 있습니다.
BERT와 같은 딥 러닝 모델과 기타 최신 딥 러닝 모델을 사용하여 분류, NER, Q&A 및 기타 NLP 작업을 해결할 수 있습니다.
DeepPavlov 에이전트를 사용하면 API 서비스를 통해 여러 기술을 통합한 산업 솔루션을 구축할 수 있습니다.
이제 딥파블로프 모델은 배포하기 쉬운 컨테이너에 담겨 Nvidia NGC 및 Docker Hub 에서 호스팅됩니다.
DeepPavlov는 Python으로 작성되었으며 Apache 2.0 라이선스에 따라 라이선스가 부여됩니다.
13. 13. 골렘
Golem은 챗봇을 구축하기 위한 파이썬 프레임워크입니다. 파이썬 개발자를 위해 만들어졌으며 기존 메시지에서 엔티티를 쉽게 추출할 수 있습니다.
테스트가 용이하도록 자체 웹 GUI를 제공하며 Messenger 및 Telegram 의 메시지와 상호 작용할 수 있습니다.
골렘은 언어 보편적 접근 방식을 사용하는 언어 분석 기술입니다. 이러한 포지셔닝은 오늘날 NLU에서 가장 일반적인 두 가지 접근 방식과는 크게 다릅니다:
- 통계적 접근 방식(인공 신경망 훈련)
- 문법적 접근 방식.
이 두 가지 접근 방식에는 장단점이 있습니다.
Golem.ai는 다국어를 쉽게 학습할 수 있는 기술과 별도의 교육이 필요 없는 기술을 모두 제공합니다. AI는 이미 모든 인간 언어에 공통된 언어학 이해에 대한 지식을 갖추고 있습니다. 구성은 예상되는 요소의 형식(주어진 맥락에서 행동 또는 해석의 목적이 무엇인지)을 설명하고 특정 비즈니스 어휘를 제공하는 것으로만 구성됩니다. 이 기술은 NLU AI를 구성하는 가장 쉽고 효율적인 방법을 찾기 위해 수년간의 실험을 거쳐 개발되었습니다.
Golem은 Python으로 작성되었으며 Linux, Windows, macOS에서 작동합니다. Golem은 GPL-3.0 라이선스에 따라 라이선스가 부여됩니다.
나에게 가장 적합한 오픈소스 챗봇 소프트웨어를 선택하는 방법은?
시간과 비용을 투자할 챗봇 소프트웨어를 결정하기 전에 챗봇을 어떻게 사용할 계획인지, 이에 필요한 기능은 무엇인지 이해해야 합니다. 오픈소스의 가장 큰 장점 중 하나는 결정을 내리기 전에 제품을 실험해 볼 수 있다는 것입니다.
일부 회사는 플랫폼에 대한 다양한 사용 사례를 나열했지만, 항상 그런 것은 아닙니다. 다양한 챗봇 포럼을 방문하여 구축하고자 하는 챗봇을 검색해 보는 것을 적극 권장합니다. 다른 사람들도 이미 사용하고 있을 가능성이 높습니다. 그렇지 않다면 질문하세요.
요약본만으로는 결정을 내리기에는 충분하지 않지만, 몇 가지 경쟁자를 배제하고 장단점을 파악할 수 있는 좋은 출발점이 될 수 있습니다.
오픈 소스 chatbots 및 대화형 AI에 대해 자세히 알아보려면 대화형 AI에 대해 알아야 할 모든 것에 대한 다른 글을 읽어보세요.