A multi-agent orchestration pattern in Oracle AI Data Platform
My previous "how-to" post here describes in a step-by-step fashion how to create an agent from scratch in the Oracle AI Data Platform.
However, the design of that agent was simplistic and less than ideal. A better design would have been what is shown in the screenshot below.

Let's talk through each piece, from the bottom up. This will give you an understanding of how each of these components relate to each other.
- SQL Tool (Vendor_Data_DB): Reference to structured data in an external Oracle Autonomous AI Lakehouse. A SQL query with parameters is added to control what is returned in the search results.
- RAG Tool (Documents_RAG): Link to the knowledge base in my workspace. This knowledge base is a vectorized store of unstructured documents that reside in an external bucket.
- Executor Agent (Data_Agent): This agent is given instructions on how to interact with the structured data retrieved from the database.
- Executor Agent (Documents_Agent): This agent is given instructions on how to interact with the unstructured documents retrieved from the knowledge base.
- Supervisor Agent (Procurement_Agent): This agent is an orchestrator that manages context and dynamic task delegration. It interprets the user request, calls the Executor Agents, and synthesizes the final response.
- Guardrails (PII_Guardrail): Controls the input and/or output that the AI model can receive/return. This can include PII detection, content moderation, or prompt injection detection.
- Chat Trigger: The entry point for engaging in a conversational experience with the agent.
Here's a video of a crude walkthrough of the creation process so that you can at least visually understand how it was created.
0:00
/4:18