From c9b792f3b9fcaefe116182740287285c3e6c7a7b Mon Sep 17 00:00:00 2001 From: jiazeng Date: Wed, 25 Oct 2023 11:05:30 +0800 Subject: [PATCH] change tool name draft draft udpate --- .../develop-a-tool/create-custom-llm-tool.md | 64 ++++++++++++++++++ docs/how-to-guides/develop-a-tool/index.md | 2 +- .../develop-a-tool/use-custom-llm-tool.md | 52 -------------- .../develop-a-tool/use_custom_llm_tool.png | Bin 0 -> 62444 bytes .../use_prompt_template_in_flow.png | Bin 71989 -> 0 bytes ...owcase.py => tool_with_custom_llm_type.py} | 2 +- .../yamls/custom_llm_tool_showcase.yaml | 10 --- .../yamls/tool_with_custom_llm_type.yaml | 10 +++ ...e.py => test_tool_with_custom_llm_type.py} | 6 +- 9 files changed, 79 insertions(+), 67 deletions(-) create mode 100644 docs/how-to-guides/develop-a-tool/create-custom-llm-tool.md delete mode 100644 docs/how-to-guides/develop-a-tool/use-custom-llm-tool.md create mode 100644 docs/media/how-to-guides/develop-a-tool/use_custom_llm_tool.png delete mode 100644 docs/media/how-to-guides/develop-a-tool/use_prompt_template_in_flow.png rename examples/tools/tool-package-quickstart/my_tool_package/tools/{custom_llm_tool_showcase.py => tool_with_custom_llm_type.py} (96%) delete mode 100644 examples/tools/tool-package-quickstart/my_tool_package/yamls/custom_llm_tool_showcase.yaml create mode 100644 examples/tools/tool-package-quickstart/my_tool_package/yamls/tool_with_custom_llm_type.yaml rename examples/tools/tool-package-quickstart/tests/{test_custom_llm_tool_showcase.py => test_tool_with_custom_llm_type.py} (76%) diff --git a/docs/how-to-guides/develop-a-tool/create-custom-llm-tool.md b/docs/how-to-guides/develop-a-tool/create-custom-llm-tool.md new file mode 100644 index 000000000000..5e11d8a69e47 --- /dev/null +++ b/docs/how-to-guides/develop-a-tool/create-custom-llm-tool.md @@ -0,0 +1,64 @@ +# Create Custom LLM Tool +In this document, we will guide you through the process of developing a tool with `custom_llm` type which can connect to a customized large language model with prompt. + +Custom LLM is a fine-tuned large language model by yourself. If you find it has good performance and is useful, then you can follow this guidance to make it a tool so that it can be shared with other people to have more impact. + +## Prerequisites +- Please ensure that your `Prompt flow` for VS Code is updated to version 1.2.0 or later. + +## How to create a custom LLM tool +Here we use [an existing tool package](../../../examples/tools/tool-package-quickstart/my_tool_package) as an example. If you want to create your own tool, please refer to [create and use tool package](create-and-use-tool-package.md). + +### Add a `PromptTemplate` input for your tool, like in [this example](../../../examples/tools/tool-package-quickstart/my_tool_package/tools/tool_with_custom_llm_type.py) + +```python +from jinja2 import Template +from promptflow import tool +from promptflow.connections import CustomConnection +# 1. Import the PromptTemplate type. +from promptflow.contracts.types import PromptTemplate + + +# 2. Add a PromptTemplate input for your tool method. +@tool +def my_tool(connection: CustomConnection, prompt: PromptTemplate, **kwargs) -> str: + # 3. The prompt is used for your custom LLM to do inference, customise your own code to handle and use the prompt here. + message = Template(prompt, trim_blocks=True, keep_trailing_newline=True).render(**kwargs) + return message +``` + +### Generate custom LLM tool YAML + +Run the command below in your tool project directory to automatically generate your tool YAML, use _-t "custom_llm"_ or _--tool-type "custom_llm"_ to indicate this is a custom LLM tool: +``` +python \tool\generate_package_tool_meta.py -m -o -t "custom_llm" +``` +Here we use [an existing tool](../../../examples/tools/tool-package-quickstart/my_tool_package/yamls/tool_with_custom_llm_type.yaml) as an example. +``` +cd D:\proj\github\promptflow\examples\tools\tool-package-quickstart + +python D:\proj\github\promptflow\scripts\tool\generate_package_tool_meta.py -m my_tool_package.tools.tool_with_custom_llm_type -o my_tool_package\yamls\tool_with_custom_llm_type.yaml -n "Custom LLM Tool" -d "This is a tool to demonstrate the custom_llm tool type" -t "custom_llm" +``` +This command will generate YAML as follows: + +```yaml +my_tool_package.tools.tool_with_custom_llm_type.my_tool: +name: Custom LLM Tool +description: This is a tool to demonstrate the custom_llm tool type +# The type is custom_llm. +type: custom_llm +module: my_tool_package.tools.tool_with_custom_llm_type +function: my_tool +inputs: + connection: + type: + - CustomConnection +``` + +## Use custom LLM tool in VS Code extension +Follow the steps to [build and install your tool package](create-and-use-tool-package.md#build-and-share-the-tool-package) and [use your tool from VS Code extension](create-and-use-tool-package.md#use-your-tool-from-vscode-extension). + +Here we use an existing flow to demonstrate the experience, open [this flow](../../../examples/flows/standard/custom_llm_tool_showcase/flow.dag.yaml) in VS Code extension. +- There is a node named "custom_llm_tool" with a prompt template file. You have the option to either use an existing file or create a new one as the prompt template file. + +![use_custom_llm_tool](../../media/how-to-guides/develop-a-tool/use_custom_llm_tool.png) \ No newline at end of file diff --git a/docs/how-to-guides/develop-a-tool/index.md b/docs/how-to-guides/develop-a-tool/index.md index ff2bd4b3a883..81352b72bc0a 100644 --- a/docs/how-to-guides/develop-a-tool/index.md +++ b/docs/how-to-guides/develop-a-tool/index.md @@ -8,5 +8,5 @@ We provide guides on how to develop a tool and use it. create-and-use-tool-package add-a-tool-icon add-category-and-tags-for-tool -use-custom-llm-tool +create-custom-llm-tool ``` \ No newline at end of file diff --git a/docs/how-to-guides/develop-a-tool/use-custom-llm-tool.md b/docs/how-to-guides/develop-a-tool/use-custom-llm-tool.md deleted file mode 100644 index b0516b7ed72b..000000000000 --- a/docs/how-to-guides/develop-a-tool/use-custom-llm-tool.md +++ /dev/null @@ -1,52 +0,0 @@ -# Use Custom LLM Tool -Users sometimes need to use a prompt template within their tools. To simplify this, we've introduced the `PromptTemplate` feature. -In this guide, we will provide a detailed walkthrough on how to use `PromptTemplate` as a tool input. We will also demonstrate the user experience when utilizing this type of tool within a flow. - -## Prerequisites -- Create a tool package as described in [Create and Use Tool Package](create-and-use-tool-package.md). -- Ensure that the tool's type is `custom_llm`. - -## How to create a tool with prompt template -Here we use [an existing tool package](../../../examples/tools/tool-package-quickstart/my_tool_package) as an example. - -1. Add a `PromptTemplate` input for your tool, such as in [this example](../../../examples/tools/tool-package-quickstart/my_tool_package/tools/custom_llm_tool_showcase.py) - - ```python - from jinja2 import Template - from promptflow import tool - from promptflow.connections import CustomConnection - # 1. import the PromptTemplate type - from promptflow.contracts.types import PromptTemplate - - - # 2. add a PromptTemplate input for your tool method - @tool - def my_tool(connection: CustomConnection, prompt: PromptTemplate, **kwargs) -> str: - # 3. customise your own code to handle and use the prompt here - message = Template(prompt, trim_blocks=True, keep_trailing_newline=True).render(**kwargs) - return message - ``` - -2. Configure the tool YAML. Please note that the `PromptTemplate` input should not be included in the YAML. You can check out an example in [this location](../../../examples/tools/tool-package-quickstart/my_tool_package/yamls/custom_llm_tool_showcase.yaml): - - ```yaml - my_tool_package.tools.custom_llm_tool_showcase.my_tool: - name: Custom LLM Tool - description: This is a custom LLM tool - type: custom_llm - module: my_tool_package.tools.custom_llm_tool_showcase - function: my_tool - inputs: - connection: - type: - - CustomConnection - - ``` - -## Use a tool with a prompt template input in VS Code extension -To use your tool with a prompt template input, follow the steps to [build and install your tool package](create-and-use-tool-package.md#build-and-share-the-tool-package) and [use your tool from VS Code extension](create-and-use-tool-package.md#use-your-tool-from-vscode-extension). - -Here, we will use an existing flow to demonstrate the experience. Open [this flow](../../../examples/flows/standard/prompt-template-input-tool-showcase/flow.dag.yaml) in VS Code extension. -- There is a node named "tool_with_prompt_template" with a prompt template file, and the inputs of this node contain the input for the prompt template. - -![use_prompt_template_in_flow](../../media/how-to-guides/develop-a-tool/use_prompt_template_in_flow.png) \ No newline at end of file diff --git a/docs/media/how-to-guides/develop-a-tool/use_custom_llm_tool.png b/docs/media/how-to-guides/develop-a-tool/use_custom_llm_tool.png new file mode 100644 index 0000000000000000000000000000000000000000..1ab389aa3b15bffbccc4c2885575582538270364 GIT binary patch literal 62444 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 literal 0 HcmV?d00001 diff --git a/docs/media/how-to-guides/develop-a-tool/use_prompt_template_in_flow.png b/docs/media/how-to-guides/develop-a-tool/use_prompt_template_in_flow.png deleted file mode 100644 index 9ebd1afed417e5ab70de1caba8a46566db4a2114..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 71989 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 diff --git a/examples/tools/tool-package-quickstart/my_tool_package/tools/custom_llm_tool_showcase.py b/examples/tools/tool-package-quickstart/my_tool_package/tools/tool_with_custom_llm_type.py similarity index 96% rename from examples/tools/tool-package-quickstart/my_tool_package/tools/custom_llm_tool_showcase.py rename to examples/tools/tool-package-quickstart/my_tool_package/tools/tool_with_custom_llm_type.py index 79ab574b7d7b..b9535467ffed 100644 --- a/examples/tools/tool-package-quickstart/my_tool_package/tools/custom_llm_tool_showcase.py +++ b/examples/tools/tool-package-quickstart/my_tool_package/tools/tool_with_custom_llm_type.py @@ -10,4 +10,4 @@ def my_tool(connection: CustomConnection, prompt: PromptTemplate, **kwargs) -> s # Usually connection contains configs to connect to an API. # Not all tools need a connection. You can remove it if you don't need it. message = Template(prompt, trim_blocks=True, keep_trailing_newline=True).render(**kwargs) - return message + return message \ No newline at end of file diff --git a/examples/tools/tool-package-quickstart/my_tool_package/yamls/custom_llm_tool_showcase.yaml b/examples/tools/tool-package-quickstart/my_tool_package/yamls/custom_llm_tool_showcase.yaml deleted file mode 100644 index 9c29351e6c6b..000000000000 --- a/examples/tools/tool-package-quickstart/my_tool_package/yamls/custom_llm_tool_showcase.yaml +++ /dev/null @@ -1,10 +0,0 @@ -my_tool_package.tools.custom_llm_tool_showcase.my_tool: - name: Custom LLM Tool - description: This is a custom LLM tool - type: custom_llm - module: my_tool_package.tools.custom_llm_tool_showcase - function: my_tool - inputs: - connection: - type: - - CustomConnection diff --git a/examples/tools/tool-package-quickstart/my_tool_package/yamls/tool_with_custom_llm_type.yaml b/examples/tools/tool-package-quickstart/my_tool_package/yamls/tool_with_custom_llm_type.yaml new file mode 100644 index 000000000000..8b90501802e7 --- /dev/null +++ b/examples/tools/tool-package-quickstart/my_tool_package/yamls/tool_with_custom_llm_type.yaml @@ -0,0 +1,10 @@ +my_tool_package.tools.tool_with_custom_llm_type.my_tool: + description: This is a tool to demonstrate the custom_llm tool type + function: my_tool + inputs: + connection: + type: + - CustomConnection + module: my_tool_package.tools.tool_with_custom_llm_type + name: Custom LLM Tool + type: custom_llm diff --git a/examples/tools/tool-package-quickstart/tests/test_custom_llm_tool_showcase.py b/examples/tools/tool-package-quickstart/tests/test_tool_with_custom_llm_type.py similarity index 76% rename from examples/tools/tool-package-quickstart/tests/test_custom_llm_tool_showcase.py rename to examples/tools/tool-package-quickstart/tests/test_tool_with_custom_llm_type.py index cacb91b78c0c..08c2af8d672c 100644 --- a/examples/tools/tool-package-quickstart/tests/test_custom_llm_tool_showcase.py +++ b/examples/tools/tool-package-quickstart/tests/test_tool_with_custom_llm_type.py @@ -2,7 +2,7 @@ import unittest from promptflow.connections import CustomConnection -from my_tool_package.tools.custom_llm_tool_showcase import my_tool +from my_tool_package.tools.tool_with_custom_llm_type import my_tool @pytest.fixture @@ -17,8 +17,8 @@ def my_custom_connection() -> CustomConnection: return my_custom_connection -class TestToolWithPromptTemplateInput: - def test_custom_llm_tool_showcase(self, my_custom_connection): +class TestToolWithCustomLLMType: + def test_tool_with_custom_llm_type(self, my_custom_connection): result = my_tool(my_custom_connection, "Hello {{text}}", text="Microsoft") assert result == "Hello Microsoft"