ValueError: ‘text-generation’ is not a valid ModelType

这个报错通常发生在 Dify 1.17.0 升级后,模型插件无法加载、默认模型无法配置的场景,优先排查 plugin_daemon 镜像版本是否与 1.17.0 匹配(应为 langgenius/dify-plugin-daemon:0.6.10-local )。

快速结论:这个报错通常发生在 Dify 1.17.0 升级后,模型插件无法加载、默认模型无法配置的场景,优先排查 plugin_daemon 镜像版本是否与 1.17.0 匹配(应为 langgenius/dify-plugin-daemon:0.6.10-local)。

适用环境:Dify 1.17.0,Self Hosted(Source 或 Docker 部署)。Issue 中未提供操作系统、Python、CUDA、显卡等具体环境信息。

最快修复方案:暂无确认的一步修复方案。但根据 Issue 分析,优先检查并更新 plugin_daemon 镜像版本。

注意事项:该方案基于 Issue 讨论中的推断,尚未在 Issue 中得到实际验证;如果 daemon 版本已正确,还需检查 Redis 状态和 API 密钥配置。

问题场景

用户在将 Dify 升级到 1.17.0 版本后(Self Hosted 方式),发现集成管理中的模型插件不可用。具体表现为:模型无法加载、默认模型无法配置,模型供应商页面无法正常显示。

报错原文

ValueError: 'text-generation' is not a valid ModelType

注:在模型插件页面加载失败时,实际后台日志中可能伴随 404 错误(如 management/model/listmanagement/models/bindings 路由返回 404),以及 "no available node, plugin runtime not found" 等错误信息。

原因分析

可能原因是 plugin_daemon 版本不匹配。Dify 1.17.0 的 API 会调用特定类型的 plugin daemon 接口(如 management/model/listmanagement/models/bindings),而旧版本的 daemon 镜像不支持这些路由,导致 404 错误,进而使模型供应商页面整体加载失败。Dify 1.17.0 正确对应的 daemon 镜像为 langgenius/dify-plugin-daemon:0.6.10-local(从 0.6.3-local 升级而来)。

此外,Redis 中残留的旧插件状态也可能导致类似问题(表现为 "no available node, plugin runtime not found"),以及 API 容器与 plugin_daemon 容器的密钥不匹配PLUGIN_DAEMON_KEYPLUGIN_DIFY_INNER_API_KEY)也会有类似症状。

环境排查

  • 检查当前 plugin_daemon 镜像版本:docker compose images plugin_daemon,确认是否为 0.6.10-local
  • 检查 docker-compose.yaml 中的 plugin_daemon 服务镜像配置。
  • 确认 api 容器与 plugin_daemon 容器的 PLUGIN_DAEMON_KEYPLUGIN_DIFY_INNER_API_KEY 环境变量是否一致。
  • 检查 Redis 中是否残留旧的插件状态数据。
  • 对于 Source 安装方式,确认 plugin daemon 二进制版本与 1.17.0 版本匹配。

解决步骤

  1. 检查当前 daemon 版本:执行 docker compose images plugin_daemon,确认镜像是否为 langgenius/dify-plugin-daemon:0.6.10-local
  2. 更新 docker-compose.yaml:如果版本不是 0.6.10-local,将 plugin_daemon 服务的 image 修改为 langgenius/dify-plugin-daemon:0.6.10-local
  3. 拉取并重启:执行 docker compose pull plugin_daemon,然后 docker compose up -d plugin_daemon
  4. 清理 Redis 插件状态(如果 daemon 版本已正确但仍异常):
    docker compose down
    docker compose up redis -d
    docker compose exec redis redis-cli FLUSHALL
    docker compose up -d

    等待约 60 秒让所有插件完成初始化后再打开模型供应商页面。

  5. 检查密钥一致性:执行以下命令对比 PLUGIN_DAEMON_KEYPLUGIN_DIFY_INNER_API_KEY
    docker compose exec api env | grep -E "PLUGIN_DAEMON_KEY|PLUGIN_DIFY_INNER_API"
    docker compose exec plugin_daemon env | grep -E "PLUGIN_DAEMON_KEY|PLUGIN_DIFY_INNER_API"

    如果密钥不一致,需在 docker-compose.yaml 中统一配置后重启。

  6. Source 安装方式:确保运行的是与 1.17.0 版本匹配的 plugin daemon 二进制,而非之前安装的旧版本。

验证方法

执行 docker compose images plugin_daemon 确认 daemon 版本为 0.6.10-local;打开 Dify 的“插件管理”或“模型供应商”页面,确认模型列表能正常加载、默认模型可以正常配置;查看 API 日志(docker compose logs api 2>&1 | grep -i "plugin\|404\|error" | tail -30)确认不再出现 404 或 "no available node" 错误。

参考来源

langgenius/dify #41294

GamsGo AI

AI 工具推荐

想把多个 AI 模型放在一个入口?

GamsGo AI 集成 ChatGPT、DeepSeek、Gemini、Claude、Midjourney、Veo 等常用模型,适合写作、绘图、视频和日常 AI 工作流。

了解 GamsGo AI

推广链接:通过此链接购买,我可能获得佣金,不影响你的价格。

这个方案解决了吗?

celebrityanime
celebrityanime
文章: 21432

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注