-
swagger_directory_lister = list all the files in the '{configuration.swagger_files_directory}' directory
-
swagger_splitter = splits the swagger file into multiple files, and generates a metadata file
-
get_human_input = gets the input from the user
-
summary_generator = passes provided text to an LLM model and returns a detailed summary
-
generated_directory_lister = recursively lists the generated directory's content
-
metadata_summary_fetcher = reads the generated/summaries/metadata_summaries file's content
-
api_caller = makes API calls using the "requests" Python library
-
FileReadTool = reads a file's content
-
DirectoryReadTool = recursively lists a directory's content
1-7 = Custom Tools 8,9 = Crew AI inbuilt tools
- Swagger Splitter Agent = splits large Swagger JSON files into smaller, manageable files, ensuring efficient processing.
- Human Input Agent = gathers required information from the user and relaying it back to the delegating agent.
- Task Matcher Agent = identifies the best matching Swagger metadata file for a given task using metadata summaries.
- Metadata Summarizer Agent = generates concise, descriptive summaries of API capabilities for all Swagger JSON files.
- API Selector Agent = selects the most appropriate API endpoint and method from a metadata file to fulfill a task.
- Decision Validator Agent = validates whether the actions of the API Selector Agent will satisfactorily fulfill the
original query and providing clear feedback with reasoning for its decision. - API Caller Agent = clarifies required and optional parameters for an API call, executing the call, and handling any
errors or missing information.
- Choose the OpenAI Provider (Azure OpenAI vs Open AI)
- If Azure OpenAI is selected, provide the below details:
- Azure OpenAI Deployment
- Azure OpenAI Endpoint
- Azure OpenAI Embedding
- Provide the OpenAI Key
- Provide the API Endpoint on which queries to be resolved
- Provide the API Bearer Token need to authenticate requests to the API Endpoint
- Upload the Swagger file containing APIs for the API Endpoint provided
- Click on 'Upload' to submit the above details
- Click on the 'Start Crew' button to start the crew execution
- Initial Human Input Task [Human Input Agent] = Prompts the user for their desired action based on the provided Swagger files, and return their response exactly as stated, without any alterations.
- Swagger Splitter Task [Swagger Splitter Agent] = Locates all swagger files in the target directory and split them, unless the 'generated' folder already exists, in which case take no action.
- Metadata Summarizer Task [Metadata Summarizer Agent] = Triggers the 'summary_generator' tool to generate summaries for swagger files from the specified folder, unless the metadata summary already exists, in which case take no action.
- Task Matching Task [Task Matching Agent] = This is only needed if there are multiple Swagger files uploaded. Identifies and return the optimal Swagger metadata file based on user task context and metadata summary analysis.
- Manager Task [API Selector Agent] = Identifies and return the most suitable Swagger file based on the metadata summary and user context.
- Decision Validator Task [Decision Validator Agent] = Validates the API Selector Agent's proposed answer against the original query, concluding whether it meets the user's intent and expectations.
- API Calling Task [API Caller Agent] = Makes the API call, ensuring all parameters are identified, requested, and the payload is confirmed before execution.
- Stop execution. Need to click on 'Reload Crew' to start a new session.