LangChain

Memori supports any LangChain chat model. Each class has its own registration keyword: chatopenai for ChatOpenAI/ChatAnthropic, chatbedrock for ChatBedrock, chatgooglegenai for ChatGoogleGenerativeAI.

Want a zero-setup option? The Memori Cloud at app.memorilabs.ai.

Quick Start

LangChain Integration
from langchain_openai import ChatOpenAI
from memori import Memori
from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker

engine = create_engine("sqlite:///memori.db")
SessionLocal = sessionmaker(bind=engine)

client = ChatOpenAI(model="gpt-4o-mini")
mem = Memori(conn=SessionLocal).llm.register(chatopenai=client)
mem.config.storage.build()
mem.attribution(entity_id="user_123", process_id="langchain_agent")

response = client.invoke("Hello!")
print(response.content)

Different Providers

PackageChat ModelRegistration Keyword
langchain-openaiChatOpenAIchatopenai=client
langchain-anthropicChatAnthropicchatopenai=client
langchain-google-genaiChatGoogleGenerativeAIchatgooglegenai=client
langchain-awsChatBedrockchatbedrock=client
LangChain Providers
from langchain_anthropic import ChatAnthropic

client = ChatAnthropic(model="claude-3-5-sonnet-20241022")
mem = Memori(conn=SessionLocal).llm.register(chatopenai=client)

Supported Modes

ModeMethod
Syncclient.invoke()
Asyncawait client.ainvoke()
Streamedclient.stream()