AI 에이전트 메모리

메모리를 사용하면 AI 에이전트가 대화 앞부분 또는 이전 대화의 정보를 기억할 수 있습니다. 이를 통해 에이전트는 컨텍스트 인식 응답을 제공하고 시간이 지남에 따라 맞춤형 환경을 구축할 수 있습니다. 완전히 관리되는 Postgres OLTP 데이터베이스인 Databricks Lakebase를 사용하여 대화 상태 및 기록을 관리합니다.

요구 사항

단기 메모리와 장기 메모리 비교

단기 메모리는 단일 대화 세션에서 컨텍스트를 캡처하는 반면 장기 메모리는 여러 대화에서 주요 정보를 추출하고 저장합니다. 둘 중 하나 또는 두 가지 유형의 메모리를 사용하여 에이전트를 빌드할 수 있습니다.

단기 및 장기 메모리가 있는 에이전트

단기 메모리 장기 메모리
스레드 ID 및 검사점을 사용하여 단일 대화 세션에서 컨텍스트 캡처
세션 내에서 후속 질문에 대한 컨텍스트 유지 관리
여러 세션에서 키 인사이트를 자동으로 추출하고 저장
과거 선호도에 기반하여 상호 작용을 개인화하기
시간에 따른 응답을 개선하는 사용자에 대한 기술 자료 빌드

시작하기

Databricks 앱에서 메모리가 있는 에이전트를 만들려면 미리 빌드된 앱 템플릿을 복제하고 AI 에이전트 작성에 설명된 개발 워크플로 를 따라 앱에 배포합니다. 다음 템플릿은 인기 있는 프레임워크를 사용하여 에이전트에 단기 및 장기 메모리를 추가하는 방법을 보여 줍니다.

LangGraph

에이전트-langgraph 고급 템플릿을 복제하여 단기 및 장기 메모리를 모두 사용하여 LangGraph 에이전트를 빌드합니다. 템플릿은 세션 전반에서 스레드 기반 대화 컨텍스트 및 영구 사용자 인사이트를 포함하여 지속적인 상태 관리를 위해 Lakebase와 함께 LangGraph의 기본 제공 검사점을 사용합니다.

git clone https://github.com/databricks/app-templates.git
cd app-templates/agent-langgraph-advanced
OpenAI 에이전트 SDK

에이전트 -openai 고급 템플릿을 복제하여 단기 메모리가 있는 OpenAI 에이전트 SDK를 사용하여 에이전트를 빌드합니다. 템플릿은 내구성 있는 상태 관리를 위해 Lakebase를 사용하여 자동 대화 기록 관리를 통해 상태 저장 다중 회차 대화를 사용할 수 있게 합니다.

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

장시간 실행 에이전트를 위한 백그라운드 실행

Databricks 앱은 HTTP 연결 시간 제한을 약 300초로 적용합니다. 백그라운드 실행을 사용하면 연결이 닫히면 이 제한을 초과하는 에이전트 작업이 계속 실행됩니다. 클라이언트는 별도의 엔드포인트에서 결과를 검색하거나 다시 연결하여 스트리밍을 다시 시작합니다.

** 고급 템플릿 — agent-langgraph-advancedagent-openai-advanced — 은 databricks-ai-bridge에서 제공하는 LongRunningAgentServer을 통해 단기 메모리와 장시간 실행 가능한 백그라운드 기능을 사용하여 기본 템플릿을 확장합니다.

  • 백그라운드 모드: 요청 본문에서 응답 ID를 즉시 반환하고 에이전트를 비동기적으로 실행하도록 설정합니다 background=true .
  • 엔드포인트 검색: 최종 결과를 가져오거나 진행 중인 실행에 대한 스트리밍 연결을 열기 위해 GET /responses/{id}을(를) 보내십시오.
  • 재개 가능한 스트리밍: 서버에서 보낸 모든 이벤트에는 sequence_number이(가) 포함됩니다. 연결이 끊어지면 starting_after=N으로/를 사용하여 다시 연결하고, 다음 이벤트부터 다시 시작합니다.
  • TASK_TIMEOUT_SECONDS 백그라운드 작업 기간을 상한으로 하는 환경 변수입니다. 이는 단일 HTTP 요청에만 적용되는 120초 Databricks Apps HTTP 연결 시간 제한과는 독립적입니다. (기본값: 1시간)

고급 템플릿 추가 정보에서는 5가지 클라이언트 모드에 대한 요청 예제를 보여 줍니다.

  • 호출: 표준 비 스트리밍 POST입니다.
  • 스트림: 표준 스트리밍 POST입니다.
  • 백그라운드 처리 후 폴링: background=true을 POST한 다음, 완료될 때까지 GET /responses/{id}을(를) 계속 폴링합니다.
  • 백그라운드 스트리밍, 스트림으로 다시 시작: POST와 background=true; 연결이 끊어지면 GET /responses/{id}stream=true로 다시 연결합니다.
  • 백그라운드 스트리밍, 폴링을 통해 재개: 동일한 시작; 연결이 끊어지면 최종 결과를 얻기 위해 GET /responses/{id}를 폴링합니다.

에이전트 배포 및 쿼리

메모리를 사용하여 에이전트를 구성한 후 AI 에이전트 작성의 단계에 따라 앱에 배포 하여 에이전트를 로컬로 실행하고, 평가하고, Databricks Apps에 배포합니다.

다음 단계