📘 **TELUS Agriculture & Consumer Goods** 如何通过 **Haystack Agents** 转变促销交易
由 deepset 维护

集成:非结构化文件转换器

使用 Unstructured API 将文件和目录轻松转换为 Documents 的组件

作者
deepset

概述

Haystack LLM 框架的组件,使用 Unstructured API 将文件和目录转换为 Documents。

Unstructured 提供用于 LLM 的 ETL 工具,可从各种文件格式中提取文本和其他信息。有关更多详细信息,请参阅 支持的文件类型

安装

要安装 Unstructured 文件转换器,请运行

pip install unstructured-fileconverter-haystack

使用

连接到 Unstructured API

托管 API

Unstructured API 提供免费和付费版本:Unstructured Serverless API 或 Free Unstructured API。

对于免费 Unstructured API,API URL 为 https://api.unstructured.io/general/v0/general。对于 Unstructured Serverless API,请在您的 Unstructured 帐户中查找您的唯一 API URL。

请注意,免费版和付费版的 API 密钥不可互换。

将 Unstructured API 密钥设置为环境变量

export UNSTRUCTURED_API_KEY=your_api_key

本地 API (Docker)

您可以使用 Docker 运行 Unstructured API 的本地实例

docker run -p 8000:8000 -d --rm --name unstructured-api quay.io/unstructured-io/unstructured-api:latest --port 8000 --host 0.0.0.0

初始化组件时,请指定 localhost URL

from haystack_integrations.components.converters.unstructured import UnstructuredFileConverter

converter = UnstructuredFileConverter(api_url="https://:8000/general/v0/general")

运行 Unstructured 文件转换器

独立运行

import os
from haystack_integrations.components.converters.unstructured import UnstructuredFileConverter

converter = UnstructuredFileConverter()
documents = converter.run(paths = ["a/file/path.pdf", "a/directory/path"])["documents"]

在 Haystack 管道中运行

import os
from haystack import Pipeline
from haystack.components.writers import DocumentWriter
from haystack.document_stores.in_memory import InMemoryDocumentStore
from haystack_integrations.components.converters.unstructured import UnstructuredFileConverter

document_store = InMemoryDocumentStore()

indexing = Pipeline()
indexing.add_component("converter", UnstructuredFileConverter())
indexing.add_component("writer", DocumentWriter(document_store))
indexing.connect("converter", "writer")

indexing.run({"converter": {"paths": ["a/file/path.pdf", "a/directory/path"]}})