github langgenius/dify 0.12.0
v0.12.0

6 hours ago

✨ What’s New in v0.12.0? ✨

Important

Heads up! Starting with this version, we'll no longer support Python 3.10. Make sure to upgrade to Python 3.11 or 3.12 to stay current with our updates.

Hey everyone! We’ve been busy fine-tuning the platform and packing in some new features in version 0.12.0. Let’s see what’s new and improved:

🚀 Enhanced File Support for Workflow/Chatflow LLM Node and Chat/Agent

We’re excited to introduce the new file support capabilities for LLM Node and Basic Chat/Agent! This update significantly enhances multi-modal capabilities and smart document processing, providing more flexibility and power for your application development. Here are the key highlights:

File Variable Support in LLM Node

InsightFlow__begin InsightFlow__result

LLM Node now supports directly referencing File and Array File variables in Prompts, unlocking greater possibilities for developers.
For example, you can upload multiple file variables (such as PDFs and images) and have the model collaboratively handle complex tasks, like summarizing report content or extracting key data. Multi-file support makes workflow design more efficient and seamless!

Tip

  1. File Support Scope: The file types supported by the model may be more limited than the types allowed for upload. Be sure to read your model provider's official documentation to ensure that uploaded files can be processed correctly.
  2. Document Handling in Unsupported Models: If the model does not natively support processing document files, you will still need to use the Document Extractor for extracting content.
  3. Filtering Unsupported Files: To handle unsupported file types, consider using List Operator or IF-ELSE to screen them, ensuring smooth workflows.
  4. Relation to Vision Features: File support operates independently of the Vision toggle. As long as the model supports Vision capabilities, you can use files as input.

New Document-Type Support for Basic Chat and Agent

MarketSense AI

Basic Chat and Agent now include a Document toggle. If the model supports processing document-type files, you can enable this feature.
For instance, you can upload a PDF report and let the Agent automatically analyze market data or assess content value, making such workflows simpler and smarter.

Enhanced Multi-Modal Capabilities

Sentiment Analysis

The new version extends support for multi-modal tasks. For example, you can upload audio files and have the model perform emotional analysis. This combination of text, audio, and file processing capabilities allows you to build more diverse and rich application scenarios.

⚙️ Improvements

  • OpenAI o1 Streaming Support: We now support streaming output for OpenAI o1-preview and o1-mini, thanks to @laipz8200 in #10890.

  • Performance Optimization: The WeightRerankRunner logic has been optimized to achieve constant time complexity, thanks to @yihong0618 in #10849.

  • UI Enhancements: We’ve made the Table of Contents panel in the API document page collapsible, giving you greater control over your workspace, thanks to @hjlarry in #10875.

  • JSON Schema for Gemini Models: Added support for JSON schema integration, ensuring smoother alignment with Gemini models, thanks to @hjlarry in #10835.

  • Redis Clusters: Our ext_redis.py now includes support for Redis clusters, expanding flexibility for data management, implemented by @liuhaoran1212 in #9789.

  • Enhanced Custom Notes: You can now further enhance custom notes for increased expressiveness, courtesy of @hjlarry in #8885.

That’s the scoop for v0.12.0! Until next time, keep exploring and innovating! 🌟


Upgrade Guide

Docker compose deployments

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

    cd docker
    cp docker-compose.yaml docker-compose.yaml.$(date +%s).bak
  2. Get the latest code from the main branch

    git checkout main
    git pull origin main
  3. Stop the service,Command, please execute in the docker directory

    docker compose down
  4. Back up data

    tar -cvf volumes-$(date +%s).tgz volumes
  5. Upgrade services

    docker compose up -d

Source Code deployments

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

  2. Get the latest code from the release branch:

    git checkout 0.12.0
  3. Update Python dependencies:

    cd api
    poetry install
  4. Then, let's run the migration script:

    poetry run flask db upgrade
  5. Finally, run API server, Worker and Web frontend Server again.


What's Changed

New Contributors

Full Changelog: 0.11.2...0.12.0

Don't miss a new dify release

NewReleases is sending notifications on new releases.