Agent SkillsOpenDCAI/DataFlow-WebUI › prompted-evaluator

prompted-evaluator

GitHub

使用LLM对文本数据进行1-5分质量评分,并将结果写入新列,保留所有行。适用于无需过滤行的文本评估场景。

skills/canonical/core_text/eval/prompted-evaluator/SKILL.md OpenDCAI/DataFlow-WebUI

Trigger Scenarios

需要对大量文本进行LLM打分 希望保留原始数据并添加评分列

Install

npx skills add OpenDCAI/DataFlow-WebUI --skill prompted-evaluator -g -y
More Options

Non-standard path

npx skills add https://github.com/OpenDCAI/DataFlow-WebUI/tree/main/skills/canonical/core_text/eval/prompted-evaluator -g -y

Use without installing

npx skills use OpenDCAI/DataFlow-WebUI@prompted-evaluator

指定 Agent (Claude Code)

npx skills add OpenDCAI/DataFlow-WebUI --skill prompted-evaluator -a claude-code -g -y

安装 repo 全部 skill

npx skills add OpenDCAI/DataFlow-WebUI --all -g -y

预览 repo 内 skill

npx skills add OpenDCAI/DataFlow-WebUI --list

SKILL.md

Frontmatter
{
    "name": "prompted-evaluator",
    "description": "Reference documentation for the PromptedEvaluator operator.\nUse when: scoring text quality with LLM without filtering rows."
}

PromptedEvaluator Operator Reference

PromptedEvaluator uses an LLM to score each row of text (1-5) and writes the score into a new column without deleting any rows.

1. Import

from dataflow.operators.core_text import PromptedEvaluator

2. Constructor

PromptedEvaluator(
    llm_serving=llm_serving,
    system_prompt="Please evaluate the quality of this text on a scale from 1 to 5.",
)
Parameter Required Default Description
llm_serving Yes None LLM service object
system_prompt No "Please evaluate..." System prompt defining scoring criteria (1-5 scale)

3. run() Signature

op.run(
    storage=self.storage.step(),
    input_key="raw_content",
    output_key="eval",
)
# returns: output_key string
Parameter Required Default Description
storage Yes None Storage step object
input_key No "raw_content" Column containing text to evaluate
output_key No "eval" Column to write LLM scores into

4. Usage Example

from dataflow.operators.core_text import PromptedEvaluator
from dataflow.serving import APILLMServing_request
from dataflow.utils.storage import FileStorage

class MyPipeline:
    def __init__(self):
        self.storage = FileStorage(
            first_entry_file_name="./data/input.jsonl",
            cache_path="./cache",
            file_name_prefix="step",
            cache_type="jsonl"
        )

        self.llm_serving = APILLMServing_request(
            api_url="https://api.openai.com/v1/chat/completions",
            key_name_of_api_key="DF_API_KEY",
            model_name="gpt-4o",
            max_workers=10
        )

        self.evaluator = PromptedEvaluator(
            llm_serving=self.llm_serving,
            system_prompt="Evaluate text quality on a scale from 1 to 5."
        )

    def forward(self):
        self.evaluator.run(
            storage=self.storage.step(),
            input_key="content",
            output_key="quality_score"
        )

if __name__ == "__main__":
    pipeline = MyPipeline()
    pipeline.forward()

5. Runtime Logic

  1. Read DataFrame from storage.
  2. Extract text from input_key column.
  3. For each row, call LLM with system_prompt to score the text (1-5).
  4. Parse LLM response to extract numeric score.
  5. Write scores to output_key column.
  6. All rows are kept (no filtering).
  7. Return output_key string.

6. Key Differences from PromptedFilter

  • PromptedEvaluator: Writes scores to output_key column, keeps all rows
  • PromptedFilter: Writes scores and deletes rows below threshold in one step

Use PromptedEvaluator + GeneralFilter for two-step scoring and filtering.

Version History

  • 2e95d40 Current 2026-08-27 09:03

Same Skill Collection

skills/canonical/core_text/eval/bench-dataset-evaluator-question/SKILL.md
skills/canonical/core_text/eval/bench-dataset-evaluator/SKILL.md
skills/canonical/core_text/eval/text2qa-sample-evaluator/SKILL.md
skills/canonical/core_text/eval/unified-bench-dataset-evaluator/SKILL.md
skills/canonical/core_text/filter/general-filter/SKILL.md
skills/canonical/core_text/filter/kcentergreedy-filter/SKILL.md
skills/canonical/core_text/filter/prompted-filter/SKILL.md
skills/canonical/core_text/generate/bench-answer-generator/SKILL.md
skills/canonical/core_text/generate/chunked-prompted-generator/SKILL.md
skills/canonical/core_text/generate/embedding-generator/SKILL.md
skills/canonical/core_text/generate/format-str-prompted-generator/SKILL.md
skills/canonical/core_text/generate/prompted-generator/SKILL.md
skills/canonical/core_text/generate/retrieval-generator/SKILL.md
skills/canonical/core_text/generate/text2multihopqa-generator/SKILL.md
skills/canonical/core_text/refine/pandas-operator/SKILL.md
skills/canonical/core_text/refine/prompted-refiner/SKILL.md
skills/canonical/core_text/SKILL.md
skills/canonical/dataflow-dev/SKILL.md
skills/canonical/dataflow-operator-builder/SKILL.md
skills/canonical/generating-dataflow-pipeline/SKILL.md
skills/canonical/prompt-template-builder/SKILL.md
skills/canonical/core_text/generate/random-domain-knowledge-row-generator/SKILL.md

Metadata

Files
0
Version
2e95d40
Hash
29a89961
Indexed
2026-08-27 09:03

Home - Wiki
Copyright © 2011-2026 iteam. Current version is 2.155.2. UTC+08:00, 2026-08-27 21:11
浙ICP备14020137号-1 $Map of visitor$