メインコンテンツまでスキップ

セルフマネージド型エージェントメモリ (Lakebase)

セルフマネージド型エージェントメモリは、エージェントの永続的なメモリストアとして、DatabricksのLakebase(フルマネージド型Postgres OLTPデータベース)を使用します。このアプローチは、メモリへの直接的なSQLアクセス(たとえば、既存のデータパイプラインとメモリを統合する場合、またはカスタムスキーマを使用する場合)、あるいはLakebaseによってサポートされる短期メモリが必要な場合に使用します。このアプローチでは、データベーススキーマ、接続設定、およびアクセス制御を管理する必要があります。

SQLに直接アクセスしたり、カスタムスキーマが必要ない場合は、DatabricksがUnity Catalogを通じて管理するマネージドエージェントメモリをご利用ください。2つのアプローチの比較については、Agent memoryを参照してください。

要件

短期メモリと長期メモリ

自己管理型メモリは、短期メモリと長期メモリの両方をサポートしており、いずれかまたはその両方でエージェントを構築できます:

  • 短期メモリ は、スレッドIDとチェックポイントを使用して、単一の会話セッションのコンテキストをキャプチャします。セッション内のフォローアップの質問のコンテキストを維持します。
  • 長期記憶 は、複数の会話にわたって重要な情報を抽出し、保存します。過去の嗜好に基づいてインタラクションをパーソナライズし、ユーザーに関するナレッジベースを構築することで、時間とともに応答が改善されます。

メモリタイプがどのように機能するかについては、エージェントメモリを参照してください。

短期記憶と長期記憶を持つエージェント

使用を開始

Databricks Appsでメモリを持つエージェントを作成するには、事前構築済みのアプリテンプレートを複製し、AIエージェントを作成してAppsにデプロイするに記載されている開発ワークフローに従ってください。以下のテンプレートは、一般的なフレームワークを使用してエージェントに短期および長期のメモリを追加する方法を示します。

LangGraph

agent-langgraph-advancedテンプレートをクローンして、短期メモリと長期メモリの両方を持つLangGraphエージェントを構築します。このテンプレートは、LangGraphの組み込みチェックポイント機能とLakebaseを使用して、スレッドベースの会話コンテキストやセッションをまたがる永続的なユーザー知見を含む、耐久性のある状態管理を行います。

Bash
git clone https://github.com/databricks/app-templates.git
cd app-templates/agent-langgraph-advanced

OpenAI Agent SDK

agent-openai-advancedテンプレートを複製して、短期記憶を備えたOpenAI Agents SDKを使用してエージェントを構築します。このテンプレートは、Lakebaseを使用して永続的な状態管理を行い、自動的な会話履歴管理によりステートフルなマルチターン会話を可能にします。

Bash
git clone https://github.com/databricks/app-templates.git
cd app-templates/agent-openai-advanced

長時間実行エージェントのバックグラウンド実行

高度なテンプレート agent-langgraph-advancedagent-openai-advanced は、databricks-ai-bridgeからのLongRunningAgentServerを介した短期記憶と長時間実行されるバックグラウンド実行で基本テンプレートを拡張します。これらは、Databricks AppsのHTTP接続タイムアウトを超えてエージェントタスクの実行を継続できるバックグラウンドモードとストリーミングモードを追加し、結果取得のためのポーリングやストリーミング接続の再開をサポートします。完全なクライアント契約については、高度なテンプレートのREADMEを参照してください。

エージェントのデプロイとクエリ

エージェントにメモリを設定した後、AIエージェントを作成してDatabricks Appsにデプロイするのステップに従って、エージェントをローカルで実行し、評価し、Databricks Appsにデプロイします。

次のステップ