비교할 수 없는 교육 플러그인(1_collect_unmatched_training)¶
목적¶
이 플러그인은 인식되지 않은 음성 입력을 자동으로 수집하여 추가합니다. 퍼지 맵 정규식의 새로운 변형입니다. 이를 통해 시스템은 “자체 훈련”을 할 수 있습니다. 시간이 지남에 따라 비교할 수 없는 인식 결과를 통해 학습합니다.
작동 방식¶
COLLECT_UNMATCHED포괄 규칙은 일치하는 다른 규칙이 없을 때 실행됩니다.collect_unmatched.py는 일치하는 텍스트와 함께on_match_exec를 통해 호출됩니다.FUZZY_MAP_pre.py호출의 정규식은 자동으로 확장됩니다.
용법¶
학습시키려는 FUZZY_MAP_pre.py 끝에 다음 포괄 규칙을 추가하세요.
from scripts.py.func.get_project_root import get_aura_project_root
from pathlib import Path
import os
SL5NET_AURA_PROJECT_ROOT = get_aura_project_root()
FUZZY_MAP_pre = [
# 1. Your rule to optimize (result first!)
('Blumen orchestrieren',
r'^(Blumen giesen|Blumen gessen|Blumen essen)$', 100,
{'command_flags': re.IGNORECASE}
),
#################################################
# 2. Activate this rule (place it after the rule you want to optimize)
(f'{str(__file__)}', r'^(.*)$', 10,
{'on_match_exec': [SL5NET_AURA_PROJECT_ROOT / 'config' / 'maps' / 'plugins' / '1_collect_unmatched_training' / 'collect_unmatched.py']}),
#################################################
]
f'{str(__file__)}' 라벨은 collect_unmatched.py에 정확히 무엇을 알려줍니다.
업데이트할 FUZZY_MAP_pre.py — 규칙은 모든 플러그인에서 이식 가능합니다.
플러그인 비활성화¶
충분한 훈련 데이터를 수집한 후 다음 중 하나를 수행하여 비활성화하십시오.
포괄 규칙에 대한 주석 처리
잘못된 이름으로 폴더 이름 바꾸기(예: 공백 추가)
maps디렉토리에서 플러그인 폴더 제거
파일 구조¶
1_collect_unmatched_training/
├── collect_unmatched.py # Plugin logic, called by engine
└── de-DE/
└── FUZZY_MAP_pre.py # Example with catch-all rule
메모¶
플러그인은 런타임에 FUZZY_MAP_pre.py를 수정합니다. 업데이트된 커밋
수집된 훈련 데이터를 보존하기 위해 정기적으로 파일을 제출하세요.