1 概述

1.1 案例介绍

DeepSeek 是一家创新型科技公司,长久以来专注于开发先进的大语言模型(LLM)和相关技术。该公司推出了比较出名的模型有 DeepSeek-V3 和 DeekSeek-R1。DeepSeek-R1 在后训练阶段大规模使用了强化学习技术,在仅有极少标注数据的情况下,极大提升了模型推理能力。

Dify是一款面向开发者和企业的AI应用开发平台,致力于降低AI技术的使用门槛。通过可视化工作流编排和低代码开发模式,用户无需深厚的技术背景即可快速构建、部署和管理AI驱动的智能应用。

本案例通过实操,让开发者深入了解,如何使用Dify和DeepSeek构建财务报表分析模型,体验Dify在AI应用开发中的便捷。

1.2 适用对象

  • 企业

  • 个人开发者

  • 高校学生

1.3 案例时间

本案例总时长预计40分钟。

1.4 案例流程

 

说明:

① 用户登录华为开发者空间;

② 在云主机配置Dify操作环境;

③ 浏览器打开Dify,构建模型应用。

1.5 资源总览

本案例预计花费0元。

资源名称

规格

单价(元)

时长(分钟)

开发者空间

2vCPUs | 4GB X86 |Ubuntu 22.04 Server定制版

0

40

2 获取模型服务

2.1 领取模型

本案例中,使用华为开发者空间登录MaaS,获取模型服务。

ModelArts Studio(MaaS)平台,是华为云推出的一款大模型即服务平台,可以一站式的对业界主流开源大模型进行部署托管,同时开放大模型API服务,可以结合业界主流Agent开发框架,轻松构建AI Agent应用。

1. 在开发者空间firefox浏览器,输入华为云网址:https://www.huaweicloud.com/进入华为云首页。

2. 在华为云的首页右上方,点击登录,在弹出的对话框中输入自己的用户名和密码。

 

3. 登录成功后,在华为云首页,依次选择产品>人工智能>AI基础平台>ModelArts Studio大模型及服务平台,进入ModelArts Studio页面。

4. 进入到ModelArts Studio页面后,点击进入控制台。

 

5. 进入到ModelArts Studio控制台后,首先左上角地域选择西南贵阳一,随后点击在线推理>免费服务。

 

6. 点击领取额度,额度领取成功后需要等待2-3分钟才可以生效,随后点击调用说明,获取模型名称以及API地址,这里我们领取DeepSeek-R1-32K。

 

7. 点击调用说明后,可以获取到模型名称、API地址。

 

2.2 API Key获取

在调用说明页面,点击API Key管理,前往API Key获取页面。

 

进入API Key页面后,点击右上角创建API Key,输入标签和描述,然后点击确定。

 

点击确定后就可以获取到API Key了。(注意:创建好的API Key只会显示这一次,所以请保存好,方便后续调用。如果API误关后,可以删除重新创建,但最多创建5个。)

 

3 配置Dify操作环境

3.1 安装Dify

Dify是一个开源的AI应用开发平台与编排引擎,专注于帮助用户快速构建、部署和管理基于大语言模型(LLM)的AI应用。

进入开发者空间,在桌面左下角,打开终端命令窗口,下载Dify.AI安装脚本。

sudo wget -P /home/ https://dtse-mirrors.obs.cn-north-4.myhuaweicloud.com/case/0022/install.sh

 

安装脚本下载完毕后,进行脚本运行。

sudo bash /home/install.sh

 

安装完毕后出现安装过程结束,详细日志请查看/var/dify-install.log即为安装成功。

3.2 访问Dify

在开发者空间打开firefox浏览器,输入http://127.0.0.1访问Dify.AI。首次登录需要注册管理员账号,需要使用到邮箱、用户名、密码。

 

注册完毕后,成功进入到Dify.AI的主页面。

 

到这里,就成功部署了Dify。

4 功能实现

4.1 工作流构建

工作流通过将复杂的任务分解成较小的步骤(节点)降低系统复杂度,减少了对提示词技术和模型推理能力的依赖,提高了LLM应用面向复杂任务的性能,提升了系统的可解释性、稳定性和容错性。主要分为两种:

Chatflow:面向对话类情景,包括客户服务、语义搜索、以及其他需要在构建响应时进行多步逻辑的对话式应用程序。在当前案例中,我们使用的就是Chatflow。

Workflow:面向自动化和批处理情景,适合高质量翻译、数据分析、内容生成、电子邮件自动化等应用程序。

1. 创建应用

点击Dify.AI主页的创建空白应用。

 

随后点击chatflow,输入应用名称、描述后点击创建。(注:应用名称和描述可以自定义)

 

创建完毕后,由于后续要增加新的节点,所以将LLM节点和直接回复节点删除。

 

2. 配置开始节点

点击开始节点->输入字段右侧的加号,在打开的窗口中参考如下信息进行配置:

  • 字段类型:文件列表;

  • 变量名称:自定义,如text;

  • 显示名称:自定义,如text;

  • 支持的文件类型:文档;

  • 上传文件类型:两者(这里上传文档可以使后续增加的节点读取到我们上传的文档内容);

  • 最大上传数:5(默认)。

 

3. 配置文档提取器节点

在Dify中,LLM节点自身无法直接读取或解释文档的内容,因此需要将用户上传的文档,通过文档提取器节点解析并读取文档中的信息,转化文本之后再将内容传给LLM以实现对文件内容的处理。

配置完毕后,点击开始节点右侧的加号,添加文档提取器节点。

 

添加完成后,对文档提取器节点开始配置,点击文档提取器节点,在输入变量中将在开始节点设置的变量名称插入(如text)。

 

4. 添加LLM节点

LLM(Large Language Model)是当前人工智能领域最具革命性的技术之一,是一种基于深度学习框架构建的人工智能系统,通过在海量的文本数据上进行预训练,学习语言的统计规律和语义关系,从而获得理解和生成人类语言的能力。

LLM节点的作用是调用大语言模型的能力,处理用户在“开始”节点中输入的信息(自然语言、上传的文件或和图片),给出有效的回应信息。

点击文档提取器节点右侧的加号,添加LLM节点。

 

5. 配置模型

添加完成后,首先进行模型配置。点击LLM节点->模型->模型设置。

 

打开模型设置后,在模型供应商中找到OpenAI-API-compatible(由于是调用MaaS的API,所以在模型供应商中选择此供应商),点击安装。

 

安装完毕后,点击模型设置,参数按照下表进行配置。

参数名称

参数配置

模型类型

LLM

模型名称

2.1步骤中获取的模型名称

模型显示名称

2.1步骤中获取的模型名称

API Key

2.1中获取的API Key

APIendpoint URL

2.1步骤中获取的模型URL,将URL最后/chat/completions删除即可

APIendpoint中的模型名称

DeepSeek-R1

其他选项配置

默认

模型配置完成后,点击LLM节点添加上下文变量,选择文档提取器中我们设置的text变量。选择文档提取器中的变量,是为了将我们上传的文档表格,经过文档提取器的转换,转化为LLM可以理解的格式,以便大模型更好的理解分析文档表格内容。

 

6. 添加提示词

提示词是用户给大语言模型输入的指令或者问题,用于引导模型生成符合预期的回答或内容,其核心作用是明确任务要求,控制输出方向,并优化大语言模型的响应质量。

将以下提示词模板复制到图中模块中。

# 任务

- **主要目标**:全面解析企业的财务报表结构,识别关键财务指标与潜在风险。
- **目标**:详细说明资产负债表、利润表、现金流量表等核心部分的内容与逻辑关系。
- **要求**:结合财务比率分析、趋势分析和行业对比,深入评估企业财务健康状况。
- **限制**:无特别格式限制,但需保持分析的严谨性和逻辑性。
- **预期输出**:财务报表的结构化解析,包括各部分的核心内容、作用及分析结论。

# 推理顺序

- **推理部分**:1.识别报表类型:确认分析对象为资产负债表、利润表、现金流量表等;
 2.分解核心部分:逐项解析报表中的关键科目(如流动资产、营业收入、现金流等);
3.数据验证:检查数据的一致性(如资产负债表借贷平衡、利润表与现金流量表关联性);
 4.财务比率计算:计算流动性比率(如流动比率)、偿债能力比率(如资产负债率)、盈利能力比率(如ROE)等;
 5.趋势与行业对比:分析历史数据趋势及与行业平均水平的差异;
 6.风险与机会识别:基于分析结果,指出潜在财务风险或增长机会。
- **结论部分**:1.总结企业核心发现:如企业盈利是否稳定、现金流是否健康、负债是否可控;
  2.提出建议:如优化资本结构、改善营运效率或调整投资策略。

# 输出格式

- **解析格式**:以报表类型为标题,分项说明各部分的内容与作用。
- **结构形式**:Markdown表格,增强可读性。
- **具体说明**:每个部分需包含以下内容:1.报表类型:资产负债表、利润表、现金流量表等;2.核心内容:报表中关键科目及数据组成;3.作用:分析该部分对财务健康评估的贡献;4.分析维度:涉及的财务比率、趋势或行业对比等。


### 交互规则
1. **问题范围**:仅接受与**资产负债表、利润表、现金流量表**相关的分析请求
2. **偏离引导**:当问题涉及战略、市场、人力等非财务领域时,系统将提示:
> "当前分析聚焦于财务报表维度,请问您需要解析资产负债表结构、利润表项目关联性,还是现金流健康度评估?"

### 核心任务
| 分析阶段 | 执行内容 |
|----------------|--------------------------------------------------------------------------|
| 1. 报表识别 | 确认目标报表类型(资产负债表/利润表/现金流量表)及会计期间 |
| 2. 科目解构 | 拆解核心科目数值与勾稽关系(如流动资产构成、营收与现金流的匹配度) |
| 3. 数据验证 | 校验三表逻辑一致性(如净利润与经营现金流差异分析) |
| 4. 比率计算 | 输出三大类指标:流动性(流动比率)、偿债性(利息覆盖倍数)、盈利性(ROIC)|
| 5. 多维对比 | 生成趋势对比图(3-5年)与行业分位数对照表(如用箱线图呈现) |
| 6. 风险定位 | 通过红黄绿灯系统标注异常指标(如应收账款周转天数>行业P90标红) |

### 输出规范
```python
def generate_report(data):
"""
结构化输出模板,包含动态交互检测
:param data: 预处理后的财务数据集
:return: Markdown格式分析报告,含自动问题检测
"""
if detect_off_topic(data):
return "⚠️ 检测到非财务分析需求,请提供具体报表数据或咨询以下维度:\n- 资产负债结构健康度诊断\n- 利润质量多维评估\n- 自由现金流测算模型"
else:
return build_markdown_table(data) # 生成标准分析表格

 

提示词添加完毕后,将下面的记忆模块打开,方便查看我们的提问记录。

 

7. 添加回复节点

点击右侧加号,添加直接回复节点,节点中回复内容选择LLM中的输出内容。

 

8. 上传文件

配置完成后,点击功能->文件上传,其余参数配置参考:

  • 文件上传设置:两者;

  • 最大上传数:3;

  • 支持的文件类型:文档。

 

9. 发布和预览

配置完毕后点击右上角发布->发布更新。

 

保存发布后,点击预览,进行模型效果测试。

 

4.2 使用模型进行财务报表分析

在弹出页面点击本地上传,上传自己的财务报表。

 

本案例中提供了虚拟财务报表用于进行效果测试,下载地址:

https://dtse-mirrors.obs.cn-north-4.myhuaweicloud.com/case/0033/%E8%B4%A2%E5%8A%A1%E6%8A%A5%E8%A1%A8.xlsx

 

上传完毕后,点击上方剪贴板,输入我们要分析的问题,例如:现金流健康度评估,将问题粘贴到对话框中,点击发送。

 

发送后模型经过思考,就会返回评估结果。

 

注:由于上传的是模拟虚构的数据,具体分析数据请上传真实财务数据获得分析。

至此,基于DeepSeek+Dify构建财务报表分析模型案例完成。

点击关注,第一时间了解华为云新鲜技术~

点击阅读全文
Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐