add missing file
This commit is contained in:
@@ -0,0 +1,168 @@
|
||||
Advanced Configuration
|
||||
======================
|
||||
|
||||
This page covers advanced configuration options for the sphinx-llms-txt extension.
|
||||
|
||||
.. _customizing_llms_files:
|
||||
|
||||
Customizing the LLMs Files
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
By default, the extension generates two files:
|
||||
|
||||
1. ``llms.txt`` - A summary file in Markdown format
|
||||
2. ``llms-full.txt`` - A complete documentation file in reStructuredText format
|
||||
|
||||
You can customize these files in several ways:
|
||||
|
||||
.. _changing_filenames:
|
||||
|
||||
Changing Filenames
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
|
||||
You can change the default filenames by setting these values in your ``conf.py``:
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
llms_txt_filename = "custom-summary.txt"
|
||||
llms_txt_full_filename = "custom-docs.txt"
|
||||
|
||||
.. _disabling_file_generation:
|
||||
|
||||
Disabling File Generation
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
If you only want one of the files, you can disable generation of the other:
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
# Disable summary file
|
||||
llms_txt_file = False
|
||||
|
||||
# Disable full documentation file
|
||||
llms_txt_full_file = False
|
||||
|
||||
.. _custom_summary:
|
||||
|
||||
Adding a Custom Summary
|
||||
~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
The summary file can include a custom description of your project:
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
llms_txt_summary = """
|
||||
This documentation explains how to use MyProject to build amazing
|
||||
applications. The project provides a comprehensive API for handling
|
||||
data processing and visualization.
|
||||
"""
|
||||
|
||||
.. note:: The summary can span multiple lines and will be properly formatted in the output file.
|
||||
|
||||
.. _custom_title:
|
||||
|
||||
Custom Title
|
||||
~~~~~~~~~~~~
|
||||
|
||||
By default, the project name from Sphinx is used as the title in ``llms.txt``. You can override this:
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
llms_txt_title = "My Custom Project Documentation"
|
||||
|
||||
.. _handling_large_documentation:
|
||||
|
||||
Handling Large Documentation
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
For very large documentation sets, generating the full documentation file might exceed reasonable size limits. You can set a maximum line count:
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
llms_txt_full_max_size = 10000 # Maximum 10,000 lines
|
||||
|
||||
If the generated file would exceed this limit, the extension will skip its generation and show a warning, allowing the build to complete.
|
||||
|
||||
.. tip:: Use :ref:`excluding_content` to remove less relevant pages.
|
||||
|
||||
.. _custom_directive_handling:
|
||||
|
||||
Custom Directive Handling
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
.. _path_resolution:
|
||||
|
||||
Path Resolution
|
||||
~~~~~~~~~~~~~~~
|
||||
|
||||
The extension resolves paths in common directives like ``image`` and ``figure``. You can add custom directives to this list:
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
llms_txt_directives = [
|
||||
"my-custom-image-directive",
|
||||
"another-directive-with-paths",
|
||||
]
|
||||
|
||||
This ensures that paths in your custom directives are properly resolved in the generated files.
|
||||
|
||||
.. _excluding_content:
|
||||
|
||||
Excluding Content
|
||||
^^^^^^^^^^^^^^^^^
|
||||
|
||||
You can exclude specific pages from being included in the generated files:
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
llms_txt_exclude = [
|
||||
"search", # Exclude the search page
|
||||
"genindex", # Exclude the index page
|
||||
"private_*", # Exclude all pages starting with 'private_'
|
||||
]
|
||||
|
||||
This is useful for excluding auto-generated pages, indexes, or content that isn't relevant for LLM consumption.
|
||||
|
||||
.. _using_html_baseurl:
|
||||
|
||||
Using HTML Base URL
|
||||
^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
If you want to include absolute URLs for resources in your documentation, you can use Sphinx's built-in ``html_baseurl`` configuration:
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
html_baseurl = "https://example.com/docs/"
|
||||
|
||||
When this option is set, all resolved paths in directives will be prefixed with this URL, creating absolute paths in the generated files.
|
||||
|
||||
.. _integration_examples:
|
||||
|
||||
Integration Examples
|
||||
^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Complete Configuration Example
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Here's a complete example showing multiple configuration options:
|
||||
|
||||
.. code-block:: python
|
||||
|
||||
# File names and generation options
|
||||
llms_txt_filename = "ai-summary.txt"
|
||||
llms_txt_full_filename = "ai-full-docs.txt"
|
||||
llms_txt_full_max_size = 50000
|
||||
|
||||
# Content customization
|
||||
llms_txt_title = "Project Documentation for AI Assistants"
|
||||
llms_txt_summary = """
|
||||
This is a comprehensive documentation set for our project.
|
||||
It includes API references, usage examples, and tutorials.
|
||||
"""
|
||||
|
||||
# Path handling
|
||||
html_baseurl = "https://docs.example.com/"
|
||||
llms_txt_directives = ["custom-image", "custom-include"]
|
||||
|
||||
# Content filtering
|
||||
llms_txt_exclude = ["search", "genindex", "404", "private_*"]
|
||||
Reference in New Issue
Block a user