Como mencione anteriormente, se utiliza la tokenización debido a que permite al modelo a manejar diferentes lenguajes, vocabularios y formatos, y a reducir los costos computacionales y de memoria de manera sencilla.

La razón por lo que la tokenización ayuda a los LLM es debido a que permite reducir el tamaño de los datos que debe procesar, por ejemplo, si tienes un texto con una longitud de 5000 caracteres (incluyendo puntuación, espacios, etc.) se puede reducir su longitud al realizar la tokenización convirtiendo conjuntos de caracteres en un único token, dependiendo de como se realice la tokenización se pueden convertir desde caracteres individuales hasta palabras enteras en tokens, por lo que en lugar de procesar los 5000 caracteres individuales el LLM terminara procesando 3000, 2000, 1000 o incluso menos tokens (dependiendo de como se realice la tokenización).

Para tokenizar un texto en python podemos usar la librería spaCy que puede ser instalada con el comando.

```console
python3 -m pip install spacy
```

Una vez instalada la librería necesaria podemos usar el siguiente código que pregunta al usuario que texto quiere tokenizar e imprime los tokens extraídos del texto.

```python
from spacy.lang.es import Spanish
nlp = Spanish()
texto = input('Texto a tokenizar: ')
doc = nlp(texto)
tokens = [token.text for token in doc]
print(tokens)
```
spam fails_task lang_mismatch pii not_appropriate hate_speech sexual_content quality toxicity humor helpfulness creativity violence