대상 서비스: 표본수(피험자수) 산출 시스템 sample-size
목적: 화면 우측 하단 "상담원"형 AI 에이전트를 올바른 지식·능력과 함께 보강
“지식 주입”이 아니라 “지식 + 능력 + 근거정책”의 3층
에이전트가 틀리는 이유는 두 가지다 — ① 아는 게 없어서(지식 부재), ② 알아도 지어내서(근거 이탈). 그래서 지식만 넣으면 안 되고 ① 지식층 + ② 능력층(도구) + ③ 근거정책층을 함께 설계한다. 특히 표본수는 숫자가 틀리면 안 되므로, 계산은 LLM이 아니라 검증된 엔진이 하게 만드는 것이 핵심이다.
두 종류를 다르게 다룬다
지식은 성격이 달라서 조달·주입 방식을 분리해야 한다.
| 원천 | 무엇 | 주입 방식 |
|---|---|---|
GET /api/methods (라이브) |
17종 메서드의 design·outcome·frameworks·params(라벨/단위/help)·citations | 빌드시 manifest로 캐시 + 도구로도 노출. 코드가 바뀌면 자동 동기화 → "코드구조를 항상 파악" 요구를 하드코딩 없이 충족 |
| 종합문서.html §2 분류체계 · §3 방법카탈로그 · §4 보정레이어 · §5 아키텍처 | 개념 지도(어떤 상황에 어떤 방법, 4프레임워크, 보정) | "시스템 지식 카드"(요약 md)로 정제해 상시 컨텍스트에 고정 |
| 생존분석 입력방식 설명서 | HR/Reference 2-모드 환산 | 시스템 지식 카드에 포함(위암 핵심 기능) |
| 문서 | 성격 | 처리 |
|---|---|---|
| ICH E9 (통계 원칙) | 공개 규제문서 | 전문 청킹 → 임베딩 → 검색 |
| 식약처 임상시험 통계 가이드라인 | 공개 | 전문 청킹 → 임베딩 → 검색 |
| CONSORT 2010 (Statement + Checklist) | 공개 | 전문 청킹 → 임베딩 → 검색 |
| Pocock, Clinical Trials: A Practical Approach | 저작권 | 전문 임베딩 ❌ → 핵심 원리·언제 쓰나를 자체 요약노트로 재작성 후 인용표기 |
| Chow, Sample Size Calculations in Clinical Research | 저작권 | 동일. 엔진이 이미 메서드별로 Chow 2017을 인용하므로 그와 정렬 |
에이전트가 "말"이 아니라 "수행"하게
핵심 요구("기능을 올바르게 수행할 능력")의 실체. 이미 있는 API를 그대로 도구로 래핑한다.
| 도구 | 하는 일 | 왜 필요 |
|---|---|---|
list_methods() | 지원 메서드/파라미터 조회 | 시스템 능력을 정확히 파악(할루시네이션 방지) |
recommend_method(연구질문) | 질문 → 메서드키 매핑(분류체계 기반) | 마법사 모드의 라우팅을 대화로 |
calculate(method_key, params, adjustments, solve_for) | 실제 엔진 호출 | 숫자는 반드시 검증엔진에서 — LLM 암산 금지 |
sensitivity(...) | 민감도 스윕 | "가정을 흔들면?" 응대 |
generate_report_pdf(...) | IRB/논문용 PDF | 산출물까지 마무리 |
search_knowledge(query) | 임상통계 KB 검색(RAG) | ICH E9 등 근거 인출 |
calculate를 호출하고, 입력값·가정·달성검정력·엔진
인용을 그대로 인용한다. 파라미터가 빠졌으면 지어내지 말고 되묻는다.
우선순위 · 인용 · 거부 (시스템 프롬프트에 고정)