一、Dify是什么

Dify 是一个易于使用的 LLM (大型语言模型) 应用开发平台。它旨在帮助开发者更轻松地构建基于 LLM 的应用,而无需深入研究底层技术细节。

运行多种LLM
提供知识库功能
提供对外访问接口
可本地部署,安全

二、如何安装

1、环境准备

  • Docker
  • Docker Compose
  • Git
  • 安装ollama,下载嵌入模型nomic-embed-text:latest
  • deepseek-r1的apikey

2、安装Dify

第一步、下载Dify项目

项目地址:https://github.com/langgenius/dify

git clone git@github.com:langgenius/dify.git
第二步、启动
# 进入项目目录
cd dify
# 进入docker配置目录
cd docker
# 配置环境变量 
cp .env.example .en
# 启动项目
docker-compose up -d

# 以下命令有可以用到
docker ps  #查看dify项目是否启动


使用web端进行登录:[http://localhost/install]

3、登录

登录前需要注册用户(用户名、密码)保存在本地
页面显示如下:

登录后如下:

三、使用过程

1、配置模型

最终效果:

LLM模型

嵌入模型

2、创建知识库

第一步、上传文件

第二步、文件处理

第三步、执行完成

第四步、查看上传文档


文件详情如下:

3、创建聊天机器人

最终效果如下:

第一步、输入bot名称,创建chatbot

第二步、生成提示词


点击Apply,进入下一步,进行对话

第三步、发布

点击Publish按钮

第四步、四种使用方式
  • App运行

  • 嵌入到网页中

    • 通过iframe嵌入
    • 嵌入到html中
    • 通过浏览器插件
  • 使用浏览器打开

  • 使用api调用
    见下章

4、外部调用

创建apikey

调用
 curl -X POST 'http://localhost/v1/chat-messages' \
 --header 'Authorization: Bearer app-gFidkuxUhpCx3MXghcxr9qZJ' \
 --header 'Content-Type: application/json' \
 --data-raw '{
     "inputs": {},
         "query": "介绍一下电影阿甘正传,以电影名/导演/上映时间的json格式输出",
         "response_mode": "streaming",
         "conversation_id": "",
         "user": "abc-123",
             "files": []
     }'

结果如下:

四、问题列表

问题1、密码登录不了,需要重置密码
# 重置密码
docker exec -it docker-api-1 flask reset-password

如有需要:删除删除redis的登录错误信息
常用命令如下
redis-cli
keys *
ttl key

问题2、端口被占用,例:5432以及6379

lsof -i:5432
kill -9 XXX

问题3、 无法加载ollama的地址

原因:dify在docker里面运行,而ollama在宿主机里面运行
解决方案:使用http://host.docker.internal:11434

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐