Releases: langgenius/dify
v0.6.6
✨ What’s New in v0.6.6? ✨
This update primarily focuses on enhancing system stability and improving user experience. Key updates include:
🚀 New Features
-
Tool Firecrawl support by @richards199999 in #3819
This new tool provides capabilities akin to JinaReader, allowing you to efficiently scrape web content and convert it to Markdown format.
-
Bedrock Llama3 support by @longzhihun in #3890
-
VectorDB PGVecto_rs support and SQLAlchemy upgrade to 2.x by @JohnJyong in #3833
-
Added support for HTTP Request Timeout Settings in the HTTP request node by @majian159 in #3854
With the new connection, read, and write timeout settings, you can control your HTTP requests with precision.
⚙️ Enhancements
-
Added support for Traditional Chinese language by @yongjer in #3899
-
Workflow remove preview mode by @zxhlyh in #3941
During preview, users can modify workflow graph configurations to enhance the user experience.”
-
Qdrant gRPC mode support by @leslie2046 in #3929
-
Refactor storage using the factory pattern by @JohnJyong in #3922
-
Update sandbox service image tag to a specific version to avoid any issues with delayed image updates by @Yeuoly in #3997
-
Text stream support for workflow app when using LLM node text as End node output by @takatost in #3798
If the END node in the workflow app contains the LLM text variable, it can support streaming output in typewriter form.
-
CODE transform node editor support insert var by add slash or left brace by @iamjoel in #3946
-
Added class_name output variable for question classifier node by @sinomoe in #4000
🛠️ Bug Fixes
- fix: tool webscraper - too many redirects in case target url does not support HEAD method and redirect infinite to the same error link by @miendinh in #3831
- fix: fetch page name of notion wiki by @badbye in #3847
- fix: together ai model setting by @JohnJyong in #3895
- feat: replicate model provider supports default version by @GarfieldDai in #3884
For additional enhancements and updates, refer to the What's Changed section below.
Update Guide
Docker compose deployments:
-
Get the latest code from the main branch:
git checkout main git pull origin main
-
Go to the next step and update to the latest image:
cd docker docker compose up -d
Source Code deployments:
-
Stop API server, Worker and Web frontend Server.
-
Get the latest code from the main branch:
git checkout main git pull origin main
-
Update Python dependencies:
cd api pip install -r requirements.txt
-
Then, let's run the migration script:
flask db upgrade
-
Finally, run API server, Worker and Web frontend Server again.
What's Changed
- test: refactor vdb tests by visitor design pattern by @bowenliang123 in #3838
- Reduce tool redundancy for [Judge0 CE] by @richards199999 in #3837
- fix: using api can not execute relyt vector database by @klaus-xiong in #3766
- fix: billing tenant account role. by @GarfieldDai in #3850
- refactor: config file by @takatost in #3852
- test: add tests covering all methods of vector store by @bowenliang123 in #3849
- fix: chat api doc not show title in english vision by @iamjoel in #3864
- fix: UP031 style rule violation by @bowenliang123 in #3866
- optimize the knowledge failed documents query by @charli117 in #3870
- fix: full screen editor not follow panel width by @iamjoel in #3876
- fix: copy invite link for HTTPS has deplicate origin by @zhangever in #3877
- add the comment in entrypoint.sh by @hikariming in #3882
- fix: tool webscraper - too many redirects in case target url does not… by @miendinh in #3831
- fix: fetch page name of notion wiki by @badbye in #3847
- test: improve vector store tests by @bowenliang123 in #3855
- add together ai model setting by @JohnJyong in #3895
- chore: integrate code-inspector-plugin by @TinsFox in #3900
- Add support for Traditional Chinese language by @yongjer in #3899
- feat: replicate supports default version. by @GarfieldDai in #3884
- fix: hydration warning by @TinsFox in #3897
- feat: add support for Bedrock LLAMA3 by @longzhihun in #3890
- chore: skip warning messages when pytest auto-collecting the vdb test class by removing
Test
prefix by @bowenliang123 in #3906 - feat: Add google storage support by @miendinh in #3887
- fix: api doc example error by @StudyingLover in #3925
- fix: code full screen in web app cause error by @iamjoel in #3935
- feat: add start commands to devcontainer by @perzeuss in #3902
- improvement: Optimizing the experience of the app list page by @majian159 in #3885
- enhancement:support Qdrant gRPC mode by @leslie2046 in #3929
- feat: workflow remove preview mode by @zxhlyh in #3941
- feat: llm text stream support for workflow app by @takatost in #3798
- optimize: code node has a bad error message by @Yeuoly in #3949
- feat: code transform node editor support insert var by add slash or left brace by @iamjoel in #3946
- chore: update
@types/react
by @TinsFox in #3939 - feat: rename var name sync to used jinjia code by @iamjoel in #3964
- delete duplicate check get_dataset by @baxiang in #3966
- add pgvecto_rs support and upgrade SQLAlchemy by @JohnJyong in #3833
- fix: db connections not being released during workflow execution by @takatost in #3971
- fix-nvidia-llama3 by @joshua20231026 in #3973
- feat: add support for request timeout settings in the HTTP request node. by @majian159 in #3854
- Add new tool: Firecrawl by @richards199999 in #3819
- Fix: password check in page of install by @JzoNgKVO in #3978
- add default value for QDRANT_GRPC_PORT by @JohnJyong in #3976
- Feat/install process refinement by @crazywoola in #3982
- add storage factory by @JohnJyong in #3922
- fix: ci by @crazywoola in #3983
- chore: add sandbox tag by @Yeuoly in #3997
- fix: workflow disable shortcuts when feature panel occured by @zxhlyh in #4001
- fix: prompt editor insert quickly by @zxhlyh in #4004
- Enabled Notion integration setup in Docker Compose Deployment by @kei-yamazaki in #3919
- fix(web): copy button visible at chat page normally by @JunIce in #4005
- Update the description and labels in Judge0ce tool by @richards199999 in #3990
- fix: submitCodeExecutionTask by @crazywoola in #4006
- chore: skip deprecated field_schema param in creating payload index on Qdrant by @bowenliang123 in #3903
- fix: prompt undefined caused match problem by @iamjoel in #4010
- feat: support minimax abab6.5, abab6.5s by @Weaxs in #4012
- feat: support question classifier node output by @sinomoe in #4000
- add glm-3-turbo max_tokens parameter setting by @orangeclk in #4017
- chore(deps): bump word-wrap from 1.2.3 to 1.2.5 in /web by @dependabot in #4018
- fix: lodash version has warning by @iamjoel in #4020
- fix: typo of jinja2 by @bowenliang123 in #4019
- chore(deps): bump semver from 5.7.1 to 5.7.2 in /web by @dependabot in #4022
- test: remove explicit env settings for CI pytests by @bowenliang123 in #4041
- version to 0.6.6 by @takatost in #4050
New Contributors
- @zhangever made their first contribution in #3877
- @hikariming made their first contribution in #3882
- @badbye ma...
v0.6.5
✨ What’s New in v0.6.5? ✨
This update primarily focuses on enhancing system stability and improving user experience. Key updates include:
🚀 New Features
-
Added support for the Bedrock Mistral AI model by @longzhihun in #3676.
-
Introduced a new tool, Judge0 CE, by @richards199999 in #3684.
-
Added
conversation_id
anduser_id
to the chatflow/workflow system variables by @takatost in #3771.This is particularly valuable when you need to interact with internal systems. You can pass these two parameters when using the HTTP Request node, allowing the internal system to understand the current user and the corresponding conversation to establish a connection.
-
Added chatflow LLM node with query prompt template support by @takatost in #3791.
You can now enable memory in the LLM node within your chatflow, and customize the query prompt template.
-
Enabled the addition of custom tags for Knowledge and App categories by @JohnJyong in #3755.
⚙️ Enhancements
- Supported knowledge embedding model modification by @JohnJyong in #3755.
- Added a retry function for when embedding a document fails by @JohnJyong in #3755.
- Increased the speed of xinference audio transcription by @leslie2046 in #3636.
🛠️ Bug Fixes
- Fixed an issue where creating a collection could fail due to a Milvus version upgrade by @bowenliang123 in #3683.
- Resolved a problem where workflow drafts might be lost during synchronization by @zxhlyh in #3824.
- Addressed an upgrading issue where gmpy2 could cause the error "Worker (pid:67) was sent code 132!" on some CPUs by @bowenliang123 in #3745.
- Fixed inconsistencies in number variable types in the IF/ELSE node of a workflow by @takatost in #3758.
For additional enhancements and updates, refer to the What's Changed section below.
Update Guide
Docker compose deployments:
-
Get the latest code from the main branch:
git checkout main git pull origin main
-
Go to the next step and update to the latest image:
cd docker docker compose up -d
Source Code deployments:
-
Stop API server, Worker and Web frontend Server.
-
Get the latest code from the main branch:
git checkout main git pull origin main
-
Update Python dependencies:
cd api pip install -r requirements.txt
-
Then, let's run the migration script:
flask db upgrade
-
Finally, run API server, Worker and Web frontend Server again.
What's Changed
- add groq llama3 by @guchenhe in #3673
- feat: add support for bedrock Mistral AI model by @longzhihun in #3676
- chore: update description of code interpreter tool by @bowenliang123 in #3679
- fix: incorrect type parser by @Yeuoly in #3682
- fix: Added prevention of click event propagation for overlay layer by @Luvian77 in #3666
- Add new tool: Judge0 CE by @richards199999 in #3684
- Localize links to localized READMEs by @carsonkahn-external in #3689
- fix: skip dataset icon by @Yeuoly in #3696
- fix: workflow shortcuts by @zxhlyh in #3701
- refactor: tool parameter cache by @Yeuoly in #3703
- fix: cannot change file uploader method by @Luvian77 in #3710
- fix: workflow restore by @zxhlyh in #3711
- enhance:speedup xinference audio transcription by @leslie2046 in #3636
- fix: milvus usage with create_collection by @bowenliang123 in #3683
- feat: prompt editor support auto height by content height and fix some bugs by @iamjoel in #3712
- fix: workflow connection by @zxhlyh in #3713
- bedrock llm Model file name change by @1102asd in #3714
- Update README_JA.md by @eltociear in #3727
- Update "@formatjs/intl-localematcher" to version 0.5.4 in package.json by @LeoQuote in #3726
- feat: add copy button to code by @crazywoola in #3719
- fix: workflow node variable by @zxhlyh in #3743
- fix: toggling AppDetailNav causes unnecessary component rerenders by @yikayiyo in #3718
- fix: rollback gmpy2 to 2.1.5 by @bowenliang123 in #3745
- fix: workflow restore by @zxhlyh in #3750
- chore: add selector for use app store by @JzoNgKVO in #3746
- fix: llm editor readonly cover error by @iamjoel in #3752
- Knowledge optimization by @JohnJyong in #3755
- fix: type num of variable converted to str by @takatost in #3758
- feat: support prompt messages sorting by @iamjoel in #3757
- fix: workflow sync by @zxhlyh in #3756
- fix: endpoint for 'Update a document from a file' by @ugyuji in #3751
- fix: handle inputs show the focus ui together in tools node by @iamjoel in #3763
- Fix: redirection of app remove by @JzoNgKVO in #3770
- test: add test for PKCS1OAEP_Cipher with gmpy2 by @bowenliang123 in #3760
- feat: add conversation_id and user_id in chatflow/workflow system vars by @takatost in #3771
- feat: test all unit tests by @takatost in #3787
- use pymilvus 2.3.7 by @bowenliang123 in #3790
- test: add unit tests for vector stores of Milvus, Qdrant and Weaviate by @bowenliang123 in #3688
- feat: add log_file environment variable by @YidaHu in #3793
- fix: credentials validate failed for groqcloud model provider by @takatost in #3817
- fix: missing url field when searching special keywords by @Yeuoly in #3820
- fix:still enable SSL verification when using qdrant based on HTTP protocol by @leslie2046 in #3805
- chore: remove anthropic pay entrance by @iamjoel in #3822
- fix: event of keyboard "enter" in text generator app by @JzoNgKVO in #3823
- fix: workflow sync data by @zxhlyh in #3824
- Update EN,KL,JA,FR,ES documentation Llma2 to Llama3 model support by @Caplost in #3827
- Fix: event of click away in message-log-modal by @JzoNgKVO in #3828
- version to 0.6.5 by @takatost in #3834
- feat: add aliyun oss storage by @henrybit in #3690
- feat: query prompt template support in chatflow by @takatost in #3791
- fix: model parameter default value by @zxhlyh in #3841
- extract enum type for tenant account role by @bowenliang123 in #3788
- fix: debug run not show total right tokens by @iamjoel in #3843
- fix: citations always appear in the chatflow app by @takatost in #3844
New Contributors
- @Luvian77 made their first contribution in #3666
- @carsonkahn-external made their first contribution in #3689
- @1102asd made their first contribution in #3714
- @ugyuji made their first contribution in #3751
- @Caplost made their first contribution in #3827
- @henrybit made their first contribution in #3690
Full Changelog: 0.6.4...0.6.5
v0.6.4
✨ Spotlight on Dify v0.6 ✨
🚀 Introducing Dify Workflow 🚀
Eager to elevate the stability and reproducibility of your LLM applications? The latest release, Dify Workflow, is here to empower you.
Curious for more? Swing by the v0.6.0 Release Notes for the full scoop.
What’s New in v0.6.4?
This update primarily focuses on enhancing system stability and improving user experience. Key updates include:
- feat: Added agent tools log by @JzoNgKVO in #3537
- feat: Added claude 3 opus of bedrock by @tellsiddh in #3545
- feat: Added Code Interpreter Tool by @Yeuoly in #3557
- feat: Added workflow api in Node.js sdk by @iamjoel in #3584
- feat: Added Mistral open-mixtral-8x22b by @joshua20231026 in #3591
- feat: Added stable diffusion 3 tool by @Yeuoly in #3599
- feat: Added mixtral 8x22b by @joshua20231026 in #3606
- feat: Vision switch functionality is provided on OpenRouter by @jeessy2 in #3564
- feat: moonshot function calling support by @Yeuoly in #3629
- feat: Added llama3 for nvidia-api-catalog by @joshua20231026 in #3631
- feat: File logging support by @liuzhenghua in #3612
- For additional enhancements and updates, refer to the What's Changed section below.
Update Guide
Docker compose deployments:
-
Get the latest code from the main branch:
git checkout main git pull origin main
-
Go to the next step and update to the latest image:
cd docker docker compose up -d
Source Code deployments:
-
Stop API server, Worker and Web frontend Server.
-
Get the latest code from the main branch:
git checkout main git pull origin main
-
Update Python dependencies:
cd api pip install -r requirements.txt
-
Then, let's run the migration script:
flask db upgrade
-
Finally, run API server, Worker and Web frontend Server again.
What's Changed
- fix the return with wrong datatype of segment by @JohnJyong in #3525
- fix: the hover style of the card-item operation button container by @bushuai in #3520
- chore: lint .env file templates by @bowenliang123 in #3507
- add support for swagger object type by @LeePui in #3426
- feat: increase read timeout of OpenAI Compatible API, Ollama, Nvidia LLM by @takatost in #3538
- feat: agent log by @JzoNgKVO in #3537
- fix: typo of PublishConfig by @bowenliang123 in #3540
- fix: workflow delete edge by @zxhlyh in #3541
- feat: filter empty content messages in llm node by @takatost in #3547
- fix: json-reader-json-output by @Yeuoly in #3552
- fix: tool node show output text variable type error by @iamjoel in #3556
- feat: economical index support retrieval testing by @iamjoel in #3563
- optimize question classifier prompt and support keyword hit test by @JohnJyong in #3565
- fix event/stream ping by @liuzhenghua in #3553
- enhance: preload general packages by @Yeuoly in #3567
- added claude 3 opus by @tellsiddh in #3545
- feat: code by @Yeuoly in #3557
- feat: add workflow api in Node.js sdk by @iamjoel in #3584
- Fix: use debounce for switch by @JzoNgKVO in #3585
- fix: json in raw text sometimes changed back to key value in HTTP node by @iamjoel in #3586
- test: add scripts for running tests on api module both locally and CI jobs by @bowenliang123 in #3497
- add-open-mixtral-8x22b by @joshua20231026 in #3591
- docs: Update README.md by @matheus-mondaini in #3577
- enhance:speedup xinference embedding & rerank by @leslie2046 in #3587
- fix(openai_api_compatible): fixing the error when converting chunk to json by @aniaan in #3570
- feat: stable diffusion 3 by @Yeuoly in #3599
- Feat/enterprise sso by @GarfieldDai in #3602
- Add mixtral 8x22b by @joshua20231026 in #3606
- fix: copy invite link has duplicated origin by @iamjoel in #3608
- seucirty: http smuggling by @Yeuoly in #3609
- chore: apply ruff rules on tests and app.py by @bowenliang123 in #3605
- feat: Vision switch functionality is provided on OpenRouter by @jeessy2 in #3564
- get dict key indexing_technique in DocumentAddByFileApi by @sqj8899 in #3615
- fix: chat rename by @zxhlyh in #3627
- feat: moonshot fc by @Yeuoly in #3629
- add-llama3-for-nvidia-api-catalog by @joshua20231026 in #3631
- content fix to continue by @fuckqqcom in #3633
- Fix error in [Update yaml and py file in Tavily Tool] by @richards199999 in #3465
- feat: add file log by @liuzhenghua in #3612
- fix: validate languages by @YidaHu in #3638
- Fix problem with scroll inside chat window by @rmmedia-pl in #3578
- fix: in alembic's offline mode (db migrate with --sql option), skip data operations by @sagarey in #3533
- fix: workflow_run_id not log_id in workflow api doc by @iamjoel in #3658
- Optimize README_CN by @takatost in #3660
- fix: delete tool parameters cache when sync draft workflow for run workflow use new parameter change in draft workflow by @gaoxin-pen in #3637
- python 3.12 support by @bowenliang123 in #3652
- version to 0.6.4 by @takatost in #3670
New Contributors
- @bushuai made their first contribution in #3520
- @LeePui made their first contribution in #3426
- @tellsiddh made their first contribution in #3545
- @matheus-mondaini made their first contribution in #3577
- @aniaan made their first contribution in #3570
- @jeessy2 made their first contribution in #3564
- @sqj8899 made their first contribution in #3615
- @fuckqqcom made their first contribution in #3633
- @rmmedia-pl made their first contribution in #3578
- @gaoxin-pen made their first contribution in #3637
Full Changelog: 0.6.3...0.6.4
v0.6.3
✨ Spotlight on Dify v0.6 ✨
🚀 Introducing Dify Workflow 🚀
Eager to elevate the stability and reproducibility of your LLM applications? The latest release, Dify Workflow, is here to empower you.
Curious for more? Swing by the v0.6.0 Release Notes for the full scoop.
What’s New in v0.6.3?
This update primarily focuses on enhancing system stability and improving user experience. Key updates include:
- feat: Add
JinaReader
as Tool by @Yeuoly in #3468 - feat:
Function calling
support for Google Gemini Pro by @Yeuoly in #3406 - feat: Add support for
embedding models
with AWS Bedrock Titan Model by @longzhihun in #3377 - feat: Support configurate openai compatible
stream tool call
by @Yeuoly in #3467 - feat: Refactor
tongyi
models, addfunction calling & vision
support by @takatost in #3496 - feat: Add support for AWS Bedrock
Cohere embedding
by @kerlion in #3444 - feat: Cohere
rerank 3 model
added by @Yash-1511 in #3431 - feat: Add nvidia
codegemma 7b
support by @joshfeng in #3437 - feat: API tool support custom timeout by @Yeuoly in #3420
- feat: Integrated
SearXNG search
as built-in tool by @junytang in #3363 - feat: Add support for extracting
EPUB
files in RAG extractors by @vaayne in #3254 - feat: Add support for extracting
XLS
files in RAG extractors by @ic-xu in #3321 - feat: Support
relyt
vector database by @klaus-xiong in #3367 - feat: Add workflow editor
shortcuts
(#3382) by @perzeuss in #3390 - feat: Show citation info in run history by @nite-knite in #3399
- feat: Optimize the efficiency of generating chatbot conversation name by @takatost in #3472
- For additional enhancements and updates, refer to the What's Changed section below.
Update Guide
Docker compose deployments:
-
Get the latest code from the main branch:
git checkout main git pull origin main
-
Go to the next step and update to the latest image:
cd docker docker compose up -d
Source Code deployments:
-
Stop API server, Worker and Web frontend Server.
-
Get the latest code from the main branch:
git checkout main git pull origin main
-
Update Python dependencies:
cd api pip install --upgrade -r requirements.txt
-
Then, let's run the migration script:
flask db upgrade
-
Finally, run API server, Worker and Web frontend Server again.
What's Changed
- feat: Add support for embed file with AWS Bedrock Titan Model by @longzhihun in #3377
- fix: remove - in dataset retriever tool name by @Yeuoly in #3381
- feat:api Add support for extracting EPUB files in ExtractProcessor by @vaayne in #3254
- feat: show citation info in run history by @nite-knite in #3399
- Feat: Invitation link automatically completes domain name by @huangbaichao in #3393
- Integrated SearXNG search as built-in tool by @junytang in #3363
- fix: [azure_openai] Error: 'NoneType' object has no attribute 'content' by @sagarey in #3389
- Update providers preview by @guchenhe in #3403
- add xls file suport by @ic-xu in #3321
- Update README.md by @guchenhe in #3405
- Fix/workflow tool incorrect parameter configurations by @Yeuoly in #3402
- chore: replace all set interval by @iamjoel in #3411
- feat: Deprecate datetime.utcnow() in favor of datetime.now(timezone.utc).replace(tzinfo=None) for better timezone handling (#3408) by @pamaforce in #3416
- chore: remove Langchain tools import by @JohnJyong in #3407
- feat: gemini pro function call by @Yeuoly in #3406
- fix: shared text-generation stream by @zxhlyh in #3419
- fix/dataset-retriever-tool-parameter-redundancy by @Yeuoly in #3418
- Feat/api tool custom timeout by @Yeuoly in #3420
- fix: test env key missing or wrong by @takatost in #3430
- Doc/update readme by @crazywoola in #3433
- Update README_CN.md by @crazywoola in #3434
- Update README_CN.md by @crazywoola in #3435
- feat: add workflow editor shortcuts (#3382) by @perzeuss in #3390
- FEAT: cohere rerank 3 model added by @Yash-1511 in #3431
- chore: remove the COPY instruction in .devcontainer/Dockerfile by @BodhiHu in #3409
- fix typo: Changlog -> Changelog by @Selene29 in #3442
- fix: node shortcuts active in input fields by @perzeuss in #3438
- Add nvidia codegemma 7b by @joshfeng in #3437
- Update yaml and py file in Tavily Tool by @richards199999 in #3450
- feat: Added the mirror of Aliyun's Linux apk installation package and updated the deprecated taobao npm mirror address to npmmirror by @Kennytian in #3459
- Revert "Update yaml and py file in Tavily Tool" by @crazywoola in #3464
- feat: jina reader by @Yeuoly in #3468
- feat: support configurate openai compatible stream tool call by @Yeuoly in #3467
- feat: optimize the efficiency of generating chatbot conversation name by @takatost in #3472
- feat: remove langchain from output parsers by @takatost in #3473
- chore: separate Python dependencies for development by @bowenliang123 in #3198
- chore: add sandbox permission tooltip by @Yeuoly in #3477
- fix: prompt template issue by @YidaHu in #3449
- feat: support relyt vector database by @klaus-xiong in #3367
- Update README.md by @guchenhe in #3478
- nvidia-label-update by @joshua20231026 in #3482
- fix: in conversation log click op button would cause close drawer by @iamjoel in #3483
- fix: workflow auto layout nodes offset & delete node shortcuts by @zxhlyh in #3484
- fix: workflow edge curvature by @zxhlyh in #3488
- fix: stringify object while exporting batch result to csv by @sinomoe in #3481
- question classifier prompt optimization by @JohnJyong in #3479
- feat: refactor tongyi models by @takatost in #3496
- fix: bump twilio to 9.0.4 skipping yanked versions by @bowenliang123 in #3500
- test: install ffmpeg for pytests by @bowenliang123 in #3499
- feat: support var auto rename in prompt editor by @iamjoel in #3510
- fix: add message caused problem after simple chat convert to workflow by @iamjoel in #3511
- fix: the object field is empty string in some openAI api compatible model by @liuzhenghua in #3506
- Add suuport for AWS Bedrock Cohere embedding by @kerlion in #3444
- fix: add completion mode object check by @Yeuoly in #3515
- get config default for sandbox by @miendinh in #3508
- chore: improve reference variable picker user experience by @iamjoel in #3517
- fix: array[string] context in llm node invalid by @takatost in #3518
- version to 0.6.3 by @takatost in #3519
New Contributors
- @longzhihun made their first contribution in #3377
- @vaayne made their first contribution in #3254
- @junytang made their first contribution in #3363
- @sagarey made their first contribution in #3389
- @ic-xu made their first contribution in #3321
- @pamaforce made their first contribution in #3416
- @BodhiHu made their first contribution in #3409
- @Selene29 made their first contribution in #3442
- @joshfeng made their first contribution in #3437
- @YidaHu made their first contribution in #3449
- @klaus-xiong made their first contribution in #3367
- @sinomoe made their first contribution in https://github.com/langg...
v0.6.2 EMERGENCY FIX
Warning
⚠️ EMERGENCY FIX ⚠️
PLEASE UPGRADE to v0.6.2
AS SOON AS POSSIBLE TO PREVENT DATA LEAKAGE.
Fix the issue where sys.query
/sys.files
data gets confused with other tasks during high concurrency in workflow
/chatflow
in #3378.
✨ Spotlight on Dify v0.6.0 ✨
🚀 Introducing Dify Workflow 🚀
Eager to elevate the stability and reproducibility of your LLM applications? The latest release, Dify Workflow, is here to empower you.
Curious for more? Swing by the v0.6.0 Release Notes for the full scoop.
What’s New in v0.6.2?
This update primarily focuses on enhancing system stability and improving user experience. Key updates include:
- feat: OpenAI
gpt-4-turbo
&gpt-4-turbo-2024-04-09
support by @Yeuoly in #3263 - feat: Azure OpenAI
gpt-4-turbo-2024-04-09
support by @Kennytian in #3300 - feat: Add Cohere Command R / R+ model support by @takatost in #3333
- feat: Add Google
gemini-1.5-pro
support by @lroolle in #2925 - feat: Enabled vision feature support of OpenAI Compatible API by @takatost in #3272
- feat: Agent app support image input for reasoning by @Yeuoly in #3293
- feat: Update aws bedrock new models by @crazywoola in #3326
- refactor: Enhanced ReAct mode of Agent app by @Yeuoly in #3355
- For additional enhancements and updates, refer to the What's Changed section below.
Update Guide
Docker compose deployments:
-
Get the latest code from the main branch:
git checkout main git pull origin main
-
Go to the next step and update to the latest image:
cd docker docker compose up -d
Source Code deployments:
-
Stop API server, Worker and Web frontend Server.
-
Get the latest code from the main branch:
git checkout main git pull origin main
-
Update Python dependencies:
cd api pip install --upgrade -r requirements.txt
-
Then, let's run the migration script:
flask db upgrade
-
Finally, run API server, Worker and Web frontend Server again.
What's Changed
- fix: agent chat multiple model debug by @zxhlyh in #3258
- feat: gpt-4-turbo by @Yeuoly in #3263
- fix: image was sent to an unsupported LLM when sending second message by @takatost in #3268
- feat: vision parameter support of OpenAI Compatible API by @takatost in #3272
- fix: var assigner input node can not find caused error by @iamjoel in #3274
- fix: variable-assigner node connect by @zxhlyh in #3288
- Feat/Agent-Image-Processing by @Yeuoly in #3293
- chore: address security alerts on braces escape and KaTeX by @nite-knite in #3301
- chore(deps): bump katex from 0.16.8 to 0.16.10 in /web by @dependabot in #3307
- Update README.md by @guchenhe in #3281
- Remove langchain dataset retrival agent logic by @JohnJyong in #3311
- add german translations by @guchenhe in #3322
- feat: add missing workflow i18n keys by @khazic in #3309
- feat:add 'name' field return by @leslie2046 in #3152
- improvement: speed up dependency installation in docker image rebuilds by mounting cache layer by @bowenliang123 in #3218
- feat: support gpt-4-turbo-2024-04-09 model by @Kennytian in #3300
- feat: Add Cohere Command R / R+ model support by @takatost in #3333
- fix dataset retrival in dataset mode by @JohnJyong in #3334
- chore:bump pypdfium2 from 4.16.0 to 4.17.0 by @leslie2046 in #3310
- feat(llm/models): add gemini-1.5-pro by @lroolle in #2925
- feat: make input size bigger in start by @crazywoola in #3340
- Doc/update readme by @crazywoola in #3344
- fix: leave progress page still call indexing-status api by @iamjoel in #3345
- feat: update aws bedrock by @crazywoola in #3326
- fix/moonshot-function-call by @Yeuoly in #3339
- fix issue: user’s keywords do not affect when add segment by @JohnJyong in #3349
- fix: add segment with keyword issue by @JohnJyong in #3351
- Fix issue : don't delete DatasetProcessRule, DatasetQuery and AppDatasetJoin when delete dataset with no document by @JohnJyong in #3354
- fix: remove middle editor may cause render placement error by @iamjoel in #3356
- Added a note on the front-end docker build: use taobao source to accelerate the installation of front-end dependency packages to achieve the purpose of quickly building containers by @khazic in #3358
- fix: var name too long would break ui in var assigner and end nodes by @iamjoel in #3361
- Refactor/react agent by @Yeuoly in #3355
- Fix/Bing Search url endpoint cannot be customized by @Yeuoly in #3366
- fix: image token calc of OpenAI Compatible API by @takatost in #3368
- Update README.md by @guchenhe in #3371
- update workflow intro mp4 codec by @guchenhe in #3372
- fix: cohere tool call does not support single tool by @takatost in #3373
- version to 0.6.2 by @takatost in #3375
- fix: variable pool mapping variable mixed up by @takatost in #3378
- fix: yarn install extract package err when using GitHub Cache in amd6… by @takatost in #3383
New Contributors
Full Changelog: 0.6.1...0.6.2
v0.6.1
✨ Spotlight on Dify v0.6.0 ✨
🚀 Introducing Dify Workflow 🚀
Eager to elevate the stability and reproducibility of your LLM applications? The latest release, Dify Workflow, is here to empower you.
Curious for more? Swing by the v0.6.0 Release Notes for the full scoop.
What’s New in v0.6.1?
This update primarily focuses on enhancing system stability and improving user experience. Key updates include:
- feat: moonshot function call support by @Yeuoly in #3227
- feat: prompt-editor in App Orchestrate support operation
undo
by @zxhlyh in #3242 - feat: support setting
database
parameter used in Milvus by @LeoQuote in #3003 - For additional enhancements and updates, refer to the What's Changed section below.
Update Guide
Docker compose deployments:
-
Get the latest code from the main branch:
git checkout main git pull origin main
-
Go to the next step and update to the latest image:
cd docker docker compose up -d
Source Code deployments:
-
Stop API server, Worker and Web frontend Server.
-
Get the latest code from the main branch:
git checkout main git pull origin main
-
Update Python dependencies:
cd api pip install -r requirements.txt
-
Then, let's run the migration script:
flask db upgrade
-
Finally, run API server, Worker and Web frontend Server again.
What's Changed
- fix keyword index error when storage source is S3 by @JohnJyong in #3182
- Update README.md to include workflows by @guchenhe in #3180
- Compatible with unique index conflicts by @JohnJyong in #3183
- fix: sometimes chosed old selected knowledge may overwirte the new knowledge by @iamjoel in #3199
- Fix: remove unavailable return_preamble parameter in cohere by @jat001 in #3201
- Fix/code transform result by @Yeuoly in #3203
- fix(code_executor): surrogates not allowed error in jinja2 template by @lroolle in #3191
- fix: node connect self by @zxhlyh in #3194
- Update README.md by @guchenhe in #3206
- fix economy index search in workflow by @JohnJyong in #3205
- fix: index number in api/README by @bowenliang123 in #3214
- Update README.md by @guchenhe in #3212
- fix detached instance error in keyword index create thread and fix question classifier node out of index error by @JohnJyong in #3219
- fix: incomplete response by @Yeuoly in #3215
- fix: latest image tag not push in GitHub action by @takatost in #3213
- fix: vision config doesn't enabled in llm by @iamjoel in #3225
- fixed the issue of missing cleanup function in the AudioBtn component by @yikayiyo in #3133
- fix: image text when retrieve chat histories by @takatost in #3220
- feat: moonshot function call by @Yeuoly in #3227
- feat: support setting database used in Milvus by @LeoQuote in #3003
- fix milvus database name parameter missed by @JohnJyong in #3229
- fix: file not uploaded caused api error by @iamjoel in #3228
- update link by @lychees in #3226
- fix: skip Celery warning by setting broker_connection_retry_on_startup config by @bowenliang123 in #3188
- fix: workflow run edge status by @zxhlyh in #3236
- fix: empty conversation list of explore chatbot by @takatost in #3235
- Fix: picture of workflow by @JzoNgKVO in #3241
- feat: prompt-editor support undo by @zxhlyh in #3242
- fix: number type in app would render as select type in webapp by @iamjoel in #3244
- fix: token is not logging of question classifier node by @takatost in #3249
- chore: remove langchain in tools by @Yeuoly in #3247
- make sure validation flow works for all model providers in bedrock by @guchenhe in #3250
- feat: remove unregistered-llm-in-debug by @crazywoola in #3251
- version to 0.6.1 by @takatost in #3253
New Contributors
Full Changelog: 0.6.0-fix1...0.6.1
v0.6.0-fix1
Important
EMERGENCY FIX: ADD FEATURE
dialog of Agent application that incorrectly used the Text Generator App dialog content.
Introducing Dify Workflow! 🎉
The much-anticipated workflow feature is here: In a nutshell, workflow provides a visual canvas for defining complex tasks as smaller, manageable steps (nodes). This reduces reliance on prompt engineering and LLM agent capabilities, taking the stability and reproducibility of your LLM applications to the next level by letting you be in control.
There are two Workflow application types with this update:
-
Workflow App
Targeting Automation and Batch Processing: This is ideal for translation, data analysis, content generation, email automation, and more.
-
Chatflow App (A Sub-Type of Chatbot)
For Conversational Applications: Suitable for customer service, semantic search, and more conversational apps requiring multi-step logic in crafting the response.
Compared to the regular Workflow app type, Chatflow adds chat-specific features such as conversation history support (Memory), tagged replies, an Answer node type for streaming responses, and support for rich text and images.
For more information, please visit: https://docs.dify.ai/features/workflow/introduce
Other Enhancements:
-
Optimized UI flow for app creation.
-
Conversion support from various basic application types to Workflow-based applications.
-
Dify's official app templates are now available in self-hosted mode.
-
Support for adding descriptions to applications.
-
Support for porting applications in and out of Dify with DSL.
-
Under the hood, we also refactored the underlying execution logic of all app types for cleaner architecture and a tidier repo.
Update Guide
If you need to upgrade from 0.6.0-preview-workflow.1
, you will need to connect to PostgreSQL and execute the following SQL (migration inserted in the main branch) to ensure data integrity.
ALTER TABLE dataset_keyword_tables ADD COLUMN data_source_type VARCHAR(255) NOT NULL DEFAULT 'database';
ALTER TABLE embeddings ADD COLUMN provider_name VARCHAR(40) NOT NULL DEFAULT '';
ALTER TABLE embeddings DROP CONSTRAINT embedding_hash_idx;
ALTER TABLE embeddings ADD CONSTRAINT embedding_hash_idx UNIQUE (model_name, hash, provider_name);
Docker compose deployments:
-
Get the latest code from the main branch:
git checkout main git pull origin main
-
Go to the next step and update to the latest image:
cd docker docker compose up -d
-
We also moved the agent data within the database, Execute the below script to complete the migrate: (NEW)
docker compose exec api flask convert-to-agent-apps
Source Code deployments:
-
Stop API server, Worker and Web frontend Server.
-
Get the latest code from the main branch:
git checkout main git pull origin main
-
Update Python dependencies:
cd api pip install -r requirements.txt
-
Then, let's run the migration script:
flask db upgrade
-
We also moved the agent data within the database, Execute the below script to complete the migrate: (NEW)
flask convert-to-agent-apps
-
Finally, run API server, Worker and Web frontend Server again.
What's Changed
- fix: metadata in generate npe issue by @takatost in #3166
- fix: app export dsl not include desc by @takatost in #3167
- Fix: prompt of expert mode by @JzoNgKVO in #3168
- feat: translations by @crazywoola in #3176
- fix: prompt editor variable picker by @zxhlyh in #3177
- Fix: features of agent-chat by @JzoNgKVO in #3178
- version to 0.6.0-fix1 by @takatost in #3179
Full Changelog: 0.6.0...0.6.0-fix1
v0.6.0
Introducing Dify Workflow! 🎉
The much-anticipated workflow feature is here: In a nutshell, workflow provides a visual canvas for defining complex tasks as smaller, manageable steps (nodes). This reduces reliance on prompt engineering and LLM agent capabilities, taking the stability and reproducibility of your LLM applications to the next level by letting you be in control.
There are two Workflow application types with this update:
-
Workflow App
Targeting Automation and Batch Processing: This is ideal for translation, data analysis, content generation, email automation, and more.
-
Chatflow App (A Sub-Type of Chatbot)
For Conversational Applications: Suitable for customer service, semantic search, and more conversational apps requiring multi-step logic in crafting the response.
Compared to the regular Workflow app type, Chatflow adds chat-specific features such as conversation history support (Memory), tagged replies, an Answer node type for streaming responses, and support for rich text and images.
For more information, please visit: https://docs.dify.ai/features/workflow/introduce
Other Enhancements:
-
Optimized UI flow for app creation.
-
Conversion support from various basic application types to Workflow-based applications.
-
Dify's official app templates are now available in self-hosted mode.
-
Support for adding descriptions to applications.
-
Support for porting applications in and out of Dify with DSL.
-
Under the hood, we also refactored the underlying execution logic of all app types for cleaner architecture and a tidier repo.
Update Guide
If you need to upgrade from 0.6.0-preview-workflow.1
, you will need to connect to PostgreSQL and execute the following SQL (migration inserted in the main branch) to ensure data integrity.
ALTER TABLE dataset_keyword_tables ADD COLUMN data_source_type VARCHAR(255) NOT NULL DEFAULT 'database';
ALTER TABLE embeddings ADD COLUMN provider_name VARCHAR(40) NOT NULL DEFAULT '';
ALTER TABLE embeddings DROP CONSTRAINT embedding_hash_idx;
ALTER TABLE embeddings ADD CONSTRAINT embedding_hash_idx UNIQUE (model_name, hash, provider_name);
Docker compose deployments:
-
Get the latest code from the main branch:
git checkout main git pull origin main
-
Go to the next step and update to the latest image:
cd docker docker compose up -d
-
We also moved the agent data within the database, Execute the below script to complete the migrate: (NEW)
docker compose exec api flask convert-to-agent-apps
Source Code deployments:
-
Stop API server, Worker and Web frontend Server.
-
Get the latest code from the main branch:
git checkout main git pull origin main
-
Update Python dependencies:
cd api pip install -r requirements.txt
-
Then, let's run the migration script:
flask db upgrade
-
We also moved the agent data within the database, Execute the below script to complete the migrate: (NEW)
flask convert-to-agent-apps
-
Finally, run API server, Worker and Web frontend Server again.
What's Changed
- Update README.md by @guchenhe in #3081
- add segment function billing check for SAAS env by @JohnJyong in #3082
- feat (new llm): add support for openrouter by @Korayem in #3042
- fix(duckduckgo-search): invoke error by @QIN2DIM in #3077
- Chore/move chrome ext by @crazywoola in #3085
- add embedding cache and clean embedding cache job by @JohnJyong in #3087
- new readme slogan by @guchenhe in #3094
- fix: update show names for supported file types of xlsx and docx by @bowenliang123 in #3091
- fix typo by @leslie2046 in #3098
- fix typo in readme by @jat001 in #3096
- fix unstructured api,remove unused parameters by @vikeychen in #3056
- Improve ModelTypeEnum type by @lng2020 in #3051
- feat: claude3 tool call by @Yeuoly in #3111
- chore: replace outdated config in vscode debug settings by @lng2020 in #3106
- feat: update link by @crazywoola in #3121
- chore: update link of feedback by @JzoNgKVO in #3130
- Duplicate embedding cache check by @JohnJyong in #3134
- improve qa generate prompt by @JohnJyong in #3132
- fix: Turn off SWR automatic revalidation when window is focused by @Mxtzz in #3129
- Feat/update issue template by @crazywoola in #3147
- fix: chat app sometimes may crash by @iamjoel in #3151
- Update descriptions in StackExchange Tool by @richards199999 in #3043
- Fix: stop indexing status check when api of status checking failed by @JzoNgKVO in #3156
- Optimize csv and excel extract by @JohnJyong in #3155
- fix: knowledge create display error by @zxhlyh in #3157
- FEAT: NEW WORKFLOW ENGINE by @takatost in #3160
New Contributors
- @Korayem made their first contribution in #3042
- @QIN2DIM made their first contribution in #3077
- @jat001 made their first contribution in #3096
- @Mxtzz made their first contribution in #3129
Full Changelog: 0.5.11-fix1...0.6.0
v0.6.0-preview-workflow.2
Important Notice
This version is a preview release intended for feature workflow internal testing only. It is not a formal release. Please proceed with caution before upgrading. Please do not use it in a production environment.
What's Changed
-
Refactored the variable reference logic for LLM, Answer, Tool, and Http Request nodes. Now you can simply input "/" in the text box to directly select variables without having to declare variable relationships and import them separately.
Due to changes in the data structure, the previous workflow configurations will no longer be available. Please create a new App to experience it and avoid running into any error issues caused by inconsistent data structures.
-
Optimized the user experience of app creation.
-
A lot of details to optimize for user experience.
-
Fixed few issues.
Update Guide
If you need to upgrade from 0.6.0-preview-workflow.1
, you will need to connect to PostgreSQL and execute the following SQL (migration inserted in the main branch) to ensure data integrity.
ALTER TABLE dataset_keyword_tables ADD COLUMN data_source_type VARCHAR(255) NOT NULL DEFAULT 'database';
ALTER TABLE embeddings ADD COLUMN provider_name VARCHAR(40) NOT NULL DEFAULT '';
ALTER TABLE embeddings DROP CONSTRAINT embedding_hash_idx;
ALTER TABLE embeddings ADD CONSTRAINT embedding_hash_idx UNIQUE (model_name, hash, provider_name);
Deploying with Docker Compose:
-
Get the latest code from the
feat/workflow
branch:git fetch --tags git checkout 0.6.0-preview-workflow.2
-
Go to the next step and update to the latest image:
cd docker docker-compose up -d
Deploying from Source Code:
-
Stop API server, Worker and Web frontend Server.
-
Get the latest code from the
feat/workflow
branch:git fetch --tags git checkout 0.6.0-preview-workflow.2
-
Update Python dependencies:
cd api pip install -r requirements.txt
-
Then, let's run the migration script:
flask db upgrade
-
Finally, run API server, Worker and Web frontend Server again.
v0.5.11-fix1
Fixed critical issue
Fixed the error issue caused by batch embedding and creating collections simultaneously of vector db on knowledge base processing. #3054
New Features
- Add xinference audio model support by @leslie2046 in #3045
- Add Brave Search and Trello(12 Tools) Included by @Yash-1511 in #3040
- feat: add Feishu(飞书) tool for sending message to chat group bot via webhook by @arkii in #3059
Update Guide
Deploying with Docker Compose:
-
Get the latest code from the main branch:
git checkout main git pull origin main
-
Go to the next step and update to the latest image:
cd docker docker-compose up -d
Deploying from Source Code:
-
Stop API server, Worker and Web frontend Server.
-
Get the latest code from the main branch:
git checkout main git pull origin main
-
Update Python dependencies:
cd api pip install -r requirements.txt
-
Then, let's run the migration script:
flask db upgrade
-
Finally, run API server, Worker and Web frontend Server again.
What's Changed
- fix: agent tool label by @Yeuoly in #3039
- provide a bit more info in logs when parsing api schema error by @LeoQuote in #3026
- Fix typo by @lng2020 in #3041
- feat:xinference audio model support by @leslie2046 in #3045
- add clean_unused_datasets_task by @JohnJyong in #3057
- add redis lock on create collection in multiple thread mode by @JohnJyong in #3054
- FEAT: Add Brave Search and Trello(12 Tools) Included by @Yash-1511 in #3040
- feat: use en-US as fallback recommend app if using unmaintained language by @takatost in #3063
- feat: add Feishu(飞书) tool for sending message to chat group bot via webhook by @arkii in #3059
- add keyword table s3 storage support by @JohnJyong in #3065
- version to 0.5.11-fix1 by @takatost in #3073
New Contributors
Full Changelog: 0.5.11...0.5.11-fix1