diff --git a/chapters/es/_toctree.yml b/chapters/es/_toctree.yml
index 16c97039c..6289440b6 100644
--- a/chapters/es/_toctree.yml
+++ b/chapters/es/_toctree.yml
@@ -37,6 +37,8 @@
title: Poniendo todo junto
- local: chapter2/7
title: ¡Haz completado el uso básico!
+ - local: chapter2/8
+ title: Quiz de final de capítulo
- title: 3. Ajuste (fine-tuning) de un modelo preentrenado
sections:
diff --git a/chapters/es/chapter2/8.mdx b/chapters/es/chapter2/8.mdx
new file mode 100644
index 000000000..b935571c7
--- /dev/null
+++ b/chapters/es/chapter2/8.mdx
@@ -0,0 +1,310 @@
+
+
+
+
+# Quiz de final de capítulo
+
+
+
+### 1. ¿Cuál es el orden del pipeline de modelado del lenguaje?
+
+
+
+### 2. ¿Cuántas dimensiones tiene el tensor producido por el modelo base de Transformer y cuáles son?
+
+
+
+### 3. ¿Cuál de los siguientes es un ejemplo de tokenización de subpalabras?
+
+
+
+### 4. ¿Qué es una cabeza del modelo?
+
+
+
+{#if fw === 'pt'}
+### 5. ¿Qué es un AutoModel?
+
+AutoTrain?"
+ },
+ {
+ text: "Un objeto que devuelve la arquitectura correcta basado en el punto de control",
+ explain: "Exacto: el AutoModel sólo necesita conocer el punto de control desde el cual inicializar para devolver la arquitectura correcta.",
+ correct: true
+ },
+ {
+ text: "Un modelo que detecta automáticamente el lenguaje usado por sus entradas para cargar los pesos correctos",
+ explain: "Incorrecto; auqneu algunos puntos de control y modelos son capaced de manejar varios lenguajes, no hay herramientas integradas para la selección automática de punto de control de acuerdo al lenguaje. ¡Deberías dirigirte a Model Hub para encontrar el mejor punto de control para tu tarea!"
+ }
+ ]}
+/>
+
+{:else}
+### 5. ¿Qué es un TFAutoModel?
+
+AutoTrain?"
+ },
+ {
+ text: "Un objeto que devuelve la arquitectura correcta basado en el punto de control",
+ explain: "Exacto: el TFAutoModel sólo necesita conocer el punto de control desde el cual inicializar para devolver la arquitectura correcta.",
+ correct: true
+ },
+ {
+ text: "Un modelo que detecta automáticamente el lenguaje usado por sus entradas para cargar los pesos correctos",
+ explain: "Incorrecto; auqneu algunos puntos de control y modelos son capaced de manejar varios lenguajes, no hay herramientas integradas para la selección automática de punto de control de acuerdo al lenguaje. ¡Deberías dirigirte a Model Hub para encontrar el mejor punto de control para tu tarea!"
+ }
+ ]}
+/>
+
+{/if}
+
+### 6. ¿Cuáles son las técnicas a tener en cuenta al realizar batching de secuencias de diferentes longitudes juntas?
+
+
+
+### 7. ¿Cuál es el punto de aplicar una funcion SoftMax a las salidas logits por un modelo de clasificación de secuencias?
+
+
+
+### 8. ¿En qué método se centra la mayor parte de la API del tokenizador?
+
+encode, ya que puede codificar texto en IDs e IDs en predicciones",
+ explain: "¡Incorrecto! Aunque el método encode existe en los tokenizadores, no existe en los modelos."
+ },
+ {
+ text: "Llamar al objeto tokenizador directamente.",
+ explain: "¡Exactamente! El método __call__ del tokenizador es un método muy poderoso el cual puede manejar casi cualquier cosa.También es el método usado para recuperar las predicciones de un modelo.",
+ correct: true
+ },
+ {
+ text: "pad",
+ explain: "¡Incorrecto! El relleno es muy útil, pero es solo una parte de la API tokenizador."
+ },
+ {
+ text: "tokenize",
+ explain: "El método tokenize es posiblemente uno de los métodos más útiles, pero no es el núcleo de la API tokenizador."
+ }
+ ]}
+/>
+
+### 9. ¿Qué contiene la variable `result` en este código de ejemplo?
+
+```py
+from transformers import AutoTokenizer
+
+tokenizer = AutoTokenizer.from_pretrained("bert-base-cased")
+result = tokenizer.tokenize("Hello!")
+```
+
+__call__ o convert_tokens_to_ids!"
+ },
+ {
+ text: "Una cadena que contiene todos los tokens",
+ explain: "Esto sería subóptimo, ya que el objetivo es dividir la cadena en varios tokens."
+ }
+ ]}
+/>
+
+{#if fw === 'pt'}
+### 10. ¿Hay algo mal con el siguiente código?
+
+```py
+from transformers import AutoTokenizer, AutoModel
+
+tokenizer = AutoTokenizer.from_pretrained("bert-base-cased")
+model = AutoModel.from_pretrained("gpt2")
+
+encoded = tokenizer("Hey!", return_tensors="pt")
+result = model(**encoded)
+```
+
+
+
+{:else}
+### 10. ¿Hay algo mal con el siguiente código?
+
+```py
+from transformers import AutoTokenizer, TFAutoModel
+
+tokenizer = AutoTokenizer.from_pretrained("bert-base-cased")
+model = TFAutoModel.from_pretrained("gpt2")
+
+encoded = tokenizer("Hey!", return_tensors="pt")
+result = model(**encoded)
+```
+
+
+
+{/if}