Jump to content

CLOVA Studio 스킬 트레이너로 영화순위 API 연동해서 사용하기


외계공룡
 Share

Recommended Posts

안녕하세요 네이버클라우드의 테크엠버서더 주니어마스터 서현석 입니다.

 

HyperCLOVA X로 부터 “어제 영화 순위 알려줘”, “오늘 날씨 알려줘”와 같은 질문들에 대해서 답변하도록 만들기 위해서는 어떻게 해야 까요?

 

이와 같은 문제들을 해결하기 위해서 CLOVA Studio에서는 스킬 트레이너라는 기능을 제공하고 있습니다.

스킬 트레이너는 HyperCLOVA X가 학습하지 않은 데이터들에 대해서도 간단하게 외부 API를 연결하여 답변을 만들어내는 기능입니다.

 

아래는 CLOVA Studio 스킬 트레이너로 영화진흥위원회에서 제공하고 있는 일별 박스오피스 API를 학습시키는 간단한 순서입니다.

  1. 스킬셋 생성하기 (스킬셋 이름 예시 : 일상대화 도우미)
  2. 스킬 정보 입력하기 (스킬 이름 예시 : 영화순위)
  3. API Spec 작성하기 (영화순위 API Spec 작성)
  4. Manifest 작성하기 (학습 프롬프트 작성)

 

여기서 중요한 것은 3,4번인데요. 3번 API Spec 작성방법 부터 차근차근 확인해보도록 하겠습니다.

아래는 영화 진흥위원회에서 제공하고 있는 일별 박스오피스 API Spec 명세서 입니다.

영화진흥위원회에서 제공하고 있는 영화순위 API 명세서

 

이 정보들을 CLOVA Studio에서 모델이 학습할 수 있도록 포멧팅을 해줘야 하는데요.

API Spec은 기본적으로 OpenAPI v3를 기반으로 동작하기 때문에 해당 스펙에 맞게 다음과 같이 등록해 주시면 됩니다.

{
  "openapi": "3.0.0",
  "info": {
    "title": "영화 순위",
    "version": "1.0.0"
  },
  "servers": [
    {
      "url": "http://www.kobis.or.kr/kobisopenapi/webservice/rest/boxoffice"
    }
  ],
  "paths": {
    "/searchDailyBoxOfficeList.json": {
      "get": {
        "description": "일별 영화 순위 목록을 조회하는 API 입니다.",
        "operationId": "searchDailyBoxOfficeList",
        "parameters": [
          {
            "name": "key",
            "in": "query",
            "description": "발급받은 API key 값을 입력합니다.",
            "required": true,
            "schema": {
              "type": "string"
            }
          },
          {
            "name": "targetDt",
            "in": "query",
            "description": "조회하고자 하는 날짜를 yyyymmdd 형식으로 입력합니다.",
            "required": true,
            "schema": {
              "type": "string"
            }
          }
        ],
        "response" {
          "...": "...생략..."
        }
      }
    }
  }
}

 

API Spec을 작성하셨다면 다음으로는 4번 Manifest에서 모델이 API를 학습할 수 있도록 프롬프트를 입력해주시면 됩니다.

Manifest가 스킬 트레이너를 사용하는 데 있어서 가장 중요한 부분이 아닐까 싶은데요.

이 Manifest를 어떻게 작성하느냐에 따라 답변의 품질을 결정지을 수 있게 됩니다.

CLOVA Studio 스킬 트레이너 Manifest 등록하기

 

  • Description for human : 사용자의 질문을 바탕으로 모델이 여러 API 중에서 필요한 API를 선택하는 기준
  • Description for model : API의 주요 사용 방법이 작성되며 모델이 사용자의 질문에 답변할 때 사용

 

외부 API를 사용할 때 API KEY는 어떻게 등록해야 할까요? 이는 시나리오에서 호출 옵션으로 지정할 수 있습니다.

호출 옵션은 외부 API 사용 시 특정 필드들에 대한 값을 고정할 수가 있습니다.

API KEY는 사용자의 질문에 따라 매번 바뀌지 않는 고정값이므로 호출 옵션으로 지정해주시면 됩니다.

CLOVA Studio 스킬 트레이너 시나리오 호출 옵션 설정

 

스킬 트레이너의 시나리오 수집에서는 만들어놓은 스킬들에 대해 실제 모델이 어떻게 답변을 만들어내는지 검증해 볼 수 있습니다.

만약 모델이 API 호출 시 잘못된 입력값을 사용한다면 이곳에서 편집할 수 있습니다.

이 시나리오들은 모아놓았다가 필요 시 일괄적으로 학습하여 사용하실 수 있게 됩니다.

image.png.d2a582e72edcebc957f7bdfe0ec10f2a.png

 

이처럼 다른 외부 API들도 마찬가지로 위 순서대로 진행해서 등록하실 수 있게 됩니다.

예를 들어 기상청에서 제공하는 단기예보(날씨) API는 예보지역, 예보시간을 request parameter로 사용하기 때문에 조금 더 복잡한데요.

이 복잡한 로직을 프롬프트만으로 어떻게 학습시킬 수 있을지 그 방법에 대해서 궁금하시다면 하단의 링크를 통해 좀 더 상세한 정보를 확인할 수 있습니다.

감사합니다.

 

 

image.png.0dc42c0a800b0c66e718496c6a10d214.png

  • Like 1
  • Thanks 1
링크 복사
다른 사이트에 공유하기

  • CLOVA Studio 운영자 changed the title to CLOVA Studio 스킬 트레이너로 영화순위 API 연동해서 사용하기

게시글 및 댓글을 작성하려면 로그인 해주세요.



로그인
 Share

×
×
  • Create New...