-
Notifications
You must be signed in to change notification settings - Fork 487
[FEA]add profiler agent to the examples folder #120
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
Conversation
mdemoret-nv
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Very cool example. A few questions for you.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is a great feature! I had a few minor comments and requests for changes below. Aside from those, I think it would be wonderful to get some unit testing in for the tools in this example where appropriate, we well as the agent itself. Other examples in the repository have some tests you can reference.
Furthermore, I have a few suggestions I'm curious for your take on. It would be wonderful if this agent could also use output from the aiq profiler runs (such as latency and bottleneck analysis) to enrich results further.
The aiq profiler trace also contains a lot of rich metadata you could use that is not present in Pheonix. Using those traces could also mean this workflow can run standalone without requiring users to use Pheonix!
|
will add tests as well. |
|
@zac-wang-nv Would love to get this in for our next release. The cutoff is Friday. Do you think you could add some tests by the end of the week? |
|
@zac-wang-nv Can you also update your branch to adhere to our signoff policy? All commits need to be signed off in order to be merged: https://github.com/NVIDIA/AIQToolkit/pull/120/checks?check_run_id=40976234780 |
Signed-off-by: zac-wang-nv <[email protected]>
Signed-off-by: zac-wang-nv <[email protected]>
fad2ae6 to
517a073
Compare
Sure. |
Signed-off-by: zac-wang-nv <[email protected]>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR introduces a new profiler agent example that integrates several tools (flow chart, token usage, Phoenix query, and response composer) to enable interactive profiling of LLM traces. Key changes include new tests, tool implementations and their registration, and updated configuration and documentation files to support the profiler agent.
Reviewed Changes
Copilot reviewed 15 out of 17 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| examples/profiler_agent/tests/test_profiler_agent.py | Added tests validating flow chart and token usage functionality. |
| examples/profiler_agent/src/aiq_profiler_agent/tool/*.py | New tools for token usage, flow chart, px query, and response composing. |
| examples/profiler_agent/src/aiq_profiler_agent/agent.py | New profiler agent implementation integrating the tools. |
| examples/profiler_agent/configs/config.yml | Updated configuration supporting the profiler agent. |
| examples/profiler_agent/README.md | Documentation updates for installation and usage instructions. |
Files not reviewed (2)
- examples/profiler_agent/tests/test_spans.csv: Language not supported
- external/agentiq-opensource-ui: Language not supported
examples/profiler_agent/src/aiq_profiler_agent/tool/flow_chart.py
Outdated
Show resolved
Hide resolved
Co-authored-by: Copilot <[email protected]> Signed-off-by: Anuradha Karuppiah <[email protected]>
Co-authored-by: Copilot <[email protected]> Signed-off-by: Anuradha Karuppiah <[email protected]>
|
/ok to test 6c96605 |
Signed-off-by: Anuradha Karuppiah <[email protected]>
Signed-off-by: Anuradha Karuppiah <[email protected]>
|
/ok to test 9a30d36 |
Signed-off-by: Anuradha Karuppiah <[email protected]>
|
/ok to test a958860 |
Signed-off-by: Anuradha Karuppiah <[email protected]>
|
/ok to test 9c76263 |
Signed-off-by: Anuradha Karuppiah <[email protected]>
|
/ok to test 6bcf300 |
Signed-off-by: Anuradha Karuppiah <[email protected]>
Add steps for generating traces and using the UI Signed-off-by: Anuradha Karuppiah <[email protected]>
Signed-off-by: Anuradha Karuppiah <[email protected]>
Signed-off-by: zac-wang-nv <[email protected]>
|
/ok to test 0c30da3 |
Signed-off-by: Anuradha Karuppiah <[email protected]>
|
/ok to test 0138b4c |
Signed-off-by: Anuradha Karuppiah <[email protected]>
|
/ok to test 060b91d |
|
/ok to test c8e5775 |
|
/ok to test 5c010c3 |
|
/ok to test 3191a8d |
|
/merge |
This PR introduces a new example agent, profiler agent. Users can use this agent to chat with the profiling traces in their AgentIQ agent application and use it as an interactive profiling tool. https://github.com/user-attachments/assets/318f9a1e-fb5a-47dd-a9f4-32e088aebd51 This agent requires users to configure AgentIQ with profiling and telemetry features enabled, following [the documentation](https://docs.nvidia.com/agentiq/latest/guides/profiler.html) ## By Submitting this PR I confirm: - I am familiar with the [Contributing Guidelines](https://github.com/NVIDIA/AgentIQ/blob/develop/docs/source/advanced/contributing.md). - We require that all contributors "sign-off" on their commits. This certifies that the contribution is your original work, or you have rights to submit it under the same license, or a compatible license. - Any contribution which contains commits that are not Signed-Off will not be accepted. - When the PR is ready for review, new or existing tests cover these changes. - When the PR is ready for review, the documentation is up to date with these changes. Authors: - Zac Wang (https://github.com/zac-wang-nv) - Anuradha Karuppiah (https://github.com/AnuradhaKaruppiah) Approvers: - Anuradha Karuppiah (https://github.com/AnuradhaKaruppiah) URL: NVIDIA#120 Signed-off-by: Yuchen Zhang <[email protected]>
This PR introduces a new example agent, profiler agent. Users can use this agent to chat with the profiling traces in their AgentIQ agent application and use it as an interactive profiling tool. https://github.com/user-attachments/assets/318f9a1e-fb5a-47dd-a9f4-32e088aebd51 This agent requires users to configure AgentIQ with profiling and telemetry features enabled, following [the documentation](https://docs.nvidia.com/agentiq/latest/guides/profiler.html) ## By Submitting this PR I confirm: - I am familiar with the [Contributing Guidelines](https://github.com/NVIDIA/AgentIQ/blob/develop/docs/source/advanced/contributing.md). - We require that all contributors "sign-off" on their commits. This certifies that the contribution is your original work, or you have rights to submit it under the same license, or a compatible license. - Any contribution which contains commits that are not Signed-Off will not be accepted. - When the PR is ready for review, new or existing tests cover these changes. - When the PR is ready for review, the documentation is up to date with these changes. Authors: - Zac Wang (https://github.com/zac-wang-nv) - Anuradha Karuppiah (https://github.com/AnuradhaKaruppiah) Approvers: - Anuradha Karuppiah (https://github.com/AnuradhaKaruppiah) URL: NVIDIA#120 Signed-off-by: Yuchen Zhang <[email protected]>
This PR introduces a new example agent, profiler agent. Users can use this agent to chat with the profiling traces in their AgentIQ agent application and use it as an interactive profiling tool. https://github.com/user-attachments/assets/318f9a1e-fb5a-47dd-a9f4-32e088aebd51 This agent requires users to configure AgentIQ with profiling and telemetry features enabled, following [the documentation](https://docs.nvidia.com/agentiq/latest/guides/profiler.html) ## By Submitting this PR I confirm: - I am familiar with the [Contributing Guidelines](https://github.com/NVIDIA/AgentIQ/blob/develop/docs/source/advanced/contributing.md). - We require that all contributors "sign-off" on their commits. This certifies that the contribution is your original work, or you have rights to submit it under the same license, or a compatible license. - Any contribution which contains commits that are not Signed-Off will not be accepted. - When the PR is ready for review, new or existing tests cover these changes. - When the PR is ready for review, the documentation is up to date with these changes. Authors: - Zac Wang (https://github.com/zac-wang-nv) - Anuradha Karuppiah (https://github.com/AnuradhaKaruppiah) Approvers: - Anuradha Karuppiah (https://github.com/AnuradhaKaruppiah) URL: NVIDIA#120 Signed-off-by: Eric Evans <[email protected]>
This PR introduces a new example agent, profiler agent. Users can use this agent to chat with the profiling traces in their AgentIQ agent application and use it as an interactive profiling tool. https://github.com/user-attachments/assets/318f9a1e-fb5a-47dd-a9f4-32e088aebd51 This agent requires users to configure AgentIQ with profiling and telemetry features enabled, following [the documentation](https://docs.nvidia.com/agentiq/latest/guides/profiler.html) ## By Submitting this PR I confirm: - I am familiar with the [Contributing Guidelines](https://github.com/NVIDIA/AgentIQ/blob/develop/docs/source/advanced/contributing.md). - We require that all contributors "sign-off" on their commits. This certifies that the contribution is your original work, or you have rights to submit it under the same license, or a compatible license. - Any contribution which contains commits that are not Signed-Off will not be accepted. - When the PR is ready for review, new or existing tests cover these changes. - When the PR is ready for review, the documentation is up to date with these changes. Authors: - Zac Wang (https://github.com/zac-wang-nv) - Anuradha Karuppiah (https://github.com/AnuradhaKaruppiah) Approvers: - Anuradha Karuppiah (https://github.com/AnuradhaKaruppiah) URL: NVIDIA#120 Signed-off-by: Eric Evans <[email protected]>
This PR introduces a new example agent, profiler agent. Users can use this agent to chat with the profiling traces in their AgentIQ agent application and use it as an interactive profiling tool. https://github.com/user-attachments/assets/318f9a1e-fb5a-47dd-a9f4-32e088aebd51 This agent requires users to configure AgentIQ with profiling and telemetry features enabled, following [the documentation](https://docs.nvidia.com/agentiq/latest/guides/profiler.html) ## By Submitting this PR I confirm: - I am familiar with the [Contributing Guidelines](https://github.com/NVIDIA/AgentIQ/blob/develop/docs/source/advanced/contributing.md). - We require that all contributors "sign-off" on their commits. This certifies that the contribution is your original work, or you have rights to submit it under the same license, or a compatible license. - Any contribution which contains commits that are not Signed-Off will not be accepted. - When the PR is ready for review, new or existing tests cover these changes. - When the PR is ready for review, the documentation is up to date with these changes. Authors: - Zac Wang (https://github.com/zac-wang-nv) - Anuradha Karuppiah (https://github.com/AnuradhaKaruppiah) Approvers: - Anuradha Karuppiah (https://github.com/AnuradhaKaruppiah) URL: NVIDIA#120
This PR introduces a new example agent, profiler agent. Users can use this agent to chat with the profiling traces in their AgentIQ agent application and use it as an interactive profiling tool. https://github.com/user-attachments/assets/318f9a1e-fb5a-47dd-a9f4-32e088aebd51 This agent requires users to configure AgentIQ with profiling and telemetry features enabled, following [the documentation](https://docs.nvidia.com/agentiq/latest/guides/profiler.html) ## By Submitting this PR I confirm: - I am familiar with the [Contributing Guidelines](https://github.com/NVIDIA/AgentIQ/blob/develop/docs/source/advanced/contributing.md). - We require that all contributors "sign-off" on their commits. This certifies that the contribution is your original work, or you have rights to submit it under the same license, or a compatible license. - Any contribution which contains commits that are not Signed-Off will not be accepted. - When the PR is ready for review, new or existing tests cover these changes. - When the PR is ready for review, the documentation is up to date with these changes. Authors: - Zac Wang (https://github.com/zac-wang-nv) - Anuradha Karuppiah (https://github.com/AnuradhaKaruppiah) Approvers: - Anuradha Karuppiah (https://github.com/AnuradhaKaruppiah) URL: NVIDIA#120
Description
This PR introduces a new example agent, profiler agent.
Users can use this agent to chat with the profiling traces in their AgentIQ agent application and use it as an interactive profiling tool.
Screen.Recording.2025-04-08.at.7.58.50.PM.mov
This agent requires users to configure AgentIQ with profiling and telemetry features enabled, following the documentation
By Submitting this PR I confirm: