원클릭으로
eval-runner
RAG 실험을 실행하고 결과를 수집한다. preflight 검증 → 실험 실행(checkpoint resume) → metrics 추출 → 결과 저장 → MASTER 갱신까지 하나의 워크플로우로 처리. YAML config 기반.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
RAG 실험을 실행하고 결과를 수집한다. preflight 검증 → 실험 실행(checkpoint resume) → metrics 추출 → 결과 저장 → MASTER 갱신까지 하나의 워크플로우로 처리. YAML config 기반.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
SOC 직업 분류 기준
Diagnose and repair RAG artifact metadata contract failures before patching downstream evaluators. Use when retrieval/eval artifacts have missing or inconsistent item metadata such as `canonical_doc_key`, `child_id`, `chunk_index`, `source_space`, or `parent_id`, or when downstream symptoms appear such as `alignment_row_count=0`, `CC_adj_lexical=0`, `SR_fragmentation_proxy=0`, empty `reranked_contexts_items` fields, or report-facing key drift.
Use this skill when reconstructing Claude or Codex session history from `.claude/projects/*.jsonl`, sibling `memory/` files, referenced handoff markdowns, or `.specstory/history/`. Use it to identify the latest unfinished task, connect session-internal and post-session documents, distinguish upstream objective from downstream TODOs, or recover provenance for timeline-based debugging.
RAG 실험을 사전 검증(preflight)부터 실행, checkpoint resume, chain 오케스트레이션, multi-metric 수집(IC/CC/SR/DocHit/MRR), 보고서 생성까지 자동화한다. 경로/형식/인코딩 같은 boundary 문제를 실행 전에 잡고 싶거나, 실험 후 측정 5단계를 한 번에 묶고 싶을 때 사용한다. YAML config 기반.
RAG 실험 결과를 측정·비교·분석한다. 실험 결과 JSON을 입력받아 모드별 메트릭 산출, cross-mode 비교, hop_type/hit_category별 분해, 종합 보고서를 생성한다. eval-runner(실행 오케스트레이션)와 보완 관계. "성능 비교해줘", "메트릭 뽑아줘", "hop별 분석", "벤치마크 리포트" 등의 요청에 트리거된다.
| name | eval-runner |
| description | RAG 실험을 실행하고 결과를 수집한다. preflight 검증 → 실험 실행(checkpoint resume) → metrics 추출 → 결과 저장 → MASTER 갱신까지 하나의 워크플로우로 처리. YAML config 기반. |
RAG 실험의 전체 생명주기를 관리하는 스킬.
1. preflight → config 검증, 파일 존재 확인, 의존성 체크
2. run → 실험 실행 (checkpoint resume 자동)
3. metrics → 결과 JSON → 지표 추출
4. report → MD 보고서 생성
5. update → CURRENT_STATE_MASTER 갱신
# 1) Preflight: config 검증만 (실행 안 함)
python3 scripts/eval_runner.py preflight --config CONFIG_PATH
# 2) Run: 실험 실행 (checkpoint 자동 resume)
python3 scripts/eval_runner.py run --config CONFIG_PATH
# 3) Metrics: 결과 JSON에서 지표 추출
python3 scripts/eval_runner.py metrics --result RESULT_JSON
# 4) Report: MD 보고서 생성
python3 scripts/eval_runner.py report --result RESULT_JSON --out REPORT_PATH
# 5) Full: preflight → run → metrics → report 전체 실행
python3 scripts/eval_runner.py full --config CONFIG_PATH
# 6) Chain: 여러 실험을 순차 실행 (chain config)
python3 scripts/eval_runner.py chain --config CHAIN_CONFIG_PATH
실험 config YAML은 기존 plans/codex/algorithms/configs/ 형식을 그대로 사용한다.
# 필수
paths:
eval_jsonl: datasets/eval_v1.jsonl
eval_classified_json: datasets/eval_v1_classified.json
models:
llm_model: gpt-4.1-mini
base:
eval_limit: 70
chunk_size_chars: 1200
chunk_overlap_chars: 150
parent_group_size: 3
# 실험 유형별 선택
modes: [hyde_rerank, A3_section_hybrid_evidence_dynamic_k_rerank]
grid:
k_values: [160]
retrieval:
scorer: embedding
embedding_model: text-embedding-3-large
final_top_n: 10
# rerank 사용 시
rerank:
strategy: pinecone
pinecone_model: bge-reranker-v2-m3
top_m: 80
plans/codex/test_result/<experiment_name>_YYYY-MM-DD-HH-MM.jsonplans/codex/test_result/<experiment_name>_checkpoint.jsonplans/codex/test_result/<experiment_name>_run_YYYY-MM-DD-HH-MM.logplans/claude/<REPORT_TYPE>_YYYY-MM-DD-HH-MM.md| 실험 유형 | 스크립트 | 설명 |
|---|---|---|
| rerank5 | eval_rerank5_artifacts.py | Reranker 적용 실험 |
| nonrerank5 | eval_nonrerank5_artifacts.py | Reranker 미적용 실험 |
| judge | eval_ragas_llmjudge_10modes_kgrid.py | LLM-as-Judge 평가 |
| chain | run_experiment_chain.py | 다단계 순차 실행 |
checkpoint.json을 주기적으로 저장| 변수 | 용도 | 기본값 |
|---|---|---|
EVAL_RUNNER_CONFIG | config YAML 경로 | (필수) |
EVAL_RUNNER_OUT | 결과 JSON 경로 | auto-generated |
EVAL_RUNNER_CKPT | checkpoint 경로 | auto-generated |
EVAL_RUNNER_LOG | 로그 경로 | auto-generated |
PINECONE_API_KEY | Pinecone reranker API | .env에서 로드 |
metrics/report 결과를 해석할 때 참조하는 지표 체계.
상세 정의는 rag-bench 스킬의 references/ 참조.
| 지표 | 수식 요약 | 진단 대상 |
|---|---|---|
| Hit Rate@K | top-K에 정답 하나라도 있으면 1 | 검색 자체의 성공 여부 |
| ChunkRecall@K | 정답 정보량 중 검색된 비율 | 정보 포괄성 |
| ChunkPrecision@K | top-K 중 정답 비율 | 노이즈 수준 |
| MRR | 첫 정답의 순위 역수 평균 | Reranker 품질 |
| Faithfulness | 답변 주장 중 컨텍스트 근거 비율 | 환각 수준 |
| Recall@k | ChunkRecall | 진단 |
|---|---|---|
| 낮 | 높 | Large Chunk (양호) |
| 높 | 낮 | Boundary Cut (위험 - chunk_size 조정 필요) |
| 높 | 높 | 최적 |
| 낮 | 낮 | 검색 실패 (임베딩/HyDE 개선 필요) |
DocHit@10 < 0.7 → A1 병목 (임베딩/HyDE)
MRR < 0.5 → A2 병목 (Reranker)
ChunkRecall < 0.3 → A0/A3 병목 (chunk_size 또는 절삭)
Judge < 8/15 → LLM 병목 (프롬프트/컨텍스트 구조)