Skip to main content

मेमोरी टैगिंग रणनीति

प्रभावी खोज और फ़िल्टरिंग के लिए मेमोरीज़ को कैसे टैग करें — स्केल होने वाली टैगिंग प्रणाली।


मेमोरी टैगिंग रणनीति

टैग स्केलेबल मेमोरी रिट्रीवल का राज़ हैं। यह गाइड दिखाती है कि मेमोरीज़ को कैसे टैग करें ताकि सही समय पर सही मेमोरीज़ वापस आएँ।

टैग क्यों मायने रखते हैं

टैग के बिना, आपके पास सपाट फुल-टेक्स्ट खोज है। टैग के साथ, आपके पास संरचित नेविगेशन है:

# Without tags: search everything
GET /memory/search?q=docker

# With tags: filter by project + technology
GET /memory/search?q=deployment&tag=synapse&tag=docker

टैग सक्षम करते हैं:

  • तेज़ फ़िल्टरिंगGET /memory/by-tag?tag=production
  • स्कोप्ड खोज?q=auth&tag=project-x
  • समूहीकरण — किसी प्रोजेक्ट की सभी "mistake" मेमोरीज़ ढूँढें
  • क्रॉस-रेफरेंसिंग — साझा टैग वाली मेमोरीज़ संबंधित हैं

टैगिंग स्कीमा

प्रोजेक्ट टैग

प्रोजेक्ट नामों को टैग के रूप में उपयोग करें:

synapse, synapse-mcp, synapse-chat, synapse-sdk

तकनीक टैग

तकनीक नामों का उपयोग करें:

docker, kubernetes, postgres, fastify, react, typescript

विषय टैग

विषय श्रेणियों का उपयोग करें:

deployment, ci-cd, auth, database, frontend, backend, security

स्थिति टैग

स्थिति संकेतकों का उपयोग करें:

active, completed, blocked, deprecated

प्रकार टैग

प्रकार संकेतकों का उपयोग करें:

decision, mistake, pattern, reference, todo

टैगिंग नियम

नियम 1: प्रति मेमोरी 2-5 टैग

बहुत कम टैग = खराब डिस्कवरेबिलिटी। बहुत अधिक = शोर।

// Good: 3 relevant tags
{ "tags": ["synapse", "deployment", "docker"] }

// Bad: 1 tag (too narrow)
{ "tags": ["synapse"] }

// Bad: 10 tags (noise)
{ "tags": ["synapse", "deployment", "docker", "vps1", "2026", "june", "ssh", "git", "main", "production"] }

नियम 2: लोअरकेस, हाइफ़न युक्त

✅ ci-cd, api-key, mind-key
❌ CI-CD, APIKey, MindKey

नियम 3: सुसंगत शब्दावली का उपयोग करें

टैगिंग शब्दावली स्थापित करें और उस पर टिके रहें:

# Project vocabulary
synapse, synapse-mcp, synapse-chat

# NOT: synapse_project, synapseProject, SYNAPSE

नियम 4: खोज इरादे के साथ टैग करें

पूछें: "मैं इस मेमोरी को कैसे खोजूँगा?"

// Storing a deployment decision
{
  "content": "Decided to use Docker Swarm for Synapse deployment",
  "tags": ["synapse", "deployment", "docker", "swarm", "decision"]
}

// You'll likely search: ?q=docker+swarm or ?tag=deployment

पैटर्न

पैटर्न 1: प्रोजेक्ट + विषय

{ "tags": ["synapse", "deployment"] }
{ "tags": ["synapse", "auth"] }
{ "tags": ["synapse-mcp", "tools"] }

खोज: ?tag=synapse (सभी Synapse प्रोजेक्ट मेमोरीज़) खोज: ?tag=synapse&q=deployment (Synapse में डिप्लॉयमेंट मेमोरीज़)

पैटर्न 2: प्रकार + डोमेन

{ "tags": ["mistake", "deployment"] }
{ "tags": ["decision", "database"] }
{ "tags": ["pattern", "auth"] }

खोज: ?tag=mistake (सभी गलतियाँ) खोज: ?tag=mistake&q=deployment (डिप्लॉयमेंट गलतियाँ)

पैटर्न 3: पदानुक्रमित

किसी प्रोजेक्ट के भीतर उप-प्रोजेक्ट्स के लिए:

{ "tags": ["synapse", "synapse-docs", "markdown"] }
{ "tags": ["synapse", "synapse-mcp", "mcp"] }
{ "tags": ["synapse", "synapse-admin", "ui"] }

खोज: ?tag=synapse (सभी Synapse) खोज: ?tag=synapse-docs (केवल docs उप-प्रोजेक्ट)

पैटर्न 4: स्थिति ट्रैकिंग

// Active project
{ "tags": ["synapse", "active"], "priority": "high" }

// Completed project
{ "tags": ["synapse-v1", "completed"], "priority": "low" }

// Blocked
{ "tags": ["synapse-v2", "blocked"], "priority": "high" }

सामान्य उपयोग के मामले

किसी प्रोजेक्ट के सभी निर्णय ढूँढें

curl -H "Authorization: Bearer $KEY" \
     ".../memory/search?q=decision&tag=synapse"

किसी डोमेन की सभी गलतियाँ ढूँढें

curl -H "Authorization: Bearer $KEY" \
     ".../memory/search?q=mistake&tag=deployment"

सक्रिय कार्य ढूँढें

curl -H "Authorization: Bearer $KEY" \
     ".../memory/by-tag?tag=active"

किसी तकनीक के बारे में मेमोरीज़ ढूँढें

curl -H "Authorization: Bearer $KEY" \
     ".../memory/search?q=postgres+performance&tag=database"

टैग रखरखाव

आवधिक समीक्षा

# Find rarely-used tags (candidates for cleanup)
tags = requests.get(f"{URL}/memory/tags",
    headers={"Authorization": f"Bearer {KEY}"}).json()

for tag, count in tags.items():
    if count < 2:
        print(f"Rare tag: {tag} ({count} memories)")

टैग मर्ज करना

यदि आपके पास असंगत टैग हैं (docker और Docker), तो उन्हें मर्ज करें:

# Find all memories with "Docker" tag
mems = requests.get(f"{URL}/memory/by-tag?tag=Docker",
    headers={"Authorization": f"Bearer {KEY}"}).json()

# Update each to use "docker" instead
for mem in mems["results"]:
    tags = [t.lower() for t in mem["tags"]]
    update_memory(mem["id"], tags=list(set(tags)))

सर्वोत्तम अभ्यास

अगले कदम