目录
1.背景介绍
Dify1.0版本后,dify工具、模型、Agent策略都进行了插件化,如果要在Dify上使用对应的能力,需要先安装对应的插件。
本文主要介绍Dify插件的安装方法(联网、内网环境下都有进行说明,重点介绍离线安装插件)。
2.Dify插件的安装方式介绍
插件安装方式主有 Marketplace、GitHub、上传本地文件三种方式安装插件。在联网的情况下安装插件比较简单,参考Dify官网的手册即可。
离线安装会比较麻烦,接下来重点介绍在离线环境下,,同时也会介绍插件离线安装时遇到的一些问题。
3. 离线安装Dify插件
下面以安装 模型 插件为例,来说明如何离线安装插件。在插件市场,搜索某一个插件,例如Ollama、OpenAI-API-compatible等,找到该插件,下载插件文件langgenius-openai_api_compatible_0.0.13.difypkg。
下载的.difypkg文件是没法直接通过 04图上次本地插件使用的,后台日志会显示要联网下载依赖,如果直接安装,无法联网的情况下会安装失败。
后台日志如下:
[31m[ERROR]init?environment failed: failed to install dependencies: exit status?2,
output: error: Failed to fetch: `https://pypi.org/simple/dify-plugin/`?
Caused?by: Could not connect, are you offline?? Caused?by: Request failed after?3?retries?
Caused?by: error sending request?for?url (https://pypi.org/simple/dify-plugin/)?
Caused?by: client error (Connect)?
Caused?by: dns error: failed to lookup address information: Temporary failure?in?name resolution?
Caused?by: failed to lookup address information: Temporary failure?in?name resolution, retry?in?30s
因此需要先对 .difypkg 进行重新打包,将依赖下载好重新打包 .difypkg文件。重新打包可以使用github上一个现有的开源工具:dify-plugin-repackaging
将上述下载好的 langgenius-openai_api_compatible_0.0.13.difypkg 文件,一同放到 刚刚下载好的dify-plugin-repackaging目录下,执行打包命令:
./plugin_repackaging.sh local ./langgenius-openai_api_compatible_0.0.13.difypkg
可以看到类似下面的日志,则表示正在离线打包插件:
Unziping?...Archive: ?/dify-plugin-repackaging/jaguarliuu-rookie_text2data_0.3.0.difypkg{"signature":"RS0YmhGNvHQCy5BXCL/iQZJVbyIeyl3iGvTnsJKoH6QAC65wDN6sbMBJ2Ii1ET6ayVwTVAjLfNWGVsDh8aI1e4rsdIBYHSYdRqC5iCIYBJI94Cav8ou+7r302bdi6YSAIRNn9S0KV4CLKqNKtEeei0n850gcY6ol1PCFqjsg5iYLcFBZQg7IRMDfXSRomcHZ0tb6qwiuPvdERmqKQbUgJy/iYmqj/FltKJWaKqkrPBeL+jxUzHoZSpGpKfSumfTFeN7jbZCrgOCQNTVlpY9o1X5TiXiRBVD/JuoEWKd2ze7HfVhc+zX4y3IhM+Y8pR/S6H05X2key0ZGwEfFLErNyOc8lLdDu5COhk/EhqMd/PWf5rnUU5pCnIvjicVBQxHvdsBarjXusAYbYqJJBVaSgsAH9H1ysk2Xwyv461bXmh1xUNKi3QPX+xW9l2RTVRm9Kerbh9XacG2fvGcZoPxTBi1nMlHWk/zdbfhg9nqWAMNRb3jPEiBt8aBT/DIaXYbPRBv9rs4gdGHVrQ2koWB6HhR7+6cGacKZvLptOatnVSIk4kMGBQAxXDrpuVo5n/kOwTmy7GBWUuBTxHTTiv19wr7MZMmphnON/DeLTsKNKunKX+r2Izyzi8ZjZQgvD+EzlYuLe1hHBaq9PAYxF8YxE32XGMA0pqozD56G3S/4AGs=","time":1744680795}?
inflating:?/dify-plugin-repackaging/jaguarliuu-rookie_text2data_0.3.0/.cnb.yml ??
inflating:?/dify-plugin-repackaging/jaguarliuu-rookie_text2data_0.3.0/.difyignore ??
4. 修改Dify 插件相关的配置参数
最后,修改插件相关的3个配置参数,重启Dify平台即可
在 .env 配置文件将 FORCE_VERIFYING_SIGNATURE 改为 false ,Dify 平台将允许安装所有未在 Dify Marketplace 上架(审核)的插件。
在 .env 配置文件将 PLUGIN_MAX_PACKAGE_SIZE 增大为 524288000,Dify 平台将允许安装 500M 大小以内的插件。
在 .env 配置文件将 NGINX_CLIENT_MAX_BODY_SIZE 增大为 500M,Nginx客户端将允许上传 500M 大小以内的内容。
5. 参考文档
Dify安装插件实战:如何离线安装dify插件 (加关注,后台留言,可提供付费远程协助)