llms.txt toevoegen in je Docker containers

Je draait toepassingen in Docker containers en wilt dat je LLM-interfaces netjes vindbaar en conform standaarden zijn. Het llms.txt-bestand is de eenvoudige manier om modellen en endpoints transparant te publiceren — ideaal voor integratie, discovery en security-scans.

In dit artikel leggen we praktisch uit waarom je llms.txt in je containers moet hebben en hoe je het eenvoudig toevoegt. Geen theorie, maar concrete stappen en voorbeelden die je direct kunt toepassen.

Belangrijk onderdeel 1: Wat is llms.txt en waarom in Docker?

llms.txt is een kleine tekstresource die informatie over beschikbare LLM-endpoints publiceert, vergelijkbaar met robots.txt maar speciaal voor language models. Voor services die modellen aanbieden maakt het eenvoudiger voor clients, scanners en registries om snel te weten welke endpoints bestaan en welke metadata erbij hoort. In Docker-omgevingen draait vaak alles achter reverse proxies of load balancers; daarom moet je llms.txt correct ingepakt en geserveerd worden zodat externe partijen er bij kunnen.

Praktische tip of verdieping

  • Zorg dat llms.txt bereikbaar is via /.well-known/llms.txt of /llms.txt zodat scanners het verwachten.
  • Voorzie minimaal naam, endpoint-URL en supported-protocols (bijv. http, grpc, websocket) in het bestand.
  • Let op juiste content-type: text/plain; charset=utf-8
  • Voorbeeld van eenvoudige inhoud:
    # llms.txt version: 1
    name: mijn-model
    endpoint: https://api.example.com/v1/llm
    protocols: http, websocket
    

Belangrijk onderdeel 2: llms.txt toevoegen aan je Docker containers

Het meest robuuste patroon is het llms.txt-bestand in je image opnemen en je webserver configureren om het statisch te serveren. Met een paar regels in de Dockerfile en een korte webserver-config heb je het werkend in zowel development als productie. Denk ook aan permissies en caching-headers zodat het bestand snel en consistent wordt aangeboden.

Praktische tip of verdieping

  1. Maak een llms.txt-bestand in je repo, bijvoorbeeld in ./public/.well-known/llms.txt.
  2. Dockerfile: kopieer het bestand naar de image:
    FROM nginx:alpine
    COPY public /usr/share/nginx/html
    
  3. Voor Nginx: zorg dat /.well-known/* toegankelijk is (optioneel extra location block):
    location /.well-known/ {
        alias /usr/share/nginx/html/.well-known/;
        add_header Content-Type text/plain;
    }
    
  4. Bouw en run de container, test extern met curl:
    docker build -t my-app .
    docker run -p 8080:80 my-app
    curl -i http://localhost:8080/.well-known/llms.txt
    
  5. Automatiseer controle in CI: voeg een stap toe die de URL pings en controleert op HTTP 200 en text/plain.

Praktische check die je nu direct kunt doen: voer curl uit naar /.well-known/llms.txt op je live endpoint en controleer dat je HTTP 200 krijgt, Content-Type text/plain en dat de sleutelvelden (name, endpoint, protocols) aanwezig zijn — pas waar nodig je Dockerfile of webserver-config aan totdat die check slaagt.

Scroll to Top