How to enhance your chatbot so it can retrieve data from multiple data sources & orchestrate its own plan with C# Semantic Kernel, planner & Azure OpenAI – part 3 (demo app)
In this multi-part series, Jordan Bean shares how to enhance a chatbot to retrieve data from multiple data sources and orchestrate plans with C# Semantic Kernel, planner, and Azure Open AI.
In the previous post, we talked about the implementation details of how the demo app works & how to set up Semantic Kernel, with the
StepwisePlanner and Azure OpenAI. Now that you understand the code, let’s look at the demo application.
Here is the link to the GitHub repo.
As a reminder, we are building a customer support chatbot for our fictional outdoor sporting equipment company. We want to be able to answer common customer support questions by utilizing our internal data sources.
Will my sleeping bag work for my trip to Patagonia next month?
Fictional data sources
This demo app allows the user to make a request. That request is then run through the Sematic Kernel StepwisePlanner. The plan that is generated is then executed and the response is sent back to the user.
In this example, we are explicitly showing the planner steps to demonstrate the execution plan. In the real world, you wouldn’t show the execution plan (since this reveals internal implementation details such as the data sources used, their inputs & responses, errors, etc).
We can see that the planner made a plan with 6 steps. Let’s go through each one in detail.
Continue reading this post, as well as the full series on Jordan’s dev blog.