Hacker News new | ask | show | jobs
by leecommamichael 12 days ago
Tokenizers define the alphabet on which the language model is trained. I don't want people to get the impression it's a module which can be swapped out or modified on its own. Alphabet size is a design consideration related to correctly encoding the training data.
2 comments

That's true, but it makes it difficult to compare pricing when it's based on tokens. Maybe we need a benchmark for price per a specific input, like enwiki8.
Yes, almost all work people share which seeks to measure the capabilities and differences of models needs to get more precise. We are clamoring to say something meaningful about these things.
It is kind of a shame we ended up comparing token pricing across models and providers when it doesn’t really make sense. Not sure what would be better though.
Use price per page (standard English text)? That would also help make the metric easier to visualize.

If you think a page is too vague, use a famous known writer's work as a reference.

Well isn't that what benchmarks are for? They compare total cost for a unit of work.
A better metric is price per byte. Most thinking traces, prompts, skills are in plain English, which is roughly 1 byte per character, assuming UTF-8 encoding (even code should not be much more either). As an aside, it is common to use bits-per-byte as a loss metric instead of the per token calculation, precisely because of the effect of different tokenizers.
It's going to vary dramatically based on which text you put in. Really it's hard to make one benchmark number that's relevant to all cases. But maybe we can make something a little more specific, like regular English text, code, the model's own thinking tokens, image inputs etc.
But even that isn't the whole story because the models can produce wildly amount of thinking output as well as regular output for a similar query. Sometimes you can take a cheap model and have it think a ton or an expensive model that thinks little and get similar results. But the number of tokens generated will be wildly different.
I’ve been struggling to understand the reason for the newer apparently less efficient Anthropic token encoding. If all inputs are less efficient in this encoding, why does it exist? Has Anthropic released any information that would convincingly show it was anything other than a stealth price hike? Please don’t respond if you are speculating.
> Please don’t respond if you are speculating.

I doubt you are going to get a response from an anthropic employee, but I think it is safe to assume they have swapped to a new tokenizer because it improves the performance of their models.

> the reason for the newer apparently less efficient Anthropic token encoding

Less efficient in token usage but per the blogs; it enables the model to perform better.

It's really simple I think.

More tokens per same text length means more capacity to encode information. More information means model can potentially perform better.

They introduced it around the time the Mythos came so my speculation is that if you have more capable model at some level you may find the current information encoding not using its full potential.

We will see whether OpenAI also introduces new tokenizer when they come to Mythos-size models.