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:
- Dividir el archivo
llms.txten fragmentos (chunks). - Vectorizar y almacenar en una base de datos (como ChromaDB, Weaviate).
- 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:
- Ejecutar periódicamente
actualizador_llms_txt.pypara refrescar el archivo. - 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:
- Comprender el contenido del sitio: Sin necesidad de scraping en tiempo real.
- Responder preguntas con precisión: Combinando tecnología RAG.
- Automatizar operaciones: Aplicaciones en SEO, traducción multilingüe, entre otras.
¡Selecciona el método adecuado según tus necesidades!