Commit Graph

18 Commits

Author SHA1 Message Date
Ryan Sweet 458d273fc4
Refactoring the services and implementing an in-memory runtime for .NET (#4005)
closes #3950 closes #3702

What this is doing:

I am refactoring the services on the .NET runtime and attempting to clarify the naming and organization.
I added this doc to help capture the naming and concepts.
AgentRuntime / Worker should work similar to the python version and enables running the whole agent system in one process. For remote the system uses the versions of the services in the grpc folder.
lots of other bug fixes/threading cleanup - passing cancellation token throughout
Services update clarifies the naming and roles:

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
Registry: keeps track of the agents in the system and which events they can handle
AgentState: persistent state for agents
2024-11-12 11:04:59 -08:00
Ryan Sweet 14846a3e84
first draft of stateful persistence grains for each agent.... (#3954)
* adds Orleans persistence for AgentState
2024-10-28 17:28:36 -07:00
Ryan Sweet 460a6817ea
refactoring the dotnet folder and namespace structure for better long term maintenance and clarity #3809 (#3810)
closes #3809 - refactor .NET code foldersand namespaces for better clarity and maintainability
2024-10-16 20:09:39 -07:00
Xiaoyun Zhang 5c7498cc08 Dotnet package cleanup and reconciliation of dirs 2024-10-02 12:57:50 -04:00
Kosta Petan 54c6382e89
fix dotnet distributed tracing (#4)
* fix dotnet distributed tracing

* regenerate protos for python
2024-10-01 12:31:26 -04:00
Ryan Sweet dca82b3f5d
Rysweet dotnet refactor (#624)
rename the main classes and mixup folder structure
move some tings from samples into core
cleanup cross-deps
cleanup grpc deps
2024-09-24 09:26:30 -07:00
Ryan Sweet a72ebaef90
Rysweet 531 dotnet create hello agent continued (#606)
fixing base agent classes for io
2024-09-23 17:50:18 +00:00
Ryan Sweet d60536c9fe
[wip] [dotnet] adding IOAgents (#598)
* new agent events top level photo for base agents
* new tip IOAgent
* fix .net build break from proto
2024-09-20 09:48:12 -07:00
Eric Zhu 8018677234
Add response for registering agent type and adding subscriptions in distributed runtime, and throws an exception when error (#582)
* Add response for registering agent type and adding subscriptions in distributed runtime

* Update unit tests

* lint
2024-09-19 10:50:17 -07:00
Kosta Petan 3222632497
Update .net code to use CloudEvent, add Event back to proto definition (#530)
* remove OAgents lib from sln

* add Event back to agent_worker_proto

* regenerate python proto, remove RegisterAgent addition

* add cloudevent.proto to the python generation task
2024-09-17 14:11:17 +00:00
Jack Gerrits da759b6aed
Dotnet - core framework rework (rebased) (#511)
* dotnet rework

* add dotnet workload update to startup

* fix build

* interim fixup

* this is the stuff that was missing

* renaming the .net classes

* more build fixup

* port dev-team sample WIP

* add proto messages and IHandle to agents

* add github variables

* remove OAgents gh-flow

* remove OAgents library

* add .vs to gitignore

---------

Co-authored-by: Kosta Petan <kostapetan@gmail.com>
Co-authored-by: Ryan Sweet <rysweet@microsoft.com>
2024-09-17 13:01:49 +00:00
Eric Zhu a6c1b503ad Distributed agent runtime API for host and worker; unit tests; documentation (#465)
* host agent runtime API and docs

* graceful shutdown of worker

* HostAgentRuntime --> WorkerAgentRuntimeHost

* Add unit tests for worker runtime

* Fix bug in worker runtime adding sender filed to proto. Documentation.

* wip

* Fix unit tests; refactor API

* fix formatting

* Fix

* Update

* Make source field optional in Event proto
2024-09-13 08:17:53 -07:00
Jack Gerrits 8504ea0bf2 Support datacontenttype and lay groundwork for unknown payloads (#444)
* Support datacontenttype and lay groundwork for unknown payloads

* Update dotnet based on proto changes
2024-09-05 16:36:59 -04:00
Eric Zhu dc847d3985 Implement RPC and Subscription-based broadcast for python host and worker runtime. (#389)
* Refactor subscription in single threaded agent runtime

* Update proto to support response result type

* Support RPC and subscription-based broadcast for Python host and worker runtime.

* format
2024-08-22 16:07:28 +00:00
Xiaoyun Zhang 09ceef4b4a enable dotnet build in PR check and Add namespace back in .proto (#384)
* enable dotnet build for PR check

* add namespace back

---------

Co-authored-by: Eric Zhu <ekzhu@users.noreply.github.com>
2024-08-21 17:58:04 +00:00
Jack Gerrits e1a823fb6d Initial impl of topics and subscriptions (#350)
* initial impl of topics and subscriptions

* Update python/src/agnext/core/_agent_runtime.py

Co-authored-by: Eric Zhu <ekzhu@users.noreply.github.com>

* add topic in context

* migrate

* migrate code for topics

* migrate team one

* edit notebooks

* formatting

* fix imports

* Build proto

* Fix circular import

---------

Co-authored-by: Eric Zhu <ekzhu@users.noreply.github.com>
2024-08-20 14:41:24 -04:00
Jack Gerrits 437dbefc32 Rename fields in agent id (#334)
Co-authored-by: Eric Zhu <ekzhu@users.noreply.github.com>
2024-08-07 10:25:44 -07:00
Reuben Bond ebed669231 Initial cross-language protocol for agents (#139)
* Initial prototype of .NET gRPC worker client + service

---------

Co-authored-by: Jack Gerrits <jack@jackgerrits.com>
2024-06-28 08:03:42 -07:00