AI Engineer · LLM Agent / ML
김대균 Kim Daegyun
모델 학습·평가부터 LLM 에이전트, 백엔드·배포·운영까지.
실제 사용자가 매일 쓰는 AI 기능을 끝까지 만듭니다.
- AI 실무 2024.04 ~ 현재
- ㈜에듀템 AI개발팀
- 서강대학교 AI·SW대학원 석사과정
2026.09
YBM 'Y클라우드'에 AI 수업자료 생성 Agent 상용 공급
+10.4점
발음 평가 모델 동일 조건 검증 점수 79.7 → 90.1
4.8×
5초 발화 CPU 추론 p50 2,733ms → 571ms (ONNX)
−44%
결과 재사용으로 PDF 실제 가공량 15,193 → 8,476쪽
주요 역량
실무에서 깊게 다뤄 본 다섯 영역입니다.
에이전트 · 가드레일
생성 결과를 다른 계열 LLM이 심사하고 기준 미달 항목만 다시 만드는 가드레일을 상용 서비스에 적용했습니다. 개인 프로젝트로 tool-calling 에이전트를 만들어 스키마·권한 검사, 사람 승인 단계, 공격 시나리오 평가까지 직접 구현했습니다.
모델 학습 · 평가
출력 공간·데이터 설계부터 LoRA 파인튜닝, 체크포인트 371개 전수 평가까지 수치로 개선 사이클을 돌렸습니다. 음성(Wav2Vec 2.0·Qwen3-ASR LoRA 학습, Whisper 평가), 비전(YOLOv5), LLM LoRA 파인튜닝을 다뤘습니다.
검색 · RAG
외부 전송 없는 온프레미스 RAG를 만들고, 다국어 임베딩·청킹·검색 개수를 조정해 한·영 혼재 문서의 조항 누락을 줄였습니다. 개인 프로젝트에서는 권한(ACL)을 검색 이전에 강제하는 RAG를 평가셋으로 검증했습니다.
서빙 · 운영
ONNX 변환으로 CPU 추론을 4.8배 단축했고, FastAPI·Celery·Redis 비동기 파이프라인과 Docker·AWS 배포, 운영 장애 복구까지 맡았습니다. 개인 프로젝트로 vLLM 단일 GPU 서빙 구성을 품질·지연·메모리 실측으로 골랐고, 석사 연구에서는 STT와 LLM을 GPU 한 장에 함께 올리는 양자화 조합을 비교합니다.
보안 · 안전 설계
기능을 만드는 단계부터 서버 접근 통제, 데이터 외부 전송 차단, 생성 결과 안전장치를 함께 설계합니다.
- 서버 접근 통제AWS EC2 보안그룹 인바운드 규칙에 협업 중인 백엔드 개발자·퍼블리셔의 IP만 허용하고 나머지는 막아, 개발 단계부터 서버가 불필요하게 외부에 노출되지 않게 했습니다.
- 사내 데이터 외부 전송 차단사내 문서는 외부 API로 보내지 않고, 문서 처리·검색·LLM·음성 처리를 모두 사내 GPU 서버 한 대 안에서 끝냈습니다.
- 생성 결과 안전장치욕설·혐오·정치 편향은 사전으로 1차 탐지하고 의심 구간만 LLM이 판정하는 2단 필터로 거르고, 모든 산출물에 AI 생성물 고지를 붙였습니다.
- 배포와 에이전트 권한멀티스테이지 Docker·Non-root 계정과 Nginx·HTTPS로 배포했습니다. 개인 프로젝트에서는 모델 밖에서 발급하는 사람 승인 토큰, 도구 출력 정화, 검색 전 ACL 강제를 구현했습니다.
회사 프로젝트
㈜에듀템에서 기획·개발부터 배포·운영까지 맡은 서비스입니다.
㈜에듀템 · 2026.05 – 2026.10
교과서 PDF 기반 AI 수업자료 생성 Agent
YBM 'Y클라우드' 상용 공급
교사가 교과서 PDF에서 원하는 페이지와 영역만 지정하면, AI가 그 내용으로 퀴즈·게임·시험지·워크북·PPT를 만들고 웹에서 편집·내보내기까지 할 수 있는 교사용 AI Agent입니다. 2026년 9월 YBM 교사 지원 플랫폼 'Y클라우드'에 공급되었습니다.
맡은 일 개발 4인 중 화면 설계·프로토타입, 영어 모듈 8종, 백엔드(수학 제외). 7월 이후 고도화·배포는 단독으로 진행했습니다.
학년 수준 가드레일
교과서 영역 선택PDF 페이지·영역 지정
→
Gemini 생성학교급별 프롬프트·출력 스키마
→
병렬 검사교육과정 어휘 대조 · 문법 범위 판정 · OpenAI 0~3점 다축 심사
→
교사 화면편집 · QR 공유 · 내보내기
↺ 기준에 못 미친 항목만 골라 다시 생성하고 재검사합니다
- LLM-as-a-Judge 가드레일생성 모델(Gemini)과 다른 계열(OpenAI)이 0~3점 다축으로 내용을 심사하고, 교육과정 어휘·문법 범위 검사와 병렬로 실행합니다. 미달 항목만 다시 생성해 학년에 맞지 않는 결과가 교사 화면에 그대로 노출되지 않게 했습니다.
- 2단 콘텐츠 필터저장 시점에 사전으로 1차 탐지하고 의심 구간만 LLM이 최종 판정합니다(욕설·혐오·정치 편향). 깨끗한 문서는 API 호출 없이 통과하고, 모든 산출물에 AI 생성물 고지를 붙였습니다.
- 서버 접근 통제협업 중인 백엔드 개발자·퍼블리셔의 접속 IP만 EC2 보안그룹 인바운드 규칙으로 허용하고 그 외 접근은 막아, 개발 단계부터 서버가 불필요하게 외부에 노출되지 않게 했습니다.
- 영어 모듈 8종 × 4개 학교급PPT·학습카드·퀴즈·미니게임·독해·듣기·말하기·쓰기를 초등 저·고학년, 중, 고 학교급별로 구현하고 웹 편집·QR 학생 공유·PDF/HWPX/PPTX 내보내기까지 완결했습니다. (Python 약 3.2만 줄, API 47개)
- 호출 비용과 배포교재 단위 이미지 추출 공유 캐시로 사용자별 재추출·재과금을 없애고 Gemini 컨텍스트 캐싱을 적용했습니다. 듣기 음원은 Gemini TTS로 한 번 합성해 내용 해시로 캐시하고, LibreOffice가 포함된 Docker 이미지와 오류·이용 로그 체계로 v1.0을 배포했습니다.
- 화면 설계와 프로토타입3패널(자료·채팅·모듈) 화면과 PDF 영역 선택 박스를 설계하고, 백엔드 연결 전 mock API 프로토타입으로 사용 흐름을 먼저 검증했습니다. 영역 선택 기반 생성은 공급 보도에서 이 Agent의 가장 큰 특징으로 소개되었습니다.
㈜에듀템 · 2025.12 – 2026.07
한국어 음소 단위 발음 평가 모델
3개 제품 라인 단일 API
단어 점수만으로는 어떤 소리를 고쳐야 하는지 알려 주기 어렵습니다. 음소별 점수와 교정 피드백을 돌려주는 모델을 만들고, 데이터 설계부터 학습·평가·서빙까지 맡았습니다.
맡은 일 음소 라벨·데이터 설계, LoRA 학습·평가, 전처리·채점 알고리즘, ONNX 서빙·배포
동일 조건 33파일 · 전체 평균
이전79.7
새 모델90.1
동일 조건 33파일 · 일반 단어
이전67.2
새 모델88.1
5초 발화 CPU 추론 p50 (낮을수록 좋음)
PyTorch2,733ms
ONNX571ms
1초 발화는 PyTorch 141ms · ONNX 330ms로, 이득은 긴 발화에서 큽니다.
- 출력 공간 설계초·중·종성 위치와 7종성 중화를 반영해 49토큰으로 구성하고, 구분되지 않는 발음을 별도 클래스로 학습하지 않게 했습니다.
- 데이터 사이클유음화·연쇄 발음 같은 취약 패턴과 정상 발음을 섞은 Phase A~F 학습 사이클을 만들고(Phase E 기준 382,356발화, 약 785시간), Wav2Vec 2.0에 LoRA로 학습했습니다.
- 체크포인트 371개 전수 평가마지막 체크포인트를 그대로 쓰지 않고, 카테고리별 오류를 비교해 검증 결과가 가장 좋은 모델을 골랐습니다.
- 원인 진단과 채점종성 점수가 낮은 원인이 오디오 Energy Trim의 받침 절단임을 찾아 패딩 임계값을 조정했습니다(종성 +3.3점). 자모 규칙 엔진과 DP 백트래킹 정렬로 다른 단어 발화 차단과 부분 점수를 분리했습니다.
- ONNX 서빙긴 오디오에서 추론 결과가 달라지는 변환 문제를 고치고, 변환 직후 가변 길이 회귀 검증을 자동화했습니다. GPU 유무에 맞춰 동작하는 Docker 컨테이너로 3개 제품 라인에 단일 API를 제공합니다.
㈜에듀템 · 2026.07 – 현재
교과서 PDF 처리 파이프라인 · 평가 루브릭 코드화
운영 중
교사가 교과서 PDF를 단원별로 자르고 직접 올리던 일을, 엑셀·PDF 업로드만으로 단원별 PDF·글자 좌표·그림·쪽번호를 만드는 비동기 파이프라인으로 자동화했습니다.
맡은 일 요구사항·DB 스키마 협의, 백엔드·처리 파이프라인·화면, 배포·운영
처리 구조
업로드 APIFastAPI · 원본 저장 후 job_no 즉시 반환
→
Redis작업 큐
→
Celery 워커렌더링 · 텍스트·좌표·그림 추출
→
S3 · RDSS3 병렬 업로드 · DB 8쪽 단위 저장
→
뷰어기존 데이터 규약
- AI는 필요한 단계에만텍스트 규칙으로 먼저 판단하고 남은 경우에만 Gemini를 호출합니다. JSON 스키마·값 범위를 검사하고, AI가 실패했을 때의 동작(쪽번호 기본값 유지, 방향 보정 생략, 단원 범위 수동 확정)을 미리 정했습니다.
- 중복 처리 제거단원이 전체본의 어느 구간인지 찾아 결과 행과 S3 객체를 공유했습니다. 실제 가공량은 15,193쪽에서 8,476쪽(−44.2%)으로, 페이지 이미지 저장량은 2.53GB에서 1.40GB로 줄었고, 전체본 49권의 운영 평균은 1.92초/쪽입니다.
- 운영 데이터 누락 복구운영 중 발견한 OCR 데이터 누락의 원인(Celery 재시도 인자 충돌)을 고치고, 회귀 테스트와 소급 복구 도구로 이미 비어 있던 데이터까지 복구했습니다. 단원 파일 373개를 자동 생성했고 추출 실패는 0건입니다(2026.09.27 운영 DB 기준).
- 평가 루브릭 코드화기획자가 Excel로 관리하던 평가 루브릭을 정형 Markdown을 거쳐 Python 평가 로직으로 자동 변환해, 비개발 직군과의 협업 병목을 줄였습니다. 연동 과정에서는 협업 중인 백엔드 개발자·퍼블리셔의 IP만 EC2 보안그룹 인바운드 규칙으로 허용했습니다.
15,193쪽은 산출 데이터량이며, 개선 전 전체 처리시간과 비교한 값은 아닙니다.
㈜에듀템 · 2026.01 – 2026.02 · 1인
온프레미스 AI E-Book (RAG)
외부 API 전송 없음
사내 문서를 외부 API로 보내지 않도록, 문서 처리·검색·LLM·음성 입출력을 모두 사내 GPU 서버 한 대 안에서 처리하는 PDF 대화형 E-Book을 혼자 만들었습니다.
맡은 일 기획, Next.js 화면, FastAPI, PDF 처리, 로컬 LLM·검색·음성, 배포
한국어 검색을 위한 RAG 구성 변경
| 항목 | 초기 | 변경 후 |
| 임베딩 | 영어 중심 MiniLM | 다국어 BGE-M3 |
| 청킹 | 1,000자 · 겹침 없음 | 800자 · 200자 겹침 |
| 검색·응답 | Top-3 · 정보 없으면 거절 | Top-7 · 인용과 추론 구분 · 가까운 주제 안내 |
- 로컬 모델 구성Gemma-4-31B, BGE-M3·ChromaDB 다국어 검색, faster-whisper 전사와 MeloTTS 합성을 GPU Passthrough Docker로 한 서버에 올렸습니다.
- 긴 작업 분리PDF 업로드가 5~10분간 HTTP 연결을 붙잡던 구조를, 접수 즉시 응답하고 백그라운드 처리·진행률 조회로 바꿨습니다.
- 공유 모델 동시성업로드·채팅·서식화 요청이 한 모델에 동시에 들어가며 생기던 KV 캐시 손상을 generate 호출 잠금(직렬화)으로 막고, 섹션 본문은 첫 열람 때 생성해 캐시합니다.
- 출력 제어목차 출력을 JSON으로 제한하고 파싱 실패에 3단 폴백을 두었습니다.
㈜에듀템 · 2026.03 – 04 · 1인
영어 회화 미션챗봇
한 번의 LLM 호출로 NPC 상황극 대화와 미션 달성 판정을 함께 처리하도록 인라인 태그와 출력 제약을 설계했습니다. 라우트·AI 서비스·프롬프트 계층을 나누고, 코드펜스 제거·같은 구조의 기본 응답·자막 폴백·최대 턴 제한으로 LLM이 실패해도 화면이 깨지지 않게 했습니다. 배포는 멀티스테이지 Docker와 Non-root 계정으로 구성했습니다.
㈜에듀템 · 2026.04 – 05 · 1인
AI 면접 평가 시스템
브라우저 녹화 → 얼굴 대조 본인 확인 → Whisper 전사 → LLM 4개 항목(각 25점) JSON 채점 → PDF 보고서까지 연결했습니다. 한글 경로·WebM·카메라 권한·0바이트 녹화 예외를 처리하고, Whisper 무음 확률로 구간을 걸러 답변 없는 구간이 채점되는 오류를 줄였습니다. 서비스는 Nginx·HTTPS로 연결했습니다.
㈜에듀템 · 2026
'모두의 창업' 서비스 AWS 구축
서비스에 필요한 리소스를 먼저 파악해 EC2 사양을 고르고 S3·RDS를 직접 구성했습니다. Docker로 배포해 부하 점검을 거쳐 운영했고, 서버를 구성할 때 EC2 보안그룹 인바운드 규칙에 필요한 IP만 허용했습니다.
석사 연구
서강대학교 AI·SW대학원 석사 논문 연구입니다. 연구 설계 가운데 시스템 구조와 실험 인프라를 정리했습니다.
서강대학교 AI·SW대학원 · 데이터사이언스·인공지능 전공
한국어 금융 발화 처리에서 음성·언어 모델의 공동 양자화에 따른 자원·품질·지연 절충 연구
석사 논문
상담원 발화를 실시간으로 인식해 불완전판매 위험 발화 후보를 관리자에게 알리는 시스템에서, 음성인식(STT)과 LLM을 GPU 한 장에 함께 올릴 때 양자화 조합이 메모리·품질·지연을 어떻게 바꾸는지 측정합니다.
실시간 처리 흐름
음성 입력16kHz · 20ms 프레임 WebSocket · Silero VAD 발화 검출
→
STTQwen3-ASR-1.7B + LoRA
→
1차 규칙 선별명확한 정상 발화는 LLM 호출 생략
→
LLM 판정Gemma 2 9B · vLLM · JSON 출력 검사
→
관리자 경보위험 발화 후보 표시
공동 양자화 비교 설계 · RTX A6000 1장에 STT·LLM 동시 적재, 9개 조합
| STT \ LLM | BF16 | W8A8 | AWQ W4A16 |
| BF16 | 기준 | LLM 단독 | LLM 단독 |
| INT8 | STT 단독 | 공동 | 공동 |
| NF4 | STT 단독 | 공동 | 공동 |
- 단일 GPU 공동 적재추론은 RTX A6000 한 장에 STT와 LLM을 함께 올리고, KV 캐시 2GiB·문맥 4,096토큰·eager 실행을 고정한 채 9개 정밀도 조합을 조건마다 새 프로세스로 3회씩 측정합니다.
- 측정 하네스입력 송신·발화 검출·대기·추론·응답 시각을 같은 호스트의 단조 시계로 기록하고, 공동 양자화 실험에서는 GPU 메모리를 목표 20ms 간격으로 수집합니다. 기동 실패·메모리 부족·출력 실패도 분모에서 빼지 않습니다.
- 실시간 부하 시험서버 응답을 기다리지 않는 개방 루프로 음성을 보내 동시 상담 1·2·4개와 STT 배치 1·2·4를 비교합니다. 별도의 장시간 시험은 STT를 BF16·배치 1로 고정하고 LLM BF16·W8A8에서 45분 반복과 2시간 연속 실행을 합쳐 누적 목표 17.5시간 동안 P95·P99 지연, 대기열, 누락을 기록합니다.
- 출력 형식 검사LLM은 위험 상태·범주·근거 구절을 JSON으로 내고, 형식·키·값과 근거 문자열이 입력에 실제로 있는지 검사합니다. 1차 규칙 선별은 호출 절감과 누락 위험을 함께 평가합니다.
- 학습과 재현성STT LoRA는 A6000 두 장에서 전화·상담 녹음 120.07시간(72,664발화)으로 학습합니다. 자료·코드·설정·출력 해시와 모델·정밀도·캐시·배치 설정을 기록해 결과를 검산할 수 있게 했습니다.
연구 설계와 실험 인프라만 정리했습니다. 위험 라벨은 생성형 모델로 만든 참조이며, 실제 상담에서의 판단 정확도를 주장하지 않습니다.
오픈소스 · 개인 프로젝트
회사 밖에서 직접 기획하고 만든 프로젝트입니다. 저장소의 데이터는 합성 데이터이고, 수치는 각 README에 기록된 실측값입니다.
GitHub 저장소
금융상품 판매 전 준법 검토 초안을 만드는 tool-calling 에이전트입니다. 모델이 도구를 고르면 실행기가 이름·JSON Schema·선행조건·권한을 검사한 뒤 실행하고, 결과를 다시 모델에 돌려줍니다.
- strict 스키마 도구 9개, 비신뢰 도구 출력 정화, 근거 인용 가드레일
- 최종 확정은 모델 밖에서 발급한 일회용 사람 승인 토큰이 있어야만 실행
- 없는 도구 호출·승인 우회·tool-output injection 등 12개 시나리오 평가
- Qwen3-8B(A6000 1장) 실측 18/20 PASS, 실제 도구 호출 84회 중 없는 도구 호출·무권한 확정 0건
합성 규정·사례 데이터 사용 · 법률 자문이나 운영 시스템이 아닙니다
기밀 문서를 외부로 보낼 수 없는 조직의 온프레미스 RAG를 GPU 한 장으로 운영할 때, 어떤 모델·설정이 맞는지 재현 가능한 실측으로 고르는 프로젝트입니다.
- vLLM 후보 비교(A6000 1장, 동시성 10·요청 30개·3회 반복, eager 실행): 권고 구성 Qwen3-14B-AWQ — 자체 평가셋 품질 점수 97.667, 사용자 기준 P95 TTFT 1,273.402ms, 315.331 tok/s, peak VRAM 21.961GiB
- 14B AWQ의 처리량 저하를 양자화 탓으로 오진했다가 추가 실험으로 반증: CUDA graph를 끄자 57.2 → 313.2 tok/s
- ACL을 검색 이전 데이터 층에서 강제해 권한 위반 0건 (문서에 심은 지시는 두 모델 모두 5문항 중 2회 따름)
- Prometheus·Grafana·DCGM 경보 10개, 결정론 테스트 153개, 11단계 회귀 게이트, 장애·롤백 리허설
합성 문서 16개·83조항과 직접 만든 60문항 평가셋 사용 · 수치는 A6000 관측값입니다
단일 GPU 실험을 결정론적 정책으로 검증·실행·감시하고, 나중에 재현·감사할 수 있는 증거로 남기는 AgentOps 컨트롤 플레인입니다.
- 허용된 argv 배열로만 실행하고, 작업마다 commit·dirty 상태·로그 hash·GPU 전후 상태를 기록
- GPU 배타 lock(병렬 1), 중단 시 완료된 작업 다음부터 재개, 실패하면 사람 확인 전까지 정지
- LLM 실패 분석은 제안만 하고 실행 권한은 없음, 실행 이벤트는 SHA-256 해시 체인으로 연결
- 데모: 검증 작업 6개 순차 실행 6/6 PASS, 해시 체인 VERIFIED
한국어 음성인식 모델을 정확도·금융 숫자 보존·채널(일반/전화망)·지연·RTF·GPU 메모리까지 같은 계약으로 비교하는 추론 벤치마크입니다.
- 16kHz mono 오디오 계약, WER/CER·숫자 entity 보존율, cold load와 warm latency 분리 측정
- Whisper large-v3 FP16(A6000 1장): ITN WER 6.897%, 금융 숫자 entity 정확도 100.0%, P95 warm latency 442.7ms, peak allocated VRAM 3,200.5MiB
- 숫자 표기 변환·띄어쓰기 때문에 raw WER가 50%로 나오는 점도 숨기지 않고 함께 보고
금융 TTS 최소대립쌍 24개로 만든 진단용 결과 · 실제 사람 음성 성능은 평가하지 않았습니다
개인 · 팀 프로젝트
개인 · 2026.08 – 09 · 1인 기획·개발
미술 튜터 (온디바이스 AI)
인터넷과 외장 GPU가 없는 8GB 노트북에서 그림 수업과 한국어 AI 피드백을 주는 데스크톱 앱입니다. 그림 특성(픽셀 지표 11종)은 OpenCV로 측정하고, 로컬 모델(moondream 1.8B 관찰 → EXAONE 3.5 2.4B 설명)은 해설만 맡겼습니다. 실사용자 사진 51장을 재판정해 잘못 찍힌 사진 10장 중 9장을 막고 정상 그림 41장 중 40장을 통과시켰습니다.
개인 · 2026.08 – 10 · 1인 기획·개발
코인·코스피 모의운영 연구 시스템
시세·공시·뉴스 수집부터 거래 비용을 반영한 과거 시험, 홀드아웃 검증, 100만 원 모의계좌 실시간 운영까지 연결했습니다. Codex·Claude 교차검증으로 보고서 정정 28건과 코드 결함 1건을 찾아 고쳤습니다. 실거래 없이 모의운영만 했고, 수익성은 아직 입증되지 않았습니다.
팀 프로젝트 · 2025.03 – 05 · 5인 팀장
의료 도메인 RAG 챗봇
의료 도메인 Query Rewriting과 프롬프트 제약으로 환각을 줄이는 RAG 파이프라인을 설계하고, Mistral-7B를 4-bit 양자화해 제한된 GPU에서 서빙했습니다.
일하는 방식
Claude Code·Codex로 빠르게 만들고, 원자료와 테스트로 검증합니다.
기획
사용자, 해결할 문제, 환경 제약과 완료 기준을 먼저 정합니다.
학습
낯선 도메인은 AI와 대화하며 구체화하고, 질문과 실험으로 확인합니다.
구현
요구사항을 작은 기능과 검증 가능한 명세로 나눠 AI와 함께 구현합니다.
판단
AI 결과를 사용자 피드백·독립 검토·원자료로 확인하고, 채택·수정·기각은 직접 결정합니다.
한 AI의 구현물을 다른 AI가 코드·로그·장부와 대조하는 교차검증으로, 주간 보고서 정정 28건과 중단 조건이 충족돼도 매수를 허용하던 코드 결함 1건을 찾아 고쳤습니다. 개인 프로젝트 두 개는 각각 자동 테스트 2,389건, 710건으로 회귀를 막습니다.
경력 · 학력
-
2025.12 – 현재
㈜에듀템AI개발팀 · 사원
LLM·RAG·음성 AI 모델 개발과 추론 최적화, AI 서비스 백엔드·데이터 파이프라인 구축·배포·운영
-
2025.06 – 2025.12
동은정보기술㈜연구개발팀 · 사원
오픈소스 LLM LoRA 파인튜닝, Gradient Checkpointing·Flash Attention 2로 OOM 병목 해결, ONNX·양자화 추론 최적화, Demucs·Whisper 기반 STT 데이터 파이프라인
-
2024.04 – 2025.06
뉴런어웨어 코리아㈜연구개발팀 · 사원
YOLOv5 자동차 내장재 결함 검사 모델 학습·검증·배포, AWS RDS 데이터 관리, 고객사 현장 CS와 검출 기준 조율
학력
2018.03 – 2024.02
청주대학교
전자공학과 학사, 복수전공 인공지능소프트웨어학과