본문 바로가기
프로그래밍/기타

ChatGPT 알아보기 - Token

by 사바라다 2023. 6. 4.

안녕하세요. 오늘은 ChatGPT 시리즈의 마지막으로 ChatGPT에서 Token에 대해서 알아보도록하겠습니다.

Token이란 ChatGPT의 기본 단위입니다.

이 Token이라는 단위를 이용해서 가격을 설정하고 이전 대화의 컨텍스트를 유지하는 단위로도 됩니다.

Tokenizing

Token은 단어의 조각이라고 할 수 있습니다. 프롬프트가 입력되면 입력된 프롬프트는 모델에 처리되기전에 먼저 token으로 분할됩니다. 이렇게 token화 되는 방식은 정확하게 word만을 나누는것은 아니며 띄어쓰기, 컴마, 복합어 등을 기준으로 쪼개질 수 있습니다.

https://help.openai.com/en/articles/4936856-what-are-tokens-and-how-to-count-them 에서 이야기하고 있는 token의 기준은 아래와 같습니다. [영어 기준]

  • 1 token ~= 4 알파벳 (ex. have)
  • 1 token ~= ¾ 단어
  • 100 tokens ~= 75 단어
  • 1-2 문장 ~= 30 tokens
  • 1 구문 ~= 100 tokens
  • 1,500 단어 ~= 2048 tokens

token은 언어별로 다르게 계산될 수 있습니다. 일반적으로 영어를 사용하는게 token을 덜 사용하는 방법입니다. 그런데 이런 중요한 token은 언어별로 다르기 때문에 계산하기 힘들 수 있습니다. 이를 위하여 openai에서는 token을 계산하는 사이트를 제공해주고 있습니다. 아래 사이트에서 input 또는 ouput의 문장에 대한 token을 쉽게 확인할 수 있습니다.

https://platform.openai.com/tokenizer

가격

API는 모델 타입에 따라서 가격정책이 다릅니다. 하지만 가격을 매기는 단위는 token으로 동일하다는 사실을 인지하고 있으셔야합니다. 각 모델은 각각 가격 정책이 있습니다. 가격정책은 아래 페이지에서 확인하실 수 있습니다.

https://openai.com/pricing

컨텍스트 기억 (제한 사항)

GPT 모델에 따라서 컨텍스트를 기억하는데 한계가 있습니다. ChatGPT를 사용하다보면 AI가 채팅을 하다 이전 대화내용을 까먹거나 할 경우가 생기는것을 확인 하신 경험이 있으실 수 있습니다. 이것은 착각이 아니라 정말로 그런 케이스가 자주발생할 수 있습니다. ChatGPT 3.5 기준으로 ChatGPT는 4097 token 까지 기억할 수 있습니다. 즉 이 이상의 컨텍스트는 대화가 지속되게 되면 잊어버립니다. ChatGPT를 활용할 때는 이 정보를 아는것이 정말로 중요합니다.

이러한 제한 때문에 token을 적게 사용하는 테크닉이 필요할 수 있으며 영어로 대화하는것이더 다른 언어보다 token을 적게 사용하기 때문에 가격적으로, 그리고 컨텍스트 기억적으로 좋을 수 있습니다.

사용한 Token 확인하기

https://platform.openai.com/account/usage 사이트를 통하면 본인이 사용한 token의 수량에 따라서 계산된 요금이 확인할 수 있습니다. API를 만들어서 사용할 때 반드시 확인하고 잘 활용해야합니다.

마무리

오늘은 이렇게 간단하게 ChatGPT의 Token에 대해서 알아보는 시간을 가져보았습니다.

Token은 ChatGPT의 제한에 대해서 보여주는데 기준이됩니다. 따라서 응용하기 위해서는 이러한 제한을 알아둘 필요가 있습니다.

이렇게해서 총 4개의 포스팅을 통해서 ChatGPT에 대해서 알아보았습니다.

감사합니다.

참조

[1] https://platform.openai.com/tokenizer

[2] https://help.openai.com/en/articles/6614209-how-do-i-check-my-token-usage

[3] https://help.openai.com/en/articles/4936856-what-are-tokens-and-how-to-count-them

댓글