Download Latest Version v1.11.1 source code.tar.gz (18.2 MB)
Email in envelope

Get an email when there's a new version of Dify

Home / 1.11.0
Name Modified Size InfoDownloads / Week
Parent folder
README.md 2025-12-11 39.4 kB
v1.11.0 - Your knowledge base just went from mono to full HD source code.tar.gz 2025-12-11 18.2 MB
v1.11.0 - Your knowledge base just went from mono to full HD source code.zip 2025-12-11 22.6 MB
Totals: 3 Items   40.8 MB 0

multimodal-knowledge-base

🧠 Multimodal Knowledge Base

Dify can now understand both text and images in your knowledge base.

Before, embeddings only cared about words. But real docs? They’re full of screenshots, diagrams, memes (don’t lie), and markdown with embedded images. Now those visuals count too.

What’s Actually Happening

  1. Auto‑Image Extraction
    Drop a doc with Markdown images — like ![vibe](https://cats.png) — and Dify grabs them automatically (JPG, PNG, GIF ≤ 2 MB).
  2. Smart Attachment Handling
    Each image is linked to its matching text chunk, so context stays tight.
  3. Embedding Behavior
  4. Using a multimodal embedding model? Then both text + image get vectorized. You can:
    • search text ↔ image,
    • image ↔ image,
    • or image ↔ text.
      Basically, everything ↔ everything.
  5. Sticking with a regular text‑only model? Cool — the images still go along for the ride and will appear in prompts when you use a Vision‑enabled LLM.
  6. Developer Candy Knowledge Pipeline’s KnowledgeBase node speaks two new dialects —
  7. multimodal‑Parent‑Child
  8. multimodal‑General Perfect for plugin devs who want to feed Dify structured mixed‑modality data without headaches.
  9. Supported Multimodal Models (tips: update below plugin to the latest version)
  10. AWS Bedrock: nova‑2‑multimodal‑embeddings‑v1:0
  11. Google Vertex AI: multimodalembedding@001
  12. Jina: jina‑embedding‑v4, jina‑clip‑v1, jina‑clip‑v2, jina‑reranker‑m0
  13. Tongyi (Qwen): multimodal‑embedding‑v1

Once everything’s embedded, you’ll see a shiny new Multimodal tag in your knowledge base — because now your data’s two‑dimensional (and twice as cool).

Huge thanks to @JohnJyong (#29115) and @WTW0313 (#27793) for bringing visual intelligence to Dify. Absolute legends.

🧩 Other New Features

  • Zen Mode — disappear into your flow; fewer buttons, more focus. use cmd + k to enter. thanks @ZeroZ‑lab (#28794)
  • “Open Workflow” shortcut for WorkflowTool — hop straight into editing like a boss.
    props @CrabSAMA (#28898)
  • Start Node JSON Schema — keeps your workflows honest.
    thanks @fatelei (#29053)
  • Admin API Keys skip CSRF — automation now flows smoother than espresso.
    thanks @kenwoodjw (#29139)
  • Dark‑mode icons, ReactScan, and spicy color polish all landed too.
    shoutout @hjlarry (#28858) and @zhsama (#29086)

⚙️ Performance & Infrastructure

A whole lot of behind‑the‑curtain magic here:

  • GraphEngine got chill pause/resume handling — no more jumping gears mid‑flow.
    thanks @QuantumGhost (#28196)
  • Automatic Storage Permission Repair Introduced an init container that automatically fixes file system permissions on startup, removing the need for manual intervention when deploying with different storage backends. thanks to @kurokobo and @zhutong6688 (#29297).
  • Redis caching makes tool provider listings zoom. thanks @yangzheli (#29101)
  • Milvus 2.6.0 upgrade in Docker — fewer installation freak‑outs. cheers @majinghe (#26618)
  • Pydantic upgrade cleaned up node hydration code. thanks @asukaminato0721 (#28993)
  • Less UI lag — fewer unnecessary re‑renders across Workflow and Marketplace. props @iamjoel (#28776, #28783)
  • Massive test overhaul — embeddings, datasets, plugins, workflows… you name it. thanks @codomposer, @SmartDever02, @hsparks‑codes

🐞 Key Fixes

  • Webhook Node Conversion Error Resolved Fixed an issue where converting an existing node into a webhook node could cause a 404 error. thanks to @hjlarry (#28686).
  • Chat Auto‑Scroll Stability Restored
    Addressed a problem that caused the chat interface to stop auto‑scrolling during active conversations.
    thanks to @utsumi‑fj (#28690).
  • OceanBase Vector Search Accuracy Improved
    Implemented proper handling of the score_threshold parameter to ensure consistent and relevant retrieval results.
    thanks to @connermo (#28536).
  • Dark Theme Rendering Adjustments
    Corrected tooltip display and text color inconsistencies in dark mode for a more stable visual experience.
    thanks to @hjlarry (#29186).
  • MySQL Query Compatibility Fixes
    Resolved issues with UUID queries and unsupported returning statements when using MySQL drivers.
    thanks to @wangype (#28941) and @longbingljw (#29069).
  • Database Session Management
    Fixed errors that could occur when database sessions were initialized multiple times during workflow execution.
    thanks to @fatelei (#29160).
  • UI Consistency Enhancements
    Addressed several minor rendering and layout issues, including small‑screen text visibility and tooltip behavior.

🤘 A ton of folks touched this release — whether you built features, fixed a typo, or added a single test, thank you.
You made Dify 1.11.0 faster, funnier, and just plain better.


Upgrade Guide

[!NOTE]

We have re-released the image of this version. If you pulled the image before the release time, you need to delete them and re-fetch.

Docker Compose Deployments

  1. Back up your customized docker-compose YAML file (optional)

bash cd docker cp docker-compose.yaml docker-compose.yaml.$(date +%s).bak

  1. Get the latest code from the main branch

bash git checkout main git pull origin main

  1. Stop the service. Please execute in the docker directory

bash docker compose down

  1. Back up data

bash tar -cvf volumes-$(date +%s).tgz volumes

  1. Upgrade services

bash docker compose up -d

[!NOTE]

If you encounter errors like below

``bash 2025/11/26 11:37:57 /app/internal/db/pg/pg.go:30 [error] failed to initialize database, got error failed to connect tohost=db_postgres user=postgres database=dify_plugin`: hostname resolving error (lookup db_postgres on 127.0.0.11:53: server misbehaving)

2025/11/26 11:37:57 /app/internal/db/pg/pg.go:34 [error] failed to initialize database, got error failed to connect to host=db_postgres user=postgres database=postgres: hostname > resolving error (lookup db_postgres on 127.0.0.11:53: server misbehaving) 2025/11/26 11:37:57 init.go:99: [PANIC]failed to init dify plugin db: failed to connect to host=db_postgres user=postgres database=postgres: hostname resolving error (lookup db_postgres on 127.0.0.11:53: server misbehaving) panic: [PANIC]failed to init dify plugin db: failed to connect to host=db_postgres user=postgres database=postgres: hostname resolving error (lookup db_postgres on 127.0.0.11:53: server misbehaving) Please use the following command instead. For details, please read this https://github.com/langgenius/dify/issues/28706bash docker compose --profile postgresql up -d ```

Source Code Deployments

  1. Stop the API server, Worker, and Web frontend Server.

  2. Get the latest code from the release branch:

bash git checkout 1.11.0

  1. Update Python dependencies:

bash cd api uv sync

  1. Then, let's run the migration script:

bash uv run flask db upgrade

  1. Finally, run the API server, Worker, and Web frontend Server again.

What's Changed

New Contributors

Full Changelog: https://github.com/langgenius/dify/compare/1.10.1...1.11.0

Source: README.md, updated 2025-12-11