dify/api/core/tools
guogeer 971defbbbd
Some checks are pending
Build and Push API & Web / build (api, DIFY_API_IMAGE_NAME, linux/amd64, build-api-amd64) (push) Waiting to run
Build and Push API & Web / build (api, DIFY_API_IMAGE_NAME, linux/arm64, build-api-arm64) (push) Waiting to run
Build and Push API & Web / build (web, DIFY_WEB_IMAGE_NAME, linux/amd64, build-web-amd64) (push) Waiting to run
Build and Push API & Web / build (web, DIFY_WEB_IMAGE_NAME, linux/arm64, build-web-arm64) (push) Waiting to run
Build and Push API & Web / create-manifest (api, DIFY_API_IMAGE_NAME, merge-api-images) (push) Blocked by required conditions
Build and Push API & Web / create-manifest (web, DIFY_WEB_IMAGE_NAME, merge-web-images) (push) Blocked by required conditions
fix: buitin tool aippt (#10234)
Co-authored-by: jinqi.guo <jinqi.guo@ubtrobot.com>
2024-11-04 18:46:39 +08:00
..
docs docs: Add Japanese documentation for tools (#8469) 2024-09-22 09:04:00 +08:00
entities fix(tools): remove the undefined variable parameter_type (#9908) 2024-10-27 11:56:29 +08:00
provider fix: buitin tool aippt (#10234) 2024-11-04 18:46:39 +08:00
tool feat/enhance the multi-modal support (#8818) 2024-10-21 10:43:49 +08:00
utils feat(Tools): Refactor the base table plugin (#9182) 2024-10-22 21:31:34 +08:00
__init__.py improve: generalize tool parameter converter (#4786) 2024-06-03 21:26:58 +08:00
errors.py chore(api/core): apply ruff reformatting (#7624) 2024-09-10 17:00:20 +08:00
README_CN.md docs: Add Japanese documentation for tools (#8469) 2024-09-22 09:04:00 +08:00
README_JP.md docs: Add Japanese documentation for tools (#8469) 2024-09-22 09:04:00 +08:00
README.md docs: Add Japanese documentation for tools (#8469) 2024-09-22 09:04:00 +08:00
tool_engine.py feat/enhance the multi-modal support (#8818) 2024-10-21 10:43:49 +08:00
tool_file_manager.py feat/enhance the multi-modal support (#8818) 2024-10-21 10:43:49 +08:00
tool_label_manager.py chore(api/core): apply ruff reformatting (#7624) 2024-09-10 17:00:20 +08:00
tool_manager.py improve: significantly speed up the server launching time by async preloading tool providers (#9146) 2024-10-31 00:21:01 +08:00

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.