6 puntos por xguru 2024-09-09 | 4 comentarios | Compartir por WhatsApp
  • Los sitios web no solo se usan para proporcionar información a las personas, sino también a los LLM
  • Los LLM se usan para mejorar los entornos de desarrollo que utilizan los programadores, incluyendo la opción de recopilar información sobre bibliotecas de programación y APIs desde la documentación en sitios web
  • Proporcionar información para los LLM es un poco distinto de proporcionar información para las personas, pero hay mucho solapamiento
    • En general, prefieren información en un formato más conciso
    • Pueden recopilar mucha información rápidamente, por lo que ayuda reunir toda la información clave en un solo lugar
    • La ventana de contexto de los LLM es demasiado pequeña para procesar un sitio web completo, y convertir páginas HTML complejas en documentos de texto plano amigables para LLM es difícil
  • Por eso, hace falta una forma de identificar la información más importante que se debe ofrecer a los asistentes de IA y proporcionarla en el formato más adecuado

Proposal

  • Se propone que quienes quieran ofrecer contenido amigable para LLM agreguen un archivo /llms.txt a su sitio
    • Este es un archivo Markdown que proporciona información de contexto e instrucciones simples, e incluye enlaces a archivos Markdown con información más detallada
    • Puede usarse para proporcionar la información necesaria para usar una biblioteca o como parte de una investigación para aprender sobre una persona u organización
  • El Markdown de llms.txt puede ser leído por personas y por LLM, pero también permite el procesamiento de un formato preciso
  • El archivo llms.txt puede usarse en diversos escenarios
    • En el caso de bibliotecas de software, proporciona una visión estructurada de la documentación para que los LLM puedan encontrar fácilmente funciones específicas o ejemplos de uso
    • En sitios web corporativos, puede describir de forma general la estructura de la organización y las principales fuentes de información
    • La información curada sobre nuevas leyes, junto con el contexto y antecedentes necesarios, puede organizarse en un archivo llms.txt para ayudar a las partes interesadas a entenderlas
    • Los sitios web de portafolio personal o CV pueden ayudar a responder preguntas sobre una persona
    • En comercio electrónico, puede describir brevemente categorías de productos y políticas
    • Las instituciones educativas pueden usarlo para resumir su oferta de cursos y recursos

Formato del archivo llms.txt

  • El formato del archivo llms.txt proporciona una estructura de información usando Markdown, que es fácil de entender para los modelos de lenguaje
  • Este archivo usa Markdown en lugar de formatos estructurados tradicionales (por ejemplo, XML), porque los principales lectores del archivo son modelos de lenguaje y agentes
  • El archivo llms.txt puede leerse con herramientas de programación estándar y se organiza según un formato específico
    • Encabezado H1: incluye el nombre del proyecto o sitio, y es la única sección obligatoria.
    • Bloque de cita: incluye un breve resumen del proyecto y proporciona la información clave necesaria para entender el resto del archivo.
    • Secciones Markdown: proporcionan información detallada y pueden incluir varios tipos de secciones, como párrafos y listas, pero no incluyen encabezados adicionales.
    • Sección de lista de archivos separada por encabezados H2: incluye una lista de URLs que proporcionan información adicional; cada elemento se escribe con el formato de enlace Markdown [nombre](URL) y opcionalmente puede incluir una descripción.
  • Ejemplo de archivo
# Título del proyecto  
  
> Aquí va una descripción opcional del proyecto  
  
Aquí van detalles opcionales  
  
## Nombre de la sección  
  
- [Título del enlace](https://링크_URL): Descripción opcional del enlace  
  
## Optional  
  
- [Título del enlace](https://링크_URL)  
  • Sección "Optional": tiene un significado especial; si solo se necesita un contexto breve, esas URL pueden omitirse. Incluye información secundaria que a menudo se puede dejar fuera.

Convivencia con estándares existentes

  • llms.txt fue diseñado para funcionar junto con los estándares web existentes
  • Mientras que los sitemaps enumeran todas las páginas para los motores de búsqueda, llms.txt proporciona una visión general curada para los LLM (modelos de lenguaje grandes)
  • llms.txt es complementario a robots.txt y puede proporcionar contexto sobre el contenido permitido
  • También puede hacer referencia al marcado de datos estructurados usado en el sitio, para ayudar a los LLM a entenderlo e interpretarlo
  • Estandariza la ruta del archivo de la misma manera que /robots.txt y /sitemap.xml
    • robots.txt y llms.txt tienen propósitos distintos
      • robots.txt: se usa para que herramientas automatizadas (por ejemplo, bots de indexación de búsqueda) entiendan el alcance permitido de acceso al sitio
      • llms.txt: se usa principalmente cuando un usuario solicita explícitamente información sobre un tema específico. Por ejemplo, es útil al incluir la documentación de una biblioteca de código en un proyecto o al pedir información a un chatbot con función de búsqueda
    • Se espera que llms.txt sea útil principalmente para la inferencia (inference). Se usará en el momento en que el usuario necesite ayuda y no se espera que se use para entrenamiento (training). Sin embargo, si el uso de llms.txt se generaliza, existe la posibilidad de que esta información también pueda aprovecharse en procesos de entrenamiento en el futuro
  • Diferencias con sitemap.xml
    • sitemap.xml: enumera toda la información legible por humanos e indexable del sitio
    • llms.txt no es un reemplazo de sitemap.xml:
      • Puede no incluir versiones de páginas legibles por LLM.
      • No incluye URLs de sitios externos que podrían ser útiles para entender la información.
      • En general incluye documentos demasiado grandes que no caben en la ventana de contexto del LLM, así como mucha información innecesaria para entender el sitio.
    • llms.txt puede funcionar como una herramienta optimizada para que los modelos de lenguaje accedan a información específica y entiendan el contexto

4 comentarios

 
iolothebard 2025-02-27

Parece que también se podría extender robots.txt… ¿realmente hace falta darle un estatus especial a los crawlers para LLM?
Más bien, ojalá se ordenaran un poco los user-agent de los crawlers de LLM… aunque el propio user-agent ya está medio en sus últimos días, así que es ambiguo.

Posdata 1. Si le ponen .txt, ¿por qué es Markdown? A mí también me gusta mucho Markdown, pero no hacía falta…

 
kwj9211 2024-09-09

El nombre llms me incomoda un poco porque hace que parezca una interfaz para una tecnología específica...

 
ilotoki0804 2024-09-10

Tal cual. En vez de crear otro estándar extraño y con muy poca aplicabilidad general, me parece que sería mejor usar o ampliar estándares que ya existen, como JSON-LD.

 
regentag 2024-09-09

Si esto se populariza, entonces con un archivo llms.txt adecuado se podría impedir que un LLM use mi sitio.
Por ejemplo, proporcionándole información totalmente distinta e inútil,
o dándole información tan grande que consuma por completo el contexto del LLM.