[Open Source] An efficient open-source knowledge extraction tool designed specifically for enterprise knowledge base development
![[Open Source] An efficient open-source knowledge extraction tool designed specifically for enterprise knowledge base development](https://yy123.ink/api/img/1782602714865-rbl6dw.jpg)
1. Project Overview
X2Knowledge - Knowledge Extraction Tool
X2Knowledge is an efficient open-source knowledge extraction tool designed specifically for enterprise knowledge base development. It supports intelligently converting files in various formats, including PDF, Word, PPT, Excel, WAV, and MP3, into structured TXT or Markdown formats, helping users quickly standardize and import various documents into enterprise knowledge base systems. Through advanced format parsing and content extraction technologies, this project significantly improves the efficiency and accuracy of knowledge conversion, making it an ideal preprocessing tool for RAG (Retrieval-Augmented Generation) applications and enterprise knowledge management.
This is a Python Flask-based web application that converts various document formats (Word, Excel, PowerPoint, PDF, TXT, and Markdown) into plain text or structured Markdown.
2. Open Source License
Licensed under Apache-2.0
3. Screenshots
System Screenshot
Interface
Homepage

API Calls

Original Format

Markdown Format

Effect
WORD File

WORD Conversion Result

WORD Table Conversion Result

Excel Result

PPT Result

4. Feature Overview
Features
- Convert Multiple File Formats into Text or Markdown
-
Supports Word (.doc, .docx), Excel (.xls, .xlsx), PowerPoint (.ppt, .pptx), PDF, text files, and more -
Preserves document structure in Markdown conversion mode -
Extracts text from images using OCR - Markdown Conversion
-
Preserves document structure, including headings, lists, and tables -
Maintains links and formatting -
Provides a preview of the converted Markdown - OCR Support
-
Automatically extracts text from images embedded in documents -
Supports images in Word, PowerPoint, and PDF files - Audio Conversion
(New Feature) -
Converts audio files (.mp3, .wav) into text/Markdown descriptions -
Extracts metadata, including duration, channels, and sample rate - UTF-8 Encoding
-
Automatically converts documents to UTF-8 encoding -
Resolves Chinese character display issues -
No manual encoding configuration required - Large File Support
-
Supports files up to 50MB -
Efficiently processes large documents
Project Advantages
- High-Performance Document Processing
Optimized document parsing engine that efficiently handles documents in various formats - Low Resource Consumption
Runs smoothly even on servers with limited configurations - Accurate Structure Preservation
Accurately preserves the original document structure, especially during Markdown conversion - Multi-Platform Support
Can be deployed on Windows, macOS, and Linux - Flexible API Interface
Provides a RESTful API for easy integration with other systems - Deployment Without External Dependencies
Core features require no external services, except for OCR functionality - Containerized Deployment
Supports Docker deployment to simplify environment configuration
Known Issues
-
Older Word documents (.doc format) may take longer to process; converting them to .docx format before uploading is recommended -
Some complex document layouts may not be perfectly preserved during Markdown conversion -
OCR accuracy depends on image quality and text complexity
5. Tech Stack
Usage
-
Select a conversion mode (Text or Markdown) -
Upload your document (or drag and drop it) -
View, copy, or download the conversion results -
Use the Markdown preview feature to view formatted results (when using Markdown mode)
REST API
This tool provides a REST API for programmatic access:
- Text Conversion
:POST /api/convert - Markdown Conversion
:POST /api/convert-to-md
For detailed documentation and testing, visit the API documentation page through the web interface.
Installation and Deployment
Local Installation
Requirements
-
Python 3.6+ -
Flask -
pytesseract (for OCR functionality) -
Tesseract OCR Engine
See the README.md documentation for details
Acknowledgments
-
pytesseract provides OCR functionality -
Flask Web Framework -
Markdown Tools -
marked.js provides Markdown rendering -
highlight.js provides code syntax highlighting -
Various document processing libraries