내부 연구 프로젝트

컨설팅 역량을 코드로 검증하기 위해 자체적으로 진행한 연구입니다. 23개 저장소를 아이디어 단위로 9개 주제로 묶었고, 같은 목적의 저장소는 하나로 합쳐 소개합니다. 외부 제공 시에는 별도 계약 범위로 다룹니다.

01

완전 로컬 AI 비서

Baron (바론) — 자비스형 개인 비서

영화 아이언맨의 자비스처럼 말을 걸면 바로 대답하고, 지시하면 도구를 조합해 일을 처리하며, 묻지 않아도 먼저 알려주는 개인 AI 비서. 원하는 곡을 설명하면 작사·작곡부터 내 목소리로 부른 음원까지 만들어 준다. 외부 AI API 없이 Mac mini 두 대의 로컬 모델만으로 동작한다.

연구 질문

클라우드 API 없이 소형 서버 두 대만으로 사람과 대화하듯 빠른 응답, 안전한 도구 실행, 장기 기억을 모두 갖춘, 매일 쓰는 비서를 만들 수 있는가.

접근

모든 요청을 큰 모델에 보내지 않는다. 소형 모델(gemma-4)이 먼저 의도를 분류해 인사·단순 조회는 수 초 안에 직접 답하고, 여러 단계가 필요한 일만 27B 추론 루프로 넘긴다. 그 직전에 규칙 기반 플래너가 이번 요청에 필요한 도구 묶음만 골라 실어 프롬프트 캐시를 살린다. 도구는 유스케이스가 아니라 능력 단위로 정의해 루프가 조합하게 하고, 위험한 도구는 승인 카드를 거쳐야만 실행된다. 수집·계산·검증은 코드가, 해석과 문장은 LLM 이 맡는다.

구성 저장소

baron / primary추론 머신. 27B 에이전트 루프와 플래너, RAG 기억, 비전, REST·WebSocket API(연결과 분리된 실행), 아침 브리핑, 자가 점검
baron / secondary작업 머신. 의도 라우터와 경량 경로, 도구 런타임·정책·감사, 시장 데이터와 전략 검증, 포지션 감시, 사업자 관리, 메일 정리
baron / voice실시간 음성 대화. 음성 감지·턴 판정·끼어들기, 화자 인식, 발음 적응 교정, 조회 도구 연결
baron / music음원 제작. 곡 설계·작사, ACE-Step 생성과 GPU 교대 스케줄링, 참고 음원 분석, 보컬 분리·음색 변환·재합성
baron / pwa스마트폰 클라이언트(React PWA). 채팅·음성·사진·음악, 승인 카드, 페어링 코드 인증

주요 기능

  • 세 갈래 응답 경로 — 소형 라우터가 확신할 때만(0.8 이상) 직접 답하거나 조회 도구 하나를 바로 실행하고(수 초~20초), 나머지는 27B ReAct 루프(최대 5스텝)로 보낸다. 도구가 필요한 요청에 도구 없이 쓴 답은 버리고 다시 시킨다.
  • 버튼 없는 실시간 음성 대화 — 계속 듣다가 말이 끝나면 답하고, AI 가 말하는 중에 끼어들면 멈춘다. "응·그래" 같은 맞장구는 끼어들기와 구분해 하던 말을 이어 가고, 끊긴 답은 실제로 들린 부분까지만 기억한다. 실측 기준 말을 마친 뒤 약 2초 안에 첫 음성이 나오고, 끊으면 0.5초 안팎에 멈춘다.
  • 내 목소리만 듣는 모드 — 약 45초 목소리를 등록하면 등록된 사람의 말만 받아들인다. 프로필은 암호화해 로컬에 두고, 쓸수록 목소리와 발음 습관(예: 잘못 인식되는 용어)을 배워 인식이 나아진다. 다만 화자 인식은 권한 근거로 쓰지 않아, 음성으로는 조회만 하고 주문·발송은 하지 않는다.
  • 확인한 사실만 말하기 — 날씨·주가·일정 같은 실시간 질문은 "확인해 볼게요"로 기다림을 가린 뒤 조회 결과만 근거로 답하고, 조회에 실패하면 수치를 지어내지 않는다. 주식 질문은 서버가 자료 수집·계산·문장 구성까지 끝낸 브리핑 도구 하나로 보내 모델의 선택 실수를 줄였다.
  • 시간 한도 안의 답 보장 — 남은 시간이 부족하면 도구를 멈추고 모은 결과로 답을 쓰며, 그래도 비면 성공한 조회 결과로 부분 답을 만든다. 실행은 연결과 분리돼 있어 폰 연결이 끊겨도 끝까지 진행되고, 재접속하면 이어받는다.
  • 장기 기억 — 대화에서 지속되는 사실(이름·취향·일정 등)을 추출해 벡터 DB 에 쌓고, 실측으로 정한 유사도 기준을 넘는 것만 꺼내 쓴다. 거의 같은 기억은 중복으로 저장하지 않는다.
  • 먼저 말하기 — 매일 아침 메일·일정·세무 기한·리마인더·보유 종목을 묶은 브리핑(날짜·요일 표현은 코드로 검증·교정), 매 정시 새 메일 정리, Google Tasks 와 연동한 리마인더 D-day 알림.
  • 사업자 비서 — 말·영수증 사진·카드 내역 파일로 거래 원장 기록(부가세 역산), 견적·청구서 발행과 미수금 알림, 문서 보관과 의미 검색, 순자산과 월간 보고서.
  • 금융 데이터와 전략 검증 — 전 종목 일별 시세를 자체 수집해 조건 선별과 백테스트를 한다. 백테스트는 전일까지의 정보만 쓰고 체결 순서를 알 수 없으면 불리한 쪽으로 가정한다. 새 설정은 네 구간에서 모두 기존보다 나아야 후보가 되고, 실제 주문 없이 매일 섀도 운용으로 표본 외 성적을 쌓으며, 반영은 사람이 결정한다. 대화로 내는 주문은 자동 승인 설정과 무관하게 사람이 직접 승인해야 한다.
  • 작사·작곡·음원 생성 — 원하는 곡을 말이나 글로 설명하면 27B 가 섹션·코드 진행·BPM·조성을 담은 곡 설계도(JSON)를 만들고 가사를 쓴 뒤, 음악 생성 모델 ACE-Step 1.5 가 보컬이 들어간 음원을 만든다. 설계도는 스키마로 검증하고, 응답이 잘리거나 형식이 틀리면 사유를 붙여 다시 요청한다. 실측 기준 30초 곡의 음원 생성 단계는 약 45초다.
  • 한 대의 GPU 를 나눠 쓰는 교대 운용 — 메모리 32GB 에 27B 와 음악 모델을 함께 올리면 메모리가 부족해, 음원 작업 동안만 27B 를 내리고 음악 엔진을 올렸다가 끝나면 되돌린다. 그동안 대화는 소형 모델 경로로 계속된다. 생성은 기본적으로 밤(22:00~05:30)에 몰아 하고, 낮에 들어온 요청은 설계·작사까지 해 두고 대기열을 비워 다른 작업을 막지 않는다. 급하면 [지금 생성]으로 바로 돌린다.
  • 참고 음원 분석 작곡 — 유튜브 링크 여러 개와 비중을 주면 곡마다 BPM·조성·코드 진행·구조·에너지·음색을 분석해 목표 특성을 만들고, 그 특성에 맞춰 코드 진행과 구조를 새로 설계한다. 참고곡의 멜로디나 코드 진행은 그대로 가져오지 않는다. 완성곡을 같은 분석기로 다시 분석해 참고곡과 지나치게 비슷하면 경고한다(복제 가능성을 거르는 보조 지표이며 법적 판정은 아니다). 참고 음원은 개인 분석용으로만 보관한다.
  • 내 목소리로 부르기 — 본인 또는 허락받은 사람이라는 동의를 남긴 뒤 30초 안팎의 목소리를 등록하면, 생성곡이나 갖고 있는 노래에서 보컬을 분리(Demucs)하고 음색을 바꿔(Seed-VC) 반주와 다시 합친다. 키는 ±12 반음까지 조정한다. 등록한 목소리는 암호화해 로컬에만 두고, 결과물은 개인 청취용이다.
  • 스스로 빨라지는 비서 — 매일 새벽 전날의 응답 시간·도구 실패율·부정 피드백을 진단해 보고하고, 느리게 처리된 단순 질문은 라우터 예시로 학습해 다음부터 빠른 경로로 보낸다. 평가셋 정확도가 떨어지면 자동으로 되돌리며, 코드는 스스로 고치지 않는다.

처리 흐름 · 채팅

  • 입력텍스트 · 사진 · 음성 파일
  • 의도 분류소형 라우터 · 경량 즉답
  • 플래너규칙 · 도구 묶음 선택
  • 기억 검색bge-m3 · pgvector
  • 에이전트 루프27B ReAct · 최대 5스텝
  • 도구 정책SSRF · 예산 · 승인 · 감사
  • 답변기억 추출 · 음성 합성

처리 흐름 · 실시간 음성

  • 마이크 스트림16kHz · 20ms 조각
  • 음성 감지silero VAD
  • 화자 확인등록된 목소리만
  • 음성 인식Whisper · 발음 교정
  • 턴 판정어미 · 무음 규칙
  • 답 생성gemma-4 · 조회 도구
  • 문장 단위 합성첫 문장부터 재생

처리 흐름 · 음원 제작

  • 요청곡 설명 · 참고 음원 · 목소리
  • 참고 음원 분석librosa · 템포·조성·코드
  • 곡 설계27B · 섹션·코드·BPM
  • 작사섹션별 가사
  • GPU 교대27B 내림 · 밤 배치
  • 음원 생성ACE-Step 1.5
  • 내 목소리 변환Demucs · Seed-VC
  • 결과 검사파일 검증 · 독창성 지표

코드 · 통계LLM 판단검증 게이트

Python · asyncioFastAPI · WebSocket · SSEMLX 로컬 LLM (Qwen3.8-27B · gemma-4)Whisper · silero VADsherpa-onnx 화자 인식ACE-Step 1.5 · Demucs · Seed-VClibrosa · yt-dlpbge-m3 RAGPostgreSQL · pgvector · RedisReact · Vite PWA

※ 금융 기능은 기술 레퍼런스입니다. 투자 자문이나 매매 권유가 아니며, 어떤 수익도 보장하지 않습니다.

02

금융시장 인텔리전스

K-FinSight

뉴스·공시·시세를 온톨로지로 검증한 지식 그래프에 쌓고, 사건마다 시장 반응을 측정해 근거 참조 리포트를 자동 생성하는 로컬 LLM 파이프라인.

연구 질문

하루 수천 건의 문서에서 "무슨 일이 있었고 시장이 어떻게 반응했는가"를 사람이 검증할 수 있는 근거와 함께, 클라우드 API 없이 재현 가능하게 답할 수 있는가.

접근

LLM 을 데이터베이스처럼 쓰지 않는다. 수집·정규화·검증·통계는 코드가 맡고, LLM 은 압축된 증거 묶음을 받아 해석만 한다. 정형 공시 21종은 규칙 파서로, 서술형 문서만 두 로컬 모델 풀로 처리한다.

구성 저장소

K-FinSight수집 → 정규화 → AI 추출 → 지식 승격 → RAG → 시장 반응 → 인텔리전스 → 리포트. Next.js 대시보드·송출 화면 포함

처리 흐름

  • 수집뉴스 RSS · DART · KIS
  • 정규화표준 스키마 · 기업 매칭
  • AI 추출규칙 파서 + 로컬 LLM 풀
  • 온톨로지 검증20 이벤트 · 10 관계
  • 지식 승격중복 병합 · 증거
  • RAGbge-m3
  • 시장 반응초과수익 · 수급
  • 인텔리전스근거 참조 인사이트
  • 리포트일간 · 주간

코드 · 통계LLM 판단검증 게이트

Python · asyncioFastAPIPostgreSQL · pgvectorMLX 로컬 LLM (Qwen3.8-27B · gemma-4)bge-m3 RAGNext.js
03

주식 자동매매 연구·실행

tengine 계열

"잘 버는 봇"이 아니라 잘못된 전략이 실거래로 새어 나가지 않게 막는 공학. 연구·코어·실행·클라이언트를 4개 저장소로 분리해 역할과 권한을 나눴다.

연구 질문

백테스트의 거짓 우위를 시스템 차원에서 걸러내고, 검증한 전략과 실제 동작이 어긋나지 않게 같은 코드로 연구와 실거래를 묶을 수 있는가.

접근

전략 = 데이터(genome JSON) + 실행 코드(공유 코어). 연구 노드는 DB 읽기 권한만 갖고 증권사 API 없이 돌며, 검증된 genome 만 실행 엔진 카탈로그로 내보낸다. shadow → paper → live 승격에는 사람 승인이 필수이고, 안전 조건 하나라도 막히면 주문하지 않는다.

구성 저장소 (4개를 하나의 프로그램으로)

strategy-lab연구 = 생산자. LLM 토론으로 전략 후보 생성·백테스트·검증·승격
strategy-core공유 코어. genome 스펙, KR 신호 프리미티브, 백테스트 하니스 (순수 stdlib)
trading-engine실행 = 소비자. KR·US 독립 프로세스, 모바일 API, 웹 대시보드
trading-client사용자 프로필·모드·브로커·전략 설정 API와 클라이언트

처리 흐름

  • 전략 후보LLM 토론
  • 백테스트편향 제거 · 보수적 체결 · OOS
  • shadow모의
  • paper전진 검증
  • 사람 승인실현 성과 기준
  • 안전 게이트fail-closed
  • liveKR · US 프로세스
Python · asyncioPostgreSQLRedis Pub/SubFastAPI증권사 OpenAPI멀티프로세스 · systemd · launchd

※ 기술 레퍼런스입니다. 투자 자문이나 매매 권유가 아니며, 어떤 수익도 보장하지 않습니다.

04

암호화폐 선물 매매 봇

futures-ai → fmbot

Binance USDⓈ-M 선물을 대상으로, 객관적 계산은 규칙 엔진이 하고 종합 판단은 LLM 이 맡는 설명 가능한 의사결정 구조를 두 세대에 걸쳐 발전시켰다.

연구 질문

초 단위로 움직이는 시장에서 왜 진입·청산했는지 사람이 읽을 수 있는 근거를 남기면서, 실거래 안전을 코드로 강제할 수 있는가.

접근

1세대(futures-ai)는 규칙 엔진과 LLM 판단의 역할을 분리한 설명 가능 엔진으로 시작했고, 2세대(fmbot)는 수집·분류·판단·실행을 데몬 단위로 나눈 구조로 다시 만들었다. 시세·티커·웹소켓 수집 데몬이 먼저, 시장 상태 분류가 그 다음, 매매 데몬이 마지막에 뜬다. 실거래는 단 하나의 스위치로만 켜지고 나머지는 모두 페이퍼다.

구성 저장소 (세대 병합)

fmbot (2세대, 현행)데몬 분리 구조(scand · tickd · wsd · classd · beamd · trade). 로컬 MLX 모델을 판단에 사용, 페이퍼/섀도 트랙별 진입·청산 규칙 원장
futures-ai (1세대)Rule Engine + LLM 종합 판단의 역할 분리 원형. Alpha-first 개발 원칙 문서화
  • 시세 · 티커 · WS 수집1분봉 → DB · Redis
  • 시장 상태 분류레짐 라벨
  • 종합 판단규칙 + LLM
  • 안전 스위치LIVE 단일 플래그 · 포지션 상한
  • 실행페이퍼 / 섀도 / 실거래
Python · asyncioBinance Futures API · WebSocketPostgreSQL · RedisMLX 로컬 LLMuv · ruff · pytest

※ 기술 레퍼런스입니다. 투자 자문이나 매매 권유가 아니며, 어떤 수익도 보장하지 않습니다.

05

LLM 오케스트레이션 · 봇 아키텍처

FusionAgent 와 브리지/코어 패턴

메신저 봇은 메시지만 다루고 AI 처리는 별도 코어에 위임하는 2계층 구조를 세 번 반복해 검증했고, 그 코어 앞단에 다중 모델 게이트웨이(FusionAgent)를 두었다.

연구 질문

여러 봇 서비스가 모델을 직접 부르지 않고도 품질·비용·장애 격리를 얻으려면 경계를 어디에 두어야 하는가.

접근

봇(브리지)은 플랫폼(Telegram·Kakao) 수신과 정규화, 역방향 알림만 담당하고 AI 코어는 플랫폼을 모른다. 코어들은 FusionAgent 로 요청을 넘기며, 게이트웨이가 분류 → 역할별 모델 병렬 실행 → 신뢰도 평가 → 결합을 처리한다. 메모리·검색은 호출 서비스의 책임으로 남겨 게이트웨이를 무상태로 유지한다.

구성 저장소 (역할별 병합)

fusion-agent다중 모델 게이트웨이. 적응형 라우팅, 결합 게이팅, 서킷 브레이커, SSE 스트리밍, DB 가드레일
dnbot / dncore동네 생활 봇. Telegram·Kakao 브리지 + LLM 대화·도메인 데이터·스케줄러 코어, 내부 토큰 인증
ngbot / ngaicore봇 서버 / AI 서버 스캐폴딩 쌍. 같은 패턴의 재사용 템플릿
mybotTelegram 메시지를 Claude·Gemini·Codex·Ollama 로 라우팅하는 다중 LLM 봇. 단일 인스턴스 잠금
  • 메신저Telegram · Kakao
  • 봇 브리지수신 · 정규화 · 알림 발송
  • 내부 토큰 인증x-internal-token
  • AI 코어대화 상태 · 도메인 · 스케줄
  • FusionAgent분류 → 병렬 → 신뢰도 → 결합
  • 로컬 모델 백엔드MLX · OpenAI 호환
Python · asyncioFastAPI · aiohttpSSE 스트리밍Ollama / OpenAI 호환 백엔드RedisWireGuard 내부망
06

AI 코칭 서비스

Relavo · hearimz

텔레그램에서 대화·분석·코칭을 제공하는 AI 코치와, 그 결과를 본인만 토큰으로 조회하는 보안 우선 웹 대시보드.

연구 질문

민감한 개인 데이터를 다루는 B2C AI 서비스에서 웹 노출 면을 어디까지 줄여야 편의와 안전을 함께 얻는가.

접근

코칭·편집 같은 민감 기능은 봇에 남기고 공개 웹은 조회 전용으로 한정한다. 쓰기 권한은 데이터베이스 단계에서 제거하고, 서명 기반 임시 토큰으로 세션 저장소 없이 인증한다. 시각화는 서버에서 SVG 로 렌더링해 클라이언트 스크립트를 최소화한다. 결제는 Telegram Stars 로 처리한다.

구성 저장소 (봇 + 웹 병합)

Relavo텔레그램 AI 코칭 봇. 대화 분석(/analyze), 마음 분석 누적, Stars 결제, 관리자 패널. 모델 호출은 FusionAgent 위임
hearimz공개 랜딩 + 읽기 전용 대시보드(aiohttp), PWA, 페이지별 CSP
  • 텔레그램 봇코칭 · 분석 · 결제
  • FusionAgent모델 위임
  • 서명 토큰임시 · 무상태
  • 읽기 전용 조회DB 쓰기 권한 없음
  • 서버 SVG 렌더관계 네트워크
  • WebApp / PC페이지별 CSP
Python · asynciopython-telegram-botaiohttp · asyncpgPostgreSQLnginx · HTTPS · PWA
07

DBA 자동화 도구

hybot · migjob

DBA 실무에서 반복되는 두 작업, SQL 튜닝과 스키마 마이그레이션을 도구로 만들었다. 컨설팅 서비스(DBA-02·DBA-03)의 바탕이다.

연구 질문

실행계획·AST·벤치마크 같은 객관적 근거를 LLM 판단 앞에 두면 튜닝 제안의 품질이 얼마나 안정되는가. 오브젝트 이름을 바꿀 때 참조하는 프로시저·뷰까지 안전하게 따라 바꿀 수 있는가.

접근

hybot 은 Oracle·PostgreSQL 에 붙어 EXPLAIN PLAN·AST·벤치마크를 먼저 뽑고, 여러 LLM 프로필이 그 근거 위에서 제안한다. LLM 없이 도는 독립 AST 튜너도 있다. migjob 은 추출 → 명칭 변환 → 마이그레이션 SQL 생성 → 적용 → 검증 파이프라인이며, 연관 오브젝트 내부 참조를 자동 치환한다.

구성 저장소

hybot다중 LLM SQL 성능 튜닝 콘솔 에이전트 (Oracle · PostgreSQL), 독립 AST 튜너
migjobOracle 스키마 마이그레이션 도구. 연관 FUNCTION/PROCEDURE/VIEW 참조 반영, make 기반 파이프라인
PythonOracle · PostgreSQLEXPLAIN PLAN · AST다중 LLM 프로필Makefile 파이프라인
08

로컬 LLM 창작 스튜디오

wt-studio · nvstudio

웹툰과 소설 제작을 기획 → 에이전트 실행 → 산출물 관리의 파이프라인으로 만들어, 창작 도메인에서 로컬 모델 오케스트레이션을 실험했다.

연구 질문

플래너 모델이 작업을 나누고 에이전트가 수행하는 구조가 긴 서사 콘텐츠에서도 일관성을 유지하는가.

접근

wt-studio 는 FastAPI 백엔드와 OpenCode 오케스트레이션으로 웹툰 제작 단계를 관리하고 산출물을 DB 에 쌓는다. nvstudio 는 Gemma 플래너가 계획을 세우고 에이전트·메모리·컨트롤러가 소설 생성을 진행하는 구조다.

구성 저장소

wt-studio로컬 AI 웹툰 제작 시스템 (FastAPI + OpenCode, 마이그레이션·아티팩트 관리)
nvstudio소설 생성 에이전트: planner · agents · memory · controller
Python · FastAPIOpenCode 오케스트레이션Gemma 로컬 모델Alembic
09

서비스·데이터 실험

멍식당(ifewb) · gamebot · lotto

제품 기획과 데이터 파이프라인 훈련을 겸한 사이드 프로젝트. 아이디어 검증 단계에서 멈춘 것도 있다.

내용

  • 멍식당 (ifewb) — 반려견 맞춤 수제 한 끼 구독 플랫폼. 댕동네 커뮤니티 기획에서 출발해 화면·데이터·API·인프라를 단계별로 정의한 실행 계획과 API 스캐폴딩.
  • gamebot — 걸음·운동·수면 같은 현실 활동 데이터로 캐릭터를 키우고 결정론적 자동전투로 겨루는 모바일 RPG. 규칙 로직과 테스트부터 작성.
  • lotto — 로또 6/45 회차 데이터 수집·리포트·예측 파이프라인(v24). 결과의 실용성보다 수집·검증·리포트 자동화 구조를 연습한 프로젝트.

구성 저장소

ifewb기획 문서 3종, API·DB·배포 스캐폴딩
gamebot게임 로직 · 테스트
lotto수집 스크립트 · 예측 엔진 · 웹 · 리포트

비슷한 시스템이 필요하신가요?

LLM 오케스트레이션과 에이전트 비서, 보안 우선 웹 아키텍처, 비동기 데이터 파이프라인, 운영 안전장치 설계까지 — 위 연구를 수행한 역량으로 귀사의 과제를 설계하고 구현합니다.