dify

Dify is an open-source LLM app development platform. Dify's intuitive interface combines AI workflow, RAG pipeline, agent capabilities, model management, observability features and more, letting you quickly go from prototype to production.

OTHER License

Downloads
2.8K
Stars
47.4K
Committers
431

Bot releases are hidden (Show)

dify - v0.6.10

Published by takatost 5 months ago

✨ What’s New in v0.6.10? ✨

This update primarily focuses on enhancing system stability and improving user experience. Key updates include:

🚀 New Features

  • Workflow Variable Aggregator: Now supports grouping by @zxhlyh in #4811.
  • Document Rename Support: You can now rename documents in datasets by @iamjoel in #4732 and @JohnJyong in #4915.
  • Instruction in Classifier Node: Added support for using variables in instructions by @iamjoel in #4710 and @JohnJyong in #4913.
  • Tool Tags: You can now define tags in tool YAML files by @Yeuoly in #4763.
  • NVIDIA NIM: Added support for NVIDIA NIM by @joshua20231026 in #4882.
  • Anthropic Claude3 Models: Added to Google Cloud Vertex AI by @hellof20 in #4870.
  • Baichuan Model Support: Added support for Baichuan3 Turbo, Baichuan3 Turbo 128k, and Baichuan4 by @xielong in #4762.
  • Ernie Model Update: Updated the Ernie model by @Weaxs in #4756.
  • Vanna.AI Tool: Added Vanna.AI as a built-in tool by @luxmus in #4878.
  • SearchApi Tools: Added new SearchApi tools by @SebastjanPrachovskij in #4648.
  • Opportunistic TLS for SMTP: Added a flag for opportunistic TLS in SMTP by @chazzhou in #4794.
  • Ollama Keep Alive: Added a keep-alive parameter for Ollama by @Yash-1511 in #4655.
  • Model Load Balancing: Added support for load balancing backend models by @takatost in #4927 and @nite-knite in #4926.

⚙️ Enhancements

  • SD-WebUI API Update: Updated API parameters to v1.9.3 by @lingfengchencn in #4798.
  • Pandas Upgrade: Bumped pandas from 1.x to 2.x by @bowenliang123 in #4820.
  • Question Classify Node: Now supports using variables in instructions by @iamjoel in #4710.

For additional enhancements and updates, refer to the What's Changed section below.

Update Guide

Docker compose deployments:

  1. Get the latest code from the main branch:

    git checkout main
    git pull origin main
    
  2. Go to the next step and update to the latest image:

    cd docker
    docker compose up -d
    

Source Code deployments:

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

  2. Get the latest code from the main branch:

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

    cd api
    pip install -r requirements.txt
    
  4. Then, let's run the migration script:

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

What's Changed

New Contributors

Full Changelog: https://github.com/langgenius/dify/compare/0.6.9...0.6.10

dify - v0.6.9 Workflow as Tool

Published by takatost 5 months ago

✨ Dify v0.6.9 has landed! ✨

We’ve been working on enhancing our workflow capabilities lately. Today we’ve got some news:

☄️ Publish workflow as a tool

You can now publish your AI workflow in Dify as a reusable tool. This allows for integration with new agents and other workflows, eliminating redundant efforts.

https://github.com/langgenius/dify/assets/5485478/3e9a237a-2340-4cb1-a4a6-0b7a396a810c

🧩 Two new workflow nodes and one node improvement

🔄 Iteration

Make sure the input is an array. Each item in the array will be processed sequentially by the iteration node until all items are addressed. For instance, if you require a lengthy article, simply input several headlines. This will result in an article containing a paragraph for each headline, freeing you from the need for complex prompt orchestration.

💥 Parameter Extractor

Uses LLM to extract structured parameters from natural language, making tool use and HTTP requests in workflows a breeze.

🔗 Variable Aggregator

Improved Variable Assigner supports more flexible variable selection. Additionally, the user experience is enhanced by improving the way node connections are made.

🖼️ Brand new tool management page

We’ve updated our UI to be more intuitive and easier to use, with improved classification.

🚀 Other New Features

  • GPT-4o for Azure: Added support for GPT-4o on Azure by @leslie2046 in #4568.
  • Vertex AI Support: Added support for Vertex AI by @patryk20120 in #4586 and @miendinh in #4641.
  • Gemini Flash: Added Gemini Flash by @QuietRocket in #4616.
  • Doubao LLM and Embedding Models: Added support for Doubao LLM and embedding models by @sinomoe in #4431.
  • Amazon Titan V2: Added support for Amazon Titan V2 and updated pricing for Titan V1 by @longzhihun in #4643.
  • Ernie-Character-8k of Wenxin: New LLM Ernie-Character-8k added by @jiaqianjing in #4448.
  • Claude Stream Tool Call: Enhanced Claude stream tool call by @Yeuoly in #4469.
  • Chat Custom Disclaimer: You can add custom disclaimers in WebApp by @patryk20120 in #4306.
  • MiniMax Mode Sensitive Info Masking: Added parameter config for masking sensitive info in MiniMax mode by @zhangever in #4294.
  • Jina Search & Reader CSS Selectors: Added CSS selectors for Jina Search & Reader by @rennokki in #4523.
  • Images and Tables Extraction from DOCX: Now supports extracting images and tables from DOCX files by @JohnJyong in #4619.

⚙️ Enhancements

  • RAG Document Segmentation: Configurable max segmentation tokens length for RAG documents using an environment variable by @rainchen in #4375.
  • WORKFLOW_MAX_EXECUTION_TIME: Added environment variable for max workflow execution time by @majian159 in #4632.
  • Image Preview URL expire Env Variable: Added environment variable for time signature of image preview url by @patryk20120 in #4650.

🛠️ Bug Fixes

  • General Fixes: Various bug fixes and improvements to enhance stability and performance.

For additional enhancements and updates, refer to the What's Changed section below.

Update Guide

Docker compose deployments:

  1. Get the latest code from the main branch:

    git checkout main
    git pull origin main
    
  2. Go to the next step and update to the latest image:

    cd docker
    docker compose up -d
    

Source Code deployments:

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

  2. Get the latest code from the main branch:

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

    cd api
    pip install -r requirements.txt
    
  4. Then, let's run the migration script:

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

What's Changed

New Contributors

Full Changelog: https://github.com/langgenius/dify/compare/0.6.8...0.6.9

dify - v0.6.8 GPT-4o is available now in Dify

Published by takatost 5 months ago

✨ What’s New in v0.6.8? ✨

Hey folks, we've rolled out version 0.6.8 of our platform and it's packed with some new features, enhancements, and fixes. Here’s a quick rundown of what’s new:

🚀 New Features

  • Introduced OpenAI GPT-4o by @Yeuoly in #4346.

  • Introduced GPT-4 Turbo for Azure by @leslie2046 in #4287.

  • New models hosted on NVIDIA added by @joshua20231026 in #4303.

  • Add LocalAI rerank model support by @thiner in #3952.

  • Added Jinja2 template prompt support for LLM node by @Yeuoly in #3968 and @iamjoel in #4260.

  • Code node with upgraded network support and additional Python dependencies by @Yeuoly in #4231.

    And we also removed the need for SYS_ADMIN permission for the sandbox service.

  • Added support for Google Storage by @KiyotakaMatsushita in #4266.

  • Vector DB PGVector integration by @vaayne in #3879.

  • Korean language support (ko-KR) by @qkdxorjs1002 in #4333.

⚙️ Enhancements

  • Optimized workflow graph sync by @takatost in #4251 and @zxhlyh in #4250.

    Now, you won't lose any workflow graph data when switching between multiple tabs in the browser. It's instantly synced to the latest draft version!

  • Hide node detail outputs and run details in web apps to streamline interfaces by @takatost in #3954 and @iamjoel in #4289.

    Before, the tracing of the workflow might expose the log details of the nodes to the end-users, now we have disabled it.

  • Increased max steps to 50 in workflows by @takatost in #4252.

  • Question classifier prompt optimization for better accuracy by @JohnJyong in #4262.

    After optimization, the classification results will be more accurate.

  • Optimized install form for better user experience by @TinsFox in #4154.

🛠️ Bug Fixes

  • Fixed workflow zoom in/out shortcuts by @zxhlyh in #4283.
  • Addressed an issue where web apps did not show number type input fields by @iamjoel in #4292.

For additional enhancements and updates, refer to the What's Changed section below.

Update Guide

Docker compose deployments:

  1. Get the latest code from the main branch:

    git checkout main
    git pull origin main
    
  2. Go to the next step and update to the latest image:

    cd docker
    docker compose up -d
    

Source Code deployments:

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

  2. Get the latest code from the main branch:

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

    cd api
    pip install -r requirements.txt
    
  4. Then, let's run the migration script:

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

What's Changed

New Contributors

Full Changelog: https://github.com/langgenius/dify/compare/0.6.7...0.6.8

dify - v0.6.7

Published by takatost 5 months ago

✨ What’s New in v0.6.7? ✨

The latest update, v0.6.7, continues to refine and expand our features with an emphasis on integrations and accessibility. Key updates include:

🚀 New Features

  • Integrate DeepSeek Models by both @joshua20231026 and @soulteary in #4157 and #4162

  • Integrate LeptonAI Models by @joshua20231026 in #4079

  • New model support from Azure OpenAI for the GPT-4-turbo-2024-04-09 model by @charli117 in #4144

  • Integrate Volcengine MaaS model provider by @sinomoe in #4142

  • Update to bedrock.yaml adds the Asia Pacific (Sydney) region by @chenx5 in #4016

  • LocalAI speech-to-text support by @Tomywang999 in #3921.

  • Added support for vision models from xinference by @Minamiyama in #4094.

  • A new built-in tool for Slack Incoming Webhook by @ericyangpan in #4067

  • Support for Aliyun OSS authentication V4 by @S96EA in #3886

  • Added support for Polish (pl-PL) by @patryk20120 in #4128

⚙️ Enhancements

  • Integration of OpenAI usage in streaming response by @Yeuoly in #4140

  • New HTTP node settings allow for increased maximum size environments by @Yeuoly in #4137

  • Improved Japanese translations make our platform more accessible to Japanese speakers by @Fyphen1223 in #4119.

  • Support for time formats in code sandbox by @Yeuoly in #4138

  • Update to model_provider jina to support custom URLs and models by @VoidIsVoid in #4110

  • Added BaseURL configuration for the Cohere model by @huangbaichao in #4152

  • Improved testing of the CodeExecutor with code templates and extracted CodeLanguage enum for better development practices by @bowenliang123 in #4098

🛠️ Bug Fixes

  • Fixed the HTTP node timeout and URL checks in workflows to ensure smoother operations and reliability by @zxhlyh in #4175.

For additional enhancements and updates, refer to the What's Changed section below.

Update Guide

Docker compose deployments:

  1. Get the latest code from the main branch:

    git checkout main
    git pull origin main
    
  2. Go to the next step and update to the latest image:

    cd docker
    docker compose up -d
    

Source Code deployments:

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

  2. Get the latest code from the main branch:

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

    cd api
    pip install -r requirements.txt
    
  4. Then, let's run the migration script:

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

What's Changed

New Contributors

Full Changelog: https://github.com/langgenius/dify/compare/0.6.6...0.6.7

dify - v0.6.6

Published by takatost 6 months ago

✨ 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

  • Minimax abab6.5, abab6.5s support by @Weaxs in #4012

  • VectorDB PGVecto_rs support and SQLAlchemy upgrade to 2.x by @JohnJyong in #3833

  • Storage gcs support by @miendinh in #3887

  • 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:

  1. Get the latest code from the main branch:

    git checkout main
    git pull origin main
    
  2. Go to the next step and update to the latest image:

    cd docker
    docker compose up -d
    

Source Code deployments:

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

  2. Get the latest code from the main branch:

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

    cd api
    pip install -r requirements.txt
    
  4. Then, let's run the migration script:

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

What's Changed

New Contributors

Full Changelog: https://github.com/langgenius/dify/compare/0.6.5...0.6.6

dify - v0.6.5

Published by takatost 6 months ago

✨ 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 Groq Llama3 by @guchenhe in #3673.

  • 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 and user_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:

  1. Get the latest code from the main branch:

    git checkout main
    git pull origin main
    
  2. Go to the next step and update to the latest image:

    cd docker
    docker compose up -d
    

Source Code deployments:

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

  2. Get the latest code from the main branch:

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

    cd api
    pip install -r requirements.txt
    
  4. Then, let's run the migration script:

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

What's Changed

New Contributors

Full Changelog: https://github.com/langgenius/dify/compare/0.6.4...0.6.5

dify - v0.6.4

Published by takatost 6 months ago

✨ 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:

  1. Get the latest code from the main branch:

    git checkout main
    git pull origin main
    
  2. Go to the next step and update to the latest image:

    cd docker
    docker compose up -d
    

Source Code deployments:

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

  2. Get the latest code from the main branch:

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

    cd api
    pip install -r requirements.txt
    
  4. Then, let's run the migration script:

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

What's Changed

New Contributors

Full Changelog: https://github.com/langgenius/dify/compare/0.6.3...0.6.4

dify - v0.6.3

Published by takatost 6 months ago

✨ 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, add function 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:

  1. Get the latest code from the main branch:

    git checkout main
    git pull origin main
    
  2. Go to the next step and update to the latest image:

    cd docker
    docker compose up -d
    

Source Code deployments:

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

  2. Get the latest code from the main branch:

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

    cd api
    pip install --upgrade -r requirements.txt
    
  4. Then, let's run the migration script:

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

What's Changed

New Contributors

Full Changelog: https://github.com/langgenius/dify/compare/0.6.2...0.6.3

dify - v0.6.2 EMERGENCY FIX

Published by takatost 6 months ago

[!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:

  1. Get the latest code from the main branch:

    git checkout main
    git pull origin main
    
  2. Go to the next step and update to the latest image:

    cd docker
    docker compose up -d
    

Source Code deployments:

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

  2. Get the latest code from the main branch:

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

    cd api
    pip install -r requirements.txt
    
  4. Then, let's run the migration script:

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

What's Changed

New Contributors

Full Changelog: https://github.com/langgenius/dify/compare/0.6.1...0.6.2

dify - v0.6.1

Published by takatost 6 months ago

✨ 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:

  1. Get the latest code from the main branch:

    git checkout main
    git pull origin main
    
  2. Go to the next step and update to the latest image:

    cd docker
    docker compose up -d
    

Source Code deployments:

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

  2. Get the latest code from the main branch:

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

    cd api
    pip install -r requirements.txt
    
  4. Then, let's run the migration script:

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

What's Changed

New Contributors

Full Changelog: https://github.com/langgenius/dify/compare/0.6.0-fix1...0.6.1

dify - v0.6.0-fix1

Published by takatost 6 months ago

[!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.
    image

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

    image

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.

    • Basic / Expert mode Chatbot apps → Chatflow

    • Text Generator → Workflow

      image

  • 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:

  1. Get the latest code from the main branch:

    git checkout main
    git pull origin main
    
  2. Go to the next step and update to the latest image:

    cd docker
    docker compose up -d
    
  3. 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:

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

  2. Get the latest code from the main branch:

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

    cd api
    pip install -r requirements.txt
    
  4. Then, let's run the migration script:

    flask db upgrade
    
  5. We also moved the agent data within the database, Execute the below script to complete the migrate: (NEW)

    flask convert-to-agent-apps
    
  6. Finally, run API server, Worker and Web frontend Server again.

What's Changed

Full Changelog: https://github.com/langgenius/dify/compare/0.6.0...0.6.0-fix1

dify - v0.6.0

Published by takatost 6 months ago

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

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

    image

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.

    • Basic / Expert mode Chatbot apps → Chatflow

    • Text Generator → Workflow

      image

  • 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:

  1. Get the latest code from the main branch:

    git checkout main
    git pull origin main
    
  2. Go to the next step and update to the latest image:

    cd docker
    docker compose up -d
    
  3. 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:

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

  2. Get the latest code from the main branch:

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

    cd api
    pip install -r requirements.txt
    
  4. Then, let's run the migration script:

    flask db upgrade
    
  5. We also moved the agent data within the database, Execute the below script to complete the migrate: (NEW)

    flask convert-to-agent-apps
    
  6. Finally, run API server, Worker and Web frontend Server again.

What's Changed

New Contributors

Full Changelog: https://github.com/langgenius/dify/compare/0.5.11-fix1...0.6.0

dify - v0.6.0-preview-workflow.2

Published by takatost 7 months ago

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:

  1. Get the latest code from the feat/workflow branch:

    git fetch --tags
    git checkout 0.6.0-preview-workflow.2
    
  2. Go to the next step and update to the latest image:

    cd docker
    docker-compose up -d
    

Deploying from Source Code:

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

  2. Get the latest code from the feat/workflow branch:

    git fetch --tags
    git checkout 0.6.0-preview-workflow.2
    
  3. Update Python dependencies:

    cd api
    pip install -r requirements.txt
    
  4. Then, let's run the migration script:

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

dify - v0.5.11-fix1

Published by takatost 7 months ago

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:

  1. Get the latest code from the main branch:

    git checkout main
    git pull origin main
    
  2. Go to the next step and update to the latest image:

    cd docker
    docker-compose up -d
    

Deploying from Source Code:

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

  2. Get the latest code from the main branch:

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

    cd api
    pip install -r requirements.txt
    
  4. Then, let's run the migration script:

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

What's Changed

New Contributors

Full Changelog: https://github.com/langgenius/dify/compare/0.5.11...0.5.11-fix1

dify - v0.5.11

Published by takatost 7 months ago

New Features

  • Add azure blob storage support by @JohnJyong in #2919
  • Add NVIDIA triton-inference-server by @Yeuoly in #2928
  • Support new reranker [jina-colbert-v1-en] by @rickythink in #2975
  • Add New Tool: DevDocs by @richards199999 in #2993
  • Add New Tool: StackExchange by @richards199999 in #3034
  • Add S3_ADDRESS_STYLE configuration option by @LeoQuote in #2934
  • Update nginx and docker-compose files to support HTTPS. by @Kennytian in #2940
  • Update wenxin llm by @Weaxs in #2929
  • Support mutil-thread document embedding by @JohnJyong in #3016
  • Fix some problems.

Update Guide

Deploying with Docker Compose:

  1. Get the latest code from the main branch:

    git checkout main
    git pull origin main
    
  2. Go to the next step and update to the latest image:

    cd docker
    docker-compose up -d
    

Deploying from Source Code:

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

  2. Get the latest code from the main branch:

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

    cd api
    pip install -r requirements.txt
    
  4. Then, let's run the migration script:

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

What's Changed

New Contributors

Full Changelog: https://github.com/langgenius/dify/compare/0.5.10...0.5.11

dify - v0.6.0-preview-workflow.1

Published by takatost 7 months ago

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.

TL;DR

  • Introduced two new App types: Chatflow and Workflow.
  • The creation entry for the Chatbot Expert Mode has been removed, with support provided for migration to Chatflow apps.
  • Chatbots can now be migrated to Chatflow apps, and Text Generation apps can be migrated to Workflow apps.

Update Guide

Deploying with Docker Compose:

  1. Get the latest code from the feat/workflow branch:

    git fetch --tags
    git checkout 0.6.0-preview-workflow.1
    
  2. Go to the next step and update to the latest image:

    cd docker
    docker-compose up -d
    

Deploying from Source Code:

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

  2. Get the latest code from the feat/workflow branch:

    git fetch --tags
    git checkout 0.6.0-preview-workflow.1
    
  3. Update Python dependencies:

    cd api
    pip install -r requirements.txt
    
  4. Then, let's run the migration script:

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

dify - v0.5.10

Published by takatost 7 months ago

New Features

  • Added Anthripic claude-3-haiku-20240307 by @lroolle #2825
  • Added weekday calculator in time tool by @bowenliang123 in #2822
  • Added model provider 01.ai, yi-chat-34b series by @soulteary in #2865
  • Added Embedding models for the Aliyun dashscope text-embedding-v1 and text-embedding-v2 by @Onelevenvy in #2874
  • Added tools for open weather search and image generation using the Spark API. by @Onelevenvy in #2845
  • Added AWS Bedrock Claude3 by @soulteary in #2864
  • Added support Azure OpenAI llm 0125 version by @leslie2046 in #2889
  • Added NVIDIA model provider by @joshua20231026 in #2900
  • Fix some problems.

Update Guide

Deploying with Docker Compose:

  1. Get the latest code from the main branch:

    git checkout main
    git pull origin main
    
  2. Go to the next step and update to the latest image:

    cd docker
    docker-compose up -d
    

Deploying from Source Code:

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

  2. Get the latest code from the main branch:

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

    cd api
    pip install -r requirements.txt
    
  4. Then, let's run the migration script:

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

What's Changed

New Contributors

Full Changelog: https://github.com/langgenius/dify/compare/0.5.9...0.5.10

dify - v0.5.9

Published by takatost 7 months ago

New Features

  • Supported Groq LLM by @Yeuoly #2733
  • Supported Azure OpenAI Embedding v3 models by @Tuccuay #2758
  • Supported Azure Whisper model by @leslie2046 #2732
  • Supported Azure TTS by @leslie2046 #2751
  • OpenAI compatible API provider supported function calling by @JohnJyong #2783
  • Added tavily tool for searching by @Yash-1511 #2681
  • Added QR code generation tool by @bowenliang123 #2699
  • Added Twilio tool for sending text and WhatsApp messages by @Yash-1511 #2700
  • Added DingTalk(钉钉) tool for sending messages to chat group bot via webhook by @bowenliang123 #2693
  • Added AIPPT tool by @Yeuoly #2725
  • Optimized database connection when LLM invoking, avoid occupying database connection pool connections for a long time in LLM reasoning by @takatost #2774

Update Guide

Deploying with Docker Compose:

  1. Get the latest code from the main branch:

    git checkout main
    git pull origin main
    
  2. Go to the next step and update to the latest image:

    cd docker
    docker-compose up -d
    

Deploying from Source Code:

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

  2. Get the latest code from the main branch:

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

    cd api
    pip install -r requirements.txt
    
  4. Then, let's run the migration script:

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

What's Changed

New Contributors

Full Changelog: https://github.com/langgenius/dify/compare/0.5.8...0.5.9

dify - v0.5.8

Published by takatost 8 months ago

New Features

  • Added Anthropic claude-3 LLM with Vision #2684
  • Added jina-reranker-v1-base-en rerank model #2676
  • Added Wecom(企业微信) tool for sending message to chat group bot via webhook by @bowenliang123 #2638
  • Added PubMed to tools #2652
  • Added arxiv tool for searching scientific papers and articles from Arxiv by @Yash-1511 #2632

Update Guide

Deploying with Docker Compose:

  1. Get the latest code from the main branch:

    git checkout main
    git pull origin main
    
  2. Go to the next step and update to the latest image:

    cd docker
    docker-compose up -d
    

Deploying from Source Code:

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

  2. Get the latest code from the main branch:

    git checkout main
    git pull origin main
    
  3. Then, let's run the migration script:

    cd api
    flask db upgrade
    

    Note: To use TTS, ffmpeg installation is required on servers running Dify API from source. More details can be found in our FAQ.

  4. Finally, run API server, Worker and Web frontend Server again.

What's Changed

New Contributors

Full Changelog: https://github.com/langgenius/dify/compare/0.5.7...0.5.8

dify - v0.5.7

Published by takatost 8 months ago

New Features

  • Added Mistral AI model provider. #2594
  • Added Vector Database migrate tool, see below. #2562
  • Added response format(JSON/XML) for google, anthropic, openai, wenxin, chatglm, tongyi LLMs. #2563
  • Refactor RAG(knowledge) module, remove dependency on langchain to increase scalability and flexibility. #2528
  • Agent App utilizing an LLM with ReACT mode (not support function calling), supports streaming output. #2498
  • Added DuckDuckGo Search Tool for Enhanced Privacy-Focused Search Functionality by @Yash-1511 #2499

Vector Database Migrate Tool

When you want to switch to another vector database, you can deactivate or delete the original vector database after switching.

How to use

Step:

  1. If you are starting from local source code, modify the environment variable in the .env file to the vector database you want to migrate to.
    For example:
VECTOR_STORE=qdrant
  1. If you are starting from docker compose, modify the environment variable in the docker-compose.yaml file to the vector database you want to migrate to, both api and worker are all needed.

For example:

# The type of vector store to use. Supported values are `weaviate`, `qdrant`, `milvus`.
VECTOR_STORE: qdrant
  1. run the below command in your terminal or docker container
flask vdb-migrarte

Update Guide

Deploying with Docker Compose:

  1. Get the latest code from the main branch:

    git checkout main
    git pull origin main
    
  2. Go to the next step and update to the latest image:

    cd docker
    docker-compose up -d
    

Deploying from Source Code:

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

  2. Get the latest code from the main branch:

    git checkout main
    git pull origin main
    
  3. Then, let's run the migration script:

    cd api
    flask db upgrade
    

    Note: To use TTS, ffmpeg installation is required on servers running Dify API from source. More details can be found in our FAQ.

  4. Finally, run API server, Worker and Web frontend Server again.

What's Changed

New Contributors

Full Changelog: https://github.com/langgenius/dify/compare/0.5.6...0.5.7