Cannot install model plugin Jina 0.0.6 using market or repacking #14324

Closed
opened 2026-02-21 19:16:42 -05:00 by yindo · 1 comment
Owner

Originally created by @zhxun00cn on GitHub (May 29, 2025).

Self Checks

  • This is only for bug report, if you would like to ask a question, please head to Discussions.
  • I have searched for existing issues search for existing issues, including closed ones.
  • I confirm that I am using English to submit this report (我已阅读并同意 Language Policy).
  • [FOR CHINESE USERS] 请务必使用英文提交 Issue,否则会被关闭。谢谢!:)
  • Please do not modify this template :) and fill in all the required fields.

Dify version

1.4.0

Cloud or Self Hosted

Self Hosted (Docker)

Steps to reproduce

I used market to install model plugin langgenius/jina:0.06, then error reported as:

1 validation error for PluginDaemonBasicResponse[PluginUploadResponse] data.manifest.model.position.text_embedding Input should be a valid list [type=list_type, input_value=None, input_type=NoneType] For further information visit https://errors.pydantic.dev/2.11/v/list_type

Besides, I need to use dify offline, so I repacked the pkg by repo junjiem
dify-plugin-repackaging , but the errors remained same as above when installing difypkg from local.

✔️ Expected Behavior

successfully install the jina plugin both online and offline without any further login.

Actual Behavior

No response

Originally created by @zhxun00cn on GitHub (May 29, 2025). ### Self Checks - [x] This is only for bug report, if you would like to ask a question, please head to [Discussions](https://github.com/langgenius/dify/discussions/categories/general). - [x] I have searched for existing issues [search for existing issues](https://github.com/langgenius/dify/issues), including closed ones. - [x] I confirm that I am using English to submit this report (我已阅读并同意 [Language Policy](https://github.com/langgenius/dify/issues/1542)). - [x] [FOR CHINESE USERS] 请务必使用英文提交 Issue,否则会被关闭。谢谢!:) - [x] Please do not modify this template :) and fill in all the required fields. ### Dify version 1.4.0 ### Cloud or Self Hosted Self Hosted (Docker) ### Steps to reproduce I used market to install model plugin langgenius/jina:0.06, then error reported as: `1 validation error for PluginDaemonBasicResponse[PluginUploadResponse] data.manifest.model.position.text_embedding Input should be a valid list [type=list_type, input_value=None, input_type=NoneType] For further information visit https://errors.pydantic.dev/2.11/v/list_type` Besides, I need to use dify offline, so I repacked the pkg by repo [junjiem](https://github.com/junjiem) [dify-plugin-repackaging](https://github.com/junjiem/dify-plugin-repackaging) , but the errors remained same as above when installing difypkg from local. ### ✔️ Expected Behavior successfully install the jina plugin both online and offline without any further login. ### ❌ Actual Behavior _No response_
yindo added the 🐞 bug label 2026-02-21 19:16:42 -05:00
yindo closed this issue 2026-02-21 19:16:42 -05:00
Author
Owner

@dosubot[bot] commented on GitHub (May 29, 2025):

Hi @zhxun00cn! I'm Dosu and I’m helping the dify team.

The error you’re seeing—data.manifest.model.position.text_embedding Input should be a valid list [type=list_type, input_value=None, input_type=NoneType]—indicates that the Jina plugin’s manifest or metadata is missing or misconfiguring the position.text_embedding field. Dify expects this field to be a list, but it’s currently set to None or missing in the plugin’s metadata.

This is not a static requirement in the Dify backend code, but recent versions have stricter runtime validation for plugin/provider metadata. If the plugin’s manifest or its _position.yaml does not define text_embedding as a list (even an empty list), installation will fail with this validation error. This is especially relevant for plugins that provide text embedding models, as Dify expects a position mapping for each supported model type, including text_embedding [source].

How to fix:
Edit the Jina plugin’s manifest or _position.yaml file to ensure that the position field includes a text_embedding key with a list value. For example:

position:
  text_embedding: []

If the plugin supports specific text embedding models, list them inside the array. If not, an empty list should satisfy the validator.

Why this happens:
Dify’s validation logic expects all model types listed in the manifest to have a corresponding entry in the position mapping. If text_embedding is missing or set to null, the validator will throw the error you’re seeing [source].

Offline installation:
If you need to use Dify offline, ensure you update the repackaged plugin’s metadata as described above before installing. If you continue to have issues with offline plugin dependencies, one workaround is to create a Docker image with all dependencies pre-installed while online, then export and load it in your offline environment [source].

Summary:
Update the Jina plugin’s manifest or _position.yaml so that position.text_embedding is a valid list (not null or missing). This should resolve the validation error and allow installation both online and offline.

If you need more specific guidance on editing the plugin files, let me know which files you have access to and I can provide more detailed instructions.

To reply, just mention my name @dosu.


How did I do? Good | Irrelevant | Incorrect | Verbose | Hallucination | Report 🐛 | Other  Join Discord Share on X

@dosubot[bot] commented on GitHub (May 29, 2025): <!-- Greeting --> Hi @zhxun00cn! I'm [Dosu](https://go.dosu.dev/dosubot) and I’m helping the dify team. <!-- Answer --> The error you’re seeing—`data.manifest.model.position.text_embedding Input should be a valid list [type=list_type, input_value=None, input_type=NoneType]`—indicates that the Jina plugin’s manifest or metadata is missing or misconfiguring the `position.text_embedding` field. Dify expects this field to be a list, but it’s currently set to `None` or missing in the plugin’s metadata. This is not a static requirement in the Dify backend code, but recent versions have stricter runtime validation for plugin/provider metadata. If the plugin’s manifest or its `_position.yaml` does not define `text_embedding` as a list (even an empty list), installation will fail with this validation error. This is especially relevant for plugins that provide text embedding models, as Dify expects a position mapping for each supported model type, including `text_embedding` [[source]](https://github.com/langgenius/dify/blob/db488bef51b996b1150d7d848790004143079dc9/api/core/model_runtime/entities/provider_entities.py). **How to fix:** Edit the Jina plugin’s manifest or `_position.yaml` file to ensure that the `position` field includes a `text_embedding` key with a list value. For example: ```yaml position: text_embedding: [] ``` If the plugin supports specific text embedding models, list them inside the array. If not, an empty list should satisfy the validator. **Why this happens:** Dify’s validation logic expects all model types listed in the manifest to have a corresponding entry in the `position` mapping. If `text_embedding` is missing or set to `null`, the validator will throw the error you’re seeing [[source]](https://github.com/langgenius/dify/blob/db488bef51b996b1150d7d848790004143079dc9/api/core/model_runtime/entities/provider_entities.py). **Offline installation:** If you need to use Dify offline, ensure you update the repackaged plugin’s metadata as described above before installing. If you continue to have issues with offline plugin dependencies, one workaround is to create a Docker image with all dependencies pre-installed while online, then export and load it in your offline environment [[source]](https://github.com/langgenius/dify/issues/15627). **Summary:** Update the Jina plugin’s manifest or `_position.yaml` so that `position.text_embedding` is a valid list (not `null` or missing). This should resolve the validation error and allow installation both online and offline. If you need more specific guidance on editing the plugin files, let me know which files you have access to and I can provide more detailed instructions. <!-- Dosu Comment Footer --> *To reply, just mention my name [@dosu](https://go.dosu.dev/dosubot).* --- <sup>How did I do? [Good](https://app.dosu.dev/response-feedback/e227f5f9-718b-40c7-8fa3-22a1fb555991?feedback_type=great_response) | [Irrelevant](https://app.dosu.dev/response-feedback/e227f5f9-718b-40c7-8fa3-22a1fb555991?feedback_type=irrelevant_answer) | [Incorrect](https://app.dosu.dev/response-feedback/e227f5f9-718b-40c7-8fa3-22a1fb555991?feedback_type=incorrect_sources) | [Verbose](https://app.dosu.dev/response-feedback/e227f5f9-718b-40c7-8fa3-22a1fb555991?feedback_type=too_verbose) | [Hallucination](https://app.dosu.dev/response-feedback/e227f5f9-718b-40c7-8fa3-22a1fb555991?feedback_type=hallucination) | [Report 🐛](https://app.dosu.dev/response-feedback/e227f5f9-718b-40c7-8fa3-22a1fb555991?feedback_type=bug_report) | [Other](https://app.dosu.dev/response-feedback/e227f5f9-718b-40c7-8fa3-22a1fb555991?feedback_type=other)</sup>&nbsp;&nbsp;[![Join Discord](https://img.shields.io/badge/join-5865F2?logo=discord&logoColor=white&label=)](https://go.dosu.dev/discord-bot)&nbsp;[![Share on X](https://img.shields.io/badge/X-share-black)](https://twitter.com/intent/tweet?text=%40dosu_ai%20helped%20me%20solve%20this%20issue!&url=https%3A//github.com/langgenius/dify/issues/20481)
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: langgenius/dify#14324