We want to automate our quarterly market analysis. Can Microsoft Semantic Kernel orchestrate a "team" of agents where one pulls data from SQL and another generates the SWOT analysis? We need a system that ensures the data doesn't get lost or hallucinated between the two specialist agents.
3 answers
We implemented this exact scenario for a retail client last spring. Using Microsoft Semantic Kernel, we created a "Kernel Memory" store that acted as the shared source of truth. The Data Agent used a SQL plugin to fetch real numbers, which were then stored in the context memory. The Strategy Agent then accessed that same memory to build the SWOT analysis. This "grounding" in a shared context is what prevents the hallucination you're worried about. Because the Kernel manages the state, you can ensure that the Strategy Agent isn't just making up numbers—it’s explicitly told to only use the data provided by the first agent's plugin output.
Is there a way to add a human approval step in the middle of this agent-to-agent handoff?
The best part is that you can swap models easily. We use GPT-4o for the analysis but a cheaper model for the data formatting to save on costs.
Spot on, Jeffrey. The "Model Agnostic" nature of the Kernel makes that kind of cost optimization very straightforward to implement.
Yes, Marcus! The framework supports "hooks" and "filters." You can set a trigger that pauses the kernel after the Data Agent finishes. This lets a human analyst verify the raw data before the Strategy Agent begins its work. In an enterprise setting, this "human-in-the-loop" capability is essential for Business Analysis tasks where accuracy is non-negotiable.