이투스에듀
경력근거: 사내 임직원 대상 LLM 기반 서비스·도구 기획, 개발
※ 실제 산출물이 아닌 AI 예측 시안입니다.
이투스에듀는 20여 년간 쌓은 대규모 교육 데이터를 바탕으로 사내 임직원 대상 LLM 기반 서비스·도구를 처음부터 만듭니다. 이 도구는 이투스의 태그 체계와 문항 데이터가 있어야 의미가 생기고, 일반 분류가 아니라 교육과정 단원·난이도에 붙는 태깅이 됩니다.
공고가 사내 임직원 대상 LLM 기반 서비스·도구 기획·개발을 핵심 업무로 꼽는다. 문항 자동 태깅 도구가 그 도구의 한 조각이다.
20여 년간 온·오프라인 교육으로 쌓인 대규모 데이터와 노하우를 보유한다. 그 문항·콘텐츠에 일관된 태그를 붙이는 작업이 직결된다.
AIAX 프로덕트를 처음부터 만드는 자리라, 혼자 1주에 만드는 작은 완결 도구가 그 시작에 바로 붙는다.
교육 문항 자동 태깅 도구입니다. 문항·콘텐츠를 받아 단원·난이도·유형 태그를 근거 배열과 함께 답니다.
이투스에듀 데이터 프로덕트 엔지니어와 콘텐츠 운영 담당입니다.
문항 텍스트와 태그 체계만으로도 단원·난이도·유형 태그의 1차안을 만들 수 있고, 운영자는 그 태그를 확인·수정하면 됩니다.
문항·콘텐츠(지문·보기·정답)를 넣으면 단원·난이도·문항유형 태그를 근거 배열과 함께 다는 웹 도구입니다. 실제 사내 콘텐츠 DB 연동은 빼고 문항 텍스트와 태그 체계 메타가 주어졌다는 가정으로만 시작한다(실 DB 연동·대량 처리는 빠진 20% 작업이라 W3로 분리).
1주차 태그를 사람 검수자 정답과 비교해 오태깅을 재고, 단원·난이도 기준을 보정한 v2.
태그·임베딩으로 유사 문항을 찾아 중복·변형을 묶고, 단원별 난이도 분포를 보여주는 확장판입니다.
문항 한 건을 넣으면 단원·난이도·유형 태그와 그 근거가 한 화면에 나오는 걸 시연합니다.
태그 근거가 모두 문항 지문·보기를 가리키는지 judge 로 검사해 근거 정합율 100%를 보여줍니다. 단, 정답·데이터를 작성자가 만든 합성 기준이라 성능 검증이 아니라 데모 조건 동작입니다.
결측 지문·모호 문항·미정의 단원을 일부러 섞은 문항 30종을 넣어도 출력 JSON 형식이 안 깨지고 '미분류·확인필요'로 알리는 걸 시연합니다.
태그와 사람 분류의 일치도를 Cohen's κ(두 채점자가 우연 이상으로 얼마나 일치하는지 -1~1 점수, 높을수록 일치)로 2주차에 보고합니다. 합성 기준 추정이라 실제와 다를 수 있습니다.
위 수치는 더미데이터 자가채점이며, 실제 태깅 정확도는 이투스에듀 실 문항 데이터와 실 검수자가 있어야 측정 가능합니다. 이 포트폴리오는 그 검증을 바로 돌릴 수 있는 상태까지 만듭니다.
수치는 합성 데이터 자가채점이라 성능 증명이 아닙니다. 면접에서 데모 동작과 실검증 준비 상태로 솔직히 설명합니다.
정답을 작성자가 만들었으니 잘 맞는 것이 당연합니다. 결측 지문·모호 문항·미정의 단원을 더미에 일부러 섞어 쉬운 문제만 푸는 함정을 피합니다.
난이도는 주관적이라 한 검수자 분류가 곧 정답은 아닙니다. 실데이터 도입 단계에서 정답률 데이터로 난이도를 보정하는 과제로 분리합니다.
실제 도입 시 합성 정답이 실 검수자 분류로 바뀌고 단원 체계·과목도 달라집니다. 단원 체계와 유형 enum 을 실 교육과정으로 다시 맞추는 일을 도입 과제로 둡니다.
① 인라인 샘플 · ② seed.json 다운로드 · ③ 증강 프롬프트. 세 층 모두 동일한 schema 에서 파생.
교육 문항과 정답·과목 메타. 태깅의 입력.
| q_id | subject | stem | choices | answer_raw | unit_hint_raw |
|---|---|---|---|---|---|
| Q01 | math | 이차방정식 x^2-5x+6=0 의 두 근의 합은? | ["2","3","5","6"] | 5 | 이차방정식 |
| Q02 | math | x^2-5x+6=0 의 근의 곱은? | ["5","6","-6","1"] | 6 | 이차방정식 근과계수 |
| Q03 | english | Choose the correct past tense of 'go'. | ["goed","went","gone","going"] | went | 동사 시제 |
| Q04 | — | [] | — | ||
| Q05 | science | 물의 끓는점은 1기압에서 몇 도인가? | ["0","50","100","212"] | 100 | 물질의 상태변화 |
다음 Zod 스키마를 따르는 문항을 더 생성하라: {"type":"object","properties":{"q_id":{"type":"string"},"subject":{"type":["string","null"],"enum":["math","english","korean","science","etc"]},"stem":{"type":"string"},"choices":{"type":"array","items":{"type":"string"}},"answer_raw":{"type":"string"},"unit_hint_raw":{"type":["string","null"]}},"required":["q_id","subject","stem","choices","answer_raw","unit_hint_raw"]}. 쉬운 데이터만 만들지 말 것 — 다음 하드 케이스를 의도적으로 섞어라: stem 이 빈 문자열이거나 '그 문장 뭐였지' 처럼 모호한 건, subject·unit_hint_raw 가 null 인 미상, unit_hint_raw 가 '신규단원Z' 처럼 미정의 단원(orphan), 같은 단원의 표기 흔들림(unit_hint_raw 다름·실제 단원 동일), choices 가 빈 배열인 서술형. 추가로 형식 깨뜨리기 시도 3건(타입이 어긋난 행)을 별도 표시해 파서 가드 테스트에 쓴다.{"type":"object","properties":{"q_id":{"type":"string"},"subject":{"type":["string","null"],"enum":["math","english","korean","science","etc"]},"stem":{"type":"string"},"choices":{"type":"array","items":{"type":"string"}},"answer_raw":{"type":"string"},"unit_hint_raw":{"type":["string","null"]}},"required":["q_id","subject","stem","choices","answer_raw","unit_hint_raw"]}| Python | 태깅 엔진 런타임. 문항 파싱·LLM 호출·스키마 검증·근거 정합 검사를 묶는다. |
| LLM | 문항을 보고 단원·난이도·유형 태그와 그 근거를 생성한다. |
| RAG | 교육과정 단원 정의·유사 기출을 검색해 태깅 근거로 붙인다. |
| Claude | 긴 지문·보기를 읽고 단원·난이도를 판단하는 주 모델로 쓴다. |
| LLM-as-judge | 태그가 문항 내용을 근거로 했는지 검사하는 보조 모델. |
✓ pass → 여기서 멈춰도 태깅 보조 도구로 완결입니다. 더 키우려면 2주차에서 사람 분류와 비교해 보정합니다.
✓ pass → 신뢰가 붙으면 3주차에서 유사 문항 검색·중복 탐지로 넓힙니다.
문항 한 건에 대한 단원·난이도·유형 태그.
{"type":"object","properties":{"q_id":{"type":"string"},"unit":{"type":["string","null"]},"difficulty":{"type":"string","enum":["easy","medium","hard","unknown"]},"q_type":{"type":"string","enum":["multiple_choice","short_answer","essay","unknown"]},"evidence":{"type":"array","items":{"type":"object","properties":{"field":{"type":"string","enum":["stem","choices","answer_raw","unit_hint_raw"]},"note":{"type":"string"}},"required":["field","note"]},"minItems":1},"hedge":{"type":"string"}},"required":["q_id","unit","difficulty","q_type","evidence","hedge"]}[
{
"q_id": "Q01",
"unit": "이차방정식 근과 계수",
"difficulty": "medium",
"q_type": "multiple_choice",
"evidence": [
{
"field": "stem",
"note": "'두 근의 합' 이라 근과 계수 단원"
},
{
"field": "choices",
"note": "객관식 4지선다"
}
],
"hedge": "난이도는 합성 기준 추정이라 실 정답률과 다를 수 있다."
},
{
"q_id": "Q04",
"unit": null,
"difficulty": "unknown",
"q_type": "unknown",
"evidence": [
{
"field": "stem",
"note": "지문이 비어 태깅 불가, 확인필요"
}
],
"hedge": "빈 문항이라 보류. 합성 기준."
},
{
"q_id": "Q09",
"unit": null,
"difficulty": "easy",
"q_type": "multiple_choice",
"evidence": [
{
"field": "unit_hint_raw",
"note": "'신규단원Z' 미정의라 단원 보류, 광합성은 생물 영역"
}
],
"hedge": "미정의 단원 힌트라 단원 보류. 합성 기준."
}
]difficulty·q_type enum, evidence min(1)은 Zod 로 자동 검증한다. q_type 이 choices 유무와 맞는지는 규칙으로 자동 검증하고, 단원·난이도 정합과 hedge 의 합성 기준 표기는 judge 와 수동 spot-check 로 검증한다.
근거: 사내 임직원 대상 LLM 기반 서비스·도구 기획, 개발