
Qwen 에이전트에게 '잊는 법'을 가르치기
요약
Qwen Cloud 해커톤을 위해 개발된 Engram은 AI 사진 코칭을 위한 '망각 인지형' 메모리 엔진을 특징으로 합니다. 단순히 모든 정보를 저장하는 대신, 숙달된 기술을 은퇴시키거나 모순된 정보를 대체함으로써 효율적인 에이전트 메모리 관리를 구현합니다.
핵심 포인트
- Qwen-vl-max를 활용한 사진 비평 및 추론 기능
- 망각(Forgetting)을 통한 효율적인 메모리 관리 엔진 구현
- 숙달된 기술을 코칭 목록에서 제외하는 '졸업(Graduation)' 개념
- 모순된 정보를 관리하는 '대체(Supersession)' 메커니즘
오늘날의 모든 AI 사진 도구들은 기억력이 없는 비평가입니다. Lightroom 편집, 사진 선별 앱(culling apps), 그리고 ChatGPT/Gemini/Qwen은 하나의 사진에 대해 기꺼이 비평하지만 — 당신이 존재했다는 사실을 잊어버립니다. 매번 세션을 시작할 때마다 자신을 재설명해야 하고, 영원히 같은 초보자 조언만 듣게 되며, 실제로 개선되고 있는지 아무도 알지 못합니다.
기억(Memory)은 **비평가(critic)**와 **코치(coach)**의 차이입니다. 코치는 당신이 어디서 시작했는지 알고, 무엇을 마스터했는지 알아차리며, 당신이 성장함에 따라 목표 지점을 이동시켜 줍니다.
그래서 Qwen Cloud를 활용한 Global AI Hackathon (트랙 1: MemoryAgent)을 위해 저는 Engram을 만들었습니다. 이 앱은 AI 사진 코치이며, 가장 중요한 장기는 비평 기능이 아닙니다. 바로 '잊는 법에 대한 인지(forgetting-aware)' 메모리 엔진입니다.

루프(The loop)
Engram은 영원히 하나의 루프를 실행합니다:
- 비평(Critique) — 사진을 업로드하면,
qwen-vl-max가 실제 사진 원칙에 기반한 유리 상자 추론(glass-box reasoning)으로 다섯 가지 차원을 점수화합니다. - 기억(Remember) — 모든 비평은 메모리를 작성합니다: 중요도 점수가 매겨진 사실, 기술 증거, 장르 정체성. 그러면 앱이 이 사진을 통해 무엇을 배웠는지 알려줍니다.
- 집중(Focus) — 당신이 작업하는 기술들은 관찰됩니다; 세 번 연속으로 강력한 세션이 이어지고 한 기술이 졸업(graduates) 하면 — 타임라인에서 축하되며, 코칭 목록에서는 제외됩니다.
- 적응(Adapt) — 다음 비평과 모든 채팅 답변은 당신에 대해 _여전히 사실인 것들_을 기반으로 구축됩니다.
홈 화면은 대시보드가 아니라 메모리가 됩니다: 멘토가 바라보는 당신의 모습, 사진 앱의 '추억' 리엘처럼 지나가는 장르
당신이 Canon 바디에서 Sony 미러리스로 교체했다고 가정해 봅시다. 모든 것을 영원히 기억하는 메모리는 지난달에 이미 판매한 카메라에 대해 계속해서 코칭을 제공할 것입니다. 따라서 Engram은 대부분의 "메모리 (memory)" 레이어가 하지 못하는 두 가지 일을 수행합니다.
- 대체 (Supersession). 모순되는 사실은
superseded_by링크를 갖게 됩니다. 이는 회상(recall) 대상에서는 제외되지만, 감사 추적(audit trail)에는 유지됩니다. 검사할 수 없는 망각은 단순한 데이터 손실일 뿐입니다. - 졸업 (Graduation). 숙달된 기술은 활성 코칭에서 은퇴(retired) 합니다. 즉, 망각은 삭제가 아닌 승진으로 구현됩니다.

증명하기: FAMA 벤치마크
주장은 쉽습니다. 저는 26개의 스크립트된 사진작가 이력(장비 교체, 두 번 교체된 습관, 다단계 질문(multi-hop questions), 그리고 아무것도 변하지 않는 제어 항목 등)을 고정하고, 제가 FAMA (Forgetting-Aware Memory Accuracy: 여전히 유효한 모든 사실을 회상하는 것에는 보상을 주고, 오래된 사실을 드러내는 것에는 벌점을 주는 방식)라고 명명한 지표를 통해 두 가지 베이스라인(baselines)과 엔진의 성능을 비교했습니다.
| 설정 (config) | 평균 FAMA | 여전히 유효한 사실의 회상률 (recall) | 컨텍스트 토큰 (context tokens) |
|---|---|---|---|
| Engram (망각 활성화) | 1.00 | 100% | 1.72배 적음 |
| ... |
유심히 살펴볼 결과는 다음과 같습니다: 두 베이스라인은 동률을 기록했습니다. 최신 사실만을 유지하는 것이 모든 것을 유지하는 것과 정확히 동일한 점수를 기록했는데, 이는 최신성(recency)만으로는 새로운 사실이 이전 사실을 무효화(invalidates) 한다는 것을 알 수 없기 때문입니다. 승부의 핵심은 컨텍스트를 줄이는 것이 아니라, 무엇이 오래된(stale) 것인지 아는 데 있습니다. 또한 세 가지 방식 모두에서 회상률(recall)은 100%로 유지되므로, 엔진이 회상률을 희생하며 망각을 수행하는 것이 아닙니다. 엔진은 1.72배 낮은 토큰 비용으로 두 가지를 모두 얻어냅니다.
한 줄의 명령어로 이를 재현할 수 있습니다: python -m eval.run --compare.
Qwen Cloud 기반 구축
모든 모델 호출은 하나의 클라이언트 뒤에 있는 세 가지 티어(tiers)를 통해 Alibaba의 DashScope (OpenAI 호환) 엔드포인트를 거칩니다:
qwen-vl-max— 비전 비평 (vision critique) + 장르 (genre)qwen3.7-max— 추론 (reasoning) / 형태 복구 (shape repair)qwen3.6-flash— 멘토 채팅 (mentor chat) (SSE 스트리밍), 요약 (summaries), 저비용 복구 (cheap repairs)
이를 구축하며 배운 두 가지가 있습니다:
다른 스택들이 스키마 (schema)를 강제하는 곳에서 Qwen은 당신의 프롬프트 (prompt)를 신뢰합니다. 제가 처음 수행한 라이브 비평은 비평 내용이 산문 (prose) 형태로 돌아오고, 임의로 만들어진 overall 점수가 포함되었으며, 배열 (arrays)이 누락된 채로 반환되었습니다. 해결책은 심층 방어 체인 (defense-in-depth chain)이었습니다. 프롬프트에 명시적인 JSON 스켈레톤 (skeleton)을 넣고, 그 다음 알려진 편차(근사치 열거형 (near-miss enums), 범위를 벗어난 점수 등)를 약 0.1ms 내에 복구하는 **로컬 결정론적 구조 레이어 (local deterministic salvage layer)**를 도입했습니다. 이는 한때 93초를 소모하며 제 앞에서 502 에러를 냈던 모델 기반 복구 루프 (model-based repair loop)를 대체했습니다. 신뢰성이 하나의 기능 (feature)이 되었습니다.
때로는 모델이 맞고 당신의 스키마가 틀릴 때가 있습니다. 초기 응답 중 하나는 genre: "still_life"를 반환했습니다. 사진이 진정으로 정물화 (still life)였음에도 불구하고 제 열거형 (enum)에 해당 항목이 없었기 때문에 제 열거형을 거부한 것입니다. 이제는 열거형에 포함되어 있습니다.
SPA, API, 메모리 엔진 (memory engine), 그리고 커스텀 engram-mcp 서버(따라서 어떤 Qwen 에이전트든 MCP를 통해 동일한 메모리를 마운트하여 recall / forget / get_memory_stats를 사용할 수 있음)를 포함한 전체 시스템은 싱가포르의 Alibaba Cloud ECS 인스턴스에서 Caddy TLS 뒤에 위치하며, 단 하나의 환경 변수 전환만으로 Alibaba OSS를 통한 사진 저장 기능을 사용할 수 있는 하나의 Docker 이미지로 배포됩니다.
핵심 요약 (The takeaway)
사용자들은 사실이 지속되는지에는 관심이 없습니다. 그들은 사실 때문에 _코칭이 변하는지_에 관심을 가집니다. 망각 지표 (forgetting metric)를 도입하는 것은 단순히 제품을 측정하는 것에 그치지 않고, 제품을 _형성(shape)_했습니다: 대체 의미론 (supersession semantics), 감사 추적 (audit trails), 모든 답변에 대한 영수증 (receipts).
메모리는 저장소 (store)가 아니라 행동 (behavior)입니다.
체험하기 (로그인 불필요): https://engram.prasadtilloo.com/?judge=1
코드 (Apache-2.0): https://github.com/prasadt1/engram
Global AI Hackathon, Track 1: MemoryAgent를 위해 Qwen Cloud (DashScope) + Alibaba Cloud ECS로 구축되었습니다.
ai #machinelearning #showdev #qwen
AI 자동 생성 콘텐츠
본 콘텐츠는 Dev.to AI tag의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기