Skip to content

docs: add external document extraction documentation - #1350

Open
memologoped wants to merge 1 commit into
open-webui:mainfrom
memologoped:add-external-docs
Open

docs: add external document extraction documentation#1350
memologoped wants to merge 1 commit into
open-webui:mainfrom
memologoped:add-external-docs

Conversation

@memologoped

Copy link
Copy Markdown

Summary

This PR adds missing documentation for the External document extraction engine.

While the external extraction method is already available in the Open WebUI admin settings, it currently has no dedicated documentation page (unlike Apache Tika, Docling, and Mistral OCR). This gap forces users to dig through GitHub issues and source code to figure out how to integrate their own extraction services.

The new page (docs/features/chat-conversations/rag/document-extraction/external.md) covers:

  • A high-level overview of what the External engine is and when to use it (scaling, custom OCR, PII filtering).
  • Step-by-step configuration via the Admin Panel.
  • A complete API specification for developers building the external service, including:
    • HTTP method (PUT to {URL}/process)
    • Required headers (Content-Type, Authorization, X-Filename)
    • Expected JSON response format (page_content + metadata)
  • A working minimal example of a FastAPI server that implements the required contract.

This documentation was written by inspecting the ExternalDocumentLoader source code in the main repository to ensure accuracy against the actual implementation.

Related issue or discussion

Checklist

  • I have reviewed the relevant documentation and matched the existing style.
  • This PR meets Open WebUI's contribution standards: it is accurate, relevant to users, narrowly scoped, maintainable, and not promotional content, advertising, lead generation, SEO placement, or a request to list a product, service, provider, integration, gateway, tool, or company primarily for visibility.
  • I understand that PRs that do not meet these standards may be closed without review and will not be merged. Repeated, low-quality, off-topic, promotional, or intentionally misleading submissions may result in the contributor being blocked from future participation in Open WebUI repositories.

Notes for reviewers

  • The sidebar_position: 5 was chosen to place the page after Docling (3) and Mistral OCR (4).
  • The FastAPI example uses @app.api_route("/process", methods=["PUT", "POST"]) to be resilient to future method changes, though the current loader only uses PUT.
  • I verified the API contract by reading backend/open_webui/retrieval/loaders/external_document.py in the main repo.
  • No existing pages were modified — this is a purely additive change.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant