Releases: langgenius/dify
v0.15.1
🚀 What’s New in v0.15.1? 🚀
Here's a peek into what the new 0.15.1 release brings to the table:
🎉 New Features
- Sonnet 3.5 Document Support in OpenRouter: Leverage the new document feature via OpenRouter by @infinitnet in #12444. This is going to enhance your document management capabilities.
- ElasticSearch for Japanese: Support for Japanese language ElasticSearch queries has been added, thanks to @fujita-h in #12194.
- Milvus Full Text Search: Expanded Milvus support to include full-text search capability by @kgpp34 in #11430.
- New API Endpoint: We've added a GET upload file API endpoint for the dataset service by @euxx in #11899.
- Opik Tracking Tool Integration: Introducing integration with the Opik Tracking tool for advanced monitoring by @Lothiraldan in #11501.
- Knowledge API ToC: Added a table of contents to the Knowledge API documentation to improve navigation by @euxx in #12688.
🛠️ Enhancements
- Bedrock Retrieve Tool: Update includes hybrid search type and additional support by @ybalbert001 in #12446.
- Workflow Interaction: Now, you can actually see the running status of workflows courtesy of @crazywoola in #12531.
- Knowledge Admin Role Removal: Cleaned up roles by removing the unnecessary knowledge admin role, courtesy of @JohnJyong in #12450.
🐛 Bug Fixes
- URL Variables: Fixed a critical bug where URLs containing variables were not functioning properly by @hjlarry in #12452.
- Remote URL Fallback: Added a fallback to remote_url to eliminate errors when url isn't provided thanks to @fujita-h in #12455.
- Docker-Compose Sync: Resolved reverse sync inconsistencies for docker-compose-template.yaml by @fujita-h in #12509.
- Milvus Same Chunk Deadlock: Fixed an issue causing deadlocks when inserting the same chunk by @huangzhuo1949 in #12502.
- Costs Calculation: Fixed sum costs returning incorrect values on the overview page by @douxc in #12534.
- Workflow Node Processing: Corrected the answer node stream processing in conditional branches by @Kevin9703 in #12510.
These numerous bug fixes and enhancements make v0.15.1 more robust, efficient, and flexible. Keep those feedback channels open; we always want to hear how these changes help or hinder your workflows!
Upgrade Guide
Docker compose deployments
Warning
The files in the docker-legacy directory will soon stop being maintained and will be removed from the repository. If you are still using them, please switch to the new version as soon as possible.
-
Back up your customized docker-compose YAML file (optional)
cd docker cp docker-compose.yaml docker-compose.yaml.$(date +%s).bak
-
Get the latest code from the main branch
git checkout main git pull origin main
-
Stop the service,Command, please execute in the docker directory
docker compose down
-
Back up data
tar -cvf volumes-$(date +%s).tgz volumes
-
Upgrade services
docker compose up -d
Source Code deployments
-
Stop API server, Worker and Web frontend Server.
-
Get the latest code from the release branch:
git checkout 0.15.1
-
Update Python dependencies:
cd api poetry install
-
Then, let's run the migration script:
poetry run flask db upgrade
-
Finally, run API server, Worker and Web frontend Server again.
What's Changed
- Fix #12448 - update bedrock retrieve tool, support hybrid search type and re… by @ybalbert001 in #12446
- Add 'document' feature to Sonnet 3.5 through OpenRouter by @infinitnet in #12444
- remove knowledge admin role by @JohnJyong in #12450
- fix: url with variable not work by @hjlarry in #12452
- fix: allow fallback to remote_url when url is not provided by @fujita-h in #12455
- add tidb on qdrant redis lock by @JohnJyong in #12462
- Revert "fix:deepseek tool call not working correctly" by @crazywoola in #12463
- fix: adjust opacity for model selector based on readonly state by @WTW0313 in #12472
- Feat elasticsearch japanese by @fujita-h in #12194
- fix: fix the incorrect plaintext file key when saving by @acelyc111 in #10429
- fix: tiktoken cannot be loaded without internet by @laipz8200 in #12478
- feat: support single run doc extractor node by @hjlarry in #11318
- FEAT: support milvus to full text search by @kgpp34 in #11430
- fix #12453 #12482 by @JohnJyong in #12495
- chore: improve app doc by @hjlarry in #12490
- feat: add ci job to test template for docker compose by @kurokobo in #12514
- fix: Reverse sync docker-compose-template.yaml by @fujita-h in #12509
- fix: add last_refresh_time to track the validity of is_other_tab_refreshing by @douxc in #12517
- Fix: Add a INFO-level log when fallback to gpt2tokenizer by @halogen22 in #12508
- feat: add GET upload file API endpoint to dataset service api by @euxx in #11899
- fix: same chunk insert deadlock by @huangzhuo1949 in #12502
- fix: Parsing OpenAPI spec for external tools (#12518) by @lotsik in #12530
- feat: show workflow running status by @crazywoola in #12531
- fix: sum costs return error value on overview page by @douxc in #12534
- fix: Add datasets list access control and fix datasets config display issue by @WTW0313 in #12533
- Feat/add knowledge include all filter by @JohnJyong in #12537
- chore: translate i18n files by @github-actions in #12543
- improve the readability of the function generate_api_key by @gakkiyomi in #12552
- Feat/new saas billing by @JohnJyong in #12591
- Fix pandas indexing method for knowledge base imports (#12637) by @CN-P5 in #12638
- chore: Adjust translations to align with Taiwanese Mandarin conventions by @chuehnone in #12633
- fix: ruff check for True if ... else by @yihong0618 in #12576
- fix: ruff with statements by @yihong0618 in #12578
- fix(workflow): fix answer node stream processing in conditional branches by @Kevin9703 in #12510
- Revert "Feat/new saas billing" by @JohnJyong in #12673
- fix: Update variable handling in VariableAssignerNode and clean up app_dsl_service by @laipz8200 in #12672
- fix: add type hints for App model and improve error handling in audio services by @laipz8200 in #12677
- Add new integration with Opik Tracking tool by @Lothiraldan in #11501
- api tool support multiple env url by @mboo2005 in #12249
- [fix] support feature restore by @warren830 in #12563
- feat: add table of contents to Knowledge API doc by @euxx in #12688
- chore: bump version to 0.15.1 by @laipz8200 in #12690
New Contributors
- @kgpp34 made their first contribution in #11430
- @halogen22 made their first contribution in #12508
- @lotsik made their first contribution in #12530
- @gakkiyomi made their first contribution in #12552
- @CN-P5 made their first contribution in #12638
- @chuehnone made their first contribution in #12633
- @Lothiraldan made their first contribution in #11501
- @mboo2005 made their first contribution in #12249
Full Changelog: 0.15.0...0.15.1
v1.0.0-beta.1
Introduce Plugin System
We are glad to share that we're launching Plugins beta.
Plugins are modular components that extend AI applications with plug-and-play simplicity. Now you can assemble external services and custom functionalities with your Dify apps effortlessly.
Changes you should know
- We've developed a plugin system, a standard for Dify that lets users create plugins with the suffix .difypkg. By installing different plugin packages, you can add various capabilities to Dify.
- Through this system, we've decoupled tools and models that can be expanded from Dify, enabling you to install them in a truly plug-and-play manner.
- We've introduced a new Agent node in Workflow, where the agent's behavior can now be defined by plugins. This means Dify is no longer limited to built-in strategies like CoT; you can define your own agent strategies.
- We've also introduced a new type of plugin called Extension, which is a custom service hosted within Dify. You can customize this service's code through plugins to handle external Webhook events.
- We've launched the Dify Marketplace, a centralized platform where plugins can be freely shared, allowing users to publish and download different plugins.
Important Notes
- !! This is a beta version of Dify v1.0.0. Please do not upgrade your production environment directly to this version.
- !! In this plugin version, some tools are too closely integrated with Dify and haven't been fully migrated to v1.0.0. This might cause certain tools to become unavailable during migration. Tools developed through custom development on Dify also cannot be migrated. You can manually migrate your existing implementations to plugins by referring to the plugin development documentation.
- During Dify v1.0.0 beta, we're opening up a beta test cloud environment for exploration. To participate in the beta test cloud environment trial, please join the waitlist. Upon approval, you will receive an email with access instructions. Please note that it should not be used for production, and all test data will be reset before the official release of v1.0.0.
Docker Deployment
v1.0.0 supports Docker compose deployment. You can start Dify using the following commands:
git checkout 1.0.0-beta.1
cd ./docker
./generate_docker_compose
docker compose -f docker-compose.yaml up -d
Plugin Migration
- !! Note, if you are upgrading from an older version to v1.0.0, you need to execute some basic migration steps.
The first step in upgrading to v1.0.0 is to install the tools and models used in your current environment into the new plugin environment, ensuring plugin installation is completed before database migration, run the following command:
poetry run flask extract-plugins --workers=20
This command extracts all models and tools used in the current environment. The workers parameter determines the number of parallel processes during extraction; adjust it according to your needs.
The final result will be saved in the plugins.jsonl file, which contains the plugin information for all workspaces in the current Dify instance.
Ensure your network is functioning properly and can access https://marketplace.dify.ai, then run the following command:
poetry run flask install-plugins
This command will download and install all necessary plugins into the latest environment.
Database Migration
After completing the basic plugin installation process, follow the standard Dify upgrade procedure to update the database schema to the latest version.
poetry run flask db upgrade
Dify v1.0 includes compatibility for old data. You should be able to operate normally, but for better future compatibility, run the following data migration command once you're sure you won't revert to an older version:
poetry run flask migrate-data-for-plugin
This command will prefix existing model and tool vendors in the database with langgenius, such as converting openai to langgenius/openai/openai. This operation may affect the functioning of the older Dify version, so back up your database before running this command to prevent unwanted issues.
v0.15.0
✨ What’s New in v0.15.0? ✨
Hey developers! We know you've got a lot going on, so let's cut to it. Here's what's new in v0.15.0, our latest release, packed with bug fixes, feature upgrades, and enhancements.
⚡ New Features
🧑🧑🧒🧒 Parent-child Retrieval
Leverage a two-tier hierarchical approach that effectively balances the trade-off between accurate matching and comprehensive contextual information to improve the quality and accuracy of AI-generated responses in RAG systems. Learn more
Highlights:
- The new chunk editing and preview display brings users a better reading and editing experience, making it easier for people without technical backgrounds to understand the two-layer parent-child structure.
- We allow users to improve retrieval efficiency by child chunks independently without changing parent chunks as LLM content.
- Update index mode rules: Economical cannot be downgraded once upgraded to High Quality.
- Document batch operations in Knowledge Base support batch enabling, disabling, deletion, and archiving document functions.
✨ Improvements
- Multi-Version Workflows: Manage multiple workflow versions more effectively with contributions from @warren830 (#11990).
- UI/UX adjustments for accessibility, such as replacing
div
withbutton
to enhance user interaction and navigation (@TinsFox, #12046). - Database and memory optimizations that not only improve performance but they'll likely save you headaches when loading and retrieving data (@laipz8200, #12071).
- Enhanced support for streaming modes, error feedback, and token handling to improve your coding life significantly (various contributors).
🛠️ Fixes
- Numerous typo fixes, improved error handling, and bug resolutions across the workflow, such as
tool can not run
,HTTP method case sensitivity
by @yihong0618 (#12054, #12401), and cleaning up exceptions by @acelyc111 (#12246). Your workflow should be a lot smoother now. - Improved error management in several components. This includes better handling of invalid URLs, file uploads, JSON parsing, and missing IDs, thanks to contributions from @laipz8200 (various PRs).
- Default value fixes to configurations like Google Storage and better formatting of URLs to keep Docker Compose happy, by @kazukitakamatsu and @cemremengu (#12188, #12072).
⚙️ Refactoring & Other Chores
- Code refactoring to enhance readability and maintainability like using
tiktoken
for token calculations (@laipz8200, #12416). - Cleanup of unused imports for a leaner codebase. Thanks to @bowenliang123 for lint corrections (#11922).
- A bundle of localization improvements for international users, meticulously handled by the community, including corrections to error messages and localizations (@HanqingZ, #12292).
⚡ Misc
- Added cheaper and long context models for Qwen2.5-72B-Instruct, and a variety of speech models from siliconflow, contributed by @senseb (#12415, #12425).
- Squashing bugs related to document parsing that maintained your data format integrity, addressed by @Hisir0909 (#12112).
Get ready to dive into these enhancements and see how they can supercharge your workflows and development experience. Happy coding!
Upgrade Guide
Docker compose deployments
Warning
The files in the docker-legacy directory will soon stop being maintained and will be removed from the repository. If you are still using them, please switch to the new version as soon as possible.
-
Back up your customized docker-compose YAML file (optional)
cd docker cp docker-compose.yaml docker-compose.yaml.$(date +%s).bak
-
Get the latest code from the main branch
git checkout main git pull origin main
-
Stop the service,Command, please execute in the docker directory
docker compose down
-
Back up data
tar -cvf volumes-$(date +%s).tgz volumes
-
Upgrade services
docker compose up -d
Source Code deployments
-
Stop API server, Worker and Web frontend Server.
-
Get the latest code from the release branch:
git checkout 0.15.0
-
Update Python dependencies:
cd api poetry install
-
Then, let's run the migration script:
poetry run flask db upgrade
-
Finally, run API server, Worker and Web frontend Server again.
What's Changed
- fix: add FileNotFoundError to ignored errors in Sentry integration by @laipz8200 in #12023
- fix: Fix session typo in workflow_trace method by @You-keitou in #12031
- fix: fix typo by @yihong0618 in #12034
- fix: Replace generic exceptions with specific error classes in task p… by @laipz8200 in #12036
- fix/array file cannot use in iteration node by @laipz8200 in #12035
- fix: modal bg color by @YIXIAO0 in #12042
- feat: mypy for all type check by @yihong0618 in #10921
- refactor: replace div with button for better accessibility by @TinsFox in #12046
- fix: --name option for the create-tenant command does not take effect by @euxx in #11993
- fix: tool can not run by @yihong0618 in #12054
- fix: i18n error by @yihong0618 in #12052
- fix: can not find model bug by @yihong0618 in #12051
- fix: like failed close #12057 by @yihong0618 in #12058
- fix: update S3 and Azure configuration typos in .env.example and corr… by @fdb02983rhy in #12055
- fix: o1 model error, use max_completion_tokens instead of max_tokens. by @jiangbo721 in #12037
- fix: zoom in/out click by @marvin-season in #12056
- refactor: optimize database usage by @laipz8200 in #12071
- fix: unquote urls in docker-compose.yaml by @cemremengu in #12072
- fix(app_generator): improve error handling for closed file I/O operat… by @laipz8200 in #12073
- Feat/parent child retrieval by @WTW0313 in #12086
- feat(message_feedback): add content argument to feedback creation by @laipz8200 in #12077
- fix(tool): validate return type from _invoke method to ensure ToolInv… by @laipz8200 in #12079
- fix(http_request): add error handling for invalid URLs by @laipz8200 in #12082
- fix(file_factory): validate upload_file_id format as UUID by @laipz8200 in #12084
- fix(audio_service): validate message_id format using UUID by @laipz8200 in #12087
- fix(billing_service): change retry condition to handle specific reque… by @laipz8200 in #12091
- Feat/support parent child chunk by @JohnJyong in #12092
- Revert "Feat/parent child retrieval" by @laipz8200 in #12095
- fix: add type ignore comments for shared_task imports and clean up re… by @laipz8200 in #12099
- fix(workflow_service): assign UUID to workflow_node_execution id and update optional fields in WorkflowRun and WorkflowNodeExecution models by @laipz8200 in #12096
- fix: issue #12078 by redirect the right by @yihong0618 in #12088
- py lint by @JohnJyong in #12102
- fix: issue #12068 by test is answer in the ids by @yihong0618 in #12105
- feat: parent child retrieval by @WTW0313 in #12106
- fix unstructured setting by @JohnJyong in #12116
- fix: issue #11868 bring old logic back by @yihong0618 in #12100
- fix: typo in clean messages periodical task's logging by @bowenliang123 in #12090
- send knowledge base auto disable notification by @JohnJyong in #12126
- fix: add properties to retrieve created by account and end user in Wo… by @laipz8200 in #12129
- fix: update MessageService.create_feedback to use keyword arguments f… by @laipz8200 in #12134
- fix: validate imported_version type in AppDslService by @laipz8200 in #12135
- fix: enhance file upload error handling and update base error class by @laipz8200 in #12132
- fix: 12050 by @XiaoBa-Yu in #12109
- chore: translate i18n files by @github-actions in #12118
- fix: improve merge branch node ID checks in graph engine by @laipz8200 in #12128
- fix: import jieba.analyse by @laipz8200 in http...
v0.14.2
✨ What’s New in v0.14.2? ✨
We’re thrilled to announce the release of v0.14.2, packed with new features and critical enhancements. Here’s everything new in this update:
🚀 New Features
-
Workflow Retry Functionality: We've enhanced workflow resilience with a retry feature by @zxhlyh. Your nodes will make repeat attempts if they face execution errors, minimizing disruptions.
-
Order Support in Models: Now you can specify the order between text and files when using models like Gemini and Claude, thanks to the work of @laipz8200. This gives you precise control over data flow.
-
Azure GPT-4o-2024-11-20 Model: Thanks to @agungbesti, this powerful model is now part of our lineup, offering advanced capabilities for your needs.
-
Gemini-2.0-flash-thinking-exp-1219: Explore this cutting-edge model brought to you by @hjlarry—designed to enhance your application capabilities.
✨ Enhancements
-
HTTP Request Node File Type Detection: Improved by @tancheng33 to ensure better handling of file uploads.
-
Memory Optimization: Reduced memory usage from 800+ MB to 500+ MB, thanks to the optimizations by @yihong0618.
-
Partial Success Status in App Logs: With the help of @Nov1c444, we’ve introduced a new log metric to capture partial successes across app operations.
-
Workflow Parallel Depth Limit Configuration: Gain more control over concurrency in your workflows with this new setting by @laipz8200.
We owe a huge thank you to all the contributors for their hard work and dedication. Your continuous support and input drive our improvement.
As always, keep the feedback coming, and happy building with Dify! 🚀
Upgrade Guide
Docker compose deployments
Warning
The files in the docker-legacy directory will soon stop being maintained and will be removed from the repository. If you are still using them, please switch to the new version as soon as possible.
-
Back up your customized docker-compose YAML file (optional)
cd docker cp docker-compose.yaml docker-compose.yaml.$(date +%s).bak
-
Get the latest code from the main branch
git checkout main git pull origin main
-
Stop the service,Command, please execute in the docker directory
docker compose down
-
Back up data
tar -cvf volumes-$(date +%s).tgz volumes
-
Upgrade services
docker compose up -d
Source Code deployments
-
Stop API server, Worker and Web frontend Server.
-
Get the latest code from the release branch:
git checkout 0.14.2
-
Update Python dependencies:
cd api poetry install
-
Then, let's run the migration script:
poetry run flask db upgrade
-
Finally, run API server, Worker and Web frontend Server again.
What's Changed
- ci: add config ci more disscuss check #11706 by @yihong0618 in #11752
- ci: fix config ci and it works by @yihong0618 in #11807
- Fix explore app icon by @charli117 in #11808
- add-model-azure-gpt-4o-2024-11-20 by @agungbesti in #11803
- feat(ark): add doubao-pro-256k and doubao-embedding-large by @sinomoe in #11831
- fix: remove ruff ignore SIM300 by @barabicu in #11810
- fix: silicon change its model fix #11844 by @yihong0618 in #11847
- fix: float values are not json for nan value close #11827 by @yihong0618 in #11840
- Fix/10584 wrong message when no custom tool available in custom tool list by @crazywoola in #11851
- fix: comfyui tool supports https by @shaxiaozz in #11823
- fix: Enhance file type detection in HTTP Request node by @tancheng33 in #11797
- feat: add gemini-2.0-flash-thinking-exp-1219 by @hjlarry in #11863
- Fix comfyui tool https by @shaxiaozz in #11859
- fix: better gard nan value from numpy for issue #11827 by @yihong0618 in #11864
- fix: add safe dictionary access for bedrock credentials by @KMerdan in #11860
- chore(deps): bump nanoid from 3.3.7 to 3.3.8 in /web by @dependabot in #11876
- chore(db): use a better way to export models and remove unused table by @laipz8200 in #11838
- feat(llm_node): support order in text and files by @laipz8200 in #11837
- Feat: Add partial success status to the app log by @Nov1c444 in #11869
- Feat: Retry on node execution errors by @Nov1c444 in #11871
- fix: node 22 build by @AkaraChen in #11883
- chore: translate i18n files by @github-actions in #11855
- chore: add retry index migration by @Nov1c444 in #11887
- fix: better memory usage from 800+ to 500+ by @yihong0618 in #11796
- feat: add workflow parallel depth limit configuration by @laipz8200 in #11460
- Feat/workflow retry by @zxhlyh in #11885
- chore: translate i18n files by @github-actions in #11892
- fix: rerank switch by @zxhlyh in #11897
- fix: doc can not extract tables by @yihong0618 in #11879
- fix: handle document fetching from URL in Anthropic LLM model, solving base64 decoding error by @fdb02983rhy in #11858
- revert: these 2 settings by @crazywoola in #11906
- fix: dataset search-input compostion can't work in chrome by @xhdd123321 in #11907
- Update input-var-list.tsx by @Wuhu-dsm in #9987
- add three aws tools by @ybalbert001 in #11905
- fix: ensure WorkflowRun attributes are refreshed in WorkflowCycleMana… by @fdb02983rhy in #11913
- fix(retrieval_service): avoid to use exception by @laipz8200 in #11925
- fix(file_factory): validate upload_file_id before querying UploadFile by @laipz8200 in #11937
- refactor: update builtin tool provider methods to use session management by @laipz8200 in #11938
- fix: change OutputParserError to inherit from ValueError by @laipz8200 in #11935
- fix(nodes): handle errors in question_classifier and parameter_extractor by @laipz8200 in #11927
- fix(tool_file_manager): raise ValueError when get timeout by @laipz8200 in #11928
- fix(model_runtime): make invoke as ValueError by @laipz8200 in #11929
- fix: change MaxRetriesExceededError to inherit from ValueError by @laipz8200 in #11934
- fix: add RemoteFileUploadError for better error handling in remote fi… by @laipz8200 in #11933
- fix: validate response type in transform_response method by @laipz8200 in #11931
- fix: validate reranking model attributes before processing by @laipz8200 in #11930
- fix(code_node): update type hints for string and number checks in Cod… by @laipz8200 in #11936
- fix:log error(#11942) by @leslie2046 in #11943
- fix: self.method should method in api_tool.py by @yihong0618 in #11926
- fix: The default updated_at when a workflow is created by @jiangbo721 in #11709
- fix: gemini system prompt with variable raise error by @hjlarry in #11946
- fix: refactor conversation pagination to use SQLAlchemy session manag… by @laipz8200 in #11956
- fix(app_dsl_service): handle missing app mode with a ValueError by @laipz8200 in #11945
- feat(code_node): add more check by @laipz8200 in #11949
- fix(json_in_md_parser): improve error messages for JSON parsing failures by @laipz8200 in #11948
- fix: enhance type hints and improve audio message handling in TTS pub… by @laipz8200 in #11947
- fix(core/errors): change base class of custom exceptions to ValueError by @laipz8200 in #11955
- fix: raise http request node error on httpx.request error by @laipz8200 in #11954
- fix(base_node): change BaseNodeError exception type from Exception to ValueError by @laipz8200 in #11952
- fix(ops_trace_manager): handle None workflow_run in work...
v0.14.1
✨ What’s New in v0.14.1? ✨
We’re excited to bring you version 0.14.1, packed with enhancements and new features designed to elevate your workflow and performance. Here’s what you can look forward to:
🚀 New Features
-
Gemini Models: Gemini models have received a robust upgrade. With integrated response metadata, you can manage token counting more efficiently, thanks to enhancements by @totsukash in #11743.
-
OpenAI O1 Model: Take advantage of the new OpenAI O1 model with updated pricing and a larger token limit, providing even greater flexibility for your projects, courtesy of @laipz8200 in #11780.
-
OpenDAL Integration: Introducing Apache OpenDAL™, the visionary approach to storage — One Layer, All Storage. This tool seamlessly integrates with a variety of object storage solutions like AWS S3 and Google Cloud Storage and includes an automatic retry feature to ensure reliability and ease of use. Brought to you by the ingenious work of @laipz8200 in #11754.
🛠️ Enhancements
-
Docker Proxy Improvements: Enhanced proxy support for Docker environments ensures smoother and more streamlined deployments, improved by @longfengpili in #11681.
-
Improved Docker API Startup: We've slashed API startup times by 50% when running in Docker, meaning faster development cycles and less downtime, thanks to the efforts of @laipz8200 in #11762.
🐛 Bug Fixes
-
Memory Leak Fix: Addressed a memory leak caused by Pypdfium2, ensuring your system runs smoothly and resources are optimized. This fix is credited to @yihong0618 in #11700.
-
Image Icon Display: Resolved issues with missing image icons to ensure all visuals render correctly, as fixed by @crazywoola in #11701.
-
Tidb Now Optional in Docker Compose: The Tidb service has been made optional in Docker setups, providing you with more configuration flexibility, led by @bowenliang123 in #11729.
This version is all about providing a more efficient, flexible, and streamlined platform, ensuring you can focus on innovation without the technical hiccups. Welcome to v0.14.1—happy coding! 🚀
Upgrade Guide
Docker compose deployments
Warning
The files in the docker-legacy directory will soon stop being maintained and will be removed from the repository. If you are still using them, please switch to the new version as soon as possible.
-
Back up your customized docker-compose YAML file (optional)
cd docker cp docker-compose.yaml docker-compose.yaml.$(date +%s).bak
-
Get the latest code from the main branch
git checkout main git pull origin main
-
Stop the service,Command, please execute in the docker directory
docker compose down
-
Back up data
tar -cvf volumes-$(date +%s).tgz volumes
-
Upgrade services
docker compose up -d
Source Code deployments
-
Stop API server, Worker and Web frontend Server.
-
Get the latest code from the release branch:
git checkout 0.14.1
-
Update Python dependencies:
cd api poetry install
-
Then, let's run the migration script:
poetry run flask db upgrade
-
Finally, run API server, Worker and Web frontend Server again.
What's Changed
- chore: remove duplicate folder with case sensitivity issue by @hjlarry in #11687
- fix: fix proxy for docker by @longfengpili in #11681
- feat: add gitee ai vl models by @fchange in #11697
- make login lockout duration configurable by @kazuhisa-wada in #11699
- fix: image icon can not display by @crazywoola in #11701
- fix: memory leak by pypdfium2 close(maybe) #11510 by @yihong0618 in #11700
- chore: update docker env close #11703 by @yihong0618 in #11706
- feat: enhance gemini models by @hjlarry in #11497
- feat(tool_node): Suppress exceptions thrown by the Tool by @laipz8200 in #11724
- Dark Mode: Workflow darkmode style by @douxc in #11695
- feat(knowledge_retrieval_node): Suppress exceptions thrown by DatasetRetrieval by @laipz8200 in #11728
- docs: Modify translation for error branch by @HanqingZ in #11731
- fix(api/ops_trace): avoid raise exception directly by @laipz8200 in #11732
- chore:update azure api version by @leslie2046 in #11711
- fix: make tidb service optional with proper profile in docker compose yaml by @bowenliang123 in #11729
- chore: the consistency of MultiModalPromptMessageContent by @hjlarry in #11721
- feat(ark): support doubao vision series models by @sinomoe in #11740
- chore: update comments in docker env file by @laipz8200 in #11705
- feat: use Gemini response metadata for token counting by @totsukash in #11743
- chore: improve gemini models by @hjlarry in #11745
- Fix explore app icon by @charli117 in #11742
- (doc) fix: update cURL examples to include Authorization header by @fujita-h in #11750
- fix: Prevent redirection to /overview when accessing /workflow. by @barabicu in #11733
- feat(app_factory): speed up api startup by @laipz8200 in #11762
- feat: full support for opendal and sync configurations between .env and docker-compose by @laipz8200 in #11754
- feat: add parameters for JinaReaderTool by @DDDDD12138 in #11613
- fix: file upload auth by @ZhouhaoJiang in #11774
- feat: add openai o1 & update pricing and max_token of other models by @laipz8200 in #11780
- fix: imperfect service-api introduction text by @lunarianss in #11782
- Lindorm vdb bug-fix by @AlwaysBluer in #11790
- chore(.env.example): add comments for opendal by @laipz8200 in #11778
- feat: Disable the "Forgot your password?" button when the mail server setup is incomplete by @miya in #11653
- chore(opendal_storage): remove unused comment by @laipz8200 in #11783
- feat:add hunyuan model(hunyuan-role, hunyuan-large, hunyuan-large-rol… by @xander-art in #11766
- chore: bump version to 0.14.1 by @laipz8200 in #11784
New Contributors
- @longfengpili made their first contribution in #11681
- @lunarianss made their first contribution in #11782
- @miya made their first contribution in #11653
- @xander-art made their first contribution in #11766
Full Changelog: 0.14.0...0.14.1
v0.14.0
✨ Discover What's New in v0.14.0 ✨
We’re excited to bring you the latest v0.14.0 update. Let's dive straight into some of the standout features and improvements. As always, we extend a special thanks to our contributors!
⚡ New Features
🔗 Improved Error Handling
Enhanced functionality for workflows and chatflows allows nodes like LLM and HTTP requests to continue operations even when errors occur. Big shoutout to @zxhlyh and @Nov1c444 for their work in #11474 and #11458.
🎨 Revamped User Interface
Creation | Exploration |
---|---|
With the fresh entry point for app creation and template exploration, user experience becomes more intuitive, assisting in quick and efficient startup. Thanks to @douxc for this in #10847.
📁 File Previews Directly in Chat
Now, video, audio, and PDF file previews are accessible right within the chat, simplifying on-the-go information access. Credit goes to @charli117 in #11466.
Learn more in our blog
🧠 Model Updates
🌍 Gemini 2.0 and Flash Exp in Google
This enhancement by @hjlarry and @wangiii, found in #11570 and #11604, boosts overall performance.
🔢 Grok-2-1212 and Grok-2-Vision-1212 in XAI
Optimizing the model functionality, thanks to @hjlarry in #11672.
🧙 QwQ and Llama3.3 Models in Siliconflow
Expands compatibility and versatility, contributed by @orangeclk in #11492.
📷 Abab6.5t-Chat Model in Minimax
Broaden available models by @acelyc111 in #11484.
🔧 Other Highlights
🏦 Storage Integration
Features integration of Apache OpenDAL storage for enhanced system-wide storage capabilities. Work done by @laipz8200 in #11508.
📖 Knowledge Base Enhancements
Added support for MDX files in the Knowledge Base to improve content flexibility. Credit to @yihong0618 in #11565.
🔧 Logging and Dev Tools
Logs now include trace IDs for smoother debugging, thanks to @luckylhb90 in #11599. Plus, @fujita-h added handy Docker commands in #11616.
🔧 Bug Fixes
Various minor bugs have been addressed, including iteration node errors and proper release of rate-restricting requests. Thanks to @yihong0618, @liuzhenghua, and others for resolving these issues in #11504, #11540, and more.
🌈 Additional Enhancements
Lindorm VDB support and configurable max submit count, thanks to @AlwaysBluer and @kazuhisa-wada in #11574 and #11673.
Every update in this release reinforces the platform's robustness and adaptability—many thanks to all contributors! Let's continue building this powerful community together! 🚀
Upgrade Guide
Docker compose deployments
Warning
The files in the docker-legacy directory will soon stop being maintained and will be removed from the repository. If you are still using them, please switch to the new version as soon as possible.
-
Back up your customized docker-compose YAML file (optional)
cd docker cp docker-compose.yaml docker-compose.yaml.$(date +%s).bak
-
Get the latest code from the main branch
git checkout main git pull origin main
-
Stop the service,Command, please execute in the docker directory
docker compose down
-
Back up data
tar -cvf volumes-$(date +%s).tgz volumes
-
Upgrade services
docker compose up -d
Source Code deployments
-
Stop API server, Worker and Web frontend Server.
-
Get the latest code from the release branch:
git checkout 0.14.0
-
Update Python dependencies:
cd api poetry install
-
Then, let's run the migration script:
poetry run flask db upgrade
-
Finally, run API server, Worker and Web frontend Server again.
What's Changed
- fix: add the missing abab6.5t-chat model of Minimax by @acelyc111 in #11484
- feat:add apollo configuration to load env file by @huanshare in #11210
- feat: add siliconflow qwq and llama3.3 model by @orangeclk in #11492
- fix(app_generator_service): overload type hints by @laipz8200 in #11507
- chore : fix translation Typo in ko-KR localization by @JungHyunMoon in #11509
- chore: fix typo in Japanese localization by @barabicu in #11502
- Msg file preview by @charli117 in #11466
- chore: LOCAL_FILE also try to use remote_url as Prompt message by @hjlarry in #11443
- Remove the processing of single quote when testing API tools. by @weimzh in #11390
- fix: issue 11247 that Completion mode content maybe list or str by @yihong0618 in #11504
- fix: can not start local by REMOTE_SETTINGS_SOURCE_NAME change it to … by @yihong0618 in #11535
- Revert "fix: total tokens is wrong which is zero in inter way, close … by @yihong0618 in #11536
- fix: better error message for url add external knowledge by @yihong0618 in #11537
- feat: Add llama-3.3 models for Groq by @pvoo in #11533
- fix: Remove duplicate 'response_format' parameter from model YAML files by @zkytech in #11531
- [Pixtral] Add new model ; add vision by @Asterovim in #11231
- chore: update thai lang in app page by @YIXIAO0 in #11541
- feat: workflow continue on error by @zxhlyh in #11474
- Feat: continue on error by @Nov1c444 in #11458
- fix: iteration node in parallel mode token count error by @Nov1c444 in #11539
- feat: integrate opendal storage by @laipz8200 in #11508
- fix: workflow continue on error doc link by @zxhlyh in #11554
- chore: translate i18n files by @github-actions in #11545
- Fix: RateLimit requests were not released when a streaming generation exception occurred by @liuzhenghua in #11540
- fix: better opendal tests by @yihong0618 in #11569
- feat: add gemini-2.0-flash-exp by @hjlarry in #11570
- Lindorm vdb by @AlwaysBluer in #11574
- Feat: dark mode for logs and annotations by @JzoNgKVO in #11575
- fix: change workflow trace id by @ZhouhaoJiang in #11585
- fix: support mdx files close #11557 by @yihong0618 in #11565
- chore: translate i18n files by @github-actions in #11577
- [ref] use one method to get boto client for aws bedrock by @warren830 in #11506
- Added new models and Removed the deleted ones for Groq #11455 by @alokas in #11456
- fix: name of llama-3.3-70b-specdec by @crazywoola in #11596
- feat(model): add vertex_ai Gemini 2.0 Flash Exp by @wangiii in #11604
- ci: better print version for ruff to check the change by @yihong0618 in #11587
- feat(devcontainer): add alias to stop Docker containers by @fujita-h in #11616
- Fix/pdf preview in build by @zxhlyh in #11621
- chore(dependency): bump gunicorn to 23.0 by @laipz8200 in #11560
- fix: split dir for opendal tests by @yihong0618 in #11627
- fix: app log filter value error by @Kevin9703 in #11624
- Feat: new entry point for app creation by @douxc in #10847
- fix: filter bug for keywork cause code can not reach by @yihong0618 in #11666
- fix: remove unnecessary curly braces in wf api doc by @RockChinQ in https://github...
v0.13.2
✨ What’s New in v0.13.2? ✨
Hey everyone, we're back with version 0.13.2, sporting some cool new features and enhancements aimed at making your workflow smoother. Let’s dive right in:
🚀 New Features
- Cohere Rerank 3.5 Model: We've integrated support for Cohere's advanced rerank model, adding more depth to your data processing toolbox by @shirochan in #11289.
- New Model Additions:
- JSON Schema Support for Ollama Models: Tailor your data handling to your needs by @hjlarry in #11449.
- Explore Link: Easily open apps in Explore with a simple “Open in Explore” link on the studio interface by @kurokobo in #11402.
⚙️ Enhancements
- File Downloads in Workflow Results: Workflow results now support file downloads, adding a layer of versatility to your interaction with data outputs by @JzoNgKVO in #11338.
- Vision for Amazon Nova Models: Amazon Nova Lite and Pro models are now equipped with vision capabilities, broadening their application scope by @mazyu36 in #11398.
- Editable IF/ELSE Condition Variables: You can now tweak condition variables in IF/ELSE nodes post-selection for dynamic adjustments by @YIXIAO0 in #11431.
- Mermaid Component Cleanup: Streamlined and styled for a sleeker experience by @charli117 in #11472.
🛠️ Bug Fixes
- Knowledge Base Guide Link: We've fixed the pesky broken link to the knowledge base, ensuring smooth navigation by @euxx in #11387.
- Animated WEBP Image Uploads: Issues with uploading animated WEBP images as app icons are history by @xuzuodong in #11453.
- Iteration Node Token Count Adjusted: Misaligned token counts have been corrected for better accuracy by @s2terminal in #11235.
- Workflow Tool Tag Saving Bug: Saving tags when creating Workflow Tools is now hassle-free by @zhaobingshuang in #11481.
- Document Extractor Handles PPTX Files: Full support for PPTX file types is back and better by @hgbdev in #11364.
- Translation Improvements: Various translation issues have been ironed out to provide a more cohesive multi-language experience by @crazywoola in #4212.
🧹 Chores and Other Updates
- Tidied up i18n files for smoother user experience across languages by GitHub Actions in #11389.
- Emoji Picker padding got a much-needed polish by @xuzuodong in #11452.
- Improved overall code quality and performance by removing redundant styles in components by @charli117 in #11472.
This release is all about refining your experience and opening new possibilities, so dig in and let us know how we've done! As always, your feedback is our fuel. Enjoy! 🚀
Upgrade Guide
Docker compose deployments
Warning
The files in the docker-legacy directory will soon stop being maintained and will be removed from the repository. If you are still using them, please switch to the new version as soon as possible.
-
Back up your customized docker-compose YAML file (optional)
cd docker cp docker-compose.yaml docker-compose.yaml.$(date +%s).bak
-
Get the latest code from the main branch
git checkout main git pull origin main
-
Stop the service,Command, please execute in the docker directory
docker compose down
-
Back up data
tar -cvf volumes-$(date +%s).tgz volumes
-
Upgrade services
docker compose up -d
Source Code deployments
-
Stop API server, Worker and Web frontend Server.
-
Get the latest code from the release branch:
git checkout 0.13.2
-
Update Python dependencies:
cd api poetry install
-
Then, let's run the migration script:
poetry run flask db upgrade
-
Finally, run API server, Worker and Web frontend Server again.
What's Changed
- Fix: support file download in workflow result by @JzoNgKVO in #11338
- fix: broken link to knowledge base guide by @euxx in #11387
- chore: translate i18n files by @github-actions in #11389
- Update mermaid by @charli117 in #11356
- fix: update DocumentIsPausedError by @huayaoyue6 in #11405
- fix: add elkjs by @kurokobo in #11404
- use md table systax in pr template by @crazywoola in #11412
- fix(model_runtime): add vision to Amazon Nova Lite and Pro by @mazyu36 in #11398
- FEAT: cohere rerank 3.5 model added by @shirochan in #11289
- fix external retrieval without segment id by @JohnJyong in #11423
- update tidb batch get endpoint to basic mode by @JohnJyong in #11426
- Fix: compatible with outputs data structure by @JzoNgKVO in #11432
- fix(document_extractor): pptx file type and missing metadata_filename UnstructuredIO by @hgbdev in #11364
- fix: issue #10596 by making the iteration node outputs right by @yihong0618 in #11394
- style: EmojiPicker component top padding by @xuzuodong in #11452
- feat: add zhipu glm_4v_flash by @hjlarry in #11440
- feat: add gemini exp 1206 by @hjlarry in #11444
- feat: support json_schema for ollama models by @hjlarry in #11449
- fix: cannot upload animated webp image as app icon by @xuzuodong in #11453
- Fix model provider of vertex ai by @kazukitakamatsu in #11437
- fix: unit tests env will need clear too by @yihong0618 in #11445
- fix(api): throw error when notion block can not find by @TreyDong in #11433
- remove mermail render cache by @VoidIsVoid in #11470
- Update ext_redis.py by @xiandan-erizo in #11214
- Refactor: Remove redundant style and simplify Mermaid component by @charli117 in #11472
- feat: ifelse condition variable editable after selection by @YIXIAO0 in #11431
- Fix the Japanese translation for 'Detail' by @mnogu in #11476
- feat: add 'Open in Explore' link for each apps on studio by @kurokobo in #11402
- fix: tags could not be saved when the Workflow Tool was created by @zhaobingshuang in #11481
- Fix the token count at the iteration node by @s2terminal in #11235
- refactor(iteration_node): use Sequence and Mapping in parameters by @laipz8200 in #11483
- improve message clean logic by @JohnJyong in #11487
- fix: cannot close notification manually by @xuzuodong in #11490
- chore: bump version to 0.13.2 by @laipz8200 in #11489
New Contributors
- @huayaoyue6 made their first contribution in #11405
- @shirochan made their first contribution in #11289
- @hgbdev made their first contribution in #11364
- @TreyDong made their first contribution in #11433
- @mnogu made their first contribution in #11476
- @zhaobingshuang made their first contribution in #11481
- @s2terminal made their first contribution in #11235
Full Changelog: 0.13.1...0.13.2
v0.13.1
✨ What's New in v0.13.1? ✨
In version v0.13.1, we focused on polishing our platform by addressing critical fixes:
🚀 Highlighted Updates
-
Improved Bedrock Model Message Handling: Working with Bedrock models just got smoother. We've merged consecutive messages from the same role to reduce frustrating errors. Thanks to @yihong0618 for the fix in
fix: better bedrock message handler
(#11317). -
Iteration Parallel Mode Fix: We tackled issues with the Iteration's Parallel Mode, particularly when nested with internal Parallel functions. This was managed by reverting a previous fix, noted in
Revert "Fix: iteration not in main thread pool"
by @crazywoola (#11358).
🛠️ Additional Fixes and Improvements
- File Type Correction in HTTP Node: Resolved an issue where the HTTP node always treated downloaded files as image types. Now, downloads are of the correct type, addressed by @hjlarry in #11319.
- Multi-Model Debugging: We've fixed the problem where sending messages was not possible during debugging with multiple models and conversations, thanks to @xuzuodong in #11333.
- Amazon Nova LLMs & Rerank: Integrated Amazon Nova LLMs and AWS Bedrock Rerank capabilities, adding versatility to our platform.
- UI and Configuration Enhancements: Improved file download handling in chats and enhanced the configuration of number variables for more reliable inputs.
These updates aim to provide a seamless and efficient user experience, helping you work effortlessly.
Upgrade Guide
Docker compose deployments
Warning
The files in the docker-legacy directory will soon stop being maintained and will be removed from the repository. If you are still using them, please switch to the new version as soon as possible.
-
Back up your customized docker-compose YAML file (optional)
cd docker cp docker-compose.yaml docker-compose.yaml.$(date +%s).bak
-
Get the latest code from the main branch
git checkout main git pull origin main
-
Stop the service,Command, please execute in the docker directory
docker compose down
-
Back up data
tar -cvf volumes-$(date +%s).tgz volumes
-
Upgrade services
docker compose up -d
Source Code deployments
-
Stop API server, Worker and Web frontend Server.
-
Get the latest code from the release branch:
git checkout 0.13.1
-
Update Python dependencies:
cd api poetry install
-
Then, let's run the migration script:
poetry run flask db upgrade
-
Finally, run API server, Worker and Web frontend Server again.
What's Changed
- Fix: model params in logs by @JzoNgKVO in #11298
- fix: resolve scrolling issue in workflow-log table by @DDDDD12138 in #11302
- fix: number variable can not input constant type value in tool config form by @iamjoel in #11320
- fix: file download in chat by @zxhlyh in #11322
- fix: http node download file always image type by @hjlarry in #11319
- feat: correct the prompt grammar. by @laipz8200 in #11328
- integrate amazon nove llms to dify by @ybalbert001 in #11324
- chore: improve zhipu LLM by @hjlarry in #11321
- fix: check valid for number variable by @YIXIAO0 in #11334
- fix tidb full-text-search vector missed by @JohnJyong in #11337
- update pricing for bedrock nova LLM models by @ybalbert001 in #11336
- fix: cannot send message when debug with multiple model with conversa… by @xuzuodong in #11333
- feat: add base skeleton component by @AkaraChen in #11339
- fix: Correct category of 'Workflow' used in Explore Apps. by @douxc in #11351
- chore: translate i18n files by @github-actions in #11353
- fix: better bedrock message handler close #10976 by @yihong0618 in #11317
- Revert "Fix: iteration not in main thread pool" by @crazywoola in #11358
- chore: fix typo by @tsugumi-sys in #11359
- fix: ref attribute in markdown causes page crash by @iamjoel in #11369
- [feat] Add AWS Bedrock rerank by @warren830 in #11349
- fix: bg typo in variable aggregator node by @YIXIAO0 in #11376
- fix: some typos using typos by @yihong0618 in #11374
- fix: empty object (conversation variable) editable by @YIXIAO0 in #11352
- [fix] rename yaml files to fit windows by @warren830 in #11379
- chore: bump version to 0.13.1 by @laipz8200 in #11382
New Contributors
- @tsugumi-sys made their first contribution in #11359
- @warren830 made their first contribution in #11349
Full Changelog: 0.13.0...0.13.1
v0.13.0
🚀 What’s New in v0.13.0? 🚀
Hey there, update seekers! Welcome to version 0.13.0. We’ve packed a lot of goodies in this release, from fixes and feature upgrades to some nice behind-the-scenes refactoring. Here's the scoop:
✨ New Features
-
Variable Assigner Node Update
The Variable Assigner node now supports several powerful features to streamline workflows:
• Operations on multiple conversation variables in a single node.
• Extend operator to link two arrays seamlessly.
• Set operator to assign constants to variables directly. -
Github DSL URL Support
You can now usegit.luolix.top
links directly for DSLs instead of relying onraw.luolix.top
. This makes integration smoother and more intuitive. Thanks to @yihong0618 in #11125. -
VTT File Support
Document Extractor can now handle VTT files for all your subtitle extraction needs. Big thanks to @fujita-h in #11148. -
Conversational Opener Upgrade
More opening questions for your conversations, increasing engagement points. Thanks to @fujita-h in #11233.
🛠️ Improvements and Fixes
-
LLM Invoke Errors
Reduced noise from unnecessary exceptions—LLM node invoke errors will no longer recorded in the logs. Thanks to @laipz8200 in #11141. -
Parameter Type Fix
Resolved an issue with the parameter extractor function that expected a string and wasn't given one. Kudos to @charli117 in #11142. -
ToolInvokeMessage Validation Fix
Fixed validation errors for ToolInvokeMessages when the blob_message meta is missing. Thanks to @catusax in #11212. -
Claude Handling
Claude can now handle empty strings gracefully. Thanks to @yihong0618 in #11238. -
Redis Port Double Split Fix
Adjusted the Redis port handling logic to address double-split issues. Thanks to @yihong0618 in #11270. -
Modular App Features
Reorganized app features into modular components for improved scalability and development ease. Shoutout to @bowenliang123 in #9129.
That’s the short version, but as always, there’s plenty more in the logs for those who like a deep dive. Update your systems and take these features for a spin. Keep building, keep exploring, and stay tuned for more!
Upgrade Guide
Docker compose deployments
Warning
The files in the docker-legacy directory will soon stop being maintained and will be removed from the repository. If you are still using them, please switch to the new version as soon as possible.
-
Back up your customized docker-compose YAML file (optional)
cd docker cp docker-compose.yaml docker-compose.yaml.$(date +%s).bak
-
Get the latest code from the main branch
git checkout main git pull origin main
-
Stop the service,Command, please execute in the docker directory
docker compose down
-
Back up data
tar -cvf volumes-$(date +%s).tgz volumes
-
Upgrade services
docker compose up -d
Source Code deployments
-
Stop API server, Worker and Web frontend Server.
-
Get the latest code from the release branch:
git checkout 0.13.0
-
Update Python dependencies:
cd api poetry install
-
Then, let's run the migration script:
poetry run flask db upgrade
-
Finally, run API server, Worker and Web frontend Server again.
What's Changed
- Feat: Divider component now supports gradient background by @douxc in #11130
- fix: enable after disabled memory not pass user query by @iamjoel in #11136
- fix: better way to handle github dsl url close #11113 by @yihong0618 in #11125
- fix: LLM invoke error should not be raised by @laipz8200 in #11141
- fix parameter extractor function call Expected str by @charli117 in #11142
- chore(*): Removes debugging print statements by @laipz8200 in #11145
- feat: add VTT file support to Document Extractor by @fujita-h in #11148
- fix: Incorrect iteration log display in workflow with multiple parallel mode iteartaion nodes by @Nov1c444 in #11158
- fix: gitee ai wrong default model, and better para by @yihong0618 in #11168
- fix(file_factory): convert tool file correctly. by @laipz8200 in #11167
- Adding AWS CDK deploy link in README in multi-language by @KevinZhao in #11166
- update the scheduler of update_tidb_serverless_status_task to 1/10min by @JohnJyong in #11135
- Fixes #11065: tenant_id not found when login via ADMIN_KEY by @lotabout in #11066
- fix: code linting by @jiangbo721 in #11143
- Feat: remove github star and community links if it is enterprise version by @douxc in #11180
- Feat: new pagination by @JzoNgKVO in #11170
- chore: translate i18n files by @github-actions in #11182
- fix: typo in upstashVector if id is always true, also fix some type hint by @yihong0618 in #11183
- feat: introduce a new environment variable in order to disable Scarf analytics by @realethanhsu in #11179
- Ensure consistent float type for cached embedding return values by @kazuya-awano in #10185
- chore: improve conversation list and rename docs by @hjlarry in #11187
- Update aws tools by @ybalbert001 in #11174
- chore(dep): bump flask from 3.0.1 to 3.1.0 and flask-compress to 1.17 by @bowenliang123 in #11195
- fix: handleLoadFileFromLink's transfer method incorrect by @hjlarry in #11197
- chore: add Thai GUI by @YIXIAO0 in #11201
- fix: fix azure open-4o-08-06 when enable json schema cant process content = "" by @liujiamingtiny in #11204
- fix(file_factory): Remove transfer_method validation by @laipz8200 in #11207
- fix: 'validation error for ToolInvokeMessage' when blob_message meta is None by @catusax in #11212
- fix: excel in node only read one sheet, close #9661 by @yihong0618 in #11215
- fix: Correct inputs field type in API documentation by @fengjiajie in #11198
- feat: add retireval_top_n to config in env by @ProseGuys in #11132
- fix: support setting variables in url by @zxbyoyoyo in #10676
- fix: use Gemini response metadata for token counting by @totsukash in #11226
- fix: search model not work as expected by @hjlarry in #11225
- refactor: assembling the app features in modular way by @bowenliang123 in #9129
- fix: total tokens is wrong which is zero in inter way, close #11221 by @yihong0618 in #11224
- feat: Increase the number of Opening Questions in the Conversation Opener by @fujita-h in #11233
- chore(api/Dockerfile): Bump perl to 0.40.0-8 by @laipz8200 in #11234
- chore(lint): extract ruff configs into .ruff.toml file keeping pyproject.toml clean by @bowenliang123 in #11222
- feat: add pagination support for Notion search by @kazuya-awano in #11194
- fix(word_extractor): Fix type error and remove stream in ssrf_proxy by @laipz8200 in #11241
- Fix/type-error by @laipz8200 in #11240
- feat(api): include tags in app information response by @fujita-h in #11242
- fix: nvidia special embedding model payload close #11193 by @yihong0618 in #11239
- fix: license str parser. by @GarfieldDai in #11248
- fix(workflow_cycle_manage): Handle special values in the process_data. by @laipz8200 in #11253
- fix(workflow_tool): Rename
stream
tostreaming
by @laipz8200 in #11258 - Sync INDEXING_MAX_SEGMENTATION_TOKENS_LENGTH between API and Web by @fujita-h in #11230
- fix: claude can not handle empty string by @yihong0618 in #11238
- fix:
dialogue_count
incorrect in chatflow when there's... by @xuzuodong in #11175 - chore(deps): bump cross-spawn from 7.0.3 to 7.0.6 in /web by @dependabot in #11262
- docs: add api docs for /v1/info by @kurokobo in https://github.com/langg...
v0.12.1
Bug Fixes in v0.12.1
-
Webapp Custom Icons: Fixed display issues for custom icons in the webapp. #11094
-
Start Form File Handling: Addressed the inability to use files in the Start form. #11112
-
LLM Memory Processing: Corrected errors in LLM memory handling. #11103 and #11106
-
Conversation Deletion: Fixed conversation removal issues. #11076
-
App Creation and Template Import: Resolved errors during app creation and template import. #11091, #11092 and #11108
These fixes ensure improved functionality and reliability across the platform.
Upgrade Guide
Docker compose deployments
-
Back up your customized docker-compose YAML file (optional)
cd docker cp docker-compose.yaml docker-compose.yaml.$(date +%s).bak
-
Get the latest code from the main branch
git checkout main git pull origin main
-
Stop the service,Command, please execute in the docker directory
docker compose down
-
Back up data
tar -cvf volumes-$(date +%s).tgz volumes
-
Upgrade services
docker compose up -d
Source Code deployments
-
Stop API server, Worker and Web frontend Server.
-
Get the latest code from the release branch:
git checkout 0.12.1
-
Update Python dependencies:
cd api poetry install
-
Then, let's run the migration script:
poetry run flask db upgrade
-
Finally, run API server, Worker and Web frontend Server again.
What's Changed
- fix: drop useless and wrong code for zhipu embedding by @yihong0618 in #11069
- fix: chart tool chinese font display and raise error by @hjlarry in #11058
- Add grok-vision-beta to xAI + Update grok-beta Features by @taowang1993 in #11004
- fix: timezone not imported in conversation service. by @laipz8200 in #11076
- fix: int None will cause error for context size by @yihong0618 in #11055
- fix: update the max tokens configuration for Azure GPT-4o (2024-08-06) to 16384 by @fengjiajie in #11074
- fix: import Explore Apps raise error by @hjlarry in #11091
- Add query_prefix + Return TED Transcript URL for Downstream Scraping Tasks by @taowang1993 in #11090
- SearchApi - Return error message instead of raising a ValueError by @SebastjanPrachovskij in #11083
- fix: site icon not showing by @xuzuodong in #11094
- fix #11091 raise redirect issue by @hjlarry in #11092
- fix: ops_trace_manager
from_end_user_id
by @horochx in #11077 - Fix regenerate themes by @douxc in #11101
- fix: user query be ignored if query_prompt_template is an empty string by @laipz8200 in #11103
- fix(llm_node): Ignore user query when memory is disabled. by @laipz8200 in #11106
- fix(anthropic_llm): Ignore non-text parts in the system prompt. by @laipz8200 in #11107
- fix: app copy raise error by @hjlarry in #11108
- fix: Cannot use files in the user inputs. by @laipz8200 in #11112
- feat: Allow to contains files in the system prompt even model not support. by @laipz8200 in #11111
- fix(llm_node): Ignore file if not supported. by @laipz8200 in #11114
- Add TTS to OpenAI_API_Compatible by @taowang1993 in #11071
- chore: bump to 0.12.1 by @laipz8200 in #11122
New Contributors
- @fengjiajie made their first contribution in #11074
Full Changelog: 0.12.0...0.12.1