O artigo investiga se um tokenizer equivalente para um modelo de linguagem grande de código fechado pode ser reconstruído usando apenas dois oráculos derivados de sua API de chat. Esses oráculos são o oráculo de comprimento do token, que retorna o número de tokens em uma string, e o oráculo de prefixo do token, que decodifica os primeiros n tokens para resolver ambiguidades na ordem de fusão.
- Oráculo de comprimento do token: dada qualquer string s, retorna len(tokenize(s)).
- Oráculo de prefixo do token: dada uma string s e um inteiro n, retorna a string decodificada a partir dos primeiros n tokens de tokenize(s).
- O oráculo de prefixo do token é construído aproveitando a capacidade do modelo de repetir texto de maneira controlada por meio da interface de chat padrão.
A questão central é se esses dois oráculos são suficientes para reconstruir um tokenizer equivalente que produza exatamente os mesmos limites de token em qualquer entrada, até o remapeamento dos IDs de token.