BedrockAgentCore / Client / retrieve_memory_records

retrieve_memory_records

BedrockAgentCore.Client.retrieve_memory_records(**kwargs)

Searches for and retrieves memory records from an AgentCore Memory resource based on specified search criteria. We recommend using pagination to ensure that the operation returns quickly and successfully.

To use this operation, you must have the bedrock-agentcore:RetrieveMemoryRecords permission.

See also: AWS API Documentation

Request Syntax

response = client.retrieve_memory_records(
    memoryId='string',
    namespace='string',
    searchCriteria={
        'searchQuery': 'string',
        'memoryStrategyId': 'string',
        'topK': 123,
        'metadataFilters': [
            {
                'left': {
                    'metadataKey': 'string'
                },
                'operator': 'EQUALS_TO'|'EXISTS'|'NOT_EXISTS',
                'right': {
                    'metadataValue': {
                        'stringValue': 'string'
                    }
                }
            },
        ]
    },
    nextToken='string',
    maxResults=123
)
Parameters:
  • memoryId (string) –

    [REQUIRED]

    The identifier of the AgentCore Memory resource from which to retrieve memory records.

  • namespace (string) –

    [REQUIRED]

    The namespace prefix to filter memory records by. Searches for memory records in namespaces that start with the provided prefix.

  • searchCriteria (dict) –

    [REQUIRED]

    The search criteria to use for finding relevant memory records. This includes the search query, memory strategy ID, and other search parameters.

    • searchQuery (string) – [REQUIRED]

      The search query to use for finding relevant memory records.

    • memoryStrategyId (string) –

      The memory strategy identifier to filter memory records by.

    • topK (integer) –

      The maximum number of top-scoring memory records to return. This value is used for semantic search ranking.

    • metadataFilters (list) –

      Filters to apply to metadata associated with a memory.

      • (dict) –

        Filters to apply to metadata associated with a memory. Specify the metadata key and value in the left and right fields and use the operator field to define the relationship to match.

        • left (dict) – [REQUIRED]

          Left expression of the event metadata filter.

          Note

          This is a Tagged Union structure. Only one of the following top level keys can be set: metadataKey.

          • metadataKey (string) –

            Key associated with the metadata in an event.

        • operator (string) – [REQUIRED]

          The relationship between the metadata key and value to match when applying the metadata filter.

        • right (dict) –

          Right expression of the ``eventMetadata``filter.

          Note

          This is a Tagged Union structure. Only one of the following top level keys can be set: metadataValue.

          • metadataValue (dict) –

            Value associated with the key in eventMetadata.

            Note

            This is a Tagged Union structure. Only one of the following top level keys can be set: stringValue.

            • stringValue (string) –

              Value associated with the eventMetadata key.

  • nextToken (string) – The token for the next set of results. Use the value returned in the previous response in the next request to retrieve the next set of results.

  • maxResults (integer) – The maximum number of results to return in a single call. The default value is 20.

Return type:

dict

Returns:

Response Syntax

{
    'memoryRecordSummaries': [
        {
            'memoryRecordId': 'string',
            'content': {
                'text': 'string'
            },
            'memoryStrategyId': 'string',
            'namespaces': [
                'string',
            ],
            'createdAt': datetime(2015, 1, 1),
            'score': 123.0,
            'metadata': {
                'string': {
                    'stringValue': 'string'
                }
            }
        },
    ],
    'nextToken': 'string'
}

Response Structure

  • (dict) –

    • memoryRecordSummaries (list) –

      The list of memory record summaries that match the search criteria, ordered by relevance.

      • (dict) –

        Contains summary information about a memory record.

        • memoryRecordId (string) –

          The unique identifier of the memory record.

        • content (dict) –

          The content of the memory record.

          Note

          This is a Tagged Union structure. Only one of the following top level keys will be set: text. If a client receives an unknown member it will set SDK_UNKNOWN_MEMBER as the top level key, which maps to the name or tag of the unknown member. The structure of SDK_UNKNOWN_MEMBER is as follows:

          'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
          
          • text (string) –

            The text content of the memory record.

        • memoryStrategyId (string) –

          The identifier of the memory strategy associated with this record.

        • namespaces (list) –

          The namespaces associated with this memory record.

          • (string) –

        • createdAt (datetime) –

          The timestamp when the memory record was created.

        • score (float) –

          The relevance score of the memory record when returned as part of a search result. Higher values indicate greater relevance to the search query.

        • metadata (dict) –

          A map of metadata key-value pairs associated with a memory record.

          • (string) –

            • (dict) –

              Value associated with the eventMetadata key.

              Note

              This is a Tagged Union structure. Only one of the following top level keys will be set: stringValue. If a client receives an unknown member it will set SDK_UNKNOWN_MEMBER as the top level key, which maps to the name or tag of the unknown member. The structure of SDK_UNKNOWN_MEMBER is as follows:

              'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}
              
              • stringValue (string) –

                Value associated with the eventMetadata key.

    • nextToken (string) –

      The token to use in a subsequent request to get the next set of results. This value is null when there are no more results to return.

Exceptions

  • BedrockAgentCore.Client.exceptions.ServiceQuotaExceededException

  • BedrockAgentCore.Client.exceptions.ThrottledException

  • BedrockAgentCore.Client.exceptions.ServiceException

  • BedrockAgentCore.Client.exceptions.AccessDeniedException

  • BedrockAgentCore.Client.exceptions.ValidationException

  • BedrockAgentCore.Client.exceptions.InvalidInputException

  • BedrockAgentCore.Client.exceptions.ResourceNotFoundException