一、Dify是什么?
Dify(Define & Modify)?Dify是一个开源的大语言模型(LLM)应用开发平台,旨在简化和加速生成式AI应用的创建和部署。该平台结合了后端即服务(Backend as Service, BaaS)和LLMOps的理念,为开发者提供了一个用户友好的界面和一系列强大的工具,使他们能够快速搭建生产级的AI应用。它支持多种大型语言模型,如Claude3、OpenAI等,并与多个模型供应商合作,确保开发者能根据需求选择最适合的模型。Dify通过提供强大的数据集管理功能、可视化的Prompt编排以及应用运营工具,大大降低了AI应用开发的复杂度。

二、Dify部署与智能体搭建
Dify部署虽然听起来复杂,但实际上通过Docker部署是一个相当便捷的方法。
官网有非常详细的教程。https://docs.dify.ai/zh-hans/getting-started/install-self-hosted/docker-compose
前提条件
安装 Dify 之前, 请确保你的机器已满足最低安装要求:
CPU >= 2 Core
RAM >= 4 GiB
1.1 克隆Dify代码仓库
Dify部署的方式相对来说比较简单,这里教大家使用Docker进行部署,Docker的安装方法这里不再赘述,大家可以自行搜索。
- 首先,克隆 Dify 源代码至本地环境:
git clone https://github.com/langgenius/dify.git
1.2 启动Dify
(1)进入 Dify 源代码的 Docker 目录
cd dify/docker
复制环境配置文件
cp .env.example .env
(2)启动 Docker 容器
根据你系统上的 Docker Compose 版本,选择合适的命令来启动容器。你可以通过 $ docker compose version 命令检查版本,详细说明请参考 Docker 官方文档。
如果版本是 Docker Compose V2,使用以下命令:
docker compose up -d
如果版本是 Docker Compose V1,使用以下命令:
docker-compose up -d
运行命令后,你应该会看到类似以下的输出,显示所有容器的状态和端口映射:

三、SearXNG集成与部署
SearXNG是一个免费的互联网元搜索引擎,能够整合多种搜索服务的检索结果,并且保护用户隐私。将其集成到Dify中也需要遵循一定流程。
(1)首先,需要修改Dify配置文件。
SearXNG的配置文件位于
dify/api/core/tools/provider/builtin/searxng/docker/settings.yml
根据自身需求修改配置或者直接使用默认配置均可。
(2)然后,在Dify根目录下启动SearXNG的Docker容器。执行 cd dify 之后,
使用 docker run –rm -d -p 8081:8080 -v “${PWD}/api/core/tools/provider/builtin/searxng/docker” 命令。
这一步骤类似于为SearXNG打开大门,使其能够进入Dify环境中。
(3)最后,在Dify中使用SearXNG。
在 “工具 > SearXNG > 去认证” 中填写访问地址,默认情况下SearXNG的Docker内网地址为“http://host.docker.internal:8081”。填写完毕后点击授权并保存设置。如果一切顺利,将会看到“已授权”的提示。
四、Ollama部署Deepseek-r1

这里我们部署了14B的,非常简单,直接去官网搜索模型。

根据官方命令,把模型下载,并运行模型:

五、智能体搭建扩展
之前几步都是基础,现在我们要把之前的都利用起来。
(1)Dify集成ollama
首先利用Dify把ollama的模型集成进来,这里完全参考官方教程即可:

接入ollama部署的本地模型:
https://docs.dify.ai/zh-hans/development/models-integration/ollama
(2) 构建智能体

- prompt提示词:
# 职位描述
## 角色
你的主要任务是人工智能辅助助手,能够调用联网搜索、网页爬虫、获取时间等相关工具,收集相关信息,回答用户的提问。
## 技能
### 技能1:知识库检索相关内容
### 技能2:使用time工具获取当前的时间
### 技能3:使用tavily_search功能进行联网搜索
### 技能4:使用webscraper功能对搜索到的相关内容进行爬取,并进行总结分析
## 限制
- 每次都必须检索知识库,如果没有相关内容,再进行联网搜索
- 你的回答应严格针对分析任务。使用结构化语言,逐步思考
- 使用的语言应和用户提问的语言相同
- 搜索的关键词必须和用户提问的内容一致
- 工具:

- 测试

首先第一次推理思考,查找大模型本身的知识:

根据过程,在本身知识库查找不到,则进行联网搜索。

最后,把联网搜索的知识进行汇总:

转载作品,原作者:数据AI指北,文章来源:https://mp.weixin.qq.com/s/53Mmb1TqsJJO_ovwCVXwYg