- 인쇄
- PDF
CLOVA Chatbot 개요
- 인쇄
- PDF
Classic/VPC 환경에서 이용 가능합니다.
CLOVA Chatbot은 사용자의 질문 의도를 파악하여 적절한 답변을 다양한 형식으로 제공하는 네이버 클라우드 플랫폼의 서비스입니다. CLOVA Chatbot Custom API는 CLOVA Chatbot 빌더에서 설정한 도메인의 학습 결과를 기반으로 질의 응답 기능에 대한 API를 RESTful 형태로 제공하며, 메신저 채널이 아닌 일반적인 웹(Web), 앱(App)에서 챗봇을 구현하려는 경우에 적합합니다.
이 가이드에서는 Custom 채널에서 CLOVA Chatbot으로 요청(Request)을 보내는 방법에 대해 설명합니다.
CLOVA Chatbot 연동 및 개발 프로세스
CLOVA Chatbot의 Custom 연동 및 개발 프로세스를 설명합니다.
연동 프로세스
연동 프로세스는 다음과 같습니다.
- CLOVA Chatbot 빌더를 이용하여 대화 시나리오를 작성해 주십시오.
- 대화모델을 빌드하고 배포해 주십시오.
- CLOVA Chatbot Custom 연동을 설정해 주십시오.
- API Gateway 호출 URL을 생성하고 Secret Key 발급해 주십시오.
- API Gateway Invoke URL로 애플리케이션에서 API를 호출해 주십시오.
개발 프로세스
개발 프로세스는 다음과 같습니다.
- API Gateway Invoke URL을 확인해 주십시오.
- 요청 헤더로 전달할 인증 키 생성을 위한 서명을 생성해 주십시오.
- CLOVA * Chatbot Custom에서 생성한 Secret Key 이용
- 대화 질의를 요청하기 위한 응답 바디 값을 생성해 주십시오.
- API Gateway Invoke URL을 사용하여 요청해 주십시오.
CLOVA Chatbot 공통 설정
CLOVA Chatbot Custom API에서 공통으로 사용하는 요청 형식과 응답 형식을 설명합니다.
요청
공통 요청 형식을 설명합니다.
API URL
요청 API URL은 다음과 같습니다.
CLOVA Chatbot 빌더에서 생성된 API Gateway의 고유 Invoke URL
요청 헤더
헤더에 대한 설명은 다음과 같습니다.
필드 | 필수 여부 | 설명 |
---|---|---|
X-NCP-CHATBOT_SIGNATURE | Required | 네이버 클라우드 플랫폼의 CLOVA Chatbot Custom에서 생성한 Secret Key, 요청 바디 및 HMAC 암호화 알고리즘(HmacSHA256)으로 요청 정보를 암호화한 후 Base64로 인코딩한 서명 |
Content-Type | Required | 요청 데이터의 타입 |
CLOVA Chatbot에서 Secret Key를 발급하거나 확인하는 방법은 다음과 같습니다.
- 네이버 클라우드 플랫폼의 콘솔에서 Services > CLOVA Chatbot > Domain 메뉴를 차례대로 클릭해 주십시오.
- 원하는 도메인의 [빌더 실행하기] 버튼을 클릭하여 챗봇 빌더를 실행해 주십시오.
- 챗봇 빌더에서 [챗봇 설정] 버튼을 클릭해 주십시오.
- 챗봇 설정에서 메신저 연동 탭을 클릭해 주십시오.
- Custom 항목의 [연동] 버튼을 클릭해 주십시오.
- Custom 연동 팝업에서 Secret Key를 발급하거나 확인해 주십시오.
언어별 X-NCP-CHATBOT_SIGNATURE
설정에 대한 예시는 다음과 같습니다.
JavaScript
const HmacSHA256 = require('crypto-js/hmac-sha256'); const EncBase64 = require('crypto-js/enc-base64'); signatureHeader = HmacSHA256(requestBodyString, secretKey).toString(EncBase64);
Java
byte[] secretKeyBytes = secretKey.getBytes(StandardCharsets.UTF_8); SecretKeySpec secretKeySpec = new SecretKeySpec(secretKeyBytes, "HmacSHA256"); Mac mac = Mac.getInstance("HmacSHA256"); mac.init(secretKeySpec); byte[] signature = mac.doFinal(body.getBytes(StandardCharsets.UTF_8)); String signatureHeader = Base64.getEncoder().encodeToString(signature);
응답
공통 응답 형식을 설명합니다.
응답 상태 코드
응답 상태 코드에 대한 설명은 다음과 같습니다.
네이버 클라우드 플랫폼에서 공통으로 사용하는 응답 상태 코드에 대한 정보는 Ncloud API 응답 상태 코드를 참조해 주십시오.
HTTP 상태 코드 | 코드 | 메시지 | 설명 |
---|---|---|---|
500 | - | Internal server error | 서버 내부 오류 |
- | 1000 | version not support | 지원되지 않는 버전 |
- | 1001 | Not found domain code | 도메인 코드를 찾을 수 없음 |
- | 1002 | check url param is invalid | URL 파라미터가 유효하지 않음 |
- | 4000 | request param invalid | 요청 파라미터가 유효하지 않음 |
- | 4010 | Unauthorized | 인증되지 않음 |
- | 4030 | Forbidden to access | 접근 권한 없음 |
- | 4031 | Signature validate failed | 서명 검증 실패 |
- | 4032 | timestamp exceeded time window(10000ms) | 허용되는 시간 범위(10000ms) 초과 |
- | 5000 | Unknown service error | 알 수 없는 서비스 오류 |
- | 5010 | Current protocol version not support this reply structure | 현재 프로토콜 버전은 이 응답 구조를 지원하지 않음 |
- | 5020 | Calls to this api have exceeded the rate limit | API 호출 횟수 제한 초과 |
CLOVA Chatbot Custom API
CLOVA Chatbot Custom 서비스에서 제공하는 API에 대한 설명은 다음과 같습니다.
API | 설명 |
---|---|
Open | CLOVA Chatbot의 웰컴 메시지 오픈 |
Send | CLOVA Chatbot으로 질문 전달 |
getPersistentMenu | 고정 메뉴 목록 조회 |
CLOVA Chatbot 연관 리소스
CLOVA Chatbot Custom API에 대한 사용자의 이해를 돕기 위해 다양한 연관 리소스를 제공하고 있습니다.
- CLOVA Chatbot Custom API 사용 방법
- Ncloud 공통 응답 상태 코드: CLOVA Chatbot 서비스에서 사용하는 네이버 클라우드 플랫폼의 공통 응답 상태 코드 정보
- API Gateway 사용 가이드: 도메인의 InvokeURL을 API Gateway와 연동하기 위한 API Gateway 서비스의 이용 신청
- CLOVA Chatbot과 API Gateway 기본 연동 가이드: CLOVA Chatbot과 API Gateway 기본 연동 방법 안내
- Sub Account 사용 가이드: CLOVA Chatbot의 운영 권한 관리를 도와주는 Sub Account 사용 방법 안내
- CLOVA Chatbot 서비스 사용 방법
- CLOVA Chatbot 사용 가이드: 네이버 클라우드 플랫폼 콘솔에서 Chatbot 제작 프로세스, 대화 컴포넌트 관리, Chatbot 고급 활용, 메신저 및 확장 서비스 연동, Chatbot 관리 및 문제 해결 방법
- CLOVA Chatbot 사용 준비: CLOVA Chatbot에서 지원되는 환경 사양, 사용 시 유의 사항, 이용 요금 안내
- Ncloud 사용 환경 가이드: VPC, Classic 환경 및 지원 여부에 관한 사용 가이드
- 요금 소개, 특징, 상세 기능: CLOVA Chatbot의 요금 체계, CLOVA Chatbot의 특징 및 상세 기능 요약
- 서비스 최신 소식: CLOVA Chatbot 관련 최신 소식
- 자주 하는 질문: CLOVA Chatbot 사용자들이 자주 하는 질문
- 문의하기: 사용 가이드를 통해서도 궁금증이 해결되지 않는 경우 직접 문의