Files
HC900-Crawler/docs/LLM-채팅-태그-구조-문제점.md
windpacer d88784635e docs: 작업지시·진단·아키텍처 설계 문서 추가
온도프로파일/PV일관성/PointBuilder/history 작업지시, 신호태그·스팀유량 진단, 베이직아키텍처 재설계, MSDS, LLM채팅 구조 등.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-10 08:12:01 +09:00

2.2 KiB

LLM 채팅 태그 구조 문제점

발견일: 2026-06-09

문제 요약

LLM 채팅에서 "6-1차 플랜트(P6-1)의 현재 운전 상황" 조회 시 데이터 없음. 다음 4가지 원인이 중첩됨.


문제 1 (해결): MCP 서버 실행 경로

원인: ~/.config/opencode/opencode.json에서 ExperionCrawler/mcp-server(구버전)로 설정되어 있었음. 구버전은 search_path=hc900이 없어 v_tag_summary를 찾지 못함.

조치: hc900_ax/mcp-server로 경로 변경 (opencode.json 수정)

문제 2 (해결): v_tag_summary 뷰 접미사 대소문자

원인: 뷰가 .pv(소문자)로 JOIN하지만 realtime_table.PV(대문자) → 모든 PV=NULL

조치: 뷰 재정의 — .PV, .SP, .OP (대문자 접미사)

문제 3 (해결): v_plant_running_state* 뷰 영역/패턴 대소문자

원인:

  • split_part(area, '|', 2)가 단축 영역코드(P6)에서 빈 문자열 반환
  • base_tag ~~ 'p-%'가 대문자 태그명(P-6101)에 불일치

조치:

  • COALESCE + 영역코드 정규화 (두 형식 모두 처리)
  • ~~* (ILIKE)로 대소문자 무시 매칭

문제 4 (해결): tag_metadatasub_area 미등록

원인: build_register_map.pysub_area attribute를 생성하지 않음

조치: 태그번호 prefix 기반 sub_area 자동 매핑 스크립트 실행 → 802건 등록

문제 5 (진행중): 실시간 데이터 부족

현상: event_history_table에 P6-1 이벤트 없음

원인: HC900 게이트웨이 가동 2일차, 디지털 이벤트 수집 미설정

조치: 시간이 해결할 문제


현재 상태

항목 수정 전 수정 후
v_tag_summary PV not null 0건 (전체 NULL) P6 118건 전부 정상
v_tag_summary sub_area 0건 345건 (전 area)
v_plant_running_state 빈 결과 P6=16펌프/5RUNNING
find_tags(sub_area='P6-1') 작동 불가 재시작 후 정상 예상
라이브 데이터 2일치 충분치 않음

필요조치

  • opencode 재시작 → ~/.config/opencode/opencode.json 경로변경 반영
  • (선택) build_register_map.py에 sub_area 생성 로직 추가