v0.7.1
✨ What’s New in v0.7.1? ✨
Hey everyone, we’re excited to bring you version 0.7.1 of our platform! This release is packed with new features, enhancements, and crucial fixes. Let’s dive in:
🚀 New Features
-
Custom App Icons: Personalize your apps with custom icons by @xuzuodong in #7196.
-
OpenAI Structured Outputs Support: Now supporting OpenAI's Structured Outputs by @hjlarry in #7258.
-
Dify Sandbox v0.2.6: Install any Python package you want by @Yeuoly in #7410.
🧠 Model Updates
🛠️ New Tools
- Jina Tokenizer Tool: Added a new tokenizer tool by @hjlarry in #7375.
- GitLab Tool: Integrated GitLab tool by @wlrnet in #7329.
⚙️ Enhancements
- Xinference Auth System: Enhanced support for Xinference's authentication system by @ethan-fly in #7369.
- Ruff Formatter: Introduced Ruff Formatter for better code formatting by @laipz8200 in #7291.
- Ruff Update: Updated Ruff from 0.5.x to 0.6.x by @bowenliang123 in #7384.
- Rearranged API Python Dependencies by @bowenliang123 in #7391
🛠️ Bug Fixes
- Rerank Mode Fix: Fixed missing rerank_mode when converting to DatasetEntity by @optionals in #7269.
- Tool Test Modal: Fixed issue where parameters couldn’t be input in tool test modal by @wellCh4n in #7281.
- Markdown Conversion: Fixed file to markdown conversion issue by @laipz8200 in #7293.
- Image Resizing: Dify editor now supports image resizing by @crazywoola in #7296.
- Conversation Variables: Added conversation variables in app DSL service by @laipz8200 in #7304.
- Node and Edge Issues: Fixed inability to add node and change the edge by @aixgeek in #7303.
- Default Values: Fixed missing default value of type array object in conversation variable modal by @JzoNgKVO in #7309.
- Elasticsearch Docker Env: Fixed docker environment for Elasticsearch by @QIN2DIM in #7270.
- Run History: Corrected iteration times number in run history by @iamjoel in #7318.
- Keywords Fix: Fixed keywords issue by @crazywoola in #7357.
- Workflow Variables: Added conversation variable to workflow by @laipz8200 in #7257.
🌐 Internationalization
- Japanese Translation: Added JP translation for variable aggregator by @HanqingZ in #7277.
- Fixes in Japanese Translations: Corrected translations of secret values by @yukyu30 in #7279.
- General i18n Updates: Various internationalization updates by @ZuzooVn in #7312.
That’s all for this release! As always, thank you for your contributions and feedback. Keep building and innovating!
Upgrade Guide
Docker compose deployments
Warning
The docker-compose.yaml
has been refactored. If you've made any changes to the file, make sure to check out the "Upgrade to new docker compose deployment" section above for usage and migration tips.
-
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 main branch:
git checkout main git pull origin main
-
Update Python dependencies:
cd api poetry install
-
Then, let's run the migration script:
poetry shell flask db upgrade
-
Finally, run API server, Worker and Web frontend Server again.
What's Changed
- fix: missed rerank_mode when convert to DatasetEntity by @optionals in #7269
- fix: typo in upstage/llm/_position.yaml by @GareArc in #7286
- fix ja-JP translation of secret values by @yukyu30 in #7279
- fix: #7222 docstrings by @ZuzooVn in #7276
- Add jp translation for variable aggregator by @HanqingZ in #7277
- fix: can not input param value in tool test modal by @wellCh4n in #7281
- feat(api/workflow): Add
Conversation.dialogue_count
by @laipz8200 in #7275 - feat: add chatgpt-4o-latest by @hjlarry in #7289
- feat: support OPENAI json_schema by @hjlarry in #7258
- chore(api/core): Improve FileVar's type hint and imports. by @laipz8200 in #7290
- chore(api): Introduce Ruff Formatter. by @laipz8200 in #7291
- feat: support pinning, including, and excluding for Model Providers and Tools by @GareArc in #7283
- fix(api/core/app/segments/segments.py): Fix file to markdown. by @laipz8200 in #7293
- Feat/7023 dify editor can resize the image by @crazywoola in #7296
- fix(api/services/app_dsl_service.py): Add conversation variables. by @laipz8200 in #7304
- fix: inability-to-add-node-and-change-the-edge by @aixgeek in #7303
- Fix: missing default value of type array object in conversation variable modal by @JzoNgKVO in #7309
- chore(api/libs): Apply ruff format. by @laipz8200 in #7301
- fix(elasticsearch): docker env by @QIN2DIM in #7270
- chore: #7222 i18n by @ZuzooVn in #7312
- fix: null annotation by @ZuzooVn in #7313
- add some api to DifyClient by @lingfengchencn in #7314
- chore: delete unused resources POSTGRES_MAX_CONNECTIONS by @ZuzooVn in #7315
- Update PerfXCloud Model List by @BingGeX in #7212
- fix error when use farui-plus model by @oiuv in #7316
- fix editor auth by @cuckootan in #7297
- fix: not show correct iteration times number in run history by @iamjoel in #7318
- enh:setfocus after voice input by @leslie2046 in #7317
- Revert "feat: support pinning, including, and excluding for Model Providers and Tools" by @GareArc in #7324
- chore(api/libs/bearer_data_source.py): Remove expired fie. by @laipz8200 in #7300
- feat: show path variable friendly in tool edit by @wellCh4n in #7344
- chore: update docstrings by @ZuzooVn in #7343
- feat: tools/gitlab by @wlrnet in #7329
- add workflowClient ,fix rename bug by @lingfengchencn in #7352
- feat: support siliconflow rerank by @Weaxs in #7337
- fix: keywords by @crazywoola in #7357
- add base url for moonshot model by @oiuv in #7360
- fix(api/services/workflow/workflow_converter.py): Add converrsation variable to workflow. by @laipz8200 in #7257
- chore: add LOG_FILE to docker-compose by @ZuzooVn in #7372
- chore: optimize ark model parameters by @sinomoe in #7378
- feat(api): support wenxin text embedding by @CheneyYin in #7377
- feat: add jina tokenizer tool by @hjlarry in #7375
- feat: custom app icon by @xuzuodong in #7196
- chore: update ruff from 0.5.x to 0.6.x by @bowenliang123 in #7384
- feat: support xinference's auth system by @ethan-fly in #7369
- chore: rearrange api python dependencies by @bowenliang123 in #7391
- Feat: shortcut hook by @YIXIAO0 in #7385
- fix:start of the period should be YYYY-MM-DD 00:00 by @leslie2046 in #7371
- fix(api/core/model_runtime/model_providers/__base/large_language_model.py): Add TEXT type checker by @laipz8200 in #7407
- feat: OpenRouter add gpt-4o-2024-08-06 model by @XiaoLey in #7409
- add CrossRef builtin tool: doi query and title query by @Sakura4036 in #7406
- upgrade: sandbox to 0.2.5 by @Yeuoly in #7410
- chore(*): Bump version 0.7.1 by @laipz8200 in #7389
New Contributors
- @optionals made their first contribution in #7269
- @GareArc made their first contribution in #7286
- @yukyu30 made their first contribution in #7279
- @wellCh4n made their first contribution in #7281
- @BingGeX made their first contribution in #7212
- @CheneyYin made their first contribution in #7377
- @ethan-fly made their first contribution in #7369
Full Changelog: 0.7.0...0.7.1