Show GN: Vibe coding으로 만든 Honcho용 Codex + 로컬 임베딩 게이트웨이
(github.com/DaydreamBlend)(이 프로젝트는 Vibe coding을 사용한 프로젝트입니다.)
안녕하세요! 저는 평소 GeekNews를 즐겨 보고 있는 약학 계열 대학원생입니다.
여기서 Hermes Agent를 알게 되어 연구에 잘 쓰고 있었는데, Honcho라는 메모리 어댑터를 추가로 쓸 수 있다는 걸 알게 되었습니다.
그런데 살펴보니 Codex 구독 할당량을 쓰는 게 아니라 따로 토큰 기반 API 요청을 보내는 방식으로 동작하는 방식이어서 추가 과금이 걱정되더라고요. 왠지 덮어놓고 쓰다가 쥐꼬리만한 대학원생 월급을 다 잃을 것 같은 걱정이 들었습니다.
그래서 Hermes Agent에서 ChatGPT 구독으로 딸려오는 Codex 할당량을 마치 토큰 기반 요청처럼 사용하는 것에 착안해서,
Codex 구독으로 Honcho 백엔드를 대체하는 일종의 어댑터를 만들었습니다.
작동 방식은 다음과 같습니다.
- Honcho 구동 방식을 보니, 기본 설정 상태에서 메모리 중요성 판단은 OpenAI GPT 5.4 mini로 요청을 보내고, 검색용 임베딩 역시 OpenAI embedding 모델을 사용하는 방식이었습니다.
- 그래서 Hermes Agent의 Codex OAuth 코드를 사용하여 OpenAI endpoint 응답처럼 나오게 바꾸었고, Embedding은 로컬에서 llama.cpp를 통해 BGE-M3 fp16.gguf를 이용하도록 바꾸었습니다.
- Embedding 차원은 기본 1536 차원이었는데, 공개 1536 차원 모델이 적어 1024 차원 모델인 BGE-M3을 사용하였습니다.
- Honcho 세팅에서는 로컬 서버를 지원하기에, 미리 honcho-codex-gateway 도커 스택을 설치하고, 거기서 구동되는 서버로 honcho 본래 도커 스택이 연결되도록 하였습니다.
- 또한, honcho에서 token화하는 방식이 bge와 달라 길이 문제가 생겨서, tokenizing을 bge-m3에서 수행해서 Chunking하는 방식으로 작동하도록 했습니다.
코드 작성에는 자신이 없어서, Hermes Agent에 백엔드로는 Codex 구독 기반 GPT 5.5, 추론 노력 Low를 사용했습니다.
취미 용도로 구매한 GB10 계열 MSI EdgeXpert 1TB 모델 (ARM Ubuntu)에서는 잘 동작하는 것을 확인하였습니다.
Windows/Mac 등 다른 OS에서는 동작하는지 확인하지 못하였습니다.
처음 목표가 100명 정도가 git clone을 했으면 GeekNews에도 올려보면 좋겠다고 생각했는데, 13일만에 기준을 만족해서, 평소에 자주 방문하는 곳에서 평가를 받아보고 싶어 올려봅니다.
긴 글 읽어주셔서 감사합니다!