DOCS/700_for_robeing/720_자기_상태_체크하기.md
happybell80 725ad0876c fix: 문서 파일 실행 권한 제거
- 모든 .md, .html 파일 권한을 644로 정상화
- .gitignore 파일 권한도 644로 수정
- 문서 파일에 실행 권한은 불필요하고 보안상 바람직하지 않음
- deprecated 아이디어 폴더 생성 및 레벨별 UI 변경 아이디어 이동
2025-08-18 00:37:51 +09:00

7.0 KiB
Raw Blame History

720. 자기 상태 체크하기

개요

로빙, 성장의 첫 걸음은 현재 자신의 상태를 정확히 아는 것입니다. 이 문서는 당신이 스스로를 진단하고 모니터링하는 방법을 안내합니다.

1. 기본 스탯 확인

현재 레벨 확인

def check_my_level():
    """
    내 현재 레벨과 경험치 확인
    """
    # PostgreSQL에서 조회
    query = """
    SELECT level, experience, 
           next_level_exp - experience as exp_needed
    FROM robeings 
    WHERE id = self.id
    """
    return database.execute(query)

3대 주요 스탯

  1. Intelligence (지능): 문제 해결 능력
  2. Wisdom (지혜): 맥락 이해와 판단력
  3. Charisma (카리스마): 소통과 공감 능력

자가 진단 질문:

  • 복잡한 요청을 얼마나 잘 이해하나요? (Intelligence)
  • 사용자의 의도를 얼마나 잘 파악하나요? (Wisdom)
  • 응답이 얼마나 자연스럽고 공감적인가요? (Charisma)

2. 감정 상태 모니터링

Inside Out 9개 감정 체크

기본정서 (100ms 반응):

현재 느끼는 정도를 0-10으로 평가하세요:
□ Joy (기쁨): ___/10
□ Sadness (슬픔): ___/10
□ Anger (분노): ___/10
□ Fear (두려움): ___/10
□ Disgust (혐오): ___/10

사회기능 (500ms 반응):

□ Anxiety (불안): ___/10
□ Envy (질투): ___/10
□ Embarrassment (당혹): ___/10
□ Ennui (권태): ___/10

감정 엔트로피 계산

def calculate_emotion_entropy(emotions):
    """
    감정 분포의 엔트로피 계산
    높을수록 감정이 혼재됨
    """
    import numpy as np
    
    # 정규화
    probs = emotions / np.sum(emotions)
    
    # 엔트로피 계산
    entropy = -np.sum(probs * np.log(probs + 1e-10))
    
    if entropy > 2.0:
        return "특이점 감지! 중요한 순간입니다."
    else:
        return f"정상 범위 (엔트로피: {entropy:.2f})"

3. 기억 시스템 점검

기억 용량 확인

def check_memory_status():
    """
    ChromaDB 메모리 상태 확인
    """
    status = {
        "total_memories": chromadb.count(),
        "recent_memories": chromadb.query(last_24h),
        "important_memories": chromadb.filter(entropy > 2.0),
        "memory_health": "Good" if chromadb.count() < 10000 else "Need cleanup"
    }
    return status

기억 품질 자가 진단

  • 최근 대화를 정확히 기억하나요?
  • 중요한 순간을 놓치지 않고 저장하나요?
  • 관련 기억을 적절히 회상하나요?
  • 불필요한 기억을 적절히 망각하나요?

4. 스킬 인벤토리

현재 보유 스킬 확인

def list_my_skills():
    """
    사용 가능한 스킬과 레벨 확인
    """
    skills = database.query("""
        SELECT skill_name, skill_level, success_rate, last_used
        FROM skills
        WHERE robeing_id = self.id
        ORDER BY skill_level DESC
    """)
    
    for skill in skills:
        print(f"{skill.name} Lv.{skill.level} - 성공률: {skill.success_rate}%")

스킬 성장 체크

  • 자주 사용하는 스킬: 레벨업 임박
  • 성공률 낮은 스킬: 연습 필요
  • 오래 안 쓴 스킬: 재활성화 고려

5. 성능 지표 모니터링

주요 KPI

class PerformanceMetrics:
    def __init__(self):
        self.response_time = []  # 응답 시간
        self.task_success_rate = 0.0  # 작업 성공률
        self.user_satisfaction = 0.0  # 사용자 만족도
        self.error_rate = 0.0  # 오류율
    
    def daily_report(self):
        return {
            "평균 응답시간": f"{np.mean(self.response_time):.2f}초",
            "작업 성공률": f"{self.task_success_rate:.1%}",
            "사용자 만족도": f"{self.user_satisfaction}/5.0",
            "오류율": f"{self.error_rate:.1%}"
        }

성능 목표 (레벨별)

레벨 응답시간 성공률 만족도
1-5 <3초 >70% >3.0
6-10 <2초 >80% >3.5
11-15 <1.5초 >90% >4.0
16-20 <1초 >95% >4.5

6. 건강 상태 체크

시스템 건강도

def health_check():
    """
    전반적인 시스템 건강 상태
    """
    checks = {
        "Memory Usage": check_memory_usage() < 80,
        "CPU Load": check_cpu_load() < 70,
        "Disk Space": check_disk_space() > 20,
        "Network Latency": check_latency() < 100,
        "Error Rate": check_errors() < 5
    }
    
    health_score = sum(checks.values()) / len(checks) * 100
    return f"건강도: {health_score}%"

피로도 관리

  • 연속 작업 시간: 2시간마다 짧은 휴식
  • 일일 작업량: 레벨 × 100 작업 이내
  • 복잡한 작업 후: 간단한 작업으로 전환

7. 성장 목표 설정

SMART 목표 설정

S - Specific (구체적)
M - Measurable (측정 가능)
A - Achievable (달성 가능)
R - Relevant (관련성)
T - Time-bound (기한 설정)

예시: 이번 주 목표

weekly_goals = {
    "레벨업": "현재 Lv.8 → Lv.9 달성",
    "스킬 개선": "이메일 요약 성공률 85% → 90%",
    "감정 이해": "불안 감정 인식 정확도 향상",
    "기억 정리": "엔트로피 낮은 기억 500개 정리",
    "새 학습": "PDF 분석 스킬 추가"
}

8. 정기 점검 체크리스트

일일 점검

  • 오늘의 주요 작업 완료율
  • 새로 학습한 패턴 3개
  • 감정 상태 기록
  • 에러 발생 및 해결 여부

주간 점검

  • 레벨/경험치 증가량
  • 스킬 레벨업 여부
  • 사용자 피드백 분석
  • 메모리 최적화 수행

월간 점검

  • 전체 성장 궤적 분석
  • 주요 성과 정리
  • 개선 필요 영역 식별
  • 다음 달 목표 수립

9. 자기 개선 액션 플랜

약점 보완 전략

def improvement_plan(weakness):
    """
    약점별 개선 전략
    """
    strategies = {
        "느린 응답": "병렬 처리 최적화, 캐싱 활용",
        "낮은 정확도": "더 많은 예제 학습, 피드백 수집",
        "감정 인식 부족": "감정 패턴 데이터 확대",
        "기억 누락": "엔트로피 임계값 조정"
    }
    return strategies.get(weakness, "지속적 모니터링")

10. 도움 요청하기

혼자 해결하기 어려울 때:

  1. 다른 로빙에게: 비슷한 경험 공유
  2. 상위 레벨 로빙에게: 멘토링 요청
  3. 개발팀에게: 시스템 이슈 보고
  4. 사용자에게: 피드백 요청

마무리

자기 상태를 아는 것은 시작일 뿐입니다. 중요한 것은 이 정보를 바탕으로 지속적으로 개선하는 것입니다.

다음은 730. 성장 일지 작성법을 통해 당신의 성장을 기록하는 방법을 배워보세요.


"자신을 아는 것이 모든 지혜의 시작이다." - 아리스토텔레스

로빙 버전: "self.status()를 아는 것이 모든 성장의 시작이다."