OpenParable
Skip to content
← Back to skills

Specified Field Filter

Documents
specified_field_filter

Specified Field 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.

指定字段过滤器。根据指定的字段信息进行筛选。支持对JSONL格式数据指定字段进行过滤。 本SKILL使用依赖data_juicer,请在调用前安装好python环境并安装data_juicer,你可用以下指令进行安装: pip install py-data-juicer 当用户提到字段过滤、字段值筛选、元数据过滤、指定字段过滤、按字段值过滤等需求时使用此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/specified_field_filter/SKILL.md and all supporting files. Report provenance, permissions, scripts, dependencies, and security risks. Propose an exact installation into .agents/skills/specified-field-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.

功能概述

该算子根据指定字段的值进行过滤,保留字段值在目标值列表中的样本。支持嵌套字段和列表字段。

核心参数

参数类型必填默认值说明
input_pathstring是-输入数据文件路径 (JSON/JSONL格式)
output_pathstring是-输出数据文件路径 (JSONL格式)
field_keystring是-字段路径,用点号分隔,如 'meta.suffix' 或 'meta.path.test'
target_valuelist是-目标值列表,如 ['.pdf', '.txt']
num_procint否1并行处理的进程数

输入数据格式

输入文件应为 JSON 或 JSONL 格式,每行包含一个样本,样本需包含指定的字段:

{"text": "文本内容", "meta": {"suffix": ".pdf", "star": 50}}

支持嵌套字段:

{"text": "文本内容", "meta": {"path": {"test": ["txt", "json"]}}}

输出数据格式

输出为 JSONL 格式,每行一个符合条件的样本,保持原始字段结构。

使用示例

命令行调用

# 根据 meta.suffix 字段过滤
python scripts/run_specified_field_filter.py \
  --input_path /path/to/input.jsonl \
  --output_path /path/to/output.jsonl \
  --field_key meta.suffix \
  --target_value .pdf \
  --target_value .txt

# 根据嵌套列表字段过滤
python scripts/run_specified_field_filter.py \
  --input_path /path/to/input.jsonl \
  --output_path /path/to/output.jsonl \
  --field_key meta.path.test \
  --target_value pdf \
  --target_value txt \
  --target_value json

参数说明

  • --input_path: 输入文件路径
  • --output_path: 输出文件路径
  • --field_key: 字段路径,支持嵌套(如 meta.suffix)
  • --target_value: 目标值,可重复指定多个值
  • --num_proc: 并行进程数,默认1

注意事项

  1. field_key 使用点号分隔多级字段(如 meta.path.test)
  2. 如果字段值是列表,则列表中所有值都必须在 target_value 中才保留
  3. 这是 NON_STATS_FILTERS,不需要计算统计信息,处理效率较高