El Archivo llms.txt: Formato Estructurado para Modelos de Lenguaje

Archivo llms.txt

  • Definición El archivo llms.txt es una propuesta de normalización en formato markdown presentada por Jeremy Howard, diseñado para proporcionar información que ayude a los Modelos de Lenguaje Grandes (LLM) durante su razonamiento sobre un sitio web. A diferencia del contenido web tradicional, creado para lectores humanos, el archivo llms.txt ofrece información concisa y estructurada que los LLM pueden procesar rápidamente. Este formato resulta particularmente útil para entornos de desarrollo, documentación de bibliotecas de programación y diversos ámbitos como sitios corporativos, instituciones educativas y portafolios personales. El archivo llms.txt se ubica en la ruta raíz del sitio web (/llms.txt) y contiene secciones ordenadas específicamente, incluyendo nombre del proyecto, resumen, detalles detallados y una lista de archivos con URL para obtener información adicional. Esta estructura permite a los LLM acceder y procesar eficientemente la información más relevante del sitio web.
  • Ejemplo: https://www.tiendaEjemplo.com/llms.txt
# Tienda Ejemplo # Nombre del Sitio

> Tienda Ejemplo es el líder global en productos tecnológicos de alta calidad. Disfruta de smartphones, laptops, accesorios y más. # Descripción del Sitio

## Categorías de Productos # Módulos del Sitio

#Título    #Enlace    #Descripción
[Smartphones](https://www.tiendaEjemplo.com/celulares/smartphones/): Desde modelos económicos hasta dispositivos de gama alta, nuestra colección de smartphones ofrece opciones para todos los presupuestos.

[Portátiles](https://www.tiendaEjemplo.com/computadoras/portatiles/): Portátiles ultradelgados, laptops para gaming y equipos profesionales con las últimas tecnologías.


  • ¿Cómo utilizan los LLM el archivo llms.txt?

El archivo llms.txt es un texto estructurado que suele contener URL, títulos e información descriptiva de un sitio web. Los modelos de lenguaje grandes (como ChatGPT, GPT-4, etc.) pueden emplearlo de las siguientes maneras para obtener información del sitio:

1. Lectura directa del contenido

Los modelos pueden analizar el formato de llms.txt (como Markdown o texto plano) para extraer información clave:

markdownApply# Tienda Ejemplo
> Tienda Ejemplo es el líder global en productos tecnológicos de alta calidad...

## Categorías de Productos
[Guía de Compra de Smartphones](https://uat.tiendaEjemplo.com/celulares/guide/): Explora especificaciones, precios y características...
[Comparación de Portátiles](https://uat.tiendaEjemplo.com/computadoras/comparison/): Conoce las diferencias entre gamas, rendimiento y batería...


Utilidad: Comprender rápidamente la estructura y contenido principle del sitio.

2. Como base de conocimiento (Aplicación RAG)

En Generación Aumentada por Recuperación (Retrieval-Augmented Generation, RAG):

Pasos:

  1. Dividir el archivo llms.txt en fragmentos (chunks).
  2. Vectorizar y almacenar en una base de datos (como ChromaDB, Weaviate).
  3. Al hacer una pregunta, primero se recuperan fragmentos relevantes, luego se genera la respuesta.

Ejemplo:

Pregunta del usuario: "¿Qué información incluye la guía de compra de smartphones de Tienda Ejemplo?"

Acción del modelo:

​ Recuperar de llms.txt las URL y descripciones bajo ## Categorías de Productos.

​ Generar respuesta: "La guía incluye especificaciones técnicas, comparativas de precios, reseñas de usuarios y recomendaciones según el uso, disponible en [enlace]..."

3. Soporte para tareas automatizadas

Análisis SEO: Extraer títulos y descripciones para optimizar posicionamiento en buscadores.

Auditoría de contenido: Verificar si las descripciones contienen términos inapropiados o enlaces rotos.

Traducción multilingüe: Traducir masivamente títulos/descripciones para soporte internacional.

4. Integración con crawlers para actualizaciones dinámicas

Flujo:

  1. Ejecutar periódicamente actualizador_llms_txt.py para refrescar el archivo.
  2. El modelo de lenguaje lee la versión más reciente, asegurando información actualizada.

Ventaja: Evita mantenimiento manual, ideal para sitios de gran escala.

5. Limitaciones y Consideraciones

Naturaleza estática: El archivo requiere actualizaciones periódicas para evitar desactualización.

Requisitos de estructuración: Debe mantener formato consistente (como [Título](URL): Descripción).

Cumplimiento de privacidad: Asegurar que las URL sean públicas y no contengan datos sensibles.

Ejemplo de código (Python + Anthropic)

pythonApplyfrom anthropic import Anthropic
import re

# Cargar archivo llms.txt
with open("informacion_sitio.txt", "r") as archivo:
    contenido = archivo.read()

# Extraer entradas del archivo
patrones = re.findall(r'\[(.*?)\]\((.*?)\): (.*?)\n', contenido)

# Implementación RAG
cliente = Anthropic(api_key="tu-clave-api")
def responder_consulta(consulta):
    # 1. Filtrar entradas relevantes
    elementos_relevantes = [e for e in patrones if consulta.lower() in e[0].lower() or consulta.lower() in e[2].lower()]
    
    # 2. Llamada al modelo para generar respuesta
    contexto = "\n".join([f"{titulo}: {desc} ({url})" for titulo, url, desc in elementos_relevantes])
    respuesta = cliente.messages.create(
        model="claude-3",
        max_tokens=500,
        messages=[
            {"role": "system", "content": f"Usa esta información para responder: \n{contexto}"},
            {"role": "user", "content": consulta}
        ]
    )
    return respuesta.content[0].text

# Ejemplo de uso
print(responder_consulta("¿Qué información tiene la guía de compra de smartphones?"))


Resumen

El archivo llms.txt, mediante la provisión de metadatos estructurados del sitio web, ayuda a los modelos de lenguaje a:

  1. Comprender el contenido del sitio: Sin necesidad de scraping en tiempo real.
  2. Responder preguntas con precisión: Combinando tecnología RAG.
  3. Automatizar operaciones: Aplicaciones en SEO, traducción multilingüe, entre otras.

¡Selecciona el método adecuado según tus necesidades!

Etiquetas: IA ModelosDeLenguaje Documentación EstructuraciónDeDatos RAG

Publicado el 7-2 21:06