Unstract与Google Drive深度集成:云端文档自动提取工作流搭建
你是否还在手动下载Google Drive中的合同、发票等非结构化文档,然后逐个处理格式转换和信息提取?本文将带你用Unstract搭建全自动化的云端文档处理流水线,从Google Drive文件同步到结构化数据输出,全程无需编写代码。
准备工作:环境与组件说明
Unstract的No-code LLM平台通过连接器(Connector)、管道(Pipeline)和工作流(Workflow)三大组件实现自动化处理。核心模块包括:
- 连接器系统:backend/connector_v2/ 负责与外部系统建立安全连接
- 认证管理:backend/connector_auth_v2/ 处理Google OAuth授权流程
- 管道引擎:backend/pipeline_v2/ 编排文档提取与转换逻辑
- 工作流执行:backend/pipeline_v2/execution_view.py 管理任务运行状态
项目已内置Google Drive连接器支持,相关图标资源位于docs/assets/3rd_party/google_drive.png。
步骤一:配置Google Drive连接器
1.1 创建连接器实例
- 登录Unstract平台,进入连接器管理页面
- 点击新建连接器,选择Google Drive类型
- 填写基本信息:
- 名称:
GDrive-Finance-Docs(支持128个字符) - 访问范围:勾选只读(根据需求选择)
- 共享设置:启用组织共享(backend/connector_v2/models.py#L90-L93)
- 名称:
1.2 完成OAuth授权
系统会自动重定向至Google登录页面,授权成功后,认证信息将加密存储在:
- 数据表:
connector_auth(backend/connector_auth_v2/models.py#L130) - 字段:
extra_data(包含访问令牌和刷新令牌)
技术细节:连接器实例与认证信息通过外键关联(backend/connector_v2/models.py#L59-L65),支持多实例共享同一认证。
步骤二:搭建文档提取管道
2.1 创建新管道
在管道管理模块新建提取管道,关键配置项:
- 名称:
Invoice-Data-Extraction - 输入源:选择步骤一创建的Google Drive连接器
- 目标路径:
/Finance/Invoices/*.pdf(支持通配符匹配)
2.2 配置文档处理节点
Unstract提供可视化节点编辑器,推荐配置:
- 文件筛选器:只处理PDF文件
- 文本提取器:使用
unstructured-io引擎(docs/assets/3rd_party/unstructured_io.png) - LLM处理器:选用
GPT-4解析表格数据(docs/assets/3rd_party/openai.png) - 输出格式化:JSON格式,包含字段:
invoice_number、amount、date
管道定义将保存至backend/pipeline_v2/models.py中定义的Pipeline模型。
步骤三:设置自动化工作流
3.1 创建触发规则
在工作流管理中配置触发条件:
- 触发类型:定时触发(每日凌晨2点执行)
- 触发条件:当目标文件夹新增文件时
定时任务由SchedulerHelper管理,支持CRON表达式。
3.2 配置执行监控
启用执行日志记录,可通过PipelineExecutionViewSet查询历史执行记录,包含:
- 开始/结束时间
- 处理文件数
- 错误详情(如有)
步骤四:验证与优化
4.1 手动测试执行
在管道详情页点击立即执行,系统将:
- 创建执行记录(workflow_manager/workflow_v2/models/execution.py)
- 按节点顺序处理文件
- 生成结构化结果
4.2 查看执行报告
执行完成后,可在报表中心查看:
- 成功率统计
- 字段提取准确率
- 耗时分析
常见问题解决
授权过期处理
当Google Drive授权过期时,系统会自动尝试刷新令牌(backend/connector_auth_v2/models.py#L65-L80)。如刷新失败:
- 进入连接器详情页
- 点击重新授权
- 完成OAuth流程
性能优化建议
- 对于超过100页的大型文档,建议启用分块处理
- 并发控制:单个管道同时处理文件数≤5
- 缓存配置:启用utils/cache_service.py提升重复文件处理效率
总结与扩展
通过本文配置的工作流,你已实现Google Drive文档的全自动提取流程。该架构可扩展至:
- 多源集成:同步Dropbox、Box等其他云存储
- 高级处理:添加Anthropic Claude进行复杂文档理解
- 数据集成:输出至PostgreSQL或Snowflake
要获取更多模板,可查看项目plugins/目录下的社区贡献插件。
提示:定期备份你的管道配置,配置文件路径为configuration/。
希望本文能帮助你告别繁琐的人工处理,让Unstract的AI能力为你的团队赋能!需要进一步定制工作流?欢迎在项目GitHub_Trending/un/unstract提交issue。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考




