Skip to main content

A simple token counter for Llama 3.2 models.

Project description

Llama 3.2 Token Counter

Python Version License

A simple and efficient token counter for Llama 3.2 models.

Description

The Llama 3.2 Token Counter is a Python package that provides an easy way to count tokens generated by Llama 3.2 models. This tool is essential for developers and researchers working with large language models, helping them manage token limits and optimize their use of the Llama 3.2 architecture.

Features

  • Accurate token counting for Llama 3.2 models
  • Easy-to-use Python API
  • Supports both string and list of strings inputs
  • Asynchronous token counting support
  • Batch processing for large inputs
  • Lightweight and efficient

Installation

You can install the Llama 3.2 Token Counter using pip:

pip install llama3.2-token-counter

Usage

Here's a quick example of how to use the Llama 3.2 Token Counter:

from llama_token_counter import LlamaTokenCounter
import asyncio

# Initialize the token counter
counter = LlamaTokenCounter()

# Synchronous token counting
text = "Hello, world! This is a sample text for token counting."
token_count = counter.count_tokens(text)
print(f"The text contains {token_count} tokens.")

# Asynchronous token counting
async def count_async():
    text = "This is an async token counting example."
    token_count = await counter.count_tokens(text)
    print(f"The async text contains {token_count} tokens.")

asyncio.run(count_async())

# Count tokens in a list of strings
texts = ["Hello, world!", "This is another sample.", "Multiple strings can be processed."]
token_count = counter.count_tokens(texts)
print(f"The list of texts contains {token_count} tokens in total.")

# Get the maximum token limit
max_tokens = counter.get_max_tokens()
print(f"The maximum token limit is {max_tokens}.")

# Batch processing for large lists
large_list = ["Text " + str(i) for i in range(10000)]
token_count = counter.count_tokens(large_list, batch_size=500)
print(f"The large list contains {token_count} tokens in total.")

Contributing

We welcome contributions to the Llama 3.2 Token Counter! If you'd like to contribute, please look at CONTRIBUTING.md for more information.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Contact

Anthony - @anthoeknee

Project Link: https://github.com/anthoeknee/llama3.2-token-counter

Running Tests

To run the tests, follow these steps:

  1. Clone the repository:

    git clone https://github.com/yourusername/llama3.2-token-counter.git
    cd llama3.2-token-counter
    
  2. Install the development dependencies:

    pip install -r requirements.txt
    
  3. Run the tests:

    pytest tests
    

Make sure you have the necessary tokenizer files in the src/llama_token_counter/tokenizer directory before running the tests.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

llama3_2_token_counter-0.4.0.tar.gz (5.6 MB view details)

Uploaded Source

Built Distribution

llama3.2_token_counter-0.4.0-py3-none-any.whl (3.3 MB view details)

Uploaded Python 3

File details

Details for the file llama3_2_token_counter-0.4.0.tar.gz.

File metadata

File hashes

Hashes for llama3_2_token_counter-0.4.0.tar.gz
Algorithm Hash digest
SHA256 8018ae1d359f0482723659e7b5c3e871dfe61c9da6af0ad1464446fb770fcfa9
MD5 b03bacf46a4094c2b2af9a4cc51fb325
BLAKE2b-256 b23a1b9635f06b27c6cc33f29a52620c2bcb19e6cf79a0eab394b3e47d2dc16d

See more details on using hashes here.

File details

Details for the file llama3.2_token_counter-0.4.0-py3-none-any.whl.

File metadata

File hashes

Hashes for llama3.2_token_counter-0.4.0-py3-none-any.whl
Algorithm Hash digest
SHA256 42ca77e7c4a4b394c9ef7fa78d112155b1189b05048724a5d708e0431f75ce9f
MD5 920755d02f1d565fb3c8d70c17f6487c
BLAKE2b-256 1c9a16642705c2b829c4b73d38ff014bd8dcd1fc0c0855a91c0e4d8b23e118d9

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page