Skip to content

Releases: langgenius/dify

v0.10.2

28 Oct 10:48
de57af4
Compare
Choose a tag to compare

✨ What’s New in v0.10.2? ✨

We're back with version 0.10.2, packed with new features, crucial fixes, and improvements that will make your workflow smoother and more efficient. Let's break down what's included:

🚀 New Features

  • Markdown Buttons in Workflows: Sprinkle some buttons in your markdown for workflows to make them pop. Shout out to @crazywoola in #9876.

  • Document Extractor Node with JSON Support: You can now manage JSON types with extractor nodes for more flexible data extraction. Thanks to @Theysua in #9899.

  • Text-to-Image with Stable-Diffusion 3.5: Bring your text to life with the new Stable-Diffusion-3.5-large integration using siliconflow. Props to @hwzhuhao in #9909.

  • Vectorizer Support in Workflows: The Vectorizer tool is now at your disposal within workflows for better data manipulation—kudos to @hjlarry in #9932.

🛠️ Enhancements and Fixes

  • API Documentation Upgrade: We've polished our API documentation for advanced chat and workflow functionalities. Special thanks to @kurokobo in #9882.

  • LLM Node Streaming Output Fix: Fixed the LLM Node streaming output to properly function after IF-ELSE decisions, ensuring your workflows are on track. Thanks to @laipz8200 in #9875.

  • Workflow Code Generator Update: Cleared up the Generate button from incorrect locations for a more intuitive workflow setup. Update by @Kota-Yamaguchi in #9740.

  • Enhanced Prompt Handling in Workflows: Added vision support in prompts for more dynamic configurations. Nicely done by @laipz8200 in #9790.

  • Improved File Handling in HTTP Requests: Your HTTP requests within workflows are now more robust. Much appreciated, @laipz8200 in #9944.

  • ⚠️ Fix for Tool Var Type Error: If you're using a "Number" parameter in "Workflow as Tool," please remove and re-add this tool to avoid any issues. Thanks to @iamjoel in #9937.

  • Chat Log Display Fix: We've resolved the display problems for chat logs, making sure everything shows up correctly. Big thanks to @xuzuodong in #9777.

  • Vision Support for Tool Image Gen: Image generation with vision models is now supported within your workflows—credit to @hjlarry in #9871.

  • System Parameters Standardization: Our system parameters have been standardized across the board. Cheers to @laipz8200 in #9797.

  • Image Previews in DOCX: Fixed issues with previews in 'docx' knowledge bases. Thanks again to @laipz8200 in #9893.

This release is all about enhancing your workflow capabilities and providing robust tools and documentation to back them up. Keep the feedback coming and happy building! 🌟


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.10.2
  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

  • Update Code Generator to use the currently configured model. by @Kota-Yamaguchi in #9740
  • fix(api): handle missing upload_file_id for tool_file messages by @laipz8200 in #9756
  • feat: regenerate history switch navigation by @xuzuodong in #8749
  • feat:Add host volume env variables for postgres, redis and weaviate by @jter in #9761
  • fix: fe can not start by @iamjoel in #9768
  • Update README_CN.md by @sunner in #9766
  • fix: chat log not showing correctly by @xuzuodong in #9777
  • refactor(file_factory): improve filename and mime type determination by @laipz8200 in #9784
  • fix(workflow): enhance prompt handling with vision support by @laipz8200 in #9790
  • remove unstructured pdf extract by @JohnJyong in #9794
  • fix: chart tool can't display chinese by @hjlarry in #9686
  • chore(docker): correct package version for expat and perl in Dockerfile by @laipz8200 in #9801
  • openai compatiable api usage and id by @guogeer in #9800
  • chore(docker): add default for MAX_VARIABLE_SIZE in docker-compose by @laipz8200 in #9798
  • feat(parameters): standardize system parameter field types and values by @laipz8200 in #9797
  • chore: abstract common function with local storage by @yaoice in #9811
  • Added description for .ppt, specify the reason for unstructured.io by @Theysua in #9452
  • chore: make doc extractor node also can extract text by file extension by @hjlarry in #9543
  • Feat: use file size limit from api by @JzoNgKVO in #9739
  • feat(api): add generic file size limit parameter by @laipz8200 in #9812
  • refactor: update load_stream method to directly yield file chunks by @hwzhuhao in #9806
  • fix: duckduckgo image search not work by @hjlarry in #9821
  • feat: create_empty_dataset api add the description parameter and update api docs by @rchlz in #9824
  • fix: yuque book id should be string by @crazywoola in #9819
  • chore: add local storage test by @yaoice in #9827
  • add tidb on qdrant type by @JohnJyong in #9831
  • fix: exclude failed answer when sending messages by @xuzuodong in #9835
  • fix: moonshot response_format raise error by @hjlarry in #9847
  • chore: code generator button should only display in code node by @hjlarry in #9842
  • Fix: add check for maximum chunk length by @JzoNgKVO in #9837
  • chore: update api docs by @JzoNgKVO in #9832
  • chore: translate i18n files by @github-actions in #9853
  • Marking the last piece of data on each page is a duplicate issue, which can be solved by adding the id field to the order by rig and using a unique field by @yuanboao in #9799
  • feat: allow answer node use chat_var and env_var by @hjlarry in #9226
  • fix: segement settings of documents raise error by @hjlarry in #8971
  • upgrade nltk, unstructured and starlette by @JohnJyong in #9860
  • chore: add default value for redis configuration by @hwzhuhao in #9864
  • feat: support comfyui workflow tool image generate image by @hjlarry in #9871
  • feat: support button in markdown by @crazywoola in #9876
  • fix: wrong element object by @virgosoy in #9868
  • fix(workflow): Take back LLM streaming output after IF-ELSE by @laipz8200 in #9875
  • fix users had already joined a workspace, but the system still first … by @G81192 in #9834
  • docs: improve api documentation for advanced chat and workflow by @kurokobo in #9882
  • Update README.md by @leilei-jiang in #9886
  • Update README.md by @leilei-jiang in #9889
  • Update README.md by @leilei-jiang in #9890
  • Update README.md by @leilei-jiang in #9891
  • fix(api): add signature generation for image previews by @laipz8200 in #9893
  • feat(workflow): Support JSON type in document extractor node by @Theysua in #9899
  • chore: Extract common functions of the base model in Azure OpenAI Provider by @yaoice in #9907
  • fix(tools): remove the undefined variable parameter_type by @hwzhuhao in #9908
  • feat: add stable-diffusion-3-5-large for the text-to-image tool with siliconflow by @hwzhuhao in #9909
  • fix: enterprise create workspace by @ZhouhaoJiang in #9921
  • add document lock for multi-thread by @JohnJyong in #9873
  • Remove invalid languages error by @seikyo-cho-lvgs in #9928
  • fix: t...
Read more

v0.10.1

23 Oct 15:37
4003922
Compare
Choose a tag to compare

🚀 What’s New in v0.10.1? 🚀

Welcome to version v0.10.1, where we've made significant strides in expanding functionalities and enhancing user workflows. Here's a quick look at the highlights of this release:

🔹 Claude 3.5 Sonnet v2 Models

Experience advanced language processing across Google Cloud, Bedrock, and Anthropic platforms, seamlessly integrated with the latest technology advancements via #9688, #9685, and #9708.

Code Generator

Empower your Workflow's Code Node with our new Code Generator tool. This feature is designed to streamline coding processes within workflows, boosting development efficiency and reducing manual coding efforts. Check it out in #9051.

🐛 Bug Fixes

  • Custom Icon Restoration: We've reintroduced the flexibility and personalization of custom icons, addressing previous issues to ensure your icons display correctly, as implemented by @zxhlyh in #9654.

  • HTTP Node Improvements: Enhanced JSON handling and simplified request management to boost the stability and security of the HTTP Node by @laipz8200 in #9616, and fixed the handling of empty and string data inputs for consistent performance by @laipz8200 in #9579.

  • File Upload Corrections: Resolved multiple issues affecting file uploads for smoother operations. Image config uploads were corrected by @laipz8200 in #9568.

  • Improved Iteration Handling: Made iterators more robust by gracefully handling empty scenarios, as addressed by @laipz8200 in #9565.

  • VisionConfig Validation: Introduced a validator for VisionConfig entities to handle None values properly, improving data integrity by @laipz8200 in #9598.

  • Workflow Management: Improved workflow and database session management to resolve instabilities and enhance reliability by @laipz8200 in #9581.

  • If-Else Node Enhancement: Enhanced if-else nodes to properly add downstream nodes, ensuring logical consistency in workflow paths by @linfey90 in #9640.

  • Used File in Tools: Addressed errors caused by file operations in tools to ensure smoother functionality by @iamjoel in #9660.

  • Environment Variables: Fixed environmental variable issues for ModelProvider and Tool Position to ensure they operate as intended. Resolved by @tkoshida in #9650.

  • Web App UX: Corrected the style of the features panel specifically in Safari to enhance the overall visual experience by @JzoNgKVO in #9573 and addressed the email login redirect issue and corrected navigation behaviors to improve user experience by @ZhouhaoJiang in #9698.

This update is packed with critical fixes, new features, and exciting enhancements to empower your AI applications. Dive into v0.10.1 and experience these improvements firsthand!


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.10.1
  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

Read more

v0.10.0

21 Oct 10:54
ca21c28
Compare
Choose a tag to compare

Important

If you have a Basic Chatbot or Text Generator App with the ‘Vision’ feature enabled, it will be necessary to republish the application following this update.

🎉 What's New in v0.10.0? 🎉

Hello to all the innovators out there! We're excited to unveil v0.10.0, a powerhouse update designed to enhance your flexibility and efficiency. Let’s delve into the highlights:

features

🌟 Enhanced Multi-Modal Support

This central feature boosts your workflows and chatflows with greater flexibility:

  • Advanced File Handling: Nodes like START, LLM, HTTP Request and IF-ELSE now seamlessly manage "File" types, simplifying the processing of various file formats within your workflows.

  • New Functional Nodes:

    • Document Extractor: Converts documents into text effortlessly, making data extraction straightforward.
    • List Operator: Empowers you with operations to filter, sort, and limit arrays, enhancing data control and manipulation.
  • Efficient Array Handling: Directly use array[string] and array[number] in LLM prompts for more agile data interactions.

Thanks to the tireless efforts of @zxhlyh in #9526 and @laipz8200 in #8818, this feature marks a significant leap forward.

Read more: Introducing Dify Workflow File Upload: A Demo on AI Podcast

✉️ Registry and Login with Email

Simplifying user access with:

  • Email Registration & Login: Offers a secure, straightforward access method for users, optimizing the onboarding process. Shoutout to @douxc in #8119 and @ZhouhaoJiang in #8120.

🚀 Additional Features

  • Dataset Recall Testing API: Gain insights into data retrieval efficiency with this new API, brought to you by @gubinjie in #9300.
  • Fireworks Model Integration: Access Qwen2.5 72B Instruct models for expanded AI capability, thanks to @yaoice in #9333 and #9340.

🛠️ Enhancements

  • Storybook Component Testing: Streamlined UI testing and visualization, expertly structured by @xuzuodong in #9324.
  • Timezone Conversion Enhancements: Enhanced precision and usability with support in the Time Tool, thanks to @hwzhuhao in #9393.

🔧 Fixes

  • Azure OpenAI Fixes: Resolved key issues with max token calculations for improved performance, managed by @somethingwentwell in #9326.
  • Endpoint Functionality Fixes: Strengthened the stability of the db-pool-stat endpoint, addressed by @hwzhuhao in #9478.

v0.10.0 brings a wealth of innovations to simplify and elevate your workflow capabilities. Dive in and explore these enhancements to harness the full potential of AI-driven tasks. Your feedback is pivotal, so keep it coming. Happy building! 🚀


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.10.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

Read more

v0.10.0-beta3

15 Oct 08:08
Compare
Choose a tag to compare
v0.10.0-beta3 Pre-release
Pre-release

✨ What’s New in v0.10.0-beta3? ✨

Important

This version is for preview only. Please avoid using it in production environments!

Note

Your feedback is incredibly valuable to us! We encourage you to share your thoughts and discuss any issues using the GitHub Discussions feature. You can find the entry point for Discussions at the bottom of the release page.

🚀 Major Updates

  • Enhanced Prompt Editor for LLM Node: You can now utilize Array<String> and Array<Number> types within the Prompt editor. This improvement aims to enhance the flexibility and usability of prompt design.
  • New Podcast Generator Tool: We’ve added a tool to demonstrate file generation within the platform. This feature allows you to explore how content like podcasts can be created through automated workflows.

🛠️ Bug Fixes

  • We’ve addressed several bugs reported by the community. Thank you for your contributions!

Quick Start

To upgrade to this version, follow these steps:

  1. Clone and enter our repository:
git clone https://github.com/langgenius/dify.git && cd dify
  1. Switch to the beta branch:
git checkout 0.10.0-beta3
  1. Then follow the Deploy with Docker Compose > Starting Dify.

We hope you find the new features and fixes useful. As always, your feedback and contributions are welcome to help improve Dify!

v0.9.2

14 Oct 09:22
5c7b135
Compare
Choose a tag to compare

✨ What’s New in v0.9.2? ✨

The most recent release brings some solid new features, enhancements, and bug fixes that should enhance your experience across the platform. Check out what's changed:

🚀 New Features

  • Model Additions and Enhancements: Added models qwen2.5-72b and llama3.2 for OpenRouter by @hwzhuhao in #8956. Also, O1-mini, O1-preview, and LlamaGuard models have joined the lineup thanks to contributions from @charli117 and @crazywoola.

  • Workflow System Parameters: Now, you can access sys.app_id, sys.workflow_id, and sys.workflow_run_id in your workflow system variables for more dynamic workflows, courtesy of @ZhouhaoJiang in #9108.

  • Image Generation Enhancements: The StepFun image generation tool got a boost, enabling richer and broader capabilities, spearheaded by @hwzhuhao in #8954.

  • Tools Update: Discord Incoming Webhook now lets you send messages directly, created by @yaoice. Props to @hwzhuhao for adding tags for Vanna tools too.

  • Vector Provider: Meet the new kid on the block, Volcengine VikingDB, integrated into the system and ready to expand your vector capabilities, brought to you by @yaoice in #9287.

  • CSP Support: Content Security Policy (CSP) is now supported, adding an extra layer of security to your operations, thanks to @douxc.

  • Supabase Object Storage: A new storage option at your disposal, big cheers to @hwzhuhao for the integration in #9229.

⚙️ Enhancements

  • Richer Time Tool Functions: Now you can convert and retrieve timestamps with the Time Tool, unlocking more precise temporal operations courtesy of @hwzhuhao.

  • Non-Root User for Web Container: Security gets a bump with the use of a non-root user in the web container, hats off to @s2oBCN for that.

  • Prompt Editor Optimization: Clearer and more efficient prompt editing with reset capabilities, devised by @HiChen404.

  • Customizeable Chatbot Embed: Change the size to fit your needs with default values set for your convenience—well done, @alterxyz for this addition.

  • Responsive Front-end Updates: With rerank model verification and error logs only in debug mode, your interface just became more practical and informative. Thanks, @YIXIAO0 and @hwzhuhao.

🛠️ Bug Fixes

  • API and Logs: Chat API now reliably retrieves conversation history (thanks @xuzuodong), and fixes have been applied to API proxy updates and missing model information in LLM spans.

  • Tool Descriptions: Essential descriptions are back where they belong—visible and complete, thanks to @crazywoola.

  • External Knowledge and Retrievals: Addressing issues in agent retrieval and entry allows external knowledge operation to run smoother, thanks to @JohnJyong.

  • Miscellaneous Fixes: Including max-token adjustments in OpenRouter by @infinitnet, correct session history fetching, stopping notification errors, and many more have tightened up the system, courtesy of multiple contributors.

Miscellaneous

  • Typos and Documentation: Corrected typos and added documentation on key integrations like Google Cloud Terraform, thanks to the hawk-eyed @y-omr and @sotazum.

This version packs plenty to explore, ensuring your workflows and integrations are smoother, faster, and richer with features. Happy upgrading!


Upgrade Guide

Warning

This version includes a migration that might update a large volume of messages. If you have a significant amount of message data, please review our changes in #9132 before upgrading.

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.9.2
  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

  • chore: add missing models from Voyage by @CXwudi in #8950
  • chore: sort Gemini models by @CXwudi in #8951
  • refactor: remove unnecessary comment by @y-omr in #8949
  • chore: remove unexecuted scripts to avoid ambiguity by @yaoice in #8946
  • feat: add qwen2.5-72b and llama3.2 for openrouter by @hwzhuhao in #8956
  • feat: enhance stepfun image generation tool by @hwzhuhao in #8954
  • fix: chat API is not bringing the conversation/session history by @xuzuodong in #8965
  • fix: corrected typo by @y-omr in #8979
  • feat(Tools): add discord incoming webhook for sending messages by @yaoice in #7852
  • Update json_in_md_parser.py by @zhao85 in #8983
  • feat: Update AWS Bedrock supported regions by @Retr0-01 in #8992
  • fix: tools description is missing by @crazywoola in #8999
  • fix: failed to open links to images generated by QR code tool when using Huawei OBS by @hwzhuhao in #9034
  • fix bug when adding openai or openai-compatible stt model instance by @zhao85 in #9006
  • chore: fix the yanked dependency vesion aiohappyeyeballs 2.4.2 by @bowenliang123 in #9020
  • refactor: remove the duplicate definitions across different modules by @hwzhuhao in #9022
  • feat: add baidu obs storage by @hwzhuhao in #9024
  • fix: Missing model information in llm span of Langfuse #9029 by @aiscrm in #9030
  • fix:ddg ratelimit 202 by @leslie2046 in #9047
  • chore: move testing env variables from pyproject.toml to pytest.ini by @bowenliang123 in #9019
  • feat: Improvement- use non root user for Web container by @s2oBCN in #8928
  • chore: removing unused imports in tests by @bowenliang123 in #9049
  • fix: Ignore the error toast notification if the status is 401 and isPublicAPI is true by @douxc in #9062
  • chore: refine python dependency list and check dependencies in order by @bowenliang123 in #9061
  • fix: zhipu ai web_search not work by @hjlarry in #9058
  • docs: Add Google Cloud Terraform to README by @sotazum in #9065
  • Correct max_tokens for OpenRouter Sonnet 3.5 by @infinitnet in #9068
  • fix: Count exception occurs when searching conversations by @Gaocarri in #8754
  • feat: update the xinf tool's API key to optional by @hwzhuhao in #9073
  • fix: #8969 by @Blackman99 in #9076
  • feat: add timestamp conversion and timestamp retrieval for time tool by @hwzhuhao in #9085
  • Feat/9081 add support for llamaguard through groq provider by @crazywoola in #9083
  • fix: prompt-editor regex.lastIndex needed to reset by @HiChen404 in #9097
  • fix s3 presign url check problem, support two versions(v2,v4) by @ybalbert001 in #9093
  • refactor: Update countries & languages list for SearchApi engines by @SebastjanPrachovskij in #9090
  • chore: add the missing tool names to the _position file by @hwzhuhao in #9099
  • feat: add tags for vanna tools by @hwzhuhao in #9102
  • feat: output the execution results of tool should only in debug mode by @hwzhuhao in #9104
  • refactor: introduce storage factory and speed up api startup by importing storage client on demand by @bowenliang123 in #9086
  • chore: avoid implicit optional in type annotations of method by @bowenliang123 in #8727
  • feat: respect x-* headers for redirections by @kurokobo in #9054
  • azure add o1-mini、o1-preview models by @charli117 in #9088
  • Add customizable size for chatbot embed with default values by @alterxyz in #9115
  • Fix the margin for the rerank switch in retrieval setting by @YIXIAO0 in #9124
  • add generate conversation name error log by @pinsily in #9117
  • fix: follow-up (suggested questions) does not refer to the most recen… by @xuzuodong ...
Read more

v0.9.1-fix1

11 Oct 03:15
Compare
Choose a tag to compare

✨ What’s New in v0.9.1-fix1? ✨

Hey everyone, we’ve got some fresh updates with the release of version 0.9.1-fix1. Here’s a quick walkthrough of what’s changed:

Important

This version includes a migration that might update a large volume of messages. If you have a significant amount of message data, please review our changes in #9132 before upgrading.

🛠️ Fixes & Improvements

  • Resolved an issue with the chat API where the conversation/session history wasn't being loaded properly by @xuzuodong in #8965.

🚀 Models

  • Added missing models from the Voyage collection by @CXwudi in #8950.
  • Sorted Gemini models for better organization by @CXwudi in #8951.
  • Introduced qwen2.5-72b and llama3.2 models for OpenRouter by @hwzhuhao in #8956.

This release is all about laying solid groundwork and enhancing the features you already love. Dive in and let us know what you think!


Upgrade Guide

Docker compose deployments

Warning

The docker-compose.yaml has been refactored. If you've made any changes to the file, make sure to check out the "Upgrade to new docker compose deployment" section above for usage and migration tips.

  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 0.9.1-fix1 branch

    git checkout 0.9.1-fix1
    git pull origin 0.9.1-fix1
  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 0.9.1-fix1 branch:

    git checkout 0.9.1-fix1
    git pull origin 0.9.1-fix1
  3. Update Python dependencies:

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

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


What's Changed

New Contributors

Full Changelog: 0.9.1...0.9.2

v0.10.0-beta2

01 Oct 06:07
Compare
Choose a tag to compare
v0.10.0-beta2 Pre-release
Pre-release

✨ What’s New in v0.10.0-beta2? ✨

Important

This version is for preview only, do not use in production!

Note

We highly value your feedback! Please feel free to share your thoughts and discuss any issues using the GitHub Discussions feature. You can find the entry point for Discussions at the bottom of the release page.

🛠️ Bug Fixes

  • Docker Startup Issue: Resolved an issue where Dify 0.10.0-beta1 could not be started using Docker.

Quick Start

To upgrade to this version, follow these steps:

  1. Clone the repository using the following command:

    git clone https://github.com/langgenius/dify.git
  2. Switch to the beta branch:

    git checkout 0.10.0-beta2
  3. Then follow the Deploy with Docker Compose > Starting Dify.

We hope you find the new file processing capabilities and nodes useful in this release. Your feedback and contributions are always appreciated to help us improve Dify!

v0.10.0-beta1

30 Sep 15:47
Compare
Choose a tag to compare
v0.10.0-beta1 Pre-release
Pre-release

✨ What’s New in v0.10.0-beta1?✨

Important

This version is for preview only, do not use in production!

Note

We highly value your feedback! Please feel free to share your thoughts and discuss new features using the GitHub Discussions feature. You can find the entry point for Discussions at the bottom of the release page.

We are pleased to offer Dify 0.10.0-beta1 for early access. This release includes support for file processing in Workflows and Chatflow, allowing users to utilize File and Array<File> variable types and pass these variables through multiple nodes.

🚀 Key Features

  • File Processing in Workflows: Added support for File and Array<File> variable types, allowing seamless handling and transfer of files across various nodes in a workflow. This capability significantly expands the range of tasks you can automate with Dify.

  • Document Extractor Node: Introducing the new Document Extractor node, which serves as a case example for file usage. This node is designed to parse various types of documents into text, facilitating text extraction from different file formats for further processing.

  • List Filter Node: To make it easier for users to work with Array variables, the List Filter node has been added. This node allows you to filter, sort, and slice arrays based on specific conditions, offering enhanced control over array-type data within your workflows.

🎨 UI and UX Updates

We have also introduced some UI and UX improvements to make Dify more modern and user-friendly.

Screenshot 1 Screenshot 2 Screenshot 3

Quick Start

To upgrade to this version, follow these steps:

  1. Clone the repository using the following command:

    git clone https://github.com/langgenius/dify.git
  2. Switch to the beta branch:

    git checkout 0.10.0-beta1
  3. Then follow the Deploy with Docker Compose > Starting Dify.

We hope you find the new file processing capabilities and nodes useful in this release. Your feedback and contributions are always appreciated to help us improve Dify!

v0.9.1

30 Sep 15:22
1f5cc07
Compare
Choose a tag to compare

✨ What’s New in v0.9.1? ✨

We've shipped version 0.9.1 and it’s all about tightening up those loose ends. Let’s dive into what’s been improved:

🚀 Updates & Fixes

  • Dataset Updates Refined: We've streamlined the process for updating original datasets by removing unnecessary parameters. Kudos to @JohnJyong for ironing this out in #8935 and #8939. Less clutter, smoother update experience.

  • Web Page Import via Jina: If you've hit a snag with importing web pages using Jina, the fix is now in place. Thanks to @douxc, those pesky errors should be a thing of the past in #8937.

  • Internal Dataset Request Params: Adjustments have been made to correct request parameters for internal datasets, ensuring your data requests play nice. Thanks, @YIXIAO0, for handling this in #8940.

  • Knowledge Node Retrieval: We’ve eliminated instances of multiple retrieval in the knowledge node to optimize performance and efficiency. A big shout-out to @JohnJyong again for this fix in #8942.

This version is all about refinement and stability, ensuring that the gears behind the scenes are turning smoothly. Until next time, keep building and innovating!


Upgrade Guide

Docker compose deployments

Warning

The docker-compose.yaml has been refactored. If you've made any changes to the file, make sure to check out the "Upgrade to new docker compose deployment" section above for usage and migration tips.

  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 main branch:

    git checkout 0.9.1
    git pull origin 0.9.1
  3. Update Python dependencies:

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

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


What's Changed

Full Changelog: 0.9.0...0.9.1

v0.9.0

30 Sep 10:35
d2ce496
Compare
Choose a tag to compare

✨ What’s New in v0.9.0? ✨

Get ready for a feature-packed update! Version 0.9.0 brings major enhancements, new integrations, and crucial fixes. Let’s dive into the details:

🚀 New Features

🔄 Retrieval-Augmented Generation (RAG)

External Knowledge API: Now you can connect to third-party knowledge bases seamlessly (introduced by @JohnJyong in #8913).

img_v3_02f7_b73507d9-c144-4a1d-acf4-caccec69b99g

  • Simply provide the API endpoint, API key, and external knowledge ID to link with the external knowledge base.
  • Supports retrieval and recall of external knowledge based on user queries.
  • Enables integration of external knowledge bases within Dify applications.

Website Crawling: Now supports Jina Reader as additional alternative for website crawling, converting web page URL to LLM-friendly input format. Read Sync Data from Website for details. (@mapleeit in #8761).

🧠 Models

  • Voyage AI: A new model provider added (thanks to @hwzhuhao in #8747).
  • Llama3.2: Now available with Fireworks and Groq providers for improved performance and variety (@yaoice in #8809 and @Howe829 in #8831).
  • Introduced InternLM 2.5-20b and Qwen 2.5-coder-7b (@hwzhuhao in #8862).
  • Jamba: Another new model to expand our capabilities (@longzhihun in #8878).
  • New Nomic embedding model provider introduced (@yaoice in #8640).
  • Support for o1 series models for OpenRouter (@sinomoe in #8358).
  • DeepSeek-v2.5 added as a model provider for SiliconFlow (@hwzhuhao in #8639).
  • Stream for Gemini now available (@AAEE86 in #8678).
  • Vertex AI Gemini 1.5 002 and experimental models are now supported (@hellof20 in #8767).

🛠️ Other Updates

  • Xinference TTS Stream Mode: Now live for a smoother text-to-speech experience (@leslie2046 in #8616).
  • Regenerate in Chat, Agent, and Chatflow applications (@xuzuodong in #7661).

⚙️ Enhancements

  • Improved SVG output UX for a more seamless design experience (@xuzuodong in #8765).
  • Extended Jina Embeddings V3 API parameters (@DresAaron in #8657).
  • Deprecated older Mistral models for SiliconFlow to streamline performance (@hwzhuhao in #8828).
  • Added Min-connections and Max-connections settings for pgvector (@hwzhuhao in #8841).
  • Error Handling Enhancements: Improved iteration filters and error logging for optimal performance (@hwzhuhao in #8461).
  • Enhanced operational flexibility with fully configurable WORKFLOW_ environment variables* (@fujita-h in #8644).
  • Upgraded ElasticSearch from 8.14.x to 8.15.x to keep our infrastructure up-to-date (@bowenliang123 in #8197).

🛠️ Bug Fixes

  • Fixed "Max submit count reached" error during workflow iterations (@takatost in #8595).
  • Corrected a linking error in help documents (@hjlarry in #8508).
  • iOS TTS Stream: Now fully functional on Safari 17.1+ (@likenamehaojie in #8645).
  • Resolved JSONDecodeError in llm_generator.py (@ZuzooVn in #8504).
  • Fixed errors when sending messages within chatflow and dialogs (@xuzuodong in #8627 and #8682).
  • Corrected Spark's LLM token calculation error for accurate token usage (@cherryhuahua in #8755).
  • Resolved embedded chat issues on iOS (@zxhlyh in #8718).

📚 Documentation & Misc

  • Enhanced documentation to clarify the importance of Celery Service (@fchange in #8558).
  • Updated configurations in docker-compose files and related docs (@saifeiLee and others in #8516 and #8691).
  • Added English versions for customizable model scale documentation to broaden accessibility (@hwzhuhao in #8871).

With this release, we’re truly showcasing the power of Dify! We appreciate your continued support—explore the new features and share your feedback with us!


Upgrade Guide

Docker compose deployments

Warning

The docker-compose.yaml has been refactored. If you've made any changes to the file, make sure to check out the "Upgrade to new docker compose deployment" section above for usage and migration tips.

  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 main branch:

    git checkout 0.9.0
    git pull origin 0.9.0
  3. Update Python dependencies:

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

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


What's Changed

  • fix(workflow): "Max submit count reached" error occurred when executing workflow as tool in iteration by @takatost in #8595
  • fix: a helper link error by @hjlarry in #8508
  • chore: translate i18n files by @github-actions in #8557
  • Enhance Readme Documentation to Clarify the Importance of Celery Service by @fchange in #8558
  • docs: Update ssrf_proxy related doc link in docker-compose file by @saifeiLee in #8516
  • Update the PerfXCloud provider model list,Update PerfXCloudProvider validate_provider_credentials method. by @BingGeX in #8587
  • add MixtralAI Model by @AAEE86 in #8517
  • fix: api/core/ops/ops_trace_manager.py by @ZuzooVn in #8501
  • add Qwen custom add model interface by @AAEE86 in #8565
  • refactor(ops): Optimize the iteration for filter_none_values and use logging.error to record logs when an exception occurs by @hwzhuhao in #8461
  • feat: update pyproject.toml by @ZhouhaoJiang in #8368
  • feat: regenerate in Chat, agent and Chatflow app by @xuzuodong in #7661
  • docs: Add Japanese documentation for tools by @totsukash in #8469
  • feat:use xinference tts stream mode by @leslie2046 in #8616
  • Add Fireworks AI as new model provider by @yaoice in #8428
  • feat(tools/cogview): Updated cogview tool to support cogview-3 and the latest cogview-3-plus by @ox01024 in #8382
  • Add model parameter translation by @AAEE86 in #8509
  • fix: form input add tabIndex by @LLmoskk in #8478
  • feat: support o1 series models for openrouter by @sinomoe in #8358
  • chore: add Gemini newest experimental models (close #7121) by @CXwudi in #8621
  • chore: enhance configuration descriptions by @ZuzooVn in #8624
  • fix: redundant check for available_document_count by @y-omr in #8491
  • fix: commands.py by @ZuzooVn in #8483
  • fix: llm_generator.py JSONDecodeError by @ZuzooVn in #8504
  • fix: send message error when chatting with opening statement by @xuzuodong in #8627
  • feat: add qwen2.5 for model provider siliconflow by @hwzhuhao in #8630
  • docs: fix predefined_model_scale_out.md redirect error by @hwzhuhao in #8633
  • feat: add deepseek-v2.5 for model provider siliconflow by @hwzhuhao in #8639
  • Make WORKFLOW_* configurable as environment variables. by @fujita-h in #8644
  • chore: Enable Japanese descriptions for Tools by @totsukash in #8646
  • feat: extend api params for Jina Embeddings V3 by @DresAaron in #8657
  • fix: Assignment exception by @haike-1213 in #8663
  • chore: skip PLR6201 linter rule by @bowenliang123 in #8666
  • fix: png avatar upload as jpeg by @hjlarry in #8665
  • add Qwen model translate by @AAEE86 in #8674
  • add zhipuai web search by @AAEE86 in #8668
  • add Spark Max-32K by @AAEE86 in #8676
  • chore: Optimize I18nObject class for better performance and readability by @ZuzooVn in #8681
  • fix: send message error when last sent message not succeeded by @xuzuodong in #8682
  • fixbug tts(stream) not work on ios safari(17.1...
Read more