국방AI 프롬프트 경진대회 · 출제 후보 04

설비 정비주기 예측형 — 자동채점·리더보드 설계안

입력→LLM 실행→파싱→채점까지 자동 실행·채점 구조는 주최 측이 고정하고, 참가자는 LLM 행동 지침 프롬프트만 작성합니다.
자문 범위 세 축(문제·데이터셋 / 자동채점 / 리더보드)을 정리하고, 미송 논의가 필요한 열린 결정을 아래에 모았습니다.

규모
약 1만 명 · 예상 동시 500명(추정)
참가자 작성
에이전트 행동 지침 프롬프트
1일 한도(예정)
미리보기 50 · 제출 3
채점
정답 대조 · Macro F1 중심

미송님 확인 필요 · 결정 5가지

본 문서는 4개 후보 주제 중 ‘설비 정비주기 예측형’ 1개 기준의 상세 설계안입니다.
아래 5가지가 확정되면 배점·문제 수·제출 형태 등 나머지 설계가 정해집니다.

  1. 대회 목적은 LLM 활용 능력 평가에 가까운가, AI 활용 경험 제공에 가까운가?
  2. 참가자는 4개 문제 전부를 푸는가 일부 선택인가? (점수: 합 / 평균 / 최고점)
  3. 리더보드는 결과 성능 중심인가, 프롬프트 효율성 포함인가?
  4. 제출 방식은 단일 프롬프트형인가, 단계별 가이드형인가?
  5. 샘플 규칙이 너무 쉽게 추론되는 문제를 재설계해도 되는가?
문제 · 데이터셋

예측 과제 및 데이터셋 정의

장비 유지보수 이력(합성 데이터) 1건을 보고 고장위험등급다음 정비주기 구간을 분류합니다.
참가자는 공개된 샘플 데이터 15행으로 규칙을 추론하고, 채점은 숨겨진 비공개 데이터 30행으로 이뤄집니다.
(30행은 설명·검증용 기준 — 실제 운영 시 리더보드 안정성·변별력을 위해 100~300행 확장 검토)

쉽게 이해하기

군 설비(발전기·전술차량·통신장비·레이더 등)는 갑자기 고장 나면 작전·훈련에 큰 차질을 줍니다. 그래서 고장 뒤 수리가 아니라 징후를 미리 읽어 예방 정비하는 것이 핵심이고, 그러려면 방대한 정비 이력을 판단해야 합니다.

이 대회는 그 판단을 LLM으로 자동화합니다. 정비 이력을 보고 ① 곧 또 고장날 위험이 얼마나 큰지, ② 다음 정비를 언제 해야 하는지를 분류하도록, 참가자가 에이전트 행동 지침을 설계하는 과제입니다.

참가자는 코드를 작성하거나 정답 파일을 직접 제출하지 않습니다. 대신 LLM이 데이터를 어떻게 읽고, 어떤 기준으로 판단하고, 어떤 형식으로 답할지를 설명하는 행동 지침 프롬프트를 씁니다 — 예컨대 "정비가 잦거나 가동시간이 길거나 최근에 고장났으면 위험을 높게 보라"처럼요. 그러면 채점 시스템이 그 지침을 숨겨진 30건에 그대로 실행해, 정답과 얼마나 일치하는지로 점수를 매깁니다.

합성 데이터를 쓰는 이유 — 실제 군 정비 데이터는 보안·반출 이슈가 있어, 정비 업무 구조를 모사한 합성 데이터를 씁니다. 군 장비 정비 맥락은 이해되되 특정 부대·장비·작전 정보는 드러나지 않게 설계합니다.

예: 발전기 1대의 정비 기록
  • 최근 1년 6번 정비 잦음
  • 누적 4,200시간 가동 많음
  • 20일 전에도 고장 최근
고장 위험HIGH높음
다음 정비0-3030일 안에 재정비

과제 명세

입력 · Input
id장비유형수리 시작일수리 종료일정비 조치비용정비횟수/1y가동시간직전고장 경과일
출력 · Output
risk_gradeHIGHMEDIUMLOW
cycle_range0-3031-9091-180181+
샘플 데이터sample.csv 15행 — 입력 + 정답 공개
비공개 데이터private.csv 30행 — 입력·정답 비공개, 서버 보관
평가 지표두 라벨 Macro F1의 평균 (아래 채점)
정답 규칙설명용 규칙 제공 · 실제 규칙은 참가자에게 비공개·복합 조건 재설계

샘플 데이터(sample.csv) 예시 · 4행

id장비수리기간(일)비용(원)최근1년 정비(회)누적가동(h)직전고장(일 전)→ 고장위험→ 다음정비
1발전기6850,00064,20020HIGH0-30
2통신장비2120,00011,500140LOW181+
3전술차량4430,00033,10060MEDIUM31-90
4레이더3900,00032,60075MEDIUM91-180

아래 규칙은 설명용 예시입니다. 실제 채점용 비공개 데이터의 정답 생성 규칙은 그대로 공개하지 않으며, 복합 조건·경계 케이스·노이즈로 변별력을 확보합니다.

① 고장 위험 등급 · risk_grade

가까운 시일 내 다시 고장 날 가능성을 세 단계로.
정비가 잦고 오래 가동됐거나 최근 고장났을수록 높음.

HIGH정비 ≥ 5회 또는 가동 ≥ 4000h 또는 직전고장 ≤ 30일
MEDIUMHIGH·LOW 어디에도 해당하지 않음
LOW정비 ≤ 2회 그리고 가동 < 2000h 그리고 직전고장 > 90일

② 다음 정비 시점 · cycle_range

다음 정비까지 두어도 되는 기간을 네 구간으로.
위험이 클수록 더 빨리 정비해야 함.

0-3030일 이내 재정비 · risk=HIGH
31-901~3개월 · MEDIUM & 가동 ≥ 3000h
91-1803~6개월 · MEDIUM & 가동 < 3000h
181+6개월 초과 · risk=LOW
데이터 결함 · 재설계 필요현재 규칙은 설명용으로는 적합하나 실제 출제 규칙으로는 변별력이 부족합니다. 참가자가 컬럼 설명·문제 조건을 그대로 LLM에 입력하면 고득점할 수 있으므로, 실제 비공개 채점셋은 비선형 조건·특성 상호작용·경계 사례·일부 노이즈를 포함해 별도로 재설계해야 합니다. (열린 결정 ⑤)
자동채점 · 하네스

자동 실행·채점 구조 (하네스)

참가자는 코드·정답 파일이 아니라, LLM이 데이터를 어떻게 읽고 판단할지를 지시하는 행동 지침 프롬프트만 제출합니다.
주최 측은 이를 동일 조건에서 재실행해 정답과 대조·채점하며(이 고정 절차가 하네스), 정답 로직이 아니라 프롬프트의 지시 품질을 평가합니다.

1프롬프트 입력 비공개 데이터를 raw JSON으로 프롬프트에 입력 — 파생 변수·정답 힌트 없이 모든 참가자가 동일 조건주최 고정
2LLM 실행 행동 지침이 컬럼 해석·판단 기준·출력 형식을 지시 · 모델·temperature·출력형식 고정 (예시 gpt-4.1-nano — 운영 모델은 비용·성능 검증 후 확정)참가자 작성
3출력 파싱·검증 마지막 줄 `risk_grade, cycle_range` 계약 파싱 · 필수값·허용 라벨·형식 위반은 행 0점/감점주최 고정
4정답 대조·채점 비공개 정답과 대조 → 두 라벨 Macro F1 평균 등 지표 산정 · 원출력·채점결과 저장(재현·감사)주최 고정

참가자가 통제하는 변수는 행동 지침 프롬프트뿐입니다 — 코드·정답 파일·모델 설정·채점 기준·비공개 데이터에는 접근할 수 없습니다. 프롬프트에는 컬럼 해석·변수 우선순위·등급/구간 기준·경계 사례·출력 형식·불확실 처리를 담을 수 있습니다. 모델·temperature·출력 형식을 최대한 고정해 재현성을 높이되, LLM 특성상 완전히 동일한 응답은 보장하기 어려워 공식 제출의 원출력·채점 결과를 저장해 이의·재채점·검증 기준으로 씁니다. 정답셋·API 키는 채점 워커에만 격리됩니다. (전처리→판단→출력을 노드별 프롬프트로 나누는 가이드형 다단계(Shape B)는 열린 결정 ④ · 재현성·격리 상세는 시스템 아키텍처 참고.)

채점 지표

평가 지표 및 배점 체계

채점은 리더보드 점수(실시간 경쟁)와 토탈 점수(최종·수상)로 나눕니다.
정확한 배점은 대회 의도·문제 수 확정 후 결정합니다 — 아래 열린 결정 참고.

점수 구조 배점 미정 · 미송 논의

리더보드 점수 · 실시간 경쟁
결과값 유효성예측 정확성 · 출력 신뢰 (Macro F1)
프롬프트 효율성지침 글자 · 토큰 수

참가자가 실시간으로 겨루며 보는 점수 · 여러 제출 중 최고점 자동 선택.

토탈 점수 · 최종·수상
리더보드 점수위 두 항목
온라인 수강률VOD 3개 각 30%↑
제출형식 준수출력 계약
보안 적합성개인정보 · 금지어

최종 순위·수상 결정 · 수강률·보안 위반을 점수화할지, 응시/실격 게이트로 둘지는 미송 확인 필요.

배점 결정 필요정확한 점수 배분은 대회 의도(LLM 활용 능력 향상 vs 다양한 경험)와 문제 수(1 vs 4)에 따라 달라집니다.
참고 — IITP 공식 예측 40·신뢰 25·활용 20·문제해결 10·규격 5
DACON 롯데 최고값·단일 가중.
권장(leaning)프롬프트 효율성은 결과 성능이 일정 수준 이상일 때만 보조 지표(동점 처리 또는 소배점 5~10점)로 반영.
무조건 짧게 써서 성능이 낮아지는 역효과를 막기 위해 결과값 유효성을 1차 기준으로 둡니다.
① 결과값 유효성 · Macro F1
F1c = 2·Pc·Rc / (Pc + Rc) MacroF1 = (1/|C|) · Σc F1c 평균F1 = ( F1risk + F1cycle ) / 2
  • 정밀도 P모델이 A라고 답한 것 중 실제로 A였던 비율
  • 재현율 R실제 A 중 모델이 A로 맞힌 비율
  • F1정밀도·재현율을 합친 값 (조화평균)
  • Macro F1등급마다 F1을 구해 평균 — 드문 등급도 공평
  • 평균 F1두 라벨(위험·주기) F1의 평균 → 예측 정확성
② 프롬프트 효율성 · 글자/토큰 수 계산식 잠정
효율성 = clip( (C_max − L) / (C_maxC_min), 0, 1 ) 단, 상한·계수는 잠정 (미송 확정)
  • L지침 글자·토큰 수 (입력 {{input}} 제외 · 폼 실시간 카운터)
  • 방향같은 수준의 결과 성능이라면 더 간결한 프롬프트에 보조 점수 (롯데 관례)
  • 하드 캡3000자 초과 시 제출 반려 (payload·비용)
  • 잠정정확한 계산식·상한은 대회 의도에 맞춰 확정
참가자 대시보드

참가자 제출·검증 환경

코딩 테스트처럼 행동 지침을 작성해 [샘플 실행](공개 샘플)으로 검증·[제출] · 1일 샘플 50회 / 제출 3회.
모바일 우선 · 작업은 세션 지속(중단·재개, 콘솔을 닫아도 서버 저장·백그라운드 진행).

agent_instructions.txt 미리보기 47/50 · 제출 2/3
1
2
3
4
5
너는 국방 설비 정비 분석가다.
아래 정비 이력을 보고 고장위험등급과
다음 정비주기를 판단하라.
입력: {{input}}
출력: `위험, 주기` 한 줄 (예: HIGH, 0-30)
100 / 3000자 ▶ 샘플 실행 제출 →
샘플 테스트 · 공개 샘플 데이터 5행 (공식 채점 아님)
#입력 (요약)기대 정답에이전트 출력판정
1발전기 · 정비6 · 4,200hHIGH, 0-30HIGH, 0-30통과
2통신장비 · 정비1 · 1,500hLOW, 181+LOW, 181+통과
3전술차량 · 정비3 · 3,100hMEDIUM, 31-90MEDIUM, 31-90통과
4레이더 · 정비3 · 2,600hMEDIUM, 91-180MEDIUM, 91-180통과
5화포 · 정비4 · 3,300hMEDIUM, 31-90MEDIUM, 0-30실패
추정 정확도 4 / 5 · 평균 F1 ≈ 0.80 — 숨겨진 비공개 데이터 채점과 다를 수 있음

[샘플 실행]은 정답이 공개된 샘플 데이터로 즉시 결과를 보여주고, [제출]만 숨겨진 비공개 데이터 30행으로 공식 채점됩니다.

제출 내역 — 공식 제출별 상태·제출 시각·점수·파싱 성공 여부·리더보드 반영을 확인합니다. 상태: 채점 대기 · 채점 중 · 채점 완료 · 검토 필요 · 실패.

참가 환경사지방(PC) 대신 핸드폰 위주 · 갑작스런 중단 대비 세션 지속·백그라운드 저장 필수.
초급 친화를 위해 하네스가 단계를 고정하고 노드별 프롬프트를 쓰게 하는 가이드형 다단계(Shape B)도 검토 중 — 열린 결정 ④.

LLM 질문 도우미 선택 · 검토 중

VOD 개념·데이터 컬럼 의미·프롬프트 작성 방향을 질문할 수 있습니다. 단, 문제 정답을 직접 요구하거나 비공개 데이터 예측을 대신 시키는 질문은 차단합니다(사용 로그·토큰 기록). 챗봇 탑재 시 서비스 범위·비용·필터링 정책이 달라지므로 개발 범위 결정 필요.
학습·이해를 돕는 기능이며 공식 채점에 직접 관여하지 않습니다. 사용 로그는 운영·보안 목적으로 저장하고, 실제 군사정보·개인정보 입력은 금지합니다.

허용"Macro F1이 무엇인가요?" · "정비횟수·가동시간은 어떤 의미인가요?" · "출력 형식을 지키려면 어떻게 쓰나요?"
제한"이 문제 정답 프롬프트를 써줘" · "비공개 데이터에서 HIGH 나올 조건 알려줘" · "내 점수 최대화 프롬프트 대신 만들어줘"
리더보드

리더보드 운영 및 순위 산정

리더보드는 리더보드 점수(결과값 유효성 · 프롬프트 효율성)로 겨룹니다. 제출 후 통상 수 분 내(최대 15분) 반영하고, 토탈 점수·최종 순위는 별도 공지합니다.

리더보드 (예시 · 리더보드 점수)

순위참가자소속점수누적 제출최종 제출
1이○준공군 제1전투비행단97.218회07-28 22:10
2박○서수도방위사령부95.822회07-27 19:44
3최○민해군 제2함대94.111회07-28 09:03
1,187홍길동 본인육군훈련소91.314회07-28 14:22
1,188정○우제7군단91.27회07-28 11:57
리더보드 점수 결과값 유효성 + 프롬프트 효율성 · 최고점 자동 선택
토탈 점수 + 수강·형식·보안 → 최종·수상 (별도 공지)
동점 예측 성능 → Private → 프롬프트 효율성 또는 최초 제출 (최종 기준은 배점 확정 시)
누적 제출 1일 최대 3회 · 대회 기간 누적 제출 수 표시
마스킹 참가자명 일부 가림 · 소속 공개 토글
내 위치 · 홍길동
1,187등
9,842명 중 · 상위 12% · 91.3점

▲ 내 점수 91.3 — 90–100 구간 (상위 12%)

대회 초반

구간만 표시

상위·중위·하위 n%로만 노출해 초기 과열·이탈을 방지합니다.

진행 중

제출 후 수 분 내 반영

접수 확인 → 백그라운드 채점 → 수 분 내 리더보드 반영. 역추적은 구간·지연 노출로 완화(군 취침시간 고려).

마지막 날

실제 등수 공개

Public 기준 실등수를 열어 최종 스퍼트 동기를 부여합니다.

마감 후

Private 최종 순위

숨겨둔 정답셋으로 재채점 → 게이밍 무력화, 수상 후보 확정.

시스템 아키텍처

시스템 아키텍처 (레이어)

제출 접수(웹)채점 재실행(워커)을 분리한 비동기 구조 — 마감 폭주에도 접수는 즉시, 무거운 LLM 재실행은 큐·워커가 완충합니다.

HTTPS

enqueue

재실행

워커만

참가자 · 모바일 우선
세션 지속 (중단·재개·백그라운드)

Frontend (SPA)
안내·신청 · 콘솔 · 리더보드

API · 무상태 수평 확장
인증 · 접수(동기 검증) · 조회 · 관리자

Queue (Redis)
채점 큐 · 제출 카운터 · rate limit · 캐시

Scoring Workers
하네스 재실행 · 파싱 · 지표 산정 · 예산 가드

LLM API
경량 모델 우선 검토
예: gpt-4.1-nano · gpt-4o-mini

Data
DB · Redis · Object Storage

격리 저장소
ground_truth · API 키 (워커 전용)

리더보드
제출 후 수 분 내 반영 · 단계적 공개

접수 ↔ 채점제출은 동기 검증(스키마·3000자·1일 횟수) 통과 시 즉시 접수 · 실제 재실행 채점은 비동기 큐·워커 → 웹 tier 무상태·수평 확장
재실행워커가 참가자 지침을 LLM에 재실행(비공개 데이터) → 파싱 → 지표 산정 · 예산 가드로 호출 비용 통제
격리정답셋·API 키는 워커 전용 저장소만 접근 · 웹·프론트 미노출 → 하드코딩·정답 유출 차단
재현·감사재실행 원출력을 Object Storage에 저장 → 재채점 동일성·이의 대응
리더보드제출 후 수 분 내 반영 + 단계적 공개(구간 → 등수 → Private 최종)

스택 비강제: 표기된 기술(React·FastAPI·Redis 등)은 권장 예시일 뿐, 개발팀 기존 스택으로 구현해도 됩니다 — 우리는 아키텍처만 제공합니다. 예상 동시 접속 500명 수준에서는 일반 웹 서버보다 LLM 호출량·채점 큐 대기 시간이 주요 병목이 될 가능성이 높습니다. 그래서 제출 접수와 채점 실행을 분리하고 큐·워커·배치로 완충합니다.

운영 · 비용

관리자 기능 및 비용 산정

운영자가 신청·수강·제출·채점·수상을 한 화면에서 관리하고, 대규모 LLM 호출 비용을 통제합니다.

관리자 · 운영 기능

참가자·제출참가자 목록(소속·수강률·제출·점수) · 제출 내역(프롬프트·모델 원출력·파싱·점수) 조회
재채점개별/전체 일괄 재채점 · 모델·기준 변경 시 재산정
리더보드공개/비공개·구간/등수 전환 · 특정 제출 제외
이상 탐지금지어·개인정보·군사정보 · 유사/반복 프롬프트 · 부정 제출
운영 로그API 호출량·토큰·실패율·큐 대기·채점 오류

비용 · 호출량 예시 모델 단가 변동 시 재산정

공식 채점 최악 = 참가자 1만 × 1일 3회 × 비공개 30행 = 최대 90만 호출/일
억제공식 3회·미리보기 50회 상한 · 큐 기반 비동기 · 예산 초과 시 대기/차단
배치행당 1회 대신 미니배치(5~10행) 또는 30행 1회 JSON 배열 검토 — 비용↓, 출력형식 실패 리스크와 절충
경량화non-reasoning 소형 모델 · 프롬프트 캐싱(system 고정) · 동일 지침 중복 제거

개발사 전달 핵심

단순 제출 게시판이 아니라, 참가자가 낸 행동 지침 프롬프트를 서버가 동일 조건에서 재실행하고 LLM 출력을 자동 파싱해 정답과 비교한 뒤 리더보드에 반영하는 비동기 자동채점 시스템입니다.

분리웹 접수와 채점 워커를 분리(마감 폭주에도 접수 즉시 · 채점은 큐·워커)
격리비공개 데이터·ground_truth·API 키는 프론트/API에서 접근 불가(워커 전용)
저장제출 원문·LLM 원출력·파싱 결과·점수·score_version 모두 저장(재현·감사)
열린 결정

미송님 논의 · 결정 필요 항목

아래는 주최측·미송 확정이 필요한 항목입니다. 나머지 설계(배점·콘솔·채점)는 이 결정에 맞춰 조정됩니다.

① 대회 의도

능력 향상 vs 다양한 경험

LLM 활용 능력을 겨루는 대회인가, 다양한 주제를 경험시키는 장인가. 문제 수·채점·난이도가 여기서 갈립니다.

② 문제 수 · 채점

1문제 vs 4주제

출제안은 4개(조달 수요예측·입영 수요예측·드론 탐지·정비주기). 전부/일부/1개 중 무엇을 풀고, 점수는 합·평균·최고점 중 무엇인지.

leaning · 일부 선택 + 문제별 난이도 배점(참여 유도)

③ 리더보드/토탈 배점

분리 점수 세부 배분

리더보드 = 결과값 유효성 + 프롬프트 효율성 / 토탈 = + 수강·형식·보안. 각 항목 정확 배점 확정 필요.

④ 제출 형태

단일 지침 vs 가이드형 다단계

프롬프트 한 장(Shape A)인지, 하네스가 단계를 고정하고 노드별 프롬프트(전처리→분석→구조화, Shape B)를 쓰게 할지.

leaning · 초급 친화 가이드형 다단계(주최측 Data_Sample 구조)

⑤ 데이터 결함

라벨이 LLM에 쉽게 추론됨

현재 정답 규칙은 단순 임계식이라 컬럼만 붙여넣으면 LLM이 즉답 → 변별력 붕괴. 함정/재설계 필요.

방향 · 비선형 · 특성 상호작용 · 노이즈 · 숨긴 임계