gpt tokenizer

yshaarj·2023년 6월 19일
0

어케 했음?

목록 보기
4/8

openai의 웹 tokenizer는 버전 선택이 되지않아 라이브러리 호출로 사용했다.

코드와 결과는 다음과 같다.

import tiktoken

def old_tokenize(prompt):
    tz = tiktoken.get_encoding("gpt2")
    return len(tz.encode(prompt))


def middle_tokenize(prompt):
    tz = tiktoken.get_encoding("cl100k_base")
    tz = tiktoken.encoding_for_model("gpt-3.5-turbo")
    return len(tz.encode(prompt))


def new_tokenize(prompt):
    tz = tiktoken.get_encoding("cl100k_base")
    tz = tiktoken.encoding_for_model("gpt-4")
    return len(tz.encode(prompt))


if __name__ == "__main__":
    result1 = old_tokenize("나는 사과가 좋다")
    result2 = middle_tokenize("나는 사과가 좋다")
    result3 = new_tokenize("나는 사과가 좋다")
    
    result4 = old_tokenize("do you know kimchi?")
    result5 = middle_tokenize("do you know kimchi?")
    result6 = new_tokenize("do you know kimchi?")
    
한국어 문장
gpt-2: 19
gpt-3.5: 8
gpt-4: 8

영어 문장
gpt-2: 7
gpt-3.5: 6
gpt-4: 6

한국어 문장을 넣었을 때는 2와 3.5는 차이가 크고, 3.5와 4는 차이가 없었다.

영어 문장을 넣었을 때는 2와 3.5가 큰 차이가 나지 않았다.



결론

영어로 넣자

0개의 댓글