mirror of
				https://github.com/microsoft/autogen.git
				synced 2025-10-31 01:40:58 +00:00 
			
		
		
		
	
		
			
	
	
		
			27 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
		
		
			
		
	
	
			27 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
|   | # AutoGen Services
 | ||
|  | 
 | ||
|  | ## Overview
 | ||
|  | 
 | ||
|  | Each AutoGen agent system has one or more Agent Workers and a set of services for managing/supporting the agents. The services and workers can all be hosted in the same process or in a distributed system.  When in the same process communication and event delivery is in-memory. When distributed, workers communicate with the service over gRPC. In all cases, events are packaged as CloudEvents. There are multiple options for the backend services: | ||
|  | 
 | ||
|  | - In-Memory: the Agent Workers and Services are all hosted in the same process and communicate over in-memory channels. Available for python and .NET. | ||
|  | - Python only: Agent workers communicate with a python hosted service that implements an in-memory message bus and agent registry. | ||
|  | - Micrososft Orleans: a distributed actor system that can host the services and workers, enables distributed state with persistent storage, can leverage multiple event bus types, and cross-language agent communication. | ||
|  | - *Roadmap: support for other languages distributed systems such as dapr or Akka.* | ||
|  | 
 | ||
|  | The Services in the system include: | ||
|  | 
 | ||
|  | - Worker: Hosts the Agents and is a client to the Gateway | ||
|  | - Gateway: | ||
|  | -- RPC gateway for the other services APIs | ||
|  | -- Provides an RPC bridge between the workers and the Event Bus | ||
|  | -- Message Session state (track message queues/delivery) | ||
|  | - Registry: keeps track of the {agents:agent types}:{Subscription/Topics} in the system and which events they can handle | ||
|  | -- *Roadmap: add lookup api in gateway* | ||
|  | - AgentState: persistent state for agents | ||
|  | - Routing: delivers events to agents based on their subscriptions+topics | ||
|  | -- *Roadmap: add subscription management APIs* | ||
|  | - *Roadmap: Management APIs for the Agent System* | ||
|  | - *Roadmap: Scheduling: manages placement of agents* | ||
|  | - *Roadmap: Discovery: allows discovery of agents and services* |