Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

AGS - Improve UX for creating, editing tools #5459

Open
Tracked by #5406
victordibia opened this issue Feb 9, 2025 · 5 comments
Open
Tracked by #5406

AGS - Improve UX for creating, editing tools #5459

victordibia opened this issue Feb 9, 2025 · 5 comments
Labels
proj-studio Related to AutoGen Studio.

Comments

@victordibia
Copy link
Collaborator

victordibia commented Feb 9, 2025

Tools contain several fields - imports, source code ..
The UI for these fields could be improved

  • Use code editor for source code field
  • Create a team/workflow for automatically generating tools?
Image
@ekzhu
Copy link
Collaborator

ekzhu commented Feb 9, 2025

Just merged MCP tools #5251. Would be great if that can be supported in the UI. The MCP tool once instantiated can display its schema which can then be shown on a generic UI interface.

@usag1e
Copy link

usag1e commented Feb 9, 2025

I understand that in version 0.4.1, the "provider" label in the JSON controls the type of agent or team. It would be great to have a dropdown menu in the Visual UI to choose between available provider types. This would simplify the configuration process and reduce the risk of errors by eliminating the need to manually type provider names.

@victordibia
Copy link
Collaborator Author

@usag1e ..
I agree that we should make it easy to get started.
Ideally, we dont want users/dev modifying the provider field directly for an existing team. For example, if we have a provider dropdown for an existing RoundRobinGroupChat (e.g., we click the edit button), switching it to SelectorGroupChat invalidates the entire thing as SelectorGroupChat requires a different set of fields (e.,g requires a model client etc).

Instead, what we want is for users to use existing components as templates .. drag them in and then modify the required parameters.

Here are my ideas on potential improvements

  • Agents - for agents, you can get started by dragging in an existing agent and then modifying it. Currently, AGS ships with 4 samples
  • Teams - for team .. add a team from the gallery .. then modify it to fit needs. Maybe what we can do is to modify the the new team button such that you can select the team type as a template e.g, a blank RoundRobin GroupChat or Selector.

What do you think?

Also, can you give me an example of what you were attempting to accomplish? E.g, you wanted to create a RoundRobinGroupChat, but it was challenging to do so? This way I can tailor planned fixes.

@usag1e
Copy link

usag1e commented Feb 9, 2025

I really like you ideas on potential improvements.

The current approach works well for those familiar with AgentChat, and I find the AG documentation very clear in presenting the framework. I also understand that AGS is meant for prototyping rather than production. However, for new users, I believe it would be helpful to clearly see the types of agents and teams available in the current version.

I mention this because I faced a similar issue when experimenting with AGS 0.4.0. The dropdown menus for selecting team types (RoundRobin, Selector) and agent types provided an intuitive way to understand what was possible from the UI. However I believe only AssistantAgent and UserProxyAgent were officially supported in 0.4.0.

Image.


In my spare time, I'm writing a Markdown guide on using AutoGen Studio. I've experimented with multiple teams in 0.4.0, including:
A simple example would be the first team I test: a simple RoundRobin team (no tools) where three AssistantAgents exchange jokes.
Then I have Several RoundRobin and Selector teams with tools and also tried deploying two teams that work in succession (one team to fetch news and prices for a coin) a second team that writes a blog post.
So since the release of 0.4.1, I can't just copy paste the JSONs from 0.4.0. I have to create them manually again. It's not hard work, just copy pasting system messages and adapting to the new JSON.
I hope these examples give a better idea of what I am trying to do.

Hope my comment was clear! I'll continue implementing my new teams and share my experience here in the next few days.

@EItanya
Copy link
Contributor

EItanya commented Feb 10, 2025

@victordibia what do you think about coupling this work with a simplified version of #4721? I think that issue's scope is a bit too large here, but I do think the ability to create a grouping of tools from one or many sources could vastly simplify the programmatic and UI experience.

Another option could be something more specific to the UI, or the autogenstudio apiserver. Similarly to the gallery, there could be something like "tool sources", which the UI could then query to list available tools. The user could then select which of the available tools to add to a dynamically generated team.json

I think both are probably pretty great, and maybe the question is more which one to do first, rather than which one forever.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
proj-studio Related to AutoGen Studio.
Projects
None yet
Development

No branches or pull requests

4 participants