
AIrecall là gì?
AIrecall là một lớp bộ nhớ dài hạn có thể tích hợp trực tiếp cho các tác nhân AI. Công cụ này bảo toàn thông tin hữu ích giữa các phiên làm việc, thay vì buộc tác nhân chỉ dựa vào cửa sổ ngữ cảnh hiện tại. Dự án kết hợp SDK Python, máy chủ bộ nhớ Go, bộ lưu trữ SQLite và một chỉ mục vector trong tiến trình.
AIrecall được thiết kế để giữ cho các prompt tập trung. Thay vì chèn toàn bộ lịch sử tương tác vào mỗi yêu cầu, tác nhân của bạn có thể truy xuất những ký ức phù hợp nhất với lượt hiện tại.
Các loại bộ nhớ và tính năng chính
- Bộ nhớ tình tiết: Lưu trữ các sự kiện theo thứ tự, bao gồm cuộc trò chuyện, hành động và kết quả.
- Bộ nhớ ngữ nghĩa: Bảo toàn các sự kiện và tùy chọn lâu dài được chắt lọc từ những tình tiết trước đó.
- Truy xuất kết hợp: Kết hợp đối sánh từ khóa với độ tương đồng vector trên cả bộ nhớ tình tiết và ngữ nghĩa.
- Tóm tắt tự động: Định kỳ nén các tình tiết cũ và trích xuất sự kiện lâu dài thay vì chỉ xóa lịch sử.
- Lưu trữ cục bộ bền vững: Sử dụng SQLite cùng chỉ mục vector trong tiến trình.
- Vận hành linh hoạt: Máy chủ bộ nhớ có thể chạy cục bộ hoặc dưới dạng sidecar.
AIrecall hoạt động như thế nào?
Trong mỗi lượt, SDK Python gửi truy vấn hiện tại đến AIrecall Core thông qua một lệnh gọi cục bộ hoặc gRPC. Core tìm kiếm bộ nhớ tình tiết và ngữ nghĩa bằng từ khóa và độ tương đồng vector, xếp hạng kết quả, rồi trả về những ký ức liên quan nhất để chèn vào prompt của tác nhân.
Ở chế độ nền, một trình tóm tắt xử lý các tình tiết cũ. Trình này trích xuất thông tin lâu dài vào bộ nhớ ngữ nghĩa và thu gọn phần lịch sử còn lại, giúp các tác nhân chạy lâu dài duy trì kiến thức hữu ích mà không liên tục mở rộng ngữ cảnh đang hoạt động.
Cài đặt và thiết lập
Cài đặt SDK Python
Cài đặt gói được tác nhân Python của bạn import:
pip install airecall-sdk
Khởi tạo bộ nhớ cục bộ
Tạo khung cho kho bộ nhớ SQLite cục bộ bằng giao diện dòng lệnh:
airecall init
Thiết lập này cho phép bạn bắt đầu lưu trữ và truy xuất ký ức ngay lập tức mà không cần một dịch vụ riêng.
Cài đặt hoặc chạy máy chủ bộ nhớ
Nếu muốn máy chủ bộ nhớ Core khả dụng cục bộ hoặc dưới dạng sidecar, hãy cài đặt phần bổ sung máy chủ:
pip install airecall-sdk[server]
Sau đó, bạn có thể chạy máy chủ dưới dạng một tiến trình độc lập:
airecall serve
Bản thân SDK chỉ sử dụng thư viện chuẩn. Theo README của dự án, máy chủ sử dụng một phần phụ thuộc Go thuần.
Cách sử dụng cơ bản
Tạo một phiên bản Memory
Import Memory và gán mã định danh cho tác nhân:
from airecall import Memory
memory = Memory(agent_id="support-bot")
agent_id xác định tác nhân có ký ức được lưu trữ và truy xuất. Hãy sử dụng cùng một mã định danh khi muốn các phiên sau truy cập cùng một tập hợp ký ức.
Lưu trữ bộ nhớ tình tiết
Sử dụng remember để ghi lại điều đã xảy ra trong một tương tác:
memory.remember(
"User asked about refund policy for order ORD-9921, told 30-day window applies."
)
Đây là bộ nhớ tình tiết vì nó ghi lại một sự kiện cụ thể và kết quả của sự kiện đó.
Truy xuất ngữ cảnh liên quan
Trong một phiên sau đó, gọi recall với câu hỏi hiện tại:
context = memory.recall(
"what did we tell this user about refunds?"
)
AIrecall tìm kiếm các ký ức đã lưu và trả về tình tiết liên quan được xếp hạng theo mức độ phù hợp. Sau đó, ứng dụng của bạn có thể thêm ngữ cảnh được trả về vào prompt gửi cho mô hình.
Lưu trữ một sự kiện lâu dài
Thông tin cần tiếp tục hữu ích ngoài một sự kiện có thể được chủ động đưa vào bằng remember_fact:
memory.remember_fact(
key="preferred_contact",
value="email, not phone"
)
Thao tác này tạo bộ nhớ ngữ nghĩa cho một tùy chọn ổn định thay vì chỉ ghi thêm một tình tiết theo trình tự thời gian.
Sử dụng bộ chuyển đổi LangChain
AIrecall tích hợp một bộ chuyển đổi LangChain có tên MemoryRetriever. Bọc một phiên bản Memory hiện có để tạo trình truy xuất:
from airecall import Memory
from airecall.adapters.langchain import MemoryRetriever
memory = Memory(agent_id="support-bot")
retriever = MemoryRetriever(memory)
README minh họa cách tạo bộ chuyển đổi nhưng không nêu cấu hình bổ sung cho chain hoặc trình truy xuất. Hãy tuân theo API hiện tại của bộ chuyển đổi khi tích hợp đối tượng được tạo vào một ứng dụng LangChain lớn hơn.
Mẫu tích hợp thực tế
- Tạo một phiên bản
Memorycho tác nhân. - Trước khi tạo phản hồi, gọi
recallvới truy vấn hiện tại của người dùng. - Chèn những ký ức liên quan được trả về vào prompt của mô hình làm ngữ cảnh hỗ trợ.
- Sau tương tác, gọi
rememberđể lưu sự kiện, hành động hoặc kết quả quan trọng. - Sử dụng
remember_factkhi ứng dụng xác định một tùy chọn hoặc sự kiện lâu dài cần được lưu giữ một cách rõ ràng.
Mẫu này tránh đưa toàn bộ lịch sử vào mọi prompt, đồng thời vẫn cho phép tác nhân truy cập các quyết định trước đây và tùy chọn của người dùng khi cần.
Mẹo nâng cao
Tách sự kiện khỏi kiến thức lâu dài
Sử dụng bộ nhớ tình tiết cho những gì đã xảy ra trong một tương tác cụ thể. Sử dụng bộ nhớ ngữ nghĩa cho các sự kiện và tùy chọn ổn định. Ví dụ, cuộc thảo luận về hoàn tiền thuộc về một tình tiết, trong khi tùy chọn liên lạc qua email của người dùng là một sự kiện lâu dài.
Giữ mã định danh tác nhân nhất quán
Chọn một agent_id ổn định cho các phiên cần dùng chung bộ nhớ. Việc thay đổi mã định danh sẽ tạo ra một phạm vi bộ nhớ khác theo góc nhìn của ứng dụng.
Chọn Chế Độ Triển Khai Phù Hợp
Đối với quy trình cục bộ đơn giản, hãy khởi tạo kho lưu trữ dựa trên SQLite bằng airecall init. Đối với kiến trúc cần một tiến trình bộ nhớ chuyên dụng, hãy cài đặt phần bổ sung máy chủ và chạy airecall serve cục bộ hoặc dưới dạng sidecar.
Cho Phép Chỉ Mục Khởi Động Hoàn Tất
Nếu truy vấn đầu tiên phát sinh RecallTimeout, chỉ mục vector có thể vẫn đang khởi động. Hãy thử lại sau khi endpoint kiểm tra trạng thái báo cáo status: ready.
Sử Dụng Đường Dẫn Lưu Trữ Đáng Tin Cậy
Nếu bộ nhớ dường như bị thiếu sau khi khởi động lại, hãy kiểm tra đường dẫn storage.backend. Đường dẫn tương đối được phân giải dựa trên thư mục làm việc của tiến trình máy chủ, vì vậy việc khởi chạy máy chủ từ một thư mục khác có thể trỏ máy chủ đến một kho lưu trữ khác. Hãy sử dụng thư mục làm việc hoặc đường dẫn lưu trữ nhất quán.
Kết Luận
AIrecall cung cấp cho các tác nhân AI bộ nhớ dài hạn theo tập và ngữ nghĩa mà không yêu cầu mọi tương tác cũ phải luôn nằm trong lời nhắc. Với API Python nhỏ gọn, bộ lưu trữ dựa trên SQLite, tính năng truy xuất kết hợp và tóm tắt tự động, công cụ này mang đến một cách thiết thực để duy trì ngữ cảnh liên quan giữa các phiên. Bắt đầu bằng airecall init, ghi lại các tập bằng remember, truy xuất chúng bằng recall và lưu kiến thức lâu dài bằng remember_fact.
