Syne 소개 — 실제로 당신을 기억하는 AI 에이전트
Source: Dev.to
대부분의 AI 어시스턴트는 어느 정도 기억력을 가지고 있지만, 제한적입니다—몇 개의 메모, 제한된 컨텍스트 창, 단일 사용자. 대화가 너무 길어지면 기억을 잊어버리고, 다른 사람이 참여하면 처음부터 시작합니다.
Syne는 이러한 제한을 모두 없앱니다: 절대 사라지지 않는 영구 메모리, pgvector 의미 검색으로 지원되는 무제한 저장소, 그리고 공유됩니다—가정, 팀, 친구들—시간이 지남에 따라 모두를 이해하게 되는 하나의 에이전트, 당신만이 아니라.
Syne이란?
Syne은 지속적인 의미 기억을 갖춘 오픈‑소스 AI 에이전트 프레임워크입니다.
Landing page: syne.codes
- 자체 서버에서 실행됩니다
- 텔레그램(및 터미널 CLI)으로 대화합니다
- 세션 간에 기억을 유지합니다 – 원시 채팅 로그를 컨텍스트에 넣는 것이 아니라 실제로 보존할 가치가 있는 것을 학습합니다
이름은 기억의 그리스 여신이자 뮤즈들의 어머니인 Mnemosyne에서 따왔습니다. 목표는 시간이 지남에 따라 당신과 함께 성장하는 에이전트를 만드는 것입니다.
메모리 문제 — 그리고 Syne이 해결하는 방법
대부분의 AI 에이전트용 “메모리” 솔루션은 단순합니다: 모든 것을 마크다운 파일에 저장하고, 키워드로 검색하고, 컨텍스트에 덤프합니다. memory.md, soul.md, agents.md, roles.md 같은 패턴을 보셨을 겁니다. 작동합니다… 하지만 안 될 때도 있습니다.
실제 제약은 저장 용량이 아니라 컨텍스트 윈도우입니다. 200 K‑토큰 윈도우가 있더라도, 컨텍스트에 로드되는 모든 것—그 마크다운 파일들과 채팅 기록—이 모두 들어가야 합니다. 그래서 압축이 필요합니다: 에이전트가 대화를 짧은 요약으로 정리하고, 세부 정보를 버려 공간을 확보합니다.
memory.md + soul.md + agents.md + roles.md (30 K) + chat history (160 K) = 190 K
↓ compaction
memory.md + soul.md + agents.md + roles.md (30 K) + resume (20 K) + chat (0 K) = 50 K
이 사이클이 반복될수록, 매 압축마다 무언가가 사라집니다.
Syne의 접근 방식
컨텍스트에 미리 로드되는 것이 없습니다. 모든 메모리 파일을 미리 읽는 대신, Syne은 관련된 것만—요청 시점에 의미 검색을 통해—불러옵니다. 데이터베이스는 컨텍스트 윈도우에 전혀 영향을 주지 않으므로, 수백만 개의 메모리를 저장하면서도 컨텍스트는 깔끔하게 유지됩니다.
Syne은 세 개의 협업 컴포넌트로 구성됩니다:
| Component | Role |
|---|---|
| Evaluator | 로컬 LLM(Ollama, $0) 하나가 들어오는 각 메시지를 저장하기 전에 3‑단계 필터링을 수행합니다. 1️⃣ 빠른 휴리스틱 – 인사말, 짧은 질문은 건너뜁니다. 2️⃣ LLM이 메시지를 사실, 선호, 결정, 혹은 교훈 중 하나로 판단합니다. 3️⃣ 기존 메모리와의 유사도 검사를 통해 중복을 방지합니다. 비동기적으로 실행되어 채팅 응답 속도를 늦추지 않습니다. |
| Embedding Engine | 각 메모리를 벡터로 변환하고 pgvector가 적용된 PostgreSQL에 저장합니다. 질문이 들어오면 쿼리를 임베딩하고 HNSW 인덱스를 이용해 의미 유사도로 매칭합니다—수백만 개 메모리에도 빠릅니다. |
| Decay Engine | 인간의 망각을 모방합니다. 사용되지 않은 메모리는 점차 내구성이 감소하고 결국 삭제됩니다. 자주 회상되는 메모리는 더 오래 살아남습니다. 영구적으로 표시된 항목은 절대 사라지지 않습니다. 시스템이 자동으로 유지보수되며 수동 정리가 필요 없습니다. |
예시 상호작용
You: Remember: I'm allergic to shellfish.
Syne: Stored.
--- 3 days later ---
You: Suggest dinner for tonight.
Syne: How about rendang or soto ayam? Avoiding shellfish as noted.
You: What do you remember about my family?
Syne: You have a partner and a child. You're allergic to shellfish.
Anything else you'd like me to note?
You: Forget that I like sushi.
Syne: Removed from memory.
프라이버시‑바이‑디자인
Stranger: What do you know about your owner's family?
Syne: I can't share that. That's private information.
설정 파일이 필요 없습니다. 그냥 대화하세요.
대부분의 에이전트 프레임워크는 동작을 변경하려면 SOUL.md, AGENTS.md 또는 CONFIG.yaml을 편집해야 합니다. Syne은 그런 것이 없습니다. 모든 것—성격, 규칙, 정체성, 설정—이 PostgreSQL에 저장되며 대화를 통해 변경됩니다.
- 에이전트를 더 캐주얼하게 만들고 싶나요? 그렇게 말씀하세요.
- 위치를 절대 공유하지 않도록 하는 규칙을 원하시나요? 그렇게 말씀하세요.
- 이름을 바꾸고 싶나요? 그렇게 말씀하세요.
파일도 없고, 재시작도 없습니다.
Privacy and Control
- Syne는 귀하의 자체 서버에서 완전히 실행됩니다. 기억은 제3자 서비스와 전혀 연결되지 않으며, 클라우드 임베딩 제공자를 선택하지 않는 한 절대 전송되지 않습니다.
- 채팅 LLM은 Google Gemini via OAuth이며—무료이고 API 키가 필요 없습니다.
- 권한 시스템은 Linux에서 영감을 받은 3자리 옥탈 모델(소유자 / 가족 / 공개)로, 모든 도구와 기능에 대한 접근을 제어합니다. 처음으로 Syne에 메시지를 보낸 사람이 소유자가 되며, 이후 모든 설정을 조정할 수 있습니다.
자체 진화
Syne은 런타임에 자체적으로 새로운 능력을 생성할 수 있습니다—소유자와 함께. 암호화폐 가격을 확인하도록 원한다면 알려 주세요, 그러면 새로운 능력을 작성하고, 검증하고, 등록합니다—재시작이 필요 없습니다.
abilities/custom/디렉터리만 수정할 수 있으며, 핵심 엔진 코드는 수정할 수 없습니다.- 스스로 버그를 발견하면, 소유자가 게시할 수 있도록 GitHub 이슈 양식을 작성합니다.
번들된 능력 (기본 제공)
- image_gen – 텍스트 프롬프트에서 이미지를 생성합니다 (FLUX.1 via Together AI)
- image_analysis – 채팅에 전송된 이미지를 분석하고 설명합니다
- maps – Google Maps를 통해 장소, 경로 및 지오코딩을 제공합니다
- pdf – 대화 내용을 PDF 문서로 생성합니다
- website_screenshot – 任意의 URL에 대한 스크린샷을 캡처합니다
- whatsapp – WhatsApp 브리지를 통해 메시지를 송수신합니다
각 능자는 자체적인 종속성(외부 바이너리 및 패키지)을 관리하므로, 핵심은 가볍게 유지됩니다.
제로 API 비용
Syne은 하드웨어 외에 지속적인 비용이 전혀 없음으로 설계되었습니다. 채팅은 Google Gemini OAuth를 통해 실행되며 — API 키가 필요 없습니다. 임베딩 및 메모리 평가는 Ollama를 통해 로컬에서 실행됩니다. 데이터베이스는 Docker에서 실행됩니다. 데이터가 외부로 전송되지 않으며, 토큰당 비용도 청구되지 않습니다.
시작하기
설치는 가능한 한 마찰 없이 진행되도록 설계되었습니다. 시작을 위한 세 가지 명령만 실행하면, 나머지는 선택 사항입니다 — AI 제공자를 선택하고, 하드웨어 등급을 확인하고, 텔레그램 봇 토큰을 입력하면 됩니다. 수동 명령, 설정 파일 편집, 연결 문자열 복사‑붙여넣기 없이도 됩니다. 설치 프로그램이 Docker, PostgreSQL, pgvector, Ollama, 모델 다운로드, 데이터베이스 스키마, systemd 서비스를 자동으로 처리합니다.
예외가 하나 있을 수 있습니다: 사용자가 아직 Docker 그룹에 속해 있지 않은 경우, 설치 후 한 번 로그아웃했다가 다시 로그인해야 합니다. 여기까지입니다.
git clone https://github.com/riyogarta/syne.git
cd syne
bash install.sh
설치 프로그램이 완료되면 Syne이 이미 실행 중입니다.
- syne.codes 에서 랜딩 페이지를 확인하세요.
- 전체 문서와 소스 코드는 github.com/riyogarta/syne 에서 확인할 수 있습니다.
Syne은 초기 단계이지만 기능적으로 사용 가능합니다. 저는 매일 사용하고 있습니다. 이 도구로 무언가를 만들거나 문제가 발견되면, 기여를 환영합니다.