llmstxt_architect  by rlancemartin

Automating website content understanding for LLMs

Created 1 year ago
250 stars

Top 100.0% on SourcePulse

GitHubView on GitHub
1 Expert Loves This Project
Project Summary

This project addresses the challenge of enabling Large Language Models (LLMs) to effectively navigate and understand website content for task completion. llmstxt_architect automatically generates llms.txt files, which serve as a structured guide mapping website URLs to LLM-generated descriptions. This empowers LLMs to intelligently fetch and process relevant pages, streamlining complex web-based tasks for developers and researchers.

How It Works

The tool leverages LLMs to create descriptive summaries for each URL within a website. It can initiate from a list of seed URLs or an existing llms.txt file, employing a RecursiveURLLoader to crawl pages up to a configurable depth. Users can specify LLM providers (e.g., Anthropic, Ollama), models, and custom prompts for description generation. The core advantage lies in automating the creation of this LLM-navigational index, enhancing LLM utility for web data interaction.

Quick Start & Requirements

Installation can be done via a shell script (curl -LsSf https://astral.sh/uv/install.sh | sh then uvx --from llmstxt-architect llmstxt-architect ...) or directly with pip (pip install llmstxt-architect). Running the CLI requires specifying URLs, LLM details (name, provider), and a project directory, e.g., $ llmstxt-architect --urls <URL> --max-depth 1 --llm-name claude-3-7-sonnet-latest --llm-provider anthropic --project-dir test. Python API usage involves importing generate_llms_txt. Prerequisites include installing LLM provider packages (e.g., langchain-anthropic) and setting API keys or ensuring local LLM servers (like Ollama) are running. Official quick-start examples and documentation are available via CLI help and the provided code snippets.

Highlighted Details

  • LLM Provider Agnostic: Seamlessly integrates with various hosted (OpenAI, Anthropic) and local (Ollama) LLM providers by configuring --llm-provider and --llm-name.
  • Resilient Processing: Features a checkpointing system (summarized_urls.json) within a configurable project directory, allowing interrupted jobs to resume automatically.
  • Structural Preservation: The --update-descriptions-only flag enables updating descriptions while preserving the exact structure, headers, and URL order of an existing llms.txt file.
  • Extensible Content Extraction: Supports different HTML content extractors (default Markdownify, bs4 BeautifulSoup) and allows for custom extractor functions.
  • URL Blacklisting: Excludes specified URLs during crawling and final output generation via a configurable --blacklist-file.

Maintenance & Community

No specific details regarding maintainers, community channels (like Discord/Slack), or project roadmap were found in the provided README content.

Licensing & Compatibility

The project is released under the MIT license. This permissive license generally allows for broad compatibility, including commercial use and integration within closed-source applications without significant restrictions.

Limitations & Caveats

The project is described as an "emerging standard," suggesting it may still be evolving. The provided Python API example includes a placeholder my_extractor function requiring custom implementation for advanced use cases. Performance benchmarks or detailed scalability assessments are not presented in the README.

Health Check
Last Commit

1 year ago

Responsiveness

Inactive

Pull Requests (30d)
0
Issues (30d)
0
Star History
2 stars in the last 30 days

Explore Similar Projects

Starred by Tobi Lutke Tobi Lutke(Cofounder of Shopify), John Resig John Resig(Author of jQuery; Chief Software Architect at Khan Academy), and
1 more.

dom-to-semantic-markdown by romansky

0%
982
CLI tool for semantic Markdown conversion optimized for LLMs
Created 1 year ago
Updated 1 year ago
Starred by Carol Willing Carol Willing(Core Contributor to CPython, Jupyter), Chip Huyen Chip Huyen(Author of "AI Engineering", "Designing Machine Learning Systems"), and
4 more.

llms-txt by AnswerDotAI

0.3%
2k
Simple method for language models to use your website
Created 1 year ago
Updated 21 hours ago
Starred by Tobi Lutke Tobi Lutke(Cofounder of Shopify), Dirk Englund Dirk Englund(MIT EECS Professor and Cofounder of Axiomatic AI), and
25 more.

firecrawl by firecrawl

3.3%
149k
API service for turning websites into LLM-ready data
Created 2 years ago
Updated 14 hours ago
Feedback? Help us improve.