챗봇 만들기위해 오픈소스와 성공사례를 한번 알아보자
1. 챗봇(ChatBot) 만들기위해 오픈소스(OpenSource) 사용하는 이유
왜 기업들에서는 오픈소스를 공급하는것일까요? 이로 인해 회사에 타격이 오는건 아닐까요? 이러한 궁금증은 모든 오픈소스에 대해 매번 논쟁이 끊이질 않고 있습니다. 하지만 개방하는 사람들은 소스코드, 디자인 문서 등의 오픈소스를 개방하면서 오픈소스를 사용하는 사람들에게 개인이 사용하거나 상업적으로 활용할 수 있도록 권한을 줍니다. 그 이유는 리눅스, 워드프레스, 아파치 같은 모델들이 사람들이 좋아하고 많이 사용한다는것에서 힌트를 얻을 수 있습니다. 왜냐하면 개방적으로 협업을 장려하면 그에 맞게 시장의 파이를 키울 수가 있습니다. 사용자가 원하는것이 있다면 스스로 만들수도 있고 그에 맞게 아이디어가 만들어질수있습니다. 이에 힘입어 챗봇은 다양한 산업에서 사용될것이고 만들어질것입니다. 여기에 챗봇을 공급하는 개발자까지 선순환구조로 원하는 솔루션으로 다가가는데 큰힘을 발휘하기 때문에, 우리들의 상상력이 곧 현실로 될 확률이 기하급수적으로 높아집니다. 그래서 기업에서는 오픈소스를 공급하고 사용자는 그에 맞게 오픈소스를 활용합니다.
앞서말한 관점은 오픈소스를 사용하는 이유이고, 챗봇을 왜 사용하는걸까요? 한번 알아보도록 하겠습니니다. 바로 챗봇같은 프로그램이 있으면 어느정도 패턴화 되어 있는 질문에 대해 대응할 수 있습니다. 그래서 문의건수가 줄어들고 그에 들어가는 비용마저 줄어드는게 챗봇을 사용하는 가장 큰 이유입니다. 하지만 직접 만들게 되면 어떻게 될까요? 우리는 바로바로 만들어서 테스트를 해봐야하는데 오픈소스를 사용하지 않으면 배포가 그만큼 비효율적이고 비용이 많이 들어가는 것도 사실입니다. 그래서 결국 오픈소스로 만들어진 봇은 인터넷을 돌아다니며 메세지와 파일을 받으며 정기적으로 일처리를 하게됩니다.
챗봇을 보면 과거와 현재까지 데이터를 받아 학습을 하고 개발자는 로그를 확인하면서 조율을 합니다. 그리고 고객의 대화를 조합하여 더욱 답에 가깝게 대답 할 수 있도록 대본을 업그레이드 합니다. 정말신기하게 상대방의 의도를 인지하고 맥락을 이해할수있도록 업그레이드가 되며 실시간으로 다른 프로그램들과 연결되어 챗봇을 사용하는 사람에게 맞춤 지원할정도로 매우매우 지능적으로 발전합니다. 이렇게 까지 보면 비즈니스에 굉장히 큰 영역을 차지할수있다고 생각해볼수있습니다. 특정 그룹화된 패키지를 사용하면 훈련시간을 더욱 단축시켜 빠른시간내에 테스트를 해볼수있습니다. 심지어 코딩없이 만들 수도 있기때문에 초심자 또한 쉽게 환경을 활용해볼수있습니다. 얼마나 오픈소스를 활용하는게 중요한지 알 수 있는 대목입니다.
2. 챗봇(ChatBot) 만들기위해 오픈소스(OpenSource) 성공사례
1)Microsoft Bot Framework - 대화형 봇을 만들 수 있는 오픈소스입니다. 이 대화형 봇을 만들면 텍스트 작업을 할 수 있고 이미지또한 활용할 수 있습니다. 30개가 넘는 언어를 자동으로 변역해주는것 또한 엄청난 매력이라 볼 수 있습니다. 추가적으로 프로그램을 활용하여 사람이 말하는것을 텍스트로 바꿔주거나 텍스트에서 사람이 말하는것처럼 변환도 가능합니다. 빙이라는 검색엔진도 활용하여 검색도 해 볼 수 있고 전체적으로 텍스트분석을 학습할 수도 있습니다.
2)Rasa NLU - 이 오픈소스로 만들게 되면 기본적으로 GUI는 지원을 합니다. 가장 단순하게 사용자와 대화를 하면서 의도를 이해하고 대답을 하면서 좋은 답변이 나올 수 있도록 지속적으로 학습할 수 있습니다. 이렇게 만들어진 챗봇은 많은 분야에서 활용될 수 있고 자동차로 이동을 할때에도 상담을 진행할 수 있습니다.
3)봇 프레스 - 봇프레스는 워드프레스에서 사용할 수 있는 오픈소스입니다. 언어를 이해하는 기능은 기본이고 GUI, 디버거, 많은사람들과 동시에 대화 등 활용 할 수 있는 것이 매우 많습니다.
4)Ana. 채팅 - 아무래도 이런 프로그램을 사용하는건 개인이 사용할수도 있지만 상업적으로 사용될 확률이 매우 많을거라 생각합니다. 글, 클릭버튼과 입력란을 디자인적으로 만들어볼 수 있고 배포할때에도 엄청 편합니다.
5)봇킷 - 챗봇을 쉽게 설계하고 만들어 실행해보면 다른 챗봇과 크게 다르지 않음을 알 수 있을것입니다. 봇을 기능적으로 쉽게 활용하며 업그레이드 시킬 수 있습니다.
3. 결론 - 챗봇의 오픈소스로 단기간내에 활용하여 원하는 서비스를 만들면 친구처럼 챗봇을 사용할 수 있습니다. 이 친구는 인공지능처럼 머신러닝와 딥러닝 무장한 챗봇은 다양한 환경에서 학습한뒤에 고객에게 최대한 원하는 대답을 들려주기 위해 노력을 합니다. 그리고 우리는 여러가지 부가가치를 창출 할 수 있습니다. 저는 이런 기능들을 보면 챗봇을 개인비서처럼 옆에서 도움을 받아보는 것을 상상해봅니다. 충분히 실현될거같고 시간문제라고 생각합니다.
'지식&정보' 카테고리의 다른 글
인공지능 테슬라 자율주행차량과 자연어처리 개념 10분정리 (0) | 2021.01.25 |
---|---|
메카트로닉스 기술!? 로봇공학과 드론 개념과 전망 (0) | 2021.01.24 |
디지털(컴퓨터) 포렌식의 뜻은? 프로그램 활용 사례를 알아보자 (0) | 2021.01.22 |
임베디드 시스템과 사물인터넷 차이 10분만에 정리해드립니다. (0) | 2021.01.21 |
클라우드 서비스 뜻과 업체(SaaS) 종류 5가지 비교 (0) | 2021.01.19 |