지난 편에서 컨텍스트 얘기를 했다. AI가 한 번에 들고 있을 수 있는 정보의 양에는 한계가 있다는 것. 근데 그 "양"이라는 게 정확히 뭘까. 글자 수일까?사실 아니다. AI는 글이라는 걸 우리가 보는 방식대로 보지 않는다. 토큰(Token)이라는 단위로 본다.
토큰이 뭐야?
토큰은 AI가 글을 읽는 최소 단위다.
AI는 글을 작은 조각들로 잘라서 본다. 그 조각이 토큰이다. 조각의 크기는 모델마다, 언어마다 다르다. 영어는 보통 짧은 단어 하나가 토큰 하나고, 긴 단어는 두세 개로 쪼개진다. 예를 들어 "happy"는 토큰 1개, "unbelievable"은 토큰 3개쯤 될 수 있다. 한국어는 더 잘게 쪼개진다. 한 글자가 1~2개 토큰으로 잡히는 경우가 많다. "안녕하세요"가 영어 단어 한두 개보다 더 많은 토큰을 차지한다는 얘기다.
왜 토큰이라는 단위가 필요한가?
AI는 글자를 그대로 이해하는 게 아니라, 글을 숫자로 바꿔서 처리한다. 이부분은 개념 자체가 생소해서 그냥 암기했다. 그렇구나. 여튼, 그 숫자로 바꾸는 작업을 효율적으로 하려면 글을 일정한 단위로 쪼개야 한다고 한다. 그 단위가 토큰이다. 그래서 AI한테 모든 것은 토큰으로 환산된다.
내가 보낸 메시지도 토큰. AI가 답한 메시지도 토큰. 시스템 프롬프트도 토큰. 첨부한 파일도 토큰. 즉, 컨텍스트 전체가 토큰 덩어리다. 지난 편에서 얘기한 "컨텍스트 윈도우의 한계"도 사실은 토큰 단위로 정해진다. 예를 들어 어떤 모델이 "20만 토큰까지 한 번에 처리 가능"이라고 하면, 그건 시스템 프롬프트와 우리가 주고받은 모든 메시지, 첨부 파일을 다 합쳐서 토큰 20만 개를 넘으면 안 된다는 뜻이다.
그래서 우리가 알면 뭐가 좋나 ?
1. AI 비용이 왜 글자 수가 아닌지 알게 된다. 대부분의 LLM모델의 API 사용료는 토큰 기준으로 책정된다. 보통 입력 토큰 100만 개당 얼마, 출력 토큰 100만 개당 얼마 식이다. 그럼 이제 조금씩 이해되기 시작한다. 왜 얼마가 나오는지.
2. 한국어로 길게 쓰면 컨텍스트가 더 빨리 찬다는 걸 이해하게 되면같은 길이의 글을 한국어로 다루면 영어로 다룰 때보다 컨텍스트 윈도우가 더 빨리 찬다. 한국어로 사용할 때 AI가 빨리 흐려지는 느낌이 드는 데는 이런 이유도 있다.
3. 명확하고 압축적인 프롬프트가 효율적이다. AI한테 던지는 모든 글자는 토큰을 차지한다. 길게 쓴다고 답이 더 좋아지는 게 아니다. 정말 필요한 정보를 명확하게 전달하는 게 핵심이고, 길고 모호한 프롬프트보다 짧고 명확한 프롬프트가 더 잘 먹히는 이유다.
4. 출력 길이를 의식하게 된다. AI한테 "최대한 자세히 알려줘"라고 하면 답이 길어지고, 그만큼 토큰도 많이 쓰고, 컨텍스트도 더 빨리 찬다. 정말 자세히 필요한 게 아니라면 "핵심만 3줄로 정리해줘"가 훨씬 효율적일 수 있다.
정리하면
토큰은 AI가 글을 읽는 처리 단위다. AI만의 조각 단위.
영어보다 한국어가 평균적으로 토큰을 더 많이 쓴다. 그래서 같은 분량이라도 한국어가 비용도 더 들고 컨텍스트도 더 많이 차지한다.
컨텍스트 윈도우의 한계, AI 비용, 응답 길이가 다 토큰으로 측정된다. 명확하고 압축적으로 쓰는 습관이 그래서 좋다.
다음 편은 또 자주 듣는 단어, 할루시네이션(Hallucination) 얘기다. AI가 왜 거짓말을 하는지 알아보자.