If we delete the vision variable and then disable vision, the app can no longer run due to a validation error #14780

Closed
opened 2026-02-21 19:18:44 -05:00 by yindo · 4 comments
Owner

Originally created by @kurokobo on GitHub (Jun 21, 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.3

Cloud or Self Hosted

Self Hosted (Docker), Cloud

Steps to reproduce

  1. Create new chatflow app
  2. Select model which supports vision
  3. Enable VISION
  4. Delete Vision Variable by clicking cross-icon
    Image
  5. Keep the Vision Variable empty and disable VISION
    Image
  6. Try to run the app

✔️ Expected Behavior

The chatbot responds without vision.

Actual Behavior

The validation error occurs:

Run failed: 1 validation error for LLMNodeData
vision.configs.variable_selector
'str' instances are not allowed as a Sequence value [type=sequence_str, input_value='', input_type=str]

Image

If we export the DSL in this state, we'll see that, just as the error message says, the variable_selector is set to an empty string.

Image

If the vision is disabled, I don't think validation of variable_selector should be required.
Alternatively, if variable_selector is empty, it might be better to set sys.files or something similar so the validation doesn't fail.

Originally created by @kurokobo on GitHub (Jun 21, 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.3 ### Cloud or Self Hosted Self Hosted (Docker), Cloud ### Steps to reproduce 1. Create new chatflow app 2. Select model which supports vision 3. Enable VISION 4. Delete Vision Variable by clicking cross-icon ![Image](https://github.com/user-attachments/assets/510c7a2c-8609-4ca1-a10b-5daa7a32700e) 5. Keep the Vision Variable empty and disable VISION ![Image](https://github.com/user-attachments/assets/ea743ccb-6573-4473-8083-84cb94de5896) 7. Try to run the app ### ✔️ Expected Behavior The chatbot responds without vision. ### ❌ Actual Behavior The validation error occurs: > Run failed: 1 validation error for LLMNodeData vision.configs.variable_selector 'str' instances are not allowed as a Sequence value [type=sequence_str, input_value='', input_type=str] ![Image](https://github.com/user-attachments/assets/a77e214b-a5b0-4f32-9759-d62353469507) If we export the DSL in this state, we'll see that, just as the error message says, the `variable_selector` is set to an empty string. ![Image](https://github.com/user-attachments/assets/b378fd06-78c0-4567-bf83-c81674fec653) If the vision is disabled, I don't think validation of `variable_selector` should be required. Alternatively, if `variable_selector` is empty, it might be better to set `sys.files` or something similar so the validation doesn't fail.
yindo added the 🐞 bugperformance labels 2026-02-21 19:18:44 -05:00
yindo closed this issue 2026-02-21 19:18:44 -05:00
Author
Owner

@lslzl3000 commented on GitHub (Jul 31, 2025):

+1, still bug in latest 1.7.x

@lslzl3000 commented on GitHub (Jul 31, 2025): +1, still bug in latest 1.7.x
Author
Owner

@dosubot[bot] commented on GitHub (Sep 11, 2025):

Hi, @kurokobo. I'm Dosu, and I'm helping the Dify team manage their backlog and am marking this issue as stale.

Issue Summary:

  • You reported a validation error in version 1.4.3 when deleting the vision variable and disabling vision in a chatflow app.
  • The app fails due to an invalid empty variable_selector.
  • You suggested skipping validation or handling empty values more gracefully when vision is disabled.
  • Contributor lslzl3000 confirmed the issue persists in the latest 1.7.x version.
  • The problem remains unresolved and open for further investigation.

Next Steps:

  • Please let me know if this issue is still relevant with the latest version of Dify by commenting here.
  • If I don’t hear back within 15 days, I will automatically close this issue.

Thank you for your understanding and contribution!

@dosubot[bot] commented on GitHub (Sep 11, 2025): Hi, @kurokobo. I'm [Dosu](https://dosu.dev), and I'm helping the Dify team manage their backlog and am marking this issue as stale. **Issue Summary:** - You reported a validation error in version 1.4.3 when deleting the vision variable and disabling vision in a chatflow app. - The app fails due to an invalid empty `variable_selector`. - You suggested skipping validation or handling empty values more gracefully when vision is disabled. - Contributor lslzl3000 confirmed the issue persists in the latest 1.7.x version. - The problem remains unresolved and open for further investigation. **Next Steps:** - Please let me know if this issue is still relevant with the latest version of Dify by commenting here. - If I don’t hear back within 15 days, I will automatically close this issue. Thank you for your understanding and contribution!
Author
Owner

@KylinAnn commented on GitHub (Oct 16, 2025):

same bug met today, in version 1.9.1

reproduce:

  1. remove the Vision Variable
  2. disable VISION
  3. pass a Base64 string (converted from an image before the workflow) as input to the LLM.

The LLM itself runs successfully, but validation fails with: 1 validation error for LLMNodeData vision.configs.variable_selector 'str' instances are not allowed as a Sequence value [type=sequence_str, input_value='', input_type=str]

@KylinAnn commented on GitHub (Oct 16, 2025): same bug met today, in version 1.9.1 reproduce: 1. remove the Vision Variable 2. disable VISION 3. pass a Base64 string (converted from an image before the workflow) as input to the LLM. The LLM itself runs successfully, but validation fails with: 1 validation error for LLMNodeData vision.configs.variable_selector 'str' instances are not allowed as a Sequence value [type=sequence_str, input_value='', input_type=str]
Author
Owner

@kurokobo commented on GitHub (Dec 30, 2025):

Confirmed that this issue still exists in 1.11.2, so I've re-opened this as https://github.com/langgenius/dify/issues/30394

@kurokobo commented on GitHub (Dec 30, 2025): Confirmed that this issue still exists in 1.11.2, so I've re-opened this as https://github.com/langgenius/dify/issues/30394
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: langgenius/dify#14780