Run Hermes Fully Locally with QVAC
개요
이 가이드에서는 QVAC를 사용하여 Hermes 에이전트를 인터넷 연결 없이 로컬 환경에서 완전히 실행하고, 세션 간 메모리를 유지하며, 제한된 로컬 도구를 사용하고, 오프라인 상태에서도 반복 가능한 작업을 완료하는 방법을 설명합니다.
주요 내용
* 로컬 AI 에이전트 구축: Hermes는 언어 모델을 둘러싼 에이전트 레이어로, 대화, 상태, 메모리, 스킬, 도구 설명 및 모델 요청을 실제 액션으로 연결하는 루프를 관리합니다. QVAC는 언어 모델을 로컬에서 실행하고 OpenAI 호환 HTTP 인터페이스를 통해 노출하는 역할을 합니다.
* "완전 로컬"의 정의: Hermes와 QVAC가 단일 컴퓨터 또는 격리된 로컬 환경에서 실행되고, 모델 요청이 127.0.0.1로만 전송되며, 세션, 메모리, 스킬, 구성 및 로그가 로컬 저장소에 유지되고, 승인 테스트에 사용되는 도구가 외부 서비스를 요구하지 않으며, 초기 소프트웨어 및 모델 파일 다운로드 후 인터넷 액세스 없이 시나리오가 완료되는 것을 의미합니다.
* 구체적인 테스트 사례: 개인 결정 일지를 예시로, 로컬 회의 노트 읽기, 프로젝트, 결정, 다음 행동 추출, Markdown 요약 작성, 형식 선호도 기억 및 새 세션에서 복구, 네트워크 비활성화 후 새 파일 작업 반복 등의 네 가지 독립적인 레이어를 테스트합니다.
* 준비물 및 설치: Unix 계열 환경, Node.js 및 npm (QVAC용), Python 환경 (Hermes용), Git, curl, 충분한 디스크 공간이 필요합니다. WSL2 사용을 권장합니다.
* QVAC CLI 설치 및 설정: npm install -g @qvac/cli 명령으로 QVAC CLI를 설치하고, qvac.config.json 파일을 생성하여 사용할 모델 (예: QWEN3\_6\_35B\_A3B\_MULTIMODAL\_Q4\_K\_M)과 컨텍스트 크기 (ctx_size), 도구 활성화 (tools) 옵션을 설정합니다.
* QVAC 서버 실행: qvac serve openai 명령을 사용하여 로컬호스트 (127.0.0.1) 및 지정된 포트 (11434)로 OpenAI 호환 서버를 시작합니다.
* 함수 출력 테스트: Hermes 에이전트를 설치하기 전에 curl 명령을 사용하여 QVAC 서버가 로컬 파일 크기를 가져오는 get_file_size와 같은 함수를 올바르게 호출하는지 테스트합니다.
* Hermes Agent 설치: 제공된 스크립트(install.sh)를 사용하여 Hermes Agent를 설치합니다.
* Hermes와 QVAC 연결: hermes model 명령을 사용하여 사용자 정의 OpenAI 호환 엔드포인트 (API base URL: http://127.0.0.1:11434/v1, API key: local-qvac, Model name: hermes-local)를 설정합니다.
* 기능 제한 및 테스트: Hermes의 작업 디렉토리, 읽기/쓰기 가능한 디렉토리, 수정하지 않을 파일 등을 명확히 설정하여 에이전트의 행동을 제한하고, 파일 도구 (inbox 읽기, outbox 생성)를 제한하며, 에이전트 루프, 지속적인 메모리, 오프라인 작업 능력을 테스트합니다.
* 오프라인 작업 증명: 네트워크 연결을 끊고 QVAC 서버를 재시작한 후, Hermes가 로컬 모델을 사용하여 파일을 생성하고 읽으며, 메모리를 유지하는지 확인합니다.
* 문제 해결: QVAC 명령 오류, 서버 로딩 문제, 모델 식별자 불일치, 도구 작동 불가, 클라우드 호스트 접속, 지속적인 메모리 오류, 오프라인 시작 시 다운로드 시도 등의 일반적인 문제에 대한 해결 방법을 제공합니다.
* 안전한 일상 운영 프로필: 로컬 에이전트는 실행 계정의 파일 시스템 권한을 상속받으므로, QVAC를 127.0.0.1로 바인딩하고, Hermes에 전체 홈 디렉토리를 노출하지 않으며, 입력 데이터를 읽기 전용으로 마운트하고, 생성된 아티팩트에 대한 별도 디렉토리를 사용하고, 일반 쉘보다 좁은 파일 함수를 선호하며, 작업 디렉토리 외부 액세스에 대한 승인 게이트를 요구할 것을 권장합니다.
시사점
이 가이드라인은 개인 정보 보호, 보안, 그리고 독립적인 AI 에이전트 시스템 구축에 대한 심층적인 이해를 제공하며, 사용자 데이터와 AI 작업의 로컬 제어를 강화하는 실질적인 방법을 제시합니다.
댓글
GitHub Discussions