Evaluation

변경 전에 같은 조건의 비교 기준부터 세우는 평가 설계

Posts 6

현장에서 다시 잰 것들 · 6편

업로드마다 LLM을 부르는 빌드는 자동으로 켜 둘 수 없었습니다

온톨로지가 문서를 올릴 때마다 만들어지려면 기본 빌드에는 호출 비용이 없어야 했습니다. 표 구조와 형태소, 한국어 패턴만으로 클래스·개체·상하위를 세우고 관계 추출은 옵션 단계로 분리한 과정과, 그 뒤 드러난 문서 500개 상한 결함을 정리합니다.

2026.09.295분
현장에서 다시 잰 것들 · 3편

98 대 86으로 진 평가는 같은 조건의 비교가 아니었습니다

경쟁 클라우드 에이전트와 캐피탈 사내 규정 165문항으로 다시 비교하기 전에 문서 적재, 청크, 근거 개수, 평가기 시간을 하나씩 맞췄습니다. 같은 답변 모델과 같은 채점 모델로 한 번 실행한 결과는 80.0% 대 66.7%였습니다.

2026.09.125분
현장에서 다시 잰 것들 · 1편

규칙을 고친 뒤에도 남은 판정 흔들림은 공유 추론 서버에서 왔습니다

대형 유통 품질검사 에이전트가 같은 서류에 합격과 불합격을 번갈아 냈습니다. 판정 규칙, 이미지 판독, 프롬프트, 부하를 하나씩 제외하고 같은 텍스트를 10번 넣는 실험으로 공유 서버의 배치 처리까지 좁힌 과정입니다.

2026.06.235분
에이전트 하네스 설계 · 7편

30배 차이가 모델의 차이가 아니었습니다

같은 워크플로우에 두 모델을 연결하니 2,488초와 84초가 나왔습니다. 반복 횟수와 출력 상한을 맞추자 2,488초가 100초가 됐습니다. 모델을 비교하기 전에 무엇을 고정해야 하는지 정리합니다.

2026.06.136분
지식그래프 설계 · 6편

느리고 부정확하다는 결과가 빈 그래프를 잰 것이었습니다

멀티턴 검색이 더 느리고 정확도도 낮다는 A/B 결과가 나왔습니다. 실행 기록을 보니 평가가 데이터 없는 그래프를 조회하고 벡터 검색만으로 답하고 있었습니다. 다시 측정한 뒤 검색 구조를 바꾼 과정입니다.

2026.06.085분
지식그래프 설계 · 4편

트리플 수로는 지식그래프 품질을 알 수 없었습니다

같은 파이프라인이 한쪽에서는 25만 트리플을, 다른 쪽에서는 1천 트리플을 만들었습니다. 둘 다 문제가 있었고 방향은 정반대였습니다. 적재량·구조·출처·검색·답변을 나눠 재기 시작한 과정입니다.

2026.05.214분

Engineering 19

Engineering · Knowledge Graph

DB 원본과 지식 그래프를 맞추는 법: 증분 키를 버리고 행 지문으로 추가·변경·삭제를 감지하기

외부 DB 테이블을 LLM 없이 그래프로 만드는 기능에서, 사용자가 고르는 증분 키는 값만 바뀐 행·시각이 되돌아간 행·지워진 행을 놓쳤습니다. PK keyset 전수 읽기와 sha256 행 지문 비교로 원본이 진실인 동기화를 만들고, 실패한 회차의 지문이 그래프보다 앞서지 않도록 지문을 먼저 비우고 가리켜지는 행은 자리 노드로 남겨 실패 경로를 닫았습니다.

2026.10.1111분플래티어 · XGEN
Engineering · Knowledge Graph

온톨로지 빌드 2단계 분리: LLM 0회 기본 빌드와, 검색을 해치지 않을 때까지 다시 설계한 관계 형성

업로드마다 LLM 추출을 실행하면 비용을 감당할 수 없어, 개체 추출은 LLM 0회 기본 빌드로, 관계 추출은 사용자가 켤 때만 실행하는 관계 형성으로 나눴습니다. 기본 빌드가 표를 행 단위 사실로 읽게 하고, 관계 형성은 원문 단위 위의 번호 분류와 어휘 우선 구조로 다시 설계한 뒤 같은 검색 코드로 번갈아 측정했습니다.

2026.10.0213분플래티어 · XGEN
Engineering · Knowledge Graph

LLM 없는 개체 추출의 이름 품질: 우연에 걸린 표 판정, 탈락한 어근, 적재 계층 이름 게이트

기본 빌드가 LLM 없이 개체를 뽑게 되자 그래프 품질은 곧 이름 품질이 됐습니다. 산문을 표로 오인하던 판정, 어근과 접미사를 버리던 형태소 결합, 경로마다 흩어진 정제 로직을 원인별로 고치고, 이름 정규화와 모양 검사를 추출기가 아닌 그래프 적재 계층 한 곳으로 내렸습니다.

2026.10.0211분플래티어 · XGEN
Engineering · Evaluation

공정 비교는 평가 파이프라인을 의심하는 데서 시작했습니다: 대조군 오염, 평가기 루프 차단, 회수 지표 결함

사내 규정 165문항으로 경쟁 클라우드 에이전트와 비교하기 전에 평가 파이프라인 자체를 검증했습니다. 적재 결함, 오염된 대조군, 상대 설정 오인, 응답 시간을 부풀리던 평가기, 회수를 과소 집계하던 지표를 차례로 찾아 고친 뒤 같은 조건에서 80.0% 대 66.7%를 측정했습니다.

2026.09.2811분고객사 구축 · 캐피탈
Engineering · Knowledge Graph

그래프 크기를 따라가던 검색 비용과 흔들리던 근거: PostgreSQL 그래프 조회 계층 정비

PostgreSQL 위 GraphRAG 검색이 한 번에 54~127초 걸리거나 같은 질문에 근거가 달라지는 현상을 pg_stat_activity, 실행 계획, 로그 타임스탬프로 추적했습니다. 플래너 통계, 그래프 전체를 읽던 PPR, 검색마다 반복되던 집계, 정렬 없는 LIMIT을 차례로 고쳐 비용을 후보 크기에 묶고 근거 재현을 50/50으로 맞췄습니다.

2026.09.2015분플래티어 · XGEN
Engineering · Evaluation

오답 60건을 시스템 시점에서 감사하기: 실패를 근거 활용과 후보 회수로 나누고 개선안을 실측으로 거른 기록

평가 런 4개의 오답을 모아 정답 청크 60건을 골든셋 앵커 없이 시스템이 보는 정보만으로 감사했고, 오답의 60%가 검색이 아니라 근거 활용에서 난다는 것을 확인했습니다. 원인 9가지와 개선안 10가지로 기획을 세운 뒤, 검색 회수를 먼저 재는 프로토콜로 개선안 대부분을 실측으로 걸러 냈습니다.

2026.09.1711분고객사 구축 · 캐피탈
Engineering · Retrieval · RAG

FAQ 검색 순위 수리: 전제가 맞지 않던 그래프 융합을 끄고 빠져 있던 BM25F 어휘 점수 되돌리기

고객센터 FAQ 165문항에서 정답 문서가 후보에는 있는데 상위 3개 밖으로 밀리던 원인을 단계별 순위 측정으로 추적했습니다. 노드 단위가 맞지 않던 그래프 융합을 끄고, 어댑터에서 빠져 있던 BM25F 어휘 점수를 라이브러리 설계대로 복원해 정답 문서 1위 비율을 66.1%에서 96.4%로 올렸습니다.

2026.09.1111분고객사 구축 · 캐피탈
Engineering · Agent Engineering

Jermes: 홀드아웃에서 이득이 재현된 절차만 스킬로 승격하는 엔진과, 실측이 찾은 게이트의 구멍들

에이전트 실행 기록에서 재사용 절차를 뽑되, 작성에 쓰지 않은 홀드아웃 케이스에서 이득이 재현될 때만 스킬로 승격하는 자가학습 엔진입니다. dev에서만 오른 스킬의 승격, 1건짜리 홀드아웃, 부호가 뒤집히는 평균 같은 게이트의 구멍을 실측으로 막았고, 실제 XGEN 에이전트 노드의 정답이 0/6에서 6/6이 됐습니다.

2026.08.1810분개인 프로젝트
Engineering · Knowledge Graph

XGEN MAKER: 코드 지식그래프 착지 정확도를 사람이 머지한 MR 2,827건으로 잰 개발 자동화 하네스

다중 저장소 플랫폼의 코드를 결정론적 정적 분석으로 지식그래프화하고, 자연어 요청을 파일·라인 단위로 착지시켜 구현·검증·MR 준비까지 수행하는 하네스입니다. 착지 품질은 사람이 실제로 머지한 MR 2,827건으로 측정했고, 표본을 넓히는 과정에서 작은 표본에 과적합된 순위 상수를 찾아 걷어냈습니다.

2026.08.1111분개인 프로젝트
Engineering · Evaluation

광고 심의 에이전트: 판정 권한을 LLM에서 코드 검증기로 옮겨 실제 심의 34건의 판정을 고정하기

XGEN 캔버스로 광고 심의를 자동화하는 PoC에서 10/10이던 판정이 재실행에 8/10으로 흔들린 원인을 비결정성 세 층으로 분해했습니다. 최종 판정을 코드 검증기가 확정하게 바꾸고 추출과 심의를 6개 에이전트로 나눠, 실제 심의 34건 판정 34/34와 지적 재현율 67%를 얻었습니다.

2026.07.3012분개인 프로젝트
Engineering · Retrieval · RAG

외부 채점기로 검증한 검색 라이브러리: BM25F, 그래프 동반 융합, SQLite 영속화

XGEN의 GraphRAG 검색 로직을 저장소 비종속 라이브러리 omnifuse로 추출한 뒤, 다른 오픈소스가 공개한 한국어 금융법령 코퍼스와 채점 스크립트, 공개 IR 데이터셋으로 랭킹과 효율을 측정하며 고쳤습니다. 데이터셋별 튜닝과 결과 자르기를 금지한 측정 계약 아래에서 채택한 변경과 기각한 변경을 정리합니다.

2026.07.2813분플래티어 · XGEN
Engineering · Agent Engineering

agethos: 성격 설명을 타입 있는 설정으로 컴파일하고, judge가 못 보는 행동 편차를 계측하기

LLM 에이전트에 성격·기억·감정을 부여하는 PyPI 라이브러리 agethos에서 성격 값이 추론 방식에 인과적으로 닿게 하고, 자연어 설명을 설정으로 컴파일하는 draft·judge·repair 루프를 만들었습니다. judge 패널로 충실도를 0.930까지 올렸지만 장착된 인격의 Mini-IPIP 측정은 0.783이었고, 그 간격을 재는 검증 계층을 더했습니다.

2026.07.1010분개인 프로젝트
Engineering · Agent Engineering

재시도 루프의 종점 오판 다섯 건: 텍스트 휴리스틱에서 실행 상태 신호로

제출 후 90회 반복, 빈 최종 출력, 조용히 0.7을 내던 Judge, 재시도율 80%의 기준 설계, 같은 답을 세 번 채점한 retry-death를 차례로 추적했습니다. 모두 판정이 이번 회차의 실행 상태 대신 텍스트 길이나 이전 회차의 값을 읽은 결과였고, 종료와 채점의 근거를 실행 상태로 옮겼습니다.

2026.07.1013분플래티어 · XGEN
Engineering · Knowledge Graph

완료로 기록된 빈 그래프: 구조 복원, 부분 커밋, 출력 예산 기반 배치 사이징

빌드는 완료로 표시되는데 그래프가 비어 있거나 구조가 무너진 문제를 석 달에 걸쳐 추적했습니다. 리팩토링이 지운 중복 제거·상속 로직을 복원하고, 오진을 세 번 정정하며 예외를 삼키던 배치 처리와 all-or-nothing 저장을 찾아냈고, 배치 크기를 모델 출력 한도에서 산출해 절단 시 반분 재시도하게 바꿨습니다.

2026.07.0611분플래티어 · XGEN
Engineering · Evaluation

동일 하네스 조건의 모델 비교: 41분 실행과 빈 출력은 모델이 아니라 설정과 엔진 문제였습니다

같은 하네스 노드에서 메인 모델만 바꾸고 고정 심판으로 채점해 내부 vLLM의 Qwen3.6-27B와 Claude Sonnet 4.6을 실무 과제로 비교했습니다. 41분짜리 실행은 재시도 설정이, 빈 출력은 빈 도구 결과를 성공으로 세던 엔진 결함이 원인이었고, 이를 걷어낸 뒤 재현한 6개 과제에서 두 모델은 0.01~0.05 차이의 사실상 동률이었습니다.

2026.06.269분플래티어 · XGEN
Engineering · Evaluation

품질검사 판정을 결정론적으로: LLM에는 파일 하나의 판단만, 나머지는 코드와 다수결로

재실행마다 파일 판정이 11~58% 바뀌던 품질검사 파이프라인을 파일별 단일 판정, 결정형 규칙, 코드 집계로 다시 짰습니다. 규칙 시험에서 판정 변동 0/23을 얻었고, 실파일에서 남은 흔들림은 같은 텍스트 10회 실험으로 공유 추론 서버까지 좁힌 뒤 N회 다수결로 종합 판정을 안정시켰습니다.

2026.06.2312분고객사 구축 · 대형 유통
Engineering · Knowledge Graph

GraphRAG 검색 재설계: 순차 ReAct를 병렬 인덱스 시드와 단일 합성으로 바꾼 근거

단일 적응형 ReAct 검색이 기존 1턴 검색보다 느리고 부정확하다는 A/B 결과를 다시 읽어, 손실된 근거와 빈 그래프를 잰 하니스라는 두 원인을 찾았습니다. 탐색과 답변 합성을 분리한 병렬 인덱스 시드 구조로 바꿔 고정 100문항 정답성을 0.230에서 0.465로 올렸습니다.

2026.06.1912분플래티어 · XGEN
Engineering · Agent Engineering

자가단조(Self-Forging) 설계: 지시문 대신 타입 있는 설정을 변이하고 3중 게이트로 채택하기

에이전트가 자기 지시문을 고쳐 쓰는 대신, 엔진 레지스트리가 허용하는 타입 있는 설정 변이만 제안하고 dev 상승, held-out 유지, Judge와 무관한 보조 지표 유지를 모두 통과한 변경만 채택하는 루프를 엔진에 구현했습니다. 실모델로 실행하자 Judge와 실행 중 자가조정이 각각 조용히 꺼져 있었다는 것도 드러났습니다.

2026.06.1711분플래티어 · XGEN
Engineering · Retrieval · RAG

LG CNS Singlex 사내 RAG 챗봇

목차로 매뉴얼을 먼저 고르는 2단계 검색을 제안하고, 프롬프트 버전별 실제 화면 응답 비교를 자동화했습니다.

2025.01.011분㈜쉐브론 · LG CNS Singlex 파견