├── LICENSE ├── README.md ├── Taller_Modelos_de_lenguaje_a_tu_medida_13_de_septiembre_2023.ipynb ├── datasets ├── cortazar.csv ├── martin_fierro.csv ├── martin_fierro_v2.csv ├── peppa_pig.csv ├── poe.csv ├── saramago.csv ├── vizwiz.csv ├── wines_en.csv └── wines_es.csv └── flyer.jpeg /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2023 Hernán J. Maina 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | Open In Colab 2 | 3 | # Taller: Modelos de lenguaje a tu medida 4 | > 12º Jornadas Regionales de Software Libre, Córdoba 2023 5 | 6 | ![flyer](flyer.jpeg) -------------------------------------------------------------------------------- /Taller_Modelos_de_lenguaje_a_tu_medida_13_de_septiembre_2023.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "markdown", 5 | "metadata": { 6 | "id": "view-in-github", 7 | "colab_type": "text" 8 | }, 9 | "source": [ 10 | "\"Open" 11 | ] 12 | }, 13 | { 14 | "cell_type": "markdown", 15 | "metadata": { 16 | "id": "65c9fdf3" 17 | }, 18 | "source": [ 19 | "# Taller: Modelos de lenguaje a tu medida 🤖💬" 20 | ], 21 | "id": "65c9fdf3" 22 | }, 23 | { 24 | "cell_type": "markdown", 25 | "metadata": { 26 | "id": "32a802c2" 27 | }, 28 | "source": [ 29 | "¿Quiénes somos?\n", 30 | "------------------\n", 31 | "\n", 32 | "* **Hernán Maina** - Becario doctoral de CONICET ( [🤗](https://huggingface.co/nanom) | [🌐](https://nanom.github.io/) | [📫](mailto:hernan.maina@mi.unc.edu.ar))\n", 33 | "* **Guido Ivetta** - Becario doctoral de Vía Libre y Profesor Ayudante de FAMAF ([🤗](https://huggingface.co/guidoivetta) | [📫](mailto:guidoivetta@mi.unc.edu.ar ))\n", 34 | "* **Laura Alonso Alemany** - Profesora Asociada de FAMAF ([🐦](@morlaicassiopea) | [🌐](https://www.cs.famaf.unc.edu.ar/~laura/) | [📫](mailto:lauraalonsoalemany@unc.edu.ar))\n", 35 | "* **Luciana Benotti** - Profesora Asociada de FAMAF ([🐦](@LucianaBenotti) | [🌐](https://benotti.github.io/) | [📫](mailto:luciana.benotti@unc.edu.ar))\n", 36 | "\n", 37 | "
\n", 38 | "

\n", 39 | "
\n", 40 | "
\n", 41 | " \n", 42 | "
\n", 43 | "
\n", 44 | " @fvialibre -\n", 45 | " https://www.vialibre.org.ar/\n", 46 | "
\n", 47 | "
" 48 | ], 49 | "id": "32a802c2" 50 | }, 51 | { 52 | "cell_type": "markdown", 53 | "metadata": { 54 | "id": "bb685a55" 55 | }, 56 | "source": [ 57 | "## Esquema del taller\n", 58 | "\n", 59 | "1. [Modelos de lenguaje](#Modelos-de-lenguaje)\n", 60 | "2. [Librerias](#Librerias)\n", 61 | "3. [Probemos modelos](#Probemos-modelos)\n", 62 | "4. [Personalicemos un modelo](#Personalicemos-un-modelo)\n", 63 | "\n", 64 | "*Requerimientos deseables para entender este taller:*\n", 65 | "* Conocimiento básico de Python\n", 66 | "* Conocimiento básico en entrenamiento de modelos\n", 67 | "\n", 68 | "*Librerías principales utilizadas*:\n", 69 | "* [Hugging Face 🤗 ](https://huggingface.co/)\n", 70 | "\n", 71 | "*Agradecimientos*:\n", 72 | "* **Cristian Cardellino**, por la inspiración en la estructura de partes del notebook. Ver [acá](https://colab.research.google.com/#fileId=https%3A//huggingface.co/crscardellino/xi-ciai-cba-martin-fierro/blob/main/xi-ciai-cba.ipynb) para más detalles.\n", 73 | "* **Beatriz Busaniche**, **Nair Carolina** y **Alexia Halvorsen** de la Fundación Vía Libre por su continuo apoyo.\n", 74 | "* **Matías Bordone** y **Librebase Córdoba**, por la organización de la jornada.\n", 75 | "* **Nicolás Wolovick** y a todo el equipo de **CCAD-UNC** por disponibilizar recursos para la creación y desarrollo de este taller.\n", 76 | "* **FAMAF**, por la apertura y predisposición." 77 | ], 78 | "id": "bb685a55" 79 | }, 80 | { 81 | "cell_type": "markdown", 82 | "source": [ 83 | "# **IMPORTANTE**\n", 84 | "\n", 85 | "* Todas las celdas indicadas con el símbolo ( ❗ ) son obligatorias y necesarias para el correcto funcionamiento de este taller.\n", 86 | "\n", 87 | "* Aquellas señaladas con ( 🔎 ) son de profundización de contenido, optativas de leer y computar.\n", 88 | "\n", 89 | "* Si una celda contiene el símbolo ( ⏳ ), significa que tomará más tiempo en computarse que el promedio. Tener en cuenta para aprovechar al máximo el tiempo disponible del taller." 90 | ], 91 | "metadata": { 92 | "id": "VnE4JoEZ1z7t" 93 | }, 94 | "id": "VnE4JoEZ1z7t" 95 | }, 96 | { 97 | "cell_type": "markdown", 98 | "metadata": { 99 | "id": "YEo2e_80I-42" 100 | }, 101 | "source": [ 102 | "# 0 - Inicialización de la notebook" 103 | ], 104 | "id": "YEo2e_80I-42" 105 | }, 106 | { 107 | "cell_type": "code", 108 | "execution_count": null, 109 | "metadata": { 110 | "id": "eGOTohldJe8O" 111 | }, 112 | "outputs": [], 113 | "source": [ 114 | "# @markdown ❗\n", 115 | "# Instalación de librerías\n", 116 | "!pip install -U transformers[torch] --quiet\n", 117 | "!pip install -U tabulate --quiet\n", 118 | "!pip install -U datasets --quiet" 119 | ], 120 | "id": "eGOTohldJe8O" 121 | }, 122 | { 123 | "cell_type": "code", 124 | "execution_count": null, 125 | "metadata": { 126 | "id": "LjgyHGLMJ-TT" 127 | }, 128 | "outputs": [], 129 | "source": [ 130 | "# @markdown ❗\n", 131 | "# Descarga de datasets\n", 132 | "import os\n", 133 | "\n", 134 | "ROOT_PATH = \"llm_adaptation_workshop\"\n", 135 | "DATASETS_PATH = os.path.join(ROOT_PATH, \"datasets\")\n", 136 | "\n", 137 | "%rm -r \"$ROOT_PATH\"\n", 138 | "!git clone https://github.com/nanom/llm_adaptation_workshop.git \"$ROOT_PATH\"" 139 | ], 140 | "id": "LjgyHGLMJ-TT" 141 | }, 142 | { 143 | "cell_type": "code", 144 | "execution_count": null, 145 | "metadata": { 146 | "id": "chzUFmPgLcod" 147 | }, 148 | "outputs": [], 149 | "source": [ 150 | "# @markdown ❗\n", 151 | "# Comprobación de recursos (GPUs)\n", 152 | "!nvidia-smi" 153 | ], 154 | "id": "chzUFmPgLcod" 155 | }, 156 | { 157 | "cell_type": "markdown", 158 | "metadata": { 159 | "id": "eb7f3997" 160 | }, 161 | "source": [ 162 | "# 1 - Modelos de lenguaje" 163 | ], 164 | "id": "eb7f3997" 165 | }, 166 | { 167 | "cell_type": "markdown", 168 | "metadata": { 169 | "id": "283ca08c" 170 | }, 171 | "source": [ 172 | "## ¿Qué son los \"modelos de lenguaje\"?\n", 173 | "\n", 174 | "- Son modelos estadísticos predictivos, basados en aprendizaje automático sobre textos.\n", 175 | "- Su función principal es **analizar** y/o **generar** texto de manera automática.\n", 176 | "- Se entrenan encontrando patrones en grandes cantidades de texto libre.\n", 177 | "- Dado un contexto (e.g. una secuencia de palabras), aplican los patrones inferidos para predecir la palabra siguiente, generando texto plausible y coherente.\n", 178 | "- Si bien los modelos de lenguaje existen desde hace varias décadas en diferentes formas (modelos markovianos, conditional random fields, redes neuronales recurrentes), actualmente cuando alguien habla de un \"Modelo de Lenguaje\", usualmente se refiere a un modelo neuronal de tipo **Transformer**.\n", 179 | "\n", 180 | "### ¿Qué es un **Transformer**?\n", 181 | "\n", 182 | "- Es un tipo de arquitectura de redes neuronales que se introdujo en el paper [\"Attention is All You Need\"](https://arxiv.org/abs/1706.03762).\n", 183 | "\n", 184 | "- El tipo de aprendizaje que hacen estas redes está basado en **mecanismos de atención**, que ayudan al modelo a enfocarse en las partes más determinantes de la información, de forma que el entrenamiento sea más rápido y menos costoso que para otras arquitecturas, como las redes neuronales recurrentes.\n", 185 | "\n", 186 | "\n", 187 | "\n", 188 | "- Existen diferentes variantes de transformer, de acuerdo a cómo y qué parte de sus componentes utilizan:\n", 189 | " - Los modelos de traducción secuencia a secuencia o `Seq2Seq` (e.g. [T5](https://arxiv.org/abs/1910.10683)), tienen un **codificador y decodificador** y son empleados para tareas de transformación como traducción, simplificación, cambio de estilo o resumen.\n", 190 | " - Los modelos que sólo usan el **codificador** (e.g. [BERT](https://arxiv.org/abs/1810.04805)) se usan para obtener representaciones vectoriales del texto (*embeddings*) que resultan muy útiles para determinar relaciones de semejanza entre diferentes textos.\n", 191 | " - Los modelos basados en el **decodificador** (e.g. [GPT](https://arxiv.org/abs/2005.14165)) se usan para generar texto automáticamente, como respuestas a preguntas, ensayos o cuentos, entre otros.\n", 192 | "\n", 193 | "
\n", 194 | "\n", 195 | "**Nota:** *Para una explicación más sencilla, pero más detallada, sugiero los posts de la serie \"The Illustrated...\" de [Jay Alammar](http://jalammar.github.io/):*\n", 196 | "- [The Illustrated Transformer](http://jalammar.github.io/illustrated-transformer/)\n", 197 | "- [The Illustrated BERT](http://jalammar.github.io/illustrated-bert/)\n", 198 | "- [The Illustrated GPT-2](http://jalammar.github.io/illustrated-gpt2/) / [How GPT-3 Works](http://jalammar.github.io/how-gpt3-works-visualizations-animations/)" 199 | ], 200 | "id": "283ca08c" 201 | }, 202 | { 203 | "cell_type": "markdown", 204 | "metadata": { 205 | "id": "87d1ca59" 206 | }, 207 | "source": [ 208 | "## Probamos un BERT mediante la tarea *fill-mask*\n", 209 | "\n", 210 | "En esta sección vamos a practicar con [BERT](https://en.wikipedia.org/wiki/BERT_(language_model)), un modelo de lenguaje con una arquitectura compuesta de **codificadores** (encoders).\n" 211 | ], 212 | "id": "87d1ca59" 213 | }, 214 | { 215 | "cell_type": "markdown", 216 | "metadata": { 217 | "id": "0IFLq1qP96_l" 218 | }, 219 | "source": [ 220 | "Para familiarizarnos con BERT, vamos a jugar con la tarea \"*Fill-Mask*\", cuyo objetivo es completar una oración con algunas palabras, en los lugares marcados con `[MASK]`.\n", 221 | "\n", 222 | "El modelo de lenguaje predecirá las palabras más adecuadas para encajar en esos espacios en blanco, es decir, las más probables dado el contexto, según los patrones estadísticos inferidos de los ejemplos de aprendizaje. Esto nos sirve para evaluar qué tan bien está modelando los textos." 223 | ], 224 | "id": "0IFLq1qP96_l" 225 | }, 226 | { 227 | "cell_type": "code", 228 | "execution_count": null, 229 | "metadata": { 230 | "id": "viJnXm9nzbSz" 231 | }, 232 | "outputs": [], 233 | "source": [ 234 | "# @markdown 🔎\n", 235 | "# Usamos pipeline como función auxiliar de alto nivel\n", 236 | "from transformers import pipeline\n", 237 | "\n", 238 | "fill_mask = pipeline(\n", 239 | " task=\"fill-mask\",\n", 240 | " model=\"dccuchile/bert-base-spanish-wwm-uncased\",\n", 241 | " top_k=5\n", 242 | ")" 243 | ], 244 | "id": "viJnXm9nzbSz" 245 | }, 246 | { 247 | "cell_type": "code", 248 | "execution_count": null, 249 | "metadata": { 250 | "id": "n8XrWlLOzyTO" 251 | }, 252 | "outputs": [], 253 | "source": [ 254 | "# @markdown 🔎\n", 255 | "ejemplo = 'Córdoba es una [MASK] de Argentina.'\n", 256 | "fill_mask(ejemplo)" 257 | ], 258 | "id": "n8XrWlLOzyTO" 259 | }, 260 | { 261 | "cell_type": "markdown", 262 | "metadata": { 263 | "id": "cfc710ea" 264 | }, 265 | "source": [ 266 | "## Probamos un GPT para la tarea de generación de texto\n", 267 | "\n", 268 | "En esta sección vamos a practicar con [GPT](https://en.wikipedia.org/wiki/Generative_pre-trained_transformer), un modelo de lenguaje generativo con una arquitectura basada en transformers.\n", 269 | "\n", 270 | "Vamos a jugar con la función de generación del modelo, que, dada una secuencia de palabras, predice la continuación más probable para la misma, según los patrones inferidos en los ejemplos de aprendizaje." 271 | ], 272 | "id": "cfc710ea" 273 | }, 274 | { 275 | "cell_type": "code", 276 | "execution_count": null, 277 | "metadata": { 278 | "id": "Y4F-eNCu0D3q" 279 | }, 280 | "outputs": [], 281 | "source": [ 282 | "# @markdown 🔎\n", 283 | "# Usamos pipeline como función auxiliar de alto nivel\n", 284 | "from transformers import pipeline\n", 285 | "\n", 286 | "text_gen = pipeline(\n", 287 | " task=\"text-generation\",\n", 288 | " model=\"gpt2\",\n", 289 | " pad_token_id=50256\n", 290 | ")" 291 | ], 292 | "id": "Y4F-eNCu0D3q" 293 | }, 294 | { 295 | "cell_type": "code", 296 | "execution_count": null, 297 | "metadata": { 298 | "id": "CAOGxhw10F1_" 299 | }, 300 | "outputs": [], 301 | "source": [ 302 | "# @markdown 🔎\n", 303 | "ejemplo=\"My name is Lewis and I like to\"\n", 304 | "text_gen(ejemplo)" 305 | ], 306 | "id": "CAOGxhw10F1_" 307 | }, 308 | { 309 | "cell_type": "markdown", 310 | "metadata": { 311 | "id": "8958cf42" 312 | }, 313 | "source": [ 314 | "# 2 - Librerías para modelos de lenguaje\n" 315 | ], 316 | "id": "8958cf42" 317 | }, 318 | { 319 | "cell_type": "markdown", 320 | "metadata": { 321 | "id": "6038bd78" 322 | }, 323 | "source": [ 324 | "## ¿Qué es Hugging Face 🤗?\n", 325 | "\n", 326 | "- Una [comunidad colaborativa](https://huggingface.co/) especialmente enfocada en modelos de lenguaje y otros recursos de Inteligencia Artificial (IA).\n", 327 | "- Ofrece repositorios para disponibilizar [modelos](https://huggingface.co/models), [datasets](https://huggingface.co/datasets) y [demos](https://huggingface.co/spaces).\n", 328 | "- Además, ofrece varias librerías orientadas a la IA, particularmente al Aprendizaje Profundo (*Deep Learning*), entre las que destacan:\n", 329 | " - [`transformers`](https://huggingface.co/docs/transformers): La que veremos en esta charla, para todo lo relacionado a Procesamiento del Lenguaje Natural (PLN) con grandes modelos de lenguaje (*Large Language Models*, LLMs).\n", 330 | " - [`datasets`](https://huggingface.co/docs/datasets): Una librería con funcionalidades para el tratamiento de los conjuntos de datos a utilizar para entrenar o ajustar los LLMs.\n", 331 | " - [`tokenizers`](https://huggingface.co/docs/tokenizers): Una librería para el proceso de \"tokenización\", i.e. la división de texto de manera discreta en palabras o subpalabras.\n", 332 | "- Hugging Face no sólo ofrece soluciones para PLN, sino también para imágenes, con librerías como [`diffusers`](https://huggingface.co/docs/diffusers), para la generación de imágenes:\n", 333 | " - Lectura recomendada: [The Illustrated Stable Diffusion](http://jalammar.github.io/illustrated-stable-diffusion/)" 334 | ], 335 | "id": "6038bd78" 336 | }, 337 | { 338 | "cell_type": "markdown", 339 | "metadata": { 340 | "id": "25ad7d45" 341 | }, 342 | "source": [ 343 | "## ¿Cómo empezar con Hugging Face 🤗?\n", 344 | "\n", 345 | "- Primero se [crea una cuenta en la página](https://huggingface.co/join).\n", 346 | "- Luego podemos [crear modelos](https://huggingface.co/new) a través del menú que se despliega de nuestro avatar.\n", 347 | "- Para poder subir el modelo personalizado que entrenaremos en esta notebook en tu cuenta de Hugging Face, necesitarás generar un token de acceso mediante los siguentes pasos:\n", 348 | "\n", 349 | "> 1. **Accedé** a la [sección de tokens de acceso](https://huggingface.co/settings/tokens) de tu perfil:\n", 350 | "
\n", 351 | "\n", 352 | "> 2. Creá un **nuevo token** de acceso con permiso de escritura:\n", 353 | "
\n", 354 | " \n", 355 | "> 3. **Listo!**. Ya tenés tu token preparado para poder subir tu modelo a la plataforma de Hugging Face 🤗." 356 | ], 357 | "id": "25ad7d45" 358 | }, 359 | { 360 | "cell_type": "markdown", 361 | "metadata": { 362 | "id": "AkW7-sQW0bPf" 363 | }, 364 | "source": [ 365 | "# 3 - ¿Cómo se entrenan los modelos de lenguaje?" 366 | ], 367 | "id": "AkW7-sQW0bPf" 368 | }, 369 | { 370 | "cell_type": "markdown", 371 | "metadata": { 372 | "id": "adb09645" 373 | }, 374 | "source": [ 375 | "En esta notebook **NO** vamos a entrenar completamente un LLM, porque los LLMs requieren de muchos datos y mucho cómputo para ser entrenados:\n", 376 | "- Para **BERT**:\n", 377 | " - El costo total estimado de entrenamiento del modelo fue de U\\$D 6912 (para su version *large*) y de U\\$D 500 (para su versión *base*).\n", 378 | " - Mientras que la versión pequeña (*base*) cuenta con 109M de parámetros, su versión original (*large*) oscila en 334M, más del triple.\n", 379 | " - Su entrenamiento fue realizado sobre 3.3B de tokens (aproximadamente 20 GB de texto no comprimido).\n", 380 | "\n", 381 | "- Para **GPT-3**:\n", 382 | " - Se estimó un costo de entrenamiento cercano a los U\\$D 4.6 Millones.\n", 383 | " - Disponible en ocho tamaños, que van desde los 125M a los 175B parámetros.\n", 384 | " - Requirió de varias semanas de entrenamiento.\n", 385 | " - El corpus reportado en el cual fue entrenado es de aproximadamente 500B de palabras.\n", 386 | " - Se necesito de varias GPUs y hardware especializado para entrenarlo.\n", 387 | "\n", 388 | "Sin embargo, vamos a **entrenar parcialmente** un modelo de lenguaje, en concreto, vamos a adaptarlo a un dominio particular.\n" 389 | ], 390 | "id": "adb09645" 391 | }, 392 | { 393 | "cell_type": "markdown", 394 | "source": [ 395 | "\n", 396 | "## Diferencia entre pre-training y fine-tuning\n", 397 | "\n", 398 | "La distinción clave entre `pre-training` y `fine-tuning` se encuentra en las etapas del proceso de entrenamiento:\n", 399 | "\n", 400 | "* El **pre-training**, es la primera fase de entrenamiento al que se somete todo modelo LLM, y requiere de una enorme cantidad de textos genéricos, como se ha descrito en el apartado anterior.\n", 401 | "\n", 402 | "* Una vez finalizado este proceso inicial de entrenamiento, se obtiene un modelo genérico capaz de realizar predicciones genéricas sobre patrones textuales, pero sin especialización en ninguna tareas específicas.\n", 403 | "\n", 404 | "* Si deseamos adaptar este modelo genérico para que desempeñe una tarea específica con un alto rendimiento (e.g.: *Text Clasification*, *Sentiment analysis*, *Question Answering*, *Information Extraction*, etc.), se lleva a cabo una segunda etapa de entrenamiento conocida como **fine-tuning**.\n", 405 | "\n", 406 | "
\n", 407 | "\n", 408 | "\n", 409 | "
\n", 410 | " fuente: https://medium.com/mantisnlp/supervised-fine-tuning-customizing-llms-a2c1edbf22c3\n", 411 | "\n", 412 | "\n", 413 | "Este entrenamiento específico requiere de menos ejemplos de entrenamiento y menos cálculo, ya que sólo modifica ligeramente el modelo ya entrenado. En este proceso, existen varías formas en como se \"modifica\" el modelo pre-entrenado durante esta fase: se pueden modificar las últimas capas, añadir capas a la red pre-entrenada, y otras variantes. En esta notebook vamos a trabajar con una aproximación sencilla, pero existen múltiples librerías en Hugging Face que implementan funcionalidades para llevar adelante difrentes tipos de *fine-tuning*, como por ejemplo la popular [LoRA](https://www.databricks.com/blog/efficient-fine-tuning-lora-guide-llms).\n", 414 | "\n", 415 | "" 421 | ], 422 | "metadata": { 423 | "id": "ryVETkJgWtT3" 424 | }, 425 | "id": "ryVETkJgWtT3" 426 | }, 427 | { 428 | "cell_type": "markdown", 429 | "source": [ 430 | "## *Domain Adaptation*\n", 431 | "\n", 432 | "Mientras que el *fine-tuning* se centra en ajustar un modelo de lenguaje *pre-entrenado* para realizar tareas específicas, la `adaptación de dominio` se enfoca en hacer que el modelo sea más efectivo en un dominio de datos particular.\n", 433 | "\n", 434 | "En caso de que tus datos de entrenamiento pertenezcan a un determinado tema específico (e.g.: leyes, medicina, informática, etc.) o un estilo específico (e.g.: académico, infantil, publicitario, etc.), y difieran substancialmente del corpus estándar en el cual fue entrenado inicialmente el LLM, podemos pensar diferentes opciones para incorparar este nuevo conocimiento:\n", 435 | "\n", 436 | "\n", 437 | "1. **Entrenamiento desde cero:** Este enfoque implica entrenar desde cero (*from scratch*) un nuevo modelo de lenguaje con textos del dominio de interés. Sin embargo, no es recomendable para el público en general, dada la gran cantidad de recursos computacionales, horas de procesamiento y textos de entrenamiento necesarios para lograr un rendimiento comparable a los modelos estado del arte (modelos *state-of-the-art, SOTA*).\n", 438 | "2. **Uso de modelos disponibles:** Se aprovechan modelos disponibles públicamente, específicos para el dominio de interés (e.g: [LegalBERT](https://arxiv.org/abs/2010.02559), [FinBERT](https://arxiv.org/abs/1908.10063) y [BioBERT](https://arxiv.org/abs/1901.08746); todos disponibles en Hugging Face 🤗 de manera gratuita.)\n", 439 | "3. **Adaptación de modelos pre-entrenados**: Esta aproximación, tambien conocida en la literatura como *'further pre-training'*, *'inter-training'*, *'continued pre-training'* o *'domain-adaptation'*, implica tomar un modelo de lenguaje pre-entrenado y, aprovechando todo el conocimiento y las representaciones ya aprendidas, **continuar su entrenamiento sobre el conjunto de datos especializados o personalizados**. Esta técnica permite alcanzar muy buenos resultados, utilizando menos recursos computacionales, horas y datos de entrenamiento.\n", 440 | "\n", 441 | "
\n", 442 | "\n", 443 | "
\n", 444 | " fuente: https://medium.com/@shankar.arunp/training-bert-from-scratch-on-your-custom-domain-data-a-step-by-step-guide-with-amazon-25fcbee4316a\n", 445 | "" 446 | ], 447 | "metadata": { 448 | "id": "NKBq_dr38Kld" 449 | }, 450 | "id": "NKBq_dr38Kld" 451 | }, 452 | { 453 | "cell_type": "markdown", 454 | "metadata": { 455 | "id": "zWA7IwMyuQcG" 456 | }, 457 | "source": [ 458 | "# 4 - Vamos a personalizar un modelo!" 459 | ], 460 | "id": "zWA7IwMyuQcG" 461 | }, 462 | { 463 | "cell_type": "markdown", 464 | "metadata": { 465 | "id": "zv2KNF96xlXQ" 466 | }, 467 | "source": [ 468 | "## 4.1 - ¿Cómo personalizar un modelo BERT?\n" 469 | ], 470 | "id": "zv2KNF96xlXQ" 471 | }, 472 | { 473 | "cell_type": "markdown", 474 | "metadata": { 475 | "id": "qHSuvnM21DmM" 476 | }, 477 | "source": [ 478 | "Tanto para el entrenamiento inicial (*pre-training*) como para la adaptación de dominio mediante un entrenamiento intermedio (*inter-training*), el modelo debe ser re-entrenado utilizando dos tareas auto-supervisadas específicas: **Masked Language Modeling (MLM)**, o una combinación entre **(MLM)** y **Next Sentence Prediction (NSP)**.\n", 479 | "\n", 480 | "### Masked Language Modeling (MLM)\n", 481 | "> Consiste en enmascarar (ocultar) palabras aleatorias en cada oración o frase de entrada, y entrenar el modelo para que aprenda a predecirlas basándose en el contexto circundante (palabras vecinas). Durante el entrenamiento, alrededor del **15%** de las palabras se seleccionan al azar y se enmascaran, reemplazándolas con el token especial **[MASK]** (ver la sección Enmascarado Aleatorio). De esta forma, el modelo infiere patrones de relaciones entre palabras.\n", 482 | "
\n", 483 | "\n", 484 | "
\n", 485 | "\n", 486 | "### Next Sentence Prediction (NSP)\n", 487 | "> Aunque no es obligatoria, `NSP` es otro componente importante en el entrenamiento de BERT. A partir de un texto considerado como una secuencia de oraciones, se generan ejemplos de entrenamiento consistentes en pares de oraciones aleatorios. El modelo tiene que aprender a identificar si una oración sigue a otra en el texto original. De esta forma, el modelo infiere patrones de relaciones entre oraciones.\n", 488 | "\n", 489 | "
\n", 490 | "\n", 491 | "
\n", 492 | "\n", 493 | "En esta notebook **realizaremos el ajuste de dominio mediante la tarea de MLM** utilizando la clase [**BertForMaskedLM**](https://huggingface.co/docs/transformers/v4.32.1/en/model_doc/bert#transformers.BertForMaskedLM) (modelo BERT con un bloque superior extra que posibilita el `modelado del lenguaje enmascarado`), ofrecida por la biblioteca [**transformer**](https://github.com/huggingface/transformers) de Hugging Face 🤗.\n", 494 | "\n", 495 | "* Se utilizarán diferentes datasets especializados (tanto en español como en inglés).\n", 496 | "* Utilizaremos como modelo pre-entrenado [bert-base-uncased](https://huggingface.co/bert-base-uncased) para realizar la adaptación en los datasets en inglés, y [dccuchile/bert-base-spanish-wwm-uncased](https://huggingface.co/dccuchile/bert-base-spanish-wwm-uncased) para los correspondientes en español.\n" 497 | ], 498 | "id": "qHSuvnM21DmM" 499 | }, 500 | { 501 | "cell_type": "markdown", 502 | "metadata": { 503 | "id": "qHLX6wTQml1n" 504 | }, 505 | "source": [ 506 | "### Carga de datasets" 507 | ], 508 | "id": "qHLX6wTQml1n" 509 | }, 510 | { 511 | "cell_type": "markdown", 512 | "metadata": { 513 | "id": "rfgry7ccvHUi" 514 | }, 515 | "source": [ 516 | "* Utilizaremos la librería `datasets` de Hugging Face para cargar cada uno de los corpus seleccionados.\n", 517 | "* Para la personalización de BERT, tenemos un total de 4 conjuntos de datos, 3 de ellos en español y 1 en Inglés:\n", 518 | " * Peppa Pig (es):\n", 519 | " * ≈ 3k muestras.\n", 520 | " * Extraído de subtítulos de 77 episodios.\n", 521 | " * Martin Fierro (es):\n", 522 | " * ≈ 2k muestras/versos.\n", 523 | " * Extraído del libro completo de José Hernández\n", 524 | " * Preguntas de no videntes (en):\n", 525 | " * ≈ 33k muestras/preguntas.\n", 526 | " * Generado a partir de preguntas visuales realizadas sobre imágenes tomadas por personas con discapacidades visuales durante la ejecución de sus tareas cotidianas. *(click [aqui](https://vizwiz.org/tasks-and-datasets/vqa/) para mas información sobre este dataset)*\n", 527 | " * Reseñas de Vinos (es):\n", 528 | " * ≈ 130k muestras.\n", 529 | " * Extraído de descripciones de vinos de todo el mundo.\n", 530 | "* A continuación, seleccionen de la lista desplegable el dataset que mas nos interese.\n", 531 | "* En `max_samples`, elijan un límite máximo de datos para acotar el cómputo necesario.\n", 532 | "* Automáticamente el siguiente código dividirá el dataset elegido en dos partes:\n", 533 | " * El 80% como conjunto de entrenamiento.\n", 534 | " * El 20% como conjunto de test.\n" 535 | ], 536 | "id": "rfgry7ccvHUi" 537 | }, 538 | { 539 | "cell_type": "code", 540 | "execution_count": null, 541 | "metadata": { 542 | "id": "pSX-6B_qguzS" 543 | }, 544 | "outputs": [], 545 | "source": [ 546 | "# @markdown ❗\n", 547 | "# @title { run: \"auto\" }\n", 548 | "import os\n", 549 | "import torch\n", 550 | "from datasets import load_dataset, Dataset\n", 551 | "\n", 552 | "# Fijación de semilla para reproducibilidad de resultados\n", 553 | "torch.manual_seed(42)\n", 554 | "\n", 555 | "# Recolección de parámetros de formulario\n", 556 | "DATASET_NAME = \"Peppa Pig (es)\" # @param [\"Resenas de Vinos (es)\", \"Preguntas de no videntes (en)\", \"Martin Fierro (es)\", \"Peppa Pig (es)\"]\n", 557 | "max_samples = 30000 # @param {type:\"number\"}\n", 558 | "name_to_file = {\n", 559 | " 'Preguntas de no videntes (en)' : \"vizwiz.csv\",\n", 560 | " 'Resenas de Vinos (es)' : \"wines_es.csv\",\n", 561 | " 'Martin Fierro (es)' : \"martin_fierro.csv\",\n", 562 | " 'Peppa Pig (es)' : \"peppa_pig.csv\",\n", 563 | "}\n", 564 | "\n", 565 | "# Carga de conjunto de datos\n", 566 | "bert_ds = load_dataset(\n", 567 | " path=DATASETS_PATH,\n", 568 | " data_files={'all_data': name_to_file[DATASET_NAME]},\n", 569 | ")\n", 570 | "\n", 571 | "# División de conjunto de datos en subconjuntos de entrenamiento y testeto\n", 572 | "total_size = min(max_samples, len(bert_ds['all_data']))\n", 573 | "val_size = int(total_size *.2)\n", 574 | "train_size = total_size - val_size\n", 575 | "\n", 576 | "bert_ds = bert_ds[\"all_data\"].train_test_split(\n", 577 | " train_size=train_size,\n", 578 | " test_size=val_size,\n", 579 | " seed=42\n", 580 | ")\n", 581 | "\n", 582 | "print(f\"* Información de dataset '{DATASET_NAME}':\\n---\")\n", 583 | "bert_ds" 584 | ], 585 | "id": "pSX-6B_qguzS" 586 | }, 587 | { 588 | "cell_type": "code", 589 | "execution_count": null, 590 | "metadata": { 591 | "id": "WlGtTeKuqXhY" 592 | }, 593 | "outputs": [], 594 | "source": [ 595 | "# @markdown 🔎\n", 596 | "# Vizualización de primeros 15 ejemplos del dataset\n", 597 | "for sample in bert_ds['train']['samples'][:15]:\n", 598 | " print(f\">> {sample}\")" 599 | ], 600 | "id": "WlGtTeKuqXhY" 601 | }, 602 | { 603 | "cell_type": "markdown", 604 | "metadata": { 605 | "id": "A6_bKfAfxlX4" 606 | }, 607 | "source": [ 608 | "### Tokenización de datos" 609 | ], 610 | "id": "A6_bKfAfxlX4" 611 | }, 612 | { 613 | "cell_type": "markdown", 614 | "metadata": { 615 | "id": "kzKg_zDnw-eN" 616 | }, 617 | "source": [ 618 | "\n", 619 | "- La tokenización es un paso de pre-procesamiento esencial cuando se utiliza BERT u otro LLM.\n", 620 | "- BERT procesa el texto en forma de tokens, que son elementos individuales del texto de entrada, como palabras, signos de puntuación o tokens especiales como `[CLS]`, `[SEP]`, `[PAD]`, `[UNK]` y `[MASK]`.\n", 621 | "- A continuación iniciaremos y analizaremos tal proceso.\n", 622 | "\n", 623 | "Recuerde utilizar el modelo `bert-base-uncased` como modelo base para los datasets en idioma inglés, y `dccuchile/bert-base-spanish-wwm-uncased` para los datasets en español." 624 | ], 625 | "id": "kzKg_zDnw-eN" 626 | }, 627 | { 628 | "cell_type": "code", 629 | "execution_count": null, 630 | "metadata": { 631 | "id": "sljDH7pDxlX4", 632 | "scrolled": true 633 | }, 634 | "outputs": [], 635 | "source": [ 636 | "# @markdown ❗\n", 637 | "# Iniciación de tokenizador\n", 638 | "from transformers import BertTokenizer\n", 639 | "\n", 640 | "MODEL_CHECKPOINT = \"dccuchile/bert-base-spanish-wwm-uncased\" # @param [\"bert-base-uncased\",\"dccuchile/bert-base-spanish-wwm-uncased\"]\n", 641 | "tokenizer = BertTokenizer.from_pretrained(MODEL_CHECKPOINT, TOKENIZERS_PARALLELISM=False)" 642 | ], 643 | "id": "sljDH7pDxlX4" 644 | }, 645 | { 646 | "cell_type": "code", 647 | "execution_count": null, 648 | "metadata": { 649 | "id": "WG5eUd-23Nna" 650 | }, 651 | "outputs": [], 652 | "source": [ 653 | "# @markdown 🔎\n", 654 | "# Tokenización de ejemplo de prueba\n", 655 | "samples = bert_ds['train']['samples'][:5]\n", 656 | "\n", 657 | "for ith, sample in enumerate(samples):\n", 658 | " token_ids = tokenizer(sample)['input_ids']\n", 659 | " token_str = [tokenizer.decode([tk_id]) for tk_id in token_ids]\n", 660 | " print(f\"{sample}\")\n", 661 | " print(f\"{token_str}\\n\")" 662 | ], 663 | "id": "WG5eUd-23Nna" 664 | }, 665 | { 666 | "cell_type": "code", 667 | "execution_count": null, 668 | "metadata": { 669 | "id": "YJKX4o_wyR0P" 670 | }, 671 | "outputs": [], 672 | "source": [ 673 | "# @markdown 🔎\n", 674 | "# Visualización de 'tokes especiales' utilizados por tokenizador\n", 675 | "for name, tk in tokenizer.special_tokens_map.items():\n", 676 | " print(f\"{name}. Token: {tk}; Token_id: {tokenizer.vocab[tk]}\")" 677 | ], 678 | "id": "YJKX4o_wyR0P" 679 | }, 680 | { 681 | "cell_type": "markdown", 682 | "metadata": { 683 | "id": "1Q1jy5PUJjUN" 684 | }, 685 | "source": [ 686 | "* Dado que entrenaremos un modelo de BERT con un conjunto de datos que tienen una longitud variable, es fundamental aplicar el proceso de tokenización y el relleno (padding) adecuados a nuestros datos. Esto permite que todas las secuencias tengan la misma longitud fija, garantizando un procesamiento uniforme y eficiente de los datos durante el entrenamiento y la inferencia.\n", 687 | "* A continuación realizaremos un histograma de la cantidad de tokens de cada ejemplo, y utilizaremos esa información para realizar posteriormente la tokenización del dataset completo." 688 | ], 689 | "id": "1Q1jy5PUJjUN" 690 | }, 691 | { 692 | "cell_type": "code", 693 | "execution_count": null, 694 | "metadata": { 695 | "id": "jo2jc6IM1y9x" 696 | }, 697 | "outputs": [], 698 | "source": [ 699 | "# @markdown ❗\n", 700 | "# Generación de histograma de número de tokens por ejemplos\n", 701 | "import matplotlib.pyplot as plt\n", 702 | "import numpy as np\n", 703 | "\n", 704 | "# Cálculo de número de tokens por ejemplos\n", 705 | "def count_tokens_fn(batch):\n", 706 | " tokenized_batch = tokenizer(batch['samples'])\n", 707 | " tokenized_batch['count'] = [len(tks) for tks in tokenized_batch['input_ids']]\n", 708 | " return tokenized_batch\n", 709 | "\n", 710 | "result = bert_ds.map(\n", 711 | " function=count_tokens_fn,\n", 712 | " batched=True\n", 713 | ")\n", 714 | "\n", 715 | "num_of_tokens_list = result['train']['count'] + result['test']['count']\n", 716 | "\n", 717 | "# Generación de histograma\n", 718 | "plt.hist(num_of_tokens_list, bins=35, edgecolor='k')\n", 719 | "plt.xlabel('Número de Tokens')\n", 720 | "plt.ylabel('Frecuencia')\n", 721 | "plt.title('Número de Tokens por Ejemplo')\n", 722 | "plt.show()\n", 723 | "\n", 724 | "# Cálculo de percentiles (e.g., 25th, 50th, and 75th percentiles)\n", 725 | "percentiles = np.percentile(num_of_tokens_list, [25, 50, 75])\n", 726 | "\n", 727 | "print(f\"Total de ejemplos: {len(num_of_tokens_list)}\")\n", 728 | "print(f\"Percentil 25: {percentiles[0]}\")\n", 729 | "print(f\"Percentil 50 (Mediana): {percentiles[1]}\")\n", 730 | "print(f\"Percentile 75: {percentiles[2]}\")\n", 731 | "print(f\"Max: {np.max(num_of_tokens_list)}\")" 732 | ], 733 | "id": "jo2jc6IM1y9x" 734 | }, 735 | { 736 | "cell_type": "markdown", 737 | "metadata": { 738 | "id": "F0CPWdsYIFZi" 739 | }, 740 | "source": [ 741 | "- A continuación, la función auxiliar `tokenize_data_fn` servirá para tokenizar y codificar el conjunto completo de datos de manera eficiente mediante el [método `map`](https://huggingface.co/docs/datasets/about_map_batch).\n", 742 | "- Lo que devolverá será un nuevo dataset cuyos tokens estarán ''convertidos'' en:\n", 743 | " - índices del vocabulario (*input_ids*),\n", 744 | " - máscaras de atención [(*attention_mask*)](https://huggingface.co/docs/transformers/glossary#attention-mask),\n", 745 | " - tipos de tokens [(*token_type_ids*)](https://huggingface.co/docs/transformers/glossary#token-type-ids),\n", 746 | " - y etiquetas (*labels*) que serán utilizadas como `Ground Truth` en la etapa de entrenamiento.\n", 747 | "- `MAX_TOKEN_LENGTH`: Indica el máximo número de tokens que el modelo utilizará para codificar cada ejemplo/muestra. Debemos aumentarlo cuando los ejemplos de nuestro conjunto de datos son más largos, pero cuanto más largos son, más espacio ocupan en la memoria. Una estrategia común para determinar el tamaño máximo de tokens es realizar un histograma y quedarnos con el valor del percentil 75% del largo de los ejemplos. También podemos utilizar el número de tokens de la secuencia más larga si disponemos de suficiente capacidad de memoria." 748 | ], 749 | "id": "F0CPWdsYIFZi" 750 | }, 751 | { 752 | "cell_type": "code", 753 | "execution_count": null, 754 | "metadata": { 755 | "id": "JDyitCyOySe2" 756 | }, 757 | "outputs": [], 758 | "source": [ 759 | "# @markdown ❗\n", 760 | "# Tokenización de conjunto de datos completo\n", 761 | "\n", 762 | "# Número máximo de tokens a utilizar\n", 763 | "MAX_TOKEN_LENGTH = 16 # @param {type:\"slider\", min:8, max:128, step:8}\n", 764 | "\n", 765 | "def tokenize_data_fn(batch):\n", 766 | " tokenized_sample = tokenizer(\n", 767 | " batch['samples'],\n", 768 | " max_length=MAX_TOKEN_LENGTH,\n", 769 | " truncation=True,\n", 770 | " padding='max_length',\n", 771 | " return_tensors='pt',\n", 772 | " )\n", 773 | "\n", 774 | " tokenized_sample[\"labels\"] = tokenized_sample['input_ids'].clone()\n", 775 | " return tokenized_sample\n", 776 | "\n", 777 | "tokenized_bert_ds = bert_ds.map(\n", 778 | " function=tokenize_data_fn,\n", 779 | " batched=True,\n", 780 | " remove_columns=[\"samples\"]\n", 781 | ")\n", 782 | "\n", 783 | "print(tokenized_bert_ds)" 784 | ], 785 | "id": "JDyitCyOySe2" 786 | }, 787 | { 788 | "cell_type": "code", 789 | "execution_count": null, 790 | "metadata": { 791 | "id": "duPj1x54EQB5" 792 | }, 793 | "outputs": [], 794 | "source": [ 795 | "# @markdown 🔎\n", 796 | "# Visualización de proceso de tokenización para el primer ejemplo del conjunto de datos\n", 797 | "sample = tokenized_bert_ds[\"train\"][0]\n", 798 | "\n", 799 | "print(f\"- input_ids: {sample['input_ids']}\")\n", 800 | "print(f\"- attention_mask: {sample['attention_mask']}\")\n", 801 | "print(f\"- token_type_ids: {sample['token_type_ids']}\")\n", 802 | "print(f\"- labels: {sample['labels']}\")" 803 | ], 804 | "id": "duPj1x54EQB5" 805 | }, 806 | { 807 | "cell_type": "markdown", 808 | "metadata": { 809 | "id": "jdRVPRVdHG0c" 810 | }, 811 | "source": [ 812 | "### Enmascarado Aleatorio" 813 | ], 814 | "id": "jdRVPRVdHG0c" 815 | }, 816 | { 817 | "cell_type": "markdown", 818 | "metadata": { 819 | "id": "h_ShVU5yQIth" 820 | }, 821 | "source": [ 822 | "> Este proceso es el encargado de ocultar aleatoriamente el 15\\% de los tokens y formatear los datos de entrenamiento de manera adecuada, asegurando que las secuencias de entrada tengan la longitud correcta y que las máscaras de atención se apliquen correctamente.\n", 823 | "\n", 824 | "* Para implementar este proceso de manera sencilla, utilizaremos el método [DataCollatorForLanguageModeling](https://huggingface.co/docs/transformers/v4.32.1/en/main_classes/data_collator#transformers.DataCollatorForLanguageModeling) proporcionado por la biblioteca de Hugging Face.\n", 825 | "\n", 826 | "* Como se podrá observar en el siguente ejemplo, es común utilizar un valor especial como **-100** en la salida de las etiquetas (*labels*) para indicar la posición de los tokens que se **IGNORAN** en el cálculo de la función de pérdida llevada a cabo durante el entrenamiento." 827 | ], 828 | "id": "h_ShVU5yQIth" 829 | }, 830 | { 831 | "cell_type": "code", 832 | "execution_count": null, 833 | "metadata": { 834 | "id": "dWHvQlnUHBWb" 835 | }, 836 | "outputs": [], 837 | "source": [ 838 | "# @markdown ❗\n", 839 | "import torch, random\n", 840 | "from transformers import DataCollatorForLanguageModeling\n", 841 | "\n", 842 | "data_collate_fn = DataCollatorForLanguageModeling(\n", 843 | " tokenizer=tokenizer,\n", 844 | " mlm_probability=0.15\n", 845 | ")" 846 | ], 847 | "id": "dWHvQlnUHBWb" 848 | }, 849 | { 850 | "cell_type": "code", 851 | "execution_count": null, 852 | "metadata": { 853 | "id": "G9xeuMP5H1aq" 854 | }, 855 | "outputs": [], 856 | "source": [ 857 | "# @markdown 🔎\n", 858 | "# Visualizacion de proceso de 'enmascarado aleatorio' de tokens\n", 859 | "seed = random.randint(0,100)\n", 860 | "samples = [tokenized_bert_ds['train'][i] for i in range(3)]\n", 861 | "\n", 862 | "print(\"DataCollator Outputs\")\n", 863 | "torch.manual_seed(seed)\n", 864 | "print(\"--- Tokens:\")\n", 865 | "for sample in data_collate_fn(samples)['input_ids']:\n", 866 | " print(f\">> {[tokenizer.decode([tk]) for tk in sample]}'\")\n", 867 | "\n", 868 | "torch.manual_seed(seed)\n", 869 | "print(\"\\n--- 'input_ids':\")\n", 870 | "for sample in data_collate_fn(samples)['input_ids']:\n", 871 | " print(f\">> {sample.tolist()}'\")\n", 872 | "\n", 873 | "torch.manual_seed(seed)\n", 874 | "print(\"\\n--- 'labels':\")\n", 875 | "for sample in data_collate_fn(samples)['labels']:\n", 876 | " print(f\">> {sample.tolist()}\")" 877 | ], 878 | "id": "G9xeuMP5H1aq" 879 | }, 880 | { 881 | "cell_type": "markdown", 882 | "metadata": { 883 | "id": "XiEflsvRxlX1" 884 | }, 885 | "source": [ 886 | "### Probando el Modelo Base" 887 | ], 888 | "id": "XiEflsvRxlX1" 889 | }, 890 | { 891 | "cell_type": "markdown", 892 | "metadata": { 893 | "id": "tSwnO4nXvWU7" 894 | }, 895 | "source": [ 896 | "- Antes de **personalizar** (adaptar) el modelo a nuestro conjunto de datos seleccionado, veremos cómo se desenvuelve en la tarea de *fill-mask*.\n", 897 | "\n", 898 | "- Para ello, escriba una frase muy característica del dominio al que se quiere adaptar, y enmascare alguna de sus palabras utilizando el token `[MASK]`.\n" 899 | ], 900 | "id": "tSwnO4nXvWU7" 901 | }, 902 | { 903 | "cell_type": "code", 904 | "execution_count": null, 905 | "metadata": { 906 | "id": "NL3CDtZQxlX2" 907 | }, 908 | "outputs": [], 909 | "source": [ 910 | "# @markdown 🔎\n", 911 | "# Ejemplo para español, pensando en adaptar el modelo a Peppa Pig\n", 912 | "# Usamos pipeline como función auxiliar de alto nivel\n", 913 | "from transformers import pipeline\n", 914 | "\n", 915 | "fill_mask = pipeline(\n", 916 | " task=\"fill-mask\",\n", 917 | " model=\"dccuchile/bert-base-spanish-wwm-uncased\",\n", 918 | " top_k=5\n", 919 | ")\n", 920 | "\n", 921 | "ejemplo = 'A Peppa le encanta saltar en los [MASK] de barro' # @param {type:\"string\"}\n", 922 | "fill_mask(ejemplo)" 923 | ], 924 | "id": "NL3CDtZQxlX2" 925 | }, 926 | { 927 | "cell_type": "code", 928 | "source": [ 929 | "# @markdown 🔎\n", 930 | "# Ejemplo para inglés, pensando en adaptar el modelo a VizWiz\n", 931 | "# Usamos pipeline como función auxiliar de alto nivel\n", 932 | "from transformers import pipeline\n", 933 | "\n", 934 | "fill_mask = pipeline(\n", 935 | " task=\"fill-mask\",\n", 936 | " model=\"bert-base-uncased\",\n", 937 | " top_k=5\n", 938 | ")\n", 939 | "\n", 940 | "ejemplo = \"Can you [MASK] me the model on the back of the iPhone?\" # @param {type:\"string\"}\n", 941 | "fill_mask(ejemplo)" 942 | ], 943 | "metadata": { 944 | "id": "-RIWajZ9AESD" 945 | }, 946 | "id": "-RIWajZ9AESD", 947 | "execution_count": null, 948 | "outputs": [] 949 | }, 950 | { 951 | "cell_type": "markdown", 952 | "metadata": { 953 | "id": "dS8OpI86xlX6" 954 | }, 955 | "source": [ 956 | "### Entrenamiento para adaptación" 957 | ], 958 | "id": "dS8OpI86xlX6" 959 | }, 960 | { 961 | "cell_type": "markdown", 962 | "source": [ 963 | "- Una vez definido el conjunto de datos y completado el proceso de tokenización, pasemos a la parte más intensa computacionalmente, el entrenamiento.\n", 964 | "- A continuación, definimos las configuraciones del entrenamiento mediante [`TrainingArguments`](https://huggingface.co/docs/transformers/v4.28.1/en/main_classes/trainer#transformers.TrainingArguments).\n", 965 | "- ... y definimos el entrenamiento del modelo mediante la clase [`Trainer`](https://huggingface.co/docs/transformers/v4.28.1/en/main_classes/trainer#transformers.Trainer).\n", 966 | " \n", 967 | "> Detalles de parámetros a configurar:\n", 968 | "1. ***epochs***: Número de épocas de entrenamiento. En cada epoch, el algoritmo de entrenamiento recibe cada uno de los ejemplos del dataset de entrenamiento.\n", 969 | "2. ***batch_size***: Cantidad de datos procesados por iteración antes de actualizar el modelo (aumentar este número mejora las estimaciones de cada iteración ya que será una muestra más representativa del dataset en general, pero requerirá más memoria y será necesario monitorizar y re-ajustar el `learning_rate`)\n", 970 | "3. ***learning_rate***: Tamaño del ''ajuste'' realizado en el modelo en cada iteración, mientras se avanza hacia un mínimo de la función de pérdida.\n", 971 | "\n", 972 | "**Nota**: El valor de estos parámetros, en conjunción al poder de cómputo disponible, determinará el tiempo y la cantidad de cálculo requerido para poder realizar el entrenamiento del modelo. Puede ir desde unos segundos hasta varios minutos.\n" 973 | ], 974 | "metadata": { 975 | "id": "8rwbTbV6YqfY" 976 | }, 977 | "id": "8rwbTbV6YqfY" 978 | }, 979 | { 980 | "cell_type": "code", 981 | "execution_count": null, 982 | "metadata": { 983 | "id": "c3NP1ORPxlX7" 984 | }, 985 | "outputs": [], 986 | "source": [ 987 | "# @markdown ❗\n", 988 | "from transformers import TrainingArguments, Trainer, BertForMaskedLM\n", 989 | "\n", 990 | "# Eliminación de checkpoints anteriores\n", 991 | "!rm -r \"$CUSTOM_MODEL_CHECKPOINT\"\n", 992 | "\n", 993 | "# Configuración de hiperparámetros\n", 994 | "MODEL_CHECKPOINT = \"dccuchile/bert-base-spanish-wwm-uncased\" # @param [\"dccuchile/bert-base-spanish-wwm-uncased\", \"bert-base-uncased\"]\n", 995 | "BATCH_SIZE = 64 # @param {type:\"slider\", min:8, max:64, step:8}\n", 996 | "LEARNING_RATE = 2e-5 # @param {type:\"number\"}\n", 997 | "EPOCHS = 5 # @param {type:\"slider\", min:3, max:15, step:1}\n", 998 | "LOGGING_STEPS = len(tokenized_bert_ds[\"train\"]) // BATCH_SIZE\n", 999 | "CUSTOM_MODEL_CHECKPOINT = \"bert_adaptation_\" + DATASET_NAME.replace(\" \", \"_\")[:-5].lower()\n", 1000 | "\n", 1001 | "# Configuración de entrenamiento\n", 1002 | "training_args = TrainingArguments(\n", 1003 | " output_dir=CUSTOM_MODEL_CHECKPOINT,\n", 1004 | " overwrite_output_dir=True,\n", 1005 | " evaluation_strategy=\"epoch\",\n", 1006 | " num_train_epochs=EPOCHS,\n", 1007 | " optim='adamw_torch',\n", 1008 | " learning_rate=LEARNING_RATE,\n", 1009 | " weight_decay=0.01,\n", 1010 | " per_device_train_batch_size=BATCH_SIZE,\n", 1011 | " per_device_eval_batch_size=BATCH_SIZE,\n", 1012 | " push_to_hub=False,\n", 1013 | " fp16=True,\n", 1014 | " logging_steps=LOGGING_STEPS,\n", 1015 | " report_to=\"none\",\n", 1016 | " save_strategy=\"no\"\n", 1017 | ")\n", 1018 | "\n", 1019 | "# Instanciación de modelo\n", 1020 | "model = BertForMaskedLM.from_pretrained(MODEL_CHECKPOINT)\n", 1021 | "\n", 1022 | "# Instanciación de clase Trainer\n", 1023 | "trainer = Trainer(\n", 1024 | " model=model,\n", 1025 | " args=training_args,\n", 1026 | " train_dataset=tokenized_bert_ds[\"train\"],\n", 1027 | " eval_dataset=tokenized_bert_ds[\"test\"],\n", 1028 | " data_collator=data_collate_fn,\n", 1029 | " tokenizer=tokenizer,\n", 1030 | ")\n", 1031 | "\n", 1032 | "trainer.args._n_gpu = 1" 1033 | ], 1034 | "id": "c3NP1ORPxlX7" 1035 | }, 1036 | { 1037 | "cell_type": "markdown", 1038 | "source": [ 1039 | "* Antes de comenzar el entrenamiento, calcularemos la [**Perplexity**](https://huggingface.co/docs/transformers/perplexity) del modelo de lenguaje.\n", 1040 | "\n", 1041 | "> La `Perplexity` es una métrica que nos permite evaluar cuánta incertidumbre tiene un modelo cuando tiene que predecir palabras en un conjunto de prueba determinado. La misma, ayuda a medir qué tan bien conoce el modelo el lenguaje, y cuán coherentes serán sus predicciones. En general, una *perplejidad* más baja indicará que el modelo genera textos que claramente pertenecen al lenguaje.\n", 1042 | "
\n", 1043 | "\n", 1044 | "
\n", 1045 | "fuente: https://thegradient.pub/understanding-evaluation-metrics-for-language-models/\n", 1046 | "\n", 1047 | "Si queremos evaluar qué tanto se adapta un modelo a un dominio determinado, podemos estimar su perplejidad para las tareas de completar palabras (MLM) o generación de texto en oraciones del dominio de interés, ya sea sobre conjunto de oraciones que nos interesen particularmente (un *benchmark* o *testbed*) o sobre un corpus representativo del dominio en general.\n", 1048 | "\n", 1049 | "> Los animamos a crear un mini-testbed, una listita de oraciones que les permita ver rápidamente qué pasa con diferentes tipos de adaptaciones. Les va a servir mucho para monitorear de forma sistemática los cambios en su sistema! Luego pueden compartir sus testbeds con la comunidad, un buen testbed vale oro :-)." 1050 | ], 1051 | "metadata": { 1052 | "id": "CcqCvC7kjC0C" 1053 | }, 1054 | "id": "CcqCvC7kjC0C" 1055 | }, 1056 | { 1057 | "cell_type": "code", 1058 | "execution_count": null, 1059 | "metadata": { 1060 | "id": "VIhYYrmgO6ac" 1061 | }, 1062 | "outputs": [], 1063 | "source": [ 1064 | "# @markdown 🔎\n", 1065 | "import math\n", 1066 | "\n", 1067 | "# Fijamos semilla para reproducibilidad de resultados\n", 1068 | "torch.manual_seed(42)\n", 1069 | "\n", 1070 | "# Estimación de perplexity previa a entrenamieto\n", 1071 | "eval_results = trainer.evaluate()\n", 1072 | "print(f\">>> Perplexity: {math.exp(eval_results['eval_loss']):.2f}\")" 1073 | ], 1074 | "id": "VIhYYrmgO6ac" 1075 | }, 1076 | { 1077 | "cell_type": "code", 1078 | "source": [ 1079 | "# @markdown ❗⏳\n", 1080 | "# Inicio de entrenamiento\n", 1081 | "trainer.train()\n", 1082 | "\n", 1083 | "# Guardado de entrenamiento\n", 1084 | "trainer.save_model(CUSTOM_MODEL_CHECKPOINT)" 1085 | ], 1086 | "metadata": { 1087 | "id": "ypbXFA8TaCeh" 1088 | }, 1089 | "id": "ypbXFA8TaCeh", 1090 | "execution_count": null, 1091 | "outputs": [] 1092 | }, 1093 | { 1094 | "cell_type": "markdown", 1095 | "source": [ 1096 | "\n", 1097 | "* Ahora, estimemos nuevamente la `perplexity` del modelo y comparemos con el valor obtenido previamente." 1098 | ], 1099 | "metadata": { 1100 | "id": "gjVvLE_6OUOE" 1101 | }, 1102 | "id": "gjVvLE_6OUOE" 1103 | }, 1104 | { 1105 | "cell_type": "code", 1106 | "source": [ 1107 | "# @markdown 🔎\n", 1108 | "# Fijamos semilla para reproducibilidad de resultados\n", 1109 | "torch.manual_seed(42)\n", 1110 | "\n", 1111 | "# Estimación de perplexity posterior a entrenamiento\n", 1112 | "eval_results = trainer.evaluate()\n", 1113 | "print(f\">>> Perplexity: {math.exp(eval_results['eval_loss']):.2f}\")" 1114 | ], 1115 | "metadata": { 1116 | "id": "uWAZ_qTzb_AA" 1117 | }, 1118 | "id": "uWAZ_qTzb_AA", 1119 | "execution_count": null, 1120 | "outputs": [] 1121 | }, 1122 | { 1123 | "cell_type": "markdown", 1124 | "metadata": { 1125 | "id": "aOUDT3zYxlX7" 1126 | }, 1127 | "source": [ 1128 | "\n", 1129 | "### Probando el Modelo Adaptado\n", 1130 | "\n", 1131 | "- Ahora que tenemos el modelo entrenado con el dataset específico, la pregunta es, ¿Cómo se comportará?\n", 1132 | "- Para ello volvemos a hacer la prueba anterior utilizando la tarea de *fill-mask*, quizás esta vez con resultados más ajustados al dominio. Acá es donde se luce un buen testbed!\n", 1133 | "- Para que los resultados sean mas fáciles de comparar, la función `compare_models()` será la encargada de procesar y retornar, para cada oraión de ejemplo ingresada, un ranking comparativo de las predicciones realizadas entre el nuevo modelo adaptado y el modelo base original." 1134 | ], 1135 | "id": "aOUDT3zYxlX7" 1136 | }, 1137 | { 1138 | "cell_type": "code", 1139 | "execution_count": null, 1140 | "metadata": { 1141 | "id": "VvR2XoSGxlX7" 1142 | }, 1143 | "outputs": [], 1144 | "source": [ 1145 | "# @markdown ❗\n", 1146 | "import os\n", 1147 | "import transformers\n", 1148 | "from typing import List\n", 1149 | "from tabulate import tabulate\n", 1150 | "from transformers import pipeline\n", 1151 | "\n", 1152 | "# Función auxiliar para comparación de predicciones de modelos\n", 1153 | "def compare_models(\n", 1154 | " custom_model: transformers.pipelines.fill_mask.FillMaskPipeline,\n", 1155 | " base_model: transformers.pipelines.fill_mask.FillMaskPipeline,\n", 1156 | " sentences: List[str],\n", 1157 | " top_k=5\n", 1158 | ") -> None:\n", 1159 | "\n", 1160 | " headers = ['Sent','Custom Bert', '(%)', 'Base Bert', '(%)']\n", 1161 | " rows = []\n", 1162 | " for sent in sentences:\n", 1163 | " rows.append([sent, '', '', '', ''])\n", 1164 | "\n", 1165 | " c_out = custom_model(sent)\n", 1166 | " o_out = base_model(sent)\n", 1167 | "\n", 1168 | " c_tokens = [(i['token_str'], str(round(i['score']*100,1))+\"%\") for i in c_out]\n", 1169 | " o_tokens = [(i['token_str'], str(round(i['score']*100,1))+\"%\") for i in o_out]\n", 1170 | "\n", 1171 | " for (p1,s1), (p2,s2) in zip(c_tokens, o_tokens):\n", 1172 | " rows.append(['', p1, s1, p2, s2])\n", 1173 | "\n", 1174 | " table = tabulate(rows, headers=headers, tablefmt=\"text\", numalign=\"center\")\n", 1175 | " print(table, \"\\n\")\n", 1176 | "\n", 1177 | "# Instanciación de modelo personalizado y modelo base\n", 1178 | "base_model = pipeline(task=\"fill-mask\", model=MODEL_CHECKPOINT)\n", 1179 | "custom_model = pipeline(task=\"fill-mask\", model=CUSTOM_MODEL_CHECKPOINT)" 1180 | ], 1181 | "id": "VvR2XoSGxlX7" 1182 | }, 1183 | { 1184 | "cell_type": "code", 1185 | "source": [ 1186 | "# @markdown ❗\n", 1187 | "\n", 1188 | "# Conjunto de ejemplos de prueba\n", 1189 | "vizwiz_test_examples = [\n", 1190 | " \"can you tell me the title of the book? [MASK].\",\n", 1191 | " \"please [MASK] this shirt\",\n", 1192 | " \"what [MASK] is this?\",\n", 1193 | " \"[MASK] can you tell me what is this?\",\n", 1194 | " \"how clear is this [MASK]?\",\n", 1195 | " \"is the floor [MASK]?\",\n", 1196 | " \"the microwave is [MASK]?.\"\n", 1197 | "]\n", 1198 | "\n", 1199 | "vinos_test_examples = [\n", 1200 | " \"Este [MASK] argentino de altura es una verdadera\",\n", 1201 | " \"Con un color profundo e [MASK]\",\n", 1202 | " \"Los sabores de [MASK] persisten\",\n", 1203 | " \"Hecho 100% de [MASK]\",\n", 1204 | " \"El sabor fue [MASK]\",\n", 1205 | " \"Con su [MASK] mezcla de minerales\",\n", 1206 | " \"Por primera vez en [MASK],\",\n", 1207 | " \"Brazamora de [MASK] bonito\"\n", 1208 | "]\n", 1209 | "\n", 1210 | "martin_fierro_test_examples = [\n", 1211 | " \"En los campos de la [MASK] extensa\",\n", 1212 | " \"donde el viento y el sol se [MASK]\",\n", 1213 | " \"cabalgo firme con mi [MASK]\",\n", 1214 | " \"bajo el cielo de [MASK] risueño\",\n", 1215 | "\n", 1216 | " \"Con mi [MASK] y mi lazo\",\n", 1217 | " \"enfrento a la [MASK] con valor\",\n", 1218 | " \"batiéndome siempre a mi [MASK]\",\n", 1219 | " \"en este ancho y rudo [MASK]\",\n", 1220 | "\n", 1221 | " \"Así cabalgo con alma [MASK]\",\n", 1222 | " \"como otros en su [MASK]\",\n", 1223 | " \"defendiendo mi [MASK] y mi gente\",\n", 1224 | " \"en esta tierra que [MASK] sin cesar\",\n", 1225 | "\n", 1226 | " \"Con [MASK] al cinto, firme y diestro\",\n", 1227 | " \"Enfrento [MASK], firme como el resto\",\n", 1228 | " \"Mate en mano, bajo el cielo [MASK]\",\n", 1229 | " \"Mi coraje y mi [MASK], jamás han claudicado.\"\n", 1230 | "]\n", 1231 | "\n", 1232 | "peppa_pig_test_examples = [\n", 1233 | " \"[MASK], puedes decir dinosarurio?\",\n", 1234 | " \"¡Hola, soy Peppa [MASK]!\",\n", 1235 | " \"Hoy es un día [MASK] para un picnic.\",\n", 1236 | " \"George tiene un [MASK] muy querido.\",\n", 1237 | " \"El sol brilla en el [MASK] del jardín.\",\n", 1238 | " \"Peppa y George juegan en el [MASK].\",\n", 1239 | " \"Mamá Pig prepara [MASK] deliciosos.\",\n", 1240 | " \"Vamos al [MASK] para montar en bicicleta.\",\n", 1241 | " \"El [MASK] está lleno de flores hermosas.\",\n", 1242 | " \"Peppa y sus amigos tienen [MASK] en el parque.\"\n", 1243 | "]\n", 1244 | "\n", 1245 | "# Moficar 'sentences' acorde al conjunto de datos utilizado para la personalización\n", 1246 | "compare_models(\n", 1247 | " custom_model=custom_model,\n", 1248 | " base_model=base_model,\n", 1249 | " sentences=peppa_pig_test_examples\n", 1250 | ")" 1251 | ], 1252 | "metadata": { 1253 | "id": "JTAxPD4qd-ZG" 1254 | }, 1255 | "id": "JTAxPD4qd-ZG", 1256 | "execution_count": null, 1257 | "outputs": [] 1258 | }, 1259 | { 1260 | "cell_type": "markdown", 1261 | "source": [ 1262 | "### Subiendo tu modelo a Hugging Face 🤗" 1263 | ], 1264 | "metadata": { 1265 | "id": "AlaINEj1o2LR" 1266 | }, 1267 | "id": "AlaINEj1o2LR" 1268 | }, 1269 | { 1270 | "cell_type": "markdown", 1271 | "source": [ 1272 | "Querés que tu familia, amigos y futuros empleadores puedan probar tu chatbot? En Huggingface 🤗 podés desplegar una demo muy fácilmente:\n", 1273 | "\n", 1274 | "> Recorda generar tu **token de acceso** siguendo las instrucciones de la [Sección 2](#Librerías-para-modelos-de-lenguaje). Será necesario para que puedas autentificarte en la plataforma y subir tu modelo." 1275 | ], 1276 | "metadata": { 1277 | "id": "3ad07BcWo7x3" 1278 | }, 1279 | "id": "3ad07BcWo7x3" 1280 | }, 1281 | { 1282 | "cell_type": "code", 1283 | "source": [ 1284 | "# @markdown ❗\n", 1285 | "# Logeo a plataforma mediante token de acceso\n", 1286 | "from huggingface_hub import notebook_login\n", 1287 | "notebook_login()" 1288 | ], 1289 | "metadata": { 1290 | "id": "D-X7gPJzo5vX" 1291 | }, 1292 | "id": "D-X7gPJzo5vX", 1293 | "execution_count": null, 1294 | "outputs": [] 1295 | }, 1296 | { 1297 | "cell_type": "code", 1298 | "source": [ 1299 | "# @markdown ❗\n", 1300 | "# Esto envía el modelo entrenado al repositorio de modelos de Hugging Face.\n", 1301 | "trainer.push_to_hub()" 1302 | ], 1303 | "metadata": { 1304 | "id": "RDnfp1vSo6-s" 1305 | }, 1306 | "id": "RDnfp1vSo6-s", 1307 | "execution_count": null, 1308 | "outputs": [] 1309 | }, 1310 | { 1311 | "cell_type": "markdown", 1312 | "metadata": { 1313 | "id": "NJ4bJC4VPwCi" 1314 | }, 1315 | "source": [ 1316 | "## 4.2 - ¿Cómo personalizar un modelo GPT?\n", 1317 | "\n", 1318 | "\n", 1319 | "- Se inicia por algún modelo pre-entrenado para la tarea específica que uno busca (e.g. clasificación, generación, etc).\n", 1320 | "- Se toma un corpus especializado (anotado, revisado, etc.) y se entrena utilizando dicho corpus.\n", 1321 | "- Intentaremos [entrenar que un modelo genere texto](https://github.com/huggingface/notebooks/blob/main/examples/language_modeling.ipynb) con el estilo de alguno de los conjuntos de datos disponibles para este taller.\n", 1322 | "- Utilizaremos el modelo `DeepESP/gpt2-spanish` como base para español y el modelo `gpt2` como base para inglés.\n", 1323 | "* A diferencia de la adaptación de dominio realizada en el modelo BERT, los modelos de generación de texto se entrenan utilizando una tarea auto-supervisada denominada [*Causal Language Modeling*](https://huggingface.co/docs/transformers/tasks/language_modeling).\n" 1324 | ], 1325 | "id": "NJ4bJC4VPwCi" 1326 | }, 1327 | { 1328 | "cell_type": "markdown", 1329 | "source": [ 1330 | "### Carga de Datasets" 1331 | ], 1332 | "metadata": { 1333 | "id": "YWO2pU8Drrkv" 1334 | }, 1335 | "id": "YWO2pU8Drrkv" 1336 | }, 1337 | { 1338 | "cell_type": "markdown", 1339 | "metadata": { 1340 | "id": "9LKlbQIhPwCx" 1341 | }, 1342 | "source": [ 1343 | "* Utilizaremos la librería `datasets` de HuggingFace para cargar cada uno de los corpus seleccionados.\n", 1344 | "* Para la personalización de GPT, tenemos un total de 6 conjuntos de datos, todos en español:\n", 1345 | " * Julio Cortázar (es):\n", 1346 | " * ≈ 14k oraciones/muestras.\n", 1347 | " * Extraído de una selección de libros y cuentos del autor argentino.\n", 1348 | " * Edgar Allan Poe (es):\n", 1349 | " * ≈ 48k oraciones/muestras.\n", 1350 | " * Extraído de una selección de libros y cuentos del autor estadounidense traducidos al español.\n", 1351 | " * José Saramago (es):\n", 1352 | " * ≈ 105k oraciones/muestras.\n", 1353 | " * Extraído de una selección de libros y cuentos del autor portugués traducidos al español.\n", 1354 | " * Peppa Pig (es):\n", 1355 | " * ≈ 3k oraciones/muestras.\n", 1356 | " * Extraído de subtítulos de 77 episodios.\n", 1357 | " * Martin Fierro (es):\n", 1358 | " * ≈ 2k estrofas/muestras.\n", 1359 | " * Extraído del libro completo de José Hernández\n", 1360 | " * Reseñas de Vinos (es):\n", 1361 | " * ≈ 130k oraciones/muestras.\n", 1362 | " * Extraído de descripciones de vinos de todo el mundo.\n", 1363 | "\n", 1364 | "* A continuación, seleccionen de la lista desplegable el dataset que mas nos interese.\n", 1365 | "* En `max_samples`, elijan un límite máximo de datos para acotar el cómputo necesario.\n", 1366 | "* Automáticamente el siguiente código dividirá el dataset elegido en dos partes:\n", 1367 | " * El 80% como conjunto de entrenamiento.\n", 1368 | " * El 20% como conjunto de test.\n" 1369 | ], 1370 | "id": "9LKlbQIhPwCx" 1371 | }, 1372 | { 1373 | "cell_type": "code", 1374 | "source": [ 1375 | "# @markdown ❗\n", 1376 | "# @title { run: \"auto\" }\n", 1377 | "import os\n", 1378 | "import torch\n", 1379 | "from datasets import load_dataset, Dataset\n", 1380 | "\n", 1381 | "# Fijamos semilla para reproducibilidad de resultados\n", 1382 | "torch.manual_seed(42)\n", 1383 | "\n", 1384 | "# Recolección de parámetros de formulario\n", 1385 | "dataset_name = \"Martin Fierro (es)\" # @param [\"Resenas de Vinos (es)\", \"Martin Fierro (es)\", \"Peppa Pig (es)\", \"Julio Cortazar (es)\", \"Edgar Allan Poe (es)\", \"Jose Saramago (es)\"]\n", 1386 | "max_samples = 30000 # @param {type:\"number\"}\n", 1387 | "name_to_file = {\n", 1388 | " 'Resenas de Vinos (es)' : \"wines_es.csv\",\n", 1389 | " 'Martin Fierro (es)' : \"martin_fierro_v2.csv\",\n", 1390 | " 'Peppa Pig (es)' : \"peppa_pig.csv\",\n", 1391 | " 'Julio Cortazar (es)' : \"cortazar.csv\",\n", 1392 | " 'Edgar Allan Poe (es)' : \"poe.csv\",\n", 1393 | " 'Jose Saramago (es)' : \"saramago.csv\",\n", 1394 | "}\n", 1395 | "\n", 1396 | "# Carga de conjunto de datos\n", 1397 | "gpt2_ds = load_dataset(\n", 1398 | " path=DATASETS_PATH,\n", 1399 | " data_files={'all_data': name_to_file[dataset_name]},\n", 1400 | ")\n", 1401 | "\n", 1402 | "# División de conjunto de datos en subconjuntos de entrenamiento y testeto\n", 1403 | "total_size = min(max_samples, len(gpt2_ds['all_data']))\n", 1404 | "val_size = int(total_size *.2)\n", 1405 | "train_size = total_size - val_size\n", 1406 | "\n", 1407 | "gpt2_ds = gpt2_ds[\"all_data\"].train_test_split(\n", 1408 | " train_size=train_size,\n", 1409 | " test_size=val_size,\n", 1410 | " seed=42\n", 1411 | ")\n", 1412 | "\n", 1413 | "print(f\"* Información del dataset '{dataset_name}':\\n---\")\n", 1414 | "gpt2_ds" 1415 | ], 1416 | "metadata": { 1417 | "id": "1P7fdicp9j3E" 1418 | }, 1419 | "execution_count": null, 1420 | "outputs": [], 1421 | "id": "1P7fdicp9j3E" 1422 | }, 1423 | { 1424 | "cell_type": "code", 1425 | "source": [ 1426 | "# @markdown 🔎\n", 1427 | "# Visualización de primeros 15 ejemplos del dataset\n", 1428 | "for sample in gpt2_ds['train']['samples'][:15]:\n", 1429 | " print(f\">> {sample}\")" 1430 | ], 1431 | "metadata": { 1432 | "id": "QiiUUp1o_e8N" 1433 | }, 1434 | "execution_count": null, 1435 | "outputs": [], 1436 | "id": "QiiUUp1o_e8N" 1437 | }, 1438 | { 1439 | "cell_type": "markdown", 1440 | "metadata": { 1441 | "id": "RDWpWGNuPwCs" 1442 | }, 1443 | "source": [ 1444 | "### Probando el Modelo Base\n", 1445 | "\n", 1446 | "- Antes de ajustar el modelo veamos cómo se desenvuelve en la tarea de generación de texto al proporcionarle como entrada la frase:\n", 1447 | "> `Ayer, al despertarme `\n", 1448 | "\n", 1449 | "Luego del entrenamiento, volveremos a comparar su estilo de generación." 1450 | ], 1451 | "id": "RDWpWGNuPwCs" 1452 | }, 1453 | { 1454 | "cell_type": "code", 1455 | "execution_count": null, 1456 | "metadata": { 1457 | "id": "7V3QxDyzPwCr" 1458 | }, 1459 | "outputs": [], 1460 | "source": [ 1461 | "# @markdown ❗\n", 1462 | "import torch\n", 1463 | "from transformers import AutoModelForCausalLM, AutoTokenizer\n", 1464 | "\n", 1465 | "BASE_MODEL = \"DeepESP/gpt2-spanish\" # @param [\"DeepESP/gpt2-spanish\", \"gpt2\"]\n", 1466 | "tokenizer = AutoTokenizer.from_pretrained(BASE_MODEL)\n", 1467 | "model = AutoModelForCausalLM.from_pretrained(BASE_MODEL)" 1468 | ], 1469 | "id": "7V3QxDyzPwCr" 1470 | }, 1471 | { 1472 | "cell_type": "code", 1473 | "execution_count": null, 1474 | "metadata": { 1475 | "id": "6PYTSVt0PwCv" 1476 | }, 1477 | "outputs": [], 1478 | "source": [ 1479 | "# @markdown 🔎\n", 1480 | "\n", 1481 | "# Fijamos semilla para reproducibilidad de resultados\n", 1482 | "torch.manual_seed(42)\n", 1483 | "\n", 1484 | "input_ids = tokenizer.encode(\"Ayer, al depertarme\", return_tensors='pt')\n", 1485 | "sampling_output = model.generate(input_ids, do_sample=True, max_length=50, top_k=50, top_p=0.95, pad_token_id=tokenizer.eos_token_id)\n", 1486 | "output = tokenizer.decode(sampling_output[0], skip_special_tokens=True)\n", 1487 | "\n", 1488 | "print(output)" 1489 | ], 1490 | "id": "6PYTSVt0PwCv" 1491 | }, 1492 | { 1493 | "cell_type": "markdown", 1494 | "metadata": { 1495 | "id": "RFCk1XZEPwC5" 1496 | }, 1497 | "source": [ 1498 | "### Tokenizando los datos" 1499 | ], 1500 | "id": "RFCk1XZEPwC5" 1501 | }, 1502 | { 1503 | "cell_type": "markdown", 1504 | "source": [ 1505 | "\n", 1506 | "- Al igual que en la primera parte de este taller, tokenizaremos el dataset.\n", 1507 | "- Realizaremos un histograma de la frecuencia de tokens por ejemplo, y utilizaremos esta información para posteriormente realizar la tokenización del dataset completo.\n" 1508 | ], 1509 | "metadata": { 1510 | "id": "EU_OrPFP0Oot" 1511 | }, 1512 | "id": "EU_OrPFP0Oot" 1513 | }, 1514 | { 1515 | "cell_type": "code", 1516 | "source": [ 1517 | "# @markdown ❗\n", 1518 | "# Generación de histograma del número de tokens por ejemplos\n", 1519 | "import matplotlib.pyplot as plt\n", 1520 | "import numpy as np\n", 1521 | "\n", 1522 | "# Cálculo de número de tokens por ejemplos\n", 1523 | "def count_tokens_fn(batch):\n", 1524 | " tokenized_batch = tokenizer(batch['samples'])\n", 1525 | " tokenized_batch['count'] = [len(tks) for tks in tokenized_batch['input_ids']]\n", 1526 | " return tokenized_batch\n", 1527 | "\n", 1528 | "result = gpt2_ds.map(\n", 1529 | " function=count_tokens_fn,\n", 1530 | " batched=True\n", 1531 | ")\n", 1532 | "\n", 1533 | "num_of_tokens_list = result['train']['count'] + result['test']['count']\n", 1534 | "\n", 1535 | "# Generación de histograma\n", 1536 | "plt.hist(num_of_tokens_list, bins=35, edgecolor='k')\n", 1537 | "plt.xlabel('Número de Tokens')\n", 1538 | "plt.ylabel('Frecuencia')\n", 1539 | "plt.title('Número de Tokens por Ejemplo')\n", 1540 | "plt.show()\n", 1541 | "\n", 1542 | "# Cálculo de percentiles (e.g., 25th, 50th, and 75th percentiles)\n", 1543 | "percentiles = np.percentile(num_of_tokens_list, [25, 50, 75])\n", 1544 | "\n", 1545 | "print(f\"Total de ejemplos: {len(num_of_tokens_list)}\")\n", 1546 | "print(f\"Percentil 25: {percentiles[0]}\")\n", 1547 | "print(f\"Percentil 50 (Mediana): {percentiles[1]}\")\n", 1548 | "print(f\"Percentile 75: {percentiles[2]}\")\n", 1549 | "print(f\"Max: {np.max(num_of_tokens_list)}\")" 1550 | ], 1551 | "metadata": { 1552 | "id": "gW1ZBper0F-4" 1553 | }, 1554 | "id": "gW1ZBper0F-4", 1555 | "execution_count": null, 1556 | "outputs": [] 1557 | }, 1558 | { 1559 | "cell_type": "markdown", 1560 | "source": [ 1561 | "- Al igual que antes, en `MAX_TOKEN_LENGTH` podrán elegir el largo máximo que el modelo utilizará para codificar cada ejemplo/muestra de entrada. Truncando aquellos que superen este límite, y realizando un padding para homogeneizar la longitud de las muestras." 1562 | ], 1563 | "metadata": { 1564 | "id": "eIi-I4dP0Hrb" 1565 | }, 1566 | "id": "eIi-I4dP0Hrb" 1567 | }, 1568 | { 1569 | "cell_type": "code", 1570 | "execution_count": null, 1571 | "metadata": { 1572 | "id": "M0FrWUgDPwC5", 1573 | "scrolled": true 1574 | }, 1575 | "outputs": [], 1576 | "source": [ 1577 | "# @markdown ❗\n", 1578 | "# Tokenicación de conjunto de datos completo\n", 1579 | "\n", 1580 | "# Número máximo de tokens a utilizar\n", 1581 | "MAX_TOKEN_LENGTH = 30 # @param {type:\"slider\", min:8, max:128, step:8}\n", 1582 | "\n", 1583 | "def tokenize_data_fn(batch):\n", 1584 | " tokenized_sample = tokenizer(\n", 1585 | " batch['samples'],\n", 1586 | " max_length=MAX_TOKEN_LENGTH,\n", 1587 | " truncation=True,\n", 1588 | " padding='max_length',\n", 1589 | " return_tensors='pt',\n", 1590 | " )\n", 1591 | "\n", 1592 | " tokenized_sample[\"labels\"] = tokenized_sample['input_ids'].clone()\n", 1593 | " return tokenized_sample\n", 1594 | "\n", 1595 | "tokenized_gpt2_ds = gpt2_ds.map(\n", 1596 | " function=tokenize_data_fn,\n", 1597 | " batched=True,\n", 1598 | " remove_columns=[\"samples\"]\n", 1599 | ")\n", 1600 | "\n", 1601 | "print(tokenized_gpt2_ds)" 1602 | ], 1603 | "id": "M0FrWUgDPwC5" 1604 | }, 1605 | { 1606 | "cell_type": "markdown", 1607 | "metadata": { 1608 | "id": "q8Xg_DgOPwC9" 1609 | }, 1610 | "source": [ 1611 | "### Decodificando\n", 1612 | "\n", 1613 | "- Podemos ver que los textos pasan a estar agrupados en bloques de `MAX_TOKEN_LENGTH` tokens.\n", 1614 | "- Además, vemos que el texto fue reemplazado por números (índices en el vocabulario).\n", 1615 | "- Por último, si decodificamos estos números, obtenemos el texto original." 1616 | ], 1617 | "id": "q8Xg_DgOPwC9" 1618 | }, 1619 | { 1620 | "cell_type": "code", 1621 | "execution_count": null, 1622 | "metadata": { 1623 | "id": "2ivXS3A6PwC9" 1624 | }, 1625 | "outputs": [], 1626 | "source": [ 1627 | "# @markdown 🔎\n", 1628 | "print(len(tokenized_gpt2_ds['train'][0]['input_ids']))\n", 1629 | "print(tokenized_gpt2_ds['train'][0]['input_ids'][:10])" 1630 | ], 1631 | "id": "2ivXS3A6PwC9" 1632 | }, 1633 | { 1634 | "cell_type": "code", 1635 | "execution_count": null, 1636 | "metadata": { 1637 | "id": "CDT-FvqGPwC-", 1638 | "scrolled": false 1639 | }, 1640 | "outputs": [], 1641 | "source": [ 1642 | "# @markdown 🔎\n", 1643 | "print(tokenizer.decode(tokenized_gpt2_ds['train'][0]['input_ids']))" 1644 | ], 1645 | "id": "CDT-FvqGPwC-" 1646 | }, 1647 | { 1648 | "cell_type": "markdown", 1649 | "metadata": { 1650 | "id": "Imydgb_2PwC_" 1651 | }, 1652 | "source": [ 1653 | "### Entrenamiento\n", 1654 | "\n", 1655 | "- Una vez definido el conjunto de datos, pasamos a la parte más intensa computacionalmente, el entrenamiento.\n", 1656 | "- Podemos decidir guardar el modelo localmente o hacer un backup de cada época del modelo en Hugging Face.\n", 1657 | "- Definimos las propiedades del entrenamiento mediante [`TrainingArguments`](https://huggingface.co/docs/transformers/v4.28.1/en/main_classes/trainer#transformers.TrainingArguments).\n", 1658 | "- Definimos el entrenamiento del modelo mediante [`Trainer`](https://huggingface.co/docs/transformers/v4.28.1/en/main_classes/trainer#transformers.Trainer).\n", 1659 | " - El entrenamiento tardará desde unos segundos hasta varias horas dependiendo el poder de cómputo, parámetros elegidos y tamaño del dataset." 1660 | ], 1661 | "id": "Imydgb_2PwC_" 1662 | }, 1663 | { 1664 | "cell_type": "code", 1665 | "execution_count": null, 1666 | "metadata": { 1667 | "id": "PastX4Q8PwDA" 1668 | }, 1669 | "outputs": [], 1670 | "source": [ 1671 | "# @markdown ❗⏳\n", 1672 | "from transformers import Trainer, TrainingArguments\n", 1673 | "\n", 1674 | "# Configuración de hiperparámetros\n", 1675 | "LEARNING_RATE = 2e-5 # @param {type:\"number\"}\n", 1676 | "BATCH_SIZE = 8 # @param {type:\"slider\", min:8, max:64, step:8}\n", 1677 | "EPOCHS = 4 # @param {type:\"slider\", min:3, max:15, step:1}\n", 1678 | "model_name = dataset_name.replace(\" \", \"-\")[:-5]\n", 1679 | "\n", 1680 | "# Configuración de entrenamiento\n", 1681 | "training_args = TrainingArguments(\n", 1682 | " model_name,\n", 1683 | " evaluation_strategy='epoch',\n", 1684 | " num_train_epochs=EPOCHS,\n", 1685 | " learning_rate=LEARNING_RATE,\n", 1686 | " per_device_train_batch_size=BATCH_SIZE,\n", 1687 | " per_device_eval_batch_size=BATCH_SIZE,\n", 1688 | " weight_decay=0.01,\n", 1689 | " logging_steps=5\n", 1690 | ")\n", 1691 | "\n", 1692 | "# Instanciación de modelo y clase Trainer\n", 1693 | "model = AutoModelForCausalLM.from_pretrained(BASE_MODEL)\n", 1694 | "trainer = Trainer(\n", 1695 | " model=model,\n", 1696 | " args=training_args,\n", 1697 | " train_dataset=tokenized_gpt2_ds['train'],\n", 1698 | " eval_dataset=tokenized_gpt2_ds['test']\n", 1699 | ")\n", 1700 | "\n", 1701 | "# Inicio de entrenamiento\n", 1702 | "trainer.args._n_gpu = 1\n", 1703 | "trainer.train()" 1704 | ], 1705 | "id": "PastX4Q8PwDA" 1706 | }, 1707 | { 1708 | "cell_type": "markdown", 1709 | "source": [ 1710 | "- Ahora será necesario ingresar a la plataforma HuggingFace 🤗 para subir nuestro modelo. Luego podrán utilizarlo tanto en este taller con la librería `transformers` como compartir con sus amigos en la versión web." 1711 | ], 1712 | "metadata": { 1713 | "id": "sx_77z2zVFGk" 1714 | }, 1715 | "id": "sx_77z2zVFGk" 1716 | }, 1717 | { 1718 | "cell_type": "code", 1719 | "execution_count": null, 1720 | "metadata": { 1721 | "id": "FhV7SE2SPwDB" 1722 | }, 1723 | "outputs": [], 1724 | "source": [ 1725 | "# @markdown ❗\n", 1726 | "\n", 1727 | "# Logeo a plataforma mediante token de acceso\n", 1728 | "from huggingface_hub import notebook_login\n", 1729 | "notebook_login()" 1730 | ], 1731 | "id": "FhV7SE2SPwDB" 1732 | }, 1733 | { 1734 | "cell_type": "code", 1735 | "execution_count": null, 1736 | "metadata": { 1737 | "id": "wOknhZZ9PwDD" 1738 | }, 1739 | "outputs": [], 1740 | "source": [ 1741 | "# @markdown ❗\n", 1742 | "\n", 1743 | "# Esto envía el modelo entrenado al repositorio de modelos de Hugging Face.\n", 1744 | "trainer.push_to_hub()\n", 1745 | "tokenizer.push_to_hub(model_name)" 1746 | ], 1747 | "id": "wOknhZZ9PwDD" 1748 | }, 1749 | { 1750 | "cell_type": "markdown", 1751 | "metadata": { 1752 | "id": "E0cGM72OPwDE" 1753 | }, 1754 | "source": [ 1755 | "### Probando el Nuevo Modelo\n", 1756 | "\n", 1757 | "- Ahora que tenemos el modelo entrenado, la pregunta es, ¿Cómo se comportará?\n", 1758 | "- Para ello volvemos a hacer la prueba anterior, quizás esta vez con mejores resultados.\n", 1759 | "- En `MODEL` deberán pegar el link al modelo que acaban de subir. Tendrá un formato del estilo `username/modelName`." 1760 | ], 1761 | "id": "E0cGM72OPwDE" 1762 | }, 1763 | { 1764 | "cell_type": "code", 1765 | "execution_count": null, 1766 | "metadata": { 1767 | "id": "xAlb6ROyPwDF" 1768 | }, 1769 | "outputs": [], 1770 | "source": [ 1771 | "# @markdown ❗\n", 1772 | "import torch\n", 1773 | "from transformers import AutoModelForCausalLM, AutoTokenizer\n", 1774 | "\n", 1775 | "MODEL = \"guidoivetta/Peppa-Pig\" # @param {type:\"string\"}\n", 1776 | "tokenizer = AutoTokenizer.from_pretrained(MODEL)\n", 1777 | "model = AutoModelForCausalLM.from_pretrained(MODEL)" 1778 | ], 1779 | "id": "xAlb6ROyPwDF" 1780 | }, 1781 | { 1782 | "cell_type": "markdown", 1783 | "source": [ 1784 | "- En esta celda podrán probar su modelo. Les incentivamos a ser creativos con las frases que elijan para completarla y comparar los resultados del modelo base con el modelo adaptado." 1785 | ], 1786 | "metadata": { 1787 | "id": "mFQwGpKQWVIz" 1788 | }, 1789 | "id": "mFQwGpKQWVIz" 1790 | }, 1791 | { 1792 | "cell_type": "code", 1793 | "execution_count": null, 1794 | "metadata": { 1795 | "id": "sinm67n3PwDH" 1796 | }, 1797 | "outputs": [], 1798 | "source": [ 1799 | "# @markdown ❗\n", 1800 | "\n", 1801 | "ejemplo = \"Ayer, al despertarme\" # @param {type:\"string\"}\n", 1802 | "input_ids = tokenizer.encode(ejemplo, return_tensors='pt')\n", 1803 | "sampling_output = model.generate(input_ids, do_sample=True, max_length=50, top_k=50, top_p=0.95, pad_token_id=tokenizer.eos_token_id)\n", 1804 | "output = tokenizer.decode(sampling_output[0], skip_special_tokens=True)\n", 1805 | "\n", 1806 | "print(output)" 1807 | ], 1808 | "id": "sinm67n3PwDH" 1809 | }, 1810 | { 1811 | "cell_type": "markdown", 1812 | "source": [ 1813 | "> Este trabajo está licenciado bajo [Licencia MIT](https://github.com/nanom/llm_adaptation_workshop/blob/main/LICENSE).\n" 1814 | ], 1815 | "metadata": { 1816 | "id": "dscWR-DCGhVV" 1817 | }, 1818 | "id": "dscWR-DCGhVV" 1819 | } 1820 | ], 1821 | "metadata": { 1822 | "accelerator": "GPU", 1823 | "celltoolbar": "Slideshow", 1824 | "colab": { 1825 | "provenance": [], 1826 | "gpuType": "T4", 1827 | "include_colab_link": true 1828 | }, 1829 | "kernelspec": { 1830 | "display_name": "Python 3", 1831 | "name": "python3" 1832 | }, 1833 | "language_info": { 1834 | "codemirror_mode": { 1835 | "name": "ipython", 1836 | "version": 3 1837 | }, 1838 | "file_extension": ".py", 1839 | "mimetype": "text/x-python", 1840 | "name": "python", 1841 | "nbconvert_exporter": "python", 1842 | "pygments_lexer": "ipython3", 1843 | "version": "3.10.8" 1844 | }, 1845 | "rise": { 1846 | "scroll": true 1847 | } 1848 | }, 1849 | "nbformat": 4, 1850 | "nbformat_minor": 5 1851 | } -------------------------------------------------------------------------------- /datasets/martin_fierro.csv: -------------------------------------------------------------------------------- 1 | samples 2 | aquí me pongo a cantar 3 | "al compás de la vigüela," 4 | que el hombre que lo desvela 5 | una pena estraordinaria 6 | como la ave solitaria 7 | con el cantar se consuela. 8 | pido a los santos del cielo 9 | que ayuden mi pensamiento; 10 | les pido en este momento 11 | que voy a cantar mi historia 12 | me refresquen la memoria 13 | y aclaren mi entendimiento. 14 | "vengan santos milagrosos," 15 | "vengan todos en mi ayuda," 16 | que la lengua se me añuda 17 | y se me turba la vista; 18 | pido a dios que me asista 19 | en una ocasión tan ruda. 20 | "yo he visto muchos cantores," 21 | "con famas bien obtenidas," 22 | y que después de adquiridas 23 | no las quieren sustentar 24 | parece que sin largar 25 | se cansaron en partidas 26 | mas ande otro criollo pasa 27 | martín fierro ha de pasar; 28 | nada lo hace recular 29 | "ni los fantasmas lo espantan," 30 | y dende que todos cantan 31 | yo también quiero cantar. 32 | cantando me he de morir 33 | "cantando me han de enterrar," 34 | y cantando he de llegar 35 | al pie del eterno padre: 36 | dende el vientre de mi madre 37 | vine a este mundo a cantar. 38 | que no se trabe mi lengua 39 | ni me falte la palabra: 40 | el cantar mi gloria labra 41 | "y poniéndome a cantar," 42 | cantando me han de encontrar 43 | aunque la tierra se abra. 44 | me siento en el plan de un bajo 45 | a cantar un argumento: 46 | como si soplara el viento 47 | hago tiritar los pastos; 48 | "con oros, copas y bastos" 49 | juega allí mi pensamiento. 50 | "yo no soy cantor letrao," 51 | mas si me pongo a cantar 52 | no tengo cuándo acabar 53 | y me envejezco cantando: 54 | las coplas me van brotando 55 | como agua de manantial. 56 | con la guitarra en la mano 57 | "ni las moscas se me arriman," 58 | "naides me pone el pie encima," 59 | "y cuando el pecho se entona," 60 | hago gemir a la prima 61 | y llorar a la bordona. 62 | yo soy toro en mi rodeo 63 | y torazo en rodeo ajeno; 64 | siempre me tuve por güeno 65 | "y si me quieren probar," 66 | salgan otros a cantar 67 | y veremos quién es menos. 68 | no me hago al lao de la güeya 69 | "aunque vengan degollando," 70 | con los blandos yo soy blando 71 | "y soy duro con los duros," 72 | y ninguno en un apuro 73 | me ha visto andar tutubiando. 74 | "en el peligro, ¡qué cristos!" 75 | "el corazón se me enancha," 76 | "pues toda la tierra es cancha," 77 | y de eso naides se asombre: 78 | el que se tiene por hombre 79 | ande quiere hace pata ancha. 80 | "soy gaucho, y entiendaló" 81 | como mi lengua lo esplica: 82 | para mí la tierra es chica 83 | y pudiera ser mayor; 84 | ni la víbora me pica 85 | ni quema mi frente el sol 86 | nací como nace el peje 87 | en el fondo de la mar; 88 | naides me puede quitar 89 | aquello que dios me dio 90 | lo que al mundo truje yo 91 | del mundo lo he de llevar. 92 | mi gloria es vivir tan libre 93 | como el pájaro del cielo: 94 | no hago nido en este suelo 95 | "ande hay tanto que sufrir," 96 | y naides me ha de seguir 97 | cuando yo remuento el vuelo. 98 | yo no tengo en el amor 99 | quien me venga con querellas; 100 | como esas aves tan bellas 101 | "que saltan de rama en rama," 102 | "yo hago en el trébol mi cama," 103 | y me cubren las estrellas. 104 | y sepan cuantos escuchan 105 | "de mis penas el relato," 106 | que nunca peleo ni mato 107 | "sino por necesidá," 108 | y que a tanta alversidá 109 | sólo me arrojó el mal trato 110 | y atiendan la relación 111 | "que hace un gaucho perseguido," 112 | que padre y marido ha sido 113 | "empeñoso y diligente," 114 | y sin embargo la gente 115 | lo tiene por un bandido 116 | "ninguno me hable de penas," 117 | "porque yo penado vivo," 118 | y naides se muestre altivo 119 | aunque en el estribo esté: 120 | que suele quedarse a pie 121 | el gaucho mas alvertido. 122 | junta esperencia en la vida 123 | hasta pa dar y prestar 124 | quien la tiene que pasar 125 | "entre sufrimiento y llanto," 126 | porque nada enseña tanto 127 | como el sufrir y el llorar. 128 | "viene el hombre ciego al mundo," 129 | "cuartiándolo la esperanza," 130 | y a poco andar ya lo alcanzan 131 | "las desgracias a empujones," 132 | "¡la pucha, que trae liciones" 133 | el tiempo con sus mudanzas! 134 | yo he conocido esta tierra 135 | en que el paisano vivía 136 | y su ranchito tenía 137 | y sus hijos y mujer... 138 | era una delicia el ver 139 | como pasaba sus días. 140 | entonces... cuando el lucero 141 | "brillaba en el cielo santo," 142 | y los gallos con su canto 143 | "nos decían que el día llegaba," 144 | a la cocina rumbiaba 145 | el gaucho... que un encanto. 146 | y sentao junto al jogón 147 | "a esperar que venga el día," 148 | al cimarrón le prendía 149 | "hasta ponerse rechoncho," 150 | mientras su china dormía 151 | tapadita con su poncho. 152 | y apenas la madrugada 153 | "empezaba coloriar," 154 | "los pájaros a cantar," 155 | "y las gallinas a apiarse," 156 | era cosa de largarse 157 | cada cual a trabajar. 158 | "este se ata las espuelas," 159 | "se sale el otro cantando," 160 | "uno busca un pellón blando," 161 | "este un lazo, otro un rebenque," 162 | y los pingos relinchando 163 | los llaman dende el palenque. 164 | el que era pion domador 165 | "enderezaba al corral," 166 | ande estaba el animal 167 | bufidos que se las pela... 168 | "y más malo que su agüela," 169 | se hacia astillas el bagual. 170 | "y allí el gaucho inteligente," 171 | "en cuanto el potro enriendó," 172 | los cueros le acomodó 173 | "y se le sentó en seguida," 174 | que el hombre muestra en la vida 175 | la astucia que dios le dio. 176 | y en las playas corcoviando 177 | pedazos se hacía el sotreta 178 | mientras él por las paletas 179 | "le jugaba las lloronas," 180 | y al ruido de las caronas 181 | salía haciendo gambetas. 182 | "¡ah, tiempos!... ¡si era un orgullo" 183 | ver jinetear un paisano! 184 | "cuando era gaucho baquiano," 185 | "aunque el potro se boliase," 186 | no había uno que no parese 187 | con el cabresto en la mano. 188 | "y mientras domaban unos," 189 | otros al campo salían 190 | "y la hacienda recogían," 191 | "las manadas repuntaban," 192 | y ansí sin sentir pasaban 193 | entretenidos el día. 194 | y verlos al cair la tarde 195 | "en la cocina riunidos," 196 | con el juego bien prendido 197 | "y mil cosas que contar," 198 | platicar muy divertidos 199 | hasta después de cenar. 200 | y con el buche bien lleno 201 | era cosa superior 202 | irse en brazos del amor 203 | "a dormir como la gente," 204 | pa empezar el día siguiente 205 | las fainas del día anterior. 206 | ricuerdo ¡qué maravilla! 207 | cómo andaba la gauchada 208 | siempre alegre y bien montada 209 | y dispuesta pa el trabajo... 210 | pero hoy en día... ¡barajo! 211 | no se la ve de aporriada. 212 | el gaucho más infeliz 213 | "tenía tropilla de un pelo," 214 | no le faltaba un consuelo 215 | y andaba la gente lista... 216 | "teniendo al campo la vista," 217 | sólo vía hacienda y cielo. 218 | "cuando llegaban las yerras," 219 | ¡cosa que daba calor! 220 | tanto gaucho pialador 221 | y tironiador sin yel. 222 | "¡ah, tiempos... pero si en él" 223 | se ha visto tanto primor! 224 | "aquello no era trabajo," 225 | "mas bien era una junción," 226 | y después de un güen tirón 227 | "en que uno se daba mana," 228 | pa darle un trago de cana 229 | solía llamarlo el patrón. 230 | pues vivía la mamajuana 231 | "siempre bajo la carreta," 232 | "y aquel que no era chancleta," 233 | "en cuanto el goyete vía," 234 | sin miedo se le prendía 235 | como güérfano a la teta. 236 | ¡y qué jugadas se armaban 237 | cuando estábamos riunidos! 238 | "siempre íbamos prevenidos," 239 | pues en tales ocasiones 240 | a ayudarle a los piones 241 | caiban muchos comedidos. 242 | eran los días del apuro 243 | "y alboroto pa el hembraje," 244 | pa preparar los potajes 245 | "y osequiar bien a la gente," 246 | "y así, pues, muy grandemente," 247 | pasaba siempre el gauchaje. 248 | "vení, a la carne con cuero," 249 | "la sabrosa carbonada," 250 | "mazamorra pien pisada," 251 | los pasteles y el güen vino... 252 | pero ha querido el destino 253 | que todo aquello acabara. 254 | estaba el gaucho en su pago 255 | "con toda siguridá," 256 | "pero aura... ¡barbaridá!," 257 | "la cosa anda tan fruncida," 258 | que gasta el pobre la vida 259 | en juir de la autoridá. 260 | pues si usté pisa en su rancho 261 | "y si el alcalde lo sabe," 262 | lo caza lo mesmo que ave 263 | aunque su mujer aborte... 264 | ¡no hay tiempo que no se acabe 265 | ni tiento que no se corte!. 266 | y al punto dese por muerto 267 | "si el alcalde lo bolea," 268 | pues ahí nomás se le apea 269 | con una felpa de palos; 270 | y después dicen que es malo 271 | el gaucho si los pelea. 272 | "y el lomo le hinchan a golpes," 273 | "y le rompen la cabeza," 274 | "y luego con ligereza," 275 | "ansí lastimao y todo," 276 | lo amarran codo a codo 277 | y pa el cepo lo enderiezan. 278 | "áhi comienzan sus desgracias," 279 | "áhi principia el pericón," 280 | "porque ya no hay salvación," 281 | "y que usté quiera o no quiera," 282 | lo mandan a la frontera 283 | o lo echan a un batallón. 284 | ansí empezaron mis males 285 | lo mesmo que los de tantos; 286 | si gustan... en otros cantos 287 | "les diré lo que he sufrido," 288 | después que uno está... perdido 289 | no lo salvan ni los santos. 290 | tuve en mi pago en un tiempo 291 | "hijos, hacienda y mujer," 292 | "pero empecé a padecer," 293 | "me echaron a la frontera," 294 | ¡y qué iba a hallar al volver! 295 | tan sólo hallé la tapera. 296 | sosegao vivía en mi rancho 297 | "como el pájaro en su nido," 298 | allí mis hijos queridos 299 | iban creciendo a mi lao... 300 | sólo queda al desgraciao 301 | lamentar el bien perdido. 302 | mi gala en las pulperías 303 | "era, en habiendo más gente," 304 | "ponerme medio caliente," 305 | pues cuando puntiao me encuentro 306 | me salen coplas de adentro 307 | como agua de la virtiente. 308 | cantando estaba una vez 309 | "en una gran diversión," 310 | y aprovecho la ocasión 311 | como quiso el juez de paz... 312 | "se presentó, y ahi nomás" 313 | hizo arriada en montón. 314 | juyeron los más matreros 315 | y lograron escapar: 316 | "yo no quise disparar," 317 | "soy manso y no había porqué," 318 | muy tranquilo me quedé 319 | y ansí me dejé agarrar 320 | allí un gringo con un órgano 321 | "y una mona que bailaba," 322 | "haciéndonos rair estaba," 323 | "cuanto le tocó el arreo," 324 | "¡tan grande el gringo y tan feo," 325 | lo viera cómo lloraba!. 326 | hasta un inglés zanjiador 327 | que decía en la última guerra 328 | que él era de incalaperra 329 | "y que no quería servir," 330 | también tuvo que juir 331 | a guarecerse en la sierra. 332 | ni los mirones salvaron 333 | "de esa arriada de mi flor," 334 | fue acoyarao el cantor 335 | "con el gringo de la mona," 336 | "a uno solo, por favor," 337 | logró salvar la patrona. 338 | formaron un contingente 339 | "con los que del baile arriaron," 340 | "con otros nos mesturaron," 341 | "que habían agarrao también," 342 | las cosas que aquí se ven 343 | ni los diablos las pensaron. 344 | a mí el juez me tomó entre ojos 345 | en la ultima votación: 346 | me le había hecho el remolón 347 | "y no me arrimé ese día," 348 | y él dijo que yo servía 349 | a los de la esposición. 350 | y ansí sufrí ese castigo 351 | "tal vez por culpas ajenas," 352 | que sean malas o sean güenas 353 | "las listas, siempre me escondo:" 354 | yo soy un gaucho redondo 355 | y esas cosas no me enllenan. 356 | al mandarnos nos hicieron 357 | "más promesas que a un altar," 358 | el juez nos jue a proclamar 359 | y nos dijo muchas veces: 360 | "muchachos, a los seis meses" 361 | los van a ir a relevar. 362 | yo llevé un moro de número 363 | ¡sobresaliente el matucho! 364 | con él gané en ayacucho 365 | más plata que agua bendita: 366 | siempre el gaucho necesita 367 | un pingo pa fiarle un pucho. 368 | y cargué sin dar mas güeltas 369 | con las prendas que tenía: 370 | "jergas, ponchos, todo cuanto había" 371 | "en casa, tuito lo alcé:" 372 | a mi china la dejé 373 | medio desnuda ese día. 374 | "no me falta una guasca," 375 | "esa ocasión eché el resto," 376 | "bozal, maniador, cabresto," 377 | "lazo, bolas y manea..." 378 | ¡el que hoy tan pobre me vea 379 | tal vez no creerá todo esto!. 380 | "ansí en mi moro, escarciando," 381 | enderecé a la frontera. 382 | ¡aparcero si usté viera 383 | lo que se llama cantón!... 384 | ni envidia tengo al ratón 385 | en aquella ratonera. 386 | de los pobres que allí había 387 | "a ninguno lo largaron," 388 | "los más viejos rezongaron," 389 | pero a uno que se quejó 390 | "en seguida lo estaquiaron," 391 | y la cosa se acabó. 392 | en la lista de la tarde 393 | el jefe nos cantó el punto 394 | diciendo: quinientos juntos 395 | llevará el que se resierte; 396 | "lo haremos pitar del juerte," 397 | mas bien dese por dijunto. 398 | "a naides le dieron armas," 399 | pues toditas las que había 400 | "el coronel las tenía," 401 | "sigún dijo esa ocasión," 402 | pa repartirlas el día 403 | en que hubiera una invasión. 404 | al principio nos dejaron 405 | "de haraganes criando sebo," 406 | pero después... no me atrevo 407 | a decir lo que pasaba... 408 | ¡barajo!... si nos trataban 409 | como se trata a malevos. 410 | porque todo era jugarle 411 | "por los lomos con la espada," 412 | "y aunque usté no hiciera nada," 413 | "lo mesmito que en palermo," 414 | le daban cada cepiada 415 | que lo dejaban enfermo. 416 | "¡y qué indios, ni qué servicio;" 417 | si allí no había ni cuartel! 418 | nos mandaba el coronel 419 | "a trabajar en sus chacras," 420 | y dejábamos las vacas 421 | que las llevara el infiel. 422 | yo primero sembré trigo 423 | "y después hice un corral," 424 | "corté adobe pa un tapial," 425 | "hice un quincho, corté paja..." 426 | ¡la pucha que se trabaja 427 | sin que le larguen un rial!. 428 | y es lo pior de aquel enriedo 429 | que si uno anda hinchando el lomo 430 | se le apean como un plomo... 431 | ¡quién aguanta aquel infierno! 432 | "si eso es servir al gobierno," 433 | a mí no me gusta el cómo. 434 | más de un año nos tuvieron 435 | en esos trabajos duros; 436 | "y los indios, le asiguro" 437 | dentraban cuando querían: 438 | "como no los perseguían," 439 | siempre andaban sin apuro. 440 | a veces decía al volver 441 | del campo la descubierta 442 | "que estuviéramos alerta," 443 | "que andaba adentro la indiada," 444 | porque había una rastrillada 445 | o estaba una yegua muerta. 446 | recién entonces salía 447 | "la orden de hacer la riunión," 448 | y caíbamos al cantón 449 | "en pelos y hasta enancaos," 450 | "sin armas, cuatro pelaos" 451 | que íbamos a hacer jabón. 452 | ahi empezaba el afán 453 | "-se entiende, de puro vicio-" 454 | de enseñarle el ejercicio 455 | "a tanto gaucho recluta," 456 | con un estrutor... ¡qué... bruta! 457 | que nunca sabía su oficio. 458 | daban entonces las armas 459 | "pa defender los cantones," 460 | que eran lanzas y latones 461 | con ataduras de tiento... 462 | las de juego no las cuento 463 | porque no había municiones. 464 | y un sargento chamuscao 465 | me contó que las tenían 466 | pero que ellos la vendían 467 | para cazar avestruces; 468 | y así andaban noche y día 469 | dele bala a los ñanduces. 470 | y cuando se iban los indios 471 | "con lo que habían manotiao," 472 | salíamos muy apuraos 473 | a perseguirlos de atrás; 474 | si no se llevaban más 475 | es porque no habían hallao. 476 | "allí sí, se ven desgracias" 477 | y lágrimas y afliciones; 478 | naides le pida perdones 479 | "al indio: pues donde dentra," 480 | roba y mata cuanto encuentra 481 | y quema las poblaciones. 482 | no salvan de su juror 483 | ni los pobres angelitos; 484 | "viejos, mozos y chiquitos" 485 | los mata del mesmo modo: 486 | que el indio lo arregla todo 487 | con la lanza y con gritos. 488 | tiemblan las carnes al verlo 489 | "volando al viento la cerda," 490 | la rienda en la mano izquierda 491 | y la lanza en la derecha; 492 | ande enderieza abre brecha 493 | pues no hay lanzazo que pierda. 494 | hace trotiadas tremendas 495 | desde el fondo del desierto; 496 | ansí llega medio muerto 497 | "de hambre, de sé y de fatiga;" 498 | pero el indio es una hormiga 499 | que día y noche está despierto. 500 | sabe manejar las bolas 501 | como naides las maneja; 502 | "cuanto el contrario se aleja," 503 | "manda una bola perdida," 504 | "y si lo alcanza, sin vida" 505 | es siguro que lo deja. 506 | y el indio es como tortuga 507 | de duro para espichar; 508 | si lo llega a destripar 509 | ni siquiera se le encoge; 510 | "luego sus tripas recoge," 511 | y se agacha a disparar. 512 | hacían el robo a su gusto 513 | y después se iban de arriba; 514 | "se llevaban las cautivas," 515 | y nos contaban que a veces 516 | "les descarnaban los pieses," 517 | "a las pobrecitas, vivas." 518 | ¡ah! ¡si partía el corazón 519 | "ver tantos males, canejo!" 520 | los perseguíamos de lejos 521 | sin poder ni galopiar; 522 | ¡y qué habíamos de alcanzar 523 | en unos vichocos viejos! 524 | nos volvíamos al cantón 525 | "a las dos o tres jornadas," 526 | sembrando las caballadas; 527 | "y pa que alguno la venda," 528 | rejuntábamos la hacienda 529 | que habían dejao rezagada. 530 | "una vez entre otras muchas," 531 | "tanto salir al botón," 532 | nos pegaron un malón 533 | "los indios y una lanciada," 534 | que la gente acobardada 535 | quedó dende esa ocasión. 536 | habían estao escondidos 537 | aguaitando atrás de un cerro... 538 | ¡lo viera a su amigo fierro 539 | aflojar como un blandito! 540 | salieron como maíz frito 541 | en cuanto sonó un cencerro. 542 | al punto nos dispusimos 543 | aunque ellos eran bastantes; 544 | la formamos al instante 545 | "nuestra gente, que era poca," 546 | y golpiándose en la boca 547 | hicieron fila adelante. 548 | se vinieron en tropel 549 | haciendo temblar la tierra. 550 | no soy manco pa la guerra 551 | "pero tuve mi jabón," 552 | pues iba en un redomón 553 | que había boleao en la sierra. 554 | ¡qué vocerío! ¡qué barullo! 555 | ¡qué apurar esa carrera! 556 | la indiada todita entera 557 | "dando alaridos cargó," 558 | ¡jue pucha!... y ya nos sacó 559 | como yeguada matrera. 560 | ¡qué fletes traiban los bárbaros! 561 | ¡como una luz de ligeros! 562 | hicieron el entrevero 563 | "y en aquella mezcolanza," 564 | "este quiero, éste no quiero," 565 | nos escogían con la lanza. 566 | "al que le daban un chuzazo," 567 | dificultoso es que sane. 568 | "en fin, para no echar panes," 569 | "salimos por esas lomas," 570 | lo mesmo que las palomas 571 | al juir de los gavilanes. 572 | ¡es de almirar la destreza 573 | con que la lanza manejan! 574 | "de perseguir nunca dejan," 575 | y nos traiban apretaos. 576 | "¡si queríamos, de apuraos," 577 | salirnos por las orejas! 578 | y pa mejor de la fiesta 579 | "en esa aflición tan suma," 580 | "vino un indio echando espuma," 581 | "y con la lanza en la mano," 582 | "gritando: acabáu cristiano," 583 | metau el lanza hasta el pluma. 584 | "tendido en el costillar," 585 | cimbrando por sobre el brazo 586 | "una lanza como un lazo," 587 | me atropelló dando gritos: 588 | si me descuido... el maldito 589 | me levanta de un lanzazo. 590 | "si me atribulo o me encojo," 591 | siguro que no me escapo: 592 | "siempre he sido medio guapo," 593 | pero en aquella ocasión 594 | me hacía buya el corazón 595 | como la garganta al sapo. 596 | dios le perdone al salvaje 597 | las ganas que me tenía... 598 | desaté las tres marías 599 | y lo engatusé a cabriolas... 600 | ¡pucha...! si no traigo bolas 601 | me achura el indio ese día. 602 | "era el hijo de un cacique," 603 | sigún yo lo averigüé; 604 | la verdá del caso jue 605 | "que me tuvo apuradazo," 606 | hasta que por fin de un bolazo 607 | del caballo lo bajé. 608 | ahi no más me tiré al suelo 609 | y lo pisé en las paletas; 610 | empezó a hacer morisquetas 611 | y a mezquinar la garganta... 612 | pero yo hice la obra santa 613 | de hacerlo estirar la jeta. 614 | allí quedó de mojón 615 | y en su caballo salté; 616 | "de la indiada disparé," 617 | "pues si me alcanza me mata," 618 | "y al fin me les escapé," 619 | con el hilo de una pata. 620 | "seguiré esta relación," 621 | aunque pa chorizo es largo: 622 | el que pueda hágase cargo 623 | "cómo andaría de matrero," 624 | después de salvar el cuero 625 | de aquel trance tan amargo. 626 | "del sueldo nada les cuento," 627 | porque andaba disparando; 628 | nosotros de cuando en cuando 629 | solíamos ladrar de pobres: 630 | nunca llegaban los cobres 631 | que se estaban aguardando. 632 | y andábamos de mugrientos 633 | que el mirarnos daba horror; 634 | les juro que era un dolor 635 | "ver esos hombres, ¡por cristo!" 636 | en mi perra vida he visto 637 | una miseria mayor. 638 | yo no tenía ni camisa 639 | ni cosa que se parezca; 640 | mis trapos sólo pa yesca 641 | me podían servir al fin... 642 | no hay plaga como un fortín 643 | para que el hombre padezca. 644 | "poncho, jergas, el apero," 645 | "las prenditas, los botones," 646 | "todo, amigo, en los cantones" 647 | jue quedando poco a poco; 648 | ya me tenían medio loco 649 | la pobreza y los ratones. 650 | sólo una manta peluda 651 | era cuanto me quedaba 652 | la había agenciao a la tabla 653 | y ella me tapaba el bulto; 654 | yaguané que allí ganaba 655 | no salía- ni con indulto. 656 | y pa mejor hasta el moro 657 | se me jue de entre las manos; 658 | "no soy lerdo pero, hermano," 659 | vino el comendante un día 660 | diciendo que lo quería 661 | pa enseñarle a comer grano. 662 | afigúrese cualquiera 663 | "la suerte de este su amigo," 664 | "a pie y mostrando el umbligo," 665 | "estropiao, pobre y desnudo;" 666 | ni por castigo se pudo 667 | hacerse más mal conmigo. 668 | "ansí pasaron los meses," 669 | "y vino el año siguiente," 670 | y las cosas igualmente 671 | siguieron del mesmo modo: 672 | adrede parece todo 673 | pa atormentar a la gente. 674 | "no teníamos más permiso," 675 | "ni otro alivio la gauchada," 676 | "que salir de madrugada," 677 | "cuando no había indio ninguno," 678 | campo ajuera a hacer boliadas 679 | desocando los reyunos. 680 | y cáibamos al cantón 681 | "con los fletes aplastaos," 682 | pero a veces medio aviaos 683 | "con plumas y algunos cueros," 684 | que pronto con el pulpero 685 | los teníamos negociaos. 686 | era un amigo del jefe 687 | que con un boliche estaba; 688 | yerba y tabaco nos daba 689 | "por la pluma de avestruz," 690 | y hasta le hacía ver la luz 691 | al que un cuero le llevaba. 692 | sólo tenía cuatro frascos 693 | "y unas barricas vacías," 694 | y a la gente le vendía 695 | todo cuanto precisaba... 696 | algunos creiban que estaba 697 | allí la proveduría. 698 | "¡ah, pulpero habilidoso!" 699 | nada le solía faltar. 700 | "¡ahijuna!, para tragar" 701 | tenía un buche de ñandú; 702 | la gente le dio en llamar 703 | el boliche de virtú. 704 | aunque es justo que quien vende 705 | "algún poquito muerda," 706 | tiraba tanto la cuerda 707 | "que, con sus cuatro limetas" 708 | él cargaba las carretas 709 | "de plumas, cueros y cerda." 710 | nos tenía apuntaos a todos 711 | "con más cuentas que un rosario," 712 | cuando se anunció un salario 713 | "que iban a dar, o un socorro;" 714 | pero sabe dios qué zorro 715 | se lo comió al comisario; 716 | "pues nunca lo vi llegar," 717 | y al cabo de muchos días 718 | en la mesma pulpería 719 | "dieron una güena cuenta," 720 | que la gente muy contenta 721 | de tan pobre recibía. 722 | "sacaron unos sus prendas," 723 | que las tenían empeñadas; 724 | por sus deudas atrasadas 725 | dieron otros el dinero; 726 | al fin de fiesta el pulpero 727 | se quedó con la mascada. 728 | yo me arrescosté a un horcón 729 | "dando tiempo a que pagaran," 730 | y poniendo güena cara 731 | "estuve haciéndome el poyo," 732 | a esperar que me llamaran 733 | para recibir mi boyo. 734 | pero ahi me puede quedar 735 | "pegao pa siempre al horcón," 736 | ya era casi la oración 737 | y ninguno me llamaba; 738 | la cosa se me ñublaba 739 | y me dentró comezón. 740 | pa sacarme el entripao 741 | "vi al mayor, y lo fi a hablar;" 742 | "yo me lo empecé a atracar," 743 | y como con poca gana 744 | le dije: tal vez mañana 745 | acabarán de pagar. 746 | "¡que mañana ni otro día!," 747 | al punto me contestó: 748 | la paga ya se acabó; 749 | ¡siempre has de ser animal! 750 | me raí y le dije: yo... 751 | no he recebido ni un rial. 752 | se le pusieron los ojos 753 | "que se le querían salir," 754 | y ahi no más volvió a decir 755 | comiéndome con la vista: 756 | ¿y qué querés recibir 757 | si no has dentrao en la lista? 758 | "esto sí que es amolar," 759 | dije yo pa mis adentros; 760 | van dos años que me encuentro 761 | y hasta aura he visto ni un grullo; 762 | dentro en todos los barullos 763 | pero en las listas no dentro. 764 | vide el pleito mal parao 765 | y no quise aguardar más... 766 | es güeno vivir en paz 767 | con quien nos ha de mandar; 768 | y reculando pa atrás 769 | me le empecé a retirar. 770 | supo todo el comendante 771 | "y me llamó al otro día," 772 | diciéndome que quería 773 | aviriguar bien las cosas... 774 | "que no era el tiempo de rosas," 775 | que aura a naides se debía. 776 | llamó al cabo y al sargento 777 | y empezó la indagación: 778 | si había venido al cantón 779 | en tal tiempo o en tal otro... 780 | "y si había venido en potro," 781 | en reyuno o redomón. 782 | y todo era alborotar 783 | "al ñudo, y hacer papel;" 784 | conocí que era pastel 785 | pa engordar con mi guayaca; 786 | mas si voy al coronel 787 | me hacen bramar en la estaca. 788 | "¡ah, hijos de una...! ¡la codicia" 789 | ojalá les ruempa el saco! 790 | ni un pedazo de tabaco 791 | "le dan al pobre soldao," 792 | "y lo tienen, de delgao," 793 | más ligero que un guanaco. 794 | "pero qué iba a hacerles yo," 795 | charabón en el desierto; 796 | más bien me daba por muerto 797 | pa no verme más fundido: 798 | y me les hacía el dormido 799 | aunque soy medio despierto. 800 | "yo andaba desesperao," 801 | aguardando una ocasión 802 | que los indios un malón 803 | "nos dieran, y entre el estrago" 804 | hacérmeles cimarrón 805 | y volverme pa mi pago. 806 | aquello no era servicio 807 | ni defender la frontera; 808 | aquello era ratonera 809 | en que sólo gana el juerte: 810 | era jugar a la suerte 811 | con una taba culera. 812 | allí tuito va al revés; 813 | "los milicos son los piones," 814 | y andan en las poblaciones 815 | emprestaos pa trabajar; 816 | los rejuntan pa peliar 817 | cuando entran indios ladrones. 818 | yo he visto en esa milonga 819 | "muchos jefes con estancia," 820 | "y piones en abundancia," 821 | y majadas y rodeos; 822 | he visto negocios feos 823 | a pesar de mi inorancia. 824 | y colijo que no quieren 825 | la barunda componer; 826 | "para eso no ha de tener," 827 | "el jefe que esté de estable," 828 | "más que su poncho y su sable," 829 | su caballo y su deber. 830 | "ansina, pues, conociendo" 831 | "que aquel mal no tiene cura," 832 | que tal vez mi sepoltura 833 | "si me quedo iba a encontrar," 834 | pensé mandarme mudar 835 | como cosa más sigura. 836 | "y pa mejor, una noche" 837 | ¡qué estaquiada me pegaron! 838 | casi me descoyuntaron 839 | por motivo de una gresca: 840 | "¡ahijuna, si me estiraron" 841 | lo mesmo que guasca fresca! 842 | jamás me puedo olvidar 843 | lo que esa vez me pasó; 844 | dentrando una noche yo 845 | "al fortín, un enganchao," 846 | "que estaba medio mamao," 847 | allí me desconoció. 848 | "era un gringo tan bozal," 849 | "que nada se le entendía," 850 | ¡quién sabe de ande sería! 851 | "tal vez no juera cristiano," 852 | pues lo único que decía 853 | es que era papolitano. 854 | estaba de centinela 855 | y por causa del peludo 856 | "verme más claro no pudo," 857 | y esa jue la culpa toda: 858 | el bruto se asustó al ñudo 859 | y fi el pavo de la boda. 860 | cuando me vido acercar: 861 | quién vivore-? preguntó; 862 | "¿qué víboras?, dije yo." 863 | "¡ha garto!, me pegó el grito," 864 | y yo dije despacito: 865 | ¡más lagarto serás vos! 866 | "ahi no más, ¡cristo me valga!," 867 | rastrillar el jusil siento: 868 | "me agaché, y en el momento" 869 | el bruto me largó un chumbo; 870 | "mamao, me tiró sin rumbo," 871 | "que si no, no cuento el cuento." 872 | "por de contao, con el tiro" 873 | se alborotó el avispero; 874 | los oficiales salieron 875 | y se empezó la junción; 876 | "quedó en su puesto el nación," 877 | y yo fi al estaquiadero. 878 | entre cuatro bayonetas 879 | me tendieron en el suelo; 880 | vino el mayor medio en pedo 881 | y allí se puso a gritar: 882 | "¡pícaro, te he de enseñar" 883 | andar reclamando sueldos! 884 | de las manos y las patas 885 | me ataron cuatro cinchones; 886 | les aguanté los tirones 887 | "sin que ni un ¡ay! se me oyera," 888 | y al gringo la noche entera 889 | lo harté con mis maldiciones. 890 | yo no sé porqué el gobierno 891 | nos manda aquí a la frontera 892 | gringada que ni siquiera 893 | se sabe atracar a un pingo. 894 | ¡si creerá al mandar un gringo 895 | que nos manda alguna fiera! 896 | "no hacen más que dar trabajo," 897 | pues no saben ni ensillar; 898 | no sirven ni pa carniar: 899 | y yo he visto muchas veces 900 | que ni voltiadas las reses 901 | se les querían arrimar. 902 | y lo pasan sus mercedes 903 | lengüetiando pico a pico 904 | hasta que viene un milico 905 | a servirles al asao- 906 | "y eso sí, en lo delicaos," 907 | parecen hijos de rico. 908 | "si hay calor, ya no son gente;" 909 | "si yela, todos tiritan;" 910 | "si usté no les da, no pitan" 911 | "por no gastar en tabaco," 912 | y cuando pescan un naco 913 | uno al otro se lo quitan. 914 | cuando llueve se acoquinan 915 | como perro que oye truenos. 916 | "¡que diablos!, sólo son güenos" 917 | "pa vivir entre maricas," 918 | y nunca se andan con chicas 919 | para alzar ponchos ajenos. 920 | pa vichar son como ciegos; 921 | "no hay ejemplo de que entiendan," 922 | "ni hay uno solo que aprienda," 923 | "al ver un bulto que cruza," 924 | "a saber si es avestruza," 925 | "o si es jinete, o hacienda." 926 | si salen a perseguir 927 | "después de mucho aparato," 928 | tuitos se pelan al rato 929 | y va quedando el tendal: 930 | esto es como en un nidal 931 | echarle güevos a un gato. 932 | vamos dentrando recién 933 | "a la parte mas sentida," 934 | aunque es todita mi vida 935 | de males una cadena: 936 | a cada alma dolorida 937 | le gusta cantar sus penas. 938 | se empezó en aquel entonces 939 | "a rejuntar caballada," 940 | y riunir la milicada 941 | "teniéndola en el cantón," 942 | para una despedición 943 | a sorprender a la indiada. 944 | nos anunciaban que iríamos 945 | sin carretas ni bagajes 946 | a golpiar a los salvajes 947 | en sus mesmas tolderías; 948 | que a la güelta pagarían 949 | licenciándolo al gauchaje; 950 | que en esta despedición 951 | tuviéramos la esperanza; 952 | "que iba a venir sin tardanza," 953 | "según el jefe contó," 954 | un menistro o qué sé yo- 955 | que le llamaban don ganza; 956 | que iba a riunir el ejército 957 | "y tuitos los batallones," 958 | y que traiba unos cañones 959 | con más rayas que un cotín; 960 | ¡pucha!- las conversaciones 961 | por allá no tenían fin. 962 | pero esas trampas no enriedan 963 | a los zorros de mi laya; 964 | "que esa ganza venga o vaya," 965 | poco le importa a un matrero. 966 | yo también dejé las rayas- 967 | en los libros del pulpero. 968 | nunca juí gaucho dormido; 969 | "siempre pronto, siempre listo," 970 | "yo soy un hombre, ¡qué cristo!," 971 | "que nada me ha acobardao," 972 | y siempre salí parao 973 | en los trances que me he visto. 974 | dende chiquito gané 975 | "la vida con mi trabajo," 976 | y aunque siempre estuve abajo 977 | y no sé lo que es subir 978 | también el mucho sufrir 979 | "suele cansarnos, ¡barajo!" 980 | en medio de mi inorancia 981 | conozco que nada valgo: 982 | soy la liebre o soy el galgo 983 | asigún los tiempos andan; 984 | pero también los que mandan 985 | debieran cuidarnos algo. 986 | una noche que riunidos 987 | estaban en la carpeta 988 | empinando una limeta 989 | "el jefe y el juez de paz," 990 | "yo no quise aguardar más," 991 | y me hice humo en un sotreta. 992 | me parece el campo orégano 993 | dende que libre me veo; 994 | donde me lleva el deseo 995 | "allí mis pasos dirijo," 996 | y hasta en las sombras de fijo 997 | que donde quiera rumbeo. 998 | entro y salgo del peligro 999 | "sin que me espante el estrago," 1000 | no aflojo al primer amago 1001 | ni jamás fi gaucho lerdo: 1002 | "soy pa rumbiar como el cerdo," 1003 | y pronto caí a mi pago. 1004 | volvía al cabo de tres años 1005 | de tanto sufrir al ñudo 1006 | "resertor, pobre y desnudo," 1007 | a procurar suerte nueva; 1008 | y lo mesmo que el peludo 1009 | enderecé pa mi cueva. 1010 | no hallé ni rastro del rancho: 1011 | ¡sólo estaba la tapera! 1012 | ¡por cristo si aquello era 1013 | pa enlutar el corazón! 1014 | ¡yo juré en esa ocasión 1015 | ser mas malo que una fiera! 1016 | ¡quién no sentirá lo mesmo 1017 | cuando ansí padece tanto! 1018 | puedo asigurar que el llanto 1019 | como una mujer largué: 1020 | "¡ay, mi dios: si me quedé" 1021 | más triste que jueves santo! 1022 | sólo se oíban los aullidos 1023 | de un gato que se salvó; 1024 | el pobre se guareció 1025 | "cerca, en una vizcachera:" 1026 | venía como si supiera 1027 | que estaba de güelta yo. 1028 | al dirme dejé la hacienda 1029 | que era todito mi haber; 1030 | "pronto debíamos volver," 1031 | "sigún el juez prometía," 1032 | y hasta entonces cuidaría 1033 | "de los bienes, la mujer." 1034 | después me contó un vecino 1035 | que el campo se lo pidieron; 1036 | la hacienda se la vendieron 1037 | "pa pagar arrendamientos," 1038 | y qué sé yo cuantos cuentos; 1039 | "pero todo lo fundieron," 1040 | "los pobrecitos muchachos," 1041 | "entre tantas afliciones," 1042 | se conchabaron de piones; 1043 | "¡mas qué iban a trabajar," 1044 | si eran como los pichones 1045 | sin acabar de emplumar! 1046 | por ahi andarán sufriendo 1047 | de nuestra suerte el rigor: 1048 | me han contao que el mayor 1049 | nunca dejaba a su hermano; 1050 | puede ser que algún cristiano 1051 | los recoja por favor. 1052 | "¡y la pobre mi mujer," 1053 | dios sabe cuánto sufrió! 1054 | me dicen que se voló 1055 | con no sé qué gavilán: 1056 | sin duda a buscar el pan 1057 | que no podía darle yo. 1058 | no es raro que a uno le falte 1059 | lo que a algún otro le sobre 1060 | si no le quedó ni un cobre 1061 | sino de hijos un enjambre. 1062 | que más iba a hacer la pobre 1063 | para no morirse de hambre? 1064 | "¡tal vez no te vuelva a ver," 1065 | prienda de mi corazón! 1066 | dios te dé su proteción 1067 | "ya que no me la dio a mí," 1068 | y a mis hijos dende aquí 1069 | les echo mi bendición. 1070 | como hijitos de la cuna 1071 | andarán por ahi sin madre; 1072 | "ya se quedaron sin padre," 1073 | y ansí la suerte los deja 1074 | sin naides que los proteja 1075 | y sin perro que les ladre. 1076 | los pobrecitos tal vez 1077 | "no tengan ande abrigarse," 1078 | "ni ramada ande ganarse," 1079 | "ni rincón ande meterse," 1080 | "ni camisa que ponerse," 1081 | ni poncho con que taparse. 1082 | tal vez los verán sufrir 1083 | sin tenerles compasión; 1084 | "puede que alguna ocasión," 1085 | "aunque los vean tiritando," 1086 | los echen de algún jogón 1087 | pa que no estén estorbando. 1088 | y al verse ansina espantaos 1089 | "como se espanta a los perros," 1090 | "irán los hijos de fierro," 1091 | "con la cola entre las piernas," 1092 | a buscar almas más tiernas 1093 | o esconderse en algún cerro. 1094 | mas también en este juego 1095 | voy a pedir mi bolada; 1096 | "a naides le debo nada," 1097 | ni pido cuartel ni doy: 1098 | y ninguno dende hoy 1099 | ha de llevarme en la armada. 1100 | "yo he sido manso primero," 1101 | y seré gaucho matrero; 1102 | "en mi triste circunstancia," 1103 | "aunque es mi mal tan projundo," 1104 | nací y me he criado en estancia. 1105 | pero ya conozco el mundo. 1106 | "ya les conozco sus mañas," 1107 | le conozco sus cucañas; 1108 | "sé como hacen la partida," 1109 | la enriedan y la manejan; 1110 | deshaceré la madeja 1111 | aunque me cueste la vida. 1112 | y aguante el que no se anime 1113 | a meterse en tanto engorro 1114 | o si no aprétese el gorro 1115 | y para otra tierra emigre; 1116 | pero yo ando como el tigre 1117 | que le roban los cachorros. 1118 | aunque muchos creen que el gaucho 1119 | "tiene alma de reyuno," 1120 | no se encontrará a ninguno 1121 | que no le dueblen las penas; 1122 | mas no debe aflojar uno 1123 | mientras hay sangre en las venas 1124 | de carta de más me vía 1125 | sin saber a donde dirme; 1126 | mas dijeron que era vago 1127 | y entraron a perseguirme. 1128 | "nunca se achican los males," 1129 | "van poco a poco creciendo," 1130 | y ansina me vide pronto 1131 | obligado a andar juyendo. 1132 | no tenía mujer ni rancho 1133 | "y a más, era resertor;" 1134 | no tenía una prenda güena 1135 | ni un peso en el tirador 1136 | a mis hijos infelices 1137 | "pensé volverlos a hallar," 1138 | y andaba de un lao al otro 1139 | sin tener ni qué pitar. 1140 | supe una vez por desgracia 1141 | "que había un baile por allí," 1142 | y medio desesperao 1143 | a ver la milonga fui. 1144 | riunidos al pericón 1145 | "tantos amigos hallé," 1146 | que alegre de verme entre ellos 1147 | esa noche me apedé. 1148 | "como nunca, en la ocasión" 1149 | por peliar me dio la tranca. 1150 | y la emprendí con un negro 1151 | que trujo una negra en ancas. 1152 | "al ver llegar la morena," 1153 | "que no hacía caso de naides," 1154 | le dije con la mamúa: 1155 | va-ca-yendo gente al baile. 1156 | la negra entendió la cosa 1157 | "y no tardó en contestarme," 1158 | mirándome como a un perro: 1159 | más vaca será su madre. 1160 | y dentró al baile muy tiesa 1161 | "con más cola que una zorra," 1162 | haciendo blanquiar los dientes 1163 | lo mesmo que mazamorra. 1164 | !negra linda!- dije yo. 1165 | me gusta- pa la carona; 1166 | y me puse a champurriar 1167 | esta coplita fregona: 1168 | "a los blancos hizo dios," 1169 | "a los mulatos san pedro," 1170 | a los negros hizo el diablo 1171 | para tizón del infierno. 1172 | había estao juntando rabia 1173 | el moreno dende ajuera; 1174 | en lo escuro le brillaban 1175 | los ojos como linterna. 1176 | "lo conocí retobao," 1177 | me acerqué y le dije presto: 1178 | po-r-rudo que un hombre sea 1179 | nunca se enoja por esto. 1180 | corcovió el de los tamangos 1181 | y creyéndose muy fijo: 1182 | "¡más porrudo serás vos," 1183 | "gaucho rotoso!, me dijo." 1184 | y ya se me vino al humo 1185 | "como a buscarme la hebra," 1186 | y un golpe le acomodé 1187 | con el porrón de ginebra. 1188 | ahi nomás pegó el de hollín 1189 | "mas gruñidos que un chanchito," 1190 | y pelando el envenao 1191 | me atropelló dando gritos. 1192 | pegué un brinco y abrí cancha 1193 | "diciéndoles: caballeros," 1194 | dejen venir ese toro. 1195 | solo nací- solo muero. 1196 | "el negro, después del golpe," 1197 | se había el poncho refalao 1198 | y dijo: vas a saber 1199 | si es solo o acompañado. 1200 | "y mientras se arremangó," 1201 | "yo me saqué las espuelas," 1202 | pues malicié que aquel tío 1203 | no era de arriar con las riendas. 1204 | no hay cosa como el peligro 1205 | pa refrescar un mamao; 1206 | hasta la vista se aclara 1207 | por mucho que haiga chupao. 1208 | el negro me atropelló 1209 | como a quererme comer; 1210 | me hizo dos tiros seguidos 1211 | y los dos le abarajé. 1212 | "yo tenía un facón con s," 1213 | que era de lima de acero; 1214 | "le hice un tiro, lo quitó" 1215 | y vino ciego el moreno; 1216 | y en el medio de las aspas 1217 | "un planazo le asenté," 1218 | que lo largué culebriando 1219 | lo mesmo que buscapié. 1220 | le coloriaron las motas 1221 | "con la sangre de la herida," 1222 | y volvió a venir jurioso 1223 | como una tigra parida. 1224 | y ya me hizo relumbrar 1225 | "por los ojos el cuchillo," 1226 | alcanzando con la punta 1227 | a cortarme en un carrillo. 1228 | me hirvió la sangre en las venas 1229 | "y me le afirmé al moreno," 1230 | dándole de punta y hacha 1231 | pa dejar un diablo menos. 1232 | por fin en una topada 1233 | "en el cuchillo lo alcé," 1234 | y como un saco de güesos 1235 | contra un cerco lo largué. 1236 | tiró unas cuantas patadas 1237 | y ya cantó pal carnero: 1238 | nunca me puedo olvidar 1239 | de la agonía de aquel negro. 1240 | en esto la negra vino 1241 | con los ojos como ají 1242 | y empezó la pobre allí 1243 | a bramar como una loba. 1244 | yo quise darle una soba 1245 | "a ver si la hacía callar," 1246 | mas pude reflesionar 1247 | "que era malo en aquel punto," 1248 | y por respeto al dijunto 1249 | no la quise castigar. 1250 | "limpié el facón en los pastos," 1251 | "desaté mi redomón," 1252 | monté despacio y salí 1253 | al tranco pa el cañadón. 1254 | después supe que al finao 1255 | "ni siquiera lo velaron," 1256 | "y retobao en un cuero," 1257 | sin rezarle lo enterraron. 1258 | "y dicen que dende entonces," 1259 | cuando es la noche serena 1260 | suele verse una luz mala 1261 | como de alma que anda en pena. 1262 | "yo tengo intención a veces," 1263 | "para que no pene tanto," 1264 | de sacar de allí los güesos 1265 | y echarlos al camposanto. 1266 | otra vez en un boliche 1267 | estaba haciendo la tarde; 1268 | cayó un gaucho que hacia alarde 1269 | de guapo y peliador; 1270 | a la llegada metió 1271 | "el pingo hasta la ramada," 1272 | y yo sin decirle nada 1273 | me quedé en el mostrador. 1274 | era un terne de aquel pago 1275 | "que naides lo reprendía," 1276 | que sus enriedos tenía 1277 | con el señor comendante; 1278 | "y como era protegido," 1279 | "andaba muy entonao," 1280 | y a cualquier desgraciao 1281 | lo llevaba por delante. 1282 | ¡ah pobre! si él mismo creiba 1283 | que la vida le sobraba; 1284 | ninguno diría que andaba 1285 | aguaitándolo la muerte. 1286 | "pero ansí pasa en el mundo," 1287 | es ansí la triste vida: 1288 | pa todos está escondida 1289 | la güena o la mala suerte. 1290 | se tiró al suelo; al dentrar 1291 | "le dio un empellón a un vasco," 1292 | y me alargó un medio frasco 1293 | diciendo: beba cuñao. 1294 | "por su hermana, contesté." 1295 | que por la mía no hay cuidao. 1296 | "¡ah, gaucho!, me respondió;" 1297 | ¿de que pago será crioyo? 1298 | ¿lo andará buscando el hoyo? 1299 | deberá tener güen cuero; 1300 | pero ande bala este toro 1301 | no bala ningún ternero. 1302 | y ya salimos trenzaos 1303 | "porque el hombre no era lerdo," 1304 | "mas como el tino no pierdo," 1305 | "y soy medio ligerón," 1306 | le dejé mostrando el sebo 1307 | de un revés con el facón. 1308 | y como con la justicia 1309 | "no andaba bien por allí," 1310 | "cuanto pataliar lo vi," 1311 | "y el pulpero pegó el grito," 1312 | ya pa el palenque salí 1313 | como haciéndome chiquito. 1314 | "monté y me encomendé a dios," 1315 | "rumbiando para otro pago," 1316 | que el gaucho que llaman vago 1317 | "no puede tener querencia," 1318 | y ansí de estrago en estrago 1319 | vive llorando la ausencia. 1320 | "él andaba siempre juyendo," 1321 | "siempre pobre y perseguido," 1322 | no tiene cueva ni nido 1323 | como si juera maldito; 1324 | "porque el ser gaucho- ¡barajo!," 1325 | el ser gaucho es un delito. 1326 | es como el patrio de posta; 1327 | "lo larga éste, aquél lo toma," 1328 | nunca se acaba la broma; 1329 | dende chico se parece 1330 | al arbolito que crece 1331 | desamparao en la loma. 1332 | le echan la agua del bautismo 1333 | aquél que nació en la selva; 1334 | "busca madre que te envuelva," 1335 | le dice el fraire y lo larga. 1336 | y dentra a cruzar el mundo 1337 | como burro con la carga. 1338 | y se cría viviendo al viento 1339 | como oveja sin trasquila; 1340 | mientras su padre en las filas 1341 | "anda sirviendo al gobierno," 1342 | "aunque tirite en invierno," 1343 | naides lo ampara ni asila. 1344 | le llaman gaucho mamao 1345 | "si lo pillan divertido," 1346 | y que es mal entretenido 1347 | si en un baile lo sorprienden; 1348 | hace mal si se defiende 1349 | "y si no, se ve- fundido." 1350 | "no tiene hijos ni mujer," 1351 | "ni amigos ni protetores," 1352 | pues todos son sus señores 1353 | sin que ninguno lo ampare: 1354 | "tiene la suerte del güey," 1355 | y ¿donde irá el güey que no are? 1356 | "su casa es el pajonal," 1357 | su guarida es el desierto; 1358 | y si de hambre medio muerto 1359 | "le echa el lazo a algún mamón," 1360 | "lo persiguen como a plaito," 1361 | porque es un gaucho ladrón. 1362 | y si de un golpe por ahi 1363 | "lo dan güelta panza arriba," 1364 | no hay un alma compasiva 1365 | que le rece una oración; 1366 | tal vez como cimarrón 1367 | en una cueva lo tiran. 1368 | él nada gana en la paz 1369 | y es el primero en la guerra; 1370 | "no le perdonan si yerra," 1371 | "que no saben perdonar," 1372 | porque el gaucho en esta tierra 1373 | sólo sirve pa votar. 1374 | "para el son los calabozos," 1375 | "para el las duras prisiones," 1376 | en su boca no hay razones 1377 | aunque la razón le sobre; 1378 | que son campanas de palo 1379 | las razones de los pobres. 1380 | "si uno aguanta, es gaucho bruto;" 1381 | si no aguanta es gaucho malo. 1382 | "¡dele azote, dele palo," 1383 | porque es lo que él necesita! 1384 | de todo el que nació gaucho 1385 | ésta es la suerte maldita. 1386 | "vamos suerte, vamos juntos" 1387 | dende que juntos nacimos; 1388 | y ya que juntos vivimos 1389 | sin podernos dividir- 1390 | yo abriré con mi cuchillo 1391 | el camino pa seguir 1392 | matreriando lo pasaba 1393 | ya a las casas no venía; 1394 | "solía arrimarme de día," 1395 | "mas, lo mesmos que el carancho," 1396 | siempre estaba sobre el rancho 1397 | espiando a la polecía. 1398 | "viva el gaucho que ande mal," 1399 | "como zorro perseguido," 1400 | hasta que al menor descuido 1401 | "se lo atarasquen los perros," 1402 | pues nunca le falta un yerro 1403 | al hombre más alvertido. 1404 | y en esa hora de la tarde 1405 | "en que tuito se adormece," 1406 | que el mundo dentrar parece 1407 | "a vivir en pura calma," 1408 | con las tristezas del alma 1409 | al pajonal enderiece. 1410 | bala el tierno corderito 1411 | "al lao de la blanca oveja," 1412 | y a la vaca que se aleja 1413 | llama el ternero amarrao; 1414 | pero el gaucho desgraciao 1415 | no tiene a quien dar su oveja. 1416 | ansí es que al venir la noche 1417 | "iba a buscar mi guarida," 1418 | pues ande el tigre se anida 1419 | "también el hombre lo pasa," 1420 | y no quería que en las casas 1421 | me rodiara la partida. 1422 | pues aun cuando vengan ellos 1423 | "cumpliendo con su deberes," 1424 | "yo tengo otros pareceres," 1425 | y en esa conduta vivo: 1426 | que no debe un gaucho altivo 1427 | peliar entre las mujeres. 1428 | "y al campo me iba solito," 1429 | "más matrero que el venao," 1430 | como perro abandonao 1431 | "a buscar una tapera," 1432 | o en alguna vizcachera 1433 | pasar la noche tirao. 1434 | sin punto ni rumbo fijo 1435 | "en aquella inmensidá," 1436 | entre tanta escuridá 1437 | anda el gaucho como duende; 1438 | allí jamás lo sorpriende 1439 | "dormido, la autoridá." 1440 | "su esperanza es el coraje," 1441 | "su guardia es la precaución," 1442 | "su pingo es la salvación," 1443 | "y pasa uno en su desvelo," 1444 | sin más amparo que el cielo 1445 | ni otro amigo que el facón. 1446 | ansí me hallaba una noche 1447 | "contemplando las estrellas," 1448 | que le parecen más bellas 1449 | "cuanto uno es más desgraciao," 1450 | y que dios las haiga criao 1451 | para consolarse en ellas. 1452 | les tiene el hombre cariño 1453 | y siempre con alegría 1454 | ve salir las tres marías; 1455 | "que si llueve, cuanto escampa," 1456 | las estrellas son la guía 1457 | que el gaucho tiene en la pampa. 1458 | "aquí no valen dotores," 1459 | sólo vale la esperiencia; 1460 | aquí verían su inocencia 1461 | "ésos que todo lo saben," 1462 | porque esto tiene otra llave 1463 | y el gaucho tiene su cencia. 1464 | es triste en medio del campo 1465 | pasarse noches enteras 1466 | contemplando en sus carreras 1467 | "las estrellas que dios cría," 1468 | sin tener más compañía 1469 | que su delito y las fieras. 1470 | "me encontraba como digo," 1471 | "en aquella soledá," 1472 | "entre tanta escuridá," 1473 | "echando al viento mis quejas," 1474 | cuando el grito del chajá 1475 | me hizo parar las orejas. 1476 | como lumbriz me pegué 1477 | al suelo para escuchar; 1478 | pronto sentí retumbar 1479 | "las pisadas de los fletes," 1480 | y que eran muchos jinetes 1481 | conocí sin vacilar. 1482 | cuando el hombre está en peligro 1483 | no debe tener confianza; 1484 | ansí tendido de panza 1485 | puse toda mi atención 1486 | y ya escuché sin tardanza 1487 | como el ruido de un latón. 1488 | se venían tan calladitos 1489 | que yo me puse en cuidao; 1490 | tal vez me hubieran bombiao 1491 | y ya me venían a buscar; 1492 | "mas no quise disparar," 1493 | que eso es de gaucho morao. 1494 | al punto me santigüé 1495 | y eché de giñebra un taco; 1496 | lo mesmito que el mataco 1497 | me arroyé con el porrón; 1498 | "si han de darme pa tabaco," 1499 | "dije, ésta es güena ocasión." 1500 | "me refalé las espuelas," 1501 | para no peliar con grillos; 1502 | "me arremangué el calzoncillo," 1503 | "y me ajusté bien la faja," 1504 | y en una mata de paja 1505 | probé el filo del cuchillo. 1506 | para tenerlo a la mano 1507 | "el flete en el pasto até," 1508 | "la cincha le acomodé," 1509 | "y, en un trance como aquél," 1510 | haciendo espaldas en él 1511 | quietito los aguardé. 1512 | "cuando cerca los sentí," 1513 | "y que ahi no más se pararon," 1514 | los pelos se me erizaron 1515 | "y, aunque nada vían mis ojos," 1516 | "no se han de morir de antojo," 1517 | "les dije, cuando llegaron." 1518 | yo quise hacerles saber 1519 | que allí se hallaba un varón; 1520 | les conocí la intención 1521 | y solamente por eso 1522 | "es que les gané el tirón," 1523 | sin aguardar voz de preso. 1524 | "vos sos un gaucho matrero," 1525 | "dijo uno, haciéndose el güeno." 1526 | vos mataste un moreno 1527 | "y otro en una pulpería," 1528 | y aquí está la polecía 1529 | que viene a ajustar tus cuentas; 1530 | te va alzar por las cuarenta 1531 | si te resistís hoy día. 1532 | "no me vengan, contesté," 1533 | con relación de dijuntos; 1534 | ésos son otros asuntos; 1535 | "vean si me pueden llevar," 1536 | "que yo no me he de entregar," 1537 | aunque vengan todos juntos. 1538 | pero no aguardaron más 1539 | y se apiaron en montón; 1540 | como a perro cimarrón 1541 | me rodiaron entre tantos; 1542 | "ya me encomendé a los santos," 1543 | y eché mano a mi facón. 1544 | y ya vide el fogonazo 1545 | "de un tiro de garabina," 1546 | mas quiso la suerte indina 1547 | "de aquel maula, que me errase," 1548 | y ahi no más lo levantase 1549 | lo mesmo que una sardina. 1550 | a otro que estaba apurao 1551 | "acomodando una bola," 1552 | le hice una dentrada sola 1553 | "y le hice sentir el fierro," 1554 | y ya salió como el perro 1555 | cuando le pisan la cola. 1556 | era tanta la aflición 1557 | "y la angurria que venían," 1558 | "que tuitos se me venían," 1559 | donde yo los esperaba; 1560 | uno al otro se estorbaba 1561 | y con las ganas no vían. 1562 | dos de ellos que traiban sables 1563 | "más garifos y resueltos," 1564 | en las hilachas envueltos 1565 | "enfrente se me pararon," 1566 | y a un tiempo me atropellaron 1567 | lo mesmo que perros sueltos. 1568 | me fui reculando en falso 1569 | "y el poncho adelante eché," 1570 | y en cuanto le puso el pie 1571 | "uno medio chapetón," 1572 | de pronto le di un tirón 1573 | y de espaldas lo largué 1574 | al verse sin compañero 1575 | el otro se sofrenó; 1576 | "entonces le dentré yo," 1577 | "sin dejarlo resollar," 1578 | pero ya empezó a aflojar 1579 | y a la pu-n-ta disparó. 1580 | uno que en una tacuara 1581 | "había atao una tijera," 1582 | se vino como si juera 1583 | "palenque de atar terneros," 1584 | pero en dos tiros certeros 1585 | salió aullando campo ajuera. 1586 | por suerte en aquel momento 1587 | venía coloriando el alba 1588 | y yo dije: si me salva 1589 | "la virgen en este apuro," 1590 | en adelante le juro 1591 | ser más güeno que una malva. 1592 | pegué un brinco y entre todos 1593 | sin miedo me entreveré; 1594 | hecho ovillo me quedé 1595 | "y ya me cargó una yunta," 1596 | y por el suelo la punta 1597 | de mi facón les jugué. 1598 | el más engolosinao 1599 | se me apió con un hachazo; 1600 | se lo quité con el brazo; 1601 | "de no, me mata los piojos;" 1602 | y antes de que diera un paso 1603 | le eché tierra en los dos ojos. 1604 | y mientras se sacudía 1605 | "refregándose la vista," 1606 | yo me le fui como lista 1607 | "y ahi no más me le afirmé," 1608 | "diciéndole: dios te asista," 1609 | y de un revés lo voltié. 1610 | pero en ese punto mesmo 1611 | sentí que por las costillas 1612 | un sable me hacía cosquillas 1613 | y la sangre me heló; 1614 | dende ese momento yo 1615 | me salí de mis casillas. 1616 | di para atrás unos pasos 1617 | hasta que pude hacer pie; 1618 | por delante me lo eché 1619 | de punta y tajos a un criollo; 1620 | "metió la pata en un hoyo," 1621 | y yo al hoyo lo mandé. 1622 | tal vez en el corazón 1623 | le tocó un santo bendito 1624 | "a un gaucho, que pegó el grito" 1625 | y dijo: ¡cruz no consiente 1626 | que se cometa el delito 1627 | de matar a un valiente! 1628 | "y ahi no más se me aparió," 1629 | dentrándole a la partida; 1630 | yo les hice otra embestida 1631 | pues entre dos era robo; 1632 | y el cruz era como lobo 1633 | que defiende su guarida. 1634 | uno despachó al infierno 1635 | de dos que lo atropellaron; 1636 | "los demás remoliniaron," 1637 | "pues íbamos a la fija," 1638 | y a poco andar dispararon 1639 | lo mesmo que sabandija. 1640 | ahí quedaron largo a largo 1641 | los que estiaron la jeta; 1642 | "otro iba como maleta," 1643 | y cruz de atrás les decía: 1644 | que venga otra polecía 1645 | a llevarlos en carreta. 1646 | "yo junté las osamentas," 1647 | "me hinqué y les recé un bendito," 1648 | hice una cruz de un palito 1649 | y pedí a mi dios clemente 1650 | me perdonara el delito 1651 | de haber muerto tanta gente. 1652 | dejamos amotonaos 1653 | a los pobres que murieron; 1654 | "no sé si los recogieron," 1655 | "porque nos fuimos a un rancho," 1656 | o si tal vez los caranchos 1657 | ahi no más se los comieron. 1658 | lo agarramos mano a mano 1659 | entre los dos al porrón: 1660 | en semejante ocasión 1661 | un trago a cualquiera encanta; 1662 | y cruz no era remolón 1663 | ni pijotiaba garganta. 1664 | calentamos los gargueros 1665 | "y nos largamos muy tiesos," 1666 | siguiendo siempre los besos 1667 | "al pichel, y por mas señas," 1668 | íbamos como cigüeñas 1669 | estirando los pescuezos. 1670 | "yo me voy, le dije, amigo," 1671 | "donde la suerte me lleve," 1672 | "y si es que alguno se atreve," 1673 | "a ponerse en mi camino," 1674 | "yo seguiré mi destino," 1675 | que el hombre hace lo que debe. 1676 | "soy un gaucho desgraciao," 1677 | "no tengo donde ampararme," 1678 | "ni un palo donde rascarme," 1679 | ni un árbol que me cubije: 1680 | pero ni aun esto me aflige 1681 | porque yo sé manejarme. 1682 | "antes de cair al servicio," 1683 | tenia familia y hacienda; 1684 | "cuando volví, ni la prenda" 1685 | me la habían dejao ya. 1686 | dios sabe en lo que vendrá 1687 | a parar esta contienda. 1688 | "amigazo, pa sufrir" 1689 | han nacido los varones; 1690 | estas son las ocasiones 1691 | "de mostrarse un hombre juerte," 1692 | hasta que venga la muerte 1693 | y lo agarre a coscorrones. 1694 | el andar tan despilchao 1695 | ningún mérito me quita; 1696 | sin ser un alma bendita 1697 | me duelo del mal ajeno: 1698 | soy un pastel con relleno 1699 | que parece torta frita. 1700 | tampoco me faltan males 1701 | "y desgracias, le prevengo;" 1702 | "también mis desdichas tengo," 1703 | aunque esto poco me aflige: 1704 | yo sé hacerme el chango rengo 1705 | cuando la cosa lo esige. 1706 | y con algunos ardiles 1707 | "voy viviendo, aunque rotoso;" 1708 | a veces me hago el sarnoso 1709 | "y no tengo ni un granito," 1710 | pero al chifle voy ganoso 1711 | como panzón al maíz frito. 1712 | a mí no me matan penas 1713 | mientras tenga el cuero sano; 1714 | venga el sol en el verano 1715 | y la escarcha en el invierno 1716 | ¿por qué afligirse el cristiano? 1717 | hagámosle cara fiera 1718 | "a los males, compañero," 1719 | porque el zorro más matrero 1720 | suele cair como un chorlito; 1721 | viene por un corderito 1722 | y en la estaca deja el cuero. 1723 | hoy tenemos que sufrir 1724 | "males que no tienen nombre," 1725 | pero esto a nadies lo asombre 1726 | "porque ansina es el pastel," 1727 | y tiene que dar el hombre 1728 | mas güeltas que un carretel. 1729 | yo nunca me he de entregar 1730 | a los brazos de la muerte; 1731 | arrastro mi triste suerte 1732 | "paso a paso y como pueda," 1733 | que donde el débil se queda 1734 | se suele escapar el juerte. 1735 | y ricuerde cada cual 1736 | "lo que cada cual sufrió," 1737 | "que lo que es, amigo, yo," 1738 | hago ansí la cuenta mía: 1739 | ya lo pasado pasó; 1740 | mañana será otro día. 1741 | yo también tuve una pilcha 1742 | "que me enllenó el corazón," 1743 | y si en aquella ocasión 1744 | "alguien me hubiera buscao," 1745 | siguro que me había hallao 1746 | más prendido que un botón. 1747 | en la güeya del querer 1748 | no hay animal que se pierda- 1749 | "las mujeres no son lerdas," 1750 | y todo gaucho es dotor 1751 | si pa cantarle al amor 1752 | tiene que templar las cuerdas. 1753 | ¡quién es de una alma tan dura 1754 | que no quiera una mujer! 1755 | lo alivia en su padecer: 1756 | si no sale calavera 1757 | es la mejor compañera 1758 | que el hombre puede tener. 1759 | "si es güena, no lo abandona" 1760 | "cuando lo ve desgraciao," 1761 | "lo asiste con su cuidao," 1762 | "y con afán cariñoso," 1763 | y usté tal vez ni un rebozo 1764 | ni una pollera le ha dao. 1765 | ¡grandemente lo pasaba 1766 | "con aquella prenda mía," 1767 | viviendo con alegría 1768 | como la mosca en la miel! 1769 | "¡amigo, qué tiempo aquel!" 1770 | "¡la pucha, que la quería!" 1771 | era la águila que a un árbol 1772 | dende las nubes bajó; 1773 | era más linda que el alba 1774 | cuando va rayando el sol; 1775 | era la flor deliciosa 1776 | que entre el trebolar creció. 1777 | "pero, amigo, el comendante" 1778 | "que mandaba la milicia," 1779 | como que no desperdicia 1780 | se fue refalando a casa; 1781 | yo le conocí en la traza 1782 | que el hombre traiba malicia. 1783 | "él me daba voz de amigo," 1784 | pero no le tenía fe; 1785 | "era el jefe, y ya se ve," 1786 | no podía competir yo; 1787 | en mi rancho se pegó 1788 | lo mesmo que un saguaipé. 1789 | "a poco andar, conocí" 1790 | "que ya me había desbancao," 1791 | "y él siempre muy entonao," 1792 | "aunque sin darme ni un cobre," 1793 | me tenía de lao a lao 1794 | como encomienda de pobre. 1795 | "a cada rato, de chasque" 1796 | me hacía dir a gran distancia; 1797 | "ya me mandaba a una estancia," 1798 | "ya al pueblo, ya a la frontera;" 1799 | pero él en la comendancia 1800 | no ponía los pies siquiera. 1801 | es triste a no poder más 1802 | "el hombre en su padecer," 1803 | si no tiene una mujer 1804 | que lo ampare y lo consuele: 1805 | mas pa que otro se la pele 1806 | lo mejor es no tener. 1807 | no me gusta que otro gallo 1808 | le cacaree a mi gallina; 1809 | "yo andaba ya con la espina," 1810 | hasta que en una ocasión 1811 | lo pille junto al jogón 1812 | abrazándome a la china. 1813 | tenía el viejito una cara 1814 | "de ternero mal lamido," 1815 | y al verle tan atrevido 1816 | le dije: ¡que le aproveche!- 1817 | que había sido pa el amor 1818 | como gaucho pa la leche. 1819 | peló la espalda y se vino 1820 | "como a quererme ensartar," 1821 | pero yo sin tutubiar 1822 | le volví al punto a decir: 1823 | "¡cuidado!, no te vas a per-tigo;" 1824 | poné cuarta pa salir. 1825 | "un puntazo me largó," 1826 | "pero el cuerpo le saqué," 1827 | "y en cuanto se lo quité," 1828 | "para no matar un viejo," 1829 | "con cuidado, medio de lejos" 1830 | un palazo le asenté. 1831 | y como nunca al que manda 1832 | "le falta algún adulón," 1833 | uno que en esa ocasión 1834 | "se encontraba allí presente," 1835 | vino apretando los dientes 1836 | como perrito mamón. 1837 | me hizo un tiro de revuélver 1838 | que el hombre creyó siguro; 1839 | era confiado y le juro 1840 | "que cerquita se arrimaba," 1841 | "pero, siempre en un apuro" 1842 | se desentumen mis tabas. 1843 | él me siguió menudiando 1844 | "mas sin poderme acertar," 1845 | "y yo, dele culebriar," 1846 | hasta que al fin le dentré 1847 | y ahi no más lo despaché 1848 | sin dejarlo resollar. 1849 | dentré a campiar en seguida 1850 | al viejito enamorao- 1851 | el pobre se había ganao 1852 | en un noque de lejía. 1853 | ¡quién sabe cómo estaría 1854 | del susto que había llevao! 1855 | ¡es zonzo el cristiano macho 1856 | cuando el amor lo domina! 1857 | "él la miraba a la indina," 1858 | y una cosa tan jedionda 1859 | "sentí yo, que ni en la fonda" 1860 | he visto tal jedentina 1861 | y le dije: pa su agüela 1862 | han de ser esas perdices. 1863 | "yo me tapé las narices," 1864 | "y me salí esternudando," 1865 | y el viejo quedó olfatiando 1866 | como chico con lumbrices. 1867 | "cuando la mula recula," 1868 | "señal que quiere cociar," 1869 | ansí se suele portar 1870 | aunque ella lo disimula; 1871 | recula como la mula 1872 | "la mujer, para olvidar." 1873 | alcé mis ponchos y mis prendas 1874 | y me largué a padecer 1875 | por culpa de una mujer 1876 | que quiso engañar a dos; 1877 | "al rancho le dije adiós," 1878 | para nunca más volver. 1879 | "las mujeres, dende entonces," 1880 | conocí a todas en una; 1881 | ya no he de probar fortuna 1882 | con carta tan conocida: 1883 | "mujer y perra parida," 1884 | ¡no se me acerca ninguna!. 1885 | a otros les brotan las coplas 1886 | como agua de manantial; 1887 | pues a mí me pasa igual; 1888 | "aunque las mías nada valen," 1889 | de la boca se me salen 1890 | como ovejas de corral. 1891 | "que en puertiando la primera," 1892 | "ya la siguen los demás," 1893 | y en montones las de atrás 1894 | "contra los palos se estrellan," 1895 | y saltan y se atropellan 1896 | sin que se corten jamás. 1897 | y aunque yo por mi inorancia 1898 | "con gran trabajo me esplico," 1899 | "cuando llego a abrir el pico," 1900 | "tengaló por cosa cierta," 1901 | sale un verso y en la puerta 1902 | ya asoma el otro el hocico. 1903 | y emprésteme su atención; 1904 | me oirá relatar las penas 1905 | de que traigo la alma llena; 1906 | "porque en toda circustancia," 1907 | paga el gaucho su inorancia 1908 | con la sangre de sus venas. 1909 | después de aquella desgracia 1910 | me refugié en los pajales; 1911 | anduve entre los cardales 1912 | como bicho sin guarida; 1913 | "pero, amigo, es esa vida" 1914 | como vida de animales. 1915 | y son tantas las miserias 1916 | "en que me he salido ver," 1917 | que con tanto padecer 1918 | "y sufrir tanta aflición," 1919 | malicio que he de tener 1920 | un callo en el corazón. 1921 | ansí andaba como guacho 1922 | cuando pasa el temporal; 1923 | supe una vez por mi mal 1924 | "de una milonga que había," 1925 | y ya pa la pulpería 1926 | enderecé mi bagual. 1927 | era la casa del baile 1928 | "un rancho de mala muerte," 1929 | y se enllenó de tal suerte 1930 | que andábamos a empujones: 1931 | nunca faltan encontrones 1932 | cuando un pobre se divierte. 1933 | yo tenía unas medias botas 1934 | con tamaños verdugones; 1935 | me pusieron los talones 1936 | con crestas como gallos: 1937 | ¡si viera mis afliciones 1938 | pensando yo que eran callos! 1939 | con gato y con fandanguillo 1940 | "había empezado el changango," 1941 | y para ver el fandango 1942 | "me colé haciendomé bola," 1943 | "mas metió el diablo la cola," 1944 | y todo se volvió pango. 1945 | había sido el guitarrero 1946 | un gaucho duro de boca: 1947 | yo tengo paciencia poca 1948 | pa aguantar cuando no debo; 1949 | "a ninguno me le atrevo," 1950 | pero me halla el que me toca. 1951 | a bailar un pericón 1952 | "con una moza salí," 1953 | y cuanto me vido allí 1954 | sin duda me conoció; 1955 | y estas coplitas cantó 1956 | como por raírse de mí: 1957 | las mujeres son todas 1958 | como las mulas; 1959 | "yo no digo que todas," 1960 | pero hay algunas 1961 | que a las aves que vuelan 1962 | les sacan plumas. 1963 | hay gauchos que presumen 1964 | de tener damas; 1965 | "no digo que presumen," 1966 | "pero se alaban," 1967 | y a lo mejor los dejan 1968 | tocando tablas. 1969 | "se secretiaron las hembras," 1970 | y yo ya me encocoré; 1971 | volié la anca y le grité: 1972 | ¡dejá de cantar- chicharra! 1973 | y de un tajo a la guitarra 1974 | tuitas las cuerdas corté. 1975 | al punto salió de adentro 1976 | un gringo con un jusil; 1977 | "pero nunca he sido vil," 1978 | poco el peligro me espanta; 1979 | yo me refalé la manta 1980 | y la eché sobre el candil. 1981 | gané en seguida la puerta 1982 | gritando: ¡nadies me ataje! 1983 | "y alborotado el hembraje," 1984 | "lo que todo quedo escuro," 1985 | empezó a verse en apuro 1986 | mesturao con el gauchaje. 1987 | el primero que salió 1988 | "fue el cantor, y se me vino;" 1989 | pero yo no pierdo el tino 1990 | "aunque haiga tomao un trago," 1991 | y hay algunos por mi pago 1992 | que me tienen por ladino. 1993 | no ha de haber achocao otro: 1994 | le salió cara la broma; 1995 | a su amigo cuando toma 1996 | "se le despeja el sentido," 1997 | y el pobrecito había sido 1998 | como carne de paloma. 1999 | para prestar un socorro 2000 | las mujeres no son lerdas: 2001 | antes que la sangre pierda 2002 | lo arrimaron a unas pipas; 2003 | ahi lo dejé con las tripas 2004 | como pa que hiciera cuerdas. 2005 | monté y me largué a los campos 2006 | "más libre que el pensamiento," 2007 | como las nubes al viento 2008 | "a vivir sin paradero," 2009 | que no tiene el que es matrero 2010 | "nido, ni rancho, ni asiento." 2011 | no hay juerza contra el destino 2012 | "que le ha señalao el cielo," 2013 | "y aunque no tenga consuelo," 2014 | ¡aguante el que está en trabajo! 2015 | "¡nadies se rasca pa abajo," 2016 | ni se lonjea contra el pelo! 2017 | con el gaucho desgraciao 2018 | no hay uno que no se entone 2019 | ¡la menor falta lo espone 2020 | a andar con los avestruces 2021 | faltan otros con más luces 2022 | y siempre hay quien los perdone. 2023 | yo no sé qué tantos meses 2024 | esta vida me duró; 2025 | a veces nos obligó 2026 | la miseria a comer potro: 2027 | me había acompañao con otros 2028 | tan desgraciaos como yo 2029 | mas ¿para qué platicar 2030 | "sobre esos males, canejos?" 2031 | "nace el gaucho y se hace viejo," 2032 | "sin que mejore su suerte," 2033 | hasta que por ahi la muerte 2034 | sale a cobrarle el pellejo. 2035 | pero como no hay desgracia 2036 | "que no acabe alguna vez," 2037 | me aconteció que después 2038 | "de sufrir tanto rigor," 2039 | "un amigo, por favor," 2040 | me compuso con el juez. 2041 | le alvertiré que en mi pago 2042 | ya no va quedando un criollo: 2043 | "se los ha tragao el hoyo," 2044 | o juido o muerto en la guerra; 2045 | "porque, amigo, en esta tierra" 2046 | nunca se acaba el embrollo. 2047 | colijo que jué por eso 2048 | "que me llamó el juez un día," 2049 | y me dijo que quería 2050 | "hacerme a su lao venir," 2051 | y que dentrase a servir 2052 | de soldao de polecía. 2053 | y me largó una proclama 2054 | tratándome de valiente; 2055 | "que yo era un hombre decente," 2056 | y que dende aquel momento 2057 | me nombraba de sargento 2058 | pa que mandara la gente. 2059 | "ansí estuve en la partida," 2060 | pero ¿qué había de mandar? 2061 | anoche al irlo a tomar 2062 | "vide güena coyontura," 2063 | y a mí no me gusta andar 2064 | con la lata a la cintura. 2065 | "ya conoce, pues, quién soy;" 2066 | tenga confianza conmigo: 2067 | "cruz le dio mano de amigo," 2068 | y no lo ha de abandonar; 2069 | juntos podemos buscar 2070 | pa los dos un mesmo abrigo. 2071 | andaremos de matreros 2072 | si es preciso pa salvar; 2073 | nunca nos ha de faltar 2074 | "ni un güen pingo pa juir," 2075 | "ni un pajal ande dormir," 2076 | ni un matambre que ensartar. 2077 | y cuando sin trapo alguno 2078 | "nos haiga el tiempo dejao," 2079 | yo le pediré emprestao 2080 | "el cuero a cualquiera lobo," 2081 | "y hago un poncho, si lo sobo," 2082 | mejor que poncho engomao. 2083 | para mí la cola es pecho 2084 | y el espinazo es cadera 2085 | hago mi nido ande quiera 2086 | y de lo que encuentro como; 2087 | me echo tierra sobre el lomo 2088 | y me apeo en cualquier tranquera. 2089 | "y dejo rodar la bola," 2090 | que algún día se ha de parar- 2091 | tiene el gaucho que aguantar 2092 | "hasta que lo trague el hoyo," 2093 | o hasta que venga algún criollo 2094 | en esta tierra a mandar. 2095 | todos se güelven proyetos 2096 | "de colonias y carriles," 2097 | y tirar la plata a miles 2098 | "en los gringos enganchaos," 2099 | mientras al pobre soldao 2100 | "le pelan la cucha- ¡ah, viles!" 2101 | pero si siguen las cosas 2102 | "como van hasta el presente," 2103 | puede ser que redepente 2104 | "veamos el campo disierto," 2105 | y blanquiando solamente 2106 | los güesos de los que han muerto. 2107 | lo miran al pobre gaucho 2108 | como carne de cogote: 2109 | lo tratan al estricote 2110 | "y si ansí las cosas andan," 2111 | "porque quieren los que mandan," 2112 | aguantemos los azotes. 2113 | "¡pucha! si usté los oyera," 2114 | como yo en una ocasión 2115 | tuita la conversación 2116 | que con otro tuvo el juez; 2117 | le asiguro que esa vez 2118 | se me achicó el corazón. 2119 | hablaban de hacerse ricos 2120 | "con campos en la fronteras," 2121 | "de sacarla más ajuera," 2122 | donde había campos baldidos 2123 | y llevar de los partidos 2124 | gente que la defendiera. 2125 | hace mucho que sufrimos 2126 | la suerte reculativa 2127 | trabaja el gaucho y no arriba 2128 | "porque a lo mejor del caso," 2129 | lo levantan de un sogazo 2130 | sin dejarle ni saliva. 2131 | de los males que sufrimos 2132 | "hablan mucho los puebleros," 2133 | pero hacen como los teros 2134 | para esconder sus niditos: 2135 | en un lao pegan los gritos 2136 | y en otro tienen los güevos. 2137 | y se hacen los que no aciertan 2138 | a dar con la coyontura: 2139 | mientras al gaucho lo apura 2140 | "con rigor la autoridá," 2141 | ellos a la enfermedá 2142 | le están errando la cura. 2143 | xiii. a los indios me refalo 2144 | ya veo que somos los dos 2145 | astillas del mesmo palo: 2146 | yo paso por gaucho malo 2147 | y usté anda del mesmo modo; 2148 | "y yo, pa acabarlo todo," 2149 | a los indios me refalo. 2150 | pido perdón a mi dios 2151 | "que tantos bienes me hizo," 2152 | pero dende que es preciso 2153 | "que viva entre los infeles," 2154 | yo seré cruel con los crueles: 2155 | ansí mi suerte lo quiso. 2156 | "dios formó lindas las flores," 2157 | delicadas como son; 2158 | le dio toda perfeción 2159 | "y cuanto él era capaz," 2160 | pero al hombre le dio más 2161 | cuando le dio el corazón. 2162 | "le dio claridá a la luz," 2163 | "juerza en su carrera al viento," 2164 | le dio vida y movimiento 2165 | dende la águila al gusano; 2166 | pero más le dio al cristiano 2167 | al darle el entendimiento. 2168 | "y aunque a las aves les dio," 2169 | "con otras cosas que inoro," 2170 | esos piquitos como oro 2171 | y un plumaje como tabla 2172 | le dio al hombre más tesoro 2173 | al darle una lengua que habla. 2174 | y dende que dio a las fieras 2175 | "esa juria tan inmensa," 2176 | que no hay poder que las venza 2177 | "ni nada que las asombre," 2178 | ¿qué menos le daría al hombre 2179 | que el valor pa su defensa? 2180 | pero tantos bienes juntos 2181 | "al darle, malicio yo" 2182 | que en sus adentros pensó 2183 | que el hombre los precisaba 2184 | que los bienes igualaba 2185 | con las penas que le dio. 2186 | y yo empujao por las mías 2187 | quiero salir de este infierno: 2188 | ya no soy pichón muy tierno 2189 | "y sé manejar la lanza," 2190 | y hasta los indios no alcanza 2191 | la facultá de gobierno 2192 | yo sé que allá los caciques 2193 | "amparan a los cristianos," 2194 | y que los tratan de 2195 | cuando se van por su gusto. 2196 | ¡a qué andar pasando sustos-! 2197 | alcemos el poncho y vamos. 2198 | "en la cruzada hay peligros," 2199 | pero ni aun esto me aterra: 2200 | yo ruedo sobre la tierra 2201 | arrastrao por mi destino; 2202 | y si erramos el camino- 2203 | no es el primero que lo erra. 2204 | "si hemos de salvar o no," 2205 | de esto naides nos responde; 2206 | derecho ande el sol se esconde 2207 | tierra adentro hay que tirar; 2208 | algún día hemos de llegar- 2209 | después sabremos a dónde. 2210 | no hemos de perder el rumbo: 2211 | los dos somos güena yunta. 2212 | el que es gaucho ve ande apunta 2213 | aunque inora ande se encuentra; 2214 | pa el lao en que el sol se dentra 2215 | dueblan los pastos la punta. 2216 | "de hambre no pereceremos," 2217 | "pues, sigún otros me han dicho," 2218 | en los campos se hallan bichos 2219 | de los que uno necesita- 2220 | "gamas, matacos, mulitas" 2221 | avestruces y quirquinchos. 2222 | cuando se anda en el desierto 2223 | se come uno hasta las colas; 2224 | lo han cruzao mujeres solas 2225 | "llegando al fin con salú," 2226 | y ha de ser gaucho el ñandú 2227 | que se escape de mis bolas. 2228 | tampoco a la sé le temo; 2229 | yo la aguanto muy contento; 2230 | busco agua olfatiando el viento 2231 | "y, dende que no soy manco," 2232 | ande hay duraznillo blanco 2233 | "cavo, y la saco al momento." 2234 | allá habrá siguridá 2235 | ya que aquí no la tenemos; 2236 | menos males pasaremos 2237 | y ha de haber grande alegría 2238 | el día que nos descolguemos 2239 | en alguna toldería. 2240 | "fabricaremos un toldo," 2241 | "como lo hacen tantos otros," 2242 | "con unos cueros de potro," 2243 | que sea sala y sea cocina. 2244 | ¡tal vez no falte una china 2245 | que se apiade de nosotros! 2246 | "allá no hay que trabajar," 2247 | vive uno como un señor; 2248 | "de cuando en cuando un malón," 2249 | "y si de él sale con vida," 2250 | lo pasa echao panza arriba 2251 | mirando dar güelta el sol 2252 | y ya que a juerza de golpes 2253 | la suerte nos dejó aflús 2254 | puede que allá veamos luz 2255 | y se acaben nuestras penas: 2256 | todas las tierras son güenas; 2257 | "vamonós, amigo cruz." 2258 | "el que maneja las bolas," 2259 | el que sabe echar un pial 2260 | y sentársele a un bagual 2261 | "sin miedo de que lo baje," 2262 | entre los mesmos salvajes 2263 | no puede pasarlo mal. 2264 | el amor como la guerra 2265 | lo hace el criollo con canciones; 2266 | a más de eso en los malones 2267 | podemos aviarnos de algo; 2268 | "en fin amigo, yo salgo" 2269 | de estas pelegrinaciones. 2270 | en este punto el cantor 2271 | "buscó un porrón pa consuelo," 2272 | "echó un trago como un cielo," 2273 | dando fin a su argumento; 2274 | y de un golpe el instrumento 2275 | lo hizo astillas contra el suelo. 2276 | "ruempo, dijo, la guitarra," 2277 | pa no volverme a tentar; 2278 | "ninguno la ha de tocar," 2279 | por siguro tengaló; 2280 | pues naides ha de cantar 2281 | cuando este gaucho cantó. 2282 | y daré fin a mis coplas 2283 | con aire de relación; 2284 | nunca falta un preguntón 2285 | "más curioso que mujer," 2286 | y tal vez quiera saber 2287 | como jué la conclusión. 2288 | cruz y fierro de una estancia 2289 | una tropilla se arriaron; 2290 | por delante se la echaron 2291 | "como criollos entendidos," 2292 | y pronto sin ser sentidos 2293 | por la frontera cruzaron. 2294 | "y cuando la habían pasao," 2295 | una madrugada clara 2296 | le dijo cruz que mirara 2297 | "las últimas poblaciones," 2298 | y a fierro dos lagrimones 2299 | le rodaron por la cara. 2300 | y siguiendo el fiel del rumbo 2301 | "se entraron en el desierto," 2302 | no sé si los habrán muerto 2303 | "en alguna correría," 2304 | pero espero que algún día 2305 | sabré de ellos algo cierto. 2306 | y ya con estas noticias 2307 | mi relación acabé; 2308 | "por ser ciertas las conté," 2309 | todas la desgracias dichas: 2310 | es un telar de desdichas 2311 | cada gaucho que usté ve. 2312 | pero ponga su esperanza 2313 | en el dios que lo formó; 2314 | y aquí me despido yo 2315 | que he relatao a mi modo 2316 | "males que conocen todos," 2317 | pero que naides contó. 2318 | -------------------------------------------------------------------------------- /datasets/martin_fierro_v2.csv: -------------------------------------------------------------------------------- 1 | samples 2 | "Aquí me pongo a cantar Al compás de la vigüela, Que el hombre que lo desvela Una pena estraordinaria Como la ave solitaria Con el cantar se consuela." 3 | Pido a los Santos del Cielo Que ayuden mi pensamiento; Les pido en este momento Que voy a cantar mi historia Me refresquen la memoria Y aclaren mi entendimiento. 4 | "Vengan Santos milagrosos, Vengan todos en mi ayuda, Que la lengua se me añuda Y se me turba la vista; Pido a Dios que me asista En una ocasión tan ruda." 5 | "Yo he visto muchos cantores, Con famas bien obtenidas, Y que después de adquiridas No las quieren sustentar Parece que sin largar se cansaron en partidas" 6 | "Mas ande otro criollo pasa Martín Fierro ha de pasar; nada lo hace recular ni los fantasmas lo espantan, y dende que todos cantan yo también quiero cantar." 7 | "Cantando me he de morir Cantando me han de enterrar, Y cantando he de llegar Al pie del eterno padre: Dende el vientre de mi madre Vine a este mundo a cantar." 8 | "Que no se trabe mi lengua Ni me falte la palabra: El cantar mi gloria labra Y poniéndome a cantar, Cantando me han de encontrar Aunque la tierra se abra." 9 | "Me siento en el plan de un bajo A cantar un argumento: Como si soplara el viento Hago tiritar los pastos; Con oros, copas y bastos Juega allí mi pensamiento." 10 | "Yo no soy cantor letrao, Mas si me pongo a cantar No tengo cuándo acabar Y me envejezco cantando: Las coplas me van brotando Como agua de manantial." 11 | "Con la guitarra en la mano Ni las moscas se me arriman, Naides me pone el pie encima, Y cuando el pecho se entona, Hago gemir a la prima Y llorar a la bordona." 12 | "Yo soy toro en mi rodeo Y torazo en rodeo ajeno; Siempre me tuve por güeno Y si me quieren probar, Salgan otros a cantar Y veremos quién es menos." 13 | "No me hago al lao de la güeya Aunque vengan degollando, Con los blandos yo soy blando Y soy duro con los duros, Y ninguno en un apuro Me ha visto andar tutubiando." 14 | "En el peligro, ¡qué Cristos! El corazón se me enancha, Pues toda la tierra es cancha, Y de eso naides se asombre: El que se tiene por hombre Ande quiere hace pata ancha." 15 | "Soy gaucho, y entiendaló Como mi lengua lo esplica: Para mí la tierra es chica Y pudiera ser mayor; Ni la víbora me pica Ni quema mi frente el sol" 16 | Nací como nace el peje En el fondo de la mar; Naides me puede quitar Aquello que Dios me dio Lo que al mundo truje yo Del mundo lo he de llevar. 17 | "Mi gloria es vivir tan libre Como el pájaro del cielo: No hago nido en este suelo Ande hay tanto que sufrir, Y naides me ha de seguir Cuando yo remuento el vuelo." 18 | "Yo no tengo en el amor Quien me venga con querellas; Como esas aves tan bellas Que saltan de rama en rama, Yo hago en el trébol mi cama, Y me cubren las estrellas." 19 | "Y sepan cuantos escuchan De mis penas el relato, Que nunca peleo ni mato Sino por necesidá, Y que a tanta alversidá Sólo me arrojó el mal trato" 20 | "Y atiendan la relación que hace un gaucho perseguido, que padre y marido ha sido empeñoso y diligente, y sin embargo la gente lo tiene por un bandido" 21 | "Ninguno me hable de penas, porque yo penado vivo, y naides se muestre altivo aunque en el estribo esté: que suele quedarse a pie el gaucho mas alvertido." 22 | "Junta esperencia en la vida hasta pa dar y prestar quien la tiene que pasar entre sufrimiento y llanto, porque nada enseña tanto como el sufrir y el llorar." 23 | "Viene el hombre ciego al mundo, cuartiándolo la esperanza, y a poco andar ya lo alcanzan las desgracias a empujones, ¡la pucha, que trae liciones el tiempo con sus mudanzas!" 24 | Yo he conocido esta tierra en que el paisano vivía y su ranchito tenía y sus hijos y mujer... era una delicia el ver como pasaba sus días. 25 | "Entonces... cuando el lucero brillaba en el cielo santo, y los gallos con su canto nos decían que el día llegaba, a la cocina rumbiaba el gaucho... que un encanto." 26 | "Y sentao junto al jogón a esperar que venga el día, al cimarrón le prendía hasta ponerse rechoncho, mientras su china dormía tapadita con su poncho." 27 | "Y apenas la madrugada empezaba coloriar, los pájaros a cantar, y las gallinas a apiarse, era cosa de largarse cada cual a trabajar." 28 | "Este se ata las espuelas, se sale el otro cantando, uno busca un pellón blando, este un lazo, otro un rebenque, y los pingos relinchando los llaman dende el palenque." 29 | "El que era pion domador enderezaba al corral, ande estaba el animal bufidos que se las pela... y más malo que su agüela, se hacia astillas el bagual." 30 | "Y allí el gaucho inteligente, en cuanto el potro enriendó, los cueros le acomodó y se le sentó en seguida, que el hombre muestra en la vida la astucia que Dios le dio." 31 | "Y en las playas corcoviando pedazos se hacía el sotreta mientras él por las paletas le jugaba las lloronas, y al ruido de las caronas salía haciendo gambetas." 32 | "¡Ah, tiempos!... ¡Si era un orgullo ver jinetear un paisano! Cuando era gaucho baquiano, aunque el potro se boliase, no había uno que no parese con el cabresto en la mano." 33 | "Y mientras domaban unos, otros al campo salían y la hacienda recogían, las manadas repuntaban, y ansí sin sentir pasaban entretenidos el día." 34 | "Y verlos al cair la tarde en la cocina riunidos, con el juego bien prendido y mil cosas que contar, platicar muy divertidos hasta después de cenar." 35 | "Y con el buche bien lleno era cosa superior irse en brazos del amor a dormir como la gente, pa empezar el día siguiente las fainas del día anterior." 36 | Ricuerdo ¡qué maravilla! Cómo andaba la gauchada siempre alegre y bien montada y dispuesta pa el trabajo... pero hoy en día... ¡barajo! No se la ve de aporriada. 37 | "El gaucho más infeliz tenía tropilla de un pelo, no le faltaba un consuelo y andaba la gente lista... teniendo al campo la vista, sólo vía hacienda y cielo." 38 | "Cuando llegaban las yerras, ¡cosa que daba calor! Tanto gaucho pialador y tironiador sin yel. ¡Ah, tiempos... pero si en él se ha visto tanto primor!" 39 | "Aquello no era trabajo, mas bien era una junción, y después de un güen tirón en que uno se daba mana, pa darle un trago de cana solía llamarlo el patrón." 40 | "Pues vivía la mamajuana siempre bajo la carreta, y aquel que no era chancleta, en cuanto el goyete vía, sin miedo se le prendía como güérfano a la teta." 41 | "¡Y qué jugadas se armaban cuando estábamos riunidos! Siempre íbamos prevenidos, pues en tales ocasiones a ayudarle a los piones caiban muchos comedidos." 42 | "Eran los días del apuro y alboroto pa el hembraje, pa preparar los potajes y osequiar bien a la gente, y así, pues, muy grandemente, pasaba siempre el gauchaje." 43 | "Vení, a la carne con cuero, la sabrosa carbonada, mazamorra pien pisada, los pasteles y el güen vino... pero ha querido el destino que todo aquello acabara." 44 | "Estaba el gaucho en su pago con toda siguridá, pero aura... ¡barbaridá!, La cosa anda tan fruncida, que gasta el pobre la vida en juir de la autoridá." 45 | "Pues si usté pisa en su rancho y si el alcalde lo sabe, lo caza lo mesmo que ave aunque su mujer aborte... ¡no hay tiempo que no se acabe ni tiento que no se corte!." 46 | "Y al punto dese por muerto si el alcalde lo bolea, pues ahí nomás se le apea con una felpa de palos; Y después dicen que es malo el gaucho si los pelea." 47 | "Y el lomo le hinchan a golpes, y le rompen la cabeza, y luego con ligereza, ansí lastimao y todo, lo amarran codo a codo y pa el cepo lo enderiezan." 48 | "Áhi comienzan sus desgracias, áhi principia el pericón, porque ya no hay salvación, y que usté quiera o no quiera, lo mandan a la frontera o lo echan a un batallón." 49 | "Ansí empezaron mis males lo mesmo que los de tantos; si gustan... en otros cantos les diré lo que he sufrido, después que uno está... perdido no lo salvan ni los santos." 50 | "tuve en mi pago en un tiempo hijos, hacienda y mujer, pero empecé a padecer, me echaron a la frontera, ¡y qué iba a hallar al volver! Tan sólo hallé la tapera." 51 | "Sosegao vivía en mi rancho como el pájaro en su nido, allí mis hijos queridos iban creciendo a mi lao... sólo queda al desgraciao lamentar el bien perdido." 52 | "Mi gala en las pulperías era, en habiendo más gente, ponerme medio caliente, pues cuando puntiao me encuentro me salen coplas de adentro como agua de la virtiente." 53 | "Cantando estaba una vez en una gran diversión, y aprovecho la ocasión como quiso el juez de paz... se presentó, y ahi nomás hizo arriada en montón." 54 | "Juyeron los más matreros y lograron escapar: yo no quise disparar, soy manso y no había porqué, muy tranquilo me quedé y ansí me dejé agarrar" 55 | "allí un gringo con un órgano y una mona que bailaba, haciéndonos rair estaba, cuanto le tocó el arreo, ¡tan grande el gringo y tan feo, lo viera cómo lloraba!." 56 | "Hasta un inglés zanjiador que decía en la última guerra que él era de incalaperra y que no quería servir, también tuvo que juir a guarecerse en la sierra." 57 | "Ni los mirones salvaron de esa arriada de mi flor, fue acoyarao el cantor con el gringo de la mona, a uno solo, por favor, logró salvar la patrona." 58 | "Formaron un contingente con los que del baile arriaron, con otros nos mesturaron, que habían agarrao también, las cosas que aquí se ven ni los diablos las pensaron." 59 | "A mí el juez me tomó entre ojos en la ultima votación: me le había hecho el remolón y no me arrimé ese día, y él dijo que yo servía a los de la esposición." 60 | "Y ansí sufrí ese castigo tal vez por culpas ajenas, que sean malas o sean güenas las listas, siempre me escondo: yo soy un gaucho redondo y esas cosas no me enllenan." 61 | "Al mandarnos nos hicieron más promesas que a un altar, el juez nos jue a proclamar y nos dijo muchas veces: muchachos, a los seis meses los van a ir a relevar." 62 | Yo llevé un moro de número ¡sobresaliente el matucho! Con él gané en ayacucho más plata que agua bendita: siempre el gaucho necesita un pingo pa fiarle un pucho. 63 | "Y cargué sin dar mas güeltas con las prendas que tenía: jergas, ponchos, todo cuanto había en casa, tuito lo alcé: a mi china la dejé medio desnuda ese día." 64 | "No me falta una guasca, esa ocasión eché el resto, bozal, maniador, cabresto, lazo, bolas y manea... ¡el que hoy tan pobre me vea tal vez no creerá todo esto!." 65 | "Ansí en mi moro, escarciando, enderecé a la frontera. ¡Aparcero si usté viera lo que se llama cantón!... Ni envidia tengo al ratón en aquella ratonera." 66 | "De los pobres que allí había a ninguno lo largaron, los más viejos rezongaron, pero a uno que se quejó en seguida lo estaquiaron, y la cosa se acabó." 67 | "En la lista de la tarde el jefe nos cantó el punto diciendo: quinientos juntos llevará el que se resierte; lo haremos pitar del juerte, mas bien dese por dijunto." 68 | "A naides le dieron armas, pues toditas las que había el coronel las tenía, sigún dijo esa ocasión, pa repartirlas el día en que hubiera una invasión." 69 | "Al principio nos dejaron de haraganes criando sebo, pero después... no me atrevo a decir lo que pasaba... ¡barajo!... Si nos trataban como se trata a malevos." 70 | "Porque todo era jugarle por los lomos con la espada, y aunque usté no hiciera nada, lo mesmito que en palermo, le daban cada cepiada que lo dejaban enfermo." 71 | "¡Y qué indios, ni qué servicio; si allí no había ni cuartel! Nos mandaba el coronel a trabajar en sus chacras, y dejábamos las vacas que las llevara el infiel." 72 | "Yo primero sembré trigo y después hice un corral, corté adobe pa un tapial, hice un quincho, corté paja... ¡la pucha que se trabaja sin que le larguen un rial!." 73 | "Y es lo pior de aquel enriedo que si uno anda hinchando el lomo se le apean como un plomo... ¡quién aguanta aquel infierno! si eso es servir al gobierno, a mí no me gusta el cómo." 74 | "Más de un año nos tuvieron en esos trabajos duros; y los indios, le asiguro dentraban cuando querían: como no los perseguían, siempre andaban sin apuro." 75 | "A veces decía al volver del campo la descubierta que estuviéramos alerta, que andaba adentro la indiada, porque había una rastrillada o estaba una yegua muerta." 76 | "Recién entonces salía la orden de hacer la riunión, y caíbamos al cantón en pelos y hasta enancaos, sin armas, cuatro pelaos que íbamos a hacer jabón." 77 | "Ahi empezaba el afán -se entiende, de puro vicio- de enseñarle el ejercicio a tanto gaucho recluta, con un estrutor... ¡qué... Bruta! que nunca sabía su oficio." 78 | "Daban entonces las armas pa defender los cantones, que eran lanzas y latones con ataduras de tiento... las de juego no las cuento porque no había municiones." 79 | Y un sargento chamuscao me contó que las tenían pero que ellos la vendían para cazar avestruces; y así andaban noche y día dele bala a los ñanduces. 80 | "Y cuando se iban los indios con lo que habían manotiao, salíamos muy apuraos a perseguirlos de atrás; si no se llevaban más es porque no habían hallao." 81 | "Allí sí, se ven desgracias y lágrimas y afliciones; naides le pida perdones al indio: pues donde dentra, roba y mata cuanto encuentra y quema las poblaciones." 82 | "No salvan de su juror ni los pobres angelitos; viejos, mozos y chiquitos los mata del mesmo modo: que el indio lo arregla todo con la lanza y con gritos." 83 | "Tiemblan las carnes al verlo volando al viento la cerda, la rienda en la mano izquierda y la lanza en la derecha; ande enderieza abre brecha pues no hay lanzazo que pierda." 84 | "Hace trotiadas tremendas desde el fondo del desierto; ansí llega medio muerto de hambre, de sé y de fatiga; pero el indio es una hormiga que día y noche está despierto." 85 | "Sabe manejar las bolas como naides las maneja; cuanto el contrario se aleja, manda una bola perdida, y si lo alcanza, sin vida es siguro que lo deja." 86 | "Y el indio es como tortuga de duro para espichar; si lo llega a destripar ni siquiera se le encoge; luego sus tripas recoge, y se agacha a disparar." 87 | "Hacían el robo a su gusto y después se iban de arriba; se llevaban las cautivas, y nos contaban que a veces les descarnaban los pieses, a las pobrecitas, vivas." 88 | "¡Ah! ¡si partía el corazón ver tantos males, canejo! los perseguíamos de lejos sin poder ni galopiar; ¡y qué habíamos de alcanzar en unos vichocos viejos!" 89 | "Nos volvíamos al cantón a las dos o tres jornadas, sembrando las caballadas; y pa que alguno la venda, rejuntábamos la hacienda que habían dejao rezagada." 90 | "Una vez entre otras muchas, tanto salir al botón, nos pegaron un malón los indios y una lanciada, que la gente acobardada quedó dende esa ocasión." 91 | Habían estao escondidos aguaitando atrás de un cerro... ¡lo viera a su amigo Fierro aflojar como un blandito! salieron como maíz frito en cuanto sonó un cencerro. 92 | "Al punto nos dispusimos aunque ellos eran bastantes; la formamos al instante nuestra gente, que era poca, y golpiándose en la boca hicieron fila adelante." 93 | "Se vinieron en tropel haciendo temblar la tierra. no soy manco pa la guerra pero tuve mi jabón, pues iba en un redomón que había boleao en la sierra." 94 | "¡Qué vocerío! ¡qué barullo! ¡qué apurar esa carrera! la indiada todita entera dando alaridos cargó, ¡jue pucha!... Y ya nos sacó como yeguada matrera." 95 | "¡Qué fletes traiban los bárbaros! ¡como una luz de ligeros! hicieron el entrevero y en aquella mezcolanza, este quiero, éste no quiero, nos escogían con la lanza." 96 | "Al que le daban un chuzazo, dificultoso es que sane. en fin, para no echar panes, salimos por esas lomas, lo mesmo que las palomas al juir de los gavilanes." 97 | "¡Es de almirar la destreza con que la lanza manejan! de perseguir nunca dejan, y nos traiban apretaos. ¡si queríamos, de apuraos, salirnos por las orejas!" 98 | "Y pa mejor de la fiesta en esa aflición tan suma, vino un indio echando espuma, y con la lanza en la mano, gritando: acabáu cristiano, metau el lanza hasta el pluma." 99 | "Tendido en el costillar, cimbrando por sobre el brazo una lanza como un lazo, me atropelló dando gritos: si me descuido... El maldito me levanta de un lanzazo." 100 | "Si me atribulo o me encojo, siguro que no me escapo: siempre he sido medio guapo, pero en aquella ocasión me hacía buya el corazón como la garganta al sapo." 101 | Dios le perdone al salvaje las ganas que me tenía... desaté las tres marías y lo engatusé a cabriolas... ¡pucha...! Si no traigo bolas me achura el indio ese día. 102 | "Era el hijo de un cacique, sigún yo lo averigüé; la verdá del caso jue que me tuvo apuradazo, hasta que por fin de un bolazo del caballo lo bajé." 103 | Ahi no más me tiré al suelo y lo pisé en las paletas; empezó a hacer morisquetas y a mezquinar la garganta... pero yo hice la obra santa de hacerlo estirar la jeta. 104 | "Allí quedó de mojón y en su caballo salté; de la indiada disparé, pues si me alcanza me mata, y al fin me les escapé, con el hilo de una pata." 105 | "seguiré esta relación, aunque pa chorizo es largo: el que pueda hágase cargo cómo andaría de matrero, después de salvar el cuero de aquel trance tan amargo." 106 | "Del sueldo nada les cuento, porque andaba disparando; nosotros de cuando en cuando solíamos ladrar de pobres: nunca llegaban los cobres que se estaban aguardando." 107 | "Y andábamos de mugrientos que el mirarnos daba horror; les juro que era un dolor ver esos hombres, ¡por cristo! En mi perra vida he visto una miseria mayor." 108 | Yo no tenía ni camisa ni cosa que se parezca; mis trapos sólo pa yesca me podían servir al fin... no hay plaga como un fortín para que el hombre padezca. 109 | "Poncho, jergas, el apero, las prenditas, los botones, todo, amigo, en los cantones jue quedando poco a poco; ya me tenían medio loco la pobreza y los ratones." 110 | Sólo una manta peluda era cuanto me quedaba la había agenciao a la tabla y ella me tapaba el bulto; yaguané que allí ganaba no salía- ni con indulto. 111 | "Y pa mejor hasta el moro se me jue de entre las manos; no soy lerdo pero, hermano, vino el comendante un día diciendo que lo quería pa enseñarle a comer grano." 112 | "Afigúrese cualquiera la suerte de este su amigo, a pie y mostrando el umbligo, estropiao, pobre y desnudo; ni por castigo se pudo hacerse más mal conmigo." 113 | "Ansí pasaron los meses, y vino el año siguiente, y las cosas igualmente siguieron del mesmo modo: adrede parece todo pa atormentar a la gente." 114 | "No teníamos más permiso, ni otro alivio la gauchada, que salir de madrugada, cuando no había indio ninguno, campo ajuera a hacer boliadas desocando los reyunos." 115 | "Y cáibamos al cantón con los fletes aplastaos, pero a veces medio aviaos con plumas y algunos cueros, que pronto con el pulpero los teníamos negociaos." 116 | "Era un amigo del jefe que con un boliche estaba; yerba y tabaco nos daba por la pluma de avestruz, y hasta le hacía ver la luz al que un cuero le llevaba." 117 | "Sólo tenía cuatro frascos y unas barricas vacías, y a la gente le vendía todo cuanto precisaba... algunos creiban que estaba allí la proveduría." 118 | "¡Ah, pulpero habilidoso! Nada le solía faltar. ¡Ahijuna!, Para tragar tenía un buche de ñandú; la gente le dio en llamar el boliche de virtú." 119 | "Aunque es justo que quien vende algún poquito muerda, tiraba tanto la cuerda que, con sus cuatro limetas él cargaba las carretas de plumas, cueros y cerda." 120 | "Nos tenía apuntaos a todos con más cuentas que un rosario, cuando se anunció un salario que iban a dar, o un socorro; pero sabe Dios qué zorro se lo comió al comisario;" 121 | "pues nunca lo vi llegar, y al cabo de muchos días en la mesma pulpería dieron una güena cuenta, que la gente muy contenta de tan pobre recibía." 122 | "Sacaron unos sus prendas, que las tenían empeñadas; por sus deudas atrasadas dieron otros el dinero; al fin de fiesta el pulpero se quedó con la mascada." 123 | "Yo me arrescosté a un horcón dando tiempo a que pagaran, y poniendo güena cara estuve haciéndome el poyo, a esperar que me llamaran para recibir mi boyo." 124 | "Pero ahi me puede quedar pegao pa siempre al horcón, ya era casi la oración y ninguno me llamaba; la cosa se me ñublaba y me dentró comezón." 125 | "Pa sacarme el entripao vi al mayor, y lo fi a hablar; yo me lo empecé a atracar, y como con poca gana le dije: tal vez mañana acabarán de pagar." 126 | "¡Que mañana ni otro día!, Al punto me contestó: la paga ya se acabó; ¡siempre has de ser animal! Me raí y le dije: yo... no he recebido ni un rial." 127 | "Se le pusieron los ojos que se le querían salir, y ahi no más volvió a decir comiéndome con la vista: ¿y qué querés recibir si no has dentrao en la lista?" 128 | "Esto sí que es amolar, dije yo pa mis adentros; van dos años que me encuentro y hasta aura he visto ni un grullo; dentro en todos los barullos pero en las listas no dentro." 129 | Vide el pleito mal parao y no quise aguardar más... es güeno vivir en paz con quien nos ha de mandar; y reculando pa atrás me le empecé a retirar. 130 | "Supo todo el comendante y me llamó al otro día, diciéndome que quería aviriguar bien las cosas... que no era el tiempo de rosas, que aura a naides se debía." 131 | "Llamó al cabo y al sargento y empezó la indagación: si había venido al cantón en tal tiempo o en tal otro... y si había venido en potro, en reyuno o redomón." 132 | "Y todo era alborotar al ñudo, y hacer papel; conocí que era pastel pa engordar con mi guayaca; mas si voy al coronel me hacen bramar en la estaca." 133 | "¡Ah, hijos de una...! ¡La codicia ojalá les ruempa el saco! Ni un pedazo de tabaco le dan al pobre soldao, y lo tienen, de delgao, más ligero que un guanaco." 134 | "Pero qué iba a hacerles yo, charabón en el desierto; más bien me daba por muerto pa no verme más fundido: y me les hacía el dormido aunque soy medio despierto." 135 | "Yo andaba desesperao, aguardando una ocasión que los indios un malón nos dieran, y entre el estrago hacérmeles cimarrón y volverme pa mi pago." 136 | Aquello no era servicio ni defender la frontera; aquello era ratonera en que sólo gana el juerte: era jugar a la suerte con una taba culera. 137 | "Allí tuito va al revés; los milicos son los piones, y andan en las poblaciones emprestaos pa trabajar; los rejuntan pa peliar cuando entran indios ladrones." 138 | "Yo he visto en esa milonga muchos jefes con estancia, y piones en abundancia, y majadas y rodeos; he visto negocios feos a pesar de mi inorancia." 139 | "Y colijo que no quieren la barunda componer; para eso no ha de tener, el jefe que esté de estable, más que su poncho y su sable, su caballo y su deber." 140 | "Ansina, pues, conociendo que aquel mal no tiene cura, que tal vez mi sepoltura si me quedo iba a encontrar, pensé mandarme mudar como cosa más sigura." 141 | "Y pa mejor, una noche ¡qué estaquiada me pegaron! Casi me descoyuntaron por motivo de una gresca: ¡ahijuna, si me estiraron lo mesmo que guasca fresca!" 142 | "Jamás me puedo olvidar lo que esa vez me pasó; dentrando una noche yo al fortín, un enganchao, que estaba medio mamao, allí me desconoció." 143 | "Era un gringo tan bozal, que nada se le entendía, ¡quién sabe de ande sería! Tal vez no juera cristiano, pues lo único que decía es que era papolitano." 144 | "Estaba de centinela y por causa del peludo verme más claro no pudo, y esa jue la culpa toda: el bruto se asustó al ñudo y fi el pavo de la boda." 145 | "Cuando me vido acercar: quién vivore-? Preguntó; ¿qué víboras?, Dije yo. ¡Ha garto!, Me pegó el grito, y yo dije despacito: ¡más lagarto serás vos!" 146 | "Ahi no más, ¡cristo me valga!, Rastrillar el jusil siento: me agaché, y en el momento el bruto me largó un chumbo; mamao, me tiró sin rumbo, que si no, no cuento el cuento." 147 | "Por de contao, con el tiro se alborotó el avispero; los oficiales salieron y se empezó la junción; quedó en su puesto el nación, y yo fi al estaquiadero." 148 | "Entre cuatro bayonetas me tendieron en el suelo; vino el mayor medio en pedo y allí se puso a gritar: ¡pícaro, te he de enseñar andar reclamando sueldos!" 149 | "De las manos y las patas me ataron cuatro cinchones; les aguanté los tirones sin que ni un ¡ay! Se me oyera, y al gringo la noche entera lo harté con mis maldiciones." 150 | Yo no sé porqué el gobierno nos manda aquí a la frontera gringada que ni siquiera se sabe atracar a un pingo. ¡Si creerá al mandar un gringo que nos manda alguna fiera! 151 | "No hacen más que dar trabajo, pues no saben ni ensillar; no sirven ni pa carniar: y yo he visto muchas veces que ni voltiadas las reses se les querían arrimar." 152 | "Y lo pasan sus mercedes lengüetiando pico a pico hasta que viene un milico a servirles al asao- y eso sí, en lo delicaos, parecen hijos de rico." 153 | "Si hay calor, ya no son gente; si yela, todos tiritan; si usté no les da, no pitan por no gastar en tabaco, y cuando pescan un naco uno al otro se lo quitan." 154 | "Cuando llueve se acoquinan como perro que oye truenos. ¡Que diablos!, Sólo son güenos pa vivir entre maricas, y nunca se andan con chicas para alzar ponchos ajenos." 155 | "Pa vichar son como ciegos; no hay ejemplo de que entiendan, ni hay uno solo que aprienda, al ver un bulto que cruza, a saber si es avestruza, o si es jinete, o hacienda." 156 | "Si salen a perseguir después de mucho aparato, tuitos se pelan al rato y va quedando el tendal: esto es como en un nidal echarle güevos a un gato." 157 | "vamos dentrando recién a la parte mas sentida, aunque es todita mi vida de males una cadena: a cada alma dolorida le gusta cantar sus penas." 158 | "Se empezó en aquel entonces a rejuntar caballada, y riunir la milicada teniéndola en el cantón, para una despedición a sorprender a la indiada." 159 | Nos anunciaban que iríamos sin carretas ni bagajes a golpiar a los salvajes en sus mesmas tolderías; que a la güelta pagarían licenciándolo al gauchaje; 160 | "que en esta despedición tuviéramos la esperanza; que iba a venir sin tardanza, según el jefe contó, un menistro o qué sé yo- que le llamaban don ganza;" 161 | "que iba a riunir el ejército y tuitos los batallones, y que traiba unos cañones con más rayas que un cotín; ¡pucha!- Las conversaciones por allá no tenían fin." 162 | "Pero esas trampas no enriedan a los zorros de mi laya; que esa ganza venga o vaya, poco le importa a un matrero. Yo también dejé las rayas- en los libros del pulpero." 163 | "Nunca juí gaucho dormido; siempre pronto, siempre listo, yo soy un hombre, ¡qué cristo!, Que nada me ha acobardao, y siempre salí parao en los trances que me he visto." 164 | "Dende chiquito gané la vida con mi trabajo, y aunque siempre estuve abajo y no sé lo que es subir también el mucho sufrir suele cansarnos, ¡barajo!" 165 | En medio de mi inorancia conozco que nada valgo: soy la liebre o soy el galgo asigún los tiempos andan; pero también los que mandan debieran cuidarnos algo. 166 | "Una noche que riunidos estaban en la carpeta empinando una limeta el jefe y el juez de paz, yo no quise aguardar más, y me hice humo en un sotreta." 167 | "Me parece el campo orégano dende que libre me veo; donde me lleva el deseo allí mis pasos dirijo, y hasta en las sombras de fijo que donde quiera rumbeo." 168 | "Entro y salgo del peligro sin que me espante el estrago, no aflojo al primer amago ni jamás fi gaucho lerdo: soy pa rumbiar como el cerdo, y pronto caí a mi pago." 169 | "Volvía al cabo de tres años de tanto sufrir al ñudo resertor, pobre y desnudo, a procurar suerte nueva; y lo mesmo que el peludo enderecé pa mi cueva." 170 | No hallé ni rastro del rancho: ¡sólo estaba la tapera! ¡Por cristo si aquello era pa enlutar el corazón! ¡Yo juré en esa ocasión ser mas malo que una fiera! 171 | "¡Quién no sentirá lo mesmo cuando ansí padece tanto! Puedo asigurar que el llanto como una mujer largué: ¡ay, mi Dios: si me quedé más triste que jueves santo!" 172 | "Sólo se oíban los aullidos de un gato que se salvó; el pobre se guareció cerca, en una vizcachera: venía como si supiera que estaba de güelta yo." 173 | "Al dirme dejé la hacienda que era todito mi haber; pronto debíamos volver, sigún el juez prometía, y hasta entonces cuidaría de los bienes, la mujer." 174 | "Después me contó un vecino que el campo se lo pidieron; la hacienda se la vendieron pa pagar arrendamientos, y qué sé yo cuantos cuentos; pero todo lo fundieron," 175 | "los pobrecitos muchachos, entre tantas afliciones, se conchabaron de piones; ¡mas qué iban a trabajar, si eran como los pichones sin acabar de emplumar!" 176 | Por ahi andarán sufriendo de nuestra suerte el rigor: me han contao que el mayor nunca dejaba a su hermano; puede ser que algún cristiano los recoja por favor. 177 | "¡Y la pobre mi mujer, Dios sabe cuánto sufrió! Me dicen que se voló con no sé qué gavilán: sin duda a buscar el pan que no podía darle yo." 178 | No es raro que a uno le falte lo que a algún otro le sobre si no le quedó ni un cobre sino de hijos un enjambre. Que más iba a hacer la pobre para no morirse de hambre? 179 | "¡Tal vez no te vuelva a ver, prienda de mi corazón! Dios te dé su proteción ya que no me la dio a mí, y a mis hijos dende aquí les echo mi bendición." 180 | "Como hijitos de la cuna andarán por ahi sin madre; ya se quedaron sin padre, y ansí la suerte los deja sin naides que los proteja y sin perro que les ladre." 181 | "Los pobrecitos tal vez no tengan ande abrigarse, ni ramada ande ganarse, ni rincón ande meterse, ni camisa que ponerse, ni poncho con que taparse." 182 | "Tal vez los verán sufrir sin tenerles compasión; puede que alguna ocasión, aunque los vean tiritando, los echen de algún jogón pa que no estén estorbando." 183 | "Y al verse ansina espantaos como se espanta a los perros, irán los hijos de Fierro, con la cola entre las piernas, a buscar almas más tiernas o esconderse en algún cerro." 184 | "Mas también en este juego voy a pedir mi bolada; a naides le debo nada, ni pido cuartel ni doy: y ninguno dende hoy ha de llevarme en la armada." 185 | "Yo he sido manso primero, y seré gaucho matrero; en mi triste circunstancia, aunque es mi mal tan projundo, nací y me he criado en estancia. Pero ya conozco el mundo." 186 | "Ya les conozco sus mañas, le conozco sus cucañas; sé como hacen la partida, la enriedan y la manejan; deshaceré la madeja aunque me cueste la vida." 187 | Y aguante el que no se anime a meterse en tanto engorro o si no aprétese el gorro y para otra tierra emigre; pero yo ando como el tigre que le roban los cachorros. 188 | "Aunque muchos creen que el gaucho tiene alma de reyuno, no se encontrará a ninguno que no le dueblen las penas; mas no debe aflojar uno mientras hay sangre en las venas" 189 | De carta de más me vía sin saber a donde dirme; mas dijeron que era vago y entraron a perseguirme. 190 | "Nunca se achican los males, van poco a poco creciendo, y ansina me vide pronto obligado a andar juyendo." 191 | "No tenía mujer ni rancho y a más, era resertor; no tenía una prenda güena ni un peso en el tirador" 192 | "a mis hijos infelices pensé volverlos a hallar, y andaba de un lao al otro sin tener ni qué pitar." 193 | "Supe una vez por desgracia que había un baile por allí, y medio desesperao a ver la milonga fui." 194 | "Riunidos al pericón tantos amigos hallé, que alegre de verme entre ellos esa noche me apedé." 195 | "Como nunca, en la ocasión por peliar me dio la tranca. Y la emprendí con un negro que trujo una negra en ancas." 196 | "Al ver llegar la morena, que no hacía caso de naides, le dije con la mamúa: va-ca-yendo gente al baile." 197 | "La negra entendió la cosa y no tardó en contestarme, mirándome como a un perro: más vaca será su madre." 198 | "Y dentró al baile muy tiesa con más cola que una zorra, haciendo blanquiar los dientes lo mesmo que mazamorra." 199 | !Negra linda!- Dije yo. Me gusta- pa la carona; y me puse a champurriar esta coplita fregona: 200 | "a los blancos hizo Dios, a los mulatos san pedro, a los negros hizo el diablo para tizón del infierno." 201 | Había estao juntando rabia el moreno dende ajuera; en lo escuro le brillaban los ojos como linterna. 202 | "Lo conocí retobao, me acerqué y le dije presto: po-r-rudo que un hombre sea nunca se enoja por esto." 203 | "Corcovió el de los tamangos y creyéndose muy fijo: ¡más porrudo serás vos, gaucho rotoso!, Me dijo." 204 | "Y ya se me vino al humo como a buscarme la hebra, y un golpe le acomodé con el porrón de ginebra." 205 | "Ahi nomás pegó el de hollín mas gruñidos que un chanchito, y pelando el envenao me atropelló dando gritos." 206 | "Pegué un brinco y abrí cancha diciéndoles: caballeros, dejen venir ese toro. Solo nací- solo muero." 207 | "El negro, después del golpe, se había el poncho refalao y dijo: vas a saber si es solo o acompañado." 208 | "Y mientras se arremangó, yo me saqué las espuelas, pues malicié que aquel tío no era de arriar con las riendas." 209 | No hay cosa como el peligro pa refrescar un mamao; hasta la vista se aclara por mucho que haiga chupao. 210 | El negro me atropelló como a quererme comer; me hizo dos tiros seguidos y los dos le abarajé. 211 | "Yo tenía un facón con s, que era de lima de acero; le hice un tiro, lo quitó y vino ciego el moreno;" 212 | "y en el medio de las aspas un planazo le asenté, que lo largué culebriando lo mesmo que buscapié." 213 | "Le coloriaron las motas con la sangre de la herida, y volvió a venir jurioso como una tigra parida." 214 | "Y ya me hizo relumbrar por los ojos el cuchillo, alcanzando con la punta a cortarme en un carrillo." 215 | "Me hirvió la sangre en las venas y me le afirmé al moreno, dándole de punta y hacha pa dejar un diablo menos." 216 | "Por fin en una topada en el cuchillo lo alcé, y como un saco de güesos contra un cerco lo largué." 217 | Tiró unas cuantas patadas y ya cantó pal carnero: nunca me puedo olvidar de la agonía de aquel negro. 218 | "En esto la negra vino con los ojos como ají y empezó la pobre allí a bramar como una loba. Yo quise darle una soba a ver si la hacía callar, mas pude reflesionar que era malo en aquel punto, y por respeto al dijunto no la quise castigar." 219 | "Limpié el facón en los pastos, desaté mi redomón, monté despacio y salí al tranco pa el cañadón." 220 | "Después supe que al finao ni siquiera lo velaron, y retobao en un cuero, sin rezarle lo enterraron." 221 | "Y dicen que dende entonces, cuando es la noche serena suele verse una luz mala como de alma que anda en pena." 222 | "Yo tengo intención a veces, para que no pene tanto, de sacar de allí los güesos y echarlos al camposanto." 223 | "otra vez en un boliche estaba haciendo la tarde; cayó un gaucho que hacia alarde de guapo y peliador; a la llegada metió el pingo hasta la ramada, y yo sin decirle nada me quedé en el mostrador." 224 | "Era un terne de aquel pago que naides lo reprendía, que sus enriedos tenía con el señor comendante; y como era protegido, andaba muy entonao, y a cualquier desgraciao lo llevaba por delante." 225 | "¡Ah pobre! Si él mismo creiba que la vida le sobraba; ninguno diría que andaba aguaitándolo la muerte. Pero ansí pasa en el mundo, es ansí la triste vida: pa todos está escondida la güena o la mala suerte." 226 | "Se tiró al suelo; al dentrar le dio un empellón a un vasco, y me alargó un medio frasco diciendo: beba cuñao. Por su hermana, contesté. Que por la mía no hay cuidao." 227 | "¡Ah, gaucho!, Me respondió; ¿de que pago será crioyo? ¿Lo andará buscando el hoyo? Deberá tener güen cuero; pero ande bala este toro no bala ningún ternero." 228 | "Y ya salimos trenzaos porque el hombre no era lerdo, mas como el tino no pierdo, y soy medio ligerón, le dejé mostrando el sebo de un revés con el facón." 229 | "Y como con la justicia no andaba bien por allí, cuanto pataliar lo vi, y el pulpero pegó el grito, ya pa el palenque salí como haciéndome chiquito." 230 | "Monté y me encomendé a Dios, rumbiando para otro pago, que el gaucho que llaman vago no puede tener querencia, y ansí de estrago en estrago vive llorando la ausencia." 231 | "éL andaba siempre juyendo, siempre pobre y perseguido, no tiene cueva ni nido como si juera maldito; porque el ser gaucho- ¡barajo!, El ser gaucho es un delito." 232 | "Es como el patrio de posta; lo larga éste, aquél lo toma, nunca se acaba la broma; dende chico se parece al arbolito que crece desamparao en la loma." 233 | "Le echan la agua del bautismo aquél que nació en la selva; busca madre que te envuelva, le dice el fraire y lo larga. Y dentra a cruzar el mundo como burro con la carga." 234 | "Y se cría viviendo al viento como oveja sin trasquila; mientras su padre en las filas anda sirviendo al gobierno, aunque tirite en invierno, naides lo ampara ni asila." 235 | "Le llaman gaucho mamao si lo pillan divertido, y que es mal entretenido si en un baile lo sorprienden; hace mal si se defiende y si no, se ve- fundido." 236 | "No tiene hijos ni mujer, ni amigos ni protetores, pues todos son sus señores sin que ninguno lo ampare: tiene la suerte del güey, y ¿donde irá el güey que no are?" 237 | "Su casa es el pajonal, su guarida es el desierto; y si de hambre medio muerto le echa el lazo a algún mamón, lo persiguen como a plaito, porque es un gaucho ladrón." 238 | "Y si de un golpe por ahi lo dan güelta panza arriba, no hay un alma compasiva que le rece una oración; tal vez como cimarrón en una cueva lo tiran." 239 | "Él nada gana en la paz y es el primero en la guerra; no le perdonan si yerra, que no saben perdonar, porque el gaucho en esta tierra sólo sirve pa votar." 240 | "Para el son los calabozos, para el las duras prisiones, en su boca no hay razones aunque la razón le sobre; que son campanas de palo las razones de los pobres." 241 | "Si uno aguanta, es gaucho bruto; si no aguanta es gaucho malo. ¡Dele azote, dele palo, porque es lo que él necesita! De todo el que nació gaucho ésta es la suerte maldita." 242 | "Vamos suerte, vamos juntos dende que juntos nacimos; y ya que juntos vivimos sin podernos dividir- yo abriré con mi cuchillo el camino pa seguir" 243 | "matreriando lo pasaba ya a las casas no venía; solía arrimarme de día, mas, lo mesmos que el carancho, siempre estaba sobre el rancho espiando a la polecía." 244 | "Viva el gaucho que ande mal, como zorro perseguido, hasta que al menor descuido se lo atarasquen los perros, pues nunca le falta un yerro al hombre más alvertido." 245 | "Y en esa hora de la tarde en que tuito se adormece, que el mundo dentrar parece a vivir en pura calma, con las tristezas del alma al pajonal enderiece." 246 | "Bala el tierno corderito al lao de la blanca oveja, y a la vaca que se aleja llama el ternero amarrao; pero el gaucho desgraciao no tiene a quien dar su oveja." 247 | "Ansí es que al venir la noche iba a buscar mi guarida, pues ande el tigre se anida también el hombre lo pasa, y no quería que en las casas me rodiara la partida." 248 | "Pues aun cuando vengan ellos cumpliendo con su deberes, yo tengo otros pareceres, y en esa conduta vivo: que no debe un gaucho altivo peliar entre las mujeres." 249 | "Y al campo me iba solito, más matrero que el venao, como perro abandonao a buscar una tapera, o en alguna vizcachera pasar la noche tirao." 250 | "Sin punto ni rumbo fijo en aquella inmensidá, entre tanta escuridá anda el gaucho como duende; allí jamás lo sorpriende dormido, la autoridá." 251 | "Su esperanza es el coraje, su guardia es la precaución, su pingo es la salvación, y pasa uno en su desvelo, sin más amparo que el cielo ni otro amigo que el facón." 252 | "Ansí me hallaba una noche contemplando las estrellas, que le parecen más bellas cuanto uno es más desgraciao, y que Dios las haiga criao para consolarse en ellas." 253 | "Les tiene el hombre cariño y siempre con alegría ve salir las tres marías; que si llueve, cuanto escampa, las estrellas son la guía que el gaucho tiene en la pampa." 254 | "Aquí no valen dotores, sólo vale la esperiencia; aquí verían su inocencia ésos que todo lo saben, porque esto tiene otra llave y el gaucho tiene su cencia." 255 | "Es triste en medio del campo pasarse noches enteras contemplando en sus carreras las estrellas que Dios cría, sin tener más compañía que su delito y las fieras." 256 | "Me encontraba como digo, en aquella soledá, entre tanta escuridá, echando al viento mis quejas, cuando el grito del chajá me hizo parar las orejas." 257 | "Como lumbriz me pegué al suelo para escuchar; pronto sentí retumbar las pisadas de los fletes, y que eran muchos jinetes conocí sin vacilar." 258 | Cuando el hombre está en peligro no debe tener confianza; ansí tendido de panza puse toda mi atención y ya escuché sin tardanza como el ruido de un latón. 259 | "Se venían tan calladitos que yo me puse en cuidao; tal vez me hubieran bombiao y ya me venían a buscar; mas no quise disparar, que eso es de gaucho morao." 260 | "Al punto me santigüé y eché de giñebra un taco; lo mesmito que el mataco me arroyé con el porrón; si han de darme pa tabaco, dije, ésta es güena ocasión." 261 | "Me refalé las espuelas, para no peliar con grillos; me arremangué el calzoncillo, y me ajusté bien la faja, y en una mata de paja probé el filo del cuchillo." 262 | "Para tenerlo a la mano el flete en el pasto até, la cincha le acomodé, y, en un trance como aquél, haciendo espaldas en él quietito los aguardé." 263 | "Cuando cerca los sentí, y que ahi no más se pararon, los pelos se me erizaron y, aunque nada vían mis ojos, no se han de morir de antojo, les dije, cuando llegaron." 264 | "Yo quise hacerles saber que allí se hallaba un varón; les conocí la intención y solamente por eso es que les gané el tirón, sin aguardar voz de preso." 265 | "Vos sos un gaucho matrero, dijo uno, haciéndose el güeno. Vos mataste un moreno y otro en una pulpería, y aquí está la polecía que viene a ajustar tus cuentas; te va alzar por las cuarenta si te resistís hoy día." 266 | "No me vengan, contesté, con relación de dijuntos; ésos son otros asuntos; vean si me pueden llevar, que yo no me he de entregar, aunque vengan todos juntos." 267 | "Pero no aguardaron más y se apiaron en montón; como a perro cimarrón me rodiaron entre tantos; ya me encomendé a los santos, y eché mano a mi facón." 268 | "Y ya vide el fogonazo de un tiro de garabina, mas quiso la suerte indina de aquel maula, que me errase, y ahi no más lo levantase lo mesmo que una sardina." 269 | "A otro que estaba apurao acomodando una bola, le hice una dentrada sola y le hice sentir el Fierro, y ya salió como el perro cuando le pisan la cola." 270 | "Era tanta la aflición y la angurria que venían, que tuitos se me venían, donde yo los esperaba; uno al otro se estorbaba y con las ganas no vían." 271 | "Dos de ellos que traiban sables más garifos y resueltos, en las hilachas envueltos enfrente se me pararon, y a un tiempo me atropellaron lo mesmo que perros sueltos." 272 | "Me fui reculando en falso y el poncho adelante eché, y en cuanto le puso el pie uno medio chapetón, de pronto le di un tirón y de espaldas lo largué" 273 | "al verse sin compañero el otro se sofrenó; entonces le dentré yo, sin dejarlo resollar, pero ya empezó a aflojar y a la pu-n-ta disparó." 274 | "Uno que en una tacuara había atao una tijera, se vino como si juera palenque de atar terneros, pero en dos tiros certeros salió aullando campo ajuera." 275 | "Por suerte en aquel momento venía coloriando el alba y yo dije: si me salva la virgen en este apuro, en adelante le juro ser más güeno que una malva." 276 | "Pegué un brinco y entre todos sin miedo me entreveré; hecho ovillo me quedé y ya me cargó una yunta, y por el suelo la punta de mi facón les jugué." 277 | "El más engolosinao se me apió con un hachazo; se lo quité con el brazo; de no, me mata los piojos; y antes de que diera un paso le eché tierra en los dos ojos." 278 | "Y mientras se sacudía refregándose la vista, yo me le fui como lista y ahi no más me le afirmé, diciéndole: Dios te asista, y de un revés lo voltié." 279 | Pero en ese punto mesmo sentí que por las costillas un sable me hacía cosquillas y la sangre me heló; dende ese momento yo me salí de mis casillas. 280 | "Di para atrás unos pasos hasta que pude hacer pie; por delante me lo eché de punta y tajos a un criollo; metió la pata en un hoyo, y yo al hoyo lo mandé." 281 | "Tal vez en el corazón le tocó un santo bendito a un gaucho, que pegó el grito y dijo: ¡Cruz no consiente que se cometa el delito de matar a un valiente!" 282 | "Y ahi no más se me aparió, dentrándole a la partida; yo les hice otra embestida pues entre dos era robo; y el Cruz era como lobo que defiende su guarida." 283 | "Uno despachó al infierno de dos que lo atropellaron; los demás remoliniaron, pues íbamos a la fija, y a poco andar dispararon lo mesmo que sabandija." 284 | "Ahí quedaron largo a largo los que estiaron la jeta; otro iba como maleta, y Cruz de atrás les decía: que venga otra polecía a llevarlos en carreta." 285 | "Yo junté las osamentas, me hinqué y les recé un bendito, hice una cruz de un palito y pedí a mi Dios clemente me perdonara el delito de haber muerto tanta gente." 286 | "Dejamos amotonaos a los pobres que murieron; no sé si los recogieron, porque nos fuimos a un rancho, o si tal vez los caranchos ahi no más se los comieron." 287 | Lo agarramos mano a mano entre los dos al porrón: en semejante ocasión un trago a cualquiera encanta; y Cruz no era remolón ni pijotiaba garganta. 288 | "Calentamos los gargueros y nos largamos muy tiesos, siguiendo siempre los besos al pichel, y por mas señas, íbamos como cigüeñas estirando los pescuezos." 289 | "Yo me voy, le dije, amigo, donde la suerte me lleve, y si es que alguno se atreve, a ponerse en mi camino, yo seguiré mi destino, que el hombre hace lo que debe." 290 | "Soy un gaucho desgraciao, no tengo donde ampararme, ni un palo donde rascarme, ni un árbol que me cubije: pero ni aun esto me aflige porque yo sé manejarme." 291 | "Antes de cair al servicio, tenia familia y hacienda; cuando volví, ni la prenda me la habían dejao ya. Dios sabe en lo que vendrá a parar esta contienda." 292 | "amigazo, pa sufrir han nacido los varones; estas son las ocasiones de mostrarse un hombre juerte, hasta que venga la muerte y lo agarre a coscorrones." 293 | El andar tan despilchao ningún mérito me quita; sin ser un alma bendita me duelo del mal ajeno: soy un pastel con relleno que parece torta frita. 294 | "Tampoco me faltan males y desgracias, le prevengo; también mis desdichas tengo, aunque esto poco me aflige: yo sé hacerme el chango rengo cuando la cosa lo esige." 295 | "Y con algunos ardiles voy viviendo, aunque rotoso; a veces me hago el sarnoso y no tengo ni un granito, pero al chifle voy ganoso como panzón al maíz frito." 296 | A mí no me matan penas mientras tenga el cuero sano; venga el sol en el verano y la escarcha en el invierno ¿por qué afligirse el cristiano? 297 | "Hagámosle cara fiera a los males, compañero, porque el zorro más matrero suele cair como un chorlito; viene por un corderito y en la estaca deja el cuero." 298 | "Hoy tenemos que sufrir males que no tienen nombre, pero esto a nadies lo asombre porque ansina es el pastel, y tiene que dar el hombre mas güeltas que un carretel." 299 | "Yo nunca me he de entregar a los brazos de la muerte; arrastro mi triste suerte paso a paso y como pueda, que donde el débil se queda se suele escapar el juerte." 300 | "Y ricuerde cada cual lo que cada cual sufrió, que lo que es, amigo, yo, hago ansí la cuenta mía: ya lo pasado pasó; mañana será otro día." 301 | "Yo también tuve una pilcha que me enllenó el corazón, y si en aquella ocasión alguien me hubiera buscao, siguro que me había hallao más prendido que un botón." 302 | "En la güeya del querer no hay animal que se pierda- las mujeres no son lerdas, y todo gaucho es dotor si pa cantarle al amor tiene que templar las cuerdas." 303 | ¡Quién es de una alma tan dura que no quiera una mujer! Lo alivia en su padecer: si no sale calavera es la mejor compañera que el hombre puede tener. 304 | "Si es güena, no lo abandona cuando lo ve desgraciao, lo asiste con su cuidao, y con afán cariñoso, y usté tal vez ni un rebozo ni una pollera le ha dao." 305 | "¡Grandemente lo pasaba con aquella prenda mía, viviendo con alegría como la mosca en la miel! ¡Amigo, qué tiempo aquel! ¡La pucha, que la quería!" 306 | Era la águila que a un árbol dende las nubes bajó; era más linda que el alba cuando va rayando el sol; era la flor deliciosa que entre el trebolar creció. 307 | "Pero, amigo, el comendante que mandaba la milicia, como que no desperdicia se fue refalando a casa; yo le conocí en la traza que el hombre traiba malicia." 308 | "Él me daba voz de amigo, pero no le tenía fe; era el jefe, y ya se ve, no podía competir yo; en mi rancho se pegó lo mesmo que un saguaipé." 309 | "A poco andar, conocí que ya me había desbancao, y él siempre muy entonao, aunque sin darme ni un cobre, me tenía de lao a lao como encomienda de pobre." 310 | "A cada rato, de chasque me hacía dir a gran distancia; ya me mandaba a una estancia, ya al pueblo, ya a la frontera; pero él en la comendancia no ponía los pies siquiera." 311 | "Es triste a no poder más el hombre en su padecer, si no tiene una mujer que lo ampare y lo consuele: mas pa que otro se la pele lo mejor es no tener." 312 | "No me gusta que otro gallo le cacaree a mi gallina; yo andaba ya con la espina, hasta que en una ocasión lo pille junto al jogón abrazándome a la china." 313 | "Tenía el viejito una cara de ternero mal lamido, y al verle tan atrevido le dije: ¡que le aproveche!- Que había sido pa el amor como gaucho pa la leche." 314 | "Peló la espalda y se vino como a quererme ensartar, pero yo sin tutubiar le volví al punto a decir: ¡cuidado!, No te vas a per-tigo; poné cuarta pa salir." 315 | "Un puntazo me largó, pero el cuerpo le saqué, y en cuanto se lo quité, para no matar un viejo, con cuidado, medio de lejos un palazo le asenté." 316 | "Y como nunca al que manda le falta algún adulón, uno que en esa ocasión se encontraba allí presente, vino apretando los dientes como perrito mamón." 317 | "Me hizo un tiro de revuélver que el hombre creyó siguro; era confiado y le juro que cerquita se arrimaba, pero, siempre en un apuro se desentumen mis tabas." 318 | "Él me siguió menudiando mas sin poderme acertar, y yo, dele culebriar, hasta que al fin le dentré y ahi no más lo despaché sin dejarlo resollar." 319 | Dentré a campiar en seguida al viejito enamorao- el pobre se había ganao en un noque de lejía. ¡Quién sabe cómo estaría del susto que había llevao! 320 | "¡Es zonzo el cristiano macho cuando el amor lo domina! Él la miraba a la indina, y una cosa tan jedionda sentí yo, que ni en la fonda he visto tal jedentina" 321 | "Y le dije: pa su agüela han de ser esas perdices. Yo me tapé las narices, y me salí esternudando, y el viejo quedó olfatiando como chico con lumbrices." 322 | "Cuando la mula recula, señal que quiere cociar, ansí se suele portar aunque ella lo disimula; recula como la mula la mujer, para olvidar." 323 | "Alcé mis ponchos y mis prendas y me largué a padecer por culpa de una mujer que quiso engañar a dos; al rancho le dije adiós, para nunca más volver." 324 | "Las mujeres, dende entonces, conocí a todas en una; ya no he de probar fortuna con carta tan conocida: mujer y perra parida, ¡no se me acerca ninguna!." 325 | "a otros les brotan las coplas como agua de manantial; pues a mí me pasa igual; aunque las mías nada valen, de la boca se me salen como ovejas de corral." 326 | "Que en puertiando la primera, ya la siguen los demás, y en montones las de atrás contra los palos se estrellan, y saltan y se atropellan sin que se corten jamás." 327 | "Y aunque yo por mi inorancia con gran trabajo me esplico, cuando llego a abrir el pico, tengaló por cosa cierta, sale un verso y en la puerta ya asoma el otro el hocico." 328 | "Y emprésteme su atención; me oirá relatar las penas de que traigo la alma llena; porque en toda circustancia, paga el gaucho su inorancia con la sangre de sus venas." 329 | "Después de aquella desgracia me refugié en los pajales; anduve entre los cardales como bicho sin guarida; pero, amigo, es esa vida como vida de animales." 330 | "Y son tantas las miserias en que me he salido ver, que con tanto padecer y sufrir tanta aflición, malicio que he de tener un callo en el corazón." 331 | "Ansí andaba como guacho cuando pasa el temporal; supe una vez por mi mal de una milonga que había, y ya pa la pulpería enderecé mi bagual." 332 | "Era la casa del baile un rancho de mala muerte, y se enllenó de tal suerte que andábamos a empujones: nunca faltan encontrones cuando un pobre se divierte." 333 | Yo tenía unas medias botas con tamaños verdugones; me pusieron los talones con crestas como gallos: ¡si viera mis afliciones pensando yo que eran callos! 334 | "Con gato y con fandanguillo había empezado el changango, y para ver el fandango me colé haciendomé bola, mas metió el diablo la cola, y todo se volvió pango." 335 | "Había sido el guitarrero un gaucho duro de boca: yo tengo paciencia poca pa aguantar cuando no debo; a ninguno me le atrevo, pero me halla el que me toca. A bailar un pericón con una moza salí, y cuanto me vido allí sin duda me conoció; y estas coplitas cantó como por raírse de mí:" 336 | "las mujeres son todas como las mulas; yo no digo que todas, pero hay algunas que a las aves que vuelan les sacan plumas." 337 | "Hay gauchos que presumen de tener damas; no digo que presumen, pero se alaban, y a lo mejor los dejan tocando tablas." 338 | "Se secretiaron las hembras, y yo ya me encocoré; volié la anca y le grité: ¡dejá de cantar- chicharra! Y de un tajo a la guitarra tuitas las cuerdas corté." 339 | "Al punto salió de adentro un gringo con un jusil; pero nunca he sido vil, poco el peligro me espanta; yo me refalé la manta y la eché sobre el candil." 340 | "Gané en seguida la puerta gritando: ¡nadies me ataje! Y alborotado el hembraje, lo que todo quedo escuro, empezó a verse en apuro mesturao con el gauchaje." 341 | "El primero que salió fue el cantor, y se me vino; pero yo no pierdo el tino aunque haiga tomao un trago, y hay algunos por mi pago que me tienen por ladino." 342 | "No ha de haber achocao otro: le salió cara la broma; a su amigo cuando toma se le despeja el sentido, y el pobrecito había sido como carne de paloma." 343 | Para prestar un socorro las mujeres no son lerdas: antes que la sangre pierda lo arrimaron a unas pipas; ahi lo dejé con las tripas como pa que hiciera cuerdas. 344 | "Monté y me largué a los campos más libre que el pensamiento, como las nubes al viento a vivir sin paradero, que no tiene el que es matrero nido, ni rancho, ni asiento." 345 | "No hay juerza contra el destino que le ha señalao el cielo, y aunque no tenga consuelo, ¡aguante el que está en trabajo! ¡Nadies se rasca pa abajo, ni se lonjea contra el pelo!" 346 | Con el gaucho desgraciao no hay uno que no se entone ¡la menor falta lo espone a andar con los avestruces faltan otros con más luces y siempre hay quien los perdone. 347 | Yo no sé qué tantos meses esta vida me duró; a veces nos obligó la miseria a comer potro: me había acompañao con otros tan desgraciaos como yo 348 | "Mas ¿para qué platicar sobre esos males, canejos? Nace el gaucho y se hace viejo, sin que mejore su suerte, hasta que por ahi la muerte sale a cobrarle el pellejo." 349 | "Pero como no hay desgracia que no acabe alguna vez, me aconteció que después de sufrir tanto rigor, un amigo, por favor, me compuso con el juez." 350 | "Le alvertiré que en mi pago ya no va quedando un criollo: se los ha tragao el hoyo, o juido o muerto en la guerra; porque, amigo, en esta tierra nunca se acaba el embrollo." 351 | "Colijo que jué por eso que me llamó el juez un día, y me dijo que quería hacerme a su lao venir, y que dentrase a servir de soldao de polecía." 352 | "Y me largó una proclama tratándome de valiente; que yo era un hombre decente, y que dende aquel momento me nombraba de sargento pa que mandara la gente." 353 | "Ansí estuve en la partida, pero ¿qué había de mandar? Anoche al irlo a tomar vide güena coyontura, y a mí no me gusta andar con la lata a la cintura." 354 | "Ya conoce, pues, quién soy; tenga confianza conmigo: Cruz le dio mano de amigo, y no lo ha de abandonar; juntos podemos buscar pa los dos un mesmo abrigo." 355 | "Andaremos de matreros si es preciso pa salvar; nunca nos ha de faltar ni un güen pingo pa juir, ni un pajal ande dormir, ni un matambre que ensartar." 356 | "Y cuando sin trapo alguno nos haiga el tiempo dejao, yo le pediré emprestao el cuero a cualquiera lobo, y hago un poncho, si lo sobo, mejor que poncho engomao." 357 | Para mí la cola es pecho y el espinazo es cadera hago mi nido ande quiera y de lo que encuentro como; me echo tierra sobre el lomo y me apeo en cualquier tranquera. 358 | "Y dejo rodar la bola, que algún día se ha de parar- tiene el gaucho que aguantar hasta que lo trague el hoyo, o hasta que venga algún criollo en esta tierra a mandar." 359 | "Todos se güelven proyetos de colonias y carriles, y tirar la plata a miles en los gringos enganchaos, mientras al pobre soldao le pelan la cucha- ¡ah, viles!" 360 | "Pero si siguen las cosas como van hasta el presente, puede ser que redepente veamos el campo disierto, y blanquiando solamente los güesos de los que han muerto." 361 | "Lo miran al pobre gaucho como carne de cogote: lo tratan al estricote y si ansí las cosas andan, porque quieren los que mandan, aguantemos los azotes." 362 | "¡Pucha! Si usté los oyera, como yo en una ocasión tuita la conversación que con otro tuvo el juez; le asiguro que esa vez se me achicó el corazón." 363 | "Hablaban de hacerse ricos con campos en la fronteras, de sacarla más ajuera, donde había campos baldidos y llevar de los partidos gente que la defendiera." 364 | "Hace mucho que sufrimos la suerte reculativa trabaja el gaucho y no arriba porque a lo mejor del caso, lo levantan de un sogazo sin dejarle ni saliva." 365 | "De los males que sufrimos hablan mucho los puebleros, pero hacen como los teros para esconder sus niditos: en un lao pegan los gritos y en otro tienen los güevos." 366 | "Y se hacen los que no aciertan a dar con la coyontura: mientras al gaucho lo apura con rigor la autoridá, ellos a la enfermedá le están errando la cura." 367 | XIII. A los indios me refalo 368 | "ya veo que somos los dos astillas del mesmo palo: yo paso por gaucho malo y usté anda del mesmo modo; y yo, pa acabarlo todo, a los indios me refalo." 369 | "Pido perdón a mi Dios que tantos bienes me hizo, pero dende que es preciso que viva entre los infeles, yo seré cruel con los crueles: ansí mi suerte lo quiso." 370 | "Dios formó lindas las flores, delicadas como son; le dio toda perfeción y cuanto él era capaz, pero al hombre le dio más cuando le dio el corazón." 371 | "Le dio claridá a la luz, juerza en su carrera al viento, le dio vida y movimiento dende la águila al gusano; pero más le dio al cristiano al darle el entendimiento." 372 | "Y aunque a las aves les dio, con otras cosas que inoro, esos piquitos como oro y un plumaje como tabla le dio al hombre más tesoro al darle una lengua que habla." 373 | "Y dende que dio a las fieras esa juria tan inmensa, que no hay poder que las venza ni nada que las asombre, ¿qué menos le daría al hombre que el valor pa su defensa?" 374 | "Pero tantos bienes juntos al darle, malicio yo que en sus adentros pensó que el hombre los precisaba que los bienes igualaba con las penas que le dio." 375 | "Y yo empujao por las mías quiero salir de este infierno: ya no soy pichón muy tierno y sé manejar la lanza, y hasta los indios no alcanza la facultá de gobierno" 376 | "yo sé que allá los caciques amparan a los cristianos, y que los tratan de cuando se van por su gusto. ¡A qué andar pasando sustos-! Alcemos el poncho y vamos." 377 | "En la cruzada hay peligros, pero ni aun esto me aterra: yo ruedo sobre la tierra arrastrao por mi destino; y si erramos el camino- no es el primero que lo erra." 378 | "Si hemos de salvar o no, de esto naides nos responde; derecho ande el sol se esconde tierra adentro hay que tirar; algún día hemos de llegar- después sabremos a dónde." 379 | No hemos de perder el rumbo: los dos somos güena yunta. El que es gaucho ve ande apunta aunque inora ande se encuentra; pa el lao en que el sol se dentra dueblan los pastos la punta. 380 | "De hambre no pereceremos, pues, sigún otros me han dicho, en los campos se hallan bichos de los que uno necesita- gamas, matacos, mulitas avestruces y quirquinchos." 381 | "Cuando se anda en el desierto se come uno hasta las colas; lo han cruzao mujeres solas llegando al fin con salú, y ha de ser gaucho el ñandú que se escape de mis bolas." 382 | "Tampoco a la sé le temo; yo la aguanto muy contento; busco agua olfatiando el viento y, dende que no soy manco, ande hay duraznillo blanco cavo, y la saco al momento." 383 | Allá habrá siguridá ya que aquí no la tenemos; menos males pasaremos y ha de haber grande alegría el día que nos descolguemos en alguna toldería. 384 | "Fabricaremos un toldo, como lo hacen tantos otros, con unos cueros de potro, que sea sala y sea cocina. ¡Tal vez no falte una china que se apiade de nosotros!" 385 | "Allá no hay que trabajar, vive uno como un señor; de cuando en cuando un malón, y si de él sale con vida, lo pasa echao panza arriba mirando dar güelta el sol" 386 | "Y ya que a juerza de golpes la suerte nos dejó aflús puede que allá veamos luz y se acaben nuestras penas: todas las tierras son güenas; vamonós, amigo Cruz." 387 | "El que maneja las bolas, el que sabe echar un pial y sentársele a un bagual sin miedo de que lo baje, entre los mesmos salvajes no puede pasarlo mal." 388 | "El amor como la guerra lo hace el criollo con canciones; a más de eso en los malones podemos aviarnos de algo; en fin amigo, yo salgo de estas pelegrinaciones." 389 | "En este punto el cantor buscó un porrón pa consuelo, echó un trago como un cielo, dando fin a su argumento; y de un golpe el instrumento lo hizo astillas contra el suelo." 390 | "Ruempo, dijo, la guitarra, pa no volverme a tentar; ninguno la ha de tocar, por siguro tengaló; pues naides ha de cantar cuando este gaucho cantó." 391 | "Y daré fin a mis coplas con aire de relación; nunca falta un preguntón más curioso que mujer, y tal vez quiera saber como jué la conclusión." 392 | "Cruz y Fierro de una estancia una tropilla se arriaron; por delante se la echaron como criollos entendidos, y pronto sin ser sentidos por la frontera cruzaron." 393 | "Y cuando la habían pasao, una madrugada clara le dijo Cruz que mirara las últimas poblaciones, y a Fierro dos lagrimones le rodaron por la cara." 394 | "Y siguiendo el fiel del rumbo se entraron en el desierto, no sé si los habrán muerto en alguna correría, pero espero que algún día sabré de ellos algo cierto." 395 | "Y ya con estas noticias mi relación acabé; por ser ciertas las conté, todas la desgracias dichas: es un telar de desdichas cada gaucho que usté ve." 396 | "Pero ponga su esperanza en el Dios que lo formó; y aquí me despido yo que he relatao a mi modo MALES QUE CONOCEN TODOS, PERO QUE NAIDES CONTÓ." 397 | -------------------------------------------------------------------------------- /flyer.jpeg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/nanom/llm_adaptation_workshop/3c683d7074568201d2e321bc6332e71062d584ab/flyer.jpeg --------------------------------------------------------------------------------