Пакет Python для преобразования PDF (или PDF -URL -адресов) в размещение при извлечении изображений и таблиц. Markdrop позволяет легко конвертировать документы PDF в формат разметки при сохранении изображений и таблиц.
pip install markdrop https://pypi.org/project/markdrop
from markdrop import extract_images , make_markdown , extract_tables_from_pdf
source_pdf = 'url/or/path/to/pdf/file' # Replace with your local PDF file path or a URL
output_dir = 'data/output' # Replace it with desired output directory's path
make_markdown ( source_pdf , output_dir )
extract_images ( source_pdf , output_dir , verbose = True )
extract_tables_from_pdf ( source_pdf , output_dir = output_dir ) from markdrop import setup_keys
### API Key Setup
### If using 'openai' or 'gemini' as llm_client in the generate_descriptions function, you need to set up the API keys first.
setup_keys () from markdrop import generate_descriptions
### Image Descriptions Generation
prompt = "Give textual highly detailed descriptions from this image ONLY, nothing else." # Replace it with your desired prompt
input_path = 'path/to/img_file/or/dir' # Replace it with the path to the images dir or image file
output_dir = 'data/output' # Replace it with the desired output directory's path
llm_clients = [ 'gemini' , 'llama-vision' ] # Replace it with the desired models from ['qwen', 'gemini', 'openai', 'llama-vision', 'molmo', 'pixtral'] only
generate_descriptions ( input_path = input_path , output_dir = output_dir , prompt = prompt , llm_client = llm_clients )Преобразует PDF или его URL в формат разметки.
Параметры:
source (Str): Путь к вводу PDF или URLoutput_dir (str): путь выходного каталогаverbose (bool): включить подробную регистрациюИзвлекает изображения из PDF или его URL при сохранении качества.
Параметры:
source (Str): Путь к вводу PDF или URLoutput_dir (str): путь выходного каталогаverbose (bool): включить подробную регистрациюОбнаружает и извлекает изображения таблиц.
Параметры:
pdf_path (str): путь к вводу PDF или URLstart_page (int, необязательно): номер начальной страницыend_page (int, необязательно): номер конца страницыthreshold (поплавок, необязательно): порог уверенности обнаруженияoutput_dir (str): путь выходного каталогаГенерирует описание изображений (ы) на основе заданного приглашения и llm_client в CSV
Поддерживаемые
llm clientsявляются [Qwen ',' Gemini ',' openai ',' llama-vision ',' molmo ',' pixtral ']
Параметры:
input_path (str): путь к вводу PDF или URLoutput_dir (str): путь выходного каталогаprompt (Str): подсказка для отправки на модель вместе с изображениемllm_client (список): список, содержащий минимум одну модель от клиентов LLMАнализ различных типов ссылок на изображение в PDF из локального файла или URL
Параметры:
source (STR): локальный PDF -путь или URL -адрес PDFoutput_dir (str): каталог для временных файловverbose (Bool): печатайте подробную информацию Мы приветствуем вклад! Пожалуйста, смотрите наши рекомендации для получения подробной информации.
git clone https://github.com/shoryasethia/markdrop.git
cd markdrop python -m venv venv
source venv/bin/activate # On Windows: venvScriptsactivate pip install -r requirements.txt markdrop/
├── LICENSE
├── README.md
├── CONTRIBUTING.md
├── CHANGELOG.md
├── requirements.txt
├── setup.py
└── markdrop/
├── models/
| ├── .env
| ├── img_descriptions.py
| ├── logger.py
| ├── model_loader.py
| ├── responder.py
| └── setup_keys.py
├── __init__.py
├── main.py
├── utils.py
├── helper.py
└── ignore_warnings.py Этот проект лицензирован по лицензии MIT - для получения подробной информации см. Файл лицензии.
Смотрите ChangeLog.md для истории версий.
Обратите внимание, что этот проект следует за нашем кодексом поведения.