{"slug": "give-your-ai-memory-in-one-parameter", "title": "Give your AI memory in one parameter", "summary": "Backboard has introduced a single-parameter memory system for LLMs, replacing the typical multi-step pipeline of embedding extraction, vector storage, and similarity search. By setting `memory` to `\"Auto\"`, the assistant automatically extracts, stores, and recalls user facts across conversations without any additional engineering. The feature supports per-turn control with options for read-only or off modes, as well as a higher-accuracy `memory_pro` variant.", "body_md": "By default, an LLM forgets you the moment a conversation ends. Start a new chat and it has no idea who you are, what you told it last week, or what you prefer. For a real product, that is a dealbreaker. Users expect the app to remember.\n\nThe standard fix is a memory pipeline you build yourself. Extract the important facts from each conversation. Turn them into embeddings. Store the vectors in a database. On every new message, run a similarity search, pull the relevant facts, and inject them into the prompt. That is a meaningful chunk of engineering, and you maintain it forever.\n\nBackboard collapses that into one parameter: `memory`\n\n. Set it to `\"Auto\"`\n\nand your assistant remembers.\n\nMemory is stored on the assistant, so pass the same `assistant_id`\n\nand `memory=\"Auto\"`\n\n. Facts the user shares in one conversation are recalled in the next.\n\n```\npip install backboard-sdk\npython\nimport asyncio\nfrom backboard import BackboardClient\n\nasync def main():\n    client = BackboardClient(api_key=\"YOUR_API_KEY\")\n\n    # Conversation 1: tell it something\n    await client.send_message(\n        \"My name is Sarah. I work at Google as a software engineer.\",\n        assistant_id=\"your-assistant-id\",\n        memory=\"Auto\",\n    )\n\n    # Conversation 2: new thread, same assistant, it remembers\n    reply = await client.send_message(\n        \"What do you remember about me?\",\n        assistant_id=\"your-assistant-id\",\n        memory=\"Auto\",\n    )\n    print(reply.content)  # name, employer, and role\n\nasyncio.run(main())\njs\nconst send = (body) =>\n  fetch(\"https://app.backboard.io/api/threads/messages\", {\n    method: \"POST\",\n    headers: {\n      \"X-API-Key\": \"YOUR_API_KEY\",\n      \"Content-Type\": \"application/json\",\n    },\n    body: JSON.stringify(body),\n  }).then((r) => r.json());\n\nawait send({\n  content: \"My name is Sarah. I work at Google as a software engineer.\",\n  assistant_id: \"your-assistant-id\",\n  memory: \"Auto\",\n});\n\nconst reply = await send({\n  content: \"What do you remember about me?\",\n  assistant_id: \"your-assistant-id\",\n  memory: \"Auto\",\n});\n\nconsole.log(reply.content);\n# Save: memory=\"Auto\" extracts and stores facts\ncurl -X POST \"https://app.backboard.io/api/threads/messages\" \\\n  -H \"X-API-Key: YOUR_API_KEY\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"content\": \"My name is Sarah. I work at Google as a software engineer.\", \"assistant_id\": \"your-assistant-id\", \"memory\": \"Auto\"}'\n\n# Recall: same assistant, new conversation\ncurl -X POST \"https://app.backboard.io/api/threads/messages\" \\\n  -H \"X-API-Key: YOUR_API_KEY\" \\\n  -H \"Content-Type: application/json\" \\\n  -d '{\"content\": \"What do you remember about me?\", \"assistant_id\": \"your-assistant-id\", \"memory\": \"Auto\"}'\n```\n\nNo embedding step. No vector database. No retrieval code. One parameter, and the assistant extracts the facts, stores them, and recalls them when they are relevant.\n\n`\"Auto\"`\n\nactually does\nBehind that single value, Backboard runs the full loop:\n\nIt works across every thread under the same assistant, which is exactly the behavior you want: the user is remembered no matter which conversation they are in.\n\n`memory`\n\nis a per-turn parameter. Pass it on each call where you want memory active. Pick one value:\n\n| Parameter | Value | Saves? | Retrieves? | Use it when |\n|---|---|---|---|---|\n`memory` |\n`\"Auto\"` |\nYes | Yes | The recommended default for most apps |\n`memory` |\n`\"Readonly\"` |\nNo | Yes | Recall facts without writing new ones |\n`memory` |\n`\"off\"` |\nNo | No | One-off requests that should not be remembered |\n`memory_pro` |\n`\"Auto\"` |\nYes | Yes | You need higher-accuracy recall and accept higher cost |\n`memory_pro` |\n`\"Readonly\"` |\nNo | Yes | High-accuracy recall only |\n\n`memory`\n\nand `memory_pro`\n\ncannot be used together in the same message. Use `memory`\n\nfor everyday recall and `memory_pro`\n\nwhen accuracy matters more than cost.\n\n```\n# Higher-accuracy retrieval\nresponse = await client.send_message(\n    \"What were my project deadlines?\",\n    assistant_id=\"your-assistant-id\",\n    memory_pro=\"Auto\",\n)\n```\n\n`\"Auto\"`\n\ncovers most apps. When you need to manage memory directly, the assistant exposes full CRUD: list, add, search, update, and delete. You own the data and can export it whenever you want.\n\n```\n# Add a fact yourself\nawait client.add_memory(\n    assistant_id,\n    content=\"User prefers dark mode in all applications\",\n)\n\n# Semantic search over what the assistant knows\nresults = await client.search_memories(\n    assistant_id,\n    query=\"user interface preferences\",\n    limit=5,\n)\nfor m in results[\"memories\"]:\n    print(m[\"content\"])\n```\n\nPersistent memory is usually a project: an extraction pipeline, a vector store, retrieval code, and ongoing upkeep. Backboard makes it a parameter. Set `memory=\"Auto\"`\n\n, reuse the assistant, and your AI remembers your users across every conversation. When you need precision or control, switch to `memory_pro`\n\nor manage memories directly. No database required.\n\nGrab a key and try it: [app.backboard.io](https://app.backboard.io)\n\nMemory docs: [docs.backboard.io/concepts/memory](https://docs.backboard.io/concepts/memory)", "url": "https://wpnews.pro/news/give-your-ai-memory-in-one-parameter", "canonical_source": "https://dev.to/backboardio/give-your-ai-memory-in-one-parameter-4n76", "published_at": "2026-06-04 10:39:59+00:00", "updated_at": "2026-06-04 10:42:44.970458+00:00", "lang": "en", "topics": ["ai-products", "ai-tools", "ai-infrastructure", "large-language-models", "artificial-intelligence"], "entities": ["Backboard", "BackboardClient", "Sarah", "Google"], "alternates": {"html": "https://wpnews.pro/news/give-your-ai-memory-in-one-parameter", "markdown": "https://wpnews.pro/news/give-your-ai-memory-in-one-parameter.md", "text": "https://wpnews.pro/news/give-your-ai-memory-in-one-parameter.txt", "jsonld": "https://wpnews.pro/news/give-your-ai-memory-in-one-parameter.jsonld"}}