-
Notifications
You must be signed in to change notification settings - Fork 252
added agent pattern #2394
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
base: main
Are you sure you want to change the base?
added agent pattern #2394
Conversation
@@ -59,7 +59,8 @@ Semantic conventions for individual GenAI systems and frameworks MAY specify dif | |||
| [`gen_ai.agent.name`](/docs/registry/attributes/gen-ai.md) | string | Human-readable name of the GenAI agent provided by the application. | `Math Tutor`; `Fiction Writer` | `Conditionally Required` If provided by the application. |  | | |||
| [`gen_ai.request.model`](/docs/registry/attributes/gen-ai.md) | string | The name of the GenAI model a request is being made to. [4] | `gpt-4` | `Conditionally Required` If available. |  | | |||
| [`server.port`](/docs/registry/attributes/server.md) | int | GenAI server port. [5] | `80`; `8080`; `443` | `Conditionally Required` If `server.address` is set. |  | | |||
| [`server.address`](/docs/registry/attributes/server.md) | string | GenAI server address. [6] | `example.com`; `10.1.2.80`; `/tmp/my.sock` | `Recommended` |  | | |||
| [`gen_ai.agent.pattern`](/docs/registry/attributes/gen-ai.md) | string | The agentic pattern or application style used by the GenAI agent. [6] | `RAG`; `ReAct`; `CoT`; `ToT`; `MultiAgent`; `PlanAndExecute` | `Recommended` |  | |
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.
I have a bunch of questions:
- who is going to use it and how? There are so many variations of RAG and it can be used within other scenarios, how we're going to classify things that follow multiple patterns
- who is going to set it and how? It does not seem like generic framework instrumentation can set it - there is nothing in the APIs that it maps to. It doesn't seem like individual agents would know if they are used in the multi-agent scenarios.
- why is this scoped to agents? RAG is a pattern used in general LLM scenarios,
- is there a registry of patterns and who maintains it? Are there descriptions of them?
General feedback - we should try to ground attributes to something well understood that has clear use-cases. It could be useful to bring it up for discussion on the SIG call.
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.
@PRATIBHA-Moogi can you help comment here? Thanks!
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.
@lmolkova the Agent Style or pattern will help APMs to create custom views to a resources group like VectorDB by means of filtering Agents by used pattern. Currently we can't filter metrics views on VectorDB on Agent basis. To have observability on VectorDB usage and performance when multiple agents using VectorDB as their knowledge source, this attribute is necessary to have which convey which agent is using VectorDB resources.
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.
Some of the known patterns one can apply but also this attribute can use user-entered value for creation of custom dashboards view.
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 the new attribute "gen_ai.agent.pattern" to capture the underlying agentic pattern used by GenAI agents. The update spans several files, adding the new attribute to the YAML models, updating the registry documentation, and adjusting reference numbers in the GenAI documentation.
Reviewed Changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated no comments.
Show a summary per file
File | Description |
---|---|
model/gen-ai/spans.yaml | Adds "gen_ai.agent.pattern" with recommended requirement level. |
model/gen-ai/registry.yaml | Registers the new attribute with stability, type, and examples. |
docs/registry/attributes/gen-ai.md | Introduces the attribute details and updates reference numbering. |
docs/gen-ai/gen-ai-agent-spans.md | Adds the attribute in the span documentation and adjusts numbering. |
.chloggen/2373.yaml | Changelog entry documenting the added agent pattern attribute. |
Comments suppressed due to low confidence (2)
docs/registry/attributes/gen-ai.md:20
- Verify that the reference numbering and associated notes in the documentation remain consistent after adding the new attribute.
| <a id="gen-ai-agent-pattern" href="#gen-ai-agent-pattern">`gen_ai.agent.pattern`</a> | string | The agentic pattern or application style used by the GenAI agent. [1] | `RAG`; `ReAct`; `CoT`; `ToT`; `MultiAgent`; `PlanAndExecute` |  |
docs/gen-ai/gen-ai-agent-spans.md:87
- Please review the updated reference numbers to ensure they align with the overall documentation conventions after incorporating the new attribute.
**[6] `gen_ai.agent.pattern`:** This attribute captures the underlying agentic pattern or architectural style employed by the GenAI agent. Common patterns include but are not limited to: Retrieval-Augmented Generation (RAG), ReAct (Reasoning and Acting), Chain-of-Thought (CoT), Tree-of-Thoughts (ToT), and other established agentic application patterns. This information is valuable for debugging and performance analysis as different patterns may require different observability approaches and optimizations.
Fixes #2373
Changes
Please provide a brief description of the changes here.
Note: if the PR is touching an area that is not listed in the existing areas, or the area does not have sufficient domain experts coverage, the PR might be tagged as experts needed and move slowly until experts are identified.
Merge requirement checklist
[chore]