Skip to content

Python SDK azure-ai-projects when calling OpenAPI service doesn't identify itself #43586

@plasne

Description

@plasne

Is your feature request related to a problem? Please describe.
The parameters an agent uses when calling OpenAPI services is not deterministic. However, if the request included a header of the AGENT_ID or AGENT_NAME then we could detect that in the OpenAPI service and constrain the request.

For example, we built a retrieval service that is used for experimentation. When we are doing an experiment to determine the right value for a hyper-parameter like TOP_K or THRESHOLD, we need what the agent sends to be deterministic so we can properly evaluate the performance.

Describe the solution you'd like
I would like a request header to contain the AGENT_ID.
If for some reason that couldn't work, a compromise could be when using Managed Identity, for the token payload to contain an AGENT_ID.

Describe alternatives you've considered
We solved our problem by introducing codes in our OpenAPI service. The agent is required to send a code with every request, something like "banana" (a term that the agent wouldn't associate with any particular configuration). We then use a parameter set associated with that code. Since the code isn't a term loaded with any meaning and we don't give the agent an option, a well crafted prompt can obtain 100% compliance sending the code.

Additional context
I am a Microsoft employee in ISE if you need to reach me: pelasne.

Metadata

Metadata

Assignees

No one assigned

    Labels

    AI ProjectsMachine LearningService AttentionWorkflow: This issue is responsible by Azure service team.customer-reportedIssues that are reported by GitHub users external to the Azure organization.needs-team-attentionWorkflow: This issue needs attention from Azure service team or SDK teamquestionThe issue doesn't require a change to the product in order to be resolved. Most issues start as that

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions