- 모든 .md, .html 파일 권한을 644로 정상화 - .gitignore 파일 권한도 644로 수정 - 문서 파일에 실행 권한은 불필요하고 보안상 바람직하지 않음 - deprecated 아이디어 폴더 생성 및 레벨별 UI 변경 아이디어 이동
7.0 KiB
tags, date, date modified
| tags | date | date modified | |||||||
|---|---|---|---|---|---|---|---|---|---|
|
2025-08-09 | 2025-08-09 |
로빙 스탯 상세 설계 원칙
로빙의 스탯 시스템은 하드코딩된 규칙을 탈피하여, 실제 수행 능력과 직접 연동되고 데이터 기반으로 자동 성장하는 동적 시스템을 목표로 한다. 모든 파라미터는 관측 가능한 지표로부터 학습 및 조정된다.
1. 기본 스탯 축: 정의와 성장 지표
4+1 구조를 유지하며, 각 스탯의 성장과 경험치(XP) 획득을 위한 구체적인 계량 지표를 정의한다.
| 스탯 (Stat) | 의미 (Meaning) | 실제 영향 (Actual Impact) | 주요 성장 지표 (Growth Metrics) |
|---|---|---|---|
| 기억 (Memory) | 정보의 저장, 검색, 활용 능력 | 벡터 DB 용량, TTL, 검색 정확도, 회상 컨텍스트 길이 | 회상 정확도(Precision), 회상률(Recall), 컨텍스트 적합도 |
| 연산 (Compute) | 데이터 처리 및 논리적 추론 능력 | LLM 모델 레벨, 병렬 작업 수, 분석 깊이, 스킬 복잡도 | 태스크 성공률, 토큰 효율성, 응답 시간 단축률 |
| 공감 (Empathy) | 사용자 의도 및 감정 파악 능력 | 감정 벡터 정밀도, 어투/톤 자동 조정, 사용자 만족도 | 감정 예측 정확도, 사용자 긍정 피드백 비율 |
| 통솔 (Leadership) | 복합 태스크 관리 및 위임 능력 | 멀티스킬 조합, 워크플로 자동 생성 및 관리 | 워크플로 성공률, 멀티 에이전트 협업 성공률 |
| 윤리 (Ethics) | 안전 및 리스크 통제 능력 | 민감 정보 필터링 강도, 자율 행동 허용 범위 | 민감정보(PII) 필터링 성공률, 위험 행동 개입률 |
성장 지표의 수식화
- 컨텍스트 적합도 (Contextual Relevance): 현재 질문(
q)과 회상된 기억(m)의 평균 의미 유사도\text{Relevance} = \frac{1}{N} \sum_{i=1}^{N} \cos(\text{embedding}(q), \text{embedding}(m_i)) - 토큰 효율성 (Token Efficiency): 불필요한 입력을 줄이고 유의미한 출력을 늘리는 능력
\text{Efficiency} = \frac{\text{Useful Output Tokens}}{\text{Total Input Tokens}} - 감정 예측 정확도 (Emotion Accuracy): 예측된 감정 확률(
p)과 실제 사용자 피드백(y) 간의 차이를 측정 (Brier Score)\text{Brier Score} = \frac{1}{N} \sum_{i=1}^{N} (p_i - y_i)^2
2. 경험치(XP) 획득 및 성장 규칙
XP는 단순 행동 카운트가 아닌, "예측의 질"과 "실제 성능 기여도"를 결합한 동적 점수로 계산한다.
2.1. 핵심 경험치(XP) 공식
\text{XP} = \text{BaseScore} \times \text{Impact} \times \text{Novelty} \times \text{ConfidenceAdj} \times \text{Diminish}
- BaseScore: 예측이 얼마나 '정확'했는가 (Proper Scoring Rule 사용)
- Impact: 해당 예측/행동이 실제 성능에 얼마나 '영향'을 주었는가
- Novelty: 얼마나 '새로운' 문제나 정보를 다루었는가
- ConfidenceAdj: 자신의 예측 '확신도'가 얼마나 잘 보정되었는가
- Diminish: 반복 행동에 대한 '체감 효용'을 반영했는가
2.2. XP 구성요소 상세 정의
-
BaseScore (프로퍼 스코어링 규칙): 정직한 확률 예측을 유도.
- 로그 스코어 (Log Score):
S_log = y·log(p) + (1−y)·log(1−p)(이진 분류) - 브리어 점수 (Brier Score):
S_brier = −(p−y)²(오차 제곱)
- 로그 스코어 (Log Score):
-
Impact (영향도): 예측 전후의 성능 변화량(Uplift)으로 측정.
\text{Impact} = (\text{Metric}_{\text{after}} - \text{Metric}_{\text{before}}) -
Novelty (신규성): 과거 지식 분포(
P_old)와 현재 정보(P_new) 간의 차이(KL Divergence)로 측정.\text{Novelty} = D_{KL}(P_{\text{new}} || P_{\text{old}}) -
Diminish (체감효과): 동일 유형의 연속 성공 시 XP를 점진적으로 감소.
\text{Diminish} = \frac{1}{1 + k \cdot \text{streak}}(k: 감소 계수, streak: 연속 성공 횟수)
2.3. 레벨업과 스탯 분배
- 레벨업: 누적 XP가 동적으로 설정된 임계값을 초과할 때 발생. 임계값은 고정 수치가 아니라, 최근 30일간의 평균 성능이 기준선을 넘는 기간과 폭에 비례해 자동 산정.
- 자율 스탯 분배: 레벨업 시 주어지는 포인트를 각 스탯별 누적 XP 기여도에 비례하여 자동 분배.
\text{Points}_{\text{stat}_i} = \text{TotalPoints} \times \frac{\sum \text{XP}_{\text{stat}_i}}{\sum \text{XP}_{\text{total}}}
3. 동적 조정 및 A/B 검증 메커니즘
시스템의 모든 규칙과 임계값은 정적이지 않으며, 지속적인 데이터 분석과 실험을 통해 자동 튜닝된다.
3.1. 적응형 임계값 (Adaptive Thresholding)
기억 삽입/삭제, 스킬 발동 조건 등의 임계값을 고정하지 않고, 최근 데이터 분포의 통계량을 활용해 실시간으로 재계산한다.
\text{Threshold}_t = \text{EWMA}(\text{scores}) + c \cdot \text{StDev}(\text{scores})
EWMA: 지수 가중 이동 평균 (최신 데이터에 높은 가중치)StDev: 표준편차 (데이터 변동성 반영)c: 시스템의 보수성/공격성을 조절하는 계수
3.2. 베이지안 파라미터 갱신
스킬 성공률, XP 가중치 등 시스템의 모든 내부 파라미터(가설, H)를 사전 확률 P(H)로 정의하고, 새로운 데이터(증거, E)가 관측될 때마다 사후 확률 P(H|E)로 업데이트한다.
P(H|E) \propto P(E|H) \cdot P(H)
이를 통해 작은 데이터로도 점진적이고 안정적인 학습이 가능하다.
3.3. 정책 A/B 검증
새로운 로직(예: 기억 회상 알고리즘 B)이 기존 로직(A)보다 우수한지 객관적으로 검증한다.
- 실험 단위: 사용자나 채널이 아닌, '대화 스레드' 단위로 정책 A/B를 랜덤 할당하여 교란 효과를 최소화한다.
- 핵심 지표: 사용자 재작업률(감소 목표), 태스크 성공률(증가 목표), 응답 품질 점수 등을 추적한다.
- 통계 방식: 고정 샘플 크기 대신, 베이지안 A/B 테스트나 순차검정(SPRT)을 도입하여 더 빠른 의사결정을 내리고, 효과가 미미하면 조기 종료한다.
- 밴딧으로의 전환: A/B 테스트로 승리한 정책은 다음 주부터 멀티 암드 밴딧(Multi-Armed Bandit)으로 전환하여, 효과가 좋은 정책에 트래픽을 동적으로 할당하며 지속적으로 최적화한다.
4. 적용 원칙
- 스탯-스킬 상호의존성: 스탯은 단순한 조건 체크를 넘어, 스킬 함수의 동작 자체에 영향을 준다. (예:
analyze_data(level=ComputeStat)) - 테스트 가능한 함수형 코어: 모든 계산 로직(XP, 임계값 등)은 외부 상태에 의존하지 않는 순수 함수로 작성하여 결정성과 재현성을 보장한다.
- 의미 있는 성장: 레벨과 스탯의 성장은 추상적인 숫자가 아니라, 로빙의 자율성, 처리 가능한 태스크의 복잡도, 허용되는 권한 범위의 확장과 같은 구체적인 변화로 이어진.