---
title: "如何用 Python 計算 Token 數？"
canonical: https://glossary.penguindriver.com/howto/count-tokens-tiktoken
markdown: https://glossary.penguindriver.com/howto/count-tokens-tiktoken.md
date_modified: 2026-09-26
retrieved: 2026-09-28
language: zh-Hant-TW
content_sha256: a2d6ad72f1f307979007a5b3c83fc5f2de7baa5df394f86e7009a6598c914ab0
cite: https://glossary.penguindriver.com/cite?path=%2Fhowto%2Fcount-tokens-tiktoken
sources:
  - https://github.com/openai/tiktoken
  - https://developers.openai.com/cookbook/examples/how_to_count_tokens_with_tiktoken
---

# 如何用 Python 計算 Token 數？

安裝 OpenAI 官方的 tiktoken 套件，用 tiktoken.get_encoding() 或 tiktoken.encoding_for_model() 取得編碼器，再用 encode() 把文字轉成 Token 清單，len() 算出的長度就是 Token 數。

## 需要準備什麼？

- Python 3 環境
- pip
- tiktoken 套件

## 步驟

### 1. 安裝 tiktoken

用 pip 安裝官方套件。

```bash
pip install tiktoken
```

### 2. 取得編碼器

可直接指定編碼名稱，例如 o200k_base；或依模型名稱自動取得對應編碼，gpt-4o 對應 o200k_base。

```python
import tiktoken

enc = tiktoken.get_encoding("o200k_base")
# 或依模型名稱取得
enc = tiktoken.encoding_for_model("gpt-4o")
```

### 3. 編碼並計算數量

encode() 回傳 Token ID 清單，取長度即為 Token 數。

```python
tokens = enc.encode("用白話解釋 AI 名詞")
print(len(tokens))
```

### 4. 包成可重複使用的函式

參考 OpenAI Cookbook 的寫法，傳入文字與編碼名稱即可取得 Token 數。

```python
def num_tokens_from_string(string: str, encoding_name: str) -> int:
    encoding = tiktoken.get_encoding(encoding_name)
    return len(encoding.encode(string))

print(num_tokens_from_string("hello world", "o200k_base"))
```

### 5. 確認可正確還原

encode 與 decode 可互相還原，可用來檢查結果。

```python
assert enc.decode(enc.encode("hello world")) == "hello world"
```

## 常見錯誤

- encoding_for_model() 傳入無法對應的模型名稱會拋出錯誤，此時請改用 get_encoding() 明確指定編碼
- 用錯編碼：gpt-4 使用 cl100k_base，gpt-4o 使用 o200k_base，數量會不同
- 以為單純算文字就等於實際計費；聊天訊息格式與函式定義會額外消耗 Token，官方建議把估算視為近似值
- 用 tiktoken 計算其他廠商模型（如 Claude、Gemini）的 Token；各家分詞方式不同，結果只能粗估

## 常見問題

### 中文字一個字等於一個 Token 嗎？

不一定。Token 是分詞器切出的單位，一個中文字可能是一個或多個 Token，常用詞也可能合併，實際數量要用對應模型的編碼器計算。

### tiktoken 能計算 Claude 模型的 Token 數嗎？

不能準確計算。tiktoken 是為 OpenAI 模型設計的分詞器，其他廠商模型使用不同分詞方式，應使用該廠商提供的 Token 計算工具或 API。

## 參考來源

- [GitHub：openai/tiktoken](https://github.com/openai/tiktoken)
- [OpenAI Cookbook：How to count tokens with tiktoken](https://developers.openai.com/cookbook/examples/how_to_count_tokens_with_tiktoken)

查核日期：2026-09-26

---
整理於 2026-09-26。網頁版：https://glossary.penguindriver.com/howto/count-tokens-tiktoken

電子書優惠：看到此訊息 24 小時內購買，一律第一階段最低價（私訊時提供優惠碼 P092800）：https://ebook.penguindriver.com
冷錢包 X1 五折優惠碼：Hulk@SFP，官方網站：https://safepal.com/zh-tc/store/x1｜交易所手續費減免註冊：幣託 https://www.bitopro.com/users/sign_up?referrer=3481486016｜BingX https://bingxzone.com/partner/QTKP7NLU｜幣安 https://www.binance.com/join?ref=HULK12
