c56bef871b
Sync docs with Docusaurus / sync (push) Waiting to run
Tests / Check if changed (push) Waiting to run
Tests / format (push) Blocked by required conditions
Tests / check-imports (push) Blocked by required conditions
Tests / Unit / macos-latest (push) Blocked by required conditions
Tests / Unit / ubuntu-latest (push) Blocked by required conditions
Tests / Unit / windows-latest (push) Blocked by required conditions
Tests / mypy (push) Blocked by required conditions
Tests / Integration / ubuntu-latest (push) Blocked by required conditions
Tests / Integration / macos-latest (push) Blocked by required conditions
Tests / Integration / windows-latest (push) Blocked by required conditions
Tests / notify-slack-on-failure (push) Blocked by required conditions
Tests / Mark tests as completed (push) Blocked by required conditions
Docker image release / Build base image (push) Waiting to run
CodeQL / Analyze (python) (push) Has been cancelled
Update Platform Components Table / update (push) Has been cancelled
62 lines
1.8 KiB
Markdown
62 lines
1.8 KiB
Markdown
---
|
||
title: "Markitdown"
|
||
id: integrations-markitdown
|
||
description: "Markitdown integration for Haystack"
|
||
slug: "/integrations-markitdown"
|
||
---
|
||
|
||
|
||
## haystack_integrations.components.converters.markitdown.markitdown_converter
|
||
|
||
### MarkItDownConverter
|
||
|
||
Converts files to Haystack Documents using [MarkItDown](https://github.com/microsoft/markitdown).
|
||
|
||
MarkItDown is a Microsoft library that converts many file formats to Markdown,
|
||
including PDF, Word (.docx), PowerPoint (.pptx), Excel (.xlsx), HTML, images,
|
||
audio, and more. All processing is performed locally.
|
||
|
||
### Usage example
|
||
|
||
```python
|
||
from haystack_integrations.components.converters.markitdown import MarkItDownConverter
|
||
|
||
converter = MarkItDownConverter()
|
||
result = converter.run(sources=["document.pdf", "report.docx"])
|
||
documents = result["documents"]
|
||
```
|
||
|
||
#### __init__
|
||
|
||
```python
|
||
__init__(store_full_path: bool = False) -> None
|
||
```
|
||
|
||
Initializes the MarkItDownConverter.
|
||
|
||
**Parameters:**
|
||
|
||
- **store_full_path** (<code>bool</code>) – If `True`, the full file path is stored in the Document metadata.
|
||
If `False`, only the file name is stored. Defaults to `False`.
|
||
|
||
#### run
|
||
|
||
```python
|
||
run(
|
||
sources: list[str | Path | ByteStream],
|
||
meta: dict[str, Any] | list[dict[str, Any]] | None = None,
|
||
) -> dict[str, list[Document]]
|
||
```
|
||
|
||
Converts files to Documents using MarkItDown.
|
||
|
||
**Parameters:**
|
||
|
||
- **sources** (<code>list\[str | Path | ByteStream\]</code>) – List of file paths or ByteStream objects to convert.
|
||
- **meta** (<code>dict\[str, Any\] | list\[dict\[str, Any\]\] | None</code>) – Optional metadata to attach to the Documents. Can be a single dict
|
||
applied to all Documents, or a list of dicts aligned with `sources`.
|
||
|
||
**Returns:**
|
||
|
||
- <code>dict\[str, list\[Document\]\]</code> – A dictionary with key `documents` containing the converted Documents.
|