Elephant Agent: 개인 모델 중심의 자기 진화형 AI 에이전트와 호기심 기반 학습 루프

Elephant Agent 소개

Elephant Agent는 "코끼리는 잊지 않는다" 라는 오랜 속담에서 출발한, Personal-Model-first 자기 진화형(self-evolving) AI 에이전트입니다. 이 프로젝트가 풀려고 하는 문제는 단순합니다. 대부분의 AI 어시스턴트는 매 대화에서 사용자가 처음부터 다시 설명하기를 기대합니다. 같은 프로젝트, 같은 사람, 같은 제약, 같은 결정, 같은 교훈을 매번 다시 설명하는 비용이 누적되고, 컨텍스트 윈도우를 늘리는 것만으로는 "어떤 기억을 미래의 도움을 위해 가지고 갈 것인가" 라는 본질적인 질문에 답하지 못합니다. Elephant Agent는 이 질문을 핵심 설계 원리로 채택해, 모든 대화 기록을 보존하는 대신 사용자에 대한 교정 가능한 이해(correctable understanding) 를 점진적으로 길러 갑니다.

이 에이전트는 한 줄 한 줄을 그대로 외우는 대신, 사용자가 따라가는 경로(paths), 함께하는 사람(people), 감수하는 위험(risks), 일상의 리듬(rhythms), 그리고 내려온 결정(decisions)을 가벼운 구조로 누적해 둡니다. 결과적으로 Elephant Agent는 더 적게 기억하지만 더 깊이 이해하고, 처음부터 다시 시작하지 않으면서 직전 맥락의 올바른 실을 다시 집어 듭니다. 한 가지 답변이 미래의 도움을 크게 바꿀 만한 빈틈에는 조심스럽게 한 가지 질문만 던지고, 침묵에는 침묵으로 응합니다. 본 게시물에서는 Elephant Agent가 어떤 정보를 어떻게 학습하는지, 그리고 사용자가 그 이해를 어떻게 검증하고 수정할 수 있는지 정리합니다.

Elephant Agent는 Agentic Intelligence Lab이 공개한 프로젝트이며, README와 함께 공식 홈페이지, 블로그, 그리고 페이퍼 가 함께 제공됩니다. 페이퍼 Elephant Agent: Agency-First Personal AI 는 Xunzhuo Liu, Hao Wu, Huamin Chen, Xue Liu, Bowei He가 저자로 참여했고, MBZUAI와 McGill University, Mila의 협업으로 진행되었습니다. 한 마리의 elephant 가 하나의 작업 맥락이나 삶의 영역을 책임지는 지속형 동반자라면, 여러 마리가 모인 herd 가 다중 맥락을 분리해 관리하는 단위가 됩니다.

Elephant Agent의 차별점: 사람과 함께 자라는 L4 에이전트

Elephant Agent는 자신을 개인용 AI의 네 단계(Personal Agent Levels) 위에 배치하며 차별점을 설명합니다. README가 정리하는 네 단계는 다음과 같습니다.

단계 핵심 역량 설명
L1 작업을 실행합니다 Claude Code, Cursor, Devin, Codex 계열 에이전트처럼 실행을 더 싸고 빠르게 만듭니다.
L2 맥락을 가지고 다닙니다 로컬 에이전트, 지속 메모리, 시스템 접근, 스킬과 플러그인을 강조합니다(예: OpenClaw).
L3 절차를 개선합니다 자기 개선 학습 루프, 스킬 생성, 회상, 사용자 모델링을 내세웁니다(예: Hermes Agent).
L4 사람과 함께 자랍니다 Elephant Agent의 위치로, 사람을 이해하고 경로(Path) 를 설계하며 판단, 증거, 질문, 학습을 사람 곁에 둡니다.

핵심은 기억을 더 많이 하는 것 이나 스킬을 더 많이 쌓는 것 이 중심이 아니라는 점입니다. 블로그는 이를 원시 회상(raw recall)스킬 진화 양쪽의 한계로 설명합니다. 회상은 과거에서 무엇을 꺼낼 수 있는가 에, 스킬은 에이전트가 무엇을 할 수 있는가 에 답하지만, 개인용 AI에는 세 번째 중심축이 필요합니다. 바로 에이전트가 지금 그 사람에 대해 무엇을 이해하고 있으며, 그 이해를 어떻게 교정하고 깊게 하고 의심할 수 있는가 입니다. Elephant Agent는 이 객체를 Personal Model 이라 부르고, 메모리와 스킬, 도구, 모델, 크론, 메시징, UI가 모두 이 모델을 중심으로 공전하도록 설계되었습니다.

Elephant Agent가 학습하는 네 개의 Personal Model 렌즈

Elephant Agent는 사용자의 모든 정보를 무차별적으로 수집하지 않습니다. 대신 미래의 도움을 좌우할 만한 내구성 있는(durable) 정보만을 네 개의 렌즈(lens)에 담아 정리합니다.

Elephant Agent의 네 가지 Personal Model 렌즈

렌즈 담아두는 정보
Identity 자기 서술, 가치, 의사결정 스타일, 경계선, 지속적인 선호
World 진행 중인 프로젝트, 함께 일하는 사람, 도구, 장소, 어휘, 관계
Pulse 현재 집중하고 있는 일, 압박 요인, 최근 제약, 기분 패턴, 일시적 우선순위
Journey 과거 경험, 교훈, 실패, 회복 패턴, 장기 성장 흐름

저장의 기본 단위는 대화 문장이 아니라 주장(claim) 입니다. 하나의 주장은 어떤 렌즈에 속하는지(lens), 무엇에 관한 것인지(topic), 본문(text), 상태(status), 신뢰도(confidence), 그리고 어떤 에피소드에서 비롯됐는지(source episode provenance)를 함께 가집니다. 활성(active) 주장만 안정적인 프롬프트에 들어가고, 폐기되거나 다툼이 있는 주장은 검사할 수는 있어도 미래 답변을 좌우하지 않습니다. 또한 각 렌즈 안에서는 world.skills.affinity.python, pulse.current_focus, journey.lessons.debugging 처럼 안정적인 주제 키인 패싯(facet) 을 사용해, 검색과 교정이 모호한 프로필 덩어리가 아니라 개별 주장 단위에서 일어나도록 합니다.

이 학습은 네 가지 루프(loop)를 통해 일어납니다. 첫째는 사용자가 명시적으로 "기억해 줘" 또는 "이건 다르게 봐줘" 라고 알려 줄 때 작동하는 근거 기반 학습(grounded learning) 입니다. 둘째는 한 가지 답이 미래의 도움을 크게 바꾸겠다고 판단될 때 한 번의 호기심 질문을 던지는 호기심 주도 학습(curiosity-driven learning) 입니다. 셋째는 세션이 닫히거나 휴면, 일기, 수동 트리거가 발생한 뒤 백그라운드에서 에피소드(Episode) 단계를 다시 읽으며 새로운 이해를 추출하는 반영 기반 백그라운드 학습(reflect-driven background learning) 입니다. 넷째는 실제로 사용된 스킬을 관찰해 어떤 도구가 잘 맞는지 학습하면서도, 지속적인 이해 자체는 항상 사용자가 검사할 수 있도록 노출하는 스킬 적합도 학습(skill fit learning) 입니다.

Elephant Agent의 메모리 아키텍처

블로그는 코끼리에서 영감을 받은 메모리 모델을 런타임의 다섯 계층으로 매핑합니다. 에피소드 기억(episodic) 은 무엇이 언제 어떤 작업을 통해 일어났는지를 담는 Episode, Loop, Step에 살고, 의미 기억(semantic) 은 타입이 부여된 Personal Model 주장에, 사회적 기억(social) 은 사람과 팀, 프로젝트를 담는 World 주장과 보조 Step에, 생존 기억(survival) 은 위험과 반복된 실패, 회복 경로를 담는 Pulse, Journey 주장에 자리합니다. 마지막 Matriarch Core 는 Personal Model에 호기심과 백그라운드 학습이 더해진, 증거가 판단으로 바뀌는 자리입니다.

이 구조에서 프롬프트 텍스트는 상태의 투영일 뿐, 진실의 소유자가 아니다 라는 규칙이 핵심입니다. Episode는 하나의 런타임 윈도우, Loop는 한 번의 모델 상호작용 라운드, Step은 입력이나 응답, 도구 호출, 도구 결과, 회상 보조, Personal Model 갱신 같은 원자적 사건 하나를 가리킵니다. Step은 증거 이지 자동으로 진실 이 되지는 않으며, 전경(foreground) 갱신이나 백그라운드 학습 작업이 Personal Model을 통해 기록해야만 내구성 있는 주장이 됩니다.

회상도 일반 벡터 메모리와 다릅니다. Elephant Agent는 메모를 쌓아 둔 더미가 아니라 활성 주장을 검색하며, 주제 키와 정확한 본문 일치, 유니코드 및 CJK n-그램, 약한 퍼지 매칭, 내구성 인덱스의 의미 후보, 모델이 제공한 번역 또는 의역 변형(query_variants), 그리고 신선도 신호를 함께 사용합니다. 결과에는 매치 상태가 붙어, strong_match 이면 주장을 신뢰할 수 있고, weak_match 이면 관련은 있되 과장해서는 안 되며, no_match 이면 Personal Model이 그 답을 뒷받침하지 않는다는 안전 신호가 됩니다. 이 경계 덕분에 가까운 이웃이 곧 믿음이 되어 버리는 메모리 드리프트를 막습니다.

회상은 다국어(multilingual)이면서, 의미 검색과 키워드 또는 BM25 계열 신호를 섞는 하이브리드(hybrid)이고, 지난밤 이나 최근 같은 표현을 단순 장식이 아니라 어떤 기억을 얼마나 최근으로 다뤄야 하는지를 바꾸는 신호로 보는 시간 인식(time-aware) 검색입니다. 임베딩의 기본 제공자는 elephant-local-embed(모델 elephant-embeddings-v1-text-small)로, 런타임은 sentence-transformers와 local_files_only=True로 로컬 모델 루트에서 모델을 로드합니다. 정규화된 임베딩과 Matryoshka 방식 절단을 사용해, 빠른 일상 회상용 64차원, 균형 잡힌 기본값 256차원, 더 깊은 의미 검색용 768차원 의 세 가지 차원을 한 모델로 지원합니다.

Elephant Agent의 호기심 효과(curiosity effort)

처음 elephant init 을 실행할 때, 사용자는 자기 Elephant가 얼마나 적극적으로 질문할지를 직접 고를 수 있습니다. 모든 호기심 질문은 어떤 렌즈에 속하는지, 그리고 어떤 빈틈, 모순, 오래된 정보를 메우려는지에 대한 이유를 함께 가지고 있습니다. 사용자는 질문에 답할 수도 있고, 그냥 닫아 둘 수도 있습니다. 침묵이 언제나 이깁니다.

질문은 타입이 부여되어 있고, 네 가지 이유 중 하나로 존재합니다. 중요한 이해가 빠진 빈틈(gap), 증거가 더 이상 맞지 않는 모순(conflict), 현재 맥락이 만료됐을 가능성이 큰 오래된 Pulse(stale Pulse), 그리고 한 답이 도움을 크게 끌어올릴 적응(adaptation) 입니다. 질문에 대한 답은 명시적 교정과 동일한 갱신 경로를 거쳐 Personal Model 주장이 될 수 있습니다.

Curiosity effort 느낌
Quiet Elephant가 거의 기다리며, 질문은 드물게 합니다.
Balanced 자연스러운 휴지점에서, 답이 의미가 있을 때만 질문합니다.
Active 더 자주 점검하지만, 모든 질문은 선택 사항으로 유지됩니다.

또 하나 중요한 설계는 Reflect after the turn 입니다. 사용자가 대화하는 동안 Elephant는 응답에만 집중하고, 비동기 작업은 그 다음 빈 시간에 돌립니다. 백그라운드 학습은 트리거마다 다른 기능 묶음을 활성화하는데, 에피소드 종료(episode close)는 Personal Model, 질문, 스킬 유지 보수를, 수동 반영(manual reflect)은 회상 보조를, 일기(diary)는 하루치 회고 기록을, 드림(dream)은 더 넓은 질문, 스킬, 일기 유지 보수를, 컨텍스트 압축(context compaction)은 압축된 자료를 프롬프트 진실로 만들지 않으면서 점검합니다. 각 반영 작업은 활성 Personal Model 앵커와 Episode 요약, 대화 턴으로 만든 증거 패킷을 받고, 자신의 기능이 허용한 도구만 사용해 결과를 학습 작업 기록에 남깁니다. 새 이해는 대시보드의 You, Why, Questions, Evidence 패널에서 사용자가 직접 확인하고 교정할 수 있고, 모든 주장(claim)은 그 근거가 되는 에피소드 단계와 묶여 있어 추적이 가능합니다.

Elephant Agent의 경로(Path) 설계

Elephant Agent는 사용자를 이해하는 데서 멈추지 않습니다. 충분히 이해하고 나면, 일과 건강, 습관, 학습, 관계, 회복, 연구, 코드처럼 오래 끌고 가고 싶은 방향을 살아 있는 경로(Path) 로 설계하도록 돕습니다. 하나의 Path는 여러 단계(Step) 로 쪼개지고, 필요할 때 아기 코끼리(baby elephant) 를 불러들이며, 사용자의 판단이 중요한 체크포인트(Checkpoint) 에서 다시 사용자에게 돌아옵니다. 즉 Personal Model이 길러 온 이해가 그대로 멈춰 있는 프로필이 아니라, 시간이 지나며 더 나은 Path로 바뀌는 재료가 되는 셈입니다.

Elephant Agent의 빠른 시작

Elephant Agent는 두 가지 제품 형태를 지원합니다. macOS 데스크톱 앱이 권장 제품 표면으로, Chat 또는 Wake, Paths, Personal Model, Herd, 스킬, 메시징, 캘린더, 사용량(usage), 설정을 하나의 네이티브 앱에서 다룹니다. GitHub 릴리스에서 최신 macOS 빌드를 받아 Elephant Agent.app 을 열고, 첫 Elephant를 만들면서 제공자(provider)와 호기심 강도를 고르면 됩니다.

Linux와 클라우드, SSH 환경이나 터미널 중심 사용자를 위해서는 CLI와 Dashboard 경로가 제공됩니다. 단일 셸 스크립트로 설치되며, 첫 실행은 자기소개와 제공자, 호기심 강도를 묻는 짧은 대화 형태로 진행됩니다. 이후에는 elephant wake 한 줄로 TUI(터미널 UI) 채팅에 들어가고, elephant dashboard 로 대시보드를 열어 You, Questions, Evidence 를 함께 살펴볼 수 있습니다.

# 설치
curl -fsSL https://elephant.agentic-in.ai/install.sh | bash

# 첫 실행
elephant init        # 정체성, 제공자, 호기심 강도 선택
elephant status      # 제공자와 임베딩 등 로컬 런타임 준비 상태 점검
elephant wake        # 채팅 TUI 시작
elephant dashboard   # You, Questions, Evidence 대시보드 열기

# 다중 맥락 관리
elephant herd new    # 새 elephant 추가

원격이나 클라우드에서는 elephant dashboard --no-open 이 로컬 URL을 출력하므로, 선호하는 터널이나 브라우저로 붙을 수 있습니다. 운영 시간이 길어질수록 Elephant Agent가 보유한 이해가 어떻게 깊어지는지는 README의 타임라인 표로도 정리되어 있습니다.

Day 1 Week 1 Month 1 Month 3
가장 처음 잡힌 정체성 앵커들을 인식합니다. 시야에 있는 프로젝트와 사람을 파악합니다. 더 나은 질문을 던지고, 그 이유를 설명합니다. 사용자의 리듬을 따라 자라며, 모든 이해에 점검 가능한 증거를 남깁니다.

저장된 모든 주장은 사용자가 수정(correct) 하거나 잊게(forget) 만들 수 있고, 호기심 질문은 답하거나 닫을 수 있습니다. 모든 흐름이 evidence-first 라는 원칙 위에 설계되어 있어, 숨겨진 프롬프트 가 아니라 사용자에게 보이는 증거 트레일을 통해 이해가 누적됩니다.

Elephant Agent의 라이선스

Elephant Agent는 오픈소스 프로젝트입니다. 공식 블로그는 이 프로젝트가 Apache 2.0 라이선스 하의 오픈소스 라고 명시하고 있습니다. 다만 작성 시점 기준 GitHub 저장소 루트에는 별도의 LICENSE 파일이 아직 커밋되어 있지 않으므로, 상업적 도입이나 포크 전에는 저장소에서 라이선스 파일이 추가되었는지 확인하거나 저자에게 직접 문의하는 것을 권장합니다.

:house: Elephant Agent 공식 홈페이지

:scroll: Elephant Agent 페이퍼

:github: Elephant Agent 프로젝트 GitHub 저장소

더 읽어보기




이 글은 GPT 모델로 정리한 글을 바탕으로 한 것으로, 원문의 내용 또는 의도와 다르게 정리된 내용이 있을 수 있습니다. 관심있는 내용이시라면 원문도 함께 참고해주세요! 읽으시면서 어색하거나 잘못된 내용을 발견하시면 덧글로 알려주시기를 부탁드립니다. :hugs:

:pytorch:파이토치 한국 사용자 모임:south_korea:이 정리한 이 글이 유용하셨나요? 회원으로 가입하시면 주요 글들을 이메일:love_letter:로 보내드립니다!
텔레그램(Telegram)이나 Slack/Discord/Teams/Dooray/GoogleChat 등으로도 새 글 알림을 받으실 수 있습니다. :smiley:

:wrapped_gift: 아래:down_right_arrow:쪽에 좋아요:+1:를 눌러주시면 새로운 소식들을 정리하고 공유하는데 힘이 됩니다~ :star_struck: