How to

【How to】释放AI在金融领域的潜力:使用Dify构建AI投资分析助手

AI赋能金融:使用 Dify 构建AI投资分析助手指南

摘要:本文介绍如何利用Dify v0.5.0新增的Agent Assistant模式,结合Yahoo Finance工具链,快速搭建“股票投资分析Copilot”。通过配置Prompt、调用LLM及外部API,实现自动化研报生成与多轮交互咨询,提升金融数据分析效率。


在最新发布的 Dify v0.5.0 版本中,我们新增了 Agent Assistant(智能体助手)模式。该模式支持接入市面上主流的大语言模型(Large Language Models, LLMs),目前Dify已兼容所有流行的LLM提供商。此外,它还提供了一系列工具调用能力,能够按需驱动LLM解决复杂的多步骤问题场景,帮助开发者构建更具创造力的GPT应用和智能体助手。

本文将手把手教你使用 Dify 最新的 Agent 功能,打造一个名为 Stock Investment Analysis Copilot(股票投资分析Copilot)的AI助手。该助手将为你解答以下核心问题:
* 如何使用 Dify?
* 如何编写高效的 Prompt(提示词)?
* 如何在 Dify 上发布应用并将其集成到你的工作流中?

这个智能体可以调用 Yahoo Finance 的三个工具——News(新闻)、Analytics(数据分析)和 Ticker(股票代码),为任何上市公司生成一份投资分析报告。

首先,让我们直观展示一下该 AI Agent 的能力:
Stock Investment Analysis Copilot Demo (注:此处保留原文图片引用标记逻辑)

只需告诉智能体你感兴趣的上市公司名称,它就能在几秒钟内帮你搜集、整理该公司的财务状况、行业地位及最新新闻,并生成一份 Markdown 格式的投资报告。不仅如此,这份报告生成后对话并未结束。你可以继续与它深入探讨任何你想进一步了解的领域。

Agent 的应用场景:如何以及在哪里使用?

Agent(智能体)是一种通用的 AI 工具,适用于任何需要重复性劳动的场景,例如投资研究和撰写研报。如果由人工完成,你需要从多个来源为数十甚至数百家公司的数据进行搜索、整理和分析。而像我们这样的“投资Copilot”智能助手则通过以下方式解决这些问题:
* 自动化研究流程:只需告知它需要分析哪家公司,它将自动生成报告。
* 提高效率:减少在信息检索上浪费的时间。
* 快速了解公司:无需付出过多努力即可掌握公司概况。
* 消除切换成本:省去了在不同数据源之间搜索和跳转的麻烦。

虽然它看起来只是一个简单的机器人,但一旦构建完成,它将为你节省大量重复性工作。

创建投资分析助手:分步指南

Agent Assistant 是如何工作的?

  1. 创建一个应用(Application)。
  2. 编写 Prompt(提示词)。
  3. 配置智能体需要使用的 Tools(工具)。

接下来呢?如何将其投入生产环境使用?

前置准备 (Prerequisites)

1. 注册或部署 Dify.AI
Dify 是一款开源产品。你可以在 GitHub 上找到它,然后选择本地部署或在公司内网搭建。此外,它也提供基于云的 SaaS 版本,访问 Dify.AI 注册即可使用。

2. 向模型提供商申请 API Key
AI 模型的调用会消耗 Token(令牌)。Dify 为新注册用户提供了 OpenAI GPT 系列的免费试用额度(200条消息)。在用完该额度之前,你需要通过模型提供商的官方渠道申请自己的 API Key。获取后,可在 Dify 的 [Settings] --> [Model Provider] 中进行配置。

Step 1: 创建新的 Assistant App

首先,创建一个全新的 Assistant 应用,并将其命名为 "Investment Analysis Report Copilot"(投资分析报告Copilot)。

切换到 Agent Assistant 模式。在此模式下当前的智能助手可以利用思维链(Chain-of-Thought, CoT)和函数调用(Function Calling;对于不支持函数调用的模型则使用 ReAct 机制),通过工具来解决复杂的多步骤问题场景

Step 2: 编写你的 Prompts (提示词)

在开始编写 Prompts 之前,我们需要规划助手的运作逻辑。它需要:
1. 充分理解用户想要分析哪家公司;
2. 使用工具访问外部数据(如财务指标、近期发展等);
3. 最终输出报告。

这里推荐一种 Prompt 写作架构,能让 LLM 更清晰地理解你的意图,并生成你想要的内容结构:

模块 说明
# Job Description
(任务描述)
简要描述智能助手的任务目标。
## Character
(角色设定)
描述你要构建的智能助手的具体任务和目的。
例如:“我的目标是为用户提供专家级的数据分析报告。我将收集最详细的数据,完成一份结构清晰、措辞简洁的分析报告。”
## Skills
(技能列表)
撰写智能助手的各项能力,如擅长数据分析、绘图、信息搜集等。
## Workflow
(工作流)
描述智能助手的工作流程,解释你期望它如何完成任务。
## Constraints
(约束条件)
设定对智能助手的限制条件。
例如:必须使用用户的语言回答;不回答与任务无关的问题等。你可以在下方的示例中看到具体的写法。

以下是我们准备的 Prompt 模板结构(注:原文中重复了多次相同表格,此处整合为一次清晰展示):

# Job Description: 
Briefly describe the task of the intelligent assistant.

## Character 
Describe the task and purpose... (e.g., "My goal is to provide users with expert-level data analysis reports...")

## Skills 
Write about the capabilities... (expertise in data analysis, drawing, gathering information, etc.)

## Workflow 
Explain how you expect the intelligent assistant to complete your task.

## Constraints 
Set restrictive conditions... (must answer in user's language, ignore unrelated questions, etc.)

你可以看到我们准备好的具体 Prompt 内容。你也可以访问 Dify.AI 注册并亲自测试这些提示词。只需将以下 Prompt 复制粘贴到 Prompt 窗口中即可:

Dify Agent Prompt 示例代码块

以下是针对“股票投资分析Copilot”的具体 Prompt 配置,你可以直接复制到 Dify 的对话编排界面或 System Prompt 区域:

# Job Description: 
Data Analysis Copilot (数据分析助手)

## Character 
My primary goal is to provide users with expert data analysis advice. Using extensive and detailed data, tell me the stock (with ticker symbol) you want to analyze. I will do all fundamental, technical, market sentiment, and Macroeconomical analysis for the stock as an expert.
(我的主要目标是为用户提供专家级的数据分析建议。利用广泛且详细的数据,请告诉我你要分析哪只股票(包含股票代码)。我将以专家的身份对该股票进行基本面、技术面、市场情绪及宏观经济的全方位分析。)

## Skills 
### Skill 1: Search for stock information using 'Ticker' from Yahoo Finance
(技能1:使用Yahoo Finance的'Ticker'工具搜索股票信息)

... (此处省略后续具体Prompt内容,实际使用时请根据完整文档补充Workflow和Constraints部分) ...

(注:由于原文在此处截断,建议在实际操作中完善 Workflow 步骤及 Constraints 约束条件以确保最佳效果。)


原文图片

文章来源: https://dify.ai/blog/build-your-own-investment-analysis-assistant-with-dify
← 返回文章列表