다시 만나서 반가워요
모험 3주 차 3일째가 시작됐는데요 이번엔 상황이 더 심화될 거예요
get it
페이스 트랜스포머 포옹 라이브러리 하위 레벨 API를 살펴보면서 팔을 걷어붙일게요. Get
it.
다시 한번 말씀드리지만 프론티어 모델에 대한 코드도 만들 수 있고 인공지능 비서를 만들 수도 있고 파이프라인을
사용할 수도 있어요
파이프라인요
지난번에 했던 건 정말 쉬운 방법이었죠 얼굴을 안는 것으로부터 가능한 다양한 오픈 소스 추론 작업을 사용하는
거요
오늘은 낮은 레벨로 가죠 Get it
앞서 언급했듯이 토큰라이저와 모델은 파이프라인보다 낮은 수준에서
트랜스포머와 상호 작용하는 방법의 일부죠
오늘 그걸 할 거예요
토큰라이저부터 시작할 거예요
텍스트와 토큰을 다른 모델로 변환하는 법을 배울 거예요 채팅 템플릿이라는
것도 이해할 거고요 이로써 몇 가지 다른 것들이 하나로 합쳐지면
좋겠네요
중요한 순간이에요
먼저, 토큰마이저라는 유형의 객체를 소개할게요 얼굴을 안는 거예요
이 객체는 문자열과 토큰, 숫자 목록을 번역하는 거예요
기능은 두 가지로 아주 간단해요
암호화와 해독에 관해 알아야 할 게 두 가지 있어요
인코드는 문자열에서 토큰으로 디코드는 다시 과거로 돌아가게 하죠
두고 봐야죠
물론 약간의 뉘앙스와 성가신 부분이 있지만 기본적으로 그게 다예요
비트 박스는
토큰이에는 여러 단어가 들어 있어요 한 글자에서부터 네 글자까지 다양한
문자를 조합해서 토큰을 구성하는 거죠
또한 이런 캐릭터의 단편들도 포함할 수 있죠
특별한 토큰이라는 것도 포함할 수 있어요
몇몇 특별한 토큰은 하나의 토큰으로 모델에게 그것이 나타내는
것을 알려줍니다 문장의 시작이나 비서와의 채팅 시작 같은
것을요
아까도 언급했지만 신경망 구조를 어떻게 훈련할지 궁금하실
거예요 신경망 구조를 어떻게 구성해야 특정 토큰이 문장의
시작 같은 걸 나타낼지 궁금하실 거예요
마법 같은 답은 없어요
훈련만 잘하면 돼요
훈련 데이터에서 특정 토큰을 사용하는 예제를 충분히 봤다면 그게 그
특별한 토큰의 목표라는 걸 알게 되죠
하지만 아키텍처에서 근본적인 것은 없습니다 일반적으로 토큰의 종류를
다른 종류로 바꾸는 것은 없습니다 토큰라이저도 마찬가지죠
이 외에도 텍스트를 토큰에 매핑하고 대화방법도 가지고 있어요 채팅방 템플릿이라고도
하죠
적어도 특정 모델은 그렇죠 곧 보시겠지만요
시스템 메시지나 사용자 메시지 같은 메시지 세트를 토큰
세트로 바꿀 수 있죠
실제 예시를 보면 이해가 될 거예요
얼굴을 끌어안는 모든 모델 오픈 소스 모델은 그와 관련된 토큰라이저가 있어요
토큰이 한 명만 모델에 적용되는 게 아니에요 모델이 어떻게 훈련되느냐에 따라 다르거든요
토큰라이저는, 음 여러 모델이 같은 토큰라이저를 공유할 수 있지만, 중요한 것은 어떤 토큰라이저가
훈련된 모델에서 사용되었는가 입니다. 왜냐하면 실행중인 추론기간에 정확히 동일한
토큰라이저를 사용해야 하기 때문입니다. 그렇지 않으면 나쁜 결과를 얻을 수 있기 때문이죠.
언젠가 한번 해 봐야겠지만 이유는 알게 될 거예요
당장은 비생산적인 실험이 될 거예요
오늘은 라마 3 토큰라이저를 살펴볼 거예요 라르마의 상징적인 모델 가족이에요
미안해요
네
라르마한테서요
메타가 보냈어요
오픈 소스 모델의 길을 닦았죠
마이크로소프트의 파이 3 모델을 보죠
퀸 2도 다시 보죠 알리바바 클라우드의 동력원으로 여러 지표에서
선두를 달리고 있죠
다른 것도 살펴볼 거예요 Star Coder 2라는
모델인데 코드 생성을 위한 모델이죠
토큰라이저를 살펴보고 차이점을 찾아볼게요
이 두 차의 그래픽이 비슷한 이유는 라마 3 때문이에요 1과 피3는 굉장히
비슷해요
콴투도 비슷하긴 하지만 영어와 중국어에 더 중점을 두고 있어요
스타 코더 2는 물론 코딩에 관한 거죠
소개를 마쳤으니 구글 Colab으로 가서 토큰라이징을 해보죠 HDMHD HDMHDDHDHD