Mnemosyne OS

English 中文 繁體中文 Español Русский Deutsch ไทย 한국어 日本語

# Mnemosyne OS ☤

Mnemosyne OS | GitHub | เอกสารภาษาไทย

PyPI License: MIT Python 3.8+ Model Context Protocol Downloads X 中文 繁體中文 Español Русский Deutsch ไทย 한국어 日本語

**Mnemosyne OS 8.1.0** — ระบบความจำ AI แบบไม่ต้องพึ่งพาไลบรารีภายนอก (zero-dependency) ทำงานบนเครื่องเป็นหลัก (local-first) พร้อมการลืมข้อมูลแบบหลายระดับ (multi-tier forgetting) กระดาษบัญชีแบบโซ่แฮช (hash-chain ledger) ชุดพัฒนาปลั๊กอิน (plugin SDK) แดชบอร์ดเว็บบนเครื่อง (local web dashboard) และการรองรับ MCP (Model Context Protocol / โปรโตคอลบริบทแบบจำลอง) > เอนจินความจำ AI แห่งเดียวที่**แกนกลางไม่ต้องพึ่งพาไลบรารีของบุคคลที่สามเลย** (พึ่งพาเพียงไลบรารีมาตรฐานของ Python 3.8+ เท่านั้น) — ไม่มีฐานข้อมูลเวกเตอร์ (vector database) ไม่มีรันไทม์ LLM (โมเดลภาษาขนาดใหญ่) และไม่มีการผูกมัดกับระบบคลาวด์ (cloud lock-in) ทำงานได้ทั้งบนแล็ปท็อป เซิร์ฟเวอร์ หรือโครงสร้างเซิร์ฟเวอร์เลส (serverless infra) ใช้งานได้ในรูปแบบ **ไลบรารี Python (Python library)**, **CLI (command line)**, **HTTP API**, **เซิร์ฟเวอร์ MCP (MCP server)** หรือฝังเข้ากับโปรแกรมผ่านการส่งข้อมูล stdio ของ **MCP (Model Context Protocol)**
แกนกลางแบบไม่ต้องพึ่งพาไลบรารีทำงานได้เพียงใช้ไลบรารีมาตรฐานของ Python โดยไม่ต้องมี numpy, torch, ฐานข้อมูลเวกเตอร์ หรือ LLM ในการจัดเก็บและเรียกคืนความจำ
ความจำแบบหลายระดับชั้น hot / warm / cold พร้อมเศรษฐศาสตร์แห่งการลืม (forgetting economics) — ย้ายความจำที่มีค่าน้อยกว่าไปยังที่อื่น โดยไม่ลบทิ้งอย่างเงียบเชีย
กระดาษบัญชีแบบโซ่แฮชกระดาษบัญชีแบบโซ่ SHA-256 — verify_chain() ตรวจจับการแก้ไขผิดปกติและระบุบันทึกที่เสียหายได้อย่างแม่นยำ
ชุดพัฒนาปลั๊กอินVectorBackendPlugin / CryptoPlugin / RerankerPlugin รวมถึงปลั๊กอินทางการ (numpy_vector, crypto, reranker, hrr, async, context-engine)
เซิร์ฟเวอร์ MCP55 เครื่องมือผ่าน stdio JSON-RPC พร้อมการยืนยันตัวตนด้วยโทเค็น (token auth) และการแยกเนมสเปซแบบมัลติเทนแนนต์ (multi-tenant namespaces)
แดชบอร์ดเว็บแดชบอร์ดสีเข้มแบบเทคโนโลยีบนเครื่อง (local dark dashboard) ไม่มี CDN ภายนอก — ให้บริการจาก web_server.py
API แบบอะซิงโครนัสตัวหุ้ม asyncio AsyncMemoryBrain สำหรับการนำเข้าข้อมูลปริมาณมาก
ปรับให้เหมาะกับภาษาจีนการแบ่งโทเค็นแบบบิแกรม (bigram tokenization) + FTS5 + พจนานุกรมคำเหมือนในตัว (built-in synonym dictionary)
ฟังก์ชันผู้รับรองความปลอดภัยตรวจจับข้อมูลรับรอง, ยูนิโค้ดที่มองไม่เห็น และการแทรก HTML; ทำการปกปิดระดับฟิลด์ (field-level redaction) ก่อนเขียนลงไป
--- ## ☁️ Mnemosyne OS SaaS เอนจินเดียวกันในเวอร์ชันโฮสต์ พร้อมคอนโซลเว็บ: **[ai-memory.net](https://ai-memory.net)** คอนโซลเวอร์ชันโฮสต์มีชื่อผลิตภัณฑ์ว่า **Mnemosyne OS SaaS** — เป็นที่สำหรับสมัคร สร้างคีย์ API เรียกดูความจำ และจัดการการสมัครสมาชิก | แพ็กเกจ | ราคา (USD) | ราคา (CNY) | สิ่งที่ได้รับ | |---|---|---|---| | **Free** | $0 | ¥0 | เครื่องมือ MCP ทั้ง 55 ตัว · หน้าต่างเรียกคืนความจำชั้นเย็น 30 วัน · เนมสเปซ 1 ชุด · หน้าต่างตรวจสอบ 7 วัน · ข้อมูลไม่ถูกลบ | | **Pro** | $6.9/เดือน · $69/ปี | ¥9.9/เดือน · ¥99/ปี | เก็บความจำชั้นเย็นแบบถาวร · เรียกคืนข้ามเนมสเปซ · ประวัติตรวจสอบไม่จำกัด · ส่งออกข้อมูลทั้งหมด | | **Team** | $19.9/ที่นั่ง/เดือน · $199/ที่นั่ง/ปี | ¥29.9/ที่นั่ง/เดือน · ¥299/ที่นั่ง/ปี | ทุกอย่างใน Pro · เนมสเปซแบบหลายผู้ใช้ · นโยบายของทีม · ส่งออกรายงานตรวจสอบ (คิดค่าบริการตามที่นั่ง) | | **แพ็กเกจรับรองการปฏิบัติตามข้อกำหนด (Compliance Add-on)** | $9.9/เดือน | ¥19.9/เดือน | รายการเสริมแบบเลือกได้บน Pro หรือ Team (ไม่ใช่ระดับแยกและไม่มีแบบรายปี): รายงาน `verify_integrity` ตามกำหนด, ส่งออกหลักฐานการลบ, ตั้งค่าที่ตั้งของข้อมูล | แบบรายปี = จ่าย 10 เดือน ใช้ 12 เดือน (ลดประมาณ 16.7% โดย Pro คิดเป็น ¥8.25/เดือน) บัญชีใหม่ทุกบัญชีได้รับ **สิทธิ์ Team 30 วันโดยไม่ต้องผูกบัตร** — เมื่อหมดอายุสามารถอยู่ใน Free ได้ตลอดไป USD ชำระผ่านการสมัครสมาชิก PayPal ที่ต่ออายุอัตโนมัติ (ยกเลิกได้ทุกเมื่อภายใน PayPal); CNY ชำระด้วย QR โค้ดของ WeChat + ผู้ดูแลยืนยันด้วยตนเอง การโฮสต์เองยังคงเป็น MIT และไม่มีข้อจำกัด — สาย SaaS มีไว้สำหรับผู้ที่ไม่ต้องการดูแลเซิร์ฟเวอร์เอง เอนจินเหมือนกันทุกประการ **ไม่มีฟังก์ชันใดถูกล็อกในเวอร์ชันโอเพนซอร์ส** --- ## การติดตั้งด่วน ### ติดตั้งจาก PyPI ```bash pip install mnemosyne-os ``` ### แกนกลางแบบไม่ต้องพึ่งพาไลบรารี (ไม่ต้องใช้ pip install) ```bash # Core runs on the Python standard library alone python -c "from mnemosyne import MemoryBrain; print('Ready!')" ``` ### ติดตั้งโหมดพัฒนา ```bash git clone https://github.com/MnemosyneOS/mnemosyne.git cd mnemosyne pip install -e . ``` --- ## เริ่มต้นใช้งาน ### CLI (command line) ```bash # Initialize the memory database python mnemosyne.py --dir ./mem init # Store a memory python mnemosyne.py --dir ./mem retain --content "Apple Inc. was founded in 1976" # Search memories python mnemosyne.py --dir ./mem recall "Apple" --k 5 # Consolidate similar memories (pre-check) python mnemosyne.py --dir ./mem consolidate --dry-run # View status / health check python mnemosyne.py --dir ./mem status --json python mnemosyne.py --dir ./mem doctor --json # Knowledge graph query python mnemosyne.py --dir ./mem graph-query "Steve Jobs" --depth 2 --json # Ledger integrity / audit python mnemosyne.py --dir ./mem verify-integrity --json python mnemosyne.py --dir ./mem ledger-audit # Export / import python mnemosyne.py --dir ./mem export --format json --out ./memories.json python mnemosyne.py --dir ./mem import ./memories.json # Migrate JSONL -> SQLite python mnemosyne.py --dir ./mem migrate --jsonl ./mem/index.jsonl # Start the web dashboard python -m mnemosyne.webui.web_server --port 9090 ``` ### Python API ```python from mnemosyne import MemoryBrain brain = MemoryBrain("./my_memories", enable_embeddings=False) brain.ensure_init() # Store brain.retain("Apple Inc. was founded in 1976", fast=True) # Recall results = brain.recall("Apple", k=5) for score, record, reasons in results: print(f"Score: {score:.4f} | {record['content']}") # Token-budgeted recall results, cost_report = brain.recall("Apple", k=5, budget_tokens=100) # Conversation history brain.add_conversation_turn("session-1", "user", "Tell me about Apple") hits = brain.search_conversations("Apple", session_id="session-1") # Context snapshot snapshot = brain.build_context_prompt(query="Apple", max_chars=2000) ``` ### API แบบอะซิงโครนัส ```python import asyncio from plugins.async_wrapper import AsyncMemoryBrain async def main(): brain = AsyncMemoryBrain("./memories", enable_embeddings=False) await brain.async_retain("Hello World", fast=True) results = await brain.async_recall("Hello", k=5) print(results) brain.close() asyncio.run(main()) ``` ### เซิร์ฟเวอร์ MCP รันเซิร์ฟเวอร์ MCP ผ่าน stdio JSON-RPC: ```bash export MNEMOSYNE_MCP_TOKEN="your-secret-token" # optional token auth python -m mnemosyne.webui.mcp_server --brain-dir ./mem --namespace default ``` เซิร์ฟเวอร์ MCP เปิดเผย **55 เครื่องมือ (tools)**: | Tool | Description | | --- | --- | | `retain` | เขียนความจำ | | `recall` | เรียกคืนความจำ | | `retain_batch` | เขียนแบบกลุ่ม, เร็วขึ้น ~15× | | `stats` | สถิติขณะรันไทม์ — การเขียน / การเรียกคืน / การประหยัดโทเค็น | | `graph_query` | คำค้นหากราฟความรู้ | | `temporal_query` | คำค้นหาแบบเชื่อมโยงเวอร์ชันตามช่วงเวลา | | `list_projects` | รายการโครงการที่แยกกัน | | `doctor` | ตรวจสอบสุขภาพ — ความสมบูรณ์, จำนวนบันทึก, ดิสก์ | | `audit` | คำค้นหาร่องรอยการตรวจสอบ | | `confidence_history` | คำค้นหาเส้นทางความเชื่อมั่น | | `memory/export-v1` | ส่งออกผ่านโปรโตคอลการแลกเปลี่ยนความจำ | | `memory/import-v1` | นำเข้าผ่านโปรโตคอลการแลกเปลี่ยนความจำ | | `memory/claim` | เรียกร้องความจำจากการส่งออกภายนอก | | `memory_export-v1` | ชื่อแทนของ `memory/export-v1` สำหรับไคลเอนต์ที่ไม่รับ `/` ในชื่อเครื่องมือ | | `memory_import-v1` | ชื่อแทนของ `memory/import-v1` สำหรับไคลเอนต์ที่ไม่รับ `/` ในชื่อเครื่องมือ | | `memory_claim` | ชื่อแทนของ `memory/claim` สำหรับไคลเอนต์ที่ไม่รับ `/` ในชื่อเครื่องมือ | | `forget` | ลืมความจำหนึ่งรายการ — ตั้งค่าความเชื่อมั่นเป็น 0 และลบแบบซอฟต์ (รับ `memory_id` หรือ `query` ภาษาธรรมชาติ) | | `consolidate` | เอนจินบีบอัด·รวมความจำ — รวมความจำที่คล้ายกันมาก/มีความหมายเดียวกันเป็นความจำตัวแทนหนึ่งรายการ ความจำเดิมถูกทำเครื่องหมาย `consolidated` (`min_similarity`, `max_group`, `generate_summary`, `dry_run`) | | `reflect` | เอนจินบีบอัด·สะท้อนคิดขั้นสูง — สรุปจำนวนตามประเภท/ชั้น/ประเภทข้อเท็จจริง/การกระจายความเชื่อมั่น, เอนทิตีที่พบบ่อย, ตรวจจับข้อขัดแย้งของข้อเท็จจริง, ความหนาแน่นเชิงเวลา; `deep=true` เพิ่มการค้นหารูปแบบทางปัญญา | | `dedup` | เอนจินบีบอัด·ลบรายการซ้ำ — ตรวจจับรายการซ้ำและใกล้ซ้ำด้วยลายนิ้วมือเนื้อหา + ความคล้ายแบบเวกเตอร์/ความถี่คำ; `dry_run=true` รายงานเท่านั้น | | `recall_health` | ตัวชี้วัดคุณภาพการเรียกคืน — อ่านอย่างเดียว: อัตราผลลัพธ์ว่าง, แนวโน้ม top1, จำนวนที่ตัดด้วยขีดความเกี่ยวข้อง, ความหน่วง | | `capsule` | บีบอัดความจำเป็น pointer + facts + atoms — ไร้การสูญเสียและอ้างอิงได้ | | `expand` | กู้ข้อความต้นฉบับของแคปซูลทีละอักขระ พร้อมตรวจสอบแฮช | | `session_summarize` | สรุปเซสชัน — เจ็ดองค์ประกอบ (เป้าหมาย / ข้อจำกัด / การตัดสินใจ / ค้างคา / งานที่สร้าง / ความล้มเหลว / ความชอบ) | | `session_recall` | เรียกสรุปและรายการค้างคิวกลับตามเซสชันหรือโปรเจกต์ | | `conflict_resolve` | จำแนกและระงับความขัดแย้ง (หกประเภท ใช้ `dry_run` ก่อน) | | `task_record` | บันทึกข้อเท็จจริงของงาน — ทำอะไรไปบ้างและผลเป็นอย่างไร (ชั้นข้อเท็จจริง) | | `playbook_save` | เก็บบทเรียน — **เงื่อนไขบังคับต้องมี** (must / must_not / typical_env) | | `playbook_recall` | ค้นบทเรียนตามประเภทเป้าหมาย + เงื่อนไข คืน `applicable` / `blocked_by` | | `code_change_record` | บันทึกเหตุการณ์แก้โค้ด (เจตนา / ข้อจำกัด / วิธีที่ลองแล้วทิ้ง) | | `code_archaeology` | ย้อนรอยสายวิวัฒนาการกับดักของไฟล์หรือสัญลักษณ์ | | `memory_policy` | ดู / ตั้งค่าระดับความอ่อนไหวและนโยบายแหล่งที่มา | | `profile_card` | การ์ดโปรไฟล์ผู้ใช้ — สามระดับ (ตัวตนที่เสถียร / ความชอบและข้อจำกัด / สถานการณ์ปัจจุบัน) + รายการค้าง พร้อมใส่ลง system prompt ได้ทันที | | `memory_inject` | ไปป์ไลน์การฉีดคอนเท็กซ์ต์: สร้างคิวรี → การเรียกคืนสี่เส้นทาง → การผสาน RRF → จัดอันดับใหม่ → ฉีดภายในงบ | | `recall_catalog` | การเปิดเผยแบบไต่ระดับ·ระดับแค็ตตาล็อก: คืนเฉพาะชื่อ + บรรทัดเดียว + ต้นทุนการขยาย ไม่คืนเนื้อหา | | `expand_memory` | การเปิดเผยแบบไต่ระดับ·การขยาย: เนื้อหา + ซองหน่วย + เพื่อนบ้านกราฟ + โซ่หลักฐาน | | `memory_envelope` | ซองความจำหน่วย: แปดประเภท + scope สี่มิติ + โซ่หลักฐาน + แกนเวลาคู่ + TTL + โครงสร้าง SPO | | `memory_consolidate` | สามเส้นทางการรวม: episodic→semantic, episodic→procedural, ความล้มเหลว→ความจำเชิงลบ (idempotent) | | `memory_metrics` | ตัวชี้วัด: Chat (5) + Working (4) + Coding (4); ข้อมูลไม่เพียงพอคืน `insufficient_data` แทนที่จะเป็น 0 | | `memory_cascade_delete` | การลบแบบคาสเคด: ลบต้นทางแบบซอฟต์ → ทำให้ข้อสรุปที่ได้มาใช้ไม่ได้ → ล้างแคช → ทำสรุปที่พึ่งพาเป็น stale | | `memory_mask` | การมาส์ก: แทนที่เนื้อหาด้วยตัวยึดแต่คงโครงร่างเดิม (KV-Cache ยังใช้ซ้ำได้) | | `topic_summarize` | สรุปหัวข้อ L3: รวมสรุปเซสชัน L2 หลายรายการของโปรเจกต์เดียวกัน | | `memory_trace` | ย้อนหาตามโซ่พอยน์เตอร์ L3→L2→L1: เนื้อหาแต่ละชั้น ช่วงรอบที่ครอบคลุม และ `message_ids` | | `memory_hot_path` | บัฟเฟอร์เส้นทางร้อน: `enable` เปิดเขียนแบบอะซิงโครนัส, `status` ดูคิว, `flush` รอให้เขียนเสร็จ | | `add_memory` | บันทึกข้อความหรือประวัติบทสนทนาสำหรับผู้ใช้/ตัวแทน | | `search_memories` | ค้นหาตามความหมายพร้อมตัวกรอง | | `get_memories` | ตัวกรองโครงสร้าง + รายการแบ่งหน้า | | `get_memory` | ดึงหนึ่งรายการตาม id | | `update_memory` | เขียนทับข้อความและ/หรือเมตาดาต้า | | `delete_memory` | ลบหนึ่งรายการ | | `delete_all_memories` | ล้างขอบเขต | | `delete_entities` | ลบ entity แบบคาสเคด | | `list_entities` | รายการ users/agents/apps/runs | | `list_events` | รายการการทำงานของความจำ | | `get_event_status` | ตรวจสอบการทำงานแบบอะซิงโครนัส | เชื่อมต่อโฮสต์ MCP ใดก็ได้ (เช่น Claude Desktop, Hermes Agent ฯลฯ) โดยชี้ไปที่คำสั่ง stdio ด้านบน ### HTTP API (API / แดชบอร์ดเว็บ) ```bash python -m mnemosyne.webui.web_server --port 9090 ``` จากนั้นเปิด `http://127.0.0.1:9090` — แดชบอร์ดสีเข้มบนเครื่อง (local dark dashboard) พร้อมการเรียกดูความจำ, มุมมองกราฟ, สถิติ และจุดเชื่อมต่อ REST (REST endpoint) ผู้ใช้เริ่มต้น `admin / mnemosyne` จะถูกสร้างในการรันครั้งแรก; ควรเปลี่ยนรหัสผ่านหลังจากเข้าสู่ระบบ --- ## ปลั๊กอิน ```python # Crypto plugin (requires cryptography; degrades gracefully otherwise) brain = MemoryBrain("./memories", plugins=["crypto"]) # Numpy vector backend (requires numpy; optional sentence-transformers model) brain = MemoryBrain("./memories", plugins=["numpy_vector"]) # Reranker plugin brain = MemoryBrain("./memories", plugins=["reranker"]) ``` --- ## โครงสร้างโครงการ ``` Mnemosyne8.1.0/ ├── mnemosyne.py # Thin facade re-exporting the mnemosyne package ├── mnemosyne/ # Core engine package (brain / storage / retrieval / cognitive / notary) ├── storage/ # Storage backends (sqlite_backend / ledger / session_store / plugin_sdk) ├── context/ # Context snapshots (snapshot_builder) ├── context_engine/ # Context compression engine (engine-agnostic core + Hermes adapter) ├── lexical/ # Built-in synonym dictionary ├── profiles/ # User profile management ├── providers/ # External provider adapter + multi-source router ├── security/ # Contradiction detection + security report ├── session/ # Conversation importer ├── visualization/ # Knowledge tree generator ├── plugins/ # Extra plugins (HRR / Async) ├── mnemosyne_plugins/ # Official plugins (numpy_vector / crypto / reranker / qdrant_backend) ├── examples/ # Runnable examples (Ollama / LangChain / MCP / CLI / embedded) └── docs/ # Documentation (architecture, modules, plugins, API, deployment) ``` ## การทดสอบ ```bash python -m unittest discover -s tests -v python -m unittest tests.test_plugins -v ``` ## เอกสารประกอบ - `README_CN.md` — คำอธิบายภาษาจีน (Chinese README) - `docs/DEPLOY_DEEPSEEK_HARNESS.md` — ติดตั้งร่วมกับ DeepSeek Harness (ผ่าน MCP) - `docs/` — เอกสารฉบับเต็ม: สถาปัตยกรรม, โมเดลข้อมูล, เอกสารโมดูล, เอกสารปลั๊กอิน, การอ้างอิง API / CLI / MCP, การติดตั้งใช้งาน, การบูรณาการ - `COMPLIANCE.md` — แผนที่การปฏิบัติตามมาตรฐาน HIPAA / 等保 / GDPR / PIPL - `comparison.md` — การเปรียบเทียบคุณสมบัตกับทางเลือกอื่น - `CHANGELOG.md` — ประวัติเวอร์ชัน - รายงาน: `quality_report.md` (คุณภาพการเรียกคืน), `benchmark_report.md` (ประสิทธิภาพ), `security_report.md` (ความปลอดภัย) ## ใบอนุญาต MIT License — ดู [LICENSE](LICENSE) จัดทำโดย Mnemosyne OS contributors > การแปลนี้สร้างโดยเครื่องจักร ฉบับภาษาอังกฤษ (README.md) เป็นฉบับที่เชื่อถือได้