Unifiles¶
LLM 应用层的文档处理基础设施
Unifiles 是一个自托管的文档处理平台,为 AI 应用提供文件存储、内容提取和知识库管理的完整解决方案。
为什么选择 Unifiles?¶
快速体验¶
from unifiles import UnifilesClient
client = UnifilesClient(api_key="sk_...")
# 上传文件
file = client.files.upload("contract.pdf")
# 提取内容
extraction = client.extractions.create(file_id=file.id)
extraction.wait()
print(extraction.markdown) # Markdown 格式的内容
# 创建知识库并搜索
kb = client.knowledge_bases.create(name="contracts")
client.knowledge_bases.documents.create(kb_id=kb.id, file_id=file.id)
results = client.knowledge_bases.search(
kb_id=kb.id,
query="违约条款"
)
核心功能¶
Layer 1: 文件存储¶
安全存储各种格式的文档,支持去重、元数据和标签管理。
file = client.files.upload(
"document.pdf",
metadata={"project": "Q4-review"},
tags=["finance", "quarterly"]
)
Layer 2: 内容提取¶
将 PDF、Word、Excel 等格式转换为结构化的 Markdown。
extraction = client.extractions.create(
file_id=file.id,
mode="advanced", # 高精度 OCR
options={"extract_tables": True}
)
Layer 3: 知识库¶
构建向量知识库,支持语义搜索和混合搜索。
results = client.knowledge_bases.search(
kb_id=kb.id,
query="关键条款",
search_type="hybrid",
top_k=10
)
集成生态¶
-
LangChain
原生 Retriever 和 Loader 支持,无缝集成 RAG 流程
-
Webhooks
事件驱动的处理通知,构建响应式应用
文档导航¶
| 我想要... | 去这里 |
|---|---|
| 快速了解 Unifiles | 快速开始 |
| 理解核心概念 | 了解 Unifiles |
| 学习 API 使用 | 使用 API |
| 参考代码示例 | Cookbook |
| 查找 API 细节 | API 参考 |
| 部署到生产 | 自部署指南 |
获取帮助¶
- GitHub Issues - 报告问题
- GitHub Discussions - 社区讨论
- 故障排除 - 常见问题解决
开源协议¶
Unifiles 采用 Apache 2.0 开源协议。