에이전트가 시험을 돌리고, 데이터를 분석하고, 문서와 리포트를 쓴다. 다만 제어 루프 안에는 들어가지 않는다 — 그 선을 어디에 긋는지가 이 설계의 전부다.
에이전트를 장비 옆에 두지 않는다. 서비스 계층 위에 두고, 아래로는 도구 호출로만 닿게 한다. 그래야 에이전트가 느리거나 죽어도 시험이 계속된다.
에이전트를 보드에 올리거나, 브로커에 직접 붙이거나, cutoff 판정을 맡기고 싶어지는 순간이 온다. 전부 거절한다. 판정을 위로 올리는 순간 네트워크·추론 지연이 안전에 들어온다. 에이전트는 "무엇을 할지 정하는" 쪽이고, 보드는 "안전하게 멈추는" 쪽이다.
에이전트가 할 수 있는 일은 도구 목록이 전부다. 도구를 안 주면 못 한다. 그래서 설계는 "무엇을 시킬까"가 아니라 "어떤 도구를 줄까"로 한다.
| 도구 묶음 | 예 | 승인 | 실패해도 |
|---|---|---|---|
| 읽기 | 채널 상태 · 이력 조회 · 문서 검색 | 불필요 | 답이 부실해진다 |
| 분석 | 용량 추이 · SoH 추정 · 이상 구간 탐지 | 불필요 | 다시 돌리면 된다 |
| 문서 · 리포트 | 초안 작성 · 저장 | 발행 시 | 초안이 남는다 |
| 제어 — 정지 | 채널 정지 · 전체 정지 | 🔴 불필요 | 사람이 누른다 |
| 제어 — 기동 · 하달 | 시나리오 시작 · 스텝 변경 | 🔴 필수 | 대기 상태로 남는다 |
정지는 승인 없이, 기동은 승인 있어야. 에이전트의 자율은 안전한 방향으로만 열어 둔다. 이상을 감지하고도 사람을 기다리느라 못 멈추면 에이전트를 둔 의미가 없고, 반대로 사람 없이 통전을 시작할 수 있으면 그것은 무인 운전이지 조력자가 아니다.
조력자는 챗봇이 아니다. 부를 때만 오는 것과 스스로 도는 것이 함께 있어야 "장비를 관리한다"가 성립한다.
| ① 대화형 | ② 이벤트 | ③ 정기 | |
|---|---|---|---|
| 깨우는 것 | 사람의 질문 | 알람 · 스텝 완료 · 임계 초과 | 스케줄 |
| 산출 | 답변 · 근거 링크 | 원인 분석 · 정지 제안 | 리포트 초안 |
| 사람 개입 | 대화 중 | 제안 승인 | 발행 전 검토 |
| 없으면 | 사람이 직접 찾는다 | 🔴 알람을 놓친다 | 리포트를 손으로 쓴다 |
①과 ③은 편의다. ②만이 "AI 가 장비를 관리한다"에 해당한다 — 사람이 안 보고 있을 때 이상을 잡아내는 것. 만들 때 ②를 뒤로 미루면 조력자가 그냥 문서 도우미가 된다.
한 번에 자율을 주지 않는다. 등급을 올려 가며 신뢰를 쌓는다. 등급은 기관·장비별로 따로 매긴다 — 한 곳에서 잘 됐다고 전부 올리지 않는다.
| 등급 | 할 수 있는 것 | 올리는 조건 |
|---|---|---|
| L0 관찰 | 읽기 · 분석 · 답변만. 아무것도 바꾸지 않는다 | 시작은 여기서 |
| L1 제안 | + 문서·리포트 초안, 제어 제안 (사람이 승인) | L0 에서 분석이 실제로 맞았다는 확인 |
| L2 제한 자율 | + 정지는 스스로. 기동은 여전히 승인 | 🔴 오탐률 확인 후. 잦은 오정지는 시험을 망친다 |
| L3 완전 자율 | — | 🔴 채택하지 않는다. 통전은 사람 책임으로 남긴다 |
cutoff 판정·limits 클램프는 보드가 한다. 에이전트는 그 위에서 "무엇을 할지"만 정한다.
리포트의 모든 수치는 도구 출력 인용. 근거 쿼리를 함께 남겨 사람이 되짚을 수 있게 한다.
에이전트의 조작을 사람 이름으로 기록하지 않는다. 감사 로그에서 사람과 AI 를 구분할 수 있어야 한다.
게이트를 에이전트 안에 두면 프롬프트로 뚫린다. 서버가 "승인된 요청인가"를 판정한다.
사용자 권한과 같은 규칙을 적용한다. UNIST 사용자의 질문에 KAIST 데이터를 쓰지 않는다.
근거를 못 찾으면 추정하지 말고 "이력이 없다"고 답한다. 시험 데이터에서 그럴듯한 오답이 가장 위험하다.
AI 가 쓴 문서는 작성자 = AI 로 표시하고 사람이 발행해야 확정된다.
모델·API 가 끊겨도 웹과 장비는 그대로 동작해야 한다. 조력자는 부가 기능이다.
| # | 질문 | 왜 지금 |
|---|---|---|
| 1 | 모델을 어디서 돌리나 — 외부 API / 사내 서버 / 온프레미스 | 시험 데이터가 밖으로 나가도 되는지가 먼저다. 고객 데이터면 계약 문제가 된다 |
| 2 | 조력자를 메뉴로 둘까 떠 있는 버튼으로 둘까 | ①대화형은 어느 화면에서든 부르는 성격이다 |
| 3 | ②이벤트 구동을 어느 알람부터 켜나 | 전부 켜면 소음이 된다. 한두 개로 시작해 오탐률을 본다 |
| 4 | 리포트 서식이 정해져 있나 | 기존 30KW 리포트 양식이 있으면 그것을 따른다 |
| 5 | 시작 등급 — L0 인가 L1 인가 | L1 은 문서 초안까지 준다. 초기 효용이 크지만 검토 부담이 생긴다 |
근거 — A01 메뉴 트리(AI조력자) · A13 단위 작업 MQTT 계약(step/set · hold_ms 워치독) ·
A05 전체 아키텍처 불변식 4(보드가 최종 클램프) · A12 §03(브로커가 제어 경로에 들어올 때의 대가) ·
04-계정·그룹·권한 모델(기관 경계)
관련 — A01 메뉴 트리 · A02 화면 설계(기관·사용자)