diff --git a/lib/crewai-tools/src/crewai_tools/generate_tool_specs.py b/lib/crewai-tools/src/crewai_tools/generate_tool_specs.py index ebf10bdbf..9e1847271 100644 --- a/lib/crewai-tools/src/crewai_tools/generate_tool_specs.py +++ b/lib/crewai-tools/src/crewai_tools/generate_tool_specs.py @@ -8,8 +8,9 @@ from typing import Any from crewai.tools.base_tool import BaseTool, EnvVar from pydantic import BaseModel +from pydantic.fields import FieldInfo from pydantic.json_schema import GenerateJsonSchema -from pydantic_core import PydanticOmit +from pydantic_core import PydanticOmit, PydanticUndefined from crewai_tools import tools @@ -44,6 +45,9 @@ class ToolSpecExtractor: schema = self._unwrap_schema(core_schema) fields = schema.get("schema", {}).get("fields", {}) + # Use model_fields to get defaults (handles both default and default_factory) + model_fields = tool_class.model_fields + tool_info = { "name": tool_class.__name__, "humanized_name": self._extract_field_default( @@ -54,9 +58,9 @@ class ToolSpecExtractor: ).strip(), "run_params_schema": self._extract_params(fields.get("args_schema")), "init_params_schema": self._extract_init_params(tool_class), - "env_vars": self._extract_env_vars(fields.get("env_vars")), - "package_dependencies": self._extract_field_default( - fields.get("package_dependencies"), fallback=[] + "env_vars": self._extract_env_vars_from_model_fields(model_fields), + "package_dependencies": self._extract_package_deps_from_model_fields( + model_fields ), } @@ -103,10 +107,27 @@ class ToolSpecExtractor: return {} @staticmethod - def _extract_env_vars( - env_vars_field: dict[str, Any] | None, + def _get_field_default(field: FieldInfo | None) -> Any: + """Get default value from a FieldInfo, handling both default and default_factory.""" + if not field: + return None + + default_value = field.default + if default_value is PydanticUndefined or default_value is None: + if field.default_factory: + return field.default_factory() + return None + + return default_value + + @staticmethod + def _extract_env_vars_from_model_fields( + model_fields: dict[str, FieldInfo], ) -> list[dict[str, Any]]: - if not env_vars_field: + default_value = ToolSpecExtractor._get_field_default( + model_fields.get("env_vars") + ) + if not default_value: return [] return [ @@ -116,10 +137,22 @@ class ToolSpecExtractor: "required": env_var.required, "default": env_var.default, } - for env_var in env_vars_field.get("schema", {}).get("default", []) + for env_var in default_value if isinstance(env_var, EnvVar) ] + @staticmethod + def _extract_package_deps_from_model_fields( + model_fields: dict[str, FieldInfo], + ) -> list[str]: + default_value = ToolSpecExtractor._get_field_default( + model_fields.get("package_dependencies") + ) + if not isinstance(default_value, list): + return [] + + return default_value + @staticmethod def _extract_init_params(tool_class: type[BaseTool]) -> dict[str, Any]: ignored_init_params = [ @@ -152,7 +185,7 @@ class ToolSpecExtractor: if __name__ == "__main__": - output_file = Path(__file__).parent / "tool.specs.json" + output_file = Path(__file__).parent.parent.parent / "tool.specs.json" extractor = ToolSpecExtractor() extractor.extract_all_tools() diff --git a/lib/crewai-tools/src/crewai_tools/tools/stagehand_tool/stagehand_tool.py b/lib/crewai-tools/src/crewai_tools/tools/stagehand_tool/stagehand_tool.py index ba7048ba9..70eaa296c 100644 --- a/lib/crewai-tools/src/crewai_tools/tools/stagehand_tool/stagehand_tool.py +++ b/lib/crewai-tools/src/crewai_tools/tools/stagehand_tool/stagehand_tool.py @@ -4,7 +4,7 @@ import os import re from typing import Any -from crewai.tools import BaseTool +from crewai.tools import BaseTool, EnvVar from pydantic import BaseModel, Field @@ -137,7 +137,21 @@ class StagehandTool(BaseTool): - 'observe': For finding elements in a specific area """ args_schema: type[BaseModel] = StagehandToolSchema - package_dependencies: list[str] = Field(default_factory=lambda: ["stagehand"]) + package_dependencies: list[str] = Field(default_factory=lambda: ["stagehand<=0.5.9"]) + env_vars: list[EnvVar] = Field( + default_factory=lambda: [ + EnvVar( + name="BROWSERBASE_API_KEY", + description="API key for Browserbase services", + required=False, + ), + EnvVar( + name="BROWSERBASE_PROJECT_ID", + description="Project ID for Browserbase services", + required=False, + ), + ] + ) # Stagehand configuration api_key: str | None = None diff --git a/lib/crewai-tools/tests/test_generate_tool_specs.py b/lib/crewai-tools/tests/test_generate_tool_specs.py index 290d099b9..2f56ed1e6 100644 --- a/lib/crewai-tools/tests/test_generate_tool_specs.py +++ b/lib/crewai-tools/tests/test_generate_tool_specs.py @@ -23,23 +23,26 @@ class MockTool(BaseTool): ) my_parameter: str = Field("This is default value", description="What a description") my_parameter_bool: bool = Field(False) + # Use default_factory like real tools do (not direct default) package_dependencies: list[str] = Field( - ["this-is-a-required-package", "another-required-package"], description="" + default_factory=lambda: ["this-is-a-required-package", "another-required-package"] + ) + env_vars: list[EnvVar] = Field( + default_factory=lambda: [ + EnvVar( + name="SERPER_API_KEY", + description="API key for Serper", + required=True, + default=None, + ), + EnvVar( + name="API_RATE_LIMIT", + description="API rate limit", + required=False, + default="100", + ), + ] ) - env_vars: list[EnvVar] = [ - EnvVar( - name="SERPER_API_KEY", - description="API key for Serper", - required=True, - default=None, - ), - EnvVar( - name="API_RATE_LIMIT", - description="API rate limit", - required=False, - default="100", - ), - ] @pytest.fixture diff --git a/lib/crewai-tools/tool.specs.json b/lib/crewai-tools/tool.specs.json index ea38e6941..74e5ace4e 100644 --- a/lib/crewai-tools/tool.specs.json +++ b/lib/crewai-tools/tool.specs.json @@ -63,20 +63,12 @@ "title": "Api Key" }, "datasources": { - "anyOf": [ - { - "items": { - "additionalProperties": true, - "type": "object" - }, - "type": "array" - }, - { - "type": "null" - } - ], - "default": null, - "title": "Datasources" + "items": { + "additionalProperties": true, + "type": "object" + }, + "title": "Datasources", + "type": "array" }, "mind_name": { "anyOf": [ @@ -157,7 +149,23 @@ } }, "additionalProperties": true, - "properties": {}, + "properties": { + "download_pdfs": { + "default": false, + "title": "Download Pdfs", + "type": "boolean" + }, + "save_dir": { + "default": "./arxiv_pdfs", + "title": "Save Dir", + "type": "string" + }, + "use_title_as_filename": { + "default": false, + "title": "Use Title As Filename", + "type": "boolean" + } + }, "title": "ArxivPaperTool", "type": "object" }, @@ -290,7 +298,14 @@ }, { "description": "Scrapes structured data using Bright Data Dataset API from a URL and optional input parameters", - "env_vars": [], + "env_vars": [ + { + "default": null, + "description": "API key for Bright Data", + "name": "BRIGHT_DATA_API_KEY", + "required": true + } + ], "humanized_name": "Bright Data Dataset Tool", "init_params_schema": { "$defs": { @@ -456,7 +471,14 @@ }, { "description": "Tool to perform web search using Bright Data SERP API.", - "env_vars": [], + "env_vars": [ + { + "default": null, + "description": "API key for Bright Data", + "name": "BRIGHT_DATA_API_KEY", + "required": true + } + ], "humanized_name": "Bright Data SERP Search", "init_params_schema": { "$defs": { @@ -664,7 +686,14 @@ }, { "description": "Tool to perform web scraping using Bright Data Web Unlocker", - "env_vars": [], + "env_vars": [ + { + "default": null, + "description": "API key for Bright Data", + "name": "BRIGHT_DATA_API_KEY", + "required": true + } + ], "humanized_name": "Bright Data Web Unlocker Scraping", "init_params_schema": { "$defs": { @@ -947,10 +976,169 @@ "init_params_schema": { "$defs": { "Adapter": { + "description": "Abstract base class for RAG adapters.", "properties": {}, "title": "Adapter", "type": "object" }, + "AzureProviderConfig": { + "description": "Configuration for Azure provider.", + "properties": { + "api_base": { + "title": "Api Base", + "type": "string" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_type": { + "title": "Api Type", + "type": "string" + }, + "api_version": { + "title": "Api Version", + "type": "string" + }, + "default_headers": { + "additionalProperties": true, + "title": "Default Headers", + "type": "object" + }, + "deployment_id": { + "title": "Deployment Id", + "type": "string" + }, + "dimensions": { + "title": "Dimensions", + "type": "integer" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "organization_id": { + "title": "Organization Id", + "type": "string" + } + }, + "required": [ + "deployment_id" + ], + "title": "AzureProviderConfig", + "type": "object" + }, + "AzureProviderSpec": { + "description": "Azure provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/AzureProviderConfig" + }, + "provider": { + "const": "azure", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "AzureProviderSpec", + "type": "object" + }, + "BedrockProviderConfig": { + "description": "Configuration for Bedrock provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + }, + "session": { + "title": "Session" + } + }, + "title": "BedrockProviderConfig", + "type": "object" + }, + "BedrockProviderSpec": { + "description": "Bedrock provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/BedrockProviderConfig" + }, + "provider": { + "const": "amazon-bedrock", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "BedrockProviderSpec", + "type": "object" + }, + "CohereProviderConfig": { + "description": "Configuration for Cohere provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "CohereProviderConfig", + "type": "object" + }, + "CohereProviderSpec": { + "description": "Cohere provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/CohereProviderConfig" + }, + "provider": { + "const": "cohere", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "CohereProviderSpec", + "type": "object" + }, + "CustomProviderConfig": { + "description": "Configuration for Custom provider.", + "properties": { + "embedding_callable": { + "title": "Embedding Callable" + } + }, + "title": "CustomProviderConfig", + "type": "object" + }, + "CustomProviderSpec": { + "description": "Custom provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/CustomProviderConfig" + }, + "provider": { + "const": "custom", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "CustomProviderSpec", + "type": "object" + }, "EnvVar": { "properties": { "default": { @@ -985,24 +1173,819 @@ ], "title": "EnvVar", "type": "object" + }, + "GenerativeAiProviderConfig": { + "description": "Configuration for Google Generative AI provider.\n\nAttributes:\n api_key: Google API key for authentication.\n model_name: Embedding model name.\n task_type: Task type for embeddings. Default is \"RETRIEVAL_DOCUMENT\".", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "enum": [ + "gemini-embedding-001", + "text-embedding-005", + "text-multilingual-embedding-002" + ], + "title": "Model Name", + "type": "string" + }, + "task_type": { + "title": "Task Type", + "type": "string" + } + }, + "title": "GenerativeAiProviderConfig", + "type": "object" + }, + "GenerativeAiProviderSpec": { + "description": "Google Generative AI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/GenerativeAiProviderConfig" + }, + "provider": { + "const": "google-generativeai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "GenerativeAiProviderSpec", + "type": "object" + }, + "HuggingFaceProviderConfig": { + "description": "Configuration for HuggingFace provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model": { + "title": "Model", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "HuggingFaceProviderConfig", + "type": "object" + }, + "HuggingFaceProviderSpec": { + "description": "HuggingFace provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/HuggingFaceProviderConfig" + }, + "provider": { + "const": "huggingface", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "HuggingFaceProviderSpec", + "type": "object" + }, + "InstructorProviderConfig": { + "description": "Configuration for Instructor provider.", + "properties": { + "device": { + "title": "Device", + "type": "string" + }, + "instruction": { + "title": "Instruction", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "InstructorProviderConfig", + "type": "object" + }, + "InstructorProviderSpec": { + "description": "Instructor provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/InstructorProviderConfig" + }, + "provider": { + "const": "instructor", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "InstructorProviderSpec", + "type": "object" + }, + "JinaProviderConfig": { + "description": "Configuration for Jina provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "JinaProviderConfig", + "type": "object" + }, + "JinaProviderSpec": { + "description": "Jina provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/JinaProviderConfig" + }, + "provider": { + "const": "jina", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "JinaProviderSpec", + "type": "object" + }, + "ONNXProviderConfig": { + "description": "Configuration for ONNX provider.", + "properties": { + "preferred_providers": { + "items": { + "type": "string" + }, + "title": "Preferred Providers", + "type": "array" + } + }, + "title": "ONNXProviderConfig", + "type": "object" + }, + "ONNXProviderSpec": { + "description": "ONNX provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/ONNXProviderConfig" + }, + "provider": { + "const": "onnx", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "ONNXProviderSpec", + "type": "object" + }, + "OllamaProviderConfig": { + "description": "Configuration for Ollama provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + }, + "url": { + "title": "Url", + "type": "string" + } + }, + "title": "OllamaProviderConfig", + "type": "object" + }, + "OllamaProviderSpec": { + "description": "Ollama provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OllamaProviderConfig" + }, + "provider": { + "const": "ollama", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "OllamaProviderSpec", + "type": "object" + }, + "OpenAIProviderConfig": { + "description": "Configuration for OpenAI provider.", + "properties": { + "api_base": { + "title": "Api Base", + "type": "string" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_type": { + "title": "Api Type", + "type": "string" + }, + "api_version": { + "title": "Api Version", + "type": "string" + }, + "default_headers": { + "additionalProperties": true, + "title": "Default Headers", + "type": "object" + }, + "deployment_id": { + "title": "Deployment Id", + "type": "string" + }, + "dimensions": { + "title": "Dimensions", + "type": "integer" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "organization_id": { + "title": "Organization Id", + "type": "string" + } + }, + "title": "OpenAIProviderConfig", + "type": "object" + }, + "OpenAIProviderSpec": { + "description": "OpenAI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OpenAIProviderConfig" + }, + "provider": { + "const": "openai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "OpenAIProviderSpec", + "type": "object" + }, + "OpenCLIPProviderConfig": { + "description": "Configuration for OpenCLIP provider.", + "properties": { + "checkpoint": { + "title": "Checkpoint", + "type": "string" + }, + "device": { + "title": "Device", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "OpenCLIPProviderConfig", + "type": "object" + }, + "OpenCLIPProviderSpec": { + "description": "OpenCLIP provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OpenCLIPProviderConfig" + }, + "provider": { + "const": "openclip", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "OpenCLIPProviderSpec", + "type": "object" + }, + "RagToolConfig": { + "description": "Configuration accepted by RAG tools.\n\nSupports embedding model and vector database configuration.\n\nAttributes:\n embedding_model: Embedding model configuration accepted by RAG tools.\n vectordb: Vector database configuration accepted by RAG tools.", + "properties": { + "embedding_model": { + "anyOf": [ + { + "$ref": "#/$defs/AzureProviderSpec" + }, + { + "$ref": "#/$defs/BedrockProviderSpec" + }, + { + "$ref": "#/$defs/CohereProviderSpec" + }, + { + "$ref": "#/$defs/CustomProviderSpec" + }, + { + "$ref": "#/$defs/GenerativeAiProviderSpec" + }, + { + "$ref": "#/$defs/HuggingFaceProviderSpec" + }, + { + "$ref": "#/$defs/InstructorProviderSpec" + }, + { + "$ref": "#/$defs/JinaProviderSpec" + }, + { + "$ref": "#/$defs/OllamaProviderSpec" + }, + { + "$ref": "#/$defs/ONNXProviderSpec" + }, + { + "$ref": "#/$defs/OpenAIProviderSpec" + }, + { + "$ref": "#/$defs/OpenCLIPProviderSpec" + }, + { + "$ref": "#/$defs/RoboflowProviderSpec" + }, + { + "$ref": "#/$defs/SentenceTransformerProviderSpec" + }, + { + "$ref": "#/$defs/Text2VecProviderSpec" + }, + { + "$ref": "#/$defs/VertexAIProviderSpec" + }, + { + "$ref": "#/$defs/VoyageAIProviderSpec" + }, + { + "$ref": "#/$defs/WatsonXProviderSpec" + } + ], + "title": "Embedding Model" + }, + "vectordb": { + "$ref": "#/$defs/VectorDbConfig" + } + }, + "title": "RagToolConfig", + "type": "object" + }, + "RoboflowProviderConfig": { + "description": "Configuration for Roboflow provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_url": { + "title": "Api Url", + "type": "string" + } + }, + "title": "RoboflowProviderConfig", + "type": "object" + }, + "RoboflowProviderSpec": { + "description": "Roboflow provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/RoboflowProviderConfig" + }, + "provider": { + "const": "roboflow", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "RoboflowProviderSpec", + "type": "object" + }, + "SentenceTransformerProviderConfig": { + "description": "Configuration for SentenceTransformer provider.", + "properties": { + "device": { + "title": "Device", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "normalize_embeddings": { + "title": "Normalize Embeddings", + "type": "boolean" + } + }, + "title": "SentenceTransformerProviderConfig", + "type": "object" + }, + "SentenceTransformerProviderSpec": { + "description": "SentenceTransformer provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/SentenceTransformerProviderConfig" + }, + "provider": { + "const": "sentence-transformer", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "SentenceTransformerProviderSpec", + "type": "object" + }, + "Text2VecProviderConfig": { + "description": "Configuration for Text2Vec provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "Text2VecProviderConfig", + "type": "object" + }, + "Text2VecProviderSpec": { + "description": "Text2Vec provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/Text2VecProviderConfig" + }, + "provider": { + "const": "text2vec", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "Text2VecProviderSpec", + "type": "object" + }, + "VectorDbConfig": { + "description": "Configuration for vector database provider.\n\nAttributes:\n provider: RAG provider literal.\n config: RAG configuration options.", + "properties": { + "config": { + "additionalProperties": true, + "title": "Config", + "type": "object" + }, + "provider": { + "enum": [ + "chromadb", + "qdrant" + ], + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "VectorDbConfig", + "type": "object" + }, + "VertexAIProviderConfig": { + "description": "Configuration for Vertex AI provider with dual SDK support.\n\nSupports both legacy models (textembedding-gecko*) using the deprecated\nvertexai.language_models SDK and new models using google-genai SDK.\n\nAttributes:\n api_key: Google API key (optional if using project_id with ADC). Only for new SDK models.\n model_name: Embedding model name (default: \"textembedding-gecko\").\n Legacy models: textembedding-gecko, textembedding-gecko@001, etc.\n New models: gemini-embedding-001, text-embedding-005, text-multilingual-embedding-002\n project_id: GCP project ID (required for Vertex AI backend and legacy models).\n location: GCP region/location (default: \"us-central1\").\n region: Deprecated alias for location (kept for backwards compatibility).\n task_type: Task type for embeddings (default: \"RETRIEVAL_DOCUMENT\"). Only for new SDK models.\n output_dimensionality: Output embedding dimension (optional). Only for new SDK models.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "location": { + "title": "Location", + "type": "string" + }, + "model_name": { + "enum": [ + "textembedding-gecko", + "textembedding-gecko@001", + "textembedding-gecko@002", + "textembedding-gecko@003", + "textembedding-gecko@latest", + "textembedding-gecko-multilingual", + "textembedding-gecko-multilingual@001", + "textembedding-gecko-multilingual@latest", + "gemini-embedding-001", + "text-embedding-005", + "text-multilingual-embedding-002" + ], + "title": "Model Name", + "type": "string" + }, + "output_dimensionality": { + "title": "Output Dimensionality", + "type": "integer" + }, + "project_id": { + "title": "Project Id", + "type": "string" + }, + "region": { + "title": "Region", + "type": "string" + }, + "task_type": { + "title": "Task Type", + "type": "string" + } + }, + "title": "VertexAIProviderConfig", + "type": "object" + }, + "VertexAIProviderSpec": { + "description": "Vertex AI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/VertexAIProviderConfig" + }, + "provider": { + "const": "google-vertex", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "VertexAIProviderSpec", + "type": "object" + }, + "VoyageAIProviderConfig": { + "description": "Configuration for VoyageAI provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "input_type": { + "title": "Input Type", + "type": "string" + }, + "max_retries": { + "title": "Max Retries", + "type": "integer" + }, + "model": { + "title": "Model", + "type": "string" + }, + "output_dimension": { + "title": "Output Dimension", + "type": "integer" + }, + "output_dtype": { + "title": "Output Dtype", + "type": "string" + }, + "timeout": { + "title": "Timeout", + "type": "number" + }, + "truncation": { + "title": "Truncation", + "type": "boolean" + } + }, + "title": "VoyageAIProviderConfig", + "type": "object" + }, + "VoyageAIProviderSpec": { + "description": "VoyageAI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/VoyageAIProviderConfig" + }, + "provider": { + "const": "voyageai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "VoyageAIProviderSpec", + "type": "object" + }, + "WatsonXProviderConfig": { + "description": "Configuration for WatsonX provider.", + "properties": { + "api_client": { + "title": "Api Client" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "batch_size": { + "title": "Batch Size", + "type": "integer" + }, + "bedrock_url": { + "title": "Bedrock Url", + "type": "string" + }, + "concurrency_limit": { + "title": "Concurrency Limit", + "type": "integer" + }, + "credentials": { + "title": "Credentials" + }, + "delay_time": { + "title": "Delay Time", + "type": "number" + }, + "iam_serviceid_crn": { + "title": "Iam Serviceid Crn", + "type": "string" + }, + "instance_id": { + "title": "Instance Id", + "type": "string" + }, + "max_retries": { + "title": "Max Retries", + "type": "integer" + }, + "model_id": { + "title": "Model Id", + "type": "string" + }, + "name": { + "title": "Name", + "type": "string" + }, + "params": { + "additionalProperties": { + "anyOf": [ + { + "type": "string" + }, + { + "additionalProperties": { + "type": "string" + }, + "type": "object" + } + ] + }, + "title": "Params", + "type": "object" + }, + "password": { + "title": "Password", + "type": "string" + }, + "persistent_connection": { + "title": "Persistent Connection", + "type": "boolean" + }, + "platform_url": { + "title": "Platform Url", + "type": "string" + }, + "project_id": { + "title": "Project Id", + "type": "string" + }, + "projects_token": { + "title": "Projects Token", + "type": "string" + }, + "proxies": { + "additionalProperties": true, + "title": "Proxies", + "type": "object" + }, + "retry_status_codes": { + "items": { + "type": "integer" + }, + "title": "Retry Status Codes", + "type": "array" + }, + "space_id": { + "title": "Space Id", + "type": "string" + }, + "token": { + "title": "Token", + "type": "string" + }, + "trusted_profile_id": { + "title": "Trusted Profile Id", + "type": "string" + }, + "url": { + "title": "Url", + "type": "string" + }, + "username": { + "title": "Username", + "type": "string" + }, + "verify": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "string" + } + ], + "title": "Verify" + }, + "version": { + "title": "Version", + "type": "string" + } + }, + "title": "WatsonXProviderConfig", + "type": "object" + }, + "WatsonXProviderSpec": { + "description": "WatsonX provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/WatsonXProviderConfig" + }, + "provider": { + "const": "watsonx", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "WatsonXProviderSpec", + "type": "object" } }, "properties": { "adapter": { "$ref": "#/$defs/Adapter" }, + "collection_name": { + "default": "rag_tool_collection", + "title": "Collection Name", + "type": "string" + }, "config": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "default": null, - "title": "Config" + "$ref": "#/$defs/RagToolConfig", + "description": "Configuration format accepted by RagTool." + }, + "limit": { + "default": 5, + "title": "Limit", + "type": "integer" + }, + "similarity_threshold": { + "default": 0.6, + "title": "Similarity Threshold", + "type": "number" }, "summarize": { "default": false, @@ -1019,7 +2002,7 @@ "description": "Input for CSVSearchTool.", "properties": { "csv": { - "description": "Mandatory csv path you want to search", + "description": "File path or URL of a CSV file to be searched", "title": "Csv", "type": "string" }, @@ -1044,10 +2027,169 @@ "init_params_schema": { "$defs": { "Adapter": { + "description": "Abstract base class for RAG adapters.", "properties": {}, "title": "Adapter", "type": "object" }, + "AzureProviderConfig": { + "description": "Configuration for Azure provider.", + "properties": { + "api_base": { + "title": "Api Base", + "type": "string" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_type": { + "title": "Api Type", + "type": "string" + }, + "api_version": { + "title": "Api Version", + "type": "string" + }, + "default_headers": { + "additionalProperties": true, + "title": "Default Headers", + "type": "object" + }, + "deployment_id": { + "title": "Deployment Id", + "type": "string" + }, + "dimensions": { + "title": "Dimensions", + "type": "integer" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "organization_id": { + "title": "Organization Id", + "type": "string" + } + }, + "required": [ + "deployment_id" + ], + "title": "AzureProviderConfig", + "type": "object" + }, + "AzureProviderSpec": { + "description": "Azure provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/AzureProviderConfig" + }, + "provider": { + "const": "azure", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "AzureProviderSpec", + "type": "object" + }, + "BedrockProviderConfig": { + "description": "Configuration for Bedrock provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + }, + "session": { + "title": "Session" + } + }, + "title": "BedrockProviderConfig", + "type": "object" + }, + "BedrockProviderSpec": { + "description": "Bedrock provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/BedrockProviderConfig" + }, + "provider": { + "const": "amazon-bedrock", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "BedrockProviderSpec", + "type": "object" + }, + "CohereProviderConfig": { + "description": "Configuration for Cohere provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "CohereProviderConfig", + "type": "object" + }, + "CohereProviderSpec": { + "description": "Cohere provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/CohereProviderConfig" + }, + "provider": { + "const": "cohere", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "CohereProviderSpec", + "type": "object" + }, + "CustomProviderConfig": { + "description": "Configuration for Custom provider.", + "properties": { + "embedding_callable": { + "title": "Embedding Callable" + } + }, + "title": "CustomProviderConfig", + "type": "object" + }, + "CustomProviderSpec": { + "description": "Custom provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/CustomProviderConfig" + }, + "provider": { + "const": "custom", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "CustomProviderSpec", + "type": "object" + }, "EnvVar": { "properties": { "default": { @@ -1082,24 +2224,819 @@ ], "title": "EnvVar", "type": "object" + }, + "GenerativeAiProviderConfig": { + "description": "Configuration for Google Generative AI provider.\n\nAttributes:\n api_key: Google API key for authentication.\n model_name: Embedding model name.\n task_type: Task type for embeddings. Default is \"RETRIEVAL_DOCUMENT\".", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "enum": [ + "gemini-embedding-001", + "text-embedding-005", + "text-multilingual-embedding-002" + ], + "title": "Model Name", + "type": "string" + }, + "task_type": { + "title": "Task Type", + "type": "string" + } + }, + "title": "GenerativeAiProviderConfig", + "type": "object" + }, + "GenerativeAiProviderSpec": { + "description": "Google Generative AI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/GenerativeAiProviderConfig" + }, + "provider": { + "const": "google-generativeai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "GenerativeAiProviderSpec", + "type": "object" + }, + "HuggingFaceProviderConfig": { + "description": "Configuration for HuggingFace provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model": { + "title": "Model", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "HuggingFaceProviderConfig", + "type": "object" + }, + "HuggingFaceProviderSpec": { + "description": "HuggingFace provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/HuggingFaceProviderConfig" + }, + "provider": { + "const": "huggingface", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "HuggingFaceProviderSpec", + "type": "object" + }, + "InstructorProviderConfig": { + "description": "Configuration for Instructor provider.", + "properties": { + "device": { + "title": "Device", + "type": "string" + }, + "instruction": { + "title": "Instruction", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "InstructorProviderConfig", + "type": "object" + }, + "InstructorProviderSpec": { + "description": "Instructor provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/InstructorProviderConfig" + }, + "provider": { + "const": "instructor", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "InstructorProviderSpec", + "type": "object" + }, + "JinaProviderConfig": { + "description": "Configuration for Jina provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "JinaProviderConfig", + "type": "object" + }, + "JinaProviderSpec": { + "description": "Jina provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/JinaProviderConfig" + }, + "provider": { + "const": "jina", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "JinaProviderSpec", + "type": "object" + }, + "ONNXProviderConfig": { + "description": "Configuration for ONNX provider.", + "properties": { + "preferred_providers": { + "items": { + "type": "string" + }, + "title": "Preferred Providers", + "type": "array" + } + }, + "title": "ONNXProviderConfig", + "type": "object" + }, + "ONNXProviderSpec": { + "description": "ONNX provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/ONNXProviderConfig" + }, + "provider": { + "const": "onnx", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "ONNXProviderSpec", + "type": "object" + }, + "OllamaProviderConfig": { + "description": "Configuration for Ollama provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + }, + "url": { + "title": "Url", + "type": "string" + } + }, + "title": "OllamaProviderConfig", + "type": "object" + }, + "OllamaProviderSpec": { + "description": "Ollama provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OllamaProviderConfig" + }, + "provider": { + "const": "ollama", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "OllamaProviderSpec", + "type": "object" + }, + "OpenAIProviderConfig": { + "description": "Configuration for OpenAI provider.", + "properties": { + "api_base": { + "title": "Api Base", + "type": "string" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_type": { + "title": "Api Type", + "type": "string" + }, + "api_version": { + "title": "Api Version", + "type": "string" + }, + "default_headers": { + "additionalProperties": true, + "title": "Default Headers", + "type": "object" + }, + "deployment_id": { + "title": "Deployment Id", + "type": "string" + }, + "dimensions": { + "title": "Dimensions", + "type": "integer" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "organization_id": { + "title": "Organization Id", + "type": "string" + } + }, + "title": "OpenAIProviderConfig", + "type": "object" + }, + "OpenAIProviderSpec": { + "description": "OpenAI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OpenAIProviderConfig" + }, + "provider": { + "const": "openai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "OpenAIProviderSpec", + "type": "object" + }, + "OpenCLIPProviderConfig": { + "description": "Configuration for OpenCLIP provider.", + "properties": { + "checkpoint": { + "title": "Checkpoint", + "type": "string" + }, + "device": { + "title": "Device", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "OpenCLIPProviderConfig", + "type": "object" + }, + "OpenCLIPProviderSpec": { + "description": "OpenCLIP provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OpenCLIPProviderConfig" + }, + "provider": { + "const": "openclip", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "OpenCLIPProviderSpec", + "type": "object" + }, + "RagToolConfig": { + "description": "Configuration accepted by RAG tools.\n\nSupports embedding model and vector database configuration.\n\nAttributes:\n embedding_model: Embedding model configuration accepted by RAG tools.\n vectordb: Vector database configuration accepted by RAG tools.", + "properties": { + "embedding_model": { + "anyOf": [ + { + "$ref": "#/$defs/AzureProviderSpec" + }, + { + "$ref": "#/$defs/BedrockProviderSpec" + }, + { + "$ref": "#/$defs/CohereProviderSpec" + }, + { + "$ref": "#/$defs/CustomProviderSpec" + }, + { + "$ref": "#/$defs/GenerativeAiProviderSpec" + }, + { + "$ref": "#/$defs/HuggingFaceProviderSpec" + }, + { + "$ref": "#/$defs/InstructorProviderSpec" + }, + { + "$ref": "#/$defs/JinaProviderSpec" + }, + { + "$ref": "#/$defs/OllamaProviderSpec" + }, + { + "$ref": "#/$defs/ONNXProviderSpec" + }, + { + "$ref": "#/$defs/OpenAIProviderSpec" + }, + { + "$ref": "#/$defs/OpenCLIPProviderSpec" + }, + { + "$ref": "#/$defs/RoboflowProviderSpec" + }, + { + "$ref": "#/$defs/SentenceTransformerProviderSpec" + }, + { + "$ref": "#/$defs/Text2VecProviderSpec" + }, + { + "$ref": "#/$defs/VertexAIProviderSpec" + }, + { + "$ref": "#/$defs/VoyageAIProviderSpec" + }, + { + "$ref": "#/$defs/WatsonXProviderSpec" + } + ], + "title": "Embedding Model" + }, + "vectordb": { + "$ref": "#/$defs/VectorDbConfig" + } + }, + "title": "RagToolConfig", + "type": "object" + }, + "RoboflowProviderConfig": { + "description": "Configuration for Roboflow provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_url": { + "title": "Api Url", + "type": "string" + } + }, + "title": "RoboflowProviderConfig", + "type": "object" + }, + "RoboflowProviderSpec": { + "description": "Roboflow provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/RoboflowProviderConfig" + }, + "provider": { + "const": "roboflow", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "RoboflowProviderSpec", + "type": "object" + }, + "SentenceTransformerProviderConfig": { + "description": "Configuration for SentenceTransformer provider.", + "properties": { + "device": { + "title": "Device", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "normalize_embeddings": { + "title": "Normalize Embeddings", + "type": "boolean" + } + }, + "title": "SentenceTransformerProviderConfig", + "type": "object" + }, + "SentenceTransformerProviderSpec": { + "description": "SentenceTransformer provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/SentenceTransformerProviderConfig" + }, + "provider": { + "const": "sentence-transformer", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "SentenceTransformerProviderSpec", + "type": "object" + }, + "Text2VecProviderConfig": { + "description": "Configuration for Text2Vec provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "Text2VecProviderConfig", + "type": "object" + }, + "Text2VecProviderSpec": { + "description": "Text2Vec provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/Text2VecProviderConfig" + }, + "provider": { + "const": "text2vec", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "Text2VecProviderSpec", + "type": "object" + }, + "VectorDbConfig": { + "description": "Configuration for vector database provider.\n\nAttributes:\n provider: RAG provider literal.\n config: RAG configuration options.", + "properties": { + "config": { + "additionalProperties": true, + "title": "Config", + "type": "object" + }, + "provider": { + "enum": [ + "chromadb", + "qdrant" + ], + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "VectorDbConfig", + "type": "object" + }, + "VertexAIProviderConfig": { + "description": "Configuration for Vertex AI provider with dual SDK support.\n\nSupports both legacy models (textembedding-gecko*) using the deprecated\nvertexai.language_models SDK and new models using google-genai SDK.\n\nAttributes:\n api_key: Google API key (optional if using project_id with ADC). Only for new SDK models.\n model_name: Embedding model name (default: \"textembedding-gecko\").\n Legacy models: textembedding-gecko, textembedding-gecko@001, etc.\n New models: gemini-embedding-001, text-embedding-005, text-multilingual-embedding-002\n project_id: GCP project ID (required for Vertex AI backend and legacy models).\n location: GCP region/location (default: \"us-central1\").\n region: Deprecated alias for location (kept for backwards compatibility).\n task_type: Task type for embeddings (default: \"RETRIEVAL_DOCUMENT\"). Only for new SDK models.\n output_dimensionality: Output embedding dimension (optional). Only for new SDK models.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "location": { + "title": "Location", + "type": "string" + }, + "model_name": { + "enum": [ + "textembedding-gecko", + "textembedding-gecko@001", + "textembedding-gecko@002", + "textembedding-gecko@003", + "textembedding-gecko@latest", + "textembedding-gecko-multilingual", + "textembedding-gecko-multilingual@001", + "textembedding-gecko-multilingual@latest", + "gemini-embedding-001", + "text-embedding-005", + "text-multilingual-embedding-002" + ], + "title": "Model Name", + "type": "string" + }, + "output_dimensionality": { + "title": "Output Dimensionality", + "type": "integer" + }, + "project_id": { + "title": "Project Id", + "type": "string" + }, + "region": { + "title": "Region", + "type": "string" + }, + "task_type": { + "title": "Task Type", + "type": "string" + } + }, + "title": "VertexAIProviderConfig", + "type": "object" + }, + "VertexAIProviderSpec": { + "description": "Vertex AI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/VertexAIProviderConfig" + }, + "provider": { + "const": "google-vertex", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "VertexAIProviderSpec", + "type": "object" + }, + "VoyageAIProviderConfig": { + "description": "Configuration for VoyageAI provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "input_type": { + "title": "Input Type", + "type": "string" + }, + "max_retries": { + "title": "Max Retries", + "type": "integer" + }, + "model": { + "title": "Model", + "type": "string" + }, + "output_dimension": { + "title": "Output Dimension", + "type": "integer" + }, + "output_dtype": { + "title": "Output Dtype", + "type": "string" + }, + "timeout": { + "title": "Timeout", + "type": "number" + }, + "truncation": { + "title": "Truncation", + "type": "boolean" + } + }, + "title": "VoyageAIProviderConfig", + "type": "object" + }, + "VoyageAIProviderSpec": { + "description": "VoyageAI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/VoyageAIProviderConfig" + }, + "provider": { + "const": "voyageai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "VoyageAIProviderSpec", + "type": "object" + }, + "WatsonXProviderConfig": { + "description": "Configuration for WatsonX provider.", + "properties": { + "api_client": { + "title": "Api Client" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "batch_size": { + "title": "Batch Size", + "type": "integer" + }, + "bedrock_url": { + "title": "Bedrock Url", + "type": "string" + }, + "concurrency_limit": { + "title": "Concurrency Limit", + "type": "integer" + }, + "credentials": { + "title": "Credentials" + }, + "delay_time": { + "title": "Delay Time", + "type": "number" + }, + "iam_serviceid_crn": { + "title": "Iam Serviceid Crn", + "type": "string" + }, + "instance_id": { + "title": "Instance Id", + "type": "string" + }, + "max_retries": { + "title": "Max Retries", + "type": "integer" + }, + "model_id": { + "title": "Model Id", + "type": "string" + }, + "name": { + "title": "Name", + "type": "string" + }, + "params": { + "additionalProperties": { + "anyOf": [ + { + "type": "string" + }, + { + "additionalProperties": { + "type": "string" + }, + "type": "object" + } + ] + }, + "title": "Params", + "type": "object" + }, + "password": { + "title": "Password", + "type": "string" + }, + "persistent_connection": { + "title": "Persistent Connection", + "type": "boolean" + }, + "platform_url": { + "title": "Platform Url", + "type": "string" + }, + "project_id": { + "title": "Project Id", + "type": "string" + }, + "projects_token": { + "title": "Projects Token", + "type": "string" + }, + "proxies": { + "additionalProperties": true, + "title": "Proxies", + "type": "object" + }, + "retry_status_codes": { + "items": { + "type": "integer" + }, + "title": "Retry Status Codes", + "type": "array" + }, + "space_id": { + "title": "Space Id", + "type": "string" + }, + "token": { + "title": "Token", + "type": "string" + }, + "trusted_profile_id": { + "title": "Trusted Profile Id", + "type": "string" + }, + "url": { + "title": "Url", + "type": "string" + }, + "username": { + "title": "Username", + "type": "string" + }, + "verify": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "string" + } + ], + "title": "Verify" + }, + "version": { + "title": "Version", + "type": "string" + } + }, + "title": "WatsonXProviderConfig", + "type": "object" + }, + "WatsonXProviderSpec": { + "description": "WatsonX provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/WatsonXProviderConfig" + }, + "provider": { + "const": "watsonx", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "WatsonXProviderSpec", + "type": "object" } }, "properties": { "adapter": { "$ref": "#/$defs/Adapter" }, + "collection_name": { + "default": "rag_tool_collection", + "title": "Collection Name", + "type": "string" + }, "config": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "default": null, - "title": "Config" + "$ref": "#/$defs/RagToolConfig", + "description": "Configuration format accepted by RagTool." + }, + "limit": { + "default": 5, + "title": "Limit", + "type": "integer" + }, + "similarity_threshold": { + "default": 0.6, + "title": "Similarity Threshold", + "type": "number" }, "summarize": { "default": false, @@ -1315,7 +3252,11 @@ }, "name": "ComposioTool", "package_dependencies": [], - "run_params_schema": {} + "run_params_schema": { + "properties": {}, + "title": "_ArgsSchemaPlaceholder", + "type": "object" + } }, { "description": "Create a new Contextual AI RAG agent with documents and datastore", @@ -1793,45 +3734,21 @@ "type": "object" } }, - "description": "Tool to search the Couchbase database", + "description": "Tool to search the Couchbase database.", "properties": { "bucket_name": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "default": [ - null - ], - "title": "Bucket Name" + "description": "The name of the Couchbase bucket to search", + "title": "Bucket Name", + "type": "string" }, "cluster": { - "anyOf": [ - {}, - { - "type": "null" - } - ], - "default": null, + "description": "An instance of the Couchbase Cluster connected to the desired Couchbase server.", "title": "Cluster" }, "collection_name": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "default": [ - null - ], - "title": "Collection Name" + "description": "The name of the Couchbase collection to search", + "title": "Collection Name", + "type": "string" }, "embedding_key": { "anyOf": [ @@ -1847,18 +3764,9 @@ "title": "Embedding Key" }, "index_name": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "default": [ - null - ], - "title": "Index Name" + "description": "The name of the Couchbase index to search", + "title": "Index Name", + "type": "string" }, "limit": { "anyOf": [ @@ -1873,31 +3781,24 @@ "title": "Limit" }, "scope_name": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "default": [ - null - ], - "title": "Scope Name" + "description": "The name of the Couchbase scope containing the collection to search.", + "title": "Scope Name", + "type": "string" }, "scoped_index": { - "anyOf": [ - { - "type": "boolean" - }, - { - "type": "null" - } - ], - "title": "Scoped Index" + "default": true, + "description": "Specify whether the index is scoped. Is True by default.", + "title": "Scoped Index", + "type": "boolean" } }, + "required": [ + "cluster", + "collection_name", + "scope_name", + "bucket_name", + "index_name" + ], "title": "CouchbaseFTSVectorSearchTool", "type": "object" }, @@ -1926,10 +3827,169 @@ "init_params_schema": { "$defs": { "Adapter": { + "description": "Abstract base class for RAG adapters.", "properties": {}, "title": "Adapter", "type": "object" }, + "AzureProviderConfig": { + "description": "Configuration for Azure provider.", + "properties": { + "api_base": { + "title": "Api Base", + "type": "string" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_type": { + "title": "Api Type", + "type": "string" + }, + "api_version": { + "title": "Api Version", + "type": "string" + }, + "default_headers": { + "additionalProperties": true, + "title": "Default Headers", + "type": "object" + }, + "deployment_id": { + "title": "Deployment Id", + "type": "string" + }, + "dimensions": { + "title": "Dimensions", + "type": "integer" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "organization_id": { + "title": "Organization Id", + "type": "string" + } + }, + "required": [ + "deployment_id" + ], + "title": "AzureProviderConfig", + "type": "object" + }, + "AzureProviderSpec": { + "description": "Azure provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/AzureProviderConfig" + }, + "provider": { + "const": "azure", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "AzureProviderSpec", + "type": "object" + }, + "BedrockProviderConfig": { + "description": "Configuration for Bedrock provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + }, + "session": { + "title": "Session" + } + }, + "title": "BedrockProviderConfig", + "type": "object" + }, + "BedrockProviderSpec": { + "description": "Bedrock provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/BedrockProviderConfig" + }, + "provider": { + "const": "amazon-bedrock", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "BedrockProviderSpec", + "type": "object" + }, + "CohereProviderConfig": { + "description": "Configuration for Cohere provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "CohereProviderConfig", + "type": "object" + }, + "CohereProviderSpec": { + "description": "Cohere provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/CohereProviderConfig" + }, + "provider": { + "const": "cohere", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "CohereProviderSpec", + "type": "object" + }, + "CustomProviderConfig": { + "description": "Configuration for Custom provider.", + "properties": { + "embedding_callable": { + "title": "Embedding Callable" + } + }, + "title": "CustomProviderConfig", + "type": "object" + }, + "CustomProviderSpec": { + "description": "Custom provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/CustomProviderConfig" + }, + "provider": { + "const": "custom", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "CustomProviderSpec", + "type": "object" + }, "EnvVar": { "properties": { "default": { @@ -1964,24 +4024,819 @@ ], "title": "EnvVar", "type": "object" + }, + "GenerativeAiProviderConfig": { + "description": "Configuration for Google Generative AI provider.\n\nAttributes:\n api_key: Google API key for authentication.\n model_name: Embedding model name.\n task_type: Task type for embeddings. Default is \"RETRIEVAL_DOCUMENT\".", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "enum": [ + "gemini-embedding-001", + "text-embedding-005", + "text-multilingual-embedding-002" + ], + "title": "Model Name", + "type": "string" + }, + "task_type": { + "title": "Task Type", + "type": "string" + } + }, + "title": "GenerativeAiProviderConfig", + "type": "object" + }, + "GenerativeAiProviderSpec": { + "description": "Google Generative AI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/GenerativeAiProviderConfig" + }, + "provider": { + "const": "google-generativeai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "GenerativeAiProviderSpec", + "type": "object" + }, + "HuggingFaceProviderConfig": { + "description": "Configuration for HuggingFace provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model": { + "title": "Model", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "HuggingFaceProviderConfig", + "type": "object" + }, + "HuggingFaceProviderSpec": { + "description": "HuggingFace provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/HuggingFaceProviderConfig" + }, + "provider": { + "const": "huggingface", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "HuggingFaceProviderSpec", + "type": "object" + }, + "InstructorProviderConfig": { + "description": "Configuration for Instructor provider.", + "properties": { + "device": { + "title": "Device", + "type": "string" + }, + "instruction": { + "title": "Instruction", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "InstructorProviderConfig", + "type": "object" + }, + "InstructorProviderSpec": { + "description": "Instructor provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/InstructorProviderConfig" + }, + "provider": { + "const": "instructor", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "InstructorProviderSpec", + "type": "object" + }, + "JinaProviderConfig": { + "description": "Configuration for Jina provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "JinaProviderConfig", + "type": "object" + }, + "JinaProviderSpec": { + "description": "Jina provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/JinaProviderConfig" + }, + "provider": { + "const": "jina", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "JinaProviderSpec", + "type": "object" + }, + "ONNXProviderConfig": { + "description": "Configuration for ONNX provider.", + "properties": { + "preferred_providers": { + "items": { + "type": "string" + }, + "title": "Preferred Providers", + "type": "array" + } + }, + "title": "ONNXProviderConfig", + "type": "object" + }, + "ONNXProviderSpec": { + "description": "ONNX provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/ONNXProviderConfig" + }, + "provider": { + "const": "onnx", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "ONNXProviderSpec", + "type": "object" + }, + "OllamaProviderConfig": { + "description": "Configuration for Ollama provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + }, + "url": { + "title": "Url", + "type": "string" + } + }, + "title": "OllamaProviderConfig", + "type": "object" + }, + "OllamaProviderSpec": { + "description": "Ollama provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OllamaProviderConfig" + }, + "provider": { + "const": "ollama", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "OllamaProviderSpec", + "type": "object" + }, + "OpenAIProviderConfig": { + "description": "Configuration for OpenAI provider.", + "properties": { + "api_base": { + "title": "Api Base", + "type": "string" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_type": { + "title": "Api Type", + "type": "string" + }, + "api_version": { + "title": "Api Version", + "type": "string" + }, + "default_headers": { + "additionalProperties": true, + "title": "Default Headers", + "type": "object" + }, + "deployment_id": { + "title": "Deployment Id", + "type": "string" + }, + "dimensions": { + "title": "Dimensions", + "type": "integer" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "organization_id": { + "title": "Organization Id", + "type": "string" + } + }, + "title": "OpenAIProviderConfig", + "type": "object" + }, + "OpenAIProviderSpec": { + "description": "OpenAI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OpenAIProviderConfig" + }, + "provider": { + "const": "openai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "OpenAIProviderSpec", + "type": "object" + }, + "OpenCLIPProviderConfig": { + "description": "Configuration for OpenCLIP provider.", + "properties": { + "checkpoint": { + "title": "Checkpoint", + "type": "string" + }, + "device": { + "title": "Device", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "OpenCLIPProviderConfig", + "type": "object" + }, + "OpenCLIPProviderSpec": { + "description": "OpenCLIP provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OpenCLIPProviderConfig" + }, + "provider": { + "const": "openclip", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "OpenCLIPProviderSpec", + "type": "object" + }, + "RagToolConfig": { + "description": "Configuration accepted by RAG tools.\n\nSupports embedding model and vector database configuration.\n\nAttributes:\n embedding_model: Embedding model configuration accepted by RAG tools.\n vectordb: Vector database configuration accepted by RAG tools.", + "properties": { + "embedding_model": { + "anyOf": [ + { + "$ref": "#/$defs/AzureProviderSpec" + }, + { + "$ref": "#/$defs/BedrockProviderSpec" + }, + { + "$ref": "#/$defs/CohereProviderSpec" + }, + { + "$ref": "#/$defs/CustomProviderSpec" + }, + { + "$ref": "#/$defs/GenerativeAiProviderSpec" + }, + { + "$ref": "#/$defs/HuggingFaceProviderSpec" + }, + { + "$ref": "#/$defs/InstructorProviderSpec" + }, + { + "$ref": "#/$defs/JinaProviderSpec" + }, + { + "$ref": "#/$defs/OllamaProviderSpec" + }, + { + "$ref": "#/$defs/ONNXProviderSpec" + }, + { + "$ref": "#/$defs/OpenAIProviderSpec" + }, + { + "$ref": "#/$defs/OpenCLIPProviderSpec" + }, + { + "$ref": "#/$defs/RoboflowProviderSpec" + }, + { + "$ref": "#/$defs/SentenceTransformerProviderSpec" + }, + { + "$ref": "#/$defs/Text2VecProviderSpec" + }, + { + "$ref": "#/$defs/VertexAIProviderSpec" + }, + { + "$ref": "#/$defs/VoyageAIProviderSpec" + }, + { + "$ref": "#/$defs/WatsonXProviderSpec" + } + ], + "title": "Embedding Model" + }, + "vectordb": { + "$ref": "#/$defs/VectorDbConfig" + } + }, + "title": "RagToolConfig", + "type": "object" + }, + "RoboflowProviderConfig": { + "description": "Configuration for Roboflow provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_url": { + "title": "Api Url", + "type": "string" + } + }, + "title": "RoboflowProviderConfig", + "type": "object" + }, + "RoboflowProviderSpec": { + "description": "Roboflow provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/RoboflowProviderConfig" + }, + "provider": { + "const": "roboflow", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "RoboflowProviderSpec", + "type": "object" + }, + "SentenceTransformerProviderConfig": { + "description": "Configuration for SentenceTransformer provider.", + "properties": { + "device": { + "title": "Device", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "normalize_embeddings": { + "title": "Normalize Embeddings", + "type": "boolean" + } + }, + "title": "SentenceTransformerProviderConfig", + "type": "object" + }, + "SentenceTransformerProviderSpec": { + "description": "SentenceTransformer provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/SentenceTransformerProviderConfig" + }, + "provider": { + "const": "sentence-transformer", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "SentenceTransformerProviderSpec", + "type": "object" + }, + "Text2VecProviderConfig": { + "description": "Configuration for Text2Vec provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "Text2VecProviderConfig", + "type": "object" + }, + "Text2VecProviderSpec": { + "description": "Text2Vec provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/Text2VecProviderConfig" + }, + "provider": { + "const": "text2vec", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "Text2VecProviderSpec", + "type": "object" + }, + "VectorDbConfig": { + "description": "Configuration for vector database provider.\n\nAttributes:\n provider: RAG provider literal.\n config: RAG configuration options.", + "properties": { + "config": { + "additionalProperties": true, + "title": "Config", + "type": "object" + }, + "provider": { + "enum": [ + "chromadb", + "qdrant" + ], + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "VectorDbConfig", + "type": "object" + }, + "VertexAIProviderConfig": { + "description": "Configuration for Vertex AI provider with dual SDK support.\n\nSupports both legacy models (textembedding-gecko*) using the deprecated\nvertexai.language_models SDK and new models using google-genai SDK.\n\nAttributes:\n api_key: Google API key (optional if using project_id with ADC). Only for new SDK models.\n model_name: Embedding model name (default: \"textembedding-gecko\").\n Legacy models: textembedding-gecko, textembedding-gecko@001, etc.\n New models: gemini-embedding-001, text-embedding-005, text-multilingual-embedding-002\n project_id: GCP project ID (required for Vertex AI backend and legacy models).\n location: GCP region/location (default: \"us-central1\").\n region: Deprecated alias for location (kept for backwards compatibility).\n task_type: Task type for embeddings (default: \"RETRIEVAL_DOCUMENT\"). Only for new SDK models.\n output_dimensionality: Output embedding dimension (optional). Only for new SDK models.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "location": { + "title": "Location", + "type": "string" + }, + "model_name": { + "enum": [ + "textembedding-gecko", + "textembedding-gecko@001", + "textembedding-gecko@002", + "textembedding-gecko@003", + "textembedding-gecko@latest", + "textembedding-gecko-multilingual", + "textembedding-gecko-multilingual@001", + "textembedding-gecko-multilingual@latest", + "gemini-embedding-001", + "text-embedding-005", + "text-multilingual-embedding-002" + ], + "title": "Model Name", + "type": "string" + }, + "output_dimensionality": { + "title": "Output Dimensionality", + "type": "integer" + }, + "project_id": { + "title": "Project Id", + "type": "string" + }, + "region": { + "title": "Region", + "type": "string" + }, + "task_type": { + "title": "Task Type", + "type": "string" + } + }, + "title": "VertexAIProviderConfig", + "type": "object" + }, + "VertexAIProviderSpec": { + "description": "Vertex AI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/VertexAIProviderConfig" + }, + "provider": { + "const": "google-vertex", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "VertexAIProviderSpec", + "type": "object" + }, + "VoyageAIProviderConfig": { + "description": "Configuration for VoyageAI provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "input_type": { + "title": "Input Type", + "type": "string" + }, + "max_retries": { + "title": "Max Retries", + "type": "integer" + }, + "model": { + "title": "Model", + "type": "string" + }, + "output_dimension": { + "title": "Output Dimension", + "type": "integer" + }, + "output_dtype": { + "title": "Output Dtype", + "type": "string" + }, + "timeout": { + "title": "Timeout", + "type": "number" + }, + "truncation": { + "title": "Truncation", + "type": "boolean" + } + }, + "title": "VoyageAIProviderConfig", + "type": "object" + }, + "VoyageAIProviderSpec": { + "description": "VoyageAI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/VoyageAIProviderConfig" + }, + "provider": { + "const": "voyageai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "VoyageAIProviderSpec", + "type": "object" + }, + "WatsonXProviderConfig": { + "description": "Configuration for WatsonX provider.", + "properties": { + "api_client": { + "title": "Api Client" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "batch_size": { + "title": "Batch Size", + "type": "integer" + }, + "bedrock_url": { + "title": "Bedrock Url", + "type": "string" + }, + "concurrency_limit": { + "title": "Concurrency Limit", + "type": "integer" + }, + "credentials": { + "title": "Credentials" + }, + "delay_time": { + "title": "Delay Time", + "type": "number" + }, + "iam_serviceid_crn": { + "title": "Iam Serviceid Crn", + "type": "string" + }, + "instance_id": { + "title": "Instance Id", + "type": "string" + }, + "max_retries": { + "title": "Max Retries", + "type": "integer" + }, + "model_id": { + "title": "Model Id", + "type": "string" + }, + "name": { + "title": "Name", + "type": "string" + }, + "params": { + "additionalProperties": { + "anyOf": [ + { + "type": "string" + }, + { + "additionalProperties": { + "type": "string" + }, + "type": "object" + } + ] + }, + "title": "Params", + "type": "object" + }, + "password": { + "title": "Password", + "type": "string" + }, + "persistent_connection": { + "title": "Persistent Connection", + "type": "boolean" + }, + "platform_url": { + "title": "Platform Url", + "type": "string" + }, + "project_id": { + "title": "Project Id", + "type": "string" + }, + "projects_token": { + "title": "Projects Token", + "type": "string" + }, + "proxies": { + "additionalProperties": true, + "title": "Proxies", + "type": "object" + }, + "retry_status_codes": { + "items": { + "type": "integer" + }, + "title": "Retry Status Codes", + "type": "array" + }, + "space_id": { + "title": "Space Id", + "type": "string" + }, + "token": { + "title": "Token", + "type": "string" + }, + "trusted_profile_id": { + "title": "Trusted Profile Id", + "type": "string" + }, + "url": { + "title": "Url", + "type": "string" + }, + "username": { + "title": "Username", + "type": "string" + }, + "verify": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "string" + } + ], + "title": "Verify" + }, + "version": { + "title": "Version", + "type": "string" + } + }, + "title": "WatsonXProviderConfig", + "type": "object" + }, + "WatsonXProviderSpec": { + "description": "WatsonX provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/WatsonXProviderConfig" + }, + "provider": { + "const": "watsonx", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "WatsonXProviderSpec", + "type": "object" } }, "properties": { "adapter": { "$ref": "#/$defs/Adapter" }, + "collection_name": { + "default": "rag_tool_collection", + "title": "Collection Name", + "type": "string" + }, "config": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "default": null, - "title": "Config" + "$ref": "#/$defs/RagToolConfig", + "description": "Configuration format accepted by RagTool." + }, + "limit": { + "default": 5, + "title": "Limit", + "type": "integer" + }, + "similarity_threshold": { + "default": 0.6, + "title": "Similarity Threshold", + "type": "number" }, "summarize": { "default": false, @@ -2006,7 +4861,7 @@ "type": "null" } ], - "description": "Mandatory docx path you want to search", + "description": "File path or URL of a DOCX file to be searched", "title": "Docx" }, "search_query": { @@ -2084,14 +4939,46 @@ "type": "integer" }, "quality": { + "anyOf": [ + { + "enum": [ + "standard", + "hd", + "low", + "medium", + "high", + "auto" + ], + "type": "string" + }, + { + "type": "null" + } + ], "default": "standard", - "title": "Quality", - "type": "string" + "title": "Quality" }, "size": { + "anyOf": [ + { + "enum": [ + "auto", + "1024x1024", + "1536x1024", + "1024x1536", + "256x256", + "512x512", + "1792x1024", + "1024x1792" + ], + "type": "string" + }, + { + "type": "null" + } + ], "default": "1024x1024", - "title": "Size", - "type": "string" + "title": "Size" } }, "title": "DallETool", @@ -2355,10 +5242,169 @@ "init_params_schema": { "$defs": { "Adapter": { + "description": "Abstract base class for RAG adapters.", "properties": {}, "title": "Adapter", "type": "object" }, + "AzureProviderConfig": { + "description": "Configuration for Azure provider.", + "properties": { + "api_base": { + "title": "Api Base", + "type": "string" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_type": { + "title": "Api Type", + "type": "string" + }, + "api_version": { + "title": "Api Version", + "type": "string" + }, + "default_headers": { + "additionalProperties": true, + "title": "Default Headers", + "type": "object" + }, + "deployment_id": { + "title": "Deployment Id", + "type": "string" + }, + "dimensions": { + "title": "Dimensions", + "type": "integer" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "organization_id": { + "title": "Organization Id", + "type": "string" + } + }, + "required": [ + "deployment_id" + ], + "title": "AzureProviderConfig", + "type": "object" + }, + "AzureProviderSpec": { + "description": "Azure provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/AzureProviderConfig" + }, + "provider": { + "const": "azure", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "AzureProviderSpec", + "type": "object" + }, + "BedrockProviderConfig": { + "description": "Configuration for Bedrock provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + }, + "session": { + "title": "Session" + } + }, + "title": "BedrockProviderConfig", + "type": "object" + }, + "BedrockProviderSpec": { + "description": "Bedrock provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/BedrockProviderConfig" + }, + "provider": { + "const": "amazon-bedrock", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "BedrockProviderSpec", + "type": "object" + }, + "CohereProviderConfig": { + "description": "Configuration for Cohere provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "CohereProviderConfig", + "type": "object" + }, + "CohereProviderSpec": { + "description": "Cohere provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/CohereProviderConfig" + }, + "provider": { + "const": "cohere", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "CohereProviderSpec", + "type": "object" + }, + "CustomProviderConfig": { + "description": "Configuration for Custom provider.", + "properties": { + "embedding_callable": { + "title": "Embedding Callable" + } + }, + "title": "CustomProviderConfig", + "type": "object" + }, + "CustomProviderSpec": { + "description": "Custom provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/CustomProviderConfig" + }, + "provider": { + "const": "custom", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "CustomProviderSpec", + "type": "object" + }, "EnvVar": { "properties": { "default": { @@ -2393,24 +5439,819 @@ ], "title": "EnvVar", "type": "object" + }, + "GenerativeAiProviderConfig": { + "description": "Configuration for Google Generative AI provider.\n\nAttributes:\n api_key: Google API key for authentication.\n model_name: Embedding model name.\n task_type: Task type for embeddings. Default is \"RETRIEVAL_DOCUMENT\".", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "enum": [ + "gemini-embedding-001", + "text-embedding-005", + "text-multilingual-embedding-002" + ], + "title": "Model Name", + "type": "string" + }, + "task_type": { + "title": "Task Type", + "type": "string" + } + }, + "title": "GenerativeAiProviderConfig", + "type": "object" + }, + "GenerativeAiProviderSpec": { + "description": "Google Generative AI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/GenerativeAiProviderConfig" + }, + "provider": { + "const": "google-generativeai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "GenerativeAiProviderSpec", + "type": "object" + }, + "HuggingFaceProviderConfig": { + "description": "Configuration for HuggingFace provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model": { + "title": "Model", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "HuggingFaceProviderConfig", + "type": "object" + }, + "HuggingFaceProviderSpec": { + "description": "HuggingFace provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/HuggingFaceProviderConfig" + }, + "provider": { + "const": "huggingface", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "HuggingFaceProviderSpec", + "type": "object" + }, + "InstructorProviderConfig": { + "description": "Configuration for Instructor provider.", + "properties": { + "device": { + "title": "Device", + "type": "string" + }, + "instruction": { + "title": "Instruction", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "InstructorProviderConfig", + "type": "object" + }, + "InstructorProviderSpec": { + "description": "Instructor provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/InstructorProviderConfig" + }, + "provider": { + "const": "instructor", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "InstructorProviderSpec", + "type": "object" + }, + "JinaProviderConfig": { + "description": "Configuration for Jina provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "JinaProviderConfig", + "type": "object" + }, + "JinaProviderSpec": { + "description": "Jina provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/JinaProviderConfig" + }, + "provider": { + "const": "jina", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "JinaProviderSpec", + "type": "object" + }, + "ONNXProviderConfig": { + "description": "Configuration for ONNX provider.", + "properties": { + "preferred_providers": { + "items": { + "type": "string" + }, + "title": "Preferred Providers", + "type": "array" + } + }, + "title": "ONNXProviderConfig", + "type": "object" + }, + "ONNXProviderSpec": { + "description": "ONNX provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/ONNXProviderConfig" + }, + "provider": { + "const": "onnx", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "ONNXProviderSpec", + "type": "object" + }, + "OllamaProviderConfig": { + "description": "Configuration for Ollama provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + }, + "url": { + "title": "Url", + "type": "string" + } + }, + "title": "OllamaProviderConfig", + "type": "object" + }, + "OllamaProviderSpec": { + "description": "Ollama provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OllamaProviderConfig" + }, + "provider": { + "const": "ollama", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "OllamaProviderSpec", + "type": "object" + }, + "OpenAIProviderConfig": { + "description": "Configuration for OpenAI provider.", + "properties": { + "api_base": { + "title": "Api Base", + "type": "string" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_type": { + "title": "Api Type", + "type": "string" + }, + "api_version": { + "title": "Api Version", + "type": "string" + }, + "default_headers": { + "additionalProperties": true, + "title": "Default Headers", + "type": "object" + }, + "deployment_id": { + "title": "Deployment Id", + "type": "string" + }, + "dimensions": { + "title": "Dimensions", + "type": "integer" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "organization_id": { + "title": "Organization Id", + "type": "string" + } + }, + "title": "OpenAIProviderConfig", + "type": "object" + }, + "OpenAIProviderSpec": { + "description": "OpenAI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OpenAIProviderConfig" + }, + "provider": { + "const": "openai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "OpenAIProviderSpec", + "type": "object" + }, + "OpenCLIPProviderConfig": { + "description": "Configuration for OpenCLIP provider.", + "properties": { + "checkpoint": { + "title": "Checkpoint", + "type": "string" + }, + "device": { + "title": "Device", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "OpenCLIPProviderConfig", + "type": "object" + }, + "OpenCLIPProviderSpec": { + "description": "OpenCLIP provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OpenCLIPProviderConfig" + }, + "provider": { + "const": "openclip", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "OpenCLIPProviderSpec", + "type": "object" + }, + "RagToolConfig": { + "description": "Configuration accepted by RAG tools.\n\nSupports embedding model and vector database configuration.\n\nAttributes:\n embedding_model: Embedding model configuration accepted by RAG tools.\n vectordb: Vector database configuration accepted by RAG tools.", + "properties": { + "embedding_model": { + "anyOf": [ + { + "$ref": "#/$defs/AzureProviderSpec" + }, + { + "$ref": "#/$defs/BedrockProviderSpec" + }, + { + "$ref": "#/$defs/CohereProviderSpec" + }, + { + "$ref": "#/$defs/CustomProviderSpec" + }, + { + "$ref": "#/$defs/GenerativeAiProviderSpec" + }, + { + "$ref": "#/$defs/HuggingFaceProviderSpec" + }, + { + "$ref": "#/$defs/InstructorProviderSpec" + }, + { + "$ref": "#/$defs/JinaProviderSpec" + }, + { + "$ref": "#/$defs/OllamaProviderSpec" + }, + { + "$ref": "#/$defs/ONNXProviderSpec" + }, + { + "$ref": "#/$defs/OpenAIProviderSpec" + }, + { + "$ref": "#/$defs/OpenCLIPProviderSpec" + }, + { + "$ref": "#/$defs/RoboflowProviderSpec" + }, + { + "$ref": "#/$defs/SentenceTransformerProviderSpec" + }, + { + "$ref": "#/$defs/Text2VecProviderSpec" + }, + { + "$ref": "#/$defs/VertexAIProviderSpec" + }, + { + "$ref": "#/$defs/VoyageAIProviderSpec" + }, + { + "$ref": "#/$defs/WatsonXProviderSpec" + } + ], + "title": "Embedding Model" + }, + "vectordb": { + "$ref": "#/$defs/VectorDbConfig" + } + }, + "title": "RagToolConfig", + "type": "object" + }, + "RoboflowProviderConfig": { + "description": "Configuration for Roboflow provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_url": { + "title": "Api Url", + "type": "string" + } + }, + "title": "RoboflowProviderConfig", + "type": "object" + }, + "RoboflowProviderSpec": { + "description": "Roboflow provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/RoboflowProviderConfig" + }, + "provider": { + "const": "roboflow", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "RoboflowProviderSpec", + "type": "object" + }, + "SentenceTransformerProviderConfig": { + "description": "Configuration for SentenceTransformer provider.", + "properties": { + "device": { + "title": "Device", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "normalize_embeddings": { + "title": "Normalize Embeddings", + "type": "boolean" + } + }, + "title": "SentenceTransformerProviderConfig", + "type": "object" + }, + "SentenceTransformerProviderSpec": { + "description": "SentenceTransformer provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/SentenceTransformerProviderConfig" + }, + "provider": { + "const": "sentence-transformer", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "SentenceTransformerProviderSpec", + "type": "object" + }, + "Text2VecProviderConfig": { + "description": "Configuration for Text2Vec provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "Text2VecProviderConfig", + "type": "object" + }, + "Text2VecProviderSpec": { + "description": "Text2Vec provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/Text2VecProviderConfig" + }, + "provider": { + "const": "text2vec", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "Text2VecProviderSpec", + "type": "object" + }, + "VectorDbConfig": { + "description": "Configuration for vector database provider.\n\nAttributes:\n provider: RAG provider literal.\n config: RAG configuration options.", + "properties": { + "config": { + "additionalProperties": true, + "title": "Config", + "type": "object" + }, + "provider": { + "enum": [ + "chromadb", + "qdrant" + ], + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "VectorDbConfig", + "type": "object" + }, + "VertexAIProviderConfig": { + "description": "Configuration for Vertex AI provider with dual SDK support.\n\nSupports both legacy models (textembedding-gecko*) using the deprecated\nvertexai.language_models SDK and new models using google-genai SDK.\n\nAttributes:\n api_key: Google API key (optional if using project_id with ADC). Only for new SDK models.\n model_name: Embedding model name (default: \"textembedding-gecko\").\n Legacy models: textembedding-gecko, textembedding-gecko@001, etc.\n New models: gemini-embedding-001, text-embedding-005, text-multilingual-embedding-002\n project_id: GCP project ID (required for Vertex AI backend and legacy models).\n location: GCP region/location (default: \"us-central1\").\n region: Deprecated alias for location (kept for backwards compatibility).\n task_type: Task type for embeddings (default: \"RETRIEVAL_DOCUMENT\"). Only for new SDK models.\n output_dimensionality: Output embedding dimension (optional). Only for new SDK models.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "location": { + "title": "Location", + "type": "string" + }, + "model_name": { + "enum": [ + "textembedding-gecko", + "textembedding-gecko@001", + "textembedding-gecko@002", + "textembedding-gecko@003", + "textembedding-gecko@latest", + "textembedding-gecko-multilingual", + "textembedding-gecko-multilingual@001", + "textembedding-gecko-multilingual@latest", + "gemini-embedding-001", + "text-embedding-005", + "text-multilingual-embedding-002" + ], + "title": "Model Name", + "type": "string" + }, + "output_dimensionality": { + "title": "Output Dimensionality", + "type": "integer" + }, + "project_id": { + "title": "Project Id", + "type": "string" + }, + "region": { + "title": "Region", + "type": "string" + }, + "task_type": { + "title": "Task Type", + "type": "string" + } + }, + "title": "VertexAIProviderConfig", + "type": "object" + }, + "VertexAIProviderSpec": { + "description": "Vertex AI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/VertexAIProviderConfig" + }, + "provider": { + "const": "google-vertex", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "VertexAIProviderSpec", + "type": "object" + }, + "VoyageAIProviderConfig": { + "description": "Configuration for VoyageAI provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "input_type": { + "title": "Input Type", + "type": "string" + }, + "max_retries": { + "title": "Max Retries", + "type": "integer" + }, + "model": { + "title": "Model", + "type": "string" + }, + "output_dimension": { + "title": "Output Dimension", + "type": "integer" + }, + "output_dtype": { + "title": "Output Dtype", + "type": "string" + }, + "timeout": { + "title": "Timeout", + "type": "number" + }, + "truncation": { + "title": "Truncation", + "type": "boolean" + } + }, + "title": "VoyageAIProviderConfig", + "type": "object" + }, + "VoyageAIProviderSpec": { + "description": "VoyageAI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/VoyageAIProviderConfig" + }, + "provider": { + "const": "voyageai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "VoyageAIProviderSpec", + "type": "object" + }, + "WatsonXProviderConfig": { + "description": "Configuration for WatsonX provider.", + "properties": { + "api_client": { + "title": "Api Client" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "batch_size": { + "title": "Batch Size", + "type": "integer" + }, + "bedrock_url": { + "title": "Bedrock Url", + "type": "string" + }, + "concurrency_limit": { + "title": "Concurrency Limit", + "type": "integer" + }, + "credentials": { + "title": "Credentials" + }, + "delay_time": { + "title": "Delay Time", + "type": "number" + }, + "iam_serviceid_crn": { + "title": "Iam Serviceid Crn", + "type": "string" + }, + "instance_id": { + "title": "Instance Id", + "type": "string" + }, + "max_retries": { + "title": "Max Retries", + "type": "integer" + }, + "model_id": { + "title": "Model Id", + "type": "string" + }, + "name": { + "title": "Name", + "type": "string" + }, + "params": { + "additionalProperties": { + "anyOf": [ + { + "type": "string" + }, + { + "additionalProperties": { + "type": "string" + }, + "type": "object" + } + ] + }, + "title": "Params", + "type": "object" + }, + "password": { + "title": "Password", + "type": "string" + }, + "persistent_connection": { + "title": "Persistent Connection", + "type": "boolean" + }, + "platform_url": { + "title": "Platform Url", + "type": "string" + }, + "project_id": { + "title": "Project Id", + "type": "string" + }, + "projects_token": { + "title": "Projects Token", + "type": "string" + }, + "proxies": { + "additionalProperties": true, + "title": "Proxies", + "type": "object" + }, + "retry_status_codes": { + "items": { + "type": "integer" + }, + "title": "Retry Status Codes", + "type": "array" + }, + "space_id": { + "title": "Space Id", + "type": "string" + }, + "token": { + "title": "Token", + "type": "string" + }, + "trusted_profile_id": { + "title": "Trusted Profile Id", + "type": "string" + }, + "url": { + "title": "Url", + "type": "string" + }, + "username": { + "title": "Username", + "type": "string" + }, + "verify": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "string" + } + ], + "title": "Verify" + }, + "version": { + "title": "Version", + "type": "string" + } + }, + "title": "WatsonXProviderConfig", + "type": "object" + }, + "WatsonXProviderSpec": { + "description": "WatsonX provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/WatsonXProviderConfig" + }, + "provider": { + "const": "watsonx", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "WatsonXProviderSpec", + "type": "object" } }, "properties": { "adapter": { "$ref": "#/$defs/Adapter" }, + "collection_name": { + "default": "rag_tool_collection", + "title": "Collection Name", + "type": "string" + }, "config": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "default": null, - "title": "Config" + "$ref": "#/$defs/RagToolConfig", + "description": "Configuration format accepted by RagTool." + }, + "limit": { + "default": 5, + "title": "Limit", + "type": "integer" + }, + "similarity_threshold": { + "default": 0.6, + "title": "Similarity Threshold", + "type": "number" }, "summarize": { "default": false, @@ -2453,6 +6294,12 @@ "description": "API key for Exa services", "name": "EXA_API_KEY", "required": false + }, + { + "default": null, + "description": "API url for the Exa services", + "name": "EXA_BASE_URL", + "required": false } ], "humanized_name": "EXASearchTool", @@ -2508,6 +6355,19 @@ "required": false, "title": "Api Key" }, + "base_url": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "description": "API server url", + "required": false, + "title": "Base Url" + }, "client": { "anyOf": [ {}, @@ -2750,7 +6610,7 @@ "type": "object" } }, - "description": "A tool for reading file contents.\n\nThis tool inherits its schema handling from BaseTool to avoid recursive schema\ndefinition issues. The args_schema is set to FileReadToolSchema which defines\nthe required file_path parameter. The schema should not be overridden in the\nconstructor as it would break the inheritance chain and cause infinite loops.\n\nThe tool supports two ways of specifying the file path:\n1. At construction time via the file_path parameter\n2. At runtime via the file_path parameter in the tool's input\n\nArgs:\n file_path (Optional[str]): Path to the file to be read. If provided,\n this becomes the default file path for the tool.\n **kwargs: Additional keyword arguments passed to BaseTool.\n\nExample:\n >>> tool = FileReadTool(file_path=\"/path/to/file.txt\")\n >>> content = tool.run() # Reads /path/to/file.txt\n >>> content = tool.run(file_path=\"/path/to/other.txt\") # Reads other.txt\n >>> content = tool.run(file_path=\"/path/to/file.txt\", start_line=100, line_count=50) # Reads lines 100-149", + "description": "A tool for reading file contents.\n\nThis tool inherits its schema handling from BaseTool to avoid recursive schema\ndefinition issues. The args_schema is set to FileReadToolSchema which defines\nthe required file_path parameter. The schema should not be overridden in the\nconstructor as it would break the inheritance chain and cause infinite loops.\n\nThe tool supports two ways of specifying the file path:\n1. At construction time via the file_path parameter\n2. At runtime via the file_path parameter in the tool's input\n\nArgs:\n file_path (Optional[str]): Path to the file to be read. If provided,\n this becomes the default file path for the tool.\n **kwargs: Additional keyword arguments passed to BaseTool.\n\nExample:\n >>> tool = FileReadTool(file_path=\"/path/to/file.txt\")\n >>> content = tool.run() # Reads /path/to/file.txt\n >>> content = tool.run(file_path=\"/path/to/other.txt\") # Reads other.txt\n >>> content = tool.run(\n ... file_path=\"/path/to/file.txt\", start_line=100, line_count=50\n ... ) # Reads lines 100-149", "properties": { "file_path": { "anyOf": [ @@ -2952,7 +6812,7 @@ "type": "object" } }, - "description": "Tool for crawling websites using Firecrawl. To run this tool, you need to have a Firecrawl API key.\n\nArgs:\n api_key (str): Your Firecrawl API key.\n config (dict): Optional. It contains Firecrawl API parameters.\n\nDefault configuration options:\n max_depth (int): Maximum depth to crawl. Default: 2\n ignore_sitemap (bool): Whether to ignore sitemap. Default: True\n limit (int): Maximum number of pages to crawl. Default: 100\n allow_backward_links (bool): Allow crawling backward links. Default: False\n allow_external_links (bool): Allow crawling external links. Default: False\n scrape_options (ScrapeOptions): Options for scraping content\n - formats (list[str]): Content formats to return. Default: [\"markdown\", \"screenshot\", \"links\"]\n - only_main_content (bool): Only return main content. Default: True\n - timeout (int): Timeout in milliseconds. Default: 30000", + "description": "Tool for crawling websites using Firecrawl v2 API. To run this tool, you need to have a Firecrawl API key.\n\nArgs:\n api_key (str): Your Firecrawl API key.\n config (dict): Optional. It contains Firecrawl v2 API parameters.\n\nDefault configuration options (Firecrawl v2 API):\n max_discovery_depth (int): Maximum depth for discovering pages. Default: 2\n ignore_sitemap (bool): Whether to ignore sitemap. Default: True\n limit (int): Maximum number of pages to crawl. Default: 10\n allow_external_links (bool): Allow crawling external links. Default: False\n allow_subdomains (bool): Allow crawling subdomains. Default: False\n delay (int): Delay between requests in milliseconds. Default: None\n scrape_options (dict): Options for scraping content\n - formats (list[str]): Content formats to return. Default: [\"markdown\"]\n - only_main_content (bool): Only return main content. Default: True\n - timeout (int): Timeout in milliseconds. Default: 10000", "properties": { "api_key": { "anyOf": [ @@ -3050,7 +6910,7 @@ "type": "object" } }, - "description": "Tool for scraping webpages using Firecrawl. To run this tool, you need to have a Firecrawl API key.\n\nArgs:\n api_key (str): Your Firecrawl API key.\n config (dict): Optional. It contains Firecrawl API parameters.\n\nDefault configuration options:\n formats (list[str]): Content formats to return. Default: [\"markdown\"]\n onlyMainContent (bool): Only return main content. Default: True\n includeTags (list[str]): Tags to include. Default: []\n excludeTags (list[str]): Tags to exclude. Default: []\n headers (dict): Headers to include. Default: {}\n waitFor (int): Time to wait for page to load in ms. Default: 0\n json_options (dict): Options for JSON extraction. Default: None", + "description": "Tool for scraping webpages using Firecrawl v2 API. To run this tool, you need to have a Firecrawl API key.\n\nArgs:\n api_key (str): Your Firecrawl API key.\n config (dict): Optional. It contains Firecrawl v2 API parameters.\n\nDefault configuration options (Firecrawl v2 API):\n formats (list[str]): Content formats to return. Default: [\"markdown\"]\n only_main_content (bool): Only return main content excluding headers, navs, footers, etc. Default: True\n include_tags (list[str]): Tags to include in the output. Default: []\n exclude_tags (list[str]): Tags to exclude from the output. Default: []\n max_age (int): Returns cached version if younger than this age in milliseconds. Default: 172800000 (2 days)\n headers (dict): Headers to send with the request (e.g., cookies, user-agent). Default: {}\n wait_for (int): Delay in milliseconds before fetching content. Default: 0\n mobile (bool): Emulate scraping from a mobile device. Default: False\n skip_tls_verification (bool): Skip TLS certificate verification. Default: True\n timeout (int): Request timeout in milliseconds. Default: None\n remove_base64_images (bool): Remove base64 images from output. Default: True\n block_ads (bool): Enable ad-blocking and cookie popup blocking. Default: True\n proxy (str): Proxy type (\"basic\", \"stealth\", \"auto\"). Default: \"auto\"\n store_in_cache (bool): Store page in Firecrawl index and cache. Default: True", "properties": { "api_key": { "anyOf": [ @@ -3141,7 +7001,7 @@ "type": "object" } }, - "description": "Tool for searching webpages using Firecrawl. To run this tool, you need to have a Firecrawl API key.\n\nArgs:\n api_key (str): Your Firecrawl API key.\n config (dict): Optional. It contains Firecrawl API parameters.\n\nDefault configuration options:\n limit (int): Maximum number of pages to crawl. Default: 5\n tbs (str): Time before search. Default: None\n lang (str): Language. Default: \"en\"\n country (str): Country. Default: \"us\"\n location (str): Location. Default: None\n timeout (int): Timeout in milliseconds. Default: 60000", + "description": "Tool for searching webpages using Firecrawl v2 API. To run this tool, you need to have a Firecrawl API key.\n\nArgs:\n api_key (str): Your Firecrawl API key.\n config (dict): Optional. It contains Firecrawl v2 API parameters.\n\nDefault configuration options (Firecrawl v2 API):\n limit (int): Maximum number of search results to return. Default: 5\n tbs (str): Time-based search filter (e.g., \"qdr:d\" for past day). Default: None\n location (str): Location for search results. Default: None\n timeout (int): Request timeout in milliseconds. Default: None\n scrape_options (dict): Options for scraping the search results. Default: {\"formats\": [\"markdown\"]}\n - formats (list[str]): Content formats to return. Default: [\"markdown\"]\n - only_main_content (bool): Only return main content. Default: True\n - include_tags (list[str]): Tags to include. Default: []\n - exclude_tags (list[str]): Tags to exclude. Default: []\n - wait_for (int): Delay before fetching content in ms. Default: 0\n - timeout (int): Request timeout in milliseconds. Default: None", "properties": { "api_key": { "anyOf": [ @@ -3195,13 +7055,13 @@ "env_vars": [ { "default": null, - "description": "Personal Access Token for CrewAI AMP API", + "description": "Personal Access Token for CrewAI Enterprise API", "name": "CREWAI_PERSONAL_ACCESS_TOKEN", "required": true }, { "default": null, - "description": "Base URL for CrewAI AMP API", + "description": "Base URL for CrewAI Enterprise API", "name": "CREWAI_PLUS_URL", "required": false } @@ -3304,10 +7164,169 @@ "init_params_schema": { "$defs": { "Adapter": { + "description": "Abstract base class for RAG adapters.", "properties": {}, "title": "Adapter", "type": "object" }, + "AzureProviderConfig": { + "description": "Configuration for Azure provider.", + "properties": { + "api_base": { + "title": "Api Base", + "type": "string" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_type": { + "title": "Api Type", + "type": "string" + }, + "api_version": { + "title": "Api Version", + "type": "string" + }, + "default_headers": { + "additionalProperties": true, + "title": "Default Headers", + "type": "object" + }, + "deployment_id": { + "title": "Deployment Id", + "type": "string" + }, + "dimensions": { + "title": "Dimensions", + "type": "integer" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "organization_id": { + "title": "Organization Id", + "type": "string" + } + }, + "required": [ + "deployment_id" + ], + "title": "AzureProviderConfig", + "type": "object" + }, + "AzureProviderSpec": { + "description": "Azure provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/AzureProviderConfig" + }, + "provider": { + "const": "azure", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "AzureProviderSpec", + "type": "object" + }, + "BedrockProviderConfig": { + "description": "Configuration for Bedrock provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + }, + "session": { + "title": "Session" + } + }, + "title": "BedrockProviderConfig", + "type": "object" + }, + "BedrockProviderSpec": { + "description": "Bedrock provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/BedrockProviderConfig" + }, + "provider": { + "const": "amazon-bedrock", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "BedrockProviderSpec", + "type": "object" + }, + "CohereProviderConfig": { + "description": "Configuration for Cohere provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "CohereProviderConfig", + "type": "object" + }, + "CohereProviderSpec": { + "description": "Cohere provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/CohereProviderConfig" + }, + "provider": { + "const": "cohere", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "CohereProviderSpec", + "type": "object" + }, + "CustomProviderConfig": { + "description": "Configuration for Custom provider.", + "properties": { + "embedding_callable": { + "title": "Embedding Callable" + } + }, + "title": "CustomProviderConfig", + "type": "object" + }, + "CustomProviderSpec": { + "description": "Custom provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/CustomProviderConfig" + }, + "provider": { + "const": "custom", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "CustomProviderSpec", + "type": "object" + }, "EnvVar": { "properties": { "default": { @@ -3342,24 +7361,809 @@ ], "title": "EnvVar", "type": "object" + }, + "GenerativeAiProviderConfig": { + "description": "Configuration for Google Generative AI provider.\n\nAttributes:\n api_key: Google API key for authentication.\n model_name: Embedding model name.\n task_type: Task type for embeddings. Default is \"RETRIEVAL_DOCUMENT\".", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "enum": [ + "gemini-embedding-001", + "text-embedding-005", + "text-multilingual-embedding-002" + ], + "title": "Model Name", + "type": "string" + }, + "task_type": { + "title": "Task Type", + "type": "string" + } + }, + "title": "GenerativeAiProviderConfig", + "type": "object" + }, + "GenerativeAiProviderSpec": { + "description": "Google Generative AI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/GenerativeAiProviderConfig" + }, + "provider": { + "const": "google-generativeai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "GenerativeAiProviderSpec", + "type": "object" + }, + "HuggingFaceProviderConfig": { + "description": "Configuration for HuggingFace provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model": { + "title": "Model", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "HuggingFaceProviderConfig", + "type": "object" + }, + "HuggingFaceProviderSpec": { + "description": "HuggingFace provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/HuggingFaceProviderConfig" + }, + "provider": { + "const": "huggingface", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "HuggingFaceProviderSpec", + "type": "object" + }, + "InstructorProviderConfig": { + "description": "Configuration for Instructor provider.", + "properties": { + "device": { + "title": "Device", + "type": "string" + }, + "instruction": { + "title": "Instruction", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "InstructorProviderConfig", + "type": "object" + }, + "InstructorProviderSpec": { + "description": "Instructor provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/InstructorProviderConfig" + }, + "provider": { + "const": "instructor", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "InstructorProviderSpec", + "type": "object" + }, + "JinaProviderConfig": { + "description": "Configuration for Jina provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "JinaProviderConfig", + "type": "object" + }, + "JinaProviderSpec": { + "description": "Jina provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/JinaProviderConfig" + }, + "provider": { + "const": "jina", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "JinaProviderSpec", + "type": "object" + }, + "ONNXProviderConfig": { + "description": "Configuration for ONNX provider.", + "properties": { + "preferred_providers": { + "items": { + "type": "string" + }, + "title": "Preferred Providers", + "type": "array" + } + }, + "title": "ONNXProviderConfig", + "type": "object" + }, + "ONNXProviderSpec": { + "description": "ONNX provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/ONNXProviderConfig" + }, + "provider": { + "const": "onnx", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "ONNXProviderSpec", + "type": "object" + }, + "OllamaProviderConfig": { + "description": "Configuration for Ollama provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + }, + "url": { + "title": "Url", + "type": "string" + } + }, + "title": "OllamaProviderConfig", + "type": "object" + }, + "OllamaProviderSpec": { + "description": "Ollama provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OllamaProviderConfig" + }, + "provider": { + "const": "ollama", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "OllamaProviderSpec", + "type": "object" + }, + "OpenAIProviderConfig": { + "description": "Configuration for OpenAI provider.", + "properties": { + "api_base": { + "title": "Api Base", + "type": "string" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_type": { + "title": "Api Type", + "type": "string" + }, + "api_version": { + "title": "Api Version", + "type": "string" + }, + "default_headers": { + "additionalProperties": true, + "title": "Default Headers", + "type": "object" + }, + "deployment_id": { + "title": "Deployment Id", + "type": "string" + }, + "dimensions": { + "title": "Dimensions", + "type": "integer" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "organization_id": { + "title": "Organization Id", + "type": "string" + } + }, + "title": "OpenAIProviderConfig", + "type": "object" + }, + "OpenAIProviderSpec": { + "description": "OpenAI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OpenAIProviderConfig" + }, + "provider": { + "const": "openai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "OpenAIProviderSpec", + "type": "object" + }, + "OpenCLIPProviderConfig": { + "description": "Configuration for OpenCLIP provider.", + "properties": { + "checkpoint": { + "title": "Checkpoint", + "type": "string" + }, + "device": { + "title": "Device", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "OpenCLIPProviderConfig", + "type": "object" + }, + "OpenCLIPProviderSpec": { + "description": "OpenCLIP provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OpenCLIPProviderConfig" + }, + "provider": { + "const": "openclip", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "OpenCLIPProviderSpec", + "type": "object" + }, + "RagToolConfig": { + "description": "Configuration accepted by RAG tools.\n\nSupports embedding model and vector database configuration.\n\nAttributes:\n embedding_model: Embedding model configuration accepted by RAG tools.\n vectordb: Vector database configuration accepted by RAG tools.", + "properties": { + "embedding_model": { + "anyOf": [ + { + "$ref": "#/$defs/AzureProviderSpec" + }, + { + "$ref": "#/$defs/BedrockProviderSpec" + }, + { + "$ref": "#/$defs/CohereProviderSpec" + }, + { + "$ref": "#/$defs/CustomProviderSpec" + }, + { + "$ref": "#/$defs/GenerativeAiProviderSpec" + }, + { + "$ref": "#/$defs/HuggingFaceProviderSpec" + }, + { + "$ref": "#/$defs/InstructorProviderSpec" + }, + { + "$ref": "#/$defs/JinaProviderSpec" + }, + { + "$ref": "#/$defs/OllamaProviderSpec" + }, + { + "$ref": "#/$defs/ONNXProviderSpec" + }, + { + "$ref": "#/$defs/OpenAIProviderSpec" + }, + { + "$ref": "#/$defs/OpenCLIPProviderSpec" + }, + { + "$ref": "#/$defs/RoboflowProviderSpec" + }, + { + "$ref": "#/$defs/SentenceTransformerProviderSpec" + }, + { + "$ref": "#/$defs/Text2VecProviderSpec" + }, + { + "$ref": "#/$defs/VertexAIProviderSpec" + }, + { + "$ref": "#/$defs/VoyageAIProviderSpec" + }, + { + "$ref": "#/$defs/WatsonXProviderSpec" + } + ], + "title": "Embedding Model" + }, + "vectordb": { + "$ref": "#/$defs/VectorDbConfig" + } + }, + "title": "RagToolConfig", + "type": "object" + }, + "RoboflowProviderConfig": { + "description": "Configuration for Roboflow provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_url": { + "title": "Api Url", + "type": "string" + } + }, + "title": "RoboflowProviderConfig", + "type": "object" + }, + "RoboflowProviderSpec": { + "description": "Roboflow provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/RoboflowProviderConfig" + }, + "provider": { + "const": "roboflow", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "RoboflowProviderSpec", + "type": "object" + }, + "SentenceTransformerProviderConfig": { + "description": "Configuration for SentenceTransformer provider.", + "properties": { + "device": { + "title": "Device", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "normalize_embeddings": { + "title": "Normalize Embeddings", + "type": "boolean" + } + }, + "title": "SentenceTransformerProviderConfig", + "type": "object" + }, + "SentenceTransformerProviderSpec": { + "description": "SentenceTransformer provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/SentenceTransformerProviderConfig" + }, + "provider": { + "const": "sentence-transformer", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "SentenceTransformerProviderSpec", + "type": "object" + }, + "Text2VecProviderConfig": { + "description": "Configuration for Text2Vec provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "Text2VecProviderConfig", + "type": "object" + }, + "Text2VecProviderSpec": { + "description": "Text2Vec provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/Text2VecProviderConfig" + }, + "provider": { + "const": "text2vec", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "Text2VecProviderSpec", + "type": "object" + }, + "VectorDbConfig": { + "description": "Configuration for vector database provider.\n\nAttributes:\n provider: RAG provider literal.\n config: RAG configuration options.", + "properties": { + "config": { + "additionalProperties": true, + "title": "Config", + "type": "object" + }, + "provider": { + "enum": [ + "chromadb", + "qdrant" + ], + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "VectorDbConfig", + "type": "object" + }, + "VertexAIProviderConfig": { + "description": "Configuration for Vertex AI provider with dual SDK support.\n\nSupports both legacy models (textembedding-gecko*) using the deprecated\nvertexai.language_models SDK and new models using google-genai SDK.\n\nAttributes:\n api_key: Google API key (optional if using project_id with ADC). Only for new SDK models.\n model_name: Embedding model name (default: \"textembedding-gecko\").\n Legacy models: textembedding-gecko, textembedding-gecko@001, etc.\n New models: gemini-embedding-001, text-embedding-005, text-multilingual-embedding-002\n project_id: GCP project ID (required for Vertex AI backend and legacy models).\n location: GCP region/location (default: \"us-central1\").\n region: Deprecated alias for location (kept for backwards compatibility).\n task_type: Task type for embeddings (default: \"RETRIEVAL_DOCUMENT\"). Only for new SDK models.\n output_dimensionality: Output embedding dimension (optional). Only for new SDK models.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "location": { + "title": "Location", + "type": "string" + }, + "model_name": { + "enum": [ + "textembedding-gecko", + "textembedding-gecko@001", + "textembedding-gecko@002", + "textembedding-gecko@003", + "textembedding-gecko@latest", + "textembedding-gecko-multilingual", + "textembedding-gecko-multilingual@001", + "textembedding-gecko-multilingual@latest", + "gemini-embedding-001", + "text-embedding-005", + "text-multilingual-embedding-002" + ], + "title": "Model Name", + "type": "string" + }, + "output_dimensionality": { + "title": "Output Dimensionality", + "type": "integer" + }, + "project_id": { + "title": "Project Id", + "type": "string" + }, + "region": { + "title": "Region", + "type": "string" + }, + "task_type": { + "title": "Task Type", + "type": "string" + } + }, + "title": "VertexAIProviderConfig", + "type": "object" + }, + "VertexAIProviderSpec": { + "description": "Vertex AI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/VertexAIProviderConfig" + }, + "provider": { + "const": "google-vertex", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "VertexAIProviderSpec", + "type": "object" + }, + "VoyageAIProviderConfig": { + "description": "Configuration for VoyageAI provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "input_type": { + "title": "Input Type", + "type": "string" + }, + "max_retries": { + "title": "Max Retries", + "type": "integer" + }, + "model": { + "title": "Model", + "type": "string" + }, + "output_dimension": { + "title": "Output Dimension", + "type": "integer" + }, + "output_dtype": { + "title": "Output Dtype", + "type": "string" + }, + "timeout": { + "title": "Timeout", + "type": "number" + }, + "truncation": { + "title": "Truncation", + "type": "boolean" + } + }, + "title": "VoyageAIProviderConfig", + "type": "object" + }, + "VoyageAIProviderSpec": { + "description": "VoyageAI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/VoyageAIProviderConfig" + }, + "provider": { + "const": "voyageai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "VoyageAIProviderSpec", + "type": "object" + }, + "WatsonXProviderConfig": { + "description": "Configuration for WatsonX provider.", + "properties": { + "api_client": { + "title": "Api Client" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "batch_size": { + "title": "Batch Size", + "type": "integer" + }, + "bedrock_url": { + "title": "Bedrock Url", + "type": "string" + }, + "concurrency_limit": { + "title": "Concurrency Limit", + "type": "integer" + }, + "credentials": { + "title": "Credentials" + }, + "delay_time": { + "title": "Delay Time", + "type": "number" + }, + "iam_serviceid_crn": { + "title": "Iam Serviceid Crn", + "type": "string" + }, + "instance_id": { + "title": "Instance Id", + "type": "string" + }, + "max_retries": { + "title": "Max Retries", + "type": "integer" + }, + "model_id": { + "title": "Model Id", + "type": "string" + }, + "name": { + "title": "Name", + "type": "string" + }, + "params": { + "additionalProperties": { + "anyOf": [ + { + "type": "string" + }, + { + "additionalProperties": { + "type": "string" + }, + "type": "object" + } + ] + }, + "title": "Params", + "type": "object" + }, + "password": { + "title": "Password", + "type": "string" + }, + "persistent_connection": { + "title": "Persistent Connection", + "type": "boolean" + }, + "platform_url": { + "title": "Platform Url", + "type": "string" + }, + "project_id": { + "title": "Project Id", + "type": "string" + }, + "projects_token": { + "title": "Projects Token", + "type": "string" + }, + "proxies": { + "additionalProperties": true, + "title": "Proxies", + "type": "object" + }, + "retry_status_codes": { + "items": { + "type": "integer" + }, + "title": "Retry Status Codes", + "type": "array" + }, + "space_id": { + "title": "Space Id", + "type": "string" + }, + "token": { + "title": "Token", + "type": "string" + }, + "trusted_profile_id": { + "title": "Trusted Profile Id", + "type": "string" + }, + "url": { + "title": "Url", + "type": "string" + }, + "username": { + "title": "Username", + "type": "string" + }, + "verify": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "string" + } + ], + "title": "Verify" + }, + "version": { + "title": "Version", + "type": "string" + } + }, + "title": "WatsonXProviderConfig", + "type": "object" + }, + "WatsonXProviderSpec": { + "description": "WatsonX provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/WatsonXProviderConfig" + }, + "provider": { + "const": "watsonx", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "WatsonXProviderSpec", + "type": "object" } }, "properties": { "adapter": { "$ref": "#/$defs/Adapter" }, + "collection_name": { + "default": "rag_tool_collection", + "title": "Collection Name", + "type": "string" + }, "config": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "default": null, - "title": "Config" + "$ref": "#/$defs/RagToolConfig", + "description": "Configuration format accepted by RagTool." }, "content_types": { "description": "Content types you want to be included search, options: [code, repo, pr, issue]", @@ -3373,6 +8177,16 @@ "title": "Gh Token", "type": "string" }, + "limit": { + "default": 5, + "title": "Limit", + "type": "integer" + }, + "similarity_threshold": { + "default": 0.6, + "title": "Similarity Threshold", + "type": "number" + }, "summarize": { "default": false, "title": "Summarize", @@ -3580,7 +8394,7 @@ "type": "object" } }, - "description": "A CrewAI tool for invoking external crew/flows APIs.\n\nThis tool provides CrewAI Platform API integration with external crew services, supporting:\n- Dynamic input schema configuration\n- Automatic polling for task completion\n- Bearer token authentication\n- Comprehensive error handling\n\nExample:\n Basic usage:\n >>> tool = InvokeCrewAIAutomationTool(\n ... crew_api_url=\"https://api.example.com\",\n ... crew_bearer_token=\"your_token\",\n ... crew_name=\"My Crew\",\n ... crew_description=\"Description of what the crew does\"\n ... )\n \n With custom inputs:\n >>> custom_inputs = {\n ... \"param1\": Field(..., description=\"Description of param1\"),\n ... \"param2\": Field(default=\"default_value\", description=\"Description of param2\")\n ... }\n >>> tool = InvokeCrewAIAutomationTool(\n ... crew_api_url=\"https://api.example.com\",\n ... crew_bearer_token=\"your_token\",\n ... crew_name=\"My Crew\",\n ... crew_description=\"Description of what the crew does\",\n ... crew_inputs=custom_inputs\n ... )\n \n Example:\n >>> tools=[\n ... InvokeCrewAIAutomationTool(\n ... crew_api_url=\"https://canary-crew-[...].crewai.com\",\n ... crew_bearer_token=\"[Your token: abcdef012345]\",\n ... crew_name=\"State of AI Report\",\n ... crew_description=\"Retrieves a report on state of AI for a given year.\",\n ... crew_inputs={\n ... \"year\": Field(..., description=\"Year to retrieve the report for (integer)\")\n ... }\n ... )\n ... ]", + "description": "A CrewAI tool for invoking external crew/flows APIs.\n\nThis tool provides CrewAI Platform API integration with external crew services, supporting:\n- Dynamic input schema configuration\n- Automatic polling for task completion\n- Bearer token authentication\n- Comprehensive error handling\n\nExample:\n Basic usage:\n >>> tool = InvokeCrewAIAutomationTool(\n ... crew_api_url=\"https://api.example.com\",\n ... crew_bearer_token=\"your_token\",\n ... crew_name=\"My Crew\",\n ... crew_description=\"Description of what the crew does\",\n ... )\n\n With custom inputs:\n >>> custom_inputs = {\n ... \"param1\": Field(..., description=\"Description of param1\"),\n ... \"param2\": Field(\n ... default=\"default_value\", description=\"Description of param2\"\n ... ),\n ... }\n >>> tool = InvokeCrewAIAutomationTool(\n ... crew_api_url=\"https://api.example.com\",\n ... crew_bearer_token=\"your_token\",\n ... crew_name=\"My Crew\",\n ... crew_description=\"Description of what the crew does\",\n ... crew_inputs=custom_inputs,\n ... )\n\nExample:\n >>> tools = [\n ... InvokeCrewAIAutomationTool(\n ... crew_api_url=\"https://canary-crew-[...].crewai.com\",\n ... crew_bearer_token=\"[Your token: abcdef012345]\",\n ... crew_name=\"State of AI Report\",\n ... crew_description=\"Retrieves a report on state of AI for a given year.\",\n ... crew_inputs={\n ... \"year\": Field(\n ... ..., description=\"Year to retrieve the report for (integer)\"\n ... )\n ... },\n ... )\n ... ]", "properties": { "crew_api_url": { "title": "Crew Api Url", @@ -3628,10 +8442,1056 @@ "init_params_schema": { "$defs": { "Adapter": { + "description": "Abstract base class for RAG adapters.", "properties": {}, "title": "Adapter", "type": "object" }, + "AzureProviderConfig": { + "description": "Configuration for Azure provider.", + "properties": { + "api_base": { + "title": "Api Base", + "type": "string" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_type": { + "title": "Api Type", + "type": "string" + }, + "api_version": { + "title": "Api Version", + "type": "string" + }, + "default_headers": { + "additionalProperties": true, + "title": "Default Headers", + "type": "object" + }, + "deployment_id": { + "title": "Deployment Id", + "type": "string" + }, + "dimensions": { + "title": "Dimensions", + "type": "integer" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "organization_id": { + "title": "Organization Id", + "type": "string" + } + }, + "required": [ + "deployment_id" + ], + "title": "AzureProviderConfig", + "type": "object" + }, + "AzureProviderSpec": { + "description": "Azure provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/AzureProviderConfig" + }, + "provider": { + "const": "azure", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "AzureProviderSpec", + "type": "object" + }, + "BedrockProviderConfig": { + "description": "Configuration for Bedrock provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + }, + "session": { + "title": "Session" + } + }, + "title": "BedrockProviderConfig", + "type": "object" + }, + "BedrockProviderSpec": { + "description": "Bedrock provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/BedrockProviderConfig" + }, + "provider": { + "const": "amazon-bedrock", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "BedrockProviderSpec", + "type": "object" + }, + "CohereProviderConfig": { + "description": "Configuration for Cohere provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "CohereProviderConfig", + "type": "object" + }, + "CohereProviderSpec": { + "description": "Cohere provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/CohereProviderConfig" + }, + "provider": { + "const": "cohere", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "CohereProviderSpec", + "type": "object" + }, + "CustomProviderConfig": { + "description": "Configuration for Custom provider.", + "properties": { + "embedding_callable": { + "title": "Embedding Callable" + } + }, + "title": "CustomProviderConfig", + "type": "object" + }, + "CustomProviderSpec": { + "description": "Custom provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/CustomProviderConfig" + }, + "provider": { + "const": "custom", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "CustomProviderSpec", + "type": "object" + }, + "EnvVar": { + "properties": { + "default": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "title": "Default" + }, + "description": { + "title": "Description", + "type": "string" + }, + "name": { + "title": "Name", + "type": "string" + }, + "required": { + "default": true, + "title": "Required", + "type": "boolean" + } + }, + "required": [ + "name", + "description" + ], + "title": "EnvVar", + "type": "object" + }, + "GenerativeAiProviderConfig": { + "description": "Configuration for Google Generative AI provider.\n\nAttributes:\n api_key: Google API key for authentication.\n model_name: Embedding model name.\n task_type: Task type for embeddings. Default is \"RETRIEVAL_DOCUMENT\".", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "enum": [ + "gemini-embedding-001", + "text-embedding-005", + "text-multilingual-embedding-002" + ], + "title": "Model Name", + "type": "string" + }, + "task_type": { + "title": "Task Type", + "type": "string" + } + }, + "title": "GenerativeAiProviderConfig", + "type": "object" + }, + "GenerativeAiProviderSpec": { + "description": "Google Generative AI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/GenerativeAiProviderConfig" + }, + "provider": { + "const": "google-generativeai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "GenerativeAiProviderSpec", + "type": "object" + }, + "HuggingFaceProviderConfig": { + "description": "Configuration for HuggingFace provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model": { + "title": "Model", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "HuggingFaceProviderConfig", + "type": "object" + }, + "HuggingFaceProviderSpec": { + "description": "HuggingFace provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/HuggingFaceProviderConfig" + }, + "provider": { + "const": "huggingface", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "HuggingFaceProviderSpec", + "type": "object" + }, + "InstructorProviderConfig": { + "description": "Configuration for Instructor provider.", + "properties": { + "device": { + "title": "Device", + "type": "string" + }, + "instruction": { + "title": "Instruction", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "InstructorProviderConfig", + "type": "object" + }, + "InstructorProviderSpec": { + "description": "Instructor provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/InstructorProviderConfig" + }, + "provider": { + "const": "instructor", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "InstructorProviderSpec", + "type": "object" + }, + "JinaProviderConfig": { + "description": "Configuration for Jina provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "JinaProviderConfig", + "type": "object" + }, + "JinaProviderSpec": { + "description": "Jina provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/JinaProviderConfig" + }, + "provider": { + "const": "jina", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "JinaProviderSpec", + "type": "object" + }, + "ONNXProviderConfig": { + "description": "Configuration for ONNX provider.", + "properties": { + "preferred_providers": { + "items": { + "type": "string" + }, + "title": "Preferred Providers", + "type": "array" + } + }, + "title": "ONNXProviderConfig", + "type": "object" + }, + "ONNXProviderSpec": { + "description": "ONNX provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/ONNXProviderConfig" + }, + "provider": { + "const": "onnx", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "ONNXProviderSpec", + "type": "object" + }, + "OllamaProviderConfig": { + "description": "Configuration for Ollama provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + }, + "url": { + "title": "Url", + "type": "string" + } + }, + "title": "OllamaProviderConfig", + "type": "object" + }, + "OllamaProviderSpec": { + "description": "Ollama provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OllamaProviderConfig" + }, + "provider": { + "const": "ollama", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "OllamaProviderSpec", + "type": "object" + }, + "OpenAIProviderConfig": { + "description": "Configuration for OpenAI provider.", + "properties": { + "api_base": { + "title": "Api Base", + "type": "string" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_type": { + "title": "Api Type", + "type": "string" + }, + "api_version": { + "title": "Api Version", + "type": "string" + }, + "default_headers": { + "additionalProperties": true, + "title": "Default Headers", + "type": "object" + }, + "deployment_id": { + "title": "Deployment Id", + "type": "string" + }, + "dimensions": { + "title": "Dimensions", + "type": "integer" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "organization_id": { + "title": "Organization Id", + "type": "string" + } + }, + "title": "OpenAIProviderConfig", + "type": "object" + }, + "OpenAIProviderSpec": { + "description": "OpenAI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OpenAIProviderConfig" + }, + "provider": { + "const": "openai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "OpenAIProviderSpec", + "type": "object" + }, + "OpenCLIPProviderConfig": { + "description": "Configuration for OpenCLIP provider.", + "properties": { + "checkpoint": { + "title": "Checkpoint", + "type": "string" + }, + "device": { + "title": "Device", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "OpenCLIPProviderConfig", + "type": "object" + }, + "OpenCLIPProviderSpec": { + "description": "OpenCLIP provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OpenCLIPProviderConfig" + }, + "provider": { + "const": "openclip", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "OpenCLIPProviderSpec", + "type": "object" + }, + "RagToolConfig": { + "description": "Configuration accepted by RAG tools.\n\nSupports embedding model and vector database configuration.\n\nAttributes:\n embedding_model: Embedding model configuration accepted by RAG tools.\n vectordb: Vector database configuration accepted by RAG tools.", + "properties": { + "embedding_model": { + "anyOf": [ + { + "$ref": "#/$defs/AzureProviderSpec" + }, + { + "$ref": "#/$defs/BedrockProviderSpec" + }, + { + "$ref": "#/$defs/CohereProviderSpec" + }, + { + "$ref": "#/$defs/CustomProviderSpec" + }, + { + "$ref": "#/$defs/GenerativeAiProviderSpec" + }, + { + "$ref": "#/$defs/HuggingFaceProviderSpec" + }, + { + "$ref": "#/$defs/InstructorProviderSpec" + }, + { + "$ref": "#/$defs/JinaProviderSpec" + }, + { + "$ref": "#/$defs/OllamaProviderSpec" + }, + { + "$ref": "#/$defs/ONNXProviderSpec" + }, + { + "$ref": "#/$defs/OpenAIProviderSpec" + }, + { + "$ref": "#/$defs/OpenCLIPProviderSpec" + }, + { + "$ref": "#/$defs/RoboflowProviderSpec" + }, + { + "$ref": "#/$defs/SentenceTransformerProviderSpec" + }, + { + "$ref": "#/$defs/Text2VecProviderSpec" + }, + { + "$ref": "#/$defs/VertexAIProviderSpec" + }, + { + "$ref": "#/$defs/VoyageAIProviderSpec" + }, + { + "$ref": "#/$defs/WatsonXProviderSpec" + } + ], + "title": "Embedding Model" + }, + "vectordb": { + "$ref": "#/$defs/VectorDbConfig" + } + }, + "title": "RagToolConfig", + "type": "object" + }, + "RoboflowProviderConfig": { + "description": "Configuration for Roboflow provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_url": { + "title": "Api Url", + "type": "string" + } + }, + "title": "RoboflowProviderConfig", + "type": "object" + }, + "RoboflowProviderSpec": { + "description": "Roboflow provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/RoboflowProviderConfig" + }, + "provider": { + "const": "roboflow", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "RoboflowProviderSpec", + "type": "object" + }, + "SentenceTransformerProviderConfig": { + "description": "Configuration for SentenceTransformer provider.", + "properties": { + "device": { + "title": "Device", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "normalize_embeddings": { + "title": "Normalize Embeddings", + "type": "boolean" + } + }, + "title": "SentenceTransformerProviderConfig", + "type": "object" + }, + "SentenceTransformerProviderSpec": { + "description": "SentenceTransformer provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/SentenceTransformerProviderConfig" + }, + "provider": { + "const": "sentence-transformer", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "SentenceTransformerProviderSpec", + "type": "object" + }, + "Text2VecProviderConfig": { + "description": "Configuration for Text2Vec provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "Text2VecProviderConfig", + "type": "object" + }, + "Text2VecProviderSpec": { + "description": "Text2Vec provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/Text2VecProviderConfig" + }, + "provider": { + "const": "text2vec", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "Text2VecProviderSpec", + "type": "object" + }, + "VectorDbConfig": { + "description": "Configuration for vector database provider.\n\nAttributes:\n provider: RAG provider literal.\n config: RAG configuration options.", + "properties": { + "config": { + "additionalProperties": true, + "title": "Config", + "type": "object" + }, + "provider": { + "enum": [ + "chromadb", + "qdrant" + ], + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "VectorDbConfig", + "type": "object" + }, + "VertexAIProviderConfig": { + "description": "Configuration for Vertex AI provider with dual SDK support.\n\nSupports both legacy models (textembedding-gecko*) using the deprecated\nvertexai.language_models SDK and new models using google-genai SDK.\n\nAttributes:\n api_key: Google API key (optional if using project_id with ADC). Only for new SDK models.\n model_name: Embedding model name (default: \"textembedding-gecko\").\n Legacy models: textembedding-gecko, textembedding-gecko@001, etc.\n New models: gemini-embedding-001, text-embedding-005, text-multilingual-embedding-002\n project_id: GCP project ID (required for Vertex AI backend and legacy models).\n location: GCP region/location (default: \"us-central1\").\n region: Deprecated alias for location (kept for backwards compatibility).\n task_type: Task type for embeddings (default: \"RETRIEVAL_DOCUMENT\"). Only for new SDK models.\n output_dimensionality: Output embedding dimension (optional). Only for new SDK models.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "location": { + "title": "Location", + "type": "string" + }, + "model_name": { + "enum": [ + "textembedding-gecko", + "textembedding-gecko@001", + "textembedding-gecko@002", + "textembedding-gecko@003", + "textembedding-gecko@latest", + "textembedding-gecko-multilingual", + "textembedding-gecko-multilingual@001", + "textembedding-gecko-multilingual@latest", + "gemini-embedding-001", + "text-embedding-005", + "text-multilingual-embedding-002" + ], + "title": "Model Name", + "type": "string" + }, + "output_dimensionality": { + "title": "Output Dimensionality", + "type": "integer" + }, + "project_id": { + "title": "Project Id", + "type": "string" + }, + "region": { + "title": "Region", + "type": "string" + }, + "task_type": { + "title": "Task Type", + "type": "string" + } + }, + "title": "VertexAIProviderConfig", + "type": "object" + }, + "VertexAIProviderSpec": { + "description": "Vertex AI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/VertexAIProviderConfig" + }, + "provider": { + "const": "google-vertex", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "VertexAIProviderSpec", + "type": "object" + }, + "VoyageAIProviderConfig": { + "description": "Configuration for VoyageAI provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "input_type": { + "title": "Input Type", + "type": "string" + }, + "max_retries": { + "title": "Max Retries", + "type": "integer" + }, + "model": { + "title": "Model", + "type": "string" + }, + "output_dimension": { + "title": "Output Dimension", + "type": "integer" + }, + "output_dtype": { + "title": "Output Dtype", + "type": "string" + }, + "timeout": { + "title": "Timeout", + "type": "number" + }, + "truncation": { + "title": "Truncation", + "type": "boolean" + } + }, + "title": "VoyageAIProviderConfig", + "type": "object" + }, + "VoyageAIProviderSpec": { + "description": "VoyageAI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/VoyageAIProviderConfig" + }, + "provider": { + "const": "voyageai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "VoyageAIProviderSpec", + "type": "object" + }, + "WatsonXProviderConfig": { + "description": "Configuration for WatsonX provider.", + "properties": { + "api_client": { + "title": "Api Client" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "batch_size": { + "title": "Batch Size", + "type": "integer" + }, + "bedrock_url": { + "title": "Bedrock Url", + "type": "string" + }, + "concurrency_limit": { + "title": "Concurrency Limit", + "type": "integer" + }, + "credentials": { + "title": "Credentials" + }, + "delay_time": { + "title": "Delay Time", + "type": "number" + }, + "iam_serviceid_crn": { + "title": "Iam Serviceid Crn", + "type": "string" + }, + "instance_id": { + "title": "Instance Id", + "type": "string" + }, + "max_retries": { + "title": "Max Retries", + "type": "integer" + }, + "model_id": { + "title": "Model Id", + "type": "string" + }, + "name": { + "title": "Name", + "type": "string" + }, + "params": { + "additionalProperties": { + "anyOf": [ + { + "type": "string" + }, + { + "additionalProperties": { + "type": "string" + }, + "type": "object" + } + ] + }, + "title": "Params", + "type": "object" + }, + "password": { + "title": "Password", + "type": "string" + }, + "persistent_connection": { + "title": "Persistent Connection", + "type": "boolean" + }, + "platform_url": { + "title": "Platform Url", + "type": "string" + }, + "project_id": { + "title": "Project Id", + "type": "string" + }, + "projects_token": { + "title": "Projects Token", + "type": "string" + }, + "proxies": { + "additionalProperties": true, + "title": "Proxies", + "type": "object" + }, + "retry_status_codes": { + "items": { + "type": "integer" + }, + "title": "Retry Status Codes", + "type": "array" + }, + "space_id": { + "title": "Space Id", + "type": "string" + }, + "token": { + "title": "Token", + "type": "string" + }, + "trusted_profile_id": { + "title": "Trusted Profile Id", + "type": "string" + }, + "url": { + "title": "Url", + "type": "string" + }, + "username": { + "title": "Username", + "type": "string" + }, + "verify": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "string" + } + ], + "title": "Verify" + }, + "version": { + "title": "Version", + "type": "string" + } + }, + "title": "WatsonXProviderConfig", + "type": "object" + }, + "WatsonXProviderSpec": { + "description": "WatsonX provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/WatsonXProviderConfig" + }, + "provider": { + "const": "watsonx", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "WatsonXProviderSpec", + "type": "object" + } + }, + "properties": { + "adapter": { + "$ref": "#/$defs/Adapter" + }, + "collection_name": { + "default": "rag_tool_collection", + "title": "Collection Name", + "type": "string" + }, + "config": { + "$ref": "#/$defs/RagToolConfig", + "description": "Configuration format accepted by RagTool." + }, + "limit": { + "default": 5, + "title": "Limit", + "type": "integer" + }, + "similarity_threshold": { + "default": 0.6, + "title": "Similarity Threshold", + "type": "number" + }, + "summarize": { + "default": false, + "title": "Summarize", + "type": "boolean" + } + }, + "title": "JSONSearchTool", + "type": "object" + }, + "name": "JSONSearchTool", + "package_dependencies": [], + "run_params_schema": { + "description": "Input for JSONSearchTool.", + "properties": { + "json_path": { + "description": "File path or URL of a JSON file to be searched", + "title": "Json Path", + "type": "string" + }, + "search_query": { + "description": "Mandatory search query you want to use to search the JSON's content", + "title": "Search Query", + "type": "string" + } + }, + "required": [ + "search_query", + "json_path" + ], + "title": "JSONSearchToolSchema", + "type": "object" + } + }, + { + "description": "A tool that can be used to read a website content using Jina.ai reader and return markdown content.", + "env_vars": [], + "humanized_name": "JinaScrapeWebsiteTool", + "init_params_schema": { + "$defs": { "EnvVar": { "properties": { "default": { @@ -3669,52 +9529,54 @@ } }, "properties": { - "adapter": { - "$ref": "#/$defs/Adapter" - }, - "config": { + "api_key": { "anyOf": [ { - "additionalProperties": true, - "type": "object" + "type": "string" }, { "type": "null" } ], "default": null, - "title": "Config" + "title": "Api Key" }, - "summarize": { - "default": false, - "title": "Summarize", - "type": "boolean" + "headers": { + "additionalProperties": true, + "title": "Headers", + "type": "object" + }, + "website_url": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "title": "Website Url" } }, - "title": "JSONSearchTool", + "title": "JinaScrapeWebsiteTool", "type": "object" }, - "name": "JSONSearchTool", + "name": "JinaScrapeWebsiteTool", "package_dependencies": [], "run_params_schema": { - "description": "Input for JSONSearchTool.", + "description": "Input schema for JinaScrapeWebsiteTool.", "properties": { - "json_path": { - "description": "Mandatory json path you want to search", - "title": "Json Path", - "type": "string" - }, - "search_query": { - "description": "Mandatory search query you want to use to search the JSON's content", - "title": "Search Query", + "website_url": { + "description": "Mandatory website url to read the file", + "title": "Website Url", "type": "string" } }, "required": [ - "search_query", - "json_path" + "website_url" ], - "title": "JSONSearchToolSchema", + "title": "JinaScrapeWebsiteToolInput", "type": "object" } }, @@ -3775,7 +9637,11 @@ "package_dependencies": [ "linkup-sdk" ], - "run_params_schema": {} + "run_params_schema": { + "properties": {}, + "title": "_ArgsSchemaPlaceholder", + "type": "object" + } }, { "description": "", @@ -3835,7 +9701,11 @@ }, "name": "LlamaIndexTool", "package_dependencies": [], - "run_params_schema": {} + "run_params_schema": { + "properties": {}, + "title": "_ArgsSchemaPlaceholder", + "type": "object" + } }, { "description": "A tool that can be used to semantic search a query from a MDX's content.", @@ -3844,10 +9714,169 @@ "init_params_schema": { "$defs": { "Adapter": { + "description": "Abstract base class for RAG adapters.", "properties": {}, "title": "Adapter", "type": "object" }, + "AzureProviderConfig": { + "description": "Configuration for Azure provider.", + "properties": { + "api_base": { + "title": "Api Base", + "type": "string" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_type": { + "title": "Api Type", + "type": "string" + }, + "api_version": { + "title": "Api Version", + "type": "string" + }, + "default_headers": { + "additionalProperties": true, + "title": "Default Headers", + "type": "object" + }, + "deployment_id": { + "title": "Deployment Id", + "type": "string" + }, + "dimensions": { + "title": "Dimensions", + "type": "integer" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "organization_id": { + "title": "Organization Id", + "type": "string" + } + }, + "required": [ + "deployment_id" + ], + "title": "AzureProviderConfig", + "type": "object" + }, + "AzureProviderSpec": { + "description": "Azure provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/AzureProviderConfig" + }, + "provider": { + "const": "azure", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "AzureProviderSpec", + "type": "object" + }, + "BedrockProviderConfig": { + "description": "Configuration for Bedrock provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + }, + "session": { + "title": "Session" + } + }, + "title": "BedrockProviderConfig", + "type": "object" + }, + "BedrockProviderSpec": { + "description": "Bedrock provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/BedrockProviderConfig" + }, + "provider": { + "const": "amazon-bedrock", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "BedrockProviderSpec", + "type": "object" + }, + "CohereProviderConfig": { + "description": "Configuration for Cohere provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "CohereProviderConfig", + "type": "object" + }, + "CohereProviderSpec": { + "description": "Cohere provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/CohereProviderConfig" + }, + "provider": { + "const": "cohere", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "CohereProviderSpec", + "type": "object" + }, + "CustomProviderConfig": { + "description": "Configuration for Custom provider.", + "properties": { + "embedding_callable": { + "title": "Embedding Callable" + } + }, + "title": "CustomProviderConfig", + "type": "object" + }, + "CustomProviderSpec": { + "description": "Custom provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/CustomProviderConfig" + }, + "provider": { + "const": "custom", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "CustomProviderSpec", + "type": "object" + }, "EnvVar": { "properties": { "default": { @@ -3882,24 +9911,819 @@ ], "title": "EnvVar", "type": "object" + }, + "GenerativeAiProviderConfig": { + "description": "Configuration for Google Generative AI provider.\n\nAttributes:\n api_key: Google API key for authentication.\n model_name: Embedding model name.\n task_type: Task type for embeddings. Default is \"RETRIEVAL_DOCUMENT\".", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "enum": [ + "gemini-embedding-001", + "text-embedding-005", + "text-multilingual-embedding-002" + ], + "title": "Model Name", + "type": "string" + }, + "task_type": { + "title": "Task Type", + "type": "string" + } + }, + "title": "GenerativeAiProviderConfig", + "type": "object" + }, + "GenerativeAiProviderSpec": { + "description": "Google Generative AI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/GenerativeAiProviderConfig" + }, + "provider": { + "const": "google-generativeai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "GenerativeAiProviderSpec", + "type": "object" + }, + "HuggingFaceProviderConfig": { + "description": "Configuration for HuggingFace provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model": { + "title": "Model", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "HuggingFaceProviderConfig", + "type": "object" + }, + "HuggingFaceProviderSpec": { + "description": "HuggingFace provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/HuggingFaceProviderConfig" + }, + "provider": { + "const": "huggingface", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "HuggingFaceProviderSpec", + "type": "object" + }, + "InstructorProviderConfig": { + "description": "Configuration for Instructor provider.", + "properties": { + "device": { + "title": "Device", + "type": "string" + }, + "instruction": { + "title": "Instruction", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "InstructorProviderConfig", + "type": "object" + }, + "InstructorProviderSpec": { + "description": "Instructor provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/InstructorProviderConfig" + }, + "provider": { + "const": "instructor", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "InstructorProviderSpec", + "type": "object" + }, + "JinaProviderConfig": { + "description": "Configuration for Jina provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "JinaProviderConfig", + "type": "object" + }, + "JinaProviderSpec": { + "description": "Jina provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/JinaProviderConfig" + }, + "provider": { + "const": "jina", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "JinaProviderSpec", + "type": "object" + }, + "ONNXProviderConfig": { + "description": "Configuration for ONNX provider.", + "properties": { + "preferred_providers": { + "items": { + "type": "string" + }, + "title": "Preferred Providers", + "type": "array" + } + }, + "title": "ONNXProviderConfig", + "type": "object" + }, + "ONNXProviderSpec": { + "description": "ONNX provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/ONNXProviderConfig" + }, + "provider": { + "const": "onnx", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "ONNXProviderSpec", + "type": "object" + }, + "OllamaProviderConfig": { + "description": "Configuration for Ollama provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + }, + "url": { + "title": "Url", + "type": "string" + } + }, + "title": "OllamaProviderConfig", + "type": "object" + }, + "OllamaProviderSpec": { + "description": "Ollama provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OllamaProviderConfig" + }, + "provider": { + "const": "ollama", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "OllamaProviderSpec", + "type": "object" + }, + "OpenAIProviderConfig": { + "description": "Configuration for OpenAI provider.", + "properties": { + "api_base": { + "title": "Api Base", + "type": "string" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_type": { + "title": "Api Type", + "type": "string" + }, + "api_version": { + "title": "Api Version", + "type": "string" + }, + "default_headers": { + "additionalProperties": true, + "title": "Default Headers", + "type": "object" + }, + "deployment_id": { + "title": "Deployment Id", + "type": "string" + }, + "dimensions": { + "title": "Dimensions", + "type": "integer" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "organization_id": { + "title": "Organization Id", + "type": "string" + } + }, + "title": "OpenAIProviderConfig", + "type": "object" + }, + "OpenAIProviderSpec": { + "description": "OpenAI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OpenAIProviderConfig" + }, + "provider": { + "const": "openai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "OpenAIProviderSpec", + "type": "object" + }, + "OpenCLIPProviderConfig": { + "description": "Configuration for OpenCLIP provider.", + "properties": { + "checkpoint": { + "title": "Checkpoint", + "type": "string" + }, + "device": { + "title": "Device", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "OpenCLIPProviderConfig", + "type": "object" + }, + "OpenCLIPProviderSpec": { + "description": "OpenCLIP provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OpenCLIPProviderConfig" + }, + "provider": { + "const": "openclip", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "OpenCLIPProviderSpec", + "type": "object" + }, + "RagToolConfig": { + "description": "Configuration accepted by RAG tools.\n\nSupports embedding model and vector database configuration.\n\nAttributes:\n embedding_model: Embedding model configuration accepted by RAG tools.\n vectordb: Vector database configuration accepted by RAG tools.", + "properties": { + "embedding_model": { + "anyOf": [ + { + "$ref": "#/$defs/AzureProviderSpec" + }, + { + "$ref": "#/$defs/BedrockProviderSpec" + }, + { + "$ref": "#/$defs/CohereProviderSpec" + }, + { + "$ref": "#/$defs/CustomProviderSpec" + }, + { + "$ref": "#/$defs/GenerativeAiProviderSpec" + }, + { + "$ref": "#/$defs/HuggingFaceProviderSpec" + }, + { + "$ref": "#/$defs/InstructorProviderSpec" + }, + { + "$ref": "#/$defs/JinaProviderSpec" + }, + { + "$ref": "#/$defs/OllamaProviderSpec" + }, + { + "$ref": "#/$defs/ONNXProviderSpec" + }, + { + "$ref": "#/$defs/OpenAIProviderSpec" + }, + { + "$ref": "#/$defs/OpenCLIPProviderSpec" + }, + { + "$ref": "#/$defs/RoboflowProviderSpec" + }, + { + "$ref": "#/$defs/SentenceTransformerProviderSpec" + }, + { + "$ref": "#/$defs/Text2VecProviderSpec" + }, + { + "$ref": "#/$defs/VertexAIProviderSpec" + }, + { + "$ref": "#/$defs/VoyageAIProviderSpec" + }, + { + "$ref": "#/$defs/WatsonXProviderSpec" + } + ], + "title": "Embedding Model" + }, + "vectordb": { + "$ref": "#/$defs/VectorDbConfig" + } + }, + "title": "RagToolConfig", + "type": "object" + }, + "RoboflowProviderConfig": { + "description": "Configuration for Roboflow provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_url": { + "title": "Api Url", + "type": "string" + } + }, + "title": "RoboflowProviderConfig", + "type": "object" + }, + "RoboflowProviderSpec": { + "description": "Roboflow provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/RoboflowProviderConfig" + }, + "provider": { + "const": "roboflow", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "RoboflowProviderSpec", + "type": "object" + }, + "SentenceTransformerProviderConfig": { + "description": "Configuration for SentenceTransformer provider.", + "properties": { + "device": { + "title": "Device", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "normalize_embeddings": { + "title": "Normalize Embeddings", + "type": "boolean" + } + }, + "title": "SentenceTransformerProviderConfig", + "type": "object" + }, + "SentenceTransformerProviderSpec": { + "description": "SentenceTransformer provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/SentenceTransformerProviderConfig" + }, + "provider": { + "const": "sentence-transformer", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "SentenceTransformerProviderSpec", + "type": "object" + }, + "Text2VecProviderConfig": { + "description": "Configuration for Text2Vec provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "Text2VecProviderConfig", + "type": "object" + }, + "Text2VecProviderSpec": { + "description": "Text2Vec provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/Text2VecProviderConfig" + }, + "provider": { + "const": "text2vec", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "Text2VecProviderSpec", + "type": "object" + }, + "VectorDbConfig": { + "description": "Configuration for vector database provider.\n\nAttributes:\n provider: RAG provider literal.\n config: RAG configuration options.", + "properties": { + "config": { + "additionalProperties": true, + "title": "Config", + "type": "object" + }, + "provider": { + "enum": [ + "chromadb", + "qdrant" + ], + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "VectorDbConfig", + "type": "object" + }, + "VertexAIProviderConfig": { + "description": "Configuration for Vertex AI provider with dual SDK support.\n\nSupports both legacy models (textembedding-gecko*) using the deprecated\nvertexai.language_models SDK and new models using google-genai SDK.\n\nAttributes:\n api_key: Google API key (optional if using project_id with ADC). Only for new SDK models.\n model_name: Embedding model name (default: \"textembedding-gecko\").\n Legacy models: textembedding-gecko, textembedding-gecko@001, etc.\n New models: gemini-embedding-001, text-embedding-005, text-multilingual-embedding-002\n project_id: GCP project ID (required for Vertex AI backend and legacy models).\n location: GCP region/location (default: \"us-central1\").\n region: Deprecated alias for location (kept for backwards compatibility).\n task_type: Task type for embeddings (default: \"RETRIEVAL_DOCUMENT\"). Only for new SDK models.\n output_dimensionality: Output embedding dimension (optional). Only for new SDK models.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "location": { + "title": "Location", + "type": "string" + }, + "model_name": { + "enum": [ + "textembedding-gecko", + "textembedding-gecko@001", + "textembedding-gecko@002", + "textembedding-gecko@003", + "textembedding-gecko@latest", + "textembedding-gecko-multilingual", + "textembedding-gecko-multilingual@001", + "textembedding-gecko-multilingual@latest", + "gemini-embedding-001", + "text-embedding-005", + "text-multilingual-embedding-002" + ], + "title": "Model Name", + "type": "string" + }, + "output_dimensionality": { + "title": "Output Dimensionality", + "type": "integer" + }, + "project_id": { + "title": "Project Id", + "type": "string" + }, + "region": { + "title": "Region", + "type": "string" + }, + "task_type": { + "title": "Task Type", + "type": "string" + } + }, + "title": "VertexAIProviderConfig", + "type": "object" + }, + "VertexAIProviderSpec": { + "description": "Vertex AI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/VertexAIProviderConfig" + }, + "provider": { + "const": "google-vertex", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "VertexAIProviderSpec", + "type": "object" + }, + "VoyageAIProviderConfig": { + "description": "Configuration for VoyageAI provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "input_type": { + "title": "Input Type", + "type": "string" + }, + "max_retries": { + "title": "Max Retries", + "type": "integer" + }, + "model": { + "title": "Model", + "type": "string" + }, + "output_dimension": { + "title": "Output Dimension", + "type": "integer" + }, + "output_dtype": { + "title": "Output Dtype", + "type": "string" + }, + "timeout": { + "title": "Timeout", + "type": "number" + }, + "truncation": { + "title": "Truncation", + "type": "boolean" + } + }, + "title": "VoyageAIProviderConfig", + "type": "object" + }, + "VoyageAIProviderSpec": { + "description": "VoyageAI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/VoyageAIProviderConfig" + }, + "provider": { + "const": "voyageai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "VoyageAIProviderSpec", + "type": "object" + }, + "WatsonXProviderConfig": { + "description": "Configuration for WatsonX provider.", + "properties": { + "api_client": { + "title": "Api Client" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "batch_size": { + "title": "Batch Size", + "type": "integer" + }, + "bedrock_url": { + "title": "Bedrock Url", + "type": "string" + }, + "concurrency_limit": { + "title": "Concurrency Limit", + "type": "integer" + }, + "credentials": { + "title": "Credentials" + }, + "delay_time": { + "title": "Delay Time", + "type": "number" + }, + "iam_serviceid_crn": { + "title": "Iam Serviceid Crn", + "type": "string" + }, + "instance_id": { + "title": "Instance Id", + "type": "string" + }, + "max_retries": { + "title": "Max Retries", + "type": "integer" + }, + "model_id": { + "title": "Model Id", + "type": "string" + }, + "name": { + "title": "Name", + "type": "string" + }, + "params": { + "additionalProperties": { + "anyOf": [ + { + "type": "string" + }, + { + "additionalProperties": { + "type": "string" + }, + "type": "object" + } + ] + }, + "title": "Params", + "type": "object" + }, + "password": { + "title": "Password", + "type": "string" + }, + "persistent_connection": { + "title": "Persistent Connection", + "type": "boolean" + }, + "platform_url": { + "title": "Platform Url", + "type": "string" + }, + "project_id": { + "title": "Project Id", + "type": "string" + }, + "projects_token": { + "title": "Projects Token", + "type": "string" + }, + "proxies": { + "additionalProperties": true, + "title": "Proxies", + "type": "object" + }, + "retry_status_codes": { + "items": { + "type": "integer" + }, + "title": "Retry Status Codes", + "type": "array" + }, + "space_id": { + "title": "Space Id", + "type": "string" + }, + "token": { + "title": "Token", + "type": "string" + }, + "trusted_profile_id": { + "title": "Trusted Profile Id", + "type": "string" + }, + "url": { + "title": "Url", + "type": "string" + }, + "username": { + "title": "Username", + "type": "string" + }, + "verify": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "string" + } + ], + "title": "Verify" + }, + "version": { + "title": "Version", + "type": "string" + } + }, + "title": "WatsonXProviderConfig", + "type": "object" + }, + "WatsonXProviderSpec": { + "description": "WatsonX provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/WatsonXProviderConfig" + }, + "provider": { + "const": "watsonx", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "WatsonXProviderSpec", + "type": "object" } }, "properties": { "adapter": { "$ref": "#/$defs/Adapter" }, + "collection_name": { + "default": "rag_tool_collection", + "title": "Collection Name", + "type": "string" + }, "config": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "default": null, - "title": "Config" + "$ref": "#/$defs/RagToolConfig", + "description": "Configuration format accepted by RagTool." + }, + "limit": { + "default": 5, + "title": "Limit", + "type": "integer" + }, + "similarity_threshold": { + "default": 0.6, + "title": "Similarity Threshold", + "type": "number" }, "summarize": { "default": false, @@ -3916,7 +10740,7 @@ "description": "Input for MDXSearchTool.", "properties": { "mdx": { - "description": "Mandatory mdx path you want to search", + "description": "File path or URL of a MDX file to be searched", "title": "Mdx", "type": "string" }, @@ -3934,6 +10758,110 @@ "type": "object" } }, + { + "description": "", + "env_vars": [ + { + "default": null, + "description": "Production API key for Agent Handler services", + "name": "AGENT_HANDLER_API_KEY", + "required": true + } + ], + "humanized_name": "MergeAgentHandlerTool", + "init_params_schema": { + "$defs": { + "EnvVar": { + "properties": { + "default": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "title": "Default" + }, + "description": { + "title": "Description", + "type": "string" + }, + "name": { + "title": "Name", + "type": "string" + }, + "required": { + "default": true, + "title": "Required", + "type": "boolean" + } + }, + "required": [ + "name", + "description" + ], + "title": "EnvVar", + "type": "object" + } + }, + "description": "Wrapper for Merge Agent Handler tools.\n\nThis tool allows CrewAI agents to execute tools from Merge Agent Handler,\nwhich provides secure access to third-party integrations via the Model Context Protocol (MCP).\n\nAgent Handler manages authentication, permissions, and monitoring of all tool interactions.", + "properties": { + "base_url": { + "default": "https://ah-api.merge.dev", + "description": "Base URL for Agent Handler API", + "title": "Base Url", + "type": "string" + }, + "registered_user_id": { + "description": "UUID or origin_id of the registered user", + "title": "Registered User Id", + "type": "string" + }, + "session_id": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "description": "MCP session ID (generated if not provided)", + "title": "Session Id" + }, + "tool_name": { + "description": "Name of the specific tool to execute", + "title": "Tool Name", + "type": "string" + }, + "tool_pack_id": { + "description": "UUID of the Agent Handler Tool Pack to use", + "title": "Tool Pack Id", + "type": "string" + } + }, + "required": [ + "name", + "description", + "tool_pack_id", + "registered_user_id", + "tool_name" + ], + "title": "MergeAgentHandlerTool", + "type": "object" + }, + "name": "MergeAgentHandlerTool", + "package_dependencies": [], + "run_params_schema": { + "properties": {}, + "title": "_ArgsSchemaPlaceholder", + "type": "object" + } + }, { "description": "A tool to perfrom a vector search on a MongoDB database for relevant information on internal documents.", "env_vars": [ @@ -4052,7 +10980,7 @@ "type": "object" } }, - "description": "Tool to perfrom a vector search the MongoDB database", + "description": "Tool to perfrom a vector search the MongoDB database.", "properties": { "collection_name": { "description": "The name of the MongoDB collection", @@ -4231,7 +11159,11 @@ "package_dependencies": [ "multion" ], - "run_params_schema": {} + "run_params_schema": { + "properties": {}, + "title": "_ArgsSchemaPlaceholder", + "type": "object" + } }, { "description": "A tool that can be used to semantic search a query from a database table's content.", @@ -4240,10 +11172,169 @@ "init_params_schema": { "$defs": { "Adapter": { + "description": "Abstract base class for RAG adapters.", "properties": {}, "title": "Adapter", "type": "object" }, + "AzureProviderConfig": { + "description": "Configuration for Azure provider.", + "properties": { + "api_base": { + "title": "Api Base", + "type": "string" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_type": { + "title": "Api Type", + "type": "string" + }, + "api_version": { + "title": "Api Version", + "type": "string" + }, + "default_headers": { + "additionalProperties": true, + "title": "Default Headers", + "type": "object" + }, + "deployment_id": { + "title": "Deployment Id", + "type": "string" + }, + "dimensions": { + "title": "Dimensions", + "type": "integer" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "organization_id": { + "title": "Organization Id", + "type": "string" + } + }, + "required": [ + "deployment_id" + ], + "title": "AzureProviderConfig", + "type": "object" + }, + "AzureProviderSpec": { + "description": "Azure provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/AzureProviderConfig" + }, + "provider": { + "const": "azure", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "AzureProviderSpec", + "type": "object" + }, + "BedrockProviderConfig": { + "description": "Configuration for Bedrock provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + }, + "session": { + "title": "Session" + } + }, + "title": "BedrockProviderConfig", + "type": "object" + }, + "BedrockProviderSpec": { + "description": "Bedrock provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/BedrockProviderConfig" + }, + "provider": { + "const": "amazon-bedrock", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "BedrockProviderSpec", + "type": "object" + }, + "CohereProviderConfig": { + "description": "Configuration for Cohere provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "CohereProviderConfig", + "type": "object" + }, + "CohereProviderSpec": { + "description": "Cohere provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/CohereProviderConfig" + }, + "provider": { + "const": "cohere", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "CohereProviderSpec", + "type": "object" + }, + "CustomProviderConfig": { + "description": "Configuration for Custom provider.", + "properties": { + "embedding_callable": { + "title": "Embedding Callable" + } + }, + "title": "CustomProviderConfig", + "type": "object" + }, + "CustomProviderSpec": { + "description": "Custom provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/CustomProviderConfig" + }, + "provider": { + "const": "custom", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "CustomProviderSpec", + "type": "object" + }, "EnvVar": { "properties": { "default": { @@ -4278,30 +11369,825 @@ ], "title": "EnvVar", "type": "object" + }, + "GenerativeAiProviderConfig": { + "description": "Configuration for Google Generative AI provider.\n\nAttributes:\n api_key: Google API key for authentication.\n model_name: Embedding model name.\n task_type: Task type for embeddings. Default is \"RETRIEVAL_DOCUMENT\".", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "enum": [ + "gemini-embedding-001", + "text-embedding-005", + "text-multilingual-embedding-002" + ], + "title": "Model Name", + "type": "string" + }, + "task_type": { + "title": "Task Type", + "type": "string" + } + }, + "title": "GenerativeAiProviderConfig", + "type": "object" + }, + "GenerativeAiProviderSpec": { + "description": "Google Generative AI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/GenerativeAiProviderConfig" + }, + "provider": { + "const": "google-generativeai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "GenerativeAiProviderSpec", + "type": "object" + }, + "HuggingFaceProviderConfig": { + "description": "Configuration for HuggingFace provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model": { + "title": "Model", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "HuggingFaceProviderConfig", + "type": "object" + }, + "HuggingFaceProviderSpec": { + "description": "HuggingFace provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/HuggingFaceProviderConfig" + }, + "provider": { + "const": "huggingface", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "HuggingFaceProviderSpec", + "type": "object" + }, + "InstructorProviderConfig": { + "description": "Configuration for Instructor provider.", + "properties": { + "device": { + "title": "Device", + "type": "string" + }, + "instruction": { + "title": "Instruction", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "InstructorProviderConfig", + "type": "object" + }, + "InstructorProviderSpec": { + "description": "Instructor provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/InstructorProviderConfig" + }, + "provider": { + "const": "instructor", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "InstructorProviderSpec", + "type": "object" + }, + "JinaProviderConfig": { + "description": "Configuration for Jina provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "JinaProviderConfig", + "type": "object" + }, + "JinaProviderSpec": { + "description": "Jina provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/JinaProviderConfig" + }, + "provider": { + "const": "jina", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "JinaProviderSpec", + "type": "object" + }, + "ONNXProviderConfig": { + "description": "Configuration for ONNX provider.", + "properties": { + "preferred_providers": { + "items": { + "type": "string" + }, + "title": "Preferred Providers", + "type": "array" + } + }, + "title": "ONNXProviderConfig", + "type": "object" + }, + "ONNXProviderSpec": { + "description": "ONNX provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/ONNXProviderConfig" + }, + "provider": { + "const": "onnx", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "ONNXProviderSpec", + "type": "object" + }, + "OllamaProviderConfig": { + "description": "Configuration for Ollama provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + }, + "url": { + "title": "Url", + "type": "string" + } + }, + "title": "OllamaProviderConfig", + "type": "object" + }, + "OllamaProviderSpec": { + "description": "Ollama provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OllamaProviderConfig" + }, + "provider": { + "const": "ollama", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "OllamaProviderSpec", + "type": "object" + }, + "OpenAIProviderConfig": { + "description": "Configuration for OpenAI provider.", + "properties": { + "api_base": { + "title": "Api Base", + "type": "string" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_type": { + "title": "Api Type", + "type": "string" + }, + "api_version": { + "title": "Api Version", + "type": "string" + }, + "default_headers": { + "additionalProperties": true, + "title": "Default Headers", + "type": "object" + }, + "deployment_id": { + "title": "Deployment Id", + "type": "string" + }, + "dimensions": { + "title": "Dimensions", + "type": "integer" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "organization_id": { + "title": "Organization Id", + "type": "string" + } + }, + "title": "OpenAIProviderConfig", + "type": "object" + }, + "OpenAIProviderSpec": { + "description": "OpenAI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OpenAIProviderConfig" + }, + "provider": { + "const": "openai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "OpenAIProviderSpec", + "type": "object" + }, + "OpenCLIPProviderConfig": { + "description": "Configuration for OpenCLIP provider.", + "properties": { + "checkpoint": { + "title": "Checkpoint", + "type": "string" + }, + "device": { + "title": "Device", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "OpenCLIPProviderConfig", + "type": "object" + }, + "OpenCLIPProviderSpec": { + "description": "OpenCLIP provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OpenCLIPProviderConfig" + }, + "provider": { + "const": "openclip", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "OpenCLIPProviderSpec", + "type": "object" + }, + "RagToolConfig": { + "description": "Configuration accepted by RAG tools.\n\nSupports embedding model and vector database configuration.\n\nAttributes:\n embedding_model: Embedding model configuration accepted by RAG tools.\n vectordb: Vector database configuration accepted by RAG tools.", + "properties": { + "embedding_model": { + "anyOf": [ + { + "$ref": "#/$defs/AzureProviderSpec" + }, + { + "$ref": "#/$defs/BedrockProviderSpec" + }, + { + "$ref": "#/$defs/CohereProviderSpec" + }, + { + "$ref": "#/$defs/CustomProviderSpec" + }, + { + "$ref": "#/$defs/GenerativeAiProviderSpec" + }, + { + "$ref": "#/$defs/HuggingFaceProviderSpec" + }, + { + "$ref": "#/$defs/InstructorProviderSpec" + }, + { + "$ref": "#/$defs/JinaProviderSpec" + }, + { + "$ref": "#/$defs/OllamaProviderSpec" + }, + { + "$ref": "#/$defs/ONNXProviderSpec" + }, + { + "$ref": "#/$defs/OpenAIProviderSpec" + }, + { + "$ref": "#/$defs/OpenCLIPProviderSpec" + }, + { + "$ref": "#/$defs/RoboflowProviderSpec" + }, + { + "$ref": "#/$defs/SentenceTransformerProviderSpec" + }, + { + "$ref": "#/$defs/Text2VecProviderSpec" + }, + { + "$ref": "#/$defs/VertexAIProviderSpec" + }, + { + "$ref": "#/$defs/VoyageAIProviderSpec" + }, + { + "$ref": "#/$defs/WatsonXProviderSpec" + } + ], + "title": "Embedding Model" + }, + "vectordb": { + "$ref": "#/$defs/VectorDbConfig" + } + }, + "title": "RagToolConfig", + "type": "object" + }, + "RoboflowProviderConfig": { + "description": "Configuration for Roboflow provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_url": { + "title": "Api Url", + "type": "string" + } + }, + "title": "RoboflowProviderConfig", + "type": "object" + }, + "RoboflowProviderSpec": { + "description": "Roboflow provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/RoboflowProviderConfig" + }, + "provider": { + "const": "roboflow", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "RoboflowProviderSpec", + "type": "object" + }, + "SentenceTransformerProviderConfig": { + "description": "Configuration for SentenceTransformer provider.", + "properties": { + "device": { + "title": "Device", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "normalize_embeddings": { + "title": "Normalize Embeddings", + "type": "boolean" + } + }, + "title": "SentenceTransformerProviderConfig", + "type": "object" + }, + "SentenceTransformerProviderSpec": { + "description": "SentenceTransformer provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/SentenceTransformerProviderConfig" + }, + "provider": { + "const": "sentence-transformer", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "SentenceTransformerProviderSpec", + "type": "object" + }, + "Text2VecProviderConfig": { + "description": "Configuration for Text2Vec provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "Text2VecProviderConfig", + "type": "object" + }, + "Text2VecProviderSpec": { + "description": "Text2Vec provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/Text2VecProviderConfig" + }, + "provider": { + "const": "text2vec", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "Text2VecProviderSpec", + "type": "object" + }, + "VectorDbConfig": { + "description": "Configuration for vector database provider.\n\nAttributes:\n provider: RAG provider literal.\n config: RAG configuration options.", + "properties": { + "config": { + "additionalProperties": true, + "title": "Config", + "type": "object" + }, + "provider": { + "enum": [ + "chromadb", + "qdrant" + ], + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "VectorDbConfig", + "type": "object" + }, + "VertexAIProviderConfig": { + "description": "Configuration for Vertex AI provider with dual SDK support.\n\nSupports both legacy models (textembedding-gecko*) using the deprecated\nvertexai.language_models SDK and new models using google-genai SDK.\n\nAttributes:\n api_key: Google API key (optional if using project_id with ADC). Only for new SDK models.\n model_name: Embedding model name (default: \"textembedding-gecko\").\n Legacy models: textembedding-gecko, textembedding-gecko@001, etc.\n New models: gemini-embedding-001, text-embedding-005, text-multilingual-embedding-002\n project_id: GCP project ID (required for Vertex AI backend and legacy models).\n location: GCP region/location (default: \"us-central1\").\n region: Deprecated alias for location (kept for backwards compatibility).\n task_type: Task type for embeddings (default: \"RETRIEVAL_DOCUMENT\"). Only for new SDK models.\n output_dimensionality: Output embedding dimension (optional). Only for new SDK models.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "location": { + "title": "Location", + "type": "string" + }, + "model_name": { + "enum": [ + "textembedding-gecko", + "textembedding-gecko@001", + "textembedding-gecko@002", + "textembedding-gecko@003", + "textembedding-gecko@latest", + "textembedding-gecko-multilingual", + "textembedding-gecko-multilingual@001", + "textembedding-gecko-multilingual@latest", + "gemini-embedding-001", + "text-embedding-005", + "text-multilingual-embedding-002" + ], + "title": "Model Name", + "type": "string" + }, + "output_dimensionality": { + "title": "Output Dimensionality", + "type": "integer" + }, + "project_id": { + "title": "Project Id", + "type": "string" + }, + "region": { + "title": "Region", + "type": "string" + }, + "task_type": { + "title": "Task Type", + "type": "string" + } + }, + "title": "VertexAIProviderConfig", + "type": "object" + }, + "VertexAIProviderSpec": { + "description": "Vertex AI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/VertexAIProviderConfig" + }, + "provider": { + "const": "google-vertex", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "VertexAIProviderSpec", + "type": "object" + }, + "VoyageAIProviderConfig": { + "description": "Configuration for VoyageAI provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "input_type": { + "title": "Input Type", + "type": "string" + }, + "max_retries": { + "title": "Max Retries", + "type": "integer" + }, + "model": { + "title": "Model", + "type": "string" + }, + "output_dimension": { + "title": "Output Dimension", + "type": "integer" + }, + "output_dtype": { + "title": "Output Dtype", + "type": "string" + }, + "timeout": { + "title": "Timeout", + "type": "number" + }, + "truncation": { + "title": "Truncation", + "type": "boolean" + } + }, + "title": "VoyageAIProviderConfig", + "type": "object" + }, + "VoyageAIProviderSpec": { + "description": "VoyageAI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/VoyageAIProviderConfig" + }, + "provider": { + "const": "voyageai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "VoyageAIProviderSpec", + "type": "object" + }, + "WatsonXProviderConfig": { + "description": "Configuration for WatsonX provider.", + "properties": { + "api_client": { + "title": "Api Client" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "batch_size": { + "title": "Batch Size", + "type": "integer" + }, + "bedrock_url": { + "title": "Bedrock Url", + "type": "string" + }, + "concurrency_limit": { + "title": "Concurrency Limit", + "type": "integer" + }, + "credentials": { + "title": "Credentials" + }, + "delay_time": { + "title": "Delay Time", + "type": "number" + }, + "iam_serviceid_crn": { + "title": "Iam Serviceid Crn", + "type": "string" + }, + "instance_id": { + "title": "Instance Id", + "type": "string" + }, + "max_retries": { + "title": "Max Retries", + "type": "integer" + }, + "model_id": { + "title": "Model Id", + "type": "string" + }, + "name": { + "title": "Name", + "type": "string" + }, + "params": { + "additionalProperties": { + "anyOf": [ + { + "type": "string" + }, + { + "additionalProperties": { + "type": "string" + }, + "type": "object" + } + ] + }, + "title": "Params", + "type": "object" + }, + "password": { + "title": "Password", + "type": "string" + }, + "persistent_connection": { + "title": "Persistent Connection", + "type": "boolean" + }, + "platform_url": { + "title": "Platform Url", + "type": "string" + }, + "project_id": { + "title": "Project Id", + "type": "string" + }, + "projects_token": { + "title": "Projects Token", + "type": "string" + }, + "proxies": { + "additionalProperties": true, + "title": "Proxies", + "type": "object" + }, + "retry_status_codes": { + "items": { + "type": "integer" + }, + "title": "Retry Status Codes", + "type": "array" + }, + "space_id": { + "title": "Space Id", + "type": "string" + }, + "token": { + "title": "Token", + "type": "string" + }, + "trusted_profile_id": { + "title": "Trusted Profile Id", + "type": "string" + }, + "url": { + "title": "Url", + "type": "string" + }, + "username": { + "title": "Username", + "type": "string" + }, + "verify": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "string" + } + ], + "title": "Verify" + }, + "version": { + "title": "Version", + "type": "string" + } + }, + "title": "WatsonXProviderConfig", + "type": "object" + }, + "WatsonXProviderSpec": { + "description": "WatsonX provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/WatsonXProviderConfig" + }, + "provider": { + "const": "watsonx", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "WatsonXProviderSpec", + "type": "object" } }, "properties": { "adapter": { "$ref": "#/$defs/Adapter" }, + "collection_name": { + "default": "rag_tool_collection", + "title": "Collection Name", + "type": "string" + }, "config": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "default": null, - "title": "Config" + "$ref": "#/$defs/RagToolConfig", + "description": "Configuration format accepted by RagTool." }, "db_uri": { "description": "Mandatory database URI", "title": "Db Uri", "type": "string" }, + "limit": { + "default": 5, + "title": "Limit", + "type": "integer" + }, + "similarity_threshold": { + "default": 0.6, + "title": "Similarity Threshold", + "type": "number" + }, "summarize": { "default": false, "title": "Summarize", @@ -4377,7 +12263,6 @@ "properties": { "columns": { "additionalProperties": true, - "default": {}, "title": "Columns", "type": "object" }, @@ -4387,7 +12272,6 @@ "type": "string" }, "tables": { - "default": [], "items": {}, "title": "Tables", "type": "array" @@ -4469,11 +12353,14 @@ "description": "Input schema for Optical Character Recognition Tool.\n\nAttributes:\n image_path_url (str): Path to a local image file or URL of an image.\n For local files, provide the absolute or relative path.\n For remote images, provide the complete URL starting with 'http' or 'https'.", "properties": { "image_path_url": { - "default": "The image path or URL.", + "description": "The image path or URL.", "title": "Image Path Url", "type": "string" } }, + "required": [ + "image_path_url" + ], "title": "OCRToolSchema", "type": "object" } @@ -4533,7 +12420,7 @@ "type": "object" }, "OxylabsAmazonProductScraperConfig": { - "description": "Amazon Product Scraper configuration options:\nhttps://developers.oxylabs.io/scraper-apis/web-scraper-api/targets/amazon/product", + "description": "Amazon Product Scraper configuration options:\nhttps://developers.oxylabs.io/scraper-apis/web-scraper-api/targets/amazon/product.", "properties": { "callback_url": { "anyOf": [ @@ -4736,7 +12623,7 @@ "type": "object" }, "OxylabsAmazonSearchScraperConfig": { - "description": "Amazon Search Scraper configuration options:\nhttps://developers.oxylabs.io/scraper-apis/web-scraper-api/targets/amazon/search", + "description": "Amazon Search Scraper configuration options:\nhttps://developers.oxylabs.io/scraper-apis/web-scraper-api/targets/amazon/search.", "properties": { "callback_url": { "anyOf": [ @@ -4965,7 +12852,7 @@ "type": "object" }, "OxylabsGoogleSearchScraperConfig": { - "description": "Google Search Scraper configuration options:\nhttps://developers.oxylabs.io/scraper-apis/web-scraper-api/targets/google/search/search", + "description": "Google Search Scraper configuration options:\nhttps://developers.oxylabs.io/scraper-apis/web-scraper-api/targets/google/search/search.", "properties": { "callback_url": { "anyOf": [ @@ -5207,7 +13094,7 @@ "type": "object" }, "OxylabsUniversalScraperConfig": { - "description": "Universal Scraper configuration options:\nhttps://developers.oxylabs.io/scraper-apis/web-scraper-api/other-websites", + "description": "Universal Scraper configuration options:\nhttps://developers.oxylabs.io/scraper-apis/web-scraper-api/other-websites.", "properties": { "callback_url": { "anyOf": [ @@ -5349,10 +13236,169 @@ "init_params_schema": { "$defs": { "Adapter": { + "description": "Abstract base class for RAG adapters.", "properties": {}, "title": "Adapter", "type": "object" }, + "AzureProviderConfig": { + "description": "Configuration for Azure provider.", + "properties": { + "api_base": { + "title": "Api Base", + "type": "string" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_type": { + "title": "Api Type", + "type": "string" + }, + "api_version": { + "title": "Api Version", + "type": "string" + }, + "default_headers": { + "additionalProperties": true, + "title": "Default Headers", + "type": "object" + }, + "deployment_id": { + "title": "Deployment Id", + "type": "string" + }, + "dimensions": { + "title": "Dimensions", + "type": "integer" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "organization_id": { + "title": "Organization Id", + "type": "string" + } + }, + "required": [ + "deployment_id" + ], + "title": "AzureProviderConfig", + "type": "object" + }, + "AzureProviderSpec": { + "description": "Azure provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/AzureProviderConfig" + }, + "provider": { + "const": "azure", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "AzureProviderSpec", + "type": "object" + }, + "BedrockProviderConfig": { + "description": "Configuration for Bedrock provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + }, + "session": { + "title": "Session" + } + }, + "title": "BedrockProviderConfig", + "type": "object" + }, + "BedrockProviderSpec": { + "description": "Bedrock provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/BedrockProviderConfig" + }, + "provider": { + "const": "amazon-bedrock", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "BedrockProviderSpec", + "type": "object" + }, + "CohereProviderConfig": { + "description": "Configuration for Cohere provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "CohereProviderConfig", + "type": "object" + }, + "CohereProviderSpec": { + "description": "Cohere provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/CohereProviderConfig" + }, + "provider": { + "const": "cohere", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "CohereProviderSpec", + "type": "object" + }, + "CustomProviderConfig": { + "description": "Configuration for Custom provider.", + "properties": { + "embedding_callable": { + "title": "Embedding Callable" + } + }, + "title": "CustomProviderConfig", + "type": "object" + }, + "CustomProviderSpec": { + "description": "Custom provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/CustomProviderConfig" + }, + "provider": { + "const": "custom", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "CustomProviderSpec", + "type": "object" + }, "EnvVar": { "properties": { "default": { @@ -5387,24 +13433,831 @@ ], "title": "EnvVar", "type": "object" + }, + "GenerativeAiProviderConfig": { + "description": "Configuration for Google Generative AI provider.\n\nAttributes:\n api_key: Google API key for authentication.\n model_name: Embedding model name.\n task_type: Task type for embeddings. Default is \"RETRIEVAL_DOCUMENT\".", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "enum": [ + "gemini-embedding-001", + "text-embedding-005", + "text-multilingual-embedding-002" + ], + "title": "Model Name", + "type": "string" + }, + "task_type": { + "title": "Task Type", + "type": "string" + } + }, + "title": "GenerativeAiProviderConfig", + "type": "object" + }, + "GenerativeAiProviderSpec": { + "description": "Google Generative AI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/GenerativeAiProviderConfig" + }, + "provider": { + "const": "google-generativeai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "GenerativeAiProviderSpec", + "type": "object" + }, + "HuggingFaceProviderConfig": { + "description": "Configuration for HuggingFace provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model": { + "title": "Model", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "HuggingFaceProviderConfig", + "type": "object" + }, + "HuggingFaceProviderSpec": { + "description": "HuggingFace provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/HuggingFaceProviderConfig" + }, + "provider": { + "const": "huggingface", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "HuggingFaceProviderSpec", + "type": "object" + }, + "InstructorProviderConfig": { + "description": "Configuration for Instructor provider.", + "properties": { + "device": { + "title": "Device", + "type": "string" + }, + "instruction": { + "title": "Instruction", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "InstructorProviderConfig", + "type": "object" + }, + "InstructorProviderSpec": { + "description": "Instructor provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/InstructorProviderConfig" + }, + "provider": { + "const": "instructor", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "InstructorProviderSpec", + "type": "object" + }, + "JinaProviderConfig": { + "description": "Configuration for Jina provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "JinaProviderConfig", + "type": "object" + }, + "JinaProviderSpec": { + "description": "Jina provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/JinaProviderConfig" + }, + "provider": { + "const": "jina", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "JinaProviderSpec", + "type": "object" + }, + "ONNXProviderConfig": { + "description": "Configuration for ONNX provider.", + "properties": { + "preferred_providers": { + "items": { + "type": "string" + }, + "title": "Preferred Providers", + "type": "array" + } + }, + "title": "ONNXProviderConfig", + "type": "object" + }, + "ONNXProviderSpec": { + "description": "ONNX provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/ONNXProviderConfig" + }, + "provider": { + "const": "onnx", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "ONNXProviderSpec", + "type": "object" + }, + "OllamaProviderConfig": { + "description": "Configuration for Ollama provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + }, + "url": { + "title": "Url", + "type": "string" + } + }, + "title": "OllamaProviderConfig", + "type": "object" + }, + "OllamaProviderSpec": { + "description": "Ollama provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OllamaProviderConfig" + }, + "provider": { + "const": "ollama", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "OllamaProviderSpec", + "type": "object" + }, + "OpenAIProviderConfig": { + "description": "Configuration for OpenAI provider.", + "properties": { + "api_base": { + "title": "Api Base", + "type": "string" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_type": { + "title": "Api Type", + "type": "string" + }, + "api_version": { + "title": "Api Version", + "type": "string" + }, + "default_headers": { + "additionalProperties": true, + "title": "Default Headers", + "type": "object" + }, + "deployment_id": { + "title": "Deployment Id", + "type": "string" + }, + "dimensions": { + "title": "Dimensions", + "type": "integer" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "organization_id": { + "title": "Organization Id", + "type": "string" + } + }, + "title": "OpenAIProviderConfig", + "type": "object" + }, + "OpenAIProviderSpec": { + "description": "OpenAI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OpenAIProviderConfig" + }, + "provider": { + "const": "openai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "OpenAIProviderSpec", + "type": "object" + }, + "OpenCLIPProviderConfig": { + "description": "Configuration for OpenCLIP provider.", + "properties": { + "checkpoint": { + "title": "Checkpoint", + "type": "string" + }, + "device": { + "title": "Device", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "OpenCLIPProviderConfig", + "type": "object" + }, + "OpenCLIPProviderSpec": { + "description": "OpenCLIP provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OpenCLIPProviderConfig" + }, + "provider": { + "const": "openclip", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "OpenCLIPProviderSpec", + "type": "object" + }, + "RagToolConfig": { + "description": "Configuration accepted by RAG tools.\n\nSupports embedding model and vector database configuration.\n\nAttributes:\n embedding_model: Embedding model configuration accepted by RAG tools.\n vectordb: Vector database configuration accepted by RAG tools.", + "properties": { + "embedding_model": { + "anyOf": [ + { + "$ref": "#/$defs/AzureProviderSpec" + }, + { + "$ref": "#/$defs/BedrockProviderSpec" + }, + { + "$ref": "#/$defs/CohereProviderSpec" + }, + { + "$ref": "#/$defs/CustomProviderSpec" + }, + { + "$ref": "#/$defs/GenerativeAiProviderSpec" + }, + { + "$ref": "#/$defs/HuggingFaceProviderSpec" + }, + { + "$ref": "#/$defs/InstructorProviderSpec" + }, + { + "$ref": "#/$defs/JinaProviderSpec" + }, + { + "$ref": "#/$defs/OllamaProviderSpec" + }, + { + "$ref": "#/$defs/ONNXProviderSpec" + }, + { + "$ref": "#/$defs/OpenAIProviderSpec" + }, + { + "$ref": "#/$defs/OpenCLIPProviderSpec" + }, + { + "$ref": "#/$defs/RoboflowProviderSpec" + }, + { + "$ref": "#/$defs/SentenceTransformerProviderSpec" + }, + { + "$ref": "#/$defs/Text2VecProviderSpec" + }, + { + "$ref": "#/$defs/VertexAIProviderSpec" + }, + { + "$ref": "#/$defs/VoyageAIProviderSpec" + }, + { + "$ref": "#/$defs/WatsonXProviderSpec" + } + ], + "title": "Embedding Model" + }, + "vectordb": { + "$ref": "#/$defs/VectorDbConfig" + } + }, + "title": "RagToolConfig", + "type": "object" + }, + "RoboflowProviderConfig": { + "description": "Configuration for Roboflow provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_url": { + "title": "Api Url", + "type": "string" + } + }, + "title": "RoboflowProviderConfig", + "type": "object" + }, + "RoboflowProviderSpec": { + "description": "Roboflow provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/RoboflowProviderConfig" + }, + "provider": { + "const": "roboflow", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "RoboflowProviderSpec", + "type": "object" + }, + "SentenceTransformerProviderConfig": { + "description": "Configuration for SentenceTransformer provider.", + "properties": { + "device": { + "title": "Device", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "normalize_embeddings": { + "title": "Normalize Embeddings", + "type": "boolean" + } + }, + "title": "SentenceTransformerProviderConfig", + "type": "object" + }, + "SentenceTransformerProviderSpec": { + "description": "SentenceTransformer provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/SentenceTransformerProviderConfig" + }, + "provider": { + "const": "sentence-transformer", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "SentenceTransformerProviderSpec", + "type": "object" + }, + "Text2VecProviderConfig": { + "description": "Configuration for Text2Vec provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "Text2VecProviderConfig", + "type": "object" + }, + "Text2VecProviderSpec": { + "description": "Text2Vec provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/Text2VecProviderConfig" + }, + "provider": { + "const": "text2vec", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "Text2VecProviderSpec", + "type": "object" + }, + "VectorDbConfig": { + "description": "Configuration for vector database provider.\n\nAttributes:\n provider: RAG provider literal.\n config: RAG configuration options.", + "properties": { + "config": { + "additionalProperties": true, + "title": "Config", + "type": "object" + }, + "provider": { + "enum": [ + "chromadb", + "qdrant" + ], + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "VectorDbConfig", + "type": "object" + }, + "VertexAIProviderConfig": { + "description": "Configuration for Vertex AI provider with dual SDK support.\n\nSupports both legacy models (textembedding-gecko*) using the deprecated\nvertexai.language_models SDK and new models using google-genai SDK.\n\nAttributes:\n api_key: Google API key (optional if using project_id with ADC). Only for new SDK models.\n model_name: Embedding model name (default: \"textembedding-gecko\").\n Legacy models: textembedding-gecko, textembedding-gecko@001, etc.\n New models: gemini-embedding-001, text-embedding-005, text-multilingual-embedding-002\n project_id: GCP project ID (required for Vertex AI backend and legacy models).\n location: GCP region/location (default: \"us-central1\").\n region: Deprecated alias for location (kept for backwards compatibility).\n task_type: Task type for embeddings (default: \"RETRIEVAL_DOCUMENT\"). Only for new SDK models.\n output_dimensionality: Output embedding dimension (optional). Only for new SDK models.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "location": { + "title": "Location", + "type": "string" + }, + "model_name": { + "enum": [ + "textembedding-gecko", + "textembedding-gecko@001", + "textembedding-gecko@002", + "textembedding-gecko@003", + "textembedding-gecko@latest", + "textembedding-gecko-multilingual", + "textembedding-gecko-multilingual@001", + "textembedding-gecko-multilingual@latest", + "gemini-embedding-001", + "text-embedding-005", + "text-multilingual-embedding-002" + ], + "title": "Model Name", + "type": "string" + }, + "output_dimensionality": { + "title": "Output Dimensionality", + "type": "integer" + }, + "project_id": { + "title": "Project Id", + "type": "string" + }, + "region": { + "title": "Region", + "type": "string" + }, + "task_type": { + "title": "Task Type", + "type": "string" + } + }, + "title": "VertexAIProviderConfig", + "type": "object" + }, + "VertexAIProviderSpec": { + "description": "Vertex AI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/VertexAIProviderConfig" + }, + "provider": { + "const": "google-vertex", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "VertexAIProviderSpec", + "type": "object" + }, + "VoyageAIProviderConfig": { + "description": "Configuration for VoyageAI provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "input_type": { + "title": "Input Type", + "type": "string" + }, + "max_retries": { + "title": "Max Retries", + "type": "integer" + }, + "model": { + "title": "Model", + "type": "string" + }, + "output_dimension": { + "title": "Output Dimension", + "type": "integer" + }, + "output_dtype": { + "title": "Output Dtype", + "type": "string" + }, + "timeout": { + "title": "Timeout", + "type": "number" + }, + "truncation": { + "title": "Truncation", + "type": "boolean" + } + }, + "title": "VoyageAIProviderConfig", + "type": "object" + }, + "VoyageAIProviderSpec": { + "description": "VoyageAI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/VoyageAIProviderConfig" + }, + "provider": { + "const": "voyageai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "VoyageAIProviderSpec", + "type": "object" + }, + "WatsonXProviderConfig": { + "description": "Configuration for WatsonX provider.", + "properties": { + "api_client": { + "title": "Api Client" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "batch_size": { + "title": "Batch Size", + "type": "integer" + }, + "bedrock_url": { + "title": "Bedrock Url", + "type": "string" + }, + "concurrency_limit": { + "title": "Concurrency Limit", + "type": "integer" + }, + "credentials": { + "title": "Credentials" + }, + "delay_time": { + "title": "Delay Time", + "type": "number" + }, + "iam_serviceid_crn": { + "title": "Iam Serviceid Crn", + "type": "string" + }, + "instance_id": { + "title": "Instance Id", + "type": "string" + }, + "max_retries": { + "title": "Max Retries", + "type": "integer" + }, + "model_id": { + "title": "Model Id", + "type": "string" + }, + "name": { + "title": "Name", + "type": "string" + }, + "params": { + "additionalProperties": { + "anyOf": [ + { + "type": "string" + }, + { + "additionalProperties": { + "type": "string" + }, + "type": "object" + } + ] + }, + "title": "Params", + "type": "object" + }, + "password": { + "title": "Password", + "type": "string" + }, + "persistent_connection": { + "title": "Persistent Connection", + "type": "boolean" + }, + "platform_url": { + "title": "Platform Url", + "type": "string" + }, + "project_id": { + "title": "Project Id", + "type": "string" + }, + "projects_token": { + "title": "Projects Token", + "type": "string" + }, + "proxies": { + "additionalProperties": true, + "title": "Proxies", + "type": "object" + }, + "retry_status_codes": { + "items": { + "type": "integer" + }, + "title": "Retry Status Codes", + "type": "array" + }, + "space_id": { + "title": "Space Id", + "type": "string" + }, + "token": { + "title": "Token", + "type": "string" + }, + "trusted_profile_id": { + "title": "Trusted Profile Id", + "type": "string" + }, + "url": { + "title": "Url", + "type": "string" + }, + "username": { + "title": "Username", + "type": "string" + }, + "verify": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "string" + } + ], + "title": "Verify" + }, + "version": { + "title": "Version", + "type": "string" + } + }, + "title": "WatsonXProviderConfig", + "type": "object" + }, + "WatsonXProviderSpec": { + "description": "WatsonX provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/WatsonXProviderConfig" + }, + "provider": { + "const": "watsonx", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "WatsonXProviderSpec", + "type": "object" } }, "properties": { "adapter": { "$ref": "#/$defs/Adapter" }, + "collection_name": { + "default": "rag_tool_collection", + "title": "Collection Name", + "type": "string" + }, "config": { + "$ref": "#/$defs/RagToolConfig", + "description": "Configuration format accepted by RagTool." + }, + "limit": { + "default": 5, + "title": "Limit", + "type": "integer" + }, + "pdf": { "anyOf": [ { - "additionalProperties": true, - "type": "object" + "type": "string" }, { "type": "null" } ], "default": null, - "title": "Config" + "title": "Pdf" + }, + "similarity_threshold": { + "default": 0.6, + "title": "Similarity Threshold", + "type": "number" }, "summarize": { "default": false, @@ -5421,7 +14274,7 @@ "description": "Input for PDFSearchTool.", "properties": { "pdf": { - "description": "Mandatory pdf path you want to search", + "description": "File path or URL of a PDF file to be searched", "title": "Pdf", "type": "string" }, @@ -5630,7 +14483,6 @@ }, "properties": { "criteria": { - "default": [], "items": { "additionalProperties": { "type": "string" @@ -5646,7 +14498,6 @@ "type": "string" }, "evaluators": { - "default": [], "items": { "additionalProperties": { "type": "string" @@ -5662,7 +14513,11 @@ }, "name": "PatronusEvalTool", "package_dependencies": [], - "run_params_schema": {} + "run_params_schema": { + "properties": {}, + "title": "_ArgsSchemaPlaceholder", + "type": "object" + } }, { "description": "This tool calls the Patronus Evaluation API that takes the following arguments:", @@ -5714,7 +14569,6 @@ "type": "string" }, "evaluators": { - "default": [], "items": { "additionalProperties": { "type": "string" @@ -5780,8 +14634,15 @@ } }, { - "description": "A tool to search the Qdrant database for relevant information on internal documents.", - "env_vars": [], + "description": "Search Qdrant vector DB for relevant documents.", + "env_vars": [ + { + "default": null, + "description": "API key for OpenAI", + "name": "OPENAI_API_KEY", + "required": true + } + ], "humanized_name": "QdrantVectorSearchTool", "init_params_schema": { "$defs": { @@ -5819,59 +14680,73 @@ ], "title": "EnvVar", "type": "object" - } - }, - "description": "Tool to query and filter results from a Qdrant database.\n\nThis tool enables vector similarity search on internal documents stored in Qdrant,\nwith optional filtering capabilities.\n\nAttributes:\n client: Configured QdrantClient instance\n collection_name: Name of the Qdrant collection to search\n limit: Maximum number of results to return\n score_threshold: Minimum similarity score threshold\n qdrant_url: Qdrant server URL\n qdrant_api_key: Authentication key for Qdrant", - "properties": { - "collection_name": { - "anyOf": [ - { + }, + "QdrantConfig": { + "description": "All Qdrant connection and search settings.", + "properties": { + "collection_name": { + "title": "Collection Name", "type": "string" }, - { - "type": "null" - } - ], - "default": null, - "title": "Collection Name" - }, - "filter_by": { - "anyOf": [ - { - "type": "string" + "filter": { + "anyOf": [ + {}, + { + "type": "null" + } + ], + "default": null, + "description": "Qdrant Filter instance for advanced filtering.", + "title": "Filter" }, - { - "type": "null" - } - ], - "default": null, - "title": "Filter By" - }, - "filter_value": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "default": null, - "title": "Filter Value" - }, - "limit": { - "anyOf": [ - { + "limit": { + "default": 3, + "title": "Limit", "type": "integer" }, + "qdrant_api_key": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], + "default": null, + "title": "Qdrant Api Key" + }, + "qdrant_url": { + "title": "Qdrant Url", + "type": "string" + }, + "score_threshold": { + "default": 0.35, + "title": "Score Threshold", + "type": "number" + } + }, + "required": [ + "qdrant_url", + "collection_name" + ], + "title": "QdrantConfig", + "type": "object" + } + }, + "description": "Vector search tool for Qdrant.", + "properties": { + "client": { + "anyOf": [ + {}, { "type": "null" } ], - "default": 3, - "title": "Limit" + "default": null, + "title": "Client" }, - "qdrant_api_key": { + "custom_embedding_fn": { "anyOf": [ { "type": "string" @@ -5881,34 +14756,21 @@ } ], "default": null, - "description": "The API key for the Qdrant server", - "title": "Qdrant Api Key" + "description": "Optional embedding function or import path.", + "title": "Custom Embedding Fn" }, - "qdrant_url": { - "description": "The URL of the Qdrant server", - "title": "Qdrant Url", + "qdrant_config": { + "$ref": "#/$defs/QdrantConfig" + }, + "qdrant_package": { + "default": "qdrant_client", + "description": "Base package path for Qdrant. Will dynamically import client and models.", + "title": "Qdrant Package", "type": "string" - }, - "query": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "default": null, - "title": "Query" - }, - "score_threshold": { - "default": 0.35, - "title": "Score Threshold", - "type": "number" } }, "required": [ - "qdrant_url" + "qdrant_config" ], "title": "QdrantVectorSearchTool", "type": "object" @@ -5918,7 +14780,6 @@ "qdrant-client" ], "run_params_schema": { - "description": "Input for QdrantTool.", "properties": { "filter_by": { "anyOf": [ @@ -5930,24 +14791,22 @@ } ], "default": null, - "description": "Filter by properties. Pass only the properties, not the question.", + "description": "Parameter to filter the search by. When filtering, needs to be used in conjunction with filter_value.", "title": "Filter By" }, "filter_value": { "anyOf": [ - { - "type": "string" - }, + {}, { "type": "null" } ], "default": null, - "description": "Filter by value. Pass only the value, not the question.", + "description": "Value to filter the search by. When filtering, needs to be used in conjunction with filter_by.", "title": "Filter Value" }, "query": { - "description": "The query to search retrieve relevant information from the Qdrant database. Pass only the query, not the question.", + "description": "Query to search in Qdrant DB - always required.", "title": "Query", "type": "string" } @@ -5966,10 +14825,169 @@ "init_params_schema": { "$defs": { "Adapter": { + "description": "Abstract base class for RAG adapters.", "properties": {}, "title": "Adapter", "type": "object" }, + "AzureProviderConfig": { + "description": "Configuration for Azure provider.", + "properties": { + "api_base": { + "title": "Api Base", + "type": "string" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_type": { + "title": "Api Type", + "type": "string" + }, + "api_version": { + "title": "Api Version", + "type": "string" + }, + "default_headers": { + "additionalProperties": true, + "title": "Default Headers", + "type": "object" + }, + "deployment_id": { + "title": "Deployment Id", + "type": "string" + }, + "dimensions": { + "title": "Dimensions", + "type": "integer" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "organization_id": { + "title": "Organization Id", + "type": "string" + } + }, + "required": [ + "deployment_id" + ], + "title": "AzureProviderConfig", + "type": "object" + }, + "AzureProviderSpec": { + "description": "Azure provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/AzureProviderConfig" + }, + "provider": { + "const": "azure", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "AzureProviderSpec", + "type": "object" + }, + "BedrockProviderConfig": { + "description": "Configuration for Bedrock provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + }, + "session": { + "title": "Session" + } + }, + "title": "BedrockProviderConfig", + "type": "object" + }, + "BedrockProviderSpec": { + "description": "Bedrock provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/BedrockProviderConfig" + }, + "provider": { + "const": "amazon-bedrock", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "BedrockProviderSpec", + "type": "object" + }, + "CohereProviderConfig": { + "description": "Configuration for Cohere provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "CohereProviderConfig", + "type": "object" + }, + "CohereProviderSpec": { + "description": "Cohere provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/CohereProviderConfig" + }, + "provider": { + "const": "cohere", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "CohereProviderSpec", + "type": "object" + }, + "CustomProviderConfig": { + "description": "Configuration for Custom provider.", + "properties": { + "embedding_callable": { + "title": "Embedding Callable" + } + }, + "title": "CustomProviderConfig", + "type": "object" + }, + "CustomProviderSpec": { + "description": "Custom provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/CustomProviderConfig" + }, + "provider": { + "const": "custom", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "CustomProviderSpec", + "type": "object" + }, "EnvVar": { "properties": { "default": { @@ -6004,24 +15022,819 @@ ], "title": "EnvVar", "type": "object" + }, + "GenerativeAiProviderConfig": { + "description": "Configuration for Google Generative AI provider.\n\nAttributes:\n api_key: Google API key for authentication.\n model_name: Embedding model name.\n task_type: Task type for embeddings. Default is \"RETRIEVAL_DOCUMENT\".", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "enum": [ + "gemini-embedding-001", + "text-embedding-005", + "text-multilingual-embedding-002" + ], + "title": "Model Name", + "type": "string" + }, + "task_type": { + "title": "Task Type", + "type": "string" + } + }, + "title": "GenerativeAiProviderConfig", + "type": "object" + }, + "GenerativeAiProviderSpec": { + "description": "Google Generative AI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/GenerativeAiProviderConfig" + }, + "provider": { + "const": "google-generativeai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "GenerativeAiProviderSpec", + "type": "object" + }, + "HuggingFaceProviderConfig": { + "description": "Configuration for HuggingFace provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model": { + "title": "Model", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "HuggingFaceProviderConfig", + "type": "object" + }, + "HuggingFaceProviderSpec": { + "description": "HuggingFace provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/HuggingFaceProviderConfig" + }, + "provider": { + "const": "huggingface", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "HuggingFaceProviderSpec", + "type": "object" + }, + "InstructorProviderConfig": { + "description": "Configuration for Instructor provider.", + "properties": { + "device": { + "title": "Device", + "type": "string" + }, + "instruction": { + "title": "Instruction", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "InstructorProviderConfig", + "type": "object" + }, + "InstructorProviderSpec": { + "description": "Instructor provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/InstructorProviderConfig" + }, + "provider": { + "const": "instructor", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "InstructorProviderSpec", + "type": "object" + }, + "JinaProviderConfig": { + "description": "Configuration for Jina provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "JinaProviderConfig", + "type": "object" + }, + "JinaProviderSpec": { + "description": "Jina provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/JinaProviderConfig" + }, + "provider": { + "const": "jina", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "JinaProviderSpec", + "type": "object" + }, + "ONNXProviderConfig": { + "description": "Configuration for ONNX provider.", + "properties": { + "preferred_providers": { + "items": { + "type": "string" + }, + "title": "Preferred Providers", + "type": "array" + } + }, + "title": "ONNXProviderConfig", + "type": "object" + }, + "ONNXProviderSpec": { + "description": "ONNX provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/ONNXProviderConfig" + }, + "provider": { + "const": "onnx", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "ONNXProviderSpec", + "type": "object" + }, + "OllamaProviderConfig": { + "description": "Configuration for Ollama provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + }, + "url": { + "title": "Url", + "type": "string" + } + }, + "title": "OllamaProviderConfig", + "type": "object" + }, + "OllamaProviderSpec": { + "description": "Ollama provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OllamaProviderConfig" + }, + "provider": { + "const": "ollama", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "OllamaProviderSpec", + "type": "object" + }, + "OpenAIProviderConfig": { + "description": "Configuration for OpenAI provider.", + "properties": { + "api_base": { + "title": "Api Base", + "type": "string" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_type": { + "title": "Api Type", + "type": "string" + }, + "api_version": { + "title": "Api Version", + "type": "string" + }, + "default_headers": { + "additionalProperties": true, + "title": "Default Headers", + "type": "object" + }, + "deployment_id": { + "title": "Deployment Id", + "type": "string" + }, + "dimensions": { + "title": "Dimensions", + "type": "integer" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "organization_id": { + "title": "Organization Id", + "type": "string" + } + }, + "title": "OpenAIProviderConfig", + "type": "object" + }, + "OpenAIProviderSpec": { + "description": "OpenAI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OpenAIProviderConfig" + }, + "provider": { + "const": "openai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "OpenAIProviderSpec", + "type": "object" + }, + "OpenCLIPProviderConfig": { + "description": "Configuration for OpenCLIP provider.", + "properties": { + "checkpoint": { + "title": "Checkpoint", + "type": "string" + }, + "device": { + "title": "Device", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "OpenCLIPProviderConfig", + "type": "object" + }, + "OpenCLIPProviderSpec": { + "description": "OpenCLIP provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OpenCLIPProviderConfig" + }, + "provider": { + "const": "openclip", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "OpenCLIPProviderSpec", + "type": "object" + }, + "RagToolConfig": { + "description": "Configuration accepted by RAG tools.\n\nSupports embedding model and vector database configuration.\n\nAttributes:\n embedding_model: Embedding model configuration accepted by RAG tools.\n vectordb: Vector database configuration accepted by RAG tools.", + "properties": { + "embedding_model": { + "anyOf": [ + { + "$ref": "#/$defs/AzureProviderSpec" + }, + { + "$ref": "#/$defs/BedrockProviderSpec" + }, + { + "$ref": "#/$defs/CohereProviderSpec" + }, + { + "$ref": "#/$defs/CustomProviderSpec" + }, + { + "$ref": "#/$defs/GenerativeAiProviderSpec" + }, + { + "$ref": "#/$defs/HuggingFaceProviderSpec" + }, + { + "$ref": "#/$defs/InstructorProviderSpec" + }, + { + "$ref": "#/$defs/JinaProviderSpec" + }, + { + "$ref": "#/$defs/OllamaProviderSpec" + }, + { + "$ref": "#/$defs/ONNXProviderSpec" + }, + { + "$ref": "#/$defs/OpenAIProviderSpec" + }, + { + "$ref": "#/$defs/OpenCLIPProviderSpec" + }, + { + "$ref": "#/$defs/RoboflowProviderSpec" + }, + { + "$ref": "#/$defs/SentenceTransformerProviderSpec" + }, + { + "$ref": "#/$defs/Text2VecProviderSpec" + }, + { + "$ref": "#/$defs/VertexAIProviderSpec" + }, + { + "$ref": "#/$defs/VoyageAIProviderSpec" + }, + { + "$ref": "#/$defs/WatsonXProviderSpec" + } + ], + "title": "Embedding Model" + }, + "vectordb": { + "$ref": "#/$defs/VectorDbConfig" + } + }, + "title": "RagToolConfig", + "type": "object" + }, + "RoboflowProviderConfig": { + "description": "Configuration for Roboflow provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_url": { + "title": "Api Url", + "type": "string" + } + }, + "title": "RoboflowProviderConfig", + "type": "object" + }, + "RoboflowProviderSpec": { + "description": "Roboflow provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/RoboflowProviderConfig" + }, + "provider": { + "const": "roboflow", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "RoboflowProviderSpec", + "type": "object" + }, + "SentenceTransformerProviderConfig": { + "description": "Configuration for SentenceTransformer provider.", + "properties": { + "device": { + "title": "Device", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "normalize_embeddings": { + "title": "Normalize Embeddings", + "type": "boolean" + } + }, + "title": "SentenceTransformerProviderConfig", + "type": "object" + }, + "SentenceTransformerProviderSpec": { + "description": "SentenceTransformer provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/SentenceTransformerProviderConfig" + }, + "provider": { + "const": "sentence-transformer", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "SentenceTransformerProviderSpec", + "type": "object" + }, + "Text2VecProviderConfig": { + "description": "Configuration for Text2Vec provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "Text2VecProviderConfig", + "type": "object" + }, + "Text2VecProviderSpec": { + "description": "Text2Vec provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/Text2VecProviderConfig" + }, + "provider": { + "const": "text2vec", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "Text2VecProviderSpec", + "type": "object" + }, + "VectorDbConfig": { + "description": "Configuration for vector database provider.\n\nAttributes:\n provider: RAG provider literal.\n config: RAG configuration options.", + "properties": { + "config": { + "additionalProperties": true, + "title": "Config", + "type": "object" + }, + "provider": { + "enum": [ + "chromadb", + "qdrant" + ], + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "VectorDbConfig", + "type": "object" + }, + "VertexAIProviderConfig": { + "description": "Configuration for Vertex AI provider with dual SDK support.\n\nSupports both legacy models (textembedding-gecko*) using the deprecated\nvertexai.language_models SDK and new models using google-genai SDK.\n\nAttributes:\n api_key: Google API key (optional if using project_id with ADC). Only for new SDK models.\n model_name: Embedding model name (default: \"textembedding-gecko\").\n Legacy models: textembedding-gecko, textembedding-gecko@001, etc.\n New models: gemini-embedding-001, text-embedding-005, text-multilingual-embedding-002\n project_id: GCP project ID (required for Vertex AI backend and legacy models).\n location: GCP region/location (default: \"us-central1\").\n region: Deprecated alias for location (kept for backwards compatibility).\n task_type: Task type for embeddings (default: \"RETRIEVAL_DOCUMENT\"). Only for new SDK models.\n output_dimensionality: Output embedding dimension (optional). Only for new SDK models.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "location": { + "title": "Location", + "type": "string" + }, + "model_name": { + "enum": [ + "textembedding-gecko", + "textembedding-gecko@001", + "textembedding-gecko@002", + "textembedding-gecko@003", + "textembedding-gecko@latest", + "textembedding-gecko-multilingual", + "textembedding-gecko-multilingual@001", + "textembedding-gecko-multilingual@latest", + "gemini-embedding-001", + "text-embedding-005", + "text-multilingual-embedding-002" + ], + "title": "Model Name", + "type": "string" + }, + "output_dimensionality": { + "title": "Output Dimensionality", + "type": "integer" + }, + "project_id": { + "title": "Project Id", + "type": "string" + }, + "region": { + "title": "Region", + "type": "string" + }, + "task_type": { + "title": "Task Type", + "type": "string" + } + }, + "title": "VertexAIProviderConfig", + "type": "object" + }, + "VertexAIProviderSpec": { + "description": "Vertex AI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/VertexAIProviderConfig" + }, + "provider": { + "const": "google-vertex", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "VertexAIProviderSpec", + "type": "object" + }, + "VoyageAIProviderConfig": { + "description": "Configuration for VoyageAI provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "input_type": { + "title": "Input Type", + "type": "string" + }, + "max_retries": { + "title": "Max Retries", + "type": "integer" + }, + "model": { + "title": "Model", + "type": "string" + }, + "output_dimension": { + "title": "Output Dimension", + "type": "integer" + }, + "output_dtype": { + "title": "Output Dtype", + "type": "string" + }, + "timeout": { + "title": "Timeout", + "type": "number" + }, + "truncation": { + "title": "Truncation", + "type": "boolean" + } + }, + "title": "VoyageAIProviderConfig", + "type": "object" + }, + "VoyageAIProviderSpec": { + "description": "VoyageAI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/VoyageAIProviderConfig" + }, + "provider": { + "const": "voyageai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "VoyageAIProviderSpec", + "type": "object" + }, + "WatsonXProviderConfig": { + "description": "Configuration for WatsonX provider.", + "properties": { + "api_client": { + "title": "Api Client" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "batch_size": { + "title": "Batch Size", + "type": "integer" + }, + "bedrock_url": { + "title": "Bedrock Url", + "type": "string" + }, + "concurrency_limit": { + "title": "Concurrency Limit", + "type": "integer" + }, + "credentials": { + "title": "Credentials" + }, + "delay_time": { + "title": "Delay Time", + "type": "number" + }, + "iam_serviceid_crn": { + "title": "Iam Serviceid Crn", + "type": "string" + }, + "instance_id": { + "title": "Instance Id", + "type": "string" + }, + "max_retries": { + "title": "Max Retries", + "type": "integer" + }, + "model_id": { + "title": "Model Id", + "type": "string" + }, + "name": { + "title": "Name", + "type": "string" + }, + "params": { + "additionalProperties": { + "anyOf": [ + { + "type": "string" + }, + { + "additionalProperties": { + "type": "string" + }, + "type": "object" + } + ] + }, + "title": "Params", + "type": "object" + }, + "password": { + "title": "Password", + "type": "string" + }, + "persistent_connection": { + "title": "Persistent Connection", + "type": "boolean" + }, + "platform_url": { + "title": "Platform Url", + "type": "string" + }, + "project_id": { + "title": "Project Id", + "type": "string" + }, + "projects_token": { + "title": "Projects Token", + "type": "string" + }, + "proxies": { + "additionalProperties": true, + "title": "Proxies", + "type": "object" + }, + "retry_status_codes": { + "items": { + "type": "integer" + }, + "title": "Retry Status Codes", + "type": "array" + }, + "space_id": { + "title": "Space Id", + "type": "string" + }, + "token": { + "title": "Token", + "type": "string" + }, + "trusted_profile_id": { + "title": "Trusted Profile Id", + "type": "string" + }, + "url": { + "title": "Url", + "type": "string" + }, + "username": { + "title": "Username", + "type": "string" + }, + "verify": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "string" + } + ], + "title": "Verify" + }, + "version": { + "title": "Version", + "type": "string" + } + }, + "title": "WatsonXProviderConfig", + "type": "object" + }, + "WatsonXProviderSpec": { + "description": "WatsonX provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/WatsonXProviderConfig" + }, + "provider": { + "const": "watsonx", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "WatsonXProviderSpec", + "type": "object" } }, "properties": { "adapter": { "$ref": "#/$defs/Adapter" }, + "collection_name": { + "default": "rag_tool_collection", + "title": "Collection Name", + "type": "string" + }, "config": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "default": null, - "title": "Config" + "$ref": "#/$defs/RagToolConfig", + "description": "Configuration format accepted by RagTool." + }, + "limit": { + "default": 5, + "title": "Limit", + "type": "integer" + }, + "similarity_threshold": { + "default": 0.6, + "title": "Similarity Threshold", + "type": "number" }, "summarize": { "default": false, @@ -6034,7 +15847,11 @@ }, "name": "RagTool", "package_dependencies": [], - "run_params_schema": {} + "run_params_schema": { + "properties": {}, + "title": "_ArgsSchemaPlaceholder", + "type": "object" + } }, { "description": "A tool that can be used to read a website content.", @@ -6114,15 +15931,6 @@ "type": "null" } ], - "default": { - "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9", - "Accept-Encoding": "gzip, deflate, br", - "Accept-Language": "en-US,en;q=0.9", - "Connection": "keep-alive", - "Referer": "https://www.google.com/", - "Upgrade-Insecure-Requests": "1", - "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36" - }, "title": "Headers" }, "website_url": { @@ -6231,14 +16039,6 @@ "type": "null" } ], - "default": { - "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9", - "Accept-Language": "en-US,en;q=0.9", - "Connection": "keep-alive", - "Referer": "https://www.google.com/", - "Upgrade-Insecure-Requests": "1", - "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/96.0.4664.110 Safari/537.36" - }, "title": "Headers" }, "website_url": { @@ -6448,9 +16248,16 @@ }, "properties": { "api_key": { + "anyOf": [ + { + "type": "string" + }, + { + "type": "null" + } + ], "default": null, - "title": "Api Key", - "type": "string" + "title": "Api Key" }, "scrapfly": { "anyOf": [ @@ -7088,10 +16895,169 @@ "init_params_schema": { "$defs": { "Adapter": { + "description": "Abstract base class for RAG adapters.", "properties": {}, "title": "Adapter", "type": "object" }, + "AzureProviderConfig": { + "description": "Configuration for Azure provider.", + "properties": { + "api_base": { + "title": "Api Base", + "type": "string" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_type": { + "title": "Api Type", + "type": "string" + }, + "api_version": { + "title": "Api Version", + "type": "string" + }, + "default_headers": { + "additionalProperties": true, + "title": "Default Headers", + "type": "object" + }, + "deployment_id": { + "title": "Deployment Id", + "type": "string" + }, + "dimensions": { + "title": "Dimensions", + "type": "integer" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "organization_id": { + "title": "Organization Id", + "type": "string" + } + }, + "required": [ + "deployment_id" + ], + "title": "AzureProviderConfig", + "type": "object" + }, + "AzureProviderSpec": { + "description": "Azure provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/AzureProviderConfig" + }, + "provider": { + "const": "azure", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "AzureProviderSpec", + "type": "object" + }, + "BedrockProviderConfig": { + "description": "Configuration for Bedrock provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + }, + "session": { + "title": "Session" + } + }, + "title": "BedrockProviderConfig", + "type": "object" + }, + "BedrockProviderSpec": { + "description": "Bedrock provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/BedrockProviderConfig" + }, + "provider": { + "const": "amazon-bedrock", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "BedrockProviderSpec", + "type": "object" + }, + "CohereProviderConfig": { + "description": "Configuration for Cohere provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "CohereProviderConfig", + "type": "object" + }, + "CohereProviderSpec": { + "description": "Cohere provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/CohereProviderConfig" + }, + "provider": { + "const": "cohere", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "CohereProviderSpec", + "type": "object" + }, + "CustomProviderConfig": { + "description": "Configuration for Custom provider.", + "properties": { + "embedding_callable": { + "title": "Embedding Callable" + } + }, + "title": "CustomProviderConfig", + "type": "object" + }, + "CustomProviderSpec": { + "description": "Custom provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/CustomProviderConfig" + }, + "provider": { + "const": "custom", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "CustomProviderSpec", + "type": "object" + }, "EnvVar": { "properties": { "default": { @@ -7126,24 +17092,809 @@ ], "title": "EnvVar", "type": "object" + }, + "GenerativeAiProviderConfig": { + "description": "Configuration for Google Generative AI provider.\n\nAttributes:\n api_key: Google API key for authentication.\n model_name: Embedding model name.\n task_type: Task type for embeddings. Default is \"RETRIEVAL_DOCUMENT\".", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "enum": [ + "gemini-embedding-001", + "text-embedding-005", + "text-multilingual-embedding-002" + ], + "title": "Model Name", + "type": "string" + }, + "task_type": { + "title": "Task Type", + "type": "string" + } + }, + "title": "GenerativeAiProviderConfig", + "type": "object" + }, + "GenerativeAiProviderSpec": { + "description": "Google Generative AI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/GenerativeAiProviderConfig" + }, + "provider": { + "const": "google-generativeai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "GenerativeAiProviderSpec", + "type": "object" + }, + "HuggingFaceProviderConfig": { + "description": "Configuration for HuggingFace provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model": { + "title": "Model", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "HuggingFaceProviderConfig", + "type": "object" + }, + "HuggingFaceProviderSpec": { + "description": "HuggingFace provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/HuggingFaceProviderConfig" + }, + "provider": { + "const": "huggingface", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "HuggingFaceProviderSpec", + "type": "object" + }, + "InstructorProviderConfig": { + "description": "Configuration for Instructor provider.", + "properties": { + "device": { + "title": "Device", + "type": "string" + }, + "instruction": { + "title": "Instruction", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "InstructorProviderConfig", + "type": "object" + }, + "InstructorProviderSpec": { + "description": "Instructor provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/InstructorProviderConfig" + }, + "provider": { + "const": "instructor", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "InstructorProviderSpec", + "type": "object" + }, + "JinaProviderConfig": { + "description": "Configuration for Jina provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "JinaProviderConfig", + "type": "object" + }, + "JinaProviderSpec": { + "description": "Jina provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/JinaProviderConfig" + }, + "provider": { + "const": "jina", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "JinaProviderSpec", + "type": "object" + }, + "ONNXProviderConfig": { + "description": "Configuration for ONNX provider.", + "properties": { + "preferred_providers": { + "items": { + "type": "string" + }, + "title": "Preferred Providers", + "type": "array" + } + }, + "title": "ONNXProviderConfig", + "type": "object" + }, + "ONNXProviderSpec": { + "description": "ONNX provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/ONNXProviderConfig" + }, + "provider": { + "const": "onnx", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "ONNXProviderSpec", + "type": "object" + }, + "OllamaProviderConfig": { + "description": "Configuration for Ollama provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + }, + "url": { + "title": "Url", + "type": "string" + } + }, + "title": "OllamaProviderConfig", + "type": "object" + }, + "OllamaProviderSpec": { + "description": "Ollama provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OllamaProviderConfig" + }, + "provider": { + "const": "ollama", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "OllamaProviderSpec", + "type": "object" + }, + "OpenAIProviderConfig": { + "description": "Configuration for OpenAI provider.", + "properties": { + "api_base": { + "title": "Api Base", + "type": "string" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_type": { + "title": "Api Type", + "type": "string" + }, + "api_version": { + "title": "Api Version", + "type": "string" + }, + "default_headers": { + "additionalProperties": true, + "title": "Default Headers", + "type": "object" + }, + "deployment_id": { + "title": "Deployment Id", + "type": "string" + }, + "dimensions": { + "title": "Dimensions", + "type": "integer" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "organization_id": { + "title": "Organization Id", + "type": "string" + } + }, + "title": "OpenAIProviderConfig", + "type": "object" + }, + "OpenAIProviderSpec": { + "description": "OpenAI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OpenAIProviderConfig" + }, + "provider": { + "const": "openai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "OpenAIProviderSpec", + "type": "object" + }, + "OpenCLIPProviderConfig": { + "description": "Configuration for OpenCLIP provider.", + "properties": { + "checkpoint": { + "title": "Checkpoint", + "type": "string" + }, + "device": { + "title": "Device", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "OpenCLIPProviderConfig", + "type": "object" + }, + "OpenCLIPProviderSpec": { + "description": "OpenCLIP provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OpenCLIPProviderConfig" + }, + "provider": { + "const": "openclip", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "OpenCLIPProviderSpec", + "type": "object" + }, + "RagToolConfig": { + "description": "Configuration accepted by RAG tools.\n\nSupports embedding model and vector database configuration.\n\nAttributes:\n embedding_model: Embedding model configuration accepted by RAG tools.\n vectordb: Vector database configuration accepted by RAG tools.", + "properties": { + "embedding_model": { + "anyOf": [ + { + "$ref": "#/$defs/AzureProviderSpec" + }, + { + "$ref": "#/$defs/BedrockProviderSpec" + }, + { + "$ref": "#/$defs/CohereProviderSpec" + }, + { + "$ref": "#/$defs/CustomProviderSpec" + }, + { + "$ref": "#/$defs/GenerativeAiProviderSpec" + }, + { + "$ref": "#/$defs/HuggingFaceProviderSpec" + }, + { + "$ref": "#/$defs/InstructorProviderSpec" + }, + { + "$ref": "#/$defs/JinaProviderSpec" + }, + { + "$ref": "#/$defs/OllamaProviderSpec" + }, + { + "$ref": "#/$defs/ONNXProviderSpec" + }, + { + "$ref": "#/$defs/OpenAIProviderSpec" + }, + { + "$ref": "#/$defs/OpenCLIPProviderSpec" + }, + { + "$ref": "#/$defs/RoboflowProviderSpec" + }, + { + "$ref": "#/$defs/SentenceTransformerProviderSpec" + }, + { + "$ref": "#/$defs/Text2VecProviderSpec" + }, + { + "$ref": "#/$defs/VertexAIProviderSpec" + }, + { + "$ref": "#/$defs/VoyageAIProviderSpec" + }, + { + "$ref": "#/$defs/WatsonXProviderSpec" + } + ], + "title": "Embedding Model" + }, + "vectordb": { + "$ref": "#/$defs/VectorDbConfig" + } + }, + "title": "RagToolConfig", + "type": "object" + }, + "RoboflowProviderConfig": { + "description": "Configuration for Roboflow provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_url": { + "title": "Api Url", + "type": "string" + } + }, + "title": "RoboflowProviderConfig", + "type": "object" + }, + "RoboflowProviderSpec": { + "description": "Roboflow provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/RoboflowProviderConfig" + }, + "provider": { + "const": "roboflow", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "RoboflowProviderSpec", + "type": "object" + }, + "SentenceTransformerProviderConfig": { + "description": "Configuration for SentenceTransformer provider.", + "properties": { + "device": { + "title": "Device", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "normalize_embeddings": { + "title": "Normalize Embeddings", + "type": "boolean" + } + }, + "title": "SentenceTransformerProviderConfig", + "type": "object" + }, + "SentenceTransformerProviderSpec": { + "description": "SentenceTransformer provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/SentenceTransformerProviderConfig" + }, + "provider": { + "const": "sentence-transformer", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "SentenceTransformerProviderSpec", + "type": "object" + }, + "Text2VecProviderConfig": { + "description": "Configuration for Text2Vec provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "Text2VecProviderConfig", + "type": "object" + }, + "Text2VecProviderSpec": { + "description": "Text2Vec provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/Text2VecProviderConfig" + }, + "provider": { + "const": "text2vec", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "Text2VecProviderSpec", + "type": "object" + }, + "VectorDbConfig": { + "description": "Configuration for vector database provider.\n\nAttributes:\n provider: RAG provider literal.\n config: RAG configuration options.", + "properties": { + "config": { + "additionalProperties": true, + "title": "Config", + "type": "object" + }, + "provider": { + "enum": [ + "chromadb", + "qdrant" + ], + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "VectorDbConfig", + "type": "object" + }, + "VertexAIProviderConfig": { + "description": "Configuration for Vertex AI provider with dual SDK support.\n\nSupports both legacy models (textembedding-gecko*) using the deprecated\nvertexai.language_models SDK and new models using google-genai SDK.\n\nAttributes:\n api_key: Google API key (optional if using project_id with ADC). Only for new SDK models.\n model_name: Embedding model name (default: \"textembedding-gecko\").\n Legacy models: textembedding-gecko, textembedding-gecko@001, etc.\n New models: gemini-embedding-001, text-embedding-005, text-multilingual-embedding-002\n project_id: GCP project ID (required for Vertex AI backend and legacy models).\n location: GCP region/location (default: \"us-central1\").\n region: Deprecated alias for location (kept for backwards compatibility).\n task_type: Task type for embeddings (default: \"RETRIEVAL_DOCUMENT\"). Only for new SDK models.\n output_dimensionality: Output embedding dimension (optional). Only for new SDK models.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "location": { + "title": "Location", + "type": "string" + }, + "model_name": { + "enum": [ + "textembedding-gecko", + "textembedding-gecko@001", + "textembedding-gecko@002", + "textembedding-gecko@003", + "textembedding-gecko@latest", + "textembedding-gecko-multilingual", + "textembedding-gecko-multilingual@001", + "textembedding-gecko-multilingual@latest", + "gemini-embedding-001", + "text-embedding-005", + "text-multilingual-embedding-002" + ], + "title": "Model Name", + "type": "string" + }, + "output_dimensionality": { + "title": "Output Dimensionality", + "type": "integer" + }, + "project_id": { + "title": "Project Id", + "type": "string" + }, + "region": { + "title": "Region", + "type": "string" + }, + "task_type": { + "title": "Task Type", + "type": "string" + } + }, + "title": "VertexAIProviderConfig", + "type": "object" + }, + "VertexAIProviderSpec": { + "description": "Vertex AI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/VertexAIProviderConfig" + }, + "provider": { + "const": "google-vertex", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "VertexAIProviderSpec", + "type": "object" + }, + "VoyageAIProviderConfig": { + "description": "Configuration for VoyageAI provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "input_type": { + "title": "Input Type", + "type": "string" + }, + "max_retries": { + "title": "Max Retries", + "type": "integer" + }, + "model": { + "title": "Model", + "type": "string" + }, + "output_dimension": { + "title": "Output Dimension", + "type": "integer" + }, + "output_dtype": { + "title": "Output Dtype", + "type": "string" + }, + "timeout": { + "title": "Timeout", + "type": "number" + }, + "truncation": { + "title": "Truncation", + "type": "boolean" + } + }, + "title": "VoyageAIProviderConfig", + "type": "object" + }, + "VoyageAIProviderSpec": { + "description": "VoyageAI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/VoyageAIProviderConfig" + }, + "provider": { + "const": "voyageai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "VoyageAIProviderSpec", + "type": "object" + }, + "WatsonXProviderConfig": { + "description": "Configuration for WatsonX provider.", + "properties": { + "api_client": { + "title": "Api Client" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "batch_size": { + "title": "Batch Size", + "type": "integer" + }, + "bedrock_url": { + "title": "Bedrock Url", + "type": "string" + }, + "concurrency_limit": { + "title": "Concurrency Limit", + "type": "integer" + }, + "credentials": { + "title": "Credentials" + }, + "delay_time": { + "title": "Delay Time", + "type": "number" + }, + "iam_serviceid_crn": { + "title": "Iam Serviceid Crn", + "type": "string" + }, + "instance_id": { + "title": "Instance Id", + "type": "string" + }, + "max_retries": { + "title": "Max Retries", + "type": "integer" + }, + "model_id": { + "title": "Model Id", + "type": "string" + }, + "name": { + "title": "Name", + "type": "string" + }, + "params": { + "additionalProperties": { + "anyOf": [ + { + "type": "string" + }, + { + "additionalProperties": { + "type": "string" + }, + "type": "object" + } + ] + }, + "title": "Params", + "type": "object" + }, + "password": { + "title": "Password", + "type": "string" + }, + "persistent_connection": { + "title": "Persistent Connection", + "type": "boolean" + }, + "platform_url": { + "title": "Platform Url", + "type": "string" + }, + "project_id": { + "title": "Project Id", + "type": "string" + }, + "projects_token": { + "title": "Projects Token", + "type": "string" + }, + "proxies": { + "additionalProperties": true, + "title": "Proxies", + "type": "object" + }, + "retry_status_codes": { + "items": { + "type": "integer" + }, + "title": "Retry Status Codes", + "type": "array" + }, + "space_id": { + "title": "Space Id", + "type": "string" + }, + "token": { + "title": "Token", + "type": "string" + }, + "trusted_profile_id": { + "title": "Trusted Profile Id", + "type": "string" + }, + "url": { + "title": "Url", + "type": "string" + }, + "username": { + "title": "Username", + "type": "string" + }, + "verify": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "string" + } + ], + "title": "Verify" + }, + "version": { + "title": "Version", + "type": "string" + } + }, + "title": "WatsonXProviderConfig", + "type": "object" + }, + "WatsonXProviderSpec": { + "description": "WatsonX provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/WatsonXProviderConfig" + }, + "provider": { + "const": "watsonx", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "WatsonXProviderSpec", + "type": "object" } }, "properties": { "adapter": { "$ref": "#/$defs/Adapter" }, + "collection_name": { + "default": "rag_tool_collection", + "title": "Collection Name", + "type": "string" + }, "config": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "default": null, - "title": "Config" + "$ref": "#/$defs/RagToolConfig", + "description": "Configuration format accepted by RagTool." }, "headers": { "anyOf": [ @@ -7155,9 +17906,13 @@ "type": "null" } ], - "default": {}, "title": "Headers" }, + "limit": { + "default": 5, + "title": "Limit", + "type": "integer" + }, "proxy_location": { "anyOf": [ { @@ -7175,6 +17930,11 @@ "title": "Request Url", "type": "string" }, + "similarity_threshold": { + "default": 0.6, + "title": "Similarity Threshold", + "type": "number" + }, "summarize": { "default": false, "title": "Summarize", @@ -7262,7 +18022,6 @@ "type": "null" } ], - "default": {}, "title": "Headers" }, "limit": { @@ -7376,7 +18135,6 @@ "type": "null" } ], - "default": {}, "title": "Headers" }, "hl": { @@ -7502,7 +18260,6 @@ "type": "null" } ], - "default": {}, "title": "Headers" }, "hl": { @@ -7551,7 +18308,6 @@ "type": "null" } ], - "default": {}, "title": "Query Payload" }, "search_url": { @@ -7595,10 +18351,169 @@ "init_params_schema": { "$defs": { "Adapter": { + "description": "Abstract base class for RAG adapters.", "properties": {}, "title": "Adapter", "type": "object" }, + "AzureProviderConfig": { + "description": "Configuration for Azure provider.", + "properties": { + "api_base": { + "title": "Api Base", + "type": "string" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_type": { + "title": "Api Type", + "type": "string" + }, + "api_version": { + "title": "Api Version", + "type": "string" + }, + "default_headers": { + "additionalProperties": true, + "title": "Default Headers", + "type": "object" + }, + "deployment_id": { + "title": "Deployment Id", + "type": "string" + }, + "dimensions": { + "title": "Dimensions", + "type": "integer" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "organization_id": { + "title": "Organization Id", + "type": "string" + } + }, + "required": [ + "deployment_id" + ], + "title": "AzureProviderConfig", + "type": "object" + }, + "AzureProviderSpec": { + "description": "Azure provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/AzureProviderConfig" + }, + "provider": { + "const": "azure", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "AzureProviderSpec", + "type": "object" + }, + "BedrockProviderConfig": { + "description": "Configuration for Bedrock provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + }, + "session": { + "title": "Session" + } + }, + "title": "BedrockProviderConfig", + "type": "object" + }, + "BedrockProviderSpec": { + "description": "Bedrock provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/BedrockProviderConfig" + }, + "provider": { + "const": "amazon-bedrock", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "BedrockProviderSpec", + "type": "object" + }, + "CohereProviderConfig": { + "description": "Configuration for Cohere provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "CohereProviderConfig", + "type": "object" + }, + "CohereProviderSpec": { + "description": "Cohere provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/CohereProviderConfig" + }, + "provider": { + "const": "cohere", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "CohereProviderSpec", + "type": "object" + }, + "CustomProviderConfig": { + "description": "Configuration for Custom provider.", + "properties": { + "embedding_callable": { + "title": "Embedding Callable" + } + }, + "title": "CustomProviderConfig", + "type": "object" + }, + "CustomProviderSpec": { + "description": "Custom provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/CustomProviderConfig" + }, + "provider": { + "const": "custom", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "CustomProviderSpec", + "type": "object" + }, "EnvVar": { "properties": { "default": { @@ -7633,55 +18548,850 @@ ], "title": "EnvVar", "type": "object" + }, + "GenerativeAiProviderConfig": { + "description": "Configuration for Google Generative AI provider.\n\nAttributes:\n api_key: Google API key for authentication.\n model_name: Embedding model name.\n task_type: Task type for embeddings. Default is \"RETRIEVAL_DOCUMENT\".", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "enum": [ + "gemini-embedding-001", + "text-embedding-005", + "text-multilingual-embedding-002" + ], + "title": "Model Name", + "type": "string" + }, + "task_type": { + "title": "Task Type", + "type": "string" + } + }, + "title": "GenerativeAiProviderConfig", + "type": "object" + }, + "GenerativeAiProviderSpec": { + "description": "Google Generative AI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/GenerativeAiProviderConfig" + }, + "provider": { + "const": "google-generativeai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "GenerativeAiProviderSpec", + "type": "object" + }, + "HuggingFaceProviderConfig": { + "description": "Configuration for HuggingFace provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model": { + "title": "Model", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "HuggingFaceProviderConfig", + "type": "object" + }, + "HuggingFaceProviderSpec": { + "description": "HuggingFace provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/HuggingFaceProviderConfig" + }, + "provider": { + "const": "huggingface", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "HuggingFaceProviderSpec", + "type": "object" + }, + "InstructorProviderConfig": { + "description": "Configuration for Instructor provider.", + "properties": { + "device": { + "title": "Device", + "type": "string" + }, + "instruction": { + "title": "Instruction", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "InstructorProviderConfig", + "type": "object" + }, + "InstructorProviderSpec": { + "description": "Instructor provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/InstructorProviderConfig" + }, + "provider": { + "const": "instructor", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "InstructorProviderSpec", + "type": "object" + }, + "JinaProviderConfig": { + "description": "Configuration for Jina provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "JinaProviderConfig", + "type": "object" + }, + "JinaProviderSpec": { + "description": "Jina provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/JinaProviderConfig" + }, + "provider": { + "const": "jina", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "JinaProviderSpec", + "type": "object" + }, + "ONNXProviderConfig": { + "description": "Configuration for ONNX provider.", + "properties": { + "preferred_providers": { + "items": { + "type": "string" + }, + "title": "Preferred Providers", + "type": "array" + } + }, + "title": "ONNXProviderConfig", + "type": "object" + }, + "ONNXProviderSpec": { + "description": "ONNX provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/ONNXProviderConfig" + }, + "provider": { + "const": "onnx", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "ONNXProviderSpec", + "type": "object" + }, + "OllamaProviderConfig": { + "description": "Configuration for Ollama provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + }, + "url": { + "title": "Url", + "type": "string" + } + }, + "title": "OllamaProviderConfig", + "type": "object" + }, + "OllamaProviderSpec": { + "description": "Ollama provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OllamaProviderConfig" + }, + "provider": { + "const": "ollama", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "OllamaProviderSpec", + "type": "object" + }, + "OpenAIProviderConfig": { + "description": "Configuration for OpenAI provider.", + "properties": { + "api_base": { + "title": "Api Base", + "type": "string" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_type": { + "title": "Api Type", + "type": "string" + }, + "api_version": { + "title": "Api Version", + "type": "string" + }, + "default_headers": { + "additionalProperties": true, + "title": "Default Headers", + "type": "object" + }, + "deployment_id": { + "title": "Deployment Id", + "type": "string" + }, + "dimensions": { + "title": "Dimensions", + "type": "integer" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "organization_id": { + "title": "Organization Id", + "type": "string" + } + }, + "title": "OpenAIProviderConfig", + "type": "object" + }, + "OpenAIProviderSpec": { + "description": "OpenAI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OpenAIProviderConfig" + }, + "provider": { + "const": "openai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "OpenAIProviderSpec", + "type": "object" + }, + "OpenCLIPProviderConfig": { + "description": "Configuration for OpenCLIP provider.", + "properties": { + "checkpoint": { + "title": "Checkpoint", + "type": "string" + }, + "device": { + "title": "Device", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "OpenCLIPProviderConfig", + "type": "object" + }, + "OpenCLIPProviderSpec": { + "description": "OpenCLIP provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OpenCLIPProviderConfig" + }, + "provider": { + "const": "openclip", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "OpenCLIPProviderSpec", + "type": "object" + }, + "RagToolConfig": { + "description": "Configuration accepted by RAG tools.\n\nSupports embedding model and vector database configuration.\n\nAttributes:\n embedding_model: Embedding model configuration accepted by RAG tools.\n vectordb: Vector database configuration accepted by RAG tools.", + "properties": { + "embedding_model": { + "anyOf": [ + { + "$ref": "#/$defs/AzureProviderSpec" + }, + { + "$ref": "#/$defs/BedrockProviderSpec" + }, + { + "$ref": "#/$defs/CohereProviderSpec" + }, + { + "$ref": "#/$defs/CustomProviderSpec" + }, + { + "$ref": "#/$defs/GenerativeAiProviderSpec" + }, + { + "$ref": "#/$defs/HuggingFaceProviderSpec" + }, + { + "$ref": "#/$defs/InstructorProviderSpec" + }, + { + "$ref": "#/$defs/JinaProviderSpec" + }, + { + "$ref": "#/$defs/OllamaProviderSpec" + }, + { + "$ref": "#/$defs/ONNXProviderSpec" + }, + { + "$ref": "#/$defs/OpenAIProviderSpec" + }, + { + "$ref": "#/$defs/OpenCLIPProviderSpec" + }, + { + "$ref": "#/$defs/RoboflowProviderSpec" + }, + { + "$ref": "#/$defs/SentenceTransformerProviderSpec" + }, + { + "$ref": "#/$defs/Text2VecProviderSpec" + }, + { + "$ref": "#/$defs/VertexAIProviderSpec" + }, + { + "$ref": "#/$defs/VoyageAIProviderSpec" + }, + { + "$ref": "#/$defs/WatsonXProviderSpec" + } + ], + "title": "Embedding Model" + }, + "vectordb": { + "$ref": "#/$defs/VectorDbConfig" + } + }, + "title": "RagToolConfig", + "type": "object" + }, + "RoboflowProviderConfig": { + "description": "Configuration for Roboflow provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_url": { + "title": "Api Url", + "type": "string" + } + }, + "title": "RoboflowProviderConfig", + "type": "object" + }, + "RoboflowProviderSpec": { + "description": "Roboflow provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/RoboflowProviderConfig" + }, + "provider": { + "const": "roboflow", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "RoboflowProviderSpec", + "type": "object" + }, + "SentenceTransformerProviderConfig": { + "description": "Configuration for SentenceTransformer provider.", + "properties": { + "device": { + "title": "Device", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "normalize_embeddings": { + "title": "Normalize Embeddings", + "type": "boolean" + } + }, + "title": "SentenceTransformerProviderConfig", + "type": "object" + }, + "SentenceTransformerProviderSpec": { + "description": "SentenceTransformer provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/SentenceTransformerProviderConfig" + }, + "provider": { + "const": "sentence-transformer", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "SentenceTransformerProviderSpec", + "type": "object" + }, + "Text2VecProviderConfig": { + "description": "Configuration for Text2Vec provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "Text2VecProviderConfig", + "type": "object" + }, + "Text2VecProviderSpec": { + "description": "Text2Vec provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/Text2VecProviderConfig" + }, + "provider": { + "const": "text2vec", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "Text2VecProviderSpec", + "type": "object" + }, + "VectorDbConfig": { + "description": "Configuration for vector database provider.\n\nAttributes:\n provider: RAG provider literal.\n config: RAG configuration options.", + "properties": { + "config": { + "additionalProperties": true, + "title": "Config", + "type": "object" + }, + "provider": { + "enum": [ + "chromadb", + "qdrant" + ], + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "VectorDbConfig", + "type": "object" + }, + "VertexAIProviderConfig": { + "description": "Configuration for Vertex AI provider with dual SDK support.\n\nSupports both legacy models (textembedding-gecko*) using the deprecated\nvertexai.language_models SDK and new models using google-genai SDK.\n\nAttributes:\n api_key: Google API key (optional if using project_id with ADC). Only for new SDK models.\n model_name: Embedding model name (default: \"textembedding-gecko\").\n Legacy models: textembedding-gecko, textembedding-gecko@001, etc.\n New models: gemini-embedding-001, text-embedding-005, text-multilingual-embedding-002\n project_id: GCP project ID (required for Vertex AI backend and legacy models).\n location: GCP region/location (default: \"us-central1\").\n region: Deprecated alias for location (kept for backwards compatibility).\n task_type: Task type for embeddings (default: \"RETRIEVAL_DOCUMENT\"). Only for new SDK models.\n output_dimensionality: Output embedding dimension (optional). Only for new SDK models.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "location": { + "title": "Location", + "type": "string" + }, + "model_name": { + "enum": [ + "textembedding-gecko", + "textembedding-gecko@001", + "textembedding-gecko@002", + "textembedding-gecko@003", + "textembedding-gecko@latest", + "textembedding-gecko-multilingual", + "textembedding-gecko-multilingual@001", + "textembedding-gecko-multilingual@latest", + "gemini-embedding-001", + "text-embedding-005", + "text-multilingual-embedding-002" + ], + "title": "Model Name", + "type": "string" + }, + "output_dimensionality": { + "title": "Output Dimensionality", + "type": "integer" + }, + "project_id": { + "title": "Project Id", + "type": "string" + }, + "region": { + "title": "Region", + "type": "string" + }, + "task_type": { + "title": "Task Type", + "type": "string" + } + }, + "title": "VertexAIProviderConfig", + "type": "object" + }, + "VertexAIProviderSpec": { + "description": "Vertex AI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/VertexAIProviderConfig" + }, + "provider": { + "const": "google-vertex", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "VertexAIProviderSpec", + "type": "object" + }, + "VoyageAIProviderConfig": { + "description": "Configuration for VoyageAI provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "input_type": { + "title": "Input Type", + "type": "string" + }, + "max_retries": { + "title": "Max Retries", + "type": "integer" + }, + "model": { + "title": "Model", + "type": "string" + }, + "output_dimension": { + "title": "Output Dimension", + "type": "integer" + }, + "output_dtype": { + "title": "Output Dtype", + "type": "string" + }, + "timeout": { + "title": "Timeout", + "type": "number" + }, + "truncation": { + "title": "Truncation", + "type": "boolean" + } + }, + "title": "VoyageAIProviderConfig", + "type": "object" + }, + "VoyageAIProviderSpec": { + "description": "VoyageAI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/VoyageAIProviderConfig" + }, + "provider": { + "const": "voyageai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "VoyageAIProviderSpec", + "type": "object" + }, + "WatsonXProviderConfig": { + "description": "Configuration for WatsonX provider.", + "properties": { + "api_client": { + "title": "Api Client" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "batch_size": { + "title": "Batch Size", + "type": "integer" + }, + "bedrock_url": { + "title": "Bedrock Url", + "type": "string" + }, + "concurrency_limit": { + "title": "Concurrency Limit", + "type": "integer" + }, + "credentials": { + "title": "Credentials" + }, + "delay_time": { + "title": "Delay Time", + "type": "number" + }, + "iam_serviceid_crn": { + "title": "Iam Serviceid Crn", + "type": "string" + }, + "instance_id": { + "title": "Instance Id", + "type": "string" + }, + "max_retries": { + "title": "Max Retries", + "type": "integer" + }, + "model_id": { + "title": "Model Id", + "type": "string" + }, + "name": { + "title": "Name", + "type": "string" + }, + "params": { + "additionalProperties": { + "anyOf": [ + { + "type": "string" + }, + { + "additionalProperties": { + "type": "string" + }, + "type": "object" + } + ] + }, + "title": "Params", + "type": "object" + }, + "password": { + "title": "Password", + "type": "string" + }, + "persistent_connection": { + "title": "Persistent Connection", + "type": "boolean" + }, + "platform_url": { + "title": "Platform Url", + "type": "string" + }, + "project_id": { + "title": "Project Id", + "type": "string" + }, + "projects_token": { + "title": "Projects Token", + "type": "string" + }, + "proxies": { + "additionalProperties": true, + "title": "Proxies", + "type": "object" + }, + "retry_status_codes": { + "items": { + "type": "integer" + }, + "title": "Retry Status Codes", + "type": "array" + }, + "space_id": { + "title": "Space Id", + "type": "string" + }, + "token": { + "title": "Token", + "type": "string" + }, + "trusted_profile_id": { + "title": "Trusted Profile Id", + "type": "string" + }, + "url": { + "title": "Url", + "type": "string" + }, + "username": { + "title": "Username", + "type": "string" + }, + "verify": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "string" + } + ], + "title": "Verify" + }, + "version": { + "title": "Version", + "type": "string" + } + }, + "title": "WatsonXProviderConfig", + "type": "object" + }, + "WatsonXProviderSpec": { + "description": "WatsonX provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/WatsonXProviderConfig" + }, + "provider": { + "const": "watsonx", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "WatsonXProviderSpec", + "type": "object" } }, "properties": { "adapter": { "$ref": "#/$defs/Adapter" }, + "collection_name": { + "default": "rag_tool_collection", + "title": "Collection Name", + "type": "string" + }, "config": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "default": null, - "title": "Config" + "$ref": "#/$defs/RagToolConfig", + "description": "Configuration format accepted by RagTool." }, "headers": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "default": {}, - "title": "Headers" + "additionalProperties": true, + "title": "Headers", + "type": "object" + }, + "limit": { + "default": 5, + "title": "Limit", + "type": "integer" }, "proxy_location": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], "default": "US", - "title": "Proxy Location" + "enum": [ + "US", + "CA", + "IE", + "GB", + "FR", + "DE", + "SE", + "IN", + "JP", + "KR", + "SG", + "AU", + "BR" + ], + "title": "Proxy Location", + "type": "string" }, "request_url": { "default": "https://api.serply.io/v1/request", "title": "Request Url", "type": "string" }, + "similarity_threshold": { + "default": 0.6, + "title": "Similarity Threshold", + "type": "number" + }, "summarize": { "default": false, "title": "Summarize", @@ -7816,7 +19526,6 @@ "properties": { "connection_args": { "additionalProperties": true, - "default": {}, "title": "Connection Args", "type": "object" }, @@ -8279,22 +19988,23 @@ }, { "description": "Use this tool to control a web browser and interact with websites using natural language.\n\n Capabilities:\n - Navigate to websites and follow links\n - Click buttons, links, and other elements\n - Fill in forms and input fields\n - Search within websites\n - Extract information from web pages\n - Identify and analyze elements on a page\n\n To use this tool, provide a natural language instruction describing what you want to do.\n For reliability on complex pages, use specific, atomic instructions with location hints:\n - Good: \"Click the search box in the header\"\n - Good: \"Type 'Italy' in the focused field\"\n - Bad: \"Search for Italy and click the first result\"\n\n For different types of tasks, specify the command_type:\n - 'act': For performing one atomic action (default)\n - 'navigate': For navigating to a URL\n - 'extract': For getting data from a specific page section\n - 'observe': For finding elements in a specific area", - "env_vars": [], + "env_vars": [ + { + "default": null, + "description": "API key for Browserbase services", + "name": "BROWSERBASE_API_KEY", + "required": false + }, + { + "default": null, + "description": "Project ID for Browserbase services", + "name": "BROWSERBASE_PROJECT_ID", + "required": false + } + ], "humanized_name": "Web Automation Tool", "init_params_schema": { "$defs": { - "AvailableModel": { - "enum": [ - "gpt-4o", - "gpt-4o-mini", - "claude-3-5-sonnet-latest", - "claude-3-7-sonnet-latest", - "computer-use-preview", - "gemini-2.0-flash" - ], - "title": "AvailableModel", - "type": "string" - }, "EnvVar": { "properties": { "default": { @@ -8372,17 +20082,6 @@ "default": null, "title": "Model Api Key" }, - "model_name": { - "anyOf": [ - { - "$ref": "#/$defs/AvailableModel" - }, - { - "type": "null" - } - ], - "default": "claude-3-7-sonnet-latest" - }, "project_id": { "anyOf": [ { @@ -8432,7 +20131,9 @@ "type": "object" }, "name": "StagehandTool", - "package_dependencies": [], + "package_dependencies": [ + "stagehand<=0.5.9" + ], "run_params_schema": { "description": "Input for StagehandTool.", "properties": { @@ -8487,10 +20188,169 @@ "init_params_schema": { "$defs": { "Adapter": { + "description": "Abstract base class for RAG adapters.", "properties": {}, "title": "Adapter", "type": "object" }, + "AzureProviderConfig": { + "description": "Configuration for Azure provider.", + "properties": { + "api_base": { + "title": "Api Base", + "type": "string" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_type": { + "title": "Api Type", + "type": "string" + }, + "api_version": { + "title": "Api Version", + "type": "string" + }, + "default_headers": { + "additionalProperties": true, + "title": "Default Headers", + "type": "object" + }, + "deployment_id": { + "title": "Deployment Id", + "type": "string" + }, + "dimensions": { + "title": "Dimensions", + "type": "integer" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "organization_id": { + "title": "Organization Id", + "type": "string" + } + }, + "required": [ + "deployment_id" + ], + "title": "AzureProviderConfig", + "type": "object" + }, + "AzureProviderSpec": { + "description": "Azure provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/AzureProviderConfig" + }, + "provider": { + "const": "azure", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "AzureProviderSpec", + "type": "object" + }, + "BedrockProviderConfig": { + "description": "Configuration for Bedrock provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + }, + "session": { + "title": "Session" + } + }, + "title": "BedrockProviderConfig", + "type": "object" + }, + "BedrockProviderSpec": { + "description": "Bedrock provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/BedrockProviderConfig" + }, + "provider": { + "const": "amazon-bedrock", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "BedrockProviderSpec", + "type": "object" + }, + "CohereProviderConfig": { + "description": "Configuration for Cohere provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "CohereProviderConfig", + "type": "object" + }, + "CohereProviderSpec": { + "description": "Cohere provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/CohereProviderConfig" + }, + "provider": { + "const": "cohere", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "CohereProviderSpec", + "type": "object" + }, + "CustomProviderConfig": { + "description": "Configuration for Custom provider.", + "properties": { + "embedding_callable": { + "title": "Embedding Callable" + } + }, + "title": "CustomProviderConfig", + "type": "object" + }, + "CustomProviderSpec": { + "description": "Custom provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/CustomProviderConfig" + }, + "provider": { + "const": "custom", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "CustomProviderSpec", + "type": "object" + }, "EnvVar": { "properties": { "default": { @@ -8525,29 +20385,836 @@ ], "title": "EnvVar", "type": "object" + }, + "GenerativeAiProviderConfig": { + "description": "Configuration for Google Generative AI provider.\n\nAttributes:\n api_key: Google API key for authentication.\n model_name: Embedding model name.\n task_type: Task type for embeddings. Default is \"RETRIEVAL_DOCUMENT\".", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "enum": [ + "gemini-embedding-001", + "text-embedding-005", + "text-multilingual-embedding-002" + ], + "title": "Model Name", + "type": "string" + }, + "task_type": { + "title": "Task Type", + "type": "string" + } + }, + "title": "GenerativeAiProviderConfig", + "type": "object" + }, + "GenerativeAiProviderSpec": { + "description": "Google Generative AI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/GenerativeAiProviderConfig" + }, + "provider": { + "const": "google-generativeai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "GenerativeAiProviderSpec", + "type": "object" + }, + "HuggingFaceProviderConfig": { + "description": "Configuration for HuggingFace provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model": { + "title": "Model", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "HuggingFaceProviderConfig", + "type": "object" + }, + "HuggingFaceProviderSpec": { + "description": "HuggingFace provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/HuggingFaceProviderConfig" + }, + "provider": { + "const": "huggingface", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "HuggingFaceProviderSpec", + "type": "object" + }, + "InstructorProviderConfig": { + "description": "Configuration for Instructor provider.", + "properties": { + "device": { + "title": "Device", + "type": "string" + }, + "instruction": { + "title": "Instruction", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "InstructorProviderConfig", + "type": "object" + }, + "InstructorProviderSpec": { + "description": "Instructor provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/InstructorProviderConfig" + }, + "provider": { + "const": "instructor", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "InstructorProviderSpec", + "type": "object" + }, + "JinaProviderConfig": { + "description": "Configuration for Jina provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "JinaProviderConfig", + "type": "object" + }, + "JinaProviderSpec": { + "description": "Jina provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/JinaProviderConfig" + }, + "provider": { + "const": "jina", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "JinaProviderSpec", + "type": "object" + }, + "ONNXProviderConfig": { + "description": "Configuration for ONNX provider.", + "properties": { + "preferred_providers": { + "items": { + "type": "string" + }, + "title": "Preferred Providers", + "type": "array" + } + }, + "title": "ONNXProviderConfig", + "type": "object" + }, + "ONNXProviderSpec": { + "description": "ONNX provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/ONNXProviderConfig" + }, + "provider": { + "const": "onnx", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "ONNXProviderSpec", + "type": "object" + }, + "OllamaProviderConfig": { + "description": "Configuration for Ollama provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + }, + "url": { + "title": "Url", + "type": "string" + } + }, + "title": "OllamaProviderConfig", + "type": "object" + }, + "OllamaProviderSpec": { + "description": "Ollama provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OllamaProviderConfig" + }, + "provider": { + "const": "ollama", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "OllamaProviderSpec", + "type": "object" + }, + "OpenAIProviderConfig": { + "description": "Configuration for OpenAI provider.", + "properties": { + "api_base": { + "title": "Api Base", + "type": "string" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_type": { + "title": "Api Type", + "type": "string" + }, + "api_version": { + "title": "Api Version", + "type": "string" + }, + "default_headers": { + "additionalProperties": true, + "title": "Default Headers", + "type": "object" + }, + "deployment_id": { + "title": "Deployment Id", + "type": "string" + }, + "dimensions": { + "title": "Dimensions", + "type": "integer" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "organization_id": { + "title": "Organization Id", + "type": "string" + } + }, + "title": "OpenAIProviderConfig", + "type": "object" + }, + "OpenAIProviderSpec": { + "description": "OpenAI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OpenAIProviderConfig" + }, + "provider": { + "const": "openai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "OpenAIProviderSpec", + "type": "object" + }, + "OpenCLIPProviderConfig": { + "description": "Configuration for OpenCLIP provider.", + "properties": { + "checkpoint": { + "title": "Checkpoint", + "type": "string" + }, + "device": { + "title": "Device", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "OpenCLIPProviderConfig", + "type": "object" + }, + "OpenCLIPProviderSpec": { + "description": "OpenCLIP provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OpenCLIPProviderConfig" + }, + "provider": { + "const": "openclip", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "OpenCLIPProviderSpec", + "type": "object" + }, + "RagToolConfig": { + "description": "Configuration accepted by RAG tools.\n\nSupports embedding model and vector database configuration.\n\nAttributes:\n embedding_model: Embedding model configuration accepted by RAG tools.\n vectordb: Vector database configuration accepted by RAG tools.", + "properties": { + "embedding_model": { + "anyOf": [ + { + "$ref": "#/$defs/AzureProviderSpec" + }, + { + "$ref": "#/$defs/BedrockProviderSpec" + }, + { + "$ref": "#/$defs/CohereProviderSpec" + }, + { + "$ref": "#/$defs/CustomProviderSpec" + }, + { + "$ref": "#/$defs/GenerativeAiProviderSpec" + }, + { + "$ref": "#/$defs/HuggingFaceProviderSpec" + }, + { + "$ref": "#/$defs/InstructorProviderSpec" + }, + { + "$ref": "#/$defs/JinaProviderSpec" + }, + { + "$ref": "#/$defs/OllamaProviderSpec" + }, + { + "$ref": "#/$defs/ONNXProviderSpec" + }, + { + "$ref": "#/$defs/OpenAIProviderSpec" + }, + { + "$ref": "#/$defs/OpenCLIPProviderSpec" + }, + { + "$ref": "#/$defs/RoboflowProviderSpec" + }, + { + "$ref": "#/$defs/SentenceTransformerProviderSpec" + }, + { + "$ref": "#/$defs/Text2VecProviderSpec" + }, + { + "$ref": "#/$defs/VertexAIProviderSpec" + }, + { + "$ref": "#/$defs/VoyageAIProviderSpec" + }, + { + "$ref": "#/$defs/WatsonXProviderSpec" + } + ], + "title": "Embedding Model" + }, + "vectordb": { + "$ref": "#/$defs/VectorDbConfig" + } + }, + "title": "RagToolConfig", + "type": "object" + }, + "RoboflowProviderConfig": { + "description": "Configuration for Roboflow provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_url": { + "title": "Api Url", + "type": "string" + } + }, + "title": "RoboflowProviderConfig", + "type": "object" + }, + "RoboflowProviderSpec": { + "description": "Roboflow provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/RoboflowProviderConfig" + }, + "provider": { + "const": "roboflow", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "RoboflowProviderSpec", + "type": "object" + }, + "SentenceTransformerProviderConfig": { + "description": "Configuration for SentenceTransformer provider.", + "properties": { + "device": { + "title": "Device", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "normalize_embeddings": { + "title": "Normalize Embeddings", + "type": "boolean" + } + }, + "title": "SentenceTransformerProviderConfig", + "type": "object" + }, + "SentenceTransformerProviderSpec": { + "description": "SentenceTransformer provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/SentenceTransformerProviderConfig" + }, + "provider": { + "const": "sentence-transformer", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "SentenceTransformerProviderSpec", + "type": "object" + }, + "Text2VecProviderConfig": { + "description": "Configuration for Text2Vec provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "Text2VecProviderConfig", + "type": "object" + }, + "Text2VecProviderSpec": { + "description": "Text2Vec provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/Text2VecProviderConfig" + }, + "provider": { + "const": "text2vec", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "Text2VecProviderSpec", + "type": "object" + }, + "VectorDbConfig": { + "description": "Configuration for vector database provider.\n\nAttributes:\n provider: RAG provider literal.\n config: RAG configuration options.", + "properties": { + "config": { + "additionalProperties": true, + "title": "Config", + "type": "object" + }, + "provider": { + "enum": [ + "chromadb", + "qdrant" + ], + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "VectorDbConfig", + "type": "object" + }, + "VertexAIProviderConfig": { + "description": "Configuration for Vertex AI provider with dual SDK support.\n\nSupports both legacy models (textembedding-gecko*) using the deprecated\nvertexai.language_models SDK and new models using google-genai SDK.\n\nAttributes:\n api_key: Google API key (optional if using project_id with ADC). Only for new SDK models.\n model_name: Embedding model name (default: \"textembedding-gecko\").\n Legacy models: textembedding-gecko, textembedding-gecko@001, etc.\n New models: gemini-embedding-001, text-embedding-005, text-multilingual-embedding-002\n project_id: GCP project ID (required for Vertex AI backend and legacy models).\n location: GCP region/location (default: \"us-central1\").\n region: Deprecated alias for location (kept for backwards compatibility).\n task_type: Task type for embeddings (default: \"RETRIEVAL_DOCUMENT\"). Only for new SDK models.\n output_dimensionality: Output embedding dimension (optional). Only for new SDK models.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "location": { + "title": "Location", + "type": "string" + }, + "model_name": { + "enum": [ + "textembedding-gecko", + "textembedding-gecko@001", + "textembedding-gecko@002", + "textembedding-gecko@003", + "textembedding-gecko@latest", + "textembedding-gecko-multilingual", + "textembedding-gecko-multilingual@001", + "textembedding-gecko-multilingual@latest", + "gemini-embedding-001", + "text-embedding-005", + "text-multilingual-embedding-002" + ], + "title": "Model Name", + "type": "string" + }, + "output_dimensionality": { + "title": "Output Dimensionality", + "type": "integer" + }, + "project_id": { + "title": "Project Id", + "type": "string" + }, + "region": { + "title": "Region", + "type": "string" + }, + "task_type": { + "title": "Task Type", + "type": "string" + } + }, + "title": "VertexAIProviderConfig", + "type": "object" + }, + "VertexAIProviderSpec": { + "description": "Vertex AI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/VertexAIProviderConfig" + }, + "provider": { + "const": "google-vertex", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "VertexAIProviderSpec", + "type": "object" + }, + "VoyageAIProviderConfig": { + "description": "Configuration for VoyageAI provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "input_type": { + "title": "Input Type", + "type": "string" + }, + "max_retries": { + "title": "Max Retries", + "type": "integer" + }, + "model": { + "title": "Model", + "type": "string" + }, + "output_dimension": { + "title": "Output Dimension", + "type": "integer" + }, + "output_dtype": { + "title": "Output Dtype", + "type": "string" + }, + "timeout": { + "title": "Timeout", + "type": "number" + }, + "truncation": { + "title": "Truncation", + "type": "boolean" + } + }, + "title": "VoyageAIProviderConfig", + "type": "object" + }, + "VoyageAIProviderSpec": { + "description": "VoyageAI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/VoyageAIProviderConfig" + }, + "provider": { + "const": "voyageai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "VoyageAIProviderSpec", + "type": "object" + }, + "WatsonXProviderConfig": { + "description": "Configuration for WatsonX provider.", + "properties": { + "api_client": { + "title": "Api Client" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "batch_size": { + "title": "Batch Size", + "type": "integer" + }, + "bedrock_url": { + "title": "Bedrock Url", + "type": "string" + }, + "concurrency_limit": { + "title": "Concurrency Limit", + "type": "integer" + }, + "credentials": { + "title": "Credentials" + }, + "delay_time": { + "title": "Delay Time", + "type": "number" + }, + "iam_serviceid_crn": { + "title": "Iam Serviceid Crn", + "type": "string" + }, + "instance_id": { + "title": "Instance Id", + "type": "string" + }, + "max_retries": { + "title": "Max Retries", + "type": "integer" + }, + "model_id": { + "title": "Model Id", + "type": "string" + }, + "name": { + "title": "Name", + "type": "string" + }, + "params": { + "additionalProperties": { + "anyOf": [ + { + "type": "string" + }, + { + "additionalProperties": { + "type": "string" + }, + "type": "object" + } + ] + }, + "title": "Params", + "type": "object" + }, + "password": { + "title": "Password", + "type": "string" + }, + "persistent_connection": { + "title": "Persistent Connection", + "type": "boolean" + }, + "platform_url": { + "title": "Platform Url", + "type": "string" + }, + "project_id": { + "title": "Project Id", + "type": "string" + }, + "projects_token": { + "title": "Projects Token", + "type": "string" + }, + "proxies": { + "additionalProperties": true, + "title": "Proxies", + "type": "object" + }, + "retry_status_codes": { + "items": { + "type": "integer" + }, + "title": "Retry Status Codes", + "type": "array" + }, + "space_id": { + "title": "Space Id", + "type": "string" + }, + "token": { + "title": "Token", + "type": "string" + }, + "trusted_profile_id": { + "title": "Trusted Profile Id", + "type": "string" + }, + "url": { + "title": "Url", + "type": "string" + }, + "username": { + "title": "Username", + "type": "string" + }, + "verify": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "string" + } + ], + "title": "Verify" + }, + "version": { + "title": "Version", + "type": "string" + } + }, + "title": "WatsonXProviderConfig", + "type": "object" + }, + "WatsonXProviderSpec": { + "description": "WatsonX provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/WatsonXProviderConfig" + }, + "provider": { + "const": "watsonx", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "WatsonXProviderSpec", + "type": "object" } }, "properties": { "adapter": { "$ref": "#/$defs/Adapter" }, + "collection_name": { + "default": "rag_tool_collection", + "title": "Collection Name", + "type": "string" + }, "config": { + "$ref": "#/$defs/RagToolConfig", + "description": "Configuration format accepted by RagTool." + }, + "limit": { + "default": 5, + "title": "Limit", + "type": "integer" + }, + "similarity_threshold": { + "default": 0.6, + "title": "Similarity Threshold", + "type": "number" + }, + "summarize": { + "default": false, + "title": "Summarize", + "type": "boolean" + }, + "txt": { "anyOf": [ { - "additionalProperties": true, - "type": "object" + "type": "string" }, { "type": "null" } ], "default": null, - "title": "Config" - }, - "summarize": { - "default": false, - "title": "Summarize", - "type": "boolean" + "title": "Txt" } }, "title": "TXTSearchTool", @@ -8564,7 +21231,7 @@ "type": "string" }, "txt": { - "description": "Mandatory txt path you want to search", + "description": "File path or URL of a TXT file to be searched", "title": "Txt", "type": "string" } @@ -9097,42 +21764,19 @@ "type": "object" } }, - "description": "Tool to search the Weaviate database", + "description": "Tool to search the Weaviate database.", "properties": { "alpha": { - "anyOf": [ - { - "type": "integer" - }, - { - "type": "null" - } - ], "default": 0.75, - "title": "Alpha" + "title": "Alpha", + "type": "number" }, "collection_name": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "default": null, - "title": "Collection Name" + "description": "The name of the Weaviate collection to search", + "title": "Collection Name", + "type": "string" }, "generative_model": { - "anyOf": [ - { - "type": "string" - }, - { - "type": "null" - } - ], - "default": null, "title": "Generative Model" }, "headers": { @@ -9173,13 +21817,6 @@ "title": "Query" }, "vectorizer": { - "anyOf": [ - {}, - { - "type": "null" - } - ], - "default": null, "title": "Vectorizer" }, "weaviate_api_key": { @@ -9194,6 +21831,7 @@ } }, "required": [ + "collection_name", "weaviate_cluster_url", "weaviate_api_key" ], @@ -9227,10 +21865,169 @@ "init_params_schema": { "$defs": { "Adapter": { + "description": "Abstract base class for RAG adapters.", "properties": {}, "title": "Adapter", "type": "object" }, + "AzureProviderConfig": { + "description": "Configuration for Azure provider.", + "properties": { + "api_base": { + "title": "Api Base", + "type": "string" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_type": { + "title": "Api Type", + "type": "string" + }, + "api_version": { + "title": "Api Version", + "type": "string" + }, + "default_headers": { + "additionalProperties": true, + "title": "Default Headers", + "type": "object" + }, + "deployment_id": { + "title": "Deployment Id", + "type": "string" + }, + "dimensions": { + "title": "Dimensions", + "type": "integer" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "organization_id": { + "title": "Organization Id", + "type": "string" + } + }, + "required": [ + "deployment_id" + ], + "title": "AzureProviderConfig", + "type": "object" + }, + "AzureProviderSpec": { + "description": "Azure provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/AzureProviderConfig" + }, + "provider": { + "const": "azure", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "AzureProviderSpec", + "type": "object" + }, + "BedrockProviderConfig": { + "description": "Configuration for Bedrock provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + }, + "session": { + "title": "Session" + } + }, + "title": "BedrockProviderConfig", + "type": "object" + }, + "BedrockProviderSpec": { + "description": "Bedrock provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/BedrockProviderConfig" + }, + "provider": { + "const": "amazon-bedrock", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "BedrockProviderSpec", + "type": "object" + }, + "CohereProviderConfig": { + "description": "Configuration for Cohere provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "CohereProviderConfig", + "type": "object" + }, + "CohereProviderSpec": { + "description": "Cohere provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/CohereProviderConfig" + }, + "provider": { + "const": "cohere", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "CohereProviderSpec", + "type": "object" + }, + "CustomProviderConfig": { + "description": "Configuration for Custom provider.", + "properties": { + "embedding_callable": { + "title": "Embedding Callable" + } + }, + "title": "CustomProviderConfig", + "type": "object" + }, + "CustomProviderSpec": { + "description": "Custom provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/CustomProviderConfig" + }, + "provider": { + "const": "custom", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "CustomProviderSpec", + "type": "object" + }, "EnvVar": { "properties": { "default": { @@ -9265,24 +22062,819 @@ ], "title": "EnvVar", "type": "object" + }, + "GenerativeAiProviderConfig": { + "description": "Configuration for Google Generative AI provider.\n\nAttributes:\n api_key: Google API key for authentication.\n model_name: Embedding model name.\n task_type: Task type for embeddings. Default is \"RETRIEVAL_DOCUMENT\".", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "enum": [ + "gemini-embedding-001", + "text-embedding-005", + "text-multilingual-embedding-002" + ], + "title": "Model Name", + "type": "string" + }, + "task_type": { + "title": "Task Type", + "type": "string" + } + }, + "title": "GenerativeAiProviderConfig", + "type": "object" + }, + "GenerativeAiProviderSpec": { + "description": "Google Generative AI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/GenerativeAiProviderConfig" + }, + "provider": { + "const": "google-generativeai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "GenerativeAiProviderSpec", + "type": "object" + }, + "HuggingFaceProviderConfig": { + "description": "Configuration for HuggingFace provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model": { + "title": "Model", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "HuggingFaceProviderConfig", + "type": "object" + }, + "HuggingFaceProviderSpec": { + "description": "HuggingFace provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/HuggingFaceProviderConfig" + }, + "provider": { + "const": "huggingface", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "HuggingFaceProviderSpec", + "type": "object" + }, + "InstructorProviderConfig": { + "description": "Configuration for Instructor provider.", + "properties": { + "device": { + "title": "Device", + "type": "string" + }, + "instruction": { + "title": "Instruction", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "InstructorProviderConfig", + "type": "object" + }, + "InstructorProviderSpec": { + "description": "Instructor provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/InstructorProviderConfig" + }, + "provider": { + "const": "instructor", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "InstructorProviderSpec", + "type": "object" + }, + "JinaProviderConfig": { + "description": "Configuration for Jina provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "JinaProviderConfig", + "type": "object" + }, + "JinaProviderSpec": { + "description": "Jina provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/JinaProviderConfig" + }, + "provider": { + "const": "jina", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "JinaProviderSpec", + "type": "object" + }, + "ONNXProviderConfig": { + "description": "Configuration for ONNX provider.", + "properties": { + "preferred_providers": { + "items": { + "type": "string" + }, + "title": "Preferred Providers", + "type": "array" + } + }, + "title": "ONNXProviderConfig", + "type": "object" + }, + "ONNXProviderSpec": { + "description": "ONNX provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/ONNXProviderConfig" + }, + "provider": { + "const": "onnx", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "ONNXProviderSpec", + "type": "object" + }, + "OllamaProviderConfig": { + "description": "Configuration for Ollama provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + }, + "url": { + "title": "Url", + "type": "string" + } + }, + "title": "OllamaProviderConfig", + "type": "object" + }, + "OllamaProviderSpec": { + "description": "Ollama provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OllamaProviderConfig" + }, + "provider": { + "const": "ollama", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "OllamaProviderSpec", + "type": "object" + }, + "OpenAIProviderConfig": { + "description": "Configuration for OpenAI provider.", + "properties": { + "api_base": { + "title": "Api Base", + "type": "string" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_type": { + "title": "Api Type", + "type": "string" + }, + "api_version": { + "title": "Api Version", + "type": "string" + }, + "default_headers": { + "additionalProperties": true, + "title": "Default Headers", + "type": "object" + }, + "deployment_id": { + "title": "Deployment Id", + "type": "string" + }, + "dimensions": { + "title": "Dimensions", + "type": "integer" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "organization_id": { + "title": "Organization Id", + "type": "string" + } + }, + "title": "OpenAIProviderConfig", + "type": "object" + }, + "OpenAIProviderSpec": { + "description": "OpenAI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OpenAIProviderConfig" + }, + "provider": { + "const": "openai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "OpenAIProviderSpec", + "type": "object" + }, + "OpenCLIPProviderConfig": { + "description": "Configuration for OpenCLIP provider.", + "properties": { + "checkpoint": { + "title": "Checkpoint", + "type": "string" + }, + "device": { + "title": "Device", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "OpenCLIPProviderConfig", + "type": "object" + }, + "OpenCLIPProviderSpec": { + "description": "OpenCLIP provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OpenCLIPProviderConfig" + }, + "provider": { + "const": "openclip", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "OpenCLIPProviderSpec", + "type": "object" + }, + "RagToolConfig": { + "description": "Configuration accepted by RAG tools.\n\nSupports embedding model and vector database configuration.\n\nAttributes:\n embedding_model: Embedding model configuration accepted by RAG tools.\n vectordb: Vector database configuration accepted by RAG tools.", + "properties": { + "embedding_model": { + "anyOf": [ + { + "$ref": "#/$defs/AzureProviderSpec" + }, + { + "$ref": "#/$defs/BedrockProviderSpec" + }, + { + "$ref": "#/$defs/CohereProviderSpec" + }, + { + "$ref": "#/$defs/CustomProviderSpec" + }, + { + "$ref": "#/$defs/GenerativeAiProviderSpec" + }, + { + "$ref": "#/$defs/HuggingFaceProviderSpec" + }, + { + "$ref": "#/$defs/InstructorProviderSpec" + }, + { + "$ref": "#/$defs/JinaProviderSpec" + }, + { + "$ref": "#/$defs/OllamaProviderSpec" + }, + { + "$ref": "#/$defs/ONNXProviderSpec" + }, + { + "$ref": "#/$defs/OpenAIProviderSpec" + }, + { + "$ref": "#/$defs/OpenCLIPProviderSpec" + }, + { + "$ref": "#/$defs/RoboflowProviderSpec" + }, + { + "$ref": "#/$defs/SentenceTransformerProviderSpec" + }, + { + "$ref": "#/$defs/Text2VecProviderSpec" + }, + { + "$ref": "#/$defs/VertexAIProviderSpec" + }, + { + "$ref": "#/$defs/VoyageAIProviderSpec" + }, + { + "$ref": "#/$defs/WatsonXProviderSpec" + } + ], + "title": "Embedding Model" + }, + "vectordb": { + "$ref": "#/$defs/VectorDbConfig" + } + }, + "title": "RagToolConfig", + "type": "object" + }, + "RoboflowProviderConfig": { + "description": "Configuration for Roboflow provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_url": { + "title": "Api Url", + "type": "string" + } + }, + "title": "RoboflowProviderConfig", + "type": "object" + }, + "RoboflowProviderSpec": { + "description": "Roboflow provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/RoboflowProviderConfig" + }, + "provider": { + "const": "roboflow", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "RoboflowProviderSpec", + "type": "object" + }, + "SentenceTransformerProviderConfig": { + "description": "Configuration for SentenceTransformer provider.", + "properties": { + "device": { + "title": "Device", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "normalize_embeddings": { + "title": "Normalize Embeddings", + "type": "boolean" + } + }, + "title": "SentenceTransformerProviderConfig", + "type": "object" + }, + "SentenceTransformerProviderSpec": { + "description": "SentenceTransformer provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/SentenceTransformerProviderConfig" + }, + "provider": { + "const": "sentence-transformer", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "SentenceTransformerProviderSpec", + "type": "object" + }, + "Text2VecProviderConfig": { + "description": "Configuration for Text2Vec provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "Text2VecProviderConfig", + "type": "object" + }, + "Text2VecProviderSpec": { + "description": "Text2Vec provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/Text2VecProviderConfig" + }, + "provider": { + "const": "text2vec", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "Text2VecProviderSpec", + "type": "object" + }, + "VectorDbConfig": { + "description": "Configuration for vector database provider.\n\nAttributes:\n provider: RAG provider literal.\n config: RAG configuration options.", + "properties": { + "config": { + "additionalProperties": true, + "title": "Config", + "type": "object" + }, + "provider": { + "enum": [ + "chromadb", + "qdrant" + ], + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "VectorDbConfig", + "type": "object" + }, + "VertexAIProviderConfig": { + "description": "Configuration for Vertex AI provider with dual SDK support.\n\nSupports both legacy models (textembedding-gecko*) using the deprecated\nvertexai.language_models SDK and new models using google-genai SDK.\n\nAttributes:\n api_key: Google API key (optional if using project_id with ADC). Only for new SDK models.\n model_name: Embedding model name (default: \"textembedding-gecko\").\n Legacy models: textembedding-gecko, textembedding-gecko@001, etc.\n New models: gemini-embedding-001, text-embedding-005, text-multilingual-embedding-002\n project_id: GCP project ID (required for Vertex AI backend and legacy models).\n location: GCP region/location (default: \"us-central1\").\n region: Deprecated alias for location (kept for backwards compatibility).\n task_type: Task type for embeddings (default: \"RETRIEVAL_DOCUMENT\"). Only for new SDK models.\n output_dimensionality: Output embedding dimension (optional). Only for new SDK models.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "location": { + "title": "Location", + "type": "string" + }, + "model_name": { + "enum": [ + "textembedding-gecko", + "textembedding-gecko@001", + "textembedding-gecko@002", + "textembedding-gecko@003", + "textembedding-gecko@latest", + "textembedding-gecko-multilingual", + "textembedding-gecko-multilingual@001", + "textembedding-gecko-multilingual@latest", + "gemini-embedding-001", + "text-embedding-005", + "text-multilingual-embedding-002" + ], + "title": "Model Name", + "type": "string" + }, + "output_dimensionality": { + "title": "Output Dimensionality", + "type": "integer" + }, + "project_id": { + "title": "Project Id", + "type": "string" + }, + "region": { + "title": "Region", + "type": "string" + }, + "task_type": { + "title": "Task Type", + "type": "string" + } + }, + "title": "VertexAIProviderConfig", + "type": "object" + }, + "VertexAIProviderSpec": { + "description": "Vertex AI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/VertexAIProviderConfig" + }, + "provider": { + "const": "google-vertex", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "VertexAIProviderSpec", + "type": "object" + }, + "VoyageAIProviderConfig": { + "description": "Configuration for VoyageAI provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "input_type": { + "title": "Input Type", + "type": "string" + }, + "max_retries": { + "title": "Max Retries", + "type": "integer" + }, + "model": { + "title": "Model", + "type": "string" + }, + "output_dimension": { + "title": "Output Dimension", + "type": "integer" + }, + "output_dtype": { + "title": "Output Dtype", + "type": "string" + }, + "timeout": { + "title": "Timeout", + "type": "number" + }, + "truncation": { + "title": "Truncation", + "type": "boolean" + } + }, + "title": "VoyageAIProviderConfig", + "type": "object" + }, + "VoyageAIProviderSpec": { + "description": "VoyageAI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/VoyageAIProviderConfig" + }, + "provider": { + "const": "voyageai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "VoyageAIProviderSpec", + "type": "object" + }, + "WatsonXProviderConfig": { + "description": "Configuration for WatsonX provider.", + "properties": { + "api_client": { + "title": "Api Client" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "batch_size": { + "title": "Batch Size", + "type": "integer" + }, + "bedrock_url": { + "title": "Bedrock Url", + "type": "string" + }, + "concurrency_limit": { + "title": "Concurrency Limit", + "type": "integer" + }, + "credentials": { + "title": "Credentials" + }, + "delay_time": { + "title": "Delay Time", + "type": "number" + }, + "iam_serviceid_crn": { + "title": "Iam Serviceid Crn", + "type": "string" + }, + "instance_id": { + "title": "Instance Id", + "type": "string" + }, + "max_retries": { + "title": "Max Retries", + "type": "integer" + }, + "model_id": { + "title": "Model Id", + "type": "string" + }, + "name": { + "title": "Name", + "type": "string" + }, + "params": { + "additionalProperties": { + "anyOf": [ + { + "type": "string" + }, + { + "additionalProperties": { + "type": "string" + }, + "type": "object" + } + ] + }, + "title": "Params", + "type": "object" + }, + "password": { + "title": "Password", + "type": "string" + }, + "persistent_connection": { + "title": "Persistent Connection", + "type": "boolean" + }, + "platform_url": { + "title": "Platform Url", + "type": "string" + }, + "project_id": { + "title": "Project Id", + "type": "string" + }, + "projects_token": { + "title": "Projects Token", + "type": "string" + }, + "proxies": { + "additionalProperties": true, + "title": "Proxies", + "type": "object" + }, + "retry_status_codes": { + "items": { + "type": "integer" + }, + "title": "Retry Status Codes", + "type": "array" + }, + "space_id": { + "title": "Space Id", + "type": "string" + }, + "token": { + "title": "Token", + "type": "string" + }, + "trusted_profile_id": { + "title": "Trusted Profile Id", + "type": "string" + }, + "url": { + "title": "Url", + "type": "string" + }, + "username": { + "title": "Username", + "type": "string" + }, + "verify": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "string" + } + ], + "title": "Verify" + }, + "version": { + "title": "Version", + "type": "string" + } + }, + "title": "WatsonXProviderConfig", + "type": "object" + }, + "WatsonXProviderSpec": { + "description": "WatsonX provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/WatsonXProviderConfig" + }, + "provider": { + "const": "watsonx", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "WatsonXProviderSpec", + "type": "object" } }, "properties": { "adapter": { "$ref": "#/$defs/Adapter" }, + "collection_name": { + "default": "rag_tool_collection", + "title": "Collection Name", + "type": "string" + }, "config": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "default": null, - "title": "Config" + "$ref": "#/$defs/RagToolConfig", + "description": "Configuration format accepted by RagTool." + }, + "limit": { + "default": 5, + "title": "Limit", + "type": "integer" + }, + "similarity_threshold": { + "default": 0.6, + "title": "Similarity Threshold", + "type": "number" }, "summarize": { "default": false, @@ -9324,10 +22916,169 @@ "init_params_schema": { "$defs": { "Adapter": { + "description": "Abstract base class for RAG adapters.", "properties": {}, "title": "Adapter", "type": "object" }, + "AzureProviderConfig": { + "description": "Configuration for Azure provider.", + "properties": { + "api_base": { + "title": "Api Base", + "type": "string" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_type": { + "title": "Api Type", + "type": "string" + }, + "api_version": { + "title": "Api Version", + "type": "string" + }, + "default_headers": { + "additionalProperties": true, + "title": "Default Headers", + "type": "object" + }, + "deployment_id": { + "title": "Deployment Id", + "type": "string" + }, + "dimensions": { + "title": "Dimensions", + "type": "integer" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "organization_id": { + "title": "Organization Id", + "type": "string" + } + }, + "required": [ + "deployment_id" + ], + "title": "AzureProviderConfig", + "type": "object" + }, + "AzureProviderSpec": { + "description": "Azure provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/AzureProviderConfig" + }, + "provider": { + "const": "azure", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "AzureProviderSpec", + "type": "object" + }, + "BedrockProviderConfig": { + "description": "Configuration for Bedrock provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + }, + "session": { + "title": "Session" + } + }, + "title": "BedrockProviderConfig", + "type": "object" + }, + "BedrockProviderSpec": { + "description": "Bedrock provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/BedrockProviderConfig" + }, + "provider": { + "const": "amazon-bedrock", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "BedrockProviderSpec", + "type": "object" + }, + "CohereProviderConfig": { + "description": "Configuration for Cohere provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "CohereProviderConfig", + "type": "object" + }, + "CohereProviderSpec": { + "description": "Cohere provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/CohereProviderConfig" + }, + "provider": { + "const": "cohere", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "CohereProviderSpec", + "type": "object" + }, + "CustomProviderConfig": { + "description": "Configuration for Custom provider.", + "properties": { + "embedding_callable": { + "title": "Embedding Callable" + } + }, + "title": "CustomProviderConfig", + "type": "object" + }, + "CustomProviderSpec": { + "description": "Custom provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/CustomProviderConfig" + }, + "provider": { + "const": "custom", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "CustomProviderSpec", + "type": "object" + }, "EnvVar": { "properties": { "default": { @@ -9362,24 +23113,819 @@ ], "title": "EnvVar", "type": "object" + }, + "GenerativeAiProviderConfig": { + "description": "Configuration for Google Generative AI provider.\n\nAttributes:\n api_key: Google API key for authentication.\n model_name: Embedding model name.\n task_type: Task type for embeddings. Default is \"RETRIEVAL_DOCUMENT\".", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "enum": [ + "gemini-embedding-001", + "text-embedding-005", + "text-multilingual-embedding-002" + ], + "title": "Model Name", + "type": "string" + }, + "task_type": { + "title": "Task Type", + "type": "string" + } + }, + "title": "GenerativeAiProviderConfig", + "type": "object" + }, + "GenerativeAiProviderSpec": { + "description": "Google Generative AI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/GenerativeAiProviderConfig" + }, + "provider": { + "const": "google-generativeai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "GenerativeAiProviderSpec", + "type": "object" + }, + "HuggingFaceProviderConfig": { + "description": "Configuration for HuggingFace provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model": { + "title": "Model", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "HuggingFaceProviderConfig", + "type": "object" + }, + "HuggingFaceProviderSpec": { + "description": "HuggingFace provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/HuggingFaceProviderConfig" + }, + "provider": { + "const": "huggingface", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "HuggingFaceProviderSpec", + "type": "object" + }, + "InstructorProviderConfig": { + "description": "Configuration for Instructor provider.", + "properties": { + "device": { + "title": "Device", + "type": "string" + }, + "instruction": { + "title": "Instruction", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "InstructorProviderConfig", + "type": "object" + }, + "InstructorProviderSpec": { + "description": "Instructor provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/InstructorProviderConfig" + }, + "provider": { + "const": "instructor", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "InstructorProviderSpec", + "type": "object" + }, + "JinaProviderConfig": { + "description": "Configuration for Jina provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "JinaProviderConfig", + "type": "object" + }, + "JinaProviderSpec": { + "description": "Jina provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/JinaProviderConfig" + }, + "provider": { + "const": "jina", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "JinaProviderSpec", + "type": "object" + }, + "ONNXProviderConfig": { + "description": "Configuration for ONNX provider.", + "properties": { + "preferred_providers": { + "items": { + "type": "string" + }, + "title": "Preferred Providers", + "type": "array" + } + }, + "title": "ONNXProviderConfig", + "type": "object" + }, + "ONNXProviderSpec": { + "description": "ONNX provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/ONNXProviderConfig" + }, + "provider": { + "const": "onnx", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "ONNXProviderSpec", + "type": "object" + }, + "OllamaProviderConfig": { + "description": "Configuration for Ollama provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + }, + "url": { + "title": "Url", + "type": "string" + } + }, + "title": "OllamaProviderConfig", + "type": "object" + }, + "OllamaProviderSpec": { + "description": "Ollama provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OllamaProviderConfig" + }, + "provider": { + "const": "ollama", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "OllamaProviderSpec", + "type": "object" + }, + "OpenAIProviderConfig": { + "description": "Configuration for OpenAI provider.", + "properties": { + "api_base": { + "title": "Api Base", + "type": "string" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_type": { + "title": "Api Type", + "type": "string" + }, + "api_version": { + "title": "Api Version", + "type": "string" + }, + "default_headers": { + "additionalProperties": true, + "title": "Default Headers", + "type": "object" + }, + "deployment_id": { + "title": "Deployment Id", + "type": "string" + }, + "dimensions": { + "title": "Dimensions", + "type": "integer" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "organization_id": { + "title": "Organization Id", + "type": "string" + } + }, + "title": "OpenAIProviderConfig", + "type": "object" + }, + "OpenAIProviderSpec": { + "description": "OpenAI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OpenAIProviderConfig" + }, + "provider": { + "const": "openai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "OpenAIProviderSpec", + "type": "object" + }, + "OpenCLIPProviderConfig": { + "description": "Configuration for OpenCLIP provider.", + "properties": { + "checkpoint": { + "title": "Checkpoint", + "type": "string" + }, + "device": { + "title": "Device", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "OpenCLIPProviderConfig", + "type": "object" + }, + "OpenCLIPProviderSpec": { + "description": "OpenCLIP provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OpenCLIPProviderConfig" + }, + "provider": { + "const": "openclip", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "OpenCLIPProviderSpec", + "type": "object" + }, + "RagToolConfig": { + "description": "Configuration accepted by RAG tools.\n\nSupports embedding model and vector database configuration.\n\nAttributes:\n embedding_model: Embedding model configuration accepted by RAG tools.\n vectordb: Vector database configuration accepted by RAG tools.", + "properties": { + "embedding_model": { + "anyOf": [ + { + "$ref": "#/$defs/AzureProviderSpec" + }, + { + "$ref": "#/$defs/BedrockProviderSpec" + }, + { + "$ref": "#/$defs/CohereProviderSpec" + }, + { + "$ref": "#/$defs/CustomProviderSpec" + }, + { + "$ref": "#/$defs/GenerativeAiProviderSpec" + }, + { + "$ref": "#/$defs/HuggingFaceProviderSpec" + }, + { + "$ref": "#/$defs/InstructorProviderSpec" + }, + { + "$ref": "#/$defs/JinaProviderSpec" + }, + { + "$ref": "#/$defs/OllamaProviderSpec" + }, + { + "$ref": "#/$defs/ONNXProviderSpec" + }, + { + "$ref": "#/$defs/OpenAIProviderSpec" + }, + { + "$ref": "#/$defs/OpenCLIPProviderSpec" + }, + { + "$ref": "#/$defs/RoboflowProviderSpec" + }, + { + "$ref": "#/$defs/SentenceTransformerProviderSpec" + }, + { + "$ref": "#/$defs/Text2VecProviderSpec" + }, + { + "$ref": "#/$defs/VertexAIProviderSpec" + }, + { + "$ref": "#/$defs/VoyageAIProviderSpec" + }, + { + "$ref": "#/$defs/WatsonXProviderSpec" + } + ], + "title": "Embedding Model" + }, + "vectordb": { + "$ref": "#/$defs/VectorDbConfig" + } + }, + "title": "RagToolConfig", + "type": "object" + }, + "RoboflowProviderConfig": { + "description": "Configuration for Roboflow provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_url": { + "title": "Api Url", + "type": "string" + } + }, + "title": "RoboflowProviderConfig", + "type": "object" + }, + "RoboflowProviderSpec": { + "description": "Roboflow provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/RoboflowProviderConfig" + }, + "provider": { + "const": "roboflow", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "RoboflowProviderSpec", + "type": "object" + }, + "SentenceTransformerProviderConfig": { + "description": "Configuration for SentenceTransformer provider.", + "properties": { + "device": { + "title": "Device", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "normalize_embeddings": { + "title": "Normalize Embeddings", + "type": "boolean" + } + }, + "title": "SentenceTransformerProviderConfig", + "type": "object" + }, + "SentenceTransformerProviderSpec": { + "description": "SentenceTransformer provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/SentenceTransformerProviderConfig" + }, + "provider": { + "const": "sentence-transformer", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "SentenceTransformerProviderSpec", + "type": "object" + }, + "Text2VecProviderConfig": { + "description": "Configuration for Text2Vec provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "Text2VecProviderConfig", + "type": "object" + }, + "Text2VecProviderSpec": { + "description": "Text2Vec provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/Text2VecProviderConfig" + }, + "provider": { + "const": "text2vec", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "Text2VecProviderSpec", + "type": "object" + }, + "VectorDbConfig": { + "description": "Configuration for vector database provider.\n\nAttributes:\n provider: RAG provider literal.\n config: RAG configuration options.", + "properties": { + "config": { + "additionalProperties": true, + "title": "Config", + "type": "object" + }, + "provider": { + "enum": [ + "chromadb", + "qdrant" + ], + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "VectorDbConfig", + "type": "object" + }, + "VertexAIProviderConfig": { + "description": "Configuration for Vertex AI provider with dual SDK support.\n\nSupports both legacy models (textembedding-gecko*) using the deprecated\nvertexai.language_models SDK and new models using google-genai SDK.\n\nAttributes:\n api_key: Google API key (optional if using project_id with ADC). Only for new SDK models.\n model_name: Embedding model name (default: \"textembedding-gecko\").\n Legacy models: textembedding-gecko, textembedding-gecko@001, etc.\n New models: gemini-embedding-001, text-embedding-005, text-multilingual-embedding-002\n project_id: GCP project ID (required for Vertex AI backend and legacy models).\n location: GCP region/location (default: \"us-central1\").\n region: Deprecated alias for location (kept for backwards compatibility).\n task_type: Task type for embeddings (default: \"RETRIEVAL_DOCUMENT\"). Only for new SDK models.\n output_dimensionality: Output embedding dimension (optional). Only for new SDK models.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "location": { + "title": "Location", + "type": "string" + }, + "model_name": { + "enum": [ + "textembedding-gecko", + "textembedding-gecko@001", + "textembedding-gecko@002", + "textembedding-gecko@003", + "textembedding-gecko@latest", + "textembedding-gecko-multilingual", + "textembedding-gecko-multilingual@001", + "textembedding-gecko-multilingual@latest", + "gemini-embedding-001", + "text-embedding-005", + "text-multilingual-embedding-002" + ], + "title": "Model Name", + "type": "string" + }, + "output_dimensionality": { + "title": "Output Dimensionality", + "type": "integer" + }, + "project_id": { + "title": "Project Id", + "type": "string" + }, + "region": { + "title": "Region", + "type": "string" + }, + "task_type": { + "title": "Task Type", + "type": "string" + } + }, + "title": "VertexAIProviderConfig", + "type": "object" + }, + "VertexAIProviderSpec": { + "description": "Vertex AI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/VertexAIProviderConfig" + }, + "provider": { + "const": "google-vertex", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "VertexAIProviderSpec", + "type": "object" + }, + "VoyageAIProviderConfig": { + "description": "Configuration for VoyageAI provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "input_type": { + "title": "Input Type", + "type": "string" + }, + "max_retries": { + "title": "Max Retries", + "type": "integer" + }, + "model": { + "title": "Model", + "type": "string" + }, + "output_dimension": { + "title": "Output Dimension", + "type": "integer" + }, + "output_dtype": { + "title": "Output Dtype", + "type": "string" + }, + "timeout": { + "title": "Timeout", + "type": "number" + }, + "truncation": { + "title": "Truncation", + "type": "boolean" + } + }, + "title": "VoyageAIProviderConfig", + "type": "object" + }, + "VoyageAIProviderSpec": { + "description": "VoyageAI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/VoyageAIProviderConfig" + }, + "provider": { + "const": "voyageai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "VoyageAIProviderSpec", + "type": "object" + }, + "WatsonXProviderConfig": { + "description": "Configuration for WatsonX provider.", + "properties": { + "api_client": { + "title": "Api Client" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "batch_size": { + "title": "Batch Size", + "type": "integer" + }, + "bedrock_url": { + "title": "Bedrock Url", + "type": "string" + }, + "concurrency_limit": { + "title": "Concurrency Limit", + "type": "integer" + }, + "credentials": { + "title": "Credentials" + }, + "delay_time": { + "title": "Delay Time", + "type": "number" + }, + "iam_serviceid_crn": { + "title": "Iam Serviceid Crn", + "type": "string" + }, + "instance_id": { + "title": "Instance Id", + "type": "string" + }, + "max_retries": { + "title": "Max Retries", + "type": "integer" + }, + "model_id": { + "title": "Model Id", + "type": "string" + }, + "name": { + "title": "Name", + "type": "string" + }, + "params": { + "additionalProperties": { + "anyOf": [ + { + "type": "string" + }, + { + "additionalProperties": { + "type": "string" + }, + "type": "object" + } + ] + }, + "title": "Params", + "type": "object" + }, + "password": { + "title": "Password", + "type": "string" + }, + "persistent_connection": { + "title": "Persistent Connection", + "type": "boolean" + }, + "platform_url": { + "title": "Platform Url", + "type": "string" + }, + "project_id": { + "title": "Project Id", + "type": "string" + }, + "projects_token": { + "title": "Projects Token", + "type": "string" + }, + "proxies": { + "additionalProperties": true, + "title": "Proxies", + "type": "object" + }, + "retry_status_codes": { + "items": { + "type": "integer" + }, + "title": "Retry Status Codes", + "type": "array" + }, + "space_id": { + "title": "Space Id", + "type": "string" + }, + "token": { + "title": "Token", + "type": "string" + }, + "trusted_profile_id": { + "title": "Trusted Profile Id", + "type": "string" + }, + "url": { + "title": "Url", + "type": "string" + }, + "username": { + "title": "Username", + "type": "string" + }, + "verify": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "string" + } + ], + "title": "Verify" + }, + "version": { + "title": "Version", + "type": "string" + } + }, + "title": "WatsonXProviderConfig", + "type": "object" + }, + "WatsonXProviderSpec": { + "description": "WatsonX provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/WatsonXProviderConfig" + }, + "provider": { + "const": "watsonx", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "WatsonXProviderSpec", + "type": "object" } }, "properties": { "adapter": { "$ref": "#/$defs/Adapter" }, + "collection_name": { + "default": "rag_tool_collection", + "title": "Collection Name", + "type": "string" + }, "config": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "default": null, - "title": "Config" + "$ref": "#/$defs/RagToolConfig", + "description": "Configuration format accepted by RagTool." + }, + "limit": { + "default": 5, + "title": "Limit", + "type": "integer" + }, + "similarity_threshold": { + "default": 0.6, + "title": "Similarity Threshold", + "type": "number" }, "summarize": { "default": false, @@ -9401,7 +23947,7 @@ "type": "string" }, "xml": { - "description": "Mandatory xml path you want to search", + "description": "File path or URL of a XML file to be searched", "title": "Xml", "type": "string" } @@ -9421,10 +23967,169 @@ "init_params_schema": { "$defs": { "Adapter": { + "description": "Abstract base class for RAG adapters.", "properties": {}, "title": "Adapter", "type": "object" }, + "AzureProviderConfig": { + "description": "Configuration for Azure provider.", + "properties": { + "api_base": { + "title": "Api Base", + "type": "string" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_type": { + "title": "Api Type", + "type": "string" + }, + "api_version": { + "title": "Api Version", + "type": "string" + }, + "default_headers": { + "additionalProperties": true, + "title": "Default Headers", + "type": "object" + }, + "deployment_id": { + "title": "Deployment Id", + "type": "string" + }, + "dimensions": { + "title": "Dimensions", + "type": "integer" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "organization_id": { + "title": "Organization Id", + "type": "string" + } + }, + "required": [ + "deployment_id" + ], + "title": "AzureProviderConfig", + "type": "object" + }, + "AzureProviderSpec": { + "description": "Azure provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/AzureProviderConfig" + }, + "provider": { + "const": "azure", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "AzureProviderSpec", + "type": "object" + }, + "BedrockProviderConfig": { + "description": "Configuration for Bedrock provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + }, + "session": { + "title": "Session" + } + }, + "title": "BedrockProviderConfig", + "type": "object" + }, + "BedrockProviderSpec": { + "description": "Bedrock provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/BedrockProviderConfig" + }, + "provider": { + "const": "amazon-bedrock", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "BedrockProviderSpec", + "type": "object" + }, + "CohereProviderConfig": { + "description": "Configuration for Cohere provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "CohereProviderConfig", + "type": "object" + }, + "CohereProviderSpec": { + "description": "Cohere provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/CohereProviderConfig" + }, + "provider": { + "const": "cohere", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "CohereProviderSpec", + "type": "object" + }, + "CustomProviderConfig": { + "description": "Configuration for Custom provider.", + "properties": { + "embedding_callable": { + "title": "Embedding Callable" + } + }, + "title": "CustomProviderConfig", + "type": "object" + }, + "CustomProviderSpec": { + "description": "Custom provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/CustomProviderConfig" + }, + "provider": { + "const": "custom", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "CustomProviderSpec", + "type": "object" + }, "EnvVar": { "properties": { "default": { @@ -9459,24 +24164,819 @@ ], "title": "EnvVar", "type": "object" + }, + "GenerativeAiProviderConfig": { + "description": "Configuration for Google Generative AI provider.\n\nAttributes:\n api_key: Google API key for authentication.\n model_name: Embedding model name.\n task_type: Task type for embeddings. Default is \"RETRIEVAL_DOCUMENT\".", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "enum": [ + "gemini-embedding-001", + "text-embedding-005", + "text-multilingual-embedding-002" + ], + "title": "Model Name", + "type": "string" + }, + "task_type": { + "title": "Task Type", + "type": "string" + } + }, + "title": "GenerativeAiProviderConfig", + "type": "object" + }, + "GenerativeAiProviderSpec": { + "description": "Google Generative AI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/GenerativeAiProviderConfig" + }, + "provider": { + "const": "google-generativeai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "GenerativeAiProviderSpec", + "type": "object" + }, + "HuggingFaceProviderConfig": { + "description": "Configuration for HuggingFace provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model": { + "title": "Model", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "HuggingFaceProviderConfig", + "type": "object" + }, + "HuggingFaceProviderSpec": { + "description": "HuggingFace provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/HuggingFaceProviderConfig" + }, + "provider": { + "const": "huggingface", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "HuggingFaceProviderSpec", + "type": "object" + }, + "InstructorProviderConfig": { + "description": "Configuration for Instructor provider.", + "properties": { + "device": { + "title": "Device", + "type": "string" + }, + "instruction": { + "title": "Instruction", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "InstructorProviderConfig", + "type": "object" + }, + "InstructorProviderSpec": { + "description": "Instructor provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/InstructorProviderConfig" + }, + "provider": { + "const": "instructor", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "InstructorProviderSpec", + "type": "object" + }, + "JinaProviderConfig": { + "description": "Configuration for Jina provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "JinaProviderConfig", + "type": "object" + }, + "JinaProviderSpec": { + "description": "Jina provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/JinaProviderConfig" + }, + "provider": { + "const": "jina", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "JinaProviderSpec", + "type": "object" + }, + "ONNXProviderConfig": { + "description": "Configuration for ONNX provider.", + "properties": { + "preferred_providers": { + "items": { + "type": "string" + }, + "title": "Preferred Providers", + "type": "array" + } + }, + "title": "ONNXProviderConfig", + "type": "object" + }, + "ONNXProviderSpec": { + "description": "ONNX provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/ONNXProviderConfig" + }, + "provider": { + "const": "onnx", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "ONNXProviderSpec", + "type": "object" + }, + "OllamaProviderConfig": { + "description": "Configuration for Ollama provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + }, + "url": { + "title": "Url", + "type": "string" + } + }, + "title": "OllamaProviderConfig", + "type": "object" + }, + "OllamaProviderSpec": { + "description": "Ollama provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OllamaProviderConfig" + }, + "provider": { + "const": "ollama", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "OllamaProviderSpec", + "type": "object" + }, + "OpenAIProviderConfig": { + "description": "Configuration for OpenAI provider.", + "properties": { + "api_base": { + "title": "Api Base", + "type": "string" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_type": { + "title": "Api Type", + "type": "string" + }, + "api_version": { + "title": "Api Version", + "type": "string" + }, + "default_headers": { + "additionalProperties": true, + "title": "Default Headers", + "type": "object" + }, + "deployment_id": { + "title": "Deployment Id", + "type": "string" + }, + "dimensions": { + "title": "Dimensions", + "type": "integer" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "organization_id": { + "title": "Organization Id", + "type": "string" + } + }, + "title": "OpenAIProviderConfig", + "type": "object" + }, + "OpenAIProviderSpec": { + "description": "OpenAI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OpenAIProviderConfig" + }, + "provider": { + "const": "openai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "OpenAIProviderSpec", + "type": "object" + }, + "OpenCLIPProviderConfig": { + "description": "Configuration for OpenCLIP provider.", + "properties": { + "checkpoint": { + "title": "Checkpoint", + "type": "string" + }, + "device": { + "title": "Device", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "OpenCLIPProviderConfig", + "type": "object" + }, + "OpenCLIPProviderSpec": { + "description": "OpenCLIP provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OpenCLIPProviderConfig" + }, + "provider": { + "const": "openclip", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "OpenCLIPProviderSpec", + "type": "object" + }, + "RagToolConfig": { + "description": "Configuration accepted by RAG tools.\n\nSupports embedding model and vector database configuration.\n\nAttributes:\n embedding_model: Embedding model configuration accepted by RAG tools.\n vectordb: Vector database configuration accepted by RAG tools.", + "properties": { + "embedding_model": { + "anyOf": [ + { + "$ref": "#/$defs/AzureProviderSpec" + }, + { + "$ref": "#/$defs/BedrockProviderSpec" + }, + { + "$ref": "#/$defs/CohereProviderSpec" + }, + { + "$ref": "#/$defs/CustomProviderSpec" + }, + { + "$ref": "#/$defs/GenerativeAiProviderSpec" + }, + { + "$ref": "#/$defs/HuggingFaceProviderSpec" + }, + { + "$ref": "#/$defs/InstructorProviderSpec" + }, + { + "$ref": "#/$defs/JinaProviderSpec" + }, + { + "$ref": "#/$defs/OllamaProviderSpec" + }, + { + "$ref": "#/$defs/ONNXProviderSpec" + }, + { + "$ref": "#/$defs/OpenAIProviderSpec" + }, + { + "$ref": "#/$defs/OpenCLIPProviderSpec" + }, + { + "$ref": "#/$defs/RoboflowProviderSpec" + }, + { + "$ref": "#/$defs/SentenceTransformerProviderSpec" + }, + { + "$ref": "#/$defs/Text2VecProviderSpec" + }, + { + "$ref": "#/$defs/VertexAIProviderSpec" + }, + { + "$ref": "#/$defs/VoyageAIProviderSpec" + }, + { + "$ref": "#/$defs/WatsonXProviderSpec" + } + ], + "title": "Embedding Model" + }, + "vectordb": { + "$ref": "#/$defs/VectorDbConfig" + } + }, + "title": "RagToolConfig", + "type": "object" + }, + "RoboflowProviderConfig": { + "description": "Configuration for Roboflow provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_url": { + "title": "Api Url", + "type": "string" + } + }, + "title": "RoboflowProviderConfig", + "type": "object" + }, + "RoboflowProviderSpec": { + "description": "Roboflow provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/RoboflowProviderConfig" + }, + "provider": { + "const": "roboflow", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "RoboflowProviderSpec", + "type": "object" + }, + "SentenceTransformerProviderConfig": { + "description": "Configuration for SentenceTransformer provider.", + "properties": { + "device": { + "title": "Device", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "normalize_embeddings": { + "title": "Normalize Embeddings", + "type": "boolean" + } + }, + "title": "SentenceTransformerProviderConfig", + "type": "object" + }, + "SentenceTransformerProviderSpec": { + "description": "SentenceTransformer provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/SentenceTransformerProviderConfig" + }, + "provider": { + "const": "sentence-transformer", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "SentenceTransformerProviderSpec", + "type": "object" + }, + "Text2VecProviderConfig": { + "description": "Configuration for Text2Vec provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "Text2VecProviderConfig", + "type": "object" + }, + "Text2VecProviderSpec": { + "description": "Text2Vec provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/Text2VecProviderConfig" + }, + "provider": { + "const": "text2vec", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "Text2VecProviderSpec", + "type": "object" + }, + "VectorDbConfig": { + "description": "Configuration for vector database provider.\n\nAttributes:\n provider: RAG provider literal.\n config: RAG configuration options.", + "properties": { + "config": { + "additionalProperties": true, + "title": "Config", + "type": "object" + }, + "provider": { + "enum": [ + "chromadb", + "qdrant" + ], + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "VectorDbConfig", + "type": "object" + }, + "VertexAIProviderConfig": { + "description": "Configuration for Vertex AI provider with dual SDK support.\n\nSupports both legacy models (textembedding-gecko*) using the deprecated\nvertexai.language_models SDK and new models using google-genai SDK.\n\nAttributes:\n api_key: Google API key (optional if using project_id with ADC). Only for new SDK models.\n model_name: Embedding model name (default: \"textembedding-gecko\").\n Legacy models: textembedding-gecko, textembedding-gecko@001, etc.\n New models: gemini-embedding-001, text-embedding-005, text-multilingual-embedding-002\n project_id: GCP project ID (required for Vertex AI backend and legacy models).\n location: GCP region/location (default: \"us-central1\").\n region: Deprecated alias for location (kept for backwards compatibility).\n task_type: Task type for embeddings (default: \"RETRIEVAL_DOCUMENT\"). Only for new SDK models.\n output_dimensionality: Output embedding dimension (optional). Only for new SDK models.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "location": { + "title": "Location", + "type": "string" + }, + "model_name": { + "enum": [ + "textembedding-gecko", + "textembedding-gecko@001", + "textembedding-gecko@002", + "textembedding-gecko@003", + "textembedding-gecko@latest", + "textembedding-gecko-multilingual", + "textembedding-gecko-multilingual@001", + "textembedding-gecko-multilingual@latest", + "gemini-embedding-001", + "text-embedding-005", + "text-multilingual-embedding-002" + ], + "title": "Model Name", + "type": "string" + }, + "output_dimensionality": { + "title": "Output Dimensionality", + "type": "integer" + }, + "project_id": { + "title": "Project Id", + "type": "string" + }, + "region": { + "title": "Region", + "type": "string" + }, + "task_type": { + "title": "Task Type", + "type": "string" + } + }, + "title": "VertexAIProviderConfig", + "type": "object" + }, + "VertexAIProviderSpec": { + "description": "Vertex AI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/VertexAIProviderConfig" + }, + "provider": { + "const": "google-vertex", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "VertexAIProviderSpec", + "type": "object" + }, + "VoyageAIProviderConfig": { + "description": "Configuration for VoyageAI provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "input_type": { + "title": "Input Type", + "type": "string" + }, + "max_retries": { + "title": "Max Retries", + "type": "integer" + }, + "model": { + "title": "Model", + "type": "string" + }, + "output_dimension": { + "title": "Output Dimension", + "type": "integer" + }, + "output_dtype": { + "title": "Output Dtype", + "type": "string" + }, + "timeout": { + "title": "Timeout", + "type": "number" + }, + "truncation": { + "title": "Truncation", + "type": "boolean" + } + }, + "title": "VoyageAIProviderConfig", + "type": "object" + }, + "VoyageAIProviderSpec": { + "description": "VoyageAI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/VoyageAIProviderConfig" + }, + "provider": { + "const": "voyageai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "VoyageAIProviderSpec", + "type": "object" + }, + "WatsonXProviderConfig": { + "description": "Configuration for WatsonX provider.", + "properties": { + "api_client": { + "title": "Api Client" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "batch_size": { + "title": "Batch Size", + "type": "integer" + }, + "bedrock_url": { + "title": "Bedrock Url", + "type": "string" + }, + "concurrency_limit": { + "title": "Concurrency Limit", + "type": "integer" + }, + "credentials": { + "title": "Credentials" + }, + "delay_time": { + "title": "Delay Time", + "type": "number" + }, + "iam_serviceid_crn": { + "title": "Iam Serviceid Crn", + "type": "string" + }, + "instance_id": { + "title": "Instance Id", + "type": "string" + }, + "max_retries": { + "title": "Max Retries", + "type": "integer" + }, + "model_id": { + "title": "Model Id", + "type": "string" + }, + "name": { + "title": "Name", + "type": "string" + }, + "params": { + "additionalProperties": { + "anyOf": [ + { + "type": "string" + }, + { + "additionalProperties": { + "type": "string" + }, + "type": "object" + } + ] + }, + "title": "Params", + "type": "object" + }, + "password": { + "title": "Password", + "type": "string" + }, + "persistent_connection": { + "title": "Persistent Connection", + "type": "boolean" + }, + "platform_url": { + "title": "Platform Url", + "type": "string" + }, + "project_id": { + "title": "Project Id", + "type": "string" + }, + "projects_token": { + "title": "Projects Token", + "type": "string" + }, + "proxies": { + "additionalProperties": true, + "title": "Proxies", + "type": "object" + }, + "retry_status_codes": { + "items": { + "type": "integer" + }, + "title": "Retry Status Codes", + "type": "array" + }, + "space_id": { + "title": "Space Id", + "type": "string" + }, + "token": { + "title": "Token", + "type": "string" + }, + "trusted_profile_id": { + "title": "Trusted Profile Id", + "type": "string" + }, + "url": { + "title": "Url", + "type": "string" + }, + "username": { + "title": "Username", + "type": "string" + }, + "verify": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "string" + } + ], + "title": "Verify" + }, + "version": { + "title": "Version", + "type": "string" + } + }, + "title": "WatsonXProviderConfig", + "type": "object" + }, + "WatsonXProviderSpec": { + "description": "WatsonX provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/WatsonXProviderConfig" + }, + "provider": { + "const": "watsonx", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "WatsonXProviderSpec", + "type": "object" } }, "properties": { "adapter": { "$ref": "#/$defs/Adapter" }, + "collection_name": { + "default": "rag_tool_collection", + "title": "Collection Name", + "type": "string" + }, "config": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "default": null, - "title": "Config" + "$ref": "#/$defs/RagToolConfig", + "description": "Configuration format accepted by RagTool." + }, + "limit": { + "default": 5, + "title": "Limit", + "type": "integer" + }, + "similarity_threshold": { + "default": 0.6, + "title": "Similarity Threshold", + "type": "number" }, "summarize": { "default": false, @@ -9518,10 +25018,169 @@ "init_params_schema": { "$defs": { "Adapter": { + "description": "Abstract base class for RAG adapters.", "properties": {}, "title": "Adapter", "type": "object" }, + "AzureProviderConfig": { + "description": "Configuration for Azure provider.", + "properties": { + "api_base": { + "title": "Api Base", + "type": "string" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_type": { + "title": "Api Type", + "type": "string" + }, + "api_version": { + "title": "Api Version", + "type": "string" + }, + "default_headers": { + "additionalProperties": true, + "title": "Default Headers", + "type": "object" + }, + "deployment_id": { + "title": "Deployment Id", + "type": "string" + }, + "dimensions": { + "title": "Dimensions", + "type": "integer" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "organization_id": { + "title": "Organization Id", + "type": "string" + } + }, + "required": [ + "deployment_id" + ], + "title": "AzureProviderConfig", + "type": "object" + }, + "AzureProviderSpec": { + "description": "Azure provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/AzureProviderConfig" + }, + "provider": { + "const": "azure", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "AzureProviderSpec", + "type": "object" + }, + "BedrockProviderConfig": { + "description": "Configuration for Bedrock provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + }, + "session": { + "title": "Session" + } + }, + "title": "BedrockProviderConfig", + "type": "object" + }, + "BedrockProviderSpec": { + "description": "Bedrock provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/BedrockProviderConfig" + }, + "provider": { + "const": "amazon-bedrock", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "BedrockProviderSpec", + "type": "object" + }, + "CohereProviderConfig": { + "description": "Configuration for Cohere provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "CohereProviderConfig", + "type": "object" + }, + "CohereProviderSpec": { + "description": "Cohere provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/CohereProviderConfig" + }, + "provider": { + "const": "cohere", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "CohereProviderSpec", + "type": "object" + }, + "CustomProviderConfig": { + "description": "Configuration for Custom provider.", + "properties": { + "embedding_callable": { + "title": "Embedding Callable" + } + }, + "title": "CustomProviderConfig", + "type": "object" + }, + "CustomProviderSpec": { + "description": "Custom provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/CustomProviderConfig" + }, + "provider": { + "const": "custom", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "CustomProviderSpec", + "type": "object" + }, "EnvVar": { "properties": { "default": { @@ -9556,24 +25215,819 @@ ], "title": "EnvVar", "type": "object" + }, + "GenerativeAiProviderConfig": { + "description": "Configuration for Google Generative AI provider.\n\nAttributes:\n api_key: Google API key for authentication.\n model_name: Embedding model name.\n task_type: Task type for embeddings. Default is \"RETRIEVAL_DOCUMENT\".", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "enum": [ + "gemini-embedding-001", + "text-embedding-005", + "text-multilingual-embedding-002" + ], + "title": "Model Name", + "type": "string" + }, + "task_type": { + "title": "Task Type", + "type": "string" + } + }, + "title": "GenerativeAiProviderConfig", + "type": "object" + }, + "GenerativeAiProviderSpec": { + "description": "Google Generative AI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/GenerativeAiProviderConfig" + }, + "provider": { + "const": "google-generativeai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "GenerativeAiProviderSpec", + "type": "object" + }, + "HuggingFaceProviderConfig": { + "description": "Configuration for HuggingFace provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model": { + "title": "Model", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "HuggingFaceProviderConfig", + "type": "object" + }, + "HuggingFaceProviderSpec": { + "description": "HuggingFace provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/HuggingFaceProviderConfig" + }, + "provider": { + "const": "huggingface", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "HuggingFaceProviderSpec", + "type": "object" + }, + "InstructorProviderConfig": { + "description": "Configuration for Instructor provider.", + "properties": { + "device": { + "title": "Device", + "type": "string" + }, + "instruction": { + "title": "Instruction", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "InstructorProviderConfig", + "type": "object" + }, + "InstructorProviderSpec": { + "description": "Instructor provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/InstructorProviderConfig" + }, + "provider": { + "const": "instructor", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "InstructorProviderSpec", + "type": "object" + }, + "JinaProviderConfig": { + "description": "Configuration for Jina provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "JinaProviderConfig", + "type": "object" + }, + "JinaProviderSpec": { + "description": "Jina provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/JinaProviderConfig" + }, + "provider": { + "const": "jina", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "JinaProviderSpec", + "type": "object" + }, + "ONNXProviderConfig": { + "description": "Configuration for ONNX provider.", + "properties": { + "preferred_providers": { + "items": { + "type": "string" + }, + "title": "Preferred Providers", + "type": "array" + } + }, + "title": "ONNXProviderConfig", + "type": "object" + }, + "ONNXProviderSpec": { + "description": "ONNX provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/ONNXProviderConfig" + }, + "provider": { + "const": "onnx", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "ONNXProviderSpec", + "type": "object" + }, + "OllamaProviderConfig": { + "description": "Configuration for Ollama provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + }, + "url": { + "title": "Url", + "type": "string" + } + }, + "title": "OllamaProviderConfig", + "type": "object" + }, + "OllamaProviderSpec": { + "description": "Ollama provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OllamaProviderConfig" + }, + "provider": { + "const": "ollama", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "OllamaProviderSpec", + "type": "object" + }, + "OpenAIProviderConfig": { + "description": "Configuration for OpenAI provider.", + "properties": { + "api_base": { + "title": "Api Base", + "type": "string" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_type": { + "title": "Api Type", + "type": "string" + }, + "api_version": { + "title": "Api Version", + "type": "string" + }, + "default_headers": { + "additionalProperties": true, + "title": "Default Headers", + "type": "object" + }, + "deployment_id": { + "title": "Deployment Id", + "type": "string" + }, + "dimensions": { + "title": "Dimensions", + "type": "integer" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "organization_id": { + "title": "Organization Id", + "type": "string" + } + }, + "title": "OpenAIProviderConfig", + "type": "object" + }, + "OpenAIProviderSpec": { + "description": "OpenAI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OpenAIProviderConfig" + }, + "provider": { + "const": "openai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "OpenAIProviderSpec", + "type": "object" + }, + "OpenCLIPProviderConfig": { + "description": "Configuration for OpenCLIP provider.", + "properties": { + "checkpoint": { + "title": "Checkpoint", + "type": "string" + }, + "device": { + "title": "Device", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "OpenCLIPProviderConfig", + "type": "object" + }, + "OpenCLIPProviderSpec": { + "description": "OpenCLIP provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/OpenCLIPProviderConfig" + }, + "provider": { + "const": "openclip", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "OpenCLIPProviderSpec", + "type": "object" + }, + "RagToolConfig": { + "description": "Configuration accepted by RAG tools.\n\nSupports embedding model and vector database configuration.\n\nAttributes:\n embedding_model: Embedding model configuration accepted by RAG tools.\n vectordb: Vector database configuration accepted by RAG tools.", + "properties": { + "embedding_model": { + "anyOf": [ + { + "$ref": "#/$defs/AzureProviderSpec" + }, + { + "$ref": "#/$defs/BedrockProviderSpec" + }, + { + "$ref": "#/$defs/CohereProviderSpec" + }, + { + "$ref": "#/$defs/CustomProviderSpec" + }, + { + "$ref": "#/$defs/GenerativeAiProviderSpec" + }, + { + "$ref": "#/$defs/HuggingFaceProviderSpec" + }, + { + "$ref": "#/$defs/InstructorProviderSpec" + }, + { + "$ref": "#/$defs/JinaProviderSpec" + }, + { + "$ref": "#/$defs/OllamaProviderSpec" + }, + { + "$ref": "#/$defs/ONNXProviderSpec" + }, + { + "$ref": "#/$defs/OpenAIProviderSpec" + }, + { + "$ref": "#/$defs/OpenCLIPProviderSpec" + }, + { + "$ref": "#/$defs/RoboflowProviderSpec" + }, + { + "$ref": "#/$defs/SentenceTransformerProviderSpec" + }, + { + "$ref": "#/$defs/Text2VecProviderSpec" + }, + { + "$ref": "#/$defs/VertexAIProviderSpec" + }, + { + "$ref": "#/$defs/VoyageAIProviderSpec" + }, + { + "$ref": "#/$defs/WatsonXProviderSpec" + } + ], + "title": "Embedding Model" + }, + "vectordb": { + "$ref": "#/$defs/VectorDbConfig" + } + }, + "title": "RagToolConfig", + "type": "object" + }, + "RoboflowProviderConfig": { + "description": "Configuration for Roboflow provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "api_url": { + "title": "Api Url", + "type": "string" + } + }, + "title": "RoboflowProviderConfig", + "type": "object" + }, + "RoboflowProviderSpec": { + "description": "Roboflow provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/RoboflowProviderConfig" + }, + "provider": { + "const": "roboflow", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "RoboflowProviderSpec", + "type": "object" + }, + "SentenceTransformerProviderConfig": { + "description": "Configuration for SentenceTransformer provider.", + "properties": { + "device": { + "title": "Device", + "type": "string" + }, + "model_name": { + "title": "Model Name", + "type": "string" + }, + "normalize_embeddings": { + "title": "Normalize Embeddings", + "type": "boolean" + } + }, + "title": "SentenceTransformerProviderConfig", + "type": "object" + }, + "SentenceTransformerProviderSpec": { + "description": "SentenceTransformer provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/SentenceTransformerProviderConfig" + }, + "provider": { + "const": "sentence-transformer", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "SentenceTransformerProviderSpec", + "type": "object" + }, + "Text2VecProviderConfig": { + "description": "Configuration for Text2Vec provider.", + "properties": { + "model_name": { + "title": "Model Name", + "type": "string" + } + }, + "title": "Text2VecProviderConfig", + "type": "object" + }, + "Text2VecProviderSpec": { + "description": "Text2Vec provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/Text2VecProviderConfig" + }, + "provider": { + "const": "text2vec", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "Text2VecProviderSpec", + "type": "object" + }, + "VectorDbConfig": { + "description": "Configuration for vector database provider.\n\nAttributes:\n provider: RAG provider literal.\n config: RAG configuration options.", + "properties": { + "config": { + "additionalProperties": true, + "title": "Config", + "type": "object" + }, + "provider": { + "enum": [ + "chromadb", + "qdrant" + ], + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "VectorDbConfig", + "type": "object" + }, + "VertexAIProviderConfig": { + "description": "Configuration for Vertex AI provider with dual SDK support.\n\nSupports both legacy models (textembedding-gecko*) using the deprecated\nvertexai.language_models SDK and new models using google-genai SDK.\n\nAttributes:\n api_key: Google API key (optional if using project_id with ADC). Only for new SDK models.\n model_name: Embedding model name (default: \"textembedding-gecko\").\n Legacy models: textembedding-gecko, textembedding-gecko@001, etc.\n New models: gemini-embedding-001, text-embedding-005, text-multilingual-embedding-002\n project_id: GCP project ID (required for Vertex AI backend and legacy models).\n location: GCP region/location (default: \"us-central1\").\n region: Deprecated alias for location (kept for backwards compatibility).\n task_type: Task type for embeddings (default: \"RETRIEVAL_DOCUMENT\"). Only for new SDK models.\n output_dimensionality: Output embedding dimension (optional). Only for new SDK models.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "location": { + "title": "Location", + "type": "string" + }, + "model_name": { + "enum": [ + "textembedding-gecko", + "textembedding-gecko@001", + "textembedding-gecko@002", + "textembedding-gecko@003", + "textembedding-gecko@latest", + "textembedding-gecko-multilingual", + "textembedding-gecko-multilingual@001", + "textembedding-gecko-multilingual@latest", + "gemini-embedding-001", + "text-embedding-005", + "text-multilingual-embedding-002" + ], + "title": "Model Name", + "type": "string" + }, + "output_dimensionality": { + "title": "Output Dimensionality", + "type": "integer" + }, + "project_id": { + "title": "Project Id", + "type": "string" + }, + "region": { + "title": "Region", + "type": "string" + }, + "task_type": { + "title": "Task Type", + "type": "string" + } + }, + "title": "VertexAIProviderConfig", + "type": "object" + }, + "VertexAIProviderSpec": { + "description": "Vertex AI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/VertexAIProviderConfig" + }, + "provider": { + "const": "google-vertex", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "VertexAIProviderSpec", + "type": "object" + }, + "VoyageAIProviderConfig": { + "description": "Configuration for VoyageAI provider.", + "properties": { + "api_key": { + "title": "Api Key", + "type": "string" + }, + "input_type": { + "title": "Input Type", + "type": "string" + }, + "max_retries": { + "title": "Max Retries", + "type": "integer" + }, + "model": { + "title": "Model", + "type": "string" + }, + "output_dimension": { + "title": "Output Dimension", + "type": "integer" + }, + "output_dtype": { + "title": "Output Dtype", + "type": "string" + }, + "timeout": { + "title": "Timeout", + "type": "number" + }, + "truncation": { + "title": "Truncation", + "type": "boolean" + } + }, + "title": "VoyageAIProviderConfig", + "type": "object" + }, + "VoyageAIProviderSpec": { + "description": "VoyageAI provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/VoyageAIProviderConfig" + }, + "provider": { + "const": "voyageai", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider", + "config" + ], + "title": "VoyageAIProviderSpec", + "type": "object" + }, + "WatsonXProviderConfig": { + "description": "Configuration for WatsonX provider.", + "properties": { + "api_client": { + "title": "Api Client" + }, + "api_key": { + "title": "Api Key", + "type": "string" + }, + "batch_size": { + "title": "Batch Size", + "type": "integer" + }, + "bedrock_url": { + "title": "Bedrock Url", + "type": "string" + }, + "concurrency_limit": { + "title": "Concurrency Limit", + "type": "integer" + }, + "credentials": { + "title": "Credentials" + }, + "delay_time": { + "title": "Delay Time", + "type": "number" + }, + "iam_serviceid_crn": { + "title": "Iam Serviceid Crn", + "type": "string" + }, + "instance_id": { + "title": "Instance Id", + "type": "string" + }, + "max_retries": { + "title": "Max Retries", + "type": "integer" + }, + "model_id": { + "title": "Model Id", + "type": "string" + }, + "name": { + "title": "Name", + "type": "string" + }, + "params": { + "additionalProperties": { + "anyOf": [ + { + "type": "string" + }, + { + "additionalProperties": { + "type": "string" + }, + "type": "object" + } + ] + }, + "title": "Params", + "type": "object" + }, + "password": { + "title": "Password", + "type": "string" + }, + "persistent_connection": { + "title": "Persistent Connection", + "type": "boolean" + }, + "platform_url": { + "title": "Platform Url", + "type": "string" + }, + "project_id": { + "title": "Project Id", + "type": "string" + }, + "projects_token": { + "title": "Projects Token", + "type": "string" + }, + "proxies": { + "additionalProperties": true, + "title": "Proxies", + "type": "object" + }, + "retry_status_codes": { + "items": { + "type": "integer" + }, + "title": "Retry Status Codes", + "type": "array" + }, + "space_id": { + "title": "Space Id", + "type": "string" + }, + "token": { + "title": "Token", + "type": "string" + }, + "trusted_profile_id": { + "title": "Trusted Profile Id", + "type": "string" + }, + "url": { + "title": "Url", + "type": "string" + }, + "username": { + "title": "Username", + "type": "string" + }, + "verify": { + "anyOf": [ + { + "type": "boolean" + }, + { + "type": "string" + } + ], + "title": "Verify" + }, + "version": { + "title": "Version", + "type": "string" + } + }, + "title": "WatsonXProviderConfig", + "type": "object" + }, + "WatsonXProviderSpec": { + "description": "WatsonX provider specification.", + "properties": { + "config": { + "$ref": "#/$defs/WatsonXProviderConfig" + }, + "provider": { + "const": "watsonx", + "title": "Provider", + "type": "string" + } + }, + "required": [ + "provider" + ], + "title": "WatsonXProviderSpec", + "type": "object" } }, "properties": { "adapter": { "$ref": "#/$defs/Adapter" }, + "collection_name": { + "default": "rag_tool_collection", + "title": "Collection Name", + "type": "string" + }, "config": { - "anyOf": [ - { - "additionalProperties": true, - "type": "object" - }, - { - "type": "null" - } - ], - "default": null, - "title": "Config" + "$ref": "#/$defs/RagToolConfig", + "description": "Configuration format accepted by RagTool." + }, + "limit": { + "default": 5, + "title": "Limit", + "type": "integer" + }, + "similarity_threshold": { + "default": 0.6, + "title": "Similarity Threshold", + "type": "number" }, "summarize": { "default": false, @@ -9609,4 +26063,4 @@ } } ] -} +} \ No newline at end of file