일기장

NAVER CLOUD PLATFORM AI 과정 3일차 기록

graph-dev 2024. 3. 8. 15:20
728x90

 

       

 

교육의 마지막날

 

모델 활용 사례와 파인튜닝으로 하이퍼클로바x 사례를 안내할 예정이다.

클로바스튜디오 오전에는 들어갈 것은 아니다. 오후부터 진행합니다.

       

어제 생성한 서버는 클렌징 안했습니다. 돈 엄청 나갔네, 조심해야겠다.

 

 

언어모델

인간의 언어를 AI가 이해하도록 하는 훈련 모델
통계, 인공 신경망 구분

 

문장 만드는 과정
영상 찍고 받아서 어쩌고 합니다.
단어 다음에는 뭐가 올지 알아야한다.
주제를 주고, 글을 쓴다면?
기존 읽은 문서 기반으로 새로운 문서를 만들어내는 것입니다.
학습된 것을 기반으로 출력합니다.

데모) AI 확인

예를들어, “네이버 클라우드와 ai를 주제로 기사 초안 작성해줘”

    

기존과 다른 생성형 AI를 본다. 딥블루도 체스만 유행했다. 알파고도 바둑대결에서만 활용했다.

생성형 AI도 창작을 한다면 테스크지만, 결국 창작과 프로그래밍 짜주면서 실제 활용할 수 있게 문제 해결합니다. 그런 차이가 있습니다. 좀 더 범위가 넓다.

       

환각: 아무말 대잔치

ex) 세종대왕 맥북프로 던진 사건?

       

이유 두가지

1.훈련된 데이터 문제
1.개인이 마주한 환경, 생각이나 이념이 다르다.
2.학습 데이터에 따라 출력 결과가 다를 수 있다.
2.언어 모델의 출력은 확률 기반이다.
1.소위 팩트(사실 확인) 체크 통한 방식이 아닙니다.
2.부탁의 말씀: 여행 계획 짜는건 잘 한다. 학습이 많이 되었다.
1.그런데 막 의료 정보 이런건 팩트체크를 별도로 해야한다.

해결하기 위해 RAG 등 기존 문서를 통해 출력하는게 필요하다. 튜닝을 통해서 기존 foundation 모델에서 데이터 특화되게 학습시킨다.

언어 모델의 한계를 보완하기 위한 방안 준비한다.

Prompt 프롬프트
언어모델에서 프롬프트
입력하는 그 입력값. 지시문, 요청문 등이 해당하다.

리더님이 일을 시킬때, 다음주까지 보고서를 작성해오세요.

시간이나 일의 배경, 목적 잘 설명하면 → 아웃풋이 조금 더 잘 나온다.

단순하게 해달라보다는 구체적으로 말하라. 인생같다.

프롬프트 엔지니어링
페르소나: 너는 어떤 선생님이야.
성격이나 문체도 넣을 수 있다.
어린아이가 이해하도록 친숙한 말투로 출력해라.
존대말해줘
사투리 해줘

→ 이렇게 주입가능하다.

       

제로샷: 마케팅 문구 출력해줘 (예제 없음)
간단히 지시만 한다.
원샷: 마케팅 문구 출력해줘(예제 하나)
퓨샷: 마케팅 문구 출력해줘(여러 예제 구성)

무조건 퓨샷이 정답은 아니다. 토큰에 따라 비용 발생합니다. 계속 사용 입장에서 예제를 길게 넣거나, 여러개 넣으면 비용 측면 등으로 적절히 활용하는게 좋습니다.

기존 지시문을 입력하는 것에 따라 출력 성능이 달라질 수 있습니다.

백과형 질의에 대한 도메인을 질의한다.

       

어린아이가 이해하도록 쉽게 해달라.

간단하게 지시만 넣거나 도메인 지식있거나, 어린아이가 이해할 수 있게 해달라고 해도 그 결과가 많이 달라진다. GPT도 조금만 천천히 생각하고 답변해달라 → 이렇게도 가능.

       

더이상 오르지 않는 지점이 나온다. 데이터셋을 최적화하고, 결과물을 잘 정리해서 만들어달라고 한다.

백본 모델 구축보다는 만드신 모델로 튜닝 모델 학습하는게 유일하다.

ex) 비비의 밤양갱이 있다. 기존의 학습된 값을 출력한다. 만약 필요하다면 튜닝을 통해 더 업그레이드하세요.

시대에 따라 변하고 유행어도 변한다.

       

영어와 한국어 포맷으로 예제를 넣어줍니다.

원샷, 퓨샷..

상품명 교정해달라고 예시 넣어봤다. 답이 ‘소스’인데, 막 남도마늘 소스?라는 게 나온다.

이렇게 언어모델도 패턴을 잘 알 수 있게끔 유추할 수 있게 예제 좀 넣어주세요.

       

문장을 입력하면, 사투리로 변환해달라. 이런식으로 명확히 입력한다.

지시를 할 수 있다. 두가지 방식: 부정, 긍정

기왕이면 긍정문으로 요청하라고 한다.

지시문도 예제 항목에 쓰인 단어를 다시 한번 반복해서 넣어주면 잘 이애할 수 있답니다.

구분하기
하이퍼클로바 (1세대 모델) : 네이버에서 만든 Hyperscale AI로써, 세계에서 3번째로 만든 LLM(Large Language Model)
하이퍼클로바X(2세대 모델)
이렇게만 구분해주세요.

지금은 두개(일반모델)은 가능합니다.

작년에 발표한 거는 챗모델의 HCX-002입니다. 현재는 HCX-003으로만 활용가능합니다.

특장점
한국의 문화와 맥락 잘 이해한다. 하이퍼클로바 X
한국어 맥락 (규칙 법 등 잘 알고 있습니다)
우리 문화에 잘 맞는 생성형 모델입니다.

좋은 백본 모델, 대용량 인프라 등 준비 완료이다.

 


하이퍼클로바 X 라인업

       

상품들 다양하게 제공하고 있습니다.

일반 기업에서 사용하는 project x: 메일 기반으로 업무 요약한다.

이런것을 각각 대상에 따라 나눠서 제공하고 있다. 상품들을 제공한다.

cue는 리더님이 잠시 보여드린 상품?

검색 창에 뭔가 입력하는 것이 기존에는 키워드를 입력한다.
역삼역 맛집
큐는 해외여행갈 것인데, 경로 짜줘 이렇게 많이 바뀌었다.
네이버 개인 계정 로그인하면 사용 가능하다.
파리 10박 여행 일정 계획해줘

       

근데 이거 비비의 밤양갱 알아? 이러면 다를 수 있다.(인터넷 검색 기반으로 가져가니까, 여행 계획은 이미 학습된 걸 활용합니다.)
클로바x: 최신 정보는 튜닝을 통해 가져오지 않으면 모름.
큐: 는 빙챗처럼 인터넷에도 가져와서 보여줍니다. 다르네요!
아직 하이퍼클로바 이런거는 | __ | 이렇게 하는데, 클로바 X에는 그래도 표 형태로 잘 한다.
대화형 AI 서비스, CLOVA X
이걸로 표형태로 잘 출력합니다.
pdf 파일도 문서로 잘 들어가서 보여줍니다.
CLOVA for Writing
이건 블로거들을 위한 것입니다.
친구한테 이야기하는 듯, 설명하듯 하는 이런 운영 블로그 말투 학습해서(글의 느낌)으로 한다.
PROJECT CONNECT X
문서 요약, 경쟁력 향상을 위한 툴이다.
개발자 대상 일부 코딩을 위한 함수 작성하듯 한다.
대화내용 검색, 메일 기반 할일 추천, 작성해줍니다.
메일 초안도 잘 작성해줘요. 사내에서 테스트 중인 상품이라네요.
일시와 장소 등 잘 마련해줍니다.
그럴듯하게 초안을 작성해줘요.
생각보다 시간 단축에 활용 가능하다.

       

말투 요약, 자기 소개서 작성하기 등 다양하게 사용해볼 생각이다.

클로바 스튜디오도 라인업 세분화한다.

       

여기서 Basic을 사용한다. 공용 인프라를 사용한다.

50명이 보면 집에가서 생성하게 된다. 튜닝은 데모로만 보여줄 수 있겠다. 각자 실행하면 결과물 완성에 너무 오랜 시간이 걸린다. 일반적인 상품이다.

Exclusive는 어느정도 성능 보장. 어느정도 서비스 비용 내고 튜닝 학습 등을 보장할 수 있습니다. Neurocloud는 데이터 있고 폐쇄망 안에서만 작업해야한다면 이걸 제공한다. 뉴로클라우드는 망까지 줘서 고객사 제공. 빠르겠죠?

Hyper CLOVA X 활용사례

HyperCLOVA 활용사례 - Live Chat Service for SMEs

문구를 하이퍼클로바를 활용한 적용사례로 씁니다. 우측은 스마트 스토어 센터에서 몰의 기획자, 마케터가 문구 관리합니다. 갖고 있는 상품으로 문구 초안을 작성합니다. 수정해서 활용할 때 이 하이퍼클로바 씁니다.

HyperCLOVA 활용사례 - Communication AD for Advertiser

광고도 카페 운영자를 사용해서 만듭니다. 카페 내 어떤 글 많이 나오는지, 댓글 많이 다는지 확인해서 카페 접속자 타겟으로 상품 광고 메시지 노출하는 사례이다.

HyperCLOVA 활용사례 - Gifts - Card messages

네이버 선물하기인데요. 계절 등, 상품 정보 외 정보도 사용해서 메시지를 생성합니다.

원래 모델에서 다양하게 보완시켰을 때, 튜닝 기능을 사용해서 문구 보완한 사례입니다.

과거 천(1000)행이 필요했습니다. 이제 400행입니다.

이제 익스플로러 일괄 생성 으로 내가 가진 일부 데이터로 추가로 데이터 만들어서 활용하는 사례입니다.

HyperCLOVA 활용사례 - CLOVA Note - 요약

설문조사 문항, 요약 검토하여 나중에 할일도 추가해줘요. 여기에 하이퍼클로바 요약 기능을 사용합니다.

요약: 논문 요약이나 대화 등에 따라 요약 방식이 다릅니다.

클로바 노트도 튜닝을 진행해서 회의록에 대해 적절히 가져오도록 합니다.

HyperCLOVA 활용사례 - CareCall for Seniors 데이터 확대 / 대화

과거 코로나 확산되었을 때, 보건소 직원이 밀접접촉자 전화해서 체온 점검한다.

일일히 전화가 어려웠다. 클로바 케어콜을 통해서, 진행가능했다.

매일 똑같은 질문해서 전화하지 말아달라고 하기도 했다. 이제는 사람처럼 좀 다양한 대화가 가능하게 했다.

HyperCLOVA X 활용사례 – 한컴독스 AI 업무 생산성

HyperCLOVA X 활용사례 – [위노보스] 가제트 AI 마케팅 & 영업

블로그 글 쓰는겁니다. 편리하네요.

HyperCLOVA X 활용사례 – [셀렉트스타] 모모잼(모두 모여 재미있게)

아이는 본인이 뽀로로와 대화하도록 해요. 뽀로로가 직접 말하는 것처럼 만들 수 있습니다. 멋지죠?
클로바 스튜디오 - 랜딩페이지
플레이그라운드, 튜닝, 익스플로러, 스킬 트레이너, 포럼이 있어요.
포럼: 사용해보시면서 문의 올리거나, 네이버에서 가이드 드리는 화면이다.
플레이그라운드: 지시하면 결과물 출력하는 기능입니다.
튜닝: 우리 회사 데이터가 더 결합되면 좋겠다.
그걸 기반으로 결과 생성
말투 등 적용한다.
익스플로러: AI 제작을 도와줄 친구들
테스트를 돕습니다. 데이터 확장, 일괄 생성, 임베딩 정도는 간단하다.
스킬: 외부 API 연결 서비스
플러그인 기능과 유사합니다.
할루시네이션?
기존 학습 + 시시각각 변하는 정보 답변 받으려면, 외부 API 연동해서 사용하는 방식이 있다.
언어 모델에 외부 API 반영해서 서비스 제작하면 된다.
강력한 튜닝 기능
일부 파라미터 변동
외부 서비스 연동 도구
정보들을 가져온다
기능 강화 도구
검색 엔진 개선
회사 ERP에서 회사 HR에 관한 시스템 → 직원이 질문하고 답변 가져오는 기능 가져오고 싶다.
일정 부분은 팩트 기반으로 확인하도록 만든다.
 
 

일반모드 : 챗모드와 다르게 빈 스케치북에 넣으면 같은 화면에 결과값이 나오게 됩니다.

거의 HCX 3번 모델로 거의 진행할 것입니다.

모드는 왼쪽에 파라미터, 기능(저장, 공유, 테스트 등), 3번

1) 파라미터 : 텍스트 생성을 위해 설정하는 값 (토큰수 적절히 활용하세요. 4096 토큰 제한됩니다.)

2) 기능 : 플레이그라운드에서 제공되는 기능

3) 제목: 제목 입력 → 이거는 결과물에 영향 주지 않습니다. 사람이 구분하려고 쓰는 부분입니다. 내가 어떤 작업하는지 구분하기 위함입니다.

4) 실행 : 클릭하여 작업 실행

5,6) 시스템/사용자 : 프롬프트를 입력하 고 결과값이 출력되는 영역

 

요청 내용에 입력해주면 됩니다.

왼쪽에 모드와 엔진 선택하는 화면이 나옵니다. 1세대 모델도 일부 지원하고 나머지 중지중입니다.

알파벳이 커질수록 (B < D) 모델이 큽니다. 오늘은 HCX-003 을 사용할 것입니다.

튜닝했던 모델, 재생성했던 모델이 잘 결과물 만드는지 보고싶다면 → 여기서 프롬프트 입력하세요. (이건 나중에 확인)

TOP P: 누적확률값 설정. 그 다음에 나올 확률이 있을 때, 여긴 잘 조정하지 않고, 템퍼러처로 많이 합니다. (0.8~1)

TOP K: K에 해당하는 숫자가 후보값입니다. 확률값을 나열했을 때, 상위 5개를 놓고 랜덤으로 하나 결과를 뽑아내면 됩니다.

플레이그라운드 – 파라미터 (Maximum tokens)

어느정도 낮게 설정, 길게 설정 차이

보고서 제한이나 마케팅 문구면 200~300 토큰 이렇게 만듭니다.
길게 소설을 만들거나 서론/본론/결론까지 출력하려면 2천~3천 길게 설정하면 됩니다.
토큰 = 형태소
최소 의미 가지는 단위입니다.
한국어는 형태소 단위로 1~2토큰 단위로 나누겠죠.
언어모델이 이해하는 단위이다.

플레이그라운드 – 파라미터 (Temperature)

템퍼러처: 0부터 1

낮으면 일반적인 값. 일반적이고 전형적인 값을 만들어야한다면, 템퍼를 0에 가깝게 설정합니다. 신선한 눈에 띌 광고문구라면 창의적으로하고자 템퍼 1에 가깝게 높게 설정하면 좋아요.

Top P 고정 → temperature만 변화주면 됨.

플레이그라운드 – 파라미터 (Repetition penalty)

0부터 10까지 설정할 수 있다.

중복되는 값이 나오지 않게, 값을 높게 합니다.

낮으면 같은 결과 많이 나온다.

플레이그라운드 – 파라미터 (Stop sequences, seed)

챗봇 생성시 많이 쓰는 stop seq

seed: 결과값이 동일하게 나와야한다. 그럼 이제는 랜덤으로 설정하지 않고, 첫 실행과 두번째가 동일하게 나와야합니다. 번역의 결과가 항상 동일해야할때, 그 동일 숫자에 한해 같은 결과 나옴(번역 등에서 쓴다.)

플레이그라운드 – 기능 & 실행 & 에디터 영역

결과를 서비스로 하고 싶다면 테스트앱 누르면 됨. 이런 기능이 있답니다.

저장은 안하고 테스트만 해봅니다.

랩가이드 3페이지 봅니다.

       

1.마케팅 문구 생성하기
1.그대로 입력합니다.

       

결과) 문구 : 눈가 주름 개선, 촉촉한 수분감으로 동안 피부 완성

       

이번에는 템퍼러처를 낮추세요.

0.15로 낮춘다.

       

       

상품: 아이스크림
0.15에서 문구 : 부드러운 크림과 달콤한 과일 맛! 더위를 식혀줄 최고의 간식
높여보기 1로 해보기
문구 : 골라 먹는 재미가 있는 다양한 맛들로 가득 찬 아이스크림

이번에는 시스템에 아래와 같이 지시사항. 한번에 “5개” 나온다.

광고 문구를 생성하는 시스템
상품에 대한 광고 문구 5개 만들기

       

버그가 좀 있다. 맥시멈 토큰이 NaN으로 뜨면 좀 기다려야한다.

패널티를 0.5로 둔다.
1.무더운 여름, 아이스 아메리카노로 시원하게!
2.아이스 아메리카노로 에너지 충전!
3.아이스 아메리카노로 여름의 더위를 날려버리세요.
4.아이스 아메리카노, 여름의 필수품
5.아이스 아메리카노로 여름을 더욱 즐겁게!
패널티 10으로 두고 확인: 조금 다르게 나오긴 하네요
1.얼음처럼 차가운 맛으로 무더위를 싹 가시게 해주는 아이스 아메리카노
2.쌉싸름한 커피와 시원한 얼음이 만나 환상적인 조화를 이루는 아이스 아메리카노 한 잔 어떠세요?
3.더운 여름날 지친 몸과 마음을 달래줄 최고의 음료인 아이스 아메리카노가 당신을 기다리고 있습니다.
4.신선한 원두에서 추출한 진한 에스프레소와 물, 얼음이 어우러져 깔끔하고 상쾌한 맛을 선사해 드립니다.
5.지금 바로 주문하시면 집 앞까지 빠르고 안전하게 배송해 드리겠습니다.

대화턴 추가해서, 파라미터 바꿔서 다시 실행하면 되어요.

       

위에는 패널티 0.15, 아래는 패널티 10입니다.

이렇게 나옵니다. 제목, 발신자 잘 들어가 있죠?

       

시스템에 대해 의료 전문가로 페르소나를 줍니다. 결과를 표 형태로 만든다. 표의 순서는 영어 한국어 의미 출력합니다.

이런것은 영문단어장으로 해도 좋습니다.

       

- 사용자 : 단어장을 알파벳 순으로 다시 정렬해줘,

이것도 가능합니다.

       

이렇게 깔끔하게 알파벳순으로 변합니다.

이번에는 약간 Raw 형태의 정보를 입력해서 만듭니다.

       

그 결과물이 다 다를 겁니다. 여기보면 시드 번호도 있어요.

Seed: 3,570,489,865

       

엑셀을 끌어다 직접 넣어도 됩니다.

예를들어, 행을 알려주지 않고, married정보가 잇는 사람이 몇명인지 알려줘해도, 실제 엑셀 내 정보 바탕으로 만들어주기도 합니다? 편합니다. 물론 환각 정보가 생기거나 요약할 수 있습니다.

이제는 문서 기반으로 답변 만들어볼게요.

2.참고 문서 제공하고 문서 기반 답변 받기

       

       

참고문서 없이 나온 값과 비교할 수 있답니다.

 


이번에는 요리해보기

       

       

교육 커리큘럼에 대해 설문조사 문항을 만들어달라 할 수도 있답니다.

시스템에 페르소나 주입해주겠습니다.

AI 교육에 대한 지식 보유
다양한 교육 커리큘럼에 대한 데이터 보유
설문조사 항목과 포맷 종류를 다양하게 알고 있음

AI 교육을 진행한 이후 수강생들의 교육 만족도 조사를 알아보기 위한 설문조사 문항 5개 작성해줘. 객 관식 문항 3개, 주관식 문항 2개를 만들어줘. 아래 교육 내용을 참고해 교육 내용:

여기에 열심히 커리큘럼 넣습니다.

결과는 아래와 같습니다.

       

유형 분류하기
요청받으면 목록을 유형별로 분류합니다.
나라에 대한 정보 입력? → 나라와 도시를 분류해줘
잘 분류하네요

       

       

모의 면접 서비스 개발하고 있어요.

제목 : 신입사원 면접 질문 생성하기

시스템 :
IT 기업 채용 인터뷰어로 가정
클라우드 인프라 운영 직무 : 사용자가 가장 안정적인 서비스를 경험할 수 있는 환경을 구축합니다. 대규 모 서버, 스토리지, 네트워크, 데이터베이스 등의 인프라 관리에 필요한 프로그램 운영과 운영 도구 개발 및 서비스의 안정적인 운영을 지원하고, 적합한 솔루션을 제공하며, 안정적인 인프라 제공을 위한 플랫폼 개발 및 운영을 수행합니다. 시스템/데이터/네트워크/CDN 엔지니어링/서비스 장애관리/서비스 엔지니어 등의 영 역을 포괄합니다.
사용자 : 클라우드 인프라 운영 직무 지원자에 대한 면접 질문을 만들어줘. 질문은 지원자가 기초 지식을 잘 갖추고 있는 지 평가할 수 있어야 하고, 포맷은 아래와 같은 형태로 출력해줘 아래와 같은 포맷으로 총 5개의 질문, 모범 답안을 출력해줘

이번에 프롬프트 노하우

       

1.명확하고 자세하게 지시하기
2.참고 문서 제공하기
3.모델에게 역할 부여하기 (페르소나같은건가?)
1.너는 반도체 지식인이 있다고 가정하자. 똑같이 질문할 때 답변을 다르게 해볼 수 있어요.
4.시스템 프롬프트와 사용자의 요청이 충돌할 때, 시스템 프롬프트를 우선하도록 지시
1.각자의 요구사항이 다른 경우가 있습니다. 혼란이 있죠. 이것도 명확하게 해주세용. 어떤 시스템의 지시를 따르라고 자세히 입력하면, 지시사항이 중복되더라도 시스템에 따라 잘 해요.
5.세부 절차로 구분하여 지시
1.영어로 번역 태스크, 요약 태스크 이렇게 두 가지로 나눌 수 있습니다.
2.쪼개서 작성하면 좋습니다. 세부적으로 각 태스크 수행하는 것 확인.
6.원하는 형식으로 응답 받기
1.형식, 출력 개수 나눌 수 있어요.

기타 다양한 프롬프트 노하우가 있답니다. 잘 확인해주세요.

이것도 참고해보실 수 있어요.

튜닝은 데모로 보여드릴게요.

 

CLOVA Studio - 튜닝

프롬프트 엔지니어링 성능 올리지만, 그 이상 올려야 하면 이 튜닝으로 더 올릴 수 있어요.

학습을 시킬 수 있어요.

네이버 쇼핑에 쇼핑몰 들어가서 구매해요.

우리 쇼핑몰에 들어오는 사람들이 좋아하는 “말”을 학습시키기 위해 넣어보고, 아이데티티 반영위한 학습 등으로도 활용할 수 있어요.

학습시켜서 잘 나오게 할 수도 있어요.

튜닝하면, 튜닝한 데이터에서만 결과가 나오나요? 일부에서만 나오나요? → 후자에서만 나와요.

섞여요.

Foundation 모델 비중이 더 높아서, 새로 튜닝을 위한 새 데이터는 좀 낮아요. 그렇게 나와요. 해보시면 됩니다.

HCX-003은 API 방식으로만 튜닝해요. 과거에 모델은 콘솔로도 가능했다네요.

데이터셋 업로드는 엑셀같은 데이터로 학습하기도 해요.

       

결과의 변화가 있을 수도 있어요. 보정이 안된 데이터가 들어가도 잘 나올 수 있다.

튜닝데이터셋을 구축할 때는 품질을 중요히해서 보정된 데이터 잘 나와야해요. (즉, 틀린거 안들어가게 해야됩니다.)

한번 학습시튜닝된 모델이 생겨요. → 근데 여기서 또 튜닝에 추가학습은 안되어요.

그냥 기본 모델에 데이터를 더해서 추가학습해야해요.

이 모든 것은 “Basic” 모델을 기준으로 합니다. 추가튜닝이 아직 어렵다.

다른 모델은 가능해요.

대화턴 아이디를 포함해요. Text는 시스템 혹은 사용자, Completion은 어시스턴트 출력할 내용 포함합니다.

       

1세대는 두개 열, 2세대는 4개열입니다.

과거모델은 두개의 화자만 있어요.

       

문장 요약 데이터셋 구축? 긴문장이 들어갈 때 어떤 식으로 요약할지 확인합니다.

회의록에 넣을수도 있어요.

       

싱글턴, 멀티턴

싱글턴: 각자 하나의 질문과 하나의 답변으로 끝나요.

멀티턴: 동일한 주제 (대전 여행) 대해 답변 나오고, 그 장소에 대한 안내 해달라

→ 대화가 한번에 안끊기고 꼬리질문하면?

→ C_ID 동일해도 턴수만 늘어나서 동일한 주제로 구분되어요.

데이터셋 구성할 때, 노하우
챗봇 구성과 유사합니다.

       

다양한 발화 형태를 텍스트열에만 넣습니다. 일반적인 거, 오타도 포함해도 좋아요. 다양하게 넣어야합니다.

문서나 코드도 밑에 {문서}, {코드} 이렇게 넣어주면 되어요.

competion 넣을때는 결과물의 포맷도 잘 넣어줘요.(마크다운, 넘버링 등)

 

오류사항 : 학습 진행이 불가능하기에 필수적으로 수정되어야 하는 사항

예시) 유효한 데이터가 1,000 400행미만 미만입니다. 파일의 데이터 건수를 다시 확인해주세요.

 

 

 

이건 과거) Inference Test 기능 • 학습 완료된 모델의 성능 및 정확도를 검증하기 위해 실제 학습 결과를 테스트

이제는 선택 모델을 플레이그라운드에서도 볼 수 있습니다.

       

동일한 포맷으로 인풋 넣습니다. 고객: 튜닝 데이터 넣고 → 그거 없이 바로 발화하면 → 잘못된 답변해요.

HCX-003은 API로만 학습할 수 있어요.

식당 답변 넣기도 해요.

       

콘솔에서 튜닝 작업 생성 • 데이터셋을 활용해서 튜닝 • Inference 테스트 • API를 통한 튜닝 작업 생성

튜닝, 익스플로러도 지원하는 것만 HCX-003을 지원해요.

       

       

대화 > 모델 HCX-002 > utf-8데이터셋 업로드 하고, carecalltest 해주고 > 학습해줘요.

Inference Test해서 어르신 독감 주사 맞아야하는데 어디로 가야하지? → Output에서 결과 나옵니다.

요새는 플레이그라운드에서 직접 가능해요. 튜닝 모델을 엔진에 넣고 질문 넣으면 답이 나와요.

작업 > 플레이그라운드에서 하신 튜닝의 것을 가져올 수 있어요.

튜닝도 학습 시작하면 메일도 와어요. 익스플로러 작업들이 보실 수 있습니다.

다른 데이터셋: 위키백과의 데이터 넣고, 질문 답변으로 만들어서 → 튜닝 API 학습 → 학습 생성 API 누르시고 → 각 변수 참고하시고 예제 넣는다.

예제를 변경해줘요 > 코드 보기 > 복사해주세요.

코랩으로 실행해요.

       

전체 코드 중 일부 키를 변경해줘야 해요.

파파고는 서비스에서 인증키 변경해요.

튜닝은 인증키관리에서 액세스 키, 시크릿키 변경해줘요.

if __name__ == '__main__':
    completion_executor = CreateTaskExecutor(
        host='https://clovastudio.apigw.ntruss.com',
        uri='/tuning/v2/tasks',
        method="POST",
        iam_access_key='<iam_access_key>',
        secret_key='<secret_key>',
        request_id='<request_id>'
    )

 

모델도 변경해요. 테스트에는 튜닝된 모델의 작업 이름을 넣어요.

실제 샘플 데이터 파일의 경로도 넣어놔야해요.

 

 request_data = {'trainingDataset': open('E:\\studio\\test.csv', 'rb'),
                    'name': (None, 'test <원하는 모델의 작업 이름>'),
                    'model': (None, 'HCX-002 <모델 이름>'),
                    'method': (None, 'LoRA'),
                    'taskType': (None, 'GENERATION'),
                    'trainEpochs': (None, '4'),
                    'learningRate': (None, '1e-4')
                    }

 

코드 실행 후, 학습 시작 안내 메일 확인 및 콘솔 내 작업에서 학습 시작함을 확인

 


익스플로러 과정

샘플

챗봇 등처럼 작업한 저장으로 활용 가능한 예제들이 담겨있습니다.
열기해서 미리 시스템 등에서 작성해놓은 예제를 담은 메뉴얼입니다.
도구 탭: 도구, API 두가지 서비스를 제공합니다.
튜닝할때 100행 만들고 나머지 추가로 만들때 사용합니다.

질문 - 생성 반복한다면, 데이터 확장은 한번에 여러 답변 출력하게 합니다.

다른 하이퍼클로바 모델 사용해서 모델 만들때 사용가능한 모델들이 있습니다.

토큰당 비용이 드니까 어느정도 토큰 사용했는지, 정리해서 사용해볼 수 있습니다.

데이터 확장
업로드한 데이터 샘플을 원하는 양만큼 확장하고 관리한다.
데이터 확장 기능 사용가능 : 사용자가 업로드한 데이터 샘플을 원하는 양만큼 확장하고 관리
마케팅 문구 생성하려면, 제품쪽 csv 파일 올리면 문구가 생겨요.
왼쪽 열만 채우면 우측 열도 한번에 다 생성할 수 있어요.
즉, 텍스트부분만 만들어주고 파일 올리면, 우측 Completion 잘 채워주겠죠?

       

데이터 확장, 일괄 생성은 동시에 한건만 가능해요. 데이터 확장 끝나야 일괄 생성해요. 이런식.
7일 내에 다운로드해서 확인해주세용.
적게 지정하면 확인할 수 있어요.

모델 엔진은 HCX-003 선택 ⚫ 원하는 데이터 수 : 20 입력 ⚫ 시드 데이터셋 업로드에는 작업 생성시 다운 받은 파일을 업로드

       

데이터 확장해보세요.

       

20이면 아마 Text도 12개에서 8개 더 추가되겠죠?

       

       

이거 한번더 크로스체크해야해요. 막 assistant 이렇게 나오기도 해요. 좀 조심해요.

이제 학습이 비용이에요. 일괄 생성도 그래요. 토큰에 따라 비용이 나갑니다. 나머지는, 별도 계정으로 진행해보자.

100개 이상 만든다면? 겹치는게 나오기도 해요. 중복 이슈가 있다. → 차후 보정이 필요해요.

일괄 생성

이거는 아래처럼 text만 있는 파일을 넣어봅니다.

       

일괄적으로 생성해주는 것을 한번에 만들어준다.

각 예제의 샘플 보기 활용해서 구성하시면 됩니다.

토큰 계산기

토큰도 계산할 수 있어요.

슬라이딩 윈도우

이전에 있던 대화를 토큰 수 초과시 삭제합니다.

초과 토크 수 이상의 최소 대화 턴 삭제하고 다음 거 대화를 출력해요.

       

문단 나누기

이거 어떻게 봐야하나?

       

이거 좀 잘못된게 있어요.

       

이상하게 좀 다른것같다.

       

요약도 회의록 등에서 활용할 수 있다.

요약은 이게 맞다. segCount

       

익스플로러 – 임베딩

일단 텍스트로 변환 → 임베딩 API에 입력 → 벡터값 변환해서 적용할 수 있습니다.

요약 APi 등으로 줄여서 적용해야합니다.

       

문장이 포함하는 각각의 단어에 따라 의미 달라진다.

sts-dolphin 세부적으로 달라진다. 참고.

       

RAG에서 활용하는 부분이 있다. 텍스트로 변환한다.

텍스트도 길이가 어느정도 길다면? 그 내용 중 핵심적인 내용만 필요하면 요약 APi로 텍스트 줄인다.

모든 텍스트 포함되어야 하면 → 문단 나누기로 조금 짧게(임베딩 API 한번에 500토큰 기억) → 요약된 길이로 텍스트 나누고 → 임베딩 API로 벡터 형태로 변환합니다.

사용자 실제 질의를 한다. → 인사 질의를 알려줘라고 하면, 인사정보와 유사한지 확인한다.

문서간 유사도, 분류 등에 활용하는 API 입니다.

고객사 구축하는 부분을 텍스트 임베딩 API로 넣고, 벡터 디비는 밀버스/컨버스 오픈소스 DB가 있다. 실제 질의할 때 임베딩 API를 통해 쿼리문 자체도 변환한다. 유사도를 비교한다. 유사한 내용을 뽑아내는 형태로 구축한다.

임베딩 API 활용

텍스트로 변환 (500토큰 이하로 분할)
분할된 텍스트 → 벡터로 변환하여 벡터 디비에 담는다
질문(쿼리)을 벡터 변환 → 각 벡터 내용을 유사도 분류 → 유사도 높은 결과물 가져온다.
다시 텍스트로 변환한다. 이런 세가지 구성으로 되어있다.
기존 언어 모델 결과물 출력이 아니라, 새롭게 출력시 사용한다.

       

벡터 디비 내용 등으로 유사도 분석 → 관련있는 정보를 언어모델 사용해서 아웃풋 만들어낸다.

       

값들간에 유사도 제공. 거리 가까우면 유사도 높다. 각도 작으면 높다 등.

오픈소스 함수 등으로 텍스트 간 유사도 확인한다.

고객이 가진 여러 형태들을 본다.

       

최근에는 이런 니즈를 보인다.

임베딩 API 활용해서 변환하는 것으로 본다.

       

임베딩은 튜닝과 달리 자체 API URL, GW Key가 있으니 바로 쓰면 된다.

 

이 부분만 바꾼다. request_datainput text만 바꿔주시면 되어요.

    request_data = json.loads("""{
  "text" : "input text"
}""", strict=False)

 


CLOVA Studio – 스킬 트레이너

과거 데이터만 학습하다보니 일부 팩트 기반이 아닌 결과물이 있었다. 그게 LLM의 한계다.

API 내용을 결과에 반영하는 것입니다.

과거 모델에서 오늘 날씨 어때? 실시간으로 제공할 수 없다고 합니다.

       

이걸 즉시 가져오려면, 스킬트레이너를 사용하면 됩니다.

CLOVA-X는 스킬 기능을 활성화해서, API 호출할 수 있어요.

일부 공개된거 보죠. 이게 다 스킬입니다.

       

특정 항목에 대한 구분입니다. 각각에 해당하는 API를 담을 수 있습니다. 여러 API를 하나의 묶음으로 담는 것이 API입니다.

스킬 트레이너 : 스킬셋, 시나리오 수집, 작업으로 크게 나누어집니다.

스킬셋 : 여행에 대한 스킬셋 구축한다. 항공권 예약 API, 호텔 조회 API 등 여러 API를 여행이라는 이름의 스킬셋 안에 담아 구축합니다.
시나리오 수집
사용자 질의 예상해서, 질의 던져보고, → 적절한 API 호출해오는지 콘솔에서 확인할 수 있습니다.
작업
데이터가 잘 쌓이면 마지막에 학습하는 (작업) 단계

       

플로우를 보자

스킬셋 정의 → 스킬 정의 → 시나리오 수집 → 작업

스킬은 하나의 API에요.

시나리오 여러개 입력하면 실제 언어 모델에 학습시키는 과정이 있습니다.

       

API 4개를 하나의 스킬셋에 연동한다고 볼 수 있습니다.뭐 쇼핑스킬셋이면 상품 검색 & 배송 관리 등으로 해서 → 이건 싱글 스킬셋 & 멀티 스킬 이렇게 봐야겠죠?

권장은 4개 스킬까지 연동하라.

       

상품 검색하는 단일도 있고,

하나의 스킬셋 안에 두개의 APi 연동할 수도 있습니다.

[쇼핑 스킬셋 - 상품 검색 스킬 & 정기배송 스킬] • “한 달에 한 번씩 삼다수 1세트 제일 저렴한 걸로 정기배송 해줘”

멀티 스킬셋 - 멀티 스킬 이렇게 구성도 가능해요.

분야를 선택하고, 분야에 맞게 스킬셋 이름을 지정합니다.

API Spec

스킬은 API를 입력한다고 보시면 됩니다.

description에 필요한거 넣는다.

대략적으로 이런 형식이다.

       

양식은 필수값 여부 등으로 확인합니다.

✓ 필수 파라미터 누락 시 알림 • API 호출 시 URL 호출할 때 필수 파라미터가 누락된 경우를 확인할 수 있도록 적절한 상태 코드(Status Code) 및 상태 메세지(Status Message) 설정 필요하데요.

검증하는 버튼도 눌러주시고

Manifest
기능 수행에 대한 설명을 합니다.

       

버전, API 이름, 용도 등으로 API에 들어가는 파라미터가 뭐고path가 뭔지 확인해볼 수 있다.

Manifest는 API 정보 입력하는 화면이다.

호출 화면에서 참고

시나리오 관리
기능 사용시 어떤식으로 사용할 지 질문 입력해보고, 질문을 입력 → 실행버튼 누른다.
답변 호출 과정을 눈으로 볼 수 있다.
답변 가져오는지 아닌지 확인하면서 작업에 학습시킨다.

       

       

어떤 API 시나리오를 잘 만들어봐야합니다. 실제 서비스는 여러 시나리오를 수집해야합니다.

작업: • 모델이 더 정확하고 정교한 답변을 생성할 수 있도록 스킬셋을 학습시키고 학습한 내역을 관리
사용 예시
CLOVA X의 사용 예시를 볼 수 있습니다. API 연동 내용.
사용 예시로, 음성 질문 → CLOVA Speech (Recognition)텍스트 변환 질의 → HyperCLOVA X → 상품 조회 API 호출해서 결과물 다시 Clova Speech로 변환해서 음성으로 출력?
 

공공데이터 포털

 

공공데이터 포털

국가에서 보유하고 있는 다양한 데이터를『공공데이터의 제공 및 이용 활성화에 관한 법률(제11956호)』에 따라 개방하여 국민들이 보다 쉽고 용이하게 공유•활용할 수 있도록 공공데이터(Datase

www.data.go.kr

          

       

       

인증키 정보를 갖고 저장해둡니다.

       

       

하나의 스킬셋에 네개 API 연동합니다.

새 스킬 생성하기합니다.

       

       

스킬 정보 작성API SpecManifest완료

 

       

description에 있는 공공 포털 키로 변경해주세요.

description for human 사람이 봐야할 부분입니다.

       

일반인증키(Encoding) 된걸 활용해야합니다. 두개가 있어서 문제가 있다.

       

음 이렇게 나오긴 한다. 좀 다르긴하다만..일단 넘어가자.

 

네이버 AI 윤리 준칙

심사를 거쳐야합니다.

AI Filter 적용이 필수입니다.

 

HyperCLOVA 기반 서비스는 HyperCLOVA 심사 프로세스를 거쳐 서비스를 출시 각 서비스에서는 AI Filter 분석 결과를 기반으로 적절한 대응 방안과 모니터링 계획을 세워야 합니다.

 

모니터링을 통해 신조어 등 신규 필터 대상 데이터를 감지, AI Filter 모델 고도화에 반영