Mnemo: Lớp bộ nhớ AI cục bộ cho mọi LLM, giúp AI không còn "mất trí nhớ"

Phần mềm03 tháng 6, 2026·4 phút đọc

Mnemo là một dự án mã nguồn mở viết bằng Rust, cung cấp lớp bộ nhớ dài hạn hoạt động cục bộ cho các mô hình ngôn ngữ lớn (LLM). Công cụ này sử dụng SQLite để xây dựng đồ thị tri thức, cho phép trích xuất thực thể và truy xuất ngữ nghĩa nhanh chóng dưới 50ms mà không cần phụ thuộc vào dịch vụ đám mây.

Mnemo: Lớp bộ nhớ AI cục bộ cho mọi LLM, giúp AI không còn "mất trí nhớ"

Mnemo: Lớp bộ nhớ AI cục bộ cho mọi LLM, giúp AI không còn "mất trí nhớ"

Trạng thái GitHub ActionsTrạng thái GitHub Actions

Hầu hết các mô hình ngôn ngữ lớn (LLM) hiện nay đều có một điểm yếu lớn: chúng quên sạch mọi thứ ngay khi cuộc hội thoại kết thúc. Mnemo ra đời để giải quyết vấn đề này bằng cách cung cấp một lớp bộ nhớ AI hoạt động ưu tiên trên nền tảng cục bộ (local-first).

Mnemo là một dịch vụ sidecar đi kèm, giám sát mọi hội thoại mà bạn cung cấp, trích xuất các thực thể được đặt tên và mối quan hệ bằng cách sử dụng LLM, xây dựng một đồ thị tri thức bền vững trong SQLite và tự động tiêm lại ngữ cảnh liên quan vào các câu lệnh trong tương lai — tất cả diễn ra trong vòng dưới 50ms.

Mnemo hoạt động như thế nào?

Mnemo đóng vai trò trung gian giữa ứng dụng của bạn và LLM. Quy trình hoạt động của nó bao gồm hai giai đoạn chính: Tiêu thụ (Ingest)Truy xuất (Retrieve).

Khi bạn gửi văn bản thô đến endpoint /ingest (ví dụ: một lượt hội thoại, tài liệu hoặc ghi chú), Mnemo sẽ chuyển nó đến LLM đã cấu hình để trích xuất các thực thể (con người, công cụ, địa điểm, khái niệm) và mối quan hệ giữa chúng. Các thực thể này được khử trùng lặp theo tên và loại, các bí danh được gộp lại, và mọi thứ được ghi vào cơ sở dữ liệu SQLite. Đồ thị trong bộ nhớ (sử dụng thư viện petgraph) cũng được cập nhật một cách nguyên tử.

Khi bạn cần truy xuất thông tin qua endpoint /retrieve, Mnemo sẽ chạy một quy trình gồm 6 giai đoạn: tìm kiếm đoạn văn bản theo toàn văn -> tìm kiếm tên thực thể -> mở rộng đồ thị (duyệt BFS trên đồ thị tri thức) -> lọc mối quan hệ -> tính điểm và xếp hạng -> cuối cùng là lắp ráp chuỗi context_prompt.

Bạn chỉ cần tiêm context_prompt này vào system prompt của LLM là hoàn tất.

Giấy phép MITGiấy phép MIT

Tính năng và Hiệu suất

Mnemo được thiết kế để hoạt động hoàn toàn cục bộ, đảm bảo quyền riêng tư tối đa và không phụ thuộc vào bất kỳ dịch vụ đám mây nào. Nó tương thích với Ollama (hoàn toàn miễn phí và cục bộ), OpenAI, Anthropic hoặc bất kỳ API nào tương thích với OpenAI.

Dưới đây là một số chỉ số hiệu suất ấn tượng trên phần cứng Apple M2 (chế độ Debug, bản Release sẽ nhanh hơn 3-5 lần):

  • Chèn thực thể (SQLite): ~0,12 ms
  • Tìm kiếm toàn văn: ~0,28 ms
  • Mở rộng đồ thị lân cận (độ sâu=2): ~0,89 ms
  • Toàn bộ quy trình truy xuất: ~4,2 ms

Cài đặt và Sử dụng nhanh

Mnemo cung cấp nhiều cách cài đặt linh hoạt để phù hợp với nhu cầu của nhà phát triển.

Cách 1: Docker + Ollama (Khuyên dùng)

Đây là cách nhanh nhất để bắt đầu với Ollama.

git clone https://github.com/zaydmulani09/mnemo
cd mnemo
docker compose up -d

# Kéo mô hình llama3 lần đầu tiên (~4 GB)
docker exec mnemo-ollama ollama pull llama3

# Kiểm tra trạng thái hệ thống
curl http://localhost:8080/health

Docker PullsDocker Pulls

Cách 2: Binary độc lập

Bạn có thể cài đặt trực tiếp thông qua Cargo nếu đã có Ollama hoặc OpenAI chạy riêng biệt.

cargo install --path crates/mnemo-api

# Với Ollama
export MNEMO_LLM_BASE_URL=http://localhost:11434/v1
mnemo-api

Cách 3: Python SDK

Đối với các nhà phát triển Python, Mnemo cung cấp một SDK dễ sử dụng.

pip install mnemo-sdk
from mnemo import MnemoClient

client = MnemoClient()  # máy chủ tại http://localhost:8080

# Lưu trữ một ký ức
client.ingest("Tôi đang xây dựng một cơ sở dữ liệu vector Rust gọi là vecdb")

# Lấy ngữ cảnh để tiêm vào câu lệnh LLM tiếp theo
print(client.get_context("Tôi đang làm việc trên cái gì?"))

Kiến trúc Kỹ thuật

Mnemo được xây dựng dựa trên bốn crate Rust chính hoạt động kết hợp với nhau:

  • mnemo-core: Thư viện lõi chịu trách nhiệm trích xuất thực thể, thao tác đồ thị, công cụ truy xuất và lớp DB.
  • mnemo-api: Binary cung cấp REST API sử dụng Axum, đóng vai trò lớp xử lý mỏng trên mnemo-core.
  • mnemo-cli: Công cụ dòng lệnh sử dụng reqwest blocking để tương tác với API.
  • mnemo-bench: Binary chạy các bài kiểm tra hiệu suất (12 bộ benchmark).

Crates.ioCrates.io

Mnemo là một công cụ mạnh mẽ cho các nhà phát triển muốn xây dựng các ứng dụng AI có khả năng "ghi nhớ" bền bỉ mà vẫn đảm bảo tính riêng tư và tốc độ cao nhờ xử lý cục bộ. Dự án hiện đang được phát triển tích cực và chào đón các đóng góp từ cộng đồng.

Chia sẻ:FacebookX
Nội dung tổng hợp bằng AI, mang tính tham khảo. Xem bài gốc ↗