**Dify+OCR图文识别智能体开发项目实战---youkeit.xyz/16301/**Dify+OCR图文识别智能体开发项目实战---youkeit.xyz/16301/
在2025年企业数字化转型加速的背景下,“智能文档处理”已成为高需求、高客单价(8–30 万/项目)的黄金赛道。然而,传统开发模式需要后端、前端、算法、运维多人协作,周期长、成本高。而借助 Dify(低代码 AI 应用平台) + OCR(光学字符识别)API,一名开发者即可在 72 小时内交付生产级文档智能系统,直接提升接单竞争力。
本文将通过一个真实场景—— “物流运单自动结构化”项目,结合 Python 脚本 + Dify 工作流配置逻辑(以伪代码形式呈现) ,手把手演示如何实现高效交付。
💡 说明:Dify 支持可视化编排,但为便于理解底层逻辑,本文用代码模拟其工作流行为。实际部署时,90% 功能可通过 Dify 界面拖拽完成。
项目背景:客户痛点 vs 传统方案
客户需求:
每天接收 500+ 张 PDF/图片格式的物流运单,需人工录入“发货人、收货人、货物名称、重量、运费”等字段到 ERP 系统。
传统开发方案(5 人团队 × 4 周) :
- 算法工程师:训练表格检测模型(2周)
- 后端:搭建 OCR 服务 + 字段抽取 API(1周)
- 前端:上传界面 + 结果展示(1周)
- 测试 + 部署(1周)
总成本:人力约 20 万元,周期 1 个月。
我们的方案:Dify + 通用 OCR + 大模型 = 3 天交付
技术栈
- OCR 引擎:阿里云通用文字识别(高精度,支持表格)
- AI 编排平台:Dify(开源版或 SaaS)
- 大模型:DeepSeek / Qwen(用于语义理解与结构化)
- 输出:JSON 格式结构化数据,支持一键导出 Excel 或对接 API
第一步:调用 OCR 获取原始文本(Python 示例)
Python
编辑
1# install: pip install alibabacloud_ocr20191230
2from alibabacloud_ocr20191230.client import Client
3from alibabacloud_tea_openapi import models as open_api_models
4
5def get_ocr_text(image_path: str) -> str:
6 """调用阿里云 OCR 识别图片中的文字"""
7 config = open_api_models.Config(
8 access_key_id="YOUR_ACCESS_KEY",
9 access_key_secret="YOUR_SECRET",
10 endpoint="ocr.cn-shanghai.aliyuncs.com"
11 )
12 client = Client(config)
13
14 with open(image_path, "rb") as f:
15 content = f.read()
16
17 # 调用通用文字识别
18 response = client.recognize_general_expense(content=content)
19 # 提取所有识别出的文字块
20 words = [item["word"] for item in response.body.data.prism_wordsInfo]
21 return " ".join(words)
22
23# 示例
24raw_text = get_ocr_text("waybill_001.jpg")
25print("OCR 原始文本:", raw_text[:200] + "...")
✅ 优势:无需训练模型,直接使用成熟 OCR API,准确率 >95%(印刷体)。
第二步:用大模型将非结构化文本转为结构化 JSON(Dify 核心逻辑)
在 Dify 中,我们创建一个 “文本结构化”工作流,其核心是以下提示词(Prompt):
Text
编辑
1你是一名专业的物流数据录入员。请从以下运单文本中提取以下字段,并以严格 JSON 格式输出:
2
3字段要求:
4- shipper(发货人)
5- consignee(收货人)
6- goods_desc(货物描述)
7- weight_kg(重量,单位kg,数字)
8- freight_fee(运费,数字)
9
10原文本:
11{{ocr_output}}
12
13输出格式(仅 JSON,无其他文字):
14{
15 "shipper": "...",
16 "consignee": "...",
17 "goods_desc": "...",
18 "weight_kg": 12.5,
19 "freight_fee": 88.0
20}
模拟 Dify 调用大模型的 Python 代码
Python
编辑
1import requests
2import json
3
4def structure_with_llm(ocr_text: str) -> dict:
5 """模拟 Dify 调用大模型进行结构化"""
6 prompt = f"""
7 你是一名专业的物流数据录入员。请从以下运单文本中提取字段...
8 原文本:
9 {ocr_text}
10 输出格式(仅 JSON):
11 {{
12 "shipper": "...",
13 ...
14 }}
15 """
16
17 # 假设调用 DeepSeek API
18 response = requests.post(
19 "https://api.deepseek.com/v1/chat/completions",
20 headers={"Authorization": "Bearer YOUR_DEEPSEEK_KEY"},
21 json={
22 "model": "deepseek-coder",
23 "messages": [{"role": "user", "content": prompt}],
24 "temperature": 0.0 # 确保输出稳定
25 }
26 )
27
28 try:
29 content = response.json()["choices"][0]["message"]["content"]
30 return json.loads(content.strip("```json").strip("```"))
31 except Exception as e:
32 print("结构化解析失败:", e)
33 return {}
第三步:批量处理 + 导出 Excel(完整交付物)
Python
编辑
1import pandas as pd
2import os
3
4def process_waybills(folder_path: str, output_excel: str):
5 results = []
6 for filename in os.listdir(folder_path):
7 if filename.lower().endswith(('.png', '.jpg', '.pdf')):
8 image_path = os.path.join(folder_path, filename)
9 ocr_text = get_ocr_text(image_path)
10 structured = structure_with_llm(ocr_text)
11 structured["source_file"] = filename
12 results.append(structured)
13
14 # 保存为 Excel
15 df = pd.DataFrame(results)
16 df.to_excel(output_excel, index=False)
17 print(f"✅ 处理完成!共 {len(results)} 份运单,结果已保存至 {output_excel}")
18
19# 执行
20process_waybills("./waybills/", "structured_waybills.xlsx")
第四步:在 Dify 中实现“零代码”交付(客户可自助使用)
虽然上述代码可在 1 天内写完,但为了让客户无需技术能力也能使用,我们将整个流程部署到 Dify:
-
创建应用:选择“Workflow”模式;
-
添加节点:
- 文件上传 → 调用 OCR API(通过 HTTP 节点);
- 将 OCR 结果传给 LLM 节点(使用上述 Prompt);
- 添加“导出 Excel”节点(Dify 内置);
-
发布为 Web 应用:客户打开链接,拖拽图片,点击“处理”,下载 Excel。
🎯 交付成果:一个带 UI 的 Web 应用 + API 接口(可用于对接 ERP),3 天内完成。
投入 vs 回报:为什么客户愿意付 8 万+?
| 项目 | 传统方案 | Dify+OCR 方案 |
|---|---|---|
| 开发周期 | 4 周 | 3 天 |
| 人力成本 | 20 万元 | <1 万元(OCR 调用费 + 你的时间) |
| 可维护性 | 需专职运维 | Dify 自动托管,客户可自行操作 |
| 扩展性 | 难以复用 | 模板可复制到发票、合同、病历等场景 |
你的报价:8 万元(含 1 年维护),客户节省 60% 成本,你净赚 7 万+。
结语:低代码不是“低价值”,而是“高效率”
《Dify+OCR 低代码实战》的核心思想是:用成熟的云服务 + 智能编排,把复杂问题拆解为标准化模块。你不需要成为 OCR 专家或大模型科学家,只需掌握“如何组合它们”。
而这,正是未来自由开发者的核心竞争力——不是写更多代码,而是用更少代码解决更大问题。
📌 行动建议:
- 注册 Dify(开源版免费);
- 申请阿里云/百度 OCR 免费额度;
- 复用本文逻辑,打造你的第一个“文档智能”作品集。
3 天后,你就能向客户说:“这个项目,我三天上线。”