DocETL

活跃
GitHub Python MIT

简介

DocETL 是一个由 LLM 驱动的智能数据处理和 ETL 系统,采用 Agent 架构实现复杂数据转换。支持自然语言定义数据处理管道,将非结构化数据转化为可分析的结构化输出。

核心特性

  • LLM 驱动的数据处理管道引擎,提供 map、reduce、resolve、gleaning 和 filter 等操作符用于复杂文档转换
  • DocWrangler 交互式 UI 沙盒,用于迭代式 Prompt 工程——实时实验 Prompt 并查看结果
  • Python 包,支持从命令行或 Python 代码运行生产管道,提供完整的编程控制
  • 自然语言管道定义——用纯英文描述数据处理任务,让 LLM 自动生成管道配置
  • AWS Bedrock 集成,支持可配置的配置文件和区域,提供企业级 LLM 后端支持
  • Claude Code 集成用于管道编写辅助——使用 Claude 帮助编写和调试管道配置

适用场景

💡 从研究论文、法律合同或报告等非结构化文档中提取结构化信息
💡 构建利用 LLM 智能处理传统规则系统遗漏的边界情况的 ETL 管道
💡 使用可视化 DocWrangler 沙盒迭代开发和测试数据处理 Prompt
💡 使用 AI 驱动的去重、合并和质量评估处理大型文档语料库
💡 通过智能分块和元数据提取从原始文档创建 RAG 就绪数据集

快速开始

使用 `pip install docetl` 安装。在 `.env` 中设置 `OPENAI_API_KEY`。如需 UI 沙盒,运行 `make docker`(需要 Docker)并访问 http://localhost:3000/playground。对于生产管道,在 YAML 配置中定义操作并通过 `docetl run pipeline.yaml` 运行。

相关项目