Will oaicompat_dify_app support multimodal capabilities in the future #810

Closed
opened 2026-02-16 10:20:34 -05:00 by yindo · 3 comments
Owner

Originally created by @swchilei on GitHub (Nov 16, 2025).

Self Checks

  • I have read the Contributing Guide and Language Policy.
  • I have searched for existing issues search for existing issues, including closed ones.
  • I confirm that I am using English to submit this report, otherwise it will be closed.
  • Please do not modify this template :) and fill in all the required fields.

1. Is this request related to a challenge you're experiencing? Tell me about your story.

When using the oaicompat_dify_app plugin, it fails to process content that is a data type.
Example:
Normal: {'role': 'user', 'content': 'hello'}
Failed: {'role': 'user', 'content': [{'type': 'text', 'text': 'hello'}]}

2. Additional context or comments

When using the oaicompat_dify_app plugin, it fails to process content that is a data type.
Example:
Normal: {'role': 'user', 'content': 'hello'}
Failed: {'role': 'user', 'content': [{'type': 'text', 'text': 'hello'}]}

3. Can you help us with this feature?

  • I am interested in contributing to this feature.
Originally created by @swchilei on GitHub (Nov 16, 2025). ### Self Checks - [x] I have read the [Contributing Guide](https://github.com/langgenius/dify/blob/main/CONTRIBUTING.md) and [Language Policy](https://github.com/langgenius/dify/issues/1542). - [x] I have searched for existing issues [search for existing issues](https://github.com/langgenius/dify-official-plugins/issues), including closed ones. - [x] I confirm that I am using English to submit this report, otherwise it will be closed. - [x] Please do not modify this template :) and fill in all the required fields. ### 1. Is this request related to a challenge you're experiencing? Tell me about your story. When using the oaicompat_dify_app plugin, it fails to process content that is a data type. Example: Normal: {'role': 'user', 'content': 'hello'} Failed: {'role': 'user', 'content': [{'type': 'text', 'text': 'hello'}]} ### 2. Additional context or comments When using the oaicompat_dify_app plugin, it fails to process content that is a data type. Example: Normal: {'role': 'user', 'content': 'hello'} Failed: {'role': 'user', 'content': [{'type': 'text', 'text': 'hello'}]} ### 3. Can you help us with this feature? - [ ] I am interested in contributing to this feature.
yindo added the bugenhancement labels 2026-02-16 10:20:34 -05:00
yindo closed this issue 2026-02-16 10:20:34 -05:00
Author
Owner

@dosubot[bot] commented on GitHub (Nov 16, 2025):

Hi @swchilei! I'm Dosu and I’m helping the dify-official-plugins team.

There are currently no indications that the oaicompat_dify_app plugin will support multimodal capabilities (such as handling images, audio, or structured content in the content field) in the near future. The plugin expects message content to be plain text and does not handle nested or structured data types, which is why it fails with inputs like {'role': 'user', 'content': [{'type': 'text', 'text': 'hello'}]}. There are no TODOs, comments, or roadmap notes in the codebase or documentation about planned multimodal support for this plugin, and recent updates have focused on text-based improvements only citation.

If you need multimodal support, you might want to watch for developments in other plugins, such as the n1n API provider, which aims to bring multimodal capabilities to the Dify ecosystem, though not specifically through oaicompat_dify_app citation.

To reply, just mention @dosu.


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

@dosubot[bot] commented on GitHub (Nov 16, 2025): <!-- Greeting --> Hi @swchilei! I'm [Dosu](https://go.dosu.dev/dosubot) and I’m helping the dify-official-plugins team. <!-- Answer --> There are currently no indications that the oaicompat_dify_app plugin will support multimodal capabilities (such as handling images, audio, or structured content in the `content` field) in the near future. The plugin expects message content to be plain text and does not handle nested or structured data types, which is why it fails with inputs like `{'role': 'user', 'content': [{'type': 'text', 'text': 'hello'}]}`. There are no TODOs, comments, or roadmap notes in the codebase or documentation about planned multimodal support for this plugin, and recent updates have focused on text-based improvements only [citation](https://github.com/langgenius/dify-official-plugins/blob/bff6abd969ffad9242dd418fdb07222de3198b00/extensions/openai_compatible/endpoints/openai_compatible.py#L26-L131). If you need multimodal support, you might want to watch for developments in other plugins, such as the n1n API provider, which aims to bring multimodal capabilities to the Dify ecosystem, though not specifically through oaicompat_dify_app [citation](https://github.com/langgenius/dify-official-plugins/issues/1844). <!-- Dosu Comment Footer --> *To reply, just mention [@dosu](https://go.dosu.dev/dosubot).* --- <sup>How did I do? [Good](https://app.dosu.dev/response-feedback/6c38c74b-afb5-4b65-8a31-6beed67449a5?feedback_type=great_response) | [Irrelevant](https://app.dosu.dev/response-feedback/6c38c74b-afb5-4b65-8a31-6beed67449a5?feedback_type=irrelevant_answer) | [Incorrect](https://app.dosu.dev/response-feedback/6c38c74b-afb5-4b65-8a31-6beed67449a5?feedback_type=incorrect_sources) | [Verbose](https://app.dosu.dev/response-feedback/6c38c74b-afb5-4b65-8a31-6beed67449a5?feedback_type=too_verbose) | [Hallucination](https://app.dosu.dev/response-feedback/6c38c74b-afb5-4b65-8a31-6beed67449a5?feedback_type=hallucination) | [Report 🐛](https://app.dosu.dev/response-feedback/6c38c74b-afb5-4b65-8a31-6beed67449a5?feedback_type=bug_report) | [Other](https://app.dosu.dev/response-feedback/6c38c74b-afb5-4b65-8a31-6beed67449a5?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-official-plugins/issues/2073)
Author
Owner

@swchilei commented on GitHub (Nov 17, 2025):

Hi @dosu , Got it. I checked the n1n API provider, but it's not what I need.
I have to call the Dify app using the OpenAI-compatible API format.

@swchilei commented on GitHub (Nov 17, 2025): Hi [@dosu](https://go.dosu.dev/dosubot) , Got it. I checked the n1n API provider, but it's not what I need. I have to call the Dify app using the OpenAI-compatible API format.
Author
Owner

@dosubot[bot] commented on GitHub (Nov 17, 2025):

The oaicompat_dify_app plugin currently only supports plain text in the 'content' field and does not handle structured or multimodal data (like arrays of objects for images or rich content). If you send structured content, you'll get errors because the plugin expects a string and tries to concatenate or format it as text citation.

Recent updates have improved compatibility with OpenAI API message formats and added support for passing the full message history as a JSON string, but there’s still no support for multimodal or nested content—everything is flattened to text internally citation.

If you need to send multimodal data (like images), you’ll need to preprocess your messages so that the 'content' field is always a string (for example, by extracting and joining text segments, or by converting image references to URLs in plain text). There’s no built-in workaround for true multimodal support in this plugin right now.

If you need OpenAI-compatible API support with vision or multimodal models, you might want to look at alternative plugins like Regolo.ai, which is designed for OpenAI API compatibility and supports some vision models citation.

To reply, just mention @dosu.


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

@dosubot[bot] commented on GitHub (Nov 17, 2025): <!-- Answer --> The oaicompat_dify_app plugin currently only supports plain text in the 'content' field and does not handle structured or multimodal data (like arrays of objects for images or rich content). If you send structured content, you'll get errors because the plugin expects a string and tries to concatenate or format it as text [citation](https://github.com/langgenius/dify-official-plugins/blob/bff6abd969ffad9242dd418fdb07222de3198b00/extensions/openai_compatible/endpoints/openai_compatible.py#L8-L243). Recent updates have improved compatibility with OpenAI API message formats and added support for passing the full message history as a JSON string, but there’s still no support for multimodal or nested content—everything is flattened to text internally [citation](https://github.com/langgenius/dify-official-plugins/pull/516). If you need to send multimodal data (like images), you’ll need to preprocess your messages so that the 'content' field is always a string (for example, by extracting and joining text segments, or by converting image references to URLs in plain text). There’s no built-in workaround for true multimodal support in this plugin right now. If you need OpenAI-compatible API support with vision or multimodal models, you might want to look at alternative plugins like Regolo.ai, which is designed for OpenAI API compatibility and supports some vision models [citation](https://github.com/langgenius/dify-official-plugins/issues/1781). <!-- Dosu Comment Footer --> *To reply, just mention [@dosu](https://go.dosu.dev/dosubot).* --- <sup>How did I do? [Good](https://app.dosu.dev/response-feedback/99fb31a2-0548-476c-9b25-316e6b7aaf37?feedback_type=great_response) | [Irrelevant](https://app.dosu.dev/response-feedback/99fb31a2-0548-476c-9b25-316e6b7aaf37?feedback_type=irrelevant_answer) | [Incorrect](https://app.dosu.dev/response-feedback/99fb31a2-0548-476c-9b25-316e6b7aaf37?feedback_type=incorrect_sources) | [Verbose](https://app.dosu.dev/response-feedback/99fb31a2-0548-476c-9b25-316e6b7aaf37?feedback_type=too_verbose) | [Hallucination](https://app.dosu.dev/response-feedback/99fb31a2-0548-476c-9b25-316e6b7aaf37?feedback_type=hallucination) | [Report 🐛](https://app.dosu.dev/response-feedback/99fb31a2-0548-476c-9b25-316e6b7aaf37?feedback_type=bug_report) | [Other](https://app.dosu.dev/response-feedback/99fb31a2-0548-476c-9b25-316e6b7aaf37?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-official-plugins/issues/2073)
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: langgenius/dify-official-plugins#810