-LAN- 8978a6a3ff fix: remove unused credential validation logic in VectorizerProvider (#12000) 4 months ago
..
docs a587f0d3f1 docs: Add Japanese documentation for tools (#8469) 7 months ago
entities 6c8e208ef3 chore: bump minimum supported Python version to 3.11 (#10386) 5 months ago
provider 8978a6a3ff fix: remove unused credential validation logic in VectorizerProvider (#12000) 4 months ago
tool 9ee9e9c6de fix: self.method should method in api_tool.py (#11926) 4 months ago
utils 0067b16d1e fix: refactor all 'or []' and 'or {}' logic to make code more clear (#10883) 5 months ago
README.md a587f0d3f1 docs: Add Japanese documentation for tools (#8469) 7 months ago
README_CN.md a587f0d3f1 docs: Add Japanese documentation for tools (#8469) 7 months ago
README_JA.md f0c0ce9db1 fix: rename README filename: Japanese language code is 'JA' (#11651) 4 months ago
__init__.py 3542d55e67 improve: generalize tool parameter converter (#4786) 10 months ago
errors.py 2cf1187b32 chore(api/core): apply ruff reformatting (#7624) 7 months ago
tool_engine.py 87c831e5dd make tool parameters parsing compatible with the response of glm4 model in xinference provider when function tool call integerated (#11049) 5 months ago
tool_file_manager.py 90323cd355 fix(tool_file_manager): raise ValueError when get timeout (#11928) 4 months ago
tool_label_manager.py 2cf1187b32 chore(api/core): apply ruff reformatting (#7624) 7 months ago
tool_manager.py 51db59622c chore(lint): cleanup repeated cause exception in logging.exception replaced by helpful message (#10425) 5 months ago

README.md

Tools

This module implements built-in tools used in Agent Assistants and Workflows within Dify. You could define and display your own tools in this module, without modifying the frontend logic. This decoupling allows for easier horizontal scaling of Dify's capabilities.

Feature Introduction

The tools provided for Agents and Workflows are currently divided into two categories:

  • Built-in Tools are internally implemented within our product and are hardcoded for use in Agents and Workflows.
  • Api-Based Tools leverage third-party APIs for implementation. You don't need to code to integrate these -- simply provide interface definitions in formats like OpenAPI , Swagger, or the OpenAI-plugin on the front-end.

Built-in Tool Providers

Alt text

API Tool Providers

Alt text

Tool Integration

To enable developers to build flexible and powerful tools, we provide two guides:

Quick Integration 👈🏻

Quick integration aims at quickly getting you up to speed with tool integration by walking over an example Google Search tool.

Advanced Integration 👈🏻

Advanced integration will offer a deeper dive into the module interfaces, and explain how to implement more complex capabilities, such as generating images, combining multiple tools, and managing the flow of parameters, images, and files between different tools.