Letta + Ertas
使用 Letta 建構具持久化記憶體的代理——前身為 MemGPT 的框架,採用可跨會話延續的有狀態記憶體架構,並提供官方 Vercel AI SDK provider 以支援微調模型。
Overview
Letta 是 MemGPT 研究框架的正式上線繼任者,專注於建構具持久化、有狀態記憶體並可跨會話延續的代理。多數代理框架將記憶體視為單次執行內的暫態 context,而 Letta 則將記憶體視為一等公民:代理擁有結構化的記憶體階層(工作記憶體、archival 記憶體、recall 記憶體),由代理自身管理並隨時間更新。這使得長時間運行的代理能夠真正記住數週甚至數月前的互動、推理超出任何單一 context window 的資訊,並發展出持久的個性與知識庫。
此框架建構於 MemGPT 研究所開創的架構之上——以 LLM 作為「CPU」的作業系統式記憶體分頁。 代理自主決定要在工作記憶體中保留什麼、要將什麼刷新到 archival 儲存,以及在需要時要檢索什麼。這種模式意味著即使模型只有 32K 的 context window,Letta 代理也能透過將其 context 視為記憶體階層,有效地對任意長度的歷史進行運作。Letta 內附官方 Vercel AI SDK provider,使其能直接搭配 TypeScript 程式碼庫使用。
How Ertas Integrates
Ertas 訓練的模型透過標準模型設定介面驅動 Letta 代理。Letta 支援任何 OpenAI 相容端點,因此在 Ertas Studio 微調並部署到 Ollama、vLLM 或 Ertas Cloud 的模型,只需數行設定即可接入 Letta 代理。對於需要讓特定領域知識隨時間累積的使用情境,這種組合特別強大——Letta 的持久化記憶體擷取使用者特定的事實、偏好與歷史,而 Ertas 訓練的模型則在權重層級提供特定領域的推理能力。
對於需要不斷演進的代理應用,Letta + Ertas 形成持續改進迴圈。Letta 的 archival 記憶體儲存所有過去的互動;你可以定期從 Letta 的記憶體儲存中萃取高品質的對話軌跡,將其作為 Ertas Studio 中的額外訓練資料,進一步精煉模型。微調後的模型在上線環境中最常見的模式上表現更好,而 Letta 的持久化記憶體則繼續處理無法泛化的個別 context。在「烘焙進權重的領域知識」(透過 Ertas)與「每使用者的持久狀態」(透過 Letta 的記憶體)之間做這種拆分,是長時間運行的個人 AI 應用的乾淨架構。
Getting Started
- 1
於 Ertas Studio 微調你的領域模型
在你的領域語料上訓練模型。微調後的模型擷取所有 Letta 代理共享的穩定領域知識。
- 2
部署至 OpenAI 相容端點
匯出為 GGUF 並透過 Ollama、vLLM 或 Ertas Cloud 提供服務。Letta 可呼叫任何標準 chat-completion 端點。
- 3
安裝 Letta 並設定模型
安裝 letta-client(Python)或 @letta-ai/letta(TypeScript)。設定你的模型 provider 指向 Ertas 推論端點。
- 4
建立具記憶體的有狀態代理
定義一個具持久化記憶體的 Letta 代理。當對話成長超出 context window 時,Letta 會自動管理記憶體階層。
- 5
營運、演進並精煉模型
在正式上線環境執行代理。定期從 Letta 的 archival 記憶體萃取高訊號的對話,回饋至 Ertas Studio 持續改進模型。
from letta_client import Letta, LlmConfig
# Point Letta at your Ertas-trained model served via vLLM
client = Letta(base_url="http://localhost:8283")
llm_config = LlmConfig(
model="ertas-personal-assistant-14b",
model_endpoint_type="openai",
model_endpoint="http://localhost:8000/v1",
context_window=32000,
)
# Create a stateful agent with persistent memory
agent = client.agents.create(
name="alex-personal-assistant",
llm_config=llm_config,
memory={
"human": "User is Alex, an enterprise architect at FinTech Corp.",
"persona": "I'm a personal AI assistant that learns Alex's preferences over time.",
},
)
# First conversation
client.agents.messages.create(
agent_id=agent.id,
messages=[{"role": "user", "content": "I prefer concise responses, under 100 words."}],
)
# Weeks later — agent still remembers
response = client.agents.messages.create(
agent_id=agent.id,
messages=[{"role": "user", "content": "Summarize the AWS Q3 financials."}],
)
# Response is concise, matching Alex's stated preference from weeks agoBenefits
- 持久化記憶體可跨會話、數天與數月延續——真正長時間運行的代理
- 作業系統式的記憶體分頁意味著即使較小的 context window 也能產生長 context 行為
- 官方 Vercel AI SDK provider 提供一流的 TypeScript 整合
- MemGPT 的繼任者,擁有成熟的正式上線模式與穩定的 API
- 將領域知識存於微調權重中、將每使用者狀態存於持久化記憶體中
- 持續改進迴圈:萃取記憶體軌跡以微調 Ertas 模型
Related Resources
Fine-Tuning
Inference
Getting Started with Ertas: Fine-Tune and Deploy Custom AI Models
Fine-Tune AI Models Without Writing Code
Running AI Models Locally: The Complete Guide to Local LLM Inference
LangChain
Mastra
Ollama
Vercel AI SDK
vLLM
Ertas for Customer Support
Ertas for AI Automation Agencies
Ship AI that runs on your users' devices.
Early bird pricing starts at $14.50/mo — locked in for life. Plans for builders and agencies.