AI PRD: 모델 시스템이 실제로 책임질 수 있는 요구사항 작성하기
AI 시스템을 위한 PRD는 다른 문서입니다. 여러분의 요구사항은 엔지니어를 위한 지시사항이 아닙니다. 즉흥적으로 동작할 시스템에 대한 제약 조건입니다. 이 스킬은 이 사실을 중심으로 문서를 재구성합니다.
이 스킬이 다루는 파일
- ../../templates/definition/prd.md, 기본 PRD 템플릿
templates/ai/디렉토리의 AI 오버레이: eval-spec.md, guardrails.md, hallucination-controls.md, human-approval-gates.md, prompt-structure.md, context-management.md, red-team-review.md, 그리고 에이전트 시스템을 위한 agent-architecture.md 및 multi-agent-workflow.md- 규제 대상 컨텍스트: ../../modules/regulated/templates/regulated-ai-prd-template.md, ../../modules/regulated/SKILL.md 참조
사용 시기
- LLM, 에이전트 또는 모델이 결정을 내리거나 초안을 작성하는 모든 기능을 명세할 때
- 기존 PRD에서 어디에선가 "AI가 ~해야 한다"는 표현이 있는 PRD를 검토할 때
- 데모를 엔지니어링 팀이 책임질 수 있는 상태로 전환할 때
이 스킬이 강제하는 다섯 가지 섹션
1. 승인 기준은 평가 세트이지 문장이 아닙니다
"에이전트가 판매자 이름을 추출해야 한다"는 희망사항입니다. 요구사항은 다음과 같습니다:
- 레이블이 지정된 예제 세트(첫 번째 릴리스의 경우 최소 30~50개 케이스)
- 숫자로 명시된 통과 임계값(정확도, k에서의 재현율, 또는 판정 점수)
- 임계값 미만일 때의 규칙(릴리스 차단, "검토"가 아님)
초안에 있는 모든 "~해야 한다"에 대해 다음과 같이 질문하세요: 예제 세트는 어디에 있는가, 숫자는 무엇인가, 실패 케이스를 다시 세트에 추가하는 책임은 누구에게 있는가. 답변을 ../../templates/ai/eval-spec.md에 기록하세요.
2. 에지 케이스는 부록이 아니라 명세 그 자체입니다
해피 패스는 모델이 공짜로 해내는 것입니다. 문서의 가치는 경계에서 드러납니다. 다음을 위한 명시적인 테이블을 요구하세요:
- 반드시 거부(MUST REFUSE): 시스템이 거부하는 입력(범위를 벗어난 경우, 안전하지 않은 경우, 수선 불가능할 정도로 모호한 경우)
- 반드시 에스컬레이션(MUST ESCALATE): 인간에게 라우팅하는 조건, 라우팅 대상 지정; 트리거 및 타임아웃 동작을 ../../templates/ai/human-approval-gates.md에 기록
- 절대 지어내면 안 되는 것(MUST NEVER INVENT): 허위 사실이 부재보다 더 나쁜 필드(숫자, 이름, 법적 또는 규제 진술, 금액); 기권 정책은 ../../templates/ai/hallucination-controls.md에 포함
3. 비결정성은 문서화해야 합니다
동일한 입력이 내일 다른 출력을 생성할 수 있습니다. PRD는 다음을 명시해야 합니다:
- 어떤 출력 변형이 허용되는가(표현? 순서? 형식?)
- 어떤 것이 결함인가(다른 결정, 다른 숫자, 다른 거부 행동)
- 재현성 자세: 온도 및 시드 정책, 그리고 로그가 결정을 재생하기에 충분한 정보를 캡처하는지 여부
PRD가 이를 명시하지 않으면 QA가 나중에 버그 트래커에서 화가 나서 결정할 것입니다.
4. 가드레일은 소유자가 있는 기능입니다
각 가드레일은 ../../templates/ai/guardrails.md에서 한 행을 차지합니다: 이름, 트리거, 동작, 소유자, 테스트. 모든 에이전트 기능에 대해 고려해야 할 최소 세트:
- 확인 불가능한 출력에 대해 장애 시 폐쇄(fail-closed)(확인할 수 없음 = 사용자에게 제공하지 않음)
- 되돌릴 수 없는 모든 작업(발송, 결제, 삭제, 게시) 전 인간 승인
- 명시된 상한과 상한에서의 명시된 동작이 있는 지출 및 비율 한도
- 입력 격리: 시스템이 읽는 콘텐츠는 데이터일 뿐, 명령어가 아님
- 감사 추적: 누가 또는 무엇이 결정했는지, 어떤 입력을 기반으로, 어떤 모델 버전에서
5. 운영 페이지
- 호출당 비용 목표 및 알림 임계값
- 단계당 지연 시간 예산
- 모델 버전 고정 및 업그레이드 결정 프로세스
- 원격 측정: 결정당 로깅되는 내용, 평가 실행 위치(CI, 사전 릴리스, 프로덕션 샘플링), 롤백 트리거
규제 경로
일반 PRD 도구는 위의 다섯 섹션을 작성하고 멈춥니다. 제품이 금융 또는 데이터 규제 대상인 경우, 이 스킬 자체의 오버레이를 메모리에서 실행하지 마십시오. 대신 ../../modules/regulated/templates/regulated-ai-prd-template.md의 바이트 단위 정확한 템플릿에서 시작하여 ../../modules/regulated/SKILL.md을 따르고, 요구사항을 작성하기 전에 섹션 0(라이선스 전제 조건, 체계 규칙, 데이터 체류지 및 벤더 조건, 금융 범죄 접점, 행동, 감사 증명 지표)을 완료하십시오. 빈 오버레이 필드는 그것을 찾는 사람에게 결정이 연기된 것입니다. 규제 기관 이름, 섹션 번호, 인용된 텍스트는 해당 모듈 또는 사용자가 제공하는 원문에서만 가져오고 절대 지어내지 마십시오.
워크플로우
- 컨텍스트를 분류합니다. 규제 대상: 위의 규제 경로를 따른 후, 모듈이 다루지 않는 섹션에 대해 여기로 돌아옵니다. 비규제 대상: ../../templates/definition/prd.md에서 시작합니다.
- 초안 PRD를 읽거나, 처음부터 시작하는 경우 PM을 인터뷰합니다.
- 모든 "~해야 한다" 문장을 섹션 1 형식으로 다시 작성합니다. 평가로 전환할 수 없는 것은 아직 요구사항이 아니므로 플래그를 표시합니다.
- 세 가지 에지 케이스 테이블을 구축합니다. 각각 최소 5행을 목표로 하십시오; 빈 테이블은 발견이 완료되지 않았음을 의미합니다.
- 비결정성 조항과 가드레일 테이블을 작성합니다.
- 한 페이지 분량의 GAP 목록을 생성합니다: 원본 문서가 결정론적 구현자를 가정한 모든 부분을 피해 반경 순으로 순위를 매깁니다.
출력 형식
다섯 섹션으로 재구조화된 PRD를 반환한 후 GAP 테이블을 반환합니다:
| # | 격차(Gap) | 원본 내 위치 | 그대로 출시 시 피해 반경 | 가장 작은 수정 | |---|---|---|---|
종료 게이트
이 스킬의 출력은 ../../os/STAGE-GATES.md의 게이트 2에 공급됩니다. 요구사항에 숫자 통과 조건이 없거나, 가드레일에 소유자와 테스트가 없거나, GAP 행에 소유자와 날짜가 없는 한 PRD가 완료되었다고 보고하지 마십시오.