OpenParable
Skip to content
← Back to skills

Character Repetition Filter

Documents
character_repetition_filter

Character Repetition Filter is an Agent Skill for documents published in the cas-bigdatalab/piflow repository on GitHub: a SKILL.md instruction file an AI agent can load to do this task.

字符重复比例过滤器。过滤文本中字符级n-gram重复比例不在指定范围内的样本。 当用户提到字符重复、重复比例过滤、文本重复过滤、清理重复内容等需求时使用此skill。 即使用户没有明确说出"字符重复",只要任务涉及根据文本中字符重复的程度来筛选数据, 就应该使用此skill。

View on GitHub ↗
QUICK START

How to use this skill

Bring this guide into your coding agent with a prompt tailored to the tool you use.

  1. Open your project in Codex.
  2. Copy and paste the prompt below.
  3. Review files and risks before approving any action.
Prompt to paste
Inspect the Agent Skill at https://github.com/cas-bigdatalab/piflow/blob/HEAD/workspace/skills/character_repetition_filter/SKILL.md and all supporting files. Report provenance, permissions, scripts, dependencies, and security risks. Propose an exact installation into .agents/skills/character-repetition-filter, but wait for my approval before writing files or running scripts.

Copying this prompt does not install or run the skill. Review third-party files before use.

Character Repetition Filter 字符重复比例过滤 Skill

功能概述

本skill根据文本中字符级n-gram的重复比例进行过滤,只保留重复比例在指定范围内的样本。 常用于过滤过度重复的文本、清理模板生成的低质量文本等场景。

触发条件

当用户请求以下任务时,应使用此skill:

  • 字符重复过滤
  • 重复比例筛选
  • 文本重复过滤
  • 清理重复内容
  • 过滤模板文本
  • 检测重复文本

核心参数说明

必需参数

参数说明
--input输入JSON文件路径
--output输出JSON文件路径

可选参数

参数说明默认值
--rep_len字符级n-gram重复长度10
--min_ratio最小重复比例0.0
--max_ratio最大重复比例0.5
--text_key文本字段的键名text

输入文件格式

[
  {"text": "正常文本内容"},
  {"text": "过度重复的文本aaaaaaa..."},
  {"text": "另一段正常文本"}
]

使用方法

默认参数过滤(rep_len=10, min_ratio=0.0, max_ratio=0.5)

python scripts/run_character_repetition_filter.py \
  --input ./input.json \
  --output ./output.json

自定义重复比例范围

python scripts/run_character_repetition_filter.py \
  --input ./input.json \
  --output ./output.json \
  --min_ratio 0.0 \
  --max_ratio 0.4

自定义n-gram长度

python scripts/run_character_repetition_filter.py \
  --input ./input.json \
  --output ./output.json \
  --rep_len 5

过滤示例

文本重复比例过滤结果 (0.0-0.4)
Today is Sund Sund Sund Sund Sund Sunda...高过滤
a v s e c s f e f g a a a a a a a a a a高过滤
,。、„""«»1»...低保留
中文也是一个字算一个长度低保留

输出示例

命令行输出:

[OK] Character repetition filtering completed!
   Rep length: 10
   Min ratio: 0.0
   Max ratio: 0.4
   Original documents: 4
   Filtered documents: 2
   Removed documents: 2
   Input file: ./input.json
   Output file: ./output.json

输出JSON格式:

[
  {"text": "过滤后保留的文本1"},
  {"text": "过滤后保留的文本2"}
]

环境要求

安装依赖: 本SKILL使用依赖 data_juicer,请在调用前安装好python环境并安装data_juicer:

pip install py-data-juicer

注意事项

  1. 重复比例计算:基于字符级n-gram的频率分布计算
  2. 默认值:保留重复比例在0.0-0.5之间的样本
  3. 过滤逻辑:只保留重复比例在 [min_ratio, max_ratio] 范围内的样本
  4. 适用场景:清理模板文本、过滤重复内容、检测低质量文本