本笔记本提供快速入门指南 __UnDatasIO 文档加载器__。UnDatasIO 支持高效加载和解析多种文档格式,包括 PDF、PNG、JPG、JPEG 和 JFIF,具有文档延迟加载和原生异步支持等功能,所有这些都通过 UnDatasIO 的安全云 API 实现。这些功能使处理后的数据可以用于 RAG 等生成式 AI 工作流程。
有关所有功能和配置的详细文档,请参阅官方 API 参考。
概述
加载器功能
| 来源 | 文档延迟加载 | 原生异步支持 |
|---|---|---|
UnDatasIOLoader | ✅ | ✅ |
设置
凭据
UnDatasIO 需要 API 令牌。 在以下位置生成免费令牌 undatas.io 并在下面的单元格中设置:
if "UNDATASIO_TOKEN" not in os.environ:
os.environ["UNDATASIO_TOKEN"] = getpass.getpass(
"Enter your UnDatasIO API token: "
)
安装
常规安装
运行本笔记本的其余部分需要以下包。
# Install package, compatible with API partitioning
pip install langchain-undatasio
初始化
该 __UnDatasIOLoader__ 支持通过 UnDatasIO 云 API 进行单文件上传和解析。
from langchain_undatasio import UnDatasIOLoader
loader = UnDatasIOLoader(
token=os.environ["UNDATASIO_TOKEN"],
file_path="demo.pdf"
)
加载
docs = loader.load()
docs[0]
Document(
metadata={'source': 'demo.pdf', 'task_id': 't1', 'file_id': 'f1'},
page_content='Growing a Tail: Increasing Output Diversity in Large Language Models\n\nAuthors: Michal Shur-Ofry1, Bar Horowitz-Amsalem1†, Adir Rahamim2, Yonatan Belinkov2*\n\nAffiliations:\n\n1Law Faculty, Hebrew University of Jerusalem; Jerusalem, Israel.\n\n2Faculty of Computer Science, Technion – I'
)
print(docs[0].page_content[:300])
Growing a Tail: Increasing Output Diversity in Large Language Models
Authors: Michal Shur-Ofry1, Bar Horowitz-Amsalem1†, Adir Rahamim2, Yonatan Belinkov2*
Affiliations:
1Law Faculty, Hebrew University of Jerusalem; Jerusalem, Israel.
2Faculty of Computer Science, Technion – I
延迟加载
__UnDatasIOLoader__ 支持延迟加载以实现高效的内存迭代。
pages = []
for doc in loader.lazy_load():
pages.append(doc)
pages[0]
Document(
metadata={'source': 'demo.pdf', 'task_id': 't1', 'file_id': 'f1'},
page_content='Growing a Tail: Increasing Output Diversity in Large Language Models\n\nAuthors: Michal Shur-Ofry1, Bar Horowitz-Amsalem1†, Adir Rahamim2, Yonatan Belinkov2*\n\nAffiliations:\n\n1Law Faculty, Hebrew University of Jerusalem; Jerusalem, Israel.\n\n2Faculty of Computer Science, Technion – I'
)