tokencount / app.py
yuta_hayashi
first commit
b19f17e
raw
history blame
No virus
1 kB
import gradio as gr
from anthropic import Anthropic
import tiktoken
anthropic = Anthropic()
gpt_35_encoder = tiktoken.get_encoding("cl100k_base")
def count_anthropic_tokens(text: str) -> int:
return anthropic.count_tokens(text)
def count_gpt_tokens(text: str) -> int:
return len(gpt_35_encoder.encode(text))
def tokenize(text: str) -> tuple:
anthropic_count = count_anthropic_tokens(text)
gpt_tokens_count = count_gpt_tokens(text)
char_count = len(text)
return anthropic_count, gpt_tokens_count, char_count
counter = gr.Interface(
title="Token and Character Counter",
fn=tokenize,
inputs=gr.Textbox(lines=10, placeholder="Input Text"),
outputs=[
gr.Number(label="Anthropic API (Claude) Token Count", interactive=False),
gr.Number(label="OpenAI API (GPT-3.5 / GPT-4) Token Count", interactive=False),
gr.Number(label="Character Count", interactive=False)
],
live=True,
allow_flagging="never",
)
counter.launch(debug=True)