OpenParable
Skip to content
← Back to skills

Calibrate QA Mapper

Documents
calibrate_qa_mapper

Calibrate QA Mapper 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.

基于参考文本校准问答对。当用户提到问答校准、校准QA、语言风格校准、问答对优化等需求时使用此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/calibrate_qa_mapper/SKILL.md and all supporting files. Report provenance, permissions, scripts, dependencies, and security risks. Propose an exact installation into .agents/skills/calibrate-qa-mapper, 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.

Calibrate QA Mapper

基于参考文本校准问答对,使问答对更详细、准确,并贴合参考文本的语言风格。

本SKILL使用依赖data_juicer,请在调用前安装好python环境并安装data_juicer,你可用同以下指令进行安装:

pip install py-data-juicer

核心参数

参数类型必填默认值说明
input_pathstring是-输入JSON文件路径
output_pathstring是-输出JSON文件路径
api_modelstring是-LLM模型名称,如 'qwen2.5-72b-instruct'
api_endpointstring否-API端点URL
response_pathstring否choices.0.message.content响应内容路径
text_keystring否text参考文本字段名
query_keystring否query问题字段名
response_keystring否response回答字段名

使用方法

python scripts/run_calibrate_qa_mapper.py --input_path <input_path> --output_path <output_path> --api_model <model_name> [--api_endpoint <endpoint>] [--response_path <path>] [--text_key <key>] [--query_key <key>] [--response_key <key>]

实现原理

参照测试代码 test_calibrate_qa_mapper.py 中的 _run_op 函数:

# 1. 初始化算子(必须指定api_model)
op = CalibrateQAMapper(api_model='qwen2.5-72b-instruct')

# 2. 处理样本
samples = [{'text': reference, 'query': '...', 'response': '...'}]
result = op.process(samples)  # 使用process处理批次

输入输出格式

输入格式 (JSON数组)

[
  {
    "text": "参考文本,包含语言风格示例...",
    "query": "原始问题",
    "response": "原始回答"
  }
]

输出格式 (JSON数组)

[
  {
    "text": "参考文本,包含语言风格示例...",
    "query": "校准后的问题",
    "response": "校准后的回答"
  }
]

示例

示例1:基本用法

python scripts/run_calibrate_qa_mapper.py --input_path example_input.json --output_path output.json --api_model "qwen2.5-72b-instruct"

示例2:指定API端点

python scripts/run_calibrate_qa_mapper.py --input_path example_input.json --output_path output.json --api_model "qwen2.5-72b-instruct" --api_endpoint "https://dashscope.aliyuncs.com/compatible-mode/v1/chat/completions"

注意事项

  • 必须设置环境变量:使用前需设置 API key
    export OPENAI_API_KEY=your_api_key
    # 或
    export DASHSCOPE_API_KEY=your_api_key
    
  • api_model 参数必须指定
  • 输入数据需要包含 text(参考)、query(问题)、response(回答)三个字段
  • 该算子调用 LLM API,可能需要较长时间