안녕하세요. 오늘은 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으로 동일하다는 사실을 인지하고 있으셔야합니다. 각 모델은 각각 가격 정책이 있습니다. 가격정책은 아래 페이지에서 확인하실 수 있습니다.
컨텍스트 기억 (제한 사항)
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
'기타 > 기타' 카테고리의 다른 글
[기타] 날짜와 시간 표현의 국제 표준인 ISO 8601에 대해서 자세히 알아보자. (RFC3339, ISO8601, JavaTime) (0) | 2024.07.02 |
---|---|
ChatGPT 알아보기 - API 사용하기 (0) | 2023.05.24 |
ChatGPT 알아보기 - ChatGPT의 동작 과정과 프롬프트(Prompt) ? (0) | 2023.05.13 |
ChatGPT 알아보기 - 개요와 기본 사용법 (1) | 2023.05.05 |
[기타] CloudEvents v1.0.2 번역 및 정리 - 이벤트 메시지 스키마 스펙 (0) | 2023.04.19 |
댓글