튜토리얼 지옥 탈출! 로컬 AI 에이전트 Hermes Mentor
개발자의 깃허브(GitHub) 레포지토리를 분석하여 개인 맞춤형 학습 로드맵(Personalized Project Roadmap)을 생성
Ollama를 활용한 로컬 LLM(Local LLM) 기반으로 개인 정보 보호(Privacy-First)를 강화
텔레그램(Telegram) 봇을 통해 매일 학습 과제를 제공하고, 실시간 피드백(Real-time Feedback)을 지원
4주간의 프로젝트 로드맵(Project Roadmap)을 통해 실질적인 코딩 경험(Practical Coding Experience)을 제공
깃허브(GitHub) 연동, 텔레그램(Telegram) 봇, 로컬 LLM(Local LLM)을 결합하여 자동화된 학습 환경(Automated Learning Environment) 구축
Hermes Mentor의 핵심 아키텍처: GEPA 루프
Hermes Mentor는 GEPA(Generate-Evaluate-Patch-Apply) 루프를 통해 지속적으로 학습하고 개선된다.
Generate: 깃허브(GitHub) 레포지토리(Repository)를 분석하여 기술적 격차(Skill Gaps)를 파악하고, 맞춤형 프로젝트 로드맵(Project Roadmap)을 생성한다.
Evaluate: 생성된 로드맵(Roadmap)의 효과를 평가하고, 사용자의 피드백(Feedback)을 수집한다.
Patch: 평가 결과를 바탕으로 학습 로드맵(Learning Roadmap) 및 에이전트(Agent)의 스킬(Skill)을 개선한다.
Apply: 개선된 로드맵(Roadmap)을 사용자에게 제공하고, 텔레그램(Telegram)을 통해 실시간 피드백(Real-time Feedback)을 주고받는다. 이 순환 구조를 통해 Hermes Mentor는 사용자의 개인별 학습 패턴(Personalized Learning Pattern)에 맞춰 진화한다.
Ollama를 활용한 로컬 LLM(Local LLM)의 장점
Hermes Mentor는 Ollama를 사용하여 로컬 환경에서 LLM(Local LLM)을 구동함으로써, 데이터 미저장 정책(Zero-Retention Policy)을 구현하고 개인 정보 보호를 강화한다.
개인 정보 보호: 사용자의 깃허브(GitHub) 코드 및 학습 데이터가 외부 서버로 전송되지 않아 데이터 유출 위험(Data Leakage Risk)을 방지한다.
비용 절감: 클라우드 기반 LLM(Cloud-based LLM) 사용에 따른 API 호출 비용(API Call Cost)을 절감하고, 인터넷 연결 없이도 에이전트(Agent)를 사용할 수 있다.
사용자 정의: 사용자는 Ollama를 통해 다양한 LLM(Local LLM) 모델을 선택하고, 자신의 학습 스타일에 맞는 모델(Model)을 선택할 수 있다.
이러한 특징은 Hermes Mentor가 개인 정보 보호(Privacy)와 접근성(Accessibility)을 동시에 만족시키는 핵심 요소이다.
텔레그램(Telegram) 봇을 활용한 학습 경험 개선
Hermes Mentor는 텔레그램(Telegram) 봇을 통해 실시간 피드백(Real-time Feedback) 및 상호작용(Interaction)을 제공하여 학습 경험을 향상시킨다.
매일의 챌린지(Challenge) 제공: 매주 평일 오전 8시 30분에 텔레그램(Telegram)을 통해 맞춤형 학습 과제(Customized Learning Task)를 제공하여 학습 동기를 부여한다.
깃허브(GitHub) 연동: 사용자가 깃허브(GitHub) 레포지토리(Repository) 링크를 봇에 전송하면, 봇이 코드를 분석하고 PR 생성(Pull Request Creation) 및 TODO 관리(TODO Management)를 자동화한다.
양방향 소통: 사용자는 봇과의 대화를 통해 궁금한 점을 질문하고 즉각적인 답변(Immediate Answer)을 얻을 수 있으며, 학습 진행 상황을 공유할 수 있다.
이러한 기능들은 Hermes Mentor가 단순한 튜토리얼 제공을 넘어 실질적인 멘토(Mentor) 역할을 수행하도록 돕는다.
지속적인 학습을 위한 영구 메모리(Persistent Memory) 시스템
Hermes Mentor는 영구 메모리(Persistent Memory) 시스템을 통해 사용자의 학습 데이터를 지속적으로 관리하고, 개인 맞춤형 학습 경험(Personalized Learning Experience)을 제공한다.
사용자 프로필 저장: 깃허브(GitHub) 레포지토리(Repository) 분석 결과, 학습 진행 상황, 사용자의 피드백(Feedback) 등을 `~/.hermes/memory/` 디렉토리에 저장하여 지속적인 학습 데이터(Learning Data) 관리.
자동 업데이트: 매번의 깃허브(GitHub) 분석 후 사용자 프로필(User Profile)을 업데이트하여, 최신 학습 정보를 반영하고, 사용자가 다시 설명할 필요 없이 에이전트(Agent)가 사용자를 인지하도록 함.
관계 형성: 지속적인 데이터 관리를 통해 에이전트(Agent)는 사용자와의 장기적인 관계(Long-term Relationship)를 형성하고, 더욱 개인화된 학습 경험을 제공한다.
이러한 시스템은 Hermes Mentor가 단순한 도구를 넘어 개인화된 학습 파트너(Personalized Learning Partner)로 기능하게 한다.
Hermes Mentor의 기술 스택(Tech Stack) 및 개발 환경
Hermes Mentor는 다양한 기술을 활용하여 개발되었으며, WSL2 환경(WSL2 Environment)에서 실행된다.
핵심 기술: Python 3.12를 기반으로 하며, Ollama, PyGithub, 텔레그램(Telegram) 봇 API 등을 활용한다.
개발 환경: WSL2(Windows Subsystem for Linux 2)를 사용하여 개발 환경을 구축하고, 자동화된 설정 스크립트(Automated Setup Script)를 통해 간편하게 설치 및 실행할 수 있다.
기술적 특징: Hermes Agent, NousResearch, Hermes cron, Linux crontab 등을 활용하여 에이전트(Agent)의 동작을 제어하고, 지속적인 학습 및 자동화된 작업(Automated Task)을 수행한다.
이러한 기술 스택(Tech Stack)과 개발 환경은 Hermes Mentor가 안정적이고 효율적인 학습 환경(Efficient Learning Environment)을 제공하는 기반이 된다.