Overview

The Memory Export feature allows you to create structured exports of memories using customizable Pydantic schemas. This process enables you to transform your stored memories into specific data formats that match your needs. You can apply various filters to narrow down which memories to export and define exactly how the data should be structured.

Creating a Memory Export

To create a memory export, you’ll need to:

  1. Define your schema structure
  2. Submit an export job
  3. Retrieve the exported data

Define Schema

Here’s an example schema for extracting professional profile information:

{
    "$defs": {
        "EducationLevel": {
            "enum": ["high_school", "bachelors", "masters"],
            "title": "EducationLevel",
            "type": "string"
        },
        "EmploymentStatus": {
            "enum": ["full_time", "part_time", "student"],
            "title": "EmploymentStatus", 
            "type": "string"
        }
    },
    "properties": {
        "full_name": {
            "anyOf": [
                {
                    "maxLength": 100,
                    "minLength": 2,
                    "type": "string"
                },
                {
                    "type": "null"
                }
            ],
            "default": null,
            "description": "The professional's full name",
            "title": "Full Name"
        },
        "current_role": {
            "anyOf": [
                {
                    "type": "string"
                },
                {
                    "type": "null"
                }
            ],
            "default": null,
            "description": "Current job title or role",
            "title": "Current Role"
        }
    },
    "title": "ProfessionalProfile",
    "type": "object"
}

Submit Export Job

Retrieve Export

Once the export job is complete, you can retrieve the structured data:

Available Filters

You can apply various filters to customize which memories are included in the export:

  • user_id: Filter memories by specific user
  • agent_id: Filter memories by specific agent
  • run_id: Filter memories by specific run
  • session_id: Filter memories by specific session

The export process may take some time to complete, especially when dealing with a large number of memories or complex schemas.

If you have any questions, please feel free to reach out to us using one of the following methods: