初识 Dify
认识 dify
Dify 是一款开源的大语言模型 (LLM) 应用开发平台。它融合了后端即服务(Backend as Service)和 LLMOps 的理念,使开发者可以快速搭建生产级的生成式 AI 应用。即使你是非技术人员,也能参与到 AI 应用的定义和数据运营过程中
所谓的大语言模型 (LLM) 应用,不是仅指文本生成模型的调用,还包括由大语言模型 (LLM) 驱动的更加复杂的应用,包括邮件自动回复,RAG 等过程
对于开发人员来说,LangChain 也是大语言模型 (LLM) 应用开发的框架,但是相比较 Dify, LangChain 这类的开发库(Library)想象为有着锤子、钉子的工具箱。与之相比,Dify 提供了更接近生产需要的完整方案,Dify 好比是一套脚手架,并且经过了精良的工程设计和软件测试
Dify 的后端服务开启后,通过提供 1 个前端给开发者配置大模型应用 + 1 个前端给使用者使用,以下分别是两个前端的界面。从访问地址可以看出,服务端是部署在本地的,这是因为 Dify 向开发者提供两个版本,其中社区版可以下载到本地进行部署,而专业版需要付费。
对于社区版的 Dify,有两种方式去部署,一是通过 Docker,二是通过源码,通过 Docker 更加方便,以下介绍 Docker 部署 Dify 的流程。
Docker 部署 Dify 时,可以选择 Windows,也可以选择 Linux,以下是 Ubuntu 的部署过程,注意由于 docker hub 被墙,导致多次拉取 dify 无效,此时需要设置代理才可以进行,代理工具为 trojain-1.16.0-linux-amd64.tar.xz
,然后在编辑 /etc/systemd/system/docker.service.d/http-proxy.conf
,写入以下内容:
1 | [Service] |
使用 docker 拉取 dify 镜像后,启动镜像,即可通过浏览器访问 dify 服务。此时还无法直接创建应用,还需为 dify 接入大模型服务,dify 支持在线、本地两种大模型服务,在线需要使用 key,本地搭建使用使用 ollama、Xinference 等 LLM 推理工具,这里使用 Xinference 搭建。
完成 Xinference 的部署后,通过 Dify 的设置界面接入 Xinference 服务
设置模型后,可以在 Dify 新建应用去使用模型,新建空白应用,然后选择刚才接入的模型,然后测试调用过程
官方文档:欢迎使用 Dify | Dify