본문 바로가기
원문
Hugging Face Blog·· 2026년 9월 3일AI 점수59

Hugging Face, 코딩 에이전트용 메모리 레이어 funes 공개

Give Your Coding Agents a Memory You Own

AI 요약

Hugging Face는 Claude Code, Codex, pi, Hermes의 과거 세션을 색인화해 에이전트가 스스로 검색할 수 있는 오픈소스 메모리 레이어 funes를 공개했다. 임베딩과 리랭킹은 로컬에서 동작하며, 원하면 자신의 Hugging Face 데이터셋에 비공개로 동기화할 수 있다. handoff-vs-recall 벤치마크에서 recall은 서면 인계보다 한쪽 작업에서는 8배, 다른 쪽에서는 4배 저렴했다.

자세히

funes는 단일 바이너리로, `funes add claude`(codex, pi, hermes도 가능)를 실행하면 최초 색인 생성, recall과 get 도구 추가, 완료된 각 턴을 색인화하는 자동 처리 설정까지 한 번에 이루어진다. 색인은 증분 방식이며, 오래된 내용은 구간을 나눠 나중에 다시 채워 넣을 수 있다. recall은 요약이 아니라 원문 텍스트를 반환하며, 에이전트, 타임스탬프, 세션, 턴을 함께 표시한다. 각 결과에는 get 명령이 붙어 있어 앞뒤 문맥도 열어볼 수 있다.

내부적으로는 각 트레이스를 동일한 턴과 블록 형식으로 변환하고, 청크로 나눈 뒤 고정된 로컬 모델로 임베딩하여 로컬 Lance 데이터셋에 기록한다. 검색은 벡터 검색과 BM25를 결합해 순위를 통합하고, cross-encoder로 리랭킹한 뒤, 최신성에 가중치를 주고 인접 청크를 덧붙인다. 기록 시점에 사실로 증류하지 않으며, 색인을 위해 세션을 호스티드 모델로 보내지도 않는다.

공유하려면 `funes add codex acme/funes-memory`처럼 Hugging Face 데이터셋을 지정한다. 데이터셋은 사용자가 소유하며 기본값은 비공개다. 색인화할 때 인증 정보는 마스킹되고, 공개 전에도 모든 청크를 다시 검사해 비밀 정보로 보이는 내용은 제외된다. 다른 기기에서 같은 명령을 실행하면 같은 메모리를 사용할 수 있고, 팀에서는 새 멤버의 에이전트가 과거 판단과 막혔던 경위를 참조할 수 있다. 공개 메모리는 `--memory` 옵션으로 누구나 읽을 수 있으며 funes 태그가 붙는다.

`funes ask`는 읽기 전용으로 질문 하나를 던지는 명령으로, 해당 부분을 에이전트에 전달하고 출처가 붙은 답변을 돌려준다. 근거가 부족하면 그렇다고 답한다. funes의 개발 기록은 `huggingface/funes-memory`로 공개되어 있다.

긴 세션을 다루는 방법으로 압축, 인계 문서, recall을 handoff-vs-recall 벤치마크에서 비교했다. 압축은 한쪽 작업에서는 답에 도달했지만, 다른 쪽에서는 요약 과정에서 중요한 발견이 사라져 답에 이르지 못했다. recall은 두 작업 모두에서 가장 저렴했다. funes는 GitHub의 huggingface/funes에서 공개되어 있으며, 로컬에서 동작하는 임베딩 모델과 Lance의 append-only 데이터셋을 기반으로 한다.

출처: Hugging Face Blog · huggingface.co