From fbef369b91f4f59aca0fc84c0575c72b877c48e7 Mon Sep 17 00:00:00 2001 From: Kartik Date: Fri, 26 Jun 2026 14:14:33 +0530 Subject: [PATCH] docs(open-source): fix OSS feature docs for v3 SDK (#5847) --- docs/open-source/configuration.mdx | 2 +- docs/open-source/features/async-memory.mdx | 2 +- .../features/custom-instructions.mdx | 6 ++--- .../features/multimodal-support.mdx | 22 ++++++++++++------- docs/open-source/features/reranker-search.mdx | 4 ++-- 5 files changed, 20 insertions(+), 16 deletions(-) diff --git a/docs/open-source/configuration.mdx b/docs/open-source/configuration.mdx index 5812bfced..3e06814bf 100644 --- a/docs/open-source/configuration.mdx +++ b/docs/open-source/configuration.mdx @@ -130,7 +130,7 @@ memory = Memory.from_config_file("config.yaml") - Run `memory.add(["Remember my favorite cafe in Tokyo."], user_id="alex")` and then `memory.search("favorite cafe", filters={"user_id": "alex"})`. You should see the Qdrant collection populate and the reranker mark the memory as a top hit. + Run `memory.add("Remember my favorite cafe in Tokyo.", user_id="alex")` and then `memory.search("favorite cafe", filters={"user_id": "alex"})`. You should see the Qdrant collection populate and the reranker mark the memory as a top hit. ## Tune component settings diff --git a/docs/open-source/features/async-memory.mdx b/docs/open-source/features/async-memory.mdx index 1267df038..cda64bf65 100644 --- a/docs/open-source/features/async-memory.mdx +++ b/docs/open-source/features/async-memory.mdx @@ -18,7 +18,7 @@ icon: "bolt" - Working in TypeScript? The Node SDK still uses synchronous calls—use `Memory` there and rely on Python’s `AsyncMemory` when you need awaited operations. + Working in TypeScript? The OSS `Memory` class in the Node SDK (`mem0ai/oss`) is also fully async — every method returns a `Promise` and must be `await`ed. Python’s `AsyncMemory` serves the same purpose within Python async frameworks like FastAPI. Both runtimes support awaited memory operations; choose the SDK that matches your language. ## Feature anatomy diff --git a/docs/open-source/features/custom-instructions.mdx b/docs/open-source/features/custom-instructions.mdx index a27da62a0..88d0f4dd9 100644 --- a/docs/open-source/features/custom-instructions.mdx +++ b/docs/open-source/features/custom-instructions.mdx @@ -165,8 +165,7 @@ await memory.add("Yesterday, I ordered a laptop, the order id is 12345", { userI {"memory": "Ordered a laptop", "event": "ADD"}, {"memory": "Order ID: 12345", "event": "ADD"}, {"memory": "Order placed yesterday", "event": "ADD"} - ], - "relations": [] + ] } ``` @@ -188,8 +187,7 @@ await memory.add("I like going to hikes", { userId: "user123" }); ```json Output { - "results": [], - "relations": [] + "results": [] } ``` diff --git a/docs/open-source/features/multimodal-support.mdx b/docs/open-source/features/multimodal-support.mdx index a01cec4aa..58cb4640e 100644 --- a/docs/open-source/features/multimodal-support.mdx +++ b/docs/open-source/features/multimodal-support.mdx @@ -41,6 +41,14 @@ Multimodal support lets Mem0 extract facts from images alongside regular text. A ## Configure it + + You must set `enable_vision: True` in your LLM config for image content to be processed. Without it, image turns are silently dropped and no vision memories are created. Example: + ```python + config = {"llm": {"provider": "openai", "config": {"enable_vision": True, "vision_details": "auto"}}} + client = Memory.from_config(config) + ``` + + ### Add image messages from URLs @@ -66,7 +74,7 @@ client.add(messages, user_id="alice") ``` ```ts TypeScript -import { Memory } from "mem0ai"; +import { Memory } from "mem0ai/oss"; const client = new Memory(); @@ -123,7 +131,7 @@ client.add(messages, user_id="alice") ```ts TypeScript import fs from "fs"; -import { Memory } from "mem0ai"; +import { Memory } from "mem0ai/oss"; function encodeImage(imagePath: string) { const buffer = fs.readFileSync(imagePath); @@ -226,7 +234,7 @@ client.add(messages, user_id="user123") ```python Python from mem0 import Memory -from mem0.exceptions import InvalidImageError, FileSizeError +from mem0.exceptions import ValidationError client = Memory() @@ -242,16 +250,14 @@ try: client.add(messages, user_id="user123") print("Image processed successfully") -except InvalidImageError: - print("Invalid image format or corrupted file") -except FileSizeError: - print("Image file too large") +except ValidationError as exc: + print(f"Image validation error: {exc}") except Exception as exc: print(f"Unexpected error: {exc}") ``` ```ts TypeScript -import { Memory } from "mem0ai"; +import { Memory } from "mem0ai/oss"; const client = new Memory(); diff --git a/docs/open-source/features/reranker-search.mdx b/docs/open-source/features/reranker-search.mdx index 94c63810a..b04019ae9 100644 --- a/docs/open-source/features/reranker-search.mdx +++ b/docs/open-source/features/reranker-search.mdx @@ -124,7 +124,7 @@ config = { "provider": "llm_reranker", "config": { "provider": "openai", - "model": "gpt-4o-mini", + "model": "gpt-5-mini", "api_key": "your-openai-api-key", "top_k": 5 } @@ -150,7 +150,7 @@ config = { "llm": { "provider": "openai", "config": { - "model": "gpt-4", + "model": "gpt-5-mini", "api_key": "your-openai-api-key" } },