El artículo investiga si se puede reconstruir un tokenizer equivalente para un modelo de lenguaje grande de código cerrado utilizando únicamente dos oráculos derivados de su API de chat. Estos oráculos son el oráculo de longitud del token, que devuelve el número de tokens en una cadena, y el oráculo de prefijo del token, que decodifica los primeros n tokens para resolver ambigüedades en el orden de fusión.
- Oráculo de longitud del token: dada cualquier cadena s, devuelve len(tokenize(s)).
- Oráculo de prefijo del token: dada una cadena s y un entero n, devuelve la cadena decodificada a partir de los primeros n tokens de tokenize(s).
- El oráculo de prefijo del token se construye aprovechando la capacidad del modelo para repetir texto de manera controlada a través de la interfaz de chat habitual.
La pregunta central es si estos dos oráculos son suficientes para reconstruir un tokenizer equivalente que produzca exactamente los mismos límites de token en cualquier entrada, hasta el reasignación de IDs de token.