Skip to content

내장 메모리 엔진

내장 엔진은 기본 메모리 백엔드입니다. 에이전트별 SQLite 데이터베이스에 메모리 인덱스를 저장하며 시작하기 위한 추가 종속성이 필요하지 않습니다.

제공하는 것

  • FTS5 전문 인덱싱 (BM25 점수)을 통한 키워드 검색.
  • 지원되는 프로바이더의 임베딩을 통한 벡터 검색.
  • 최상의 결과를 위해 둘 다 결합하는 하이브리드 검색.
  • 중국어, 일본어, 한국어용 트라이그램 토크나이저를 통한 CJK 지원.
  • 인데이터베이스 벡터 쿼리를 위한 sqlite-vec 가속 (선택적).

시작하기

OpenAI, Gemini, Voyage, 또는 Mistral의 API 키가 있다면 내장 엔진이 자동으로 감지하고 벡터 검색을 활성화합니다. 구성이 필요하지 않습니다.

프로바이더를 명시적으로 설정하려면:

json5
{
  agents: {
    defaults: {
      memorySearch: {
        provider: "openai",
      },
    },
  },
}

임베딩 프로바이더 없이는 키워드 검색만 사용 가능합니다.

지원되는 임베딩 프로바이더

프로바이더ID자동 감지참고
OpenAIopenai기본값: text-embedding-3-small
Geminigemini멀티모달 지원 (이미지 + 오디오)
Voyagevoyage
Mistralmistral
Ollamaollama아니오로컬, 명시적으로 설정
Locallocal예 (첫 번째)GGUF 모델, ~0.6 GB 다운로드

자동 감지는 API 키를 확인할 수 있는 첫 번째 프로바이더를 표시된 순서로 선택합니다. 오버라이드하려면 memorySearch.provider를 설정하십시오.

인덱싱 작동 방식

OpenClaw는 MEMORY.mdmemory/*.md를 청크 (~400 토큰, 80 토큰 오버랩)로 인덱싱하고 에이전트별 SQLite 데이터베이스에 저장합니다.

  • 인덱스 위치: ~/.openclaw/memory/<agentId>.sqlite
  • 파일 감시: 메모리 파일의 변경사항이 디바운스된 재인덱싱을 트리거합니다 (1.5초).
  • 자동 재인덱싱: 임베딩 프로바이더, 모델, 또는 청킹 구성이 변경되면 전체 인덱스가 자동으로 재빌드됩니다.
  • 요청 시 재인덱싱: openclaw memory index --force

INFO

memorySearch.extraPaths로 워크스페이스 외부의 마크다운 파일도 인덱싱할 수 있습니다. 구성 참조를 참조하십시오.

사용 시기

내장 엔진은 대부분의 사용자에게 적합한 선택입니다:

  • 추가 종속성 없이 즉시 작동합니다.
  • 키워드 및 벡터 검색을 잘 처리합니다.
  • 모든 임베딩 프로바이더를 지원합니다.
  • 하이브리드 검색이 두 검색 접근 방식의 장점을 결합합니다.

재순위화, 쿼리 확장, 또는 워크스페이스 외부의 디렉터리를 인덱싱해야 하는 경우 QMD로 전환을 고려하십시오.

자동 사용자 모델링을 통한 크로스 세션 메모리를 원하면 Honcho를 고려하십시오.

트러블슈팅

메모리 검색이 비활성화되었습니까? openclaw memory status를 확인하십시오. 프로바이더가 감지되지 않으면 명시적으로 설정하거나 API 키를 추가하십시오.

오래된 결과입니까? 재빌드하려면 openclaw memory index --force를 실행하십시오. 감시자는 드문 경우에 변경사항을 놓칠 수 있습니다.

sqlite-vec가 로드되지 않습니까? OpenClaw는 자동으로 인프로세스 코사인 유사도로 폴백합니다. 특정 로드 오류에 대한 로그를 확인하십시오.

구성

임베딩 프로바이더 설정, 하이브리드 검색 조정 (가중치, MMR, 시간 감쇠), 배치 인덱싱, 멀티모달 메모리, sqlite-vec, 추가 경로, 기타 모든 구성 설정은 메모리 구성 참조를 참조하십시오.