Basic Update
- Python SDK
- JavaScript SDK
Copy
from gravixlayer import GravixLayer
client = GravixLayer()
# Initialize memory with all required parameters
memory = client.memory(
embedding_model="baai/bge-large-en-v1.5",
inference_model="google/gemma-3-12b-it",
index_name="my_memories",
cloud_provider="AWS",
region="us-east-1"
)
# Add a memory to update
add_result = memory.add("User likes pizza", user_id="alice")
memory_id = add_result['results'][0]['id']
# Update the memory content
update_result = memory.update(memory_id, "alice", "User loves pizza and Italian cuisine")
print(f"Update result: {update_result['message']}")
# Verify the update
updated_memories = memory.get_all(user_id="alice")
for mem in updated_memories['results']:
if mem['id'] == memory_id:
print(f"Updated content: {mem['memory']}")
break
Copy
Update result: Memory a1b2c3d4-e5f6-7890-abcd-ef1234567890 updated successfully!
Updated content: User loves pizza and Italian cuisine
Copy
import { GravixLayer, Memory } from 'gravixlayer';
const client = new GravixLayer();
// Initialize memory with all required parameters
const memory = new Memory(
client,
'baai/bge-large-en-v1.5',
'google/gemma-3-12b-it',
'my_memories',
'AWS',
'us-east-1'
);
// Add a memory to update
const addResult = await memory.add("User likes pizza", "alice");
const memoryId = addResult.results[0].id;
// Update the memory content
const updateResult = await memory.update(memoryId, "alice", "User loves pizza and Italian cuisine");
console.log(`Update result: ${updateResult.message}`);
// Verify the update
const updatedMemories = await memory.getAll("alice");
const updatedMemory = updatedMemories.results.find(mem => mem.id === memoryId);
if (updatedMemory) {
console.log(`Updated content: ${updatedMemory.memory}`);
}
Copy
Update result: Memory a1b2c3d4-e5f6-7890-abcd-ef1234567890 updated successfully!
Updated content: User loves pizza and Italian cuisine
Update in Categories
Update memories in specific categories for better organization:- Python SDK
- JavaScript SDK
Copy
from gravixlayer import GravixLayer
client = GravixLayer()
# Initialize memory for user preferences
prefs_memory = client.memory(
embedding_model="baai/bge-large-en-v1.5",
inference_model="google/gemma-3-12b-it",
index_name="user_preferences",
cloud_provider="AWS",
region="us-east-1"
)
# Initialize memory for work info
work_memory = client.memory(
embedding_model="baai/bge-large-en-v1.5",
inference_model="google/gemma-3-12b-it",
index_name="work_info",
cloud_provider="AWS",
region="us-east-1"
)
# Set up memories in different categories
print("Setting up categorized memories...")
# Add to user preferences
pref_result = prefs_memory.add("User prefers light theme", user_id="alice", metadata={"type": "ui"})
pref_memory_id = pref_result['results'][0]['id']
# Add to work info
work_result = work_memory.add("User works as junior developer", user_id="alice", metadata={"type": "job"})
work_memory_id = work_result['results'][0]['id']
print("Added memories to different categories\n")
# Update memory in user preferences
print("Updating user preference...")
pref_update = prefs_memory.update(pref_memory_id, "alice", "User strongly prefers dark theme",
metadata={"type": "ui", "strength": "strong"})
print(f"Preference update: {pref_update['message']}")
# Update memory in work info
print("\nUpdating work information...")
work_update = work_memory.update(work_memory_id, "alice", "User works as senior software engineer",
metadata={"type": "job", "level": "senior"})
print(f"Work update: {work_update['message']}")
# Verify updates in each category
print("\n=== VERIFICATION ===")
prefs = prefs_memory.get_all(user_id="alice")
for mem in prefs['results']:
if mem['id'] == pref_memory_id:
print(f"\nuser_preferences:")
print(f" Content: {mem['memory']}")
print(f" Metadata: {mem.get('metadata', {})}")
print(f" Updated: {mem.get('updated_at', 'N/A')}")
break
work = work_memory.get_all(user_id="alice")
for mem in work['results']:
if mem['id'] == work_memory_id:
print(f"\nwork_info:")
print(f" Content: {mem['memory']}")
print(f" Metadata: {mem.get('metadata', {})}")
print(f" Updated: {mem.get('updated_at', 'N/A')}")
break
# List all available indexes
indexes = prefs_memory.list_available_indexes()
print(f"\nAvailable indexes: {indexes}")
Copy
Setting up categorized memories...
✅ Switched to index: user_preferences
✅ Switched to index: work_info
Added memories to different categories
Updating user preference...
✅ Switched to index: user_preferences
Memory b2c3d4e5-f6g7-8901-bcde-f23456789012 updated successfully!
Updating work information...
✅ Switched to index: work_info
Memory c3d4e5f6-g7h8-9012-cdef-345678901234 updated successfully!
=== VERIFICATION ===
✅ Switched to index: user_preferences
user_preferences:
Content: User strongly prefers dark theme
Metadata: {'type': 'ui', 'strength': 'strong'}
Updated: 2025-10-22T10:40:15.123456
✅ Switched to index: work_info
work_info:
Content: User works as senior software engineer
Metadata: {'type': 'job', 'level': 'senior'}
Updated: 2025-10-22T10:40:16.234567
Available indexes: ['gravixlayer_memories', 'user_preferences', 'work_info']
Copy
import { GravixLayer, Memory } from 'gravixlayer';
const client = new GravixLayer();
// Initialize memory for user preferences
const prefsMemory = new Memory(
client,
'baai/bge-large-en-v1.5',
'google/gemma-3-12b-it',
'user_preferences',
'AWS',
'us-east-1'
);
// Initialize memory for work info
const workMemory = new Memory(
client,
'baai/bge-large-en-v1.5',
'google/gemma-3-12b-it',
'work_info',
'AWS',
'us-east-1'
);
async function updateInCategories() {
// Set up memories in different categories
console.log("Setting up categorized memories...");
// Add to user preferences
const prefResult = await prefsMemory.add("User prefers light theme", "alice", {
metadata: { type: "ui" }
});
const prefMemoryId = prefResult.results[0].id;
// Add to work info
const workResult = await workMemory.add("User works as junior developer", "alice", {
metadata: { type: "job" }
});
const workMemoryId = workResult.results[0].id;
console.log("Added memories to different categories\n");
// Update memory in user preferences
console.log("Updating user preference...");
const prefUpdate = await prefsMemory.update(prefMemoryId, "alice",
"User strongly prefers dark theme", {
metadata: { type: "ui", strength: "strong" }
});
console.log(`Preference update: ${prefUpdate.message}`);
// Update memory in work info
console.log("\nUpdating work information...");
const workUpdate = await workMemory.update(workMemoryId, "alice",
"User works as senior software engineer", {
metadata: { type: "job", level: "senior" }
});
console.log(`Work update: ${workUpdate.message}`);
// Verify updates in each category
console.log("\n=== VERIFICATION ===");
const prefs = await prefsMemory.getAll("alice");
const updatedPref = prefs.results.find(mem => mem.id === prefMemoryId);
if (updatedPref) {
console.log(`\nuser_preferences:`);
console.log(` Content: ${updatedPref.memory}`);
console.log(` Metadata: ${JSON.stringify(updatedPref.metadata || {})}`);
console.log(` Updated: ${updatedPref.updated_at || 'N/A'}`);
}
const work = await workMemory.getAll("alice");
const updatedWork = work.results.find(mem => mem.id === workMemoryId);
if (updatedWork) {
console.log(`\nwork_info:`);
console.log(` Content: ${updatedWork.memory}`);
console.log(` Metadata: ${JSON.stringify(updatedWork.metadata || {})}`);
console.log(` Updated: ${updatedWork.updated_at || 'N/A'}`);
}
// List all available indexes
const indexes = await prefsMemory.listAvailableIndexes();
console.log(`\nAvailable indexes: ${indexes}`);
}
updateInCategories().catch(console.error);
Copy
Setting up categorized memories...
Added memories to different categories
Updating user preference...
Memory b2c3d4e5-f6g7-8901-bcde-f23456789012 updated successfully!
Updating work information...
Memory c3d4e5f6-g7h8-9012-cdef-345678901234 updated successfully!
=== VERIFICATION ===
user_preferences:
Content: User strongly prefers dark theme
Metadata: {"type":"ui","strength":"strong"}
Updated: 2025-10-22T10:40:15.123456
work_info:
Content: User works as senior software engineer
Metadata: {"type":"job","level":"senior"}
Updated: 2025-10-22T10:40:16.234567
Available indexes: ['gravixlayer_memories', 'user_preferences', 'work_info']

