그 외 개발관련/etc.

[챗봇] 카카오톡 챗봇을 위한 카카오 i 오픈 빌더 이해하기

HMHA 2023. 2. 10. 12:09
300x250
반응형
300x250

지난 포스팅에서는 챗봇이 무엇이고, 카카오톡 챗봇을 만들기 위한 준비단계에 대해 설명했었습니다.

아래 원글 작성자분의 포스팅을 먼저 읽으면 본문을 읽는데 도움이 됩니다.

[챗봇] 간단하고 아주 쉽게 카카오톡 챗봇 만들기

 

[챗봇] 간단하고 아주 쉽게 카카오톡 챗봇 만들기

소개 이번 포스팅에서는 챗봇이 무엇인지, 그리고 카카오톡 챗봇을 만들기 위해서는 무엇을 준비해야 하는지 소개하겠습니다. 이어서 향후 포스팅에서는 카카오 i 오픈빌더를 이용한 똑똑한 봇

luckygg.tistory.com

카카오 i 오픈 빌더(Kakao i Open Builder)란?

공식 홈페이지 링크: i.kakao.com/

 

카카오 i 오픈빌더

Make your kakao I. 손쉽게 카카오 AI기술을 활용하도록 누구에게나 제공하는 kakao I 개발 플랫폼을 만나보세요.

i.kakao.com

카카오톡 챗봇을 만들기 위해서는 카카오톡 채널 서비스를 이용해야 합니다. 그리고 똑똑한 챗봇을 만들기 위해서는 카카오 i 오픈 빌더(Kakao i Open Builder)를 사용해야 합니다. 우선 개념부터 정리하고 진행하겠습니다.

'Kakao i'는 AI 핵심 기술이 결합된 카카오의 통합 인공지능 플랫폼을 의미합니다.
'Kakao i Open Builder'는 누구에게나 제공될 'Kakao i' 개발 플랫폼을 의미합니다.

즉, 카카오 i 오픈 빌더에서 챗봇을 만든다고 보면 되겠습니다. 지난 포스팅을 통해 카카오 채널 서비스 가입과 카카오 i 오픈 빌더 OBT 신청 승인을 받았다면, 본격적으로 개발을 진행할 수 있습니다.

카카오 i 오픈 빌더 주요 개념

카카오 i 오픈 빌더 서비스 구조 - 출처: 카카오 i 오픈 빌더 도움말

카카오 i 오픈 빌더를 이해하기 위해서는 아래의 링크를 통해 개념 숙지가 필수입니다.

카카오 i 오픈 빌더 도움말 링크: i.kakao.com/docs/key-concepts-entity#%EC%97%94%ED%8B%B0%ED%8B%B0%EC%9D%98-%EA%B5%AC%EC%A1%B0

그런데 문제는 일반인은 물론이고 인공 지능에 대한 지식이 부족한 개발자에게는 너무나도 생소한 단어들입니다. 물론 저도 인공 지능 지식은 물론이고 경험도 부족한 개발자입니다. 하지만 삽질을 통해 어느 정도 사용 방법을 알게 되었고, 처음 카카오 챗봇을 접하는 분들에게 쉽게 설명을 드리고자 합니다.

물론, 그럼에도 잘못된 정보를 전달 드릴 수 있으니 이에 대한 점은 양해 부탁드립니다.

시나리오

시나리오는 사용자가 챗봇을 통해 경험할 수 있는 서비스를 의미합니다. 처음 챗봇과 채팅하면 환영 메시지를 받을 수도 있고, 챗봇에게 날씨를 물을 수도 있고, 챗봇이 알아듣지 못해 다시 되물을 수도 있는 등의 행위가 포함됩니다.

이 시나리오를 사용하기 위해서는 블록(Block)이라는 단어부터 이해해야 합니다. 

'블록(Block)'은 사용자의 의도(Intent) 응대하는 가장 작은 단위를 의미합니다.

즉, 다양한 블록이 모여 하나의 시나리오를 구성하는 것입니다.

오픈 빌더 사이트에 로그인을 하면 제일 먼저 시나리오 탭이 보입니다.

오픈 빌더 사이트의 시나리오 탭 화면

기본 시나리오는 다음의 3개 블록을 항상 포함하고 있습니다.

블록 이름 설명
웰컴 블록(Welcome) 봇이 사용자를 처음 만날 때 발송하는 환영 메시지를 의미합니다.
폴백 블록(Fall-back) 봇이 사용자의 의도를 이해하지 못할 때 응답하는 메시지를 의미합니다.
탈출 블록(Exit) 사용자가 대화를 초기화하거나 탈출하고 싶을 때 쓰는 사용자 명령어를 의미합니다.

아래에는 각 기본 블록과 커스텀 시나리오 및 블록, 응답 형식과 바로 연결 버튼에 대한 설명을 작성했습니다. 필요한 부분만 펼쳐서 읽어주세요.

웰컴 블록(환영 메시지)

폴백 블록(메시지 되물음)

탈출 블록(초기화)

커스텀 시나리오

응답 형식의 종류

바로 연결 버튼 설정

지식+

아무리 사용자의 발화를 예상하여 블록 및 시나리오를 작성한다 해도, 유입되는 수많은 질문에 대응하여 설계한다는 것은 너무 힘든 작업입니다. 지식+는 수많은 질문에 대해 봇 작업자가 손쉽고, 빠르게 응대할 수 있도록 도와주는 기능입니다.

즉, 일일이 설계하기 힘든 시나리오는 지식+로 대체한다는 것입니다.

지식+ 도움말 링크: i.kakao.com/docs/key-concepts-knowledge#%EC%A7%80%EC%8B%9D-%EA%B0%80-%EB%AC%B4%EC%97%87%EC%9D%B8%EA%B0%80%EC%9A%94

지식+ 컨셉 - 출처: 카카오 i 오픈빌더

지식+를 사용하기 위해서는 아래와 같이 활성화 버튼을 클릭하고, 샘플 포맷 엑셀 파일을 다운로드 받습니다.

지식+ 활성화 및 샘플 포맷 다운로드 받기

샘플 포맷을 열어보면 아래와 같은 구성으로 예시가 작성되어 있습니다.

샘플 포맷 예시

각 열에 대한 설명은 다음과 같습니다.

컬럼 항목 설명
FAQ_No Q&A 순번을 의미하며 1부터 시작합니다.
Category1 Q&A를 관리하는 카테고리입니다.
Category2
Category3
Category4
Category5
Question 질문을 입력합니다.
Answer 답변을 입력합니다.
Landing URL 답변 내용과 관련된 URL(링크)이 있다면 입력합니다.
답변 말풍선에 버튼형으로 출력됩니다(최대 1개 허용).
Image info URL 답변 내용과 관련된 이미지 URL이 있다면 입력합니다.
답변 말풍선이 '답안 추천형'의 '카드형'으로 선택되어 있을때만 이미지 영역에 포함되어 출력됩니다.

위 내용을 참고하여 엑셀 파일을 수정한 후 아래 표시한 부분을 클릭하여 파일을 업로드합니다.

지식+ 파일 업로드 및 히스토리 이력 보기

업로드가 완료되면 우측 상단의 저장 버튼을 클릭하면 끝납니다. 참고로 지식+는 별도의 머신러닝 학습이 필요 없습니다. 빠르게 편집하고 결과를 얻을 수 있습니다.

스킬

마지막으로 스킬(Skill)입니다. 스킬도 마찬가지로 블록의 발화에 반응하여 응답을 하는데요. 시나리오 지식+ 학습된 내용으로만 응답하는 반면, 스킬은 변화하는 데이터를 반영하여 응답할 수 있습니다. 예를 들어, 현재 시간이나 날씨, 스포츠 경기 결과 데이터 등처럼 말이죠,

참고로 스킬을 사용하기 위해서는 스킬 서버(Skill Server)가 필요합니다. 서버를 구축해야 하고, 응답 행위를 구현한 서비스를 돌려야 하기 때문에 별도의 개발이 필요합니다.

따라서, 개발에 대한 지식이 없다면 시나리오 지식+를 최대한 활용해야 합니다. 하지만 서버 구축과 개발이 가능한 사람이라면 스킬 기능이 필요한지 따져보고 진행해야겠죠?

 


 

출처 : https://luckygg.tistory.com/293

 

[챗봇] 카카오톡 챗봇을 위한 카카오 i 오픈 빌더 이해하기

지난 포스팅에서는 챗봇이 무엇이고, 카카오톡 챗봇을 만들기 위한 준비단계에 대해 설명했었습니다. 아래 포스팅을 먼저 읽으면 본문을 읽는데 도움이 됩니다. [챗봇] 간단하고 아주 쉽게 카카

luckygg.tistory.com

 

 

다음글 : [챗봇] 그래서 스킬 데이터를 어떻게 주고받는데?

 

[챗봇] 그래서 스킬 데이터를 어떻게 주고받는데?

최근 챗봇을 개발하면서 찾아본 여러 글들을 보면서, 카카오 오픈 i 빌더가 뭔지, 챗봇을 통해 간단한 응답은 어떻게 하는지는 알 수 있었다. [챗봇] 카카오톡 챗봇을 위한 카카오 i 오픈 빌더 이

a-curious.tistory.com

 

300x250
반응형