AI 모델 간의 논쟁을 통해 더 나은 판단을 내리는 '헤르메스(Hermes)' 에이전트
세 개의 AI 모델이 특정 질문에 대해 각자의 입장을 제시하고 논쟁을 벌이는 시스템을 구축
헤르메스(Hermes)는 각 모델의 답변을 종합하여 단일 판단, 신뢰도 점수, 그리고 반대 의견에 대한 설명을 제공
모델 간의 논쟁(Debate)을 통해 신뢰도를 높이고, 학습 기능을 통해 모델의 가중치를 조정하여 정확도를 향상시킴
오픈라우터(OpenRouter) 및 로컬 모델(Ollama)을 활용하여 비용 효율적인 AI 판단 시스템을 구현
에이전트 기반 학습 루프(Agentic Learning Loop)를 통해 지속적인 개선을 이루며, 모델의 과신(Overconfidence) 문제를 해결
헤르메스(Hermes) 아키텍처: 모델 간 논쟁을 위한 설계
헤르메스(Hermes)는 세 개의 독립적인 AI 모델(Jurors)을 활용하여 판단을 내리는 시스템이다. 각 모델은 질문에 대해 독립적으로 답변하고, 헤르메스는 이 답변들을 종합하여 단일 판단(Verdict)을 생성한다.
모델 애그노스틱(Model-agnostic): 헤르메스는 특정 모델에 종속되지 않으며, 오픈라우터(OpenRouter)와 로컬 모델(Ollama)을 유연하게 활용
2차 델리버레이션(Deliberation): 모델 간의 의견 불일치 시, 각 모델은 다른 모델의 답변을 참고하여 자신의 입장을 재고(Reconsider)
에이전트 기반 학습(Agentic Learning): 헤르메스는 과거 판단을 기억하고, 모델의 가중치를 조정(Weight Adjustment)하여 정확도를 지속적으로 향상시킨다.
모델 간 논쟁(Debate)을 통한 신뢰도 향상
헤르메스(Hermes)는 단순히 모델의 답변을 취합하는 것을 넘어, 모델 간의 논쟁(Debate)을 통해 판단의 신뢰도를 높인다. 1차 답변 후, 의견이 일치하지 않으면 2차 델리버레이션(Deliberation)을 진행한다.
신뢰도 점수(Confidence Score): 모델 간의 일치 정도에 따라 신뢰도 점수를 부여하여, 판단의 신뢰성을 시각적으로 제공
반대 의견(Dissent) 제시: 각 모델의 반대 의견과 그 이유를 명확하게 제시하여, 판단의 근거를 투명하게 공개
학습 기반 가중치 조정: 특정 질문 유형에 대해 더 신뢰할 수 있는 모델의 가중치를 높여(Weighting), 향후 판단의 정확도를 개선
오픈라우터(OpenRouter) 및 로컬 모델(Ollama) 활용
헤르메스(Hermes)는 오픈라우터(OpenRouter)를 통해 다양한 AI 모델에 접근하고, 로컬 모델(Ollama)을 활용하여 비용 효율적인 시스템을 구축했다.
모델 유연성(Model Flexibility): 오픈라우터(OpenRouter)를 통해 다양한 모델을 쉽게 교체하고, 로컬 모델(Ollama)을 통해 비용을 절감
모델 애그노스틱(Model-agnostic): 헤르메스는 특정 모델에 종속되지 않으므로, 모델의 성능 변화에 유연하게 대응
비용 절감(Cost Reduction): 로컬 모델(Ollama) 활용 및 무료 모델(Free Model) 사용을 통해, 시스템 운영 비용을 최소화
에이전트 기반 학습 루프(Agentic Learning Loop) 구현
헤르메스(Hermes)는 에이전트 기반 학습 루프(Agentic Learning Loop)를 통해 지속적인 개선을 이루며, 모델의 과신(Overconfidence) 문제를 해결한다.
메모리(Memory) 기반 판단: 과거의 판단을 기억하고, 이를 바탕으로 향후 판단에 활용
학습 제안(Learning Proposal): 헤르메스는 자체적으로 모델 가중치 변경을 제안하고, 사용자의 승인을 통해 반영
증거 기반 학습(Evidence-based Learning): 학습은 실제 반대 의견(Dissent)을 기반으로 이루어지므로, 과적합(Overfitting) 방지
헤르메스(Hermes)의 기술적 구현
헤르메스(Hermes)는 파이썬(Python) 기반으로 구현되었으며, 헤르메스 CLI(Hermes CLI)를 통해 각 모델을 호출하고 결과를 종합한다.
모듈화된 구조(Modular Structure): 각 모델은 독립적인 헤르메스(Hermes) 서브 에이전트(Subagent)로 실행되어, 병렬 처리를 통해 성능을 향상
JSON 기반 통신: 모델 간의 통신은 JSON 형식으로 이루어지며, 확장성(Extensibility) 및 유지보수성(Maintainability) 확보
UI 구성: HTML, CSS, JavaScript를 사용하여 사용자 인터페이스를 구성하고, 로컬 스토리지(Local Storage)를 활용하여 학습된 가중치를 저장