Memory: Retrieve v1

The retrieve memory API endpoint allows you to retrieve similar chunks from an existing memory on Langbase based on a query. This endpoint requires an Org or User API key.


You will need to generate an API key to authenticate your requests. For more information, visit the User/Org API key documentation.


POST/v1/memory/retrieve

Retrieve similar chunks by specifying the query and memory names in the request body.

Headers

  • Name
    Content-Type
    Type
    string
    Required
    Required
    Description

    Request content type. Needs to be application/json.

  • Name
    Authorization
    Type
    string
    Required
    Required
    Description

    Replace <YOUR_API_KEY> with your user/org API key.

Body Parameters

  • Name
    query
    Type
    string
    Required
    Required
    Description

    The search query for retrieving similar chunks.

  • Name
    memory
    Type
    Array<Memory>
    Required
    Required
    Description

    An array of memory objects from which to retrieve similar chunks.

    Memory Object

    interface Memory { name: string; filters?: MemoryFilters; }
    • Name
      name
      Type
      string
      Required
      Required
      Description

      The name of the memory.

    • Name
      filters
      Type
      MemoryFilters
      Description

      Optional array of filters to narrow down the search results.

      MemoryFilters Type

      type FilterOperator = 'Eq' | 'NotEq' | 'In' | 'NotIn' | 'And' | 'Or'; type FilterConnective = 'And' | 'Or'; type FilterValue = string | string[]; type FilterCondition = [string, FilterOperator, FilterValue]; type MemoryFilters = [FilterConnective, MemoryFilters[]] | FilterCondition;

      Filters can be either:

      • A single condition: ["field", "operator", "value"]
      • A nested structure: ["And"|"Or", MemoryFilters]
  • Name
    topK
    Type
    number
    Description

    The number of top similar chunks to return from memory. The default is 20, minimum is 1, and maximum is 100.

Install the SDK

npm i langbase

Environment variables

.env file

LANGBASE_API_KEY="<YOUR_API_KEY>"

Retrieve Similar Chunks

Basic

POST
/v1/memory/retrieve
curl -X POST https://api.langbase.com/v1/memory/retrieve \ -H 'Content-Type: application/json' \ -H "Authorization: Bearer <YOUR_API_KEY>" \ -d '{ "query": "What are the key features?", "memory": [ { "name": "knowledge-base" } ] }'

Response

  • Name
    MemoryRetrieveResponse[]
    Type
    array
    Description

    The array of retrieve response objects returned by the API endpoint.

    MemoryRetrieveResponse

    interface MemoryRetrieveResponse { text: string; similarity: number; meta: Record<string, string>; }
    • Name
      text
      Type
      string
      Description

      Retrieved text segment from memory.

    • Name
      similarity
      Type
      number
      Description

      Similarity score between the query and retrieved text (0-1 range).

    • Name
      meta
      Type
      Record<string, string>
      Description

      Additional metadata associated with the retrieved text.

API Response

[ { "text": "Key features of Langbase include: semantic search capabilities, flexible memory management, and scalable architecture for handling large datasets.", "similarity": 0.92, "meta": { "documentName": "technical-doc.pdf", "category": "features", "section": "overview" } }, { "text": "Our platform offers advanced features like real-time memory updates, custom metadata filtering, and enterprise-grade security.", "similarity": 0.87, "meta": { "documentName": "technical-doc.pdf", "category": "updates", "section": "highlights" } }, { "text": "Platform highlights include AI-powered memory retrieval, customizable embedding models, and advanced filtering capabilities.", "similarity": 0.85, "meta": { "documentName": "technical-doc.pdf", "category": "features", "section": "highlights" } } ]