AgentsforBedrockRuntime / Client / retrieve
retrieve¶
- AgentsforBedrockRuntime.Client.retrieve(**kwargs)¶
Queries a knowledge base and retrieves information from it.
See also: AWS API Documentation
Request Syntax
response = client.retrieve( guardrailConfiguration={ 'guardrailId': 'string', 'guardrailVersion': 'string' }, knowledgeBaseId='string', nextToken='string', retrievalConfiguration={ 'vectorSearchConfiguration': { 'filter': { 'andAll': [ {'... recursive ...'}, ], 'equals': { 'key': 'string', 'value': {...}|[...]|123|123.4|'string'|True|None }, 'greaterThan': { 'key': 'string', 'value': {...}|[...]|123|123.4|'string'|True|None }, 'greaterThanOrEquals': { 'key': 'string', 'value': {...}|[...]|123|123.4|'string'|True|None }, 'in': { 'key': 'string', 'value': {...}|[...]|123|123.4|'string'|True|None }, 'lessThan': { 'key': 'string', 'value': {...}|[...]|123|123.4|'string'|True|None }, 'lessThanOrEquals': { 'key': 'string', 'value': {...}|[...]|123|123.4|'string'|True|None }, 'listContains': { 'key': 'string', 'value': {...}|[...]|123|123.4|'string'|True|None }, 'notEquals': { 'key': 'string', 'value': {...}|[...]|123|123.4|'string'|True|None }, 'notIn': { 'key': 'string', 'value': {...}|[...]|123|123.4|'string'|True|None }, 'orAll': [ {'... recursive ...'}, ], 'startsWith': { 'key': 'string', 'value': {...}|[...]|123|123.4|'string'|True|None }, 'stringContains': { 'key': 'string', 'value': {...}|[...]|123|123.4|'string'|True|None } }, 'implicitFilterConfiguration': { 'metadataAttributes': [ { 'description': 'string', 'key': 'string', 'type': 'STRING'|'NUMBER'|'BOOLEAN'|'STRING_LIST' }, ], 'modelArn': 'string' }, 'numberOfResults': 123, 'overrideSearchType': 'HYBRID'|'SEMANTIC', 'rerankingConfiguration': { 'bedrockRerankingConfiguration': { 'metadataConfiguration': { 'selectionMode': 'SELECTIVE'|'ALL', 'selectiveModeConfiguration': { 'fieldsToExclude': [ { 'fieldName': 'string' }, ], 'fieldsToInclude': [ { 'fieldName': 'string' }, ] } }, 'modelConfiguration': { 'additionalModelRequestFields': { 'string': {...}|[...]|123|123.4|'string'|True|None }, 'modelArn': 'string' }, 'numberOfRerankedResults': 123 }, 'type': 'BEDROCK_RERANKING_MODEL' } } }, retrievalQuery={ 'text': 'string' } )
- Parameters:
guardrailConfiguration (dict) –
Guardrail settings.
guardrailId (string) – [REQUIRED]
The unique identifier for the guardrail.
guardrailVersion (string) – [REQUIRED]
The version of the guardrail.
knowledgeBaseId (string) –
[REQUIRED]
The unique identifier of the knowledge base to query.
nextToken (string) – If there are more results than can fit in the response, the response returns a
nextToken. Use this token in thenextTokenfield of another request to retrieve the next batch of results.retrievalConfiguration (dict) –
Contains configurations for the knowledge base query and retrieval process. For more information, see Query configurations.
vectorSearchConfiguration (dict) – [REQUIRED]
Contains details about how the results from the vector search should be returned. For more information, see Query configurations.
filter (dict) –
Specifies the filters to use on the metadata in the knowledge base data sources before returning results. For more information, see Query configurations.
Note
This is a Tagged Union structure. Only one of the following top level keys can be set:
andAll,equals,greaterThan,greaterThanOrEquals,in,lessThan,lessThanOrEquals,listContains,notEquals,notIn,orAll,startsWith,stringContains.andAll (list) –
Knowledge base data sources are returned if their metadata attributes fulfill all the filter conditions inside this list.
(dict) –
Specifies the filters to use on the metadata attributes in the knowledge base data sources before returning results. For more information, see Query configurations. See the examples below to see how to use these filters.
This data type is used in the following API operations:
Retrieve request – in the
filterfieldRetrieveAndGenerate request – in the
filterfield
Note
This is a Tagged Union structure. Only one of the following top level keys can be set:
andAll,equals,greaterThan,greaterThanOrEquals,in,lessThan,lessThanOrEquals,listContains,notEquals,notIn,orAll,startsWith,stringContains.
equals (dict) –
Knowledge base data sources are returned if they contain a metadata attribute whose name matches the
keyand whose value matches thevaluein this object.The following example would return data sources with an
animalattribute whose value iscat:"equals": { "key": "animal", "value": "cat" }key (string) – [REQUIRED]
The name that the metadata attribute must match.
value (document) – [REQUIRED]
The value to whcih to compare the value of the metadata attribute.
greaterThan (dict) –
Knowledge base data sources are returned if they contain a metadata attribute whose name matches the
keyand whose value is greater than thevaluein this object.The following example would return data sources with an
yearattribute whose value is greater than1989:"greaterThan": { "key": "year", "value": 1989 }key (string) – [REQUIRED]
The name that the metadata attribute must match.
value (document) – [REQUIRED]
The value to whcih to compare the value of the metadata attribute.
greaterThanOrEquals (dict) –
Knowledge base data sources are returned if they contain a metadata attribute whose name matches the
keyand whose value is greater than or equal to thevaluein this object.The following example would return data sources with an
yearattribute whose value is greater than or equal to1989:"greaterThanOrEquals": { "key": "year", "value": 1989 }key (string) – [REQUIRED]
The name that the metadata attribute must match.
value (document) – [REQUIRED]
The value to whcih to compare the value of the metadata attribute.
in (dict) –
Knowledge base data sources are returned if they contain a metadata attribute whose name matches the
keyand whose value is in the list specified in thevaluein this object.The following example would return data sources with an
animalattribute that is eithercatordog:"in": { "key": "animal", "value": ["cat", "dog"] }key (string) – [REQUIRED]
The name that the metadata attribute must match.
value (document) – [REQUIRED]
The value to whcih to compare the value of the metadata attribute.
lessThan (dict) –
Knowledge base data sources are returned if they contain a metadata attribute whose name matches the
keyand whose value is less than thevaluein this object.The following example would return data sources with an
yearattribute whose value is less than to1989."lessThan": { "key": "year", "value": 1989 }key (string) – [REQUIRED]
The name that the metadata attribute must match.
value (document) – [REQUIRED]
The value to whcih to compare the value of the metadata attribute.
lessThanOrEquals (dict) –
Knowledge base data sources are returned if they contain a metadata attribute whose name matches the
keyand whose value is less than or equal to thevaluein this object.The following example would return data sources with an
yearattribute whose value is less than or equal to1989."lessThanOrEquals": { "key": "year", "value": 1989 }key (string) – [REQUIRED]
The name that the metadata attribute must match.
value (document) – [REQUIRED]
The value to whcih to compare the value of the metadata attribute.
listContains (dict) –
Knowledge base data sources are returned if they contain a metadata attribute whose name matches the
keyand whose value is a list that contains thevalueas one of its members.The following example would return data sources with an
animalsattribute that is a list containing acatmember (for example["dog", "cat"])."listContains": { "key": "animals", "value": "cat" }key (string) – [REQUIRED]
The name that the metadata attribute must match.
value (document) – [REQUIRED]
The value to whcih to compare the value of the metadata attribute.
notEquals (dict) –
Knowledge base data sources are returned when:
It contains a metadata attribute whose name matches the
keyand whose value doesn’t match thevaluein this object.The key is not present in the document.
The following example would return data sources that don’t contain an
animalattribute whose value iscat."notEquals": { "key": "animal", "value": "cat" }key (string) – [REQUIRED]
The name that the metadata attribute must match.
value (document) – [REQUIRED]
The value to whcih to compare the value of the metadata attribute.
notIn (dict) –
Knowledge base data sources are returned if they contain a metadata attribute whose name matches the
keyand whose value isn’t in the list specified in thevaluein this object.The following example would return data sources whose
animalattribute is neithercatnordog."notIn": { "key": "animal", "value": ["cat", "dog"] }key (string) – [REQUIRED]
The name that the metadata attribute must match.
value (document) – [REQUIRED]
The value to whcih to compare the value of the metadata attribute.
orAll (list) –
Knowledge base data sources are returned if their metadata attributes fulfill at least one of the filter conditions inside this list.
(dict) –
Specifies the filters to use on the metadata attributes in the knowledge base data sources before returning results. For more information, see Query configurations. See the examples below to see how to use these filters.
This data type is used in the following API operations:
Retrieve request – in the
filterfieldRetrieveAndGenerate request – in the
filterfield
Note
This is a Tagged Union structure. Only one of the following top level keys can be set:
andAll,equals,greaterThan,greaterThanOrEquals,in,lessThan,lessThanOrEquals,listContains,notEquals,notIn,orAll,startsWith,stringContains.
startsWith (dict) –
Knowledge base data sources are returned if they contain a metadata attribute whose name matches the
keyand whose value starts with thevaluein this object. This filter is currently only supported for Amazon OpenSearch Serverless vector stores.The following example would return data sources with an
animalattribute starts withca(for example,catorcamel)."startsWith": { "key": "animal", "value": "ca" }key (string) – [REQUIRED]
The name that the metadata attribute must match.
value (document) – [REQUIRED]
The value to whcih to compare the value of the metadata attribute.
stringContains (dict) –
Knowledge base data sources are returned if they contain a metadata attribute whose name matches the
keyand whose value is one of the following:A string that contains the
valueas a substring. The following example would return data sources with ananimalattribute that contains the substringat(for examplecat)."stringContains": { "key": "animal", "value": "at" }A list with a member that contains the
valueas a substring. The following example would return data sources with ananimalsattribute that is a list containing a member that contains the substringat(for example["dog", "cat"])."stringContains": { "key": "animals", "value": "at" }
key (string) – [REQUIRED]
The name that the metadata attribute must match.
value (document) – [REQUIRED]
The value to whcih to compare the value of the metadata attribute.
implicitFilterConfiguration (dict) –
Settings for implicit filtering.
metadataAttributes (list) – [REQUIRED]
Metadata that can be used in a filter.
(dict) –
Details about a metadata attribute.
description (string) – [REQUIRED]
The attribute’s description.
key (string) – [REQUIRED]
The attribute’s key.
type (string) – [REQUIRED]
The attribute’s type.
modelArn (string) – [REQUIRED]
The model that generates the filter.
numberOfResults (integer) –
The number of source chunks to retrieve.
overrideSearchType (string) –
By default, Amazon Bedrock decides a search strategy for you. If you’re using an Amazon OpenSearch Serverless vector store that contains a filterable text field, you can specify whether to query the knowledge base with a
HYBRIDsearch using both vector embeddings and raw text, orSEMANTICsearch using only vector embeddings. For other vector store configurations, onlySEMANTICsearch is available. For more information, see Test a knowledge base.rerankingConfiguration (dict) –
Contains configurations for reranking the retrieved results. For more information, see Improve the relevance of query responses with a reranker model.
bedrockRerankingConfiguration (dict) –
Contains configurations for an Amazon Bedrock reranker model.
metadataConfiguration (dict) –
Contains configurations for the metadata to use in reranking.
selectionMode (string) – [REQUIRED]
Specifies whether to consider all metadata when reranking, or only the metadata that you select. If you specify
SELECTIVE, include theselectiveModeConfigurationfield.selectiveModeConfiguration (dict) –
Contains configurations for the metadata fields to include or exclude when considering reranking.
Note
This is a Tagged Union structure. Only one of the following top level keys can be set:
fieldsToExclude,fieldsToInclude.fieldsToExclude (list) –
An array of objects, each of which specifies a metadata field to exclude from consideration when reranking.
(dict) –
Contains information for a metadata field to include in or exclude from consideration when reranking.
fieldName (string) – [REQUIRED]
The name of a metadata field to include in or exclude from consideration when reranking.
fieldsToInclude (list) –
An array of objects, each of which specifies a metadata field to include in consideration when reranking. The remaining metadata fields are ignored.
(dict) –
Contains information for a metadata field to include in or exclude from consideration when reranking.
fieldName (string) – [REQUIRED]
The name of a metadata field to include in or exclude from consideration when reranking.
modelConfiguration (dict) – [REQUIRED]
Contains configurations for the reranker model.
additionalModelRequestFields (dict) –
A JSON object whose keys are request fields for the model and whose values are values for those fields.
(string) –
(document) –
modelArn (string) – [REQUIRED]
The ARN of the reranker model to use.
numberOfRerankedResults (integer) –
The number of results to return after reranking.
type (string) – [REQUIRED]
The type of reranker model.
retrievalQuery (dict) –
[REQUIRED]
Contains the query to send the knowledge base.
text (string) – [REQUIRED]
The text of the query made to the knowledge base.
- Return type:
dict
- Returns:
Response Syntax
{ 'guardrailAction': 'INTERVENED'|'NONE', 'nextToken': 'string', 'retrievalResults': [ { 'content': { 'byteContent': 'string', 'row': [ { 'columnName': 'string', 'columnValue': 'string', 'type': 'BLOB'|'BOOLEAN'|'DOUBLE'|'NULL'|'LONG'|'STRING' }, ], 'text': 'string', 'type': 'TEXT'|'IMAGE'|'ROW' }, 'location': { 'confluenceLocation': { 'url': 'string' }, 'customDocumentLocation': { 'id': 'string' }, 'kendraDocumentLocation': { 'uri': 'string' }, 's3Location': { 'uri': 'string' }, 'salesforceLocation': { 'url': 'string' }, 'sharePointLocation': { 'url': 'string' }, 'sqlLocation': { 'query': 'string' }, 'type': 'S3'|'WEB'|'CONFLUENCE'|'SALESFORCE'|'SHAREPOINT'|'CUSTOM'|'KENDRA'|'SQL', 'webLocation': { 'url': 'string' } }, 'metadata': { 'string': {...}|[...]|123|123.4|'string'|True|None }, 'score': 123.0 }, ] }
Response Structure
(dict) –
guardrailAction (string) –
Specifies if there is a guardrail intervention in the response.
nextToken (string) –
If there are more results than can fit in the response, the response returns a
nextToken. Use this token in thenextTokenfield of another request to retrieve the next batch of results.retrievalResults (list) –
A list of results from querying the knowledge base.
(dict) –
Details about a result from querying the knowledge base.
This data type is used in the following API operations:
Retrieve response – in the
retrievalResultsfield
content (dict) –
Contains information about the content of the chunk.
byteContent (string) –
A data URI with base64-encoded content from the data source. The URI is in the following format: returned in the following format:
data:image/jpeg;base64,${base64-encoded string}.row (list) –
Specifies information about the rows with the cells to return in retrieval.
(dict) –
Contains information about a column with a cell to return in retrieval.
columnName (string) –
The name of the column.
columnValue (string) –
The value in the column.
type (string) –
The data type of the value.
text (string) –
The cited text from the data source.
type (string) –
The type of content in the retrieval result.
location (dict) –
Contains information about the location of the data source.
confluenceLocation (dict) –
The Confluence data source location.
url (string) –
The Confluence host URL for the data source location.
customDocumentLocation (dict) –
Specifies the location of a document in a custom data source.
id (string) –
The ID of the document.
kendraDocumentLocation (dict) –
The location of a document in Amazon Kendra.
uri (string) –
The document’s uri.
s3Location (dict) –
The S3 data source location.
uri (string) –
The S3 URI for the data source location.
salesforceLocation (dict) –
The Salesforce data source location.
url (string) –
The Salesforce host URL for the data source location.
sharePointLocation (dict) –
The SharePoint data source location.
url (string) –
The SharePoint site URL for the data source location.
sqlLocation (dict) –
Specifies information about the SQL query used to retrieve the result.
query (string) –
The SQL query used to retrieve the result.
type (string) –
The type of data source location.
webLocation (dict) –
The web URL/URLs data source location.
url (string) –
The web URL/URLs for the data source location.
metadata (dict) –
Contains metadata attributes and their values for the file in the data source. For more information, see Metadata and filtering.
(string) –
(document) –
score (float) –
The level of relevance of the result to the query.
Exceptions
AgentsforBedrockRuntime.Client.exceptions.ResourceNotFoundExceptionAgentsforBedrockRuntime.Client.exceptions.ConflictExceptionAgentsforBedrockRuntime.Client.exceptions.ValidationExceptionAgentsforBedrockRuntime.Client.exceptions.InternalServerExceptionAgentsforBedrockRuntime.Client.exceptions.DependencyFailedExceptionAgentsforBedrockRuntime.Client.exceptions.BadGatewayExceptionAgentsforBedrockRuntime.Client.exceptions.ThrottlingExceptionAgentsforBedrockRuntime.Client.exceptions.AccessDeniedExceptionAgentsforBedrockRuntime.Client.exceptions.ServiceQuotaExceededException