Knowledge Retrieval - Retrieve
KnowledgeAgent retrieves relevant data from backing stores.
POST {endpoint}/agents('{agentName}')/retrieve?api-version=2025-05-01-preview
URI Parameters
Name | In | Required | Type | Description |
---|---|---|---|---|
agent
|
path | True |
string |
The name of the agent. |
endpoint
|
path | True |
string (url) |
The endpoint URL of the search service. |
api-version
|
query | True |
string |
Client Api Version. |
Request Header
Name | Required | Type | Description |
---|---|---|---|
x-ms-client-request-id |
string (uuid) |
The tracking ID sent with the request to help with debugging. |
|
x-ms-query-source-authorization |
string |
Token identifying the user for which the query is being executed. This token is used to enforce security restrictions on documents. |
Request Body
Name | Required | Type | Description |
---|---|---|---|
messages | True |
The natural language message style object. |
|
targetIndexParams |
Responses
Name | Type | Description |
---|---|---|
200 OK |
The retrieval response is successfully returned. |
|
Other Status Codes |
Error response. |
Examples
KnowledgeAgentRetrieve
Sample request
POST https://previewexampleservice.search.windows.net/agents('agent-preview-test')/retrieve?api-version=2025-05-01-preview
{
"messages": [
{
"role": "user",
"content": [
{
"text": "hello world",
"type": "text"
}
]
}
],
"targetIndexParams": [
{
"indexName": "preview-test",
"filterAddOn": "foo eq bar",
"maxDocsForReranker": 100,
"rerankerThreshold": 2.5,
"includeReferenceSourceData": true
}
]
}
Sample response
{
"response": [
{
"role": "assistant",
"content": [
{
"type": "text",
"text": "[{...}]"
}
]
}
],
"activity": [
{
"type": "ModelQueryPlanning",
"id": 0,
"inputTokens": 11,
"outputTokens": 22
},
{
"type": "AzureSearchQuery",
"id": 1,
"targetIndex": "preview-test",
"query": {
"search": "hello world",
"filter": "foo eq bar"
},
"queryTime": "2025-01-01T00:08:45.045Z",
"count": 2,
"elapsedMs": 1234
},
{
"type": "AzureSearchQuery",
"id": 2,
"targetIndex": "preview-test",
"query": {
"search": "hello world two",
"filter": "foo eq bar"
},
"queryTime": "2025-01-01T00:08:45.045Z",
"count": 2,
"elapsedMs": 1234
},
{
"type": "AzureSearchSemanticRanker",
"id": 3,
"inputTokens": 74
}
],
"references": [
{
"type": "AzureSearchDoc",
"id": "83dd7d40",
"activitySource": 1,
"docKey": "myDocKey1",
"sourceData": {
"id": "myDocKey1",
"title": "high_doc",
"content": "hello world"
}
},
{
"type": "AzureSearchDoc",
"id": "83dd7d41",
"activitySource": 1,
"docKey": "myDocKey2",
"sourceData": {
"id": "myDocKey2",
"title": "low_doc",
"content": "goodbye world"
}
}
]
}
Definitions
Name | Description |
---|---|
Error |
The resource management error additional info. |
Error |
The error detail. |
Error |
Error response |
Image | |
Knowledge |
Represents an Azure Search document reference. |
Knowledge |
|
Knowledge |
The natural language message style object. |
Knowledge |
The type of message content. |
Knowledge |
Text message type. |
Knowledge |
Text message type. |
Knowledge |
Represents an LLM query planning activity record. |
Knowledge |
The input contract for the retrieval request. |
Knowledge |
The output contract for the retrieval response. |
Knowledge |
Represents a retrieval activity record. |
Knowledge |
Represents a semantic ranker activity record. |
Query |
The query details for the retrieval activity. |
ErrorAdditionalInfo
The resource management error additional info.
Name | Type | Description |
---|---|---|
info |
object |
The additional info. |
type |
string |
The additional info type. |
ErrorDetail
The error detail.
Name | Type | Description |
---|---|---|
additionalInfo |
The error additional info. |
|
code |
string |
The error code. |
details |
The error details. |
|
message |
string |
The error message. |
target |
string |
The error target. |
ErrorResponse
Error response
Name | Type | Description |
---|---|---|
error |
The error object. |
Image
Name | Type | Description |
---|---|---|
url |
string |
The url of the image. |
KnowledgeAgentAzureSearchDocReference
Represents an Azure Search document reference.
Name | Type | Description |
---|---|---|
activitySource |
integer (int32) |
The source activity ID for the reference. |
docKey |
string |
The document key for the reference. |
id |
string |
The ID of the reference. |
sourceData |
object |
|
type |
string:
Azure |
The type of the reference. |
KnowledgeAgentIndexParams
Name | Type | Description |
---|---|---|
filterAddOn |
string |
A filter condition applied to the index (e.g., 'State eq VA'). |
includeReferenceSourceData |
boolean |
Indicates whether reference source data should be included. |
indexName |
string |
The name of the index the params apply to. |
maxDocsForReranker |
integer (int32) |
Limits the number of documents considered for ranking. |
rerankerThreshold |
number (float) minimum: 0maximum: 4 |
A threshold for reranking results (range: 0-4). |
KnowledgeAgentMessage
The natural language message style object.
Name | Type | Description |
---|---|---|
content | KnowledgeAgentMessageContent[]: |
Specifies the type of the message content. |
role |
string |
The role of the tool response. |
KnowledgeAgentMessageContentType
The type of message content.
Value | Description |
---|---|
text |
Text message content kind. |
image |
Image message content kind. |
KnowledgeAgentMessageImageContent
Text message type.
Name | Type | Description |
---|---|---|
image | ||
type |
string:
image |
The type of the message |
KnowledgeAgentMessageTextContent
Text message type.
Name | Type | Description |
---|---|---|
text |
string |
|
type |
string:
text |
The type of the message |
KnowledgeAgentModelQueryPlanningActivityRecord
Represents an LLM query planning activity record.
Name | Type | Description |
---|---|---|
elapsedMs |
integer (int32) |
The elapsed time in milliseconds for the model activity. |
id |
integer (int32) |
The ID of the activity record. |
inputTokens |
integer (int32) |
The number of input tokens for the LLM query planning activity. |
outputTokens |
integer (int32) |
The number of output tokens for the LLM query planning activity. |
type |
string:
Model |
The type of the activity record. |
KnowledgeAgentRetrievalRequest
The input contract for the retrieval request.
Name | Type | Description |
---|---|---|
messages |
The natural language message style object. |
|
targetIndexParams |
KnowledgeAgentRetrievalResponse
The output contract for the retrieval response.
Name | Type | Description |
---|---|---|
activity | KnowledgeAgentActivityRecord[]: |
The activity records for tracking progress and billing implications. |
references | KnowledgeAgentReference[]: |
The references for the retrieval data used in the response. |
response |
The natural language message style object. |
KnowledgeAgentSearchActivityRecord
Represents a retrieval activity record.
Name | Type | Description |
---|---|---|
count |
integer (int32) |
The count of documents retrieved. |
elapsedMs |
integer (int32) |
The elapsed time in milliseconds for the retrieval activity. |
id |
integer (int32) |
The ID of the activity record. |
query |
The query details for the retrieval activity. |
|
queryTime |
string (date-time) |
The query time for this retrieval activity. |
targetIndex |
string |
The target index for the retrieval activity. |
type |
string:
Azure |
The type of the activity record. |
KnowledgeAgentSemanticRankerActivityRecord
Represents a semantic ranker activity record.
Name | Type | Description |
---|---|---|
elapsedMs |
integer (int32) |
The elapsed time in milliseconds for the model activity. |
id |
integer (int32) |
The ID of the activity record. |
inputTokens |
integer (int32) |
The number of input tokens for the semantic ranker activity. |
type |
string:
Azure |
The type of the activity record. |
Query
The query details for the retrieval activity.
Name | Type | Description |
---|---|---|
filter |
string |
The filter string. |
search |
string |
The search string. |