langchain.js
    Preparing search index...

    Class that manages the memory of a generative agent in LangChain. It extends the BaseMemory class and has methods for adding a memory, formatting memories, getting memories until a token limit is reached, loading memory variables, saving the context of a model run to memory, and clearing memory contents.

    const createNewMemoryRetriever = async () => {
    const vectorStore = new MemoryVectorStore(new OpenAIEmbeddings());
    const retriever = new TimeWeightedVectorStoreRetriever({
    vectorStore,
    otherScoreKeys: ["importance"],
    k: 15,
    });
    return retriever;
    };
    const tommiesMemory = new GenerativeAgentMemory(
    llm,
    await createNewMemoryRetriever(),
    { reflectionThreshold: 8 },
    );
    const summary = await tommiesMemory.getSummary();

    Hierarchy (View Summary)

    Index

    Constructors

    Properties

    addMemoryKey: string = "addMemory"
    llm: BaseLanguageModelInterface
    memoryChain: GenerativeAgentMemoryChain
    mostRecentMemoriesKey: string = "most_recent_memories"
    mostRecentMemoriesTokenKey: string = "recent_memories_token"
    nowKey: string = "now"
    queriesKey: string = "queries"
    reflectionThreshold?: number
    relevantMemoriesKey: string = "relevant_memories"
    relevantMemoriesSimpleKey: string = "relevant_memories_simple"
    verbose: boolean

    Accessors

    • get memoryKeys(): string[]

      Returns string[]

    • get memoryVariables(): string[]

      Returns string[]

    Methods

    • Method that adds a memory to the agent's memory.

      Parameters

      • memoryContent: string

        The content of the memory to add.

      • Optionalnow: Date

        The current date.

      • Optionalmetadata: Record<string, unknown>

        The metadata for the memory.

      • Optionalcallbacks: any

        The Callbacks to use for adding the memory.

      Returns Promise<ChainValues>

      The result of the memory addition.

    • Method that clears the memory contents.

      Returns void

      Nothing.

    • Method that formats the given relevant memories in detail.

      Parameters

      • relevantMemories: Document[]

        The relevant memories to format.

      Returns string

      The formatted memories as a string.

    • Method that formats the given relevant memories in a simple manner.

      Parameters

      • relevantMemories: Document[]

        The relevant memories to format.

      Returns string

      The formatted memories as a string.

    • Method that returns the key for adding a memory.

      Returns string

      The key for adding a memory as a string.

    • Method that returns the key for the current time.

      Returns string

      The key for the current time as a string.

    • Method that retrieves memories until a token limit is reached.

      Parameters

      • consumedTokens: number

        The number of tokens consumed so far.

      Returns Promise<string>

      The memories as a string.

    • Method that returns the key for the most recent memories token.

      Returns string

      The key for the most recent memories token as a string.

    • Method that returns the key for relevant memories.

      Returns string

      The key for relevant memories as a string.

    • Method that loads memory variables based on the given inputs.

      Parameters

      • inputs: InputValues

        The inputs to use for loading memory variables.

      Returns Promise<Record<string, string>>

      An object containing the loaded memory variables.

    • Method that saves the context of a model run to memory.

      Parameters

      • _inputs: InputValues

        The inputs of the model run.

      • outputs: OutputValues

        The outputs of the model run.

      Returns Promise<void>

      Nothing.