Agentkeeper đã giải quyết vấn đề Goldfish Memory (trí nhớ ngắn hạn) trong các tác nhân AI. Phiên bản 1.1 hiện đã ra mắt.
Điểm: 1 Bình luận: 0
AgentKeeper
Cơ sở hạ tầng duy trì nhận thức cho các tác nhân AI hoạt động lâu dài.
Tác nhân của bạn vẫn tồn tại qua các lần chuyển đổi mô hình, sự cố, giới hạn cửa sổ ngữ cảnh và khởi động lại — với cùng một danh tính, bộ nhớ và các ưu tiên như trước đây.
Lý do tồn tại
Các tác nhân không thất bại vì chúng quên sự thật. Chúng thất bại vì chúng mất đi tính liên tục về nhận thức — trạng thái, ưu tiên và danh tính của chúng bị trôi dạt ngay khi mô hình thay đổi, cửa sổ ngữ cảnh đầy hoặc quá trình khởi động lại.
AgentKeeper coi đây là một vấn đề hệ thống, không phải vấn đề bộ nhớ.
Cài đặt
pip install agentkeeper-ai
Không yêu cầu phụ thuộc. Không có cơ sở hạ tầng bên ngoài. Lưu trữ mặc định là SQLite cục bộ.
pip install 'agentkeeper-ai[anthropic]' # Claude
pip install 'agentkeeper-ai[openai]' # GPT + OpenAI embeddings
pip install 'agentkeeper-ai[gemini]' # Gemini
pip install 'agentkeeper-ai[semantic]' # Local embeddings (sentence-transformers)
pip install 'agentkeeper-ai[mcp]' # MCP server (Claude Desktop, Cursor, Codex)
pip install 'agentkeeper-ai[encrypted]' # Encrypted storage at rest
pip install 'agentkeeper-ai[all]' # Everything
Năm điều AgentKeeper thực hiện mà không có công cụ nào khác làm được
1. Danh tính tồn tại qua mọi thứ
Các nguyên tắc và ràng buộc được bảo vệ — miễn trừ khỏi mọi quá trình nén, được đưa vào mọi ngữ cảnh được tái tạo, bất kể ngân sách token. Chúng tồn tại qua sự phân rã, hợp nhất, phân xử mâu thuẫn, chuyển đổi mô hình và khởi động lại quá trình.
import agentkeeper
agent = agentkeeper.create(agent_id="aria", provider="anthropic")
agent.set_identity(
name="Aria",
role="EU insurance broker copilot",
principles=["never share PII without explicit consent"],
constraints=["EU data residency only"],
)
agent.principle("always confirm budget changes in writing")
agent.fact("client: Acme Corporation", importance=0.95)
agent.event("contract signed", when="2026-05-15")
agent.save()
# 100 chu kỳ nén sau — danh tính vẫn nguyên vẹn.
2. Cùng bộ nhớ, chuyển đổi mô hình
Trạng thái nhận thức được tái tạo theo định dạng mà mỗi mô hình mong đợi. XML cho Claude, các phần được gắn nhãn cho GPT-4, văn xuôi tường thuật cho Gemini, các token ngắn gọn cho Ollama. Một tác nhân, bốn môi trường chạy, không cần viết lại.
agent = agentkeeper.load("aria", provider="anthropic")
response = agent.ask("What do we know about Acme?")
agent.switch_provider("openai").save()
response = agent.ask("Same question, different model.")
# Bộ nhớ và danh tính vẫn nguyên vẹn. Định dạng đã thay đổi. Không có gì bị hỏng.
3. TTL cho GDPR — bộ nhớ tự hết hạn
Các sự kiện và bộ ba đồ thị chấp nhận một TTL (thời gian tồn tại). Khi hết hạn, purge_expired() sẽ loại bỏ chúng. Không cần dọn dẹp thủ công. Tuân thủ theo mặc định.
agent.fact("session token: abc123", ttl="1h")
agent.fact("audit log reference: Q1-2026", ttl="90d")
agent.link("Acme", "signed_contract", "ThinkLanceAI", ttl="2y")
agent.purge_expired() # loại bỏ những gì đã hết hạn, giữ lại những gì được bảo vệ
4. Duyệt đồ thị — các mối quan hệ có cấu trúc cùng với bộ nhớ văn xuôi
Các sự kiện là văn xuôi. Các bộ ba là cấu trúc. Cả hai đều tồn tại trong cùng một tác nhân, với chính sách lưu giữ và TTL riêng.
agent.link("Acme", "owns", "Globex")
agent.link("Globex", "located_in", "BE")
agent.link("Alice", "works_at", "Acme", confidence=0.9)
related = agent.find_related("Acme", max_hops=2, direction="out")
# {"Globex": 1, "BE": 2, "Alice": 1}
5. Kết nối với Claude Desktop qua MCP
AgentKeeper cung cấp một máy chủ MCP. Bất kỳ máy khách nào hỗ trợ MCP — Claude Desktop, Cursor, Claude Code — đều có quyền truy cập đầy đủ vào lớp nhận thức của tác nhân mà không cần viết một dòng mã tích hợp nào.
agentkeeper-mcp --agent-id aria --provider anthropic
claude_desktop_config.json:
{
"mcpServers": {
"aria": {
"command": "agentkeeper-mcp",
"args": ["--agent-id", "aria", "--provider", "anthropic"]
}
}
}
Các công cụ có sẵn qua MCP: add_fact, recall, set_identity, link, find_related, compress, health, gdpr_export, purge_expired, checkpoint, restore, list_checkpoints.
6. Checkpoints – chụp nhanh, khôi phục, tồn tại sau sự cố
Đóng băng toàn bộ trạng thái nhận thức thành một bản chụp nhanh bất biến, được băm theo nội dung. Khôi phục bản chụp nhanh này sau sự cố, tràn cửa sổ ngữ cảnh, chuyển đổi mô hình hoặc khởi động lại quy trình. Đính kèm một tải trọng execution_state (trạng thái thực thi) không rõ ràng (tệp hiện tại, tác vụ đang chờ xử lý, việc cần làm) – AgentKeeper lưu trữ và trả về nguyên văn; nó không bao giờ diễn giải hoặc chạy tải trọng này.
snap = agent.checkpoint(
label="before refactor",
execution_state={
"current_file": "auth.py",
"pending_task": "finish RS256 migration",
},
)
# sự cố, khởi động lại, chuyển đổi mô hình – bộ nhớ quy trình bị mất
agent = agentkeeper.load("aria").restore(snap.snapshot_id)
# danh tính, sự kiện, đồ thị và execution_state đã được khôi phục
agentkeeper.diff(snap_a, snap_b) # khác biệt thực tế: các sự kiện được thêm/xóa/sửa đổi
agent.list_checkpoints() # mọi bản chụp nhanh, bản cũ nhất trước
Việc tái tạo là có tính xác định – cùng một bản chụp nhanh luôn xây dựng lại cùng một trạng thái nhận thức, được xác minh bằng hàm băm nội dung. Hành vi không được đảm bảo: AgentKeeper khôi phục trạng thái của tác nhân, không phải quyết định tiếp theo của mô hình. Bản demo khôi phục sự cố chạy mà không cần khóa API:
python examples/crash_recovery.py
Kiến trúc
┌──────────────────────────────────────────────────────────────┐
│ API công khai của AgentKeeper │
│ agent.remember() · agent.recall() · agent.ask() │
│ agent.compress() · agent.link() · agent.find_related() │
│ agent.set_identity() · agent.purge_expired() · agent.save() │
└────────────────────────────┬─────────────────────────────────┘
│
┌────────────────────────────▼─────────────────────────────────┐
│ Công cụ tái tạo nhận thức (CRE) │
│ Chèn danh tính · xếp hạng tầm quan trọng · tăng cường ngữ nghĩa │
│ Ngân sách token · hiển thị theo hồ sơ │
└─┬───────────┬────────────┬────────────┬──────────────────────┘
│ │ │ │
┌─────▼─────┐ ┌──▼─────────┐ ┌▼──────────┐ ┌▼──────────────┐
│ Bộ nhớ │ │ Nhận thức │ │ Nén nhận │ │ Dịch đa mô hình │
│ Phân cấp │ │ ngữ nghĩa │ │ thức │ │ │
│ │ │ │ │ │ │ │
│ làm việc │ │ nhúng │ │ phân rã │ │ XML (Claude) │
│ theo tập │ │ chỉ mục vector │ │ hợp nhất │ │ các phần (GPT)│
│ ngữ nghĩa │ │ sqlite-vec │ │ mâu thuẫn │ │ narra
Nguồn tin: Hacker News AI — Tác giả: tomtom1977. Bản dịch tiếng Việt do AI thực hiện, có thể có sai sót.