| from blueprints.function_calling_blueprint import Pipeline as FunctionCallingBlueprint | |
| class Pipeline(FunctionCallingBlueprint): | |
| class Valves(FunctionCallingBlueprint.Valves): | |
| # Add your custom valves here | |
| pass | |
| class Tools: | |
| def __init__(self, pipeline) -> None: | |
| self.pipeline = pipeline | |
| # Add your custom tools using pure Python code here, make sure to add type hints | |
| # Use Sphinx-style docstrings to document your tools, they will be used for generating tools specifications | |
| # Please refer to function_calling_filter_pipeline.py for an example | |
| pass | |
| def __init__(self): | |
| super().__init__() | |
| # Optionally, you can set the id and name of the pipeline. | |
| # Best practice is to not specify the id so that it can be automatically inferred from the filename, so that users can install multiple versions of the same pipeline. | |
| # The identifier must be unique across all pipelines. | |
| # The identifier must be an alphanumeric string that can include underscores or hyphens. It cannot contain spaces, special characters, slashes, or backslashes. | |
| # self.id = "my_tools_pipeline" | |
| self.name = "My Tools Pipeline" | |
| self.valves = self.Valves( | |
| **{ | |
| **self.valves.model_dump(), | |
| "pipelines": ["*"], # Connect to all pipelines | |
| }, | |
| ) | |
| self.tools = self.Tools(self) | |