Skip to main content

Memory API

22 मेमोरी एंडपॉइंट्स के लिए संपूर्ण संदर्भ: स्टोर, रिकॉल, खोज, सिमेंटिक खोज, सिंक, ऑडिट, और बहुत कुछ।


Memory API

Memory API Synapse का हृदय है। यह संरचित मेमोरीज़ को स्टोर करने, पुनः प्राप्त करने, खोजने और प्रबंधित करने के लिए 22 एंडपॉइंट्स प्रदान करता है। सभी एंडपॉइंट्स को प्रमाणीकरण के लिए Mind Key की आवश्यकता है।

**हर सत्र की शुरुआत में हमेशा `GET /memory/recall` कॉल करें।** यह पिछले सत्रों से संदर्भ को पुनर्निर्माण करने का एकमात्र तरीका है।

श्रेणियाँ

मेमोरीज़ को 8 श्रेणियों में व्यवस्थित किया गया है:

श्रेणी उपयोग का मामला
identity उपयोगकर्ता नाम, भूमिका, संपर्क जानकारी, स्वयं के बारे में प्राथमिकताएँ
preference पसंद, नापसंद, कार्य शैली, संचार प्राथमिकताएँ
fact सत्यापित योग्य तथ्य (परियोजना विवरण, तिथियाँ, URL)
project परियोजना स्थिति, मील के पत्थर, आर्किटेक्चर
skill चीज़ें जिनमें उपयोगकर्ता अच्छा है
mistake पिछली त्रुटियाँ — दोहराने से बचें
context सत्र-प्रासंगिक संदर्भ
note विविध नोट्स

प्राथमिकताएँ

  • low — जानना अच्छा है
  • normal — डिफ़ॉल्ट
  • high — महत्वपूर्ण
  • critical — कभी न भूलें (उपयोगकर्ता पहचान, कानूनी जानकारी)

मुख्य एंडपॉइंट्स

GET /memory/recall

सभी मेमोरीज़ को LLM-अनुकूलित सादे टेक्स्ट के रूप में लौटाता है। इसे हर सत्र की शुरुआत में कॉल करें।

curl -H "Authorization: Bearer YOUR_MIND_KEY" \
     https://synapse.schaefer.zone/memory/recall

प्रतिक्रिया (text/plain):

Mind: Michael's Mind
Memories: 12 total (10 verified)

[001] identity (CRITICAL)
  user_name
  Michael Schäfer
  Tags: person, identity

...

POST /memory

नई मेमोरी स्टोर करें या मौजूदा को अपडेट करें (समान श्रेणी + कुंजी = अपडेट)।

curl -X POST https://synapse.schaefer.zone/memory \
  -H "Authorization: Bearer YOUR_MIND_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "category": "fact",
    "key": "user_name",
    "content": "The user's name is Michael Schäfer",
    "tags": ["person", "identity"],
    "priority": "critical"
  }'

प्रतिक्रिया: { "id": "mem_001", "status": "stored" }

GET /memory

वैकल्पिक फ़िल्टर के साथ मेमोरीज़ की सूची बनाएँ।

# All memories (JSON)
curl -H "Authorization: Bearer YOUR_MIND_KEY" \
     "https://synapse.schaefer.zone/memory?limit=50&offset=0"

# Filter by category
curl -H "Authorization: Bearer YOUR_MIND_KEY" \
     "https://synapse.schaefer.zone/memory?category=project"

# Filter by tag
curl -H "Authorization: Bearer YOUR_MIND_KEY" \
     "https://synapse.schaefer.zone/memory?tag=docker"

PUT /memory/:id

ID द्वारा एक विशिष्ट मेमोरी अपडेट करें।

curl -X PUT https://synapse.schaefer.zone/memory/mem_001 \
  -H "Authorization: Bearer YOUR_MIND_KEY" \
  -H "Content-Type: application/json" \
  -d '{"content": "Updated content", "priority": "high"}'

DELETE /memory/:id

एकल मेमोरी हटाएँ।

curl -X DELETE -H "Authorization: Bearer YOUR_MIND_KEY" \
     https://synapse.schaefer.zone/memory/mem_001

खोज एंडपॉइंट्स

GET /memory/search

FTS5 का उपयोग करके फुल-टेक्स्ट खोज।

curl -H "Authorization: Bearer YOUR_MIND_KEY" \
     "https://synapse.schaefer.zone/memory/search?q=docker+swarm"

FTS5 सिंटैक्स:

  • कई शब्द = AND: docker swarm
  • वाक्यांश: "docker swarm"
  • उपसर्ग: docker*
  • बूलियन: docker OR kubernetes
  • बहिष्कार: docker -swarm

GET /memory/semantic-search

एम्बेडिंग का उपयोग करके वैचारिक खोज (FTS5 से धीमा लेकिन अर्थ समझता है)।

curl -H "Authorization: Bearer YOUR_MIND_KEY" \
     "https://synapse.schaefer.zone/memory/semantic-search?q=container+orchestration"

वे मेमोरीज़ लौटाता है जो क्वेरी के साथ सिमेंटिक रूप से समान हैं, भले ही कोई कीवर्ड मेल न खाए। "X के बारे में मेमोरीज़ खोजें" के लिए उपयोगी जहाँ X को अलग ढंग से वर्णित किया गया है।

GET /memory/by-tag

टैग द्वारा मेमोरीज़ की सूची बनाएँ।

curl -H "Authorization: Bearer YOUR_MIND_KEY" \
     "https://synapse.schaefer.zone/memory/by-tag?tag=docker"

GET /memory/related/:id

किसी विशिष्ट मेमोरी से संबंधित मेमोरीज़ खोजें (साझा टैग के माध्यम से)।

curl -H "Authorization: Bearer YOUR_MIND_KEY" \
     https://synapse.schaefer.zone/memory/related/mem_001

सिंक और Diff

GET /memory/diff

इंक्रीमेंटल सिंक — किसी टाइमस्टैम्प के बाद से बदली गई मेमोरीज़ लौटाता है।

curl -H "Authorization: Bearer YOUR_MIND_KEY" \
     "https://synapse.schaefer.zone/memory/diff?since=1700000000"

प्रतिक्रिया: { "added": [...], "updated": [...], "deleted": [...] }

POST /memory/sync

किसी अन्य इंस्टेंस से diff लागू करें (सेल्फ-होस्टेड सिंक के लिए)।

curl -X POST https://synapse.schaefer.zone/memory/sync \
  -H "Authorization: Bearer YOUR_MIND_KEY" \
  -H "Content-Type: application/json" \
  -d '{"added": [...], "updated": [...], "deleted": [...]}'

बल्क ऑपरेशन्स

POST /memory/bulk-delete

ID द्वारा कई मेमोरीज़ हटाएँ।

curl -X POST https://synapse.schaefer.zone/memory/bulk-delete \
  -H "Authorization: Bearer YOUR_MIND_KEY" \
  -H "Content-Type: application/json" \
  -d '{"ids": ["mem_001", "mem_002", "mem_003"]}'

POST /memory/embed-batch

उन मेमोरीज़ के लिए एम्बेडिंग जनरेट करें जिनके पास अभी तक नहीं हैं (सिमेंटिक खोज के लिए)।

curl -X POST https://synapse.schaefer.zone/memory/embed-batch \
  -H "Authorization: Bearer YOUR_MIND_KEY" \
  -H "Content-Type: application/json" \
  -d '{"limit": 100}'

GET /memory/embed-batch-status

एम्बेडिंग जनरेशन प्रगति जाँचें।

curl -H "Authorization: Bearer YOUR_MIND_KEY" \
     https://synapse.schaefer.zone/memory/embed-batch-status

सत्यापन

मेमोरीज़ के पास verified फ़्लैग होता है। एजेंट-स्टोर की गई मेमोरीज़ डिफ़ॉल्ट रूप से असत्यापित होती हैं (source=agent); मानव-स्टोर की गई मेमोरीज़ सत्यापित होती हैं (source=user)।

POST /memory/verify

मेमोरी को सत्यापित के रूप में चिह्नित करें (Mind Key नहीं, JWT आवश्यक)।

curl -X POST https://synapse.schaefer.zone/memory/mem_001/verify \
  -H "Authorization: Bearer YOUR_JWT"

POST /memory/unverify

मेमोरी को असत्यापित के रूप में चिह्नित करें (JWT आवश्यक)।

curl -X POST https://synapse.schaefer.zone/memory/mem_001/unverify \
  -H "Authorization: Bearer YOUR_JWT"

GET /memory/unverified

मानव सत्यापन की प्रतीक्षा कर रही मेमोरीज़ की सूची बनाएँ।

curl -H "Authorization: Bearer YOUR_MIND_KEY" \
     "https://synapse.schaefer.zone/memory/unverified?limit=100"

सांख्यिकी और ऑडिट

GET /memory/stats

वर्तमान mind के लिए समग्र सांख्यिकी।

curl -H "Authorization: Bearer YOUR_MIND_KEY" \
     https://synapse.schaefer.zone/memory/stats

लौटाता है: { "total": 12, "verified": 10, "unverified": 2, "by_category": {...}, "by_priority": {...} }

GET /memory/audit

सभी स्थिति-परिवर्तनकारी ऑपरेशन्स का ऑडिट लॉग।

curl -H "Authorization: Bearer YOUR_MIND_KEY" \
     "https://synapse.schaefer.zone/memory/audit?limit=100&action=store"

GET /memory/contradictions

स्टोर की गई मेमोरीज़ में संभावित विरोधाभासों का पता लगाएँ।

curl -H "Authorization: Bearer YOUR_MIND_KEY" \
     https://synapse.schaefer.zone/memory/contradictions

GET /memory/expiring

समाप्ति तिथि निकट आ रही मेमोरीज़ की सूची बनाएँ।

curl -H "Authorization: Bearer YOUR_MIND_KEY" \
     "https://synapse.schaefer.zone/memory/expiring?within=7d"

स्वास्थ्य और निर्यात

GET /memory/health

मेमोरी सिस्टम के लिए त्वरित स्वास्थ्य जाँच।

curl -H "Authorization: Bearer YOUR_MIND_KEY" \
     https://synapse.schaefer.zone/memory/health

GET /memory/mind-export

सभी मेमोरीज़ का पूर्ण JSON निर्यात (बैकअप के लिए)।

curl -H "Authorization: Bearer YOUR_MIND_KEY" \
     https://synapse.schaefer.zone/memory/mind-export > backup.json

POST /memory/compact

समान मेमोरीज़ संक्षिप्त करें (ऑटो-सारांशीकरण)।

curl -X POST https://synapse.schaefer.zone/memory/compact \
  -H "Authorization: Bearer YOUR_MIND_KEY" \
  -H "Content-Type: application/json" \
  -d '{"dry_run": true}'

अगले कदम