GCP 인 액션: GCE, Hermes Agent, 그리고 Telegram을 활용한 지속적인 AI 어시스턴트 구축

발행: (2026년 5월 2일 PM 09:01 GMT+9)
5 분 소요
원문: Dev.to

Source: Dev.to

소개

LINE Bot의 Vertex AI 마이그레이션을 해결한 후, AI 어시스턴트가 보다 능동적이고 장기 기억을 가질 수 있을지 궁금해졌습니다. 저는 NousResearch의 오픈소스 Hermes Agent를 사용했습니다.
일반적인 챗봇과 달리 Hermes는 “숨쉬는 운영 체제”처럼 설계되었습니다: 셸 명령을 실행하고, Python 스크립트를 작성하며, 장기 기억을 관리하고, 다양한 게이트웨이(텔레그램, 디스코드)를 통해 지속적으로 연결됩니다.

24시간 내내 실행되도록 **Google Compute Engine (GCE)**에 배포했습니다. 이 가이드는 처음부터 배포 과정을 문서화하고 최신 Gemini 2.5 Flash 모델을 설정할 때 마주친 함정들을 정리합니다.

전제 조건

매개변수설명
PROJECT_IDGoogle Cloud 프로젝트 ID
LOCATIONglobal
GOOGLE_API_KEYGoogle AI Studio의 API 키
Machine typee2-medium (도구 사용 권장)
OS imageUbuntu 22.04 LTS

VM 만들기

gcloud compute instances create hermes-agent-vm \
    --project=YOUR_PROJECT_ID \
    --zone=us-central1-a \
    --machine-type=e2-medium \
    --image-family=ubuntu-2204-lts \
    --image-project=ubuntu-os-cloud \
    --boot-disk-size=30GB \
    --metadata=startup-script='#!/bin/bash
        apt-get update
        apt-get install -y git curl python3-pip python3-venv nodejs npm
    '

Hermes Agent 설치

인스턴스에 SSH 접속

gcloud compute ssh hermes-agent-vm --zone=us-central1-a

원클릭 설치 프로그램 실행

curl -fsSL https://raw.githubusercontent.com/NousResearch/hermes-agent/main/scripts/install.sh | bash
source ~/.bashrc

Hermes 구성

모델 구성

~/.hermes/config.yaml 파일을 만들거나 편집하고 명시적으로 google/ 접두사 없이 Gemini 2.5 Flash 모델을 지정하세요, 예:

provider:
  name: gemini
  model: gemini-2.5-flash
  # auxiliary models (titles, summarization, etc.)
  auxiliary:
    title: gemini-2.5-flash
    summary: gemini-2.5-flash

API 키

API 키와 필요한 환경 변수를 ~/.hermes/.env에 저장하세요:

GOOGLE_API_KEY=YOUR_GOOGLE_API_KEY

지속성을 위한 Systemd 설정

/etc/systemd/system/hermes.service에 Systemd 서비스 파일을 생성합니다:

[Unit]
Description=Hermes Agent Gateway
After=network.target

[Service]
Type=simple
User=root
Environment=HOME=/root
Environment=PYTHONUNBUFFERED=1
ExecStartPre=/usr/bin/pkill -9 -f hermes || true
ExecStart=/usr/local/lib/hermes-agent/venv/bin/hermes gateway run
Restart=always
RestartSec=10

[Install]
WantedBy=multi-user.target

서비스를 활성화하고 시작합니다:

sudo systemctl daemon-reload
sudo systemctl enable hermes
sudo systemctl restart hermes

일반적인 문제 해결

증상원인해결 방법
에이전트가 메시지를 읽지만 응답하지 않음모델 식별자 gemini-3-flash-preview(더 이상 사용되지 않음)으로 설정됨config.yaml에서 모든 모델 참조를 gemini-2.5-flash로 변경하거나 auxiliary_client.py를 패치하십시오
“404 Model Not Found” 오류google/ 접두사 사용(예: google/gemini-2.5-flash)짧은 이름 gemini-2.5-flash를 사용하십시오
서비스 시작 시 “Gateway already running (PID …)”이전 Hermes 프로세스가 아직 실행 중임Systemd 유닛의 ExecStartPre 라인이 새 프로세스를 시작하기 전에 남아 있는 프로세스를 종료합니다
로그에 보조 기능(제목 생성 등) 오류가 표시됨기본 보조 모델 식별자가 오래됨위와 같이 config.yaml에 보조 모델을 명시적으로 설정하십시오

결론

위 단계들을 따라 하면 전용 Hermes Agent가 GCE에서 안정적으로 실행되며 언제든지 텔레그램을 통해 접근할 수 있습니다. 이 에이전트는 정보를 가져오고, 스크립트를 실행하며, 클라우드 VM에서 장기 메모리를 유지합니다.

핵심 요점

  • 모델 식별자는 빠르게 변경됩니다; 항상 공식 문서나 MCP 도구를 통해 정확한 이름을 확인하십시오.
  • 짧은 모델 이름(gemini-2.5-flash)을 사용하면 라우팅 오류를 방지할 수 있습니다.
  • Systemd는 에이전트가 SSH 연결 끊김을 견디고, 실패 시 자동으로 재시작되도록 보장합니다.

24시간 AI 디지털 복제본을 원한다면, 이 SOP를 따라 자체 지속 가능한 Hermes Agent를 설정하십시오.

0 조회
Back to Blog

관련 글

더 보기 »

기본적으로 NTLM 비활성화

NTLM 소개 NTLM(NT LAN Manager)은 Microsoft 환경에서 인증 및 세션 보안을 위해 사용되는 보안 프로토콜 모음입니다. While it prov…