56 Commits

Author SHA1 Message Date
Ryan Sweet
c1646f21c0
Rysweet 4676 remove iagentruntime - collapse into iagentworker (#4740)
* moves AgentId into Agent
* Renames AgentRuntime to AgentMessenger (more accurate name)
* Remove IAgentRuntime Interface
* changes constructor of Agent to take IAgentWorker instead of IAgentRuntime
2024-12-17 13:04:37 -08:00
Ryan Sweet
0bfc0652ae
Rysweet 4702 add microsoftautogenagenthost package (#4703) 2024-12-14 12:20:18 -08:00
Ryan Sweet
a19c848622
rysweet-4677-rename-agents-project-to-core-trim-dependencies (#4696)
* move optional base agents to separate package
* rename main sdk to Core
* reduce dependency graph
Co-authored-by: @rysweet 
Authored-by: @kostapetan 
Co-authored-by: @kopetan-ms
2024-12-13 11:55:43 -08:00
Ryan Sweet
c169df8b7b
Rysweet 4679 move grpc to runtimegrpc project (#4680)
* refactor moving grpc runtime to a separate project
2024-12-13 09:29:57 -08:00
Ryan Sweet
55e157cb99
Rysweet refactor 4670 rename abstractions to contracts (#4674)
* refactor renaming agent base

* 1st draft

* 1st draft

* format

* rename the tsts

* move IagentWorker

* 1st draft

* format

* gen-proto

* run gen-proto-samples

* format

* merge problem format
2024-12-12 19:43:26 -08:00
Ryan Sweet
7d4bf9b957
Rysweet 4671 remove iagent base (#4673)
* refactor renaming agent base and removing unused stuff

Authored-by: Kosta Petan <kopetan@microsoft.com>
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: Kosta Petan <kopetan@microsoft.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Ryan Sweet <rysweet@microsoft.com>
Co-authored-by: Victor Dibia <victordibia@microsoft.com>
2024-12-12 15:13:01 -08:00
Ryan Sweet
c9ebe32bd7
refactor renaming agent base - 4667 (#4669)
* refactor renaming agent base

* rename the files

* Update dotnet/src/Microsoft.AutoGen/Agents/Services/HostBuilderExtensions.cs

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* update the tests

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2024-12-12 21:43:57 +01:00
Ryan Sweet
1c09de8d47
HelloAgents App Host with xlang sample (#4395)
* adds a python xlang sample and aspire code to host it
* fixes message delivery on dotnet runtime
2024-12-03 08:09:02 -08:00
Ryan Sweet
a14f208588
4153 try to decouple abstractions package from orleans (#4355)
* remove abstractions dep on orleans #4153

* fixing up defaults

* fix some HelloAgent defaults

---------

Co-authored-by: Xiaoyun Zhang <bigmiao.zhang@gmail.com>
2024-11-25 13:37:35 -08:00
Diego Colombo
b65269b8f8
create solution for the dev team sample (#4086)
Co-authored-by: Ryan Sweet <rysweet@microsoft.com>
2024-11-21 11:03:30 -08:00
Xiaoyun Zhang
072a1c14b7
update (#4288) 2024-11-20 11:50:28 -08:00
Xiaoyun Zhang
bd81183751
.NET renaming Microsoft.AutoGen.* package (#4286)
* renaming package

* update folder name to match extension structure

* more renaming and adding tags

* fix header

---------

Co-authored-by: Ryan Sweet <rysweet@microsoft.com>
2024-11-20 11:15:21 -08:00
Ryan Sweet
1e3b765e3a
.net changes to re-enable xlang support, add subscription apis (#4159)
* add subscription response

* fix send subscription response

* add register agent type response

* adding a test

* working on shaping up a test

* appsettins update for backend

* another appsettings

* fixup aspire hosting

* enable AGENT_HOST var from aspire

* add SendMessageAsync

* remove broken test

* test compiles and runs but is not (yet) correct

* subscriptions grain wireup.

* temp assert true.

* remove DI for SubscriptionGrain

* add xlang python code

* add subscription response

* rebond

* Update to .NET 9.0

* Fix Backend project SDK

* Package updates

* get RegisterAgentTypeRequest working

* fix exceptions

* add error handling for requests

* whoops

* send cloud event message type

* processing cloudevents

* trying tosend proto data - doesn't work

* trying to pack proto_data

* fix (#4238)

* pack the Message from agents_events

* format - not sure why these?

* format

* cleanup, error handling, xlang sample publishes messages that can be heard by .NET and vice versa

* format

* sdk version

* sdk vers

* net8

* back to net8

* remove netstandard2

* fix used

* remove unused

* more cleanup

* remove unneeded package

* I'm terrible at writing tests

* deserialize the cloud events and sent them as events

* comment

* cleanup

* await

* Delete dotnet/samples/Hello/Backend/Backend.csproj

unneeded change

* whoops

* merge main python back into here

* revert back to local

* revert some of the helloAgents changes.

* [.NET] Add happy path test for in-memory agent && Simplify HelloAgent example && some clean-up in extension APIs (#4227)

* add happy path test

* remove unnecessary namespace

* fix build error

* Update AgentBaseTests.cs

* revert changes

---------

* fix busted merge from main

* addressing review comments

* make internal

* case sensitive rename step 1

* case sensitive rename step 2

* remove!

---------

Co-authored-by: Peter Chang <petchang@microsoft.com>
Co-authored-by: Reuben Bond <reuben.bond@gmail.com>
Co-authored-by: Eric Zhu <ekzhu@users.noreply.github.com>
Co-authored-by: Xiaoyun Zhang <bigmiao.zhang@gmail.com>
2024-11-19 11:00:48 -08:00
Xiaoyun Zhang
ad271d975c
[.NET] Add happy path test for in-memory agent && Simplify HelloAgent example && some clean-up in extension APIs (#4227)
* add happy path test

* remove unnecessary namespace

* fix build error

* Update AgentBaseTests.cs

* revert changes

---------
2024-11-18 13:32:49 -08:00
Ryan Sweet
d23d17259d
block comment SwaggerUI so that we don't turn it on by default. (#4258) 2024-11-18 10:04:46 -08:00
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
Diego Colombo
621b17ebbe
Simplify publish events in agent (#4093)
* simplify publishing imessage contracts

use new api

complete adoption

remove unused project

more delete

more delete

* rename methods

* formatting

* Add task type that are messages to enable multi-modal tasks. (#4091)

* Add task type that are messages to enable multi-modal tasks.

* fix test

---------

Co-authored-by: Eric Zhu <ekzhu@users.noreply.github.com>
2024-11-08 14:16:24 +00:00
Reuben Bond
f40336fda1
Do not exclude Properties or appsettings.json via .gitignore, commit missing files (#4057) 2024-11-04 20:48:46 +01:00
David Luong
f46e52e6ff
[.NET] Update version of Microsoft.Extension.Ai & System.Text.Json (#4044)
* Upgrade version of M.E.A.I & STJ

* remove copilot generated comment

* Revert NoWarnDuplicatePackages and remove S.T.J from Directory.Packages.props

---------

Co-authored-by: Xiaoyun Zhang <bigmiao.zhang@gmail.com>
2024-11-04 08:40:53 -05:00
Xiaoyun Zhang
5e0b677acc
[.NET] Create tools from M.E.A.I AIFunctionFactory (#4041)
* add MEAI tool support

* fix format

* update

---------

Co-authored-by: Ryan Sweet <rysweet@microsoft.com>
2024-11-03 09:18:32 -08:00
Reuben Bond
7d1857dae6
Clean up the Hello sample, support Aspire 9.0, & fix shutdown in the sample (#4037)
* Wait for acknowledgment when sending message to gRPC channel

* Add CancellationToken parameters to API surface

* Clean up the Hello sample, support Aspire 9.0, & fix shutdown
2024-11-01 15:43:20 -07:00
Xiaoyun Zhang
6bea055b26
[.Net] Add a generic IHandle interface so AgentRuntime doesn't need to deal with typed handler (#3985)
* add IHandle for object type

* rename handle -> handleObject

* remove duplicate file header setting

* update

* remove AgentId

* fix format
2024-10-30 11:53:37 -07:00
Ryan Sweet
51cd5b8d1f
interface inheritance examples (#3989)
changes to AgentBase and HostBuilderExtensions to enable leveraging handlers from composition (interfaces) vs inheritance... see HelloAgents sample for usage

closes #3928
is related to #3925
2024-10-30 09:51:01 -07:00
Ryan Sweet
0f4dd0cc6d
Agentbase refactor (#3980)
Remove unused code, refactor AgentBase and AgentWorker/Runtime to use interfaces throughout to enable future implementation of alternate runtimes and separation of the gprpc service from Agent Base (for future in-memory version). 
Also adds the missing RegisterAgentResponse methods
2024-10-29 16:59:27 -07: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
bf407d99b4
rysweet-adopt .NET Microsoft.Extensions.AI abstractions (#3790)
adopts the new Microsoft.Extensions.AI abstractions
adds a base InferenceAgent
fixes a lot of pain points in the runtime wrt startup/shutdown
fixes some uncaught exceptions in the grpc stream reading
adds an example for running the backend service in its own process
adds an example of an agent that connects to OpenAI/Ollama
adds an example of wrapping an agent app in .NET Aspire
upgrades some dependencies and removes some others
Known bugs: #3922
2024-10-23 14:23:36 -07:00
Andreas Volkmann
d7369be42f
Simplify samples (#3845)
authored-by: Andreas Volkmann <anvolkma@microsoft.com>
2024-10-18 13:10:49 -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
Ryan Sweet
0214299de5
updating dependencies and build to ensure works with net9 (#3800)
* interim - doesn't work - sharing

* turn off EnforceExtended

* works with dotnet build now... ;-)

* interim progress

* more updates

* make VS happy

* update

* Update AutoGen.Ollama.csproj

* Update Microsoft.AutoGen.Agents.Abstractions.csproj

* Delete dotnet/test/AutoGen.Gemini.Tests/ApprovalTests/FunctionContractExtensionTests.ItGenerateGetWeatherToolTest.received.txt

* fix tests

---------

Co-authored-by: XiaoYun Zhang <xiaoyuz@microsoft.com>
2024-10-16 11:03:05 -07:00
Xiaoyun Zhang
0560bdd645
[.Net] Update OpenAI, semantic kernel to latest version (#3792)
* update OpenAI, semantic kernel to latest version

* fix build error

* update

* update release note
2024-10-15 07:23:33 -07:00
Niklas Gustafsson
dfd239105a
improve App Host shutdown (#3727)
Improve sequence and exception handling for outpost shut down
2024-10-09 17:25:27 -07:00
Ryan Sweet
dea02e5dbc
add documentation for dotnet AutoGen 0.4 HellowWorld sample (#3698)
add more docs for .NET sample
2024-10-09 11:31:12 -07:00
Ryan Sweet
8e37cef69d
Rysweet dotnet folder moves (#3693)
* add service defaults to Host

* add otel to app host

* ran format

* remove HelloAgents

* moving things around to fit the folder structure/naming conventions


---------

Co-authored-by: Xiaoyun Zhang <bigmiao.zhang@gmail.com>
2024-10-09 09:58:21 -07:00
Ryan Sweet
a5e9b50448
remove broken sample and update readme quickstart for the good sample (#3687) 2024-10-09 05:38:45 -07:00
Ryan Sweet
e40056789a
Rysweet hello fix (#3683)
Fixing the HelloWorld sample and some refactoring of .NET code, adding App and Host classes in client and runtime.
2024-10-08 10:02:48 -07:00
Xiaoyun Zhang
9ba14ee15b
Fix dotnet test and reformat dotnet code (#3603)
* fix test

* install aspire workload

* format

* fix build error

* fix format

* format
2024-10-02 14:42:27 -04:00
Xiaoyun Zhang
5c7498cc08 Dotnet package cleanup and reconciliation of dirs 2024-10-02 12:57:50 -04:00
Xiaoyun Zhang
18d52f606a
Merge dotnet conflict (#3) 2024-09-30 19:32:48 -04:00
Jack Gerrits
1dc91bddd2 Fix lfs 2024-09-30 15:50:28 -04:00
Jack Gerrits
3a62798af8 Merge work in progress autogen 0.4 to main 2024-09-30 10:15:34 -04:00
Jack Gerrits
43c85d68e0
Update references (#657)
Co-authored-by: Eric Zhu <ekzhu@users.noreply.github.com>
2024-09-28 04:01:08 +00: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
Ryan Sweet
1edf5cfe9c
working on scaffolding a new dotnet intro sample for #531 (#536)
* interim stash

* interim stash

* interim checkpoint

* broken stash

* whoops

* merge sln files

* fix a bunch of refactoring errors

* moving more to core vs samples

* interim

* fixup the devteam sample

* fix ci

* fixup soln file

* trying to fix ci

* trying to fix ci

* adding back

* still trying

* recreate

* next step

* adding it back

* trying to fix

* Rename Autogen -> AutoGen (#567)

* Add transparency faqs (#566)

* remove Autogen

* add AutoGen back

---------

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

---------

Co-authored-by: Xiaoyun Zhang <xiaoyuz@microsoft.com>
Co-authored-by: Eric Zhu <ekzhu@users.noreply.github.com>
2024-09-19 01:41:44 +00:00
Ryan Sweet
7d7fc8a912
.NET cleanup and refactor (#558)
Moves some shared code from samples into core.
complete/cleanup the rename to Microsoft.AutoGen
adds new projects in AutoGen.Extensions
2024-09-18 11:57:51 -07: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
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
Kosta Petan
a1221d46d2 remove Dapr sample/implementation (#345)
Co-authored-by: Kosta Petan <Kosta.Petan@microsoft.com>
2024-08-08 14:17:41 +00:00
Reuben Bond
e7ac11b2e9 Initial distributed tracing implementation for .NET (#257) 2024-07-25 07:06:06 +00:00