Cognee: Nền tảng bộ nhớ AI mã nguồn mở cho tác tử
Cognee cho tác tử AI bộ nhớ tồn tại xuyên phiên mà không cần nối tay graph database, vector store và session cache — đơn giản hóa việc thiết lập cho team. Postgres tích hợp là điểm cộng thực tế cho development, nhưng path production thực sự cần graph-native backend. Cân nhắc Cognee khi bạn cần một memory layer có sẵn thay vì lắp ghép từng thứ một.
Cognee là gì?
Cognee là nền tảng bộ nhớ AI mã nguồn mở thiết kế để tác tử nhớ xuyên suốt các phiên, nạp tài liệu rồi trích xuất thực thể và quan hệ lưu thành đồ thị tri thức có thể tìm kiếm. Được gia cố bởi vector embedding, bốn lời gọi API (remember, recall, forget, improve) xử lý lưu trữ, truy vấn, xóa và tinh chỉnh thông tin. Nền tảng chạy local, trong Docker, hoặc dưới dạng managed cloud service, với client chính thức cho Python, Rust, và TypeScript.
Tính năng cốt lõi cho bộ nhớ tác tử
- ✓API bốn thao tác: remember, recall, forget, improve — quản lý trọn vòng đời bộ nhớ
- ✓Lưu trữ kết hợp vector embedding với quan hệ đồ thị, hỗ trợ truy xuất theo nghĩa lẫn theo cấu trúc
- ✓Bộ nhớ phiên đồng bộ ngầm sang đồ thị tri thức vĩnh viễn
- ✓Plugin Claude Code ghi lại prompt, trace công cụ và response vào bộ nhớ phiên, duy trì ngữ cảnh qua các lần reset
- ✓Kiến trúc multi-backend: LanceDB, Postgres/pgvector, Neo4j, Qdrant, ChromaDB, Weaviate, Milvus, và adapter cộng đồng
- ✓Hỗ trợ cô lập multi-tenant với graph và vector database riêng cho từng user-dataset trên backend tương thích
- ✓Docker image cho API server và MCP server publish lên Docker Hub mỗi lần push vào main
- ✓Benchmark trên BEAM long-context: 0.79 ở 100K tokens, 0.67 ở 10M tokens
Ứng dụng thực tế của Cognee
- •Xây agent hỗ trợ khách hàng theo dõi lịch sử tương tác, hành động thất bại và case đã giải quyết xuyên phiên
- •Tạo SQL copilot học và tái sử dụng pattern truy vấn và cách reason của chuyên gia
- •Hợp nhất dữ liệu từ nhiều kênh công ty thành đồ thị tri thức chung để mọi agent đều truy vấn được
- •Cho Claude Code bộ nhớ dai dẳng sống sót qua reset ngữ cảnh và ranh giới phiên
- •Chạy trợ lý nghiên cứu AI duy trì ontology phình dần của paper, khái niệm và mối quan hệ giữa chúng
- •Xây expert system theo domain mà agent học từ feedback và cải thiện theo thời gian
Ưu điểm khi dùng Cognee
- ✓Tùy chọn self-hosted không lock-in vendor, data không ra khỏi hạ tầng của bạn
- ✓Chạy cả stack bộ nhớ trên Postgres lúc dev, giảm số service cần quản lý đáng kể
- ✓Bộ nhớ dựa trên đồ thị giữ được quan hệ giữa các sự kiện, không chỉ độ tương đồng
- ✓Client Rust và TypeScript chính thức mở rộng nền tảng ra khỏi phạm vi Python
- ✓Cô lập multi-tenant có sẵn cho cả graph và vector layer trên backend tương thích
- ✓Phát triển tích cực, có paper nghiên cứu công bố làm nền tảng cho các quyết định kiến trúc
Những điều cần cân nhắc
- △Graph backend trên Postgres chỉ là demo; workload graph production cần graph-native database
- △Cô lập multi-tenant yêu cầu cả graph và vector layer phải hỗ trợ, config sai hoặc dùng backend không tương thích sẽ raise error
- △Bước self-tuning `AUTO_FEEDBACK` sau truy vấn thêm latency vào mọi read, không chọn áp dụng từng query được
- △Không có chế độ offline; tích hợp LLM là phụ thuộc bắt buộc cho memory improvement và sinh ontology
- △Docker Desktop hoặc OCI-compatible runtime bắt buộc cho UI local — có thể bất ngờ với dev chỉ muốn CLI
Bắt đầu với Cognee
Cài qua pip, uv, hoặc poetry. Yêu cầu Python 3.10 đến 3.14. Chạy `uv pip install cognee` cho core package, hoặc thêm `[postgres]` cho stack Postgres. Config qua biến môi trường: đặt `LLM_API_KEY` cho language model, rồi trỏ tới backend với `DB_PROVIDER`, `VECTOR_DB_PROVIDER`, `GRAPH_DATABASE_PROVIDER`. File `.env.template` trong repo liệt kê toàn bộ option. Docker user có thể pull `cognee/cognee:main` trực tiếp hoặc dùng docker-compose có sẵn với profile tùy chọn cho UI, MCP server, Postgres, và Neo4j.
Tích hợp Cognee vào tác tử AI
Import cognee trong async Python code rồi gọi bốn thao tác. `await cognee.remember("your text here")` lưu vĩnh viễn vào đồ thị tri thức. Truyền `session_id` để đi qua session cache. `await cognee.recall("your query")` truy vấn với routing tự động tới chiến lược truy xuất tốt nhất. `await cognee.forget(dataset="name")` xóa dataset. Flag môi trường cho phép đánh đổi chất lượng bộ nhớ lấy tốc độ: `AUTO_FEEDBACK=false` tắt bước self-tuning sau truy vấn, `CACHING=false` tắt hẳn bộ nhớ phiên. CLI cung cấp các thao tác tương đương: `cognee-cli remember`, `cognee-cli recall`, và `cognee-cli forget --all`.
Các lựa chọn thay thế
Câu hỏi thường gặp
Có. Cognee phát hành theo giấy phép Apache-2.0. Repository, tài liệu và source code công khai trên GitHub.
Client chính là Python. Cognee cũng có client chính thức cho Rust (cognee-rs) và TypeScript (@cognee/cognee-ts), nằm ở repository riêng và được publish thành package riêng.
Cả hai. Tự host bằng Docker, Docker Compose, Modal, Railway, Fly.io, hoặc Render với script deploy có sẵn. Cognee Cloud cung cấp tùy chọn managed đầy đủ. Hoặc kết nối bất kỳ Python agent nào tới Cognee instance từ xa qua cognee.serve(url, api_key).
Có, có điều kiện. Khi bật ENABLE_BACKEND_ACCESS_CONTROL, mỗi tổ hợp user-dataset được cấp graph và vector database riêng biệt. Cả hai layer phải hỗ trợ cô lập: backend tương thích cho graph gồm Ladybug, Kuzu, Neo4j; cho vector gồm LanceDB, PGVector.
Cognee hỗ trợ nhiều backend ở ba layer. Graph: Ladybug, Kuzu (mặc định), Neo4j, Neptune, Postgres (demo). Vector: LanceDB (mặc định), PGVector, Qdrant, ChromaDB, Weaviate, Milvus, và adapter cộng đồng. Session: Redis, Postgres, hoặc SQLite.
Không. README rõ ràng ghi graph backend trên Postgres là tính năng demo. Các layer quan hệ, vector, và session trên Postgres thì production-ready; chức năng graph trên Postgres thì không. Workload graph production cần backend graph-native như Neo4j.
Bài toán mà Cognee giải quyết
Các framework tác tử cho bạn công cụ để suy nghĩ và hành động, nhưng không có gì nhớ chuyện đã xảy ra tuần trước, tháng trước, hay quý trước. Vector store giải quyết được bài toán truy xuất nhưng đánh mất mối quan hệ giữa các sự kiện. Hệ thống RAG cần build lại cho mỗi phiên. Cuối cùng dev lại tự cuộn cửa sổ ngữ cảnh rời rạc, mất đi việc học dài hạn khiến tác tử thực sự hữu ích theo thời gian.
Nên dùng hay nên bỏ
Chọn Cognee nếu bạn đang xây agent AI chạy nhiều phiên và không muốn lắp ghép memory stack từ vector store, graph database, session cache riêng. Đặc biệt phù hợp với team Python hoặc TypeScript cần tùy chọn self-hosted với kiến trúc có nghiên cứu hậu thuẫn. Postgres-integration làm nó thực tế cho dev đơn lẻ và team nhỏ muốn single-service memory layer lúc development. Bỏ qua nếu tác tử không cần bộ nhớ dai dẳng xuyên phiên, nếu đã đầu tư vào framework khác có hệ thống bộ nhớ riêng, hoặc nếu cần cô lập graph production-grade ngay hôm nay và không thể chờ managed offering.
Repo liên quan
cognee có đáng để bạn bỏ thời gian?
ChatGPT, Claude và Perplexity đều đọc được trang này. Hỏi thử xem họ nghĩ gì về cognee.
