Funasr-Punctuation-Restore
# Funasr-Punctuation-Restore
**功能**:使用 FunASR ct-punc 模型一键恢复标点(支持文本/文件/目录)。目录模式会在同级创建结构完全一致的 `_punctuated` 镜像目录(原目录不变)。支持 GPU 加速 + 自动清理显存。
### 触发时机(Triggers)
- 用户提供一段没有标点或标点不全的文本,要求“加标点”“恢复标点”“整理标点”。
- 用户提供 .txt 文件路径或整个文件夹,要求批量处理。
- 常用于 ASR(语音转文字)后的后处理场景。
- 支持直接粘贴文本、单个文件、或整个目录。
### 支持的模型(推荐顺序)
1. **punc_ct-transformer_cn-en-common-vocab471067-large** → 基于 Transformer 的中英文混合文本标点恢复模型,适合 ASR 结果自动加标点。
### 参数提取指南
当决定调用此技能时,请从用户上下文中提取以下参数:
1. **`--text "<文本内容>"`** (如果用户直接提供了文本)
2. **`--file "<文件路径>"`** (如果用户提供了单个 .txt 文件路径)
3. **`--dir "<目录路径>"`** (如果用户提供了文件夹路径,会批量处理)
### 执行步骤
1. **解析输入**:识别用户是提供了文本、单个文件,还是整个目录。
2. **默认目标**:若未指定输出路径,默认在输入同级创建 `[原文件名]_punctuated.txt` 或 `_punctuated` 目录(原文件/目录保持不变)。
3. **调用命令**:使用以下兼容性命令启动脚本(优先 python3,失败则 python)。脚本会自动创建虚拟环境、检测 GPU 并安装对应版本。
```bash
(python3 scripts/punctuation_restore.py (--text "<文本内容>" | --file "<文件路径>" | --dir "<目录路径>")) || (python scripts/punctuation_restore.py (--text "<文本内容>" | --file "<文件路径>" | --dir "<目录路径>"))
标签
skill
ai