Download python/wakeup_axera_sdk/example.py from AXERA-TECH/WakeUp.axera: direct link, hf CLI and curl.
- Browser
- Download file 1.67 kB
-
https://huggingface.co/AXERA-TECH/WakeUp.axera/resolve/main/python/wakeup_axera_sdk/example.py
- Command line
-
hf download hf://AXERA-TECH/WakeUp.axera/python/wakeup_axera_sdk/example.py
-
curl -L -o example.py https://huggingface.co/AXERA-TECH/WakeUp.axera/resolve/main/python/wakeup_axera_sdk/example.py
1.67 kB
| """WakeUpModel 唤醒词检测示例:输入 int16 WAV,输出逐帧得分与触发结果。""" | |
| import argparse | |
| import json | |
| import sys | |
| from pathlib import Path | |
| import numpy as np | |
| import soundfile as sf | |
| sys.path.insert(0, str(Path(__file__).resolve().parents[1])) | |
| from wakeup_axera_sdk.inference import ModelSession | |
| from wakeup_axera_sdk.detector import detect_stream | |
| def main(): | |
| parser = argparse.ArgumentParser(description="wakeup_axera wake word detection example") | |
| parser.add_argument("--model", required=True, help="AXMODEL 路径") | |
| parser.add_argument("--input", required=True, help="int16 WAV (16k mono)") | |
| parser.add_argument("--threshold", type=float, default=0.615, help="DET_MODE_95=0.615 / DET_MODE_90=0.608") | |
| parser.add_argument("--output-dir", default="output", help="输出目录") | |
| args = parser.parse_args() | |
| data, sr = sf.read(args.input, dtype="int16") | |
| if sr != 16000: | |
| raise SystemExit(f"仅支持 16kHz,got {sr}") | |
| session = ModelSession(args.model) | |
| result = detect_stream(session, data, det_win=3, threshold=args.threshold) | |
| out_dir = Path(args.output_dir) | |
| out_dir.mkdir(parents=True, exist_ok=True) | |
| (out_dir / "result.json").write_text( | |
| json.dumps(result, ensure_ascii=False, indent=2), encoding="utf-8") | |
| print(f"backend: {session.backend}") | |
| print(f"frames: {len(result['frame_scores'])}") | |
| print(f"max wake score: {result['max_score']:.4f}") | |
| print(f"max 3-frame sum: {result['max_sum']:.4f} (threshold {args.threshold})") | |
| print(f"TRIGGERED: {result['triggered']}") | |
| print(f"saved to: {out_dir / 'result.json'}") | |
| if __name__ == "__main__": | |
| main() | |