windows环境下安装部署dify+本地知识库+线上模型
Dify 一词源自 Define + Modify,意指定义并且持续的改进你的 AI 应用,它是为你而做的(Do it for you)。
先上效果图:
登录页面
聊天配置页面
发布出来的聊天页面
知识库召回测试
模型供应商
dify运行日志
chroma运行日志
参考资料:
1、官方文档:https://docs.dify.ai/zh-hans
2、Docker Desktop国内下载地址:https://mirrors.aliyun.com/docker-toolbox/windows/docker-for-windows/stable/
安装步骤:
1、下载Docker Desktop,并安装,安装完成后,打开软件并修改配置文件,改为从国内源下载docker镜像。
"builder": {
"gc": {
"defaultKeepStorage": "20GB",
"enabled": true
}
},
"experimental": false,
"registry-mirrors": [
"https://hub-mirror.c.163.com",
"https://docker.m.daocloud.io",
"https://docker.imgdb.de",
"https://docker-0.unsee.tech",
"https://docker.hlmirror.com",
"https://docker.1ms.run",
"https://func.ink",
"https://lispy.org",
"https://docker.xiaogenban1993.com"
]
}
2、打开https://github.com/langgenius/dify,下载dify源码
3、下载后解压压缩包,并进入docker目录,从.env.example复制一份为.env
4、打开cmd并进入上述docker目录,执行:docker compose up,首次执行该命令会自动下载dify所需的镜像,由于咱们已经通过第1步将镜像源设置为国内源了,速度很快。下载完成后会自动启动服务。启动完成之后,直接在浏览器中打开:http://localhost/ 就看到登录页面了。
5、后续启动服务,还是打开cmd并进入上述docker目录,执行:docker compose up 即可。
我帮大家踩的几个坑:
1、报错:OpenBLAS blas_thread_init: pthread_create failed for thread 7 of 8: Operation not permitted。这是docker容器启动权限不够所致
解决方法:打开docker目录中docker-compose.yaml文件,搜索:image: langgenius,在其下一行添加privileged: true,注意:可以搜索出来多个地方,直接全部修改。
2、知识库中的高质量索引模式总是失败
解决方法:
1、配置矢量库为chroma,首先安装chroma,非常简单:直接执行:
pip install chromadb,需要有python3的环境
2、启动chromadb,在cmd中执行:
set CHROMA_SERVER_AUTHN_CREDENTIALS=chr0ma-t0k3n
set CHROMA_SERVER_AUTHN_PROVIDER=chromadb.auth.token_authn.TokenAuthenticationServerProvider
chroma run --path C:\db_path --host 192.168.2.107 --port 8000
3、修改docker目录下的.env文件,使dify知道chroma的存在
搜索VECTOR_STORE,其值改为:chroma
找到chroma配置的地方,修改为chroma的具体信息
注意:CHROMA_AUTH_CREDENTIALS的值和第2步中CHROMA_SERVER_AUTHN_CREDENTIALS的值必须一致。
4、重启dify即可。
我认为dify比较好用的地方:
1、支持完全私有化部署,社区版开源,Apache 2.0的开源许可
2、内置了很多工具:时间、网页抓取、图表生成、语音文字互转、对接企业微信等等,还可以自定义工具
3、知识库中可配置Rerank模型(重排序模型将根据候选文档列表与用户问题语义匹配度进行重新排序,从而改进语义排序的结果)
4、可以在agent中添加多个工具
5、可对模型参数定制化调整,还可以限制模型回答结果的格式
6、几乎支持所有厂商的大模型
7、支持多种知识库来源
8、更多好用功能等待我们一起去探索