{
  "test_tool.tool_with_generated_by_input.my_tool": {
    "name": "Tool with Generated By Input",
    "type": "python",
    "inputs": {
      "index_json": {
        "type": [
          "string"
        ],
        "generated_by": {
          "func_path": "test_tool.tool_with_generated_by_input.generate_index_json",
          "func_kwargs": [
            {
              "name": "index_type",
              "type": [
                "string"
              ],
              "reference": "${inputs.index_type}",
              "optional": false
            },
            {
              "name": "index",
              "type": [
                "string"
              ],
              "reference": "${inputs.index}",
              "optional": true
            },
            {
              "name": "index_connection",
              "type": [
                "CognitiveSearchConnection"
              ],
              "reference": "${inputs.index_connection}",
              "optional": true
            },
            {
              "name": "index_name",
              "type": [
                "string"
              ],
              "reference": "${inputs.index_name}",
              "optional": true
            },
            {
              "name": "content_field",
              "type": [
                "string"
              ],
              "reference": "${inputs.content_field}",
              "optional": true
            },
            {
              "name": "embedding_field",
              "type": [
                "string"
              ],
              "reference": "${inputs.embedding_field}",
              "optional": true
            },
            {
              "name": "metadata_field",
              "type": [
                "string"
              ],
              "reference": "${inputs.metadata_field}",
              "optional": true
            },
            {
              "name": "semantic_configuration",
              "type": [
                "string"
              ],
              "reference": "${inputs.semantic_configuration}",
              "optional": true
            },
            {
              "name": "embedding_connection",
              "type": [
                "AzureOpenAIConnection",
                "OpenAIConnection"
              ],
              "reference": "${inputs.embedding_connection}",
              "optional": true
            },
            {
              "name": "embedding_deployment",
              "type": [
                "string"
              ],
              "reference": "${inputs.embedding_deployment}",
              "optional": true
            }
          ],
          "reverse_func_path": "test_tool.tool_with_generated_by_input.reverse_generate_index_json"
        }
      },
      "queries": {
        "type": [
          "string"
        ]
      },
      "top_k": {
        "type": [
          "int"
        ]
      },
      "index_type": {
        "dynamic_list": {
          "func_path": "test_tool.tool_with_generated_by_input.list_index_types"
        },
        "type": [
          "string"
        ],
        "input_type": "uionly_hidden"
      },
      "index": {
        "enabled_by": "index_type",
        "enabled_by_value": [
          "Workspace MLIndex"
        ],
        "dynamic_list": {
          "func_path": "test_tool.tool_with_generated_by_input.list_indexes"
        },
        "type": [
          "string"
        ],
        "input_type": "uionly_hidden"
      },
      "index_connection": {
        "enabled_by": "index_type",
        "enabled_by_value": [
          "Azure Cognitive Search"
        ],
        "type": [
          "CognitiveSearchConnection"
        ],
        "input_type": "uionly_hidden"
      },
      "index_name": {
        "enabled_by": "index_type",
        "enabled_by_value": [
          "Azure Cognitive Search"
        ],
        "type": [
          "string"
        ],
        "input_type": "uionly_hidden"
      },
      "content_field": {
        "enabled_by": "index_type",
        "enabled_by_value": [
          "Azure Cognitive Search"
        ],
        "dynamic_list": {
          "func_path": "test_tool.tool_with_generated_by_input.list_fields"
        },
        "type": [
          "string"
        ],
        "input_type": "uionly_hidden"
      },
      "embedding_field": {
        "enabled_by": "index_type",
        "enabled_by_value": [
          "Azure Cognitive Search"
        ],
        "dynamic_list": {
          "func_path": "test_tool.tool_with_generated_by_input.list_fields"
        },
        "type": [
          "string"
        ],
        "input_type": "uionly_hidden"
      },
      "metadata_field": {
        "enabled_by": "index_type",
        "enabled_by_value": [
          "Azure Cognitive Search"
        ],
        "dynamic_list": {
          "func_path": "test_tool.tool_with_generated_by_input.list_fields"
        },
        "type": [
          "string"
        ],
        "input_type": "uionly_hidden"
      },
      "semantic_configuration": {
        "enabled_by": "index_type",
        "enabled_by_value": [
          "Azure Cognitive Search"
        ],
        "dynamic_list": {
          "func_path": "test_tool.tool_with_generated_by_input.list_semantic_configuration"
        },
        "type": [
          "string"
        ],
        "input_type": "uionly_hidden"
      },
      "embedding_connection": {
        "enabled_by": "index_type",
        "enabled_by_value": [
          "Azure Cognitive Search"
        ],
        "type": [
          "AzureOpenAIConnection",
          "OpenAIConnection"
        ],
        "input_type": "uionly_hidden"
      },
      "embedding_deployment": {
        "enabled_by": "index_type",
        "enabled_by_value": [
          "Azure Cognitive Search"
        ],
        "dynamic_list": {
          "func_path": "test_tool.tool_with_generated_by_input.list_embedding_deployment",
          "func_kwargs": [
            {
              "name": "embedding_connection",
              "type": [
                "string"
              ],
              "reference": "${inputs.embedding_connection}",
              "optional": false
            }
          ]
        },
        "type": [
          "string"
        ],
        "input_type": "uionly_hidden"
      }
    },
    "description": "This is a tool with generated by input",
    "module": "test_tool.tool_with_generated_by_input",
    "function": "my_tool"
  }
}