LLM Providers Overview

Memori works with all major LLM providers and frameworks. Register any supported client and Memori handles memory capture, augmentation, and recall automatically.

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

Supported Providers

ProviderIntegrationInstall
OpenAIDirect SDK wrapperpip install memori openai
AnthropicDirect SDK wrapperpip install memori anthropic
Google GeminiDirect SDK wrapperpip install memori google-genai
xAI GrokOpenAI-compatiblepip install memori openai
AWS BedrockLangChain adapterpip install memori langchain-aws
LangChainFramework supportpip install memori langchain-openai
AgnoFramework supportpip install memori agno
Pydantic AIFramework supportpip install memori pydantic-ai
Nebius AI StudioOpenAI-compatiblepip install memori openai
DeepSeekOpenAI-compatiblepip install memori openai

All providers support sync, async, streamed, and unstreamed modes.

Any provider with an OpenAI-compatible API works by setting a custom base_url — including Nebius AI Studio, DeepSeek, NVIDIA NIM, Azure OpenAI, and more. See OpenAI-Compatible Providers below.

Pydantic AI

Register the Agent instance directly — Memori wraps run_sync and run automatically.

from memori import Memori
from pydantic_ai import Agent
from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker

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

agent = Agent("openai:gpt-4o-mini")
mem = Memori(conn=SessionLocal).llm.register(agent)
mem.config.storage.build()
mem.attribution(entity_id="user_123", process_id="pydantic_agent")

result = agent.run_sync("Hello!")
print(result.output)

OpenAI-Compatible Providers

Any provider with an OpenAI-compatible API works by setting a custom base_url. Examples: xAI, Nebius AI Studio, DeepSeek, Azure OpenAI.

import os
from memori import Memori
from openai import OpenAI
from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker

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

client = OpenAI(
    base_url="https://api.studio.nebius.com/v1/",
    api_key=os.getenv("NEBIUS_API_KEY"),
)
mem = Memori(conn=SessionLocal).llm.register(client)
mem.attribution(entity_id="user_123", process_id="my_agent")

response = client.chat.completions.create(
    model="meta-llama/Llama-3.3-70B-Instruct",
    messages=[{"role": "user", "content": "Hello!"}]
)
print(response.choices[0].message.content)

OpenAI Responses API

from memori import Memori
from openai import OpenAI
from sqlalchemy import create_engine
from sqlalchemy.orm import sessionmaker

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

client = OpenAI()
mem = Memori(conn=SessionLocal).llm.register(client)
mem.attribution(entity_id="user_123", process_id="my_agent")

response = client.responses.create(
    model="gpt-4o-mini",
    input="Hello!",
    instructions="You are a helpful assistant."
)
print(response.output_text)