This demo is based upon the Process Framework with .NET Aspire demo.
In this sample I explore the ability to use different coding languages to build our agents and have them communicate with each other.
The sample is built using the following technologies:
- Semantic Kernel
- Data API Builder: an open source tool to build APIs on top of databases.
- .NET Aspire
The involved microservices are:
- Process Orchestrator: this is a .NET minimal API that orchestrates the process, using Semantic Kernel Process Framework.
- Offerings Expert Agent: this is a .NET minimal API that retrieves the offerings from the database, using Data API Builder as a plugin for its ChatCompletionAgent. For further details on how to use Data API Builder as a plugin, please refer to the this blog.
- Trip Planner Agent: this is a Python microservice that will plan the trip based on the offerings retrieved by the Offerings Expert Agent and the user request. This uses an Agent Group Chat with two agents: Travel Manager and Travel Agent.
The process workflow is as follows:
- The user sends a request to the Process Orchestrator.
- The Process Orchestrator starts a new process
- The first step is the RetrieveOfferingsStep, which will invoke the Offerings Expert Agent to retrieve the offerings.
- The second step is the PlanTripStep, which will invoke the Trip Planner Agent Group Chat to plan the trip.