|
1 | | -# Project |
| 1 | +# AGDebugger |
2 | 2 |
|
3 | | -> This repo has been populated by an initial template to help get you started. Please |
4 | | -> make sure to update the content to build a great experience for community-building. |
| 3 | +AGDebugger is an interactive system to help you debug your agent teams. It offers interactions to: |
5 | 4 |
|
6 | | -As the maintainer of this project, please make a few updates: |
| 5 | +1. Send and step through agent messages |
| 6 | +2. Edit previously sent agent messages and revert to earlier points in a conversation |
| 7 | +3. Navigate agent conversations with an interactive visualization |
7 | 8 |
|
8 | | -- Improving this README.MD file to provide a great experience |
9 | | -- Updating SUPPORT.MD with content about this project's support experience |
10 | | -- Understanding the security reporting process in SECURITY.MD |
11 | | -- Remove this section from the README |
| 9 | + |
12 | 10 |
|
13 | | -## Contributing |
| 11 | +## Local Install |
14 | 12 |
|
15 | | -This project welcomes contributions and suggestions. Most contributions require you to agree to a |
16 | | -Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us |
17 | | -the rights to use your contribution. For details, visit https://cla.opensource.microsoft.com. |
| 13 | +You can install AGDebugger locally by cloning the repo and installing the python package. |
18 | 14 |
|
19 | | -When you submit a pull request, a CLA bot will automatically determine whether you need to provide |
20 | | -a CLA and decorate the PR appropriately (e.g., status check, comment). Simply follow the instructions |
21 | | -provided by the bot. You will only need to do this once across all repos using our CLA. |
| 15 | +```sh |
| 16 | +# Install & build frontend |
| 17 | +cd frontend |
| 18 | +npm install |
| 19 | +npm run build |
| 20 | +# Install & build agdebugger python package |
| 21 | +cd .. |
| 22 | +pip install . |
| 23 | +``` |
22 | 24 |
|
23 | | -This project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/). |
24 | | -For more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/) or |
25 | | -contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments. |
| 25 | +## Usage |
26 | 26 |
|
27 | | -## Trademarks |
| 27 | +AGDebugger is built on top of [AutoGen](https://microsoft.github.io/autogen/stable/). To use AGDebugger, you provide a python file that exposes a function that creates an [AutoGen AgentChat](https://microsoft.github.io/autogen/stable/user-guide/agentchat-user-guide/index.html) team for debugging. You can then launch AgDebugger with this agent team. |
28 | 28 |
|
29 | | -This project may contain trademarks or logos for projects, products, or services. Authorized use of Microsoft |
30 | | -trademarks or logos is subject to and must follow |
31 | | -[Microsoft's Trademark & Brand Guidelines](https://www.microsoft.com/en-us/legal/intellectualproperty/trademarks/usage/general). |
32 | | -Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship. |
33 | | -Any use of third-party trademarks or logos are subject to those third-party's policies. |
| 29 | +For example, the script below creates a simple agent team with a single WebSurfer agent. |
| 30 | + |
| 31 | +```python |
| 32 | +# scenario.py |
| 33 | +from autogen_agentchat.teams import MagenticOneGroupChat |
| 34 | +from autogen_agentchat.ui import Console |
| 35 | +from autogen_ext.agents.web_surfer import MultimodalWebSurfer |
| 36 | +from autogen_ext.models.openai import OpenAIChatCompletionClient |
| 37 | + |
| 38 | +async def get_agent_team(): |
| 39 | + model_client = OpenAIChatCompletionClient(model="gpt-4o") |
| 40 | + |
| 41 | + surfer = MultimodalWebSurfer( |
| 42 | + "WebSurfer", |
| 43 | + model_client=model_client, |
| 44 | + ) |
| 45 | + team = MagenticOneGroupChat([surfer], model_client=model_client) |
| 46 | + |
| 47 | + return team |
| 48 | +``` |
| 49 | + |
| 50 | +We can then launch the interface with: |
| 51 | + |
| 52 | +```sh |
| 53 | + agdebugger scenario:get_agent_team |
| 54 | +``` |
| 55 | + |
| 56 | +Once in the interface, you can send a GroupChatStart message to the start the agent conversation and begin debugging! |
| 57 | + |
| 58 | +## Citation |
| 59 | + |
| 60 | +See our CHI 2025 paper for more details on the design and evaluation of AGDebugger. |
| 61 | + |
| 62 | +```bibtex |
| 63 | +@inproceedings{epperson25agdebugger, |
| 64 | + title={Interactive Debugging and Steering of Multi-Agent AI Systems}, |
| 65 | + author={Will Epperson and Gagan Bansal and Victor Dibia and Adam Fourney and Jack Gerrits and Erkang Zhu and Saleema Amershi}, |
| 66 | + year={2025}, |
| 67 | + publisher = {Association for Computing Machinery}, |
| 68 | + booktitle = {Proceedings of the 2025 CHI Conference on Human Factors in Computing Systems}, |
| 69 | + series = {CHI '25} |
| 70 | +} |
| 71 | +``` |
0 commit comments