Skip to content

Conversation

@zac-wang-nv
Copy link
Contributor

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:

  • I am familiar with the Contributing Guidelines.
  • 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.

@zac-wang-nv zac-wang-nv requested a review from a team as a code owner April 11, 2025 01:17
@copy-pr-bot
Copy link

copy-pr-bot bot commented Apr 11, 2025

This pull request requires additional validation before any workflows can run on NVIDIA's runners.

Pull request vetters can view their responsibilities here.

Contributors can view more details about this message here.

@mdemoret-nv mdemoret-nv added feature request New feature or request non-breaking Non-breaking change labels Apr 15, 2025
Copy link
Collaborator

@mdemoret-nv mdemoret-nv left a 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.

Copy link
Contributor

@dnandakumar-nv dnandakumar-nv left a 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!

@zac-wang-nv
Copy link
Contributor Author

will add tests as well.

@mdemoret-nv
Copy link
Collaborator

@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?

@mdemoret-nv
Copy link
Collaborator

@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

@zac-wang-nv zac-wang-nv force-pushed the develop branch 2 times, most recently from fad2ae6 to 517a073 Compare May 1, 2025 14:58
@zac-wang-nv
Copy link
Contributor Author

zac-wang-nv commented May 1, 2025

@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

Sure.
I rebased my changes and singed them off, also two unit tests are added for tools. e2e test requires phoenix server and LLM calls, which I am not sure how to add.

Signed-off-by: zac-wang-nv <[email protected]>
@AnuradhaKaruppiah AnuradhaKaruppiah requested a review from Copilot May 1, 2025 23:01
Copy link
Contributor

Copilot AI left a 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

AnuradhaKaruppiah and others added 2 commits May 1, 2025 16:06
Co-authored-by: Copilot <[email protected]>
Signed-off-by: Anuradha Karuppiah <[email protected]>
@AnuradhaKaruppiah
Copy link
Contributor

/ok to test 6c96605

@AnuradhaKaruppiah
Copy link
Contributor

/ok to test 9a30d36

Signed-off-by: Anuradha Karuppiah <[email protected]>
@AnuradhaKaruppiah
Copy link
Contributor

/ok to test a958860

Signed-off-by: Anuradha Karuppiah <[email protected]>
@AnuradhaKaruppiah
Copy link
Contributor

/ok to test 9c76263

@AnuradhaKaruppiah
Copy link
Contributor

/ok to test 6bcf300

@AnuradhaKaruppiah
Copy link
Contributor

/ok to test 0c30da3

@AnuradhaKaruppiah
Copy link
Contributor

/ok to test 0138b4c

@AnuradhaKaruppiah
Copy link
Contributor

/ok to test 060b91d

@AnuradhaKaruppiah
Copy link
Contributor

/ok to test c8e5775

@AnuradhaKaruppiah
Copy link
Contributor

/ok to test 5c010c3

@AnuradhaKaruppiah
Copy link
Contributor

/ok to test 3191a8d

@AnuradhaKaruppiah
Copy link
Contributor

/merge

@AnuradhaKaruppiah AnuradhaKaruppiah dismissed dnandakumar-nv’s stale review May 5, 2025 23:46

Reviewer unavailable

@rapids-bot rapids-bot bot merged commit 9677506 into NVIDIA:develop May 5, 2025
10 checks passed
yczhang-nv pushed a commit to yczhang-nv/NeMo-Agent-Toolkit that referenced this pull request May 8, 2025
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]>
yczhang-nv pushed a commit to yczhang-nv/NeMo-Agent-Toolkit that referenced this pull request May 9, 2025
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]>
ericevans-nv pushed a commit to ericevans-nv/agent-iq that referenced this pull request Jun 3, 2025
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]>
ericevans-nv pushed a commit to ericevans-nv/agent-iq that referenced this pull request Jun 3, 2025
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]>
AnuradhaKaruppiah pushed a commit to AnuradhaKaruppiah/oss-agentiq that referenced this pull request Aug 4, 2025
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
scheckerNV pushed a commit to scheckerNV/aiq-factory-reset that referenced this pull request Aug 22, 2025
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
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

feature request New feature or request non-breaking Non-breaking change

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants