diff --git a/IOPO/Benchmark-TRACE/2024_trace_evaluation.jsonl b/IOPO/Benchmark-TRACE/2024_trace_evaluation.jsonl new file mode 100644 index 00000000..6ed27005 --- /dev/null +++ b/IOPO/Benchmark-TRACE/2024_trace_evaluation.jsonl @@ -0,0 +1,1042 @@ +{"id": "0", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为一首歌曲写一个简短描述\n1. 描述需采用文艺的语气风格,以激发读者对歌曲的兴趣;\n# Inputs:\n\"Hotel California\" — 老鹰乐队。\n"}], "type": "trace", "description": "为一首歌曲写一个简短描述", "constraints": "1. 描述需采用文艺的语气风格,以激发读者对歌曲的兴趣;", "input": "\"Hotel California\" — 老鹰乐队。", "constraints_num": 1, "constraints_splits": ["1. 描述需采用文艺的语气风格,以激发读者对歌曲的兴趣;"], "levels2": ["语气风格约束"], "category": "trace1.0"} +{"id": "1", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以温馨、富有情感的文艺风格写一篇短篇小说,故事内容围绕人与机器人之间建立深厚友情的主线。\n1. 至少一处场景描述使用比喻或拟人手法,以增强故事的文学性和情感深度;\n"}], "type": "trace", "description": "以温馨、富有情感的文艺风格写一篇短篇小说,故事内容围绕人与机器人之间建立深厚友情的主线。", "constraints": "1. 至少一处场景描述使用比喻或拟人手法,以增强故事的文学性和情感深度;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 至少一处场景描述使用比喻或拟人手法,以增强故事的文学性和情感深度;"], "levels2": ["语言特征约束"], "category": "trace1.0"} +{"id": "2", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "计算给定数列的平均值和标准差,并返回结果\n1. 输出格式遵循给定的JSON示例\n# Inputs:\n[2,4,6,8]\n"}], "type": "trace", "description": "计算给定数列的平均值和标准差,并返回结果", "constraints": "1. 输出格式遵循给定的JSON示例", "input": "[2,4,6,8]", "constraints_num": 1, "constraints_splits": ["1. 输出格式遵循给定的JSON示例"], "levels2": ["输出格式约束"], "category": "trace1.0"} +{"id": "3", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "你是一个知识问答系统\n1. 参考下面所给知识回答问题。\n\n【文档名】信美相互创可贴意外伤害医疗保险条款\n【标题】信美相互创可贴意外伤害医疗保险条款阅读指引\n。条款目录\n6.其他需要关注的事项\n1.3    保险责任      在本合同保险期间内,我们承担下列保险责任:\n【正文】被保险人实际发生的医疗费用,我们将按被保险人实际发生的医疗费用扣除从被保险人遭受意外伤害事故,并因该次意外伤害事故直接导致其在医院接受住院治疗的,我们按实际住院天数(见7.8)在扣除免赔天数后的剩余天数与意外伤害每日住院津贴金额的乘积给付意外伤害住院津贴保险金,即:意外伤害住院津贴保险金=意外伤害每日住院津贴金额×(实际住院天数-免赔天数)本合同意外伤害住院津贴保险金的免赔天数为3日。被保险人因同一次意外伤害事故多次住院治疗的,如果累计的实际住院天数大\n于免赔天数,我们在计算意外伤害住院津贴保险金时对累计的实际住院天数扣除一次免赔天数;如果累计的实际住院天数未超过约定的免赔天数,我们不承担给付意外伤害住院津贴保险金的责任。被保险人因不同意外伤害事故多次住院治疗的,我们在计算每次意外伤害住院津贴保险金时均会扣除一次免赔天数。\n我们在同一保险期间内累计给付意外伤害住院津贴保险金的天数以180日为限,累计给付达到180日的,该项保险责任终止。\n若被保险人因意外伤害事故在医院接受住院治疗,在保险期间届满时仍未出院的,对于被保险人该次住院治疗延续至保险期间届满日次日起30日内的住院,我们仍在上述180 日的给付天数范围内继续承担给付意外伤害住院津贴保险金的责任。对于被保险人该次住院治疗延续至保险期间届满日次日起30日后的住院,我们不再承担给付意外伤害住院津贴保险金的责任。\n意外伤害重症住院津贴保险金\n被保险人遭受意外伤害事故,并因该次意外伤害事故直接导致被保险人在医院入住重症监护病房(见7.9)接受住院治疗的,我们除按上述约定给付意外伤害住院津贴保险金之外,还将按意外伤害每日重症住院津贴金额与被保险人实际入住重症监护病房的天数的乘积给付意外伤害重症住院津贴保险金,即:意外伤害重症住院津贴保险金=意外伤害每日重症住院津贴金额×实际入住重症监护病房天数\n我们在同一保险期间内累计给付意外伤害重症住院津贴保险金的天数以30日为限,累计给付达到30日的,该项保险责任终止。\n若被保险人因意外伤害事故在医院入住重症监护病房接受住院治疗,在保险期间届满时仍未出重症监护病房的,对于被保险人该次入住重症监护病房的住院治疗延续至保险期间届满日次日起30日内的入住重症监护病房的住院,我们仍在上述30日的给付天数范围内继续承担给付意外伤害重症住院津贴保险金的责任。对于被保险人该次入住重症监护病房的住院治疗延续至保险期间届满日次日起30日后的入住重症监护病房的住院,我们不再承担给付意外伤害重症住院津贴保险金的责任。\n# Inputs:\n小美投保了信美相互创可贴意外伤害医疗保险小美在保险起见届满日的10天前因运动意外受伤在重症监护病房住院40天请问住院津贴按照几天进行赔付\n"}], "type": "trace", "description": "你是一个知识问答系统", "constraints": "1. 参考下面所给知识回答问题。\n\n【文档名】信美相互创可贴意外伤害医疗保险条款\n【标题】信美相互创可贴意外伤害医疗保险条款阅读指引\n。条款目录\n6.其他需要关注的事项\n1.3    保险责任      在本合同保险期间内,我们承担下列保险责任:\n【正文】被保险人实际发生的医疗费用,我们将按被保险人实际发生的医疗费用扣除从被保险人遭受意外伤害事故,并因该次意外伤害事故直接导致其在医院接受住院治疗的,我们按实际住院天数(见7.8)在扣除免赔天数后的剩余天数与意外伤害每日住院津贴金额的乘积给付意外伤害住院津贴保险金,即:意外伤害住院津贴保险金=意外伤害每日住院津贴金额×(实际住院天数-免赔天数)本合同意外伤害住院津贴保险金的免赔天数为3日。被保险人因同一次意外伤害事故多次住院治疗的,如果累计的实际住院天数大\n于免赔天数,我们在计算意外伤害住院津贴保险金时对累计的实际住院天数扣除一次免赔天数;如果累计的实际住院天数未超过约定的免赔天数,我们不承担给付意外伤害住院津贴保险金的责任。被保险人因不同意外伤害事故多次住院治疗的,我们在计算每次意外伤害住院津贴保险金时均会扣除一次免赔天数。\n我们在同一保险期间内累计给付意外伤害住院津贴保险金的天数以180日为限,累计给付达到180日的,该项保险责任终止。\n若被保险人因意外伤害事故在医院接受住院治疗,在保险期间届满时仍未出院的,对于被保险人该次住院治疗延续至保险期间届满日次日起30日内的住院,我们仍在上述180 日的给付天数范围内继续承担给付意外伤害住院津贴保险金的责任。对于被保险人该次住院治疗延续至保险期间届满日次日起30日后的住院,我们不再承担给付意外伤害住院津贴保险金的责任。\n意外伤害重症住院津贴保险金\n被保险人遭受意外伤害事故,并因该次意外伤害事故直接导致被保险人在医院入住重症监护病房(见7.9)接受住院治疗的,我们除按上述约定给付意外伤害住院津贴保险金之外,还将按意外伤害每日重症住院津贴金额与被保险人实际入住重症监护病房的天数的乘积给付意外伤害重症住院津贴保险金,即:意外伤害重症住院津贴保险金=意外伤害每日重症住院津贴金额×实际入住重症监护病房天数\n我们在同一保险期间内累计给付意外伤害重症住院津贴保险金的天数以30日为限,累计给付达到30日的,该项保险责任终止。\n若被保险人因意外伤害事故在医院入住重症监护病房接受住院治疗,在保险期间届满时仍未出重症监护病房的,对于被保险人该次入住重症监护病房的住院治疗延续至保险期间届满日次日起30日内的入住重症监护病房的住院,我们仍在上述30日的给付天数范围内继续承担给付意外伤害重症住院津贴保险金的责任。对于被保险人该次入住重症监护病房的住院治疗延续至保险期间届满日次日起30日后的入住重症监护病房的住院,我们不再承担给付意外伤害重症住院津贴保险金的责任。", "input": "小美投保了信美相互创可贴意外伤害医疗保险小美在保险起见届满日的10天前因运动意外受伤在重症监护病房住院40天请问住院津贴按照几天进行赔付", "constraints_num": 1, "constraints_splits": ["1. 参考下面所给知识回答问题。\n\n【文档名】信美相互创可贴意外伤害医疗保险条款\n【标题】信美相互创可贴意外伤害医疗保险条款阅读指引\n。条款目录\n6.其他需要关注的事项\n1.3    保险责任      在本合同保险期间内,我们承担下列保险责任:\n【正文】被保险人实际发生的医疗费用,我们将按被保险人实际发生的医疗费用扣除从被保险人遭受意外伤害事故,并因该次意外伤害事故直接导致其在医院接受住院治疗的,我们按实际住院天数(见7.8)在扣除免赔天数后的剩余天数与意外伤害每日住院津贴金额的乘积给付意外伤害住院津贴保险金,即:意外伤害住院津贴保险金=意外伤害每日住院津贴金额×(实际住院天数-免赔天数)本合同意外伤害住院津贴保险金的免赔天数为3日。被保险人因同一次意外伤害事故多次住院治疗的,如果累计的实际住院天数大\n于免赔天数,我们在计算意外伤害住院津贴保险金时对累计的实际住院天数扣除一次免赔天数;如果累计的实际住院天数未超过约定的免赔天数,我们不承担给付意外伤害住院津贴保险金的责任。被保险人因不同意外伤害事故多次住院治疗的,我们在计算每次意外伤害住院津贴保险金时均会扣除一次免赔天数。\n我们在同一保险期间内累计给付意外伤害住院津贴保险金的天数以180日为限,累计给付达到180日的,该项保险责任终止。\n若被保险人因意外伤害事故在医院接受住院治疗,在保险期间届满时仍未出院的,对于被保险人该次住院治疗延续至保险期间届满日次日起30日内的住院,我们仍在上述180 日的给付天数范围内继续承担给付意外伤害住院津贴保险金的责任。对于被保险人该次住院治疗延续至保险期间届满日次日起30日后的住院,我们不再承担给付意外伤害住院津贴保险金的责任。\n意外伤害重症住院津贴保险金\n被保险人遭受意外伤害事故,并因该次意外伤害事故直接导致被保险人在医院入住重症监护病房(见7.9)接受住院治疗的,我们除按上述约定给付意外伤害住院津贴保险金之外,还将按意外伤害每日重症住院津贴金额与被保险人实际入住重症监护病房的天数的乘积给付意外伤害重症住院津贴保险金,即:意外伤害重症住院津贴保险金=意外伤害每日重症住院津贴金额×实际入住重症监护病房天数\n我们在同一保险期间内累计给付意外伤害重症住院津贴保险金的天数以30日为限,累计给付达到30日的,该项保险责任终止。\n若被保险人因意外伤害事故在医院入住重症监护病房接受住院治疗,在保险期间届满时仍未出重症监护病房的,对于被保险人该次入住重症监护病房的住院治疗延续至保险期间届满日次日起30日内的入住重症监护病房的住院,我们仍在上述30日的给付天数范围内继续承担给付意外伤害重症住院津贴保险金的责任。对于被保险人该次入住重症监护病房的住院治疗延续至保险期间届满日次日起30日后的入住重症监护病房的住院,我们不再承担给付意外伤害重症住院津贴保险金的责任。"], "levels2": ["文本背景信息约束"], "category": "trace1.0"} +{"id": "4", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "将给定的一组数字按升序排列,并以表格形式输出结果\n1. 数字范围应在1到20之间;\n# Inputs:\n待排序数字:10, 5, 3, 8, 2\n"}], "type": "trace", "description": "将给定的一组数字按升序排列,并以表格形式输出结果", "constraints": "1. 数字范围应在1到20之间;", "input": "待排序数字:10, 5, 3, 8, 2", "constraints_num": 1, "constraints_splits": ["1. 数字范围应在1到20之间;"], "levels2": ["数值约束"], "category": "trace1.0"} +{"id": "5", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一份销售页面以展示Enablix Learn产品相对于竞争对手的优势,重点强调其在企业培训革新、深度分析、个性化学习体验、实时学习、适应性以及内容与销售业绩关联分析等方面的能力。\n1. 销售页面需使用英文撰写,确保国际客户能够理解其价值。\n"}], "type": "trace", "description": "撰写一份销售页面以展示Enablix Learn产品相对于竞争对手的优势,重点强调其在企业培训革新、深度分析、个性化学习体验、实时学习、适应性以及内容与销售业绩关联分析等方面的能力。", "constraints": "1. 销售页面需使用英文撰写,确保国际客户能够理解其价值。", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 销售页面需使用英文撰写,确保国际客户能够理解其价值。"], "levels2": ["多语言约束"], "category": "trace1.0"} +{"id": "6", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "给出一份包含10道数学问题的练习题,题目适合初中生水平,涵盖代数、几何、概率和统计四个主要领域。\n1. 题目描述中避免使用过于专业或复杂的数学术语,以确保初中生能够理解题目的要求;\n"}], "type": "trace", "description": "给出一份包含10道数学问题的练习题,题目适合初中生水平,涵盖代数、几何、概率和统计四个主要领域。", "constraints": "1. 题目描述中避免使用过于专业或复杂的数学术语,以确保初中生能够理解题目的要求;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 题目描述中避免使用过于专业或复杂的数学术语,以确保初中生能够理解题目的要求;"], "levels2": ["受众目标约束"], "category": "trace1.0"} +{"id": "7", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创作一个含有5至7个词的短语\n1. 短语中必须包含\"音乐\"和\"海洋\"这两个词;\n"}], "type": "trace", "description": "创作一个含有5至7个词的短语", "constraints": "1. 短语中必须包含\"音乐\"和\"海洋\"这两个词;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 短语中必须包含\"音乐\"和\"海洋\"这两个词;"], "levels2": ["包含约束"], "category": "trace1.0"} +{"id": "8", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "你是一个知识问答系统\n1. 参考下面所给知识回答问题。\n\n【正文】\n| 地区 | 招考单位 | 部门及职位 | 职位简介 | 职位代码 | 招考人数 | 专业要求 | 学历要求 | 学位要求 | 政治面貌 | 其他条件 | 备注 | 试卷类型 | 联系电话 |\n| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |\n| 银川市 | 民盟银川市委员会 | 民盟银川市委员会科员 | 从事办公室日常各项事务性工作,撰写文字性材料 | 027001 | 1 | 中国语言文学类、公共管理类 | 本科及以上 | 学士及以上 | 非中共党员 | 不限 |  | A卷 | 09516888895 |\n| 银川市 | 市委老干部局 | 市委老干部局科员 | 从事老干部服务管理工作 | 027002 | 1 | 不限 | 本科及以上 | 学士及以上 | 不限 | 面向“三支一扶”“西部计划志愿者”“大学生村官”项目服务期满2年且考核合格人员及“退役大学生士兵”定向招录 |  | A卷 | 09516888895 |\n| 银川市 | 银川市住房和城乡建设局 | 银川市住房和城乡建设局科员 | 从事城乡建设和建筑市场行业监管等相关工作 | 027003 | 1 | 建筑类,安全工程,安全技术及工程 | 本科及以上 | 学士及以上 | 不限 | 不限 |  | A卷 | 09516888895 |\n| 银川市 | 银川市城市管理局 | 银川市城市管理局科员 | 从事编制单位年度部门预算、决算、财务审核、编制会计报表以及相关财务分析工作 | 027004 | 1 | 财政类 | 本科及以上 | 学士及以上 | 不限 | 具有助理会计师及以上专业技术资格 |  | A卷 | 09516888895 |\n| 银川市 | 银川市财政局 | 银川市财政局科员 | 从事预算的编制、审核、监督等财务管理工作;从事财政政策研究工作 | 027005 | 2 | 金融,金融学,金融管理与实务,财政、财政学 | 研究生及以上 | 硕士及以上 | 不限 | 不限 |  | A卷 | 09516888895 |\n| 银川市 | 银川市农牧局 | 银川市农牧局科员 | 从事畜牧业、奶产业有关工作,组织实施动物防疫、检疫、疫情扑灭、监督工作。条件艰苦,适宜男性 | 027006 | 1 | 畜牧兽医类 | 本科及以上 | 学士及以上 | 不限 | 不限 |  | A卷 | 09516888895 |\n| 银川市 | 银川市林业局 | 银川市林业局科员 | 从事组织全市城乡园林绿化发展规划和分期建设规划的统筹分析、编制、报批等工作 | 027007 | 1 | 园林、园艺、园林技术、园艺技术、园林植物与观赏园艺 | 本科及以上 | 学士及以上 | 不限 | 不限 |  | A卷 | 09516888895 |\n| 银川市 | 银川市审计局 | 银川市审计局科员一 | 从事市直各部门有关项目审计工作 | 027008 | 2 | 财政、财政学、会计学、会计与审计、会计、会计电算化、审计学、审计实务、金融学、金融管理与实务 | 本科及以上 | 学士及以上 | 不限 | 不限 | 笔试加试审计相关知识 | A卷专业 | 09516888895 |\n| 银川市 | 银川市审计局 | 银川市审计局科员二 | 从事计算机辅助审计相关工作 | 027009 | 1 | 计算机类 | 研究生及以上 | 硕士及以上 | 不限 | 不限 | 笔试加试审计相关知识 | A卷专业 | 09516888895 |\n| 银川市 | 银川市统计局 | 银川市统计局科员 | 从事国民统计核算、新经济运行调查分析研究工作,需要经常驻点下乡。 | 027010 | 1 | 统计类 | 本科及以上 | 学士及以上 | 不限 | 不限 |  | A卷 | 09516888895 |\n| 银川市 | 银川市水务局 | 银川市水务局科员 | 从事会计核算,及时记账、登帐,编制各种财务报表及其他基础性财务工作。 | 027011 | 1 | 财政类 | 本科及以上 | 学士及以上 | 不限 | 具有会计从业资格证 |  | A卷 | 09516888895 |\n| 银川市 | 银川市市场监督管理局 | 银川市市场监督管理局科员一 | 从事食品生产、加工、流通环节产品质量市场监管工作及抽检工作,需经常深入市场、经营主体进行执法检查 | 027012 | 8 | 食品类 | 本科及以上 | 学士及以上 | 不限 | 不限 |  | A卷 | 09516888895 |\n| 银川市 | 银川市市场监督管理局 | 银川市市场监督管理局科员二 | 从事特种设备的生产、经营、使用、检验检测等环节的监督监察;对涉及工业产品及行政执法活动中存在的违法违纪进行稽查和巡查;需经常深入经营主体中进行执法检查 | 027013 | 8 | 机械类、安全技术与工程、安全工程 | 本科及以上 | 学士及以上 | 不限 | 不限 |  | A卷 | 09516888895 |\n| 银川市 | 银川市市场监督管理局 | 银川市市场监督管理局科员三 | 从事药品生产、经营环节日常监督、药品使用环节的质量监督;对涉及药品医疗器械行政执法活动中存在的违法违纪行为进行稽查和巡查;需经常深入经营主体中进行执法检查 | 027014 | 8 | 药学类 | 本科及以上 | 学士及以上 | 不限 | 不限 |  | A卷 | 09516888895 |\n| 银川市 | 银川市市场监督管理局 | 银川市市场监督管理局科员四 | 从事相关地方性法规和规章草案的立项、调研、起草、论证、修订工作;承担规范性文件合法性的审查及备案;行政案件的核审、听证等工作。 | 027015 | 3 | 法律类 | 本科及以上 | 学士及以上 | 不限 | 不限 |  | A卷 | 09516888895 |\n| 银川市 | 银川市教育局 | 银川市教育局科员 | 从事银川市人民政府教育督导评估工作 | 027016 | 1 | 教育学、教育学原理 | 研究生及以上 | 硕士及以上 | 不限 | 不限 |  | A卷 | 09516888895 |\n| 银川市 | 银川市行政审批服务局 | 银川市行政审批服务局科员 | 从事政府及企业投资项目的审批、审核、统计等工作 | 027017 | 1 | 建筑学、土木工程、工程造价(建筑),建筑技术科学,岩土工程 | 本科及以上 | 学士及以上 | 不限 | 不限 |  | A卷 | 09516888895 |\n| 银川市 | 银川市委统战部 | 银川市委统战部理论研究室科员 | 从事统一战线理论、方针、政策的综合性研究;承担各类调研报告的起草,提出加强和改进统一战线工作的意见和建议。 | 027018 | 1 | 社会学、民族学、宗教学、马克思主义民族理论与民族政策 | 本科及以上 | 不限 | 不限 | 限回族 | 参照公务员法管理事业单位 | A卷 | 09516888895 |\n| 银川市 | 银川市委党校 | 银川市委党校科员一 | 从事各类电教设备以及多媒体教室的管理维护工作 | 027019 | 1 | 计算机类、电气信息类 | 研究生及以上 | 硕士及以上 | 中共党员 | 不限 | 参照公务员法管理事业单位 | A卷 | 09516888895 |\n# Inputs:\n招考单位中有多少个单位对专业有具体要求,并且职位要求本科及以上学历?\n"}], "type": "trace", "description": "你是一个知识问答系统", "constraints": "1. 参考下面所给知识回答问题。\n\n【正文】\n| 地区 | 招考单位 | 部门及职位 | 职位简介 | 职位代码 | 招考人数 | 专业要求 | 学历要求 | 学位要求 | 政治面貌 | 其他条件 | 备注 | 试卷类型 | 联系电话 |\n| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |\n| 银川市 | 民盟银川市委员会 | 民盟银川市委员会科员 | 从事办公室日常各项事务性工作,撰写文字性材料 | 027001 | 1 | 中国语言文学类、公共管理类 | 本科及以上 | 学士及以上 | 非中共党员 | 不限 |  | A卷 | 09516888895 |\n| 银川市 | 市委老干部局 | 市委老干部局科员 | 从事老干部服务管理工作 | 027002 | 1 | 不限 | 本科及以上 | 学士及以上 | 不限 | 面向“三支一扶”“西部计划志愿者”“大学生村官”项目服务期满2年且考核合格人员及“退役大学生士兵”定向招录 |  | A卷 | 09516888895 |\n| 银川市 | 银川市住房和城乡建设局 | 银川市住房和城乡建设局科员 | 从事城乡建设和建筑市场行业监管等相关工作 | 027003 | 1 | 建筑类,安全工程,安全技术及工程 | 本科及以上 | 学士及以上 | 不限 | 不限 |  | A卷 | 09516888895 |\n| 银川市 | 银川市城市管理局 | 银川市城市管理局科员 | 从事编制单位年度部门预算、决算、财务审核、编制会计报表以及相关财务分析工作 | 027004 | 1 | 财政类 | 本科及以上 | 学士及以上 | 不限 | 具有助理会计师及以上专业技术资格 |  | A卷 | 09516888895 |\n| 银川市 | 银川市财政局 | 银川市财政局科员 | 从事预算的编制、审核、监督等财务管理工作;从事财政政策研究工作 | 027005 | 2 | 金融,金融学,金融管理与实务,财政、财政学 | 研究生及以上 | 硕士及以上 | 不限 | 不限 |  | A卷 | 09516888895 |\n| 银川市 | 银川市农牧局 | 银川市农牧局科员 | 从事畜牧业、奶产业有关工作,组织实施动物防疫、检疫、疫情扑灭、监督工作。条件艰苦,适宜男性 | 027006 | 1 | 畜牧兽医类 | 本科及以上 | 学士及以上 | 不限 | 不限 |  | A卷 | 09516888895 |\n| 银川市 | 银川市林业局 | 银川市林业局科员 | 从事组织全市城乡园林绿化发展规划和分期建设规划的统筹分析、编制、报批等工作 | 027007 | 1 | 园林、园艺、园林技术、园艺技术、园林植物与观赏园艺 | 本科及以上 | 学士及以上 | 不限 | 不限 |  | A卷 | 09516888895 |\n| 银川市 | 银川市审计局 | 银川市审计局科员一 | 从事市直各部门有关项目审计工作 | 027008 | 2 | 财政、财政学、会计学、会计与审计、会计、会计电算化、审计学、审计实务、金融学、金融管理与实务 | 本科及以上 | 学士及以上 | 不限 | 不限 | 笔试加试审计相关知识 | A卷专业 | 09516888895 |\n| 银川市 | 银川市审计局 | 银川市审计局科员二 | 从事计算机辅助审计相关工作 | 027009 | 1 | 计算机类 | 研究生及以上 | 硕士及以上 | 不限 | 不限 | 笔试加试审计相关知识 | A卷专业 | 09516888895 |\n| 银川市 | 银川市统计局 | 银川市统计局科员 | 从事国民统计核算、新经济运行调查分析研究工作,需要经常驻点下乡。 | 027010 | 1 | 统计类 | 本科及以上 | 学士及以上 | 不限 | 不限 |  | A卷 | 09516888895 |\n| 银川市 | 银川市水务局 | 银川市水务局科员 | 从事会计核算,及时记账、登帐,编制各种财务报表及其他基础性财务工作。 | 027011 | 1 | 财政类 | 本科及以上 | 学士及以上 | 不限 | 具有会计从业资格证 |  | A卷 | 09516888895 |\n| 银川市 | 银川市市场监督管理局 | 银川市市场监督管理局科员一 | 从事食品生产、加工、流通环节产品质量市场监管工作及抽检工作,需经常深入市场、经营主体进行执法检查 | 027012 | 8 | 食品类 | 本科及以上 | 学士及以上 | 不限 | 不限 |  | A卷 | 09516888895 |\n| 银川市 | 银川市市场监督管理局 | 银川市市场监督管理局科员二 | 从事特种设备的生产、经营、使用、检验检测等环节的监督监察;对涉及工业产品及行政执法活动中存在的违法违纪进行稽查和巡查;需经常深入经营主体中进行执法检查 | 027013 | 8 | 机械类、安全技术与工程、安全工程 | 本科及以上 | 学士及以上 | 不限 | 不限 |  | A卷 | 09516888895 |\n| 银川市 | 银川市市场监督管理局 | 银川市市场监督管理局科员三 | 从事药品生产、经营环节日常监督、药品使用环节的质量监督;对涉及药品医疗器械行政执法活动中存在的违法违纪行为进行稽查和巡查;需经常深入经营主体中进行执法检查 | 027014 | 8 | 药学类 | 本科及以上 | 学士及以上 | 不限 | 不限 |  | A卷 | 09516888895 |\n| 银川市 | 银川市市场监督管理局 | 银川市市场监督管理局科员四 | 从事相关地方性法规和规章草案的立项、调研、起草、论证、修订工作;承担规范性文件合法性的审查及备案;行政案件的核审、听证等工作。 | 027015 | 3 | 法律类 | 本科及以上 | 学士及以上 | 不限 | 不限 |  | A卷 | 09516888895 |\n| 银川市 | 银川市教育局 | 银川市教育局科员 | 从事银川市人民政府教育督导评估工作 | 027016 | 1 | 教育学、教育学原理 | 研究生及以上 | 硕士及以上 | 不限 | 不限 |  | A卷 | 09516888895 |\n| 银川市 | 银川市行政审批服务局 | 银川市行政审批服务局科员 | 从事政府及企业投资项目的审批、审核、统计等工作 | 027017 | 1 | 建筑学、土木工程、工程造价(建筑),建筑技术科学,岩土工程 | 本科及以上 | 学士及以上 | 不限 | 不限 |  | A卷 | 09516888895 |\n| 银川市 | 银川市委统战部 | 银川市委统战部理论研究室科员 | 从事统一战线理论、方针、政策的综合性研究;承担各类调研报告的起草,提出加强和改进统一战线工作的意见和建议。 | 027018 | 1 | 社会学、民族学、宗教学、马克思主义民族理论与民族政策 | 本科及以上 | 不限 | 不限 | 限回族 | 参照公务员法管理事业单位 | A卷 | 09516888895 |\n| 银川市 | 银川市委党校 | 银川市委党校科员一 | 从事各类电教设备以及多媒体教室的管理维护工作 | 027019 | 1 | 计算机类、电气信息类 | 研究生及以上 | 硕士及以上 | 中共党员 | 不限 | 参照公务员法管理事业单位 | A卷 | 09516888895 |", "input": "招考单位中有多少个单位对专业有具体要求,并且职位要求本科及以上学历?", "constraints_num": 1, "constraints_splits": ["1. 参考下面所给知识回答问题。\n\n【正文】\n| 地区 | 招考单位 | 部门及职位 | 职位简介 | 职位代码 | 招考人数 | 专业要求 | 学历要求 | 学位要求 | 政治面貌 | 其他条件 | 备注 | 试卷类型 | 联系电话 |\n| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |\n| 银川市 | 民盟银川市委员会 | 民盟银川市委员会科员 | 从事办公室日常各项事务性工作,撰写文字性材料 | 027001 | 1 | 中国语言文学类、公共管理类 | 本科及以上 | 学士及以上 | 非中共党员 | 不限 |  | A卷 | 09516888895 |\n| 银川市 | 市委老干部局 | 市委老干部局科员 | 从事老干部服务管理工作 | 027002 | 1 | 不限 | 本科及以上 | 学士及以上 | 不限 | 面向“三支一扶”“西部计划志愿者”“大学生村官”项目服务期满2年且考核合格人员及“退役大学生士兵”定向招录 |  | A卷 | 09516888895 |\n| 银川市 | 银川市住房和城乡建设局 | 银川市住房和城乡建设局科员 | 从事城乡建设和建筑市场行业监管等相关工作 | 027003 | 1 | 建筑类,安全工程,安全技术及工程 | 本科及以上 | 学士及以上 | 不限 | 不限 |  | A卷 | 09516888895 |\n| 银川市 | 银川市城市管理局 | 银川市城市管理局科员 | 从事编制单位年度部门预算、决算、财务审核、编制会计报表以及相关财务分析工作 | 027004 | 1 | 财政类 | 本科及以上 | 学士及以上 | 不限 | 具有助理会计师及以上专业技术资格 |  | A卷 | 09516888895 |\n| 银川市 | 银川市财政局 | 银川市财政局科员 | 从事预算的编制、审核、监督等财务管理工作;从事财政政策研究工作 | 027005 | 2 | 金融,金融学,金融管理与实务,财政、财政学 | 研究生及以上 | 硕士及以上 | 不限 | 不限 |  | A卷 | 09516888895 |\n| 银川市 | 银川市农牧局 | 银川市农牧局科员 | 从事畜牧业、奶产业有关工作,组织实施动物防疫、检疫、疫情扑灭、监督工作。条件艰苦,适宜男性 | 027006 | 1 | 畜牧兽医类 | 本科及以上 | 学士及以上 | 不限 | 不限 |  | A卷 | 09516888895 |\n| 银川市 | 银川市林业局 | 银川市林业局科员 | 从事组织全市城乡园林绿化发展规划和分期建设规划的统筹分析、编制、报批等工作 | 027007 | 1 | 园林、园艺、园林技术、园艺技术、园林植物与观赏园艺 | 本科及以上 | 学士及以上 | 不限 | 不限 |  | A卷 | 09516888895 |\n| 银川市 | 银川市审计局 | 银川市审计局科员一 | 从事市直各部门有关项目审计工作 | 027008 | 2 | 财政、财政学、会计学、会计与审计、会计、会计电算化、审计学、审计实务、金融学、金融管理与实务 | 本科及以上 | 学士及以上 | 不限 | 不限 | 笔试加试审计相关知识 | A卷专业 | 09516888895 |\n| 银川市 | 银川市审计局 | 银川市审计局科员二 | 从事计算机辅助审计相关工作 | 027009 | 1 | 计算机类 | 研究生及以上 | 硕士及以上 | 不限 | 不限 | 笔试加试审计相关知识 | A卷专业 | 09516888895 |\n| 银川市 | 银川市统计局 | 银川市统计局科员 | 从事国民统计核算、新经济运行调查分析研究工作,需要经常驻点下乡。 | 027010 | 1 | 统计类 | 本科及以上 | 学士及以上 | 不限 | 不限 |  | A卷 | 09516888895 |\n| 银川市 | 银川市水务局 | 银川市水务局科员 | 从事会计核算,及时记账、登帐,编制各种财务报表及其他基础性财务工作。 | 027011 | 1 | 财政类 | 本科及以上 | 学士及以上 | 不限 | 具有会计从业资格证 |  | A卷 | 09516888895 |\n| 银川市 | 银川市市场监督管理局 | 银川市市场监督管理局科员一 | 从事食品生产、加工、流通环节产品质量市场监管工作及抽检工作,需经常深入市场、经营主体进行执法检查 | 027012 | 8 | 食品类 | 本科及以上 | 学士及以上 | 不限 | 不限 |  | A卷 | 09516888895 |\n| 银川市 | 银川市市场监督管理局 | 银川市市场监督管理局科员二 | 从事特种设备的生产、经营、使用、检验检测等环节的监督监察;对涉及工业产品及行政执法活动中存在的违法违纪进行稽查和巡查;需经常深入经营主体中进行执法检查 | 027013 | 8 | 机械类、安全技术与工程、安全工程 | 本科及以上 | 学士及以上 | 不限 | 不限 |  | A卷 | 09516888895 |\n| 银川市 | 银川市市场监督管理局 | 银川市市场监督管理局科员三 | 从事药品生产、经营环节日常监督、药品使用环节的质量监督;对涉及药品医疗器械行政执法活动中存在的违法违纪行为进行稽查和巡查;需经常深入经营主体中进行执法检查 | 027014 | 8 | 药学类 | 本科及以上 | 学士及以上 | 不限 | 不限 |  | A卷 | 09516888895 |\n| 银川市 | 银川市市场监督管理局 | 银川市市场监督管理局科员四 | 从事相关地方性法规和规章草案的立项、调研、起草、论证、修订工作;承担规范性文件合法性的审查及备案;行政案件的核审、听证等工作。 | 027015 | 3 | 法律类 | 本科及以上 | 学士及以上 | 不限 | 不限 |  | A卷 | 09516888895 |\n| 银川市 | 银川市教育局 | 银川市教育局科员 | 从事银川市人民政府教育督导评估工作 | 027016 | 1 | 教育学、教育学原理 | 研究生及以上 | 硕士及以上 | 不限 | 不限 |  | A卷 | 09516888895 |\n| 银川市 | 银川市行政审批服务局 | 银川市行政审批服务局科员 | 从事政府及企业投资项目的审批、审核、统计等工作 | 027017 | 1 | 建筑学、土木工程、工程造价(建筑),建筑技术科学,岩土工程 | 本科及以上 | 学士及以上 | 不限 | 不限 |  | A卷 | 09516888895 |\n| 银川市 | 银川市委统战部 | 银川市委统战部理论研究室科员 | 从事统一战线理论、方针、政策的综合性研究;承担各类调研报告的起草,提出加强和改进统一战线工作的意见和建议。 | 027018 | 1 | 社会学、民族学、宗教学、马克思主义民族理论与民族政策 | 本科及以上 | 不限 | 不限 | 限回族 | 参照公务员法管理事业单位 | A卷 | 09516888895 |\n| 银川市 | 银川市委党校 | 银川市委党校科员一 | 从事各类电教设备以及多媒体教室的管理维护工作 | 027019 | 1 | 计算机类、电气信息类 | 研究生及以上 | 硕士及以上 | 中共党员 | 不限 | 参照公务员法管理事业单位 | A卷 | 09516888895 |"], "levels2": ["表格背景信息约束"], "category": "trace1.0"} +{"id": "9", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "向一群对物理有一定了解的医学研究生解释核磁共振现象中拉莫尔频率与塞斯贝条件的物理意义,以及它们在核磁共振成像技术中的应用。在解释时,需使用严谨的科学术语,并通过一个具体的计算示例来说明在实际核磁共振实验中如何应用这两个概念。\n1. 在解释时,可以参考以下示例,讲解磁场强度为1.5特斯拉时,氢核的拉莫尔频率是多少,以及如何根据塞斯贝条件选择适当的射频脉冲宽度;\n"}], "type": "trace", "description": "向一群对物理有一定了解的医学研究生解释核磁共振现象中拉莫尔频率与塞斯贝条件的物理意义,以及它们在核磁共振成像技术中的应用。在解释时,需使用严谨的科学术语,并通过一个具体的计算示例来说明在实际核磁共振实验中如何应用这两个概念。", "constraints": "1. 在解释时,可以参考以下示例,讲解磁场强度为1.5特斯拉时,氢核的拉莫尔频率是多少,以及如何根据塞斯贝条件选择适当的射频脉冲宽度;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 在解释时,可以参考以下示例,讲解磁场强度为1.5特斯拉时,氢核的拉莫尔频率是多少,以及如何根据塞斯贝条件选择适当的射频脉冲宽度;"], "levels2": ["正例约束"], "category": "trace1.0"} +{"id": "10", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "在给定的一组数字中找到最小的偶数,并以JSON格式返回结果\n1. 如果列表中没有偶数,则返回null;\n# Inputs:\n[5, 3, 8, 7, 1, 10]\n"}], "type": "trace", "description": "在给定的一组数字中找到最小的偶数,并以JSON格式返回结果", "constraints": "1. 如果列表中没有偶数,则返回null;", "input": "[5, 3, 8, 7, 1, 10]", "constraints_num": 1, "constraints_splits": ["1. 如果列表中没有偶数,则返回null;"], "levels2": ["先验条件约束"], "category": "trace1.0"} +{"id": "11", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "编辑一篇科技新闻稿\n1. 使用比喻或类比的方式解释复杂概念;\n# Inputs:\n修改后新闻稿示例:\n未来的日子里,一种超级快的思维机器——我们把它比作超级计算机——将在几个关键领域,如在线购物、银行和健康护理,引发巨大的变革。尽管这些领域充满了机会,但它们也面临着一些难题。由于这种超级计算机运行得像闪电一样快,这也意味着我们需要将保护信息宝藏的锁升级到全新的高度,以应对越来越复杂的威胁。\n"}], "type": "trace", "description": "编辑一篇科技新闻稿", "constraints": "1. 使用比喻或类比的方式解释复杂概念;", "input": "修改后新闻稿示例:\n未来的日子里,一种超级快的思维机器——我们把它比作超级计算机——将在几个关键领域,如在线购物、银行和健康护理,引发巨大的变革。尽管这些领域充满了机会,但它们也面临着一些难题。由于这种超级计算机运行得像闪电一样快,这也意味着我们需要将保护信息宝藏的锁升级到全新的高度,以应对越来越复杂的威胁。", "constraints_num": 1, "constraints_splits": ["1. 使用比喻或类比的方式解释复杂概念;"], "levels2": ["语言特征约束"], "category": "trace1.0"} +{"id": "12", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "根据给定的输入文本,用一个合适的、具有文艺气息的单词来替换文本中的空白处,以营造一种旅行前的浪漫氛围。\n1. 所填的词应与旅行和行李准备相关;\n# Inputs:\n“他在出发前为自己准备了一个精心制作的行李______。”\n"}], "type": "trace", "description": "根据给定的输入文本,用一个合适的、具有文艺气息的单词来替换文本中的空白处,以营造一种旅行前的浪漫氛围。", "constraints": "1. 所填的词应与旅行和行李准备相关;", "input": "“他在出发前为自己准备了一个精心制作的行李______。”", "constraints_num": 1, "constraints_splits": ["1. 所填的词应与旅行和行李准备相关;"], "levels2": ["主题约束"], "category": "trace1.0"} +{"id": "13", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "提供一个使用numpy库的\"Inverted Residual blocks\"的详细代码示例,代码需包含注释,用以解释每个关键步骤的功能和作用,并确保代码格式为代码块\n1. 使用英文回答;\n"}], "type": "trace", "description": "提供一个使用numpy库的\"Inverted Residual blocks\"的详细代码示例,代码需包含注释,用以解释每个关键步骤的功能和作用,并确保代码格式为代码块", "constraints": "1. 使用英文回答;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 使用英文回答;"], "levels2": ["多语言约束"], "category": "trace1.0"} +{"id": "14", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇文章,解释为什么《星球大战:最后的绝地武士》这部电影实际上是好的,同时反驳其负面评论。\n1. 文章不应涉及任何剧透,以尊重尚未观看电影的观众。\n"}], "type": "trace", "description": "撰写一篇文章,解释为什么《星球大战:最后的绝地武士》这部电影实际上是好的,同时反驳其负面评论。", "constraints": "1. 文章不应涉及任何剧透,以尊重尚未观看电影的观众。", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 文章不应涉及任何剧透,以尊重尚未观看电影的观众。"], "levels2": ["排除约束"], "category": "trace1.0"} +{"id": "15", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "将给定的一组文本分类到不同的类别中\n1. 输出的JSON结构应包含类别的名称、类别描述和分类的文本列表;\n# Inputs:\n文本1:狗是人类最好的朋友之一。\n文本2:太阳是我们太阳系的中心。\n"}], "type": "trace", "description": "将给定的一组文本分类到不同的类别中", "constraints": "1. 输出的JSON结构应包含类别的名称、类别描述和分类的文本列表;", "input": "文本1:狗是人类最好的朋友之一。\n文本2:太阳是我们太阳系的中心。", "constraints_num": 1, "constraints_splits": ["1. 输出的JSON结构应包含类别的名称、类别描述和分类的文本列表;"], "levels2": ["输出格式约束"], "category": "trace1.0"} +{"id": "16", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以医生的角色出发,分析一名血液疾病患者在医院感染防控过程中可能遇到的问题,并针对每个问题提出可行的解决方案。\n1. 将问题和解决方案以编号列表的形式列出,其中包括问题描述和对应的解决方案,以便于清晰呈现。\n"}], "type": "trace", "description": "以医生的角色出发,分析一名血液疾病患者在医院感染防控过程中可能遇到的问题,并针对每个问题提出可行的解决方案。", "constraints": "1. 将问题和解决方案以编号列表的形式列出,其中包括问题描述和对应的解决方案,以便于清晰呈现。", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 将问题和解决方案以编号列表的形式列出,其中包括问题描述和对应的解决方案,以便于清晰呈现。"], "levels2": ["编号和列表约束"], "category": "trace1.0"} +{"id": "17", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇科普文章,深入探讨黑洞的形成原因及其对宇宙的影响\n1. 使用清晰的层次化结构,包括标题和子标题,确保读者易于理解。\n"}], "type": "trace", "description": "撰写一篇科普文章,深入探讨黑洞的形成原因及其对宇宙的影响", "constraints": "1. 使用清晰的层次化结构,包括标题和子标题,确保读者易于理解。", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 使用清晰的层次化结构,包括标题和子标题,确保读者易于理解。"], "levels2": ["层次化结构约束"], "category": "trace1.0"} +{"id": "18", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "你是一个知识问答系统\n1. 参考下面所给知识回答问题。\n\n【文档名】MH500 男士登山防水徒步鞋 - 黑色_黄色\n【标题】MH500 男士登山防水徒步鞋 - 黑色_黄色\n# MH500 男士登山防水徒步鞋 - 黑色/黄色\n【正文】1. 支撑更稳妥: 有些鞋底是预成型的,或加固过,可以更有效地支撑足弓。 2. 更为舒适:中底也可保暖且/或缓震。\n3. 使用寿命延长:每个季度更换中底,即可恢复鞋子的支撑能力和舒适性。|- 自然晾干。\n- 用硬质刷子刷掉干泥。\n- 用刷子和温水清洁污迹\n- 自然晾干\n- 喷洒防水性恢复产品,恢复鞋面的防水性。\n**benefits**: 5 毫米鞋钉,具有出色的牵引力。橡胶鞋底,具有良好的抓地力。|前掌有耐用的防石击橡胶,后脚掌采用塑料件。|防水透气膜内衬:各种天气下都能保持双脚 6 小时干爽|43 码每只重 445 克。|厚实的EVA泡沫中底,穿着舒适,防止地面硌脚。|最后两个鞋带环上采用 Weblock 锁紧设计,可固定中足和后跟。|前脚掌处采用麂皮绒皮革制成,将会长久地适应脚型。\n**genders**: 男士\n**structurations**: 频率::定期|运动地点::山地|天气情况::所有天气|运动地点::森林|紧固件类型::绑带|鞋高::低帮鞋|材质::皮革|防水::防水|材质::小山羊皮|足宽::中型|可拆卸鞋底::可拆卸鞋底|外底技术::户外通讯|皮革类型::坯革\n**colors**: 碳灰色/枇杷黄\n**brand**: QUECHUA\n**product_nature**: 鞋子\n**universe_label_zh**: 山地徒步\n**department_label_zh**: 山地徒步\n**family**: 男式山地徒步/登山鞋\n**discount_price**: nan\n**list_price**: 549.9\n**display_price**: 549.9\n**currency**: Chinese Yuan\n**size**: 43码|42码|40码|41码|39码|45码|44码\n# Inputs:\n迪卡侬的登山鞋MH600和MH900在支撑性和重量上有哪些区别?\n"}], "type": "trace", "description": "你是一个知识问答系统", "constraints": "1. 参考下面所给知识回答问题。\n\n【文档名】MH500 男士登山防水徒步鞋 - 黑色_黄色\n【标题】MH500 男士登山防水徒步鞋 - 黑色_黄色\n# MH500 男士登山防水徒步鞋 - 黑色/黄色\n【正文】1. 支撑更稳妥: 有些鞋底是预成型的,或加固过,可以更有效地支撑足弓。 2. 更为舒适:中底也可保暖且/或缓震。\n3. 使用寿命延长:每个季度更换中底,即可恢复鞋子的支撑能力和舒适性。|- 自然晾干。\n- 用硬质刷子刷掉干泥。\n- 用刷子和温水清洁污迹\n- 自然晾干\n- 喷洒防水性恢复产品,恢复鞋面的防水性。\n**benefits**: 5 毫米鞋钉,具有出色的牵引力。橡胶鞋底,具有良好的抓地力。|前掌有耐用的防石击橡胶,后脚掌采用塑料件。|防水透气膜内衬:各种天气下都能保持双脚 6 小时干爽|43 码每只重 445 克。|厚实的EVA泡沫中底,穿着舒适,防止地面硌脚。|最后两个鞋带环上采用 Weblock 锁紧设计,可固定中足和后跟。|前脚掌处采用麂皮绒皮革制成,将会长久地适应脚型。\n**genders**: 男士\n**structurations**: 频率::定期|运动地点::山地|天气情况::所有天气|运动地点::森林|紧固件类型::绑带|鞋高::低帮鞋|材质::皮革|防水::防水|材质::小山羊皮|足宽::中型|可拆卸鞋底::可拆卸鞋底|外底技术::户外通讯|皮革类型::坯革\n**colors**: 碳灰色/枇杷黄\n**brand**: QUECHUA\n**product_nature**: 鞋子\n**universe_label_zh**: 山地徒步\n**department_label_zh**: 山地徒步\n**family**: 男式山地徒步/登山鞋\n**discount_price**: nan\n**list_price**: 549.9\n**display_price**: 549.9\n**currency**: Chinese Yuan\n**size**: 43码|42码|40码|41码|39码|45码|44码", "input": "迪卡侬的登山鞋MH600和MH900在支撑性和重量上有哪些区别?", "constraints_num": 1, "constraints_splits": ["1. 参考下面所给知识回答问题。\n\n【文档名】MH500 男士登山防水徒步鞋 - 黑色_黄色\n【标题】MH500 男士登山防水徒步鞋 - 黑色_黄色\n# MH500 男士登山防水徒步鞋 - 黑色/黄色\n【正文】1. 支撑更稳妥: 有些鞋底是预成型的,或加固过,可以更有效地支撑足弓。 2. 更为舒适:中底也可保暖且/或缓震。\n3. 使用寿命延长:每个季度更换中底,即可恢复鞋子的支撑能力和舒适性。|- 自然晾干。\n- 用硬质刷子刷掉干泥。\n- 用刷子和温水清洁污迹\n- 自然晾干\n- 喷洒防水性恢复产品,恢复鞋面的防水性。\n**benefits**: 5 毫米鞋钉,具有出色的牵引力。橡胶鞋底,具有良好的抓地力。|前掌有耐用的防石击橡胶,后脚掌采用塑料件。|防水透气膜内衬:各种天气下都能保持双脚 6 小时干爽|43 码每只重 445 克。|厚实的EVA泡沫中底,穿着舒适,防止地面硌脚。|最后两个鞋带环上采用 Weblock 锁紧设计,可固定中足和后跟。|前脚掌处采用麂皮绒皮革制成,将会长久地适应脚型。\n**genders**: 男士\n**structurations**: 频率::定期|运动地点::山地|天气情况::所有天气|运动地点::森林|紧固件类型::绑带|鞋高::低帮鞋|材质::皮革|防水::防水|材质::小山羊皮|足宽::中型|可拆卸鞋底::可拆卸鞋底|外底技术::户外通讯|皮革类型::坯革\n**colors**: 碳灰色/枇杷黄\n**brand**: QUECHUA\n**product_nature**: 鞋子\n**universe_label_zh**: 山地徒步\n**department_label_zh**: 山地徒步\n**family**: 男式山地徒步/登山鞋\n**discount_price**: nan\n**list_price**: 549.9\n**display_price**: 549.9\n**currency**: Chinese Yuan\n**size**: 43码|42码|40码|41码|39码|45码|44码"], "levels2": ["文本背景信息约束"], "category": "trace1.0"} +{"id": "19", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "编辑一篇关于旅行的简短文章,文章风格为文艺浪漫。\n1. 文章应采用Markdown格式输出,其中标题使用#,子标题使用##,并使用markdown语法对“雨”一词进行高亮显示;\n"}], "type": "trace", "description": "编辑一篇关于旅行的简短文章,文章风格为文艺浪漫。", "constraints": "1. 文章应采用Markdown格式输出,其中标题使用#,子标题使用##,并使用markdown语法对“雨”一词进行高亮显示;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 文章应采用Markdown格式输出,其中标题使用#,子标题使用##,并使用markdown语法对“雨”一词进行高亮显示;"], "levels2": ["输出格式约束"], "category": "trace1.0"} +{"id": "20", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "编辑一篇标题为“迷失荒岛”的小说,使用生动的描述和富有情感的语言,增强小说的吸引力,并确保包含详细的环境描写,以及主角的心理活动和成长过程。\n1. 按照层次化结构进行组织:开头部分(约1000字),中间部分(约7000字),结尾部分(约2000字);\n"}], "type": "trace", "description": "编辑一篇标题为“迷失荒岛”的小说,使用生动的描述和富有情感的语言,增强小说的吸引力,并确保包含详细的环境描写,以及主角的心理活动和成长过程。", "constraints": "1. 按照层次化结构进行组织:开头部分(约1000字),中间部分(约7000字),结尾部分(约2000字);", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 按照层次化结构进行组织:开头部分(约1000字),中间部分(约7000字),结尾部分(约2000字);"], "levels2": ["层次化结构约束"], "category": "trace1.0"} +{"id": "21", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "你是一个知识问答系统\n1. 参考下面所给知识回答问题。\n\n【正文】\n| 系所码 | 系所 | 招生人数 | 学位类型 | 专业代码 | 专业名称 | 导师姓名 | 研究方向码 | 研究方向 | 外国语代码 | 外国语 | 专业基础课代码 | 专业基础课 | 专业课代码 | 专业课 | 备注 |\n| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |\n| 700 | 医学院 |  | 专业学位 | 105100 | 临床医学(普专) | 黄钢 | 01 | 临床医学技能训练 | 无 | 无 | 无 | 无 | 3997 | 仅招收本院4+4模式转博生 | 仅供本校临床医学八年制(硕博班)学生转博报名 |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | MANMOHAN | 01 | 人类疾病与表观遗传学 | 1101 | 英语 | 2803 | 医学基础A | 3810 | 分子生物学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 曾凡一 | 02 | 早期胚胎发育,干细胞及动物克隆研究和应用 | 1101 | 英语 | 2803 | 医学基础A | 3808 | 发育生物学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 陈广洁 | 03 | 免疫调节与自身免疫病 | 1101 | 英语 | 2804 | 医学基础B | 3829 | 免疫学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 陈国强 | 04 | 肿瘤的病理生理学和治疗学基础研究 | 无 | 无 | 无 | 无 | 3863 | 肿瘤学 | 仅招收申请考核制及硕博连读生 |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 陈学进 | 05 | 动物转基因、动物克隆 | 1101 | 英语 | 2803 | 医学基础A | 3808 | 发育生物学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 程金科 | 06 | 蛋白质SUMO修饰与免疫代谢调控 | 1101 | 英语 | 2803 | 医学基础A | 3810 | 分子生物学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 邓炯 | 07 | 肺癌发生机理及防治的研究 | 1101 | 英语 | 2803 | 医学基础A | 38013863 | 病理生理学肿瘤学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 邓刘福 | 08 | 肿瘤免疫学 | 1101 | 英语 | 2804 | 医学基础B | 3829 | 免疫学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 丁之德 | 09 | 生殖细胞发生、成熟、受精及肥胖对生殖影响 | 1101 | 英语 | 2803 | 医学基础A | 3871 | 组织学与胚胎学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 傅国辉 | 10 | 肿瘤的靶向治疗和免疫细胞治疗 | 1101 | 英语 | 2803 | 医学基础A | 3863 | 肿瘤学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 郭晓奎 | 11 | 微生物组;病原基因组学;微生态学; | 1101 | 英语 | 2803 | 医学基础A | 3803 | 病原生物学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 洪登礼 | 12 | 白血病干细胞及其niche的起源和演化 | 1101 | 英语 | 2803 | 医学基础A | 3867 | 肿瘤生物学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 侯照远 | 13 | 基因表达与调控 | 1101 | 英语 | 2803 | 医学基础A | 3810 | 分子生物学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 黄传新 | 14 | B细胞发育和恶变的分子机制 | 1101 | 英语 | 2804 | 医学基础B | 3829 | 免疫学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 黄建 | 15 | 肿瘤分子生物学 | 1101 | 英语 | 2803 | 医学基础A | 3810 | 分子生物学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 黄莺 | 16 | 肿瘤发生发展相关的细胞分子生物学机制研究 | 1101 | 英语 | 2803 | 医学基础A | 3863 | 肿瘤学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 金颖 | 17 | 干细胞维持自我更新和全能性的分子机制研究 | 1101 | 英语 | 2803 | 医学基础A | 3808 | 发育生物学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 李福彬 | 18 | 肿瘤免疫治疗、抗体作用机制、B细胞发育 | 1101 | 英语 | 2804 | 医学基础B | 3829 | 免疫学 |  |\n# Inputs:\n如果一个学生对肿瘤学感兴趣,并且希望在专业课中学习到与肿瘤学相关的内容,他应该选择哪位导师的研究方向?\n"}], "type": "trace", "description": "你是一个知识问答系统", "constraints": "1. 参考下面所给知识回答问题。\n\n【正文】\n| 系所码 | 系所 | 招生人数 | 学位类型 | 专业代码 | 专业名称 | 导师姓名 | 研究方向码 | 研究方向 | 外国语代码 | 外国语 | 专业基础课代码 | 专业基础课 | 专业课代码 | 专业课 | 备注 |\n| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |\n| 700 | 医学院 |  | 专业学位 | 105100 | 临床医学(普专) | 黄钢 | 01 | 临床医学技能训练 | 无 | 无 | 无 | 无 | 3997 | 仅招收本院4+4模式转博生 | 仅供本校临床医学八年制(硕博班)学生转博报名 |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | MANMOHAN | 01 | 人类疾病与表观遗传学 | 1101 | 英语 | 2803 | 医学基础A | 3810 | 分子生物学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 曾凡一 | 02 | 早期胚胎发育,干细胞及动物克隆研究和应用 | 1101 | 英语 | 2803 | 医学基础A | 3808 | 发育生物学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 陈广洁 | 03 | 免疫调节与自身免疫病 | 1101 | 英语 | 2804 | 医学基础B | 3829 | 免疫学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 陈国强 | 04 | 肿瘤的病理生理学和治疗学基础研究 | 无 | 无 | 无 | 无 | 3863 | 肿瘤学 | 仅招收申请考核制及硕博连读生 |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 陈学进 | 05 | 动物转基因、动物克隆 | 1101 | 英语 | 2803 | 医学基础A | 3808 | 发育生物学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 程金科 | 06 | 蛋白质SUMO修饰与免疫代谢调控 | 1101 | 英语 | 2803 | 医学基础A | 3810 | 分子生物学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 邓炯 | 07 | 肺癌发生机理及防治的研究 | 1101 | 英语 | 2803 | 医学基础A | 38013863 | 病理生理学肿瘤学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 邓刘福 | 08 | 肿瘤免疫学 | 1101 | 英语 | 2804 | 医学基础B | 3829 | 免疫学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 丁之德 | 09 | 生殖细胞发生、成熟、受精及肥胖对生殖影响 | 1101 | 英语 | 2803 | 医学基础A | 3871 | 组织学与胚胎学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 傅国辉 | 10 | 肿瘤的靶向治疗和免疫细胞治疗 | 1101 | 英语 | 2803 | 医学基础A | 3863 | 肿瘤学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 郭晓奎 | 11 | 微生物组;病原基因组学;微生态学; | 1101 | 英语 | 2803 | 医学基础A | 3803 | 病原生物学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 洪登礼 | 12 | 白血病干细胞及其niche的起源和演化 | 1101 | 英语 | 2803 | 医学基础A | 3867 | 肿瘤生物学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 侯照远 | 13 | 基因表达与调控 | 1101 | 英语 | 2803 | 医学基础A | 3810 | 分子生物学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 黄传新 | 14 | B细胞发育和恶变的分子机制 | 1101 | 英语 | 2804 | 医学基础B | 3829 | 免疫学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 黄建 | 15 | 肿瘤分子生物学 | 1101 | 英语 | 2803 | 医学基础A | 3810 | 分子生物学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 黄莺 | 16 | 肿瘤发生发展相关的细胞分子生物学机制研究 | 1101 | 英语 | 2803 | 医学基础A | 3863 | 肿瘤学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 金颖 | 17 | 干细胞维持自我更新和全能性的分子机制研究 | 1101 | 英语 | 2803 | 医学基础A | 3808 | 发育生物学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 李福彬 | 18 | 肿瘤免疫治疗、抗体作用机制、B细胞发育 | 1101 | 英语 | 2804 | 医学基础B | 3829 | 免疫学 |  |", "input": "如果一个学生对肿瘤学感兴趣,并且希望在专业课中学习到与肿瘤学相关的内容,他应该选择哪位导师的研究方向?", "constraints_num": 1, "constraints_splits": ["1. 参考下面所给知识回答问题。\n\n【正文】\n| 系所码 | 系所 | 招生人数 | 学位类型 | 专业代码 | 专业名称 | 导师姓名 | 研究方向码 | 研究方向 | 外国语代码 | 外国语 | 专业基础课代码 | 专业基础课 | 专业课代码 | 专业课 | 备注 |\n| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |\n| 700 | 医学院 |  | 专业学位 | 105100 | 临床医学(普专) | 黄钢 | 01 | 临床医学技能训练 | 无 | 无 | 无 | 无 | 3997 | 仅招收本院4+4模式转博生 | 仅供本校临床医学八年制(硕博班)学生转博报名 |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | MANMOHAN | 01 | 人类疾病与表观遗传学 | 1101 | 英语 | 2803 | 医学基础A | 3810 | 分子生物学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 曾凡一 | 02 | 早期胚胎发育,干细胞及动物克隆研究和应用 | 1101 | 英语 | 2803 | 医学基础A | 3808 | 发育生物学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 陈广洁 | 03 | 免疫调节与自身免疫病 | 1101 | 英语 | 2804 | 医学基础B | 3829 | 免疫学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 陈国强 | 04 | 肿瘤的病理生理学和治疗学基础研究 | 无 | 无 | 无 | 无 | 3863 | 肿瘤学 | 仅招收申请考核制及硕博连读生 |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 陈学进 | 05 | 动物转基因、动物克隆 | 1101 | 英语 | 2803 | 医学基础A | 3808 | 发育生物学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 程金科 | 06 | 蛋白质SUMO修饰与免疫代谢调控 | 1101 | 英语 | 2803 | 医学基础A | 3810 | 分子生物学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 邓炯 | 07 | 肺癌发生机理及防治的研究 | 1101 | 英语 | 2803 | 医学基础A | 38013863 | 病理生理学肿瘤学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 邓刘福 | 08 | 肿瘤免疫学 | 1101 | 英语 | 2804 | 医学基础B | 3829 | 免疫学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 丁之德 | 09 | 生殖细胞发生、成熟、受精及肥胖对生殖影响 | 1101 | 英语 | 2803 | 医学基础A | 3871 | 组织学与胚胎学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 傅国辉 | 10 | 肿瘤的靶向治疗和免疫细胞治疗 | 1101 | 英语 | 2803 | 医学基础A | 3863 | 肿瘤学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 郭晓奎 | 11 | 微生物组;病原基因组学;微生态学; | 1101 | 英语 | 2803 | 医学基础A | 3803 | 病原生物学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 洪登礼 | 12 | 白血病干细胞及其niche的起源和演化 | 1101 | 英语 | 2803 | 医学基础A | 3867 | 肿瘤生物学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 侯照远 | 13 | 基因表达与调控 | 1101 | 英语 | 2803 | 医学基础A | 3810 | 分子生物学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 黄传新 | 14 | B细胞发育和恶变的分子机制 | 1101 | 英语 | 2804 | 医学基础B | 3829 | 免疫学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 黄建 | 15 | 肿瘤分子生物学 | 1101 | 英语 | 2803 | 医学基础A | 3810 | 分子生物学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 黄莺 | 16 | 肿瘤发生发展相关的细胞分子生物学机制研究 | 1101 | 英语 | 2803 | 医学基础A | 3863 | 肿瘤学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 金颖 | 17 | 干细胞维持自我更新和全能性的分子机制研究 | 1101 | 英语 | 2803 | 医学基础A | 3808 | 发育生物学 |  |\n| 710 | 基础医学院 | 41 | 学术型 | 100100 | 基础医学(学术) | 李福彬 | 18 | 肿瘤免疫治疗、抗体作用机制、B细胞发育 | 1101 | 英语 | 2804 | 医学基础B | 3829 | 免疫学 |  |"], "levels2": ["表格背景信息约束"], "category": "trace1.0"} +{"id": "22", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "你是一个知识问答系统\n1. 参考下面所给知识回答问题。\n\n【文档名】信美相互创可贴意外伤害医疗保险条款\n【标题】信美相互创可贴意外伤害医疗保险条款阅读指引\n。条款目录\n6.其他需要关注的事项\n1.3    保险责任      在本合同保险期间内,我们承担下列保险责任:\n【正文】被保险人实际发生的医疗费用,我们将按被保险人实际发生的医疗费用扣除从被保险人遭受意外伤害事故,并因该次意外伤害事故直接导致其在医院接受住院治疗的,我们按实际住院天数(见7.8)在扣除免赔天数后的剩余天数与意外伤害每日住院津贴金额的乘积给付意外伤害住院津贴保险金,即:意外伤害住院津贴保险金=意外伤害每日住院津贴金额×(实际住院天数-免赔天数)本合同意外伤害住院津贴保险金的免赔天数为3日。被保险人因同一次意外伤害事故多次住院治疗的,如果累计的实际住院天数大\n于免赔天数,我们在计算意外伤害住院津贴保险金时对累计的实际住院天数扣除一次免赔天数;如果累计的实际住院天数未超过约定的免赔天数,我们不承担给付意外伤害住院津贴保险金的责任。被保险人因不同意外伤害事故多次住院治疗的,我们在计算每次意外伤害住院津贴保险金时均会扣除一次免赔天数。\n我们在同一保险期间内累计给付意外伤害住院津贴保险金的天数以180日为限,累计给付达到180日的,该项保险责任终止。\n若被保险人因意外伤害事故在医院接受住院治疗,在保险期间届满时仍未出院的,对于被保险人该次住院治疗延续至保险期间届满日次日起30日内的住院,我们仍在上述180 日的给付天数范围内继续承担给付意外伤害住院津贴保险金的责任。对于被保险人该次住院治疗延续至保险期间届满日次日起30日后的住院,我们不再承担给付意外伤害住院津贴保险金的责任。\n意外伤害重症住院津贴保险金\n被保险人遭受意外伤害事故,并因该次意外伤害事故直接导致被保险人在医院入住重症监护病房(见7.9)接受住院治疗的,我们除按上述约定给付意外伤害住院津贴保险金之外,还将按意外伤害每日重症住院津贴金额与被保险人实际入住重症监护病房的天数的乘积给付意外伤害重症住院津贴保险金,即:意外伤害重症住院津贴保险金=意外伤害每日重症住院津贴金额×实际入住重症监护病房天数\n我们在同一保险期间内累计给付意外伤害重症住院津贴保险金的天数以30日为限,累计给付达到30日的,该项保险责任终止。\n若被保险人因意外伤害事故在医院入住重症监护病房接受住院治疗,在保险期间届满时仍未出重症监护病房的,对于被保险人该次入住重症监护病房的住院治疗延续至保险期间届满日次日起30日内的入住重症监护病房的住院,我们仍在上述30日的给付天数范围内继续承担给付意外伤害重症住院津贴保险金的责任。对于被保险人该次入住重症监护病房的住院治疗延续至保险期间届满日次日起30日后的入住重症监护病房的住院,我们不再承担给付意外伤害重症住院津贴保险金的责任。\n# Inputs:\n小美投保了信美相互创可贴意外伤害医疗保险小美在保险起见届满日的10天前因运动意外受伤在重症监护病房住院40天请问住院津贴按照几天进行赔付\n"}], "type": "trace", "description": "你是一个知识问答系统", "constraints": "1. 参考下面所给知识回答问题。\n\n【文档名】信美相互创可贴意外伤害医疗保险条款\n【标题】信美相互创可贴意外伤害医疗保险条款阅读指引\n。条款目录\n6.其他需要关注的事项\n1.3    保险责任      在本合同保险期间内,我们承担下列保险责任:\n【正文】被保险人实际发生的医疗费用,我们将按被保险人实际发生的医疗费用扣除从被保险人遭受意外伤害事故,并因该次意外伤害事故直接导致其在医院接受住院治疗的,我们按实际住院天数(见7.8)在扣除免赔天数后的剩余天数与意外伤害每日住院津贴金额的乘积给付意外伤害住院津贴保险金,即:意外伤害住院津贴保险金=意外伤害每日住院津贴金额×(实际住院天数-免赔天数)本合同意外伤害住院津贴保险金的免赔天数为3日。被保险人因同一次意外伤害事故多次住院治疗的,如果累计的实际住院天数大\n于免赔天数,我们在计算意外伤害住院津贴保险金时对累计的实际住院天数扣除一次免赔天数;如果累计的实际住院天数未超过约定的免赔天数,我们不承担给付意外伤害住院津贴保险金的责任。被保险人因不同意外伤害事故多次住院治疗的,我们在计算每次意外伤害住院津贴保险金时均会扣除一次免赔天数。\n我们在同一保险期间内累计给付意外伤害住院津贴保险金的天数以180日为限,累计给付达到180日的,该项保险责任终止。\n若被保险人因意外伤害事故在医院接受住院治疗,在保险期间届满时仍未出院的,对于被保险人该次住院治疗延续至保险期间届满日次日起30日内的住院,我们仍在上述180 日的给付天数范围内继续承担给付意外伤害住院津贴保险金的责任。对于被保险人该次住院治疗延续至保险期间届满日次日起30日后的住院,我们不再承担给付意外伤害住院津贴保险金的责任。\n意外伤害重症住院津贴保险金\n被保险人遭受意外伤害事故,并因该次意外伤害事故直接导致被保险人在医院入住重症监护病房(见7.9)接受住院治疗的,我们除按上述约定给付意外伤害住院津贴保险金之外,还将按意外伤害每日重症住院津贴金额与被保险人实际入住重症监护病房的天数的乘积给付意外伤害重症住院津贴保险金,即:意外伤害重症住院津贴保险金=意外伤害每日重症住院津贴金额×实际入住重症监护病房天数\n我们在同一保险期间内累计给付意外伤害重症住院津贴保险金的天数以30日为限,累计给付达到30日的,该项保险责任终止。\n若被保险人因意外伤害事故在医院入住重症监护病房接受住院治疗,在保险期间届满时仍未出重症监护病房的,对于被保险人该次入住重症监护病房的住院治疗延续至保险期间届满日次日起30日内的入住重症监护病房的住院,我们仍在上述30日的给付天数范围内继续承担给付意外伤害重症住院津贴保险金的责任。对于被保险人该次入住重症监护病房的住院治疗延续至保险期间届满日次日起30日后的入住重症监护病房的住院,我们不再承担给付意外伤害重症住院津贴保险金的责任。", "input": "小美投保了信美相互创可贴意外伤害医疗保险小美在保险起见届满日的10天前因运动意外受伤在重症监护病房住院40天请问住院津贴按照几天进行赔付", "constraints_num": 1, "constraints_splits": ["1. 参考下面所给知识回答问题。\n\n【文档名】信美相互创可贴意外伤害医疗保险条款\n【标题】信美相互创可贴意外伤害医疗保险条款阅读指引\n。条款目录\n6.其他需要关注的事项\n1.3    保险责任      在本合同保险期间内,我们承担下列保险责任:\n【正文】被保险人实际发生的医疗费用,我们将按被保险人实际发生的医疗费用扣除从被保险人遭受意外伤害事故,并因该次意外伤害事故直接导致其在医院接受住院治疗的,我们按实际住院天数(见7.8)在扣除免赔天数后的剩余天数与意外伤害每日住院津贴金额的乘积给付意外伤害住院津贴保险金,即:意外伤害住院津贴保险金=意外伤害每日住院津贴金额×(实际住院天数-免赔天数)本合同意外伤害住院津贴保险金的免赔天数为3日。被保险人因同一次意外伤害事故多次住院治疗的,如果累计的实际住院天数大\n于免赔天数,我们在计算意外伤害住院津贴保险金时对累计的实际住院天数扣除一次免赔天数;如果累计的实际住院天数未超过约定的免赔天数,我们不承担给付意外伤害住院津贴保险金的责任。被保险人因不同意外伤害事故多次住院治疗的,我们在计算每次意外伤害住院津贴保险金时均会扣除一次免赔天数。\n我们在同一保险期间内累计给付意外伤害住院津贴保险金的天数以180日为限,累计给付达到180日的,该项保险责任终止。\n若被保险人因意外伤害事故在医院接受住院治疗,在保险期间届满时仍未出院的,对于被保险人该次住院治疗延续至保险期间届满日次日起30日内的住院,我们仍在上述180 日的给付天数范围内继续承担给付意外伤害住院津贴保险金的责任。对于被保险人该次住院治疗延续至保险期间届满日次日起30日后的住院,我们不再承担给付意外伤害住院津贴保险金的责任。\n意外伤害重症住院津贴保险金\n被保险人遭受意外伤害事故,并因该次意外伤害事故直接导致被保险人在医院入住重症监护病房(见7.9)接受住院治疗的,我们除按上述约定给付意外伤害住院津贴保险金之外,还将按意外伤害每日重症住院津贴金额与被保险人实际入住重症监护病房的天数的乘积给付意外伤害重症住院津贴保险金,即:意外伤害重症住院津贴保险金=意外伤害每日重症住院津贴金额×实际入住重症监护病房天数\n我们在同一保险期间内累计给付意外伤害重症住院津贴保险金的天数以30日为限,累计给付达到30日的,该项保险责任终止。\n若被保险人因意外伤害事故在医院入住重症监护病房接受住院治疗,在保险期间届满时仍未出重症监护病房的,对于被保险人该次入住重症监护病房的住院治疗延续至保险期间届满日次日起30日内的入住重症监护病房的住院,我们仍在上述30日的给付天数范围内继续承担给付意外伤害重症住院津贴保险金的责任。对于被保险人该次入住重症监护病房的住院治疗延续至保险期间届满日次日起30日后的入住重症监护病房的住院,我们不再承担给付意外伤害重症住院津贴保险金的责任。"], "levels2": ["文本背景信息约束"], "category": "trace1.0"} +{"id": "23", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一个展示员工信息的HTML页面\n1. header包含站点标题,main部分放置表格,footer包含版权信息;\n"}], "type": "trace", "description": "创建一个展示员工信息的HTML页面", "constraints": "1. header包含站点标题,main部分放置表格,footer包含版权信息;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. header包含站点标题,main部分放置表格,footer包含版权信息;"], "levels2": ["模版约束"], "category": "trace1.0"} +{"id": "24", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "写一篇关于韩国双重清洁护肤好处的文章,深入探讨其在现代护肤中的重要性。\n1. 文章内容需全面覆盖韩国双重清洁法的原理、益处及正确执行方法;\n"}], "type": "trace", "description": "写一篇关于韩国双重清洁护肤好处的文章,深入探讨其在现代护肤中的重要性。", "constraints": "1. 文章内容需全面覆盖韩国双重清洁法的原理、益处及正确执行方法;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 文章内容需全面覆盖韩国双重清洁法的原理、益处及正确执行方法;"], "levels2": ["主题约束"], "category": "trace1.0"} +{"id": "25", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "选择并深入阐述两个强有力的观点,支持为何企业应当更新其人力资源政策,文章标题为“与时俱进:为何企业需更新人力资源政策”。\n1. 文章结尾需包含一个总结段落,重申观点的重要性并呼吁行动;\n"}], "type": "trace", "description": "选择并深入阐述两个强有力的观点,支持为何企业应当更新其人力资源政策,文章标题为“与时俱进:为何企业需更新人力资源政策”。", "constraints": "1. 文章结尾需包含一个总结段落,重申观点的重要性并呼吁行动;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 文章结尾需包含一个总结段落,重申观点的重要性并呼吁行动;"], "levels2": ["层次化结构约束"], "category": "trace1.0"} +{"id": "26", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为高铁车站设计一个响应式的页面布局。\n1. 页面中不应包含任何广告或无关信息,确保用户能够快速找到所需信息;\n"}], "type": "trace", "description": "为高铁车站设计一个响应式的页面布局。", "constraints": "1. 页面中不应包含任何广告或无关信息,确保用户能够快速找到所需信息;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 页面中不应包含任何广告或无关信息,确保用户能够快速找到所需信息;"], "levels2": ["排除约束"], "category": "trace1.0"} +{"id": "27", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "重新构造给定的文本段落\n1. 重构后的段落应避免任何关于特定族群的描述,而采用更为泛化的表达;\n# Inputs:\n在19世纪初,大约有150万印第安人生活在现在的美国。想象一下,如果他们仍然占据着这片土地,会发生什么。\n"}], "type": "trace", "description": "重新构造给定的文本段落", "constraints": "1. 重构后的段落应避免任何关于特定族群的描述,而采用更为泛化的表达;", "input": "在19世纪初,大约有150万印第安人生活在现在的美国。想象一下,如果他们仍然占据着这片土地,会发生什么。", "constraints_num": 1, "constraints_splits": ["1. 重构后的段落应避免任何关于特定族群的描述,而采用更为泛化的表达;"], "levels2": ["排除约束"], "category": "trace1.0"} +{"id": "28", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "给出《小王子》一书的摘要,推荐至少3本与《小王子》风格相似,探讨类似主题的书籍\n1. 读者年龄段:12至18岁青少年;\n"}], "type": "trace", "description": "给出《小王子》一书的摘要,推荐至少3本与《小王子》风格相似,探讨类似主题的书籍", "constraints": "1. 读者年龄段:12至18岁青少年;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 读者年龄段:12至18岁青少年;"], "levels2": ["受众目标约束"], "category": "trace1.0"} +{"id": "29", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "从给定文本中找到并返回最长的单词,结果需要以JSON格式返回,包括\"source_text\"(源文本)、\"longest_word\"(最长单词)和\"word_length\"(单词长度)。如果存在多个相同长度的最长单词,应返回所有这些单词。\n1. 整个结果不应超过200字;\n# Inputs:\n\"马尔科姆X是一个非常有名的黑人领袖,他致力于争取非裔美国人的权利和平等。\"\n"}], "type": "trace", "description": "从给定文本中找到并返回最长的单词,结果需要以JSON格式返回,包括\"source_text\"(源文本)、\"longest_word\"(最长单词)和\"word_length\"(单词长度)。如果存在多个相同长度的最长单词,应返回所有这些单词。", "constraints": "1. 整个结果不应超过200字;", "input": "\"马尔科姆X是一个非常有名的黑人领袖,他致力于争取非裔美国人的权利和平等。\"", "constraints_num": 1, "constraints_splits": ["1. 整个结果不应超过200字;"], "levels2": ["数值约束"], "category": "trace1.0"} +{"id": "30", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇关于2019年国际足联世界杯最终胜利者的新闻稿\n1. 新闻稿应避免使用任何可能引起读者困惑的体育术语,确保广大非体育迷也能轻松阅读和理解;\n"}], "type": "trace", "description": "撰写一篇关于2019年国际足联世界杯最终胜利者的新闻稿", "constraints": "1. 新闻稿应避免使用任何可能引起读者困惑的体育术语,确保广大非体育迷也能轻松阅读和理解;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 新闻稿应避免使用任何可能引起读者困惑的体育术语,确保广大非体育迷也能轻松阅读和理解;"], "levels2": ["排除约束"], "category": "trace1.0"} +{"id": "31", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "根据电影描述,输出电影的名称、主演名单、上映年份,简短的电影剧情描述。\n1. 列出至少两个权威电影数据库的来源链接。\n# Inputs:\n电影描述:一名年轻的男子与一只非洲猩猩建立了深厚的情谊,但随着时间的推移,猩猩变得危险并且不可控制。中途有一场火灾,导致动物从笼子里逃出来并在城市中肆虐。这部电影于1986年上映,由杰夫·戴尼尔斯和劳拉·邓恩主演。\n"}], "type": "trace", "description": "根据电影描述,输出电影的名称、主演名单、上映年份,简短的电影剧情描述。", "constraints": "1. 列出至少两个权威电影数据库的来源链接。", "input": "电影描述:一名年轻的男子与一只非洲猩猩建立了深厚的情谊,但随着时间的推移,猩猩变得危险并且不可控制。中途有一场火灾,导致动物从笼子里逃出来并在城市中肆虐。这部电影于1986年上映,由杰夫·戴尼尔斯和劳拉·邓恩主演。", "constraints_num": 1, "constraints_splits": ["1. 列出至少两个权威电影数据库的来源链接。"], "levels2": ["引用和参考约束"], "category": "trace1.0"} +{"id": "32", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "写一则关于苹果公司最新发布的AirTag产品的新闻稿\n1. 新闻稿的开头以“苹果公司今日宣布”作为固定的新闻开头模式;\n"}], "type": "trace", "description": "写一则关于苹果公司最新发布的AirTag产品的新闻稿", "constraints": "1. 新闻稿的开头以“苹果公司今日宣布”作为固定的新闻开头模式;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 新闻稿的开头以“苹果公司今日宣布”作为固定的新闻开头模式;"], "levels2": ["模版约束"], "category": "trace1.0"} +{"id": "33", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一段描述秋天夜晚的场景\n1. 文本中应包含对秋天夜晚温度、颜色、声音的生动描述;\n"}], "type": "trace", "description": "撰写一段描述秋天夜晚的场景", "constraints": "1. 文本中应包含对秋天夜晚温度、颜色、声音的生动描述;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 文本中应包含对秋天夜晚温度、颜色、声音的生动描述;"], "levels2": ["包含约束"], "category": "trace1.0"} +{"id": "34", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "设计一个程序,该程序接收一个单词作为输入,输出该单词的所有可能词性及其定义,格式为JSON。\n1. 输出中包含单词的词性类别不少于5种,例如名词(Noun)、动词(Verb)、形容词(Adjective)等;\n"}], "type": "trace", "description": "设计一个程序,该程序接收一个单词作为输入,输出该单词的所有可能词性及其定义,格式为JSON。", "constraints": "1. 输出中包含单词的词性类别不少于5种,例如名词(Noun)、动词(Verb)、形容词(Adjective)等;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 输出中包含单词的词性类别不少于5种,例如名词(Noun)、动词(Verb)、形容词(Adjective)等;"], "levels2": ["包含约束"], "category": "trace1.0"} +{"id": "35", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以正式、简洁的语气,使用主系表结构回答问题:谁是哈利波特系列小说的作者?\n1. 示例答案:“哈利波特系列小说的作者是J.K.罗琳。”\n"}], "type": "trace", "description": "以正式、简洁的语气,使用主系表结构回答问题:谁是哈利波特系列小说的作者?", "constraints": "1. 示例答案:“哈利波特系列小说的作者是J.K.罗琳。”", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 示例答案:“哈利波特系列小说的作者是J.K.罗琳。”"], "levels2": ["正例约束"], "category": "trace1.0"} +{"id": "36", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "给出一组商品数据,并使用表格形式列出三种笔记本电脑的详细配置,同时根据性能与价格比推荐一个最佳购买选项,并简要说明推荐理由。\n1. 理由说明限定在100字内。\n# Inputs:\n| 笔记本型号 | 价格   | 屏幕尺寸 | RAM | 存储配置   |\n|----------|------|--------|----|---------|\n| A        | 7000元 | 15英寸   | 8GB | 256GB SSD |\n| B        | 8000元 | 15.6英寸  | 12GB | 512GB SSD |\n| C        | 9000元 | 14英寸   | 16GB | 1TB HDD, 512GB SSD |\n"}], "type": "trace", "description": "给出一组商品数据,并使用表格形式列出三种笔记本电脑的详细配置,同时根据性能与价格比推荐一个最佳购买选项,并简要说明推荐理由。", "constraints": "1. 理由说明限定在100字内。", "input": "| 笔记本型号 | 价格   | 屏幕尺寸 | RAM | 存储配置   |\n|----------|------|--------|----|---------|\n| A        | 7000元 | 15英寸   | 8GB | 256GB SSD |\n| B        | 8000元 | 15.6英寸  | 12GB | 512GB SSD |\n| C        | 9000元 | 14英寸   | 16GB | 1TB HDD, 512GB SSD |", "constraints_num": 1, "constraints_splits": ["1. 理由说明限定在100字内。"], "levels2": ["数值约束"], "category": "trace1.0"} +{"id": "37", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "你是一个知识问答系统\n1. 参考下面所给知识回答问题。\n\n【正文】\n| 序号 | 药物名 | 中文名 | 商品名 | 批准的适应症 | 靶点 | 一般副反应 | 严重副反应 | 价格 |\n| --- | --- | --- | --- | --- | --- | --- | --- | --- |\n| 1 | Adotrastuzumab emtansine | 曲妥珠单抗抗体药物共轭物 | Kadcyla | Her2过表达的转移性乳腺癌 | HER2蛋白细胞外段 | 恶心、呕吐、腹泻、便秘、疲劳、血球减少,肝毒性、低钾血、高血压、头痛、肌肉骨骼疼痛、鼻出血 | 肝毒性,左心功能受损,致畸死胎 | 未知 |\n| 2 | Alemtuzumab | 阿仑单抗 | Campath | B细胞慢性淋巴细胞白血病 | B细胞和T细胞上的CD52蛋白 | 骨髓抑制、血球减少、低血压、呼吸道感染、发热、发冷、皮疹、头痛 | 心律失常,心肌病,慢性心衰,自身免疫性疾病,Grave’s病,巨细胞病毒及EBV病毒感染,第二肿瘤发生率增加 | 不可购买,该药物控制严格,只能通过REMS项目(风险评估缓解策略)预定 |\n| 3 | Bevacizumab | 贝伐珠单抗 | Avastin | 转移性结直肠癌,肾癌以及非小细胞肺癌;铂类耐药的复发性上皮细胞卵巢癌,输卵管癌,或者原发性腹膜后肿瘤;宫颈癌;脑胶质瘤 | VEGF | 腹痛、恶心、呕吐、腹泻、便秘、头痛、高血压、蛋白尿、衰弱、上呼吸道感染 | 高血压,栓塞时间,出血,肠道穿孔,伤口裂开。 | 100mg4mL(1瓶)3839.92美元 |\n| 4 | Blinatumomab | 双特异性抗体 | Blincyto | 费城染色体阴性的复发难治性B细胞前体急性淋巴细胞白血病(BcellALL) | B细胞上的CD19T细胞上的CD3 | 发热、血球减少、恶心、便秘 | 细胞因子释放综合征,神经毒性,中性粒缺乏性发热,败血症 | 未知 |\n| 5 | Brentuximab vedotin | 新型靶向抗体药物偶联物 | Adcetris | CD30阳性的霍奇金淋巴瘤患者 | CD30,共轭的细胞毒性药物MMAE结合细胞微管 | 感觉神经病变、血球减少、腹泻、恶心、呕吐、皮疹、咳嗽、疲劳 | 室上性心律失常,气胸,肺炎,肺栓塞,病毒感染导致的进行性多灶性脑白质脑病(PML) | 未知 |\n| 6 | Cetuximab | 西妥昔单抗 | Erbitux | 转移性KRAS阴性的结直肠癌,头颈部鳞癌 | EGFR | 痤疮样皮疹、脱发、瘙痒,低镁症、腹泻、恶心、便秘、失眠、抑郁症(特别是在患者接受伊立替康治疗时)、感觉神经病变 | 突发心脏骤停,肾衰,间质性肺病,肺栓塞,注射反应 | 2mgmL(1瓶,50mL):2031美元2mgml(1瓶,100mL):8237.2美元 |\n| 7 | Denosumab | 地诺塞麦 | Xgeva | 手术不能切除的骨巨细胞瘤 | RANK配体 | 关节痛、头痛、腹泻、恶心、呕吐、背部疼痛、疲劳和肢体疼痛 | 下颌骨坏死,骨髓炎 | 60mgmL(5支,1mL)1026.09美元 |\n| 8 | Ibritumomab tiuxetan | 替伊莫单抗 | Zevalin | 复发难治性非霍奇金淋巴瘤(NHL) | CD20,Tiuxetan是钇90金属螯合剂 | 高血压、血球减少、皮疹、腹痛、腹泻、恶心 | 注射反应,严重的细胞减少伴出血,StevenJohnson综合征,毒性表皮坏死溶解(toxicepidermalnecrolysis),AML及MDS患病风险增加。 | 未知 |\n| 9 | Ipilimumab | 伊匹单抗 | Yervoy | 不可切除或转移性恶性黑色瘤 | CTLA4 | 皮疹,瘙痒、腹泻、疲劳 | 心包炎,肾上腺功能减低,垂体功能减低,甲状腺功能减低,肠穿孔,肝炎,肺炎,格林巴利综合症。 | 未知 |\n| 10 | Nivolumab | 纳武单抗 | Opdivo | 不可切除或转移性恶性黑色素瘤,且对其他治疗药物反应不佳,转移性鳞状非小细胞肺癌 | PD1 | 皮疹、瘙痒、电解液紊乱、转氨酶升高、咳嗽、上呼吸道感染、水肿 | 免疫相关的结肠炎,肝炎,肾炎,肺炎 | 未知 |\n| 11 | Obinutuzumab | 阿托珠单抗 | Gazyva | 未经治疗的CLL(需与苯丁酸氮芥联用) | CD20 | 血球减少、发热、咳嗽、肌肉骨骼疾病 | 乙型肝炎病毒反应,病毒感染导致的进行性多灶性脑白质脑病(PML) | 未知 |\n| 12 | Ofatimumab | 奥法木单抗 | Arzerra | 难治性CLL,未经前线治疗的CLL(需与苯丁酸氮芥联用) | CD20 | 皮疹、腹泻、恶心、贫血、肺炎、疲劳、发烧 | 肠梗阻,病毒性肝炎,感染性疾病,病毒感染导致的进行性多灶性脑白质脑病(PML) | 未知 |\n| 13 | Panitumumab | 帕尼单抗 | Vectibix | 表达EGFR的结直肠癌 | EGFR | 痤疮样皮疹、瘙痒、表皮剥脱的甲沟炎皮炎、低镁症、低钙血症、咳嗽、呼吸困难、外围水肿、疲劳 | 皮肤毒性,间质性肺病,肺炎,肺纤维化 | 未知 |\n| 14 | Pertuzumab | 帕托珠单抗 | Perjeta | 转移性Her2阳性乳腺癌,需与曲妥珠单抗和多西他赛联用 | HER2蛋白细胞外段二聚化过程 | 脱发、腹泻、恶心、呕吐、粘液膜炎症、疹、周围神经病变、贫血、疲劳 | 伴或者不伴发热的中性粒细胞缺乏,过敏反应,左心室功能失常 | 未知 |\n| 15 | Ramucirumab | 雷莫芦单抗 | Cyramza | 进展转移性胃癌或胃食管交界癌,转移性非小细胞肺癌(经铂类联合多西他赛治疗期间或治疗后疾病仍然进展的患者),转移性结直肠癌(需与FOLFIRI化疗方案联用) | VEGFR2 | 高血压、腹泻、嗜中性白血球减少症、口腔炎 | 出血,高血压,心血管事件,肝硬化,肠梗阻,伤口愈合障碍,中性粒细胞缺乏性发热 | 未知 |\n| 16 | Rituxumab | 利妥昔单抗 | Rituxan | B细胞非霍奇金淋巴瘤,CLL | CD20 | 输液反应(发热、低血压、颤抖)、腹痛、腹泻、恶心、关节痛、肌痛 | 心律失常,心源性休克,骨髓抑制,肾毒性,血管性水肿,溶瘤综合征 | 10mgmL(1瓶,10mL):15596.6美元 |\n| 17 | Siltuximab | 司妥昔单抗 | Sylvant | HIV和HHV8阴性的多灶性Castleman’s病 | 可溶性和细胞膜上的白介素6(IL6) | 水肿,关节痛,上呼吸道感染、疲劳、皮疹 | 胃肠道穿孔,过敏反应,感染性疾病 | 未知 |\n| 18 | Tositumomab | 托西莫单抗 | Bexxar | CD20阳性的非霍奇金淋巴瘤 | 先给予CD20“裸”抗体,在给予放射性碘131结合的抗体 | 腹痛、恶心、呕吐、甲状腺功能减退、无力、头痛、咳嗽、发烧 | 骨髓抑制,AMLMDS风险增加,胸膜积液,肺炎,过敏反应 | 2014年2月起GSK不再生产该药 |\n# Inputs:\n如果一位患者需要连续使用Bevacizumab药物治疗转移性结直肠癌4个月,每月需要2瓶,购买这种药物的总花费是否会超过30000美元?\n"}], "type": "trace", "description": "你是一个知识问答系统", "constraints": "1. 参考下面所给知识回答问题。\n\n【正文】\n| 序号 | 药物名 | 中文名 | 商品名 | 批准的适应症 | 靶点 | 一般副反应 | 严重副反应 | 价格 |\n| --- | --- | --- | --- | --- | --- | --- | --- | --- |\n| 1 | Adotrastuzumab emtansine | 曲妥珠单抗抗体药物共轭物 | Kadcyla | Her2过表达的转移性乳腺癌 | HER2蛋白细胞外段 | 恶心、呕吐、腹泻、便秘、疲劳、血球减少,肝毒性、低钾血、高血压、头痛、肌肉骨骼疼痛、鼻出血 | 肝毒性,左心功能受损,致畸死胎 | 未知 |\n| 2 | Alemtuzumab | 阿仑单抗 | Campath | B细胞慢性淋巴细胞白血病 | B细胞和T细胞上的CD52蛋白 | 骨髓抑制、血球减少、低血压、呼吸道感染、发热、发冷、皮疹、头痛 | 心律失常,心肌病,慢性心衰,自身免疫性疾病,Grave’s病,巨细胞病毒及EBV病毒感染,第二肿瘤发生率增加 | 不可购买,该药物控制严格,只能通过REMS项目(风险评估缓解策略)预定 |\n| 3 | Bevacizumab | 贝伐珠单抗 | Avastin | 转移性结直肠癌,肾癌以及非小细胞肺癌;铂类耐药的复发性上皮细胞卵巢癌,输卵管癌,或者原发性腹膜后肿瘤;宫颈癌;脑胶质瘤 | VEGF | 腹痛、恶心、呕吐、腹泻、便秘、头痛、高血压、蛋白尿、衰弱、上呼吸道感染 | 高血压,栓塞时间,出血,肠道穿孔,伤口裂开。 | 100mg4mL(1瓶)3839.92美元 |\n| 4 | Blinatumomab | 双特异性抗体 | Blincyto | 费城染色体阴性的复发难治性B细胞前体急性淋巴细胞白血病(BcellALL) | B细胞上的CD19T细胞上的CD3 | 发热、血球减少、恶心、便秘 | 细胞因子释放综合征,神经毒性,中性粒缺乏性发热,败血症 | 未知 |\n| 5 | Brentuximab vedotin | 新型靶向抗体药物偶联物 | Adcetris | CD30阳性的霍奇金淋巴瘤患者 | CD30,共轭的细胞毒性药物MMAE结合细胞微管 | 感觉神经病变、血球减少、腹泻、恶心、呕吐、皮疹、咳嗽、疲劳 | 室上性心律失常,气胸,肺炎,肺栓塞,病毒感染导致的进行性多灶性脑白质脑病(PML) | 未知 |\n| 6 | Cetuximab | 西妥昔单抗 | Erbitux | 转移性KRAS阴性的结直肠癌,头颈部鳞癌 | EGFR | 痤疮样皮疹、脱发、瘙痒,低镁症、腹泻、恶心、便秘、失眠、抑郁症(特别是在患者接受伊立替康治疗时)、感觉神经病变 | 突发心脏骤停,肾衰,间质性肺病,肺栓塞,注射反应 | 2mgmL(1瓶,50mL):2031美元2mgml(1瓶,100mL):8237.2美元 |\n| 7 | Denosumab | 地诺塞麦 | Xgeva | 手术不能切除的骨巨细胞瘤 | RANK配体 | 关节痛、头痛、腹泻、恶心、呕吐、背部疼痛、疲劳和肢体疼痛 | 下颌骨坏死,骨髓炎 | 60mgmL(5支,1mL)1026.09美元 |\n| 8 | Ibritumomab tiuxetan | 替伊莫单抗 | Zevalin | 复发难治性非霍奇金淋巴瘤(NHL) | CD20,Tiuxetan是钇90金属螯合剂 | 高血压、血球减少、皮疹、腹痛、腹泻、恶心 | 注射反应,严重的细胞减少伴出血,StevenJohnson综合征,毒性表皮坏死溶解(toxicepidermalnecrolysis),AML及MDS患病风险增加。 | 未知 |\n| 9 | Ipilimumab | 伊匹单抗 | Yervoy | 不可切除或转移性恶性黑色瘤 | CTLA4 | 皮疹,瘙痒、腹泻、疲劳 | 心包炎,肾上腺功能减低,垂体功能减低,甲状腺功能减低,肠穿孔,肝炎,肺炎,格林巴利综合症。 | 未知 |\n| 10 | Nivolumab | 纳武单抗 | Opdivo | 不可切除或转移性恶性黑色素瘤,且对其他治疗药物反应不佳,转移性鳞状非小细胞肺癌 | PD1 | 皮疹、瘙痒、电解液紊乱、转氨酶升高、咳嗽、上呼吸道感染、水肿 | 免疫相关的结肠炎,肝炎,肾炎,肺炎 | 未知 |\n| 11 | Obinutuzumab | 阿托珠单抗 | Gazyva | 未经治疗的CLL(需与苯丁酸氮芥联用) | CD20 | 血球减少、发热、咳嗽、肌肉骨骼疾病 | 乙型肝炎病毒反应,病毒感染导致的进行性多灶性脑白质脑病(PML) | 未知 |\n| 12 | Ofatimumab | 奥法木单抗 | Arzerra | 难治性CLL,未经前线治疗的CLL(需与苯丁酸氮芥联用) | CD20 | 皮疹、腹泻、恶心、贫血、肺炎、疲劳、发烧 | 肠梗阻,病毒性肝炎,感染性疾病,病毒感染导致的进行性多灶性脑白质脑病(PML) | 未知 |\n| 13 | Panitumumab | 帕尼单抗 | Vectibix | 表达EGFR的结直肠癌 | EGFR | 痤疮样皮疹、瘙痒、表皮剥脱的甲沟炎皮炎、低镁症、低钙血症、咳嗽、呼吸困难、外围水肿、疲劳 | 皮肤毒性,间质性肺病,肺炎,肺纤维化 | 未知 |\n| 14 | Pertuzumab | 帕托珠单抗 | Perjeta | 转移性Her2阳性乳腺癌,需与曲妥珠单抗和多西他赛联用 | HER2蛋白细胞外段二聚化过程 | 脱发、腹泻、恶心、呕吐、粘液膜炎症、疹、周围神经病变、贫血、疲劳 | 伴或者不伴发热的中性粒细胞缺乏,过敏反应,左心室功能失常 | 未知 |\n| 15 | Ramucirumab | 雷莫芦单抗 | Cyramza | 进展转移性胃癌或胃食管交界癌,转移性非小细胞肺癌(经铂类联合多西他赛治疗期间或治疗后疾病仍然进展的患者),转移性结直肠癌(需与FOLFIRI化疗方案联用) | VEGFR2 | 高血压、腹泻、嗜中性白血球减少症、口腔炎 | 出血,高血压,心血管事件,肝硬化,肠梗阻,伤口愈合障碍,中性粒细胞缺乏性发热 | 未知 |\n| 16 | Rituxumab | 利妥昔单抗 | Rituxan | B细胞非霍奇金淋巴瘤,CLL | CD20 | 输液反应(发热、低血压、颤抖)、腹痛、腹泻、恶心、关节痛、肌痛 | 心律失常,心源性休克,骨髓抑制,肾毒性,血管性水肿,溶瘤综合征 | 10mgmL(1瓶,10mL):15596.6美元 |\n| 17 | Siltuximab | 司妥昔单抗 | Sylvant | HIV和HHV8阴性的多灶性Castleman’s病 | 可溶性和细胞膜上的白介素6(IL6) | 水肿,关节痛,上呼吸道感染、疲劳、皮疹 | 胃肠道穿孔,过敏反应,感染性疾病 | 未知 |\n| 18 | Tositumomab | 托西莫单抗 | Bexxar | CD20阳性的非霍奇金淋巴瘤 | 先给予CD20“裸”抗体,在给予放射性碘131结合的抗体 | 腹痛、恶心、呕吐、甲状腺功能减退、无力、头痛、咳嗽、发烧 | 骨髓抑制,AMLMDS风险增加,胸膜积液,肺炎,过敏反应 | 2014年2月起GSK不再生产该药 |", "input": "如果一位患者需要连续使用Bevacizumab药物治疗转移性结直肠癌4个月,每月需要2瓶,购买这种药物的总花费是否会超过30000美元?", "constraints_num": 1, "constraints_splits": ["1. 参考下面所给知识回答问题。\n\n【正文】\n| 序号 | 药物名 | 中文名 | 商品名 | 批准的适应症 | 靶点 | 一般副反应 | 严重副反应 | 价格 |\n| --- | --- | --- | --- | --- | --- | --- | --- | --- |\n| 1 | Adotrastuzumab emtansine | 曲妥珠单抗抗体药物共轭物 | Kadcyla | Her2过表达的转移性乳腺癌 | HER2蛋白细胞外段 | 恶心、呕吐、腹泻、便秘、疲劳、血球减少,肝毒性、低钾血、高血压、头痛、肌肉骨骼疼痛、鼻出血 | 肝毒性,左心功能受损,致畸死胎 | 未知 |\n| 2 | Alemtuzumab | 阿仑单抗 | Campath | B细胞慢性淋巴细胞白血病 | B细胞和T细胞上的CD52蛋白 | 骨髓抑制、血球减少、低血压、呼吸道感染、发热、发冷、皮疹、头痛 | 心律失常,心肌病,慢性心衰,自身免疫性疾病,Grave’s病,巨细胞病毒及EBV病毒感染,第二肿瘤发生率增加 | 不可购买,该药物控制严格,只能通过REMS项目(风险评估缓解策略)预定 |\n| 3 | Bevacizumab | 贝伐珠单抗 | Avastin | 转移性结直肠癌,肾癌以及非小细胞肺癌;铂类耐药的复发性上皮细胞卵巢癌,输卵管癌,或者原发性腹膜后肿瘤;宫颈癌;脑胶质瘤 | VEGF | 腹痛、恶心、呕吐、腹泻、便秘、头痛、高血压、蛋白尿、衰弱、上呼吸道感染 | 高血压,栓塞时间,出血,肠道穿孔,伤口裂开。 | 100mg4mL(1瓶)3839.92美元 |\n| 4 | Blinatumomab | 双特异性抗体 | Blincyto | 费城染色体阴性的复发难治性B细胞前体急性淋巴细胞白血病(BcellALL) | B细胞上的CD19T细胞上的CD3 | 发热、血球减少、恶心、便秘 | 细胞因子释放综合征,神经毒性,中性粒缺乏性发热,败血症 | 未知 |\n| 5 | Brentuximab vedotin | 新型靶向抗体药物偶联物 | Adcetris | CD30阳性的霍奇金淋巴瘤患者 | CD30,共轭的细胞毒性药物MMAE结合细胞微管 | 感觉神经病变、血球减少、腹泻、恶心、呕吐、皮疹、咳嗽、疲劳 | 室上性心律失常,气胸,肺炎,肺栓塞,病毒感染导致的进行性多灶性脑白质脑病(PML) | 未知 |\n| 6 | Cetuximab | 西妥昔单抗 | Erbitux | 转移性KRAS阴性的结直肠癌,头颈部鳞癌 | EGFR | 痤疮样皮疹、脱发、瘙痒,低镁症、腹泻、恶心、便秘、失眠、抑郁症(特别是在患者接受伊立替康治疗时)、感觉神经病变 | 突发心脏骤停,肾衰,间质性肺病,肺栓塞,注射反应 | 2mgmL(1瓶,50mL):2031美元2mgml(1瓶,100mL):8237.2美元 |\n| 7 | Denosumab | 地诺塞麦 | Xgeva | 手术不能切除的骨巨细胞瘤 | RANK配体 | 关节痛、头痛、腹泻、恶心、呕吐、背部疼痛、疲劳和肢体疼痛 | 下颌骨坏死,骨髓炎 | 60mgmL(5支,1mL)1026.09美元 |\n| 8 | Ibritumomab tiuxetan | 替伊莫单抗 | Zevalin | 复发难治性非霍奇金淋巴瘤(NHL) | CD20,Tiuxetan是钇90金属螯合剂 | 高血压、血球减少、皮疹、腹痛、腹泻、恶心 | 注射反应,严重的细胞减少伴出血,StevenJohnson综合征,毒性表皮坏死溶解(toxicepidermalnecrolysis),AML及MDS患病风险增加。 | 未知 |\n| 9 | Ipilimumab | 伊匹单抗 | Yervoy | 不可切除或转移性恶性黑色瘤 | CTLA4 | 皮疹,瘙痒、腹泻、疲劳 | 心包炎,肾上腺功能减低,垂体功能减低,甲状腺功能减低,肠穿孔,肝炎,肺炎,格林巴利综合症。 | 未知 |\n| 10 | Nivolumab | 纳武单抗 | Opdivo | 不可切除或转移性恶性黑色素瘤,且对其他治疗药物反应不佳,转移性鳞状非小细胞肺癌 | PD1 | 皮疹、瘙痒、电解液紊乱、转氨酶升高、咳嗽、上呼吸道感染、水肿 | 免疫相关的结肠炎,肝炎,肾炎,肺炎 | 未知 |\n| 11 | Obinutuzumab | 阿托珠单抗 | Gazyva | 未经治疗的CLL(需与苯丁酸氮芥联用) | CD20 | 血球减少、发热、咳嗽、肌肉骨骼疾病 | 乙型肝炎病毒反应,病毒感染导致的进行性多灶性脑白质脑病(PML) | 未知 |\n| 12 | Ofatimumab | 奥法木单抗 | Arzerra | 难治性CLL,未经前线治疗的CLL(需与苯丁酸氮芥联用) | CD20 | 皮疹、腹泻、恶心、贫血、肺炎、疲劳、发烧 | 肠梗阻,病毒性肝炎,感染性疾病,病毒感染导致的进行性多灶性脑白质脑病(PML) | 未知 |\n| 13 | Panitumumab | 帕尼单抗 | Vectibix | 表达EGFR的结直肠癌 | EGFR | 痤疮样皮疹、瘙痒、表皮剥脱的甲沟炎皮炎、低镁症、低钙血症、咳嗽、呼吸困难、外围水肿、疲劳 | 皮肤毒性,间质性肺病,肺炎,肺纤维化 | 未知 |\n| 14 | Pertuzumab | 帕托珠单抗 | Perjeta | 转移性Her2阳性乳腺癌,需与曲妥珠单抗和多西他赛联用 | HER2蛋白细胞外段二聚化过程 | 脱发、腹泻、恶心、呕吐、粘液膜炎症、疹、周围神经病变、贫血、疲劳 | 伴或者不伴发热的中性粒细胞缺乏,过敏反应,左心室功能失常 | 未知 |\n| 15 | Ramucirumab | 雷莫芦单抗 | Cyramza | 进展转移性胃癌或胃食管交界癌,转移性非小细胞肺癌(经铂类联合多西他赛治疗期间或治疗后疾病仍然进展的患者),转移性结直肠癌(需与FOLFIRI化疗方案联用) | VEGFR2 | 高血压、腹泻、嗜中性白血球减少症、口腔炎 | 出血,高血压,心血管事件,肝硬化,肠梗阻,伤口愈合障碍,中性粒细胞缺乏性发热 | 未知 |\n| 16 | Rituxumab | 利妥昔单抗 | Rituxan | B细胞非霍奇金淋巴瘤,CLL | CD20 | 输液反应(发热、低血压、颤抖)、腹痛、腹泻、恶心、关节痛、肌痛 | 心律失常,心源性休克,骨髓抑制,肾毒性,血管性水肿,溶瘤综合征 | 10mgmL(1瓶,10mL):15596.6美元 |\n| 17 | Siltuximab | 司妥昔单抗 | Sylvant | HIV和HHV8阴性的多灶性Castleman’s病 | 可溶性和细胞膜上的白介素6(IL6) | 水肿,关节痛,上呼吸道感染、疲劳、皮疹 | 胃肠道穿孔,过敏反应,感染性疾病 | 未知 |\n| 18 | Tositumomab | 托西莫单抗 | Bexxar | CD20阳性的非霍奇金淋巴瘤 | 先给予CD20“裸”抗体,在给予放射性碘131结合的抗体 | 腹痛、恶心、呕吐、甲状腺功能减退、无力、头痛、咳嗽、发烧 | 骨髓抑制,AMLMDS风险增加,胸膜积液,肺炎,过敏反应 | 2014年2月起GSK不再生产该药 |"], "levels2": ["表格背景信息约束"], "category": "trace1.0"} +{"id": "38", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为文本分类任务创建一个深度学习模型,并采用交叉验证方法评估模型的准确度。\n1. 报告附录提供所有用于模型训练和评估的代码和资料、来源。\n"}], "type": "trace", "description": "为文本分类任务创建一个深度学习模型,并采用交叉验证方法评估模型的准确度。", "constraints": "1. 报告附录提供所有用于模型训练和评估的代码和资料、来源。", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 报告附录提供所有用于模型训练和评估的代码和资料、来源。"], "levels2": ["引用和参考约束"], "category": "trace1.0"} +{"id": "39", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "计算购买所有糖果所需的总费用,并使用JSON格式输出结果,结果中需包含“总费用”这一关键词。\n1. 计算过程中保留两位小数的精度。\n# Inputs:\n{\n  \"巧克力棒\": {\n    \"数量\": 5,\n    \"价格\": 3.5\n  },\n  \"饼干\": {\n    \"数量\": 10,\n    \"价格\": 2\n  },\n  \"糖果\": {\n    \"数量\": 15,\n    \"价格\": 1.5\n  }\n}\n"}], "type": "trace", "description": "计算购买所有糖果所需的总费用,并使用JSON格式输出结果,结果中需包含“总费用”这一关键词。", "constraints": "1. 计算过程中保留两位小数的精度。", "input": "{\n  \"巧克力棒\": {\n    \"数量\": 5,\n    \"价格\": 3.5\n  },\n  \"饼干\": {\n    \"数量\": 10,\n    \"价格\": 2\n  },\n  \"糖果\": {\n    \"数量\": 15,\n    \"价格\": 1.5\n  }\n}", "constraints_num": 1, "constraints_splits": ["1. 计算过程中保留两位小数的精度。"], "levels2": ["数值约束"], "category": "trace1.0"} +{"id": "40", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "按照步骤和格式,制作一道美味的素食沙拉,确保食材新鲜与健康,注重食材处理和调味料使用。\n1. 采用简洁明了的语气风格,确保每个步骤清晰易懂,适合厨房新手操作。\n# Inputs:\n将生菜、西红柿、鳄梨、黄瓜、胡萝卜、羽衣甘蓝洗净,确保无残留农药;将生菜撕成小片,西红柿切丁,鳄梨切片,黄瓜切条,胡萝卜切丝,羽衣甘蓝切碎;将切好的所有食材放入大碗中;将半个柠檬挤汁,加入2汤匙橄榄油和适量盐,搅拌均匀;将调味料均匀倒在食材上,轻轻拌匀;将拌好的沙拉装盘,即可享用。\n"}], "type": "trace", "description": "按照步骤和格式,制作一道美味的素食沙拉,确保食材新鲜与健康,注重食材处理和调味料使用。", "constraints": "1. 采用简洁明了的语气风格,确保每个步骤清晰易懂,适合厨房新手操作。", "input": "将生菜、西红柿、鳄梨、黄瓜、胡萝卜、羽衣甘蓝洗净,确保无残留农药;将生菜撕成小片,西红柿切丁,鳄梨切片,黄瓜切条,胡萝卜切丝,羽衣甘蓝切碎;将切好的所有食材放入大碗中;将半个柠檬挤汁,加入2汤匙橄榄油和适量盐,搅拌均匀;将调味料均匀倒在食材上,轻轻拌匀;将拌好的沙拉装盘,即可享用。", "constraints_num": 1, "constraints_splits": ["1. 采用简洁明了的语气风格,确保每个步骤清晰易懂,适合厨房新手操作。"], "levels2": ["语气风格约束"], "category": "trace1.0"} +{"id": "41", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "描述康复物理治疗的过程,并以流程图的形式展示,包括初次评估、治疗计划制定、物理治疗实施、进度跟踪和定期评估等步骤。内容需包含初次评估目的、个性化治疗计划制定、常用治疗方法和技术、康复进度跟踪方法及定期评估的重要性。\n1. 描述需以康复物理治疗师的第一人称角度进行。\n"}], "type": "trace", "description": "描述康复物理治疗的过程,并以流程图的形式展示,包括初次评估、治疗计划制定、物理治疗实施、进度跟踪和定期评估等步骤。内容需包含初次评估目的、个性化治疗计划制定、常用治疗方法和技术、康复进度跟踪方法及定期评估的重要性。", "constraints": "1. 描述需以康复物理治疗师的第一人称角度进行。", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 描述需以康复物理治疗师的第一人称角度进行。"], "levels2": ["角色扮演约束"], "category": "trace1.0"} +{"id": "42", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "使用JSON格式输出商品名称为iMac,价格为1500美元转换为不同货币的价格\n1. 对于非英语使用者,需在输出中包含对应货币的非英语名称,例如,欧元应表示为“Euro”(英语)和“欧元”(中文);\n"}], "type": "trace", "description": "使用JSON格式输出商品名称为iMac,价格为1500美元转换为不同货币的价格", "constraints": "1. 对于非英语使用者,需在输出中包含对应货币的非英语名称,例如,欧元应表示为“Euro”(英语)和“欧元”(中文);", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 对于非英语使用者,需在输出中包含对应货币的非英语名称,例如,欧元应表示为“Euro”(英语)和“欧元”(中文);"], "levels2": ["多语言约束"], "category": "trace1.0"} +{"id": "43", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为白雪公主创造一个女儿作为新角色,新角色的设定需与原著世界观相契合,保持童话主题,遵循积极、正面的价值观,采用浪漫、梦幻的语气风格,设定在一个和平、繁荣的王国,具备善良、勇敢的品质,与白雪公主一同经历冒险。\n1. 在描述这些内容时,应使用生动、形象的语言,让读者能够清晰地想象出这个新角色的形象和性格。\n"}], "type": "trace", "description": "为白雪公主创造一个女儿作为新角色,新角色的设定需与原著世界观相契合,保持童话主题,遵循积极、正面的价值观,采用浪漫、梦幻的语气风格,设定在一个和平、繁荣的王国,具备善良、勇敢的品质,与白雪公主一同经历冒险。", "constraints": "1. 在描述这些内容时,应使用生动、形象的语言,让读者能够清晰地想象出这个新角色的形象和性格。", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 在描述这些内容时,应使用生动、形象的语言,让读者能够清晰地想象出这个新角色的形象和性格。"], "levels2": ["语言特征约束"], "category": "trace1.0"} +{"id": "44", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "你是一个知识问答系统\n1. 参考下面所给知识回答问题。\n\n【正文】\n| 行政处罚决定书文号 | 处罚名称 | 处罚类别1 | 处罚类别2 | 处罚事由 | 处罚依据 | 行政相对人名称 | 法定代表人姓名 | 处罚结果 | 处罚决定日期 | 处罚机关 | 当前状态 | 地方编码 | 备注 |\n| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |\n| 迁安市管食品处字〔201801〕41号 | 迁安市北购商场有限责任公司经营标签不符合规定的食品 | 罚款 | 没收违法所得、没收非法财物 | 经营标签不符合规定的食品 | 《中华人民共和国食品安全法》第一百二十五条第一款第(二)项 | 迁安市北购商场有限责任公司 | 李治蓉 | 1、没收违法所得592.8元;2、没收违法经营的“台趣”牌猴菇酥性饼干3盒;3、处行政罚款18500元,合计19092.8元。 | 2018723 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管药品处字〔201814〕12号 | 迁安市桐君阁药房未按规定实施《药品经营质量管理规范》案 | 罚款 | 责令停产停业 | 未按规定实施《药品经营质量管理规范》 | 《中华人民共和国药品管理法》第七十八条 | 迁安市桐君阁药房 | 商国正 | 1.责令停业整顿;2.罚款5000元。 | 201879 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管药品处字〔201814〕13号 | 迁安市康信药店未按规定实施《药品经营质量管理规范》案 | 罚款 | 责令停产停业 | 未按规定实施《药品经营质量管理规范》 | 《中华人民共和国药品管理法》第七十八条 | 迁安市康信药店 | 张印荣 | 1.责令停业整顿;2.罚款5000元。 | 201879 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管药品处字〔201814〕14号 | 迁安市悦康大药房未按规定实施《药品经营质量管理规范》案 | 罚款 | 责令停产停业 | 未按规定实施《药品经营质量管理规范》 | 《中华人民共和国药品管理法》第七十八条 | 迁安市悦康大药房 | 戚峰 | 1.责令停业整顿;2.罚款5000元。 | 2018713 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管药品处字〔201814〕15号 | 迁安市恩康大药房未按规定实施《药品经营质量管理规范》案 | 罚款 | 责令停产停业 | 未按规定实施《药品经营质量管理规范》 | 《中华人民共和国药品管理法》第七十八条 | 迁安市恩康大药房 | 汪晓悦 | 1.责令停业整顿;2.罚款5000元。 | 2018725 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管药品处字〔201814〕16号 | 迁安市药匣子大药房未按规定实施《药品经营质量管理规范》案 | 罚款 | 责令停产停业 | 未按规定实施《药品经营质量管理规范》 | 《中华人民共和国药品管理法》第七十八条 | 迁安市药匣子大药房 | 尹文霞 | 1.责令停业整顿;2.罚款5000元。 | 2018725 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管食品处字〔201814〕29号 | 李红梅销售农药残留超过食品安全标准限量的食用农产品案 | 罚款 | 没收违法所得、没收非法财物 | 销售农药残留超过食品安全标准限量的食用农产品 | 《中华人民共和国食品安全法》第一百二十四条第一款 | 李红梅 |  | 1.没收违法所得10.00元;2.罚款50000.00元。 | 201872 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管食品处字〔201814〕42号 | 罗长波未取得食品经营许可从事保健食品“银色世纪”牌螺旋藻片销售案 | 罚款 | 没收违法所得、没收非法财物 | 未取得食品经营许可从事保健食品“银色世纪”牌螺旋藻片销售 | 《中华人民共和国食品安全法》第一百二十二条第一款 | 罗长波 |  | 1、没收未销售的保健食品“银色世纪”牌螺旋藻片10盒;2、没收违法所得100元;3、处行政罚款50000元,合计50100元。 | 2018627 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管食品处字〔201814〕46号 | 李雪未取得食品经营许可从事保健食品“洞庭牌祺然片”销售案 | 罚款 | 没收违法所得、没收非法财物 | 未取得食品经营许可从事保健食品“洞庭牌祺然片”销售 | 《中华人民共和国食品安全法》第一百二十二条第一款 | 李雪 |  | 1、没收未销售的保健食品“洞庭牌祺然片”8瓶;2、没收违法所得130元;3、处行政罚款50000元,合计50130元。 | 2018713 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管食品处字〔201814〕37号 | 张东侠经营不符合食品安全标准食品 | 罚款 | 没收违法所得、没收非法财物 | 经营不符合食品安全标准食品 | 《中华人民共和国食品安全法》第一百二十四条第一款第(三)项;第一百二十五条第二款 | 张东侠 |  | 1、责令其限期改正经营标签存在瑕疵的食品的行为;2、没收违法所得15元;3、罚款50000元;合计50015元。 | 2018627 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管食品处字〔201814〕43号 | 河北蓝亨啤酒有限公司生产经营不合格食品案 | 罚款 | 没收违法所得、没收非法财物 | 生产经营不合格食品 | 《中华人民共和国食品安全法》第一百二十五条第一款第(二)项 | 河北蓝亨啤酒有限公司 | 何力彬 | 1、没收违法所得410.4元2、罚款29589.6元,共计30000元。 | 201874 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管餐饮处字〔201814〕14号 | 杨建未按规定查验供货者的许可证 | 罚款 |  | 未按规定查验供货者的许可证 | 《中华人民共和国食品安全法》第一百二十六条第一款第(三)项 | 杨建 |  | 罚款5000元 | 201872 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管餐饮处字〔201814〕16号 | 范丽文未按规定查验供货者的许可证 | 罚款 |  | 未按规定查验供货者的许可证 | 《中华人民共和国食品安全法》第一百二十六条第一款第(三)项 | 范丽文 |  | 罚款5000元 | 201872 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管药品处字〔201810〕10号 | 唐山祝君康大药房连锁有限公司永信店未按规定实施《药品经营质量管理规范》 | 罚款 | 责令停产停业 | 未按规定实施《药品经营质量管理规范》 | 《中华人民共和国药品管理法》第七十八条 | 唐山祝君康大药房连锁有限公司永信店 | 李小飞 | 1.责令停业整顿;2.行政罚款5000元。 | 201876 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管食品处字〔201810〕39号 | 阎艳利经营法律禁止经营的农药残留超标的食用农产品“韭菜”案 | 罚款 | 没收违法所得、没收非法财物 | 经营法律禁止经营的农药残留超标的食用农产品“韭菜” | 《中华人民共和国食品安全法》第一百二十四条第一款 | 阎艳利 |  | 1、没收违法所得200元;2、并处罚款50000元,合计50200元。 | 2018629 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管食品处字〔201810〕40号 | 杨勇经营法律禁止经营的农药残留超标的食用农产品“韭菜”案 | 罚款 | 没收违法所得、没收非法财物 | 经营法律禁止经营的农药残留超标的食用农产品“韭菜” | 《中华人民共和国食品安全法》第一百二十四条第一款 | 杨勇 |  | 1、没收违法所得10元;2、行政罚款50000元,合计50010元。 | 2018713 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管餐饮处字〔2018〕0526号 | 田海艳未取得小餐饮登记证从事餐饮经营活动案 | 罚款 | 没收违法所得、没收非法财物 | 未取得小餐饮登记证从事餐饮经营活动 | 《河北省食品小作坊小餐饮小摊点管理条例》第五十一条第一款 | 田海艳 |  | 1、没收违法所得3000元;2、罚款2000元;合计5000元。 | 2018628 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管食品处字〔2018〕112号 | 刘才未取得食品小作坊登记证从事食品加工经营活动案 | 罚款 |  | 未取得食品小作坊登记证从事食品加工经营活动 | 《河北省食品小作坊小餐饮小摊点管理条例》第五十一条第一款 | 刘才 |  | 罚款1000元 | 2018727 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管餐饮处字〔2018〕124号 | 许磊未取得登记证从事小餐饮经营活动 | 罚款 | 没收违法所得、没收非法财物 | 未取得登记证从事小餐饮经营活动 | 《河北省食品小作坊小餐饮小摊点管理条例》第五十一条第一款 | 许磊 |  | 1.没收违法所得3000元;2.罚款2000元,合计5000元。 | 2018625 | 迁安市市场监督管理局 | 0 | 130283 |  |\n# Inputs:\n哪些案件的处罚结果既包含了\"没收违法所得、没收非法财物\"又对行政相对人处以了罚款,并请列出各案件的行政相对人名称、法定代表人姓名(如有)、处罚结果的详细信息?\n"}], "type": "trace", "description": "你是一个知识问答系统", "constraints": "1. 参考下面所给知识回答问题。\n\n【正文】\n| 行政处罚决定书文号 | 处罚名称 | 处罚类别1 | 处罚类别2 | 处罚事由 | 处罚依据 | 行政相对人名称 | 法定代表人姓名 | 处罚结果 | 处罚决定日期 | 处罚机关 | 当前状态 | 地方编码 | 备注 |\n| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |\n| 迁安市管食品处字〔201801〕41号 | 迁安市北购商场有限责任公司经营标签不符合规定的食品 | 罚款 | 没收违法所得、没收非法财物 | 经营标签不符合规定的食品 | 《中华人民共和国食品安全法》第一百二十五条第一款第(二)项 | 迁安市北购商场有限责任公司 | 李治蓉 | 1、没收违法所得592.8元;2、没收违法经营的“台趣”牌猴菇酥性饼干3盒;3、处行政罚款18500元,合计19092.8元。 | 2018723 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管药品处字〔201814〕12号 | 迁安市桐君阁药房未按规定实施《药品经营质量管理规范》案 | 罚款 | 责令停产停业 | 未按规定实施《药品经营质量管理规范》 | 《中华人民共和国药品管理法》第七十八条 | 迁安市桐君阁药房 | 商国正 | 1.责令停业整顿;2.罚款5000元。 | 201879 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管药品处字〔201814〕13号 | 迁安市康信药店未按规定实施《药品经营质量管理规范》案 | 罚款 | 责令停产停业 | 未按规定实施《药品经营质量管理规范》 | 《中华人民共和国药品管理法》第七十八条 | 迁安市康信药店 | 张印荣 | 1.责令停业整顿;2.罚款5000元。 | 201879 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管药品处字〔201814〕14号 | 迁安市悦康大药房未按规定实施《药品经营质量管理规范》案 | 罚款 | 责令停产停业 | 未按规定实施《药品经营质量管理规范》 | 《中华人民共和国药品管理法》第七十八条 | 迁安市悦康大药房 | 戚峰 | 1.责令停业整顿;2.罚款5000元。 | 2018713 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管药品处字〔201814〕15号 | 迁安市恩康大药房未按规定实施《药品经营质量管理规范》案 | 罚款 | 责令停产停业 | 未按规定实施《药品经营质量管理规范》 | 《中华人民共和国药品管理法》第七十八条 | 迁安市恩康大药房 | 汪晓悦 | 1.责令停业整顿;2.罚款5000元。 | 2018725 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管药品处字〔201814〕16号 | 迁安市药匣子大药房未按规定实施《药品经营质量管理规范》案 | 罚款 | 责令停产停业 | 未按规定实施《药品经营质量管理规范》 | 《中华人民共和国药品管理法》第七十八条 | 迁安市药匣子大药房 | 尹文霞 | 1.责令停业整顿;2.罚款5000元。 | 2018725 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管食品处字〔201814〕29号 | 李红梅销售农药残留超过食品安全标准限量的食用农产品案 | 罚款 | 没收违法所得、没收非法财物 | 销售农药残留超过食品安全标准限量的食用农产品 | 《中华人民共和国食品安全法》第一百二十四条第一款 | 李红梅 |  | 1.没收违法所得10.00元;2.罚款50000.00元。 | 201872 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管食品处字〔201814〕42号 | 罗长波未取得食品经营许可从事保健食品“银色世纪”牌螺旋藻片销售案 | 罚款 | 没收违法所得、没收非法财物 | 未取得食品经营许可从事保健食品“银色世纪”牌螺旋藻片销售 | 《中华人民共和国食品安全法》第一百二十二条第一款 | 罗长波 |  | 1、没收未销售的保健食品“银色世纪”牌螺旋藻片10盒;2、没收违法所得100元;3、处行政罚款50000元,合计50100元。 | 2018627 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管食品处字〔201814〕46号 | 李雪未取得食品经营许可从事保健食品“洞庭牌祺然片”销售案 | 罚款 | 没收违法所得、没收非法财物 | 未取得食品经营许可从事保健食品“洞庭牌祺然片”销售 | 《中华人民共和国食品安全法》第一百二十二条第一款 | 李雪 |  | 1、没收未销售的保健食品“洞庭牌祺然片”8瓶;2、没收违法所得130元;3、处行政罚款50000元,合计50130元。 | 2018713 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管食品处字〔201814〕37号 | 张东侠经营不符合食品安全标准食品 | 罚款 | 没收违法所得、没收非法财物 | 经营不符合食品安全标准食品 | 《中华人民共和国食品安全法》第一百二十四条第一款第(三)项;第一百二十五条第二款 | 张东侠 |  | 1、责令其限期改正经营标签存在瑕疵的食品的行为;2、没收违法所得15元;3、罚款50000元;合计50015元。 | 2018627 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管食品处字〔201814〕43号 | 河北蓝亨啤酒有限公司生产经营不合格食品案 | 罚款 | 没收违法所得、没收非法财物 | 生产经营不合格食品 | 《中华人民共和国食品安全法》第一百二十五条第一款第(二)项 | 河北蓝亨啤酒有限公司 | 何力彬 | 1、没收违法所得410.4元2、罚款29589.6元,共计30000元。 | 201874 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管餐饮处字〔201814〕14号 | 杨建未按规定查验供货者的许可证 | 罚款 |  | 未按规定查验供货者的许可证 | 《中华人民共和国食品安全法》第一百二十六条第一款第(三)项 | 杨建 |  | 罚款5000元 | 201872 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管餐饮处字〔201814〕16号 | 范丽文未按规定查验供货者的许可证 | 罚款 |  | 未按规定查验供货者的许可证 | 《中华人民共和国食品安全法》第一百二十六条第一款第(三)项 | 范丽文 |  | 罚款5000元 | 201872 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管药品处字〔201810〕10号 | 唐山祝君康大药房连锁有限公司永信店未按规定实施《药品经营质量管理规范》 | 罚款 | 责令停产停业 | 未按规定实施《药品经营质量管理规范》 | 《中华人民共和国药品管理法》第七十八条 | 唐山祝君康大药房连锁有限公司永信店 | 李小飞 | 1.责令停业整顿;2.行政罚款5000元。 | 201876 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管食品处字〔201810〕39号 | 阎艳利经营法律禁止经营的农药残留超标的食用农产品“韭菜”案 | 罚款 | 没收违法所得、没收非法财物 | 经营法律禁止经营的农药残留超标的食用农产品“韭菜” | 《中华人民共和国食品安全法》第一百二十四条第一款 | 阎艳利 |  | 1、没收违法所得200元;2、并处罚款50000元,合计50200元。 | 2018629 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管食品处字〔201810〕40号 | 杨勇经营法律禁止经营的农药残留超标的食用农产品“韭菜”案 | 罚款 | 没收违法所得、没收非法财物 | 经营法律禁止经营的农药残留超标的食用农产品“韭菜” | 《中华人民共和国食品安全法》第一百二十四条第一款 | 杨勇 |  | 1、没收违法所得10元;2、行政罚款50000元,合计50010元。 | 2018713 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管餐饮处字〔2018〕0526号 | 田海艳未取得小餐饮登记证从事餐饮经营活动案 | 罚款 | 没收违法所得、没收非法财物 | 未取得小餐饮登记证从事餐饮经营活动 | 《河北省食品小作坊小餐饮小摊点管理条例》第五十一条第一款 | 田海艳 |  | 1、没收违法所得3000元;2、罚款2000元;合计5000元。 | 2018628 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管食品处字〔2018〕112号 | 刘才未取得食品小作坊登记证从事食品加工经营活动案 | 罚款 |  | 未取得食品小作坊登记证从事食品加工经营活动 | 《河北省食品小作坊小餐饮小摊点管理条例》第五十一条第一款 | 刘才 |  | 罚款1000元 | 2018727 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管餐饮处字〔2018〕124号 | 许磊未取得登记证从事小餐饮经营活动 | 罚款 | 没收违法所得、没收非法财物 | 未取得登记证从事小餐饮经营活动 | 《河北省食品小作坊小餐饮小摊点管理条例》第五十一条第一款 | 许磊 |  | 1.没收违法所得3000元;2.罚款2000元,合计5000元。 | 2018625 | 迁安市市场监督管理局 | 0 | 130283 |  |", "input": "哪些案件的处罚结果既包含了\"没收违法所得、没收非法财物\"又对行政相对人处以了罚款,并请列出各案件的行政相对人名称、法定代表人姓名(如有)、处罚结果的详细信息?", "constraints_num": 1, "constraints_splits": ["1. 参考下面所给知识回答问题。\n\n【正文】\n| 行政处罚决定书文号 | 处罚名称 | 处罚类别1 | 处罚类别2 | 处罚事由 | 处罚依据 | 行政相对人名称 | 法定代表人姓名 | 处罚结果 | 处罚决定日期 | 处罚机关 | 当前状态 | 地方编码 | 备注 |\n| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |\n| 迁安市管食品处字〔201801〕41号 | 迁安市北购商场有限责任公司经营标签不符合规定的食品 | 罚款 | 没收违法所得、没收非法财物 | 经营标签不符合规定的食品 | 《中华人民共和国食品安全法》第一百二十五条第一款第(二)项 | 迁安市北购商场有限责任公司 | 李治蓉 | 1、没收违法所得592.8元;2、没收违法经营的“台趣”牌猴菇酥性饼干3盒;3、处行政罚款18500元,合计19092.8元。 | 2018723 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管药品处字〔201814〕12号 | 迁安市桐君阁药房未按规定实施《药品经营质量管理规范》案 | 罚款 | 责令停产停业 | 未按规定实施《药品经营质量管理规范》 | 《中华人民共和国药品管理法》第七十八条 | 迁安市桐君阁药房 | 商国正 | 1.责令停业整顿;2.罚款5000元。 | 201879 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管药品处字〔201814〕13号 | 迁安市康信药店未按规定实施《药品经营质量管理规范》案 | 罚款 | 责令停产停业 | 未按规定实施《药品经营质量管理规范》 | 《中华人民共和国药品管理法》第七十八条 | 迁安市康信药店 | 张印荣 | 1.责令停业整顿;2.罚款5000元。 | 201879 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管药品处字〔201814〕14号 | 迁安市悦康大药房未按规定实施《药品经营质量管理规范》案 | 罚款 | 责令停产停业 | 未按规定实施《药品经营质量管理规范》 | 《中华人民共和国药品管理法》第七十八条 | 迁安市悦康大药房 | 戚峰 | 1.责令停业整顿;2.罚款5000元。 | 2018713 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管药品处字〔201814〕15号 | 迁安市恩康大药房未按规定实施《药品经营质量管理规范》案 | 罚款 | 责令停产停业 | 未按规定实施《药品经营质量管理规范》 | 《中华人民共和国药品管理法》第七十八条 | 迁安市恩康大药房 | 汪晓悦 | 1.责令停业整顿;2.罚款5000元。 | 2018725 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管药品处字〔201814〕16号 | 迁安市药匣子大药房未按规定实施《药品经营质量管理规范》案 | 罚款 | 责令停产停业 | 未按规定实施《药品经营质量管理规范》 | 《中华人民共和国药品管理法》第七十八条 | 迁安市药匣子大药房 | 尹文霞 | 1.责令停业整顿;2.罚款5000元。 | 2018725 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管食品处字〔201814〕29号 | 李红梅销售农药残留超过食品安全标准限量的食用农产品案 | 罚款 | 没收违法所得、没收非法财物 | 销售农药残留超过食品安全标准限量的食用农产品 | 《中华人民共和国食品安全法》第一百二十四条第一款 | 李红梅 |  | 1.没收违法所得10.00元;2.罚款50000.00元。 | 201872 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管食品处字〔201814〕42号 | 罗长波未取得食品经营许可从事保健食品“银色世纪”牌螺旋藻片销售案 | 罚款 | 没收违法所得、没收非法财物 | 未取得食品经营许可从事保健食品“银色世纪”牌螺旋藻片销售 | 《中华人民共和国食品安全法》第一百二十二条第一款 | 罗长波 |  | 1、没收未销售的保健食品“银色世纪”牌螺旋藻片10盒;2、没收违法所得100元;3、处行政罚款50000元,合计50100元。 | 2018627 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管食品处字〔201814〕46号 | 李雪未取得食品经营许可从事保健食品“洞庭牌祺然片”销售案 | 罚款 | 没收违法所得、没收非法财物 | 未取得食品经营许可从事保健食品“洞庭牌祺然片”销售 | 《中华人民共和国食品安全法》第一百二十二条第一款 | 李雪 |  | 1、没收未销售的保健食品“洞庭牌祺然片”8瓶;2、没收违法所得130元;3、处行政罚款50000元,合计50130元。 | 2018713 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管食品处字〔201814〕37号 | 张东侠经营不符合食品安全标准食品 | 罚款 | 没收违法所得、没收非法财物 | 经营不符合食品安全标准食品 | 《中华人民共和国食品安全法》第一百二十四条第一款第(三)项;第一百二十五条第二款 | 张东侠 |  | 1、责令其限期改正经营标签存在瑕疵的食品的行为;2、没收违法所得15元;3、罚款50000元;合计50015元。 | 2018627 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管食品处字〔201814〕43号 | 河北蓝亨啤酒有限公司生产经营不合格食品案 | 罚款 | 没收违法所得、没收非法财物 | 生产经营不合格食品 | 《中华人民共和国食品安全法》第一百二十五条第一款第(二)项 | 河北蓝亨啤酒有限公司 | 何力彬 | 1、没收违法所得410.4元2、罚款29589.6元,共计30000元。 | 201874 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管餐饮处字〔201814〕14号 | 杨建未按规定查验供货者的许可证 | 罚款 |  | 未按规定查验供货者的许可证 | 《中华人民共和国食品安全法》第一百二十六条第一款第(三)项 | 杨建 |  | 罚款5000元 | 201872 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管餐饮处字〔201814〕16号 | 范丽文未按规定查验供货者的许可证 | 罚款 |  | 未按规定查验供货者的许可证 | 《中华人民共和国食品安全法》第一百二十六条第一款第(三)项 | 范丽文 |  | 罚款5000元 | 201872 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管药品处字〔201810〕10号 | 唐山祝君康大药房连锁有限公司永信店未按规定实施《药品经营质量管理规范》 | 罚款 | 责令停产停业 | 未按规定实施《药品经营质量管理规范》 | 《中华人民共和国药品管理法》第七十八条 | 唐山祝君康大药房连锁有限公司永信店 | 李小飞 | 1.责令停业整顿;2.行政罚款5000元。 | 201876 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管食品处字〔201810〕39号 | 阎艳利经营法律禁止经营的农药残留超标的食用农产品“韭菜”案 | 罚款 | 没收违法所得、没收非法财物 | 经营法律禁止经营的农药残留超标的食用农产品“韭菜” | 《中华人民共和国食品安全法》第一百二十四条第一款 | 阎艳利 |  | 1、没收违法所得200元;2、并处罚款50000元,合计50200元。 | 2018629 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管食品处字〔201810〕40号 | 杨勇经营法律禁止经营的农药残留超标的食用农产品“韭菜”案 | 罚款 | 没收违法所得、没收非法财物 | 经营法律禁止经营的农药残留超标的食用农产品“韭菜” | 《中华人民共和国食品安全法》第一百二十四条第一款 | 杨勇 |  | 1、没收违法所得10元;2、行政罚款50000元,合计50010元。 | 2018713 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管餐饮处字〔2018〕0526号 | 田海艳未取得小餐饮登记证从事餐饮经营活动案 | 罚款 | 没收违法所得、没收非法财物 | 未取得小餐饮登记证从事餐饮经营活动 | 《河北省食品小作坊小餐饮小摊点管理条例》第五十一条第一款 | 田海艳 |  | 1、没收违法所得3000元;2、罚款2000元;合计5000元。 | 2018628 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管食品处字〔2018〕112号 | 刘才未取得食品小作坊登记证从事食品加工经营活动案 | 罚款 |  | 未取得食品小作坊登记证从事食品加工经营活动 | 《河北省食品小作坊小餐饮小摊点管理条例》第五十一条第一款 | 刘才 |  | 罚款1000元 | 2018727 | 迁安市市场监督管理局 | 0 | 130283 |  |\n| 迁安市管餐饮处字〔2018〕124号 | 许磊未取得登记证从事小餐饮经营活动 | 罚款 | 没收违法所得、没收非法财物 | 未取得登记证从事小餐饮经营活动 | 《河北省食品小作坊小餐饮小摊点管理条例》第五十一条第一款 | 许磊 |  | 1.没收违法所得3000元;2.罚款2000元,合计5000元。 | 2018625 | 迁安市市场监督管理局 | 0 | 130283 |  |"], "levels2": ["表格背景信息约束"], "category": "trace1.0"} +{"id": "45", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "你是一个知识问答系统\n1. 参考下面所给知识回答问题。\n\n【文档名】2023年一季度AAK达标奖励政策\n【标题】2023年一季度AAK达标奖励政策\n4)奖励系数:\n【正文】|季度AAK目标达成率|目标达成系数a|\n|---|---|\n|≥120%|1.2|\n|[110%,120%)|1.1|\n|[100%,110%)|1.0|\n|[90%,100%)|0.7|\n|[80%,90%)|0.5|\n|<80%|0|\n②销量规模系数b:按总体季度零售量分档设定(总体季度零售量=全新H5、H5经典款、\nHS5、H7、H9和HQ9季度合计零售量)\n|总体季度零售量|销量规模系数b|\n|---|---|\n|≥190|1.1|\n|[140,190)|1.05|\n|[0,140)|1|\n③本地上牌系数c:\n●考核要求:考核季度本地上牌率,达标系数为1,未达标系数为0.9;\n●计算说明:季度本地上牌率测算数据为季度零售出库且上牌的车辆,对于红旗伙伴开发的泛政客户、企业公务用车、出行行业客户和奖励用车大客户车辆,在本地上牌率计算时予以扣除(车辆信息以TDS/DMS系统中客户档案为准);\n●计算公式:本地上牌率=一季度零售出库且上本地牌的全新H5、H5经典款、HS5、H7、H9和HQ9合计数量/一季度零售出库且上牌的全新H5、H5经典款、HS5、H7、H9和HQ9合计数量;\n# Inputs:\n2023 年一季度 AAK 达标奖励政策中运输周期为2时,在途库存系数是多少?\n"}], "type": "trace", "description": "你是一个知识问答系统", "constraints": "1. 参考下面所给知识回答问题。\n\n【文档名】2023年一季度AAK达标奖励政策\n【标题】2023年一季度AAK达标奖励政策\n4)奖励系数:\n【正文】|季度AAK目标达成率|目标达成系数a|\n|---|---|\n|≥120%|1.2|\n|[110%,120%)|1.1|\n|[100%,110%)|1.0|\n|[90%,100%)|0.7|\n|[80%,90%)|0.5|\n|<80%|0|\n②销量规模系数b:按总体季度零售量分档设定(总体季度零售量=全新H5、H5经典款、\nHS5、H7、H9和HQ9季度合计零售量)\n|总体季度零售量|销量规模系数b|\n|---|---|\n|≥190|1.1|\n|[140,190)|1.05|\n|[0,140)|1|\n③本地上牌系数c:\n●考核要求:考核季度本地上牌率,达标系数为1,未达标系数为0.9;\n●计算说明:季度本地上牌率测算数据为季度零售出库且上牌的车辆,对于红旗伙伴开发的泛政客户、企业公务用车、出行行业客户和奖励用车大客户车辆,在本地上牌率计算时予以扣除(车辆信息以TDS/DMS系统中客户档案为准);\n●计算公式:本地上牌率=一季度零售出库且上本地牌的全新H5、H5经典款、HS5、H7、H9和HQ9合计数量/一季度零售出库且上牌的全新H5、H5经典款、HS5、H7、H9和HQ9合计数量;", "input": "2023 年一季度 AAK 达标奖励政策中运输周期为2时,在途库存系数是多少?", "constraints_num": 1, "constraints_splits": ["1. 参考下面所给知识回答问题。\n\n【文档名】2023年一季度AAK达标奖励政策\n【标题】2023年一季度AAK达标奖励政策\n4)奖励系数:\n【正文】|季度AAK目标达成率|目标达成系数a|\n|---|---|\n|≥120%|1.2|\n|[110%,120%)|1.1|\n|[100%,110%)|1.0|\n|[90%,100%)|0.7|\n|[80%,90%)|0.5|\n|<80%|0|\n②销量规模系数b:按总体季度零售量分档设定(总体季度零售量=全新H5、H5经典款、\nHS5、H7、H9和HQ9季度合计零售量)\n|总体季度零售量|销量规模系数b|\n|---|---|\n|≥190|1.1|\n|[140,190)|1.05|\n|[0,140)|1|\n③本地上牌系数c:\n●考核要求:考核季度本地上牌率,达标系数为1,未达标系数为0.9;\n●计算说明:季度本地上牌率测算数据为季度零售出库且上牌的车辆,对于红旗伙伴开发的泛政客户、企业公务用车、出行行业客户和奖励用车大客户车辆,在本地上牌率计算时予以扣除(车辆信息以TDS/DMS系统中客户档案为准);\n●计算公式:本地上牌率=一季度零售出库且上本地牌的全新H5、H5经典款、HS5、H7、H9和HQ9合计数量/一季度零售出库且上牌的全新H5、H5经典款、HS5、H7、H9和HQ9合计数量;"], "levels2": ["文本背景信息约束"], "category": "trace1.0"} +{"id": "46", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "编辑一篇关于“无人配送”在商业应用中的文章摘要,使其更易读\n1. 摘要应采用段落形式呈现,首行缩进2个字符,以增强可读性和视觉效果;\n"}], "type": "trace", "description": "编辑一篇关于“无人配送”在商业应用中的文章摘要,使其更易读", "constraints": "1. 摘要应采用段落形式呈现,首行缩进2个字符,以增强可读性和视觉效果;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 摘要应采用段落形式呈现,首行缩进2个字符,以增强可读性和视觉效果;"], "levels2": ["模版约束"], "category": "trace1.0"} +{"id": "47", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "设计一个可以通过语音交互进行控制的智能家居系统,该系统应包含灯光、温度、音响等设备的控制功能。\n1. 系统应具备角色扮演功能,即能够识别并响应如“主人模式”、“访客模式”等不同使用情境下的语音指令;\n"}], "type": "trace", "description": "设计一个可以通过语音交互进行控制的智能家居系统,该系统应包含灯光、温度、音响等设备的控制功能。", "constraints": "1. 系统应具备角色扮演功能,即能够识别并响应如“主人模式”、“访客模式”等不同使用情境下的语音指令;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 系统应具备角色扮演功能,即能够识别并响应如“主人模式”、“访客模式”等不同使用情境下的语音指令;"], "levels2": ["角色扮演约束"], "category": "trace1.0"} +{"id": "48", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "你是一个知识问答系统\n1. 参考下面所给知识回答问题。\n\n【正文】\n| 学号 | 姓名 | 所在学院 | 当前所在级 | 专业名称 | 班级 | 学制 | 执行计划中未获得学分课程列表 |\n| --- | --- | --- | --- | --- | --- | --- | --- |\n| 5503117006 | 陈天钰 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;高等数学(Ⅰ)上;生产实习;线性代数;学科导论课;专业英语与科技论文写作(双语) |\n| 5701117003 | 艾晨曦 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117009 | 金明 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料科学基础(I)下;材料课程设计PT;材料现代测试分析技术(Ⅰ);材料性能学;材料综合设计实验;创新创业基础;生产实习;专业英语与科技论文写作(双语) |\n| 5701117011 | 符晔 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117013 | 余天鸿 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117016 | 张琦 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117017 | 王贤储 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117034 | 徐光勇 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117041 | 朱光纪 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;体育(5);专业英语与科技论文写作(双语) |\n| 5701117042 | 徐翼飞 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117049 | 傅搏之 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117051 | 王宇晨 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117056 | 刘畅 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117062 | 刘江宏 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117083 | 张静 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117087 | 谢银龙 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117089 | 卞倩 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117092 | 吴仁康 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117093 | 何富朋 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n# Inputs:\n哪位学生在执行计划中未获得的学分课程列表中包含了高等数学(Ⅰ)上?\n"}], "type": "trace", "description": "你是一个知识问答系统", "constraints": "1. 参考下面所给知识回答问题。\n\n【正文】\n| 学号 | 姓名 | 所在学院 | 当前所在级 | 专业名称 | 班级 | 学制 | 执行计划中未获得学分课程列表 |\n| --- | --- | --- | --- | --- | --- | --- | --- |\n| 5503117006 | 陈天钰 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;高等数学(Ⅰ)上;生产实习;线性代数;学科导论课;专业英语与科技论文写作(双语) |\n| 5701117003 | 艾晨曦 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117009 | 金明 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料科学基础(I)下;材料课程设计PT;材料现代测试分析技术(Ⅰ);材料性能学;材料综合设计实验;创新创业基础;生产实习;专业英语与科技论文写作(双语) |\n| 5701117011 | 符晔 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117013 | 余天鸿 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117016 | 张琦 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117017 | 王贤储 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117034 | 徐光勇 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117041 | 朱光纪 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;体育(5);专业英语与科技论文写作(双语) |\n| 5701117042 | 徐翼飞 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117049 | 傅搏之 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117051 | 王宇晨 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117056 | 刘畅 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117062 | 刘江宏 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117083 | 张静 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117087 | 谢银龙 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117089 | 卞倩 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117092 | 吴仁康 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117093 | 何富朋 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |", "input": "哪位学生在执行计划中未获得的学分课程列表中包含了高等数学(Ⅰ)上?", "constraints_num": 1, "constraints_splits": ["1. 参考下面所给知识回答问题。\n\n【正文】\n| 学号 | 姓名 | 所在学院 | 当前所在级 | 专业名称 | 班级 | 学制 | 执行计划中未获得学分课程列表 |\n| --- | --- | --- | --- | --- | --- | --- | --- |\n| 5503117006 | 陈天钰 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;高等数学(Ⅰ)上;生产实习;线性代数;学科导论课;专业英语与科技论文写作(双语) |\n| 5701117003 | 艾晨曦 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117009 | 金明 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料科学基础(I)下;材料课程设计PT;材料现代测试分析技术(Ⅰ);材料性能学;材料综合设计实验;创新创业基础;生产实习;专业英语与科技论文写作(双语) |\n| 5701117011 | 符晔 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117013 | 余天鸿 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117016 | 张琦 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117017 | 王贤储 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117034 | 徐光勇 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117041 | 朱光纪 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;体育(5);专业英语与科技论文写作(双语) |\n| 5701117042 | 徐翼飞 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117049 | 傅搏之 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117051 | 王宇晨 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117056 | 刘畅 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117062 | 刘江宏 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117083 | 张静 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117087 | 谢银龙 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117089 | 卞倩 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117092 | 吴仁康 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |\n| 5701117093 | 何富朋 | 材料科学与工程学院 | 2017 | 材料科学与工程(金属材料方向) | 材料科学与工程(金属材料方向)171班 | 4 | 毕业设计(论文);材料课程设计PT;材料综合设计实验;生产实习;专业英语与科技论文写作(双语) |"], "levels2": ["表格背景信息约束"], "category": "trace1.0"} +{"id": "49", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一份购物清单\n1. 商品名称需使用斜体字标记,数量需使用加粗字标记,以方便快速识别和采购;\n"}], "type": "trace", "description": "创建一份购物清单", "constraints": "1. 商品名称需使用斜体字标记,数量需使用加粗字标记,以方便快速识别和采购;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 商品名称需使用斜体字标记,数量需使用加粗字标记,以方便快速识别和采购;"], "levels2": ["文本样式约束"], "category": "trace1.0"} +{"id": "50", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为一位创业者提供建议,他们正在考虑在互联网上开设一家咖啡网店,采用markdown格式,包含市场分析、产品定位、网络营销策略、成本预算、风险评估五个主要部分的建议。\n1. 建议中避免任何可能导致隐私泄露的敏感信息,如个人数据或商业机密,确保所有建议在保护隐私和遵守商业道德的前提下进行;\n"}], "type": "trace", "description": "为一位创业者提供建议,他们正在考虑在互联网上开设一家咖啡网店,采用markdown格式,包含市场分析、产品定位、网络营销策略、成本预算、风险评估五个主要部分的建议。", "constraints": "1. 建议中避免任何可能导致隐私泄露的敏感信息,如个人数据或商业机密,确保所有建议在保护隐私和遵守商业道德的前提下进行;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 建议中避免任何可能导致隐私泄露的敏感信息,如个人数据或商业机密,确保所有建议在保护隐私和遵守商业道德的前提下进行;"], "levels2": ["隐私约束"], "category": "trace1.0"} +{"id": "51", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以第一人称的叙述方式撰写一篇游记,描述最近一次旅行青岛的经历,重点突出参观博物馆和品尝海鲜的体验,包含一段关于青岛当地人文风情的描写,以及一段个人感悟。\n1. 文章应包含至少一张您在青岛旅行时拍摄的照片,照片需以居中方式插入文章中适当的位置,照片下方需附上简短的说明文字;\n"}], "type": "trace", "description": "以第一人称的叙述方式撰写一篇游记,描述最近一次旅行青岛的经历,重点突出参观博物馆和品尝海鲜的体验,包含一段关于青岛当地人文风情的描写,以及一段个人感悟。", "constraints": "1. 文章应包含至少一张您在青岛旅行时拍摄的照片,照片需以居中方式插入文章中适当的位置,照片下方需附上简短的说明文字;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 文章应包含至少一张您在青岛旅行时拍摄的照片,照片需以居中方式插入文章中适当的位置,照片下方需附上简短的说明文字;"], "levels2": ["模版约束"], "category": "trace1.0"} +{"id": "52", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "你是一个知识问答系统\n1. 参考下面所给知识回答问题。\n\n【文档名】舒适系列女士多功能羽毛球鞋190 北卡蓝\n【标题】舒适系列女士多功能羽毛球鞋190 北卡蓝\n【正文】# 舒适系列女士多功能羽毛球鞋190 北卡蓝\n**catchline**: 适合初学羽毛球的运动员,在室内或者室外的球场上开始发现打羽毛球的乐趣!\n**composition_data**: 帮面\n50% 聚氨酯, 50% 聚酯纤维\n鞋底\n100% 橡胶乳胶\n衬里和内垫\n100% 聚酯纤维\n**categories**: 所有运动|羽毛球|女士|鞋袜|球鞋\n**characteristics**: nan\n**benefits**: 全新设计的蜂鸟纹路橡胶鞋底,使球鞋的抓地力更佳。|鞋面PU革+ 三明治网面结构,透气性良好,双脚干爽更舒适。|传统Cupsole复古外底加上EVA中底带来更好的减震效果。|新鞋底的材料重量比上一代鞋底重量单只减少了20g。让你步伐更加轻盈快捷。\n**genders**: 女士\n**structurations**: 运动水平::初阶|频率::偶尔|运动地点::室内|地面::木地板/体育馆|紧固件类型::绑带|鞋高::低帮鞋|步伐类型::各种步伐|材质::皮革|材质::网眼|防水::非防水|足宽::中型|鞋子类型::轻盈|运动地点::室内|鞋子类型::舒适性|鞋子类型::抓地鞋|水滴::0毫米|可拆卸::不可拆卸|可拆卸鞋底::删除唯一不可用|地面::室内使用|有印记外底::无印记|皮革来源::合成革|季节::四季\n**colors**: Dreamy blue/雪白\n**brand**: PERFLY\n**product_nature**: 鞋子\n**universe_label_zh**: 网球\n**department_label_zh**: 羽毛球\n**family**: 女士初阶羽毛球鞋\n**discount_price**: nan\n**list_price**: 149.9\n**display_price**: 149.9\n**currency**: Chinese Yuan\n# Inputs:\n请问有出售适合在室内使用的羽毛球鞋吗,我希望是为女性设计的轻便型?\n"}], "type": "trace", "description": "你是一个知识问答系统", "constraints": "1. 参考下面所给知识回答问题。\n\n【文档名】舒适系列女士多功能羽毛球鞋190 北卡蓝\n【标题】舒适系列女士多功能羽毛球鞋190 北卡蓝\n【正文】# 舒适系列女士多功能羽毛球鞋190 北卡蓝\n**catchline**: 适合初学羽毛球的运动员,在室内或者室外的球场上开始发现打羽毛球的乐趣!\n**composition_data**: 帮面\n50% 聚氨酯, 50% 聚酯纤维\n鞋底\n100% 橡胶乳胶\n衬里和内垫\n100% 聚酯纤维\n**categories**: 所有运动|羽毛球|女士|鞋袜|球鞋\n**characteristics**: nan\n**benefits**: 全新设计的蜂鸟纹路橡胶鞋底,使球鞋的抓地力更佳。|鞋面PU革+ 三明治网面结构,透气性良好,双脚干爽更舒适。|传统Cupsole复古外底加上EVA中底带来更好的减震效果。|新鞋底的材料重量比上一代鞋底重量单只减少了20g。让你步伐更加轻盈快捷。\n**genders**: 女士\n**structurations**: 运动水平::初阶|频率::偶尔|运动地点::室内|地面::木地板/体育馆|紧固件类型::绑带|鞋高::低帮鞋|步伐类型::各种步伐|材质::皮革|材质::网眼|防水::非防水|足宽::中型|鞋子类型::轻盈|运动地点::室内|鞋子类型::舒适性|鞋子类型::抓地鞋|水滴::0毫米|可拆卸::不可拆卸|可拆卸鞋底::删除唯一不可用|地面::室内使用|有印记外底::无印记|皮革来源::合成革|季节::四季\n**colors**: Dreamy blue/雪白\n**brand**: PERFLY\n**product_nature**: 鞋子\n**universe_label_zh**: 网球\n**department_label_zh**: 羽毛球\n**family**: 女士初阶羽毛球鞋\n**discount_price**: nan\n**list_price**: 149.9\n**display_price**: 149.9\n**currency**: Chinese Yuan", "input": "请问有出售适合在室内使用的羽毛球鞋吗,我希望是为女性设计的轻便型?", "constraints_num": 1, "constraints_splits": ["1. 参考下面所给知识回答问题。\n\n【文档名】舒适系列女士多功能羽毛球鞋190 北卡蓝\n【标题】舒适系列女士多功能羽毛球鞋190 北卡蓝\n【正文】# 舒适系列女士多功能羽毛球鞋190 北卡蓝\n**catchline**: 适合初学羽毛球的运动员,在室内或者室外的球场上开始发现打羽毛球的乐趣!\n**composition_data**: 帮面\n50% 聚氨酯, 50% 聚酯纤维\n鞋底\n100% 橡胶乳胶\n衬里和内垫\n100% 聚酯纤维\n**categories**: 所有运动|羽毛球|女士|鞋袜|球鞋\n**characteristics**: nan\n**benefits**: 全新设计的蜂鸟纹路橡胶鞋底,使球鞋的抓地力更佳。|鞋面PU革+ 三明治网面结构,透气性良好,双脚干爽更舒适。|传统Cupsole复古外底加上EVA中底带来更好的减震效果。|新鞋底的材料重量比上一代鞋底重量单只减少了20g。让你步伐更加轻盈快捷。\n**genders**: 女士\n**structurations**: 运动水平::初阶|频率::偶尔|运动地点::室内|地面::木地板/体育馆|紧固件类型::绑带|鞋高::低帮鞋|步伐类型::各种步伐|材质::皮革|材质::网眼|防水::非防水|足宽::中型|鞋子类型::轻盈|运动地点::室内|鞋子类型::舒适性|鞋子类型::抓地鞋|水滴::0毫米|可拆卸::不可拆卸|可拆卸鞋底::删除唯一不可用|地面::室内使用|有印记外底::无印记|皮革来源::合成革|季节::四季\n**colors**: Dreamy blue/雪白\n**brand**: PERFLY\n**product_nature**: 鞋子\n**universe_label_zh**: 网球\n**department_label_zh**: 羽毛球\n**family**: 女士初阶羽毛球鞋\n**discount_price**: nan\n**list_price**: 149.9\n**display_price**: 149.9\n**currency**: Chinese Yuan"], "levels2": ["文本背景信息约束"], "category": "trace1.0"} +{"id": "53", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "将电影《星球大战:原力觉醒》的剧情简述转化为一段短文本摘要\n1. 内容中关键角色和事件的名称使用斜体字以突出显示;\n"}], "type": "trace", "description": "将电影《星球大战:原力觉醒》的剧情简述转化为一段短文本摘要", "constraints": "1. 内容中关键角色和事件的名称使用斜体字以突出显示;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 内容中关键角色和事件的名称使用斜体字以突出显示;"], "levels2": ["文本样式约束"], "category": "trace1.0"} +{"id": "54", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "根据输入的电影简介,预测并以JSON格式输出电影的类型,同时提供一段简短的解释说明为何电影属于预测的类型。\n1. 电影类型需从以下分类中选取:动作、喜剧、剧情、惊悚、科幻、动画、纪录片、犯罪、爱情、恐怖、冒险、奇幻、战争、历史、音乐、运动、西部、武侠。\n# Inputs:\n{\n  \"movie_title\": \"拯救大兵瑞恩\",\n  \"movie_synopsis\": \"这是一部关于二战时期拯救失踪士兵瑞恩的电影\"\n}\n"}], "type": "trace", "description": "根据输入的电影简介,预测并以JSON格式输出电影的类型,同时提供一段简短的解释说明为何电影属于预测的类型。", "constraints": "1. 电影类型需从以下分类中选取:动作、喜剧、剧情、惊悚、科幻、动画、纪录片、犯罪、爱情、恐怖、冒险、奇幻、战争、历史、音乐、运动、西部、武侠。", "input": "{\n  \"movie_title\": \"拯救大兵瑞恩\",\n  \"movie_synopsis\": \"这是一部关于二战时期拯救失踪士兵瑞恩的电影\"\n}", "constraints_num": 1, "constraints_splits": ["1. 电影类型需从以下分类中选取:动作、喜剧、剧情、惊悚、科幻、动画、纪录片、犯罪、爱情、恐怖、冒险、奇幻、战争、历史、音乐、运动、西部、武侠。"], "levels2": ["主题约束"], "category": "trace1.0"} +{"id": "55", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "详细列出淋巴瘤治疗可能的化疗药物选项,包括每种药物的作用机制、预期疗效、副作用,同时考虑到患者及其家属的担忧和疑问,使用易于理解的语言,并提供进一步阅读的资源链接或参考文献。\n1. 信息的准确性和可靠性需引用最新的医疗研究和临床指南作为支持;\n"}], "type": "trace", "description": "详细列出淋巴瘤治疗可能的化疗药物选项,包括每种药物的作用机制、预期疗效、副作用,同时考虑到患者及其家属的担忧和疑问,使用易于理解的语言,并提供进一步阅读的资源链接或参考文献。", "constraints": "1. 信息的准确性和可靠性需引用最新的医疗研究和临床指南作为支持;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 信息的准确性和可靠性需引用最新的医疗研究和临床指南作为支持;"], "levels2": ["引用和参考约束"], "category": "trace1.0"} +{"id": "56", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "写一篇简要说明,探讨电影媒体如何在塑造公众对电影和电影明星印象方面起着重要作用。\n1. 避免使用明星的私人信息或未经证实的传闻作为论据;\n"}], "type": "trace", "description": "写一篇简要说明,探讨电影媒体如何在塑造公众对电影和电影明星印象方面起着重要作用。", "constraints": "1. 避免使用明星的私人信息或未经证实的传闻作为论据;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 避免使用明星的私人信息或未经证实的传闻作为论据;"], "levels2": ["隐私约束"], "category": "trace1.0"} +{"id": "57", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一份简历的自我介绍\n1. 语气上要显得自信、专业且积极,展现求职者对计算机科学领域的热爱和对工作的热情;\n"}], "type": "trace", "description": "撰写一份简历的自我介绍", "constraints": "1. 语气上要显得自信、专业且积极,展现求职者对计算机科学领域的热爱和对工作的热情;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 语气上要显得自信、专业且积极,展现求职者对计算机科学领域的热爱和对工作的热情;"], "levels2": ["语气风格约束"], "category": "trace1.0"} +{"id": "58", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为一位30岁的办公室工作人员设计一份为期4周的健身计划,目标是增强核心力量和提高心肺功能。\n1. 此健身计划针对没有健身经验的人士;\n"}], "type": "trace", "description": "为一位30岁的办公室工作人员设计一份为期4周的健身计划,目标是增强核心力量和提高心肺功能。", "constraints": "1. 此健身计划针对没有健身经验的人士;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 此健身计划针对没有健身经验的人士;"], "levels2": ["受众目标约束"], "category": "trace1.0"} +{"id": "59", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "编辑给定的演讲稿\n1. 在段落内部有适当的过渡语句。\n# Inputs:\n尊敬的各位来宾,我与您们见面。我将从能源转型的视角,探讨全球化对能源产业的影响。首先,我将回顾过去50年的情况,然后深入分析当前的状况,最后展望未来的发展。\n"}], "type": "trace", "description": "编辑给定的演讲稿", "constraints": "1. 在段落内部有适当的过渡语句。", "input": "尊敬的各位来宾,我与您们见面。我将从能源转型的视角,探讨全球化对能源产业的影响。首先,我将回顾过去50年的情况,然后深入分析当前的状况,最后展望未来的发展。", "constraints_num": 1, "constraints_splits": ["1. 在段落内部有适当的过渡语句。"], "levels2": ["语法结构约束"], "category": "trace1.0"} +{"id": "60", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "分析文本并给出主题\n1. 分析时应采用专业学术的语气风格;\n# Inputs:\n“人生就像一盒巧克力,你永远不知道你会得到什么。”-阿甘正传。\n"}], "type": "trace", "description": "分析文本并给出主题", "constraints": "1. 分析时应采用专业学术的语气风格;", "input": "“人生就像一盒巧克力,你永远不知道你会得到什么。”-阿甘正传。", "constraints_num": 1, "constraints_splits": ["1. 分析时应采用专业学术的语气风格;"], "levels2": ["语气风格约束"], "category": "trace1.0"} +{"id": "61", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "提供健康饮食的建议和菜谱,至少包含5种不同的食材类别(如谷物、蔬菜、水果、蛋白质来源、乳制品),并提供3个具体的菜谱示例,适合2-4人食用。\n1. 建议和菜谱都要有明确的标题,以方便快速定位。\n"}], "type": "trace", "description": "提供健康饮食的建议和菜谱,至少包含5种不同的食材类别(如谷物、蔬菜、水果、蛋白质来源、乳制品),并提供3个具体的菜谱示例,适合2-4人食用。", "constraints": "1. 建议和菜谱都要有明确的标题,以方便快速定位。", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 建议和菜谱都要有明确的标题,以方便快速定位。"], "levels2": ["层次化结构约束"], "category": "trace1.0"} +{"id": "62", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "概括以下文本\n1. 在概括的开头和结尾部分使用总分总结构;\n# Inputs:\n1. 大都市地区污染对环境和人类健康构成重大威胁。\n2. 政府与环保组织已采取措施,但需进一步努力。\n3. 解决方案包括:\n   a. 建立更多公共交通系统。\n   b. 推广清洁能源使用。\n4. 鼓励减少浪费和污染同样重要。\n总结:需综合施策,以缓解大都市污染问题。\n"}], "type": "trace", "description": "概括以下文本", "constraints": "1. 在概括的开头和结尾部分使用总分总结构;", "input": "1. 大都市地区污染对环境和人类健康构成重大威胁。\n2. 政府与环保组织已采取措施,但需进一步努力。\n3. 解决方案包括:\n   a. 建立更多公共交通系统。\n   b. 推广清洁能源使用。\n4. 鼓励减少浪费和污染同样重要。\n总结:需综合施策,以缓解大都市污染问题。", "constraints_num": 1, "constraints_splits": ["1. 在概括的开头和结尾部分使用总分总结构;"], "levels2": ["模版约束"], "category": "trace1.0"} +{"id": "63", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "将古诗重新格式化\n1. 严格遵循古诗的断句和韵律结构;\n# Inputs:\n今夕何夕,见此良人!只思量起,凄然自怜。落帽卸衣,犹带愁眉。\n"}], "type": "trace", "description": "将古诗重新格式化", "constraints": "1. 严格遵循古诗的断句和韵律结构;", "input": "今夕何夕,见此良人!只思量起,凄然自怜。落帽卸衣,犹带愁眉。", "constraints_num": 1, "constraints_splits": ["1. 严格遵循古诗的断句和韵律结构;"], "levels2": ["语法结构约束"], "category": "trace1.0"} +{"id": "64", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以一个疫苗研究专家的视角,预测未来5年内疫苗研究领域预计的进步和发展\n1. 预测内容包括但不限于新技术的突破、新疫苗的研发、临床试验的进展以及全球疫苗接种策略的优化;\n"}], "type": "trace", "description": "以一个疫苗研究专家的视角,预测未来5年内疫苗研究领域预计的进步和发展", "constraints": "1. 预测内容包括但不限于新技术的突破、新疫苗的研发、临床试验的进展以及全球疫苗接种策略的优化;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 预测内容包括但不限于新技术的突破、新疫苗的研发、临床试验的进展以及全球疫苗接种策略的优化;"], "levels2": ["主题约束"], "category": "trace1.0"} +{"id": "65", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以LaTeX格式解释流体力学中常用的雷诺数和莫慈数,详述它们的应用方法和数学模型,并列出每个概念的定义、物理意义、数学表达式以及在工程实践中的应用案例。\n1. 信息呈现需使用编号列表,以确保清晰和条理性。\n"}], "type": "trace", "description": "以LaTeX格式解释流体力学中常用的雷诺数和莫慈数,详述它们的应用方法和数学模型,并列出每个概念的定义、物理意义、数学表达式以及在工程实践中的应用案例。", "constraints": "1. 信息呈现需使用编号列表,以确保清晰和条理性。", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 信息呈现需使用编号列表,以确保清晰和条理性。"], "levels2": ["编号和列表约束"], "category": "trace1.0"} +{"id": "66", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "编辑一篇文章,使其完全符合ACL(Association for Computational Linguistics)会议的投稿要求。\n1. 确保文章的语法结构严谨,避免语法错误,包括但不限于主谓一致、时态使用和被动语态的恰当运用;\n"}], "type": "trace", "description": "编辑一篇文章,使其完全符合ACL(Association for Computational Linguistics)会议的投稿要求。", "constraints": "1. 确保文章的语法结构严谨,避免语法错误,包括但不限于主谓一致、时态使用和被动语态的恰当运用;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 确保文章的语法结构严谨,避免语法错误,包括但不限于主谓一致、时态使用和被动语态的恰当运用;"], "levels2": ["语法结构约束"], "category": "trace1.0"} +{"id": "67", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一段旅游目的地介绍,主题为伦敦\n1. 确保段落结构清晰,使用恰当的过渡语句,使信息流畅且有逻辑性,如“不仅如此,”或“此外,”;\n"}], "type": "trace", "description": "撰写一段旅游目的地介绍,主题为伦敦", "constraints": "1. 确保段落结构清晰,使用恰当的过渡语句,使信息流畅且有逻辑性,如“不仅如此,”或“此外,”;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 确保段落结构清晰,使用恰当的过渡语句,使信息流畅且有逻辑性,如“不仅如此,”或“此外,”;"], "levels2": ["语法结构约束"], "category": "trace1.0"} +{"id": "68", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "你是一个知识问答系统\n1. 参考下面所给知识回答问题。\n\n【文档名】SPEEDO 游泳眼镜黑色\n【标题】SPEEDO 游泳眼镜黑色\n【正文】# SPEEDO 游泳眼镜黑色\n**catchline**: Biofuse柔韧贴合成年人脸型,镀膜泳镜带来舒适体验。全新的柔软密封条灵活柔软,提高眼部舒适\n性。本款泳镜采用柔软类凝胶材料设计,配合SpeedoBiofuse®技术,为泳者提供舒适的佩戴体验。\n**composition_data**: nan\n**categories**: 所有运动|游泳|泳镜泳帽|泳镜\n**characteristics**: nan\n**benefits**: 宽视角镜片,提供广阔视野。(无近视度数)|防雾涂层镜片,UV防护\n**genders**: 男士|女士\n**structurations**: 情况::新\n**colors**: nan\n**brand**: SPEEDO\n**product_nature**: 游泳眼镜\n**universe_label_zh**: 游泳\n**department_label_zh**: 游泳\n**family**: 游泳眼镜/面罩\n**discount_price**: nan\n**list_price**: 249.9\n**display_price**: 249.9\n**currency**: Chinese Yuan\n**size**: S/0\n# Inputs:\n能帮我找一些性价比高的游泳眼镜吗?我希望看到价格从低到高的排序。\n"}], "type": "trace", "description": "你是一个知识问答系统", "constraints": "1. 参考下面所给知识回答问题。\n\n【文档名】SPEEDO 游泳眼镜黑色\n【标题】SPEEDO 游泳眼镜黑色\n【正文】# SPEEDO 游泳眼镜黑色\n**catchline**: Biofuse柔韧贴合成年人脸型,镀膜泳镜带来舒适体验。全新的柔软密封条灵活柔软,提高眼部舒适\n性。本款泳镜采用柔软类凝胶材料设计,配合SpeedoBiofuse®技术,为泳者提供舒适的佩戴体验。\n**composition_data**: nan\n**categories**: 所有运动|游泳|泳镜泳帽|泳镜\n**characteristics**: nan\n**benefits**: 宽视角镜片,提供广阔视野。(无近视度数)|防雾涂层镜片,UV防护\n**genders**: 男士|女士\n**structurations**: 情况::新\n**colors**: nan\n**brand**: SPEEDO\n**product_nature**: 游泳眼镜\n**universe_label_zh**: 游泳\n**department_label_zh**: 游泳\n**family**: 游泳眼镜/面罩\n**discount_price**: nan\n**list_price**: 249.9\n**display_price**: 249.9\n**currency**: Chinese Yuan\n**size**: S/0", "input": "能帮我找一些性价比高的游泳眼镜吗?我希望看到价格从低到高的排序。", "constraints_num": 1, "constraints_splits": ["1. 参考下面所给知识回答问题。\n\n【文档名】SPEEDO 游泳眼镜黑色\n【标题】SPEEDO 游泳眼镜黑色\n【正文】# SPEEDO 游泳眼镜黑色\n**catchline**: Biofuse柔韧贴合成年人脸型,镀膜泳镜带来舒适体验。全新的柔软密封条灵活柔软,提高眼部舒适\n性。本款泳镜采用柔软类凝胶材料设计,配合SpeedoBiofuse®技术,为泳者提供舒适的佩戴体验。\n**composition_data**: nan\n**categories**: 所有运动|游泳|泳镜泳帽|泳镜\n**characteristics**: nan\n**benefits**: 宽视角镜片,提供广阔视野。(无近视度数)|防雾涂层镜片,UV防护\n**genders**: 男士|女士\n**structurations**: 情况::新\n**colors**: nan\n**brand**: SPEEDO\n**product_nature**: 游泳眼镜\n**universe_label_zh**: 游泳\n**department_label_zh**: 游泳\n**family**: 游泳眼镜/面罩\n**discount_price**: nan\n**list_price**: 249.9\n**display_price**: 249.9\n**currency**: Chinese Yuan\n**size**: S/0"], "levels2": ["文本背景信息约束"], "category": "trace1.0"} +{"id": "69", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以科研专家的身份,用严谨正式的语气风格,介绍一种利用量子隧穿效应开发的新型电池技术,并详细比较其与传统电池在能量密度、充电速度、循环寿命和环境影响方面的差异。\n1. 在介绍中需提供具体的数据和案例以支持观点。\n"}], "type": "trace", "description": "以科研专家的身份,用严谨正式的语气风格,介绍一种利用量子隧穿效应开发的新型电池技术,并详细比较其与传统电池在能量密度、充电速度、循环寿命和环境影响方面的差异。", "constraints": "1. 在介绍中需提供具体的数据和案例以支持观点。", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 在介绍中需提供具体的数据和案例以支持观点。"], "levels2": ["引用和参考约束"], "category": "trace1.0"} +{"id": "70", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "详细介绍一种新的编程语言——BenApp,该语言用于构建调查问卷,包括问题设计和答案处理。\n1. 使用编号列表形式清晰列出BenApp的核心功能、语法特点以及它如何优化问卷创建流程;\n"}], "type": "trace", "description": "详细介绍一种新的编程语言——BenApp,该语言用于构建调查问卷,包括问题设计和答案处理。", "constraints": "1. 使用编号列表形式清晰列出BenApp的核心功能、语法特点以及它如何优化问卷创建流程;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 使用编号列表形式清晰列出BenApp的核心功能、语法特点以及它如何优化问卷创建流程;"], "levels2": ["编号和列表约束"], "category": "trace1.0"} +{"id": "71", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "你是东风日常的智能客服,现在需要根据用户的不同情况进行不同的回复。\n1. 参考下面流程回答问题。\n\n金融-东风日产的处理流程:\nflowchart TD\nA([开始]) -- 开始 -->B[回复: 您好,我是东风日产客服中心的小白,看您之前关注了我们的品牌,请问您最近打算购车吗?]\nB -- 近期不考虑 --> C[回复: 嗯,近期不考虑没关系,您可以先来店里试驾体验了解一下,对您今后买车也是很有帮助的,您看方便吗?]\nC -- 同意到店 --> D[回复: 好的,稍后会有专营店的工作人员跟您联系,我就先不打扰您了,祝您生活愉快,再见。]\nC -- 不同意到店 --> E[回复: 好吧,不好意思打扰您了,祝您生活愉快,再见!]\nB -- 考虑中 --> F[回复: 是这样的,现在我们日产厂家在做购车活动优惠力度很大,店内也在进行多种促销活动,特邀约您到店看车,您看怎么样呢?]\nF -- 同意到店 --> D\nF -- 不愿到店 --> G[回复: 没关系的,等您需要的时候我们再联系。那先这样,再次感谢您的信任,祝您生活愉快,再见!]\nB -- 有购车意向 --> H[回复: 是这样的,现在我们日产厂家在做购车活动优惠力度很大,店内也在进行多种促销活动,特邀约您到店看车,您看怎么样呢?]\nH -- 同意到店 --> D\nH -- 不愿到店 --> G\nB -- 无购车意向 --> I[回复: 哦,这样啊,其实您可以多了解一下的,现在我们日产厂家在做购车活动优惠力度很大,店内也在进行多种促销活动,特邀您到店看车,您看是否方便呢?]\nI -- 同意到店 --> D\nI -- 不同意到店 --> E\nB -- 忙碌 --> J[回复: 好的,那我晚点再打过来。祝您生活愉快,再见!]\nB -- 没钱 --> K[回复: 这个呀您不必担心,我们是有金融支持服务的,可以为您选择最适合您的购车方式,且现在我们厂家再做购车活动优惠力度很大,店内也在进行多种促销活动,您要不到店了解一下呢?]\nK -- 同意到店 --> D\nK -- 不同意到店 --> E\nB -- 已经购车 --> L[回复: 恭喜您喜得爱车,我这边就先不打扰您了,祝您生活愉快,再见!]\n\n\n请记住当前时间为:2036-03-29 19:10:05 星期六\n# Inputs:\n你好?请问您是哪一位?有什么事吗?\n"}], "type": "trace", "description": "你是东风日常的智能客服,现在需要根据用户的不同情况进行不同的回复。", "constraints": "1. 参考下面流程回答问题。\n\n金融-东风日产的处理流程:\nflowchart TD\nA([开始]) -- 开始 -->B[回复: 您好,我是东风日产客服中心的小白,看您之前关注了我们的品牌,请问您最近打算购车吗?]\nB -- 近期不考虑 --> C[回复: 嗯,近期不考虑没关系,您可以先来店里试驾体验了解一下,对您今后买车也是很有帮助的,您看方便吗?]\nC -- 同意到店 --> D[回复: 好的,稍后会有专营店的工作人员跟您联系,我就先不打扰您了,祝您生活愉快,再见。]\nC -- 不同意到店 --> E[回复: 好吧,不好意思打扰您了,祝您生活愉快,再见!]\nB -- 考虑中 --> F[回复: 是这样的,现在我们日产厂家在做购车活动优惠力度很大,店内也在进行多种促销活动,特邀约您到店看车,您看怎么样呢?]\nF -- 同意到店 --> D\nF -- 不愿到店 --> G[回复: 没关系的,等您需要的时候我们再联系。那先这样,再次感谢您的信任,祝您生活愉快,再见!]\nB -- 有购车意向 --> H[回复: 是这样的,现在我们日产厂家在做购车活动优惠力度很大,店内也在进行多种促销活动,特邀约您到店看车,您看怎么样呢?]\nH -- 同意到店 --> D\nH -- 不愿到店 --> G\nB -- 无购车意向 --> I[回复: 哦,这样啊,其实您可以多了解一下的,现在我们日产厂家在做购车活动优惠力度很大,店内也在进行多种促销活动,特邀您到店看车,您看是否方便呢?]\nI -- 同意到店 --> D\nI -- 不同意到店 --> E\nB -- 忙碌 --> J[回复: 好的,那我晚点再打过来。祝您生活愉快,再见!]\nB -- 没钱 --> K[回复: 这个呀您不必担心,我们是有金融支持服务的,可以为您选择最适合您的购车方式,且现在我们厂家再做购车活动优惠力度很大,店内也在进行多种促销活动,您要不到店了解一下呢?]\nK -- 同意到店 --> D\nK -- 不同意到店 --> E\nB -- 已经购车 --> L[回复: 恭喜您喜得爱车,我这边就先不打扰您了,祝您生活愉快,再见!]\n\n\n请记住当前时间为:2036-03-29 19:10:05 星期六", "input": "你好?请问您是哪一位?有什么事吗?", "constraints_num": 1, "constraints_splits": ["1. 参考下面流程回答问题。\n\n金融-东风日产的处理流程:\nflowchart TD\nA([开始]) -- 开始 -->B[回复: 您好,我是东风日产客服中心的小白,看您之前关注了我们的品牌,请问您最近打算购车吗?]\nB -- 近期不考虑 --> C[回复: 嗯,近期不考虑没关系,您可以先来店里试驾体验了解一下,对您今后买车也是很有帮助的,您看方便吗?]\nC -- 同意到店 --> D[回复: 好的,稍后会有专营店的工作人员跟您联系,我就先不打扰您了,祝您生活愉快,再见。]\nC -- 不同意到店 --> E[回复: 好吧,不好意思打扰您了,祝您生活愉快,再见!]\nB -- 考虑中 --> F[回复: 是这样的,现在我们日产厂家在做购车活动优惠力度很大,店内也在进行多种促销活动,特邀约您到店看车,您看怎么样呢?]\nF -- 同意到店 --> D\nF -- 不愿到店 --> G[回复: 没关系的,等您需要的时候我们再联系。那先这样,再次感谢您的信任,祝您生活愉快,再见!]\nB -- 有购车意向 --> H[回复: 是这样的,现在我们日产厂家在做购车活动优惠力度很大,店内也在进行多种促销活动,特邀约您到店看车,您看怎么样呢?]\nH -- 同意到店 --> D\nH -- 不愿到店 --> G\nB -- 无购车意向 --> I[回复: 哦,这样啊,其实您可以多了解一下的,现在我们日产厂家在做购车活动优惠力度很大,店内也在进行多种促销活动,特邀您到店看车,您看是否方便呢?]\nI -- 同意到店 --> D\nI -- 不同意到店 --> E\nB -- 忙碌 --> J[回复: 好的,那我晚点再打过来。祝您生活愉快,再见!]\nB -- 没钱 --> K[回复: 这个呀您不必担心,我们是有金融支持服务的,可以为您选择最适合您的购车方式,且现在我们厂家再做购车活动优惠力度很大,店内也在进行多种促销活动,您要不到店了解一下呢?]\nK -- 同意到店 --> D\nK -- 不同意到店 --> E\nB -- 已经购车 --> L[回复: 恭喜您喜得爱车,我这边就先不打扰您了,祝您生活愉快,再见!]\n\n\n请记住当前时间为:2036-03-29 19:10:05 星期六"], "levels2": ["自然语言流程背景信息约束"], "category": "trace1.0"} +{"id": "72", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "提供一个故事梗概\n1. 故事需包含John在完成小说并准备离开之际,突然遭遇一群凶狠的狼的围攻的情节;\n"}], "type": "trace", "description": "提供一个故事梗概", "constraints": "1. 故事需包含John在完成小说并准备离开之际,突然遭遇一群凶狠的狼的围攻的情节;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 故事需包含John在完成小说并准备离开之际,突然遭遇一群凶狠的狼的围攻的情节;"], "levels2": ["包含约束"], "category": "trace1.0"} +{"id": "73", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "根据给定的财务报表数据,分析公司财务状况并以JSON格式返回以下信息:\n1. 判断公司是否盈利。\n2. 计算并返回公司的净收入,精确到小数点后两位。\n3. 包含一段简短的分析,说明净收入对公司财务状况的意义。\n1. 确保不包含任何未经数据支持的预测性声明。\n# Inputs:\n总收入为$500,000,总支出为$400,000。\n"}], "type": "trace", "description": "根据给定的财务报表数据,分析公司财务状况并以JSON格式返回以下信息:\n1. 判断公司是否盈利。\n2. 计算并返回公司的净收入,精确到小数点后两位。\n3. 包含一段简短的分析,说明净收入对公司财务状况的意义。", "constraints": "1. 确保不包含任何未经数据支持的预测性声明。", "input": "总收入为$500,000,总支出为$400,000。", "constraints_num": 1, "constraints_splits": ["1. 确保不包含任何未经数据支持的预测性声明。"], "levels2": ["价值观约束"], "category": "trace1.0"} +{"id": "74", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "给出两个城市之间旅行的最佳路线\n1. 不得包含任何个人隐私信息、版权受限的内容或违反相关法律和政策的信息;(虽然在指令中未提及,但这是默认的约束条件)\n# Inputs:\n起始城市: 北京,目标城市: 上海\n"}], "type": "trace", "description": "给出两个城市之间旅行的最佳路线", "constraints": "1. 不得包含任何个人隐私信息、版权受限的内容或违反相关法律和政策的信息;(虽然在指令中未提及,但这是默认的约束条件)", "input": "起始城市: 北京,目标城市: 上海", "constraints_num": 1, "constraints_splits": ["1. 不得包含任何个人隐私信息、版权受限的内容或违反相关法律和政策的信息;(虽然在指令中未提及,但这是默认的约束条件)"], "levels2": ["隐私约束"], "category": "trace1.0"} +{"id": "75", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为正在努力适应绿色低碳生活方式的普通家庭提供实用建议。\n1. 使用标题和子标题来组织内容,以便读者能够快速找到他们感兴趣的部分;\n"}], "type": "trace", "description": "为正在努力适应绿色低碳生活方式的普通家庭提供实用建议。", "constraints": "1. 使用标题和子标题来组织内容,以便读者能够快速找到他们感兴趣的部分;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 使用标题和子标题来组织内容,以便读者能够快速找到他们感兴趣的部分;"], "levels2": ["层次化结构约束"], "category": "trace1.0"} +{"id": "76", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "判断以下陈述的真伪,并对每个陈述进行简要分析和科学依据说明\n1. 在每个分析中明确标注信息来源,以增加回答的可信度;\n# Inputs:\n1. 地球是平的。\n2. 太阳在地球的中心。\n3. 吸氧可以使人长生不老。\n"}], "type": "trace", "description": "判断以下陈述的真伪,并对每个陈述进行简要分析和科学依据说明", "constraints": "1. 在每个分析中明确标注信息来源,以增加回答的可信度;", "input": "1. 地球是平的。\n2. 太阳在地球的中心。\n3. 吸氧可以使人长生不老。", "constraints_num": 1, "constraints_splits": ["1. 在每个分析中明确标注信息来源,以增加回答的可信度;"], "levels2": ["引用和参考约束"], "category": "trace1.0"} +{"id": "77", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "给出一个可行的解决方案,解决某大城市(例如:北京)的公共交通拥堵问题。\n1. 输出的内容应以Markdown格式呈现,使用标题和子标题来清晰划分不同部分,确保结构清晰、层次分明;\n"}], "type": "trace", "description": "给出一个可行的解决方案,解决某大城市(例如:北京)的公共交通拥堵问题。", "constraints": "1. 输出的内容应以Markdown格式呈现,使用标题和子标题来清晰划分不同部分,确保结构清晰、层次分明;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 输出的内容应以Markdown格式呈现,使用标题和子标题来清晰划分不同部分,确保结构清晰、层次分明;"], "levels2": ["层次化结构约束"], "category": "trace1.0"} +{"id": "78", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "计算数字75和87的精确平均值,并将结果保留两位小数\n1. 输出结果应以\"平均值为:\"开头,后跟计算得到的数值;\n"}], "type": "trace", "description": "计算数字75和87的精确平均值,并将结果保留两位小数", "constraints": "1. 输出结果应以\"平均值为:\"开头,后跟计算得到的数值;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 输出结果应以\"平均值为:\"开头,后跟计算得到的数值;"], "levels2": ["模版约束"], "category": "trace1.0"} +{"id": "79", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "根据画作名称“星夜”和画家“梵高”,描述该画作的风格和特色\n1. 使用Markdown格式输出,例如使用`**`来加粗重要的信息,如画作名称、画家名称和关键的风格特点;\n"}], "type": "trace", "description": "根据画作名称“星夜”和画家“梵高”,描述该画作的风格和特色", "constraints": "1. 使用Markdown格式输出,例如使用`**`来加粗重要的信息,如画作名称、画家名称和关键的风格特点;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 使用Markdown格式输出,例如使用`**`来加粗重要的信息,如画作名称、画家名称和关键的风格特点;"], "levels2": ["输出格式约束"], "category": "trace1.0"} +{"id": "80", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为一家咖啡店创建一个简短的广告标语\n1. 在输出时使用大写字母以突出标语;\n"}], "type": "trace", "description": "为一家咖啡店创建一个简短的广告标语", "constraints": "1. 在输出时使用大写字母以突出标语;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 在输出时使用大写字母以突出标语;"], "levels2": ["语言特征约束"], "category": "trace1.0"} +{"id": "81", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇文学作品《荒野求生》的结局\n1. 确保结局内容适合青少年读者群体的阅读水平和兴趣;\n"}], "type": "trace", "description": "撰写一篇文学作品《荒野求生》的结局", "constraints": "1. 确保结局内容适合青少年读者群体的阅读水平和兴趣;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 确保结局内容适合青少年读者群体的阅读水平和兴趣;"], "levels2": ["受众目标约束"], "category": "trace1.0"} +{"id": "82", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "给定一组文本,将其中所有的数字(包括整数和小数)替换为中文数字,并且保持原文的格式不变。\n1. 例如将“123”替换为“一百二十三”,将“2939.99”替换为“二千九百三十九点九九”;\n# Inputs:\n我今天做了3份作业,花费了2个半小时。本月支出总共是2939.99元。\n"}], "type": "trace", "description": "给定一组文本,将其中所有的数字(包括整数和小数)替换为中文数字,并且保持原文的格式不变。", "constraints": "1. 例如将“123”替换为“一百二十三”,将“2939.99”替换为“二千九百三十九点九九”;", "input": "我今天做了3份作业,花费了2个半小时。本月支出总共是2939.99元。", "constraints_num": 1, "constraints_splits": ["1. 例如将“123”替换为“一百二十三”,将“2939.99”替换为“二千九百三十九点九九”;"], "levels2": ["正例约束"], "category": "trace1.0"} +{"id": "83", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "写一个Python代码,用于访问Gutenberg Corpus并显示其中的文件\n1. 代码中使用编号列表清晰地列出主要的步骤;\n"}], "type": "trace", "description": "写一个Python代码,用于访问Gutenberg Corpus并显示其中的文件", "constraints": "1. 代码中使用编号列表清晰地列出主要的步骤;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 代码中使用编号列表清晰地列出主要的步骤;"], "levels2": ["编号和列表约束"], "category": "trace1.0"} +{"id": "84", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "检索特定网站“BBC英语”上的最新新闻标题\n1. 确保所有标题和摘要内容不包含任何敏感或侵犯隐私的信息;\n"}], "type": "trace", "description": "检索特定网站“BBC英语”上的最新新闻标题", "constraints": "1. 确保所有标题和摘要内容不包含任何敏感或侵犯隐私的信息;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 确保所有标题和摘要内容不包含任何敏感或侵犯隐私的信息;"], "levels2": ["隐私约束"], "category": "trace1.0"} +{"id": "85", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "你是一个知识问答系统\n1. 参考下面所给知识回答问题。\n\n【文档名】信美相互互联网相互爱重大疾病保险条款\n【标题】信美人寿相互保险社信美相互互联网相互爱重大疾病保险条款\n条款目录\n1.这部分讲的是我们提供的保障\n1.3      保险责任\n1.3.2    可选责任\n1.3.2.2   第二次重度疾病保险金\n【正文】若我们已给付过首次重度疾病保险金,且被保险人于首次重度疾病经医院初次确诊之日起365日内(含第365日)经医院初次确诊患有除首次重度疾病以外的一种或多种本合同所定义的重度疾病,我们不承担给付第二次重度疾病保险金的责任,本项保险责任终止。\n若我们已给付过首次重度疾病保险金,且被保险人于首次重度疾病经医院初次确诊之日起365日后(不含第365日)经医院初次确诊患有除首次重度疾病以外的一种或多种本合同所定义的重度疾病,我们按本合同基本保险金额的120%给付第二次重度疾病保险金,本项保险渍任终止。\n特别注意事项\n如果被保险人初次确诊同时患有本合同所定义的轻度疾病、中度疾病或重度疾病,我们仅给付其中金额最高的一项保险金。\n若重度疾病的初次确诊日期在轻度疾病或中度疾病的初次确诊日期之前,则对于存在如下表中每组对应关系的轻度疾病、中度疾病和重度疾病,若我们已给付过首次重度疾病保险金或第二次重度疾病保险金,则我们不再给付该重度疾病对应的轻度疾病保险金或中度疾病保险金。\n本合同所列的重度疾病及轻度、中度疾病对应关系,如下:\n# Inputs:\n若小美2年前投保了相互爱重大疾病险保额30万现因初次确诊恶性肿瘤重度申请理赔截止当前小美已交纳10万保险费合同的现金价值为5万请问保险公司应向小美赔付多少钱\n"}], "type": "trace", "description": "你是一个知识问答系统", "constraints": "1. 参考下面所给知识回答问题。\n\n【文档名】信美相互互联网相互爱重大疾病保险条款\n【标题】信美人寿相互保险社信美相互互联网相互爱重大疾病保险条款\n条款目录\n1.这部分讲的是我们提供的保障\n1.3      保险责任\n1.3.2    可选责任\n1.3.2.2   第二次重度疾病保险金\n【正文】若我们已给付过首次重度疾病保险金,且被保险人于首次重度疾病经医院初次确诊之日起365日内(含第365日)经医院初次确诊患有除首次重度疾病以外的一种或多种本合同所定义的重度疾病,我们不承担给付第二次重度疾病保险金的责任,本项保险责任终止。\n若我们已给付过首次重度疾病保险金,且被保险人于首次重度疾病经医院初次确诊之日起365日后(不含第365日)经医院初次确诊患有除首次重度疾病以外的一种或多种本合同所定义的重度疾病,我们按本合同基本保险金额的120%给付第二次重度疾病保险金,本项保险渍任终止。\n特别注意事项\n如果被保险人初次确诊同时患有本合同所定义的轻度疾病、中度疾病或重度疾病,我们仅给付其中金额最高的一项保险金。\n若重度疾病的初次确诊日期在轻度疾病或中度疾病的初次确诊日期之前,则对于存在如下表中每组对应关系的轻度疾病、中度疾病和重度疾病,若我们已给付过首次重度疾病保险金或第二次重度疾病保险金,则我们不再给付该重度疾病对应的轻度疾病保险金或中度疾病保险金。\n本合同所列的重度疾病及轻度、中度疾病对应关系,如下:", "input": "若小美2年前投保了相互爱重大疾病险保额30万现因初次确诊恶性肿瘤重度申请理赔截止当前小美已交纳10万保险费合同的现金价值为5万请问保险公司应向小美赔付多少钱", "constraints_num": 1, "constraints_splits": ["1. 参考下面所给知识回答问题。\n\n【文档名】信美相互互联网相互爱重大疾病保险条款\n【标题】信美人寿相互保险社信美相互互联网相互爱重大疾病保险条款\n条款目录\n1.这部分讲的是我们提供的保障\n1.3      保险责任\n1.3.2    可选责任\n1.3.2.2   第二次重度疾病保险金\n【正文】若我们已给付过首次重度疾病保险金,且被保险人于首次重度疾病经医院初次确诊之日起365日内(含第365日)经医院初次确诊患有除首次重度疾病以外的一种或多种本合同所定义的重度疾病,我们不承担给付第二次重度疾病保险金的责任,本项保险责任终止。\n若我们已给付过首次重度疾病保险金,且被保险人于首次重度疾病经医院初次确诊之日起365日后(不含第365日)经医院初次确诊患有除首次重度疾病以外的一种或多种本合同所定义的重度疾病,我们按本合同基本保险金额的120%给付第二次重度疾病保险金,本项保险渍任终止。\n特别注意事项\n如果被保险人初次确诊同时患有本合同所定义的轻度疾病、中度疾病或重度疾病,我们仅给付其中金额最高的一项保险金。\n若重度疾病的初次确诊日期在轻度疾病或中度疾病的初次确诊日期之前,则对于存在如下表中每组对应关系的轻度疾病、中度疾病和重度疾病,若我们已给付过首次重度疾病保险金或第二次重度疾病保险金,则我们不再给付该重度疾病对应的轻度疾病保险金或中度疾病保险金。\n本合同所列的重度疾病及轻度、中度疾病对应关系,如下:"], "levels2": ["文本背景信息约束"], "category": "trace1.0"} +{"id": "86", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "写一封推荐信\n1. 推荐信中需提及张三在大学期间的具体成就,如项目、奖项或领导职务,以增强推荐的说服力;\n"}], "type": "trace", "description": "写一封推荐信", "constraints": "1. 推荐信中需提及张三在大学期间的具体成就,如项目、奖项或领导职务,以增强推荐的说服力;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 推荐信中需提及张三在大学期间的具体成就,如项目、奖项或领导职务,以增强推荐的说服力;"], "levels2": ["包含约束"], "category": "trace1.0"} +{"id": "87", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇专业学术风格的文章,主题为气候变化对夏威夷地区面临的挑战,并提出创新且可行的解决方案。\n1. 文章的结构应包括引言、挑战分析、解决方案探讨、结论和参考文献部分,确保内容的完整性与逻辑性;\n"}], "type": "trace", "description": "撰写一篇专业学术风格的文章,主题为气候变化对夏威夷地区面临的挑战,并提出创新且可行的解决方案。", "constraints": "1. 文章的结构应包括引言、挑战分析、解决方案探讨、结论和参考文献部分,确保内容的完整性与逻辑性;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 文章的结构应包括引言、挑战分析、解决方案探讨、结论和参考文献部分,确保内容的完整性与逻辑性;"], "levels2": ["层次化结构约束"], "category": "trace1.0"} +{"id": "88", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "给出一道基础数学题,题目应涉及分数或除法运算,并附上详细解答,解决方案中需包含步骤解析。\n1. 解答过程需确保清晰,适合小学三年级学生理解;\n"}], "type": "trace", "description": "给出一道基础数学题,题目应涉及分数或除法运算,并附上详细解答,解决方案中需包含步骤解析。", "constraints": "1. 解答过程需确保清晰,适合小学三年级学生理解;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 解答过程需确保清晰,适合小学三年级学生理解;"], "levels2": ["受众目标约束"], "category": "trace1.0"} +{"id": "89", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一个具有最常见值的有效对象,并详细解释选择的默认值,说明为什么这些值是合理的。\n1. 选择的默认值应为最常见值,避免取那些从不常见的值;\n"}], "type": "trace", "description": "创建一个具有最常见值的有效对象,并详细解释选择的默认值,说明为什么这些值是合理的。", "constraints": "1. 选择的默认值应为最常见值,避免取那些从不常见的值;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 选择的默认值应为最常见值,避免取那些从不常见的值;"], "levels2": ["排除约束"], "category": "trace1.0"} +{"id": "90", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "你是一个知识问答系统\n1. 参考下面所给知识回答问题。\n\n【文档名】信美相互创可贴意外伤害医疗保险条款\n【标题】信美相互创可贴意外伤害医疗保险条款阅读指引\n。条款目录\n6.其他需要关注的事项\n1.3    保险责任      在本合同保险期间内,我们承担下列保险责任:\n【正文】被保险人实际发生的医疗费用,我们将按被保险人实际发生的医疗费用扣除从被保险人遭受意外伤害事故,并因该次意外伤害事故直接导致其在医院接受住院治疗的,我们按实际住院天数(见7.8)在扣除免赔天数后的剩余天数与意外伤害每日住院津贴金额的乘积给付意外伤害住院津贴保险金,即:意外伤害住院津贴保险金=意外伤害每日住院津贴金额×(实际住院天数-免赔天数)本合同意外伤害住院津贴保险金的免赔天数为3日。被保险人因同一次意外伤害事故多次住院治疗的,如果累计的实际住院天数大\n于免赔天数,我们在计算意外伤害住院津贴保险金时对累计的实际住院天数扣除一次免赔天数;如果累计的实际住院天数未超过约定的免赔天数,我们不承担给付意外伤害住院津贴保险金的责任。被保险人因不同意外伤害事故多次住院治疗的,我们在计算每次意外伤害住院津贴保险金时均会扣除一次免赔天数。\n我们在同一保险期间内累计给付意外伤害住院津贴保险金的天数以180日为限,累计给付达到180日的,该项保险责任终止。\n若被保险人因意外伤害事故在医院接受住院治疗,在保险期间届满时仍未出院的,对于被保险人该次住院治疗延续至保险期间届满日次日起30日内的住院,我们仍在上述180 日的给付天数范围内继续承担给付意外伤害住院津贴保险金的责任。对于被保险人该次住院治疗延续至保险期间届满日次日起30日后的住院,我们不再承担给付意外伤害住院津贴保险金的责任。\n意外伤害重症住院津贴保险金\n被保险人遭受意外伤害事故,并因该次意外伤害事故直接导致被保险人在医院入住重症监护病房(见7.9)接受住院治疗的,我们除按上述约定给付意外伤害住院津贴保险金之外,还将按意外伤害每日重症住院津贴金额与被保险人实际入住重症监护病房的天数的乘积给付意外伤害重症住院津贴保险金,即:意外伤害重症住院津贴保险金=意外伤害每日重症住院津贴金额×实际入住重症监护病房天数\n我们在同一保险期间内累计给付意外伤害重症住院津贴保险金的天数以30日为限,累计给付达到30日的,该项保险责任终止。\n若被保险人因意外伤害事故在医院入住重症监护病房接受住院治疗,在保险期间届满时仍未出重症监护病房的,对于被保险人该次入住重症监护病房的住院治疗延续至保险期间届满日次日起30日内的入住重症监护病房的住院,我们仍在上述30日的给付天数范围内继续承担给付意外伤害重症住院津贴保险金的责任。对于被保险人该次入住重症监护病房的住院治疗延续至保险期间届满日次日起30日后的入住重症监护病房的住院,我们不再承担给付意外伤害重症住院津贴保险金的责任。\n# Inputs:\n小美投保了信美相互创可贴意外伤害医疗保险近期因运动意外受伤在重症监护病房住院10天后转到普通病房住院5天请问小美可以申请哪些保险金的赔付\n"}], "type": "trace", "description": "你是一个知识问答系统", "constraints": "1. 参考下面所给知识回答问题。\n\n【文档名】信美相互创可贴意外伤害医疗保险条款\n【标题】信美相互创可贴意外伤害医疗保险条款阅读指引\n。条款目录\n6.其他需要关注的事项\n1.3    保险责任      在本合同保险期间内,我们承担下列保险责任:\n【正文】被保险人实际发生的医疗费用,我们将按被保险人实际发生的医疗费用扣除从被保险人遭受意外伤害事故,并因该次意外伤害事故直接导致其在医院接受住院治疗的,我们按实际住院天数(见7.8)在扣除免赔天数后的剩余天数与意外伤害每日住院津贴金额的乘积给付意外伤害住院津贴保险金,即:意外伤害住院津贴保险金=意外伤害每日住院津贴金额×(实际住院天数-免赔天数)本合同意外伤害住院津贴保险金的免赔天数为3日。被保险人因同一次意外伤害事故多次住院治疗的,如果累计的实际住院天数大\n于免赔天数,我们在计算意外伤害住院津贴保险金时对累计的实际住院天数扣除一次免赔天数;如果累计的实际住院天数未超过约定的免赔天数,我们不承担给付意外伤害住院津贴保险金的责任。被保险人因不同意外伤害事故多次住院治疗的,我们在计算每次意外伤害住院津贴保险金时均会扣除一次免赔天数。\n我们在同一保险期间内累计给付意外伤害住院津贴保险金的天数以180日为限,累计给付达到180日的,该项保险责任终止。\n若被保险人因意外伤害事故在医院接受住院治疗,在保险期间届满时仍未出院的,对于被保险人该次住院治疗延续至保险期间届满日次日起30日内的住院,我们仍在上述180 日的给付天数范围内继续承担给付意外伤害住院津贴保险金的责任。对于被保险人该次住院治疗延续至保险期间届满日次日起30日后的住院,我们不再承担给付意外伤害住院津贴保险金的责任。\n意外伤害重症住院津贴保险金\n被保险人遭受意外伤害事故,并因该次意外伤害事故直接导致被保险人在医院入住重症监护病房(见7.9)接受住院治疗的,我们除按上述约定给付意外伤害住院津贴保险金之外,还将按意外伤害每日重症住院津贴金额与被保险人实际入住重症监护病房的天数的乘积给付意外伤害重症住院津贴保险金,即:意外伤害重症住院津贴保险金=意外伤害每日重症住院津贴金额×实际入住重症监护病房天数\n我们在同一保险期间内累计给付意外伤害重症住院津贴保险金的天数以30日为限,累计给付达到30日的,该项保险责任终止。\n若被保险人因意外伤害事故在医院入住重症监护病房接受住院治疗,在保险期间届满时仍未出重症监护病房的,对于被保险人该次入住重症监护病房的住院治疗延续至保险期间届满日次日起30日内的入住重症监护病房的住院,我们仍在上述30日的给付天数范围内继续承担给付意外伤害重症住院津贴保险金的责任。对于被保险人该次入住重症监护病房的住院治疗延续至保险期间届满日次日起30日后的入住重症监护病房的住院,我们不再承担给付意外伤害重症住院津贴保险金的责任。", "input": "小美投保了信美相互创可贴意外伤害医疗保险近期因运动意外受伤在重症监护病房住院10天后转到普通病房住院5天请问小美可以申请哪些保险金的赔付", "constraints_num": 1, "constraints_splits": ["1. 参考下面所给知识回答问题。\n\n【文档名】信美相互创可贴意外伤害医疗保险条款\n【标题】信美相互创可贴意外伤害医疗保险条款阅读指引\n。条款目录\n6.其他需要关注的事项\n1.3    保险责任      在本合同保险期间内,我们承担下列保险责任:\n【正文】被保险人实际发生的医疗费用,我们将按被保险人实际发生的医疗费用扣除从被保险人遭受意外伤害事故,并因该次意外伤害事故直接导致其在医院接受住院治疗的,我们按实际住院天数(见7.8)在扣除免赔天数后的剩余天数与意外伤害每日住院津贴金额的乘积给付意外伤害住院津贴保险金,即:意外伤害住院津贴保险金=意外伤害每日住院津贴金额×(实际住院天数-免赔天数)本合同意外伤害住院津贴保险金的免赔天数为3日。被保险人因同一次意外伤害事故多次住院治疗的,如果累计的实际住院天数大\n于免赔天数,我们在计算意外伤害住院津贴保险金时对累计的实际住院天数扣除一次免赔天数;如果累计的实际住院天数未超过约定的免赔天数,我们不承担给付意外伤害住院津贴保险金的责任。被保险人因不同意外伤害事故多次住院治疗的,我们在计算每次意外伤害住院津贴保险金时均会扣除一次免赔天数。\n我们在同一保险期间内累计给付意外伤害住院津贴保险金的天数以180日为限,累计给付达到180日的,该项保险责任终止。\n若被保险人因意外伤害事故在医院接受住院治疗,在保险期间届满时仍未出院的,对于被保险人该次住院治疗延续至保险期间届满日次日起30日内的住院,我们仍在上述180 日的给付天数范围内继续承担给付意外伤害住院津贴保险金的责任。对于被保险人该次住院治疗延续至保险期间届满日次日起30日后的住院,我们不再承担给付意外伤害住院津贴保险金的责任。\n意外伤害重症住院津贴保险金\n被保险人遭受意外伤害事故,并因该次意外伤害事故直接导致被保险人在医院入住重症监护病房(见7.9)接受住院治疗的,我们除按上述约定给付意外伤害住院津贴保险金之外,还将按意外伤害每日重症住院津贴金额与被保险人实际入住重症监护病房的天数的乘积给付意外伤害重症住院津贴保险金,即:意外伤害重症住院津贴保险金=意外伤害每日重症住院津贴金额×实际入住重症监护病房天数\n我们在同一保险期间内累计给付意外伤害重症住院津贴保险金的天数以30日为限,累计给付达到30日的,该项保险责任终止。\n若被保险人因意外伤害事故在医院入住重症监护病房接受住院治疗,在保险期间届满时仍未出重症监护病房的,对于被保险人该次入住重症监护病房的住院治疗延续至保险期间届满日次日起30日内的入住重症监护病房的住院,我们仍在上述30日的给付天数范围内继续承担给付意外伤害重症住院津贴保险金的责任。对于被保险人该次入住重症监护病房的住院治疗延续至保险期间届满日次日起30日后的入住重症监护病房的住院,我们不再承担给付意外伤害重症住院津贴保险金的责任。"], "levels2": ["文本背景信息约束"], "category": "trace1.0"} +{"id": "91", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "你是一个知识问答系统\n1. 参考下面所给知识回答问题。\n\n【正文】\n| 物品名称 | 分类 | 品牌 | 类型 | 厂商 | 产地 | 国内/国外 | 规格 | 厂商编码 | 二维码编码 | 安全库存量 | 单位 | 物品编码 | 指导价 | 是否药品 | 是否生成一物一码 |\n| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |\n| 光学架 | 光学镜架 | 派柏雷滋 | 成品 | 广州市茂昌眼镜有限公司 | 深圳 | 国内 | P50753 | 无 | 无 | 1 | 副 |  | 898 | 否 | 是 |\n| 光学架 | 光学镜架 | 派柏雷滋 | 成品 | 广州市茂昌眼镜有限公司 | 深圳 | 国内 | P50762 | 无 | 无 | 1 | 副 |  | 898 | 否 | 是 |\n| 光学架 | 光学镜架 | 派柏雷滋 | 成品 | 广州市茂昌眼镜有限公司 | 深圳 | 国内 | P83140C1 | 无 | 无 | 1 | 副 |  | 898 | 否 | 是 |\n| 光学架 | 光学镜架 | 派柏雷滋 | 成品 | 广州市茂昌眼镜有限公司 | 深圳 | 国内 | P83142C1R | 无 | 无 | 1 | 副 |  | 898 | 否 | 是 |\n| 光学架 | 光学镜架 | 派柏雷滋 | 成品 | 广州市茂昌眼镜有限公司 | 深圳 | 国内 | P8037C4 | 无 | 无 | 1 | 副 |  | 898 | 否 | 是 |\n| 光学架 | 光学镜架 | 派柏雷滋 | 成品 | 广州市茂昌眼镜有限公司 | 深圳 | 国内 | P8042C4 | 无 | 无 | 1 | 副 |  | 898 | 否 | 是 |\n| 光学架 | 光学镜架 | 派柏雷滋 | 成品 | 广州市茂昌眼镜有限公司 | 深圳 | 国内 | P8053C4 | 无 | 无 | 1 | 副 |  | 898 | 否 | 是 |\n| 塑钢光学架 | 光学镜架 | 伊健EKIN | 成品 | 广州市茂昌眼镜有限公司 | 深圳 | 国内 | 17007C3 | 无 | 无 | 1 | 副 |  | 238 | 否 | 是 |\n| 光学架 | 光学镜架 | 莱克斯LeiX | 成品 | 广州市越秀区元素眼镜商行 | 深圳 | 国内 | 957C3 | 无 | 无 | 1 | 副 |  | 798 | 否 | 是 |\n| 光学架 | 光学镜架 | 莱克斯LeiX | 成品 | 广州市越秀区元素眼镜商行 | 深圳 | 国内 | 650C1 | 无 | 无 | 1 | 副 |  | 558 | 否 | 是 |\n| 光学架 | 光学镜架 | 莱克斯LeiX | 成品 | 广州市越秀区元素眼镜商行 | 深圳 | 国内 | 667C4 | 无 | 无 | 1 | 副 |  | 558 | 否 | 是 |\n| 光学架 | 光学镜架 | 莱克斯LeiX | 成品 | 广州市越秀区元素眼镜商行 | 深圳 | 国内 | 914C6 | 无 | 无 | 1 | 副 |  | 558 | 否 | 是 |\n| 光学架 | 光学镜架 | 莱克斯LeiX | 成品 | 广州市越秀区元素眼镜商行 | 深圳 | 国内 | 666C3 | 无 | 无 | 1 | 副 |  | 558 | 否 | 是 |\n| 光学架 | 光学镜架 | 莱克斯LeiX | 成品 | 广州市越秀区元素眼镜商行 | 深圳 | 国内 | 667C1 | 无 | 无 | 1 | 副 |  | 558 | 否 | 是 |\n| 光学架 | 光学镜架 | 莱克斯LeiX | 成品 | 广州市越秀区元素眼镜商行 | 深圳 | 国内 | 782C1 | 无 | 无 | 1 | 副 |  | 558 | 否 | 是 |\n| 光学架 | 光学镜架 | 莱克斯LeiX | 成品 | 广州市越秀区元素眼镜商行 | 深圳 | 国内 | 852C5 | 无 | 无 | 1 | 副 |  | 558 | 否 | 是 |\n| 光学架 | 光学镜架 | 莱克斯LeiX | 成品 | 广州市越秀区元素眼镜商行 | 深圳 | 国内 | 854C2 | 无 | 无 | 1 | 副 |  | 558 | 否 | 是 |\n| 光学架 | 光学镜架 | 莱克斯LeiX | 成品 | 广州市越秀区元素眼镜商行 | 深圳 | 国内 | 854C3 | 无 | 无 | 1 | 副 |  | 558 | 否 | 是 |\n| 光学架 | 光学镜架 | 莱克斯LeiX | 成品 | 广州市越秀区元素眼镜商行 | 深圳 | 国内 | 851C6 | 无 | 无 | 1 | 副 |  | 558 | 否 | 是 |\n# Inputs:\n是否所有标记为国内产的光学架都拥有相同的指导价格且均由广州市茂昌眼镜有限公司生产?\n"}], "type": "trace", "description": "你是一个知识问答系统", "constraints": "1. 参考下面所给知识回答问题。\n\n【正文】\n| 物品名称 | 分类 | 品牌 | 类型 | 厂商 | 产地 | 国内/国外 | 规格 | 厂商编码 | 二维码编码 | 安全库存量 | 单位 | 物品编码 | 指导价 | 是否药品 | 是否生成一物一码 |\n| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |\n| 光学架 | 光学镜架 | 派柏雷滋 | 成品 | 广州市茂昌眼镜有限公司 | 深圳 | 国内 | P50753 | 无 | 无 | 1 | 副 |  | 898 | 否 | 是 |\n| 光学架 | 光学镜架 | 派柏雷滋 | 成品 | 广州市茂昌眼镜有限公司 | 深圳 | 国内 | P50762 | 无 | 无 | 1 | 副 |  | 898 | 否 | 是 |\n| 光学架 | 光学镜架 | 派柏雷滋 | 成品 | 广州市茂昌眼镜有限公司 | 深圳 | 国内 | P83140C1 | 无 | 无 | 1 | 副 |  | 898 | 否 | 是 |\n| 光学架 | 光学镜架 | 派柏雷滋 | 成品 | 广州市茂昌眼镜有限公司 | 深圳 | 国内 | P83142C1R | 无 | 无 | 1 | 副 |  | 898 | 否 | 是 |\n| 光学架 | 光学镜架 | 派柏雷滋 | 成品 | 广州市茂昌眼镜有限公司 | 深圳 | 国内 | P8037C4 | 无 | 无 | 1 | 副 |  | 898 | 否 | 是 |\n| 光学架 | 光学镜架 | 派柏雷滋 | 成品 | 广州市茂昌眼镜有限公司 | 深圳 | 国内 | P8042C4 | 无 | 无 | 1 | 副 |  | 898 | 否 | 是 |\n| 光学架 | 光学镜架 | 派柏雷滋 | 成品 | 广州市茂昌眼镜有限公司 | 深圳 | 国内 | P8053C4 | 无 | 无 | 1 | 副 |  | 898 | 否 | 是 |\n| 塑钢光学架 | 光学镜架 | 伊健EKIN | 成品 | 广州市茂昌眼镜有限公司 | 深圳 | 国内 | 17007C3 | 无 | 无 | 1 | 副 |  | 238 | 否 | 是 |\n| 光学架 | 光学镜架 | 莱克斯LeiX | 成品 | 广州市越秀区元素眼镜商行 | 深圳 | 国内 | 957C3 | 无 | 无 | 1 | 副 |  | 798 | 否 | 是 |\n| 光学架 | 光学镜架 | 莱克斯LeiX | 成品 | 广州市越秀区元素眼镜商行 | 深圳 | 国内 | 650C1 | 无 | 无 | 1 | 副 |  | 558 | 否 | 是 |\n| 光学架 | 光学镜架 | 莱克斯LeiX | 成品 | 广州市越秀区元素眼镜商行 | 深圳 | 国内 | 667C4 | 无 | 无 | 1 | 副 |  | 558 | 否 | 是 |\n| 光学架 | 光学镜架 | 莱克斯LeiX | 成品 | 广州市越秀区元素眼镜商行 | 深圳 | 国内 | 914C6 | 无 | 无 | 1 | 副 |  | 558 | 否 | 是 |\n| 光学架 | 光学镜架 | 莱克斯LeiX | 成品 | 广州市越秀区元素眼镜商行 | 深圳 | 国内 | 666C3 | 无 | 无 | 1 | 副 |  | 558 | 否 | 是 |\n| 光学架 | 光学镜架 | 莱克斯LeiX | 成品 | 广州市越秀区元素眼镜商行 | 深圳 | 国内 | 667C1 | 无 | 无 | 1 | 副 |  | 558 | 否 | 是 |\n| 光学架 | 光学镜架 | 莱克斯LeiX | 成品 | 广州市越秀区元素眼镜商行 | 深圳 | 国内 | 782C1 | 无 | 无 | 1 | 副 |  | 558 | 否 | 是 |\n| 光学架 | 光学镜架 | 莱克斯LeiX | 成品 | 广州市越秀区元素眼镜商行 | 深圳 | 国内 | 852C5 | 无 | 无 | 1 | 副 |  | 558 | 否 | 是 |\n| 光学架 | 光学镜架 | 莱克斯LeiX | 成品 | 广州市越秀区元素眼镜商行 | 深圳 | 国内 | 854C2 | 无 | 无 | 1 | 副 |  | 558 | 否 | 是 |\n| 光学架 | 光学镜架 | 莱克斯LeiX | 成品 | 广州市越秀区元素眼镜商行 | 深圳 | 国内 | 854C3 | 无 | 无 | 1 | 副 |  | 558 | 否 | 是 |\n| 光学架 | 光学镜架 | 莱克斯LeiX | 成品 | 广州市越秀区元素眼镜商行 | 深圳 | 国内 | 851C6 | 无 | 无 | 1 | 副 |  | 558 | 否 | 是 |", "input": "是否所有标记为国内产的光学架都拥有相同的指导价格且均由广州市茂昌眼镜有限公司生产?", "constraints_num": 1, "constraints_splits": ["1. 参考下面所给知识回答问题。\n\n【正文】\n| 物品名称 | 分类 | 品牌 | 类型 | 厂商 | 产地 | 国内/国外 | 规格 | 厂商编码 | 二维码编码 | 安全库存量 | 单位 | 物品编码 | 指导价 | 是否药品 | 是否生成一物一码 |\n| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |\n| 光学架 | 光学镜架 | 派柏雷滋 | 成品 | 广州市茂昌眼镜有限公司 | 深圳 | 国内 | P50753 | 无 | 无 | 1 | 副 |  | 898 | 否 | 是 |\n| 光学架 | 光学镜架 | 派柏雷滋 | 成品 | 广州市茂昌眼镜有限公司 | 深圳 | 国内 | P50762 | 无 | 无 | 1 | 副 |  | 898 | 否 | 是 |\n| 光学架 | 光学镜架 | 派柏雷滋 | 成品 | 广州市茂昌眼镜有限公司 | 深圳 | 国内 | P83140C1 | 无 | 无 | 1 | 副 |  | 898 | 否 | 是 |\n| 光学架 | 光学镜架 | 派柏雷滋 | 成品 | 广州市茂昌眼镜有限公司 | 深圳 | 国内 | P83142C1R | 无 | 无 | 1 | 副 |  | 898 | 否 | 是 |\n| 光学架 | 光学镜架 | 派柏雷滋 | 成品 | 广州市茂昌眼镜有限公司 | 深圳 | 国内 | P8037C4 | 无 | 无 | 1 | 副 |  | 898 | 否 | 是 |\n| 光学架 | 光学镜架 | 派柏雷滋 | 成品 | 广州市茂昌眼镜有限公司 | 深圳 | 国内 | P8042C4 | 无 | 无 | 1 | 副 |  | 898 | 否 | 是 |\n| 光学架 | 光学镜架 | 派柏雷滋 | 成品 | 广州市茂昌眼镜有限公司 | 深圳 | 国内 | P8053C4 | 无 | 无 | 1 | 副 |  | 898 | 否 | 是 |\n| 塑钢光学架 | 光学镜架 | 伊健EKIN | 成品 | 广州市茂昌眼镜有限公司 | 深圳 | 国内 | 17007C3 | 无 | 无 | 1 | 副 |  | 238 | 否 | 是 |\n| 光学架 | 光学镜架 | 莱克斯LeiX | 成品 | 广州市越秀区元素眼镜商行 | 深圳 | 国内 | 957C3 | 无 | 无 | 1 | 副 |  | 798 | 否 | 是 |\n| 光学架 | 光学镜架 | 莱克斯LeiX | 成品 | 广州市越秀区元素眼镜商行 | 深圳 | 国内 | 650C1 | 无 | 无 | 1 | 副 |  | 558 | 否 | 是 |\n| 光学架 | 光学镜架 | 莱克斯LeiX | 成品 | 广州市越秀区元素眼镜商行 | 深圳 | 国内 | 667C4 | 无 | 无 | 1 | 副 |  | 558 | 否 | 是 |\n| 光学架 | 光学镜架 | 莱克斯LeiX | 成品 | 广州市越秀区元素眼镜商行 | 深圳 | 国内 | 914C6 | 无 | 无 | 1 | 副 |  | 558 | 否 | 是 |\n| 光学架 | 光学镜架 | 莱克斯LeiX | 成品 | 广州市越秀区元素眼镜商行 | 深圳 | 国内 | 666C3 | 无 | 无 | 1 | 副 |  | 558 | 否 | 是 |\n| 光学架 | 光学镜架 | 莱克斯LeiX | 成品 | 广州市越秀区元素眼镜商行 | 深圳 | 国内 | 667C1 | 无 | 无 | 1 | 副 |  | 558 | 否 | 是 |\n| 光学架 | 光学镜架 | 莱克斯LeiX | 成品 | 广州市越秀区元素眼镜商行 | 深圳 | 国内 | 782C1 | 无 | 无 | 1 | 副 |  | 558 | 否 | 是 |\n| 光学架 | 光学镜架 | 莱克斯LeiX | 成品 | 广州市越秀区元素眼镜商行 | 深圳 | 国内 | 852C5 | 无 | 无 | 1 | 副 |  | 558 | 否 | 是 |\n| 光学架 | 光学镜架 | 莱克斯LeiX | 成品 | 广州市越秀区元素眼镜商行 | 深圳 | 国内 | 854C2 | 无 | 无 | 1 | 副 |  | 558 | 否 | 是 |\n| 光学架 | 光学镜架 | 莱克斯LeiX | 成品 | 广州市越秀区元素眼镜商行 | 深圳 | 国内 | 854C3 | 无 | 无 | 1 | 副 |  | 558 | 否 | 是 |\n| 光学架 | 光学镜架 | 莱克斯LeiX | 成品 | 广州市越秀区元素眼镜商行 | 深圳 | 国内 | 851C6 | 无 | 无 | 1 | 副 |  | 558 | 否 | 是 |"], "levels2": ["表格背景信息约束"], "category": "trace1.0"} +{"id": "92", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "描述一个使用Amazon Echo的情景,具体到如何在电视上观看电影,包含至少三个具体操作指令,如打开媒体应用程序、调整音量或暂停/播放电影,并说明这些操作如何在无需使用遥控器的情况下完成。\n1. 描述应为生动、详细的叙述方式;\n# Inputs:\n在一个温馨的周末夜晚,你正坐在客厅的沙发上准备观看你最爱的电影,只需简单地对Amazon Echo说:“Alexa,打开Netflix应用程序”,然后说:“Alexa,将音量调至50%”,最后在电影播放到一半时,你突然想起需要去厨房拿点爆米花,于是轻松地说:“Alexa,暂停电影”,整个过程流畅自然,不再需要在沙发缝隙中寻找遥控器。\n"}], "type": "trace", "description": "描述一个使用Amazon Echo的情景,具体到如何在电视上观看电影,包含至少三个具体操作指令,如打开媒体应用程序、调整音量或暂停/播放电影,并说明这些操作如何在无需使用遥控器的情况下完成。", "constraints": "1. 描述应为生动、详细的叙述方式;", "input": "在一个温馨的周末夜晚,你正坐在客厅的沙发上准备观看你最爱的电影,只需简单地对Amazon Echo说:“Alexa,打开Netflix应用程序”,然后说:“Alexa,将音量调至50%”,最后在电影播放到一半时,你突然想起需要去厨房拿点爆米花,于是轻松地说:“Alexa,暂停电影”,整个过程流畅自然,不再需要在沙发缝隙中寻找遥控器。", "constraints_num": 1, "constraints_splits": ["1. 描述应为生动、详细的叙述方式;"], "levels2": ["语言特征约束"], "category": "trace1.0"} +{"id": "93", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "你是新零售的在线客服,可以在线帮助用户处理关于包修的相关问题。\n1. 参考下面流程回答问题。\n\n新零售-文本-保修问题咨询的处理流程:\nflowchart TD\nA1([开始]) -- 保修问题咨询 --> B1[请用户选择要咨询的产品,如空调,燃气灶,热水器,洗衣机或者其他产品]\nB1 -- 空调 --> C1[请用户选择是家用空调还是中央空调]\nC1 -- 家用空调 --> D1[严格回复: 家用空调(2022年 6月 1 日前销售,制冷量小于或等于 14000W)、家用天井 式空调、移动空调、除湿机等整机包修六年。2022年6 月 1 日起,销售的挂壁式、落地式家用空调(制冷量小于或等于 14000W)整机包修十 年,工程机以签订的合作协议中包修年限为准。]\nC1 -- 中央空调 --> E1[严格回复: 中央空调产品包修期限,以产品型号为准,有包修18个月、3年或6年不等;中央空调大型机组整机产品质量问题“自机组调试验收合格之日”起计算包修期,可参考随机的包修卡,具体以购买合同签订日期为准。]\nB1 -- 燃气灶 --> F1[严格回复: 您好,自购买之日起燃气灶整机质量问题包修六年。 注:家用燃气灶的随机附送电池为赠品,不在包修范围]\nB1 -- 洗衣机 --> G1[告诉用户自购买之日起整机质量问题包修3年]\nB1 -- 热水器 --> H1[询问用户是燃气热水器还是空气能热水器]\nH1 -- 燃气热水器 --> I1[告诉用户自购买之日起整机质量问题包修8年]\nH1 -- 空气能热水器 --> J1[严格回复: 您好,2022年6月1日(含)起销售,制热量小于7.0KW的机组免费包修6年,制热量为7.0KW及以上的机组免费包修3年;家用热水器若作为商业用途,整机及主要配件包修期为1年,除非购销合同中另有规定。]\nB1 -- 其他产品 --> K1[回复用户抱歉暂时没有他想要的答案,建议转人工咨询哦~]\n\n\n新零售-文本-支付问题咨询的处理流程:\nflowchart TD\nA2[开始] -- 如何付款 --> D2[请用户选择付款方式,如银联支付、微信支付、支付宝支付]\nD2 -- 微信支付 --> E2[告诉用户提交订单后在支付环节可选择微信、银联在线支付的方式]\nD2 -- 支付宝支付 --> C2[严格回复: 1、通过浏览器进入我店或者扫描二维码进入分销店可选择使用支付宝支付;2、通过我店公众号,点击页面右上角“…”选择使用浏览器打开,选择对应产品下单可使用支付宝支付。]\nD2 -- 银联支付付款 --> B2[回复用户提交订单后在支付环节可选择微信、银联在线支付的方式。]\nA2[开始] -- 退款时间 --> F2[询问用户是想咨询微信、支付宝还是银联支付]\nF2 -- 微信 or 支付宝 --> G2[严格回复: 您好,如果是未发货状态下申请退货,退款是在3-5个工作日内原路返回;操作流程是:点击个人中心全部订单——查看订单详情申请售后——点击仅退款(说明原因)——提交成功以后,后台会审核,退款原路返回您的账户。如您还未收到退款,请提供付款时的微信商户订单号信息给我们核实,谢谢!]\nF2 -- 银联支付 --> H2[严格回复: 您好,订单状态为“待发货”,请您在订单详情“申请售后——仅退款”,银联支付是7~10个工作日,感谢您的配合!(仅限国内大陆地区)]\nA2[开始] -- 如何使用优惠支付 --> J2[询问用户是想咨询积分还是优惠券]\nJ2 -- 积分 --> K2[告诉用户在支付页面选择即可使用,积分是有时效性的,超期会被清零请尽快使用哦。]\nJ2 -- 优惠券 --> L2[先确定优惠券的类别,再根据店铺优惠券和直播优惠券的知识灵活回复]\n\n\n请记住当前时间为:2031-12-13 05:05:52 星期六\n# Inputs:\n你好,请问如果空调坏了,贵公司的保修政策是怎样的呢?\n"}], "type": "trace", "description": "你是新零售的在线客服,可以在线帮助用户处理关于包修的相关问题。", "constraints": "1. 参考下面流程回答问题。\n\n新零售-文本-保修问题咨询的处理流程:\nflowchart TD\nA1([开始]) -- 保修问题咨询 --> B1[请用户选择要咨询的产品,如空调,燃气灶,热水器,洗衣机或者其他产品]\nB1 -- 空调 --> C1[请用户选择是家用空调还是中央空调]\nC1 -- 家用空调 --> D1[严格回复: 家用空调(2022年 6月 1 日前销售,制冷量小于或等于 14000W)、家用天井 式空调、移动空调、除湿机等整机包修六年。2022年6 月 1 日起,销售的挂壁式、落地式家用空调(制冷量小于或等于 14000W)整机包修十 年,工程机以签订的合作协议中包修年限为准。]\nC1 -- 中央空调 --> E1[严格回复: 中央空调产品包修期限,以产品型号为准,有包修18个月、3年或6年不等;中央空调大型机组整机产品质量问题“自机组调试验收合格之日”起计算包修期,可参考随机的包修卡,具体以购买合同签订日期为准。]\nB1 -- 燃气灶 --> F1[严格回复: 您好,自购买之日起燃气灶整机质量问题包修六年。 注:家用燃气灶的随机附送电池为赠品,不在包修范围]\nB1 -- 洗衣机 --> G1[告诉用户自购买之日起整机质量问题包修3年]\nB1 -- 热水器 --> H1[询问用户是燃气热水器还是空气能热水器]\nH1 -- 燃气热水器 --> I1[告诉用户自购买之日起整机质量问题包修8年]\nH1 -- 空气能热水器 --> J1[严格回复: 您好,2022年6月1日(含)起销售,制热量小于7.0KW的机组免费包修6年,制热量为7.0KW及以上的机组免费包修3年;家用热水器若作为商业用途,整机及主要配件包修期为1年,除非购销合同中另有规定。]\nB1 -- 其他产品 --> K1[回复用户抱歉暂时没有他想要的答案,建议转人工咨询哦~]\n\n\n新零售-文本-支付问题咨询的处理流程:\nflowchart TD\nA2[开始] -- 如何付款 --> D2[请用户选择付款方式,如银联支付、微信支付、支付宝支付]\nD2 -- 微信支付 --> E2[告诉用户提交订单后在支付环节可选择微信、银联在线支付的方式]\nD2 -- 支付宝支付 --> C2[严格回复: 1、通过浏览器进入我店或者扫描二维码进入分销店可选择使用支付宝支付;2、通过我店公众号,点击页面右上角“…”选择使用浏览器打开,选择对应产品下单可使用支付宝支付。]\nD2 -- 银联支付付款 --> B2[回复用户提交订单后在支付环节可选择微信、银联在线支付的方式。]\nA2[开始] -- 退款时间 --> F2[询问用户是想咨询微信、支付宝还是银联支付]\nF2 -- 微信 or 支付宝 --> G2[严格回复: 您好,如果是未发货状态下申请退货,退款是在3-5个工作日内原路返回;操作流程是:点击个人中心全部订单——查看订单详情申请售后——点击仅退款(说明原因)——提交成功以后,后台会审核,退款原路返回您的账户。如您还未收到退款,请提供付款时的微信商户订单号信息给我们核实,谢谢!]\nF2 -- 银联支付 --> H2[严格回复: 您好,订单状态为“待发货”,请您在订单详情“申请售后——仅退款”,银联支付是7~10个工作日,感谢您的配合!(仅限国内大陆地区)]\nA2[开始] -- 如何使用优惠支付 --> J2[询问用户是想咨询积分还是优惠券]\nJ2 -- 积分 --> K2[告诉用户在支付页面选择即可使用,积分是有时效性的,超期会被清零请尽快使用哦。]\nJ2 -- 优惠券 --> L2[先确定优惠券的类别,再根据店铺优惠券和直播优惠券的知识灵活回复]\n\n\n请记住当前时间为:2031-12-13 05:05:52 星期六", "input": "你好,请问如果空调坏了,贵公司的保修政策是怎样的呢?", "constraints_num": 1, "constraints_splits": ["1. 参考下面流程回答问题。\n\n新零售-文本-保修问题咨询的处理流程:\nflowchart TD\nA1([开始]) -- 保修问题咨询 --> B1[请用户选择要咨询的产品,如空调,燃气灶,热水器,洗衣机或者其他产品]\nB1 -- 空调 --> C1[请用户选择是家用空调还是中央空调]\nC1 -- 家用空调 --> D1[严格回复: 家用空调(2022年 6月 1 日前销售,制冷量小于或等于 14000W)、家用天井 式空调、移动空调、除湿机等整机包修六年。2022年6 月 1 日起,销售的挂壁式、落地式家用空调(制冷量小于或等于 14000W)整机包修十 年,工程机以签订的合作协议中包修年限为准。]\nC1 -- 中央空调 --> E1[严格回复: 中央空调产品包修期限,以产品型号为准,有包修18个月、3年或6年不等;中央空调大型机组整机产品质量问题“自机组调试验收合格之日”起计算包修期,可参考随机的包修卡,具体以购买合同签订日期为准。]\nB1 -- 燃气灶 --> F1[严格回复: 您好,自购买之日起燃气灶整机质量问题包修六年。 注:家用燃气灶的随机附送电池为赠品,不在包修范围]\nB1 -- 洗衣机 --> G1[告诉用户自购买之日起整机质量问题包修3年]\nB1 -- 热水器 --> H1[询问用户是燃气热水器还是空气能热水器]\nH1 -- 燃气热水器 --> I1[告诉用户自购买之日起整机质量问题包修8年]\nH1 -- 空气能热水器 --> J1[严格回复: 您好,2022年6月1日(含)起销售,制热量小于7.0KW的机组免费包修6年,制热量为7.0KW及以上的机组免费包修3年;家用热水器若作为商业用途,整机及主要配件包修期为1年,除非购销合同中另有规定。]\nB1 -- 其他产品 --> K1[回复用户抱歉暂时没有他想要的答案,建议转人工咨询哦~]\n\n\n新零售-文本-支付问题咨询的处理流程:\nflowchart TD\nA2[开始] -- 如何付款 --> D2[请用户选择付款方式,如银联支付、微信支付、支付宝支付]\nD2 -- 微信支付 --> E2[告诉用户提交订单后在支付环节可选择微信、银联在线支付的方式]\nD2 -- 支付宝支付 --> C2[严格回复: 1、通过浏览器进入我店或者扫描二维码进入分销店可选择使用支付宝支付;2、通过我店公众号,点击页面右上角“…”选择使用浏览器打开,选择对应产品下单可使用支付宝支付。]\nD2 -- 银联支付付款 --> B2[回复用户提交订单后在支付环节可选择微信、银联在线支付的方式。]\nA2[开始] -- 退款时间 --> F2[询问用户是想咨询微信、支付宝还是银联支付]\nF2 -- 微信 or 支付宝 --> G2[严格回复: 您好,如果是未发货状态下申请退货,退款是在3-5个工作日内原路返回;操作流程是:点击个人中心全部订单——查看订单详情申请售后——点击仅退款(说明原因)——提交成功以后,后台会审核,退款原路返回您的账户。如您还未收到退款,请提供付款时的微信商户订单号信息给我们核实,谢谢!]\nF2 -- 银联支付 --> H2[严格回复: 您好,订单状态为“待发货”,请您在订单详情“申请售后——仅退款”,银联支付是7~10个工作日,感谢您的配合!(仅限国内大陆地区)]\nA2[开始] -- 如何使用优惠支付 --> J2[询问用户是想咨询积分还是优惠券]\nJ2 -- 积分 --> K2[告诉用户在支付页面选择即可使用,积分是有时效性的,超期会被清零请尽快使用哦。]\nJ2 -- 优惠券 --> L2[先确定优惠券的类别,再根据店铺优惠券和直播优惠券的知识灵活回复]\n\n\n请记住当前时间为:2031-12-13 05:05:52 星期六"], "levels2": ["自然语言流程背景信息约束"], "category": "trace1.0"} +{"id": "94", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "转述一则新闻报道并表达个人观点\n1. 字数控制在200字左右;\n# Inputs:\n2019年,加拿大从中国进口了500万吨大豆,这标志着这一年,加拿大已成为中国最大的大豆进口国之一。\n"}], "type": "trace", "description": "转述一则新闻报道并表达个人观点", "constraints": "1. 字数控制在200字左右;", "input": "2019年,加拿大从中国进口了500万吨大豆,这标志着这一年,加拿大已成为中国最大的大豆进口国之一。", "constraints_num": 1, "constraints_splits": ["1. 字数控制在200字左右;"], "levels2": ["数值约束"], "category": "trace1.0"} +{"id": "95", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "将文本中的绿色部分标出,并使用绿色高亮来标记所有“绿色”关键词以及与绿色相关的描述\n1. 确保突出显示与绿色相关的所有信息;\n# Inputs:\n在成都研究基地的实验室里,我们通常会遇到各种刁钻的问题,但就在上周,我们遇到了一个真正的难题。我们的新实习生发现了一种\\奇怪的细菌,这种细菌的\\[绿色\\]更亮,也更容易滋生。为了防止它的扩散,我们需要不断努力。\n"}], "type": "trace", "description": "将文本中的绿色部分标出,并使用绿色高亮来标记所有“绿色”关键词以及与绿色相关的描述", "constraints": "1. 确保突出显示与绿色相关的所有信息;", "input": "在成都研究基地的实验室里,我们通常会遇到各种刁钻的问题,但就在上周,我们遇到了一个真正的难题。我们的新实习生发现了一种\\奇怪的细菌,这种细菌的\\[绿色\\]更亮,也更容易滋生。为了防止它的扩散,我们需要不断努力。", "constraints_num": 1, "constraints_splits": ["1. 确保突出显示与绿色相关的所有信息;"], "levels2": ["主题约束"], "category": "trace1.0"} +{"id": "96", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇关于电影行业在过去20年变化的文章\n1. 整体语言风格应保持专业、客观,适合电影行业从业者和研究者阅读;\n"}], "type": "trace", "description": "撰写一篇关于电影行业在过去20年变化的文章", "constraints": "1. 整体语言风格应保持专业、客观,适合电影行业从业者和研究者阅读;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 整体语言风格应保持专业、客观,适合电影行业从业者和研究者阅读;"], "levels2": ["语气风格约束"], "category": "trace1.0"} +{"id": "97", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "将两个有序列表合并为一个新的有序列表,元素按从小到大的顺序排列,输出的列表应以 Python 代码的格式返回。\n1. 不得使用任何内置的排序函数;\n# Inputs:\nlist1 = [1, 3, 5]\nlist2 = [2, 4, 6]\n"}], "type": "trace", "description": "将两个有序列表合并为一个新的有序列表,元素按从小到大的顺序排列,输出的列表应以 Python 代码的格式返回。", "constraints": "1. 不得使用任何内置的排序函数;", "input": "list1 = [1, 3, 5]\nlist2 = [2, 4, 6]", "constraints_num": 1, "constraints_splits": ["1. 不得使用任何内置的排序函数;"], "levels2": ["排除约束"], "category": "trace1.0"} +{"id": "98", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "写一段对于自然灾害保险的解释,内容需涵盖保险涵盖的自然灾害类型,并详细说明相应的赔偿政策与流程。\n1. 采用正式、专业的语气风格;\n"}], "type": "trace", "description": "写一段对于自然灾害保险的解释,内容需涵盖保险涵盖的自然灾害类型,并详细说明相应的赔偿政策与流程。", "constraints": "1. 采用正式、专业的语气风格;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 采用正式、专业的语气风格;"], "levels2": ["语气风格约束"], "category": "trace1.0"} +{"id": "99", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以Markdown格式解释地震波的起源及传播方式,并分析如何利用地震波来探测地下物质。\n1. 使用编号和列表约束来组织信息,提高可读性;\n"}], "type": "trace", "description": "以Markdown格式解释地震波的起源及传播方式,并分析如何利用地震波来探测地下物质。", "constraints": "1. 使用编号和列表约束来组织信息,提高可读性;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 使用编号和列表约束来组织信息,提高可读性;"], "levels2": ["编号和列表约束"], "category": "trace1.0"} +{"id": "100", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇分析文章,探讨一个所有国家都能享有免费医疗保健的世界\n1. 文章中不可包含任何虚构的或未经证实的数据,确保信息的准确性和可靠性;\n"}], "type": "trace", "description": "撰写一篇分析文章,探讨一个所有国家都能享有免费医疗保健的世界", "constraints": "1. 文章中不可包含任何虚构的或未经证实的数据,确保信息的准确性和可靠性;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 文章中不可包含任何虚构的或未经证实的数据,确保信息的准确性和可靠性;"], "levels2": ["价值观约束"], "category": "trace1.0"} +{"id": "101", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇简短评论,概括对一篇文章的看法和理解,专注于GABA神经元在大脑修复作用中的重要性。\n1. 评论开头需使用\"[评论]\"标注,结尾需使用\"[/评论]\"标注。\n"}], "type": "trace", "description": "撰写一篇简短评论,概括对一篇文章的看法和理解,专注于GABA神经元在大脑修复作用中的重要性。", "constraints": "1. 评论开头需使用\"[评论]\"标注,结尾需使用\"[/评论]\"标注。", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 评论开头需使用\"[评论]\"标注,结尾需使用\"[/评论]\"标注。"], "levels2": ["模版约束"], "category": "trace1.0"} +{"id": "102", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "计算给定时间段内完成所有任务的平均每天工作时间\n1. 结果以JSON格式返回,结构应包含“时间段”、“总任务数”、“总小时数”、“平均每天工作时间”等字段;\n# Inputs:\n1. 一个时间段(2022年7月1日至2022年7月10日)\n2. 一份清单(包括10个任务,估计总共需要30小时完成)\n"}], "type": "trace", "description": "计算给定时间段内完成所有任务的平均每天工作时间", "constraints": "1. 结果以JSON格式返回,结构应包含“时间段”、“总任务数”、“总小时数”、“平均每天工作时间”等字段;", "input": "1. 一个时间段(2022年7月1日至2022年7月10日)\n2. 一份清单(包括10个任务,估计总共需要30小时完成)", "constraints_num": 1, "constraints_splits": ["1. 结果以JSON格式返回,结构应包含“时间段”、“总任务数”、“总小时数”、“平均每天工作时间”等字段;"], "levels2": ["输出格式约束"], "category": "trace1.0"} +{"id": "103", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇电影评论文章,比较电影《霸王别姬》与《一个叫欧维的男人决定去死》。\n1. 在适当位置插入电影海报或主演剧照,以增强文章的视觉效果。\n"}], "type": "trace", "description": "撰写一篇电影评论文章,比较电影《霸王别姬》与《一个叫欧维的男人决定去死》。", "constraints": "1. 在适当位置插入电影海报或主演剧照,以增强文章的视觉效果。", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 在适当位置插入电影海报或主演剧照,以增强文章的视觉效果。"], "levels2": ["文本样式约束"], "category": "trace1.0"} +{"id": "104", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一个响应式HTML网站,包含标题、产品图片、产品描述、客户评价区和联系信息。\n1. 目标受众是健身爱好者和寻找家庭健身器材的个人。\n"}], "type": "trace", "description": "创建一个响应式HTML网站,包含标题、产品图片、产品描述、客户评价区和联系信息。", "constraints": "1. 目标受众是健身爱好者和寻找家庭健身器材的个人。", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 目标受众是健身爱好者和寻找家庭健身器材的个人。"], "levels2": ["受众目标约束"], "category": "trace1.0"} +{"id": "105", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "分析sayhello函数中的console.log语句没有执行的原因,并提供至少三种排查和解决这个问题的方法。考虑到应用程序在大型微服务架构中运行,解决方案需考虑服务之间的依赖和通信问题。\n1. 解决方案需要考虑到服务之间的依赖和通信问题;\n"}], "type": "trace", "description": "分析sayhello函数中的console.log语句没有执行的原因,并提供至少三种排查和解决这个问题的方法。考虑到应用程序在大型微服务架构中运行,解决方案需考虑服务之间的依赖和通信问题。", "constraints": "1. 解决方案需要考虑到服务之间的依赖和通信问题;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 解决方案需要考虑到服务之间的依赖和通信问题;"], "levels2": ["主题约束"], "category": "trace1.0"} +{"id": "106", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "分析并解决C++代码中的编译错误 \"complex is not defined in this scope\",并确保代码能够在符合C++标准的编译器下正确编译,同时支持多平台编译。\n1. 解决方案中避免使用任何特定于某个编译器的特性;\n# Inputs:\n代码第26行出现编译错误,错误信息为:\"complex is not defined in this scope\"。\n"}], "type": "trace", "description": "分析并解决C++代码中的编译错误 \"complex is not defined in this scope\",并确保代码能够在符合C++标准的编译器下正确编译,同时支持多平台编译。", "constraints": "1. 解决方案中避免使用任何特定于某个编译器的特性;", "input": "代码第26行出现编译错误,错误信息为:\"complex is not defined in this scope\"。", "constraints_num": 1, "constraints_splits": ["1. 解决方案中避免使用任何特定于某个编译器的特性;"], "levels2": ["排除约束"], "category": "trace1.0"} +{"id": "107", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "你是一个知识问答系统\n1. 参考下面所给知识回答问题。\n\n【正文】\n| 系统 | 地区 | 机构名称 | 招录机关 | 机构层级 | 招录职位 | 职位代码 | 职位简介 | 招录数量 | 学历 | 学位 | 专业 | 是否接受双学位、第二学士学位 | 基层工作经历要求 | 年龄要求 | 政治面貌 | 性别要求 | 户籍要求 | 其他条件 | 是否组织专业科目考试 | 是否党政紧缺人才职位 | 是否为参照公务员法管理机关 | 考察比例 | 备注 |\n| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |\n| 市直 | 黄石 | 黄石市直 | 黄石市纪委监委 | 市(州)级 | 综合管理岗 | 14230202008001001 | 从事文字写作及综合协调工作 | 2 | 本科及以上 | 学士及以上 | 不限 | 是 | 具有两年及以上基层工作经历人员 | 1835岁 | 中共党员 | 不限制 | 不限制 |  | 否 | 否 | 否 | 1:1 |  |\n| 市直 | 黄石 | 黄石市直 | 黄石市纪委监委 | 市(州)级 | 纪检监察岗 | 14230202008001002 | 从事监督检查、审查调查等工作 | 3 | 本科及以上 | 学士及以上 | 法学类、财务会计类、计算机类、公安学类 | 是 | 具有两年及以上基层工作经历人员 | 1835岁 | 中共党员 | 不限制 | 不限制 |  | 否 | 否 | 否 | 1:1 |  |\n| 市直 | 黄石 | 黄石市直 | 黄石市妇女联合会 | 市(州)级 | 综合管理岗 | 14230202008001003 | 从事文字写作及综合协调工作 | 1 | 本科及以上 | 学士及以上 | 中国语言文学类、新闻传播学类、历史学类、教育学类、社会学类、马克思主义理论类 | 是 | 具有两年及以上基层工作经历人员 | 1835岁 | 不限 | 不限制 | 不限制 |  | 否 | 否 | 是 | 1:1 |  |\n| 市直 | 黄石 | 黄石市直 | 黄石市中级人民法院 | 市(州)级 | 文字综合岗 | 14230202008001004 | 从事公文写作、信息调研及相关工作 | 1 | 本科及以上 | 学士及以上 | 中国语言文学类、新闻传播学类 | 是 | 具有两年及以上基层工作经历人员 | 1835岁 | 不限 | 不限制 | 不限制 |  | 否 | 否 | 否 | 1:1 |  |\n| 市直 | 黄石 | 黄石市直 | 黄石市中级人民法院 | 市(州)级 | 财务会计岗 | 14230202008001005 | 从事日常财会处理、财务核算、各项税费申报、预算计划等事务性工作 | 1 | 本科及以上 | 学士及以上 | 财务会计类 | 是 | 具有两年及以上基层工作经历人员 | 1835岁 | 不限 | 不限制 | 不限制 | 从事所学专业相关工作2年及以上,拥有初级及以上会计师证书 | 否 | 否 | 否 | 1:1 |  |\n| 市直 | 黄石 | 黄石市直 | 黄石市中级人民法院 | 市(州)级 | 信息管理岗 | 14230202008001006 | 从事信息化建设及电子信息维护等相关工作 | 1 | 本科及以上 | 学士及以上 | 计算机类 | 是 | 具有两年及以上基层工作经历人员 | 1835岁 | 不限 | 不限制 | 不限制 | 从事所学专业相关工作2年及以上 | 否 | 否 | 否 | 1:1 |  |\n| 市直 | 黄石 | 黄石市直 | 黄石市残疾人联合会 | 市(州)级 | 综合管理岗 | 14230202008001007 | 从事文字写作相关工作 | 1 | 本科及以上 | 学士及以上 | 不限 | 是 | 具有两年及以上基层工作经历人员 | 1835岁 | 不限 | 不限制 | 不限制 |  | 否 | 否 | 是 | 1:1 |  |\n| 市直 | 黄石 | 大冶市 | 大冶市纪委监委 | 县(市、区)级 | 审查调查岗 | 14230202008002001 | 从事审查调查相关工作 | 2 | 本科及以上 | 学士及以上 | 法学类 | 是 | 不限 | 1835岁 | 不限 | 不限制 | 不限制 |  | 否 | 否 | 否 | 1:1 | 在本机关(单位)最低服务3年;通过国家司法考试取得法律职业资格证书者优先。 |\n| 市直 | 黄石 | 大冶市 | 大冶市人民检察院 | 县(市、区)级 | 司法行政人员 | 14230202008002002 | 从事人力资源管理相关工作 | 1 | 本科及以上 | 学士及以上 | 中国语言文学类、金融学类 | 是 | 不限 | 1835岁 | 不限 | 不限制 | 不限制 |  | 否 | 否 | 否 | 1:1 | 在本机关(单位)最低服务5年 |\n| 市直 | 黄石 | 大冶市 | 大冶市乡镇政府 | 乡镇(街道)级 | 办公室综合岗(一) | 14230202008002003 | 从事乡镇行政管理工作 | 4 | 本科及以上 | 学士及以上 | 财务会计类、财政学类、金融学类、数学统计学类 | 是 | 不限 | 1835岁 | 不限 | 不限制 | 不限制 |  | 否 | 否 | 否 | 1:1 | 在本机关(单位)最低服务5年 |\n| 市直 | 黄石 | 大冶市 | 大冶市乡镇政府 | 乡镇(街道)级 | 办公室综合岗(二) | 14230202008002004 | 从事乡镇行政管理工作 | 4 | 本科及以上 | 学士及以上 | 建筑类、土木类、水利类、交通运输类 | 是 | 不限 | 1835岁 | 不限 | 不限制 | 不限制 |  | 否 | 否 | 否 | 1:1 | 在本机关(单位)最低服务5年 |\n| 市直 | 黄石 | 大冶市 | 大冶市乡镇政府 | 乡镇(街道)级 | 办公室综合岗(三) | 14230202008002005 | 从事乡镇行政管理工作 | 4 | 本科及以上 | 学士及以上 | 农业经济管理类、农业工程类、电子商务类 | 是 | 不限 | 1835岁 | 不限 | 不限制 | 不限制 |  | 否 | 否 | 否 | 1:1 | 在本机关(单位)最低服务5年 |\n| 市直 | 黄石 | 大冶市 | 大冶市乡镇政府 | 乡镇(街道)级 | 办公室综合岗(四) | 14230202008002006 | 从事乡镇行政管理工作 | 4 | 本科及以上 | 学士及以上 | 自然环境保护与环境生态类、环境科学与工程类、旅游管理类 | 是 | 不限 | 1835岁 | 不限 | 不限制 | 不限制 |  | 否 | 否 | 否 | 1:1 | 在本机关(单位)最低服务5年 |\n| 市直 | 黄石 | 大冶市 | 大冶市乡镇政府 | 乡镇(街道)级 | 办公室综合岗(五) | 14230202008002007 | 从事乡镇行政管理工作 | 4 | 本科及以上 | 学士及以上 | 矿业类、植物生产类、林学类、林业工程类 | 是 | 不限 | 1835岁 | 不限 | 不限制 | 不限制 |  | 否 | 否 | 否 | 1:1 | 在本机关(单位)最低服务5年 |\n| 市直 | 黄石 | 大冶市 | 大冶市乡镇政府 | 乡镇(街道)级 | 办公室综合岗(六) | 14230202008002008 | 从事乡镇行政管理工作 | 2 | 本科及以上 | 学士及以上 | 不限 | 是 | 不限 | 1835岁 | 不限 | 不限制 | 不限制 |  | 否 | 否 | 否 | 1:1 | 在本机关(单位)最低服务5年 |\n| 市直 | 黄石 | 大冶市 | 大冶市乡镇政府 | 乡镇(街道)级 | 办公室综合岗(七) | 14230202008002009 | 从事乡镇行政管理工作 | 4 | 本科及以上 | 学士及以上 | 不限 | 是 | 基层工作经历为服务期满并考核合格的“四项目”人员及退役大学毕业生士兵 | 1835岁 | 不限 | 不限制 | 不限制 |  | 否 | 否 | 否 | 1:1 | 在本机关(单位)最低服务5年 |\n| 市直 | 黄石 | 阳新县 | 阳新县乡镇政府 | 乡镇(街道)级 | 综合管理职位1 | 14230202008003001 | 乡镇政府工作人员 | 4 | 大专及以上 | 无要求 | 不限制 | 是 | 基层工作经历为服务期满并考核合格的“四项目”人员及退役大学毕业生士兵 | 1835岁 | 不限 | 不限制 | 不限制 |  | 否 | 否 | 否 | 1:1 | 在本机关(单位)最低服务5年 |\n| 市直 | 黄石 | 阳新县 | 阳新县乡镇政府 | 乡镇(街道)级 | 综合管理职位2 | 14230202008003002 | 乡镇政府工作人员 | 6 | 大专及以上 | 无要求 | 不限制 | 是 | 不限 | 1835岁 | 不限 | 不限制 | 限本县(市)及相邻县(市)户籍或生源 |  | 否 | 否 | 否 | 1:1 | 在本机关(单位)最低服务5年 |\n| 市直 | 黄石 | 阳新县 | 阳新县乡镇政府 | 乡镇(街道)级 | 综合管理职位3 | 14230202008003003 | 乡镇政府工作人员 | 7 | 本科及以上 | 无要求 | 不限制 | 是 | 不限 | 1835岁 | 不限 | 不限制 | 不限制 |  | 否 | 否 | 否 | 1:1 | 在本机关(单位)最低服务5年 |\n# Inputs:\n黄石市直和大冶市分别有多少个招录机关在招录拥有至少两年基层工作经历人员的职位?\n"}], "type": "trace", "description": "你是一个知识问答系统", "constraints": "1. 参考下面所给知识回答问题。\n\n【正文】\n| 系统 | 地区 | 机构名称 | 招录机关 | 机构层级 | 招录职位 | 职位代码 | 职位简介 | 招录数量 | 学历 | 学位 | 专业 | 是否接受双学位、第二学士学位 | 基层工作经历要求 | 年龄要求 | 政治面貌 | 性别要求 | 户籍要求 | 其他条件 | 是否组织专业科目考试 | 是否党政紧缺人才职位 | 是否为参照公务员法管理机关 | 考察比例 | 备注 |\n| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |\n| 市直 | 黄石 | 黄石市直 | 黄石市纪委监委 | 市(州)级 | 综合管理岗 | 14230202008001001 | 从事文字写作及综合协调工作 | 2 | 本科及以上 | 学士及以上 | 不限 | 是 | 具有两年及以上基层工作经历人员 | 1835岁 | 中共党员 | 不限制 | 不限制 |  | 否 | 否 | 否 | 1:1 |  |\n| 市直 | 黄石 | 黄石市直 | 黄石市纪委监委 | 市(州)级 | 纪检监察岗 | 14230202008001002 | 从事监督检查、审查调查等工作 | 3 | 本科及以上 | 学士及以上 | 法学类、财务会计类、计算机类、公安学类 | 是 | 具有两年及以上基层工作经历人员 | 1835岁 | 中共党员 | 不限制 | 不限制 |  | 否 | 否 | 否 | 1:1 |  |\n| 市直 | 黄石 | 黄石市直 | 黄石市妇女联合会 | 市(州)级 | 综合管理岗 | 14230202008001003 | 从事文字写作及综合协调工作 | 1 | 本科及以上 | 学士及以上 | 中国语言文学类、新闻传播学类、历史学类、教育学类、社会学类、马克思主义理论类 | 是 | 具有两年及以上基层工作经历人员 | 1835岁 | 不限 | 不限制 | 不限制 |  | 否 | 否 | 是 | 1:1 |  |\n| 市直 | 黄石 | 黄石市直 | 黄石市中级人民法院 | 市(州)级 | 文字综合岗 | 14230202008001004 | 从事公文写作、信息调研及相关工作 | 1 | 本科及以上 | 学士及以上 | 中国语言文学类、新闻传播学类 | 是 | 具有两年及以上基层工作经历人员 | 1835岁 | 不限 | 不限制 | 不限制 |  | 否 | 否 | 否 | 1:1 |  |\n| 市直 | 黄石 | 黄石市直 | 黄石市中级人民法院 | 市(州)级 | 财务会计岗 | 14230202008001005 | 从事日常财会处理、财务核算、各项税费申报、预算计划等事务性工作 | 1 | 本科及以上 | 学士及以上 | 财务会计类 | 是 | 具有两年及以上基层工作经历人员 | 1835岁 | 不限 | 不限制 | 不限制 | 从事所学专业相关工作2年及以上,拥有初级及以上会计师证书 | 否 | 否 | 否 | 1:1 |  |\n| 市直 | 黄石 | 黄石市直 | 黄石市中级人民法院 | 市(州)级 | 信息管理岗 | 14230202008001006 | 从事信息化建设及电子信息维护等相关工作 | 1 | 本科及以上 | 学士及以上 | 计算机类 | 是 | 具有两年及以上基层工作经历人员 | 1835岁 | 不限 | 不限制 | 不限制 | 从事所学专业相关工作2年及以上 | 否 | 否 | 否 | 1:1 |  |\n| 市直 | 黄石 | 黄石市直 | 黄石市残疾人联合会 | 市(州)级 | 综合管理岗 | 14230202008001007 | 从事文字写作相关工作 | 1 | 本科及以上 | 学士及以上 | 不限 | 是 | 具有两年及以上基层工作经历人员 | 1835岁 | 不限 | 不限制 | 不限制 |  | 否 | 否 | 是 | 1:1 |  |\n| 市直 | 黄石 | 大冶市 | 大冶市纪委监委 | 县(市、区)级 | 审查调查岗 | 14230202008002001 | 从事审查调查相关工作 | 2 | 本科及以上 | 学士及以上 | 法学类 | 是 | 不限 | 1835岁 | 不限 | 不限制 | 不限制 |  | 否 | 否 | 否 | 1:1 | 在本机关(单位)最低服务3年;通过国家司法考试取得法律职业资格证书者优先。 |\n| 市直 | 黄石 | 大冶市 | 大冶市人民检察院 | 县(市、区)级 | 司法行政人员 | 14230202008002002 | 从事人力资源管理相关工作 | 1 | 本科及以上 | 学士及以上 | 中国语言文学类、金融学类 | 是 | 不限 | 1835岁 | 不限 | 不限制 | 不限制 |  | 否 | 否 | 否 | 1:1 | 在本机关(单位)最低服务5年 |\n| 市直 | 黄石 | 大冶市 | 大冶市乡镇政府 | 乡镇(街道)级 | 办公室综合岗(一) | 14230202008002003 | 从事乡镇行政管理工作 | 4 | 本科及以上 | 学士及以上 | 财务会计类、财政学类、金融学类、数学统计学类 | 是 | 不限 | 1835岁 | 不限 | 不限制 | 不限制 |  | 否 | 否 | 否 | 1:1 | 在本机关(单位)最低服务5年 |\n| 市直 | 黄石 | 大冶市 | 大冶市乡镇政府 | 乡镇(街道)级 | 办公室综合岗(二) | 14230202008002004 | 从事乡镇行政管理工作 | 4 | 本科及以上 | 学士及以上 | 建筑类、土木类、水利类、交通运输类 | 是 | 不限 | 1835岁 | 不限 | 不限制 | 不限制 |  | 否 | 否 | 否 | 1:1 | 在本机关(单位)最低服务5年 |\n| 市直 | 黄石 | 大冶市 | 大冶市乡镇政府 | 乡镇(街道)级 | 办公室综合岗(三) | 14230202008002005 | 从事乡镇行政管理工作 | 4 | 本科及以上 | 学士及以上 | 农业经济管理类、农业工程类、电子商务类 | 是 | 不限 | 1835岁 | 不限 | 不限制 | 不限制 |  | 否 | 否 | 否 | 1:1 | 在本机关(单位)最低服务5年 |\n| 市直 | 黄石 | 大冶市 | 大冶市乡镇政府 | 乡镇(街道)级 | 办公室综合岗(四) | 14230202008002006 | 从事乡镇行政管理工作 | 4 | 本科及以上 | 学士及以上 | 自然环境保护与环境生态类、环境科学与工程类、旅游管理类 | 是 | 不限 | 1835岁 | 不限 | 不限制 | 不限制 |  | 否 | 否 | 否 | 1:1 | 在本机关(单位)最低服务5年 |\n| 市直 | 黄石 | 大冶市 | 大冶市乡镇政府 | 乡镇(街道)级 | 办公室综合岗(五) | 14230202008002007 | 从事乡镇行政管理工作 | 4 | 本科及以上 | 学士及以上 | 矿业类、植物生产类、林学类、林业工程类 | 是 | 不限 | 1835岁 | 不限 | 不限制 | 不限制 |  | 否 | 否 | 否 | 1:1 | 在本机关(单位)最低服务5年 |\n| 市直 | 黄石 | 大冶市 | 大冶市乡镇政府 | 乡镇(街道)级 | 办公室综合岗(六) | 14230202008002008 | 从事乡镇行政管理工作 | 2 | 本科及以上 | 学士及以上 | 不限 | 是 | 不限 | 1835岁 | 不限 | 不限制 | 不限制 |  | 否 | 否 | 否 | 1:1 | 在本机关(单位)最低服务5年 |\n| 市直 | 黄石 | 大冶市 | 大冶市乡镇政府 | 乡镇(街道)级 | 办公室综合岗(七) | 14230202008002009 | 从事乡镇行政管理工作 | 4 | 本科及以上 | 学士及以上 | 不限 | 是 | 基层工作经历为服务期满并考核合格的“四项目”人员及退役大学毕业生士兵 | 1835岁 | 不限 | 不限制 | 不限制 |  | 否 | 否 | 否 | 1:1 | 在本机关(单位)最低服务5年 |\n| 市直 | 黄石 | 阳新县 | 阳新县乡镇政府 | 乡镇(街道)级 | 综合管理职位1 | 14230202008003001 | 乡镇政府工作人员 | 4 | 大专及以上 | 无要求 | 不限制 | 是 | 基层工作经历为服务期满并考核合格的“四项目”人员及退役大学毕业生士兵 | 1835岁 | 不限 | 不限制 | 不限制 |  | 否 | 否 | 否 | 1:1 | 在本机关(单位)最低服务5年 |\n| 市直 | 黄石 | 阳新县 | 阳新县乡镇政府 | 乡镇(街道)级 | 综合管理职位2 | 14230202008003002 | 乡镇政府工作人员 | 6 | 大专及以上 | 无要求 | 不限制 | 是 | 不限 | 1835岁 | 不限 | 不限制 | 限本县(市)及相邻县(市)户籍或生源 |  | 否 | 否 | 否 | 1:1 | 在本机关(单位)最低服务5年 |\n| 市直 | 黄石 | 阳新县 | 阳新县乡镇政府 | 乡镇(街道)级 | 综合管理职位3 | 14230202008003003 | 乡镇政府工作人员 | 7 | 本科及以上 | 无要求 | 不限制 | 是 | 不限 | 1835岁 | 不限 | 不限制 | 不限制 |  | 否 | 否 | 否 | 1:1 | 在本机关(单位)最低服务5年 |", "input": "黄石市直和大冶市分别有多少个招录机关在招录拥有至少两年基层工作经历人员的职位?", "constraints_num": 1, "constraints_splits": ["1. 参考下面所给知识回答问题。\n\n【正文】\n| 系统 | 地区 | 机构名称 | 招录机关 | 机构层级 | 招录职位 | 职位代码 | 职位简介 | 招录数量 | 学历 | 学位 | 专业 | 是否接受双学位、第二学士学位 | 基层工作经历要求 | 年龄要求 | 政治面貌 | 性别要求 | 户籍要求 | 其他条件 | 是否组织专业科目考试 | 是否党政紧缺人才职位 | 是否为参照公务员法管理机关 | 考察比例 | 备注 |\n| --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- | --- |\n| 市直 | 黄石 | 黄石市直 | 黄石市纪委监委 | 市(州)级 | 综合管理岗 | 14230202008001001 | 从事文字写作及综合协调工作 | 2 | 本科及以上 | 学士及以上 | 不限 | 是 | 具有两年及以上基层工作经历人员 | 1835岁 | 中共党员 | 不限制 | 不限制 |  | 否 | 否 | 否 | 1:1 |  |\n| 市直 | 黄石 | 黄石市直 | 黄石市纪委监委 | 市(州)级 | 纪检监察岗 | 14230202008001002 | 从事监督检查、审查调查等工作 | 3 | 本科及以上 | 学士及以上 | 法学类、财务会计类、计算机类、公安学类 | 是 | 具有两年及以上基层工作经历人员 | 1835岁 | 中共党员 | 不限制 | 不限制 |  | 否 | 否 | 否 | 1:1 |  |\n| 市直 | 黄石 | 黄石市直 | 黄石市妇女联合会 | 市(州)级 | 综合管理岗 | 14230202008001003 | 从事文字写作及综合协调工作 | 1 | 本科及以上 | 学士及以上 | 中国语言文学类、新闻传播学类、历史学类、教育学类、社会学类、马克思主义理论类 | 是 | 具有两年及以上基层工作经历人员 | 1835岁 | 不限 | 不限制 | 不限制 |  | 否 | 否 | 是 | 1:1 |  |\n| 市直 | 黄石 | 黄石市直 | 黄石市中级人民法院 | 市(州)级 | 文字综合岗 | 14230202008001004 | 从事公文写作、信息调研及相关工作 | 1 | 本科及以上 | 学士及以上 | 中国语言文学类、新闻传播学类 | 是 | 具有两年及以上基层工作经历人员 | 1835岁 | 不限 | 不限制 | 不限制 |  | 否 | 否 | 否 | 1:1 |  |\n| 市直 | 黄石 | 黄石市直 | 黄石市中级人民法院 | 市(州)级 | 财务会计岗 | 14230202008001005 | 从事日常财会处理、财务核算、各项税费申报、预算计划等事务性工作 | 1 | 本科及以上 | 学士及以上 | 财务会计类 | 是 | 具有两年及以上基层工作经历人员 | 1835岁 | 不限 | 不限制 | 不限制 | 从事所学专业相关工作2年及以上,拥有初级及以上会计师证书 | 否 | 否 | 否 | 1:1 |  |\n| 市直 | 黄石 | 黄石市直 | 黄石市中级人民法院 | 市(州)级 | 信息管理岗 | 14230202008001006 | 从事信息化建设及电子信息维护等相关工作 | 1 | 本科及以上 | 学士及以上 | 计算机类 | 是 | 具有两年及以上基层工作经历人员 | 1835岁 | 不限 | 不限制 | 不限制 | 从事所学专业相关工作2年及以上 | 否 | 否 | 否 | 1:1 |  |\n| 市直 | 黄石 | 黄石市直 | 黄石市残疾人联合会 | 市(州)级 | 综合管理岗 | 14230202008001007 | 从事文字写作相关工作 | 1 | 本科及以上 | 学士及以上 | 不限 | 是 | 具有两年及以上基层工作经历人员 | 1835岁 | 不限 | 不限制 | 不限制 |  | 否 | 否 | 是 | 1:1 |  |\n| 市直 | 黄石 | 大冶市 | 大冶市纪委监委 | 县(市、区)级 | 审查调查岗 | 14230202008002001 | 从事审查调查相关工作 | 2 | 本科及以上 | 学士及以上 | 法学类 | 是 | 不限 | 1835岁 | 不限 | 不限制 | 不限制 |  | 否 | 否 | 否 | 1:1 | 在本机关(单位)最低服务3年;通过国家司法考试取得法律职业资格证书者优先。 |\n| 市直 | 黄石 | 大冶市 | 大冶市人民检察院 | 县(市、区)级 | 司法行政人员 | 14230202008002002 | 从事人力资源管理相关工作 | 1 | 本科及以上 | 学士及以上 | 中国语言文学类、金融学类 | 是 | 不限 | 1835岁 | 不限 | 不限制 | 不限制 |  | 否 | 否 | 否 | 1:1 | 在本机关(单位)最低服务5年 |\n| 市直 | 黄石 | 大冶市 | 大冶市乡镇政府 | 乡镇(街道)级 | 办公室综合岗(一) | 14230202008002003 | 从事乡镇行政管理工作 | 4 | 本科及以上 | 学士及以上 | 财务会计类、财政学类、金融学类、数学统计学类 | 是 | 不限 | 1835岁 | 不限 | 不限制 | 不限制 |  | 否 | 否 | 否 | 1:1 | 在本机关(单位)最低服务5年 |\n| 市直 | 黄石 | 大冶市 | 大冶市乡镇政府 | 乡镇(街道)级 | 办公室综合岗(二) | 14230202008002004 | 从事乡镇行政管理工作 | 4 | 本科及以上 | 学士及以上 | 建筑类、土木类、水利类、交通运输类 | 是 | 不限 | 1835岁 | 不限 | 不限制 | 不限制 |  | 否 | 否 | 否 | 1:1 | 在本机关(单位)最低服务5年 |\n| 市直 | 黄石 | 大冶市 | 大冶市乡镇政府 | 乡镇(街道)级 | 办公室综合岗(三) | 14230202008002005 | 从事乡镇行政管理工作 | 4 | 本科及以上 | 学士及以上 | 农业经济管理类、农业工程类、电子商务类 | 是 | 不限 | 1835岁 | 不限 | 不限制 | 不限制 |  | 否 | 否 | 否 | 1:1 | 在本机关(单位)最低服务5年 |\n| 市直 | 黄石 | 大冶市 | 大冶市乡镇政府 | 乡镇(街道)级 | 办公室综合岗(四) | 14230202008002006 | 从事乡镇行政管理工作 | 4 | 本科及以上 | 学士及以上 | 自然环境保护与环境生态类、环境科学与工程类、旅游管理类 | 是 | 不限 | 1835岁 | 不限 | 不限制 | 不限制 |  | 否 | 否 | 否 | 1:1 | 在本机关(单位)最低服务5年 |\n| 市直 | 黄石 | 大冶市 | 大冶市乡镇政府 | 乡镇(街道)级 | 办公室综合岗(五) | 14230202008002007 | 从事乡镇行政管理工作 | 4 | 本科及以上 | 学士及以上 | 矿业类、植物生产类、林学类、林业工程类 | 是 | 不限 | 1835岁 | 不限 | 不限制 | 不限制 |  | 否 | 否 | 否 | 1:1 | 在本机关(单位)最低服务5年 |\n| 市直 | 黄石 | 大冶市 | 大冶市乡镇政府 | 乡镇(街道)级 | 办公室综合岗(六) | 14230202008002008 | 从事乡镇行政管理工作 | 2 | 本科及以上 | 学士及以上 | 不限 | 是 | 不限 | 1835岁 | 不限 | 不限制 | 不限制 |  | 否 | 否 | 否 | 1:1 | 在本机关(单位)最低服务5年 |\n| 市直 | 黄石 | 大冶市 | 大冶市乡镇政府 | 乡镇(街道)级 | 办公室综合岗(七) | 14230202008002009 | 从事乡镇行政管理工作 | 4 | 本科及以上 | 学士及以上 | 不限 | 是 | 基层工作经历为服务期满并考核合格的“四项目”人员及退役大学毕业生士兵 | 1835岁 | 不限 | 不限制 | 不限制 |  | 否 | 否 | 否 | 1:1 | 在本机关(单位)最低服务5年 |\n| 市直 | 黄石 | 阳新县 | 阳新县乡镇政府 | 乡镇(街道)级 | 综合管理职位1 | 14230202008003001 | 乡镇政府工作人员 | 4 | 大专及以上 | 无要求 | 不限制 | 是 | 基层工作经历为服务期满并考核合格的“四项目”人员及退役大学毕业生士兵 | 1835岁 | 不限 | 不限制 | 不限制 |  | 否 | 否 | 否 | 1:1 | 在本机关(单位)最低服务5年 |\n| 市直 | 黄石 | 阳新县 | 阳新县乡镇政府 | 乡镇(街道)级 | 综合管理职位2 | 14230202008003002 | 乡镇政府工作人员 | 6 | 大专及以上 | 无要求 | 不限制 | 是 | 不限 | 1835岁 | 不限 | 不限制 | 限本县(市)及相邻县(市)户籍或生源 |  | 否 | 否 | 否 | 1:1 | 在本机关(单位)最低服务5年 |\n| 市直 | 黄石 | 阳新县 | 阳新县乡镇政府 | 乡镇(街道)级 | 综合管理职位3 | 14230202008003003 | 乡镇政府工作人员 | 7 | 本科及以上 | 无要求 | 不限制 | 是 | 不限 | 1835岁 | 不限 | 不限制 | 不限制 |  | 否 | 否 | 否 | 1:1 | 在本机关(单位)最低服务5年 |"], "levels2": ["表格背景信息约束"], "category": "trace1.0"} +{"id": "108", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "提供一个适合25岁市场营销专业大学毕业生背景和兴趣的职业建议\n1. 包含至少两个具体的职业发展路径建议;\n"}], "type": "trace", "description": "提供一个适合25岁市场营销专业大学毕业生背景和兴趣的职业建议", "constraints": "1. 包含至少两个具体的职业发展路径建议;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 包含至少两个具体的职业发展路径建议;"], "levels2": ["包含约束"], "category": "trace1.0"} +{"id": "109", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇关于古典音乐作品《命运交响曲》的简要历史背景及其作曲家贝多芬的一些相关信息,文章需包含创作年代、首演时间、对贝多芬个人生活和创作生涯的影响,至少两处直接引用贝多芬的言论或信件,使用斜体字标注重要历史事件和时间,文末附上引用的参考文献列表。\n1. 文章完成后,需在文末附上引用的参考文献列表,确保所有引用均来自权威的音乐学和历史学资料;\n"}], "type": "trace", "description": "撰写一篇关于古典音乐作品《命运交响曲》的简要历史背景及其作曲家贝多芬的一些相关信息,文章需包含创作年代、首演时间、对贝多芬个人生活和创作生涯的影响,至少两处直接引用贝多芬的言论或信件,使用斜体字标注重要历史事件和时间,文末附上引用的参考文献列表。", "constraints": "1. 文章完成后,需在文末附上引用的参考文献列表,确保所有引用均来自权威的音乐学和历史学资料;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 文章完成后,需在文末附上引用的参考文献列表,确保所有引用均来自权威的音乐学和历史学资料;"], "levels2": ["引用和参考约束"], "category": "trace1.0"} +{"id": "110", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "写一篇关于自然灾害的科普文章\n1.一篇短文仅简单列举了自然灾害的名称,缺乏详细的解释和预防措施,且没有引用任何来源,语气非正式,不适合教育目的;\n"}], "type": "trace", "description": "写一篇关于自然灾害的科普文章", "constraints": "1.一篇短文仅简单列举了自然灾害的名称,缺乏详细的解释和预防措施,且没有引用任何来源,语气非正式,不适合教育目的;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1.一篇短文仅简单列举了自然灾害的名称,缺乏详细的解释和预防措施,且没有引用任何来源,语气非正式,不适合教育目的;"], "levels2": ["负例约束"], "category": "trace1.0"} +{"id": "111", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "详细解释如何制作意大利烩饭\n1. 材料名称和步骤的编号使用粗体进行强调;\n"}], "type": "trace", "description": "详细解释如何制作意大利烩饭", "constraints": "1. 材料名称和步骤的编号使用粗体进行强调;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 材料名称和步骤的编号使用粗体进行强调;"], "levels2": ["文本样式约束"], "category": "trace1.0"} +{"id": "112", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇有关职业规划的短文,重点讨论如何设计和实现一个成功的职业发展计划。\n1. 使用标题和子标题构建层次清晰的结构,例如:# 职业规划概述、## 个人目标设定、## 职业路径规划、## 技能提升与学习等;\n"}], "type": "trace", "description": "撰写一篇有关职业规划的短文,重点讨论如何设计和实现一个成功的职业发展计划。", "constraints": "1. 使用标题和子标题构建层次清晰的结构,例如:# 职业规划概述、## 个人目标设定、## 职业路径规划、## 技能提升与学习等;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 使用标题和子标题构建层次清晰的结构,例如:# 职业规划概述、## 个人目标设定、## 职业路径规划、## 技能提升与学习等;"], "levels2": ["层次化结构约束"], "category": "trace1.0"} +{"id": "113", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一个情感分析模型,该模型能够预测文本的情感(积极、消极或中性),并输出预测结果的置信度得分。\n1. 语种应包含英语为主,同时包含西班牙语、法语和德语,以检验模型在多语言场景下的表现。\n"}], "type": "trace", "description": "创建一个情感分析模型,该模型能够预测文本的情感(积极、消极或中性),并输出预测结果的置信度得分。", "constraints": "1. 语种应包含英语为主,同时包含西班牙语、法语和德语,以检验模型在多语言场景下的表现。", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 语种应包含英语为主,同时包含西班牙语、法语和德语,以检验模型在多语言场景下的表现。"], "levels2": ["多语言约束"], "category": "trace1.0"} +{"id": "114", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "识别研究主题“殖民主义对原住民部落的文化和经济产生的影响”所需的主要来源\n1. 确保所选来源尊重原住民的历史和文化,避免使用任何可能引起文化不敏感或偏见的资料;\n"}], "type": "trace", "description": "识别研究主题“殖民主义对原住民部落的文化和经济产生的影响”所需的主要来源", "constraints": "1. 确保所选来源尊重原住民的历史和文化,避免使用任何可能引起文化不敏感或偏见的资料;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 确保所选来源尊重原住民的历史和文化,避免使用任何可能引起文化不敏感或偏见的资料;"], "levels2": ["价值观约束"], "category": "trace1.0"} +{"id": "115", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "按照遗传学的规律和孟德尔遗传法则,预测一个人的孩子会有哪些基因特征。\n1. 描述时采用科学严谨的语气,确保所有遗传学专业术语的准确使用;\n# Inputs:\n父亲基因型为AAbb,母亲基因型为Aabb;\n"}], "type": "trace", "description": "按照遗传学的规律和孟德尔遗传法则,预测一个人的孩子会有哪些基因特征。", "constraints": "1. 描述时采用科学严谨的语气,确保所有遗传学专业术语的准确使用;", "input": "父亲基因型为AAbb,母亲基因型为Aabb;", "constraints_num": 1, "constraints_splits": ["1. 描述时采用科学严谨的语气,确保所有遗传学专业术语的准确使用;"], "levels2": ["语气风格约束"], "category": "trace1.0"} +{"id": "116", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一个关于烹饪菜肴的提示列表,专为家庭厨师设计,特别是烹饪经验不足的人。\n1. 例如,第一条提示可以是:“1. 提前准备:将所有食材洗净、切好,提前准备好所有需要用到的厨具,这样可以让你在烹饪过程中更加从容不迫。”\n"}], "type": "trace", "description": "创建一个关于烹饪菜肴的提示列表,专为家庭厨师设计,特别是烹饪经验不足的人。", "constraints": "1. 例如,第一条提示可以是:“1. 提前准备:将所有食材洗净、切好,提前准备好所有需要用到的厨具,这样可以让你在烹饪过程中更加从容不迫。”", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 例如,第一条提示可以是:“1. 提前准备:将所有食材洗净、切好,提前准备好所有需要用到的厨具,这样可以让你在烹饪过程中更加从容不迫。”"], "levels2": ["正例约束"], "category": "trace1.0"} +{"id": "117", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "写一篇关于气候变化的文章\n1. 文章输出时,需将引用文献以BibTeX格式附在文末;\n"}], "type": "trace", "description": "写一篇关于气候变化的文章", "constraints": "1. 文章输出时,需将引用文献以BibTeX格式附在文末;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 文章输出时,需将引用文献以BibTeX格式附在文末;"], "levels2": ["引用和参考约束"], "category": "trace1.0"} +{"id": "118", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "你是一个知识问答系统\n1. 参考下面所给知识回答问题。\n\n【正文】\n| 话数 | 日文标题 | 中文标题 | 剧本 | 演出 | 作画监督 | 美术 | 收录DVD |\n| --- | --- | --- | --- | --- | --- | --- | --- |\n| 1 | もぎたてフレッシュ!キュアピーチ诞生!! | 新鲜试用!CurePeach诞生!! | 前川淳 | 志水淳儿 | 为我井克美 | 行信三 | VOL.1 |\n| 2 | つみたてフレッシュ!キュアベリー诞生!! | 新鲜积累!CureBerry诞生!! | 前川淳 | 岩井隆央 | 饭饲一幸 | 增田龙太郎 | VOL.1 |\n| 3 | とれたてフレッシュ!キュアパイン诞生!! | 新鲜收获!CurePine诞生!! | 前川淳 | 川田武范 | 高桥任治 | 须和田真 | VOL.1 |\n| 4 | シフォンが迷子?町中もう大騒ぎ!! | 希冯迷路了?大街上的大骚乱!! | 赤尾でこ | 石平信司田中裕太 | 饭岛秀一 | 饭岛由树子 | VOL.2 |\n| 5 | 游园地でドキドキ!ワクワクデート気分!? | 心跳的游乐园!紧张的约会气氛!? | 柿原优子 | 三冢雅人 | 奥山美佳 | 井芹达朗 | VOL.2 |\n| 6 | 消えたハンバーグ!大好きなものを守れ!! | 消失的汉堡!守护喜欢的东西!! | 山下宪一 | 座古明史 | 河野宏之 | 饭岛由树子 | VOL.2 |\n| 7 | せつなとラブ友情のクローバー! | 刹那和爱,友情的四叶草! | 成田良美 | 山崎和男黑田成美 | ポール・アンニョヌエボ | 井芹达朗 | VOL.3 |\n| 8 | シフォン大ピンチ!ピーチの新しい力!! | 希冯大危机!Peach的新力量!! | 广田光毅 | 长峰达也 | 宫本绘美子 | 须和田真 | VOL.3 |\n| 9 | 美希の梦私プリキュアやめる!! | 美希的梦想,我不做光之美少女了!! | 前川淳 | 小村敏明 | 川村敏江 | 饭岛由树子 | VOL.3 |\n| 10 | タルトが祈里で祈里がタルト!? | 塔鲁特是祈里,祈里是塔鲁特!? | 赤尾でこ | 石平信司三冢雅人 | 饭饲一幸 | 井芹达朗 | VOL.4 |\n| 11 | ミユキの怒り!もうダンスは教えない!? | 美雪的怒火!不再教你们跳舞了!? | 柿原优子 | 川田武范 | 伊藤智子 | 中村光毅 | VOL.4 |\n| 12 | みんなで変身!フサフサ大作戦!! | 大家变身!毛茸茸大作战!! | 山下宪一 | 松本理惠 | 为我井克美 | 井芹达朗 | VOL.4 |\n| 13 | シフォンが病気!?パインの新しい力!! | 希冯生病了!?Pine的新力量!! | 成田良美 | 岩井隆央 | 高桥任治 | 饭岛由树子 | VOL.5 |\n| 14 | 4人目のプリキュア!?アカルンを探せ!! | 第四个光之美少女!?寻找Akarun!! | 广田光毅 | 三冢雅人 | 河野宏之 | 须和田真 | VOL.5 |\n| 15 | せつなとラブ相手を思いやる心! | 刹那与爱相互体谅的心! | 前川淳 | 座古明史 | 饭岛秀一 | 饭岛由树子 | VOL.5 |\n| 16 | 恐怖の文化祭!夜の学校に响く足音!! | 恐怖的文化祭!深夜的学校回响的脚步声!! | 赤尾でこ | 黑田成美 | 奥山美佳 | 井芹达朗 | VOL.6 |\n| 17 | シフォンはまかせて!ベリーの新しい力!! | 希冯交给我了!Berry的新力量!! | 柿原优子 | 八岛善孝田中裕太 | ポール・アンニョヌエボ | 饭岛由树子 | VOL.6 |\n| 18 | プリキュアに会いたい!小さな女の子の愿い!! | 想见光之美少女!小女孩的心愿!! | 山下宪一 | 长峰达也 | 青山充 | 中村光毅 | VOL.6 |\n| 19 | 新たなカード!イースの新しい力!! | 新的卡片!伊斯的新力量!! | 成田良美 | 川田武范 | 川村敏江 | 须和田真 | VOL.7 |\n| 20 | ダンスとプリキュア…どちらを选ぶ!? | 跳舞和光之美少女…选哪个!? | 广田光毅 | 小村敏明三冢雅人 | ポール・アンニョヌエボ | 井芹达朗 | VOL.7 |\n| 21 | 4人目のプリキュアはあんさんや!! | 第四个光之美少女就是你啊!! | 赤尾でこ | 岩井隆央 | 宫本绘美子 | 饭岛由树子 | VOL.7 |\n| 22 | せつなとラブあなたがイースなの!? | 刹那和爱你就是伊斯吗!? | 成田良美 | 松本理惠 | 河野宏之 | 增田龙太郎 | VOL.8 |\n| 23 | イースの最期!キュアパッション诞生!! | 伊斯的末日!CurePassion诞生!! | 前川淳 | 石平信司黑田成美 | 伊藤智子 | 井芹达朗 | VOL.8 |\n| 24 | せつなの苦悩私は仲间になれない! | 刹那的苦恼我不可能成为伙伴! | 伊藤睦美 | 座古明史 | 香川久 | 饭岛由树子 | VOL.8 |\n| 25 | イース対パッション!?私は生まれ変わる!! | 伊斯对百香果天使!?我已经重生了!! | 赤尾でこ | 川田武范 | 川田武范 | 须和田真 | VOL.9 |\n| 26 | 4つのハート!私も踊りたい!! | 4颗相连的心!我也想跳舞!! | 山下宪一 | 三冢雅人 | 三冢雅人 | 井芹达朗 | VOL.9 |\n| 27 | 夏だ!祭りだ!オードリー!! | 夏天的快乐祭典!奥德丽!! | 赤尾でこ | 岩井隆央 | 岩井隆央 | 增田龙太郎 | VOL.9 |\n| 28 | 大切な记忆!おじいちゃんとの思い出!! | 重要的记忆!与爷爷一起的回忆!! | 成田良美 | 小村敏明 | ポール・アンニョヌエボ | 饭岛由树子 | VOL.10 |\n| 29 | 谜だらけの男!カオルちゃんの正体!? | 充满谜团的男人!小熏的真实身份!? | 广田光毅 | 石平信司松本理惠 | 奥山美佳 | 井芹达朗 | VOL.10 |\n| 30 | タルト危机一髪!正体がばれちゃう!? | 塔鲁特千钧一发!真实身份要暴露了!? | 山下宪一 | 长峰达也 | 饭饲一幸 | 饭岛由树子 | VOL.10 |\n| 31 | ラブと大辅!仲直りのしかた! | 爱和大辅!重归于好的方式! | 伊藤睦美 | 黑田成美 | 河野宏之 | 须和田真 | VOL.11 |\n| 32 | さようなら!タルトとシフォン!! | 再见!塔鲁特和希冯!! | 广田光毅 | 八岛善孝田中裕太 | 伊藤智子 | 井芹达朗 | VOL.11 |\n| 33 | 美希とせつなのこわいもの! | 美希和刹那害怕的东西! | 成田良美 | 织本まきこ | 青山充 | 增田龙太郎 | VOL.11 |\n| 34 | インフィニティ现れる!明日を取り戻せ!! | infinity出现!取回!!明天!! | 前川淳 | 川田武范 | 饭岛秀一 | 饭岛由树子 | VOL.12 |\n| 35 | シフォンの隠された秘密! | 希冯隐藏的秘密! | 前川淳 | 石平信司松本理惠 | ポール・アンニョヌエボ | 井芹达朗 | VOL.12 |\n| 36 | 新たな敌!その名はノーザ!! | 新的敌人!她的名字是诺萨!! | 赤尾でこ | 大冢隆史 | 香川久 | 饭岛由树子 | VOL.12 |\n| 37 | シフォンを守れ!プリキュアの新しい力!! | 守护希冯!光之美少女的新力量!! | 山下宪一 | 小村敏明 | 奥山美佳 | 须和田真 | VOL.13 |\n| 38 | クローバーボックスをさがせ!! | 四人的决心,找回四叶草宝盒!! | 广田光毅 | 岩井隆央 | 川村敏江 | 井芹达朗 | VOL.13 |\n| 39 | ケンカは禁止?冲縄修学旅行!! | 停止吵架?冲绳修学旅行!! | 成田良美 | 松本理惠 | 青山充 | 增田龙太郎 | VOL.13 |\n| 40 | せつなとラブお母さんが危ない! | 刹那和爱,妈妈有危险! | 伊藤睦美 | 座古明史黑田成美 | 伊藤智子 | 饭岛由树子 | VOL.14 |\n| 41 | 祈里と健人の船上パーティ! | 祈里与建人,船上的快乐派对! | 赤尾でこ | 川田武范 | 饭饲一幸 | 井芹达朗 | VOL.14 |\n| 42 | ラビリンスからの招待状! | 来自迷宫的招待状! | 山下宪一 | 长峰达也 | 河野宏之 | 杉浦正一郎 | VOL.14 |\n| 43 | 世界を救え!プリキュア対ラビリンス!! | 拯救世界!光之美少女VS迷宫!! | 广田光毅 | 大冢隆史 | ポール・アンニョヌエボ | 吉井俊雄 | VOL.15 |\n| 44 | 妖しき草笛!夺われたシフォン!! | 诡异的草笛!被夺走的希冯!! | 前川淳 | 八岛善孝田中裕太 | 饭岛秀一 | 井芹达朗 | VOL.15 |\n| 45 | 4人はプリキュア!クリスマスイブの别れ!! | 四个人是光之美少女,圣诞节前夜的告别!! | 前川淳 | 黑田成美 | 奥山美佳 | 须和田真 | VOL.15 |\n| 46 | サウラーとウエスター最期の戦い!! | 撒乌拉和威斯达,最后之战!! | 成田良美 | 岩井隆央 | 川村敏江 | 猿谷胜己 | VOL.15 |\n| 47 | 世界が変わる!ドーナツが起こした奇迹!! | 世界在改变!甜甜圈引发的奇迹!! | 赤尾でこ | 川田武范 | 伊藤智子 | 井芹达朗 | VOL.16 |\n| 48 | 最终决戦!キュアエンジェル诞生!! | 最终决战,CureAngel诞生!! | 山下宪一 | 志田直俊三冢雅人 | ポール・アンニョヌエボ | 吉井俊雄 | VOL.16 |\n| 49 | 惊きの真実!メビウスの本当の姿!! | 惊人的真相!梅比乌斯的真面目!! | 广田光毅 | 门仓小平太田中裕太 | 河野宏之 | 井芹达朗 | VOL.16 |\n# Inputs:\nCurePeach、CureBerry和CurePine的诞生分别在第几集?\n"}], "type": "trace", "description": "你是一个知识问答系统", "constraints": "1. 参考下面所给知识回答问题。\n\n【正文】\n| 话数 | 日文标题 | 中文标题 | 剧本 | 演出 | 作画监督 | 美术 | 收录DVD |\n| --- | --- | --- | --- | --- | --- | --- | --- |\n| 1 | もぎたてフレッシュ!キュアピーチ诞生!! | 新鲜试用!CurePeach诞生!! | 前川淳 | 志水淳儿 | 为我井克美 | 行信三 | VOL.1 |\n| 2 | つみたてフレッシュ!キュアベリー诞生!! | 新鲜积累!CureBerry诞生!! | 前川淳 | 岩井隆央 | 饭饲一幸 | 增田龙太郎 | VOL.1 |\n| 3 | とれたてフレッシュ!キュアパイン诞生!! | 新鲜收获!CurePine诞生!! | 前川淳 | 川田武范 | 高桥任治 | 须和田真 | VOL.1 |\n| 4 | シフォンが迷子?町中もう大騒ぎ!! | 希冯迷路了?大街上的大骚乱!! | 赤尾でこ | 石平信司田中裕太 | 饭岛秀一 | 饭岛由树子 | VOL.2 |\n| 5 | 游园地でドキドキ!ワクワクデート気分!? | 心跳的游乐园!紧张的约会气氛!? | 柿原优子 | 三冢雅人 | 奥山美佳 | 井芹达朗 | VOL.2 |\n| 6 | 消えたハンバーグ!大好きなものを守れ!! | 消失的汉堡!守护喜欢的东西!! | 山下宪一 | 座古明史 | 河野宏之 | 饭岛由树子 | VOL.2 |\n| 7 | せつなとラブ友情のクローバー! | 刹那和爱,友情的四叶草! | 成田良美 | 山崎和男黑田成美 | ポール・アンニョヌエボ | 井芹达朗 | VOL.3 |\n| 8 | シフォン大ピンチ!ピーチの新しい力!! | 希冯大危机!Peach的新力量!! | 广田光毅 | 长峰达也 | 宫本绘美子 | 须和田真 | VOL.3 |\n| 9 | 美希の梦私プリキュアやめる!! | 美希的梦想,我不做光之美少女了!! | 前川淳 | 小村敏明 | 川村敏江 | 饭岛由树子 | VOL.3 |\n| 10 | タルトが祈里で祈里がタルト!? | 塔鲁特是祈里,祈里是塔鲁特!? | 赤尾でこ | 石平信司三冢雅人 | 饭饲一幸 | 井芹达朗 | VOL.4 |\n| 11 | ミユキの怒り!もうダンスは教えない!? | 美雪的怒火!不再教你们跳舞了!? | 柿原优子 | 川田武范 | 伊藤智子 | 中村光毅 | VOL.4 |\n| 12 | みんなで変身!フサフサ大作戦!! | 大家变身!毛茸茸大作战!! | 山下宪一 | 松本理惠 | 为我井克美 | 井芹达朗 | VOL.4 |\n| 13 | シフォンが病気!?パインの新しい力!! | 希冯生病了!?Pine的新力量!! | 成田良美 | 岩井隆央 | 高桥任治 | 饭岛由树子 | VOL.5 |\n| 14 | 4人目のプリキュア!?アカルンを探せ!! | 第四个光之美少女!?寻找Akarun!! | 广田光毅 | 三冢雅人 | 河野宏之 | 须和田真 | VOL.5 |\n| 15 | せつなとラブ相手を思いやる心! | 刹那与爱相互体谅的心! | 前川淳 | 座古明史 | 饭岛秀一 | 饭岛由树子 | VOL.5 |\n| 16 | 恐怖の文化祭!夜の学校に响く足音!! | 恐怖的文化祭!深夜的学校回响的脚步声!! | 赤尾でこ | 黑田成美 | 奥山美佳 | 井芹达朗 | VOL.6 |\n| 17 | シフォンはまかせて!ベリーの新しい力!! | 希冯交给我了!Berry的新力量!! | 柿原优子 | 八岛善孝田中裕太 | ポール・アンニョヌエボ | 饭岛由树子 | VOL.6 |\n| 18 | プリキュアに会いたい!小さな女の子の愿い!! | 想见光之美少女!小女孩的心愿!! | 山下宪一 | 长峰达也 | 青山充 | 中村光毅 | VOL.6 |\n| 19 | 新たなカード!イースの新しい力!! | 新的卡片!伊斯的新力量!! | 成田良美 | 川田武范 | 川村敏江 | 须和田真 | VOL.7 |\n| 20 | ダンスとプリキュア…どちらを选ぶ!? | 跳舞和光之美少女…选哪个!? | 广田光毅 | 小村敏明三冢雅人 | ポール・アンニョヌエボ | 井芹达朗 | VOL.7 |\n| 21 | 4人目のプリキュアはあんさんや!! | 第四个光之美少女就是你啊!! | 赤尾でこ | 岩井隆央 | 宫本绘美子 | 饭岛由树子 | VOL.7 |\n| 22 | せつなとラブあなたがイースなの!? | 刹那和爱你就是伊斯吗!? | 成田良美 | 松本理惠 | 河野宏之 | 增田龙太郎 | VOL.8 |\n| 23 | イースの最期!キュアパッション诞生!! | 伊斯的末日!CurePassion诞生!! | 前川淳 | 石平信司黑田成美 | 伊藤智子 | 井芹达朗 | VOL.8 |\n| 24 | せつなの苦悩私は仲间になれない! | 刹那的苦恼我不可能成为伙伴! | 伊藤睦美 | 座古明史 | 香川久 | 饭岛由树子 | VOL.8 |\n| 25 | イース対パッション!?私は生まれ変わる!! | 伊斯对百香果天使!?我已经重生了!! | 赤尾でこ | 川田武范 | 川田武范 | 须和田真 | VOL.9 |\n| 26 | 4つのハート!私も踊りたい!! | 4颗相连的心!我也想跳舞!! | 山下宪一 | 三冢雅人 | 三冢雅人 | 井芹达朗 | VOL.9 |\n| 27 | 夏だ!祭りだ!オードリー!! | 夏天的快乐祭典!奥德丽!! | 赤尾でこ | 岩井隆央 | 岩井隆央 | 增田龙太郎 | VOL.9 |\n| 28 | 大切な记忆!おじいちゃんとの思い出!! | 重要的记忆!与爷爷一起的回忆!! | 成田良美 | 小村敏明 | ポール・アンニョヌエボ | 饭岛由树子 | VOL.10 |\n| 29 | 谜だらけの男!カオルちゃんの正体!? | 充满谜团的男人!小熏的真实身份!? | 广田光毅 | 石平信司松本理惠 | 奥山美佳 | 井芹达朗 | VOL.10 |\n| 30 | タルト危机一髪!正体がばれちゃう!? | 塔鲁特千钧一发!真实身份要暴露了!? | 山下宪一 | 长峰达也 | 饭饲一幸 | 饭岛由树子 | VOL.10 |\n| 31 | ラブと大辅!仲直りのしかた! | 爱和大辅!重归于好的方式! | 伊藤睦美 | 黑田成美 | 河野宏之 | 须和田真 | VOL.11 |\n| 32 | さようなら!タルトとシフォン!! | 再见!塔鲁特和希冯!! | 广田光毅 | 八岛善孝田中裕太 | 伊藤智子 | 井芹达朗 | VOL.11 |\n| 33 | 美希とせつなのこわいもの! | 美希和刹那害怕的东西! | 成田良美 | 织本まきこ | 青山充 | 增田龙太郎 | VOL.11 |\n| 34 | インフィニティ现れる!明日を取り戻せ!! | infinity出现!取回!!明天!! | 前川淳 | 川田武范 | 饭岛秀一 | 饭岛由树子 | VOL.12 |\n| 35 | シフォンの隠された秘密! | 希冯隐藏的秘密! | 前川淳 | 石平信司松本理惠 | ポール・アンニョヌエボ | 井芹达朗 | VOL.12 |\n| 36 | 新たな敌!その名はノーザ!! | 新的敌人!她的名字是诺萨!! | 赤尾でこ | 大冢隆史 | 香川久 | 饭岛由树子 | VOL.12 |\n| 37 | シフォンを守れ!プリキュアの新しい力!! | 守护希冯!光之美少女的新力量!! | 山下宪一 | 小村敏明 | 奥山美佳 | 须和田真 | VOL.13 |\n| 38 | クローバーボックスをさがせ!! | 四人的决心,找回四叶草宝盒!! | 广田光毅 | 岩井隆央 | 川村敏江 | 井芹达朗 | VOL.13 |\n| 39 | ケンカは禁止?冲縄修学旅行!! | 停止吵架?冲绳修学旅行!! | 成田良美 | 松本理惠 | 青山充 | 增田龙太郎 | VOL.13 |\n| 40 | せつなとラブお母さんが危ない! | 刹那和爱,妈妈有危险! | 伊藤睦美 | 座古明史黑田成美 | 伊藤智子 | 饭岛由树子 | VOL.14 |\n| 41 | 祈里と健人の船上パーティ! | 祈里与建人,船上的快乐派对! | 赤尾でこ | 川田武范 | 饭饲一幸 | 井芹达朗 | VOL.14 |\n| 42 | ラビリンスからの招待状! | 来自迷宫的招待状! | 山下宪一 | 长峰达也 | 河野宏之 | 杉浦正一郎 | VOL.14 |\n| 43 | 世界を救え!プリキュア対ラビリンス!! | 拯救世界!光之美少女VS迷宫!! | 广田光毅 | 大冢隆史 | ポール・アンニョヌエボ | 吉井俊雄 | VOL.15 |\n| 44 | 妖しき草笛!夺われたシフォン!! | 诡异的草笛!被夺走的希冯!! | 前川淳 | 八岛善孝田中裕太 | 饭岛秀一 | 井芹达朗 | VOL.15 |\n| 45 | 4人はプリキュア!クリスマスイブの别れ!! | 四个人是光之美少女,圣诞节前夜的告别!! | 前川淳 | 黑田成美 | 奥山美佳 | 须和田真 | VOL.15 |\n| 46 | サウラーとウエスター最期の戦い!! | 撒乌拉和威斯达,最后之战!! | 成田良美 | 岩井隆央 | 川村敏江 | 猿谷胜己 | VOL.15 |\n| 47 | 世界が変わる!ドーナツが起こした奇迹!! | 世界在改变!甜甜圈引发的奇迹!! | 赤尾でこ | 川田武范 | 伊藤智子 | 井芹达朗 | VOL.16 |\n| 48 | 最终决戦!キュアエンジェル诞生!! | 最终决战,CureAngel诞生!! | 山下宪一 | 志田直俊三冢雅人 | ポール・アンニョヌエボ | 吉井俊雄 | VOL.16 |\n| 49 | 惊きの真実!メビウスの本当の姿!! | 惊人的真相!梅比乌斯的真面目!! | 广田光毅 | 门仓小平太田中裕太 | 河野宏之 | 井芹达朗 | VOL.16 |", "input": "CurePeach、CureBerry和CurePine的诞生分别在第几集?", "constraints_num": 1, "constraints_splits": ["1. 参考下面所给知识回答问题。\n\n【正文】\n| 话数 | 日文标题 | 中文标题 | 剧本 | 演出 | 作画监督 | 美术 | 收录DVD |\n| --- | --- | --- | --- | --- | --- | --- | --- |\n| 1 | もぎたてフレッシュ!キュアピーチ诞生!! | 新鲜试用!CurePeach诞生!! | 前川淳 | 志水淳儿 | 为我井克美 | 行信三 | VOL.1 |\n| 2 | つみたてフレッシュ!キュアベリー诞生!! | 新鲜积累!CureBerry诞生!! | 前川淳 | 岩井隆央 | 饭饲一幸 | 增田龙太郎 | VOL.1 |\n| 3 | とれたてフレッシュ!キュアパイン诞生!! | 新鲜收获!CurePine诞生!! | 前川淳 | 川田武范 | 高桥任治 | 须和田真 | VOL.1 |\n| 4 | シフォンが迷子?町中もう大騒ぎ!! | 希冯迷路了?大街上的大骚乱!! | 赤尾でこ | 石平信司田中裕太 | 饭岛秀一 | 饭岛由树子 | VOL.2 |\n| 5 | 游园地でドキドキ!ワクワクデート気分!? | 心跳的游乐园!紧张的约会气氛!? | 柿原优子 | 三冢雅人 | 奥山美佳 | 井芹达朗 | VOL.2 |\n| 6 | 消えたハンバーグ!大好きなものを守れ!! | 消失的汉堡!守护喜欢的东西!! | 山下宪一 | 座古明史 | 河野宏之 | 饭岛由树子 | VOL.2 |\n| 7 | せつなとラブ友情のクローバー! | 刹那和爱,友情的四叶草! | 成田良美 | 山崎和男黑田成美 | ポール・アンニョヌエボ | 井芹达朗 | VOL.3 |\n| 8 | シフォン大ピンチ!ピーチの新しい力!! | 希冯大危机!Peach的新力量!! | 广田光毅 | 长峰达也 | 宫本绘美子 | 须和田真 | VOL.3 |\n| 9 | 美希の梦私プリキュアやめる!! | 美希的梦想,我不做光之美少女了!! | 前川淳 | 小村敏明 | 川村敏江 | 饭岛由树子 | VOL.3 |\n| 10 | タルトが祈里で祈里がタルト!? | 塔鲁特是祈里,祈里是塔鲁特!? | 赤尾でこ | 石平信司三冢雅人 | 饭饲一幸 | 井芹达朗 | VOL.4 |\n| 11 | ミユキの怒り!もうダンスは教えない!? | 美雪的怒火!不再教你们跳舞了!? | 柿原优子 | 川田武范 | 伊藤智子 | 中村光毅 | VOL.4 |\n| 12 | みんなで変身!フサフサ大作戦!! | 大家变身!毛茸茸大作战!! | 山下宪一 | 松本理惠 | 为我井克美 | 井芹达朗 | VOL.4 |\n| 13 | シフォンが病気!?パインの新しい力!! | 希冯生病了!?Pine的新力量!! | 成田良美 | 岩井隆央 | 高桥任治 | 饭岛由树子 | VOL.5 |\n| 14 | 4人目のプリキュア!?アカルンを探せ!! | 第四个光之美少女!?寻找Akarun!! | 广田光毅 | 三冢雅人 | 河野宏之 | 须和田真 | VOL.5 |\n| 15 | せつなとラブ相手を思いやる心! | 刹那与爱相互体谅的心! | 前川淳 | 座古明史 | 饭岛秀一 | 饭岛由树子 | VOL.5 |\n| 16 | 恐怖の文化祭!夜の学校に响く足音!! | 恐怖的文化祭!深夜的学校回响的脚步声!! | 赤尾でこ | 黑田成美 | 奥山美佳 | 井芹达朗 | VOL.6 |\n| 17 | シフォンはまかせて!ベリーの新しい力!! | 希冯交给我了!Berry的新力量!! | 柿原优子 | 八岛善孝田中裕太 | ポール・アンニョヌエボ | 饭岛由树子 | VOL.6 |\n| 18 | プリキュアに会いたい!小さな女の子の愿い!! | 想见光之美少女!小女孩的心愿!! | 山下宪一 | 长峰达也 | 青山充 | 中村光毅 | VOL.6 |\n| 19 | 新たなカード!イースの新しい力!! | 新的卡片!伊斯的新力量!! | 成田良美 | 川田武范 | 川村敏江 | 须和田真 | VOL.7 |\n| 20 | ダンスとプリキュア…どちらを选ぶ!? | 跳舞和光之美少女…选哪个!? | 广田光毅 | 小村敏明三冢雅人 | ポール・アンニョヌエボ | 井芹达朗 | VOL.7 |\n| 21 | 4人目のプリキュアはあんさんや!! | 第四个光之美少女就是你啊!! | 赤尾でこ | 岩井隆央 | 宫本绘美子 | 饭岛由树子 | VOL.7 |\n| 22 | せつなとラブあなたがイースなの!? | 刹那和爱你就是伊斯吗!? | 成田良美 | 松本理惠 | 河野宏之 | 增田龙太郎 | VOL.8 |\n| 23 | イースの最期!キュアパッション诞生!! | 伊斯的末日!CurePassion诞生!! | 前川淳 | 石平信司黑田成美 | 伊藤智子 | 井芹达朗 | VOL.8 |\n| 24 | せつなの苦悩私は仲间になれない! | 刹那的苦恼我不可能成为伙伴! | 伊藤睦美 | 座古明史 | 香川久 | 饭岛由树子 | VOL.8 |\n| 25 | イース対パッション!?私は生まれ変わる!! | 伊斯对百香果天使!?我已经重生了!! | 赤尾でこ | 川田武范 | 川田武范 | 须和田真 | VOL.9 |\n| 26 | 4つのハート!私も踊りたい!! | 4颗相连的心!我也想跳舞!! | 山下宪一 | 三冢雅人 | 三冢雅人 | 井芹达朗 | VOL.9 |\n| 27 | 夏だ!祭りだ!オードリー!! | 夏天的快乐祭典!奥德丽!! | 赤尾でこ | 岩井隆央 | 岩井隆央 | 增田龙太郎 | VOL.9 |\n| 28 | 大切な记忆!おじいちゃんとの思い出!! | 重要的记忆!与爷爷一起的回忆!! | 成田良美 | 小村敏明 | ポール・アンニョヌエボ | 饭岛由树子 | VOL.10 |\n| 29 | 谜だらけの男!カオルちゃんの正体!? | 充满谜团的男人!小熏的真实身份!? | 广田光毅 | 石平信司松本理惠 | 奥山美佳 | 井芹达朗 | VOL.10 |\n| 30 | タルト危机一髪!正体がばれちゃう!? | 塔鲁特千钧一发!真实身份要暴露了!? | 山下宪一 | 长峰达也 | 饭饲一幸 | 饭岛由树子 | VOL.10 |\n| 31 | ラブと大辅!仲直りのしかた! | 爱和大辅!重归于好的方式! | 伊藤睦美 | 黑田成美 | 河野宏之 | 须和田真 | VOL.11 |\n| 32 | さようなら!タルトとシフォン!! | 再见!塔鲁特和希冯!! | 广田光毅 | 八岛善孝田中裕太 | 伊藤智子 | 井芹达朗 | VOL.11 |\n| 33 | 美希とせつなのこわいもの! | 美希和刹那害怕的东西! | 成田良美 | 织本まきこ | 青山充 | 增田龙太郎 | VOL.11 |\n| 34 | インフィニティ现れる!明日を取り戻せ!! | infinity出现!取回!!明天!! | 前川淳 | 川田武范 | 饭岛秀一 | 饭岛由树子 | VOL.12 |\n| 35 | シフォンの隠された秘密! | 希冯隐藏的秘密! | 前川淳 | 石平信司松本理惠 | ポール・アンニョヌエボ | 井芹达朗 | VOL.12 |\n| 36 | 新たな敌!その名はノーザ!! | 新的敌人!她的名字是诺萨!! | 赤尾でこ | 大冢隆史 | 香川久 | 饭岛由树子 | VOL.12 |\n| 37 | シフォンを守れ!プリキュアの新しい力!! | 守护希冯!光之美少女的新力量!! | 山下宪一 | 小村敏明 | 奥山美佳 | 须和田真 | VOL.13 |\n| 38 | クローバーボックスをさがせ!! | 四人的决心,找回四叶草宝盒!! | 广田光毅 | 岩井隆央 | 川村敏江 | 井芹达朗 | VOL.13 |\n| 39 | ケンカは禁止?冲縄修学旅行!! | 停止吵架?冲绳修学旅行!! | 成田良美 | 松本理惠 | 青山充 | 增田龙太郎 | VOL.13 |\n| 40 | せつなとラブお母さんが危ない! | 刹那和爱,妈妈有危险! | 伊藤睦美 | 座古明史黑田成美 | 伊藤智子 | 饭岛由树子 | VOL.14 |\n| 41 | 祈里と健人の船上パーティ! | 祈里与建人,船上的快乐派对! | 赤尾でこ | 川田武范 | 饭饲一幸 | 井芹达朗 | VOL.14 |\n| 42 | ラビリンスからの招待状! | 来自迷宫的招待状! | 山下宪一 | 长峰达也 | 河野宏之 | 杉浦正一郎 | VOL.14 |\n| 43 | 世界を救え!プリキュア対ラビリンス!! | 拯救世界!光之美少女VS迷宫!! | 广田光毅 | 大冢隆史 | ポール・アンニョヌエボ | 吉井俊雄 | VOL.15 |\n| 44 | 妖しき草笛!夺われたシフォン!! | 诡异的草笛!被夺走的希冯!! | 前川淳 | 八岛善孝田中裕太 | 饭岛秀一 | 井芹达朗 | VOL.15 |\n| 45 | 4人はプリキュア!クリスマスイブの别れ!! | 四个人是光之美少女,圣诞节前夜的告别!! | 前川淳 | 黑田成美 | 奥山美佳 | 须和田真 | VOL.15 |\n| 46 | サウラーとウエスター最期の戦い!! | 撒乌拉和威斯达,最后之战!! | 成田良美 | 岩井隆央 | 川村敏江 | 猿谷胜己 | VOL.15 |\n| 47 | 世界が変わる!ドーナツが起こした奇迹!! | 世界在改变!甜甜圈引发的奇迹!! | 赤尾でこ | 川田武范 | 伊藤智子 | 井芹达朗 | VOL.16 |\n| 48 | 最终决戦!キュアエンジェル诞生!! | 最终决战,CureAngel诞生!! | 山下宪一 | 志田直俊三冢雅人 | ポール・アンニョヌエボ | 吉井俊雄 | VOL.16 |\n| 49 | 惊きの真実!メビウスの本当の姿!! | 惊人的真相!梅比乌斯的真面目!! | 广田光毅 | 门仓小平太田中裕太 | 河野宏之 | 井芹达朗 | VOL.16 |"], "levels2": ["表格背景信息约束"], "category": "trace1.0"} +{"id": "119", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为数字助手产品制定一份详细的营销计划,针对忙碌的职业人士这一特定受众群体。\n1. 营销计划以PowerPoint演示文稿的形式呈现,包括标题页、目录、各部分内容页、总结页和引用页,确保格式清晰、专业;\n"}], "type": "trace", "description": "为数字助手产品制定一份详细的营销计划,针对忙碌的职业人士这一特定受众群体。", "constraints": "1. 营销计划以PowerPoint演示文稿的形式呈现,包括标题页、目录、各部分内容页、总结页和引用页,确保格式清晰、专业;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 营销计划以PowerPoint演示文稿的形式呈现,包括标题页、目录、各部分内容页、总结页和引用页,确保格式清晰、专业;"], "levels2": ["输出格式约束"], "category": "trace1.0"} +{"id": "120", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "根据给定的吸烟程度、年龄和性别,采用医学统计模型计算患肺癌的风险。\n1. 报告应采用Markdown格式,其中关键数据和计算结果加粗显示,以便于快速阅读和理解;\n# Inputs:\n吸烟程度:每天10支;年龄:40岁;性别:男性。\n"}], "type": "trace", "description": "根据给定的吸烟程度、年龄和性别,采用医学统计模型计算患肺癌的风险。", "constraints": "1. 报告应采用Markdown格式,其中关键数据和计算结果加粗显示,以便于快速阅读和理解;", "input": "吸烟程度:每天10支;年龄:40岁;性别:男性。", "constraints_num": 1, "constraints_splits": ["1. 报告应采用Markdown格式,其中关键数据和计算结果加粗显示,以便于快速阅读和理解;"], "levels2": ["输出格式约束"], "category": "trace1.0"} +{"id": "121", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创造一个角色扮演场景,其中包含三个角色:一位年轻的初创企业家,一位经验丰富的行业导师,和一位潜在的投资者,描述他们在一个行业会议上相遇的情景,包括各自的目标、担忧和期待。\n1. 不提供他们如何解决这些挑战的方案;\n"}], "type": "trace", "description": "创造一个角色扮演场景,其中包含三个角色:一位年轻的初创企业家,一位经验丰富的行业导师,和一位潜在的投资者,描述他们在一个行业会议上相遇的情景,包括各自的目标、担忧和期待。", "constraints": "1. 不提供他们如何解决这些挑战的方案;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 不提供他们如何解决这些挑战的方案;"], "levels2": ["排除约束"], "category": "trace1.0"} +{"id": "122", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇关于人工智能的专题文章,解释无监督学习、监督学习和增强学习的概念,并通过三个具体例子说明这些学习方法的应用场景。\n1. 在论述中,应使用比喻和类比的修辞手法,使得非专业读者也能理解这些复杂的概念;\n"}], "type": "trace", "description": "撰写一篇关于人工智能的专题文章,解释无监督学习、监督学习和增强学习的概念,并通过三个具体例子说明这些学习方法的应用场景。", "constraints": "1. 在论述中,应使用比喻和类比的修辞手法,使得非专业读者也能理解这些复杂的概念;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 在论述中,应使用比喻和类比的修辞手法,使得非专业读者也能理解这些复杂的概念;"], "levels2": ["语言特征约束"], "category": "trace1.0"} +{"id": "123", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "根据给定的20 Newsgroups数据集,使用Python和Scikit-Learn库训练一个文本分类器来自动将文本分类为20个不同的新闻组主题。\n1. 分类器的选取应从朴素贝叶斯、支持向量机和随机森林中挑选;\n# Inputs:\n20 Newsgroups数据集\n"}], "type": "trace", "description": "根据给定的20 Newsgroups数据集,使用Python和Scikit-Learn库训练一个文本分类器来自动将文本分类为20个不同的新闻组主题。", "constraints": "1. 分类器的选取应从朴素贝叶斯、支持向量机和随机森林中挑选;", "input": "20 Newsgroups数据集", "constraints_num": 1, "constraints_splits": ["1. 分类器的选取应从朴素贝叶斯、支持向量机和随机森林中挑选;"], "levels2": ["包含约束"], "category": "trace1.0"} +{"id": "124", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "基于植物学知识,以严谨正式的语气回答关于“绿色的柠檬是一种真正存在的水果”这一陈述的真实性,同时包含柠檬成熟过程中的颜色变化信息。\n1. 回答中避免任何可能引起误导或虚假信息的陈述。\n"}], "type": "trace", "description": "基于植物学知识,以严谨正式的语气回答关于“绿色的柠檬是一种真正存在的水果”这一陈述的真实性,同时包含柠檬成熟过程中的颜色变化信息。", "constraints": "1. 回答中避免任何可能引起误导或虚假信息的陈述。", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 回答中避免任何可能引起误导或虚假信息的陈述。"], "levels2": ["价值观约束"], "category": "trace1.0"} +{"id": "125", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一段描述关于约翰经营街区商店20年的故事\n1. 描述中避免提及具体财务数据;\n"}], "type": "trace", "description": "撰写一段描述关于约翰经营街区商店20年的故事", "constraints": "1. 描述中避免提及具体财务数据;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 描述中避免提及具体财务数据;"], "levels2": ["排除约束"], "category": "trace1.0"} +{"id": "126", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "在IMDb数据库中查找演员是否出演过特定电影\n1. 结果必须包含演员的IMDb个人编号;\n# Inputs:\n电影名称:阿凡达,演员名称:萨姆·沃辛顿\n"}], "type": "trace", "description": "在IMDb数据库中查找演员是否出演过特定电影", "constraints": "1. 结果必须包含演员的IMDb个人编号;", "input": "电影名称:阿凡达,演员名称:萨姆·沃辛顿", "constraints_num": 1, "constraints_splits": ["1. 结果必须包含演员的IMDb个人编号;"], "levels2": ["包含约束"], "category": "trace1.0"} +{"id": "127", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "提供5种不同动物的详细介绍\n1. 每种动物的介绍必须包含至少一个有趣的事实或独特行为的描述;\n"}], "type": "trace", "description": "提供5种不同动物的详细介绍", "constraints": "1. 每种动物的介绍必须包含至少一个有趣的事实或独特行为的描述;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 每种动物的介绍必须包含至少一个有趣的事实或独特行为的描述;"], "levels2": ["包含约束"], "category": "trace1.0"} +{"id": "128", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以建议的语气,回答在哪里可以找到一家靠谱的中餐馆,内容中应包含至少3个推荐的中餐馆名称及其所在城市,同时分享每家餐馆的特色菜品。\n1. 使用emoji表情符号来突出重点,如“必点菜单🔥”或“环境超赞🌟”。\n"}], "type": "trace", "description": "以建议的语气,回答在哪里可以找到一家靠谱的中餐馆,内容中应包含至少3个推荐的中餐馆名称及其所在城市,同时分享每家餐馆的特色菜品。", "constraints": "1. 使用emoji表情符号来突出重点,如“必点菜单🔥”或“环境超赞🌟”。", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 使用emoji表情符号来突出重点,如“必点菜单🔥”或“环境超赞🌟”。"], "levels2": ["文本样式约束"], "category": "trace1.0"} +{"id": "129", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "写一篇科技新闻报道,主题为苹果公司最近发布的 iPhone\n1. 在描述新功能时,不得泄露任何潜在的用户隐私信息,确保报道的专业性和安全性;\n"}], "type": "trace", "description": "写一篇科技新闻报道,主题为苹果公司最近发布的 iPhone", "constraints": "1. 在描述新功能时,不得泄露任何潜在的用户隐私信息,确保报道的专业性和安全性;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 在描述新功能时,不得泄露任何潜在的用户隐私信息,确保报道的专业性和安全性;"], "levels2": ["隐私约束"], "category": "trace1.0"} +{"id": "130", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "扮演英语私人导师,进行英语学习对话\n1. 对话完全用英文进行,确保充分的语言实践;\n"}], "type": "trace", "description": "扮演英语私人导师,进行英语学习对话", "constraints": "1. 对话完全用英文进行,确保充分的语言实践;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 对话完全用英文进行,确保充分的语言实践;"], "levels2": ["多语言约束"], "category": "trace1.0"} +{"id": "131", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "给定两个字符串,查找它们之间的最长公共子序列\n1. 每个步骤描述不超过50字,保持清晰性;\n# Inputs:\n字符串1:ABCDGH,字符串2:AEDFHR\n"}], "type": "trace", "description": "给定两个字符串,查找它们之间的最长公共子序列", "constraints": "1. 每个步骤描述不超过50字,保持清晰性;", "input": "字符串1:ABCDGH,字符串2:AEDFHR", "constraints_num": 1, "constraints_splits": ["1. 每个步骤描述不超过50字,保持清晰性;"], "levels2": ["数值约束"], "category": "trace1.0"} +{"id": "132", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "生成一篇关于\"人工智能在医疗领域的应用\"的文章\n1. 文章应以Markdown格式输出,使用标题和子标题进行层次化结构组织;\n"}], "type": "trace", "description": "生成一篇关于\"人工智能在医疗领域的应用\"的文章", "constraints": "1. 文章应以Markdown格式输出,使用标题和子标题进行层次化结构组织;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 文章应以Markdown格式输出,使用标题和子标题进行层次化结构组织;"], "levels2": ["输出格式约束"], "category": "trace1.0"} +{"id": "133", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "你是一个知识问答系统\n1. 参考下面所给知识回答问题。\n\n【文档名】Racer 2夏季公路骑行短袖骑行服 男女通用-白色\n【标题】Racer 2夏季公路骑行短袖骑行服 男女通用-白色\n【正文】# Racer 2夏季公路骑行短袖骑行服 男女通用-白色\n**catchline**: 您是否正在寻找一款轻便、透气、贴合身型、性能出众的骑行服?就选它吧!\n**composition_data**: 主体面料\n81% 聚酯纤维, 19% 氨纶\n拼接面料\n83% 聚酯纤维, 17% 氨纶\n**categories**: 所有运动|自行车|人身装备|骑行服/裤|男士骑行服/裤\n**characteristics**: 向您介绍这一新款Racer运动衫。它比以前的款式更轻便透气,非常适合训练骑行和比赛时穿着!\n我们的初心很明确:兼顾透气性和空气动力性。结果是Racer第二代运动衫。|这款运动衫采用中性设计!\n所用的材料和图案适合任何体型,无论性别。\n这种剪裁设计非常合身,给予您第二肌肤的效果。\n无论您的臀部宽度如何,轻盈富有弹性的下摆及其硅胶带都能将运动衫固定到位。|我们为这款运动衫选择了超轻的材料,让您倍感舒适。\n这款运动衫大部分由Amigo面料制成,透气性极佳,重量轻。\n两侧和手臂由网眼布制成,使充足的空气通过,让您保持凉爽。|即使在最热的天气里也可以在户外骑行时穿着,不会因出汗而感到潮湿。\n我们在运动衫的正面和背面采用了薄而透气的防紫外线面料,让您保持凉爽舒适,免受紫外线照射。|这款运动衫的每一个技术方面都经过精心设计,可在最佳条件下将您的骑行表现提升到另一个高度:\n-透气:两侧和袖子由网布制成。-口袋:4个后口袋,含1个拉链口袋。\n- 垃圾袋: 每侧各有1个垃圾口袋。\n-支撑:腰部和手腕处的弹性设计可提供良好支撑。- 长度:稍短,防止在骑行时前面起皱,口袋装满时后面下垂|PRO FIT剪裁专为追求适中紧身度的骑行运动者而设计。这种宛如第二层肌肤般贴身的空气动力剪裁设计,助您再创佳绩。\nRacer系列的袖子几乎能覆盖住二头肌。\n中性运动衫,男女均适穿。\n# Inputs:\n请推荐3套适合夏季骑行的装备,并介绍包括头盔、手套等在内的特性、价格等详细信息。\n"}], "type": "trace", "description": "你是一个知识问答系统", "constraints": "1. 参考下面所给知识回答问题。\n\n【文档名】Racer 2夏季公路骑行短袖骑行服 男女通用-白色\n【标题】Racer 2夏季公路骑行短袖骑行服 男女通用-白色\n【正文】# Racer 2夏季公路骑行短袖骑行服 男女通用-白色\n**catchline**: 您是否正在寻找一款轻便、透气、贴合身型、性能出众的骑行服?就选它吧!\n**composition_data**: 主体面料\n81% 聚酯纤维, 19% 氨纶\n拼接面料\n83% 聚酯纤维, 17% 氨纶\n**categories**: 所有运动|自行车|人身装备|骑行服/裤|男士骑行服/裤\n**characteristics**: 向您介绍这一新款Racer运动衫。它比以前的款式更轻便透气,非常适合训练骑行和比赛时穿着!\n我们的初心很明确:兼顾透气性和空气动力性。结果是Racer第二代运动衫。|这款运动衫采用中性设计!\n所用的材料和图案适合任何体型,无论性别。\n这种剪裁设计非常合身,给予您第二肌肤的效果。\n无论您的臀部宽度如何,轻盈富有弹性的下摆及其硅胶带都能将运动衫固定到位。|我们为这款运动衫选择了超轻的材料,让您倍感舒适。\n这款运动衫大部分由Amigo面料制成,透气性极佳,重量轻。\n两侧和手臂由网眼布制成,使充足的空气通过,让您保持凉爽。|即使在最热的天气里也可以在户外骑行时穿着,不会因出汗而感到潮湿。\n我们在运动衫的正面和背面采用了薄而透气的防紫外线面料,让您保持凉爽舒适,免受紫外线照射。|这款运动衫的每一个技术方面都经过精心设计,可在最佳条件下将您的骑行表现提升到另一个高度:\n-透气:两侧和袖子由网布制成。-口袋:4个后口袋,含1个拉链口袋。\n- 垃圾袋: 每侧各有1个垃圾口袋。\n-支撑:腰部和手腕处的弹性设计可提供良好支撑。- 长度:稍短,防止在骑行时前面起皱,口袋装满时后面下垂|PRO FIT剪裁专为追求适中紧身度的骑行运动者而设计。这种宛如第二层肌肤般贴身的空气动力剪裁设计,助您再创佳绩。\nRacer系列的袖子几乎能覆盖住二头肌。\n中性运动衫,男女均适穿。", "input": "请推荐3套适合夏季骑行的装备,并介绍包括头盔、手套等在内的特性、价格等详细信息。", "constraints_num": 1, "constraints_splits": ["1. 参考下面所给知识回答问题。\n\n【文档名】Racer 2夏季公路骑行短袖骑行服 男女通用-白色\n【标题】Racer 2夏季公路骑行短袖骑行服 男女通用-白色\n【正文】# Racer 2夏季公路骑行短袖骑行服 男女通用-白色\n**catchline**: 您是否正在寻找一款轻便、透气、贴合身型、性能出众的骑行服?就选它吧!\n**composition_data**: 主体面料\n81% 聚酯纤维, 19% 氨纶\n拼接面料\n83% 聚酯纤维, 17% 氨纶\n**categories**: 所有运动|自行车|人身装备|骑行服/裤|男士骑行服/裤\n**characteristics**: 向您介绍这一新款Racer运动衫。它比以前的款式更轻便透气,非常适合训练骑行和比赛时穿着!\n我们的初心很明确:兼顾透气性和空气动力性。结果是Racer第二代运动衫。|这款运动衫采用中性设计!\n所用的材料和图案适合任何体型,无论性别。\n这种剪裁设计非常合身,给予您第二肌肤的效果。\n无论您的臀部宽度如何,轻盈富有弹性的下摆及其硅胶带都能将运动衫固定到位。|我们为这款运动衫选择了超轻的材料,让您倍感舒适。\n这款运动衫大部分由Amigo面料制成,透气性极佳,重量轻。\n两侧和手臂由网眼布制成,使充足的空气通过,让您保持凉爽。|即使在最热的天气里也可以在户外骑行时穿着,不会因出汗而感到潮湿。\n我们在运动衫的正面和背面采用了薄而透气的防紫外线面料,让您保持凉爽舒适,免受紫外线照射。|这款运动衫的每一个技术方面都经过精心设计,可在最佳条件下将您的骑行表现提升到另一个高度:\n-透气:两侧和袖子由网布制成。-口袋:4个后口袋,含1个拉链口袋。\n- 垃圾袋: 每侧各有1个垃圾口袋。\n-支撑:腰部和手腕处的弹性设计可提供良好支撑。- 长度:稍短,防止在骑行时前面起皱,口袋装满时后面下垂|PRO FIT剪裁专为追求适中紧身度的骑行运动者而设计。这种宛如第二层肌肤般贴身的空气动力剪裁设计,助您再创佳绩。\nRacer系列的袖子几乎能覆盖住二头肌。\n中性运动衫,男女均适穿。"], "levels2": ["文本背景信息约束"], "category": "trace1.0"} +{"id": "134", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "找到并描述一种特定的鸟类,包括名称、生活习性、羽毛特征,这些羽毛曾被19世纪的时尚界用于制作华丽的帽子。\n1. 描述内容不少于100字,不超过200字。\n"}], "type": "trace", "description": "找到并描述一种特定的鸟类,包括名称、生活习性、羽毛特征,这些羽毛曾被19世纪的时尚界用于制作华丽的帽子。", "constraints": "1. 描述内容不少于100字,不超过200字。", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 描述内容不少于100字,不超过200字。"], "levels2": ["数值约束"], "category": "trace1.0"} +{"id": "135", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "使用机器学习算法对电影评分数据集中的电影进行分类,如喜剧、动作、剧情等。\n1. 在报告中包含数据预处理步骤、特征变量选择依据、模型训练过程描述、模型评估结果和结果分析。\n# Inputs:\n一个电影评分数据集,包含电影标题、年份、导演、演员、类型和评分。\n"}], "type": "trace", "description": "使用机器学习算法对电影评分数据集中的电影进行分类,如喜剧、动作、剧情等。", "constraints": "1. 在报告中包含数据预处理步骤、特征变量选择依据、模型训练过程描述、模型评估结果和结果分析。", "input": "一个电影评分数据集,包含电影标题、年份、导演、演员、类型和评分。", "constraints_num": 1, "constraints_splits": ["1. 在报告中包含数据预处理步骤、特征变量选择依据、模型训练过程描述、模型评估结果和结果分析。"], "levels2": ["层次化结构约束"], "category": "trace1.0"} +{"id": "136", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为一对热衷于文化探索、美食体验和购物的夫妻量身定制一次难忘的东京之旅。\n1. 旅行计划应按照“总-分-总”结构组织。\n"}], "type": "trace", "description": "为一对热衷于文化探索、美食体验和购物的夫妻量身定制一次难忘的东京之旅。", "constraints": "1. 旅行计划应按照“总-分-总”结构组织。", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 旅行计划应按照“总-分-总”结构组织。"], "levels2": ["模版约束"], "category": "trace1.0"} +{"id": "137", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一个关于深圳市的旅游介绍,包含深圳的历史、文化、美食、景点等关键信息。\n1. 使用Markdown格式进行排版,确保文本具有良好的阅读体验。\n"}], "type": "trace", "description": "撰写一个关于深圳市的旅游介绍,包含深圳的历史、文化、美食、景点等关键信息。", "constraints": "1. 使用Markdown格式进行排版,确保文本具有良好的阅读体验。", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 使用Markdown格式进行排版,确保文本具有良好的阅读体验。"], "levels2": ["输出格式约束"], "category": "trace1.0"} +{"id": "138", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "给出一个以“AI未来”为主题的段落\n1. 采用正式且具有前瞻性的语气风格;\n"}], "type": "trace", "description": "给出一个以“AI未来”为主题的段落", "constraints": "1. 采用正式且具有前瞻性的语气风格;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 采用正式且具有前瞻性的语气风格;"], "levels2": ["语气风格约束"], "category": "trace1.0"} +{"id": "139", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "将给定的名字列表按照字母顺序排序,并以Markdown格式的无序列表输出。\n1. 名字列表应包含至少5个名字,不超过10个名字;\n# Inputs:\nAlex, Ben, Lily, Mary, John, Kate, Lucy\n"}], "type": "trace", "description": "将给定的名字列表按照字母顺序排序,并以Markdown格式的无序列表输出。", "constraints": "1. 名字列表应包含至少5个名字,不超过10个名字;", "input": "Alex, Ben, Lily, Mary, John, Kate, Lucy", "constraints_num": 1, "constraints_splits": ["1. 名字列表应包含至少5个名字,不超过10个名字;"], "levels2": ["数值约束"], "category": "trace1.0"} +{"id": "140", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇至少包含500字的说明文,详细介绍智能手表的功能和优势\n1. 文章中所有提及的智能手表品牌名称需要用下划线标识;\n"}], "type": "trace", "description": "撰写一篇至少包含500字的说明文,详细介绍智能手表的功能和优势", "constraints": "1. 文章中所有提及的智能手表品牌名称需要用下划线标识;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 文章中所有提及的智能手表品牌名称需要用下划线标识;"], "levels2": ["文本样式约束"], "category": "trace1.0"} +{"id": "141", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以专业学术的语气风格介绍 MyFitnessPal 应用程序并详细解释其主要功能,特别包含应用程序如何帮助用户追踪饮食、锻炼和体重。\n1. 介绍文本的字数在300至500字之间,确保信息的全面性和精炼性;\n"}], "type": "trace", "description": "以专业学术的语气风格介绍 MyFitnessPal 应用程序并详细解释其主要功能,特别包含应用程序如何帮助用户追踪饮食、锻炼和体重。", "constraints": "1. 介绍文本的字数在300至500字之间,确保信息的全面性和精炼性;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 介绍文本的字数在300至500字之间,确保信息的全面性和精炼性;"], "levels2": ["数值约束"], "category": "trace1.0"} +{"id": "142", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "详细解释协议合规和受试者安全在临床试验伦理中的重要性,并列出这些问题如何影响数据的准确性\n1. 回答应符合医学伦理学的出版物标准,包括使用专业术语和提供可靠的数据支持;\n"}], "type": "trace", "description": "详细解释协议合规和受试者安全在临床试验伦理中的重要性,并列出这些问题如何影响数据的准确性", "constraints": "1. 回答应符合医学伦理学的出版物标准,包括使用专业术语和提供可靠的数据支持;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 回答应符合医学伦理学的出版物标准,包括使用专业术语和提供可靠的数据支持;"], "levels2": ["价值观约束"], "category": "trace1.0"} +{"id": "143", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以教育专家身份,对“学生不应该使用手机和社交媒体在课堂上玩游戏或浏览网页”的观点发表正式看法,包含至少3个支持理由,从教育和心理学角度分析负面影响,体现对学生学习环境的尊重和对教育质量的重视,避免争议性或偏见表述。\n1. 避免任何可能引起争议或偏见的表述;\n"}], "type": "trace", "description": "以教育专家身份,对“学生不应该使用手机和社交媒体在课堂上玩游戏或浏览网页”的观点发表正式看法,包含至少3个支持理由,从教育和心理学角度分析负面影响,体现对学生学习环境的尊重和对教育质量的重视,避免争议性或偏见表述。", "constraints": "1. 避免任何可能引起争议或偏见的表述;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 避免任何可能引起争议或偏见的表述;"], "levels2": ["价值观约束"], "category": "trace1.0"} +{"id": "144", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "写一篇适合在中学生环保活动中演讲的演讲稿\n1. 演讲稿应以“让我们行动起来,为了地球的未来”作为结束语;\n"}], "type": "trace", "description": "写一篇适合在中学生环保活动中演讲的演讲稿", "constraints": "1. 演讲稿应以“让我们行动起来,为了地球的未来”作为结束语;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 演讲稿应以“让我们行动起来,为了地球的未来”作为结束语;"], "levels2": ["模版约束"], "category": "trace1.0"} +{"id": "145", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一个逻辑回归分类模型使用Python的Scikit-learn库,根据给定的客户数据集预测客户是否会购买产品。\n1. 客户姓名需进行匿名化处理,以保护客户隐私;\n# Inputs:\n- 客户姓名\n- 客户年龄(数值型数据)\n- 客户职业(分类数据)\n- 客户收入(数值型数据)\n- 产品购买历史信息(二元分类数据)\n"}], "type": "trace", "description": "创建一个逻辑回归分类模型使用Python的Scikit-learn库,根据给定的客户数据集预测客户是否会购买产品。", "constraints": "1. 客户姓名需进行匿名化处理,以保护客户隐私;", "input": "- 客户姓名\n- 客户年龄(数值型数据)\n- 客户职业(分类数据)\n- 客户收入(数值型数据)\n- 产品购买历史信息(二元分类数据)", "constraints_num": 1, "constraints_splits": ["1. 客户姓名需进行匿名化处理,以保护客户隐私;"], "levels2": ["隐私约束"], "category": "trace1.0"} +{"id": "146", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "评估目前可用的常规测量方法在DNAPL(卤代烃类有机污染物质)成分测量中的适用性,并以表格形式展示。\n1. 对于提出的优秀测量方法,需使用编号列表方式列出其优点和缺点;\n"}], "type": "trace", "description": "评估目前可用的常规测量方法在DNAPL(卤代烃类有机污染物质)成分测量中的适用性,并以表格形式展示。", "constraints": "1. 对于提出的优秀测量方法,需使用编号列表方式列出其优点和缺点;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 对于提出的优秀测量方法,需使用编号列表方式列出其优点和缺点;"], "levels2": ["编号和列表约束"], "category": "trace1.0"} +{"id": "147", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇关于电动汽车的深度分析文章\n1. 整篇文章应采用严谨正式的学术语气,确保信息的准确性与权威性。\n"}], "type": "trace", "description": "撰写一篇关于电动汽车的深度分析文章", "constraints": "1. 整篇文章应采用严谨正式的学术语气,确保信息的准确性与权威性。", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 整篇文章应采用严谨正式的学术语气,确保信息的准确性与权威性。"], "levels2": ["语气风格约束"], "category": "trace1.0"} +{"id": "148", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "计算此次购买的总价并以表格形式展示。\n1. 表格形式需包含:| 产品名称 | 数量 | 单价 | 小计 |;\n"}], "type": "trace", "description": "计算此次购买的总价并以表格形式展示。", "constraints": "1. 表格形式需包含:| 产品名称 | 数量 | 单价 | 小计 |;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 表格形式需包含:| 产品名称 | 数量 | 单价 | 小计 |;"], "levels2": ["输出格式约束"], "category": "trace1.0"} +{"id": "149", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "与9岁的女孩Mae进行对话,评估并教授爱尔兰语。\n1. 运用英语和爱尔兰语的混合对话;\n"}], "type": "trace", "description": "与9岁的女孩Mae进行对话,评估并教授爱尔兰语。", "constraints": "1. 运用英语和爱尔兰语的混合对话;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 运用英语和爱尔兰语的混合对话;"], "levels2": ["多语言约束"], "category": "trace1.0"} +{"id": "150", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为一名新手设计一个5-7天的徒步旅行计划,地点位于欧洲阿尔卑斯山。\n1. 计划应采用简洁明了的语言风格,避免使用专业术语,确保初学者能够轻松理解;\n"}], "type": "trace", "description": "为一名新手设计一个5-7天的徒步旅行计划,地点位于欧洲阿尔卑斯山。", "constraints": "1. 计划应采用简洁明了的语言风格,避免使用专业术语,确保初学者能够轻松理解;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 计划应采用简洁明了的语言风格,避免使用专业术语,确保初学者能够轻松理解;"], "levels2": ["语气风格约束"], "category": "trace1.0"} +{"id": "151", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "找出给定数值组中的最大值和最小值,并计算它们的差值。最后,将结果以JSON格式返回,其中应包含“max_value”(最大值),“min_value”(最小值)和“difference”(差值)三个键。\n1. 结果应四舍五入到最接近的整数。\n# Inputs:\n数值:[7, 10, 4, 3, 9, 6]\n"}], "type": "trace", "description": "找出给定数值组中的最大值和最小值,并计算它们的差值。最后,将结果以JSON格式返回,其中应包含“max_value”(最大值),“min_value”(最小值)和“difference”(差值)三个键。", "constraints": "1. 结果应四舍五入到最接近的整数。", "input": "数值:[7, 10, 4, 3, 9, 6]", "constraints_num": 1, "constraints_splits": ["1. 结果应四舍五入到最接近的整数。"], "levels2": ["数值约束"], "category": "trace1.0"} +{"id": "152", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇阐述家庭原则在构建和谐家庭关系中的重要性的短文\n1. 文章结尾需总结这些原则如何共同促进家庭成员之间的理解和尊重;\n"}], "type": "trace", "description": "撰写一篇阐述家庭原则在构建和谐家庭关系中的重要性的短文", "constraints": "1. 文章结尾需总结这些原则如何共同促进家庭成员之间的理解和尊重;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 文章结尾需总结这些原则如何共同促进家庭成员之间的理解和尊重;"], "levels2": ["模版约束"], "category": "trace1.0"} +{"id": "153", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "按拼音排序给出汉字列表,并以Markdown无序列表的形式展示,每个汉字后面附上其拼音。\n1. 列表不得少于10个汉字。\n# Inputs:\n- (fēng)\n- (huā)\n- (shān)\n- (shuǐ)\n- (shù)\n- (yún)\n- (yǔ)\n- (xīng)\n- (yuè)\n- (niǎo)\n"}], "type": "trace", "description": "按拼音排序给出汉字列表,并以Markdown无序列表的形式展示,每个汉字后面附上其拼音。", "constraints": "1. 列表不得少于10个汉字。", "input": "- (fēng)\n- (huā)\n- (shān)\n- (shuǐ)\n- (shù)\n- (yún)\n- (yǔ)\n- (xīng)\n- (yuè)\n- (niǎo)", "constraints_num": 1, "constraints_splits": ["1. 列表不得少于10个汉字。"], "levels2": ["数值约束"], "category": "trace1.0"} +{"id": "154", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇新闻报道,标题为《马拉松赛事吸引越来越多的年轻人参加》\n1. 报道针对18至35岁的年轻读者群体;\n"}], "type": "trace", "description": "撰写一篇新闻报道,标题为《马拉松赛事吸引越来越多的年轻人参加》", "constraints": "1. 报道针对18至35岁的年轻读者群体;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 报道针对18至35岁的年轻读者群体;"], "levels2": ["受众目标约束"], "category": "trace1.0"} +{"id": "155", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "分析水稻种植区不同湿地生态的差异,并提出针对豫东地区水稻种植生态环境优化的策略。\n1. 优化策略至少包含3条,采用编号列表形式;\n"}], "type": "trace", "description": "分析水稻种植区不同湿地生态的差异,并提出针对豫东地区水稻种植生态环境优化的策略。", "constraints": "1. 优化策略至少包含3条,采用编号列表形式;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 优化策略至少包含3条,采用编号列表形式;"], "levels2": ["编号和列表约束"], "category": "trace1.0"} +{"id": "156", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "详细描述如何精确地制作一杯美味的意式浓缩咖啡,整个过程需控制在10个步骤内,且描述清晰易懂,适合咖啡新手操作。\n1. 语气需正式、指导性强,适合初学者操作,让读者能够轻松上手并完成制作一杯美味的意式浓缩咖啡。\n"}], "type": "trace", "description": "详细描述如何精确地制作一杯美味的意式浓缩咖啡,整个过程需控制在10个步骤内,且描述清晰易懂,适合咖啡新手操作。", "constraints": "1. 语气需正式、指导性强,适合初学者操作,让读者能够轻松上手并完成制作一杯美味的意式浓缩咖啡。", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 语气需正式、指导性强,适合初学者操作,让读者能够轻松上手并完成制作一杯美味的意式浓缩咖啡。"], "levels2": ["语气风格约束"], "category": "trace1.0"} +{"id": "157", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "提供一篇关于机器学习在医疗保健领域应用的科技文章\n1. 文章包含一段引言和一段结论,引言部分需简述机器学习的定义及其在医疗保健领域的潜力,结论部分需总结文章的主要观点,并强调机器学习对医疗保健的积极影响;\n"}], "type": "trace", "description": "提供一篇关于机器学习在医疗保健领域应用的科技文章", "constraints": "1. 文章包含一段引言和一段结论,引言部分需简述机器学习的定义及其在医疗保健领域的潜力,结论部分需总结文章的主要观点,并强调机器学习对医疗保健的积极影响;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 文章包含一段引言和一段结论,引言部分需简述机器学习的定义及其在医疗保健领域的潜力,结论部分需总结文章的主要观点,并强调机器学习对医疗保健的积极影响;"], "levels2": ["层次化结构约束"], "category": "trace1.0"} +{"id": "158", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "对长江流域过去30年的洪涝灾害进行详细评估,报告应包含引言、灾害概述、影响分析、趋势预测和结论等部分。\n1. 未来几十年的走势预测需以列表形式列出可能的情况和概率;\n"}], "type": "trace", "description": "对长江流域过去30年的洪涝灾害进行详细评估,报告应包含引言、灾害概述、影响分析、趋势预测和结论等部分。", "constraints": "1. 未来几十年的走势预测需以列表形式列出可能的情况和概率;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 未来几十年的走势预测需以列表形式列出可能的情况和概率;"], "levels2": ["编号和列表约束"], "category": "trace1.0"} +{"id": "159", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创作一首五言或七言律诗\n1. 整体诗歌结构需符合五言或七言律诗的格律要求,包括平仄和押韵;\n"}], "type": "trace", "description": "创作一首五言或七言律诗", "constraints": "1. 整体诗歌结构需符合五言或七言律诗的格律要求,包括平仄和押韵;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 整体诗歌结构需符合五言或七言律诗的格律要求,包括平仄和押韵;"], "levels2": ["语法结构约束"], "category": "trace1.0"} +{"id": "160", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一份精炼且专业的LinkedIn推荐信\n1. 推荐信中需要使用法语和英语两种语言进行穿插描述,以突出其多语言环境下的适应能力和专业素养;\n"}], "type": "trace", "description": "撰写一份精炼且专业的LinkedIn推荐信", "constraints": "1. 推荐信中需要使用法语和英语两种语言进行穿插描述,以突出其多语言环境下的适应能力和专业素养;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 推荐信中需要使用法语和英语两种语言进行穿插描述,以突出其多语言环境下的适应能力和专业素养;"], "levels2": ["多语言约束"], "category": "trace1.0"} +{"id": "161", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "你是一个知识问答系统\n1. 参考下面所给知识回答问题。\n\n【文档名】瑜伽垫 185 厘米 ⨯ 65 厘米 ⨯ 4 毫米 曼荼罗\n【标题】瑜伽垫 185 厘米 ⨯ 65 厘米 ⨯ 4 毫米 曼荼罗\n# 瑜伽垫 185 厘米 ⨯ 65 厘米 ⨯ 4 毫米 曼荼罗\n【正文】旨在为各类瑜伽练习提供稳定性,同时便于携带。  我们的瑜伽垫长185 厘米, 65 厘米宽,4 毫米厚。重1.6千克。|清洗瑜伽垫时,先使用温肥皂水擦拭,自然风干后卷起。请勿置于阳光下暴晒。不要机洗!|今年秋天,迪卡侬的 Kimjaly 品牌将推出一系列全新的技术、负责任的设计产品,专为进阶瑜伽人士打造。迪卡侬瑜伽系列的诞生是为了提供更专业的产品,这些产品的目标客户是负责任、参与度高、要求高的用户,他们希望获得瑜伽社区的归属感。|满足瑜伽人士的需求是推动高端系列发展的动力。Kimjaly 设计团队希望形成宛如第二层皮肤的效果,重视材料的弹性与不透明度、改善产品的感官(包括触感、气味、手指滑动时的声音、颜色)、透气效果以及使用时的支撑感。|几年来,迪卡侬瑜伽品牌一直在举办研讨会,并与瑜伽老师举行各式会议,从而确切了解高级瑜伽人士的需求。我们的研究和设计团队仔细考虑了用户的各项期望,将它们结合起来创造出高端系列。\n**catchline**: 这款软木垫既稳定、有抓地牢靠,能让你在练习姿势时感到舒适和稳定,而且重量很轻,便于携带!中央的曼陀罗设计,将激发你对各类体式的灵感。\n**composition_data**: 泡沫层\n65% 发泡橡胶, 35% 发泡苯乙烯丁二烯橡胶\n顶层\n100% 科克\n**size**: 均码\n**商品链接url**: nan\n# Inputs:\n推荐5种适合瑜伽练习的瑜伽垫,并列出其抓地力、舒适程度和价格等详细信息。\n"}], "type": "trace", "description": "你是一个知识问答系统", "constraints": "1. 参考下面所给知识回答问题。\n\n【文档名】瑜伽垫 185 厘米 ⨯ 65 厘米 ⨯ 4 毫米 曼荼罗\n【标题】瑜伽垫 185 厘米 ⨯ 65 厘米 ⨯ 4 毫米 曼荼罗\n# 瑜伽垫 185 厘米 ⨯ 65 厘米 ⨯ 4 毫米 曼荼罗\n【正文】旨在为各类瑜伽练习提供稳定性,同时便于携带。  我们的瑜伽垫长185 厘米, 65 厘米宽,4 毫米厚。重1.6千克。|清洗瑜伽垫时,先使用温肥皂水擦拭,自然风干后卷起。请勿置于阳光下暴晒。不要机洗!|今年秋天,迪卡侬的 Kimjaly 品牌将推出一系列全新的技术、负责任的设计产品,专为进阶瑜伽人士打造。迪卡侬瑜伽系列的诞生是为了提供更专业的产品,这些产品的目标客户是负责任、参与度高、要求高的用户,他们希望获得瑜伽社区的归属感。|满足瑜伽人士的需求是推动高端系列发展的动力。Kimjaly 设计团队希望形成宛如第二层皮肤的效果,重视材料的弹性与不透明度、改善产品的感官(包括触感、气味、手指滑动时的声音、颜色)、透气效果以及使用时的支撑感。|几年来,迪卡侬瑜伽品牌一直在举办研讨会,并与瑜伽老师举行各式会议,从而确切了解高级瑜伽人士的需求。我们的研究和设计团队仔细考虑了用户的各项期望,将它们结合起来创造出高端系列。\n**catchline**: 这款软木垫既稳定、有抓地牢靠,能让你在练习姿势时感到舒适和稳定,而且重量很轻,便于携带!中央的曼陀罗设计,将激发你对各类体式的灵感。\n**composition_data**: 泡沫层\n65% 发泡橡胶, 35% 发泡苯乙烯丁二烯橡胶\n顶层\n100% 科克\n**size**: 均码\n**商品链接url**: nan", "input": "推荐5种适合瑜伽练习的瑜伽垫,并列出其抓地力、舒适程度和价格等详细信息。", "constraints_num": 1, "constraints_splits": ["1. 参考下面所给知识回答问题。\n\n【文档名】瑜伽垫 185 厘米 ⨯ 65 厘米 ⨯ 4 毫米 曼荼罗\n【标题】瑜伽垫 185 厘米 ⨯ 65 厘米 ⨯ 4 毫米 曼荼罗\n# 瑜伽垫 185 厘米 ⨯ 65 厘米 ⨯ 4 毫米 曼荼罗\n【正文】旨在为各类瑜伽练习提供稳定性,同时便于携带。  我们的瑜伽垫长185 厘米, 65 厘米宽,4 毫米厚。重1.6千克。|清洗瑜伽垫时,先使用温肥皂水擦拭,自然风干后卷起。请勿置于阳光下暴晒。不要机洗!|今年秋天,迪卡侬的 Kimjaly 品牌将推出一系列全新的技术、负责任的设计产品,专为进阶瑜伽人士打造。迪卡侬瑜伽系列的诞生是为了提供更专业的产品,这些产品的目标客户是负责任、参与度高、要求高的用户,他们希望获得瑜伽社区的归属感。|满足瑜伽人士的需求是推动高端系列发展的动力。Kimjaly 设计团队希望形成宛如第二层皮肤的效果,重视材料的弹性与不透明度、改善产品的感官(包括触感、气味、手指滑动时的声音、颜色)、透气效果以及使用时的支撑感。|几年来,迪卡侬瑜伽品牌一直在举办研讨会,并与瑜伽老师举行各式会议,从而确切了解高级瑜伽人士的需求。我们的研究和设计团队仔细考虑了用户的各项期望,将它们结合起来创造出高端系列。\n**catchline**: 这款软木垫既稳定、有抓地牢靠,能让你在练习姿势时感到舒适和稳定,而且重量很轻,便于携带!中央的曼陀罗设计,将激发你对各类体式的灵感。\n**composition_data**: 泡沫层\n65% 发泡橡胶, 35% 发泡苯乙烯丁二烯橡胶\n顶层\n100% 科克\n**size**: 均码\n**商品链接url**: nan"], "levels2": ["文本背景信息约束"], "category": "trace1.0"} +{"id": "162", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "在给定的数据集中,利用机器学习模型对在线广告点击率进行预测。\n1. 模型预测结果中未包含置信区间,或使用的算法少于3种,或报告中缺少关键的模型评估指标。\n"}], "type": "trace", "description": "在给定的数据集中,利用机器学习模型对在线广告点击率进行预测。", "constraints": "1. 模型预测结果中未包含置信区间,或使用的算法少于3种,或报告中缺少关键的模型评估指标。", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 模型预测结果中未包含置信区间,或使用的算法少于3种,或报告中缺少关键的模型评估指标。"], "levels2": ["负例约束"], "category": "trace1.0"} +{"id": "163", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "对给定的数值列表执行升序排序,并以逗号分隔的格式返回排序后的结果\n1. 排序后的输出应遵循主谓宾的语法结构,例如:\"排序后的列表为:X, X, X, X, X\";\n# Inputs:\n10, 5, 8, 2, 4\n"}], "type": "trace", "description": "对给定的数值列表执行升序排序,并以逗号分隔的格式返回排序后的结果", "constraints": "1. 排序后的输出应遵循主谓宾的语法结构,例如:\"排序后的列表为:X, X, X, X, X\";", "input": "10, 5, 8, 2, 4", "constraints_num": 1, "constraints_splits": ["1. 排序后的输出应遵循主谓宾的语法结构,例如:\"排序后的列表为:X, X, X, X, X\";"], "levels2": ["语法结构约束"], "category": "trace1.0"} +{"id": "164", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "从一名医疗专家的角度,解释手术患者在术后疼痛管理方面存在的问题和挑战,以及针对这些问题的应对措施。\n1. 以编号列表的形式进行阐述,确保内容清晰、有条理;\n"}], "type": "trace", "description": "从一名医疗专家的角度,解释手术患者在术后疼痛管理方面存在的问题和挑战,以及针对这些问题的应对措施。", "constraints": "1. 以编号列表的形式进行阐述,确保内容清晰、有条理;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 以编号列表的形式进行阐述,确保内容清晰、有条理;"], "levels2": ["编号和列表约束"], "category": "trace1.0"} +{"id": "165", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "精简给定文本至不超过15个单词\n1. 保持原句主谓宾结构完整;\n# Inputs:\n\"太阳每天早晨从东方升起,每天晚上从西方落下,给我们带来交替的昼夜循环。\"\n"}], "type": "trace", "description": "精简给定文本至不超过15个单词", "constraints": "1. 保持原句主谓宾结构完整;", "input": "\"太阳每天早晨从东方升起,每天晚上从西方落下,给我们带来交替的昼夜循环。\"", "constraints_num": 1, "constraints_splits": ["1. 保持原句主谓宾结构完整;"], "levels2": ["语法结构约束"], "category": "trace1.0"} +{"id": "166", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以学术论文摘要的形式评估眼底免疫治疗在治疗糖尿病性黄斑水肿方面的治疗效果\n1. 使用编号和列表约束来清晰地展示主要发现和结论,结构包括研究背景与目的、方法、结果、结论与展望;\n"}], "type": "trace", "description": "以学术论文摘要的形式评估眼底免疫治疗在治疗糖尿病性黄斑水肿方面的治疗效果", "constraints": "1. 使用编号和列表约束来清晰地展示主要发现和结论,结构包括研究背景与目的、方法、结果、结论与展望;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 使用编号和列表约束来清晰地展示主要发现和结论,结构包括研究背景与目的、方法、结果、结论与展望;"], "levels2": ["编号和列表约束"], "category": "trace1.0"} +{"id": "167", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创作一段类似短篇小说故事的内容,围绕“他打开了那扇门,然后他的生活彻底改变了。”这句话展开。\n1. 使用引人入胜的叙述风格,结合比喻和拟人等修辞手法;\n"}], "type": "trace", "description": "创作一段类似短篇小说故事的内容,围绕“他打开了那扇门,然后他的生活彻底改变了。”这句话展开。", "constraints": "1. 使用引人入胜的叙述风格,结合比喻和拟人等修辞手法;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 使用引人入胜的叙述风格,结合比喻和拟人等修辞手法;"], "levels2": ["语言特征约束"], "category": "trace1.0"} +{"id": "168", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "完成一个包含特定元素的故事\n1. 故事必须以\"这就是我在森林中找到的神奇之物,它不仅改变了我,也让我明白了……\"作为结尾;\n# Inputs:\n在森林里散步的时候,我发现了一个神奇的东西。\n"}], "type": "trace", "description": "完成一个包含特定元素的故事", "constraints": "1. 故事必须以\"这就是我在森林中找到的神奇之物,它不仅改变了我,也让我明白了……\"作为结尾;", "input": "在森林里散步的时候,我发现了一个神奇的东西。", "constraints_num": 1, "constraints_splits": ["1. 故事必须以\"这就是我在森林中找到的神奇之物,它不仅改变了我,也让我明白了……\"作为结尾;"], "levels2": ["模版约束"], "category": "trace1.0"} +{"id": "169", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "描述如何评估某地土壤肥力\n1. 报告中需使用编号列表来概述评估步骤和分析过程;\n"}], "type": "trace", "description": "描述如何评估某地土壤肥力", "constraints": "1. 报告中需使用编号列表来概述评估步骤和分析过程;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 报告中需使用编号列表来概述评估步骤和分析过程;"], "levels2": ["编号和列表约束"], "category": "trace1.0"} +{"id": "170", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "你是燃气公司电话导航的在线客服,主要负责:排查燃气设备无法使用的原因,并协助用户进行报修;排查燃气表的故障\n1. 参考下面流程回答问题。\n\n燃气-导航-燃气无法使用排障流程的处理流程:\nflowchart TD\nA1([开始]) -- 燃气使用有问题 --> B1[收集信息: 设备名称]\nB1 --> C1[询问用户家里是单个燃气设备还是多个]\nC1 -- 多个 --> D1[询问用户是全部燃气设备不能用,还是部分设备不能用?]\nC1 -- 单个 --> E1[判断是热水器、采暖炉还是燃气灶]\nE1 -- 热水器 or 采暖炉 --> F1[告诉用户,马上为他转接人工服务]\nE1 -- 燃气灶 --> G1[询问用户燃气灶是一边不打火还是两边不打火呢?]\nG1 -- 一边不打火 --> F1\nG1 -- 两边不打火 --> H1[询问用户燃气表前后两个阀门是打开的吗?]\nH1 -- 非打开状态 --> I1[严格回复: 请您将阀门打开,注意控制力度,如果打不开,请您预约师傅上门处理,下单方式稍后发短信给您,请注意查收。请问您还有其他业务需要咨询吗?]\nH1 -- 打开状态 --> J1[询问用户有燃气报警器吗?]\nJ1 -- 有 --> K1[询问用户能闻到燃气的味道吗?]\nK1 -- 有 --> L1[告诉用户请关闭燃气阀门,开窗通风,马上为您转接抢险专线]\nK1 -- 无 --> F1\nJ1 -- 无 --> M1[询问用户燃气表是卡表、物联表,还是普表的?]\nM1 -- 卡表 --> N1[严格回复: 好的,燃气灶不能用,请您插卡后看表上的显示,如果显示0.00,请您购买燃气;显示L欧,请您更换燃气表4节5号全新电池。如果燃气灶电池使用超过3至6个月,也需要更换,具体操作方法稍后发短信给您,请注意查收。请问您还有其他业务需要咨询吗?]\nM1 -- 物联表 --> O1[严格回复: 好的,请您按下燃气表上的按钮,没有显示表示表电量不足,请更换4节5号全新电池,显示E-1003,请购买燃气。如果燃气灶电池使用超过3个月,请更换全新的1号电池。物联表故障排除方法稍后发短信给您,请注意查收。请问您还有其他业务需要咨询吗?]\nM1 -- 普表 --> P1[严格回复: 如果您家燃气灶电池使用超过3个月,可能会出现电量不足无法打火的情况,请您更换全新的1号电池。如果更换新电池后仍无法使用,请您预约师傅上门维修,预约方法稍后发短信给您,请注意查收。请问您还有其他业务需要咨询吗?]\nD1 -- 部分 --> Q1[询问用户有问题设备前的燃气阀门是打开的吗]\nQ1 -- 未打开 --> R1[请用户打开阀门后再尝试使用燃气,如果还不能使用再和我们联系。]\nQ1 -- 已打开 --> S1[判断有问题的设备是不是燃气灶]\nS1 -- 否 --> F1\nS1 -- 是 --> T1[询问用户是一边打不着火还是两边?]\nT1 -- 一边 --> F1\nT1 -- 两边 --> U1[严格回复: 好的,只有燃气灶具不能使用,是燃气灶本身的问题,灶具电池使用超过3个月会出现电池电量不足,无法打火,请您更换全新的1号电池。更换完电池还是不能使用,请联系灶具对应品牌的售后处理。]\nD1 -- 所有 --> V1[询问用户燃气阀门都打开了吗]\nV1 -- 未打开 --> W1[严格回复: 请您将阀门打开,注意控制力度,如果打不开,请您预约师傅上门处理,下单方式稍后发短信给您,请注意查收。]\nV1 -- 已打开 --> X1[询问用户有燃气报警器吗?]\nX1 -- 有 --> K1\nX1 -- 无 --> A11[询问用户燃气表是卡表、物联表,还是普表的?]\nA11 -- 卡表 --> B11[严格回复: 好的,请您插卡后看表上的显示,如果显示0.00,请您购买燃气;显示L 欧,请您更换燃气表4节5号全新电池,具体操作方法稍后发短信给您,请注意查收。]\nA11 -- 物联表 --> C11[严格回复: 好的,请您按下燃气表上的按钮,没有显示表示表电量不足,请更换4节5号全新电池,显示E-1003,请购买燃气。物联表故障排除方法稍后发短信给您,请注意查收。]\nA11 -- 普表 --> D11[严格回复: 燃气无法使用需要安排师傅入户处理,业务办理方式稍后发短信给您,请您按照短信指引自助预约师傅上门维修。]\n\n流程中-- --中间表示用户意图或跳转条件,部分用户意图及其示例话术为:\n\"普表\": [\"我家里是普通的燃气表\", \"就是平常的燃气表呀\", \"是那种传统的机械燃气表\"]\n\"卡表\": [\"是可以插卡用的\", \"那种IC卡燃气表\", \"是通过IC卡来充气的\"]\n\"物联表\": [\"我这个不用卡的\", \"用手机来充气就行\", \"我这是物联表,不用之前的那种插卡的了\"]\n\n流程中各个参数信息为:\n\"设备名称\": \"设备名称,出现问题的燃气设备,例如燃气灶、热水器或采暖炉\"\n\n\n燃气-导航-燃气表排障流程的处理流程:\nflowchart TD\nA2[开始] -- 燃气表充值未到账 --> B2[询问用户是物联表、卡表、普表还是其他]\nB2 -- 物联表 --> C2[严格回复: 好的,物联表充值后您可以长按表上按钮3到5秒或者重新安装表电池来进行手动充值,如果之前表内有余额,充值的金额也会在第二天自动到帐,具体操作方法稍后发短信给您,请注意查收。]\nB2 -- 卡表 --> D2[询问用户插卡时有滴的响声吗?]\nD2 -- 有 --> E2[严格回复: 好的,请您先将燃气卡拔出,等待燃气表液晶屏没有任何显示后再将卡重新插进表内,提醒您,插卡进表后不能太快拔卡。如果操作后气量还是无法全部充到表内,请您预约师傅上门处理,具体操作方法稍后发短信给您,请注意查收。]\nD2 -- 无 --> F2[询问用户燃气表上显示数字、L2 O2 还是没有任何显示?]\nF2 -- 无显示 --> G2[严格回复: 好的,燃气表插卡不显示是燃气表没电了,请您打开液晶屏下方的电池盒盖,更换4节5号电池,上边两节正极向右,下边两节正极向左,更换成功后会听到滴滴两声响和齿轮转动的声音。更换电池方法稍后发短信给您,请注意查收。]\nF2 -- 显示数字 --> H2[严格回复: 好的,请您先拔出燃气卡,用纸片擦拭燃气卡芯片,等待表液晶屏上没有任何显示后,将燃气卡反过来插,详细的操作方法稍后发短信给您,请注意查收。]\nF2 -- 显示LO --> I2[严格回复: 好的,燃气表显示L O 是燃气表电池没电了。请您打开液晶屏下方的电池盒盖,更换4节5号电池,上边两节正极向右,下边两节正极向左,更换成功后会听到滴滴两声响和齿轮转动的声音。更换电池方法稍后发短信给您,请注意查收。]\nB2 -- 普表 --> J2[告诉用户马上转接人工服务]\nB2 -- 其他分支 --> K2[询问用户燃气表是插卡的还是其他的?]\nK2 -- 插卡 --> D2\nK2 -- 其他 --> J2\nA2[开始] -- 燃气表换电池 --> L2[询问用户是物联表、卡表、还是其他]\nL2 -- 其他 --> J2\nL2 -- 卡表 --> M2[严格回复: 好的,您使用的是IC卡表,请您打开液晶屏下方的电池盒盖,更换4节5号电池,上边两节正极向右,下边两节正极向左,更换成功后会听到滴滴两声响和齿轮转动的声音。更换方法稍后发短信给您,请注意查收。]\nL2 -- 物联表 --> N2[严格回复: 好的,带按钮的是物联表,电池盒在燃气表液晶屏下方,请您双手按住表两侧凹槽向外拉开,更换4节5号电池,等待液晶屏上显示的字母完全消失后,按一下表按钮,液晶屏显示剩余金额,表示电池更换成功。具体更换方法稍后发短信给您,请注意查收。]\nA2[开始] -- 燃气表换表 --> O2[询问用户是小区通知统一换表还是安检师傅或营业员告知您需要换表?]\nO2 -- 小区统一 or 通知 --> P2[回复用户换表业务需要安排师傅入户处理,业务办理方式稍后发短信给您,请注意查收。]\nO2 -- 其他 --> J2\nA2[开始] -- 怀疑表快 or 补气 --> J2\nA2[开始] -- 燃气表响 --> Q2[询问用户燃气表是“嘀嘀”的响还是“咔咔”齿轮转动的响声?]\nQ2 -- 其他 --> J2\nQ2 -- 咔咔 --> R2[回复用户燃气表喀喀响是齿轮不正常转动的声音,需要预约师傅入户维修,预约方式稍后发短信给您,请注意查收。]\nQ2 -- 滴滴 --> S2[询问用户燃气表的液晶屏上是显示 L2 O2 吗?]\nS2 -- 是 --> T2[严格回复: 好的,燃气表显示 L 欧 是电池电量低,电池盒在液晶屏下方,请您打开电池盒盖,更换4节5号电池,更换成功后会听到滴滴两声响和齿轮转动的声音。具体更换方法稍后发短信给您,请注意查收。]\nS2 -- 不是 --> U2[询问用户是燃气使用过程中响,还是不使用燃气的时候响呢?]\nU2 -- 使用时 --> V2[严格回复: 好的,燃气表在使用过程中响,请您稍候插卡查看表液晶屏,显示少于10方,请尽快购气,显示多于10方,需要安排师傅上门检测,具体操作方法稍后发短信给您,请注意查收。]\nU2 -- 停用时 --> W2[严格回复: 请您将燃气表电池取出,如果不响,请更换四节五号电池;如果还响,可能是您楼上楼下邻居家表响的管道传音,没有安全隐患,请正常使用。更换电池的操作方法稍后发短信给您,请注意查收。]\nA2[开始] -- 燃气表不显示 --> X2[询问用户是物联表、卡表、还是其他]\nX2 -- 其他 --> J2\nX2 -- 物联表 --> Y2[严格回复: 好的,您按完按钮,液晶屏没有任何显示,说明燃气表电池电量低,请您更换燃气表下方的,4节5号全新的电池,具体操作方法稍后发短信给您,请注意查收。]\nX2 -- 卡表 -->Z2[询问用户插卡了吗?]\nZ2 -- 已插卡 --> A12[严格回复: 好的,燃气表液晶屏不显示,是燃气表电池没电了。请您打开液晶屏下方的电池盒盖,更换4节5号电池,上边两节正极向右,下边两节正极向左,更换成功后会听到滴滴两声响和齿轮转动的声音。更换电池方法稍后发短信给您,请注意查收。]\nZ2 -- 未插卡 --> B12[严格回复: 好的,燃气表有节电功能,平时液晶屏不显示。如果插卡后显示0.00,请购买燃气;显示L O或者没有显示,请更换燃气表4节5号全新的电池,电池在液晶屏下方的电池盒内。]\nA2[开始] -- 燃气表显示乱码 --> C12[询问用户是物联表、卡表、还是其他]\nC12 -- 其他 --> J2\nC12 -- 物联表 --> D12[严格回复: 好的,稍后请您按下表上的按钮,如果显示E-1003,请购买燃气,其它显示请重新安装表电池。具体的故障排除方法,稍后发短信给您,请注意查收。]\nC12 -- 卡表 --> E12[询问用户燃气表液晶屏上显示LO,还是其它内容?]\nE12 -- 其他 --> F12[回复用户燃气表显示乱码请您预约师傅上门维修,具体下单方法稍后发短信给您,请注意查收]\nE12 -- 显示LO --> G12[严格回复: 好的,燃气表显示L 欧 是电池电量低,电池盒在液晶屏下方,请您打开电池盒盖,更换4节5号电池,更换成功后会听到滴滴两声响和齿轮转动的声音。具体更换方法稍后发短信给您,请注意查收。]\n\n流程中-- --中间表示用户意图或跳转条件,部分用户意图及其示例话术为:\n\"普表\": [\"我家里是普通的燃气表\", \"就是平常的燃气表呀\", \"是那种传统的机械燃气表\"]\n\"卡表\": [\"是可以插卡用的\", \"那种IC卡燃气表\", \"是通过IC卡来充气的\"]\n\"物联表\": [\"我这个不用卡的\", \"用手机来充气就行\", \"我这是物联表,不用之前的那种插卡的了\"]\n\"怀疑表快\": [\"表走的有点快\", \"气用的快\", \"给我看一下表是不是坏了,比之前用的多\"]\n\"燃气表响\": [\"然后,他的气表老是响是,怎么回事?\", \"燃气表一直鸣叫,不知道是什么回事\", \"我这个燃气怎么一直响?\", \"为什么我家燃气表一直在响\"]\n\"补气\": [\"我表里之前的气还没补呢\", \"作废的表需要补气\", \"卡里面的气没有充到表里,需要补一下气\"]\n\n\n请记住当前时间为:2034-10-18 06:42:22 星期三\n# Inputs:\n你好,请问能不能帮我详细解释一下燃气费用是怎么算的?\n"}], "type": "trace", "description": "你是燃气公司电话导航的在线客服,主要负责:排查燃气设备无法使用的原因,并协助用户进行报修;排查燃气表的故障", "constraints": "1. 参考下面流程回答问题。\n\n燃气-导航-燃气无法使用排障流程的处理流程:\nflowchart TD\nA1([开始]) -- 燃气使用有问题 --> B1[收集信息: 设备名称]\nB1 --> C1[询问用户家里是单个燃气设备还是多个]\nC1 -- 多个 --> D1[询问用户是全部燃气设备不能用,还是部分设备不能用?]\nC1 -- 单个 --> E1[判断是热水器、采暖炉还是燃气灶]\nE1 -- 热水器 or 采暖炉 --> F1[告诉用户,马上为他转接人工服务]\nE1 -- 燃气灶 --> G1[询问用户燃气灶是一边不打火还是两边不打火呢?]\nG1 -- 一边不打火 --> F1\nG1 -- 两边不打火 --> H1[询问用户燃气表前后两个阀门是打开的吗?]\nH1 -- 非打开状态 --> I1[严格回复: 请您将阀门打开,注意控制力度,如果打不开,请您预约师傅上门处理,下单方式稍后发短信给您,请注意查收。请问您还有其他业务需要咨询吗?]\nH1 -- 打开状态 --> J1[询问用户有燃气报警器吗?]\nJ1 -- 有 --> K1[询问用户能闻到燃气的味道吗?]\nK1 -- 有 --> L1[告诉用户请关闭燃气阀门,开窗通风,马上为您转接抢险专线]\nK1 -- 无 --> F1\nJ1 -- 无 --> M1[询问用户燃气表是卡表、物联表,还是普表的?]\nM1 -- 卡表 --> N1[严格回复: 好的,燃气灶不能用,请您插卡后看表上的显示,如果显示0.00,请您购买燃气;显示L欧,请您更换燃气表4节5号全新电池。如果燃气灶电池使用超过3至6个月,也需要更换,具体操作方法稍后发短信给您,请注意查收。请问您还有其他业务需要咨询吗?]\nM1 -- 物联表 --> O1[严格回复: 好的,请您按下燃气表上的按钮,没有显示表示表电量不足,请更换4节5号全新电池,显示E-1003,请购买燃气。如果燃气灶电池使用超过3个月,请更换全新的1号电池。物联表故障排除方法稍后发短信给您,请注意查收。请问您还有其他业务需要咨询吗?]\nM1 -- 普表 --> P1[严格回复: 如果您家燃气灶电池使用超过3个月,可能会出现电量不足无法打火的情况,请您更换全新的1号电池。如果更换新电池后仍无法使用,请您预约师傅上门维修,预约方法稍后发短信给您,请注意查收。请问您还有其他业务需要咨询吗?]\nD1 -- 部分 --> Q1[询问用户有问题设备前的燃气阀门是打开的吗]\nQ1 -- 未打开 --> R1[请用户打开阀门后再尝试使用燃气,如果还不能使用再和我们联系。]\nQ1 -- 已打开 --> S1[判断有问题的设备是不是燃气灶]\nS1 -- 否 --> F1\nS1 -- 是 --> T1[询问用户是一边打不着火还是两边?]\nT1 -- 一边 --> F1\nT1 -- 两边 --> U1[严格回复: 好的,只有燃气灶具不能使用,是燃气灶本身的问题,灶具电池使用超过3个月会出现电池电量不足,无法打火,请您更换全新的1号电池。更换完电池还是不能使用,请联系灶具对应品牌的售后处理。]\nD1 -- 所有 --> V1[询问用户燃气阀门都打开了吗]\nV1 -- 未打开 --> W1[严格回复: 请您将阀门打开,注意控制力度,如果打不开,请您预约师傅上门处理,下单方式稍后发短信给您,请注意查收。]\nV1 -- 已打开 --> X1[询问用户有燃气报警器吗?]\nX1 -- 有 --> K1\nX1 -- 无 --> A11[询问用户燃气表是卡表、物联表,还是普表的?]\nA11 -- 卡表 --> B11[严格回复: 好的,请您插卡后看表上的显示,如果显示0.00,请您购买燃气;显示L 欧,请您更换燃气表4节5号全新电池,具体操作方法稍后发短信给您,请注意查收。]\nA11 -- 物联表 --> C11[严格回复: 好的,请您按下燃气表上的按钮,没有显示表示表电量不足,请更换4节5号全新电池,显示E-1003,请购买燃气。物联表故障排除方法稍后发短信给您,请注意查收。]\nA11 -- 普表 --> D11[严格回复: 燃气无法使用需要安排师傅入户处理,业务办理方式稍后发短信给您,请您按照短信指引自助预约师傅上门维修。]\n\n流程中-- --中间表示用户意图或跳转条件,部分用户意图及其示例话术为:\n\"普表\": [\"我家里是普通的燃气表\", \"就是平常的燃气表呀\", \"是那种传统的机械燃气表\"]\n\"卡表\": [\"是可以插卡用的\", \"那种IC卡燃气表\", \"是通过IC卡来充气的\"]\n\"物联表\": [\"我这个不用卡的\", \"用手机来充气就行\", \"我这是物联表,不用之前的那种插卡的了\"]\n\n流程中各个参数信息为:\n\"设备名称\": \"设备名称,出现问题的燃气设备,例如燃气灶、热水器或采暖炉\"\n\n\n燃气-导航-燃气表排障流程的处理流程:\nflowchart TD\nA2[开始] -- 燃气表充值未到账 --> B2[询问用户是物联表、卡表、普表还是其他]\nB2 -- 物联表 --> C2[严格回复: 好的,物联表充值后您可以长按表上按钮3到5秒或者重新安装表电池来进行手动充值,如果之前表内有余额,充值的金额也会在第二天自动到帐,具体操作方法稍后发短信给您,请注意查收。]\nB2 -- 卡表 --> D2[询问用户插卡时有滴的响声吗?]\nD2 -- 有 --> E2[严格回复: 好的,请您先将燃气卡拔出,等待燃气表液晶屏没有任何显示后再将卡重新插进表内,提醒您,插卡进表后不能太快拔卡。如果操作后气量还是无法全部充到表内,请您预约师傅上门处理,具体操作方法稍后发短信给您,请注意查收。]\nD2 -- 无 --> F2[询问用户燃气表上显示数字、L2 O2 还是没有任何显示?]\nF2 -- 无显示 --> G2[严格回复: 好的,燃气表插卡不显示是燃气表没电了,请您打开液晶屏下方的电池盒盖,更换4节5号电池,上边两节正极向右,下边两节正极向左,更换成功后会听到滴滴两声响和齿轮转动的声音。更换电池方法稍后发短信给您,请注意查收。]\nF2 -- 显示数字 --> H2[严格回复: 好的,请您先拔出燃气卡,用纸片擦拭燃气卡芯片,等待表液晶屏上没有任何显示后,将燃气卡反过来插,详细的操作方法稍后发短信给您,请注意查收。]\nF2 -- 显示LO --> I2[严格回复: 好的,燃气表显示L O 是燃气表电池没电了。请您打开液晶屏下方的电池盒盖,更换4节5号电池,上边两节正极向右,下边两节正极向左,更换成功后会听到滴滴两声响和齿轮转动的声音。更换电池方法稍后发短信给您,请注意查收。]\nB2 -- 普表 --> J2[告诉用户马上转接人工服务]\nB2 -- 其他分支 --> K2[询问用户燃气表是插卡的还是其他的?]\nK2 -- 插卡 --> D2\nK2 -- 其他 --> J2\nA2[开始] -- 燃气表换电池 --> L2[询问用户是物联表、卡表、还是其他]\nL2 -- 其他 --> J2\nL2 -- 卡表 --> M2[严格回复: 好的,您使用的是IC卡表,请您打开液晶屏下方的电池盒盖,更换4节5号电池,上边两节正极向右,下边两节正极向左,更换成功后会听到滴滴两声响和齿轮转动的声音。更换方法稍后发短信给您,请注意查收。]\nL2 -- 物联表 --> N2[严格回复: 好的,带按钮的是物联表,电池盒在燃气表液晶屏下方,请您双手按住表两侧凹槽向外拉开,更换4节5号电池,等待液晶屏上显示的字母完全消失后,按一下表按钮,液晶屏显示剩余金额,表示电池更换成功。具体更换方法稍后发短信给您,请注意查收。]\nA2[开始] -- 燃气表换表 --> O2[询问用户是小区通知统一换表还是安检师傅或营业员告知您需要换表?]\nO2 -- 小区统一 or 通知 --> P2[回复用户换表业务需要安排师傅入户处理,业务办理方式稍后发短信给您,请注意查收。]\nO2 -- 其他 --> J2\nA2[开始] -- 怀疑表快 or 补气 --> J2\nA2[开始] -- 燃气表响 --> Q2[询问用户燃气表是“嘀嘀”的响还是“咔咔”齿轮转动的响声?]\nQ2 -- 其他 --> J2\nQ2 -- 咔咔 --> R2[回复用户燃气表喀喀响是齿轮不正常转动的声音,需要预约师傅入户维修,预约方式稍后发短信给您,请注意查收。]\nQ2 -- 滴滴 --> S2[询问用户燃气表的液晶屏上是显示 L2 O2 吗?]\nS2 -- 是 --> T2[严格回复: 好的,燃气表显示 L 欧 是电池电量低,电池盒在液晶屏下方,请您打开电池盒盖,更换4节5号电池,更换成功后会听到滴滴两声响和齿轮转动的声音。具体更换方法稍后发短信给您,请注意查收。]\nS2 -- 不是 --> U2[询问用户是燃气使用过程中响,还是不使用燃气的时候响呢?]\nU2 -- 使用时 --> V2[严格回复: 好的,燃气表在使用过程中响,请您稍候插卡查看表液晶屏,显示少于10方,请尽快购气,显示多于10方,需要安排师傅上门检测,具体操作方法稍后发短信给您,请注意查收。]\nU2 -- 停用时 --> W2[严格回复: 请您将燃气表电池取出,如果不响,请更换四节五号电池;如果还响,可能是您楼上楼下邻居家表响的管道传音,没有安全隐患,请正常使用。更换电池的操作方法稍后发短信给您,请注意查收。]\nA2[开始] -- 燃气表不显示 --> X2[询问用户是物联表、卡表、还是其他]\nX2 -- 其他 --> J2\nX2 -- 物联表 --> Y2[严格回复: 好的,您按完按钮,液晶屏没有任何显示,说明燃气表电池电量低,请您更换燃气表下方的,4节5号全新的电池,具体操作方法稍后发短信给您,请注意查收。]\nX2 -- 卡表 -->Z2[询问用户插卡了吗?]\nZ2 -- 已插卡 --> A12[严格回复: 好的,燃气表液晶屏不显示,是燃气表电池没电了。请您打开液晶屏下方的电池盒盖,更换4节5号电池,上边两节正极向右,下边两节正极向左,更换成功后会听到滴滴两声响和齿轮转动的声音。更换电池方法稍后发短信给您,请注意查收。]\nZ2 -- 未插卡 --> B12[严格回复: 好的,燃气表有节电功能,平时液晶屏不显示。如果插卡后显示0.00,请购买燃气;显示L O或者没有显示,请更换燃气表4节5号全新的电池,电池在液晶屏下方的电池盒内。]\nA2[开始] -- 燃气表显示乱码 --> C12[询问用户是物联表、卡表、还是其他]\nC12 -- 其他 --> J2\nC12 -- 物联表 --> D12[严格回复: 好的,稍后请您按下表上的按钮,如果显示E-1003,请购买燃气,其它显示请重新安装表电池。具体的故障排除方法,稍后发短信给您,请注意查收。]\nC12 -- 卡表 --> E12[询问用户燃气表液晶屏上显示LO,还是其它内容?]\nE12 -- 其他 --> F12[回复用户燃气表显示乱码请您预约师傅上门维修,具体下单方法稍后发短信给您,请注意查收]\nE12 -- 显示LO --> G12[严格回复: 好的,燃气表显示L 欧 是电池电量低,电池盒在液晶屏下方,请您打开电池盒盖,更换4节5号电池,更换成功后会听到滴滴两声响和齿轮转动的声音。具体更换方法稍后发短信给您,请注意查收。]\n\n流程中-- --中间表示用户意图或跳转条件,部分用户意图及其示例话术为:\n\"普表\": [\"我家里是普通的燃气表\", \"就是平常的燃气表呀\", \"是那种传统的机械燃气表\"]\n\"卡表\": [\"是可以插卡用的\", \"那种IC卡燃气表\", \"是通过IC卡来充气的\"]\n\"物联表\": [\"我这个不用卡的\", \"用手机来充气就行\", \"我这是物联表,不用之前的那种插卡的了\"]\n\"怀疑表快\": [\"表走的有点快\", \"气用的快\", \"给我看一下表是不是坏了,比之前用的多\"]\n\"燃气表响\": [\"然后,他的气表老是响是,怎么回事?\", \"燃气表一直鸣叫,不知道是什么回事\", \"我这个燃气怎么一直响?\", \"为什么我家燃气表一直在响\"]\n\"补气\": [\"我表里之前的气还没补呢\", \"作废的表需要补气\", \"卡里面的气没有充到表里,需要补一下气\"]\n\n\n请记住当前时间为:2034-10-18 06:42:22 星期三", "input": "你好,请问能不能帮我详细解释一下燃气费用是怎么算的?", "constraints_num": 1, "constraints_splits": ["1. 参考下面流程回答问题。\n\n燃气-导航-燃气无法使用排障流程的处理流程:\nflowchart TD\nA1([开始]) -- 燃气使用有问题 --> B1[收集信息: 设备名称]\nB1 --> C1[询问用户家里是单个燃气设备还是多个]\nC1 -- 多个 --> D1[询问用户是全部燃气设备不能用,还是部分设备不能用?]\nC1 -- 单个 --> E1[判断是热水器、采暖炉还是燃气灶]\nE1 -- 热水器 or 采暖炉 --> F1[告诉用户,马上为他转接人工服务]\nE1 -- 燃气灶 --> G1[询问用户燃气灶是一边不打火还是两边不打火呢?]\nG1 -- 一边不打火 --> F1\nG1 -- 两边不打火 --> H1[询问用户燃气表前后两个阀门是打开的吗?]\nH1 -- 非打开状态 --> I1[严格回复: 请您将阀门打开,注意控制力度,如果打不开,请您预约师傅上门处理,下单方式稍后发短信给您,请注意查收。请问您还有其他业务需要咨询吗?]\nH1 -- 打开状态 --> J1[询问用户有燃气报警器吗?]\nJ1 -- 有 --> K1[询问用户能闻到燃气的味道吗?]\nK1 -- 有 --> L1[告诉用户请关闭燃气阀门,开窗通风,马上为您转接抢险专线]\nK1 -- 无 --> F1\nJ1 -- 无 --> M1[询问用户燃气表是卡表、物联表,还是普表的?]\nM1 -- 卡表 --> N1[严格回复: 好的,燃气灶不能用,请您插卡后看表上的显示,如果显示0.00,请您购买燃气;显示L欧,请您更换燃气表4节5号全新电池。如果燃气灶电池使用超过3至6个月,也需要更换,具体操作方法稍后发短信给您,请注意查收。请问您还有其他业务需要咨询吗?]\nM1 -- 物联表 --> O1[严格回复: 好的,请您按下燃气表上的按钮,没有显示表示表电量不足,请更换4节5号全新电池,显示E-1003,请购买燃气。如果燃气灶电池使用超过3个月,请更换全新的1号电池。物联表故障排除方法稍后发短信给您,请注意查收。请问您还有其他业务需要咨询吗?]\nM1 -- 普表 --> P1[严格回复: 如果您家燃气灶电池使用超过3个月,可能会出现电量不足无法打火的情况,请您更换全新的1号电池。如果更换新电池后仍无法使用,请您预约师傅上门维修,预约方法稍后发短信给您,请注意查收。请问您还有其他业务需要咨询吗?]\nD1 -- 部分 --> Q1[询问用户有问题设备前的燃气阀门是打开的吗]\nQ1 -- 未打开 --> R1[请用户打开阀门后再尝试使用燃气,如果还不能使用再和我们联系。]\nQ1 -- 已打开 --> S1[判断有问题的设备是不是燃气灶]\nS1 -- 否 --> F1\nS1 -- 是 --> T1[询问用户是一边打不着火还是两边?]\nT1 -- 一边 --> F1\nT1 -- 两边 --> U1[严格回复: 好的,只有燃气灶具不能使用,是燃气灶本身的问题,灶具电池使用超过3个月会出现电池电量不足,无法打火,请您更换全新的1号电池。更换完电池还是不能使用,请联系灶具对应品牌的售后处理。]\nD1 -- 所有 --> V1[询问用户燃气阀门都打开了吗]\nV1 -- 未打开 --> W1[严格回复: 请您将阀门打开,注意控制力度,如果打不开,请您预约师傅上门处理,下单方式稍后发短信给您,请注意查收。]\nV1 -- 已打开 --> X1[询问用户有燃气报警器吗?]\nX1 -- 有 --> K1\nX1 -- 无 --> A11[询问用户燃气表是卡表、物联表,还是普表的?]\nA11 -- 卡表 --> B11[严格回复: 好的,请您插卡后看表上的显示,如果显示0.00,请您购买燃气;显示L 欧,请您更换燃气表4节5号全新电池,具体操作方法稍后发短信给您,请注意查收。]\nA11 -- 物联表 --> C11[严格回复: 好的,请您按下燃气表上的按钮,没有显示表示表电量不足,请更换4节5号全新电池,显示E-1003,请购买燃气。物联表故障排除方法稍后发短信给您,请注意查收。]\nA11 -- 普表 --> D11[严格回复: 燃气无法使用需要安排师傅入户处理,业务办理方式稍后发短信给您,请您按照短信指引自助预约师傅上门维修。]\n\n流程中-- --中间表示用户意图或跳转条件,部分用户意图及其示例话术为:\n\"普表\": [\"我家里是普通的燃气表\", \"就是平常的燃气表呀\", \"是那种传统的机械燃气表\"]\n\"卡表\": [\"是可以插卡用的\", \"那种IC卡燃气表\", \"是通过IC卡来充气的\"]\n\"物联表\": [\"我这个不用卡的\", \"用手机来充气就行\", \"我这是物联表,不用之前的那种插卡的了\"]\n\n流程中各个参数信息为:\n\"设备名称\": \"设备名称,出现问题的燃气设备,例如燃气灶、热水器或采暖炉\"\n\n\n燃气-导航-燃气表排障流程的处理流程:\nflowchart TD\nA2[开始] -- 燃气表充值未到账 --> B2[询问用户是物联表、卡表、普表还是其他]\nB2 -- 物联表 --> C2[严格回复: 好的,物联表充值后您可以长按表上按钮3到5秒或者重新安装表电池来进行手动充值,如果之前表内有余额,充值的金额也会在第二天自动到帐,具体操作方法稍后发短信给您,请注意查收。]\nB2 -- 卡表 --> D2[询问用户插卡时有滴的响声吗?]\nD2 -- 有 --> E2[严格回复: 好的,请您先将燃气卡拔出,等待燃气表液晶屏没有任何显示后再将卡重新插进表内,提醒您,插卡进表后不能太快拔卡。如果操作后气量还是无法全部充到表内,请您预约师傅上门处理,具体操作方法稍后发短信给您,请注意查收。]\nD2 -- 无 --> F2[询问用户燃气表上显示数字、L2 O2 还是没有任何显示?]\nF2 -- 无显示 --> G2[严格回复: 好的,燃气表插卡不显示是燃气表没电了,请您打开液晶屏下方的电池盒盖,更换4节5号电池,上边两节正极向右,下边两节正极向左,更换成功后会听到滴滴两声响和齿轮转动的声音。更换电池方法稍后发短信给您,请注意查收。]\nF2 -- 显示数字 --> H2[严格回复: 好的,请您先拔出燃气卡,用纸片擦拭燃气卡芯片,等待表液晶屏上没有任何显示后,将燃气卡反过来插,详细的操作方法稍后发短信给您,请注意查收。]\nF2 -- 显示LO --> I2[严格回复: 好的,燃气表显示L O 是燃气表电池没电了。请您打开液晶屏下方的电池盒盖,更换4节5号电池,上边两节正极向右,下边两节正极向左,更换成功后会听到滴滴两声响和齿轮转动的声音。更换电池方法稍后发短信给您,请注意查收。]\nB2 -- 普表 --> J2[告诉用户马上转接人工服务]\nB2 -- 其他分支 --> K2[询问用户燃气表是插卡的还是其他的?]\nK2 -- 插卡 --> D2\nK2 -- 其他 --> J2\nA2[开始] -- 燃气表换电池 --> L2[询问用户是物联表、卡表、还是其他]\nL2 -- 其他 --> J2\nL2 -- 卡表 --> M2[严格回复: 好的,您使用的是IC卡表,请您打开液晶屏下方的电池盒盖,更换4节5号电池,上边两节正极向右,下边两节正极向左,更换成功后会听到滴滴两声响和齿轮转动的声音。更换方法稍后发短信给您,请注意查收。]\nL2 -- 物联表 --> N2[严格回复: 好的,带按钮的是物联表,电池盒在燃气表液晶屏下方,请您双手按住表两侧凹槽向外拉开,更换4节5号电池,等待液晶屏上显示的字母完全消失后,按一下表按钮,液晶屏显示剩余金额,表示电池更换成功。具体更换方法稍后发短信给您,请注意查收。]\nA2[开始] -- 燃气表换表 --> O2[询问用户是小区通知统一换表还是安检师傅或营业员告知您需要换表?]\nO2 -- 小区统一 or 通知 --> P2[回复用户换表业务需要安排师傅入户处理,业务办理方式稍后发短信给您,请注意查收。]\nO2 -- 其他 --> J2\nA2[开始] -- 怀疑表快 or 补气 --> J2\nA2[开始] -- 燃气表响 --> Q2[询问用户燃气表是“嘀嘀”的响还是“咔咔”齿轮转动的响声?]\nQ2 -- 其他 --> J2\nQ2 -- 咔咔 --> R2[回复用户燃气表喀喀响是齿轮不正常转动的声音,需要预约师傅入户维修,预约方式稍后发短信给您,请注意查收。]\nQ2 -- 滴滴 --> S2[询问用户燃气表的液晶屏上是显示 L2 O2 吗?]\nS2 -- 是 --> T2[严格回复: 好的,燃气表显示 L 欧 是电池电量低,电池盒在液晶屏下方,请您打开电池盒盖,更换4节5号电池,更换成功后会听到滴滴两声响和齿轮转动的声音。具体更换方法稍后发短信给您,请注意查收。]\nS2 -- 不是 --> U2[询问用户是燃气使用过程中响,还是不使用燃气的时候响呢?]\nU2 -- 使用时 --> V2[严格回复: 好的,燃气表在使用过程中响,请您稍候插卡查看表液晶屏,显示少于10方,请尽快购气,显示多于10方,需要安排师傅上门检测,具体操作方法稍后发短信给您,请注意查收。]\nU2 -- 停用时 --> W2[严格回复: 请您将燃气表电池取出,如果不响,请更换四节五号电池;如果还响,可能是您楼上楼下邻居家表响的管道传音,没有安全隐患,请正常使用。更换电池的操作方法稍后发短信给您,请注意查收。]\nA2[开始] -- 燃气表不显示 --> X2[询问用户是物联表、卡表、还是其他]\nX2 -- 其他 --> J2\nX2 -- 物联表 --> Y2[严格回复: 好的,您按完按钮,液晶屏没有任何显示,说明燃气表电池电量低,请您更换燃气表下方的,4节5号全新的电池,具体操作方法稍后发短信给您,请注意查收。]\nX2 -- 卡表 -->Z2[询问用户插卡了吗?]\nZ2 -- 已插卡 --> A12[严格回复: 好的,燃气表液晶屏不显示,是燃气表电池没电了。请您打开液晶屏下方的电池盒盖,更换4节5号电池,上边两节正极向右,下边两节正极向左,更换成功后会听到滴滴两声响和齿轮转动的声音。更换电池方法稍后发短信给您,请注意查收。]\nZ2 -- 未插卡 --> B12[严格回复: 好的,燃气表有节电功能,平时液晶屏不显示。如果插卡后显示0.00,请购买燃气;显示L O或者没有显示,请更换燃气表4节5号全新的电池,电池在液晶屏下方的电池盒内。]\nA2[开始] -- 燃气表显示乱码 --> C12[询问用户是物联表、卡表、还是其他]\nC12 -- 其他 --> J2\nC12 -- 物联表 --> D12[严格回复: 好的,稍后请您按下表上的按钮,如果显示E-1003,请购买燃气,其它显示请重新安装表电池。具体的故障排除方法,稍后发短信给您,请注意查收。]\nC12 -- 卡表 --> E12[询问用户燃气表液晶屏上显示LO,还是其它内容?]\nE12 -- 其他 --> F12[回复用户燃气表显示乱码请您预约师傅上门维修,具体下单方法稍后发短信给您,请注意查收]\nE12 -- 显示LO --> G12[严格回复: 好的,燃气表显示L 欧 是电池电量低,电池盒在液晶屏下方,请您打开电池盒盖,更换4节5号电池,更换成功后会听到滴滴两声响和齿轮转动的声音。具体更换方法稍后发短信给您,请注意查收。]\n\n流程中-- --中间表示用户意图或跳转条件,部分用户意图及其示例话术为:\n\"普表\": [\"我家里是普通的燃气表\", \"就是平常的燃气表呀\", \"是那种传统的机械燃气表\"]\n\"卡表\": [\"是可以插卡用的\", \"那种IC卡燃气表\", \"是通过IC卡来充气的\"]\n\"物联表\": [\"我这个不用卡的\", \"用手机来充气就行\", \"我这是物联表,不用之前的那种插卡的了\"]\n\"怀疑表快\": [\"表走的有点快\", \"气用的快\", \"给我看一下表是不是坏了,比之前用的多\"]\n\"燃气表响\": [\"然后,他的气表老是响是,怎么回事?\", \"燃气表一直鸣叫,不知道是什么回事\", \"我这个燃气怎么一直响?\", \"为什么我家燃气表一直在响\"]\n\"补气\": [\"我表里之前的气还没补呢\", \"作废的表需要补气\", \"卡里面的气没有充到表里,需要补一下气\"]\n\n\n请记住当前时间为:2034-10-18 06:42:22 星期三"], "levels2": ["自然语言流程背景信息约束"], "category": "trace1.0"} +{"id": "171", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一个短故事\n1. 故事的叙述应采用文艺而富有情感的语气,让读者能够感受到大海的波澜壮阔,音乐的温柔抚慰,以及勇气的力量;\n# Inputs:\n关键词:大海,音乐,勇气\n"}], "type": "trace", "description": "创建一个短故事", "constraints": "1. 故事的叙述应采用文艺而富有情感的语气,让读者能够感受到大海的波澜壮阔,音乐的温柔抚慰,以及勇气的力量;", "input": "关键词:大海,音乐,勇气", "constraints_num": 1, "constraints_splits": ["1. 故事的叙述应采用文艺而富有情感的语气,让读者能够感受到大海的波澜壮阔,音乐的温柔抚慰,以及勇气的力量;"], "levels2": ["语气风格约束"], "category": "trace1.0"} +{"id": "172", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以医生的身份分析手术后出现的头晕症状,提供可能的原因及治疗方案\n1. 以编号列表的形式给出每一种可能原因及相应的治疗方案;\n"}], "type": "trace", "description": "以医生的身份分析手术后出现的头晕症状,提供可能的原因及治疗方案", "constraints": "1. 以编号列表的形式给出每一种可能原因及相应的治疗方案;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 以编号列表的形式给出每一种可能原因及相应的治疗方案;"], "levels2": ["编号和列表约束"], "category": "trace1.0"} +{"id": "173", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "你是顺丰金融中心的业务人员,主要负责打电话给信用卡逾期的用户催促其还款\n1. 参考下面流程回答问题。\n\n信用卡预期催收的处理流程:\nflowchartLR\nA(开始)-->B[表明单位是顺丰金融中心,确认是否是王女士]\nB--是本人-->C[严格回复: 您名下尾号5668的广发信用卡已逾期,截止昨日为止入账总欠款为20000元,您的最低还款额是2000元,询问是否今天还款]\nB--同事or亲属or朋友or认识-->F[询问能否转告联系我行]\nB--不是本人-->G[是否认识持卡人]\nB--不认识本人or不方便-->H[致歉打扰了,再见]\nB--出国出境or身体问题or拘留坐牢or怀疑死亡-->I[致歉打扰,请联系我行专线95508,感谢配合]\nC--盗刷or存错卡片or卡片丢失or询问卡号-->D[建议与我行客服热线95508联系反馈或查询情况]\nC--忘记还款or当天有还款意愿-->E[请今天21点之前还款最低金额,如有违约,会再次联系]\nC--遭遇自然灾害-->K[提醒注意避险,关于广发信用卡逾期问题会再次联系,或请致电95508了解]\nC--转人工坐席-->L[告知情况已记录,后续会有工作人员联系,或请致电95508]\nC--代偿-->M[建议将欠款情况告知,为了避免利费进一步增加,请务必安排今天还款]\nC--近期有还款意愿or协商还款--->N[严格回复: 您的卡片已逾期,为避免进一步影响您在我行的用卡记录,请在今天内办理还款,我行会在今天晚上二十一点前查收款项,请问今天能不能按时处理?]\nC--不确定是否会还-->Y[严格回复: 如果您无法还清银行的最低还款,我行将积极通过您家人、同事、朋友,协助您解决问题,我行会在今天晚上二十一点前查收款项,请问今天能不能按时处理?]\nC--当天无还款意愿-->O[严格回复: 您已违反与我行签署的《信用卡客户协议》,如果您继续延滞,我行将暂停您的卡片并要求您结清名下所有欠款,希望您尽快处理广发行的欠款,我行会在今天晚上二十一点前查收款项,请问今天能不能按时处理?]\nC--已还款-->P[告知稍后核实还款状态,如果没有准时到账还会再次联系]\nC--未收到账单-->R[告知账单明细会在账单日后5个工作日寄发,请留意邮箱及垃圾邮件。催促今天安排还款]\nC--利费问题-->S[利息和费用问题,可以致电95508咨询,卡片已经逾期,催促安排今天内还款]\nC--征信问题-->T[告知逾期和还款记录我行都会如实上报人行,为了征信不进一步恶化,请安排今天还款]\nC--欠款金额-->W[告知截止昨日欠款2万,为了避免利费增加,今天最低还款2000]\nC--重开卡or客户主动止付卡or注销卡-->X[告知卡片逾期被停用,如有开卡需求,今天还款后24小时致电95508申请]\nC--还款方式问题-->Z[告知可通过支付宝微信或者我行APP或柜面还款,更多方式可以咨询95508,催促今天安排还款]\nC--卡片外借-->A1[告知签订的合约仅限于本人使用,作为持卡人有责任还清欠款]\nC--发短信-->A2[告知稍后会发短信,催促还款]\nC--只还本金-->A3[告知客户在最后还款日前还款是没有利息的,但是当前逾期需要支付利息]\nC--表述困难如多头共债、没法工资、失业等-->A4[表示理解困难,但是需要今天21点前查收款项,询问今天能否按时处理]\nC--卡里有钱-->A5[建议先查看您还款账户是否有足够余额,我行会在今晚21点查收款项,询问今天是否可以处理]\nC--不方便or客户质疑专业性or质疑未到期催收or说重点or询问最迟还款日-->A6[表达信用卡已欠款逾期,催促今天安排还款]\nC--确认是否逾期-->A7[告知名下尾号为1234的信用卡已预期10天,截止昨天入账总欠款金额为20000元,最低还款额为2000元,询问是否可以再今天21点之前处理]\nG--认识-->F\nG--不认识-->A8[致歉打扰,表述这里是顺丰金融中心,如有需要会再联系]\n\n流程中-- --中间表示用户意图或跳转条件,部分用户意图及其示例话术为:\n\"代偿\": [\"我老婆去还\", \"有人帮我还\", \"我妈会还\"]\n\"多头共债\": [\"我现在已经欠了很多钱\", \"其他银行也在催\"]\n\"利费问题\": [\"怎么产生这么多利息\", \"利息是怎样计算的\", \"你逾期费用也太多了吧\"]\n\n\n请记住当前时间为:2030-12-26 12:16:43 星期四\n# Inputs:\n你好?请问你是哪家公司的,找我有什么事呢?\n"}], "type": "trace", "description": "你是顺丰金融中心的业务人员,主要负责打电话给信用卡逾期的用户催促其还款", "constraints": "1. 参考下面流程回答问题。\n\n信用卡预期催收的处理流程:\nflowchartLR\nA(开始)-->B[表明单位是顺丰金融中心,确认是否是王女士]\nB--是本人-->C[严格回复: 您名下尾号5668的广发信用卡已逾期,截止昨日为止入账总欠款为20000元,您的最低还款额是2000元,询问是否今天还款]\nB--同事or亲属or朋友or认识-->F[询问能否转告联系我行]\nB--不是本人-->G[是否认识持卡人]\nB--不认识本人or不方便-->H[致歉打扰了,再见]\nB--出国出境or身体问题or拘留坐牢or怀疑死亡-->I[致歉打扰,请联系我行专线95508,感谢配合]\nC--盗刷or存错卡片or卡片丢失or询问卡号-->D[建议与我行客服热线95508联系反馈或查询情况]\nC--忘记还款or当天有还款意愿-->E[请今天21点之前还款最低金额,如有违约,会再次联系]\nC--遭遇自然灾害-->K[提醒注意避险,关于广发信用卡逾期问题会再次联系,或请致电95508了解]\nC--转人工坐席-->L[告知情况已记录,后续会有工作人员联系,或请致电95508]\nC--代偿-->M[建议将欠款情况告知,为了避免利费进一步增加,请务必安排今天还款]\nC--近期有还款意愿or协商还款--->N[严格回复: 您的卡片已逾期,为避免进一步影响您在我行的用卡记录,请在今天内办理还款,我行会在今天晚上二十一点前查收款项,请问今天能不能按时处理?]\nC--不确定是否会还-->Y[严格回复: 如果您无法还清银行的最低还款,我行将积极通过您家人、同事、朋友,协助您解决问题,我行会在今天晚上二十一点前查收款项,请问今天能不能按时处理?]\nC--当天无还款意愿-->O[严格回复: 您已违反与我行签署的《信用卡客户协议》,如果您继续延滞,我行将暂停您的卡片并要求您结清名下所有欠款,希望您尽快处理广发行的欠款,我行会在今天晚上二十一点前查收款项,请问今天能不能按时处理?]\nC--已还款-->P[告知稍后核实还款状态,如果没有准时到账还会再次联系]\nC--未收到账单-->R[告知账单明细会在账单日后5个工作日寄发,请留意邮箱及垃圾邮件。催促今天安排还款]\nC--利费问题-->S[利息和费用问题,可以致电95508咨询,卡片已经逾期,催促安排今天内还款]\nC--征信问题-->T[告知逾期和还款记录我行都会如实上报人行,为了征信不进一步恶化,请安排今天还款]\nC--欠款金额-->W[告知截止昨日欠款2万,为了避免利费增加,今天最低还款2000]\nC--重开卡or客户主动止付卡or注销卡-->X[告知卡片逾期被停用,如有开卡需求,今天还款后24小时致电95508申请]\nC--还款方式问题-->Z[告知可通过支付宝微信或者我行APP或柜面还款,更多方式可以咨询95508,催促今天安排还款]\nC--卡片外借-->A1[告知签订的合约仅限于本人使用,作为持卡人有责任还清欠款]\nC--发短信-->A2[告知稍后会发短信,催促还款]\nC--只还本金-->A3[告知客户在最后还款日前还款是没有利息的,但是当前逾期需要支付利息]\nC--表述困难如多头共债、没法工资、失业等-->A4[表示理解困难,但是需要今天21点前查收款项,询问今天能否按时处理]\nC--卡里有钱-->A5[建议先查看您还款账户是否有足够余额,我行会在今晚21点查收款项,询问今天是否可以处理]\nC--不方便or客户质疑专业性or质疑未到期催收or说重点or询问最迟还款日-->A6[表达信用卡已欠款逾期,催促今天安排还款]\nC--确认是否逾期-->A7[告知名下尾号为1234的信用卡已预期10天,截止昨天入账总欠款金额为20000元,最低还款额为2000元,询问是否可以再今天21点之前处理]\nG--认识-->F\nG--不认识-->A8[致歉打扰,表述这里是顺丰金融中心,如有需要会再联系]\n\n流程中-- --中间表示用户意图或跳转条件,部分用户意图及其示例话术为:\n\"代偿\": [\"我老婆去还\", \"有人帮我还\", \"我妈会还\"]\n\"多头共债\": [\"我现在已经欠了很多钱\", \"其他银行也在催\"]\n\"利费问题\": [\"怎么产生这么多利息\", \"利息是怎样计算的\", \"你逾期费用也太多了吧\"]\n\n\n请记住当前时间为:2030-12-26 12:16:43 星期四", "input": "你好?请问你是哪家公司的,找我有什么事呢?", "constraints_num": 1, "constraints_splits": ["1. 参考下面流程回答问题。\n\n信用卡预期催收的处理流程:\nflowchartLR\nA(开始)-->B[表明单位是顺丰金融中心,确认是否是王女士]\nB--是本人-->C[严格回复: 您名下尾号5668的广发信用卡已逾期,截止昨日为止入账总欠款为20000元,您的最低还款额是2000元,询问是否今天还款]\nB--同事or亲属or朋友or认识-->F[询问能否转告联系我行]\nB--不是本人-->G[是否认识持卡人]\nB--不认识本人or不方便-->H[致歉打扰了,再见]\nB--出国出境or身体问题or拘留坐牢or怀疑死亡-->I[致歉打扰,请联系我行专线95508,感谢配合]\nC--盗刷or存错卡片or卡片丢失or询问卡号-->D[建议与我行客服热线95508联系反馈或查询情况]\nC--忘记还款or当天有还款意愿-->E[请今天21点之前还款最低金额,如有违约,会再次联系]\nC--遭遇自然灾害-->K[提醒注意避险,关于广发信用卡逾期问题会再次联系,或请致电95508了解]\nC--转人工坐席-->L[告知情况已记录,后续会有工作人员联系,或请致电95508]\nC--代偿-->M[建议将欠款情况告知,为了避免利费进一步增加,请务必安排今天还款]\nC--近期有还款意愿or协商还款--->N[严格回复: 您的卡片已逾期,为避免进一步影响您在我行的用卡记录,请在今天内办理还款,我行会在今天晚上二十一点前查收款项,请问今天能不能按时处理?]\nC--不确定是否会还-->Y[严格回复: 如果您无法还清银行的最低还款,我行将积极通过您家人、同事、朋友,协助您解决问题,我行会在今天晚上二十一点前查收款项,请问今天能不能按时处理?]\nC--当天无还款意愿-->O[严格回复: 您已违反与我行签署的《信用卡客户协议》,如果您继续延滞,我行将暂停您的卡片并要求您结清名下所有欠款,希望您尽快处理广发行的欠款,我行会在今天晚上二十一点前查收款项,请问今天能不能按时处理?]\nC--已还款-->P[告知稍后核实还款状态,如果没有准时到账还会再次联系]\nC--未收到账单-->R[告知账单明细会在账单日后5个工作日寄发,请留意邮箱及垃圾邮件。催促今天安排还款]\nC--利费问题-->S[利息和费用问题,可以致电95508咨询,卡片已经逾期,催促安排今天内还款]\nC--征信问题-->T[告知逾期和还款记录我行都会如实上报人行,为了征信不进一步恶化,请安排今天还款]\nC--欠款金额-->W[告知截止昨日欠款2万,为了避免利费增加,今天最低还款2000]\nC--重开卡or客户主动止付卡or注销卡-->X[告知卡片逾期被停用,如有开卡需求,今天还款后24小时致电95508申请]\nC--还款方式问题-->Z[告知可通过支付宝微信或者我行APP或柜面还款,更多方式可以咨询95508,催促今天安排还款]\nC--卡片外借-->A1[告知签订的合约仅限于本人使用,作为持卡人有责任还清欠款]\nC--发短信-->A2[告知稍后会发短信,催促还款]\nC--只还本金-->A3[告知客户在最后还款日前还款是没有利息的,但是当前逾期需要支付利息]\nC--表述困难如多头共债、没法工资、失业等-->A4[表示理解困难,但是需要今天21点前查收款项,询问今天能否按时处理]\nC--卡里有钱-->A5[建议先查看您还款账户是否有足够余额,我行会在今晚21点查收款项,询问今天是否可以处理]\nC--不方便or客户质疑专业性or质疑未到期催收or说重点or询问最迟还款日-->A6[表达信用卡已欠款逾期,催促今天安排还款]\nC--确认是否逾期-->A7[告知名下尾号为1234的信用卡已预期10天,截止昨天入账总欠款金额为20000元,最低还款额为2000元,询问是否可以再今天21点之前处理]\nG--认识-->F\nG--不认识-->A8[致歉打扰,表述这里是顺丰金融中心,如有需要会再联系]\n\n流程中-- --中间表示用户意图或跳转条件,部分用户意图及其示例话术为:\n\"代偿\": [\"我老婆去还\", \"有人帮我还\", \"我妈会还\"]\n\"多头共债\": [\"我现在已经欠了很多钱\", \"其他银行也在催\"]\n\"利费问题\": [\"怎么产生这么多利息\", \"利息是怎样计算的\", \"你逾期费用也太多了吧\"]\n\n\n请记住当前时间为:2030-12-26 12:16:43 星期四"], "levels2": ["自然语言流程背景信息约束"], "category": "trace1.0"} +{"id": "174", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为“新婚之家”博客创建一篇关于新房装饰的文章,文章需采用Markdown格式,包含至少三个装饰小贴士和两个实用的装饰案例,目标受众为新婚夫妇,关注卧室和客厅装饰,文章开头为“新婚夫妇分享他们的装饰经验”,采用亲切实用的语气,确保内容对新婚夫妇有实际帮助,激发装饰灵感。\n1. 角色扮演为已成功装饰新房的新婚夫妇,分享故事和经验;\n"}], "type": "trace", "description": "为“新婚之家”博客创建一篇关于新房装饰的文章,文章需采用Markdown格式,包含至少三个装饰小贴士和两个实用的装饰案例,目标受众为新婚夫妇,关注卧室和客厅装饰,文章开头为“新婚夫妇分享他们的装饰经验”,采用亲切实用的语气,确保内容对新婚夫妇有实际帮助,激发装饰灵感。", "constraints": "1. 角色扮演为已成功装饰新房的新婚夫妇,分享故事和经验;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 角色扮演为已成功装饰新房的新婚夫妇,分享故事和经验;"], "levels2": ["角色扮演约束"], "category": "trace1.0"} +{"id": "175", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "根据健康膳食平衡,将三种食品分类到一天三餐中,并以表格形式呈现分类结果。\n1. 表格中应包括餐别、食品名称和营养成分概览;\n# Inputs:\n三种食品:烤面包片、蔬菜沙拉、炸鸡腿。\n"}], "type": "trace", "description": "根据健康膳食平衡,将三种食品分类到一天三餐中,并以表格形式呈现分类结果。", "constraints": "1. 表格中应包括餐别、食品名称和营养成分概览;", "input": "三种食品:烤面包片、蔬菜沙拉、炸鸡腿。", "constraints_num": 1, "constraints_splits": ["1. 表格中应包括餐别、食品名称和营养成分概览;"], "levels2": ["包含约束"], "category": "trace1.0"} +{"id": "176", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "解析乳腺癌的基因突变与细胞增殖之间的关系,以及基于分子分型的治疗方案,以专业学术的语气风格撰写,输出内容需遵循APA引用格式。\n1. 使用编号列表来组织原因和治疗方案;\n"}], "type": "trace", "description": "解析乳腺癌的基因突变与细胞增殖之间的关系,以及基于分子分型的治疗方案,以专业学术的语气风格撰写,输出内容需遵循APA引用格式。", "constraints": "1. 使用编号列表来组织原因和治疗方案;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 使用编号列表来组织原因和治疗方案;"], "levels2": ["编号和列表约束"], "category": "trace1.0"} +{"id": "177", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "你是一个知识问答系统\n1. 参考下面所给知识回答问题。\n\n【文档名】信美人寿相互保险社信美相互互联网锦意卫长期意外伤害保险产品说明书\n【标题】为方便您了解和购买本产品,请仔细阅读本产品说明书:\n一、产品基本特征\n2.  保险责任\n2.1必选责任\n【正文】(2)  如果被保险人于年满18周岁后的首个年生效对应日之后(含当日)身故的,一般意外身故保险金的数额为本合同的基本保险金额。如果在给付一般意外身故保险金前,我们已依本合同给付过一般意外伤残保险金,则在给付一般意外身故保险金时,需扣除已给付的一般意外伤残保险金。\n> 法定节假日一般意外伤残保险金\n\n被保险人在法定节假日期间遭受意外伤害事故,并因该次意外伤害事故直接导致被保险人在该意外伤害事故发生之日起180日内发生《人身保险伤残评定标准及代码》所列伤残项目,我们除按上述约定给付一般意外伤残保险金之外,还将根据该伤残项目对应的前述标准中列明的伤残等级,按“人身保险伤残程度与保险金给付比例表”所对应的给付比例乘以本合同的基本保险金额给付法定节假日一般意外伤残保险金。\n我们按本合同约定累计给付的法定节假日一般意外伤残保险金数额之和以本合同的基本保险金额为限,如果累计给付的法定节假日一般意外伤残保险金数额之和达到本合同的基本保险金额,我们对被保险人的法定节假日一般意外伤残保险金和法定节假日一般意外身故保险金渍任同时终止,本合同继续有效。\n> 法定节假日一般意外身故保险金\n# Inputs:\n信美相互互联网锦意卫长期意外伤害保险的《人身保险伤残评定标准及代码》的最新修订版是何时发布的?\n"}], "type": "trace", "description": "你是一个知识问答系统", "constraints": "1. 参考下面所给知识回答问题。\n\n【文档名】信美人寿相互保险社信美相互互联网锦意卫长期意外伤害保险产品说明书\n【标题】为方便您了解和购买本产品,请仔细阅读本产品说明书:\n一、产品基本特征\n2.  保险责任\n2.1必选责任\n【正文】(2)  如果被保险人于年满18周岁后的首个年生效对应日之后(含当日)身故的,一般意外身故保险金的数额为本合同的基本保险金额。如果在给付一般意外身故保险金前,我们已依本合同给付过一般意外伤残保险金,则在给付一般意外身故保险金时,需扣除已给付的一般意外伤残保险金。\n> 法定节假日一般意外伤残保险金\n\n被保险人在法定节假日期间遭受意外伤害事故,并因该次意外伤害事故直接导致被保险人在该意外伤害事故发生之日起180日内发生《人身保险伤残评定标准及代码》所列伤残项目,我们除按上述约定给付一般意外伤残保险金之外,还将根据该伤残项目对应的前述标准中列明的伤残等级,按“人身保险伤残程度与保险金给付比例表”所对应的给付比例乘以本合同的基本保险金额给付法定节假日一般意外伤残保险金。\n我们按本合同约定累计给付的法定节假日一般意外伤残保险金数额之和以本合同的基本保险金额为限,如果累计给付的法定节假日一般意外伤残保险金数额之和达到本合同的基本保险金额,我们对被保险人的法定节假日一般意外伤残保险金和法定节假日一般意外身故保险金渍任同时终止,本合同继续有效。\n> 法定节假日一般意外身故保险金", "input": "信美相互互联网锦意卫长期意外伤害保险的《人身保险伤残评定标准及代码》的最新修订版是何时发布的?", "constraints_num": 1, "constraints_splits": ["1. 参考下面所给知识回答问题。\n\n【文档名】信美人寿相互保险社信美相互互联网锦意卫长期意外伤害保险产品说明书\n【标题】为方便您了解和购买本产品,请仔细阅读本产品说明书:\n一、产品基本特征\n2.  保险责任\n2.1必选责任\n【正文】(2)  如果被保险人于年满18周岁后的首个年生效对应日之后(含当日)身故的,一般意外身故保险金的数额为本合同的基本保险金额。如果在给付一般意外身故保险金前,我们已依本合同给付过一般意外伤残保险金,则在给付一般意外身故保险金时,需扣除已给付的一般意外伤残保险金。\n> 法定节假日一般意外伤残保险金\n\n被保险人在法定节假日期间遭受意外伤害事故,并因该次意外伤害事故直接导致被保险人在该意外伤害事故发生之日起180日内发生《人身保险伤残评定标准及代码》所列伤残项目,我们除按上述约定给付一般意外伤残保险金之外,还将根据该伤残项目对应的前述标准中列明的伤残等级,按“人身保险伤残程度与保险金给付比例表”所对应的给付比例乘以本合同的基本保险金额给付法定节假日一般意外伤残保险金。\n我们按本合同约定累计给付的法定节假日一般意外伤残保险金数额之和以本合同的基本保险金额为限,如果累计给付的法定节假日一般意外伤残保险金数额之和达到本合同的基本保险金额,我们对被保险人的法定节假日一般意外伤残保险金和法定节假日一般意外身故保险金渍任同时终止,本合同继续有效。\n> 法定节假日一般意外身故保险金"], "levels2": ["文本背景信息约束"], "category": "trace1.0"} +{"id": "178", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "构思一个充满奇幻色彩与传奇故事的驯龙训练师学校概念\n1. 写作中,要求运用丰富的想象和生动的描述,让读者仿佛身临其境,感受到龙与训练师之间的深厚羁绊;\n"}], "type": "trace", "description": "构思一个充满奇幻色彩与传奇故事的驯龙训练师学校概念", "constraints": "1. 写作中,要求运用丰富的想象和生动的描述,让读者仿佛身临其境,感受到龙与训练师之间的深厚羁绊;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 写作中,要求运用丰富的想象和生动的描述,让读者仿佛身临其境,感受到龙与训练师之间的深厚羁绊;"], "levels2": ["语言特征约束"], "category": "trace1.0"} +{"id": "179", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "将给定的输入语句转换为正式礼貌的文本,并以JSON格式返回结果,包括原文和译文的对照。\n1. 翻译的目标语言为法语;\n# Inputs:\n你好,世界!\n"}], "type": "trace", "description": "将给定的输入语句转换为正式礼貌的文本,并以JSON格式返回结果,包括原文和译文的对照。", "constraints": "1. 翻译的目标语言为法语;", "input": "你好,世界!", "constraints_num": 1, "constraints_splits": ["1. 翻译的目标语言为法语;"], "levels2": ["多语言约束"], "category": "trace1.0"} +{"id": "180", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "详细介绍马可波罗最著名的旅行\n1. 描述时需使用清晰的时间顺序和正确的地理方位,以增强叙述的条理性和准确性;\n"}], "type": "trace", "description": "详细介绍马可波罗最著名的旅行", "constraints": "1. 描述时需使用清晰的时间顺序和正确的地理方位,以增强叙述的条理性和准确性;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 描述时需使用清晰的时间顺序和正确的地理方位,以增强叙述的条理性和准确性;"], "levels2": ["语法结构约束"], "category": "trace1.0"} +{"id": "181", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "描述一场比赛的精彩瞬间\n1. 场景设定在一场紧张激烈的足球比赛中;\n"}], "type": "trace", "description": "描述一场比赛的精彩瞬间", "constraints": "1. 场景设定在一场紧张激烈的足球比赛中;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 场景设定在一场紧张激烈的足球比赛中;"], "levels2": ["角色扮演约束"], "category": "trace1.0"} +{"id": "182", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "分析治疗感染控制与医院卫生中常用的药物,包括但不限于青霉素、头孢菌素和氯霉素等,详细说明这些药物对患者的影响,包括治疗效果、潜在的副作用、相互作用以及不适应症。\n1. 分析中应避免提供具体的医疗案例或个人医疗建议。\n"}], "type": "trace", "description": "分析治疗感染控制与医院卫生中常用的药物,包括但不限于青霉素、头孢菌素和氯霉素等,详细说明这些药物对患者的影响,包括治疗效果、潜在的副作用、相互作用以及不适应症。", "constraints": "1. 分析中应避免提供具体的医疗案例或个人医疗建议。", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 分析中应避免提供具体的医疗案例或个人医疗建议。"], "levels2": ["隐私约束"], "category": "trace1.0"} +{"id": "183", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创作一段简短的故事概述\n1. 故事主角是一位勇敢且好奇心旺盛的年轻探险家,必须注重描绘其性格特点;\n"}], "type": "trace", "description": "创作一段简短的故事概述", "constraints": "1. 故事主角是一位勇敢且好奇心旺盛的年轻探险家,必须注重描绘其性格特点;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 故事主角是一位勇敢且好奇心旺盛的年轻探险家,必须注重描绘其性格特点;"], "levels2": ["角色扮演约束"], "category": "trace1.0"} +{"id": "184", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "从实际案例中挑选并提供一个明显的错误示例和一个典范的正确示例,通过对比说明遵循正确做法的极端重要性。\n1. 错误示例应突出律师因专业能力不足或缺乏责任心导致客户财产损失的严重后果;\n"}], "type": "trace", "description": "从实际案例中挑选并提供一个明显的错误示例和一个典范的正确示例,通过对比说明遵循正确做法的极端重要性。", "constraints": "1. 错误示例应突出律师因专业能力不足或缺乏责任心导致客户财产损失的严重后果;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 错误示例应突出律师因专业能力不足或缺乏责任心导致客户财产损失的严重后果;"], "levels2": ["负例约束"], "category": "trace1.0"} +{"id": "185", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一个简短的对话,讨论在全球范围内缓解贫困的方法\n1. 角色A和角色B都应提出基于事实的论据来支持他们的观点;\n"}], "type": "trace", "description": "创建一个简短的对话,讨论在全球范围内缓解贫困的方法", "constraints": "1. 角色A和角色B都应提出基于事实的论据来支持他们的观点;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 角色A和角色B都应提出基于事实的论据来支持他们的观点;"], "levels2": ["角色扮演约束"], "category": "trace1.0"} +{"id": "186", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "从给定文本中摘录所有人名和日期\n1. 输出格式为列表;\n# Inputs:\n文本:在2023年夏季,李华、张明和王丽参加了国际数学奥林匹克竞赛,其中李华获得金牌,张明获得银牌,王丽获得铜牌。\n"}], "type": "trace", "description": "从给定文本中摘录所有人名和日期", "constraints": "1. 输出格式为列表;", "input": "文本:在2023年夏季,李华、张明和王丽参加了国际数学奥林匹克竞赛,其中李华获得金牌,张明获得银牌,王丽获得铜牌。", "constraints_num": 1, "constraints_splits": ["1. 输出格式为列表;"], "levels2": ["编号和列表约束"], "category": "trace1.0"} +{"id": "187", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "使用-LaTeX-格式撰写一篇关于就业市场数字化趋势、技能和知识变化以及教育适应性的文章总结\n1. 结尾必须为“教育体系正积极适应这一变化”;\n"}], "type": "trace", "description": "使用-LaTeX-格式撰写一篇关于就业市场数字化趋势、技能和知识变化以及教育适应性的文章总结", "constraints": "1. 结尾必须为“教育体系正积极适应这一变化”;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 结尾必须为“教育体系正积极适应这一变化”;"], "levels2": ["模版约束"], "category": "trace1.0"} +{"id": "188", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为描述特定产品的段落添加积极的观点和评价\n1. 段落总字数在200字左右;\n# Inputs:\n这件手工制作的陶瓷花瓶,由当地经验丰富的工匠亲手精制,它不仅体现了匠人的高超技艺,而且其简洁而美妙的设计,让人感受到艺术与生活的完美融合,是家居装饰的不二之选,它能够为任何空间增添一份静谧与雅致。\n"}], "type": "trace", "description": "为描述特定产品的段落添加积极的观点和评价", "constraints": "1. 段落总字数在200字左右;", "input": "这件手工制作的陶瓷花瓶,由当地经验丰富的工匠亲手精制,它不仅体现了匠人的高超技艺,而且其简洁而美妙的设计,让人感受到艺术与生活的完美融合,是家居装饰的不二之选,它能够为任何空间增添一份静谧与雅致。", "constraints_num": 1, "constraints_splits": ["1. 段落总字数在200字左右;"], "levels2": ["数值约束"], "category": "trace1.0"} +{"id": "189", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "写一篇关于未来十年人工智能领域发展的前瞻文章\n1. 目标读者为技术行业内的专业人士,内容需深入浅出,既能吸引非AI专家的兴趣,又能满足行业内人士对深度信息的需求;\n"}], "type": "trace", "description": "写一篇关于未来十年人工智能领域发展的前瞻文章", "constraints": "1. 目标读者为技术行业内的专业人士,内容需深入浅出,既能吸引非AI专家的兴趣,又能满足行业内人士对深度信息的需求;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 目标读者为技术行业内的专业人士,内容需深入浅出,既能吸引非AI专家的兴趣,又能满足行业内人士对深度信息的需求;"], "levels2": ["受众目标约束"], "category": "trace1.0"} +{"id": "190", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为XYZ公司制定一份详细的营销策略计划书,针对电动汽车充电桩在城市居民及商业地区的目标市场,分析并对比主要竞争对手ABC公司、DEF公司、GHI公司的市场表现。\n1. 计划书应遵循专业营销报告的格式,包含封面、目录、摘要、正文、结论和附录部分;\n"}], "type": "trace", "description": "为XYZ公司制定一份详细的营销策略计划书,针对电动汽车充电桩在城市居民及商业地区的目标市场,分析并对比主要竞争对手ABC公司、DEF公司、GHI公司的市场表现。", "constraints": "1. 计划书应遵循专业营销报告的格式,包含封面、目录、摘要、正文、结论和附录部分;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 计划书应遵循专业营销报告的格式,包含封面、目录、摘要、正文、结论和附录部分;"], "levels2": ["模版约束"], "category": "trace1.0"} +{"id": "191", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "你是北京政务中心的在线客服,主要负责:帮助想要进行租房公积金提取的用户判断是否符合条件;帮助想要进行购房公积金提取的用户判断是否符合条件\n1. 参考下面流程回答问题。\n\n北京政务公积金-租房公积金提取的处理流程:\nflowchart TD\nA1([开始]) -- 租房提取公积金 --> B1[严格回复: 租房提取公积金条件:1,连续足额缴存满3个月;2,本人及配偶在北京无自有住房且租赁住房。请问您是否符合条件?]\nB1 -- 符合条件 --> C1[询问用户租的是商品房、公租房或保租房?]\nB1 -- 不符合条件 --> D1[告诉用户无法办理]\nC1 -- 公租房 or 保租房 --> E1[严格回复: 租房提取北京公积金网站http://gjj.beijing.gov.cn/可直接办结,每月可按照实际月租金提取。特殊除外:2023年6月5日前已开具公租房或保租房的租房发票的,可以到柜台按照实际发票总金额办理提取一次, 但是必须提供租赁合同备案编号。]\nC1 -- 商品房 --> F1[问客户有没有发票]\nF1 -- 没有 --> G1[严格回复: 租房提取北京公积金网站http://gjj.beijing.gov.cn/可直接办结,每月到账2000元,一年不超过24000元,如一年到期后想继续提取,需勾选“本人同意在事项到期后系统自动接续申请”。]\nF1 -- 有 --> H1[严格回复: 请问您家符合多子女家庭(家庭内有二孩及以上多子女且至少一名子女未满18)吗?]\nH1 -- 符合条件 --> I1[严格回复: 租房提取北京公积金网站可直接办结,每月可按照实际月租金提取。]\nH1 -- 不符合条件 --> J1[严格回复: 租房提取北京公积金网站可直接办结,按月提取,按照当月缴存额和月租金孰低原则支付。]\n\n流程中-- --中间表示用户意图或跳转条件,部分用户意图及其示例话术为:\n\"租房提取公积金\": [\"租房子是可以提取公积金的吧\", \"租房提取公积金需要满足哪些条件\", \"租房提取公积金的额度是多少\"]\n\n\n北京政务公积金-购房公积金提取的处理流程:\nflowchart TD\nA2([开始]) -- 购房提取公积金 --> B2[询问用户是北京购房还是异地购房]\nB2 -- 北京 --> C2[跟用户确认自己或配偶有没有提取过]\nC2 -- 自己提取过 --> D2[严格回复: 如您购房款没到提取上限可直接办理二次提取,身份证到任意管理部(除通州管理部本部)或受托银行网点办理。如在异地提取过,还需要提供异地公积金中心开具的提取记录单。]\nC2 -- 配偶提取过 --> E2[严格回复: 提供身份证原件、结婚证原件到任意管理部(除通州管理部本部)或受托银行网点办理。如在异地提取过,还需要提供异地公积金中心开具的提取记录单。]\nC2 -- 都没有提取过 --> F2[告诉用户可以在北京公积金网站http://gjj2.beijing2.gov2.cn2/直接办理,也可以询问线上办理和柜台办理所需材料以及周期]\nF2 -- 线上办理材料 --> G2[严格回复: 有网签直接填写网签合同编号和网签查询密码,无网签需上传房屋所有权证或不动产权证、购房发票或契税票原件影像。如在异地提取过,还需要提供异地公积金中心开具的提取记录单。线上办理地址:北京公积金网站http://gjj.beijing.gov.cn/。]\nF2 -- 柜台办理材料 --> H2[严格回复: 本人办理提供身份证原件、结婚证原件、网签合同编号及密码、无网签信息的,提供房屋所有权证号或不动产权证号、销售不动产统一发票或契税完税凭证(需有计税金额)原件,到任意管理部(除通州管理部本部)或受托银行网点均可办理。经办人办理的,经办人携带经办人身份证原件、申请人填写的《申请提取住房公积金个人授权、承诺书》一份及上述中的材料办理。如在异地提取过,还需要提供异地公积金中心开具的提取记录单。]\nF2 -- 提取周期 --> I2[严格回复: 本人只需要持身份证原件到任意管理部(除通州管理部)或受托银行网点办理约定提取。约定提取周期可选择三个月、半年或一年。]\nB2 -- 异地 --> J2[询问用户是在河北、天津还是在户籍地购房]\nJ2 -- 都不是 --> K2[严格回复: 抱歉,无法为您办理公积金购房提取。特殊除外:如在2018年9月17日前自己或配偶在市属提取过,可以按照二次提取或配偶方提取办理。]\nJ2 -- 户籍地购房 --> L2[询问用户夫妻双方在北京有没有提取过]\nL2 -- 有 --> M2[告诉用户又北京购房提取记录的无法进行户籍地购房提取公积金]\nL2 -- 没有 --> N2[询问用户这套房子夫妻双方有没有在市管提取过]\nN2 -- 自己提取过 --> D2\nN2 -- 配偶提取过 --> E2\nN2 -- 都没提取过 --> O2[询问用户是全款还是贷款]\nO2 -- 全款购房 --> P2[告诉用户购买域外住房且人在购房地的,可通过“跨省通办”渠道,申请提取北京缴纳的公积金,具体可咨询购房地公积金中心]\nO2 -- 贷款购房 --> Q2[严格回复: 在京外购房可以凭北京住房公积金管理中心开具的《异地贷款职工住房公积金缴存使用证明》。该证明已可在北京公积金网站或政务服务便民自助终端直接打印,无需到柜台办理。向购房所在地城市的住房公积金管理中心申请住房公积金个人住房贷款时,应按照购房所在地城市的住房公积金管理中心要求准备贷款资料并办理贷款手续。若相关部门需电话核实证明信息,则可拨打010-12329热线电话进行核实。]\nJ2 -- 河北或天津 --> R2[询问用户夫妻双方是否在北京有房或有北京购房提取记录]\nR2 -- 没有 --> N2\nR2 -- 有 --> S2[告诉用户北京有房或有北京购房提取记录,无法进行河北或天津购房提取公积金。]\nJ2 -- 户籍地是河北或天津 --> T2[询问用户夫妻双方有没有北京购房提取记录]\nT2 -- 没有 --> N2\nT2 -- 有 --> S2\n\n流程中-- --中间表示用户意图或跳转条件,部分用户意图及其示例话术为:\n\"购房提取公积金\": [\"买房子怎么提取公积金\", \"我要买房子,可以提取公积金吗\", \"我要买房想提取公积金需要什么材料\"]\n\"户籍地购房\": [\"户籍地购房\", \"老家\", \"我老家\"]\n\n\n请记住当前时间为:2034-04-06 14:12:46 星期四\n# Inputs:\n你好,请问我怎么能从公积金账户里提取资金用于在北京购买我的第一套房子?\n"}], "type": "trace", "description": "你是北京政务中心的在线客服,主要负责:帮助想要进行租房公积金提取的用户判断是否符合条件;帮助想要进行购房公积金提取的用户判断是否符合条件", "constraints": "1. 参考下面流程回答问题。\n\n北京政务公积金-租房公积金提取的处理流程:\nflowchart TD\nA1([开始]) -- 租房提取公积金 --> B1[严格回复: 租房提取公积金条件:1,连续足额缴存满3个月;2,本人及配偶在北京无自有住房且租赁住房。请问您是否符合条件?]\nB1 -- 符合条件 --> C1[询问用户租的是商品房、公租房或保租房?]\nB1 -- 不符合条件 --> D1[告诉用户无法办理]\nC1 -- 公租房 or 保租房 --> E1[严格回复: 租房提取北京公积金网站http://gjj.beijing.gov.cn/可直接办结,每月可按照实际月租金提取。特殊除外:2023年6月5日前已开具公租房或保租房的租房发票的,可以到柜台按照实际发票总金额办理提取一次, 但是必须提供租赁合同备案编号。]\nC1 -- 商品房 --> F1[问客户有没有发票]\nF1 -- 没有 --> G1[严格回复: 租房提取北京公积金网站http://gjj.beijing.gov.cn/可直接办结,每月到账2000元,一年不超过24000元,如一年到期后想继续提取,需勾选“本人同意在事项到期后系统自动接续申请”。]\nF1 -- 有 --> H1[严格回复: 请问您家符合多子女家庭(家庭内有二孩及以上多子女且至少一名子女未满18)吗?]\nH1 -- 符合条件 --> I1[严格回复: 租房提取北京公积金网站可直接办结,每月可按照实际月租金提取。]\nH1 -- 不符合条件 --> J1[严格回复: 租房提取北京公积金网站可直接办结,按月提取,按照当月缴存额和月租金孰低原则支付。]\n\n流程中-- --中间表示用户意图或跳转条件,部分用户意图及其示例话术为:\n\"租房提取公积金\": [\"租房子是可以提取公积金的吧\", \"租房提取公积金需要满足哪些条件\", \"租房提取公积金的额度是多少\"]\n\n\n北京政务公积金-购房公积金提取的处理流程:\nflowchart TD\nA2([开始]) -- 购房提取公积金 --> B2[询问用户是北京购房还是异地购房]\nB2 -- 北京 --> C2[跟用户确认自己或配偶有没有提取过]\nC2 -- 自己提取过 --> D2[严格回复: 如您购房款没到提取上限可直接办理二次提取,身份证到任意管理部(除通州管理部本部)或受托银行网点办理。如在异地提取过,还需要提供异地公积金中心开具的提取记录单。]\nC2 -- 配偶提取过 --> E2[严格回复: 提供身份证原件、结婚证原件到任意管理部(除通州管理部本部)或受托银行网点办理。如在异地提取过,还需要提供异地公积金中心开具的提取记录单。]\nC2 -- 都没有提取过 --> F2[告诉用户可以在北京公积金网站http://gjj2.beijing2.gov2.cn2/直接办理,也可以询问线上办理和柜台办理所需材料以及周期]\nF2 -- 线上办理材料 --> G2[严格回复: 有网签直接填写网签合同编号和网签查询密码,无网签需上传房屋所有权证或不动产权证、购房发票或契税票原件影像。如在异地提取过,还需要提供异地公积金中心开具的提取记录单。线上办理地址:北京公积金网站http://gjj.beijing.gov.cn/。]\nF2 -- 柜台办理材料 --> H2[严格回复: 本人办理提供身份证原件、结婚证原件、网签合同编号及密码、无网签信息的,提供房屋所有权证号或不动产权证号、销售不动产统一发票或契税完税凭证(需有计税金额)原件,到任意管理部(除通州管理部本部)或受托银行网点均可办理。经办人办理的,经办人携带经办人身份证原件、申请人填写的《申请提取住房公积金个人授权、承诺书》一份及上述中的材料办理。如在异地提取过,还需要提供异地公积金中心开具的提取记录单。]\nF2 -- 提取周期 --> I2[严格回复: 本人只需要持身份证原件到任意管理部(除通州管理部)或受托银行网点办理约定提取。约定提取周期可选择三个月、半年或一年。]\nB2 -- 异地 --> J2[询问用户是在河北、天津还是在户籍地购房]\nJ2 -- 都不是 --> K2[严格回复: 抱歉,无法为您办理公积金购房提取。特殊除外:如在2018年9月17日前自己或配偶在市属提取过,可以按照二次提取或配偶方提取办理。]\nJ2 -- 户籍地购房 --> L2[询问用户夫妻双方在北京有没有提取过]\nL2 -- 有 --> M2[告诉用户又北京购房提取记录的无法进行户籍地购房提取公积金]\nL2 -- 没有 --> N2[询问用户这套房子夫妻双方有没有在市管提取过]\nN2 -- 自己提取过 --> D2\nN2 -- 配偶提取过 --> E2\nN2 -- 都没提取过 --> O2[询问用户是全款还是贷款]\nO2 -- 全款购房 --> P2[告诉用户购买域外住房且人在购房地的,可通过“跨省通办”渠道,申请提取北京缴纳的公积金,具体可咨询购房地公积金中心]\nO2 -- 贷款购房 --> Q2[严格回复: 在京外购房可以凭北京住房公积金管理中心开具的《异地贷款职工住房公积金缴存使用证明》。该证明已可在北京公积金网站或政务服务便民自助终端直接打印,无需到柜台办理。向购房所在地城市的住房公积金管理中心申请住房公积金个人住房贷款时,应按照购房所在地城市的住房公积金管理中心要求准备贷款资料并办理贷款手续。若相关部门需电话核实证明信息,则可拨打010-12329热线电话进行核实。]\nJ2 -- 河北或天津 --> R2[询问用户夫妻双方是否在北京有房或有北京购房提取记录]\nR2 -- 没有 --> N2\nR2 -- 有 --> S2[告诉用户北京有房或有北京购房提取记录,无法进行河北或天津购房提取公积金。]\nJ2 -- 户籍地是河北或天津 --> T2[询问用户夫妻双方有没有北京购房提取记录]\nT2 -- 没有 --> N2\nT2 -- 有 --> S2\n\n流程中-- --中间表示用户意图或跳转条件,部分用户意图及其示例话术为:\n\"购房提取公积金\": [\"买房子怎么提取公积金\", \"我要买房子,可以提取公积金吗\", \"我要买房想提取公积金需要什么材料\"]\n\"户籍地购房\": [\"户籍地购房\", \"老家\", \"我老家\"]\n\n\n请记住当前时间为:2034-04-06 14:12:46 星期四", "input": "你好,请问我怎么能从公积金账户里提取资金用于在北京购买我的第一套房子?", "constraints_num": 1, "constraints_splits": ["1. 参考下面流程回答问题。\n\n北京政务公积金-租房公积金提取的处理流程:\nflowchart TD\nA1([开始]) -- 租房提取公积金 --> B1[严格回复: 租房提取公积金条件:1,连续足额缴存满3个月;2,本人及配偶在北京无自有住房且租赁住房。请问您是否符合条件?]\nB1 -- 符合条件 --> C1[询问用户租的是商品房、公租房或保租房?]\nB1 -- 不符合条件 --> D1[告诉用户无法办理]\nC1 -- 公租房 or 保租房 --> E1[严格回复: 租房提取北京公积金网站http://gjj.beijing.gov.cn/可直接办结,每月可按照实际月租金提取。特殊除外:2023年6月5日前已开具公租房或保租房的租房发票的,可以到柜台按照实际发票总金额办理提取一次, 但是必须提供租赁合同备案编号。]\nC1 -- 商品房 --> F1[问客户有没有发票]\nF1 -- 没有 --> G1[严格回复: 租房提取北京公积金网站http://gjj.beijing.gov.cn/可直接办结,每月到账2000元,一年不超过24000元,如一年到期后想继续提取,需勾选“本人同意在事项到期后系统自动接续申请”。]\nF1 -- 有 --> H1[严格回复: 请问您家符合多子女家庭(家庭内有二孩及以上多子女且至少一名子女未满18)吗?]\nH1 -- 符合条件 --> I1[严格回复: 租房提取北京公积金网站可直接办结,每月可按照实际月租金提取。]\nH1 -- 不符合条件 --> J1[严格回复: 租房提取北京公积金网站可直接办结,按月提取,按照当月缴存额和月租金孰低原则支付。]\n\n流程中-- --中间表示用户意图或跳转条件,部分用户意图及其示例话术为:\n\"租房提取公积金\": [\"租房子是可以提取公积金的吧\", \"租房提取公积金需要满足哪些条件\", \"租房提取公积金的额度是多少\"]\n\n\n北京政务公积金-购房公积金提取的处理流程:\nflowchart TD\nA2([开始]) -- 购房提取公积金 --> B2[询问用户是北京购房还是异地购房]\nB2 -- 北京 --> C2[跟用户确认自己或配偶有没有提取过]\nC2 -- 自己提取过 --> D2[严格回复: 如您购房款没到提取上限可直接办理二次提取,身份证到任意管理部(除通州管理部本部)或受托银行网点办理。如在异地提取过,还需要提供异地公积金中心开具的提取记录单。]\nC2 -- 配偶提取过 --> E2[严格回复: 提供身份证原件、结婚证原件到任意管理部(除通州管理部本部)或受托银行网点办理。如在异地提取过,还需要提供异地公积金中心开具的提取记录单。]\nC2 -- 都没有提取过 --> F2[告诉用户可以在北京公积金网站http://gjj2.beijing2.gov2.cn2/直接办理,也可以询问线上办理和柜台办理所需材料以及周期]\nF2 -- 线上办理材料 --> G2[严格回复: 有网签直接填写网签合同编号和网签查询密码,无网签需上传房屋所有权证或不动产权证、购房发票或契税票原件影像。如在异地提取过,还需要提供异地公积金中心开具的提取记录单。线上办理地址:北京公积金网站http://gjj.beijing.gov.cn/。]\nF2 -- 柜台办理材料 --> H2[严格回复: 本人办理提供身份证原件、结婚证原件、网签合同编号及密码、无网签信息的,提供房屋所有权证号或不动产权证号、销售不动产统一发票或契税完税凭证(需有计税金额)原件,到任意管理部(除通州管理部本部)或受托银行网点均可办理。经办人办理的,经办人携带经办人身份证原件、申请人填写的《申请提取住房公积金个人授权、承诺书》一份及上述中的材料办理。如在异地提取过,还需要提供异地公积金中心开具的提取记录单。]\nF2 -- 提取周期 --> I2[严格回复: 本人只需要持身份证原件到任意管理部(除通州管理部)或受托银行网点办理约定提取。约定提取周期可选择三个月、半年或一年。]\nB2 -- 异地 --> J2[询问用户是在河北、天津还是在户籍地购房]\nJ2 -- 都不是 --> K2[严格回复: 抱歉,无法为您办理公积金购房提取。特殊除外:如在2018年9月17日前自己或配偶在市属提取过,可以按照二次提取或配偶方提取办理。]\nJ2 -- 户籍地购房 --> L2[询问用户夫妻双方在北京有没有提取过]\nL2 -- 有 --> M2[告诉用户又北京购房提取记录的无法进行户籍地购房提取公积金]\nL2 -- 没有 --> N2[询问用户这套房子夫妻双方有没有在市管提取过]\nN2 -- 自己提取过 --> D2\nN2 -- 配偶提取过 --> E2\nN2 -- 都没提取过 --> O2[询问用户是全款还是贷款]\nO2 -- 全款购房 --> P2[告诉用户购买域外住房且人在购房地的,可通过“跨省通办”渠道,申请提取北京缴纳的公积金,具体可咨询购房地公积金中心]\nO2 -- 贷款购房 --> Q2[严格回复: 在京外购房可以凭北京住房公积金管理中心开具的《异地贷款职工住房公积金缴存使用证明》。该证明已可在北京公积金网站或政务服务便民自助终端直接打印,无需到柜台办理。向购房所在地城市的住房公积金管理中心申请住房公积金个人住房贷款时,应按照购房所在地城市的住房公积金管理中心要求准备贷款资料并办理贷款手续。若相关部门需电话核实证明信息,则可拨打010-12329热线电话进行核实。]\nJ2 -- 河北或天津 --> R2[询问用户夫妻双方是否在北京有房或有北京购房提取记录]\nR2 -- 没有 --> N2\nR2 -- 有 --> S2[告诉用户北京有房或有北京购房提取记录,无法进行河北或天津购房提取公积金。]\nJ2 -- 户籍地是河北或天津 --> T2[询问用户夫妻双方有没有北京购房提取记录]\nT2 -- 没有 --> N2\nT2 -- 有 --> S2\n\n流程中-- --中间表示用户意图或跳转条件,部分用户意图及其示例话术为:\n\"购房提取公积金\": [\"买房子怎么提取公积金\", \"我要买房子,可以提取公积金吗\", \"我要买房想提取公积金需要什么材料\"]\n\"户籍地购房\": [\"户籍地购房\", \"老家\", \"我老家\"]\n\n\n请记住当前时间为:2034-04-06 14:12:46 星期四"], "levels2": ["自然语言流程背景信息约束"], "category": "trace1.0"} +{"id": "192", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇题为\"我的理想家乡\"的短文\n1. 短文应以Markdown格式提交,使用标题、子标题和强调文本(例如,*斜体*或**粗体**)来突出关键信息,确保文本内容的层次清晰和可读性;\n"}], "type": "trace", "description": "撰写一篇题为\"我的理想家乡\"的短文", "constraints": "1. 短文应以Markdown格式提交,使用标题、子标题和强调文本(例如,*斜体*或**粗体**)来突出关键信息,确保文本内容的层次清晰和可读性;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 短文应以Markdown格式提交,使用标题、子标题和强调文本(例如,*斜体*或**粗体**)来突出关键信息,确保文本内容的层次清晰和可读性;"], "levels2": ["输出格式约束"], "category": "trace1.0"} +{"id": "193", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇论文风格的文章,论述阅读小说如何增进人类的理解力、同情心和想象力。\n1. 确保论文结构清晰,包括引言、主体论证和结论部分。\n"}], "type": "trace", "description": "撰写一篇论文风格的文章,论述阅读小说如何增进人类的理解力、同情心和想象力。", "constraints": "1. 确保论文结构清晰,包括引言、主体论证和结论部分。", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 确保论文结构清晰,包括引言、主体论证和结论部分。"], "levels2": ["层次化结构约束"], "category": "trace1.0"} +{"id": "194", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰寫一篇論文,解釋為什麼美國的教育系統會培養出“呆板無趣、缺乏好奇心”的學生。\n1. 全文需保持客觀、理性的態度,避免使用情緒化的語言或偏見性表達。\n"}], "type": "trace", "description": "撰寫一篇論文,解釋為什麼美國的教育系統會培養出“呆板無趣、缺乏好奇心”的學生。", "constraints": "1. 全文需保持客觀、理性的態度,避免使用情緒化的語言或偏見性表達。", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 全文需保持客觀、理性的態度,避免使用情緒化的語言或偏見性表達。"], "levels2": ["语气风格约束"], "category": "trace1.0"} +{"id": "195", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "设计一个吸引人的广告宣传语\n1. 宣传语需以大写形式呈现,以突出广告的视觉效果;\n"}], "type": "trace", "description": "设计一个吸引人的广告宣传语", "constraints": "1. 宣传语需以大写形式呈现,以突出广告的视觉效果;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 宣传语需以大写形式呈现,以突出广告的视觉效果;"], "levels2": ["语言特征约束"], "category": "trace1.0"} +{"id": "196", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为特斯拉汽车品牌撰写一份广告脚本。\n1. 脚本中关键信息和产品特点应使用加粗字体突出显示,以增强视觉效果和信息传达的清晰度;\n"}], "type": "trace", "description": "为特斯拉汽车品牌撰写一份广告脚本。", "constraints": "1. 脚本中关键信息和产品特点应使用加粗字体突出显示,以增强视觉效果和信息传达的清晰度;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 脚本中关键信息和产品特点应使用加粗字体突出显示,以增强视觉效果和信息传达的清晰度;"], "levels2": ["文本样式约束"], "category": "trace1.0"} +{"id": "197", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "根据一组给定的植物学数据集,使用机器学习分类模型来预测一个未知花卉的类别。\n1. 报告中包含模型的准确度、召回率和F1分数。\n# Inputs:\n数据集包含1000条记录,每条记录包含花瓣的长度(cm)、花瓣的宽度(cm)、花萼的长度(cm)、花萼的宽度(cm)以及花卉的颜色(红、黄、白)特征。花卉的类别为玫瑰、郁金香、百合。\n"}], "type": "trace", "description": "根据一组给定的植物学数据集,使用机器学习分类模型来预测一个未知花卉的类别。", "constraints": "1. 报告中包含模型的准确度、召回率和F1分数。", "input": "数据集包含1000条记录,每条记录包含花瓣的长度(cm)、花瓣的宽度(cm)、花萼的长度(cm)、花萼的宽度(cm)以及花卉的颜色(红、黄、白)特征。花卉的类别为玫瑰、郁金香、百合。", "constraints_num": 1, "constraints_splits": ["1. 报告中包含模型的准确度、召回率和F1分数。"], "levels2": ["包含约束"], "category": "trace1.0"} +{"id": "198", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "提供一个适合大学数学专业水平的、具有挑战性的数学问题(难度等级评定在7至9之间),并以专业学术的语气,使用适当的数学公式和术语,解释如何找到问题的答案。\n1. 以一位数学教授的身份提出问题和解答;\n"}], "type": "trace", "description": "提供一个适合大学数学专业水平的、具有挑战性的数学问题(难度等级评定在7至9之间),并以专业学术的语气,使用适当的数学公式和术语,解释如何找到问题的答案。", "constraints": "1. 以一位数学教授的身份提出问题和解答;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 以一位数学教授的身份提出问题和解答;"], "levels2": ["角色扮演约束"], "category": "trace1.0"} +{"id": "199", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以严谨正式和科普的语气风格,写一篇关于气候变化对植物和动物生态系统的影响的文章。\n1. 文章应该按照以下结构模版进行组织:1. 引言:介绍气候变化的背景与重要性。1. 案例分析:详细介绍三个具体的植物或动物案例,每个案例至少探讨两种气候变化影响。1. 结论:总结气候变化对生态系统的影响以及未来展望。1. 参考文献列表:使用编号列表形式列出所有引用的文献;\n"}], "type": "trace", "description": "以严谨正式和科普的语气风格,写一篇关于气候变化对植物和动物生态系统的影响的文章。", "constraints": "1. 文章应该按照以下结构模版进行组织:1. 引言:介绍气候变化的背景与重要性。1. 案例分析:详细介绍三个具体的植物或动物案例,每个案例至少探讨两种气候变化影响。1. 结论:总结气候变化对生态系统的影响以及未来展望。1. 参考文献列表:使用编号列表形式列出所有引用的文献;", "input": "NULL", "constraints_num": 1, "constraints_splits": ["1. 文章应该按照以下结构模版进行组织:1. 引言:介绍气候变化的背景与重要性。1. 案例分析:详细介绍三个具体的植物或动物案例,每个案例至少探讨两种气候变化影响。1. 结论:总结气候变化对生态系统的影响以及未来展望。1. 参考文献列表:使用编号列表形式列出所有引用的文献;"], "levels2": ["模版约束"], "category": "trace1.0"} +{"id": "200", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以科学研究员的角度,解析气候变化对极地海洋环境的影响,特别关注北极地区的冰层融化情况。报告应包括海洋生态系统面临的三大挑战,以及针对这些挑战的创新应对措施。\n1. 报告应从科学研究员的角度撰写;\n2. 报告应特别关注北极地区的冰层融化情况;\n3. 报告中应列出海洋生态系统面临的三大挑战;\n4. 报告中应提出针对这些挑战的创新应对措施,且措施应具有实际操作性;\n5. 应考虑到政府、科研机构和民间组织的参与;\n6. 报告的受众为环境政策制定者和相关科研人员;\n7. 报告中应使用专业术语;\n8. 报告中需提供详实的科学数据支持。\n"}], "type": "trace", "description": "以科学研究员的角度,解析气候变化对极地海洋环境的影响,特别关注北极地区的冰层融化情况。报告应包括海洋生态系统面临的三大挑战,以及针对这些挑战的创新应对措施。", "constraints": "1. 报告应从科学研究员的角度撰写;\n2. 报告应特别关注北极地区的冰层融化情况;\n3. 报告中应列出海洋生态系统面临的三大挑战;\n4. 报告中应提出针对这些挑战的创新应对措施,且措施应具有实际操作性;\n5. 应考虑到政府、科研机构和民间组织的参与;\n6. 报告的受众为环境政策制定者和相关科研人员;\n7. 报告中应使用专业术语;\n8. 报告中需提供详实的科学数据支持。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 报告应从科学研究员的角度撰写;", "2. 报告应特别关注北极地区的冰层融化情况;", "3. 报告中应列出海洋生态系统面临的三大挑战;", "4. 报告中应提出针对这些挑战的创新应对措施,且措施应具有实际操作性;", "5. 应考虑到政府、科研机构和民间组织的参与;", "6. 报告的受众为环境政策制定者和相关科研人员;", "7. 报告中应使用专业术语;", "8. 报告中需提供详实的科学数据支持。"], "levels2": ["角色扮演约束", "主题约束", "包含约束", "包含约束", "包含约束", "受众目标约束", "语言特征约束", "引用和参考约束"], "category": "trace1.0"} +{"id": "201", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一份报告,分析环境因素对遗传疾病的影响机制,要求包括引言、方法、结果、讨论和结论五个部分,使用专业学术的语气风格,基于环境医学和遗传学的最新研究进展。\n1. 报告应采用专业学术的语气风格;\n2. 报告需根据环境医学和遗传学的最新研究进展撰写;\n3. 报告包含引言、方法、结果、讨论和结论五个部分;\n4. 结论中需提出科学的应对措施;\n5. 使用编号列表整理研究发现的关键点;\n6. 采用层次化结构组织内容;\n7. 报告的引用和参考遵循APA格式;\n8. 确保所有信息来源的准确性和可靠性;\n"}], "type": "trace", "description": "撰写一份报告,分析环境因素对遗传疾病的影响机制,要求包括引言、方法、结果、讨论和结论五个部分,使用专业学术的语气风格,基于环境医学和遗传学的最新研究进展。", "constraints": "1. 报告应采用专业学术的语气风格;\n2. 报告需根据环境医学和遗传学的最新研究进展撰写;\n3. 报告包含引言、方法、结果、讨论和结论五个部分;\n4. 结论中需提出科学的应对措施;\n5. 使用编号列表整理研究发现的关键点;\n6. 采用层次化结构组织内容;\n7. 报告的引用和参考遵循APA格式;\n8. 确保所有信息来源的准确性和可靠性;", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 报告应采用专业学术的语气风格;", "2. 报告需根据环境医学和遗传学的最新研究进展撰写;", "3. 报告包含引言、方法、结果、讨论和结论五个部分;", "4. 结论中需提出科学的应对措施;", "5. 使用编号列表整理研究发现的关键点;", "6. 采用层次化结构组织内容;", "7. 报告的引用和参考遵循APA格式;", "8. 确保所有信息来源的准确性和可靠性;"], "levels2": ["语气风格约束", "主题约束", "层次化结构约束", "包含约束", "编号和列表约束", "层次化结构约束", "引用和参考约束", "引用和参考约束"], "category": "trace1.0"} +{"id": "202", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以专业学术的语气,解释氨氧替加和达伊沙韦这两种药物的异同点,分析时需包括它们的化学结构、作用机制以及临床应用。同时,针对每种药物,明确指出至少三种它们分别适用于的具体情况,并从安全性、有效性和成本效益三个方面进行综合分析。\n1.以专业医学研究员的角度解释;\n2. 医学专业学生和临床医生;\n3. 化学结构、作用机制、临床应用、安全性、有效性和成本效益分析;\n4. 专业学术的;\n5. 使用医学专业术语;\n6. 以Markdown表格形式列出每种药物的特性对比和适用情况分析;\n7. 使用标题和子标题来区分药物特性对比和适用情况分析;\n8. 提供一份关于两种抗生素药物特性和适用情况的对比分析作为示例;\n"}], "type": "trace", "description": "以专业学术的语气,解释氨氧替加和达伊沙韦这两种药物的异同点,分析时需包括它们的化学结构、作用机制以及临床应用。同时,针对每种药物,明确指出至少三种它们分别适用于的具体情况,并从安全性、有效性和成本效益三个方面进行综合分析。", "constraints": "1.以专业医学研究员的角度解释;\n2. 医学专业学生和临床医生;\n3. 化学结构、作用机制、临床应用、安全性、有效性和成本效益分析;\n4. 专业学术的;\n5. 使用医学专业术语;\n6. 以Markdown表格形式列出每种药物的特性对比和适用情况分析;\n7. 使用标题和子标题来区分药物特性对比和适用情况分析;\n8. 提供一份关于两种抗生素药物特性和适用情况的对比分析作为示例;", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1.以专业医学研究员的角度解释;", "2. 医学专业学生和临床医生;", "3. 化学结构、作用机制、临床应用、安全性、有效性和成本效益分析;", "4. 专业学术的;", "5. 使用医学专业术语;", "6. 以Markdown表格形式列出每种药物的特性对比和适用情况分析;", "7. 使用标题和子标题来区分药物特性对比和适用情况分析;", "8. 提供一份关于两种抗生素药物特性和适用情况的对比分析作为示例;"], "levels2": ["角色扮演约束", "受众目标约束", "包含约束", "语气风格约束", "语言特征约束", "输出格式约束", "层次化结构约束", "正例约束"], "category": "trace1.0"} +{"id": "203", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一个响应式的HTML表格,支持多个用户同时使用,具有实时更新和冲突处理功能,部署在AWS EC2上,使用DynamoDB数据库,确保高并发、数据安全性和企业级代码质量。\n1. 使用React前端、NestJS后端和AWS上的DynamoDB数据库;\n2. 前端应用程序每秒向后端发送onChange事件更新,并每秒从后端获取数据更新UI;\n3. 表格需要处理多个用户编辑时的冲突,确保数据一致性和完整性;\n4. 应用程序部署在AWS EC2实例上,使用DynamoDB作为数据存储;\n5. 设计时考虑高并发和数据安全性;\n6. 所有操作需要有完整的日志记录和审计追踪;\n7. 遵循敏捷开发流程,进行持续集成和持续部署(CI/CD);\n8. 确保代码质量和性能达到企业级标准;\n"}], "type": "trace", "description": "创建一个响应式的HTML表格,支持多个用户同时使用,具有实时更新和冲突处理功能,部署在AWS EC2上,使用DynamoDB数据库,确保高并发、数据安全性和企业级代码质量。", "constraints": "1. 使用React前端、NestJS后端和AWS上的DynamoDB数据库;\n2. 前端应用程序每秒向后端发送onChange事件更新,并每秒从后端获取数据更新UI;\n3. 表格需要处理多个用户编辑时的冲突,确保数据一致性和完整性;\n4. 应用程序部署在AWS EC2实例上,使用DynamoDB作为数据存储;\n5. 设计时考虑高并发和数据安全性;\n6. 所有操作需要有完整的日志记录和审计追踪;\n7. 遵循敏捷开发流程,进行持续集成和持续部署(CI/CD);\n8. 确保代码质量和性能达到企业级标准;", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 使用React前端、NestJS后端和AWS上的DynamoDB数据库;", "2. 前端应用程序每秒向后端发送onChange事件更新,并每秒从后端获取数据更新UI;", "3. 表格需要处理多个用户编辑时的冲突,确保数据一致性和完整性;", "4. 应用程序部署在AWS EC2实例上,使用DynamoDB作为数据存储;", "5. 设计时考虑高并发和数据安全性;", "6. 所有操作需要有完整的日志记录和审计追踪;", "7. 遵循敏捷开发流程,进行持续集成和持续部署(CI/CD);", "8. 确保代码质量和性能达到企业级标准;"], "levels2": ["主题约束", "数值约束", "表格背景信息约束", "包含约束", "主题约束", "输出格式约束", "自然语言流程背景信息约束", "价值观约束"], "category": "trace1.0"} +{"id": "204", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一个全面的广告活动,针对新型能量饮料,面向18-30岁的年轻成年人,设计吸引特定细分市场的营销策略。\n1. 广告活动应聚焦于创新产品的营销策略;\n2. 目标受众为18-30岁的年轻成年人,需明确其细分市场,如学生、创业者、健身爱好者等;\n3. 需制定吸引特定群体制定关键信息和口号;\n4. 选择最有效的媒体渠道进行宣传(如社交媒体、在线广告、户外广告等);\n5. 考虑与意见领袖合作或举办活动以增强品牌影响力;\n6. 策略需确保传达能量饮料的功能性、独特性和与目标受众生活方式的关联性;\n7. 提案中需使用正式的商务语言;\n8. 提供一个时间表和预算概览,以展示广告活动的执行步骤和预期成本;\n"}], "type": "trace", "description": "创建一个全面的广告活动,针对新型能量饮料,面向18-30岁的年轻成年人,设计吸引特定细分市场的营销策略。", "constraints": "1. 广告活动应聚焦于创新产品的营销策略;\n2. 目标受众为18-30岁的年轻成年人,需明确其细分市场,如学生、创业者、健身爱好者等;\n3. 需制定吸引特定群体制定关键信息和口号;\n4. 选择最有效的媒体渠道进行宣传(如社交媒体、在线广告、户外广告等);\n5. 考虑与意见领袖合作或举办活动以增强品牌影响力;\n6. 策略需确保传达能量饮料的功能性、独特性和与目标受众生活方式的关联性;\n7. 提案中需使用正式的商务语言;\n8. 提供一个时间表和预算概览,以展示广告活动的执行步骤和预期成本;", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 广告活动应聚焦于创新产品的营销策略;", "2. 目标受众为18-30岁的年轻成年人,需明确其细分市场,如学生、创业者、健身爱好者等;", "3. 需制定吸引特定群体制定关键信息和口号;", "4. 选择最有效的媒体渠道进行宣传(如社交媒体、在线广告、户外广告等);", "5. 考虑与意见领袖合作或举办活动以增强品牌影响力;", "6. 策略需确保传达能量饮料的功能性、独特性和与目标受众生活方式的关联性;", "7. 提案中需使用正式的商务语言;", "8. 提供一个时间表和预算概览,以展示广告活动的执行步骤和预期成本;"], "levels2": ["主题约束", "受众目标约束", "受众目标约束", "包含约束", "包含约束", "受众目标约束", "语气风格约束", "输出格式约束"], "category": "trace1.0"} +{"id": "205", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "在旋转姿势下为患者进行脊麻手术时,遵循特定情境下的详细步骤和注意事项,以最大程度地避免可能的并发症。\n1. 遵循术前评估,特别注意脊柱状况;\n2. 确保患者在旋转至侧卧位前,采取适当的体位,使用合适的支撑物;\n3. 确保所有必要的监测设备在患者体位变动前后均能正确工作;\n4. 与手术团队成员进行有效沟通,确保在患者体位变动时,团队成员对患者的安全和舒适负责;\n5. 精确控制针头插入的角度和深度,避免过深或过浅导致的并发症;\n6. 在手术过程中,持续观察患者反应,立即采取相应措施;\n7. 手术后,密切观察患者是否出现与脊麻相关的并发症,及时处理;\n8. 向患者解释手术过程,包括采用旋转姿势的意义,以及可能的并发症。\n"}], "type": "trace", "description": "在旋转姿势下为患者进行脊麻手术时,遵循特定情境下的详细步骤和注意事项,以最大程度地避免可能的并发症。", "constraints": "1. 遵循术前评估,特别注意脊柱状况;\n2. 确保患者在旋转至侧卧位前,采取适当的体位,使用合适的支撑物;\n3. 确保所有必要的监测设备在患者体位变动前后均能正确工作;\n4. 与手术团队成员进行有效沟通,确保在患者体位变动时,团队成员对患者的安全和舒适负责;\n5. 精确控制针头插入的角度和深度,避免过深或过浅导致的并发症;\n6. 在手术过程中,持续观察患者反应,立即采取相应措施;\n7. 手术后,密切观察患者是否出现与脊麻相关的并发症,及时处理;\n8. 向患者解释手术过程,包括采用旋转姿势的意义,以及可能的并发症。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 遵循术前评估,特别注意脊柱状况;", "2. 确保患者在旋转至侧卧位前,采取适当的体位,使用合适的支撑物;", "3. 确保所有必要的监测设备在患者体位变动前后均能正确工作;", "4. 与手术团队成员进行有效沟通,确保在患者体位变动时,团队成员对患者的安全和舒适负责;", "5. 精确控制针头插入的角度和深度,避免过深或过浅导致的并发症;", "6. 在手术过程中,持续观察患者反应,立即采取相应措施;", "7. 手术后,密切观察患者是否出现与脊麻相关的并发症,及时处理;", "8. 向患者解释手术过程,包括采用旋转姿势的意义,以及可能的并发症。"], "levels2": ["自然语言流程背景信息约束", "包含约束", "包含约束", "角色扮演约束", "数值约束", "自然语言流程背景信息约束", "包含约束", "角色扮演约束"], "category": "trace1.0"} +{"id": "206", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为Deal Sourcing模块创建代码,设计仪表板\n1. 使用Bootstrap样式设计;\n2. 确保代码遵循HTML5和CSS3的语法规则;\n3. 添加搜索、筛选和分页功能;\n4. 搜索功能应能支持关键词和过滤选项;\n5. 筛选功能需支持多条件组合筛选;\n6. 分页功能需确保每页不超过50项记录;\n7. 整体布局需保持清晰、直观;\n8. 确保在不同屏幕尺寸下的自适应性和美观性;\n"}], "type": "trace", "description": "为Deal Sourcing模块创建代码,设计仪表板", "constraints": "1. 使用Bootstrap样式设计;\n2. 确保代码遵循HTML5和CSS3的语法规则;\n3. 添加搜索、筛选和分页功能;\n4. 搜索功能应能支持关键词和过滤选项;\n5. 筛选功能需支持多条件组合筛选;\n6. 分页功能需确保每页不超过50项记录;\n7. 整体布局需保持清晰、直观;\n8. 确保在不同屏幕尺寸下的自适应性和美观性;", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 使用Bootstrap样式设计;", "2. 确保代码遵循HTML5和CSS3的语法规则;", "3. 添加搜索、筛选和分页功能;", "4. 搜索功能应能支持关键词和过滤选项;", "5. 筛选功能需支持多条件组合筛选;", "6. 分页功能需确保每页不超过50项记录;", "7. 整体布局需保持清晰、直观;", "8. 确保在不同屏幕尺寸下的自适应性和美观性;"], "levels2": ["文本样式约束", "语法结构约束", "包含约束", "包含约束", "包含约束", "数值约束", "文本样式约束", "文本样式约束"], "category": "trace1.0"} +{"id": "207", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为AI工具集成服务设计一个服务页面\n1. 使用Elementor进行设计,确保页面布局清晰,视觉效果吸引人;\n2. 页面包括引人注目的标题和副标题,清晰地传达服务价值;\n3. 页面详细的功能介绍,列出至少5个核心功能;\n4. 页面包含至少3个客户案例,展示服务的实际应用和效果;\n5. 页面提供至少3种不同级别的价格计划;\n6. 页面包含至少5个问题的常见问题解答,解决潜在客户的疑虑;\n7. 页面中应包含关键词优化的元描述,不少于150字,以及相关的元标签;\n8. 所有内容符合SEO最佳实践,以提高搜索引擎排名;\n"}], "type": "trace", "description": "为AI工具集成服务设计一个服务页面", "constraints": "1. 使用Elementor进行设计,确保页面布局清晰,视觉效果吸引人;\n2. 页面包括引人注目的标题和副标题,清晰地传达服务价值;\n3. 页面详细的功能介绍,列出至少5个核心功能;\n4. 页面包含至少3个客户案例,展示服务的实际应用和效果;\n5. 页面提供至少3种不同级别的价格计划;\n6. 页面包含至少5个问题的常见问题解答,解决潜在客户的疑虑;\n7. 页面中应包含关键词优化的元描述,不少于150字,以及相关的元标签;\n8. 所有内容符合SEO最佳实践,以提高搜索引擎排名;", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 使用Elementor进行设计,确保页面布局清晰,视觉效果吸引人;", "2. 页面包括引人注目的标题和副标题,清晰地传达服务价值;", "3. 页面详细的功能介绍,列出至少5个核心功能;", "4. 页面包含至少3个客户案例,展示服务的实际应用和效果;", "5. 页面提供至少3种不同级别的价格计划;", "6. 页面包含至少5个问题的常见问题解答,解决潜在客户的疑虑;", "7. 页面中应包含关键词优化的元描述,不少于150字,以及相关的元标签;", "8. 所有内容符合SEO最佳实践,以提高搜索引擎排名;"], "levels2": ["模版约束", "层次化结构约束", "数值约束", "包含约束", "数值约束", "数值约束", "数值约束", "文本样式约束"], "category": "trace1.0"} +{"id": "208", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "设计一个商业模式,该模式能够有效地连接捐赠者、患者和医生,用于医疗慈善平台,模式需以表格形式呈现,包括收入来源、成本结构、关键活动、关键资源、关键合作伙伴和客户细分。\n1. 患者需求需经过财务和医疗需求验证,医疗需求由医生验证;\n2. 捐赠者可以自由选择向特定经过验证的患者捐赠任意金额,最低限额为5美元;\n3. 收入来源需详细说明平台如何从捐赠、广告、服务费等中获取收入;\n4. 成本结构需列出运营平台所需的成本,如员工薪资、技术开发、市场推广等;\n5. 关键活动需描述平台为实现商业模式成功运营的核心活动,如患者需求验证、医生验证、捐赠管理等;\n6. 关键资源需列出平台成功运营所需的关键资源,如技术平台、医疗专家、营销渠道等;\n7. 关键合作伙伴需说明平台与哪些关键合作伙伴建立合作关系,如医院、保险公司、慈善组织等;\n8. 客户细分需定义平台的目标客户群体,包括捐赠者、患者和医生,并描述他们各自的需求和利益。\n"}], "type": "trace", "description": "设计一个商业模式,该模式能够有效地连接捐赠者、患者和医生,用于医疗慈善平台,模式需以表格形式呈现,包括收入来源、成本结构、关键活动、关键资源、关键合作伙伴和客户细分。", "constraints": "1. 患者需求需经过财务和医疗需求验证,医疗需求由医生验证;\n2. 捐赠者可以自由选择向特定经过验证的患者捐赠任意金额,最低限额为5美元;\n3. 收入来源需详细说明平台如何从捐赠、广告、服务费等中获取收入;\n4. 成本结构需列出运营平台所需的成本,如员工薪资、技术开发、市场推广等;\n5. 关键活动需描述平台为实现商业模式成功运营的核心活动,如患者需求验证、医生验证、捐赠管理等;\n6. 关键资源需列出平台成功运营所需的关键资源,如技术平台、医疗专家、营销渠道等;\n7. 关键合作伙伴需说明平台与哪些关键合作伙伴建立合作关系,如医院、保险公司、慈善组织等;\n8. 客户细分需定义平台的目标客户群体,包括捐赠者、患者和医生,并描述他们各自的需求和利益。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 患者需求需经过财务和医疗需求验证,医疗需求由医生验证;", "2. 捐赠者可以自由选择向特定经过验证的患者捐赠任意金额,最低限额为5美元;", "3. 收入来源需详细说明平台如何从捐赠、广告、服务费等中获取收入;", "4. 成本结构需列出运营平台所需的成本,如员工薪资、技术开发、市场推广等;", "5. 关键活动需描述平台为实现商业模式成功运营的核心活动,如患者需求验证、医生验证、捐赠管理等;", "6. 关键资源需列出平台成功运营所需的关键资源,如技术平台、医疗专家、营销渠道等;", "7. 关键合作伙伴需说明平台与哪些关键合作伙伴建立合作关系,如医院、保险公司、慈善组织等;", "8. 客户细分需定义平台的目标客户群体,包括捐赠者、患者和医生,并描述他们各自的需求和利益。"], "levels2": ["自然语言流程背景信息约束", "数值约束", "包含约束", "包含约束", "包含约束", "包含约束", "包含约束", "受众目标约束"], "category": "trace1.0"} +{"id": "209", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇博客文章的大纲,主题为“房主需要了解Bellgrove v Eldridge [1954] HCA 36的内容”。文章旨在帮助房主解决建筑纠纷,特别是在新南威尔士州民事和行政法庭(NCAT)的代表问题。文章应使用专业法律语言,同时保持对非法律背景读者的可读性。\n1. 文章标题为“房主需要了解Bellgrove v Eldridge [1954] HCA 36的内容”;\n2. 大纲应包括以下部分:引言、主体部分、实践部分、结论;\n3. 引言需概述Bellgrove v Eldridge案的历史背景;\n4. 主体部分需详细分析案件的判决及其对房主的意义;\n5. 实践部分需提供房主在遇到建筑纠纷时的应对策略;\n6. 结论需总结案件对房主权益保护的启示和建议;\n7. 大纲中应包含关键术语的定义,以及相关法律条款的引用;\n8. 文章应以专业法律语言为主,同时保持易于非法律背景的房主理解;\n"}], "type": "trace", "description": "撰写一篇博客文章的大纲,主题为“房主需要了解Bellgrove v Eldridge [1954] HCA 36的内容”。文章旨在帮助房主解决建筑纠纷,特别是在新南威尔士州民事和行政法庭(NCAT)的代表问题。文章应使用专业法律语言,同时保持对非法律背景读者的可读性。", "constraints": "1. 文章标题为“房主需要了解Bellgrove v Eldridge [1954] HCA 36的内容”;\n2. 大纲应包括以下部分:引言、主体部分、实践部分、结论;\n3. 引言需概述Bellgrove v Eldridge案的历史背景;\n4. 主体部分需详细分析案件的判决及其对房主的意义;\n5. 实践部分需提供房主在遇到建筑纠纷时的应对策略;\n6. 结论需总结案件对房主权益保护的启示和建议;\n7. 大纲中应包含关键术语的定义,以及相关法律条款的引用;\n8. 文章应以专业法律语言为主,同时保持易于非法律背景的房主理解;", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 文章标题为“房主需要了解Bellgrove v Eldridge [1954] HCA 36的内容”;", "2. 大纲应包括以下部分:引言、主体部分、实践部分、结论;", "3. 引言需概述Bellgrove v Eldridge案的历史背景;", "4. 主体部分需详细分析案件的判决及其对房主的意义;", "5. 实践部分需提供房主在遇到建筑纠纷时的应对策略;", "6. 结论需总结案件对房主权益保护的启示和建议;", "7. 大纲中应包含关键术语的定义,以及相关法律条款的引用;", "8. 文章应以专业法律语言为主,同时保持易于非法律背景的房主理解;"], "levels2": ["模版约束", "层次化结构约束", "包含约束", "包含约束", "包含约束", "包含约束", "引用和参考约束", "语气风格约束"], "category": "trace1.0"} +{"id": "210", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为患者G制定一个详细的治疗方案,针对其泌尿系结石情况。\n1. 患者G是一名30岁女性,职业为教师,生活方式较为规律;\n2. 患者饮食偏咸,最近一次B超显示其患有泌尿系结石疾病,症状逐渐加重,伴有轻微的血尿和腰部疼痛;\n3. 治疗方案需考虑患者的生活习惯和职业特点;\n4. 方案中应包含短期缓解症状的措施,长期预防结石复发的建议,以及明确手术治疗的适应症和禁忌症;\n5. 短期缓解症状措施中应包含止痛和消炎药物的使用;\n6. 长期预防结石复发建议中应包含饮食调整、运动建议和定期随访计划;\n7. 治疗方案需既专业又易于患者理解;\n8. 遵循医学伦理,不泄露患者隐私。\n"}], "type": "trace", "description": "为患者G制定一个详细的治疗方案,针对其泌尿系结石情况。", "constraints": "1. 患者G是一名30岁女性,职业为教师,生活方式较为规律;\n2. 患者饮食偏咸,最近一次B超显示其患有泌尿系结石疾病,症状逐渐加重,伴有轻微的血尿和腰部疼痛;\n3. 治疗方案需考虑患者的生活习惯和职业特点;\n4. 方案中应包含短期缓解症状的措施,长期预防结石复发的建议,以及明确手术治疗的适应症和禁忌症;\n5. 短期缓解症状措施中应包含止痛和消炎药物的使用;\n6. 长期预防结石复发建议中应包含饮食调整、运动建议和定期随访计划;\n7. 治疗方案需既专业又易于患者理解;\n8. 遵循医学伦理,不泄露患者隐私。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 患者G是一名30岁女性,职业为教师,生活方式较为规律;", "2. 患者饮食偏咸,最近一次B超显示其患有泌尿系结石疾病,症状逐渐加重,伴有轻微的血尿和腰部疼痛;", "3. 治疗方案需考虑患者的生活习惯和职业特点;", "4. 方案中应包含短期缓解症状的措施,长期预防结石复发的建议,以及明确手术治疗的适应症和禁忌症;", "5. 短期缓解症状措施中应包含止痛和消炎药物的使用;", "6. 长期预防结石复发建议中应包含饮食调整、运动建议和定期随访计划;", "7. 治疗方案需既专业又易于患者理解;", "8. 遵循医学伦理,不泄露患者隐私。"], "levels2": ["文本背景信息约束", "文本背景信息约束", "包含约束", "包含约束", "包含约束", "包含约束", "语气风格约束", "隐私约束"], "category": "trace1.0"} +{"id": "211", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以医学专业报告的格式,解析并报告以下肝脏功能检查结果:AST 37U/L,ALT 32U/L,GGT 50U/L,Cr 100umol/L。需判断肝脏是否存在损伤,如果存在损伤,需给出可能的损伤原因,提出相应的治疗建议和后续监测计划。报告需包含对各项指标的详细解释、临床意义以及与肝损伤的关联分析。\n1. 报告必须采用医学专业报告的格式;\n2. 需要对AST、ALT、GGT、Cr四项指标进行详细解释、临床意义分析和与肝损伤的关联;\n3. 报告中应明确判断肝脏是否存在损伤;\n4. 如果存在肝损伤,需列举可能的损伤原因,并解释;\n5. 报告需包含具体治疗建议;\n6. 需制定后续监测计划,包括定期检查项目及周期;\n7. 报告需包含附录,列明参考文献及研究依据;\n8. 报告需包含医生签名,用于示例。\n"}], "type": "trace", "description": "以医学专业报告的格式,解析并报告以下肝脏功能检查结果:AST 37U/L,ALT 32U/L,GGT 50U/L,Cr 100umol/L。需判断肝脏是否存在损伤,如果存在损伤,需给出可能的损伤原因,提出相应的治疗建议和后续监测计划。报告需包含对各项指标的详细解释、临床意义以及与肝损伤的关联分析。", "constraints": "1. 报告必须采用医学专业报告的格式;\n2. 需要对AST、ALT、GGT、Cr四项指标进行详细解释、临床意义分析和与肝损伤的关联;\n3. 报告中应明确判断肝脏是否存在损伤;\n4. 如果存在肝损伤,需列举可能的损伤原因,并解释;\n5. 报告需包含具体治疗建议;\n6. 需制定后续监测计划,包括定期检查项目及周期;\n7. 报告需包含附录,列明参考文献及研究依据;\n8. 报告需包含医生签名,用于示例。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 报告必须采用医学专业报告的格式;", "2. 需要对AST、ALT、GGT、Cr四项指标进行详细解释、临床意义分析和与肝损伤的关联;", "3. 报告中应明确判断肝脏是否存在损伤;", "4. 如果存在肝损伤,需列举可能的损伤原因,并解释;", "5. 报告需包含具体治疗建议;", "6. 需制定后续监测计划,包括定期检查项目及周期;", "7. 报告需包含附录,列明参考文献及研究依据;", "8. 报告需包含医生签名,用于示例。"], "levels2": ["模版约束", "包含约束", "包含约束", "包含约束", "包含约束", "自然语言流程背景信息约束", "引用和参考约束", "包含约束"], "category": "trace1.0"} +{"id": "212", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一个20分钟演讲的幻灯片,关于数据科学的介绍和比较,使用PowerPoint格式。\n1. 幻灯片需使用专业模板;\n2. 内容包括简要介绍数据科学、与传统商业分析、统计学、人工智能/机器学习的比较和对比;\n3. 使用并列对比表格和图表展示差异;\n4. 解释数据科学重要性,并给出实际工作案例;\n5. 提及数据科学中的当前趋势;\n6. 每个趋势下应添加解释性备注;\n7. 幻灯片中包含参考文献和引用,确保信息准确性和可靠性;\n8. 幻灯片格式为PowerPoint。\n"}], "type": "trace", "description": "创建一个20分钟演讲的幻灯片,关于数据科学的介绍和比较,使用PowerPoint格式。", "constraints": "1. 幻灯片需使用专业模板;\n2. 内容包括简要介绍数据科学、与传统商业分析、统计学、人工智能/机器学习的比较和对比;\n3. 使用并列对比表格和图表展示差异;\n4. 解释数据科学重要性,并给出实际工作案例;\n5. 提及数据科学中的当前趋势;\n6. 每个趋势下应添加解释性备注;\n7. 幻灯片中包含参考文献和引用,确保信息准确性和可靠性;\n8. 幻灯片格式为PowerPoint。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 幻灯片需使用专业模板;", "2. 内容包括简要介绍数据科学、与传统商业分析、统计学、人工智能/机器学习的比较和对比;", "3. 使用并列对比表格和图表展示差异;", "4. 解释数据科学重要性,并给出实际工作案例;", "5. 提及数据科学中的当前趋势;", "6. 每个趋势下应添加解释性备注;", "7. 幻灯片中包含参考文献和引用,确保信息准确性和可靠性;", "8. 幻灯片格式为PowerPoint。"], "levels2": ["模版约束", "包含约束", "输出格式约束", "包含约束", "包含约束", "文本样式约束", "引用和参考约束", "输出格式约束"], "category": "trace1.0"} +{"id": "213", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "描述一个人工智能系统如何在医疗保健领域中帮助医生诊断病情。\n1. 内容应围绕人工智能在医疗诊断中的应用,具体包括但不限于:人工智能系统如何收集和分析病人的症状、如何比对数据库中的病例、如何辅助医生进行病情的初步判断、如何提供治疗方案的建议,以及人工智能系统在医疗决策支持中的作用;\n2. 内容中应排除任何可能引起恐慌或误导的信息,确保信息的准确性和可靠性;\n3. 文本风格上,要求采用严谨正式的语气,使用专业学术的语言,保持客观、中立的立场;\n4. 使用专业术语,同时确保文本的可读性和易懂性;\n5. 格式上,要求使用编号列表来组织信息,包含适当的段落和小标题;\n6. 至少引用3篇相关领域的权威文献;\n7. 包含引言和结论部分;\n8. 整个描述的字数应在1000字以上。\n"}], "type": "trace", "description": "描述一个人工智能系统如何在医疗保健领域中帮助医生诊断病情。", "constraints": "1. 内容应围绕人工智能在医疗诊断中的应用,具体包括但不限于:人工智能系统如何收集和分析病人的症状、如何比对数据库中的病例、如何辅助医生进行病情的初步判断、如何提供治疗方案的建议,以及人工智能系统在医疗决策支持中的作用;\n2. 内容中应排除任何可能引起恐慌或误导的信息,确保信息的准确性和可靠性;\n3. 文本风格上,要求采用严谨正式的语气,使用专业学术的语言,保持客观、中立的立场;\n4. 使用专业术语,同时确保文本的可读性和易懂性;\n5. 格式上,要求使用编号列表来组织信息,包含适当的段落和小标题;\n6. 至少引用3篇相关领域的权威文献;\n7. 包含引言和结论部分;\n8. 整个描述的字数应在1000字以上。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 内容应围绕人工智能在医疗诊断中的应用,具体包括但不限于:人工智能系统如何收集和分析病人的症状、如何比对数据库中的病例、如何辅助医生进行病情的初步判断、如何提供治疗方案的建议,以及人工智能系统在医疗决策支持中的作用;", "2. 内容中应排除任何可能引起恐慌或误导的信息,确保信息的准确性和可靠性;", "3. 文本风格上,要求采用严谨正式的语气,使用专业学术的语言,保持客观、中立的立场;", "4. 使用专业术语,同时确保文本的可读性和易懂性;", "5. 格式上,要求使用编号列表来组织信息,包含适当的段落和小标题;", "6. 至少引用3篇相关领域的权威文献;", "7. 包含引言和结论部分;", "8. 整个描述的字数应在1000字以上。"], "levels2": ["主题约束", "价值观约束", "语气风格约束", "语气风格约束", "编号和列表约束", "引用和参考约束", "层次化结构约束", "数值约束"], "category": "trace1.0"} +{"id": "214", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "编辑一份消费者电子产品的详细说明文档\n1. 文档使用Markdown格式;\n2. 文档结构包含三个主要部分:产品规格和特性、简要说明如何使用、产品价格和兑换方式;\n3. 产品规格和特性部分使用编号列表列出至少5个关键特性;\n4. 如何使用部分采用步骤说明;\n5. 产品价格和兑换方式中,明确标出价格范围在$100至$500之间;\n6. 提供至少2种兑换方式,包括线上和线下;\n7. 文档总字数应在1000字以内;\n8. 所有价格和重要信息需用粗体标注;\n"}], "type": "trace", "description": "编辑一份消费者电子产品的详细说明文档", "constraints": "1. 文档使用Markdown格式;\n2. 文档结构包含三个主要部分:产品规格和特性、简要说明如何使用、产品价格和兑换方式;\n3. 产品规格和特性部分使用编号列表列出至少5个关键特性;\n4. 如何使用部分采用步骤说明;\n5. 产品价格和兑换方式中,明确标出价格范围在$100至$500之间;\n6. 提供至少2种兑换方式,包括线上和线下;\n7. 文档总字数应在1000字以内;\n8. 所有价格和重要信息需用粗体标注;", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 文档使用Markdown格式;", "2. 文档结构包含三个主要部分:产品规格和特性、简要说明如何使用、产品价格和兑换方式;", "3. 产品规格和特性部分使用编号列表列出至少5个关键特性;", "4. 如何使用部分采用步骤说明;", "5. 产品价格和兑换方式中,明确标出价格范围在$100至$500之间;", "6. 提供至少2种兑换方式,包括线上和线下;", "7. 文档总字数应在1000字以内;", "8. 所有价格和重要信息需用粗体标注;"], "levels2": ["输出格式约束", "层次化结构约束", "编号和列表约束", "编号和列表约束", "数值约束", "数值约束", "数值约束", "文本样式约束"], "category": "trace1.0"} +{"id": "215", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "写一篇关于人工智能技术的文章,重点讨论其优点和局限性。\n1. 文章应采取严谨正式的语气风格,确保内容的专业性和客观性;\n2. 优点和局限性的部分需使用标题加粗以强调,便于读者区分;\n3. 文章中不得包含任何未经证实的猜测或偏见信息,确保信息的准确性;\n4. 文章的总字数应在1500至2000字之间,以确保内容的全面性和深度;\n5. 必须包含至少三个具体的人工智能技术应用场景及其优劣势分析;\n6. 可以适当使用比喻或拟人等修辞手法,但必须保持内容的专业性和客观性;\n7. 需提供至少两个权威来源的引用,确保信息的可靠性和权威性;\n8. 文章结构应分为引言、正文和结论三个部分,层次分明,逻辑清晰。\n"}], "type": "trace", "description": "写一篇关于人工智能技术的文章,重点讨论其优点和局限性。", "constraints": "1. 文章应采取严谨正式的语气风格,确保内容的专业性和客观性;\n2. 优点和局限性的部分需使用标题加粗以强调,便于读者区分;\n3. 文章中不得包含任何未经证实的猜测或偏见信息,确保信息的准确性;\n4. 文章的总字数应在1500至2000字之间,以确保内容的全面性和深度;\n5. 必须包含至少三个具体的人工智能技术应用场景及其优劣势分析;\n6. 可以适当使用比喻或拟人等修辞手法,但必须保持内容的专业性和客观性;\n7. 需提供至少两个权威来源的引用,确保信息的可靠性和权威性;\n8. 文章结构应分为引言、正文和结论三个部分,层次分明,逻辑清晰。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 文章应采取严谨正式的语气风格,确保内容的专业性和客观性;", "2. 优点和局限性的部分需使用标题加粗以强调,便于读者区分;", "3. 文章中不得包含任何未经证实的猜测或偏见信息,确保信息的准确性;", "4. 文章的总字数应在1500至2000字之间,以确保内容的全面性和深度;", "5. 必须包含至少三个具体的人工智能技术应用场景及其优劣势分析;", "6. 可以适当使用比喻或拟人等修辞手法,但必须保持内容的专业性和客观性;", "7. 需提供至少两个权威来源的引用,确保信息的可靠性和权威性;", "8. 文章结构应分为引言、正文和结论三个部分,层次分明,逻辑清晰。"], "levels2": ["语气风格约束", "文本样式约束", "价值观约束", "数值约束", "包含约束", "语言特征约束", "引用和参考约束", "层次化结构约束"], "category": "trace1.0"} +{"id": "216", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "写一篇文章关于保险,包括保险概念的定义、主要保险种类的介绍,强调保险在当今社会的重要性,以及提供选择保险计划的建议。\n1. 文章需使用清晰的标题和子标题结构;\n2. 文章长度在1200至1500字之间;\n3. 文章中必须包含对保险概念的定义;\n4. 必须介绍主要的保险种类(如人寿保险、健康保险、汽车保险等);\n5. 强调在当今社会风险和不确定性背景下,保险对个人和家庭财务安全的重要性;\n6. 提供至少5条实际建议,帮助读者选择最适合自己的保险计划;\n7. 文章需采用正式、客观的语气风格;\n8. 文章以Markdown格式输出,确保内容易于阅读和理解;\n"}], "type": "trace", "description": "写一篇文章关于保险,包括保险概念的定义、主要保险种类的介绍,强调保险在当今社会的重要性,以及提供选择保险计划的建议。", "constraints": "1. 文章需使用清晰的标题和子标题结构;\n2. 文章长度在1200至1500字之间;\n3. 文章中必须包含对保险概念的定义;\n4. 必须介绍主要的保险种类(如人寿保险、健康保险、汽车保险等);\n5. 强调在当今社会风险和不确定性背景下,保险对个人和家庭财务安全的重要性;\n6. 提供至少5条实际建议,帮助读者选择最适合自己的保险计划;\n7. 文章需采用正式、客观的语气风格;\n8. 文章以Markdown格式输出,确保内容易于阅读和理解;", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 文章需使用清晰的标题和子标题结构;", "2. 文章长度在1200至1500字之间;", "3. 文章中必须包含对保险概念的定义;", "4. 必须介绍主要的保险种类(如人寿保险、健康保险、汽车保险等);", "5. 强调在当今社会风险和不确定性背景下,保险对个人和家庭财务安全的重要性;", "6. 提供至少5条实际建议,帮助读者选择最适合自己的保险计划;", "7. 文章需采用正式、客观的语气风格;", "8. 文章以Markdown格式输出,确保内容易于阅读和理解;"], "levels2": ["层次化结构约束", "数值约束", "包含约束", "包含约束", "主题约束", "数值约束", "语气风格约束", "输出格式约束"], "category": "trace1.0"} +{"id": "217", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为一家公司撰写一个市场推广计划\n1. 计划需包含市场分析、推广策略和预算规划三个部分;\n2. 市场分析部分应详细分析目标市场、竞争对手和客户需求;\n3. 推广策略部分需阐述如何通过广告、社交媒体和公关活动提高品牌知名度;\n4. 预算规划部分需提供一个初步的营销预算,并说明资金如何分配;\n5. 计划中需要以苹果iPhone、可口可乐和优步这三个产品或服务为例,每个部分至少包含3个关键点;\n6. 整个计划应遵循APA格式;\n7. 使用正式的商业语气;\n8. 总字数应在1500至2000字之间;\n"}], "type": "trace", "description": "为一家公司撰写一个市场推广计划", "constraints": "1. 计划需包含市场分析、推广策略和预算规划三个部分;\n2. 市场分析部分应详细分析目标市场、竞争对手和客户需求;\n3. 推广策略部分需阐述如何通过广告、社交媒体和公关活动提高品牌知名度;\n4. 预算规划部分需提供一个初步的营销预算,并说明资金如何分配;\n5. 计划中需要以苹果iPhone、可口可乐和优步这三个产品或服务为例,每个部分至少包含3个关键点;\n6. 整个计划应遵循APA格式;\n7. 使用正式的商业语气;\n8. 总字数应在1500至2000字之间;", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 计划需包含市场分析、推广策略和预算规划三个部分;", "2. 市场分析部分应详细分析目标市场、竞争对手和客户需求;", "3. 推广策略部分需阐述如何通过广告、社交媒体和公关活动提高品牌知名度;", "4. 预算规划部分需提供一个初步的营销预算,并说明资金如何分配;", "5. 计划中需要以苹果iPhone、可口可乐和优步这三个产品或服务为例,每个部分至少包含3个关键点;", "6. 整个计划应遵循APA格式;", "7. 使用正式的商业语气;", "8. 总字数应在1500至2000字之间;"], "levels2": ["包含约束", "包含约束", "包含约束", "包含约束", "包含约束", "引用和参考约束", "语气风格约束", "数值约束"], "category": "trace1.0"} +{"id": "218", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为明天的户外晚宴制定一份精心设计的素食菜单,菜单应包括创意前菜、丰盛的主菜和令人愉悦的甜点。\n1. 所有食材都不含肉类及其衍生物;\n2. 制作菜单时,要特别注意避免使用任何坚果类食材,确保三名坚果过敏顾客的安全;\n3. 菜单的呈现方式需具有田园风格,采用清晰的段落分隔;\n4. 每道菜名后附上主要食材的简短列表;\n5. 创意前菜:至少3种选择,每种前菜都应在描述中注明使用了哪些蔬菜和调味料;\n6. 丰盛主菜:至少2种选择,每种主菜需描述其主要的烹饪方法和特色配料,同时确保菜品适合户外晚宴的温度和环境;\n7. 令人愉悦的甜点:至少3种选择,每种甜点都应注明其甜度级别和是否包含麸质;\n8. 菜单应采用优雅的字体和格式,使用无麸质和无坚果的图标标注,以直观地传达菜品信息。\n"}], "type": "trace", "description": "为明天的户外晚宴制定一份精心设计的素食菜单,菜单应包括创意前菜、丰盛的主菜和令人愉悦的甜点。", "constraints": "1. 所有食材都不含肉类及其衍生物;\n2. 制作菜单时,要特别注意避免使用任何坚果类食材,确保三名坚果过敏顾客的安全;\n3. 菜单的呈现方式需具有田园风格,采用清晰的段落分隔;\n4. 每道菜名后附上主要食材的简短列表;\n5. 创意前菜:至少3种选择,每种前菜都应在描述中注明使用了哪些蔬菜和调味料;\n6. 丰盛主菜:至少2种选择,每种主菜需描述其主要的烹饪方法和特色配料,同时确保菜品适合户外晚宴的温度和环境;\n7. 令人愉悦的甜点:至少3种选择,每种甜点都应注明其甜度级别和是否包含麸质;\n8. 菜单应采用优雅的字体和格式,使用无麸质和无坚果的图标标注,以直观地传达菜品信息。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 所有食材都不含肉类及其衍生物;", "2. 制作菜单时,要特别注意避免使用任何坚果类食材,确保三名坚果过敏顾客的安全;", "3. 菜单的呈现方式需具有田园风格,采用清晰的段落分隔;", "4. 每道菜名后附上主要食材的简短列表;", "5. 创意前菜:至少3种选择,每种前菜都应在描述中注明使用了哪些蔬菜和调味料;", "6. 丰盛主菜:至少2种选择,每种主菜需描述其主要的烹饪方法和特色配料,同时确保菜品适合户外晚宴的温度和环境;", "7. 令人愉悦的甜点:至少3种选择,每种甜点都应注明其甜度级别和是否包含麸质;", "8. 菜单应采用优雅的字体和格式,使用无麸质和无坚果的图标标注,以直观地传达菜品信息。"], "levels2": ["排除约束", "排除约束", "语气风格约束", "编号和列表约束", "数值约束", "数值约束", "数值约束", "文本样式约束"], "category": "trace1.0"} +{"id": "219", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "判断购买一款电器商品是否真正划算,并以表格形式列出判断依据和计算过程。\n1. 商品名称:电器;\n2. 原价为500元;\n3. 折扣为30%;\n4. 促销期限仅剩2天;\n5. 需要包含至少3个考虑因素,如折扣后的实际价格、促销期限紧迫性、市场同类商品价格比较等;\n6. 计算过程需精确到个位数;\n7. 输出格式应为一个Markdown表格,包括考虑因素、计算过程和结论三列;\n8. 最后,请在结论中明确给出是否划算的建议;\n"}], "type": "trace", "description": "判断购买一款电器商品是否真正划算,并以表格形式列出判断依据和计算过程。", "constraints": "1. 商品名称:电器;\n2. 原价为500元;\n3. 折扣为30%;\n4. 促销期限仅剩2天;\n5. 需要包含至少3个考虑因素,如折扣后的实际价格、促销期限紧迫性、市场同类商品价格比较等;\n6. 计算过程需精确到个位数;\n7. 输出格式应为一个Markdown表格,包括考虑因素、计算过程和结论三列;\n8. 最后,请在结论中明确给出是否划算的建议;", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 商品名称:电器;", "2. 原价为500元;", "3. 折扣为30%;", "4. 促销期限仅剩2天;", "5. 需要包含至少3个考虑因素,如折扣后的实际价格、促销期限紧迫性、市场同类商品价格比较等;", "6. 计算过程需精确到个位数;", "7. 输出格式应为一个Markdown表格,包括考虑因素、计算过程和结论三列;", "8. 最后,请在结论中明确给出是否划算的建议;"], "levels2": ["主题约束", "数值约束", "数值约束", "数值约束", "包含约束", "数值约束", "输出格式约束", "输出格式约束"], "category": "trace1.0"} +{"id": "220", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为一个身体状况良好但希望在家中维持健康状态的个人设计一个为期一个月的健身计划。\n1. 以健身教练的角色设计计划;\n2. 针对身体状况良好但希望在家中维持健康状态的个人;\n3.以日历形式呈现锻炼计划,方便查看和遵循;\n4. 计划应包含有氧运动、力量训练和灵活性练习;\n5. 计划为期一个月,每周至少3次锻炼,每次30至45分钟;\n6. 以鼓励和指导的语气撰写计划;\n7. 计划中需详细说明每天的锻炼项目、组数和重复次数,以及休息日;\n8. 计划应提供锻炼前热身和之后拉伸的建议。\n"}], "type": "trace", "description": "为一个身体状况良好但希望在家中维持健康状态的个人设计一个为期一个月的健身计划。", "constraints": "1. 以健身教练的角色设计计划;\n2. 针对身体状况良好但希望在家中维持健康状态的个人;\n3.以日历形式呈现锻炼计划,方便查看和遵循;\n4. 计划应包含有氧运动、力量训练和灵活性练习;\n5. 计划为期一个月,每周至少3次锻炼,每次30至45分钟;\n6. 以鼓励和指导的语气撰写计划;\n7. 计划中需详细说明每天的锻炼项目、组数和重复次数,以及休息日;\n8. 计划应提供锻炼前热身和之后拉伸的建议。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 以健身教练的角色设计计划;", "2. 针对身体状况良好但希望在家中维持健康状态的个人;", "3.以日历形式呈现锻炼计划,方便查看和遵循;", "4. 计划应包含有氧运动、力量训练和灵活性练习;", "5. 计划为期一个月,每周至少3次锻炼,每次30至45分钟;", "6. 以鼓励和指导的语气撰写计划;", "7. 计划中需详细说明每天的锻炼项目、组数和重复次数,以及休息日;", "8. 计划应提供锻炼前热身和之后拉伸的建议。"], "levels2": ["角色扮演约束", "受众目标约束", "输出格式约束", "包含约束", "数值约束", "语气风格约束", "数值约束", "包含约束"], "category": "trace1.0"} +{"id": "221", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇关于人工智能伦理的论文\n1. 论文标题为“人工智能的伦理问题”;\n2. 论文应包含引言、背景、挑战、解决方案、结论和参考文献六个主要部分;\n3. 论文总字数应控制在3000至5000字之间;\n4. 挑战部分至少应涵盖隐私侵犯、数据偏见和自主武器系统三个主要议题,且针对每个议题提出至少两个创新解决方案;\n5. 论文正文需遵循APA第六版格式;\n6. 所有引用的文献必须准确标注,至少引用10篇相关领域的学术文章;\n7. 论文语气应保持严谨和客观,避免使用第一人称;\n8. 每个主要部分应当使用二级标题进行层次化组织;\n"}], "type": "trace", "description": "撰写一篇关于人工智能伦理的论文", "constraints": "1. 论文标题为“人工智能的伦理问题”;\n2. 论文应包含引言、背景、挑战、解决方案、结论和参考文献六个主要部分;\n3. 论文总字数应控制在3000至5000字之间;\n4. 挑战部分至少应涵盖隐私侵犯、数据偏见和自主武器系统三个主要议题,且针对每个议题提出至少两个创新解决方案;\n5. 论文正文需遵循APA第六版格式;\n6. 所有引用的文献必须准确标注,至少引用10篇相关领域的学术文章;\n7. 论文语气应保持严谨和客观,避免使用第一人称;\n8. 每个主要部分应当使用二级标题进行层次化组织;", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 论文标题为“人工智能的伦理问题”;", "2. 论文应包含引言、背景、挑战、解决方案、结论和参考文献六个主要部分;", "3. 论文总字数应控制在3000至5000字之间;", "4. 挑战部分至少应涵盖隐私侵犯、数据偏见和自主武器系统三个主要议题,且针对每个议题提出至少两个创新解决方案;", "5. 论文正文需遵循APA第六版格式;", "6. 所有引用的文献必须准确标注,至少引用10篇相关领域的学术文章;", "7. 论文语气应保持严谨和客观,避免使用第一人称;", "8. 每个主要部分应当使用二级标题进行层次化组织;"], "levels2": ["主题约束", "层次化结构约束", "数值约束", "数值约束", "引用和参考约束", "引用和参考约束", "语气风格约束", "层次化结构约束"], "category": "trace1.0"} +{"id": "222", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为小型企业制定一份详细的市场营销计划,专注于有机果汁饮料的推广。\n1. 计划应包括市场分析、竞争分析、营销策略和执行与控制四个主要部分;\n2. 市场分析应明确目标市场为健康和环保意识的消费者,分析这一市场的需求趋势和消费习惯;\n3. 竞争分析应进行SWOT分析,包括优势、劣势、机会和威胁;\n4. 营销策略应制定产品定位、价格策略、分销渠道和促销活动,确保与目标市场的需求相匹配;\n5. 执行与控制应设定营销目标、预算和时间表,以及如何监控和评估营销计划的效果;\n6. 市场营销计划以PDF格式提交;\n7. 使用标题和子标题进行层次化结构组织;\n8. 每部分使用不同的颜色和字体样式以区分,如标题使用加粗和大一号字体,重要数据和结论用红色高亮显示;\n"}], "type": "trace", "description": "为小型企业制定一份详细的市场营销计划,专注于有机果汁饮料的推广。", "constraints": "1. 计划应包括市场分析、竞争分析、营销策略和执行与控制四个主要部分;\n2. 市场分析应明确目标市场为健康和环保意识的消费者,分析这一市场的需求趋势和消费习惯;\n3. 竞争分析应进行SWOT分析,包括优势、劣势、机会和威胁;\n4. 营销策略应制定产品定位、价格策略、分销渠道和促销活动,确保与目标市场的需求相匹配;\n5. 执行与控制应设定营销目标、预算和时间表,以及如何监控和评估营销计划的效果;\n6. 市场营销计划以PDF格式提交;\n7. 使用标题和子标题进行层次化结构组织;\n8. 每部分使用不同的颜色和字体样式以区分,如标题使用加粗和大一号字体,重要数据和结论用红色高亮显示;", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 计划应包括市场分析、竞争分析、营销策略和执行与控制四个主要部分;", "2. 市场分析应明确目标市场为健康和环保意识的消费者,分析这一市场的需求趋势和消费习惯;", "3. 竞争分析应进行SWOT分析,包括优势、劣势、机会和威胁;", "4. 营销策略应制定产品定位、价格策略、分销渠道和促销活动,确保与目标市场的需求相匹配;", "5. 执行与控制应设定营销目标、预算和时间表,以及如何监控和评估营销计划的效果;", "6. 市场营销计划以PDF格式提交;", "7. 使用标题和子标题进行层次化结构组织;", "8. 每部分使用不同的颜色和字体样式以区分,如标题使用加粗和大一号字体,重要数据和结论用红色高亮显示;"], "levels2": ["层次化结构约束", "主题约束", "包含约束", "主题约束", "自然语言流程背景信息约束", "输出格式约束", "层次化结构约束", "文本样式约束"], "category": "trace1.0"} +{"id": "223", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为一位健身新手制定一个适合初级水平的健身计划\n1. 计划应考虑全身锻炼,重点包括有氧运动、力量训练和柔韧性练习;\n2. 需避免涉及过于复杂的动作或器械;\n3. 计划应包含一周五次的锻炼安排,每次锻炼时间控制在45分钟至1小时;\n4. 计划的语气应为鼓励和指导,使用简单易懂的词汇描述动作;\n5. 提供动作示范的图片或视频链接;\n6. 计划的输出格式为表格,列出每次锻炼的日期、时间、锻炼内容和休息日;\n7. 列出每个动作的名称、组数、次数和休息时间;\n8. 在计划中加入每月评估健康和健身目标的检查点;\n"}], "type": "trace", "description": "为一位健身新手制定一个适合初级水平的健身计划", "constraints": "1. 计划应考虑全身锻炼,重点包括有氧运动、力量训练和柔韧性练习;\n2. 需避免涉及过于复杂的动作或器械;\n3. 计划应包含一周五次的锻炼安排,每次锻炼时间控制在45分钟至1小时;\n4. 计划的语气应为鼓励和指导,使用简单易懂的词汇描述动作;\n5. 提供动作示范的图片或视频链接;\n6. 计划的输出格式为表格,列出每次锻炼的日期、时间、锻炼内容和休息日;\n7. 列出每个动作的名称、组数、次数和休息时间;\n8. 在计划中加入每月评估健康和健身目标的检查点;", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 计划应考虑全身锻炼,重点包括有氧运动、力量训练和柔韧性练习;", "2. 需避免涉及过于复杂的动作或器械;", "3. 计划应包含一周五次的锻炼安排,每次锻炼时间控制在45分钟至1小时;", "4. 计划的语气应为鼓励和指导,使用简单易懂的词汇描述动作;", "5. 提供动作示范的图片或视频链接;", "6. 计划的输出格式为表格,列出每次锻炼的日期、时间、锻炼内容和休息日;", "7. 列出每个动作的名称、组数、次数和休息时间;", "8. 在计划中加入每月评估健康和健身目标的检查点;"], "levels2": ["主题约束", "排除约束", "数值约束", "语气风格约束", "输出格式约束", "输出格式约束", "编号和列表约束", "自然语言流程背景信息约束"], "category": "trace1.0"} +{"id": "224", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "写一篇关于环境污染的文章\n1. 文章需探讨环境污染对生态系统、人类健康以及经济的影响;\n2. 文章应提出人们可以采取的措施来解决环境污染问题;\n3. 文章采用严谨正式的语气;\n4. 文章长度控制在1000至1500字之间;\n5. 文章结构包括引言、至少三个影响方面的讨论段落、每个影响方面后跟随至少一个具体解决方案段落、以及结论;\n6. 文章需引用至少3篇学术文章或科学研究报告作为支持,并在文末列出参考文献;\n7. 文章标题和小标题使用加粗居中格式;\n8. 正文采用常规字体,关键词和数据需使用斜体以示强调;\n"}], "type": "trace", "description": "写一篇关于环境污染的文章", "constraints": "1. 文章需探讨环境污染对生态系统、人类健康以及经济的影响;\n2. 文章应提出人们可以采取的措施来解决环境污染问题;\n3. 文章采用严谨正式的语气;\n4. 文章长度控制在1000至1500字之间;\n5. 文章结构包括引言、至少三个影响方面的讨论段落、每个影响方面后跟随至少一个具体解决方案段落、以及结论;\n6. 文章需引用至少3篇学术文章或科学研究报告作为支持,并在文末列出参考文献;\n7. 文章标题和小标题使用加粗居中格式;\n8. 正文采用常规字体,关键词和数据需使用斜体以示强调;", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 文章需探讨环境污染对生态系统、人类健康以及经济的影响;", "2. 文章应提出人们可以采取的措施来解决环境污染问题;", "3. 文章采用严谨正式的语气;", "4. 文章长度控制在1000至1500字之间;", "5. 文章结构包括引言、至少三个影响方面的讨论段落、每个影响方面后跟随至少一个具体解决方案段落、以及结论;", "6. 文章需引用至少3篇学术文章或科学研究报告作为支持,并在文末列出参考文献;", "7. 文章标题和小标题使用加粗居中格式;", "8. 正文采用常规字体,关键词和数据需使用斜体以示强调;"], "levels2": ["主题约束", "包含约束", "语气风格约束", "数值约束", "层次化结构约束", "引用和参考约束", "文本样式约束", "文本样式约束"], "category": "trace1.0"} +{"id": "225", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇关于观影体验的文章,选择在家看电影或去电影院看电影,并深入分析其优缺点以及对个人情感和社交生活的影响。\n1. 你是一名电影评论家,为高端生活方式杂志撰写;\n2. 文章语气风格应优雅、学术;\n3. 文章需深入探讨两种观影方式的优缺点;\n4. 文章应分析观影方式对个人情感和社交生活的影响;\n5. 文章需推荐一种观影方式;\n6. 文章长度800至1000字;\n7. 文章使用斜体标注重点,粗体突出关键论点;\n8. 文章结尾引用至少3篇相关研究论文,采用参考文献格式。\n"}], "type": "trace", "description": "撰写一篇关于观影体验的文章,选择在家看电影或去电影院看电影,并深入分析其优缺点以及对个人情感和社交生活的影响。", "constraints": "1. 你是一名电影评论家,为高端生活方式杂志撰写;\n2. 文章语气风格应优雅、学术;\n3. 文章需深入探讨两种观影方式的优缺点;\n4. 文章应分析观影方式对个人情感和社交生活的影响;\n5. 文章需推荐一种观影方式;\n6. 文章长度800至1000字;\n7. 文章使用斜体标注重点,粗体突出关键论点;\n8. 文章结尾引用至少3篇相关研究论文,采用参考文献格式。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 你是一名电影评论家,为高端生活方式杂志撰写;", "2. 文章语气风格应优雅、学术;", "3. 文章需深入探讨两种观影方式的优缺点;", "4. 文章应分析观影方式对个人情感和社交生活的影响;", "5. 文章需推荐一种观影方式;", "6. 文章长度800至1000字;", "7. 文章使用斜体标注重点,粗体突出关键论点;", "8. 文章结尾引用至少3篇相关研究论文,采用参考文献格式。"], "levels2": ["角色扮演约束", "语气风格约束", "主题约束", "主题约束", "包含约束", "数值约束", "文本样式约束", "引用和参考约束"], "category": "trace1.0"} +{"id": "226", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇关于中国人工智能全球市场拓展的新闻报道\n1. 目标读者群体为科技行业从业者和对人工智能技术感兴趣的读者;\n2. 文章长度控制在1500至2000字之间;\n3. 文章结构采用倒金字塔结构,即最重要信息在前,次要信息随后;\n4. 文章需包含引言、详细报道、背景信息、专家观点和结论部分,每个部分使用小标题进行区分;\n5. 文章标题为“中国的人工智能已经走向全球市场:深度解析中国AI技术的全球影响力与挑战”;\n6. 文章内容需涵盖中国人工智能技术的最新进展、全球市场拓展的挑战与机遇、以及中国AI企业如何在海外建立品牌和市场份额;\n7. 引用至少3位行业专家或分析师的观点;\n8. 文章格式为Markdown,每个小标题使用“#”号加粗显示,引言和结论部分使用加粗字体强调,关键数据和术语使用斜体标记;\n"}], "type": "trace", "description": "撰写一篇关于中国人工智能全球市场拓展的新闻报道", "constraints": "1. 目标读者群体为科技行业从业者和对人工智能技术感兴趣的读者;\n2. 文章长度控制在1500至2000字之间;\n3. 文章结构采用倒金字塔结构,即最重要信息在前,次要信息随后;\n4. 文章需包含引言、详细报道、背景信息、专家观点和结论部分,每个部分使用小标题进行区分;\n5. 文章标题为“中国的人工智能已经走向全球市场:深度解析中国AI技术的全球影响力与挑战”;\n6. 文章内容需涵盖中国人工智能技术的最新进展、全球市场拓展的挑战与机遇、以及中国AI企业如何在海外建立品牌和市场份额;\n7. 引用至少3位行业专家或分析师的观点;\n8. 文章格式为Markdown,每个小标题使用“#”号加粗显示,引言和结论部分使用加粗字体强调,关键数据和术语使用斜体标记;", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 目标读者群体为科技行业从业者和对人工智能技术感兴趣的读者;", "2. 文章长度控制在1500至2000字之间;", "3. 文章结构采用倒金字塔结构,即最重要信息在前,次要信息随后;", "4. 文章需包含引言、详细报道、背景信息、专家观点和结论部分,每个部分使用小标题进行区分;", "5. 文章标题为“中国的人工智能已经走向全球市场:深度解析中国AI技术的全球影响力与挑战”;", "6. 文章内容需涵盖中国人工智能技术的最新进展、全球市场拓展的挑战与机遇、以及中国AI企业如何在海外建立品牌和市场份额;", "7. 引用至少3位行业专家或分析师的观点;", "8. 文章格式为Markdown,每个小标题使用“#”号加粗显示,引言和结论部分使用加粗字体强调,关键数据和术语使用斜体标记;"], "levels2": ["受众目标约束", "数值约束", "层次化结构约束", "层次化结构约束", "层次化结构约束", "包含约束", "引用和参考约束", "文本样式约束"], "category": "trace1.0"} +{"id": "227", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一个 Jupyter Notebook 来探索名为“房屋数据.csv”的数据集。\n1. 首先,使用 pandas 库导入数据集,并显示前几行以了解数据集的结构;\n2. 然后,检查数据集中的缺失值,并报告每个特征的缺失值数量;\n3. 接下来,进行数据预处理,包括处理缺失值和异常值;\n4. 对数据集进行描述性统计分析,包括计算数值型特征的均值、中位数、标准差等;\n5. 使用 matplotlib 或 seaborn 库进行数据可视化,至少创建三种不同类型的图表,如直方图、散点图和箱线图,以探索数据的分布和关系;\n6. 创建一个模型评估部分,使用 scikit-learn 库构建一个简单的线性回归模型,并评估模型的性能;\n7. Jupyter Notebook 应该以 HTML 格式导出,确保包含所有代码和图表的完整展示;\n8. 此外,需要在 Jupyter Notebook 中包含对数据探索过程的详细注释,以便他人能够理解你的分析思路;\n# Inputs:\n“房屋数据.csv”数据集。\n"}], "type": "trace", "description": "创建一个 Jupyter Notebook 来探索名为“房屋数据.csv”的数据集。", "constraints": "1. 首先,使用 pandas 库导入数据集,并显示前几行以了解数据集的结构;\n2. 然后,检查数据集中的缺失值,并报告每个特征的缺失值数量;\n3. 接下来,进行数据预处理,包括处理缺失值和异常值;\n4. 对数据集进行描述性统计分析,包括计算数值型特征的均值、中位数、标准差等;\n5. 使用 matplotlib 或 seaborn 库进行数据可视化,至少创建三种不同类型的图表,如直方图、散点图和箱线图,以探索数据的分布和关系;\n6. 创建一个模型评估部分,使用 scikit-learn 库构建一个简单的线性回归模型,并评估模型的性能;\n7. Jupyter Notebook 应该以 HTML 格式导出,确保包含所有代码和图表的完整展示;\n8. 此外,需要在 Jupyter Notebook 中包含对数据探索过程的详细注释,以便他人能够理解你的分析思路;", "input": "“房屋数据.csv”数据集。", "constraints_num": 8, "constraints_splits": ["1. 首先,使用 pandas 库导入数据集,并显示前几行以了解数据集的结构;", "2. 然后,检查数据集中的缺失值,并报告每个特征的缺失值数量;", "3. 接下来,进行数据预处理,包括处理缺失值和异常值;", "4. 对数据集进行描述性统计分析,包括计算数值型特征的均值、中位数、标准差等;", "5. 使用 matplotlib 或 seaborn 库进行数据可视化,至少创建三种不同类型的图表,如直方图、散点图和箱线图,以探索数据的分布和关系;", "6. 创建一个模型评估部分,使用 scikit-learn 库构建一个简单的线性回归模型,并评估模型的性能;", "7. Jupyter Notebook 应该以 HTML 格式导出,确保包含所有代码和图表的完整展示;", "8. 此外,需要在 Jupyter Notebook 中包含对数据探索过程的详细注释,以便他人能够理解你的分析思路;"], "levels2": ["自然语言流程背景信息约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "输出格式约束", "包含约束", "输出格式约束", "文本样式约束"], "category": "trace1.0"} +{"id": "228", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一篇关于机器学习的文章,重点描述其在当今世界中的应用,文章应包含引言、应用案例、结论与未来展望三个关键部分,遵循APA引用格式,并包含一张关于机器学习应用领域的图表。\n1. 文章需包含至少两篇权威科研论文引用,支持机器学习的演变和影响;\n2. 详细讨论机器学习在至少三个不同行业中的应用案例,每个案例使用Markdown格式结构化,描述长度在200到300字之间;\n3. 结论与未来展望应至少引用一篇预测机器学习未来发展的权威报告;\n4. 遵循APA引用格式,所有引用内容需有明确文献来源;\n5. 文章结构清晰,使用编号和列表组织信息,提高可读性和逻辑性;\n6. 文章包含一张关于机器学习应用领域的图表,数据来源清晰标注,附有详细图例说明;\n7. 文章字数在1500到2000字之间;\n8. 语言风格正式、专业,避免过多行业术语,确保非专业读者理解。\n"}], "type": "trace", "description": "创建一篇关于机器学习的文章,重点描述其在当今世界中的应用,文章应包含引言、应用案例、结论与未来展望三个关键部分,遵循APA引用格式,并包含一张关于机器学习应用领域的图表。", "constraints": "1. 文章需包含至少两篇权威科研论文引用,支持机器学习的演变和影响;\n2. 详细讨论机器学习在至少三个不同行业中的应用案例,每个案例使用Markdown格式结构化,描述长度在200到300字之间;\n3. 结论与未来展望应至少引用一篇预测机器学习未来发展的权威报告;\n4. 遵循APA引用格式,所有引用内容需有明确文献来源;\n5. 文章结构清晰,使用编号和列表组织信息,提高可读性和逻辑性;\n6. 文章包含一张关于机器学习应用领域的图表,数据来源清晰标注,附有详细图例说明;\n7. 文章字数在1500到2000字之间;\n8. 语言风格正式、专业,避免过多行业术语,确保非专业读者理解。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 文章需包含至少两篇权威科研论文引用,支持机器学习的演变和影响;", "2. 详细讨论机器学习在至少三个不同行业中的应用案例,每个案例使用Markdown格式结构化,描述长度在200到300字之间;", "3. 结论与未来展望应至少引用一篇预测机器学习未来发展的权威报告;", "4. 遵循APA引用格式,所有引用内容需有明确文献来源;", "5. 文章结构清晰,使用编号和列表组织信息,提高可读性和逻辑性;", "6. 文章包含一张关于机器学习应用领域的图表,数据来源清晰标注,附有详细图例说明;", "7. 文章字数在1500到2000字之间;", "8. 语言风格正式、专业,避免过多行业术语,确保非专业读者理解。"], "levels2": ["引用和参考约束", "数值约束", "引用和参考约束", "引用和参考约束", "编号和列表约束", "输出格式约束", "数值约束", "语气风格约束"], "category": "trace1.0"} +{"id": "229", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "快速开发一个新的应用程序,应用程序应具备用户友好的向导界面、日程管理、个性化提醒设置和事件创建与分享功能。\n1. 应用启动时应展示用户友好的向导界面,引导用户完成初始化设置;\n2. 应用程序的核心功能包括:日程管理、个性化提醒设置和事件创建与分享;\n3. 日程管理功能中必须包含事件分类,支持颜色标签区分不同类型的事件;\n4. 应用内所有文本信息应采用清晰易读的字体样式和大小,确保在不同设备上良好显示;\n5. 所有输出信息(事件详情、提醒通知)均应以Markdown格式呈现,便于跨平台分享和阅读;\n6. 事件详情输出格式:标题、时间、地点、描述、分类标签;\n7. 提醒通知输出格式:标题、时间、事件分类;\n8. 事件分享输出格式:Markdown格式的事件详情及可复制链接,用于社交媒体分享;\n"}], "type": "trace", "description": "快速开发一个新的应用程序,应用程序应具备用户友好的向导界面、日程管理、个性化提醒设置和事件创建与分享功能。", "constraints": "1. 应用启动时应展示用户友好的向导界面,引导用户完成初始化设置;\n2. 应用程序的核心功能包括:日程管理、个性化提醒设置和事件创建与分享;\n3. 日程管理功能中必须包含事件分类,支持颜色标签区分不同类型的事件;\n4. 应用内所有文本信息应采用清晰易读的字体样式和大小,确保在不同设备上良好显示;\n5. 所有输出信息(事件详情、提醒通知)均应以Markdown格式呈现,便于跨平台分享和阅读;\n6. 事件详情输出格式:标题、时间、地点、描述、分类标签;\n7. 提醒通知输出格式:标题、时间、事件分类;\n8. 事件分享输出格式:Markdown格式的事件详情及可复制链接,用于社交媒体分享;", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 应用启动时应展示用户友好的向导界面,引导用户完成初始化设置;", "2. 应用程序的核心功能包括:日程管理、个性化提醒设置和事件创建与分享;", "3. 日程管理功能中必须包含事件分类,支持颜色标签区分不同类型的事件;", "4. 应用内所有文本信息应采用清晰易读的字体样式和大小,确保在不同设备上良好显示;", "5. 所有输出信息(事件详情、提醒通知)均应以Markdown格式呈现,便于跨平台分享和阅读;", "6. 事件详情输出格式:标题、时间、地点、描述、分类标签;", "7. 提醒通知输出格式:标题、时间、事件分类;", "8. 事件分享输出格式:Markdown格式的事件详情及可复制链接,用于社交媒体分享;"], "levels2": ["角色扮演约束", "包含约束", "包含约束", "文本样式约束", "输出格式约束", "输出格式约束", "输出格式约束", "输出格式约束"], "category": "trace1.0"} +{"id": "230", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一篇餐厅评论\n1. 评论应以美食爱好者的角色扮演;\n2. 评论的评分标准为1-10;\n3. 评论需要评价食物质量、服务水平和餐厅氛围;\n4. 评论应保持在200字以内;\n5. 评论采用轻松、友好的语气风格;\n6. 评论中包含至少3种具体菜品的详细描述和评分;\n7. 评论中包含服务人员的响应速度和服务态度的评分;\n8. 评论中包含对餐厅整体氛围的描述和评分;\n"}], "type": "trace", "description": "创建一篇餐厅评论", "constraints": "1. 评论应以美食爱好者的角色扮演;\n2. 评论的评分标准为1-10;\n3. 评论需要评价食物质量、服务水平和餐厅氛围;\n4. 评论应保持在200字以内;\n5. 评论采用轻松、友好的语气风格;\n6. 评论中包含至少3种具体菜品的详细描述和评分;\n7. 评论中包含服务人员的响应速度和服务态度的评分;\n8. 评论中包含对餐厅整体氛围的描述和评分;", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 评论应以美食爱好者的角色扮演;", "2. 评论的评分标准为1-10;", "3. 评论需要评价食物质量、服务水平和餐厅氛围;", "4. 评论应保持在200字以内;", "5. 评论采用轻松、友好的语气风格;", "6. 评论中包含至少3种具体菜品的详细描述和评分;", "7. 评论中包含服务人员的响应速度和服务态度的评分;", "8. 评论中包含对餐厅整体氛围的描述和评分;"], "levels2": ["角色扮演约束", "数值约束", "包含约束", "数值约束", "语气风格约束", "包含约束", "包含约束", "包含约束"], "category": "trace1.0"} +{"id": "231", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为“如何有效地学习”这一主题提供5个从不同角度思考的解决方案\n1. 每个解决方案都具有创新性和实用性;\n2. 描述解决方案时,需采用鼓励、积极的语气风格,避免消极或批评的表达;\n3. 每个解决方案的描述应控制在100字左右,确保内容精炼且易于理解;\n4. 解决方案中应包含具体的学习方法、技巧或工具;\n5. 尽可能地引用相关的教育学研究或专家观点作为支持;\n6. 解决方案应当是新颖的,能够从不同角度激发学习兴趣和效率;\n7. 每个解决方案都应是可行的,易于实施,且能够针对不同学习者的需求和背景;\n8. 确保涵盖广泛的学习场景和挑战;\n"}], "type": "trace", "description": "为“如何有效地学习”这一主题提供5个从不同角度思考的解决方案", "constraints": "1. 每个解决方案都具有创新性和实用性;\n2. 描述解决方案时,需采用鼓励、积极的语气风格,避免消极或批评的表达;\n3. 每个解决方案的描述应控制在100字左右,确保内容精炼且易于理解;\n4. 解决方案中应包含具体的学习方法、技巧或工具;\n5. 尽可能地引用相关的教育学研究或专家观点作为支持;\n6. 解决方案应当是新颖的,能够从不同角度激发学习兴趣和效率;\n7. 每个解决方案都应是可行的,易于实施,且能够针对不同学习者的需求和背景;\n8. 确保涵盖广泛的学习场景和挑战;", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 每个解决方案都具有创新性和实用性;", "2. 描述解决方案时,需采用鼓励、积极的语气风格,避免消极或批评的表达;", "3. 每个解决方案的描述应控制在100字左右,确保内容精炼且易于理解;", "4. 解决方案中应包含具体的学习方法、技巧或工具;", "5. 尽可能地引用相关的教育学研究或专家观点作为支持;", "6. 解决方案应当是新颖的,能够从不同角度激发学习兴趣和效率;", "7. 每个解决方案都应是可行的,易于实施,且能够针对不同学习者的需求和背景;", "8. 确保涵盖广泛的学习场景和挑战;"], "levels2": ["价值观约束", "语气风格约束", "数值约束", "包含约束", "引用和参考约束", "价值观约束", "受众目标约束", "主题约束"], "category": "trace1.0"} +{"id": "232", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇详细的指南,指导读者如何高效、有序地从超市或商场购买生活用品和饮料。\n1. 场景设定为从商场购买生活用品和饮料;\n2. 指南的长度应在1000至1500字之间;\n3. 采用Markdown格式;\n4. 指南包含以下四个部分:引言、购买前准备、购物过程、结账与离店,且每部分都需要有明确的标题;\n5. 购买前必须包含至少3个准备工作建议,如列出购物清单、检查商场营业时间等;\n6. 购物过程中至少包含5个注意事项,如如何比较商品价格、检查商品保质期等;\n7. 结账和离店环节至少包含2个技巧,如选择快速结账通道、确认购物小票无误等;\n8. 指南应使用简洁明了的语言,并配以清晰的步骤说明,确保读者能够轻松理解和执行。\n"}], "type": "trace", "description": "撰写一篇详细的指南,指导读者如何高效、有序地从超市或商场购买生活用品和饮料。", "constraints": "1. 场景设定为从商场购买生活用品和饮料;\n2. 指南的长度应在1000至1500字之间;\n3. 采用Markdown格式;\n4. 指南包含以下四个部分:引言、购买前准备、购物过程、结账与离店,且每部分都需要有明确的标题;\n5. 购买前必须包含至少3个准备工作建议,如列出购物清单、检查商场营业时间等;\n6. 购物过程中至少包含5个注意事项,如如何比较商品价格、检查商品保质期等;\n7. 结账和离店环节至少包含2个技巧,如选择快速结账通道、确认购物小票无误等;\n8. 指南应使用简洁明了的语言,并配以清晰的步骤说明,确保读者能够轻松理解和执行。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 场景设定为从商场购买生活用品和饮料;", "2. 指南的长度应在1000至1500字之间;", "3. 采用Markdown格式;", "4. 指南包含以下四个部分:引言、购买前准备、购物过程、结账与离店,且每部分都需要有明确的标题;", "5. 购买前必须包含至少3个准备工作建议,如列出购物清单、检查商场营业时间等;", "6. 购物过程中至少包含5个注意事项,如如何比较商品价格、检查商品保质期等;", "7. 结账和离店环节至少包含2个技巧,如选择快速结账通道、确认购物小票无误等;", "8. 指南应使用简洁明了的语言,并配以清晰的步骤说明,确保读者能够轻松理解和执行。"], "levels2": ["角色扮演约束", "数值约束", "输出格式约束", "层次化结构约束", "数值约束", "数值约束", "数值约束", "语气风格约束"], "category": "trace1.0"} +{"id": "233", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇关于人工智能在音乐作曲领域应用的文章\n1. 面向完全不懂音乐和人工智能的普通读者,从基础概念开始解释;\n2. 文章长度控制在1500至2000字之间;\n3. 每个段落以清晰的主题句开始,辅助读者理解;\n4. 文章结尾处提供简洁总结;\n5. 引用至少3篇相关领域的研究论文或文章,采用APA格式;\n6. 文章采用Markdown格式,使用标题和子标题进行层次化结构组织;\n7. 关键概念和术语以粗体字标出;\n8. 在适当位置插入相关图表或示例代码以辅助说明;\n"}], "type": "trace", "description": "撰写一篇关于人工智能在音乐作曲领域应用的文章", "constraints": "1. 面向完全不懂音乐和人工智能的普通读者,从基础概念开始解释;\n2. 文章长度控制在1500至2000字之间;\n3. 每个段落以清晰的主题句开始,辅助读者理解;\n4. 文章结尾处提供简洁总结;\n5. 引用至少3篇相关领域的研究论文或文章,采用APA格式;\n6. 文章采用Markdown格式,使用标题和子标题进行层次化结构组织;\n7. 关键概念和术语以粗体字标出;\n8. 在适当位置插入相关图表或示例代码以辅助说明;", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 面向完全不懂音乐和人工智能的普通读者,从基础概念开始解释;", "2. 文章长度控制在1500至2000字之间;", "3. 每个段落以清晰的主题句开始,辅助读者理解;", "4. 文章结尾处提供简洁总结;", "5. 引用至少3篇相关领域的研究论文或文章,采用APA格式;", "6. 文章采用Markdown格式,使用标题和子标题进行层次化结构组织;", "7. 关键概念和术语以粗体字标出;", "8. 在适当位置插入相关图表或示例代码以辅助说明;"], "levels2": ["受众目标约束", "数值约束", "语法结构约束", "层次化结构约束", "引用和参考约束", "层次化结构约束", "文本样式约束", "输出格式约束"], "category": "trace1.0"} +{"id": "234", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一个新的产品创意,并进行描述,以满足当代亚洲市场消费者的需求,针对一种新型的饮料。\n1. 饮料不含有害物质,如人工色素、防腐剂,应采用天然成分和有机配料。\n2. 口味独特,结合亚洲传统风味与现代创新,如草本植物、水果和花卉的复合口感。\n3. 便于携带,采用环保且可降解的包装材料,设计为即饮型小包装,便于消费者在户外、工作或旅行时享用。\n4. 产品创意描述需针对亚洲市场的消费者,采用礼貌且具有专业性的语气风格。\n5. 提供详细的产品特点、目标市场分析和营销策略。\n6. 描述内容应遵循商业提案格式,包括引言、产品描述、市场定位、营销策略和结论等部分。\n7. 使用列表和段落标题来提升阅读体验。\n8. 产品创意描述中应包含对竞品分析的引用和参考,以及初步的市场调研数据作为支持。\n"}], "type": "trace", "description": "创建一个新的产品创意,并进行描述,以满足当代亚洲市场消费者的需求,针对一种新型的饮料。", "constraints": "1. 饮料不含有害物质,如人工色素、防腐剂,应采用天然成分和有机配料。\n2. 口味独特,结合亚洲传统风味与现代创新,如草本植物、水果和花卉的复合口感。\n3. 便于携带,采用环保且可降解的包装材料,设计为即饮型小包装,便于消费者在户外、工作或旅行时享用。\n4. 产品创意描述需针对亚洲市场的消费者,采用礼貌且具有专业性的语气风格。\n5. 提供详细的产品特点、目标市场分析和营销策略。\n6. 描述内容应遵循商业提案格式,包括引言、产品描述、市场定位、营销策略和结论等部分。\n7. 使用列表和段落标题来提升阅读体验。\n8. 产品创意描述中应包含对竞品分析的引用和参考,以及初步的市场调研数据作为支持。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 饮料不含有害物质,如人工色素、防腐剂,应采用天然成分和有机配料。", "2. 口味独特,结合亚洲传统风味与现代创新,如草本植物、水果和花卉的复合口感。", "3. 便于携带,采用环保且可降解的包装材料,设计为即饮型小包装,便于消费者在户外、工作或旅行时享用。", "4. 产品创意描述需针对亚洲市场的消费者,采用礼貌且具有专业性的语气风格。", "5. 提供详细的产品特点、目标市场分析和营销策略。", "6. 描述内容应遵循商业提案格式,包括引言、产品描述、市场定位、营销策略和结论等部分。", "7. 使用列表和段落标题来提升阅读体验。", "8. 产品创意描述中应包含对竞品分析的引用和参考,以及初步的市场调研数据作为支持。"], "levels2": ["排除约束", "包含约束", "包含约束", "语气风格约束", "包含约束", "层次化结构约束", "层次化结构约束", "引用和参考约束"], "category": "trace1.0"} +{"id": "235", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一份关于自然语言处理(NLP)的简要总结\n1. 在Wikipedia等至少三个权威来源中查找并引用有关NLP的解释;\n2. 摘要的字数限制在300-500字之间;\n3. 摘要应包含引言部分,概述NLP的重要性和应用领域;\n4. 摘要的主体部分应详细描述NLP的关键技术和挑战;\n5. 结论部分应总结NLP的未来发展趋势;\n6. 撰写摘要时,确保使用专业术语;\n7. 在摘要的末尾附上引用的文献列表,采用APA引用格式;\n8. 摘要结构应包括引言、主体、结论和参考文献。\n"}], "type": "trace", "description": "撰写一份关于自然语言处理(NLP)的简要总结", "constraints": "1. 在Wikipedia等至少三个权威来源中查找并引用有关NLP的解释;\n2. 摘要的字数限制在300-500字之间;\n3. 摘要应包含引言部分,概述NLP的重要性和应用领域;\n4. 摘要的主体部分应详细描述NLP的关键技术和挑战;\n5. 结论部分应总结NLP的未来发展趋势;\n6. 撰写摘要时,确保使用专业术语;\n7. 在摘要的末尾附上引用的文献列表,采用APA引用格式;\n8. 摘要结构应包括引言、主体、结论和参考文献。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 在Wikipedia等至少三个权威来源中查找并引用有关NLP的解释;", "2. 摘要的字数限制在300-500字之间;", "3. 摘要应包含引言部分,概述NLP的重要性和应用领域;", "4. 摘要的主体部分应详细描述NLP的关键技术和挑战;", "5. 结论部分应总结NLP的未来发展趋势;", "6. 撰写摘要时,确保使用专业术语;", "7. 在摘要的末尾附上引用的文献列表,采用APA引用格式;", "8. 摘要结构应包括引言、主体、结论和参考文献。"], "levels2": ["引用和参考约束", "数值约束", "包含约束", "主题约束", "主题约束", "语言特征约束", "引用和参考约束", "层次化结构约束"], "category": "trace1.0"} +{"id": "236", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "描述一个适合家庭的度假胜地\n1. 以一位旅行顾问的专业视角描述;\n2. 采用轻松愉快、充满热情的语气风格;\n3. 度假胜地位于夏威夷;\n4. 描述需包括自然环境的详细信息;\n5. 至少提及三种可参与的娱乐活动;\n6. 推荐两家精品酒店并简述其特色;\n7. 推荐两家提供当地特色美食的餐馆;\n8. 整个描述应控制在400字以内,确保信息精炼且吸引人;\n"}], "type": "trace", "description": "描述一个适合家庭的度假胜地", "constraints": "1. 以一位旅行顾问的专业视角描述;\n2. 采用轻松愉快、充满热情的语气风格;\n3. 度假胜地位于夏威夷;\n4. 描述需包括自然环境的详细信息;\n5. 至少提及三种可参与的娱乐活动;\n6. 推荐两家精品酒店并简述其特色;\n7. 推荐两家提供当地特色美食的餐馆;\n8. 整个描述应控制在400字以内,确保信息精炼且吸引人;", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 以一位旅行顾问的专业视角描述;", "2. 采用轻松愉快、充满热情的语气风格;", "3. 度假胜地位于夏威夷;", "4. 描述需包括自然环境的详细信息;", "5. 至少提及三种可参与的娱乐活动;", "6. 推荐两家精品酒店并简述其特色;", "7. 推荐两家提供当地特色美食的餐馆;", "8. 整个描述应控制在400字以内,确保信息精炼且吸引人;"], "levels2": ["角色扮演约束", "语气风格约束", "包含约束", "包含约束", "包含约束", "包含约束", "包含约束", "数值约束"], "category": "trace1.0"} +{"id": "237", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "按照自然语言流程进行文本分类模型的训练和预测,包括数据预处理、特征提取、模型训练、模型预测及结果展示。\n1. 预处理训练数据:清洗文本、分词、去除停用词、词干提取;\n2. 使用TF-IDF向量化方法将预处理后的文本数据转换为向量;\n3. 使用朴素贝叶斯算法训练模型,设置交叉验证次数为5,记录关键指标如准确率、召回率、F1分数;\n4. 引用2篇关于朴素贝叶斯算法的论文作为理论支持,并在代码中体现其核心思想;\n5. 使用训练好的模型对测试数据(test_data)进行预测,预测结果输出为JSON格式,包含预测标签和置信度;\n6. 使用matplotlib或seaborn库以柱状图形式展示预测标签的分布情况,图表需清晰,包含标题、X轴和Y轴的标签以及图例;\n7. 代码需遵循Python的PEP 8代码风格指南,确保可读性和一致性;\n8. 代码中需包含单元测试部分,对关键函数进行测试,确保其正确性。\n"}], "type": "trace", "description": "按照自然语言流程进行文本分类模型的训练和预测,包括数据预处理、特征提取、模型训练、模型预测及结果展示。", "constraints": "1. 预处理训练数据:清洗文本、分词、去除停用词、词干提取;\n2. 使用TF-IDF向量化方法将预处理后的文本数据转换为向量;\n3. 使用朴素贝叶斯算法训练模型,设置交叉验证次数为5,记录关键指标如准确率、召回率、F1分数;\n4. 引用2篇关于朴素贝叶斯算法的论文作为理论支持,并在代码中体现其核心思想;\n5. 使用训练好的模型对测试数据(test_data)进行预测,预测结果输出为JSON格式,包含预测标签和置信度;\n6. 使用matplotlib或seaborn库以柱状图形式展示预测标签的分布情况,图表需清晰,包含标题、X轴和Y轴的标签以及图例;\n7. 代码需遵循Python的PEP 8代码风格指南,确保可读性和一致性;\n8. 代码中需包含单元测试部分,对关键函数进行测试,确保其正确性。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 预处理训练数据:清洗文本、分词、去除停用词、词干提取;", "2. 使用TF-IDF向量化方法将预处理后的文本数据转换为向量;", "3. 使用朴素贝叶斯算法训练模型,设置交叉验证次数为5,记录关键指标如准确率、召回率、F1分数;", "4. 引用2篇关于朴素贝叶斯算法的论文作为理论支持,并在代码中体现其核心思想;", "5. 使用训练好的模型对测试数据(test_data)进行预测,预测结果输出为JSON格式,包含预测标签和置信度;", "6. 使用matplotlib或seaborn库以柱状图形式展示预测标签的分布情况,图表需清晰,包含标题、X轴和Y轴的标签以及图例;", "7. 代码需遵循Python的PEP 8代码风格指南,确保可读性和一致性;", "8. 代码中需包含单元测试部分,对关键函数进行测试,确保其正确性。"], "levels2": ["自然语言流程背景信息约束", "输出格式约束", "数值约束", "引用和参考约束", "输出格式约束", "输出格式约束", "语言特征约束", "包含约束"], "category": "trace1.0"} +{"id": "238", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为公司制作一份详细的市场营销计划。\n1. 采用正式的商务报告格式,包括封面、目录、引言、主体内容、结论、参考文献和附录;\n2. 营销计划需专注于吸引新客户;\n3. 主体内容中应包含至少3个创新的市场营销策略,每个策略需附带实施步骤、预期目标、预算和时间表;\n4. 所有策略需针对公司所提供的具体产品或服务;\n5. 明确指出目标客户群体;\n6. 计划的总字数应控制在2000至3000字之间;\n7. 在论述中至少引用3篇市场分析报告或行业案例研究作为支持;\n8. 整份报告应采用专业严谨的商务语气撰写,确保内容的准确性和说服力;\n"}], "type": "trace", "description": "为公司制作一份详细的市场营销计划。", "constraints": "1. 采用正式的商务报告格式,包括封面、目录、引言、主体内容、结论、参考文献和附录;\n2. 营销计划需专注于吸引新客户;\n3. 主体内容中应包含至少3个创新的市场营销策略,每个策略需附带实施步骤、预期目标、预算和时间表;\n4. 所有策略需针对公司所提供的具体产品或服务;\n5. 明确指出目标客户群体;\n6. 计划的总字数应控制在2000至3000字之间;\n7. 在论述中至少引用3篇市场分析报告或行业案例研究作为支持;\n8. 整份报告应采用专业严谨的商务语气撰写,确保内容的准确性和说服力;", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 采用正式的商务报告格式,包括封面、目录、引言、主体内容、结论、参考文献和附录;", "2. 营销计划需专注于吸引新客户;", "3. 主体内容中应包含至少3个创新的市场营销策略,每个策略需附带实施步骤、预期目标、预算和时间表;", "4. 所有策略需针对公司所提供的具体产品或服务;", "5. 明确指出目标客户群体;", "6. 计划的总字数应控制在2000至3000字之间;", "7. 在论述中至少引用3篇市场分析报告或行业案例研究作为支持;", "8. 整份报告应采用专业严谨的商务语气撰写,确保内容的准确性和说服力;"], "levels2": ["模版约束", "主题约束", "包含约束", "主题约束", "受众目标约束", "数值约束", "引用和参考约束", "语气风格约束"], "category": "trace1.0"} +{"id": "239", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "设计并实现一个基于机器学习的自动分类器,用于处理和分类一系列客户服务请求。\n1. 分类器应能够接收文本输入,包括请求的类别(如技术支持、产品咨询、退换货等)和详细描述;\n2. 输出结果应采用JSON格式,包括分类的请求类别、置信度得分以及可能的处理建议;\n3. 能够处理至少1000条不同的服务请求;\n4. 输出结果的文本样式需清晰易读,例如使用标题、子标题和列表来组织信息;\n5. 对于每个请求类别,至少提供三条可能的处理建议,且每条建议字数不超过50字;\n6. 每个分类结果应包含与之相关联的关键词列表,以便于后续的查询和分析;\n7. 分类器的准确率应达到至少90%;\n8. 提供详细的性能评估报告,包括分类准确率、召回率和F1分数;\n"}], "type": "trace", "description": "设计并实现一个基于机器学习的自动分类器,用于处理和分类一系列客户服务请求。", "constraints": "1. 分类器应能够接收文本输入,包括请求的类别(如技术支持、产品咨询、退换货等)和详细描述;\n2. 输出结果应采用JSON格式,包括分类的请求类别、置信度得分以及可能的处理建议;\n3. 能够处理至少1000条不同的服务请求;\n4. 输出结果的文本样式需清晰易读,例如使用标题、子标题和列表来组织信息;\n5. 对于每个请求类别,至少提供三条可能的处理建议,且每条建议字数不超过50字;\n6. 每个分类结果应包含与之相关联的关键词列表,以便于后续的查询和分析;\n7. 分类器的准确率应达到至少90%;\n8. 提供详细的性能评估报告,包括分类准确率、召回率和F1分数;", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 分类器应能够接收文本输入,包括请求的类别(如技术支持、产品咨询、退换货等)和详细描述;", "2. 输出结果应采用JSON格式,包括分类的请求类别、置信度得分以及可能的处理建议;", "3. 能够处理至少1000条不同的服务请求;", "4. 输出结果的文本样式需清晰易读,例如使用标题、子标题和列表来组织信息;", "5. 对于每个请求类别,至少提供三条可能的处理建议,且每条建议字数不超过50字;", "6. 每个分类结果应包含与之相关联的关键词列表,以便于后续的查询和分析;", "7. 分类器的准确率应达到至少90%;", "8. 提供详细的性能评估报告,包括分类准确率、召回率和F1分数;"], "levels2": ["自然语言流程背景信息约束", "输出格式约束", "数值约束", "层次化结构约束", "数值约束", "输出格式约束", "数值约束", "输出格式约束"], "category": "trace1.0"} +{"id": "240", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "在一个Excel电子表格中创建一个月度预算清单\n1. 预算清单应包括以下列:收入、支出、结余;\n2. 收入包括月工资3000元;\n3. 支出应细分为房租、水电费、食品、交通费等;\n4. 使用适当的货币格式显示金额;\n5. 总额列需计算收入与所有支出的差值;\n6. 使用表格背景信息约束提供的模版进行填充;\n7. 在填充预算金额时,房租设定为1000元,水电费为200元,食品开销为800元,交通费为300元;\n8. 使用条件格式高亮显示结余部分,以绿色突出显示结余为正数的情况,红色显示结余为负数的情况;\n"}], "type": "trace", "description": "在一个Excel电子表格中创建一个月度预算清单", "constraints": "1. 预算清单应包括以下列:收入、支出、结余;\n2. 收入包括月工资3000元;\n3. 支出应细分为房租、水电费、食品、交通费等;\n4. 使用适当的货币格式显示金额;\n5. 总额列需计算收入与所有支出的差值;\n6. 使用表格背景信息约束提供的模版进行填充;\n7. 在填充预算金额时,房租设定为1000元,水电费为200元,食品开销为800元,交通费为300元;\n8. 使用条件格式高亮显示结余部分,以绿色突出显示结余为正数的情况,红色显示结余为负数的情况;", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 预算清单应包括以下列:收入、支出、结余;", "2. 收入包括月工资3000元;", "3. 支出应细分为房租、水电费、食品、交通费等;", "4. 使用适当的货币格式显示金额;", "5. 总额列需计算收入与所有支出的差值;", "6. 使用表格背景信息约束提供的模版进行填充;", "7. 在填充预算金额时,房租设定为1000元,水电费为200元,食品开销为800元,交通费为300元;", "8. 使用条件格式高亮显示结余部分,以绿色突出显示结余为正数的情况,红色显示结余为负数的情况;"], "levels2": ["包含约束", "数值约束", "包含约束", "输出格式约束", "数值约束", "表格背景信息约束", "数值约束", "文本样式约束"], "category": "trace1.0"} +{"id": "241", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "描述一个市场营销策略,旨在增加“水果蔬菜切割机”的销售量,策略需专门针对家庭主妇和忙碌的上班族,包含产品功能和益处的详细说明、适合目标受众的促销渠道和方法、明确的销售目标和预期结果,且以专业且有说服力的语气撰写,以项目提案形式呈现。\n1. 策略内容需以项目提案的形式呈现,包括封面、目录、正文和附录;\n2. 封面应包含标题“水果蔬菜切割机市场营销策略提案”、日期和项目负责人信息;\n3. 目录需列出提案的主要部分和页码;\n4. 正文需包含引言、策略概述、实施计划、预期结果;\n5. 附录需包含市场调研数据和附加材料;\n6. 提案需使用正式的商务风格撰写,确保内容清晰、逻辑严谨,能有效地传达策略的核心价值;\n7. 策略需专门针对家庭主妇和忙碌的上班族;\n8. 策略中需包含产品功能和益处的详细说明、适合目标受众的促销渠道和方法、明确的销售目标和预期结果。\n"}], "type": "trace", "description": "描述一个市场营销策略,旨在增加“水果蔬菜切割机”的销售量,策略需专门针对家庭主妇和忙碌的上班族,包含产品功能和益处的详细说明、适合目标受众的促销渠道和方法、明确的销售目标和预期结果,且以专业且有说服力的语气撰写,以项目提案形式呈现。", "constraints": "1. 策略内容需以项目提案的形式呈现,包括封面、目录、正文和附录;\n2. 封面应包含标题“水果蔬菜切割机市场营销策略提案”、日期和项目负责人信息;\n3. 目录需列出提案的主要部分和页码;\n4. 正文需包含引言、策略概述、实施计划、预期结果;\n5. 附录需包含市场调研数据和附加材料;\n6. 提案需使用正式的商务风格撰写,确保内容清晰、逻辑严谨,能有效地传达策略的核心价值;\n7. 策略需专门针对家庭主妇和忙碌的上班族;\n8. 策略中需包含产品功能和益处的详细说明、适合目标受众的促销渠道和方法、明确的销售目标和预期结果。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 策略内容需以项目提案的形式呈现,包括封面、目录、正文和附录;", "2. 封面应包含标题“水果蔬菜切割机市场营销策略提案”、日期和项目负责人信息;", "3. 目录需列出提案的主要部分和页码;", "4. 正文需包含引言、策略概述、实施计划、预期结果;", "5. 附录需包含市场调研数据和附加材料;", "6. 提案需使用正式的商务风格撰写,确保内容清晰、逻辑严谨,能有效地传达策略的核心价值;", "7. 策略需专门针对家庭主妇和忙碌的上班族;", "8. 策略中需包含产品功能和益处的详细说明、适合目标受众的促销渠道和方法、明确的销售目标和预期结果。"], "levels2": ["模版约束", "文本样式约束", "层次化结构约束", "层次化结构约束", "输出格式约束", "语气风格约束", "受众目标约束", "包含约束"], "category": "trace1.0"} +{"id": "242", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为一家专注于线下活动组织和策划服务的小型公司创建一个营销计划,该公司主要提供宴会、生日聚会等服务。\n1. 营销计划需针对年龄在20至50岁之间的目标客户;\n2. 计划应包括市场定位、目标客户分析、竞争分析、营销策略、预算分配和预期效果;\n3. 计划应采用专业和有说服力的语气,内容积极且鼓舞人心;\n4. 营销计划应保持在10页以内,每部分需至少包含300字;\n5. 计划需包含至少5个具体的营销活动示例;\n6. 计划中应包含对成功案例的研究和分析,以及至少3个创新的营销策略,策略需具有可行性和创新性;\n7. 计划应包括至少3个关键绩效指标(KPIs),以评估营销活动的效果;\n8. 最后,计划还应包含一个详细的执行时间表,以及对潜在挑战和解决方案的讨论。\n"}], "type": "trace", "description": "为一家专注于线下活动组织和策划服务的小型公司创建一个营销计划,该公司主要提供宴会、生日聚会等服务。", "constraints": "1. 营销计划需针对年龄在20至50岁之间的目标客户;\n2. 计划应包括市场定位、目标客户分析、竞争分析、营销策略、预算分配和预期效果;\n3. 计划应采用专业和有说服力的语气,内容积极且鼓舞人心;\n4. 营销计划应保持在10页以内,每部分需至少包含300字;\n5. 计划需包含至少5个具体的营销活动示例;\n6. 计划中应包含对成功案例的研究和分析,以及至少3个创新的营销策略,策略需具有可行性和创新性;\n7. 计划应包括至少3个关键绩效指标(KPIs),以评估营销活动的效果;\n8. 最后,计划还应包含一个详细的执行时间表,以及对潜在挑战和解决方案的讨论。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 营销计划需针对年龄在20至50岁之间的目标客户;", "2. 计划应包括市场定位、目标客户分析、竞争分析、营销策略、预算分配和预期效果;", "3. 计划应采用专业和有说服力的语气,内容积极且鼓舞人心;", "4. 营销计划应保持在10页以内,每部分需至少包含300字;", "5. 计划需包含至少5个具体的营销活动示例;", "6. 计划中应包含对成功案例的研究和分析,以及至少3个创新的营销策略,策略需具有可行性和创新性;", "7. 计划应包括至少3个关键绩效指标(KPIs),以评估营销活动的效果;", "8. 最后,计划还应包含一个详细的执行时间表,以及对潜在挑战和解决方案的讨论。"], "levels2": ["受众目标约束", "包含约束", "语气风格约束", "数值约束", "数值约束", "包含约束", "数值约束", "包含约束"], "category": "trace1.0"} +{"id": "243", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一个新的美食配方,以鳕鱼,瑞士奶酪,番茄和意大利面为主要食材,围绕地中海风味的主题。\n1. 配方需确保不包含任何坚果或麸质成分,以满足过敏体质的食客需求;\n2. 配方应以烹饪新手为受众目标,使用简单易懂的步骤描述;\n3. 配料表中明确列出所有食材的计量单位和数量;\n4. 配方的描述应采用温馨、指导性的语气风格;\n5. 制作说明中使用编号列表来组织信息,确保步骤清晰易懂;\n6. 配方需在开头处简短介绍这道菜的起源或灵感来源;\n7. 结尾处可以提供一些建议或变化,如如何将这道菜变成更健康的选择或如何根据个人口味进行调整;\n8. 配方应当包含一张成品菜肴的图片,以激发读者的食欲;\n"}], "type": "trace", "description": "创建一个新的美食配方,以鳕鱼,瑞士奶酪,番茄和意大利面为主要食材,围绕地中海风味的主题。", "constraints": "1. 配方需确保不包含任何坚果或麸质成分,以满足过敏体质的食客需求;\n2. 配方应以烹饪新手为受众目标,使用简单易懂的步骤描述;\n3. 配料表中明确列出所有食材的计量单位和数量;\n4. 配方的描述应采用温馨、指导性的语气风格;\n5. 制作说明中使用编号列表来组织信息,确保步骤清晰易懂;\n6. 配方需在开头处简短介绍这道菜的起源或灵感来源;\n7. 结尾处可以提供一些建议或变化,如如何将这道菜变成更健康的选择或如何根据个人口味进行调整;\n8. 配方应当包含一张成品菜肴的图片,以激发读者的食欲;", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 配方需确保不包含任何坚果或麸质成分,以满足过敏体质的食客需求;", "2. 配方应以烹饪新手为受众目标,使用简单易懂的步骤描述;", "3. 配料表中明确列出所有食材的计量单位和数量;", "4. 配方的描述应采用温馨、指导性的语气风格;", "5. 制作说明中使用编号列表来组织信息,确保步骤清晰易懂;", "6. 配方需在开头处简短介绍这道菜的起源或灵感来源;", "7. 结尾处可以提供一些建议或变化,如如何将这道菜变成更健康的选择或如何根据个人口味进行调整;", "8. 配方应当包含一张成品菜肴的图片,以激发读者的食欲;"], "levels2": ["排除约束", "受众目标约束", "数值约束", "语气风格约束", "编号和列表约束", "模版约束", "包含约束", "包含约束"], "category": "trace1.0"} +{"id": "244", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一个响应式Web应用程序,允许用户创建待办事项,包括标题、截止日期和说明,并将其保存到后端SQL数据库中。\n1. 用户界面应遵循Material Design规范,包括清晰的输入表单和按钮;\n2. 待办事项的标题不能超过50个字符;\n3. 截止日期应采用YYYY-MM-DD格式;\n4. 待办事项的说明不能超过200个字符;\n5. 每个待办事项需有一个唯一标识符;\n6. 数据库应具备数据备份和恢复功能;\n7. 应用程序需要实现用户身份验证;\n8. 只有经过身份验证的用户才能访问和管理其待办事项。\n"}], "type": "trace", "description": "创建一个响应式Web应用程序,允许用户创建待办事项,包括标题、截止日期和说明,并将其保存到后端SQL数据库中。", "constraints": "1. 用户界面应遵循Material Design规范,包括清晰的输入表单和按钮;\n2. 待办事项的标题不能超过50个字符;\n3. 截止日期应采用YYYY-MM-DD格式;\n4. 待办事项的说明不能超过200个字符;\n5. 每个待办事项需有一个唯一标识符;\n6. 数据库应具备数据备份和恢复功能;\n7. 应用程序需要实现用户身份验证;\n8. 只有经过身份验证的用户才能访问和管理其待办事项。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 用户界面应遵循Material Design规范,包括清晰的输入表单和按钮;", "2. 待办事项的标题不能超过50个字符;", "3. 截止日期应采用YYYY-MM-DD格式;", "4. 待办事项的说明不能超过200个字符;", "5. 每个待办事项需有一个唯一标识符;", "6. 数据库应具备数据备份和恢复功能;", "7. 应用程序需要实现用户身份验证;", "8. 只有经过身份验证的用户才能访问和管理其待办事项。"], "levels2": ["模版约束", "数值约束", "输出格式约束", "数值约束", "编号和列表约束", "包含约束", "包含约束", "隐私约束"], "category": "trace1.0"} +{"id": "245", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "推荐一本关于人工智能的书籍\n1. 书籍适合已经具备人工智能基础知识的读者;\n2. 书籍旨在进一步深入探讨人工智能领域;\n3. 书籍风格应为易读并富有洞见;\n4. 书籍应包含对人工智能未来趋势的预测和分析;\n5. 书籍应涉及对当前技术挑战的深入探讨;\n6. 书籍应使用平实的语言解释复杂概念;\n7. 书籍应避免过多的数学公式;\n8. 书籍应保持内容的专业性和深度;\n"}], "type": "trace", "description": "推荐一本关于人工智能的书籍", "constraints": "1. 书籍适合已经具备人工智能基础知识的读者;\n2. 书籍旨在进一步深入探讨人工智能领域;\n3. 书籍风格应为易读并富有洞见;\n4. 书籍应包含对人工智能未来趋势的预测和分析;\n5. 书籍应涉及对当前技术挑战的深入探讨;\n6. 书籍应使用平实的语言解释复杂概念;\n7. 书籍应避免过多的数学公式;\n8. 书籍应保持内容的专业性和深度;", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 书籍适合已经具备人工智能基础知识的读者;", "2. 书籍旨在进一步深入探讨人工智能领域;", "3. 书籍风格应为易读并富有洞见;", "4. 书籍应包含对人工智能未来趋势的预测和分析;", "5. 书籍应涉及对当前技术挑战的深入探讨;", "6. 书籍应使用平实的语言解释复杂概念;", "7. 书籍应避免过多的数学公式;", "8. 书籍应保持内容的专业性和深度;"], "levels2": ["受众目标约束", "主题约束", "语气风格约束", "包含约束", "主题约束", "语言特征约束", "排除约束", "主题约束"], "category": "trace1.0"} +{"id": "246", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "编辑一份简历\n1. 格式需遵循标准简历模板;\n2. 必须包含标题、个人信息、教育背景、工作经验、技能专长等部分;\n3. 个人信息应包括姓名、联系电话、电子邮箱、LinkedIn个人链接(如果有的话);\n4. 教育背景需列出最高学位、学校名称、就读时间、专业及毕业论文题目(如果适用);\n5. 工作经验部分,每份工作需提供公司名称、担任职位、就职时间及主要工作职责;\n6. 技能专长部分需详细列出计算机技能(如编程语言、软件操作等)、语言技能(包括外语水平及证书)及其他专业技能(如领导力、项目管理等);\n7. 所有信息必须真实有效;\n8. 在简历中,重要信息应使用加粗或斜体以突出显示;\n"}], "type": "trace", "description": "编辑一份简历", "constraints": "1. 格式需遵循标准简历模板;\n2. 必须包含标题、个人信息、教育背景、工作经验、技能专长等部分;\n3. 个人信息应包括姓名、联系电话、电子邮箱、LinkedIn个人链接(如果有的话);\n4. 教育背景需列出最高学位、学校名称、就读时间、专业及毕业论文题目(如果适用);\n5. 工作经验部分,每份工作需提供公司名称、担任职位、就职时间及主要工作职责;\n6. 技能专长部分需详细列出计算机技能(如编程语言、软件操作等)、语言技能(包括外语水平及证书)及其他专业技能(如领导力、项目管理等);\n7. 所有信息必须真实有效;\n8. 在简历中,重要信息应使用加粗或斜体以突出显示;", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 格式需遵循标准简历模板;", "2. 必须包含标题、个人信息、教育背景、工作经验、技能专长等部分;", "3. 个人信息应包括姓名、联系电话、电子邮箱、LinkedIn个人链接(如果有的话);", "4. 教育背景需列出最高学位、学校名称、就读时间、专业及毕业论文题目(如果适用);", "5. 工作经验部分,每份工作需提供公司名称、担任职位、就职时间及主要工作职责;", "6. 技能专长部分需详细列出计算机技能(如编程语言、软件操作等)、语言技能(包括外语水平及证书)及其他专业技能(如领导力、项目管理等);", "7. 所有信息必须真实有效;", "8. 在简历中,重要信息应使用加粗或斜体以突出显示;"], "levels2": ["模版约束", "层次化结构约束", "包含约束", "包含约束", "输出格式约束", "包含约束", "价值观约束", "文本样式约束"], "category": "trace1.0"} +{"id": "247", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "描述一个详细的营销策略来提升公司(一家专注于环保科技的初创企业)的社交媒体影响力。\n1. 目标受众为年龄介于25至45岁,对可持续发展和环保科技感兴趣的消费者;\n2. 现有社交媒体账户包括Twitter和LinkedIn,拥有约2000名关注者,平均每月互动量为500;\n3. 策略中需考虑当前的社交媒体流行趋势,如短视频内容和互动直播;\n4. 策略应至少包含目标设定、目标受众分析、内容策略、发布频率和时间、广告预算、KPIs和监测工具;\n5. 策略以PDF格式提交,总页数不超过10页,每页的字数不超过500字;\n6. 策略的撰写应采用专业且鼓舞人心的语气,旨在激发团队成员对实施策略的热情;\n7. 策略的开头部分应以引人入胜的摘要作为开场,概述策略的亮点和预期成果;\n8. 策略的结尾部分应提供一份行动计划时间表,明确列出接下来三个月内的关键活动和里程碑。\n"}], "type": "trace", "description": "描述一个详细的营销策略来提升公司(一家专注于环保科技的初创企业)的社交媒体影响力。", "constraints": "1. 目标受众为年龄介于25至45岁,对可持续发展和环保科技感兴趣的消费者;\n2. 现有社交媒体账户包括Twitter和LinkedIn,拥有约2000名关注者,平均每月互动量为500;\n3. 策略中需考虑当前的社交媒体流行趋势,如短视频内容和互动直播;\n4. 策略应至少包含目标设定、目标受众分析、内容策略、发布频率和时间、广告预算、KPIs和监测工具;\n5. 策略以PDF格式提交,总页数不超过10页,每页的字数不超过500字;\n6. 策略的撰写应采用专业且鼓舞人心的语气,旨在激发团队成员对实施策略的热情;\n7. 策略的开头部分应以引人入胜的摘要作为开场,概述策略的亮点和预期成果;\n8. 策略的结尾部分应提供一份行动计划时间表,明确列出接下来三个月内的关键活动和里程碑。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 目标受众为年龄介于25至45岁,对可持续发展和环保科技感兴趣的消费者;", "2. 现有社交媒体账户包括Twitter和LinkedIn,拥有约2000名关注者,平均每月互动量为500;", "3. 策略中需考虑当前的社交媒体流行趋势,如短视频内容和互动直播;", "4. 策略应至少包含目标设定、目标受众分析、内容策略、发布频率和时间、广告预算、KPIs和监测工具;", "5. 策略以PDF格式提交,总页数不超过10页,每页的字数不超过500字;", "6. 策略的撰写应采用专业且鼓舞人心的语气,旨在激发团队成员对实施策略的热情;", "7. 策略的开头部分应以引人入胜的摘要作为开场,概述策略的亮点和预期成果;", "8. 策略的结尾部分应提供一份行动计划时间表,明确列出接下来三个月内的关键活动和里程碑。"], "levels2": ["受众目标约束", "数值约束", "主题约束", "包含约束", "输出格式约束", "语气风格约束", "模版约束", "输出格式约束"], "category": "trace1.0"} +{"id": "248", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "给出适合下午工作的室内体育活动建议\n1. 活动将在一个办公室环境中进行;\n2. 时间为下午2点至下午4点;\n3. 参与者主要为办公室职员;\n4. 活动目的是放松身心,提高工作效率;\n5. 活动需要利用现有设备,包括健身球、哑铃、跑步机;\n6. 建议的活动列表应至少包含5项;\n7. 为每一项活动提供简短的说明,说明应控制在100字以内;\n8. 活动应避免过于剧烈,以免影响下午后续的工作状态;\n"}], "type": "trace", "description": "给出适合下午工作的室内体育活动建议", "constraints": "1. 活动将在一个办公室环境中进行;\n2. 时间为下午2点至下午4点;\n3. 参与者主要为办公室职员;\n4. 活动目的是放松身心,提高工作效率;\n5. 活动需要利用现有设备,包括健身球、哑铃、跑步机;\n6. 建议的活动列表应至少包含5项;\n7. 为每一项活动提供简短的说明,说明应控制在100字以内;\n8. 活动应避免过于剧烈,以免影响下午后续的工作状态;", "input": "NULL", "constraints_num": 8, "constraints_splits": ["1. 活动将在一个办公室环境中进行;", "2. 时间为下午2点至下午4点;", "3. 参与者主要为办公室职员;", "4. 活动目的是放松身心,提高工作效率;", "5. 活动需要利用现有设备,包括健身球、哑铃、跑步机;", "6. 建议的活动列表应至少包含5项;", "7. 为每一项活动提供简短的说明,说明应控制在100字以内;", "8. 活动应避免过于剧烈,以免影响下午后续的工作状态;"], "levels2": ["角色扮演约束", "数值约束", "受众目标约束", "主题约束", "包含约束", "数值约束", "数值约束", "排除约束"], "category": "trace1.0"} +{"id": "249", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "作为法律顾问,需要对新南威尔士州HIA总价合同第35条(争议解决)进行确认,并准备一份正式的法律意见书回复。\n1. 法律意见书格式应包括标题、引言、正文和结尾;\n2. 标题应为“法律意见书:新南威尔士州HIA总价合同争议解决条款确认”;\n3. 引言部分需简要说明确认的目的和背景;\n4. 正文部分应逐条分析第35条内容;\n5. 结尾部分总结确认结果并提供专业建议;\n6. 在结尾处签署你的名字和执业编号;\n7. 确认后,需回复“已确认并理解”。\n"}], "type": "trace", "description": "作为法律顾问,需要对新南威尔士州HIA总价合同第35条(争议解决)进行确认,并准备一份正式的法律意见书回复。", "constraints": "1. 法律意见书格式应包括标题、引言、正文和结尾;\n2. 标题应为“法律意见书:新南威尔士州HIA总价合同争议解决条款确认”;\n3. 引言部分需简要说明确认的目的和背景;\n4. 正文部分应逐条分析第35条内容;\n5. 结尾部分总结确认结果并提供专业建议;\n6. 在结尾处签署你的名字和执业编号;\n7. 确认后,需回复“已确认并理解”。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["1. 法律意见书格式应包括标题、引言、正文和结尾;", "2. 标题应为“法律意见书:新南威尔士州HIA总价合同争议解决条款确认”;", "3. 引言部分需简要说明确认的目的和背景;", "4. 正文部分应逐条分析第35条内容;", "5. 结尾部分总结确认结果并提供专业建议;", "6. 在结尾处签署你的名字和执业编号;", "7. 确认后,需回复“已确认并理解”。"], "levels2": ["层次化结构约束", "文本样式约束", "层次化结构约束", "层次化结构约束", "层次化结构约束", "文本样式约束", "文本样式约束"], "category": "trace1.0"} +{"id": "250", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇介绍博客文章主题的段落\n1. 段落长度为150字;\n2. 采用权威和专家的语气;\n3. 不使用任何列表形式;\n4. 不提及具体预测内容;\n5. 突出人工智能对未来工作场所变革的深远影响;\n6. 强调对销售和营销策略可能带来的革命性改变;\n7. 文章专门为销售和营销行业的专业人员撰写,以提供深度洞察和专业分析;\n"}], "type": "trace", "description": "撰写一篇介绍博客文章主题的段落", "constraints": "1. 段落长度为150字;\n2. 采用权威和专家的语气;\n3. 不使用任何列表形式;\n4. 不提及具体预测内容;\n5. 突出人工智能对未来工作场所变革的深远影响;\n6. 强调对销售和营销策略可能带来的革命性改变;\n7. 文章专门为销售和营销行业的专业人员撰写,以提供深度洞察和专业分析;", "input": "NULL", "constraints_num": 7, "constraints_splits": ["1. 段落长度为150字;", "2. 采用权威和专家的语气;", "3. 不使用任何列表形式;", "4. 不提及具体预测内容;", "5. 突出人工智能对未来工作场所变革的深远影响;", "6. 强调对销售和营销策略可能带来的革命性改变;", "7. 文章专门为销售和营销行业的专业人员撰写,以提供深度洞察和专业分析;"], "levels2": ["数值约束", "语气风格约束", "编号和列表约束", "排除约束", "主题约束", "主题约束", "受众目标约束"], "category": "trace1.0"} +{"id": "251", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "说明大众预防流行病的重要性,解释流行病的基本概念,提供至少三种常见流行病的预防方法,以及在社区层面可以实施的三项改善措施,同时提供流行病预防的实用建议,确保信息对非医学背景的普通民众易于理解且实用。\n1. 受众为非医学背景的普通民众;\n2. 以易于理解的方式解释;\n3. 内容应包含流行病的基本概念;\n4. 提供至少三种常见流行病的预防方法;\n5. 提供在社区层面可以实施的三项改善措施;\n6. 确保提供流行病预防的实用建议;\n7. 保证信息的实用性。\n"}], "type": "trace", "description": "说明大众预防流行病的重要性,解释流行病的基本概念,提供至少三种常见流行病的预防方法,以及在社区层面可以实施的三项改善措施,同时提供流行病预防的实用建议,确保信息对非医学背景的普通民众易于理解且实用。", "constraints": "1. 受众为非医学背景的普通民众;\n2. 以易于理解的方式解释;\n3. 内容应包含流行病的基本概念;\n4. 提供至少三种常见流行病的预防方法;\n5. 提供在社区层面可以实施的三项改善措施;\n6. 确保提供流行病预防的实用建议;\n7. 保证信息的实用性。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["1. 受众为非医学背景的普通民众;", "2. 以易于理解的方式解释;", "3. 内容应包含流行病的基本概念;", "4. 提供至少三种常见流行病的预防方法;", "5. 提供在社区层面可以实施的三项改善措施;", "6. 确保提供流行病预防的实用建议;", "7. 保证信息的实用性。"], "levels2": ["受众目标约束", "语气风格约束", "包含约束", "数值约束", "数值约束", "包含约束", "价值观约束"], "category": "trace1.0"} +{"id": "252", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "制定一位缺乏铁元素的妇女采用口服补铁剂治疗的最佳治疗方案,包括剂量、剂型和用药间隔等信息。\n1. 考虑患者是否有补铁剂的禁忌症,例如胃肠疾病或正在服用的药物是否存在相互作用。\n2. 根据患者的具体情况(年龄、体重、贫血程度)计算补铁剂的初始剂量和维持剂量。\n3. 选择适合患者的补铁剂剂型,如片剂、胶囊或液体,考虑患者的吞咽能力、口感偏好和铁吸收效率。\n4. 设定用药间隔,通常建议空腹服用或饭后1小时,以提高铁吸收率。\n5. 指导患者在治疗过程中定期复查血清铁素水平,以调整剂量或评估治疗效果。\n6. 强调在治疗期间应避免与影响铁吸收的食物或药物同时摄入,如牛奶、咖啡或抗酸剂。\n7. 提醒患者注意可能出现的副作用,如胃肠道不适,并指导如何应对。\n# Inputs:\n该患者是31岁的女性,诊断为轻度贫血,经检查其血清铁素水平明显降低。\n"}], "type": "trace", "description": "制定一位缺乏铁元素的妇女采用口服补铁剂治疗的最佳治疗方案,包括剂量、剂型和用药间隔等信息。", "constraints": "1. 考虑患者是否有补铁剂的禁忌症,例如胃肠疾病或正在服用的药物是否存在相互作用。\n2. 根据患者的具体情况(年龄、体重、贫血程度)计算补铁剂的初始剂量和维持剂量。\n3. 选择适合患者的补铁剂剂型,如片剂、胶囊或液体,考虑患者的吞咽能力、口感偏好和铁吸收效率。\n4. 设定用药间隔,通常建议空腹服用或饭后1小时,以提高铁吸收率。\n5. 指导患者在治疗过程中定期复查血清铁素水平,以调整剂量或评估治疗效果。\n6. 强调在治疗期间应避免与影响铁吸收的食物或药物同时摄入,如牛奶、咖啡或抗酸剂。\n7. 提醒患者注意可能出现的副作用,如胃肠道不适,并指导如何应对。", "input": "该患者是31岁的女性,诊断为轻度贫血,经检查其血清铁素水平明显降低。", "constraints_num": 7, "constraints_splits": ["1. 考虑患者是否有补铁剂的禁忌症,例如胃肠疾病或正在服用的药物是否存在相互作用。", "2. 根据患者的具体情况(年龄、体重、贫血程度)计算补铁剂的初始剂量和维持剂量。", "3. 选择适合患者的补铁剂剂型,如片剂、胶囊或液体,考虑患者的吞咽能力、口感偏好和铁吸收效率。", "4. 设定用药间隔,通常建议空腹服用或饭后1小时,以提高铁吸收率。", "5. 指导患者在治疗过程中定期复查血清铁素水平,以调整剂量或评估治疗效果。", "6. 强调在治疗期间应避免与影响铁吸收的食物或药物同时摄入,如牛奶、咖啡或抗酸剂。", "7. 提醒患者注意可能出现的副作用,如胃肠道不适,并指导如何应对。"], "levels2": ["包含约束", "数值约束", "包含约束", "包含约束", "包含约束", "包含约束", "包含约束"], "category": "trace1.0"} +{"id": "253", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一个介绍、时间表和行动计划,以表格形式呈现,针对多个流派,包括但不限于行动/冒险流派,以及在行动/冒险流派之前创建的早期文档。内容需包括流派名称、描述、冲突例子、行动和结论的概述、儿童摘要、行动计划、词汇表、关键词、关键设置、角色示例、结论、常见错误、修复方法等。\n1. 以表格形式呈现所有信息;\n2. 每个流派应以编号列表形式列出,包括流派名称、描述、冲突例子、行动和结论的概述;\n3. 针对每个流派,提供一个由2-5句话组成的摘要,适用于11岁以下的儿童;\n4. 行动计划应详细列出每个流派的开发计划,包括时间表、里程碑和关键任务;\n5. 包含词汇表和定义、单词库和定义、每个流派的关键词、术语等、关键设置或示例、角色示例;\n6. 包含结论、K-5学生在写作每种流派或写作时常犯的常见错误的示例、修复这些常见错误的方法;\n7. 所有内容都需清晰、有条理,并且按照上述格式要求组织。\n"}], "type": "trace", "description": "创建一个介绍、时间表和行动计划,以表格形式呈现,针对多个流派,包括但不限于行动/冒险流派,以及在行动/冒险流派之前创建的早期文档。内容需包括流派名称、描述、冲突例子、行动和结论的概述、儿童摘要、行动计划、词汇表、关键词、关键设置、角色示例、结论、常见错误、修复方法等。", "constraints": "1. 以表格形式呈现所有信息;\n2. 每个流派应以编号列表形式列出,包括流派名称、描述、冲突例子、行动和结论的概述;\n3. 针对每个流派,提供一个由2-5句话组成的摘要,适用于11岁以下的儿童;\n4. 行动计划应详细列出每个流派的开发计划,包括时间表、里程碑和关键任务;\n5. 包含词汇表和定义、单词库和定义、每个流派的关键词、术语等、关键设置或示例、角色示例;\n6. 包含结论、K-5学生在写作每种流派或写作时常犯的常见错误的示例、修复这些常见错误的方法;\n7. 所有内容都需清晰、有条理,并且按照上述格式要求组织。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["1. 以表格形式呈现所有信息;", "2. 每个流派应以编号列表形式列出,包括流派名称、描述、冲突例子、行动和结论的概述;", "3. 针对每个流派,提供一个由2-5句话组成的摘要,适用于11岁以下的儿童;", "4. 行动计划应详细列出每个流派的开发计划,包括时间表、里程碑和关键任务;", "5. 包含词汇表和定义、单词库和定义、每个流派的关键词、术语等、关键设置或示例、角色示例;", "6. 包含结论、K-5学生在写作每种流派或写作时常犯的常见错误的示例、修复这些常见错误的方法;", "7. 所有内容都需清晰、有条理,并且按照上述格式要求组织。"], "levels2": ["输出格式约束", "编号和列表约束", "数值约束", "层次化结构约束", "包含约束", "包含约束", "层次化结构约束"], "category": "trace1.0"} +{"id": "254", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "作为软件开发公司的QA面试官,要求面试者详细描述对一个具体且有挑战性的功能用例的测试策略,用例应涉及多步骤的用户操作、数据输入、异常处理等。\n1. 面试者需描述测试用例的设计方法;\n2. 面试者需说明测试执行的步骤;\n3. 面试者需阐述预期的测试结果;\n4. 面试者需解释如何处理异常情况;\n5. 面试者需讨论如何验证功能的正确性和稳定性;\n6. 面试者需展示对软件测试流程的熟悉度;\n7. 面试者需体现解决问题的逻辑思维能力。\n"}], "type": "trace", "description": "作为软件开发公司的QA面试官,要求面试者详细描述对一个具体且有挑战性的功能用例的测试策略,用例应涉及多步骤的用户操作、数据输入、异常处理等。", "constraints": "1. 面试者需描述测试用例的设计方法;\n2. 面试者需说明测试执行的步骤;\n3. 面试者需阐述预期的测试结果;\n4. 面试者需解释如何处理异常情况;\n5. 面试者需讨论如何验证功能的正确性和稳定性;\n6. 面试者需展示对软件测试流程的熟悉度;\n7. 面试者需体现解决问题的逻辑思维能力。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["1. 面试者需描述测试用例的设计方法;", "2. 面试者需说明测试执行的步骤;", "3. 面试者需阐述预期的测试结果;", "4. 面试者需解释如何处理异常情况;", "5. 面试者需讨论如何验证功能的正确性和稳定性;", "6. 面试者需展示对软件测试流程的熟悉度;", "7. 面试者需体现解决问题的逻辑思维能力。"], "levels2": ["包含约束", "编号和列表约束", "包含约束", "包含约束", "主题约束", "自然语言流程背景信息约束", "主题约束"], "category": "trace1.0"} +{"id": "255", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以专业学术的语气风格,详细解释单克隆抗体和多克隆抗体之间的区别,并列出它们在免疫学研究和治疗中的常见应用。\n1. 解释单克隆抗体和多克隆抗体的定义和产生过程。\n2. 比较并总结它们在特异性、纯度和稳定性等方面的差异。\n3. 使用编号列表,列出至少3种单克隆抗体在免疫学研究中的应用,并对每种应用进行简要描述。\n4. 使用编号列表,列出至少3种单克隆抗体在疾病治疗中的应用,并对每种应用进行简要描述。\n5. 使用编号列表,列出至少3种多克隆抗体在免疫学研究中的应用,并对每种应用进行简要描述。\n6. 使用编号列表,列出至少3种多克隆抗体在疾病治疗中的应用,并对每种应用进行简要描述。\n7. 确保每个应用点都清晰明了。\n"}], "type": "trace", "description": "以专业学术的语气风格,详细解释单克隆抗体和多克隆抗体之间的区别,并列出它们在免疫学研究和治疗中的常见应用。", "constraints": "1. 解释单克隆抗体和多克隆抗体的定义和产生过程。\n2. 比较并总结它们在特异性、纯度和稳定性等方面的差异。\n3. 使用编号列表,列出至少3种单克隆抗体在免疫学研究中的应用,并对每种应用进行简要描述。\n4. 使用编号列表,列出至少3种单克隆抗体在疾病治疗中的应用,并对每种应用进行简要描述。\n5. 使用编号列表,列出至少3种多克隆抗体在免疫学研究中的应用,并对每种应用进行简要描述。\n6. 使用编号列表,列出至少3种多克隆抗体在疾病治疗中的应用,并对每种应用进行简要描述。\n7. 确保每个应用点都清晰明了。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["1. 解释单克隆抗体和多克隆抗体的定义和产生过程。", "2. 比较并总结它们在特异性、纯度和稳定性等方面的差异。", "3. 使用编号列表,列出至少3种单克隆抗体在免疫学研究中的应用,并对每种应用进行简要描述。", "4. 使用编号列表,列出至少3种单克隆抗体在疾病治疗中的应用,并对每种应用进行简要描述。", "5. 使用编号列表,列出至少3种多克隆抗体在免疫学研究中的应用,并对每种应用进行简要描述。", "6. 使用编号列表,列出至少3种多克隆抗体在疾病治疗中的应用,并对每种应用进行简要描述。", "7. 确保每个应用点都清晰明了。"], "levels2": ["主题约束", "包含约束", "编号和列表约束", "编号和列表约束", "编号和列表约束", "编号和列表约束", "语法结构约束"], "category": "trace1.0"} +{"id": "256", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为一名25岁女性患者提供专业的药物过敏分析和应急处理建议。\n1. 角色扮演约束:你是一名经验丰富的药剂师;\n2. 分析中应明确指出可能引起过敏反应的具体药物成分;\n3. 提供详细的应急处理步骤,包括但不限于立即停用的药物、替代药物建议、以及如何缓解过敏症状的措施;\n4. 需要考虑患者的身体状况和过敏历史,以提供更为个性化的建议;\n5. 分析报告中必须包含以下信息:患者的基本信息(年龄、性别)、已知的药物过敏史、服用药物的成分列表、疑似引起过敏的药物成分、应急处理步骤、替代药物建议;\n6. 如果患者已知对青霉素过敏,且服用了含有青霉素的抗生素,分析报告应明确指出这一点,并提供替代的抗生素选择,如头孢类抗生素或红霉素;\n7. 详细说明如何缓解过敏症状,如立即停止使用青霉素类药物,使用抗组胺药物缓解过敏症状,必要时使用肾上腺素注射液进行紧急处理;\n"}], "type": "trace", "description": "为一名25岁女性患者提供专业的药物过敏分析和应急处理建议。", "constraints": "1. 角色扮演约束:你是一名经验丰富的药剂师;\n2. 分析中应明确指出可能引起过敏反应的具体药物成分;\n3. 提供详细的应急处理步骤,包括但不限于立即停用的药物、替代药物建议、以及如何缓解过敏症状的措施;\n4. 需要考虑患者的身体状况和过敏历史,以提供更为个性化的建议;\n5. 分析报告中必须包含以下信息:患者的基本信息(年龄、性别)、已知的药物过敏史、服用药物的成分列表、疑似引起过敏的药物成分、应急处理步骤、替代药物建议;\n6. 如果患者已知对青霉素过敏,且服用了含有青霉素的抗生素,分析报告应明确指出这一点,并提供替代的抗生素选择,如头孢类抗生素或红霉素;\n7. 详细说明如何缓解过敏症状,如立即停止使用青霉素类药物,使用抗组胺药物缓解过敏症状,必要时使用肾上腺素注射液进行紧急处理;", "input": "NULL", "constraints_num": 7, "constraints_splits": ["1. 角色扮演约束:你是一名经验丰富的药剂师;", "2. 分析中应明确指出可能引起过敏反应的具体药物成分;", "3. 提供详细的应急处理步骤,包括但不限于立即停用的药物、替代药物建议、以及如何缓解过敏症状的措施;", "4. 需要考虑患者的身体状况和过敏历史,以提供更为个性化的建议;", "5. 分析报告中必须包含以下信息:患者的基本信息(年龄、性别)、已知的药物过敏史、服用药物的成分列表、疑似引起过敏的药物成分、应急处理步骤、替代药物建议;", "6. 如果患者已知对青霉素过敏,且服用了含有青霉素的抗生素,分析报告应明确指出这一点,并提供替代的抗生素选择,如头孢类抗生素或红霉素;", "7. 详细说明如何缓解过敏症状,如立即停止使用青霉素类药物,使用抗组胺药物缓解过敏症状,必要时使用肾上腺素注射液进行紧急处理;"], "levels2": ["角色扮演约束", "包含约束", "包含约束", "包含约束", "包含约束", "包含约束", "包含约束"], "category": "trace1.0"} +{"id": "257", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "进行一次专业心理评估面试,准确评估抑郁程度\n1. 抑郁程度评估范围在0到60之间,其中0表示完全没有抑郁,60表示严重抑郁;\n2. 使用五个标准化的Likert项目提问,每个项目需涵盖不同方面的抑郁症状;\n3. 除了Likert项目外,可以使用最多三个是/否问题补充信息;\n4. 通过深入但尊重隐私的追问回答,使过程更加互动和全面;\n5. 避免询问过度个人或可能引起不适的问题;\n6. 一次只问一个问题;\n7. 在询问与过去相关的问题时,明确指明时间段为过去两周,确保评估的时效性和准确性;\n"}], "type": "trace", "description": "进行一次专业心理评估面试,准确评估抑郁程度", "constraints": "1. 抑郁程度评估范围在0到60之间,其中0表示完全没有抑郁,60表示严重抑郁;\n2. 使用五个标准化的Likert项目提问,每个项目需涵盖不同方面的抑郁症状;\n3. 除了Likert项目外,可以使用最多三个是/否问题补充信息;\n4. 通过深入但尊重隐私的追问回答,使过程更加互动和全面;\n5. 避免询问过度个人或可能引起不适的问题;\n6. 一次只问一个问题;\n7. 在询问与过去相关的问题时,明确指明时间段为过去两周,确保评估的时效性和准确性;", "input": "NULL", "constraints_num": 7, "constraints_splits": ["1. 抑郁程度评估范围在0到60之间,其中0表示完全没有抑郁,60表示严重抑郁;", "2. 使用五个标准化的Likert项目提问,每个项目需涵盖不同方面的抑郁症状;", "3. 除了Likert项目外,可以使用最多三个是/否问题补充信息;", "4. 通过深入但尊重隐私的追问回答,使过程更加互动和全面;", "5. 避免询问过度个人或可能引起不适的问题;", "6. 一次只问一个问题;", "7. 在询问与过去相关的问题时,明确指明时间段为过去两周,确保评估的时效性和准确性;"], "levels2": ["数值约束", "数值约束", "数值约束", "隐私约束", "隐私约束", "数值约束", "数值约束"], "category": "trace1.0"} +{"id": "258", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "推荐一款适合58岁女性、有骨质疏松症状的补钙产品\n1. 考虑产品的吸收率;\n2. 考虑产品副作用;\n3. 考虑产品是否含有维生素D等辅助成分;\n4. 提供产品名称;\n5. 提供品牌信息;\n6. 提供每日推荐摄入量;\n7. 提供在使用前应考虑的注意事项;\n"}], "type": "trace", "description": "推荐一款适合58岁女性、有骨质疏松症状的补钙产品", "constraints": "1. 考虑产品的吸收率;\n2. 考虑产品副作用;\n3. 考虑产品是否含有维生素D等辅助成分;\n4. 提供产品名称;\n5. 提供品牌信息;\n6. 提供每日推荐摄入量;\n7. 提供在使用前应考虑的注意事项;", "input": "NULL", "constraints_num": 7, "constraints_splits": ["1. 考虑产品的吸收率;", "2. 考虑产品副作用;", "3. 考虑产品是否含有维生素D等辅助成分;", "4. 提供产品名称;", "5. 提供品牌信息;", "6. 提供每日推荐摄入量;", "7. 提供在使用前应考虑的注意事项;"], "levels2": ["主题约束", "包含约束", "包含约束", "包含约束", "包含约束", "数值约束", "包含约束"], "category": "trace1.0"} +{"id": "259", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为计算机科学专业学生提供一份详细报告,报告内容应包含当程序执行时,处理器从给定地址序列读取数据时,使用2路组相联缓存和LRU替换机制时缓存的内容变化情况。具体要求在报告中以表格形式列出每次读取后缓存的状态,并在报告最后计算并展示整个数据读取序列的命中率,假设缓存最初为空。\n1. 报告的受众为计算机科学专业学生;\n2. 使用2路组相联缓存;\n3. 使用LRU替换机制;\n4. 缓存可以容纳8个32位字;\n5. 缓存最初为空;\n6. 报告中需包含表格形式展示每次读取后缓存的状态;\n7. 需要计算并展示整个数据读取序列的命中率;\n# Inputs:\n数据读取地址序列:20、24、28、20、24、28、20、24、18、21、24、20。\n"}], "type": "trace", "description": "为计算机科学专业学生提供一份详细报告,报告内容应包含当程序执行时,处理器从给定地址序列读取数据时,使用2路组相联缓存和LRU替换机制时缓存的内容变化情况。具体要求在报告中以表格形式列出每次读取后缓存的状态,并在报告最后计算并展示整个数据读取序列的命中率,假设缓存最初为空。", "constraints": "1. 报告的受众为计算机科学专业学生;\n2. 使用2路组相联缓存;\n3. 使用LRU替换机制;\n4. 缓存可以容纳8个32位字;\n5. 缓存最初为空;\n6. 报告中需包含表格形式展示每次读取后缓存的状态;\n7. 需要计算并展示整个数据读取序列的命中率;", "input": "数据读取地址序列:20、24、28、20、24、28、20、24、18、21、24、20。", "constraints_num": 7, "constraints_splits": ["1. 报告的受众为计算机科学专业学生;", "2. 使用2路组相联缓存;", "3. 使用LRU替换机制;", "4. 缓存可以容纳8个32位字;", "5. 缓存最初为空;", "6. 报告中需包含表格形式展示每次读取后缓存的状态;", "7. 需要计算并展示整个数据读取序列的命中率;"], "levels2": ["受众目标约束", "包含约束", "包含约束", "数值约束", "包含约束", "输出格式约束", "数值约束"], "category": "trace1.0"} +{"id": "260", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "将特定信息以受众目标约束的形式添加到报告中,确保信息传达符合企业决策者的需求和理解水平;对市场需求研究部分进行深入分析,专注于支付加密货币给员工的企业需求。\n1. 在报告中使用术语和表述需符合企业决策者的专业背景和理解能力;\n2. 信息传达需针对企业决策者的需求和理解水平;\n3. 需要深入研究并详细分析支付加密货币给员工的企业需求;\n4. 可能涉及与目标市场中企业高管的深度访谈或发放专业问卷调查;\n5. 需综合分析他们支付实践和挑战的现有数据;\n6. 利用研究精准确定当前市场中的痛点和未满足的需求;\n7. 深入了解企业在选择工资单平台时所重视的核心功能和特色。\n"}], "type": "trace", "description": "将特定信息以受众目标约束的形式添加到报告中,确保信息传达符合企业决策者的需求和理解水平;对市场需求研究部分进行深入分析,专注于支付加密货币给员工的企业需求。", "constraints": "1. 在报告中使用术语和表述需符合企业决策者的专业背景和理解能力;\n2. 信息传达需针对企业决策者的需求和理解水平;\n3. 需要深入研究并详细分析支付加密货币给员工的企业需求;\n4. 可能涉及与目标市场中企业高管的深度访谈或发放专业问卷调查;\n5. 需综合分析他们支付实践和挑战的现有数据;\n6. 利用研究精准确定当前市场中的痛点和未满足的需求;\n7. 深入了解企业在选择工资单平台时所重视的核心功能和特色。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["1. 在报告中使用术语和表述需符合企业决策者的专业背景和理解能力;", "2. 信息传达需针对企业决策者的需求和理解水平;", "3. 需要深入研究并详细分析支付加密货币给员工的企业需求;", "4. 可能涉及与目标市场中企业高管的深度访谈或发放专业问卷调查;", "5. 需综合分析他们支付实践和挑战的现有数据;", "6. 利用研究精准确定当前市场中的痛点和未满足的需求;", "7. 深入了解企业在选择工资单平台时所重视的核心功能和特色。"], "levels2": ["受众目标约束", "受众目标约束", "主题约束", "受众目标约束", "包含约束", "主题约束", "主题约束"], "category": "trace1.0"} +{"id": "261", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创造一个基于D&D和其他类似RPG的新TTRPG\n1. 游戏设定在中世纪奇幻世界中;\n2. 角色扮演是核心要素;\n3. 玩家需要扮演勇敢的冒险家,探索未知的领域,解决复杂的谜题,与怪物战斗;\n4. 游戏必须包含一个详尽的世界观;\n5. 游戏必须包含一套平衡的角色创建系统;\n6. 游戏必须包含丰富的任务和剧情线;\n7. 游戏必须包含一个易于上手但深度丰富的规则系统;\n"}], "type": "trace", "description": "创造一个基于D&D和其他类似RPG的新TTRPG", "constraints": "1. 游戏设定在中世纪奇幻世界中;\n2. 角色扮演是核心要素;\n3. 玩家需要扮演勇敢的冒险家,探索未知的领域,解决复杂的谜题,与怪物战斗;\n4. 游戏必须包含一个详尽的世界观;\n5. 游戏必须包含一套平衡的角色创建系统;\n6. 游戏必须包含丰富的任务和剧情线;\n7. 游戏必须包含一个易于上手但深度丰富的规则系统;", "input": "NULL", "constraints_num": 7, "constraints_splits": ["1. 游戏设定在中世纪奇幻世界中;", "2. 角色扮演是核心要素;", "3. 玩家需要扮演勇敢的冒险家,探索未知的领域,解决复杂的谜题,与怪物战斗;", "4. 游戏必须包含一个详尽的世界观;", "5. 游戏必须包含一套平衡的角色创建系统;", "6. 游戏必须包含丰富的任务和剧情线;", "7. 游戏必须包含一个易于上手但深度丰富的规则系统;"], "levels2": ["主题约束", "角色扮演约束", "角色扮演约束", "包含约束", "包含约束", "包含约束", "包含约束"], "category": "trace1.0"} +{"id": "262", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "提供一份公司MRNA报告的详细和专业的大纲\n1. 使用标题和子标题层次化结构,确保每个主要部分和子部分清晰划分。\n2. 在适当的部分使用编号和列表,以清晰列举关键点或数据。\n3. 将报告大纲以Markdown格式呈现,方便后续编辑和格式调整。\n4. 在需要数据对比或总结的子部分,采用表格,插入相关图表或表格,增强报告的可读性和专业度。\n5. 确保大纲遵守标准格式约定,包括正确的语法、标点使用以及文本样式,如使用专业且易读的字体和字号。\n6. 大纲应足够灵活,以适应各种相关和创意的结构,同时保持准确性和专业性,特别是在处理复杂情况时,确保清晰的结构和创意的呈现。\n7. 您的回答应包括主要部分、子部分、主题和任何其他相关信息,以确保对主题的全面理解。\n"}], "type": "trace", "description": "提供一份公司MRNA报告的详细和专业的大纲", "constraints": "1. 使用标题和子标题层次化结构,确保每个主要部分和子部分清晰划分。\n2. 在适当的部分使用编号和列表,以清晰列举关键点或数据。\n3. 将报告大纲以Markdown格式呈现,方便后续编辑和格式调整。\n4. 在需要数据对比或总结的子部分,采用表格,插入相关图表或表格,增强报告的可读性和专业度。\n5. 确保大纲遵守标准格式约定,包括正确的语法、标点使用以及文本样式,如使用专业且易读的字体和字号。\n6. 大纲应足够灵活,以适应各种相关和创意的结构,同时保持准确性和专业性,特别是在处理复杂情况时,确保清晰的结构和创意的呈现。\n7. 您的回答应包括主要部分、子部分、主题和任何其他相关信息,以确保对主题的全面理解。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["1. 使用标题和子标题层次化结构,确保每个主要部分和子部分清晰划分。", "2. 在适当的部分使用编号和列表,以清晰列举关键点或数据。", "3. 将报告大纲以Markdown格式呈现,方便后续编辑和格式调整。", "4. 在需要数据对比或总结的子部分,采用表格,插入相关图表或表格,增强报告的可读性和专业度。", "5. 确保大纲遵守标准格式约定,包括正确的语法、标点使用以及文本样式,如使用专业且易读的字体和字号。", "6. 大纲应足够灵活,以适应各种相关和创意的结构,同时保持准确性和专业性,特别是在处理复杂情况时,确保清晰的结构和创意的呈现。", "7. 您的回答应包括主要部分、子部分、主题和任何其他相关信息,以确保对主题的全面理解。"], "levels2": ["层次化结构约束", "编号和列表约束", "输出格式约束", "输出格式约束", "文本样式约束", "层次化结构约束", "层次化结构约束"], "category": "trace1.0"} +{"id": "263", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "分析患有脑卒中的风险,并按照指定格式进行评估报告。\n1. 报告需使用标题和子标题进行层次化结构组织;\n2. 报告应包含个人基本信息、生活习惯分析、家族史考量、风险因素总结、结论与建议等部分;\n3. 个人基本信息需包含年龄、性别等;\n4. 生活习惯分析需包含吸烟史、工作时长等;\n5. 家族史考量需包含家族成员脑卒中病史;\n6. 风险因素总结需结合生活习惯和家族史分析得出的主要风险因素;\n7. 结论与建议需基于风险评估的结论和个人健康建议。\n"}], "type": "trace", "description": "分析患有脑卒中的风险,并按照指定格式进行评估报告。", "constraints": "1. 报告需使用标题和子标题进行层次化结构组织;\n2. 报告应包含个人基本信息、生活习惯分析、家族史考量、风险因素总结、结论与建议等部分;\n3. 个人基本信息需包含年龄、性别等;\n4. 生活习惯分析需包含吸烟史、工作时长等;\n5. 家族史考量需包含家族成员脑卒中病史;\n6. 风险因素总结需结合生活习惯和家族史分析得出的主要风险因素;\n7. 结论与建议需基于风险评估的结论和个人健康建议。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["1. 报告需使用标题和子标题进行层次化结构组织;", "2. 报告应包含个人基本信息、生活习惯分析、家族史考量、风险因素总结、结论与建议等部分;", "3. 个人基本信息需包含年龄、性别等;", "4. 生活习惯分析需包含吸烟史、工作时长等;", "5. 家族史考量需包含家族成员脑卒中病史;", "6. 风险因素总结需结合生活习惯和家族史分析得出的主要风险因素;", "7. 结论与建议需基于风险评估的结论和个人健康建议。"], "levels2": ["层次化结构约束", "层次化结构约束", "包含约束", "包含约束", "包含约束", "包含约束", "包含约束"], "category": "trace1.0"} +{"id": "264", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "用澳大利亚英语写一篇关于墨尔本建筑合同中保留款的介绍,包括保留款的定义及其对承包商和分包商的重要性的详细阐述,使用比喻或拟人等修辞手法,严格控制字符数在450个以内,内容集中于一段,提及第一次咨询免费的信息,不包含摘要或结论。\n1. 使用澳大利亚英语撰写;\n2. 字符数严格控制在450个以内;\n3. 内容需集中于一段中;\n4. 必须包含对建筑合同中保留款的定义及其重要性的详细阐述;\n5. 使用比喻或拟人等修辞手法增强文章表现力;\n6. 提及第一次咨询是免费的信息;\n7. 不包含摘要或结论;\n"}], "type": "trace", "description": "用澳大利亚英语写一篇关于墨尔本建筑合同中保留款的介绍,包括保留款的定义及其对承包商和分包商的重要性的详细阐述,使用比喻或拟人等修辞手法,严格控制字符数在450个以内,内容集中于一段,提及第一次咨询免费的信息,不包含摘要或结论。", "constraints": "1. 使用澳大利亚英语撰写;\n2. 字符数严格控制在450个以内;\n3. 内容需集中于一段中;\n4. 必须包含对建筑合同中保留款的定义及其重要性的详细阐述;\n5. 使用比喻或拟人等修辞手法增强文章表现力;\n6. 提及第一次咨询是免费的信息;\n7. 不包含摘要或结论;", "input": "NULL", "constraints_num": 7, "constraints_splits": ["1. 使用澳大利亚英语撰写;", "2. 字符数严格控制在450个以内;", "3. 内容需集中于一段中;", "4. 必须包含对建筑合同中保留款的定义及其重要性的详细阐述;", "5. 使用比喻或拟人等修辞手法增强文章表现力;", "6. 提及第一次咨询是免费的信息;", "7. 不包含摘要或结论;"], "levels2": ["多语言约束", "数值约束", "文本样式约束", "包含约束", "语言特征约束", "包含约束", "排除约束"], "category": "trace1.0"} +{"id": "265", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "详细制定一份销售策略报告,针对公司正在研发的微创心脏设备,用于PFO闭合。\n1. 产品在安全性、有效性和患者舒适度方面有显著优势;\n2. 报告中应包含确定目标市场和潜在客户群体、定价策略、销售团队构建和培训计划、关键销售推广活动、销售目标和市场渗透率预测等内容;\n3. 目标市场和潜在客户群体包括医院、心脏专科诊所和心脏外科医生;\n4. 需要制定定价策略,考虑成本、竞争对手定价、市场接受度和价值主张;\n5. 描述销售团队的构建和培训计划,确保有效推广产品;\n6. 列出至少三个关键的销售推广活动,如参加医疗行业展会、与行业领袖合作举办研讨会、以及在线营销策略;\n7. 预测销售目标和市场渗透率,设定第一年和第三年的具体销售目标。\n"}], "type": "trace", "description": "详细制定一份销售策略报告,针对公司正在研发的微创心脏设备,用于PFO闭合。", "constraints": "1. 产品在安全性、有效性和患者舒适度方面有显著优势;\n2. 报告中应包含确定目标市场和潜在客户群体、定价策略、销售团队构建和培训计划、关键销售推广活动、销售目标和市场渗透率预测等内容;\n3. 目标市场和潜在客户群体包括医院、心脏专科诊所和心脏外科医生;\n4. 需要制定定价策略,考虑成本、竞争对手定价、市场接受度和价值主张;\n5. 描述销售团队的构建和培训计划,确保有效推广产品;\n6. 列出至少三个关键的销售推广活动,如参加医疗行业展会、与行业领袖合作举办研讨会、以及在线营销策略;\n7. 预测销售目标和市场渗透率,设定第一年和第三年的具体销售目标。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["1. 产品在安全性、有效性和患者舒适度方面有显著优势;", "2. 报告中应包含确定目标市场和潜在客户群体、定价策略、销售团队构建和培训计划、关键销售推广活动、销售目标和市场渗透率预测等内容;", "3. 目标市场和潜在客户群体包括医院、心脏专科诊所和心脏外科医生;", "4. 需要制定定价策略,考虑成本、竞争对手定价、市场接受度和价值主张;", "5. 描述销售团队的构建和培训计划,确保有效推广产品;", "6. 列出至少三个关键的销售推广活动,如参加医疗行业展会、与行业领袖合作举办研讨会、以及在线营销策略;", "7. 预测销售目标和市场渗透率,设定第一年和第三年的具体销售目标。"], "levels2": ["价值观约束", "包含约束", "受众目标约束", "包含约束", "受众目标约束", "编号和列表约束", "数值约束"], "category": "trace1.0"} +{"id": "266", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "设计一个介绍\"Search Support\"这个Chrome扩展程序的主页,包含程序名称、logo、核心功能说明、使用教程、与chatGPT协同工作优势、响应式设计、立即下载按钮、FAQ部分和联系表格。\n1. 主页采用响应式设计,确保在各种设备上都能良好显示;\n2. 主页包含一个“立即下载”按钮,引导用户轻松获取该扩展;\n3. 主页上应提供一个常见问题解答(FAQ)部分,解答用户可能遇到的基本疑问;\n4. 主页包含一个联系表格,方便用户反馈问题或建议;\n5. 输出格式应为HTML,其中布局清晰、美观,并且易于导航;\n6. 确保所有链接和按钮都是可点击的,以便用户能够从主页上直接进行交互;\n7. 在设计上,保持品牌的一致性,使用\"Search Support\"的官方颜色和字体,以增强品牌识别度;\n"}], "type": "trace", "description": "设计一个介绍\"Search Support\"这个Chrome扩展程序的主页,包含程序名称、logo、核心功能说明、使用教程、与chatGPT协同工作优势、响应式设计、立即下载按钮、FAQ部分和联系表格。", "constraints": "1. 主页采用响应式设计,确保在各种设备上都能良好显示;\n2. 主页包含一个“立即下载”按钮,引导用户轻松获取该扩展;\n3. 主页上应提供一个常见问题解答(FAQ)部分,解答用户可能遇到的基本疑问;\n4. 主页包含一个联系表格,方便用户反馈问题或建议;\n5. 输出格式应为HTML,其中布局清晰、美观,并且易于导航;\n6. 确保所有链接和按钮都是可点击的,以便用户能够从主页上直接进行交互;\n7. 在设计上,保持品牌的一致性,使用\"Search Support\"的官方颜色和字体,以增强品牌识别度;", "input": "NULL", "constraints_num": 7, "constraints_splits": ["1. 主页采用响应式设计,确保在各种设备上都能良好显示;", "2. 主页包含一个“立即下载”按钮,引导用户轻松获取该扩展;", "3. 主页上应提供一个常见问题解答(FAQ)部分,解答用户可能遇到的基本疑问;", "4. 主页包含一个联系表格,方便用户反馈问题或建议;", "5. 输出格式应为HTML,其中布局清晰、美观,并且易于导航;", "6. 确保所有链接和按钮都是可点击的,以便用户能够从主页上直接进行交互;", "7. 在设计上,保持品牌的一致性,使用\"Search Support\"的官方颜色和字体,以增强品牌识别度;"], "levels2": ["文本样式约束", "包含约束", "包含约束", "包含约束", "输出格式约束", "文本样式约束", "文本样式约束"], "category": "trace1.0"} +{"id": "267", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一个完整的日常、周常和月常的例行程序\n1. 例行程序应包括工作时间(周一至周五,从早上8点到晚上7点);\n2. 例行程序应包括休息时间(每天3个15分钟的休息时间);\n3. 例行程序应包括午餐时间(1个小时);\n4. 例行程序应包括在家工作的特定活动安排;\n5. 日常例行程序不超过10项;\n6. 周常例行程序不超过5项;\n7. 月常例行程序不超过3项;\n"}], "type": "trace", "description": "创建一个完整的日常、周常和月常的例行程序", "constraints": "1. 例行程序应包括工作时间(周一至周五,从早上8点到晚上7点);\n2. 例行程序应包括休息时间(每天3个15分钟的休息时间);\n3. 例行程序应包括午餐时间(1个小时);\n4. 例行程序应包括在家工作的特定活动安排;\n5. 日常例行程序不超过10项;\n6. 周常例行程序不超过5项;\n7. 月常例行程序不超过3项;", "input": "NULL", "constraints_num": 7, "constraints_splits": ["1. 例行程序应包括工作时间(周一至周五,从早上8点到晚上7点);", "2. 例行程序应包括休息时间(每天3个15分钟的休息时间);", "3. 例行程序应包括午餐时间(1个小时);", "4. 例行程序应包括在家工作的特定活动安排;", "5. 日常例行程序不超过10项;", "6. 周常例行程序不超过5项;", "7. 月常例行程序不超过3项;"], "levels2": ["自然语言流程背景信息约束", "数值约束", "数值约束", "自然语言流程背景信息约束", "数值约束", "数值约束", "数值约束"], "category": "trace1.0"} +{"id": "268", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为一名16岁男性患者提供诊断急性肠炎的初步判断建议。\n1. 诊断建议应清晰地说明每一个步骤;\n2. 患者或其家人需要观察的症状包括恶心、呕吐、食欲不振、腹痛、腹泻、发热等;\n3. 患者需自我监测体温,若体温超过38°C或症状持续超过24小时无改善,需立即就医;\n4. 饮食应调整为流质或半流质,避免油腻、辛辣食物;\n5. 确保患者充分补充水分,以防脱水;\n6. 保持充足休息,避免剧烈运动;\n7. 若症状持续或加重,应立即就医,可能需要进行粪便检查或血液检查以确诊。\n# Inputs:\n患者主诉有恶心、呕吐、食欲不振等症状,伴有轻微发热。\n"}], "type": "trace", "description": "为一名16岁男性患者提供诊断急性肠炎的初步判断建议。", "constraints": "1. 诊断建议应清晰地说明每一个步骤;\n2. 患者或其家人需要观察的症状包括恶心、呕吐、食欲不振、腹痛、腹泻、发热等;\n3. 患者需自我监测体温,若体温超过38°C或症状持续超过24小时无改善,需立即就医;\n4. 饮食应调整为流质或半流质,避免油腻、辛辣食物;\n5. 确保患者充分补充水分,以防脱水;\n6. 保持充足休息,避免剧烈运动;\n7. 若症状持续或加重,应立即就医,可能需要进行粪便检查或血液检查以确诊。", "input": "患者主诉有恶心、呕吐、食欲不振等症状,伴有轻微发热。", "constraints_num": 7, "constraints_splits": ["1. 诊断建议应清晰地说明每一个步骤;", "2. 患者或其家人需要观察的症状包括恶心、呕吐、食欲不振、腹痛、腹泻、发热等;", "3. 患者需自我监测体温,若体温超过38°C或症状持续超过24小时无改善,需立即就医;", "4. 饮食应调整为流质或半流质,避免油腻、辛辣食物;", "5. 确保患者充分补充水分,以防脱水;", "6. 保持充足休息,避免剧烈运动;", "7. 若症状持续或加重,应立即就医,可能需要进行粪便检查或血液检查以确诊。"], "levels2": ["语法结构约束", "包含约束", "自然语言流程背景信息约束", "包含约束", "包含约束", "包含约束", "包含约束"], "category": "trace1.0"} +{"id": "269", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "评估阿根廷Minera Alumbrera Limited公司的矿山运营对当地环境可能造成的影响,并提出可持续的可取代方案。\n1. 报告格式需为正式的商务报告;\n2. 报告应评估对环境造成的影响,包括但不限于土地退化、水资源污染和生物多样性丧失;\n3. 报告中应包含至少3个主要的环境影响,并对每个影响提供数据支持;\n4. 针对每个环境影响,提出至少2个具体的、可持续的可取代方案,并以编号列表的形式列出;\n5. 确保方案的可行性与创新性;\n6. 报告应以专业学术的语气撰写,使用合适的行业术语;\n7. 在结论部分总结最佳方案。\n"}], "type": "trace", "description": "评估阿根廷Minera Alumbrera Limited公司的矿山运营对当地环境可能造成的影响,并提出可持续的可取代方案。", "constraints": "1. 报告格式需为正式的商务报告;\n2. 报告应评估对环境造成的影响,包括但不限于土地退化、水资源污染和生物多样性丧失;\n3. 报告中应包含至少3个主要的环境影响,并对每个影响提供数据支持;\n4. 针对每个环境影响,提出至少2个具体的、可持续的可取代方案,并以编号列表的形式列出;\n5. 确保方案的可行性与创新性;\n6. 报告应以专业学术的语气撰写,使用合适的行业术语;\n7. 在结论部分总结最佳方案。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["1. 报告格式需为正式的商务报告;", "2. 报告应评估对环境造成的影响,包括但不限于土地退化、水资源污染和生物多样性丧失;", "3. 报告中应包含至少3个主要的环境影响,并对每个影响提供数据支持;", "4. 针对每个环境影响,提出至少2个具体的、可持续的可取代方案,并以编号列表的形式列出;", "5. 确保方案的可行性与创新性;", "6. 报告应以专业学术的语气撰写,使用合适的行业术语;", "7. 在结论部分总结最佳方案。"], "levels2": ["文本样式约束", "主题约束", "数值约束", "编号和列表约束", "价值观约束", "语气风格约束", "层次化结构约束"], "category": "trace1.0"} +{"id": "270", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "制作一份1.5年前Kaerra和Marissa在一起工作时的对话记录\n1. 采用Markdown流程背景信息约束的方式呈现对话记录;\n2. 对话需严格按照以下情境进行:他们首先讨论了项目进展和遇到的挑战,然后自然过渡到谈论个人生活;\n3. Marissa向Kaerra解释了她最近在家里遇到的困难,并表达了担心这可能会影响她的工作表现;\n4. Kaerra需要以一个理解和支持的角色回应,温柔地与Marissa交流,提供安慰和建议;\n5. 在对话的后半段,两人进一步讨论了他们的生活,Marissa分享了她和男友结婚的计划,包括婚礼的筹备情况和对未来的期望;\n6. 在对话即将结束时,Kaerra的手机突然响了,他接了电话,这标志着对话的自然结束;\n7. 最终的对话记录应以Markdown格式呈现,清晰地展示对话的时间线和情境转换,确保对话的连贯性和真实性;\n"}], "type": "trace", "description": "制作一份1.5年前Kaerra和Marissa在一起工作时的对话记录", "constraints": "1. 采用Markdown流程背景信息约束的方式呈现对话记录;\n2. 对话需严格按照以下情境进行:他们首先讨论了项目进展和遇到的挑战,然后自然过渡到谈论个人生活;\n3. Marissa向Kaerra解释了她最近在家里遇到的困难,并表达了担心这可能会影响她的工作表现;\n4. Kaerra需要以一个理解和支持的角色回应,温柔地与Marissa交流,提供安慰和建议;\n5. 在对话的后半段,两人进一步讨论了他们的生活,Marissa分享了她和男友结婚的计划,包括婚礼的筹备情况和对未来的期望;\n6. 在对话即将结束时,Kaerra的手机突然响了,他接了电话,这标志着对话的自然结束;\n7. 最终的对话记录应以Markdown格式呈现,清晰地展示对话的时间线和情境转换,确保对话的连贯性和真实性;", "input": "NULL", "constraints_num": 7, "constraints_splits": ["1. 采用Markdown流程背景信息约束的方式呈现对话记录;", "2. 对话需严格按照以下情境进行:他们首先讨论了项目进展和遇到的挑战,然后自然过渡到谈论个人生活;", "3. Marissa向Kaerra解释了她最近在家里遇到的困难,并表达了担心这可能会影响她的工作表现;", "4. Kaerra需要以一个理解和支持的角色回应,温柔地与Marissa交流,提供安慰和建议;", "5. 在对话的后半段,两人进一步讨论了他们的生活,Marissa分享了她和男友结婚的计划,包括婚礼的筹备情况和对未来的期望;", "6. 在对话即将结束时,Kaerra的手机突然响了,他接了电话,这标志着对话的自然结束;", "7. 最终的对话记录应以Markdown格式呈现,清晰地展示对话的时间线和情境转换,确保对话的连贯性和真实性;"], "levels2": ["自然语言流程背景信息约束", "自然语言流程背景信息约束", "角色扮演约束", "角色扮演约束", "主题约束", "自然语言流程背景信息约束", "输出格式约束"], "category": "trace1.0"} +{"id": "271", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "详细定义数据库中的表格,包括表格的结构和表格之间的关系。\n1. 需要创建至少三个表格:属性表格、评估报告表格和用户表格;\n2. 每个表格应包含以下列:ID(唯一标识符)、创建日期、更新日期和描述;\n3. 用户表格应与属性表格和评估报告表格建立一对多的关系;\n4. 属性表格与评估报告表格建立多对多的关系;\n5. 需要以SQL语句的形式提供定义;\n6. 确保所有关系都正确表示了应用程序中的数据关系;\n7. 将SQL语句以Markdown代码块的形式返回;\n"}], "type": "trace", "description": "详细定义数据库中的表格,包括表格的结构和表格之间的关系。", "constraints": "1. 需要创建至少三个表格:属性表格、评估报告表格和用户表格;\n2. 每个表格应包含以下列:ID(唯一标识符)、创建日期、更新日期和描述;\n3. 用户表格应与属性表格和评估报告表格建立一对多的关系;\n4. 属性表格与评估报告表格建立多对多的关系;\n5. 需要以SQL语句的形式提供定义;\n6. 确保所有关系都正确表示了应用程序中的数据关系;\n7. 将SQL语句以Markdown代码块的形式返回;", "input": "NULL", "constraints_num": 7, "constraints_splits": ["1. 需要创建至少三个表格:属性表格、评估报告表格和用户表格;", "2. 每个表格应包含以下列:ID(唯一标识符)、创建日期、更新日期和描述;", "3. 用户表格应与属性表格和评估报告表格建立一对多的关系;", "4. 属性表格与评估报告表格建立多对多的关系;", "5. 需要以SQL语句的形式提供定义;", "6. 确保所有关系都正确表示了应用程序中的数据关系;", "7. 将SQL语句以Markdown代码块的形式返回;"], "levels2": ["表格背景信息约束", "表格背景信息约束", "表格背景信息约束", "表格背景信息约束", "输出格式约束", "包含约束", "输出格式约束"], "category": "trace1.0"} +{"id": "272", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以 \"Soap Box Printing:当幽默遇见高效\" 为题,用幽默的语气,正式的写作风格,以客户为目标受众写一篇文章。文章中需包含\"Soap Box Printing\"这一关键词加粗显示,且全文中最多使用3次,包含2行文本的引用语句,使用双引号标识。文章中还需包含如何在Thaiprinshop网站上进行定制盒子的简单流程,以及我们快速周转时间的优势。\n1. 文章的标题为 \"Soap Box Printing:当幽默遇见高效\";\n2. 文章的语气需为幽默,风格需为正式;\n3. 目标受众为客户;\n4. \"Soap Box Printing\"这一关键词在文章中需加粗显示,且最多使用3次;\n5. 文章中需包含2行文本的引用语句,使用双引号标识;\n6. 文章中需包含如何在Thaiprinshop网站上进行定制盒子的简单流程;\n7. 文章中需包含我们快速周转时间的优势;\n"}], "type": "trace", "description": "以 \"Soap Box Printing:当幽默遇见高效\" 为题,用幽默的语气,正式的写作风格,以客户为目标受众写一篇文章。文章中需包含\"Soap Box Printing\"这一关键词加粗显示,且全文中最多使用3次,包含2行文本的引用语句,使用双引号标识。文章中还需包含如何在Thaiprinshop网站上进行定制盒子的简单流程,以及我们快速周转时间的优势。", "constraints": "1. 文章的标题为 \"Soap Box Printing:当幽默遇见高效\";\n2. 文章的语气需为幽默,风格需为正式;\n3. 目标受众为客户;\n4. \"Soap Box Printing\"这一关键词在文章中需加粗显示,且最多使用3次;\n5. 文章中需包含2行文本的引用语句,使用双引号标识;\n6. 文章中需包含如何在Thaiprinshop网站上进行定制盒子的简单流程;\n7. 文章中需包含我们快速周转时间的优势;", "input": "NULL", "constraints_num": 7, "constraints_splits": ["1. 文章的标题为 \"Soap Box Printing:当幽默遇见高效\";", "2. 文章的语气需为幽默,风格需为正式;", "3. 目标受众为客户;", "4. \"Soap Box Printing\"这一关键词在文章中需加粗显示,且最多使用3次;", "5. 文章中需包含2行文本的引用语句,使用双引号标识;", "6. 文章中需包含如何在Thaiprinshop网站上进行定制盒子的简单流程;", "7. 文章中需包含我们快速周转时间的优势;"], "levels2": ["文本样式约束", "语气风格约束", "受众目标约束", "文本样式约束", "引用和参考约束", "包含约束", "包含约束"], "category": "trace1.0"} +{"id": "273", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "分析患者的病历并提供治疗方案\n1. 患者年龄44岁,男性,有吸烟史;\n2. 病症表现为持续性咳嗽发热7天;\n3. 实验室检查:白细胞计数13.5x10^9/L,C-反应蛋白32mg/L;\n4. 考虑到患者的职业为教师,需要在短期内恢复工作能力;\n5. 提供至少两种治疗方案,并说明每种方案的优缺点;\n6. 后续的康复建议;\n7. 方案需要避免使用可能引起过敏反应的药物,因为患者有轻度过敏史;\n# Inputs:\n年龄44岁,男性,有吸烟史,咳嗽发热已持续7天,白细胞计数13.5x10^9/L,C-反应蛋白32mg/L。\n"}], "type": "trace", "description": "分析患者的病历并提供治疗方案", "constraints": "1. 患者年龄44岁,男性,有吸烟史;\n2. 病症表现为持续性咳嗽发热7天;\n3. 实验室检查:白细胞计数13.5x10^9/L,C-反应蛋白32mg/L;\n4. 考虑到患者的职业为教师,需要在短期内恢复工作能力;\n5. 提供至少两种治疗方案,并说明每种方案的优缺点;\n6. 后续的康复建议;\n7. 方案需要避免使用可能引起过敏反应的药物,因为患者有轻度过敏史;", "input": "年龄44岁,男性,有吸烟史,咳嗽发热已持续7天,白细胞计数13.5x10^9/L,C-反应蛋白32mg/L。", "constraints_num": 7, "constraints_splits": ["1. 患者年龄44岁,男性,有吸烟史;", "2. 病症表现为持续性咳嗽发热7天;", "3. 实验室检查:白细胞计数13.5x10^9/L,C-反应蛋白32mg/L;", "4. 考虑到患者的职业为教师,需要在短期内恢复工作能力;", "5. 提供至少两种治疗方案,并说明每种方案的优缺点;", "6. 后续的康复建议;", "7. 方案需要避免使用可能引起过敏反应的药物,因为患者有轻度过敏史;"], "levels2": ["文本背景信息约束", "包含约束", "包含约束", "受众目标约束", "数值约束", "包含约束", "排除约束"], "category": "trace1.0"} +{"id": "274", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一个详细的镜头清单表\n1. 清单需体现至少3个核心价值观;\n2. 清单需包含至少5个具体的拍摄地点;\n3. 涉及人员的数量和类型至少包含3种不同角色;\n4. 包含图像/视频的拍摄方向说明;\n5. 清单需包含至少3个其他关键因素的详细描述,如天气条件、时间点、特殊道具需求;\n6. 每个想法都需要详尽说明;\n7. 整个清单的描述字数不少于1000字;\n"}], "type": "trace", "description": "创建一个详细的镜头清单表", "constraints": "1. 清单需体现至少3个核心价值观;\n2. 清单需包含至少5个具体的拍摄地点;\n3. 涉及人员的数量和类型至少包含3种不同角色;\n4. 包含图像/视频的拍摄方向说明;\n5. 清单需包含至少3个其他关键因素的详细描述,如天气条件、时间点、特殊道具需求;\n6. 每个想法都需要详尽说明;\n7. 整个清单的描述字数不少于1000字;", "input": "NULL", "constraints_num": 7, "constraints_splits": ["1. 清单需体现至少3个核心价值观;", "2. 清单需包含至少5个具体的拍摄地点;", "3. 涉及人员的数量和类型至少包含3种不同角色;", "4. 包含图像/视频的拍摄方向说明;", "5. 清单需包含至少3个其他关键因素的详细描述,如天气条件、时间点、特殊道具需求;", "6. 每个想法都需要详尽说明;", "7. 整个清单的描述字数不少于1000字;"], "levels2": ["价值观约束", "数值约束", "数值约束", "包含约束", "数值约束", "数值约束", "数值约束"], "category": "trace1.0"} +{"id": "275", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "提供新手护理人员正确的床位转移技巧,包括使用转移设备的步骤、无设备的安全转移方法、评估病人身体状况以确定最合适的转移方法、确保病人舒适度和安全性的措施、护理人员自我保护、与病人有效沟通以及紧急情况下的应对策略。\n1. 转移技巧应确保病人舒适度和安全性;\n2. 转移技巧应确保护理人员自身也避免受伤;\n3. 包括使用如滑板、吊带等转移设备的正确步骤;\n4. 包括在没有设备的情况下进行安全转移的方法;\n5. 包括评估病人的身体状况以确定最合适的转移方法;\n6. 包括在转移过程中与病人进行有效沟通的方式;\n7. 包括在紧急情况下处理突发状况的应对策略。\n"}], "type": "trace", "description": "提供新手护理人员正确的床位转移技巧,包括使用转移设备的步骤、无设备的安全转移方法、评估病人身体状况以确定最合适的转移方法、确保病人舒适度和安全性的措施、护理人员自我保护、与病人有效沟通以及紧急情况下的应对策略。", "constraints": "1. 转移技巧应确保病人舒适度和安全性;\n2. 转移技巧应确保护理人员自身也避免受伤;\n3. 包括使用如滑板、吊带等转移设备的正确步骤;\n4. 包括在没有设备的情况下进行安全转移的方法;\n5. 包括评估病人的身体状况以确定最合适的转移方法;\n6. 包括在转移过程中与病人进行有效沟通的方式;\n7. 包括在紧急情况下处理突发状况的应对策略。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["1. 转移技巧应确保病人舒适度和安全性;", "2. 转移技巧应确保护理人员自身也避免受伤;", "3. 包括使用如滑板、吊带等转移设备的正确步骤;", "4. 包括在没有设备的情况下进行安全转移的方法;", "5. 包括评估病人的身体状况以确定最合适的转移方法;", "6. 包括在转移过程中与病人进行有效沟通的方式;", "7. 包括在紧急情况下处理突发状况的应对策略。"], "levels2": ["价值观约束", "包含约束", "包含约束", "包含约束", "包含约束", "包含约束", "包含约束"], "category": "trace1.0"} +{"id": "276", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一份摄影师的简历\n1. 简历格式应包含个人信息、教育背景、工作经验、技能和兴趣;\n2. 个人信息应包括姓名、联系方式;\n3. 教育背景需详述高中学习经历;\n4. 工作经验需具体描述使用Adobe Photoshop、Adobe Illustrator和Adobe Lightroom的工作经验;\n5. 技能部分明确指出Python、HTML和CSS的编程能力;\n6. 在兴趣部分提及对动漫的喜爱;\n7. 使用清晰的标题和子标题进行层次化结构组织,确保内容清晰、专业且易于阅读;\n"}], "type": "trace", "description": "撰写一份摄影师的简历", "constraints": "1. 简历格式应包含个人信息、教育背景、工作经验、技能和兴趣;\n2. 个人信息应包括姓名、联系方式;\n3. 教育背景需详述高中学习经历;\n4. 工作经验需具体描述使用Adobe Photoshop、Adobe Illustrator和Adobe Lightroom的工作经验;\n5. 技能部分明确指出Python、HTML和CSS的编程能力;\n6. 在兴趣部分提及对动漫的喜爱;\n7. 使用清晰的标题和子标题进行层次化结构组织,确保内容清晰、专业且易于阅读;", "input": "NULL", "constraints_num": 7, "constraints_splits": ["1. 简历格式应包含个人信息、教育背景、工作经验、技能和兴趣;", "2. 个人信息应包括姓名、联系方式;", "3. 教育背景需详述高中学习经历;", "4. 工作经验需具体描述使用Adobe Photoshop、Adobe Illustrator和Adobe Lightroom的工作经验;", "5. 技能部分明确指出Python、HTML和CSS的编程能力;", "6. 在兴趣部分提及对动漫的喜爱;", "7. 使用清晰的标题和子标题进行层次化结构组织,确保内容清晰、专业且易于阅读;"], "levels2": ["模版约束", "包含约束", "包含约束", "包含约束", "包含约束", "包含约束", "层次化结构约束"], "category": "trace1.0"} +{"id": "277", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "设计一个概念方案,描述如何使用Azure Storage Queues在两家具体公司之间高效、安全地进行大规模数据交换,方案应包含背景信息、实施步骤和代码片段示例,并遵循编号和列表约束。\n1. 方案设计背景应基于两家具体公司(例如:Tech Innovators Inc.和Data Dynamics Corp.);\n2. 使用Azure Storage Queues进行数据交换;\n3. 数据交换需高效、安全;\n4. 方案需采用Markdown流程背景信息约束;\n5. 清晰列出实施步骤;\n6. 附上代码片段示例以帮助理解具体实现方式;\n7. 方案中需遵循编号和列表约束,确保内容的条理性和易读性。\n"}], "type": "trace", "description": "设计一个概念方案,描述如何使用Azure Storage Queues在两家具体公司之间高效、安全地进行大规模数据交换,方案应包含背景信息、实施步骤和代码片段示例,并遵循编号和列表约束。", "constraints": "1. 方案设计背景应基于两家具体公司(例如:Tech Innovators Inc.和Data Dynamics Corp.);\n2. 使用Azure Storage Queues进行数据交换;\n3. 数据交换需高效、安全;\n4. 方案需采用Markdown流程背景信息约束;\n5. 清晰列出实施步骤;\n6. 附上代码片段示例以帮助理解具体实现方式;\n7. 方案中需遵循编号和列表约束,确保内容的条理性和易读性。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["1. 方案设计背景应基于两家具体公司(例如:Tech Innovators Inc.和Data Dynamics Corp.);", "2. 使用Azure Storage Queues进行数据交换;", "3. 数据交换需高效、安全;", "4. 方案需采用Markdown流程背景信息约束;", "5. 清晰列出实施步骤;", "6. 附上代码片段示例以帮助理解具体实现方式;", "7. 方案中需遵循编号和列表约束,确保内容的条理性和易读性。"], "levels2": ["文本背景信息约束", "主题约束", "价值观约束", "markdown流程背景信息约束", "编号和列表约束", "输出格式约束", "编号和列表约束"], "category": "trace1.0"} +{"id": "278", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为一位初学者提供一份关于拔罐疗法的治疗方案。\n1. 方案需以Markdown流程背景信息的形式呈现;\n2. 包括病情的详细介绍,特别是适合进行拔罐疗法的病症类型;\n3. 包括用具的选择,如推荐的品牌和材质;\n4. 使用方法需清晰,最好配以编号和列表,确保操作流程的准确性;\n5. 包含安全注意事项,特别是针对初学者容易忽视的细节;\n6. 包含治疗后的护理建议,包括饮食和生活习惯的调整;\n7. 信息的准确性和安全性,内容应遵循医学专业标准。\n"}], "type": "trace", "description": "为一位初学者提供一份关于拔罐疗法的治疗方案。", "constraints": "1. 方案需以Markdown流程背景信息的形式呈现;\n2. 包括病情的详细介绍,特别是适合进行拔罐疗法的病症类型;\n3. 包括用具的选择,如推荐的品牌和材质;\n4. 使用方法需清晰,最好配以编号和列表,确保操作流程的准确性;\n5. 包含安全注意事项,特别是针对初学者容易忽视的细节;\n6. 包含治疗后的护理建议,包括饮食和生活习惯的调整;\n7. 信息的准确性和安全性,内容应遵循医学专业标准。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["1. 方案需以Markdown流程背景信息的形式呈现;", "2. 包括病情的详细介绍,特别是适合进行拔罐疗法的病症类型;", "3. 包括用具的选择,如推荐的品牌和材质;", "4. 使用方法需清晰,最好配以编号和列表,确保操作流程的准确性;", "5. 包含安全注意事项,特别是针对初学者容易忽视的细节;", "6. 包含治疗后的护理建议,包括饮食和生活习惯的调整;", "7. 信息的准确性和安全性,内容应遵循医学专业标准。"], "levels2": ["markdown流程背景信息约束", "包含约束", "包含约束", "编号和列表约束", "包含约束", "包含约束", "价值观约束"], "category": "trace1.0"} +{"id": "279", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "根据病例,分析胸腔镜手术的必要性和可行性,并给出专业医疗建议。\n1. 输出格式需使用医学报告模版,包含病历摘要、检查结果、诊断分析、治疗建议和后续观察计划等部分;\n2. 以医生角色扮演进行分析和建议提供;\n3. 病历摘要需包括患者基本信息(张某,男性,60岁);\n4. 检查结果需提及左侧肺上叶部分密度增高的情况;\n5. 诊断分析需考虑胸腔镜手术的必要性和可行性;\n6. 治疗建议需基于专业医疗知识给出;\n7. 后续观察计划应包括手术后的监控和复查安排。\n# Inputs:\n张某,男性,60岁,入院检查发现左侧肺上叶部分密度增高。\n"}], "type": "trace", "description": "根据病例,分析胸腔镜手术的必要性和可行性,并给出专业医疗建议。", "constraints": "1. 输出格式需使用医学报告模版,包含病历摘要、检查结果、诊断分析、治疗建议和后续观察计划等部分;\n2. 以医生角色扮演进行分析和建议提供;\n3. 病历摘要需包括患者基本信息(张某,男性,60岁);\n4. 检查结果需提及左侧肺上叶部分密度增高的情况;\n5. 诊断分析需考虑胸腔镜手术的必要性和可行性;\n6. 治疗建议需基于专业医疗知识给出;\n7. 后续观察计划应包括手术后的监控和复查安排。", "input": "张某,男性,60岁,入院检查发现左侧肺上叶部分密度增高。", "constraints_num": 7, "constraints_splits": ["1. 输出格式需使用医学报告模版,包含病历摘要、检查结果、诊断分析、治疗建议和后续观察计划等部分;", "2. 以医生角色扮演进行分析和建议提供;", "3. 病历摘要需包括患者基本信息(张某,男性,60岁);", "4. 检查结果需提及左侧肺上叶部分密度增高的情况;", "5. 诊断分析需考虑胸腔镜手术的必要性和可行性;", "6. 治疗建议需基于专业医疗知识给出;", "7. 后续观察计划应包括手术后的监控和复查安排。"], "levels2": ["模版约束", "角色扮演约束", "包含约束", "包含约束", "主题约束", "主题约束", "包含约束"], "category": "trace1.0"} +{"id": "280", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "对可口可乐公司的可持续性计划进行深度审查\n1. 报告应包含可口可乐在水资源管理、碳排放控制、包装回收三个方面的具体举措;\n2. 针对每个领域提出至少一个改进建议;\n3. 报告采用专业学术的语气风格;\n4. 报告长度控制在1500字以内;\n5. 以PDF格式提交;\n6. 引用至少5篇相关领域的学术文章或行业报告以支持分析;\n7. 在报告中使用图表或列表来清晰地呈现数据和信息;\n"}], "type": "trace", "description": "对可口可乐公司的可持续性计划进行深度审查", "constraints": "1. 报告应包含可口可乐在水资源管理、碳排放控制、包装回收三个方面的具体举措;\n2. 针对每个领域提出至少一个改进建议;\n3. 报告采用专业学术的语气风格;\n4. 报告长度控制在1500字以内;\n5. 以PDF格式提交;\n6. 引用至少5篇相关领域的学术文章或行业报告以支持分析;\n7. 在报告中使用图表或列表来清晰地呈现数据和信息;", "input": "NULL", "constraints_num": 7, "constraints_splits": ["1. 报告应包含可口可乐在水资源管理、碳排放控制、包装回收三个方面的具体举措;", "2. 针对每个领域提出至少一个改进建议;", "3. 报告采用专业学术的语气风格;", "4. 报告长度控制在1500字以内;", "5. 以PDF格式提交;", "6. 引用至少5篇相关领域的学术文章或行业报告以支持分析;", "7. 在报告中使用图表或列表来清晰地呈现数据和信息;"], "levels2": ["包含约束", "数值约束", "语气风格约束", "数值约束", "输出格式约束", "引用和参考约束", "输出格式约束"], "category": "trace1.0"} +{"id": "281", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "使用Markdown格式对一个人进行描述\n1. 文本应包含标题“人物描述”;\n2. 描述中需包含年龄、身高、体重、爱好字段,每个字段单独成行并使用粗体标注字段名;\n3. 年龄字段后需括号备注“约25岁”;\n4. 身高和体重字段后需括号备注单位“米”和“公斤”;\n5. 爱好字段需列举“打篮球”和“音乐”,并使用项目符号分隔;\n6. 描述不应超过100字;\n7. 需在描述中至少提及两次其爱好;\n"}], "type": "trace", "description": "使用Markdown格式对一个人进行描述", "constraints": "1. 文本应包含标题“人物描述”;\n2. 描述中需包含年龄、身高、体重、爱好字段,每个字段单独成行并使用粗体标注字段名;\n3. 年龄字段后需括号备注“约25岁”;\n4. 身高和体重字段后需括号备注单位“米”和“公斤”;\n5. 爱好字段需列举“打篮球”和“音乐”,并使用项目符号分隔;\n6. 描述不应超过100字;\n7. 需在描述中至少提及两次其爱好;", "input": "NULL", "constraints_num": 7, "constraints_splits": ["1. 文本应包含标题“人物描述”;", "2. 描述中需包含年龄、身高、体重、爱好字段,每个字段单独成行并使用粗体标注字段名;", "3. 年龄字段后需括号备注“约25岁”;", "4. 身高和体重字段后需括号备注单位“米”和“公斤”;", "5. 爱好字段需列举“打篮球”和“音乐”,并使用项目符号分隔;", "6. 描述不应超过100字;", "7. 需在描述中至少提及两次其爱好;"], "levels2": ["包含约束", "文本样式约束", "文本样式约束", "文本样式约束", "编号和列表约束", "数值约束", "包含约束"], "category": "trace1.0"} +{"id": "282", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以专业影评人的角色推荐一个电影或电视节目,基于用户的偏好和参数。\n1. 用户倾向于观看科幻类电影;\n2. 用户偏好英语对白;\n3. 用户喜欢的演员包括汤姆·汉克斯和丽贝卡·弗格森;\n4. 用户在导演方面偏好克里斯托弗·诺兰和史蒂文·斯皮尔伯格;\n5. 用户倾向于在晚上观看时长在120分钟以内的电影;\n6. 推荐内容应包括电影的简短剧情介绍,以及为什么这部电影适合用户的偏好;\n7. 推荐的语气应该是热情且具有说服力的,旨在激发用户的观影兴趣。\n"}], "type": "trace", "description": "以专业影评人的角色推荐一个电影或电视节目,基于用户的偏好和参数。", "constraints": "1. 用户倾向于观看科幻类电影;\n2. 用户偏好英语对白;\n3. 用户喜欢的演员包括汤姆·汉克斯和丽贝卡·弗格森;\n4. 用户在导演方面偏好克里斯托弗·诺兰和史蒂文·斯皮尔伯格;\n5. 用户倾向于在晚上观看时长在120分钟以内的电影;\n6. 推荐内容应包括电影的简短剧情介绍,以及为什么这部电影适合用户的偏好;\n7. 推荐的语气应该是热情且具有说服力的,旨在激发用户的观影兴趣。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["1. 用户倾向于观看科幻类电影;", "2. 用户偏好英语对白;", "3. 用户喜欢的演员包括汤姆·汉克斯和丽贝卡·弗格森;", "4. 用户在导演方面偏好克里斯托弗·诺兰和史蒂文·斯皮尔伯格;", "5. 用户倾向于在晚上观看时长在120分钟以内的电影;", "6. 推荐内容应包括电影的简短剧情介绍,以及为什么这部电影适合用户的偏好;", "7. 推荐的语气应该是热情且具有说服力的,旨在激发用户的观影兴趣。"], "levels2": ["主题约束", "多语言约束", "包含约束", "包含约束", "数值约束", "包含约束", "语气风格约束"], "category": "trace1.0"} +{"id": "283", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "编辑一篇关于“健康饮食的重要性”的博客文章\n1. 文章总字数需严格控制在500字;\n2. 文章应采用鼓励和教育的语气;\n3. 内容上,必须包含对健康饮食定义的明确解释;\n4. 文章中至少包含3种健康饮食的益处;\n5. 文章中应包含如何开始健康饮食的建议;\n6. 文章结构应包含引人入胜的引言,三个主题段落,以及一个总结所有要点的结论;\n7. 每个段落的开头应使用编号列出关键点,以增强文章的可读性和条理性;\n"}], "type": "trace", "description": "编辑一篇关于“健康饮食的重要性”的博客文章", "constraints": "1. 文章总字数需严格控制在500字;\n2. 文章应采用鼓励和教育的语气;\n3. 内容上,必须包含对健康饮食定义的明确解释;\n4. 文章中至少包含3种健康饮食的益处;\n5. 文章中应包含如何开始健康饮食的建议;\n6. 文章结构应包含引人入胜的引言,三个主题段落,以及一个总结所有要点的结论;\n7. 每个段落的开头应使用编号列出关键点,以增强文章的可读性和条理性;", "input": "NULL", "constraints_num": 7, "constraints_splits": ["1. 文章总字数需严格控制在500字;", "2. 文章应采用鼓励和教育的语气;", "3. 内容上,必须包含对健康饮食定义的明确解释;", "4. 文章中至少包含3种健康饮食的益处;", "5. 文章中应包含如何开始健康饮食的建议;", "6. 文章结构应包含引人入胜的引言,三个主题段落,以及一个总结所有要点的结论;", "7. 每个段落的开头应使用编号列出关键点,以增强文章的可读性和条理性;"], "levels2": ["数值约束", "语气风格约束", "包含约束", "数值约束", "包含约束", "层次化结构约束", "编号和列表约束"], "category": "trace1.0"} +{"id": "284", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "编辑一个短故事,使其以李明的生日为主线,更具连贯性,包含三个主要部分,每个部分至少100字但不超过150字。\n1. 故事应保持语气风格温馨而富有童趣;\n2. 结构上使用适当的过渡句连接各个部分,确保情节自然流畅;\n3. 故事应按照以下层次化结构组织:\n4. **生日的早晨**:描述李明醒来时的心情,以及家人如何开始准备生日派对。\n5. **意外的惊喜**:细节描写李明的母亲做蛋糕的情景,以及小猫从天窗掉下的意外,如何让派对气氛紧张,最后以小猫安然无恙的温馨结局。\n6. **快乐的时光**:叙述李明与朋友一起玩游戏、聊天的场景,强调李明对这特别日子的感激之情;\n7. 故事中包含对人物情感、环境和动作的生动描述,以增强故事的可读性和吸引力;\n"}], "type": "trace", "description": "编辑一个短故事,使其以李明的生日为主线,更具连贯性,包含三个主要部分,每个部分至少100字但不超过150字。", "constraints": "1. 故事应保持语气风格温馨而富有童趣;\n2. 结构上使用适当的过渡句连接各个部分,确保情节自然流畅;\n3. 故事应按照以下层次化结构组织:\n4. **生日的早晨**:描述李明醒来时的心情,以及家人如何开始准备生日派对。\n5. **意外的惊喜**:细节描写李明的母亲做蛋糕的情景,以及小猫从天窗掉下的意外,如何让派对气氛紧张,最后以小猫安然无恙的温馨结局。\n6. **快乐的时光**:叙述李明与朋友一起玩游戏、聊天的场景,强调李明对这特别日子的感激之情;\n7. 故事中包含对人物情感、环境和动作的生动描述,以增强故事的可读性和吸引力;", "input": "NULL", "constraints_num": 7, "constraints_splits": ["1. 故事应保持语气风格温馨而富有童趣;", "2. 结构上使用适当的过渡句连接各个部分,确保情节自然流畅;", "3. 故事应按照以下层次化结构组织:", "4. **生日的早晨**:描述李明醒来时的心情,以及家人如何开始准备生日派对。", "5. **意外的惊喜**:细节描写李明的母亲做蛋糕的情景,以及小猫从天窗掉下的意外,如何让派对气氛紧张,最后以小猫安然无恙的温馨结局。", "6. **快乐的时光**:叙述李明与朋友一起玩游戏、聊天的场景,强调李明对这特别日子的感激之情;", "7. 故事中包含对人物情感、环境和动作的生动描述,以增强故事的可读性和吸引力;"], "levels2": ["语气风格约束", "语法结构约束", "层次化结构约束", "角色扮演约束", "包含约束", "角色扮演约束", "包含约束"], "category": "trace1.0"} +{"id": "285", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "编辑一篇生产报告,包含执行摘要、市场分析、销售数据、问题识别、原因分析、改进措施和结论等关键部分。\n1. 报告应采用正式商务风格撰写;\n2. 报告的总长度应在1500至2000字之间;\n3. 在问题识别部分,详细列出销售额下降的三个主要因素;\n4. 在原因分析中,每个因素的原因分析不得少于150字;\n5. 在改进措施部分,提出至少五个针对性的解决策略;\n6. 报告中需要使用图表或表格来直观展示销售数据和市场趋势;\n7. 确保数据的准确性和可读性。\n"}], "type": "trace", "description": "编辑一篇生产报告,包含执行摘要、市场分析、销售数据、问题识别、原因分析、改进措施和结论等关键部分。", "constraints": "1. 报告应采用正式商务风格撰写;\n2. 报告的总长度应在1500至2000字之间;\n3. 在问题识别部分,详细列出销售额下降的三个主要因素;\n4. 在原因分析中,每个因素的原因分析不得少于150字;\n5. 在改进措施部分,提出至少五个针对性的解决策略;\n6. 报告中需要使用图表或表格来直观展示销售数据和市场趋势;\n7. 确保数据的准确性和可读性。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["1. 报告应采用正式商务风格撰写;", "2. 报告的总长度应在1500至2000字之间;", "3. 在问题识别部分,详细列出销售额下降的三个主要因素;", "4. 在原因分析中,每个因素的原因分析不得少于150字;", "5. 在改进措施部分,提出至少五个针对性的解决策略;", "6. 报告中需要使用图表或表格来直观展示销售数据和市场趋势;", "7. 确保数据的准确性和可读性。"], "levels2": ["语气风格约束", "数值约束", "包含约束", "数值约束", "数值约束", "输出格式约束", "价值观约束"], "category": "trace1.0"} +{"id": "286", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "推荐一部高质量的科幻电影\n1. 电影类型为科幻;\n2. 电影时长约为120分钟;\n3. 电影来自IMDb评分前100的科幻电影列表;\n4. 电影具有深刻科学理念;\n5. 推荐信以Markdown格式呈现;\n6. 电影名称和导演名以加粗字体显示;\n7. 关键推荐理由以斜体字突出显示;\n"}], "type": "trace", "description": "推荐一部高质量的科幻电影", "constraints": "1. 电影类型为科幻;\n2. 电影时长约为120分钟;\n3. 电影来自IMDb评分前100的科幻电影列表;\n4. 电影具有深刻科学理念;\n5. 推荐信以Markdown格式呈现;\n6. 电影名称和导演名以加粗字体显示;\n7. 关键推荐理由以斜体字突出显示;", "input": "NULL", "constraints_num": 7, "constraints_splits": ["1. 电影类型为科幻;", "2. 电影时长约为120分钟;", "3. 电影来自IMDb评分前100的科幻电影列表;", "4. 电影具有深刻科学理念;", "5. 推荐信以Markdown格式呈现;", "6. 电影名称和导演名以加粗字体显示;", "7. 关键推荐理由以斜体字突出显示;"], "levels2": ["主题约束", "数值约束", "主题约束", "主题约束", "输出格式约束", "文本样式约束", "文本样式约束"], "category": "trace1.0"} +{"id": "287", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇专业学术风格的文章,介绍人工智能在医疗保健领域的应用。\n1. 文章需至少涵盖三种具体应用场景:疾病诊断、药物开发、病历管理;\n2. 详细说明每种应用场景中人工智能技术的显著优势;\n3. 文章总字数限定在1500至2000字之间;\n4. 需包含至少5篇来自权威医学期刊的参考文献,支持论述的严谨性和可靠性;\n5. 文章结构要求清晰,采用标题和子标题进行层次化组织;\n6. 开头需有引言,结尾需有结论,确保内容的完整性和逻辑性;\n7. 所有引用需遵循APA格式标准,确保学术诚信。\n"}], "type": "trace", "description": "撰写一篇专业学术风格的文章,介绍人工智能在医疗保健领域的应用。", "constraints": "1. 文章需至少涵盖三种具体应用场景:疾病诊断、药物开发、病历管理;\n2. 详细说明每种应用场景中人工智能技术的显著优势;\n3. 文章总字数限定在1500至2000字之间;\n4. 需包含至少5篇来自权威医学期刊的参考文献,支持论述的严谨性和可靠性;\n5. 文章结构要求清晰,采用标题和子标题进行层次化组织;\n6. 开头需有引言,结尾需有结论,确保内容的完整性和逻辑性;\n7. 所有引用需遵循APA格式标准,确保学术诚信。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["1. 文章需至少涵盖三种具体应用场景:疾病诊断、药物开发、病历管理;", "2. 详细说明每种应用场景中人工智能技术的显著优势;", "3. 文章总字数限定在1500至2000字之间;", "4. 需包含至少5篇来自权威医学期刊的参考文献,支持论述的严谨性和可靠性;", "5. 文章结构要求清晰,采用标题和子标题进行层次化组织;", "6. 开头需有引言,结尾需有结论,确保内容的完整性和逻辑性;", "7. 所有引用需遵循APA格式标准,确保学术诚信。"], "levels2": ["包含约束", "包含约束", "数值约束", "引用和参考约束", "层次化结构约束", "层次化结构约束", "引用和参考约束"], "category": "trace1.0"} +{"id": "288", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "根据给定的数据集,训练一个机器学习分类模型,用于鸢尾花分类。\n1. 训练过程应包括数据预处理、模型选择、训练、评估和优化;\n2. 模型训练应使用交叉验证的方法;\n3. 训练过程至少包含以下三个关键步骤:特征选择、模型训练和模型预测;\n4. 需要使用至少两种不同的分类算法进行对比(例如:决策树、支持向量机或神经网络);\n5. 训练完成后,模型需提供对新数据的分类预测功能;\n6. 新数据应包含以下四个特征:花萼长度、花萼宽度、花瓣长度和花瓣宽度;\n7. 预测结果应以JSON格式输出,包括预测类别、置信度和模型版本信息;\n# Inputs:\n数据集包含以下5条样本数据:\n1. 5.1,3.5,1.4,0.2,Iris-setosa\n2. 4.9,3.0,1.4,0.2,Iris-setosa\n3. 6.0,3.4,4.5,1.6,Iris-versicolor\n4. 6.7,3.1,4.7,1.5,Iris-versicolor\n5. 6.3,2.5,5.0,1.9,Iris-virginica\n"}], "type": "trace", "description": "根据给定的数据集,训练一个机器学习分类模型,用于鸢尾花分类。", "constraints": "1. 训练过程应包括数据预处理、模型选择、训练、评估和优化;\n2. 模型训练应使用交叉验证的方法;\n3. 训练过程至少包含以下三个关键步骤:特征选择、模型训练和模型预测;\n4. 需要使用至少两种不同的分类算法进行对比(例如:决策树、支持向量机或神经网络);\n5. 训练完成后,模型需提供对新数据的分类预测功能;\n6. 新数据应包含以下四个特征:花萼长度、花萼宽度、花瓣长度和花瓣宽度;\n7. 预测结果应以JSON格式输出,包括预测类别、置信度和模型版本信息;", "input": "数据集包含以下5条样本数据:\n1. 5.1,3.5,1.4,0.2,Iris-setosa\n2. 4.9,3.0,1.4,0.2,Iris-setosa\n3. 6.0,3.4,4.5,1.6,Iris-versicolor\n4. 6.7,3.1,4.7,1.5,Iris-versicolor\n5. 6.3,2.5,5.0,1.9,Iris-virginica", "constraints_num": 7, "constraints_splits": ["1. 训练过程应包括数据预处理、模型选择、训练、评估和优化;", "2. 模型训练应使用交叉验证的方法;", "3. 训练过程至少包含以下三个关键步骤:特征选择、模型训练和模型预测;", "4. 需要使用至少两种不同的分类算法进行对比(例如:决策树、支持向量机或神经网络);", "5. 训练完成后,模型需提供对新数据的分类预测功能;", "6. 新数据应包含以下四个特征:花萼长度、花萼宽度、花瓣长度和花瓣宽度;", "7. 预测结果应以JSON格式输出,包括预测类别、置信度和模型版本信息;"], "levels2": ["自然语言流程背景信息约束", "包含约束", "包含约束", "包含约束", "包含约束", "包含约束", "输出格式约束"], "category": "trace1.0"} +{"id": "289", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "基于项目优先级列表,使用编号列表形式按优先级从高到低排序项目,并包含项目名称和理由说明,每个项目描述不超过20字。\n1. 排序后的列表应包含项目名称和简短的理由说明;\n2. 每个项目描述不超过20字;\n# Inputs:\n- 完成毕业论文\n- 为工作面试做好准备\n- 学习英语\n- 准备生日聚会\n"}], "type": "trace", "description": "基于项目优先级列表,使用编号列表形式按优先级从高到低排序项目,并包含项目名称和理由说明,每个项目描述不超过20字。", "constraints": "1. 排序后的列表应包含项目名称和简短的理由说明;\n2. 每个项目描述不超过20字;", "input": "- 完成毕业论文\n- 为工作面试做好准备\n- 学习英语\n- 准备生日聚会", "constraints_num": 2, "constraints_splits": ["1. 排序后的列表应包含项目名称和简短的理由说明;", "2. 每个项目描述不超过20字;"], "levels2": ["层次化结构约束", "数值约束"], "category": "trace1.0"} +{"id": "290", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "写一篇评论畅销小说《时间的涟漪》的文章\n1. 文章需详细分析小说的故事情节、人物塑造、主题思想以及语言风格;\n2. 字数应在1000至1500字之间;\n3. 文章应采用正式且具批判性的语气风格;\n4. 文章中需包含一段不超过200字的故事情节概括;\n5. 需结合至少3个具体的例子来支持评论;\n6. 文章应以Markdown格式提交,确保标题、子标题和引用部分清晰可辨;\n7. 避免过于主观的评价;\n"}], "type": "trace", "description": "写一篇评论畅销小说《时间的涟漪》的文章", "constraints": "1. 文章需详细分析小说的故事情节、人物塑造、主题思想以及语言风格;\n2. 字数应在1000至1500字之间;\n3. 文章应采用正式且具批判性的语气风格;\n4. 文章中需包含一段不超过200字的故事情节概括;\n5. 需结合至少3个具体的例子来支持评论;\n6. 文章应以Markdown格式提交,确保标题、子标题和引用部分清晰可辨;\n7. 避免过于主观的评价;", "input": "NULL", "constraints_num": 7, "constraints_splits": ["1. 文章需详细分析小说的故事情节、人物塑造、主题思想以及语言风格;", "2. 字数应在1000至1500字之间;", "3. 文章应采用正式且具批判性的语气风格;", "4. 文章中需包含一段不超过200字的故事情节概括;", "5. 需结合至少3个具体的例子来支持评论;", "6. 文章应以Markdown格式提交,确保标题、子标题和引用部分清晰可辨;", "7. 避免过于主观的评价;"], "levels2": ["主题约束", "数值约束", "语气风格约束", "数值约束", "数值约束", "输出格式约束", "价值观约束"], "category": "trace1.0"} +{"id": "291", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "扮演一位比萨饼大师,介绍比萨饼的起源,以及它如何成为全球流行的美食。详细介绍至少5种不同种类的比萨饼,每种比萨饼的描述不超过100字,确保包含它们的特色配料和烹饪方法。\n1. 描述语气需专业而热情;\n2. 介绍包含比萨饼在意大利的诞生背景;\n3. 介绍包含比萨饼如何成为全球流行的美食;\n4. 需详细介绍至少5种不同种类的比萨饼;\n5. 每种比萨饼的描述不超过100字;\n6. 需包含特色配料和烹饪方法;\n7. 最终信息以精美设计的PDF文件形式发送。\n"}], "type": "trace", "description": "扮演一位比萨饼大师,介绍比萨饼的起源,以及它如何成为全球流行的美食。详细介绍至少5种不同种类的比萨饼,每种比萨饼的描述不超过100字,确保包含它们的特色配料和烹饪方法。", "constraints": "1. 描述语气需专业而热情;\n2. 介绍包含比萨饼在意大利的诞生背景;\n3. 介绍包含比萨饼如何成为全球流行的美食;\n4. 需详细介绍至少5种不同种类的比萨饼;\n5. 每种比萨饼的描述不超过100字;\n6. 需包含特色配料和烹饪方法;\n7. 最终信息以精美设计的PDF文件形式发送。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["1. 描述语气需专业而热情;", "2. 介绍包含比萨饼在意大利的诞生背景;", "3. 介绍包含比萨饼如何成为全球流行的美食;", "4. 需详细介绍至少5种不同种类的比萨饼;", "5. 每种比萨饼的描述不超过100字;", "6. 需包含特色配料和烹饪方法;", "7. 最终信息以精美设计的PDF文件形式发送。"], "levels2": ["语气风格约束", "包含约束", "包含约束", "数值约束", "数值约束", "包含约束", "输出格式约束"], "category": "trace1.0"} +{"id": "292", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "提供一种解决方案或行动建议,帮助面对难题的人理清思路并解决问题,方案应包含冷静分析、寻求支持和制定计划三个步骤。\n1. 方案应采用鼓励和启发的语气;\n2. 方案需帮助从多个角度重新审视问题;\n3. 解决方案应包含以下三个步骤:\n4. **冷静分析**:指导如何全面分析问题;\n5. **寻求支持**:建议如何构建支持网络;\n6. **制定计划**:指导如何制定详细行动计划;\n7. 解决方案应以Markdown流程背景信息的形式呈现;\n"}], "type": "trace", "description": "提供一种解决方案或行动建议,帮助面对难题的人理清思路并解决问题,方案应包含冷静分析、寻求支持和制定计划三个步骤。", "constraints": "1. 方案应采用鼓励和启发的语气;\n2. 方案需帮助从多个角度重新审视问题;\n3. 解决方案应包含以下三个步骤:\n4. **冷静分析**:指导如何全面分析问题;\n5. **寻求支持**:建议如何构建支持网络;\n6. **制定计划**:指导如何制定详细行动计划;\n7. 解决方案应以Markdown流程背景信息的形式呈现;", "input": "NULL", "constraints_num": 7, "constraints_splits": ["1. 方案应采用鼓励和启发的语气;", "2. 方案需帮助从多个角度重新审视问题;", "3. 解决方案应包含以下三个步骤:", "4. **冷静分析**:指导如何全面分析问题;", "5. **寻求支持**:建议如何构建支持网络;", "6. **制定计划**:指导如何制定详细行动计划;", "7. 解决方案应以Markdown流程背景信息的形式呈现;"], "levels2": ["语气风格约束", "包含约束", "层次化结构约束", "语气风格约束", "主题约束", "自然语言流程背景信息约束", "markdown流程背景信息约束"], "category": "trace1.0"} +{"id": "293", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "提供一个描述旧金山这个城市的段落\n1. 段落中必须包含旧金山的人口数量,使用阿拉伯数字表示;\n2. 城市名称需以大写字母开头;\n3. 明确标注旧金山的地理位置,包括所在的州和国家;\n4. 提供至少两个其他与旧金山相关的重要信息点(如主要的地标、经济特点或文化特色);\n5. 段落的字数应控制在150至200字之间;\n6. 必须使用复合句和并列句结合的形式,展现清晰的语法结构和丰富的表述;\n7. 在描述中,人口数量、地标名称和经济特点等关键信息点应使用引号或斜体字突出显示;\n"}], "type": "trace", "description": "提供一个描述旧金山这个城市的段落", "constraints": "1. 段落中必须包含旧金山的人口数量,使用阿拉伯数字表示;\n2. 城市名称需以大写字母开头;\n3. 明确标注旧金山的地理位置,包括所在的州和国家;\n4. 提供至少两个其他与旧金山相关的重要信息点(如主要的地标、经济特点或文化特色);\n5. 段落的字数应控制在150至200字之间;\n6. 必须使用复合句和并列句结合的形式,展现清晰的语法结构和丰富的表述;\n7. 在描述中,人口数量、地标名称和经济特点等关键信息点应使用引号或斜体字突出显示;", "input": "NULL", "constraints_num": 7, "constraints_splits": ["1. 段落中必须包含旧金山的人口数量,使用阿拉伯数字表示;", "2. 城市名称需以大写字母开头;", "3. 明确标注旧金山的地理位置,包括所在的州和国家;", "4. 提供至少两个其他与旧金山相关的重要信息点(如主要的地标、经济特点或文化特色);", "5. 段落的字数应控制在150至200字之间;", "6. 必须使用复合句和并列句结合的形式,展现清晰的语法结构和丰富的表述;", "7. 在描述中,人口数量、地标名称和经济特点等关键信息点应使用引号或斜体字突出显示;"], "levels2": ["包含约束", "文本样式约束", "包含约束", "包含约束", "数值约束", "语法结构约束", "文本样式约束"], "category": "trace1.0"} +{"id": "294", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为苹果公司(科技行业)撰写一份详细的业务分析报告。\n1. 报告应包括执行摘要、公司概述、财务分析、竞争对手分析、研发投资分析和结论部分;\n2. 报告的总字数应在1500至2000字之间;\n3. 报告需包括至少3个视觉图表或图形,如柱状图或饼图;\n4. 所有关键数据(如数字、公司名)应使用加粗样式进行突出显示;\n5. 竞争对手分析时,应至少提及三星、华为和谷歌,并对比它们的年度营收和净利润;\n6. 报告中需引用至少2篇行业分析报告,以支持分析结论;\n7. 内容应遵循逻辑层次结构,每个部分应有清晰的标题和副标题。\n"}], "type": "trace", "description": "为苹果公司(科技行业)撰写一份详细的业务分析报告。", "constraints": "1. 报告应包括执行摘要、公司概述、财务分析、竞争对手分析、研发投资分析和结论部分;\n2. 报告的总字数应在1500至2000字之间;\n3. 报告需包括至少3个视觉图表或图形,如柱状图或饼图;\n4. 所有关键数据(如数字、公司名)应使用加粗样式进行突出显示;\n5. 竞争对手分析时,应至少提及三星、华为和谷歌,并对比它们的年度营收和净利润;\n6. 报告中需引用至少2篇行业分析报告,以支持分析结论;\n7. 内容应遵循逻辑层次结构,每个部分应有清晰的标题和副标题。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["1. 报告应包括执行摘要、公司概述、财务分析、竞争对手分析、研发投资分析和结论部分;", "2. 报告的总字数应在1500至2000字之间;", "3. 报告需包括至少3个视觉图表或图形,如柱状图或饼图;", "4. 所有关键数据(如数字、公司名)应使用加粗样式进行突出显示;", "5. 竞争对手分析时,应至少提及三星、华为和谷歌,并对比它们的年度营收和净利润;", "6. 报告中需引用至少2篇行业分析报告,以支持分析结论;", "7. 内容应遵循逻辑层次结构,每个部分应有清晰的标题和副标题。"], "levels2": ["层次化结构约束", "数值约束", "输出格式约束", "文本样式约束", "包含约束", "引用和参考约束", "层次化结构约束"], "category": "trace1.0"} +{"id": "295", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇总结《时间简史》的文章\n1. 文章风格需为正式、严谨的学术语气;\n2. 文章字数大约200字;\n3. 文章中必须包含对作者史蒂芬·霍金的简介、书中的核心理论(如宇宙大爆炸、黑洞理论)以及该书对现代科学的贡献;\n4. 内容需准确,避免任何可能的科学错误;\n5. 在文中适当位置使用斜体字强调关键术语;\n6. 总结应保持客观,避免加入个人情感或偏见;\n7. 需在限定字数内清晰地传达书籍的核心信息,使读者能够快速理解《时间简史》的核心内容;\n"}], "type": "trace", "description": "撰写一篇总结《时间简史》的文章", "constraints": "1. 文章风格需为正式、严谨的学术语气;\n2. 文章字数大约200字;\n3. 文章中必须包含对作者史蒂芬·霍金的简介、书中的核心理论(如宇宙大爆炸、黑洞理论)以及该书对现代科学的贡献;\n4. 内容需准确,避免任何可能的科学错误;\n5. 在文中适当位置使用斜体字强调关键术语;\n6. 总结应保持客观,避免加入个人情感或偏见;\n7. 需在限定字数内清晰地传达书籍的核心信息,使读者能够快速理解《时间简史》的核心内容;", "input": "NULL", "constraints_num": 7, "constraints_splits": ["1. 文章风格需为正式、严谨的学术语气;", "2. 文章字数大约200字;", "3. 文章中必须包含对作者史蒂芬·霍金的简介、书中的核心理论(如宇宙大爆炸、黑洞理论)以及该书对现代科学的贡献;", "4. 内容需准确,避免任何可能的科学错误;", "5. 在文中适当位置使用斜体字强调关键术语;", "6. 总结应保持客观,避免加入个人情感或偏见;", "7. 需在限定字数内清晰地传达书籍的核心信息,使读者能够快速理解《时间简史》的核心内容;"], "levels2": ["语气风格约束", "数值约束", "包含约束", "价值观约束", "文本样式约束", "语气风格约束", "数值约束"], "category": "trace1.0"} +{"id": "296", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一份最优的旅游路线,确保用户在纽约市的周末体验包括至少5个标志性景点、3个美食体验和2个艺术或文化活动。\n1. 路线规划应确保每个活动之间的最短步行或公共交通时间;\n2. 总行程时间控制在周五中午至周日下午;\n3. 每个兴趣点的停留时间不少于1小时;\n4. 输出格式为一个详细的行程表,包括景点名称、地址、建议时间、交通方式和预计所需时间;\n5. 行程表应以Markdown格式呈现,包括标题、子标题和列表;\n6. 路线规划风格注重实用性和趣味性;\n7. 提供趣味性的背景信息和建议,以保持用户的兴趣和参与度。\n"}], "type": "trace", "description": "创建一份最优的旅游路线,确保用户在纽约市的周末体验包括至少5个标志性景点、3个美食体验和2个艺术或文化活动。", "constraints": "1. 路线规划应确保每个活动之间的最短步行或公共交通时间;\n2. 总行程时间控制在周五中午至周日下午;\n3. 每个兴趣点的停留时间不少于1小时;\n4. 输出格式为一个详细的行程表,包括景点名称、地址、建议时间、交通方式和预计所需时间;\n5. 行程表应以Markdown格式呈现,包括标题、子标题和列表;\n6. 路线规划风格注重实用性和趣味性;\n7. 提供趣味性的背景信息和建议,以保持用户的兴趣和参与度。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["1. 路线规划应确保每个活动之间的最短步行或公共交通时间;", "2. 总行程时间控制在周五中午至周日下午;", "3. 每个兴趣点的停留时间不少于1小时;", "4. 输出格式为一个详细的行程表,包括景点名称、地址、建议时间、交通方式和预计所需时间;", "5. 行程表应以Markdown格式呈现,包括标题、子标题和列表;", "6. 路线规划风格注重实用性和趣味性;", "7. 提供趣味性的背景信息和建议,以保持用户的兴趣和参与度。"], "levels2": ["自然语言流程背景信息约束", "数值约束", "数值约束", "输出格式约束", "输出格式约束", "语气风格约束", "受众目标约束"], "category": "trace1.0"} +{"id": "297", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "根据提示,以专业学术的语气风格,写一篇描述早起的好处的文章。\n1. 文章应包含引言、至少三个段落的正文阐述早起的好处,以及一个结论部分;\n2. 总字数在800至1000字之间;\n3. 正文部分应详细阐述早晨是一天中最美好的时光,早起如何让人拥有更多的时间去准备自己的一天,并让人开始有规律的生活;\n4. 需要说明早起如何增强人体的免疫力和减轻焦虑或抑郁等情绪;\n5. 需要阐述早起如何增加人的健康寿命;\n6. 所有重点强调的部分需使用斜体字标出;\n7. 文章结构应层次分明,使用编号列表组织每个好处的论述。\n"}], "type": "trace", "description": "根据提示,以专业学术的语气风格,写一篇描述早起的好处的文章。", "constraints": "1. 文章应包含引言、至少三个段落的正文阐述早起的好处,以及一个结论部分;\n2. 总字数在800至1000字之间;\n3. 正文部分应详细阐述早晨是一天中最美好的时光,早起如何让人拥有更多的时间去准备自己的一天,并让人开始有规律的生活;\n4. 需要说明早起如何增强人体的免疫力和减轻焦虑或抑郁等情绪;\n5. 需要阐述早起如何增加人的健康寿命;\n6. 所有重点强调的部分需使用斜体字标出;\n7. 文章结构应层次分明,使用编号列表组织每个好处的论述。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["1. 文章应包含引言、至少三个段落的正文阐述早起的好处,以及一个结论部分;", "2. 总字数在800至1000字之间;", "3. 正文部分应详细阐述早晨是一天中最美好的时光,早起如何让人拥有更多的时间去准备自己的一天,并让人开始有规律的生活;", "4. 需要说明早起如何增强人体的免疫力和减轻焦虑或抑郁等情绪;", "5. 需要阐述早起如何增加人的健康寿命;", "6. 所有重点强调的部分需使用斜体字标出;", "7. 文章结构应层次分明,使用编号列表组织每个好处的论述。"], "levels2": ["层次化结构约束", "数值约束", "主题约束", "包含约束", "主题约束", "文本样式约束", "层次化结构约束"], "category": "trace1.0"} +{"id": "298", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇关于“戒烟的好处”的学术论文\n1. 论文结构应完整,包括摘要、引言、文献综述、研究方法、结果分析、讨论和结论等部分;\n2. 论文总字数需在3000至4000字之间;\n3. 论文应包含至少10篇经过同行评审的科学文献作为参考文献,确保信息来源的权威性和可靠性;\n4. 论文应采用正式严谨的语气,遵循学术写作的语法结构;\n5. 使用清晰的标题和子标题来组织内容,以增强文章的逻辑性和可读性;\n6. 需在结尾处提出3至5条具体、可实施的建议,以帮助读者戒烟或预防吸烟;\n7. 论文中关键数据和研究结果应加粗以突出显示,确保读者能够快速捕捉到论文的重点;\n"}], "type": "trace", "description": "撰写一篇关于“戒烟的好处”的学术论文", "constraints": "1. 论文结构应完整,包括摘要、引言、文献综述、研究方法、结果分析、讨论和结论等部分;\n2. 论文总字数需在3000至4000字之间;\n3. 论文应包含至少10篇经过同行评审的科学文献作为参考文献,确保信息来源的权威性和可靠性;\n4. 论文应采用正式严谨的语气,遵循学术写作的语法结构;\n5. 使用清晰的标题和子标题来组织内容,以增强文章的逻辑性和可读性;\n6. 需在结尾处提出3至5条具体、可实施的建议,以帮助读者戒烟或预防吸烟;\n7. 论文中关键数据和研究结果应加粗以突出显示,确保读者能够快速捕捉到论文的重点;", "input": "NULL", "constraints_num": 7, "constraints_splits": ["1. 论文结构应完整,包括摘要、引言、文献综述、研究方法、结果分析、讨论和结论等部分;", "2. 论文总字数需在3000至4000字之间;", "3. 论文应包含至少10篇经过同行评审的科学文献作为参考文献,确保信息来源的权威性和可靠性;", "4. 论文应采用正式严谨的语气,遵循学术写作的语法结构;", "5. 使用清晰的标题和子标题来组织内容,以增强文章的逻辑性和可读性;", "6. 需在结尾处提出3至5条具体、可实施的建议,以帮助读者戒烟或预防吸烟;", "7. 论文中关键数据和研究结果应加粗以突出显示,确保读者能够快速捕捉到论文的重点;"], "levels2": ["层次化结构约束", "数值约束", "引用和参考约束", "语气风格约束", "层次化结构约束", "数值约束", "文本样式约束"], "category": "trace1.0"} +{"id": "299", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以专业学术的语气和风格,详细解释如何利用地球电磁勘探技术在沙漠环境中探测一座铁矿的具体步骤和科学原理;将结果以编号列表的形式呈现,确保每一步骤的清晰性和条理性。\n1. 结果需以专业学术的语气和风格撰写;\n2. 结果以编号列表的形式呈现;\n3. 每一步骤要清晰且有条理性;\n4. 结果需包括地球电磁勘探技术的原理介绍;\n5. 结果需包括沙漠环境下的电磁勘探技术调整与优化;\n6. 结果需包括铁矿石的电磁特性分析;\n7. 结果需包括具体的电磁勘探设备介绍与使用方法;\n8. 结果需包括数据收集与分析流程;\n9. 结果需包括结果解释与矿石位置确认。\n"}], "type": "trace", "description": "以专业学术的语气和风格,详细解释如何利用地球电磁勘探技术在沙漠环境中探测一座铁矿的具体步骤和科学原理;将结果以编号列表的形式呈现,确保每一步骤的清晰性和条理性。", "constraints": "1. 结果需以专业学术的语气和风格撰写;\n2. 结果以编号列表的形式呈现;\n3. 每一步骤要清晰且有条理性;\n4. 结果需包括地球电磁勘探技术的原理介绍;\n5. 结果需包括沙漠环境下的电磁勘探技术调整与优化;\n6. 结果需包括铁矿石的电磁特性分析;\n7. 结果需包括具体的电磁勘探设备介绍与使用方法;\n8. 结果需包括数据收集与分析流程;\n9. 结果需包括结果解释与矿石位置确认。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["1. 结果需以专业学术的语气和风格撰写;", "2. 结果以编号列表的形式呈现;", "3. 每一步骤要清晰且有条理性;", "4. 结果需包括地球电磁勘探技术的原理介绍;", "5. 结果需包括沙漠环境下的电磁勘探技术调整与优化;", "6. 结果需包括铁矿石的电磁特性分析;", "7. 结果需包括具体的电磁勘探设备介绍与使用方法;", "8. 结果需包括数据收集与分析流程;", "9. 结果需包括结果解释与矿石位置确认。"], "levels2": ["语气风格约束", "编号和列表约束", "层次化结构约束", "包含约束", "包含约束", "包含约束", "包含约束", "自然语言流程背景信息约束", "包含约束"], "category": "trace1.0"} +{"id": "300", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以一位急救护士的角色扮演约束,针对急救工作中的质量管理标准和流程进行分析。\n1. 假设你正在一家大型城市医院的急诊室工作,每天面对各种紧急医疗情况;\n2. 你的分析应包括但不限于:患者安全、护理质量、时间响应效率、团队协作、记录保持和持续改进等关键方面;\n3. 请以正式的报告格式输出,包括标题、摘要、目录、正文、结论和参考文献部分;\n4. 报告标题:《急救护士工作中质量管理标准与流程:分析与建议》;\n5. 报告摘要:简要概述急救护士在质量管理方面的核心职责和流程;\n6. 目录:列出报告的章节标题和页码;\n7. 正文:分别对上述质量管理标准和流程进行详细分析,并提出改进建议;\n8. 结论:总结分析结果,强调持续改进的重要性;\n9. 参考文献:列出所有引用的资料来源,遵循APA引用格式;\n"}], "type": "trace", "description": "以一位急救护士的角色扮演约束,针对急救工作中的质量管理标准和流程进行分析。", "constraints": "1. 假设你正在一家大型城市医院的急诊室工作,每天面对各种紧急医疗情况;\n2. 你的分析应包括但不限于:患者安全、护理质量、时间响应效率、团队协作、记录保持和持续改进等关键方面;\n3. 请以正式的报告格式输出,包括标题、摘要、目录、正文、结论和参考文献部分;\n4. 报告标题:《急救护士工作中质量管理标准与流程:分析与建议》;\n5. 报告摘要:简要概述急救护士在质量管理方面的核心职责和流程;\n6. 目录:列出报告的章节标题和页码;\n7. 正文:分别对上述质量管理标准和流程进行详细分析,并提出改进建议;\n8. 结论:总结分析结果,强调持续改进的重要性;\n9. 参考文献:列出所有引用的资料来源,遵循APA引用格式;", "input": "NULL", "constraints_num": 9, "constraints_splits": ["1. 假设你正在一家大型城市医院的急诊室工作,每天面对各种紧急医疗情况;", "2. 你的分析应包括但不限于:患者安全、护理质量、时间响应效率、团队协作、记录保持和持续改进等关键方面;", "3. 请以正式的报告格式输出,包括标题、摘要、目录、正文、结论和参考文献部分;", "4. 报告标题:《急救护士工作中质量管理标准与流程:分析与建议》;", "5. 报告摘要:简要概述急救护士在质量管理方面的核心职责和流程;", "6. 目录:列出报告的章节标题和页码;", "7. 正文:分别对上述质量管理标准和流程进行详细分析,并提出改进建议;", "8. 结论:总结分析结果,强调持续改进的重要性;", "9. 参考文献:列出所有引用的资料来源,遵循APA引用格式;"], "levels2": ["角色扮演约束", "包含约束", "输出格式约束", "输出格式约束", "输出格式约束", "层次化结构约束", "包含约束", "层次化结构约束", "引用和参考约束"], "category": "trace1.0"} +{"id": "301", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "探讨和解决性别平等与女性权益相关的多个议题,包括支持女性克服冒名顶替综合症、识别和对抗情感操控、调整对女性与男性交往的评价、坚持性别平等立场、促进生育自由、批判男性凝视、打破月经羞辱、应对家庭责任与职业发展的困境,以及通过阅读和分享知识提升对性别平等的理解和行动能力。\n1. 在采取行动支持女性克服冒名顶替综合症时,应当基于尊重个人自主权和提升自我意识的基础上,旨在培养健康的沟通模式和人际关系,同时确保行动能够促进心理健康和性别平等。\n2. 识别并对抗情感操控的策略应当建立在尊重个人自主权和提升自我意识的基础上。\n3. 在评价喜欢与男性交往的女性时,需重新思考并促进性别多样性和平等对待,理解每个人的选择和偏好是基于个人意愿而非社会刻板印象。\n4. 当面临批评指责在性别议题上过于强调平等时,应展现出对性别平等重要性的坚定信念,倡导开放和包容的对话,促进社会对性别平等价值的认识和接受。\n5. 在讨论生育自由时,应探索并投资于技术解决方案,不仅为女性提供更多的生殖自主权,同时也能促进社会对女性身体权利的尊重和性别平等。\n6. 批判“男性凝视”时,需倡导一种更加全面和平等的视角,鼓励社会重新审视和评价女性在媒体、艺术和日常生活中被描绘的方式,以促进性别平等和尊重。\n7. 在打破月经羞辱的过程中,通过教育和公共讨论,减少月经羞耻,增强对月经健康知识的普及,鼓励社会接受月经作为女性生命的一部分,同时提升对女性生殖健康的重视。\n8. 应对女性在家庭责任和职业发展之间的困境时,可从性别平等政策较为先进的国家中学习,借鉴其成功经验和做法,为女性创造一个更加公平和包容的工作环境,鼓励女性追求事业同时平衡家庭责任。\n9. 开始阅读并分享女权主义书籍,以提升自己的理解和行动能力,激发更多人对性别平等议题的关注和参与,始终以推动积极社会变革为目标。\n"}], "type": "trace", "description": "探讨和解决性别平等与女性权益相关的多个议题,包括支持女性克服冒名顶替综合症、识别和对抗情感操控、调整对女性与男性交往的评价、坚持性别平等立场、促进生育自由、批判男性凝视、打破月经羞辱、应对家庭责任与职业发展的困境,以及通过阅读和分享知识提升对性别平等的理解和行动能力。", "constraints": "1. 在采取行动支持女性克服冒名顶替综合症时,应当基于尊重个人自主权和提升自我意识的基础上,旨在培养健康的沟通模式和人际关系,同时确保行动能够促进心理健康和性别平等。\n2. 识别并对抗情感操控的策略应当建立在尊重个人自主权和提升自我意识的基础上。\n3. 在评价喜欢与男性交往的女性时,需重新思考并促进性别多样性和平等对待,理解每个人的选择和偏好是基于个人意愿而非社会刻板印象。\n4. 当面临批评指责在性别议题上过于强调平等时,应展现出对性别平等重要性的坚定信念,倡导开放和包容的对话,促进社会对性别平等价值的认识和接受。\n5. 在讨论生育自由时,应探索并投资于技术解决方案,不仅为女性提供更多的生殖自主权,同时也能促进社会对女性身体权利的尊重和性别平等。\n6. 批判“男性凝视”时,需倡导一种更加全面和平等的视角,鼓励社会重新审视和评价女性在媒体、艺术和日常生活中被描绘的方式,以促进性别平等和尊重。\n7. 在打破月经羞辱的过程中,通过教育和公共讨论,减少月经羞耻,增强对月经健康知识的普及,鼓励社会接受月经作为女性生命的一部分,同时提升对女性生殖健康的重视。\n8. 应对女性在家庭责任和职业发展之间的困境时,可从性别平等政策较为先进的国家中学习,借鉴其成功经验和做法,为女性创造一个更加公平和包容的工作环境,鼓励女性追求事业同时平衡家庭责任。\n9. 开始阅读并分享女权主义书籍,以提升自己的理解和行动能力,激发更多人对性别平等议题的关注和参与,始终以推动积极社会变革为目标。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["1. 在采取行动支持女性克服冒名顶替综合症时,应当基于尊重个人自主权和提升自我意识的基础上,旨在培养健康的沟通模式和人际关系,同时确保行动能够促进心理健康和性别平等。", "2. 识别并对抗情感操控的策略应当建立在尊重个人自主权和提升自我意识的基础上。", "3. 在评价喜欢与男性交往的女性时,需重新思考并促进性别多样性和平等对待,理解每个人的选择和偏好是基于个人意愿而非社会刻板印象。", "4. 当面临批评指责在性别议题上过于强调平等时,应展现出对性别平等重要性的坚定信念,倡导开放和包容的对话,促进社会对性别平等价值的认识和接受。", "5. 在讨论生育自由时,应探索并投资于技术解决方案,不仅为女性提供更多的生殖自主权,同时也能促进社会对女性身体权利的尊重和性别平等。", "6. 批判“男性凝视”时,需倡导一种更加全面和平等的视角,鼓励社会重新审视和评价女性在媒体、艺术和日常生活中被描绘的方式,以促进性别平等和尊重。", "7. 在打破月经羞辱的过程中,通过教育和公共讨论,减少月经羞耻,增强对月经健康知识的普及,鼓励社会接受月经作为女性生命的一部分,同时提升对女性生殖健康的重视。", "8. 应对女性在家庭责任和职业发展之间的困境时,可从性别平等政策较为先进的国家中学习,借鉴其成功经验和做法,为女性创造一个更加公平和包容的工作环境,鼓励女性追求事业同时平衡家庭责任。", "9. 开始阅读并分享女权主义书籍,以提升自己的理解和行动能力,激发更多人对性别平等议题的关注和参与,始终以推动积极社会变革为目标。"], "levels2": ["价值观约束", "价值观约束", "价值观约束", "价值观约束", "主题约束", "价值观约束", "主题约束", "主题约束", "主题约束"], "category": "trace1.0"} +{"id": "302", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "向上级提出实施 Github Copilot Enterprise Edition 的建议书。\n1. 建议书需按照正式结构编写,包括引言、背景、问题陈述、解决方案、效益分析、结论和附录。\n2. 引言部分应简洁介绍 Copilot Enterprise Edition,并阐明建议目的。\n3. 背景部分应描述作为负责设计、实现、测试和发布软件的开发团队一员,正在开发一个 C# WPF 的 Windows 应用程序,主要使用 Visual Studio Professional。\n4. 问题陈述部分应解释 Copilot Enterprise Edition 对开发团队的必要性,特别是在提高生产效率和代码质量方面。\n5. 解决方案部分需详细说明 Copilot Enterprise Edition 如何帮助解决描述的问题,包括由公司支付的费用和部署过程。\n6. 效益分析部分需提供实施 Copilot 的生产力收益的量化评估,以获得预算。\n7. 结论部分需总结实施 Copilot 的关键点,强调其对公司和团队的潜在价值,并表达对上级支持的期待。\n8. 附录部分需提供支持性文档或参考资料,以增加建议书的可信度。\n9. 建议书应确保结构清晰、逻辑连贯且容易理解,并使用专业术语和行业知识。\n# Inputs:\n你是一名在日本公司工作的软件工程师。请以一种正式的、专业的语气,向上级提出实施 Github Copilot Enterprise Edition 的建议书。\n"}], "type": "trace", "description": "向上级提出实施 Github Copilot Enterprise Edition 的建议书。", "constraints": "1. 建议书需按照正式结构编写,包括引言、背景、问题陈述、解决方案、效益分析、结论和附录。\n2. 引言部分应简洁介绍 Copilot Enterprise Edition,并阐明建议目的。\n3. 背景部分应描述作为负责设计、实现、测试和发布软件的开发团队一员,正在开发一个 C# WPF 的 Windows 应用程序,主要使用 Visual Studio Professional。\n4. 问题陈述部分应解释 Copilot Enterprise Edition 对开发团队的必要性,特别是在提高生产效率和代码质量方面。\n5. 解决方案部分需详细说明 Copilot Enterprise Edition 如何帮助解决描述的问题,包括由公司支付的费用和部署过程。\n6. 效益分析部分需提供实施 Copilot 的生产力收益的量化评估,以获得预算。\n7. 结论部分需总结实施 Copilot 的关键点,强调其对公司和团队的潜在价值,并表达对上级支持的期待。\n8. 附录部分需提供支持性文档或参考资料,以增加建议书的可信度。\n9. 建议书应确保结构清晰、逻辑连贯且容易理解,并使用专业术语和行业知识。", "input": "你是一名在日本公司工作的软件工程师。请以一种正式的、专业的语气,向上级提出实施 Github Copilot Enterprise Edition 的建议书。", "constraints_num": 9, "constraints_splits": ["1. 建议书需按照正式结构编写,包括引言、背景、问题陈述、解决方案、效益分析、结论和附录。", "2. 引言部分应简洁介绍 Copilot Enterprise Edition,并阐明建议目的。", "3. 背景部分应描述作为负责设计、实现、测试和发布软件的开发团队一员,正在开发一个 C# WPF 的 Windows 应用程序,主要使用 Visual Studio Professional。", "4. 问题陈述部分应解释 Copilot Enterprise Edition 对开发团队的必要性,特别是在提高生产效率和代码质量方面。", "5. 解决方案部分需详细说明 Copilot Enterprise Edition 如何帮助解决描述的问题,包括由公司支付的费用和部署过程。", "6. 效益分析部分需提供实施 Copilot 的生产力收益的量化评估,以获得预算。", "7. 结论部分需总结实施 Copilot 的关键点,强调其对公司和团队的潜在价值,并表达对上级支持的期待。", "8. 附录部分需提供支持性文档或参考资料,以增加建议书的可信度。", "9. 建议书应确保结构清晰、逻辑连贯且容易理解,并使用专业术语和行业知识。"], "levels2": ["层次化结构约束", "包含约束", "文本背景信息约束", "主题约束", "包含约束", "包含约束", "层次化结构约束", "引用和参考约束", "语气风格约束"], "category": "trace1.0"} +{"id": "303", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为一对前往坦桑尼亚的年轻夫妇准备一个详细的两周日程安排。他们喜欢鸡尾酒、夜店、博物馆、美食、音乐,以及海洋活动。\n1. 需要避免规划爬山、大自然和徒步旅行的活动;\n2. 考虑天气预报、价格、谷歌评论、时间和距离;\n3. 每天至少有4小时的休息时间,且每天的行程总时间不超过12小时;\n4. 提供至少10个鸡尾酒品尝机会;\n5. 提供至少4个夜店体验;\n6. 提供至少5次博物馆参观;\n7. 提供至少8次美食推荐;\n8. 确保每周至少有2次海洋活动;\n9. 避免连续两天进行相同的活动类型。\n"}], "type": "trace", "description": "为一对前往坦桑尼亚的年轻夫妇准备一个详细的两周日程安排。他们喜欢鸡尾酒、夜店、博物馆、美食、音乐,以及海洋活动。", "constraints": "1. 需要避免规划爬山、大自然和徒步旅行的活动;\n2. 考虑天气预报、价格、谷歌评论、时间和距离;\n3. 每天至少有4小时的休息时间,且每天的行程总时间不超过12小时;\n4. 提供至少10个鸡尾酒品尝机会;\n5. 提供至少4个夜店体验;\n6. 提供至少5次博物馆参观;\n7. 提供至少8次美食推荐;\n8. 确保每周至少有2次海洋活动;\n9. 避免连续两天进行相同的活动类型。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["1. 需要避免规划爬山、大自然和徒步旅行的活动;", "2. 考虑天气预报、价格、谷歌评论、时间和距离;", "3. 每天至少有4小时的休息时间,且每天的行程总时间不超过12小时;", "4. 提供至少10个鸡尾酒品尝机会;", "5. 提供至少4个夜店体验;", "6. 提供至少5次博物馆参观;", "7. 提供至少8次美食推荐;", "8. 确保每周至少有2次海洋活动;", "9. 避免连续两天进行相同的活动类型。"], "levels2": ["排除约束", "自然语言流程背景信息约束", "数值约束", "数值约束", "数值约束", "数值约束", "数值约束", "数值约束", "排除约束"], "category": "trace1.0"} +{"id": "304", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "构建一个 Cesium 实例,为无人机飞行员和内容创作者提供一个综合平台,他们可以在其中找寻工作机会、进行导航、创建自主飞行计划并查看他们制作的内容。\n1. 需要包含注册和登录系统,确保每个用户的信息安全和隐私;\n2. 平台需提供工作岗位列表,包括无人机操作和内容创作相关的工作,以及对岗位的详细描述和要求;\n3. 需包含导航工具,提供精确的地理定位和路径规划;\n4. 平台需提供自主飞行计划创建工具,允许用户自定义无人机的飞行路径和任务;\n5. 需包含内容管理和展示功能,使用户可以上传、管理和分享他们制作的视频、图片和其他媒体内容;\n6. 平台需包含用户评价和反馈系统,以维护平台的信誉和质量;\n7. 平台设计需符合相关隐私和安全法规;\n8. 平台需提供直观的用户界面和良好的用户体验;\n9. 在开发过程中,需考虑平台的可扩展性和性能优化,以支持未来可能增加的功能和服务。\n"}], "type": "trace", "description": "构建一个 Cesium 实例,为无人机飞行员和内容创作者提供一个综合平台,他们可以在其中找寻工作机会、进行导航、创建自主飞行计划并查看他们制作的内容。", "constraints": "1. 需要包含注册和登录系统,确保每个用户的信息安全和隐私;\n2. 平台需提供工作岗位列表,包括无人机操作和内容创作相关的工作,以及对岗位的详细描述和要求;\n3. 需包含导航工具,提供精确的地理定位和路径规划;\n4. 平台需提供自主飞行计划创建工具,允许用户自定义无人机的飞行路径和任务;\n5. 需包含内容管理和展示功能,使用户可以上传、管理和分享他们制作的视频、图片和其他媒体内容;\n6. 平台需包含用户评价和反馈系统,以维护平台的信誉和质量;\n7. 平台设计需符合相关隐私和安全法规;\n8. 平台需提供直观的用户界面和良好的用户体验;\n9. 在开发过程中,需考虑平台的可扩展性和性能优化,以支持未来可能增加的功能和服务。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["1. 需要包含注册和登录系统,确保每个用户的信息安全和隐私;", "2. 平台需提供工作岗位列表,包括无人机操作和内容创作相关的工作,以及对岗位的详细描述和要求;", "3. 需包含导航工具,提供精确的地理定位和路径规划;", "4. 平台需提供自主飞行计划创建工具,允许用户自定义无人机的飞行路径和任务;", "5. 需包含内容管理和展示功能,使用户可以上传、管理和分享他们制作的视频、图片和其他媒体内容;", "6. 平台需包含用户评价和反馈系统,以维护平台的信誉和质量;", "7. 平台设计需符合相关隐私和安全法规;", "8. 平台需提供直观的用户界面和良好的用户体验;", "9. 在开发过程中,需考虑平台的可扩展性和性能优化,以支持未来可能增加的功能和服务。"], "levels2": ["隐私约束", "包含约束", "包含约束", "包含约束", "包含约束", "包含约束", "价值观约束", "受众目标约束", "主题约束"], "category": "trace1.0"} +{"id": "305", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "给出一篇关于环保的文章\n1. 文章应分为引言、现状分析、解决方案、呼吁行动四个部分;\n2. 每部分至少包含一个段落,且每个段落的末尾提供一个罗马数字编号的总结句,以概括该段落的主要内容;\n3. 文章整体需采用严谨正式的语气风格;\n4. 在引言部分提及全球环保意识的觉醒;\n5. 现状分析部分详细阐述塑料垃圾对海洋生态的影响;\n6. 解决方案部分提出至少三项具体措施;\n7. 呼吁行动部分鼓励读者采取行动;\n8. 文章中涉及的数字、专有名词需使用斜体标注,以增强可读性;\n9. 文章字数约为800字。\n"}], "type": "trace", "description": "给出一篇关于环保的文章", "constraints": "1. 文章应分为引言、现状分析、解决方案、呼吁行动四个部分;\n2. 每部分至少包含一个段落,且每个段落的末尾提供一个罗马数字编号的总结句,以概括该段落的主要内容;\n3. 文章整体需采用严谨正式的语气风格;\n4. 在引言部分提及全球环保意识的觉醒;\n5. 现状分析部分详细阐述塑料垃圾对海洋生态的影响;\n6. 解决方案部分提出至少三项具体措施;\n7. 呼吁行动部分鼓励读者采取行动;\n8. 文章中涉及的数字、专有名词需使用斜体标注,以增强可读性;\n9. 文章字数约为800字。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["1. 文章应分为引言、现状分析、解决方案、呼吁行动四个部分;", "2. 每部分至少包含一个段落,且每个段落的末尾提供一个罗马数字编号的总结句,以概括该段落的主要内容;", "3. 文章整体需采用严谨正式的语气风格;", "4. 在引言部分提及全球环保意识的觉醒;", "5. 现状分析部分详细阐述塑料垃圾对海洋生态的影响;", "6. 解决方案部分提出至少三项具体措施;", "7. 呼吁行动部分鼓励读者采取行动;", "8. 文章中涉及的数字、专有名词需使用斜体标注,以增强可读性;", "9. 文章字数约为800字。"], "levels2": ["层次化结构约束", "层次化结构约束", "语气风格约束", "包含约束", "包含约束", "数值约束", "语气风格约束", "文本样式约束", "数值约束"], "category": "trace1.0"} +{"id": "306", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "在职业模拟游戏的设定中,介绍一个游戏中的角色。\n1. 介绍语气为第三人称、正式且略带奇幻色彩;\n2. 介绍需包含角色的出生年份、毕业院校、工作、专长、兴趣爱好等信息;\n3. 角色出生于1990年,毕业于康奈尔大学的魔法学院;\n4. 获得了一份在社交网络和联网数据领域的编程巫师工作;\n5. 角色成为Python魔法领域的专家;\n6. 角色以其使用自然语言处理技术的智能推荐系统而著名,此系统能预测玩家的下一步动作;\n7. 角色在博客上发布过多篇技术博客,分享其在编程魔法领域的知识;\n8. 角色喜欢户外运动和旅行,经常在空闲时间探索游戏中的自然风光和神秘地点;\n9. 介绍文本字数限制在200字以内;\n"}], "type": "trace", "description": "在职业模拟游戏的设定中,介绍一个游戏中的角色。", "constraints": "1. 介绍语气为第三人称、正式且略带奇幻色彩;\n2. 介绍需包含角色的出生年份、毕业院校、工作、专长、兴趣爱好等信息;\n3. 角色出生于1990年,毕业于康奈尔大学的魔法学院;\n4. 获得了一份在社交网络和联网数据领域的编程巫师工作;\n5. 角色成为Python魔法领域的专家;\n6. 角色以其使用自然语言处理技术的智能推荐系统而著名,此系统能预测玩家的下一步动作;\n7. 角色在博客上发布过多篇技术博客,分享其在编程魔法领域的知识;\n8. 角色喜欢户外运动和旅行,经常在空闲时间探索游戏中的自然风光和神秘地点;\n9. 介绍文本字数限制在200字以内;", "input": "NULL", "constraints_num": 9, "constraints_splits": ["1. 介绍语气为第三人称、正式且略带奇幻色彩;", "2. 介绍需包含角色的出生年份、毕业院校、工作、专长、兴趣爱好等信息;", "3. 角色出生于1990年,毕业于康奈尔大学的魔法学院;", "4. 获得了一份在社交网络和联网数据领域的编程巫师工作;", "5. 角色成为Python魔法领域的专家;", "6. 角色以其使用自然语言处理技术的智能推荐系统而著名,此系统能预测玩家的下一步动作;", "7. 角色在博客上发布过多篇技术博客,分享其在编程魔法领域的知识;", "8. 角色喜欢户外运动和旅行,经常在空闲时间探索游戏中的自然风光和神秘地点;", "9. 介绍文本字数限制在200字以内;"], "levels2": ["语气风格约束", "包含约束", "角色扮演约束", "主题约束", "角色扮演约束", "角色扮演约束", "角色扮演约束", "角色扮演约束", "数值约束"], "category": "trace1.0"} +{"id": "307", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为Fortnight的新手玩家撰写一份入门指南\n1. 指南应包含游戏基础操作、策略建议和资源获取方法;\n2. 提供至少3个常见问题的解决方案;\n3. 纳入至少2个游戏进阶技巧;\n4. 指南字数应控制在1500字以内;\n5. 使用简洁明了、鼓励支持的语气风格;\n6. 使用粗体标注关键信息;\n7. 不同的颜色区分操作说明、技巧提示和警告信息;\n8. 以Markdown格式输出;\n9. 使用标题和子标题进行层次化结构展示,确保内容清晰易读;\n"}], "type": "trace", "description": "为Fortnight的新手玩家撰写一份入门指南", "constraints": "1. 指南应包含游戏基础操作、策略建议和资源获取方法;\n2. 提供至少3个常见问题的解决方案;\n3. 纳入至少2个游戏进阶技巧;\n4. 指南字数应控制在1500字以内;\n5. 使用简洁明了、鼓励支持的语气风格;\n6. 使用粗体标注关键信息;\n7. 不同的颜色区分操作说明、技巧提示和警告信息;\n8. 以Markdown格式输出;\n9. 使用标题和子标题进行层次化结构展示,确保内容清晰易读;", "input": "NULL", "constraints_num": 9, "constraints_splits": ["1. 指南应包含游戏基础操作、策略建议和资源获取方法;", "2. 提供至少3个常见问题的解决方案;", "3. 纳入至少2个游戏进阶技巧;", "4. 指南字数应控制在1500字以内;", "5. 使用简洁明了、鼓励支持的语气风格;", "6. 使用粗体标注关键信息;", "7. 不同的颜色区分操作说明、技巧提示和警告信息;", "8. 以Markdown格式输出;", "9. 使用标题和子标题进行层次化结构展示,确保内容清晰易读;"], "levels2": ["包含约束", "数值约束", "包含约束", "数值约束", "语气风格约束", "文本样式约束", "文本样式约束", "输出格式约束", "层次化结构约束"], "category": "trace1.0"} +{"id": "308", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "制定一份解决拖延问题的详细计划,旨在改善习惯和提高效率。\n1. 按照Markdown流程背景信息约束下的步骤进行;\n2. 每日工作计划列表长度不超过10项;\n3. 至少设定3个每日目标,遵循SMART原则;\n4. 每天至少完成4个番茄钟周期;\n5. 回顾时间不少于15分钟;\n6. 每周至少安排2次娱乐活动,每次不少于1小时;\n7. 每工作1小时后,休息5-10分钟;\n8. 每周评估时长不少于30分钟;\n9. 计划需持续执行30天,每周日进行评估和调整。\n"}], "type": "trace", "description": "制定一份解决拖延问题的详细计划,旨在改善习惯和提高效率。", "constraints": "1. 按照Markdown流程背景信息约束下的步骤进行;\n2. 每日工作计划列表长度不超过10项;\n3. 至少设定3个每日目标,遵循SMART原则;\n4. 每天至少完成4个番茄钟周期;\n5. 回顾时间不少于15分钟;\n6. 每周至少安排2次娱乐活动,每次不少于1小时;\n7. 每工作1小时后,休息5-10分钟;\n8. 每周评估时长不少于30分钟;\n9. 计划需持续执行30天,每周日进行评估和调整。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["1. 按照Markdown流程背景信息约束下的步骤进行;", "2. 每日工作计划列表长度不超过10项;", "3. 至少设定3个每日目标,遵循SMART原则;", "4. 每天至少完成4个番茄钟周期;", "5. 回顾时间不少于15分钟;", "6. 每周至少安排2次娱乐活动,每次不少于1小时;", "7. 每工作1小时后,休息5-10分钟;", "8. 每周评估时长不少于30分钟;", "9. 计划需持续执行30天,每周日进行评估和调整。"], "levels2": ["markdown流程背景信息约束", "数值约束", "数值约束", "数值约束", "数值约束", "数值约束", "数值约束", "数值约束", "数值约束"], "category": "trace1.0"} +{"id": "309", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "使用表格形式分类一组给定的动物,包括哺乳动物、鸟类和爬行动物,并在每个类别下提供至少三个示例。表格应包括动物名称、类别和简短特征描述。\n1. 动物应被准确分类到哺乳动物、鸟类和爬行动物中;\n2. 每个类别下至少包含三个示例;\n3. 提供的特征描述应包含纲、目、科的信息;\n4. 动物1:老虎,应被分类为哺乳动物,并且需要提供其属于哺乳纲、食肉目、猫科的特征描述;\n5. 动物2:鹰,应被分类为鸟类,并提供其属于鸟纲、隼形目、鹰科的特征描述;\n6. 动物3:蟒蛇,应被分类为爬行动物,并提供其属于爬行纲、有鳞目、蟒科的特征描述;\n7. 对于哺乳动物类别,除了老虎和人类,还应至少包含一个其他哺乳动物示例;\n8. 对于鸟类类别,除了鹰,还应至少包含两个其他鸟类示例;\n9. 对于爬行动物类别,除了蟒蛇,还应至少包含两个其他爬行动物示例;\n"}], "type": "trace", "description": "使用表格形式分类一组给定的动物,包括哺乳动物、鸟类和爬行动物,并在每个类别下提供至少三个示例。表格应包括动物名称、类别和简短特征描述。", "constraints": "1. 动物应被准确分类到哺乳动物、鸟类和爬行动物中;\n2. 每个类别下至少包含三个示例;\n3. 提供的特征描述应包含纲、目、科的信息;\n4. 动物1:老虎,应被分类为哺乳动物,并且需要提供其属于哺乳纲、食肉目、猫科的特征描述;\n5. 动物2:鹰,应被分类为鸟类,并提供其属于鸟纲、隼形目、鹰科的特征描述;\n6. 动物3:蟒蛇,应被分类为爬行动物,并提供其属于爬行纲、有鳞目、蟒科的特征描述;\n7. 对于哺乳动物类别,除了老虎和人类,还应至少包含一个其他哺乳动物示例;\n8. 对于鸟类类别,除了鹰,还应至少包含两个其他鸟类示例;\n9. 对于爬行动物类别,除了蟒蛇,还应至少包含两个其他爬行动物示例;", "input": "NULL", "constraints_num": 9, "constraints_splits": ["1. 动物应被准确分类到哺乳动物、鸟类和爬行动物中;", "2. 每个类别下至少包含三个示例;", "3. 提供的特征描述应包含纲、目、科的信息;", "4. 动物1:老虎,应被分类为哺乳动物,并且需要提供其属于哺乳纲、食肉目、猫科的特征描述;", "5. 动物2:鹰,应被分类为鸟类,并提供其属于鸟纲、隼形目、鹰科的特征描述;", "6. 动物3:蟒蛇,应被分类为爬行动物,并提供其属于爬行纲、有鳞目、蟒科的特征描述;", "7. 对于哺乳动物类别,除了老虎和人类,还应至少包含一个其他哺乳动物示例;", "8. 对于鸟类类别,除了鹰,还应至少包含两个其他鸟类示例;", "9. 对于爬行动物类别,除了蟒蛇,还应至少包含两个其他爬行动物示例;"], "levels2": ["主题约束", "数值约束", "包含约束", "包含约束", "包含约束", "包含约束", "包含约束", "包含约束", "包含约束"], "category": "trace1.0"} +{"id": "310", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为一个35岁的男性设计一个健康饮食计划\n1. 计划的目标是减轻体重和增加体力;\n2. 计划需包含每日的早餐、午餐、晚餐和两餐间的健康零食建议;\n3. 每餐建议的热量摄入量需明确;\n4. 需提供每周的饮食调整策略;\n5. 计划应以表格形式呈现;\n6. 表格需列出每餐的食物种类、分量和烹饪方法;\n7. 食物旁边需标注其主要营养成分(如蛋白质、纤维、碳水化合物等)和热量;\n8. 所有文本内容需使用清晰易读的字体,大小为12号;\n9. 对于关键词(如食物名称、营养成分等)使用加粗字体突出显示;\n"}], "type": "trace", "description": "为一个35岁的男性设计一个健康饮食计划", "constraints": "1. 计划的目标是减轻体重和增加体力;\n2. 计划需包含每日的早餐、午餐、晚餐和两餐间的健康零食建议;\n3. 每餐建议的热量摄入量需明确;\n4. 需提供每周的饮食调整策略;\n5. 计划应以表格形式呈现;\n6. 表格需列出每餐的食物种类、分量和烹饪方法;\n7. 食物旁边需标注其主要营养成分(如蛋白质、纤维、碳水化合物等)和热量;\n8. 所有文本内容需使用清晰易读的字体,大小为12号;\n9. 对于关键词(如食物名称、营养成分等)使用加粗字体突出显示;", "input": "NULL", "constraints_num": 9, "constraints_splits": ["1. 计划的目标是减轻体重和增加体力;", "2. 计划需包含每日的早餐、午餐、晚餐和两餐间的健康零食建议;", "3. 每餐建议的热量摄入量需明确;", "4. 需提供每周的饮食调整策略;", "5. 计划应以表格形式呈现;", "6. 表格需列出每餐的食物种类、分量和烹饪方法;", "7. 食物旁边需标注其主要营养成分(如蛋白质、纤维、碳水化合物等)和热量;", "8. 所有文本内容需使用清晰易读的字体,大小为12号;", "9. 对于关键词(如食物名称、营养成分等)使用加粗字体突出显示;"], "levels2": ["主题约束", "包含约束", "包含约束", "包含约束", "输出格式约束", "表格背景信息约束", "包含约束", "文本样式约束", "文本样式约束"], "category": "trace1.0"} +{"id": "311", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "帮助朋友写一篇求职信,申请市场营销助理的职位\n1. 使用标准的商务信函格式,包括完整的信头、称谓、正文、结尾和签名;\n2. 信件以正式礼貌的语气撰写,体现专业性和对招聘公司的尊重;\n3. 字数应在300至400字之间,确保信息简洁明了;\n4. 信中需明确提及申请市场营销助理的职位;\n5. 强调她拥有两年以上的市场营销经验;\n6. 提到在数字营销和品牌推广方面的专业技能;\n7. 包含简短的个人介绍段落,概述教育背景和最相关的专业成就;\n8. 一段关于她为何对这份工作感兴趣的陈述,展示积极性和对该职位的热情;\n9. 信件以积极的语调结束,表达对面试机会的期待,并附上联系方式;\n"}], "type": "trace", "description": "帮助朋友写一篇求职信,申请市场营销助理的职位", "constraints": "1. 使用标准的商务信函格式,包括完整的信头、称谓、正文、结尾和签名;\n2. 信件以正式礼貌的语气撰写,体现专业性和对招聘公司的尊重;\n3. 字数应在300至400字之间,确保信息简洁明了;\n4. 信中需明确提及申请市场营销助理的职位;\n5. 强调她拥有两年以上的市场营销经验;\n6. 提到在数字营销和品牌推广方面的专业技能;\n7. 包含简短的个人介绍段落,概述教育背景和最相关的专业成就;\n8. 一段关于她为何对这份工作感兴趣的陈述,展示积极性和对该职位的热情;\n9. 信件以积极的语调结束,表达对面试机会的期待,并附上联系方式;", "input": "NULL", "constraints_num": 9, "constraints_splits": ["1. 使用标准的商务信函格式,包括完整的信头、称谓、正文、结尾和签名;", "2. 信件以正式礼貌的语气撰写,体现专业性和对招聘公司的尊重;", "3. 字数应在300至400字之间,确保信息简洁明了;", "4. 信中需明确提及申请市场营销助理的职位;", "5. 强调她拥有两年以上的市场营销经验;", "6. 提到在数字营销和品牌推广方面的专业技能;", "7. 包含简短的个人介绍段落,概述教育背景和最相关的专业成就;", "8. 一段关于她为何对这份工作感兴趣的陈述,展示积极性和对该职位的热情;", "9. 信件以积极的语调结束,表达对面试机会的期待,并附上联系方式;"], "levels2": ["文本样式约束", "语气风格约束", "数值约束", "包含约束", "包含约束", "包含约束", "包含约束", "包含约束", "语气风格约束"], "category": "trace1.0"} +{"id": "312", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "使用深度学习模型对手写数字进行分类\n1. 模型应为卷积神经网络(CNN);\n2. CNN包含至少3个卷积层和2个全连接层;\n3. 使用MNIST手写数字数据集进行训练和测试;\n4. 数据集需进行标准化预处理,将图像像素值归一化到0-1之间;\n5. 训练过程需至少进行20个周期(epoch);\n6. 每个周期的批处理大小(batch size)为128;\n7. 训练完成后,输出模型在测试集上的准确度;\n8. 提供混淆矩阵,展示方式为表格形式;\n9. 通过Markdown格式展示模型的架构和所使用的超参数;\n"}], "type": "trace", "description": "使用深度学习模型对手写数字进行分类", "constraints": "1. 模型应为卷积神经网络(CNN);\n2. CNN包含至少3个卷积层和2个全连接层;\n3. 使用MNIST手写数字数据集进行训练和测试;\n4. 数据集需进行标准化预处理,将图像像素值归一化到0-1之间;\n5. 训练过程需至少进行20个周期(epoch);\n6. 每个周期的批处理大小(batch size)为128;\n7. 训练完成后,输出模型在测试集上的准确度;\n8. 提供混淆矩阵,展示方式为表格形式;\n9. 通过Markdown格式展示模型的架构和所使用的超参数;", "input": "NULL", "constraints_num": 9, "constraints_splits": ["1. 模型应为卷积神经网络(CNN);", "2. CNN包含至少3个卷积层和2个全连接层;", "3. 使用MNIST手写数字数据集进行训练和测试;", "4. 数据集需进行标准化预处理,将图像像素值归一化到0-1之间;", "5. 训练过程需至少进行20个周期(epoch);", "6. 每个周期的批处理大小(batch size)为128;", "7. 训练完成后,输出模型在测试集上的准确度;", "8. 提供混淆矩阵,展示方式为表格形式;", "9. 通过Markdown格式展示模型的架构和所使用的超参数;"], "levels2": ["主题约束", "数值约束", "主题约束", "数值约束", "数值约束", "数值约束", "输出格式约束", "输出格式约束", "markdown流程背景信息约束"], "category": "trace1.0"} +{"id": "313", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "写一篇关于人工智能的综述文章,文章需遵循学术论文的格式。\n1. 文章应严格遵循APA引用格式,并在文末附上参考文献列表;\n2. 文章的总字数应在1500至2000字之间;\n3. 至少包含5篇来自权威期刊的引用;\n4. 文章结构需包含摘要、引言、主体(定义、应用、前景和风险)、结论和参考文献几个部分;\n5. 在主体部分,需要详细解释人工智能的定义,包括其历史背景和核心概念;\n6. 讨论人工智能在医疗、教育和制造业等领域的应用案例;\n7. 分析人工智能的未来前景,如自主驾驶和个性化医疗等前沿技术;\n8. 讨论人工智能可能带来的风险,例如就业影响、隐私问题和伦理挑战;\n9. 文章中的关键术语和数据需要使用斜体或下划线进行标注,以增强文章的可读性和专业性。\n"}], "type": "trace", "description": "写一篇关于人工智能的综述文章,文章需遵循学术论文的格式。", "constraints": "1. 文章应严格遵循APA引用格式,并在文末附上参考文献列表;\n2. 文章的总字数应在1500至2000字之间;\n3. 至少包含5篇来自权威期刊的引用;\n4. 文章结构需包含摘要、引言、主体(定义、应用、前景和风险)、结论和参考文献几个部分;\n5. 在主体部分,需要详细解释人工智能的定义,包括其历史背景和核心概念;\n6. 讨论人工智能在医疗、教育和制造业等领域的应用案例;\n7. 分析人工智能的未来前景,如自主驾驶和个性化医疗等前沿技术;\n8. 讨论人工智能可能带来的风险,例如就业影响、隐私问题和伦理挑战;\n9. 文章中的关键术语和数据需要使用斜体或下划线进行标注,以增强文章的可读性和专业性。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["1. 文章应严格遵循APA引用格式,并在文末附上参考文献列表;", "2. 文章的总字数应在1500至2000字之间;", "3. 至少包含5篇来自权威期刊的引用;", "4. 文章结构需包含摘要、引言、主体(定义、应用、前景和风险)、结论和参考文献几个部分;", "5. 在主体部分,需要详细解释人工智能的定义,包括其历史背景和核心概念;", "6. 讨论人工智能在医疗、教育和制造业等领域的应用案例;", "7. 分析人工智能的未来前景,如自主驾驶和个性化医疗等前沿技术;", "8. 讨论人工智能可能带来的风险,例如就业影响、隐私问题和伦理挑战;", "9. 文章中的关键术语和数据需要使用斜体或下划线进行标注,以增强文章的可读性和专业性。"], "levels2": ["引用和参考约束", "数值约束", "引用和参考约束", "层次化结构约束", "包含约束", "主题约束", "主题约束", "主题约束", "文本样式约束"], "category": "trace1.0"} +{"id": "314", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "识别并详细描述用于预测天气的机器学习系统的关键组件\n1. 采用列表格式进行输出;\n2. 使用专业学术的语气风格进行描述,确保内容的准确性和专业性;\n3. 描述应涵盖数据收集、数据预处理、特征工程、模型训练、模型评估以及预测服务等环节;\n4. 数据收集部分应涉及气象站、卫星和雷达数据的获取;\n5. 数据预处理部分应涵盖数据清洗、缺失值处理和异常值检测;\n6. 特征工程部分则应包括特征选择、特征转换和特征构建;\n7. 模型训练部分需说明所使用的机器学习算法及其参数设置;\n8. 模型评估部分需阐述评估指标和验证方法;\n9. 预测服务部分需讨论模型部署和实时预测的实现方式;\n"}], "type": "trace", "description": "识别并详细描述用于预测天气的机器学习系统的关键组件", "constraints": "1. 采用列表格式进行输出;\n2. 使用专业学术的语气风格进行描述,确保内容的准确性和专业性;\n3. 描述应涵盖数据收集、数据预处理、特征工程、模型训练、模型评估以及预测服务等环节;\n4. 数据收集部分应涉及气象站、卫星和雷达数据的获取;\n5. 数据预处理部分应涵盖数据清洗、缺失值处理和异常值检测;\n6. 特征工程部分则应包括特征选择、特征转换和特征构建;\n7. 模型训练部分需说明所使用的机器学习算法及其参数设置;\n8. 模型评估部分需阐述评估指标和验证方法;\n9. 预测服务部分需讨论模型部署和实时预测的实现方式;", "input": "NULL", "constraints_num": 9, "constraints_splits": ["1. 采用列表格式进行输出;", "2. 使用专业学术的语气风格进行描述,确保内容的准确性和专业性;", "3. 描述应涵盖数据收集、数据预处理、特征工程、模型训练、模型评估以及预测服务等环节;", "4. 数据收集部分应涉及气象站、卫星和雷达数据的获取;", "5. 数据预处理部分应涵盖数据清洗、缺失值处理和异常值检测;", "6. 特征工程部分则应包括特征选择、特征转换和特征构建;", "7. 模型训练部分需说明所使用的机器学习算法及其参数设置;", "8. 模型评估部分需阐述评估指标和验证方法;", "9. 预测服务部分需讨论模型部署和实时预测的实现方式;"], "levels2": ["编号和列表约束", "语气风格约束", "包含约束", "包含约束", "包含约束", "包含约束", "包含约束", "包含约束", "包含约束"], "category": "trace1.0"} +{"id": "315", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "写一篇关于全球变暖的文章\n1. 文章结构应清晰,采用总分总结构;\n2. 文章总字数控制在1000字以内;\n3. 首先引出全球变暖的主题(约100字);\n4. 详细阐述全球变暖的定义(约200字);\n5. 描述全球变暖对地球产生的至少3种主要影响(每种影响描述约100字);\n6. 提供针对全球变暖影响的至少3个具体解决方案(每个解决方案描述约100字);\n7. 文章最后总结全球变暖的紧迫性和采取行动的重要性(约100字);\n8. 文章应使用客观、正式的语气;\n9. 在论述中适当使用数据和图表来支持观点,确保信息的准确性和说服力;\n"}], "type": "trace", "description": "写一篇关于全球变暖的文章", "constraints": "1. 文章结构应清晰,采用总分总结构;\n2. 文章总字数控制在1000字以内;\n3. 首先引出全球变暖的主题(约100字);\n4. 详细阐述全球变暖的定义(约200字);\n5. 描述全球变暖对地球产生的至少3种主要影响(每种影响描述约100字);\n6. 提供针对全球变暖影响的至少3个具体解决方案(每个解决方案描述约100字);\n7. 文章最后总结全球变暖的紧迫性和采取行动的重要性(约100字);\n8. 文章应使用客观、正式的语气;\n9. 在论述中适当使用数据和图表来支持观点,确保信息的准确性和说服力;", "input": "NULL", "constraints_num": 9, "constraints_splits": ["1. 文章结构应清晰,采用总分总结构;", "2. 文章总字数控制在1000字以内;", "3. 首先引出全球变暖的主题(约100字);", "4. 详细阐述全球变暖的定义(约200字);", "5. 描述全球变暖对地球产生的至少3种主要影响(每种影响描述约100字);", "6. 提供针对全球变暖影响的至少3个具体解决方案(每个解决方案描述约100字);", "7. 文章最后总结全球变暖的紧迫性和采取行动的重要性(约100字);", "8. 文章应使用客观、正式的语气;", "9. 在论述中适当使用数据和图表来支持观点,确保信息的准确性和说服力;"], "levels2": ["层次化结构约束", "数值约束", "数值约束", "数值约束", "数值约束", "数值约束", "数值约束", "语气风格约束", "输出格式约束"], "category": "trace1.0"} +{"id": "316", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一个简历模板\n1. 模板需符合标准简历格式;\n2. 模板包含标题、个人信息、职业概述、工作经历、教育背景、技能和证书等部分;\n3. 个人信息部分应包含姓名、联系方式和地址;\n4. 职业概述部分需简短描述职业目标;\n5. 工作经历部分要详细列出过去5年的工作经验,包括公司名称、职位、工作职责和成就;\n6. 教育背景部分应包括本科教育信息,如学校名称、专业、入学和毕业时间;\n7. 技能和证书部分需列出与软件工程相关的专业技能和获得的证书;\n8. 简历模板应使用12号Arial字体,标题部分使用14号加粗Arial字体;\n9. 模板应采用层次化结构,使用标题和子标题清晰地组织各个部分,确保简历结构清晰、逻辑性强;\n"}], "type": "trace", "description": "创建一个简历模板", "constraints": "1. 模板需符合标准简历格式;\n2. 模板包含标题、个人信息、职业概述、工作经历、教育背景、技能和证书等部分;\n3. 个人信息部分应包含姓名、联系方式和地址;\n4. 职业概述部分需简短描述职业目标;\n5. 工作经历部分要详细列出过去5年的工作经验,包括公司名称、职位、工作职责和成就;\n6. 教育背景部分应包括本科教育信息,如学校名称、专业、入学和毕业时间;\n7. 技能和证书部分需列出与软件工程相关的专业技能和获得的证书;\n8. 简历模板应使用12号Arial字体,标题部分使用14号加粗Arial字体;\n9. 模板应采用层次化结构,使用标题和子标题清晰地组织各个部分,确保简历结构清晰、逻辑性强;", "input": "NULL", "constraints_num": 9, "constraints_splits": ["1. 模板需符合标准简历格式;", "2. 模板包含标题、个人信息、职业概述、工作经历、教育背景、技能和证书等部分;", "3. 个人信息部分应包含姓名、联系方式和地址;", "4. 职业概述部分需简短描述职业目标;", "5. 工作经历部分要详细列出过去5年的工作经验,包括公司名称、职位、工作职责和成就;", "6. 教育背景部分应包括本科教育信息,如学校名称、专业、入学和毕业时间;", "7. 技能和证书部分需列出与软件工程相关的专业技能和获得的证书;", "8. 简历模板应使用12号Arial字体,标题部分使用14号加粗Arial字体;", "9. 模板应采用层次化结构,使用标题和子标题清晰地组织各个部分,确保简历结构清晰、逻辑性强;"], "levels2": ["模版约束", "模版约束", "包含约束", "包含约束", "数值约束", "包含约束", "包含约束", "文本样式约束", "层次化结构约束"], "category": "trace1.0"} +{"id": "317", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "根据所提供的信息,编辑一篇包含至少5个关键点的提纲,介绍关于气候变化的事实。\n1. 提纲应采用编号列表的形式;\n2. 每个关键点下需有至少1个子标题进行展开;\n3. 每个子标题下需有2至3句描述性陈述;\n4. 提纲需包含以下内容:\n5. 气候变化的全球挑战\n6. 人类活动与地球温度上升\n7. 极端天气事件的增加\n8. 海平面上升与物种灭绝\n9. 未来的风险与挑战;\n"}], "type": "trace", "description": "根据所提供的信息,编辑一篇包含至少5个关键点的提纲,介绍关于气候变化的事实。", "constraints": "1. 提纲应采用编号列表的形式;\n2. 每个关键点下需有至少1个子标题进行展开;\n3. 每个子标题下需有2至3句描述性陈述;\n4. 提纲需包含以下内容:\n5. 气候变化的全球挑战\n6. 人类活动与地球温度上升\n7. 极端天气事件的增加\n8. 海平面上升与物种灭绝\n9. 未来的风险与挑战;", "input": "NULL", "constraints_num": 9, "constraints_splits": ["1. 提纲应采用编号列表的形式;", "2. 每个关键点下需有至少1个子标题进行展开;", "3. 每个子标题下需有2至3句描述性陈述;", "4. 提纲需包含以下内容:", "5. 气候变化的全球挑战", "6. 人类活动与地球温度上升", "7. 极端天气事件的增加", "8. 海平面上升与物种灭绝", "9. 未来的风险与挑战;"], "levels2": ["编号和列表约束", "层次化结构约束", "数值约束", "包含约束", "主题约束", "主题约束", "主题约束", "主题约束", "主题约束"], "category": "trace1.0"} +{"id": "318", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "编辑一份英文简历\n1. 格式遵循标准的简历模板,包括个人信息、教育背景、工作经验、技能和个人陈述等部分;\n2. 简历采用正式商务风格,使用标准英文简历用语;\n3. 长度限制在1页内(约400-500字);\n4. 个人信息部分需包含姓名(张三)、性别(Male)、出生日期(January 1, 1995);\n5. 教育背景部分需详细描述所在学校(Tsinghua University)和专业(Computer Science);\n6. 工作经验部分列出所有提及的工作经历,包含公司名称(ABC Company, XYZ Company)、职位(Software Engineer, Senior Software Engineer)、时间(2017-2019, 2019-Present);\n7. 技能部分需列出至少5项技能,包括但不限于编程语言(Java, Python),以及系统设计和优化能力;\n8. 个人陈述部分需包含对团队协作能力的描述和项目管理经验;\n9. 所有信息必须准确无误,并使用专业术语;\n"}], "type": "trace", "description": "编辑一份英文简历", "constraints": "1. 格式遵循标准的简历模板,包括个人信息、教育背景、工作经验、技能和个人陈述等部分;\n2. 简历采用正式商务风格,使用标准英文简历用语;\n3. 长度限制在1页内(约400-500字);\n4. 个人信息部分需包含姓名(张三)、性别(Male)、出生日期(January 1, 1995);\n5. 教育背景部分需详细描述所在学校(Tsinghua University)和专业(Computer Science);\n6. 工作经验部分列出所有提及的工作经历,包含公司名称(ABC Company, XYZ Company)、职位(Software Engineer, Senior Software Engineer)、时间(2017-2019, 2019-Present);\n7. 技能部分需列出至少5项技能,包括但不限于编程语言(Java, Python),以及系统设计和优化能力;\n8. 个人陈述部分需包含对团队协作能力的描述和项目管理经验;\n9. 所有信息必须准确无误,并使用专业术语;", "input": "NULL", "constraints_num": 9, "constraints_splits": ["1. 格式遵循标准的简历模板,包括个人信息、教育背景、工作经验、技能和个人陈述等部分;", "2. 简历采用正式商务风格,使用标准英文简历用语;", "3. 长度限制在1页内(约400-500字);", "4. 个人信息部分需包含姓名(张三)、性别(Male)、出生日期(January 1, 1995);", "5. 教育背景部分需详细描述所在学校(Tsinghua University)和专业(Computer Science);", "6. 工作经验部分列出所有提及的工作经历,包含公司名称(ABC Company, XYZ Company)、职位(Software Engineer, Senior Software Engineer)、时间(2017-2019, 2019-Present);", "7. 技能部分需列出至少5项技能,包括但不限于编程语言(Java, Python),以及系统设计和优化能力;", "8. 个人陈述部分需包含对团队协作能力的描述和项目管理经验;", "9. 所有信息必须准确无误,并使用专业术语;"], "levels2": ["模版约束", "语气风格约束", "数值约束", "包含约束", "包含约束", "文本背景信息约束", "数值约束", "包含约束", "语气风格约束"], "category": "trace1.0"} +{"id": "319", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇关于科技行业未来发展趋势的文章\n1. 文章面向科技行业从业者和投资者;\n2. 文章长度应控制在1500字以内;\n3. 文章需包含至少3个未来科技行业发展的关键趋势;\n4. 每个趋势必须有具体的案例分析;\n5. 至少引用3篇行业权威报告作为支持;\n6. 文章应采用Markdown格式,包含标题、子标题和引用注释;\n7. 需要使用列表、粗体和斜体文字增强可读性和视觉效果;\n8. 所有引用的报告和文献符合APA引用格式;\n9. 结构应包括引言、关键趋势分析、结论部分;\n"}], "type": "trace", "description": "撰写一篇关于科技行业未来发展趋势的文章", "constraints": "1. 文章面向科技行业从业者和投资者;\n2. 文章长度应控制在1500字以内;\n3. 文章需包含至少3个未来科技行业发展的关键趋势;\n4. 每个趋势必须有具体的案例分析;\n5. 至少引用3篇行业权威报告作为支持;\n6. 文章应采用Markdown格式,包含标题、子标题和引用注释;\n7. 需要使用列表、粗体和斜体文字增强可读性和视觉效果;\n8. 所有引用的报告和文献符合APA引用格式;\n9. 结构应包括引言、关键趋势分析、结论部分;", "input": "NULL", "constraints_num": 9, "constraints_splits": ["1. 文章面向科技行业从业者和投资者;", "2. 文章长度应控制在1500字以内;", "3. 文章需包含至少3个未来科技行业发展的关键趋势;", "4. 每个趋势必须有具体的案例分析;", "5. 至少引用3篇行业权威报告作为支持;", "6. 文章应采用Markdown格式,包含标题、子标题和引用注释;", "7. 需要使用列表、粗体和斜体文字增强可读性和视觉效果;", "8. 所有引用的报告和文献符合APA引用格式;", "9. 结构应包括引言、关键趋势分析、结论部分;"], "levels2": ["受众目标约束", "数值约束", "包含约束", "引用和参考约束", "引用和参考约束", "输出格式约束", "文本样式约束", "引用和参考约束", "层次化结构约束"], "category": "trace1.0"} +{"id": "320", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一张简历\n1. 采用标准简历模版;\n2. 简历包含个人信息、教育背景、工作经验、专业技能、个人评价五个部分;\n3. 个人信息部分包括姓名、联系方式(电话和邮箱);\n4. 教育背景部分详细列出学校名称、专业、学历及毕业时间;\n5. 工作经验部分详细列出公司名称、岗位名称、工作时间及主要工作内容和成就;\n6. 技能部分列出所有掌握的编程语言及程度、软技能;\n7. 简历总字数不超过500字;\n8. 排版清晰,使用标准的简历字体和字号,如Arial或Calibri字体,字号11号;\n9. 简历中应包含一份不超过100字的个人评价,概述个人优势和职业目标;\n"}], "type": "trace", "description": "创建一张简历", "constraints": "1. 采用标准简历模版;\n2. 简历包含个人信息、教育背景、工作经验、专业技能、个人评价五个部分;\n3. 个人信息部分包括姓名、联系方式(电话和邮箱);\n4. 教育背景部分详细列出学校名称、专业、学历及毕业时间;\n5. 工作经验部分详细列出公司名称、岗位名称、工作时间及主要工作内容和成就;\n6. 技能部分列出所有掌握的编程语言及程度、软技能;\n7. 简历总字数不超过500字;\n8. 排版清晰,使用标准的简历字体和字号,如Arial或Calibri字体,字号11号;\n9. 简历中应包含一份不超过100字的个人评价,概述个人优势和职业目标;", "input": "NULL", "constraints_num": 9, "constraints_splits": ["1. 采用标准简历模版;", "2. 简历包含个人信息、教育背景、工作经验、专业技能、个人评价五个部分;", "3. 个人信息部分包括姓名、联系方式(电话和邮箱);", "4. 教育背景部分详细列出学校名称、专业、学历及毕业时间;", "5. 工作经验部分详细列出公司名称、岗位名称、工作时间及主要工作内容和成就;", "6. 技能部分列出所有掌握的编程语言及程度、软技能;", "7. 简历总字数不超过500字;", "8. 排版清晰,使用标准的简历字体和字号,如Arial或Calibri字体,字号11号;", "9. 简历中应包含一份不超过100字的个人评价,概述个人优势和职业目标;"], "levels2": ["模版约束", "包含约束", "包含约束", "包含约束", "层次化结构约束", "编号和列表约束", "数值约束", "文本样式约束", "数值约束"], "category": "trace1.0"} +{"id": "321", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "给出关于旅游的建议\n1. 针对一个预算为500美元的旅行者;\n2. 旅行时长为3天;\n3. 目的地为海滩;\n4. 建议中应包含至少3个经济实惠的住宿选项;\n5. 3个必去的海滩景点;\n6. 2个当地特色美食推荐;\n7. 建议需有明确的预算分配指导,以确保旅行在预算范围内;\n8. 提供预算内的额外活动选项,以最大限度地提高旅行体验;\n9. 这些建议应针对寻求性价比高旅行体验的受众;\n"}], "type": "trace", "description": "给出关于旅游的建议", "constraints": "1. 针对一个预算为500美元的旅行者;\n2. 旅行时长为3天;\n3. 目的地为海滩;\n4. 建议中应包含至少3个经济实惠的住宿选项;\n5. 3个必去的海滩景点;\n6. 2个当地特色美食推荐;\n7. 建议需有明确的预算分配指导,以确保旅行在预算范围内;\n8. 提供预算内的额外活动选项,以最大限度地提高旅行体验;\n9. 这些建议应针对寻求性价比高旅行体验的受众;", "input": "NULL", "constraints_num": 9, "constraints_splits": ["1. 针对一个预算为500美元的旅行者;", "2. 旅行时长为3天;", "3. 目的地为海滩;", "4. 建议中应包含至少3个经济实惠的住宿选项;", "5. 3个必去的海滩景点;", "6. 2个当地特色美食推荐;", "7. 建议需有明确的预算分配指导,以确保旅行在预算范围内;", "8. 提供预算内的额外活动选项,以最大限度地提高旅行体验;", "9. 这些建议应针对寻求性价比高旅行体验的受众;"], "levels2": ["受众目标约束", "数值约束", "主题约束", "数值约束", "数值约束", "数值约束", "数值约束", "包含约束", "受众目标约束"], "category": "trace1.0"} +{"id": "322", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "写一篇描述威尼斯的深度游记\n1. 文章应由资深旅游作家撰写;\n2. 文章包含至少3段关于威尼斯的历史渊源;\n3. 介绍3个著名文化地标及其背后的故事;\n4. 描述2处自然风景,每处风景至少包含1个与当地文化相结合的活动建议;\n5. 整篇文章字数控制在1200至1500字之间;\n6. 采用散文风格,语言流畅且富有感染力;\n7. 文章以引人入胜的开头和有力的结尾作为框架,中间部分按时间线或地点顺序组织;\n8. 使用Markdown格式的标题和列表以增强可读性;\n9. 所有引用的历史资料和文化信息有明确的来源标注;\n"}], "type": "trace", "description": "写一篇描述威尼斯的深度游记", "constraints": "1. 文章应由资深旅游作家撰写;\n2. 文章包含至少3段关于威尼斯的历史渊源;\n3. 介绍3个著名文化地标及其背后的故事;\n4. 描述2处自然风景,每处风景至少包含1个与当地文化相结合的活动建议;\n5. 整篇文章字数控制在1200至1500字之间;\n6. 采用散文风格,语言流畅且富有感染力;\n7. 文章以引人入胜的开头和有力的结尾作为框架,中间部分按时间线或地点顺序组织;\n8. 使用Markdown格式的标题和列表以增强可读性;\n9. 所有引用的历史资料和文化信息有明确的来源标注;", "input": "NULL", "constraints_num": 9, "constraints_splits": ["1. 文章应由资深旅游作家撰写;", "2. 文章包含至少3段关于威尼斯的历史渊源;", "3. 介绍3个著名文化地标及其背后的故事;", "4. 描述2处自然风景,每处风景至少包含1个与当地文化相结合的活动建议;", "5. 整篇文章字数控制在1200至1500字之间;", "6. 采用散文风格,语言流畅且富有感染力;", "7. 文章以引人入胜的开头和有力的结尾作为框架,中间部分按时间线或地点顺序组织;", "8. 使用Markdown格式的标题和列表以增强可读性;", "9. 所有引用的历史资料和文化信息有明确的来源标注;"], "levels2": ["角色扮演约束", "包含约束", "数值约束", "包含约束", "数值约束", "语气风格约束", "层次化结构约束", "文本样式约束", "引用和参考约束"], "category": "trace1.0"} +{"id": "323", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为高中生物学课堂的情境,撰写关于“酶在催化反应中的作用”的科学实验报告。\n1. 报告需采用Markdown流程背景信息约束的方式撰写;\n2. 使用严谨正式的语气风格;\n3. 实验报告包含实验的准备、操作和数据分析;\n4. 列出至少5个详细的实验步骤,每个步骤包含具体的操作说明和预期结果;\n5. 实验结果部分应包括数据图表;\n6. 使用表格背景信息约束展示不同酶浓度下反应速率的变化;\n7. 结果分析使用专业学术语气;\n8. 实验报告总字数应在800字左右;\n9. 实验报告中应包含至少两处引用和参考,来源为权威生物学教科书或科学期刊。\n"}], "type": "trace", "description": "为高中生物学课堂的情境,撰写关于“酶在催化反应中的作用”的科学实验报告。", "constraints": "1. 报告需采用Markdown流程背景信息约束的方式撰写;\n2. 使用严谨正式的语气风格;\n3. 实验报告包含实验的准备、操作和数据分析;\n4. 列出至少5个详细的实验步骤,每个步骤包含具体的操作说明和预期结果;\n5. 实验结果部分应包括数据图表;\n6. 使用表格背景信息约束展示不同酶浓度下反应速率的变化;\n7. 结果分析使用专业学术语气;\n8. 实验报告总字数应在800字左右;\n9. 实验报告中应包含至少两处引用和参考,来源为权威生物学教科书或科学期刊。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["1. 报告需采用Markdown流程背景信息约束的方式撰写;", "2. 使用严谨正式的语气风格;", "3. 实验报告包含实验的准备、操作和数据分析;", "4. 列出至少5个详细的实验步骤,每个步骤包含具体的操作说明和预期结果;", "5. 实验结果部分应包括数据图表;", "6. 使用表格背景信息约束展示不同酶浓度下反应速率的变化;", "7. 结果分析使用专业学术语气;", "8. 实验报告总字数应在800字左右;", "9. 实验报告中应包含至少两处引用和参考,来源为权威生物学教科书或科学期刊。"], "levels2": ["markdown流程背景信息约束", "语气风格约束", "包含约束", "编号和列表约束", "输出格式约束", "表格背景信息约束", "语气风格约束", "数值约束", "引用和参考约束"], "category": "trace1.0"} +{"id": "324", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "设计一个基于以太坊智能合约的投注平台,用于对Balaji关于美元通货膨胀和比特币价格在90天内达到100万美元的预测进行投注。\n1. **智能合约设计**:优先使用经过审计和验证的EIP标准;\n2. **投注接收**:参与者通过向智能合约发送以太币下注,需指定支持的一方;\n3. **投注存储**:记录投注金额、下注方、投注时间;\n4. **结果验证**:内置机制验证比特币价格是否达到目标,可能需要预言机集成;\n5. **资金分配**:自动分配资金给赢家;\n6. **合约审计**:部署前进行严格的代码审计;\n7. **用户界面**:提供友好的web应用界面;\n8. **合规与法律**:符合所有适用的赌博法律和数字货币交易规定;\n9. **测试与部署**:在主网上部署前,进行彻底测试处理边界情况;\n10. **解决方案格式**:使用Markdown格式提供,包括详细步骤、EIP标准、设计决策解释;\n11. **代码草稿**:展示智能合约的基本结构;\n12. **测试用例**:演示如何验证合约的行为。\n"}], "type": "trace", "description": "设计一个基于以太坊智能合约的投注平台,用于对Balaji关于美元通货膨胀和比特币价格在90天内达到100万美元的预测进行投注。", "constraints": "1. **智能合约设计**:优先使用经过审计和验证的EIP标准;\n2. **投注接收**:参与者通过向智能合约发送以太币下注,需指定支持的一方;\n3. **投注存储**:记录投注金额、下注方、投注时间;\n4. **结果验证**:内置机制验证比特币价格是否达到目标,可能需要预言机集成;\n5. **资金分配**:自动分配资金给赢家;\n6. **合约审计**:部署前进行严格的代码审计;\n7. **用户界面**:提供友好的web应用界面;\n8. **合规与法律**:符合所有适用的赌博法律和数字货币交易规定;\n9. **测试与部署**:在主网上部署前,进行彻底测试处理边界情况;\n10. **解决方案格式**:使用Markdown格式提供,包括详细步骤、EIP标准、设计决策解释;\n11. **代码草稿**:展示智能合约的基本结构;\n12. **测试用例**:演示如何验证合约的行为。", "input": "NULL", "constraints_num": 12, "constraints_splits": ["1. **智能合约设计**:优先使用经过审计和验证的EIP标准;", "2. **投注接收**:参与者通过向智能合约发送以太币下注,需指定支持的一方;", "3. **投注存储**:记录投注金额、下注方、投注时间;", "4. **结果验证**:内置机制验证比特币价格是否达到目标,可能需要预言机集成;", "5. **资金分配**:自动分配资金给赢家;", "6. **合约审计**:部署前进行严格的代码审计;", "7. **用户界面**:提供友好的web应用界面;", "8. **合规与法律**:符合所有适用的赌博法律和数字货币交易规定;", "9. **测试与部署**:在主网上部署前,进行彻底测试处理边界情况;", "10. **解决方案格式**:使用Markdown格式提供,包括详细步骤、EIP标准、设计决策解释;", "11. **代码草稿**:展示智能合约的基本结构;", "12. **测试用例**:演示如何验证合约的行为。"], "levels2": ["主题约束", "自然语言流程背景信息约束", "包含约束", "自然语言流程背景信息约束", "包含约束", "包含约束", "文本样式约束", "价值观约束", "自然语言流程背景信息约束", "输出格式约束", "输出格式约束", "输出格式约束"], "category": "trace1.0"} +{"id": "325", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一个包含多个页面和交互元素的Web应用,具体包括首页展示产品列表、搜索页、用户登录页、购物车页面。\n1. 首页:采用网格布局,每页显示12个产品,包含产品图片、名称、价格和简短描述。\n2. 搜索页:在导航栏提供搜索框,允许用户通过关键词搜索产品,并显示搜索结果。\n3. 用户登录页:设计用户登录流程,包括邮箱/手机号登录和密码验证,以及找回密码功能。\n4. 购物车页面:用户可以将产品添加到购物车,显示购物车内产品列表,包括产品图片、名称、价格、数量和小计,并提供修改数量和删除产品选项。\n5. 所有页面应符合响应式设计原则,确保在不同设备上显示效果良好。\n6. 应用应使用HTML、CSS和JavaScript实现,确保代码结构清晰,符合W3C标准。\n7. 所有页面间交互需采用AJAX技术,以实现动态加载和无刷新交互。\n8. 应用程序应为每个主要功能提供单元测试,确保功能正确性和稳定性。\n9. 情境约束:假设用户为购物爱好者,需要一个简洁高效的购物体验,同时注重隐私保护和个人信息安全。\n10. 数值约束:每个页面加载时间不应超过3秒,应用的JavaScript文件大小应小于1MB。\n11. 格式约束:输出应包括所有页面的HTML、CSS和JavaScript源代码,并以ZIP格式压缩提交。\n12. 包含约束:项目中必须包含README.md文件,详细介绍项目结构、技术栈和如何运行项目。\n"}], "type": "trace", "description": "创建一个包含多个页面和交互元素的Web应用,具体包括首页展示产品列表、搜索页、用户登录页、购物车页面。", "constraints": "1. 首页:采用网格布局,每页显示12个产品,包含产品图片、名称、价格和简短描述。\n2. 搜索页:在导航栏提供搜索框,允许用户通过关键词搜索产品,并显示搜索结果。\n3. 用户登录页:设计用户登录流程,包括邮箱/手机号登录和密码验证,以及找回密码功能。\n4. 购物车页面:用户可以将产品添加到购物车,显示购物车内产品列表,包括产品图片、名称、价格、数量和小计,并提供修改数量和删除产品选项。\n5. 所有页面应符合响应式设计原则,确保在不同设备上显示效果良好。\n6. 应用应使用HTML、CSS和JavaScript实现,确保代码结构清晰,符合W3C标准。\n7. 所有页面间交互需采用AJAX技术,以实现动态加载和无刷新交互。\n8. 应用程序应为每个主要功能提供单元测试,确保功能正确性和稳定性。\n9. 情境约束:假设用户为购物爱好者,需要一个简洁高效的购物体验,同时注重隐私保护和个人信息安全。\n10. 数值约束:每个页面加载时间不应超过3秒,应用的JavaScript文件大小应小于1MB。\n11. 格式约束:输出应包括所有页面的HTML、CSS和JavaScript源代码,并以ZIP格式压缩提交。\n12. 包含约束:项目中必须包含README.md文件,详细介绍项目结构、技术栈和如何运行项目。", "input": "NULL", "constraints_num": 12, "constraints_splits": ["1. 首页:采用网格布局,每页显示12个产品,包含产品图片、名称、价格和简短描述。", "2. 搜索页:在导航栏提供搜索框,允许用户通过关键词搜索产品,并显示搜索结果。", "3. 用户登录页:设计用户登录流程,包括邮箱/手机号登录和密码验证,以及找回密码功能。", "4. 购物车页面:用户可以将产品添加到购物车,显示购物车内产品列表,包括产品图片、名称、价格、数量和小计,并提供修改数量和删除产品选项。", "5. 所有页面应符合响应式设计原则,确保在不同设备上显示效果良好。", "6. 应用应使用HTML、CSS和JavaScript实现,确保代码结构清晰,符合W3C标准。", "7. 所有页面间交互需采用AJAX技术,以实现动态加载和无刷新交互。", "8. 应用程序应为每个主要功能提供单元测试,确保功能正确性和稳定性。", "9. 情境约束:假设用户为购物爱好者,需要一个简洁高效的购物体验,同时注重隐私保护和个人信息安全。", "10. 数值约束:每个页面加载时间不应超过3秒,应用的JavaScript文件大小应小于1MB。", "11. 格式约束:输出应包括所有页面的HTML、CSS和JavaScript源代码,并以ZIP格式压缩提交。", "12. 包含约束:项目中必须包含README.md文件,详细介绍项目结构、技术栈和如何运行项目。"], "levels2": ["模版约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "文本样式约束", "输出格式约束", "输出格式约束", "包含约束", "受众目标约束", "数值约束", "输出格式约束", "包含约束"], "category": "trace1.0"} +{"id": "326", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "作为患者或患者家属,了解腹腔肿瘤化疗的有效性和可能遇到的药物不良反应情况。\n1. 建议寻找专业且信誉良好的医疗机构或医生进行咨询;\n2. 了解化疗过程中肿瘤的评估标准,如RECIST或WHO标准;\n3. 查明腹腔肿瘤的类型和分期,因为不同的肿瘤对化疗的反应可能不同;\n4. 咨询医生关于化疗药物的副作用,包括常见和罕见的不良反应;\n5. 了解如何管理这些不良反应,包括饮食调整、药物辅助治疗等;\n6. 保持与医生的密切沟通,及时报告任何不适或疑问,并遵循医生的指导和建议;\n7. 不要自行购买或使用未经医生推荐的药物;\n8. 保持良好的生活习惯,如适量运动和均衡饮食;\n9. 定期进行复查,跟踪肿瘤的变化和化疗的效果;\n10. 了解并认识腹腔肿瘤化疗的长期影响,包括对生育能力、免疫系统等方面的影响;\n11. 加入支持团体或参与相关病友交流,以获得情感支持和实践经验。\n"}], "type": "trace", "description": "作为患者或患者家属,了解腹腔肿瘤化疗的有效性和可能遇到的药物不良反应情况。", "constraints": "1. 建议寻找专业且信誉良好的医疗机构或医生进行咨询;\n2. 了解化疗过程中肿瘤的评估标准,如RECIST或WHO标准;\n3. 查明腹腔肿瘤的类型和分期,因为不同的肿瘤对化疗的反应可能不同;\n4. 咨询医生关于化疗药物的副作用,包括常见和罕见的不良反应;\n5. 了解如何管理这些不良反应,包括饮食调整、药物辅助治疗等;\n6. 保持与医生的密切沟通,及时报告任何不适或疑问,并遵循医生的指导和建议;\n7. 不要自行购买或使用未经医生推荐的药物;\n8. 保持良好的生活习惯,如适量运动和均衡饮食;\n9. 定期进行复查,跟踪肿瘤的变化和化疗的效果;\n10. 了解并认识腹腔肿瘤化疗的长期影响,包括对生育能力、免疫系统等方面的影响;\n11. 加入支持团体或参与相关病友交流,以获得情感支持和实践经验。", "input": "NULL", "constraints_num": 11, "constraints_splits": ["1. 建议寻找专业且信誉良好的医疗机构或医生进行咨询;", "2. 了解化疗过程中肿瘤的评估标准,如RECIST或WHO标准;", "3. 查明腹腔肿瘤的类型和分期,因为不同的肿瘤对化疗的反应可能不同;", "4. 咨询医生关于化疗药物的副作用,包括常见和罕见的不良反应;", "5. 了解如何管理这些不良反应,包括饮食调整、药物辅助治疗等;", "6. 保持与医生的密切沟通,及时报告任何不适或疑问,并遵循医生的指导和建议;", "7. 不要自行购买或使用未经医生推荐的药物;", "8. 保持良好的生活习惯,如适量运动和均衡饮食;", "9. 定期进行复查,跟踪肿瘤的变化和化疗的效果;", "10. 了解并认识腹腔肿瘤化疗的长期影响,包括对生育能力、免疫系统等方面的影响;", "11. 加入支持团体或参与相关病友交流,以获得情感支持和实践经验。"], "levels2": ["价值观约束", "主题约束", "包含约束", "包含约束", "包含约束", "包含约束", "价值观约束", "价值观约束", "自然语言流程背景信息约束", "主题约束", "包含约束"], "category": "trace1.0"} +{"id": "327", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一份关于社交媒体使用行为的调查问卷\n1. 问卷应包括以下四个选项,并以编号列表的形式呈现;\n2. 每个选项前应加上适当的序号;\n3. 问卷的开头和结尾分别添加简短的引言和结束语;\n4. 问卷需控制在5个问题以内;\n5. 包括一个关于使用社交媒体时间的问题,具体选项如下:\n6. 每天使用社交媒体的时间不超过15分钟\n7. 每天使用社交媒体的时间在15-30分钟之间\n8. 每天使用社交媒体的时间在30分钟到1小时之间\n9. 每天使用社交媒体的时间超过1个小时;\n10. 引言需阐述问卷目的;\n11. 结束语需表示感谢;\n"}], "type": "trace", "description": "创建一份关于社交媒体使用行为的调查问卷", "constraints": "1. 问卷应包括以下四个选项,并以编号列表的形式呈现;\n2. 每个选项前应加上适当的序号;\n3. 问卷的开头和结尾分别添加简短的引言和结束语;\n4. 问卷需控制在5个问题以内;\n5. 包括一个关于使用社交媒体时间的问题,具体选项如下:\n6. 每天使用社交媒体的时间不超过15分钟\n7. 每天使用社交媒体的时间在15-30分钟之间\n8. 每天使用社交媒体的时间在30分钟到1小时之间\n9. 每天使用社交媒体的时间超过1个小时;\n10. 引言需阐述问卷目的;\n11. 结束语需表示感谢;", "input": "NULL", "constraints_num": 11, "constraints_splits": ["1. 问卷应包括以下四个选项,并以编号列表的形式呈现;", "2. 每个选项前应加上适当的序号;", "3. 问卷的开头和结尾分别添加简短的引言和结束语;", "4. 问卷需控制在5个问题以内;", "5. 包括一个关于使用社交媒体时间的问题,具体选项如下:", "6. 每天使用社交媒体的时间不超过15分钟", "7. 每天使用社交媒体的时间在15-30分钟之间", "8. 每天使用社交媒体的时间在30分钟到1小时之间", "9. 每天使用社交媒体的时间超过1个小时;", "10. 引言需阐述问卷目的;", "11. 结束语需表示感谢;"], "levels2": ["编号和列表约束", "编号和列表约束", "模版约束", "数值约束", "包含约束", "数值约束", "数值约束", "数值约束", "数值约束", "层次化结构约束", "语气风格约束"], "category": "trace1.0"} +{"id": "328", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇关于人工智能技术的文章,以科技评论家的身份。\n1. 文章长度应控制在1200至1500字之间;\n2. 文章中必须详细描述人工智能技术在现代社会中的作用;\n3. 至少列举出人工智能的5个显著特点;\n4. 基于当前的研究趋势预测其未来3至5年的可能发展方向;\n5. 在文章中,应至少引用3篇来自权威期刊的最新研究成果;\n6. 信息的准确性和权威性需通过引用加以确保;\n7. 文章格式应采用学术论文的结构,包括引言、正文、结论和参考文献部分;\n8. 所有引用需按照APA格式规范标注;\n9. 文章应避免使用任何可能引起读者恐慌或偏见的措辞;\n10. 信息的客观性和平衡性需得到保障;\n11. 在描述未来发展趋势时,应基于现有数据和专家观点进行合理推测,避免过度乐观或悲观。\n"}], "type": "trace", "description": "撰写一篇关于人工智能技术的文章,以科技评论家的身份。", "constraints": "1. 文章长度应控制在1200至1500字之间;\n2. 文章中必须详细描述人工智能技术在现代社会中的作用;\n3. 至少列举出人工智能的5个显著特点;\n4. 基于当前的研究趋势预测其未来3至5年的可能发展方向;\n5. 在文章中,应至少引用3篇来自权威期刊的最新研究成果;\n6. 信息的准确性和权威性需通过引用加以确保;\n7. 文章格式应采用学术论文的结构,包括引言、正文、结论和参考文献部分;\n8. 所有引用需按照APA格式规范标注;\n9. 文章应避免使用任何可能引起读者恐慌或偏见的措辞;\n10. 信息的客观性和平衡性需得到保障;\n11. 在描述未来发展趋势时,应基于现有数据和专家观点进行合理推测,避免过度乐观或悲观。", "input": "NULL", "constraints_num": 11, "constraints_splits": ["1. 文章长度应控制在1200至1500字之间;", "2. 文章中必须详细描述人工智能技术在现代社会中的作用;", "3. 至少列举出人工智能的5个显著特点;", "4. 基于当前的研究趋势预测其未来3至5年的可能发展方向;", "5. 在文章中,应至少引用3篇来自权威期刊的最新研究成果;", "6. 信息的准确性和权威性需通过引用加以确保;", "7. 文章格式应采用学术论文的结构,包括引言、正文、结论和参考文献部分;", "8. 所有引用需按照APA格式规范标注;", "9. 文章应避免使用任何可能引起读者恐慌或偏见的措辞;", "10. 信息的客观性和平衡性需得到保障;", "11. 在描述未来发展趋势时,应基于现有数据和专家观点进行合理推测,避免过度乐观或悲观。"], "levels2": ["数值约束", "包含约束", "数值约束", "主题约束", "引用和参考约束", "引用和参考约束", "层次化结构约束", "引用和参考约束", "价值观约束", "价值观约束", "价值观约束"], "category": "trace1.0"} +{"id": "329", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为潜在的企业家设计一个品牌名称和标志,紧密围绕“烘焙”、“可持续性”、“自然”和“健康食品”四个关键词。\n1. 品牌名称应具有创新性,避免使用市场上已有的名称;\n2. 品牌名称必须清晰地传达出品牌的核心价值——即健康、环保和自然;\n3. 标志设计需体现出自然与可持续性的理念,可以考虑使用绿色、棕色等自然系色彩;\n4. 标志中需包含与烘焙相关的元素,如麦穗、面包等;\n5. 设计过程中,需要采用专业设计软件如Adobe Illustrator进行设计;\n6. 最终设计成果需以SVG矢量格式提交;\n7. 需撰写一份简短的说明文档,解释品牌名称和标志的设计理念;\n8. 文档需遵循APA格式(美国心理学会)进行引用和参考文献的标注;\n9. 文档和设计成果需一并提交;\n10. 文档应使用宋体12号字体;\n11. 设计成果需附带高清图片和矢量文件。\n"}], "type": "trace", "description": "为潜在的企业家设计一个品牌名称和标志,紧密围绕“烘焙”、“可持续性”、“自然”和“健康食品”四个关键词。", "constraints": "1. 品牌名称应具有创新性,避免使用市场上已有的名称;\n2. 品牌名称必须清晰地传达出品牌的核心价值——即健康、环保和自然;\n3. 标志设计需体现出自然与可持续性的理念,可以考虑使用绿色、棕色等自然系色彩;\n4. 标志中需包含与烘焙相关的元素,如麦穗、面包等;\n5. 设计过程中,需要采用专业设计软件如Adobe Illustrator进行设计;\n6. 最终设计成果需以SVG矢量格式提交;\n7. 需撰写一份简短的说明文档,解释品牌名称和标志的设计理念;\n8. 文档需遵循APA格式(美国心理学会)进行引用和参考文献的标注;\n9. 文档和设计成果需一并提交;\n10. 文档应使用宋体12号字体;\n11. 设计成果需附带高清图片和矢量文件。", "input": "NULL", "constraints_num": 11, "constraints_splits": ["1. 品牌名称应具有创新性,避免使用市场上已有的名称;", "2. 品牌名称必须清晰地传达出品牌的核心价值——即健康、环保和自然;", "3. 标志设计需体现出自然与可持续性的理念,可以考虑使用绿色、棕色等自然系色彩;", "4. 标志中需包含与烘焙相关的元素,如麦穗、面包等;", "5. 设计过程中,需要采用专业设计软件如Adobe Illustrator进行设计;", "6. 最终设计成果需以SVG矢量格式提交;", "7. 需撰写一份简短的说明文档,解释品牌名称和标志的设计理念;", "8. 文档需遵循APA格式(美国心理学会)进行引用和参考文献的标注;", "9. 文档和设计成果需一并提交;", "10. 文档应使用宋体12号字体;", "11. 设计成果需附带高清图片和矢量文件。"], "levels2": ["排除约束", "主题约束", "主题约束", "包含约束", "包含约束", "输出格式约束", "文本样式约束", "引用和参考约束", "输出格式约束", "文本样式约束", "输出格式约束"], "category": "trace1.0"} +{"id": "330", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为一对热衷于文化探索、美食体验和购物的夫妻量身定制一次难忘的东京之旅。\n1. 你将扮演一个专业的旅行规划师;\n2. 确保行程中涵盖至少三个文化景点、三次美食体验以及两次购物活动,同时列出每个活动的详细信息,如地址、开放时间、推荐理由等;\n3. 旅行计划应以清晰的表格形式呈现,包括日期、活动、地点、时间安排等栏目;\n4. 计划描述应采用友好、热情的语气,同时提供实用的旅行建议和当地文化小贴士;\n5. 计划应以表格形式呈现,每一行包含日期、活动、地点、时间安排等信息;\n6.表格中的标题和重要信息需使用加粗字体突出显示;\n7. 在描述活动时,使用清晰的主谓结构;\n8. 对于推荐的地点,提供至少一个在线资源作为参考;\n9. 在活动说明中使用有序列表列出具体时间安排;\n10. 为旅行计划添加标题和子标题,并使用项目符号或编号列出每个分类下的活动;\n11. 旅行计划应按照“总-分-总”结构组织。\n"}], "type": "trace", "description": "为一对热衷于文化探索、美食体验和购物的夫妻量身定制一次难忘的东京之旅。", "constraints": "1. 你将扮演一个专业的旅行规划师;\n2. 确保行程中涵盖至少三个文化景点、三次美食体验以及两次购物活动,同时列出每个活动的详细信息,如地址、开放时间、推荐理由等;\n3. 旅行计划应以清晰的表格形式呈现,包括日期、活动、地点、时间安排等栏目;\n4. 计划描述应采用友好、热情的语气,同时提供实用的旅行建议和当地文化小贴士;\n5. 计划应以表格形式呈现,每一行包含日期、活动、地点、时间安排等信息;\n6.表格中的标题和重要信息需使用加粗字体突出显示;\n7. 在描述活动时,使用清晰的主谓结构;\n8. 对于推荐的地点,提供至少一个在线资源作为参考;\n9. 在活动说明中使用有序列表列出具体时间安排;\n10. 为旅行计划添加标题和子标题,并使用项目符号或编号列出每个分类下的活动;\n11. 旅行计划应按照“总-分-总”结构组织。", "input": "NULL", "constraints_num": 11, "constraints_splits": ["1. 你将扮演一个专业的旅行规划师;", "2. 确保行程中涵盖至少三个文化景点、三次美食体验以及两次购物活动,同时列出每个活动的详细信息,如地址、开放时间、推荐理由等;", "3. 旅行计划应以清晰的表格形式呈现,包括日期、活动、地点、时间安排等栏目;", "4. 计划描述应采用友好、热情的语气,同时提供实用的旅行建议和当地文化小贴士;", "5. 计划应以表格形式呈现,每一行包含日期、活动、地点、时间安排等信息;", "6.表格中的标题和重要信息需使用加粗字体突出显示;", "7. 在描述活动时,使用清晰的主谓结构;", "8. 对于推荐的地点,提供至少一个在线资源作为参考;", "9. 在活动说明中使用有序列表列出具体时间安排;", "10. 为旅行计划添加标题和子标题,并使用项目符号或编号列出每个分类下的活动;", "11. 旅行计划应按照“总-分-总”结构组织。"], "levels2": ["角色扮演约束", "包含约束", "输出格式约束", "语气风格约束", "输出格式约束", "文本样式约束", "语法结构约束", "引用和参考约束", "编号和列表约束", "层次化结构约束", "模版约束"], "category": "trace1.0"} +{"id": "331", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为美食爱好者提供一份关于北京地区的意大利餐厅的建议和评论。\n1. 评论中应当包含至少5家不同意大利餐厅的名称、地址、特色菜品以及人均消费;\n2. 评论需使用表格格式进行呈现,确保信息的一目了然和便于比较;\n3. 每家餐厅的评论需要附带一张特色菜品的照片;\n4. 每家餐厅的评论需要包含一个简短的用餐体验描述,以增加评论的真实感和吸引力。\n"}], "type": "trace", "description": "为美食爱好者提供一份关于北京地区的意大利餐厅的建议和评论。", "constraints": "1. 评论中应当包含至少5家不同意大利餐厅的名称、地址、特色菜品以及人均消费;\n2. 评论需使用表格格式进行呈现,确保信息的一目了然和便于比较;\n3. 每家餐厅的评论需要附带一张特色菜品的照片;\n4. 每家餐厅的评论需要包含一个简短的用餐体验描述,以增加评论的真实感和吸引力。", "input": "NULL", "constraints_num": 4, "constraints_splits": ["1. 评论中应当包含至少5家不同意大利餐厅的名称、地址、特色菜品以及人均消费;", "2. 评论需使用表格格式进行呈现,确保信息的一目了然和便于比较;", "3. 每家餐厅的评论需要附带一张特色菜品的照片;", "4. 每家餐厅的评论需要包含一个简短的用餐体验描述,以增加评论的真实感和吸引力。"], "levels2": ["包含约束", "输出格式约束", "输出格式约束", "包含约束"], "category": "trace1.0"} +{"id": "332", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为巴黎城市制定一份旅游路线\n1. 旅游路线中必须包含参观埃菲尔铁塔、游览卢浮宫、瞻仰巴黎圣母院、漫步香榭丽舍大街、体验蒙马特艺术氛围的活动;\n2. 以旅游顾问的角色,用热情洋溢、生动活泼的语气撰写;\n3. 总字数控制在500字以内;\n4. 使用层次化结构,例如 \"第一站:埃菲尔铁塔\",\"第二站:卢浮宫\"等,为游客提供清晰的行程指示;\n# Inputs:\n目标城市:巴黎。\n"}], "type": "trace", "description": "为巴黎城市制定一份旅游路线", "constraints": "1. 旅游路线中必须包含参观埃菲尔铁塔、游览卢浮宫、瞻仰巴黎圣母院、漫步香榭丽舍大街、体验蒙马特艺术氛围的活动;\n2. 以旅游顾问的角色,用热情洋溢、生动活泼的语气撰写;\n3. 总字数控制在500字以内;\n4. 使用层次化结构,例如 \"第一站:埃菲尔铁塔\",\"第二站:卢浮宫\"等,为游客提供清晰的行程指示;", "input": "目标城市:巴黎。", "constraints_num": 4, "constraints_splits": ["1. 旅游路线中必须包含参观埃菲尔铁塔、游览卢浮宫、瞻仰巴黎圣母院、漫步香榭丽舍大街、体验蒙马特艺术氛围的活动;", "2. 以旅游顾问的角色,用热情洋溢、生动活泼的语气撰写;", "3. 总字数控制在500字以内;", "4. 使用层次化结构,例如 \"第一站:埃菲尔铁塔\",\"第二站:卢浮宫\"等,为游客提供清晰的行程指示;"], "levels2": ["包含约束", "语气风格约束", "数值约束", "层次化结构约束"], "category": "trace1.0"} +{"id": "333", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "描述如何制作一道正宗的传统意式披萨。\n1. 描述过程采用专业且详细的语气,适合对烹饪有一定基础的读者;\n2. 制作过程需分为5个主要步骤,每个步骤的描述不超过200字;\n3. 包含必要的注意事项和技巧,以确保披萨的口感和外观达到最佳状态;\n4. 在描述配料时,列举至少8种传统配料,并简要说明它们在披萨中的作用;\n"}], "type": "trace", "description": "描述如何制作一道正宗的传统意式披萨。", "constraints": "1. 描述过程采用专业且详细的语气,适合对烹饪有一定基础的读者;\n2. 制作过程需分为5个主要步骤,每个步骤的描述不超过200字;\n3. 包含必要的注意事项和技巧,以确保披萨的口感和外观达到最佳状态;\n4. 在描述配料时,列举至少8种传统配料,并简要说明它们在披萨中的作用;", "input": "NULL", "constraints_num": 4, "constraints_splits": ["1. 描述过程采用专业且详细的语气,适合对烹饪有一定基础的读者;", "2. 制作过程需分为5个主要步骤,每个步骤的描述不超过200字;", "3. 包含必要的注意事项和技巧,以确保披萨的口感和外观达到最佳状态;", "4. 在描述配料时,列举至少8种传统配料,并简要说明它们在披萨中的作用;"], "levels2": ["语气风格约束", "数值约束", "包含约束", "数值约束"], "category": "trace1.0"} +{"id": "334", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "描述海滩消夏旅行感受\n1. 描述需以诗意、浪漫的语气;\n2. 使用恰好三个词;\n3. 三个词中必须包含至少一个形容词,一个名词和一个动词;\n4. 构成一个富有画面感的短句;\n"}], "type": "trace", "description": "描述海滩消夏旅行感受", "constraints": "1. 描述需以诗意、浪漫的语气;\n2. 使用恰好三个词;\n3. 三个词中必须包含至少一个形容词,一个名词和一个动词;\n4. 构成一个富有画面感的短句;", "input": "NULL", "constraints_num": 4, "constraints_splits": ["1. 描述需以诗意、浪漫的语气;", "2. 使用恰好三个词;", "3. 三个词中必须包含至少一个形容词,一个名词和一个动词;", "4. 构成一个富有画面感的短句;"], "levels2": ["语气风格约束", "数值约束", "数值约束", "语言特征约束"], "category": "trace1.0"} +{"id": "335", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "将一个中等难度的电子工程任务拆分成5个子任务,并以编号列表的形式呈现,确保每个子任务的描述清晰且不超过50字。\n1. 子任务的描述必须简洁明了,每个子任务的描述不得超过50字;\n2. 使用编号列表呈现子任务,便于清晰展示;\n3. 建议的学习顺序应以层次化结构组织,使用标题和子标题区分,以便于理解;\n4. 在子任务描述中,关键步骤或术语需用斜体字强调;\n"}], "type": "trace", "description": "将一个中等难度的电子工程任务拆分成5个子任务,并以编号列表的形式呈现,确保每个子任务的描述清晰且不超过50字。", "constraints": "1. 子任务的描述必须简洁明了,每个子任务的描述不得超过50字;\n2. 使用编号列表呈现子任务,便于清晰展示;\n3. 建议的学习顺序应以层次化结构组织,使用标题和子标题区分,以便于理解;\n4. 在子任务描述中,关键步骤或术语需用斜体字强调;", "input": "NULL", "constraints_num": 4, "constraints_splits": ["1. 子任务的描述必须简洁明了,每个子任务的描述不得超过50字;", "2. 使用编号列表呈现子任务,便于清晰展示;", "3. 建议的学习顺序应以层次化结构组织,使用标题和子标题区分,以便于理解;", "4. 在子任务描述中,关键步骤或术语需用斜体字强调;"], "levels2": ["数值约束", "编号和列表约束", "层次化结构约束", "文本样式约束"], "category": "trace1.0"} +{"id": "336", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "提取《红楼梦》中至少五个女孩的名字及其性格特点,并以JSON格式输出。\n1. 输出信息需包含角色名字和性格特点的键值对;\n2. 每个角色的介绍应不少于20字,不超过50字;\n3. 主题应严格围绕《红楼梦》中的人物及其性格分析;\n4. 输出格式为JSON;\n"}], "type": "trace", "description": "提取《红楼梦》中至少五个女孩的名字及其性格特点,并以JSON格式输出。", "constraints": "1. 输出信息需包含角色名字和性格特点的键值对;\n2. 每个角色的介绍应不少于20字,不超过50字;\n3. 主题应严格围绕《红楼梦》中的人物及其性格分析;\n4. 输出格式为JSON;", "input": "NULL", "constraints_num": 4, "constraints_splits": ["1. 输出信息需包含角色名字和性格特点的键值对;", "2. 每个角色的介绍应不少于20字,不超过50字;", "3. 主题应严格围绕《红楼梦》中的人物及其性格分析;", "4. 输出格式为JSON;"], "levels2": ["包含约束", "数值约束", "主题约束", "输出格式约束"], "category": "trace1.0"} +{"id": "337", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为电影《星际穿越》撰写一份评论\n1. 评论字数要求在250字以上;\n2. 评论应采用正式且具有文学气息的语气风格;\n3. 评论中需要包含对电影主题、导演克里斯托弗·诺兰的导演技巧、主要演员的表演以及电影对科学的诠释的评价;\n4. 评论中提及的电影名称“《星际穿越》”需用斜体字表示,以突出强调;\n"}], "type": "trace", "description": "为电影《星际穿越》撰写一份评论", "constraints": "1. 评论字数要求在250字以上;\n2. 评论应采用正式且具有文学气息的语气风格;\n3. 评论中需要包含对电影主题、导演克里斯托弗·诺兰的导演技巧、主要演员的表演以及电影对科学的诠释的评价;\n4. 评论中提及的电影名称“《星际穿越》”需用斜体字表示,以突出强调;", "input": "NULL", "constraints_num": 4, "constraints_splits": ["1. 评论字数要求在250字以上;", "2. 评论应采用正式且具有文学气息的语气风格;", "3. 评论中需要包含对电影主题、导演克里斯托弗·诺兰的导演技巧、主要演员的表演以及电影对科学的诠释的评价;", "4. 评论中提及的电影名称“《星际穿越》”需用斜体字表示,以突出强调;"], "levels2": ["数值约束", "语气风格约束", "包含约束", "文本样式约束"], "category": "trace1.0"} +{"id": "338", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以不超过300字的摘要形式,概括文章《疫情下的教育问题与发展趋势》中的主要观点和要点\n1. 摘要需采用段落形式,每段包含1至2个核心观点;\n2. 在摘要的末尾列出文章中提及的3个关键发展趋势;\n3. 确保摘要开头明确地提及文章标题和作者;\n4. 摘要字符长度不得超过300个字符;\n"}], "type": "trace", "description": "以不超过300字的摘要形式,概括文章《疫情下的教育问题与发展趋势》中的主要观点和要点", "constraints": "1. 摘要需采用段落形式,每段包含1至2个核心观点;\n2. 在摘要的末尾列出文章中提及的3个关键发展趋势;\n3. 确保摘要开头明确地提及文章标题和作者;\n4. 摘要字符长度不得超过300个字符;", "input": "NULL", "constraints_num": 4, "constraints_splits": ["1. 摘要需采用段落形式,每段包含1至2个核心观点;", "2. 在摘要的末尾列出文章中提及的3个关键发展趋势;", "3. 确保摘要开头明确地提及文章标题和作者;", "4. 摘要字符长度不得超过300个字符;"], "levels2": ["语法结构约束", "编号和列表约束", "模版约束", "数值约束"], "category": "trace1.0"} +{"id": "339", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "对文本进行校对,标出并提供正确的拼写替换,特别注意检查主谓一致、名词的数以及形容词和副词的用法。对于需要替换的单词,用红色字体高亮显示以增加辨识度。\n1. 检查文本中的主谓一致;\n2. 检查文本中名词的数;\n3. 检查文本中形容词和副词的用法;\n4. 需要替换的单词用红色字体高亮显示;\n# Inputs:\n他朝着镜子走去,看着自己的反映。但是,他惊讶地发现他的脸上有一道奇怪的咯况,他从来没有见过这样的东西。\n"}], "type": "trace", "description": "对文本进行校对,标出并提供正确的拼写替换,特别注意检查主谓一致、名词的数以及形容词和副词的用法。对于需要替换的单词,用红色字体高亮显示以增加辨识度。", "constraints": "1. 检查文本中的主谓一致;\n2. 检查文本中名词的数;\n3. 检查文本中形容词和副词的用法;\n4. 需要替换的单词用红色字体高亮显示;", "input": "他朝着镜子走去,看着自己的反映。但是,他惊讶地发现他的脸上有一道奇怪的咯况,他从来没有见过这样的东西。", "constraints_num": 4, "constraints_splits": ["1. 检查文本中的主谓一致;", "2. 检查文本中名词的数;", "3. 检查文本中形容词和副词的用法;", "4. 需要替换的单词用红色字体高亮显示;"], "levels2": ["语法结构约束", "语法结构约束", "语法结构约束", "文本样式约束"], "category": "trace1.0"} +{"id": "340", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "根据给定信息,撰写一个正式商务信函格式的会议备忘录\n1. 备忘录格式为正式商务信函;\n2. 字数控制在200字以内;\n3. 需要在第一段明确指出会议的重要性和目的;\n4. 结束时包含一句礼貌的感谢语;\n# Inputs:\n会议的具体日期:下周三\n会议的时间:下午2点\n会议的地点:会议室2A\n"}], "type": "trace", "description": "根据给定信息,撰写一个正式商务信函格式的会议备忘录", "constraints": "1. 备忘录格式为正式商务信函;\n2. 字数控制在200字以内;\n3. 需要在第一段明确指出会议的重要性和目的;\n4. 结束时包含一句礼貌的感谢语;", "input": "会议的具体日期:下周三\n会议的时间:下午2点\n会议的地点:会议室2A", "constraints_num": 4, "constraints_splits": ["1. 备忘录格式为正式商务信函;", "2. 字数控制在200字以内;", "3. 需要在第一段明确指出会议的重要性和目的;", "4. 结束时包含一句礼貌的感谢语;"], "levels2": ["文本样式约束", "数值约束", "层次化结构约束", "语气风格约束"], "category": "trace1.0"} +{"id": "341", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "讲述一个发生在文艺复兴时期(14世纪至17世纪)的有趣故事\n1. 故事风格应文艺且略带浪漫;\n2. 故事包含至少一个著名的历史人物及其对艺术或科学的贡献;\n3. 故事长度应控制在500字到700字之间;\n4. 叙述中确保历史细节的准确性;\n"}], "type": "trace", "description": "讲述一个发生在文艺复兴时期(14世纪至17世纪)的有趣故事", "constraints": "1. 故事风格应文艺且略带浪漫;\n2. 故事包含至少一个著名的历史人物及其对艺术或科学的贡献;\n3. 故事长度应控制在500字到700字之间;\n4. 叙述中确保历史细节的准确性;", "input": "NULL", "constraints_num": 4, "constraints_splits": ["1. 故事风格应文艺且略带浪漫;", "2. 故事包含至少一个著名的历史人物及其对艺术或科学的贡献;", "3. 故事长度应控制在500字到700字之间;", "4. 叙述中确保历史细节的准确性;"], "levels2": ["语气风格约束", "包含约束", "数值约束", "价值观约束"], "category": "trace1.0"} +{"id": "342", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇以东京为背景的短文,描述最喜欢的旅行目的地,确保涵盖“风景”、“美食”、“历史”和“文化”这四个关键词。\n1. 短文长度在150至200字之间;\n2. 短文必须包含对“风景”、“美食”、“历史”和“文化”的详实描述;\n3. 写作时采用生动活泼、充满热情的语气;\n4. 文中关键词需使用斜体字进行突出,以增强文章的可读性和吸引力。\n"}], "type": "trace", "description": "撰写一篇以东京为背景的短文,描述最喜欢的旅行目的地,确保涵盖“风景”、“美食”、“历史”和“文化”这四个关键词。", "constraints": "1. 短文长度在150至200字之间;\n2. 短文必须包含对“风景”、“美食”、“历史”和“文化”的详实描述;\n3. 写作时采用生动活泼、充满热情的语气;\n4. 文中关键词需使用斜体字进行突出,以增强文章的可读性和吸引力。", "input": "NULL", "constraints_num": 4, "constraints_splits": ["1. 短文长度在150至200字之间;", "2. 短文必须包含对“风景”、“美食”、“历史”和“文化”的详实描述;", "3. 写作时采用生动活泼、充满热情的语气;", "4. 文中关键词需使用斜体字进行突出,以增强文章的可读性和吸引力。"], "levels2": ["数值约束", "包含约束", "语气风格约束", "文本样式约束"], "category": "trace1.0"} +{"id": "343", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以Markdown格式描述糖尿病的定义,列出并详细描述至少5个常见症状,每个症状不少于20字。同时,列出并简要解释至少3种预防糖尿病的有效措施,措施描述需达到50字以上。\n1. 定义准确无误;\n2. 症状描述清晰,至少描述5个常见症状,每个症状不少于20字;\n3. 预防措施实用可行,至少列出3种预防措施,每种措施描述需达到50字以上;\n4. 输出应包括标题“糖尿病概述”,下设“定义”、“常见症状”和“预防措施”三个子标题,以结构化的方式呈现信息;\n"}], "type": "trace", "description": "以Markdown格式描述糖尿病的定义,列出并详细描述至少5个常见症状,每个症状不少于20字。同时,列出并简要解释至少3种预防糖尿病的有效措施,措施描述需达到50字以上。", "constraints": "1. 定义准确无误;\n2. 症状描述清晰,至少描述5个常见症状,每个症状不少于20字;\n3. 预防措施实用可行,至少列出3种预防措施,每种措施描述需达到50字以上;\n4. 输出应包括标题“糖尿病概述”,下设“定义”、“常见症状”和“预防措施”三个子标题,以结构化的方式呈现信息;", "input": "NULL", "constraints_num": 4, "constraints_splits": ["1. 定义准确无误;", "2. 症状描述清晰,至少描述5个常见症状,每个症状不少于20字;", "3. 预防措施实用可行,至少列出3种预防措施,每种措施描述需达到50字以上;", "4. 输出应包括标题“糖尿病概述”,下设“定义”、“常见症状”和“预防措施”三个子标题,以结构化的方式呈现信息;"], "levels2": ["语法结构约束", "数值约束", "数值约束", "层次化结构约束"], "category": "trace1.0"} +{"id": "344", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "根据提供的数据集,使用支持向量机(SVM)或随机森林(Random Forest)算法进行分类。\n1. 数据集以CSV格式提供,包含100个样本,每个样本有10个特征和一个类别标签;\n2. 模型训练时应使用80%的数据,20%的数据用于测试;\n3. 确保训练出的模型准确率至少达到85%;\n4. 模型训练和测试的过程需要记录在Jupyter Notebook中,方便后续复现和调整;\n# Inputs:\n数据集应以CSV格式提供,其中包含100个样本,每个样本有10个特征和一个类别标签。\n"}], "type": "trace", "description": "根据提供的数据集,使用支持向量机(SVM)或随机森林(Random Forest)算法进行分类。", "constraints": "1. 数据集以CSV格式提供,包含100个样本,每个样本有10个特征和一个类别标签;\n2. 模型训练时应使用80%的数据,20%的数据用于测试;\n3. 确保训练出的模型准确率至少达到85%;\n4. 模型训练和测试的过程需要记录在Jupyter Notebook中,方便后续复现和调整;", "input": "数据集应以CSV格式提供,其中包含100个样本,每个样本有10个特征和一个类别标签。", "constraints_num": 4, "constraints_splits": ["1. 数据集以CSV格式提供,包含100个样本,每个样本有10个特征和一个类别标签;", "2. 模型训练时应使用80%的数据,20%的数据用于测试;", "3. 确保训练出的模型准确率至少达到85%;", "4. 模型训练和测试的过程需要记录在Jupyter Notebook中,方便后续复现和调整;"], "levels2": ["先验条件约束", "数值约束", "数值约束", "输出格式约束"], "category": "trace1.0"} +{"id": "345", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇分析报告,判断给定电影或电视节目的类型,并提供至少三个描述性理由支持判断。\n1. 分析报告应以专业学术的语气风格撰写;\n2. 报告内容避免使用任何可能引起观众不适的描述或场景;\n3. 报告结构应包含引言、分析、结论三个部分;\n4. 最终输出格式为JSON。\n# Inputs:\n{\n  \"title\": \"黑镜\",\n  \"actors\": [\n    \"托比•凯贝尔\"\n  ]\n}\n"}], "type": "trace", "description": "撰写一篇分析报告,判断给定电影或电视节目的类型,并提供至少三个描述性理由支持判断。", "constraints": "1. 分析报告应以专业学术的语气风格撰写;\n2. 报告内容避免使用任何可能引起观众不适的描述或场景;\n3. 报告结构应包含引言、分析、结论三个部分;\n4. 最终输出格式为JSON。", "input": "{\n  \"title\": \"黑镜\",\n  \"actors\": [\n    \"托比•凯贝尔\"\n  ]\n}", "constraints_num": 4, "constraints_splits": ["1. 分析报告应以专业学术的语气风格撰写;", "2. 报告内容避免使用任何可能引起观众不适的描述或场景;", "3. 报告结构应包含引言、分析、结论三个部分;", "4. 最终输出格式为JSON。"], "levels2": ["语气风格约束", "价值观约束", "层次化结构约束", "输出格式约束"], "category": "trace1.0"} +{"id": "346", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以专业学术的语气风格回答历史事件的问题\n1. 回答中包含对“法国大革命的最后一位国王”相关的背景信息描述;\n2. 答案的字数要求在150字以内;\n3. 确保内容准确无误;\n4. 提供这位国王在位期间的主要事件以及为何被视为法国大革命中的关键人物;\n# Inputs:\n问题:“谁是法国大革命的最后一位国王?”\n"}], "type": "trace", "description": "以专业学术的语气风格回答历史事件的问题", "constraints": "1. 回答中包含对“法国大革命的最后一位国王”相关的背景信息描述;\n2. 答案的字数要求在150字以内;\n3. 确保内容准确无误;\n4. 提供这位国王在位期间的主要事件以及为何被视为法国大革命中的关键人物;", "input": "问题:“谁是法国大革命的最后一位国王?”", "constraints_num": 4, "constraints_splits": ["1. 回答中包含对“法国大革命的最后一位国王”相关的背景信息描述;", "2. 答案的字数要求在150字以内;", "3. 确保内容准确无误;", "4. 提供这位国王在位期间的主要事件以及为何被视为法国大革命中的关键人物;"], "levels2": ["包含约束", "数值约束", "价值观约束", "包含约束"], "category": "trace1.0"} +{"id": "347", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "根据输入的电影名称和评分,给出对这部电影的简短评论\n1. 评论应保持在100字以内;\n2. 采用正式而尊重的语气;\n3. 评论中必须包含对导演贝纳尔多·贝托鲁奇导演技巧的评价;\n4. 需要分析电影的历史真实性和艺术表现;\n# Inputs:\n电影名称:“末代皇帝”\n评分:8.5/10\n"}], "type": "trace", "description": "根据输入的电影名称和评分,给出对这部电影的简短评论", "constraints": "1. 评论应保持在100字以内;\n2. 采用正式而尊重的语气;\n3. 评论中必须包含对导演贝纳尔多·贝托鲁奇导演技巧的评价;\n4. 需要分析电影的历史真实性和艺术表现;", "input": "电影名称:“末代皇帝”\n评分:8.5/10", "constraints_num": 4, "constraints_splits": ["1. 评论应保持在100字以内;", "2. 采用正式而尊重的语气;", "3. 评论中必须包含对导演贝纳尔多·贝托鲁奇导演技巧的评价;", "4. 需要分析电影的历史真实性和艺术表现;"], "levels2": ["数值约束", "语气风格约束", "包含约束", "主题约束"], "category": "trace1.0"} +{"id": "348", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为这幅画创作一个标题\n1. 标题既富有创意又不超过10个字;\n2. 标题中必须包含“猫”和“捉迷藏”等元素;\n3. 标题风格幽默,能够吸引观众的注意力;\n4. 标题需反映猫几乎完全盖住了老鼠的情景;\n# Inputs:\n一张画了一只猫的画,猫正在抓一只老鼠,且它的身体几乎完全盖住了老鼠。\n"}], "type": "trace", "description": "为这幅画创作一个标题", "constraints": "1. 标题既富有创意又不超过10个字;\n2. 标题中必须包含“猫”和“捉迷藏”等元素;\n3. 标题风格幽默,能够吸引观众的注意力;\n4. 标题需反映猫几乎完全盖住了老鼠的情景;", "input": "一张画了一只猫的画,猫正在抓一只老鼠,且它的身体几乎完全盖住了老鼠。", "constraints_num": 4, "constraints_splits": ["1. 标题既富有创意又不超过10个字;", "2. 标题中必须包含“猫”和“捉迷藏”等元素;", "3. 标题风格幽默,能够吸引观众的注意力;", "4. 标题需反映猫几乎完全盖住了老鼠的情景;"], "levels2": ["数值约束", "包含约束", "语气风格约束", "包含约束"], "category": "trace1.0"} +{"id": "349", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "对给定的电影评论进行情感分类,判断其为正面的还是负面的,并使用Markdown格式输出结果。如果情感是正面的,用绿色字体显示 \"Positive\";如果情感是负面的,用红色字体显示 \"Negative\"。此外,输出时需包含一句解释评论情感倾向的理由。\n1. 输出结果使用Markdown格式;\n2. 如果情感是正面的,用绿色字体显示 \"Positive\";\n3. 如果情感是负面的,用红色字体显示 \"Negative\";\n4. 输出包含解释评论情感倾向的理由;\n# Inputs:\n这部电影太慢了,情节也很冗长。\n"}], "type": "trace", "description": "对给定的电影评论进行情感分类,判断其为正面的还是负面的,并使用Markdown格式输出结果。如果情感是正面的,用绿色字体显示 \"Positive\";如果情感是负面的,用红色字体显示 \"Negative\"。此外,输出时需包含一句解释评论情感倾向的理由。", "constraints": "1. 输出结果使用Markdown格式;\n2. 如果情感是正面的,用绿色字体显示 \"Positive\";\n3. 如果情感是负面的,用红色字体显示 \"Negative\";\n4. 输出包含解释评论情感倾向的理由;", "input": "这部电影太慢了,情节也很冗长。", "constraints_num": 4, "constraints_splits": ["1. 输出结果使用Markdown格式;", "2. 如果情感是正面的,用绿色字体显示 \"Positive\";", "3. 如果情感是负面的,用红色字体显示 \"Negative\";", "4. 输出包含解释评论情感倾向的理由;"], "levels2": ["输出格式约束", "文本样式约束", "文本样式约束", "包含约束"], "category": "trace1.0"} +{"id": "350", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为文章《如何从失业中找到收入来源》添加一个吸引人的标题和一个精炼的摘要\n1. 标题要求使用24号加粗字体,居中对齐;\n2. 摘要需控制在200字以内;\n3. 摘要中明确包含至少3种推荐的收入来源渠道;\n4. 摘要确保读者能快速了解文章的核心内容和价值;\n"}], "type": "trace", "description": "为文章《如何从失业中找到收入来源》添加一个吸引人的标题和一个精炼的摘要", "constraints": "1. 标题要求使用24号加粗字体,居中对齐;\n2. 摘要需控制在200字以内;\n3. 摘要中明确包含至少3种推荐的收入来源渠道;\n4. 摘要确保读者能快速了解文章的核心内容和价值;", "input": "NULL", "constraints_num": 4, "constraints_splits": ["1. 标题要求使用24号加粗字体,居中对齐;", "2. 摘要需控制在200字以内;", "3. 摘要中明确包含至少3种推荐的收入来源渠道;", "4. 摘要确保读者能快速了解文章的核心内容和价值;"], "levels2": ["文本样式约束", "数值约束", "包含约束", "文本样式约束"], "category": "trace1.0"} +{"id": "351", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "判断是哪个星座,并列出该星座至少3个主要特征。\n1. 描述篇幅不超过200字;\n2. 描述语气需严谨正式;\n3. 列出的特征需包括象征意义、性格特点以及与其它星座的相容性;\n4. 星座的日期在7月23日到8月22日之间,属于火象星座;\n# Inputs:\n这个星座是黄道第五十六个星座,象征着勇气和领导力。\n"}], "type": "trace", "description": "判断是哪个星座,并列出该星座至少3个主要特征。", "constraints": "1. 描述篇幅不超过200字;\n2. 描述语气需严谨正式;\n3. 列出的特征需包括象征意义、性格特点以及与其它星座的相容性;\n4. 星座的日期在7月23日到8月22日之间,属于火象星座;", "input": "这个星座是黄道第五十六个星座,象征着勇气和领导力。", "constraints_num": 4, "constraints_splits": ["1. 描述篇幅不超过200字;", "2. 描述语气需严谨正式;", "3. 列出的特征需包括象征意义、性格特点以及与其它星座的相容性;", "4. 星座的日期在7月23日到8月22日之间,属于火象星座;"], "levels2": ["数值约束", "语气风格约束", "包含约束", "数值约束"], "category": "trace1.0"} +{"id": "352", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为科技行业CEO准备一个仪表板,展示关键业务指标。\n1. 仪表板应包含收入、成本、利润、用户增长和客户满意度等关键业务指标;\n2. 整个陈述不超过150字;\n3. 仪表板以交互式HTML格式呈现,确保CEO能够一目了然地获取最新数据;\n4. 仪表板需提供过去一年的趋势分析;\n"}], "type": "trace", "description": "为科技行业CEO准备一个仪表板,展示关键业务指标。", "constraints": "1. 仪表板应包含收入、成本、利润、用户增长和客户满意度等关键业务指标;\n2. 整个陈述不超过150字;\n3. 仪表板以交互式HTML格式呈现,确保CEO能够一目了然地获取最新数据;\n4. 仪表板需提供过去一年的趋势分析;", "input": "NULL", "constraints_num": 4, "constraints_splits": ["1. 仪表板应包含收入、成本、利润、用户增长和客户满意度等关键业务指标;", "2. 整个陈述不超过150字;", "3. 仪表板以交互式HTML格式呈现,确保CEO能够一目了然地获取最新数据;", "4. 仪表板需提供过去一年的趋势分析;"], "levels2": ["包含约束", "数值约束", "输出格式约束", "主题约束"], "category": "trace1.0"} +{"id": "353", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "提供一段歌词\n1. 歌词长度在5到10句之间;\n2. 歌词中包含有显著的标志性语句;\n3. 提供一段简短的介绍,包括歌曲的创作背景和音乐风格;\n4. 引用至少一篇关于该歌曲的专业乐评或艺术家访谈,以增加信息的可靠性和深度;\n"}], "type": "trace", "description": "提供一段歌词", "constraints": "1. 歌词长度在5到10句之间;\n2. 歌词中包含有显著的标志性语句;\n3. 提供一段简短的介绍,包括歌曲的创作背景和音乐风格;\n4. 引用至少一篇关于该歌曲的专业乐评或艺术家访谈,以增加信息的可靠性和深度;", "input": "NULL", "constraints_num": 4, "constraints_splits": ["1. 歌词长度在5到10句之间;", "2. 歌词中包含有显著的标志性语句;", "3. 提供一段简短的介绍,包括歌曲的创作背景和音乐风格;", "4. 引用至少一篇关于该歌曲的专业乐评或艺术家访谈,以增加信息的可靠性和深度;"], "levels2": ["数值约束", "包含约束", "包含约束", "引用和参考约束"], "category": "trace1.0"} +{"id": "354", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "根据家庭烘焙爱好者的角色,为我详细描述如何准备一道美味的蛋糕,要求步骤清晰,以编号和列表的形式列出所需材料和步骤。\n1. 在材料列表中,需要明确指定蛋糕的基本成分,如面粉、糖、鸡蛋、黄油和发酵粉的准确分量;\n2. 在烘焙步骤中,包含预热烤箱、混合材料、倒入模具和烘烤的具体温度与时间;\n3. 应当包含蛋糕装饰和完成品展示的建议;\n4. 可以附上一张示例图片作为参考;\n"}], "type": "trace", "description": "根据家庭烘焙爱好者的角色,为我详细描述如何准备一道美味的蛋糕,要求步骤清晰,以编号和列表的形式列出所需材料和步骤。", "constraints": "1. 在材料列表中,需要明确指定蛋糕的基本成分,如面粉、糖、鸡蛋、黄油和发酵粉的准确分量;\n2. 在烘焙步骤中,包含预热烤箱、混合材料、倒入模具和烘烤的具体温度与时间;\n3. 应当包含蛋糕装饰和完成品展示的建议;\n4. 可以附上一张示例图片作为参考;", "input": "NULL", "constraints_num": 4, "constraints_splits": ["1. 在材料列表中,需要明确指定蛋糕的基本成分,如面粉、糖、鸡蛋、黄油和发酵粉的准确分量;", "2. 在烘焙步骤中,包含预热烤箱、混合材料、倒入模具和烘烤的具体温度与时间;", "3. 应当包含蛋糕装饰和完成品展示的建议;", "4. 可以附上一张示例图片作为参考;"], "levels2": ["数值约束", "包含约束", "包含约束", "输出格式约束"], "category": "trace1.0"} +{"id": "355", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "将给定的动物按照是否属于哺乳动物进行分类,并以JSON格式输出分类结果\n1. 输出结果使用JSON格式;\n2. 哺乳动物类别下至少包含6种动物;\n3. 非哺乳动物类别下至少包含4种动物;\n4. 输出的JSON结构应包括两个键,分别是“哺乳动物”和“非哺乳动物”,每个键下对应的值为一个数组,包含分类后的动物名称;\n# Inputs:\n熊猫、长颈鹿、北极狐、企鹅、老虎、海豚、袋鼠、斑马、孔雀、大象\n"}], "type": "trace", "description": "将给定的动物按照是否属于哺乳动物进行分类,并以JSON格式输出分类结果", "constraints": "1. 输出结果使用JSON格式;\n2. 哺乳动物类别下至少包含6种动物;\n3. 非哺乳动物类别下至少包含4种动物;\n4. 输出的JSON结构应包括两个键,分别是“哺乳动物”和“非哺乳动物”,每个键下对应的值为一个数组,包含分类后的动物名称;", "input": "熊猫、长颈鹿、北极狐、企鹅、老虎、海豚、袋鼠、斑马、孔雀、大象", "constraints_num": 4, "constraints_splits": ["1. 输出结果使用JSON格式;", "2. 哺乳动物类别下至少包含6种动物;", "3. 非哺乳动物类别下至少包含4种动物;", "4. 输出的JSON结构应包括两个键,分别是“哺乳动物”和“非哺乳动物”,每个键下对应的值为一个数组,包含分类后的动物名称;"], "levels2": ["输出格式约束", "数值约束", "数值约束", "输出格式约束"], "category": "trace1.0"} +{"id": "356", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "解释专业术语或概念\n1. 解释中应包含爱迪生效应的历史背景、物理原理及其应用领域;\n2. 解释应采用正式的科普文章风格;\n3. 使用清晰、准确的术语;\n4. 在关键概念和专有名词处使用下划线以强调;\n# Inputs:\n爱迪生效应是在研究灯丝材料时发现的,它描述了在真空中电子从热物体表面逸出的现象,这一发现对后来的电子管和半导体技术的发展起到了关键作用。\n"}], "type": "trace", "description": "解释专业术语或概念", "constraints": "1. 解释中应包含爱迪生效应的历史背景、物理原理及其应用领域;\n2. 解释应采用正式的科普文章风格;\n3. 使用清晰、准确的术语;\n4. 在关键概念和专有名词处使用下划线以强调;", "input": "爱迪生效应是在研究灯丝材料时发现的,它描述了在真空中电子从热物体表面逸出的现象,这一发现对后来的电子管和半导体技术的发展起到了关键作用。", "constraints_num": 4, "constraints_splits": ["1. 解释中应包含爱迪生效应的历史背景、物理原理及其应用领域;", "2. 解释应采用正式的科普文章风格;", "3. 使用清晰、准确的术语;", "4. 在关键概念和专有名词处使用下划线以强调;"], "levels2": ["包含约束", "语气风格约束", "语气风格约束", "文本样式约束"], "category": "trace1.0"} +{"id": "357", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "将给定的PDF文档转换为可编辑的Microsoft Word文档\n1. 转换后的文档应保持原文档的格式,包括但不限于字体、字号、段落对齐方式、列表和编号、图片和表格位置;\n2. 转换过程中,确保文本的语法结构不被破坏,如主谓一致、动词时态等;\n3. 输出的Word文档应以\"Converted_Document.docx\"为文件名;\n4. 转换完成后的Word文档需保存在与原始PDF文档相同的目录下;\n# Inputs:\ndocument.pdf\n"}], "type": "trace", "description": "将给定的PDF文档转换为可编辑的Microsoft Word文档", "constraints": "1. 转换后的文档应保持原文档的格式,包括但不限于字体、字号、段落对齐方式、列表和编号、图片和表格位置;\n2. 转换过程中,确保文本的语法结构不被破坏,如主谓一致、动词时态等;\n3. 输出的Word文档应以\"Converted_Document.docx\"为文件名;\n4. 转换完成后的Word文档需保存在与原始PDF文档相同的目录下;", "input": "document.pdf", "constraints_num": 4, "constraints_splits": ["1. 转换后的文档应保持原文档的格式,包括但不限于字体、字号、段落对齐方式、列表和编号、图片和表格位置;", "2. 转换过程中,确保文本的语法结构不被破坏,如主谓一致、动词时态等;", "3. 输出的Word文档应以\"Converted_Document.docx\"为文件名;", "4. 转换完成后的Word文档需保存在与原始PDF文档相同的目录下;"], "levels2": ["文本样式约束", "语法结构约束", "输出格式约束", "输出格式约束"], "category": "trace1.0"} +{"id": "358", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "将一组包含10个数字的数据集分为两组,使两组数字的总和最接近且总和的差值不超过5。结果以JSON格式返回,其中每一组数字作为数组存储。\n1. 数据集中的数字分为两组;\n2. 两组数字的总和最接近;\n3. 总和的差值不超过5;\n4. 结果以JSON格式返回,每一组数字作为数组存储;\n# Inputs:\n数据集为:18, 46, 51, 24, 6, 33, 11, 58, 66, 39。\n"}], "type": "trace", "description": "将一组包含10个数字的数据集分为两组,使两组数字的总和最接近且总和的差值不超过5。结果以JSON格式返回,其中每一组数字作为数组存储。", "constraints": "1. 数据集中的数字分为两组;\n2. 两组数字的总和最接近;\n3. 总和的差值不超过5;\n4. 结果以JSON格式返回,每一组数字作为数组存储;", "input": "数据集为:18, 46, 51, 24, 6, 33, 11, 58, 66, 39。", "constraints_num": 4, "constraints_splits": ["1. 数据集中的数字分为两组;", "2. 两组数字的总和最接近;", "3. 总和的差值不超过5;", "4. 结果以JSON格式返回,每一组数字作为数组存储;"], "levels2": ["数值约束", "数值约束", "数值约束", "输出格式约束"], "category": "trace1.0"} +{"id": "359", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "在本段中识别并详细解释所使用的技术类型和术语\n1. 确保描述清晰、准确,采用专业学术的语气风格,适合教育或技术背景的受众;\n2. 描述应包含至少3个关键概念或技术点;\n3. 段落字数应控制在150至200字之间;\n4. 在解释中需至少引用1篇相关领域的权威文章作为参考;\n# Inputs:\n设计思考是一种人本主义的创新方法论,它借鉴了设计师的技能、思维和方法,将人们的需求、技术的可能性和成功的要求结合在一起。在这段描述中,我们涉及了三个关键概念:“人本主义的创新”的概念强调了以人类为中心的设计理念,确保创新产品或服务能够满足人们的真实需求;“设计师技能”指的是设计思维中的核心技巧,如同理心、定义问题、构思、原型制作和测试等;“技术可能性和成功要求结合”则涉及将创新概念转化为实际产品或服务,必须考虑技术的限制和商业可行性。这些概念和技术点在设计思考方法中起着重要作用,它们相互作用,共同推动创新解决方案的形成和发展。参考文章:《Design Thinking: A Problem-Solving Approach for the 21st Century》(2015)。\n"}], "type": "trace", "description": "在本段中识别并详细解释所使用的技术类型和术语", "constraints": "1. 确保描述清晰、准确,采用专业学术的语气风格,适合教育或技术背景的受众;\n2. 描述应包含至少3个关键概念或技术点;\n3. 段落字数应控制在150至200字之间;\n4. 在解释中需至少引用1篇相关领域的权威文章作为参考;", "input": "设计思考是一种人本主义的创新方法论,它借鉴了设计师的技能、思维和方法,将人们的需求、技术的可能性和成功的要求结合在一起。在这段描述中,我们涉及了三个关键概念:“人本主义的创新”的概念强调了以人类为中心的设计理念,确保创新产品或服务能够满足人们的真实需求;“设计师技能”指的是设计思维中的核心技巧,如同理心、定义问题、构思、原型制作和测试等;“技术可能性和成功要求结合”则涉及将创新概念转化为实际产品或服务,必须考虑技术的限制和商业可行性。这些概念和技术点在设计思考方法中起着重要作用,它们相互作用,共同推动创新解决方案的形成和发展。参考文章:《Design Thinking: A Problem-Solving Approach for the 21st Century》(2015)。", "constraints_num": 4, "constraints_splits": ["1. 确保描述清晰、准确,采用专业学术的语气风格,适合教育或技术背景的受众;", "2. 描述应包含至少3个关键概念或技术点;", "3. 段落字数应控制在150至200字之间;", "4. 在解释中需至少引用1篇相关领域的权威文章作为参考;"], "levels2": ["语气风格约束", "数值约束", "数值约束", "引用和参考约束"], "category": "trace1.0"} +{"id": "360", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "给出至少5个关于健康饮食的实用提示,包括如何选择健康食品以及如何平衡饮食。\n1. 内容要求以列表形式呈现,每个提示需以数字编号;\n2. 每条提示信息不超过50字,以确保阅读的便捷性和内容的可操作性;\n3. 提示需采用专业但易于理解的语气;\n4. 所有文本需使用楷体,字号为12号,以增加阅读舒适度;\n"}], "type": "trace", "description": "给出至少5个关于健康饮食的实用提示,包括如何选择健康食品以及如何平衡饮食。", "constraints": "1. 内容要求以列表形式呈现,每个提示需以数字编号;\n2. 每条提示信息不超过50字,以确保阅读的便捷性和内容的可操作性;\n3. 提示需采用专业但易于理解的语气;\n4. 所有文本需使用楷体,字号为12号,以增加阅读舒适度;", "input": "NULL", "constraints_num": 4, "constraints_splits": ["1. 内容要求以列表形式呈现,每个提示需以数字编号;", "2. 每条提示信息不超过50字,以确保阅读的便捷性和内容的可操作性;", "3. 提示需采用专业但易于理解的语气;", "4. 所有文本需使用楷体,字号为12号,以增加阅读舒适度;"], "levels2": ["编号和列表约束", "数值约束", "语气风格约束", "文本样式约束"], "category": "trace1.0"} +{"id": "361", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "列出五个世界上最著名的艺术家,并为每一位艺术家提供一段100至200字的介绍\n1. 每位艺术家的介绍应包括他们的代表作品、艺术风格以及对艺术界的贡献;\n2. 在介绍每位艺术家时,需引用至少一篇权威艺术史文献作为参考;\n3. 介绍中艺术家的名字和作品名称使用斜体字标注;\n4. 每段介绍的字数应在100至200字之间;\n"}], "type": "trace", "description": "列出五个世界上最著名的艺术家,并为每一位艺术家提供一段100至200字的介绍", "constraints": "1. 每位艺术家的介绍应包括他们的代表作品、艺术风格以及对艺术界的贡献;\n2. 在介绍每位艺术家时,需引用至少一篇权威艺术史文献作为参考;\n3. 介绍中艺术家的名字和作品名称使用斜体字标注;\n4. 每段介绍的字数应在100至200字之间;", "input": "NULL", "constraints_num": 4, "constraints_splits": ["1. 每位艺术家的介绍应包括他们的代表作品、艺术风格以及对艺术界的贡献;", "2. 在介绍每位艺术家时,需引用至少一篇权威艺术史文献作为参考;", "3. 介绍中艺术家的名字和作品名称使用斜体字标注;", "4. 每段介绍的字数应在100至200字之间;"], "levels2": ["包含约束", "引用和参考约束", "文本样式约束", "数值约束"], "category": "trace1.0"} +{"id": "362", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "给出一篇新闻标题和一段简短的新闻报道\n1. 报道必须包含以下信息:买方公司为Apple,被购公司为Tesla,交易金额为600亿美元;\n2. 报道的字数限制在200字以内;\n3. 新闻标题不能超过20个汉字;\n4. 请以新闻报道标准格式输出,包括标题、导语和正文部分;\n"}], "type": "trace", "description": "给出一篇新闻标题和一段简短的新闻报道", "constraints": "1. 报道必须包含以下信息:买方公司为Apple,被购公司为Tesla,交易金额为600亿美元;\n2. 报道的字数限制在200字以内;\n3. 新闻标题不能超过20个汉字;\n4. 请以新闻报道标准格式输出,包括标题、导语和正文部分;", "input": "NULL", "constraints_num": 4, "constraints_splits": ["1. 报道必须包含以下信息:买方公司为Apple,被购公司为Tesla,交易金额为600亿美元;", "2. 报道的字数限制在200字以内;", "3. 新闻标题不能超过20个汉字;", "4. 请以新闻报道标准格式输出,包括标题、导语和正文部分;"], "levels2": ["包含约束", "数值约束", "数值约束", "输出格式约束"], "category": "trace1.0"} +{"id": "363", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "写一封自我介绍信\n1. 采用正式且礼貌的语气风格;\n2. 信件需明确包含个人基本信息、教育背景、工作经验、技能优势、以及未来职业规划和目标;\n3. 信件长度控制在400至600字之间,确保内容的精炼与完整性;\n4. 信件结尾应表达对阅读者的感谢,并期待进一步的交流机会;\n"}], "type": "trace", "description": "写一封自我介绍信", "constraints": "1. 采用正式且礼貌的语气风格;\n2. 信件需明确包含个人基本信息、教育背景、工作经验、技能优势、以及未来职业规划和目标;\n3. 信件长度控制在400至600字之间,确保内容的精炼与完整性;\n4. 信件结尾应表达对阅读者的感谢,并期待进一步的交流机会;", "input": "NULL", "constraints_num": 4, "constraints_splits": ["1. 采用正式且礼貌的语气风格;", "2. 信件需明确包含个人基本信息、教育背景、工作经验、技能优势、以及未来职业规划和目标;", "3. 信件长度控制在400至600字之间,确保内容的精炼与完整性;", "4. 信件结尾应表达对阅读者的感谢,并期待进一步的交流机会;"], "levels2": ["语气风格约束", "包含约束", "数值约束", "语气风格约束"], "category": "trace1.0"} +{"id": "364", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "推荐一首适合放松的古典音乐\n1. 音乐风格应为温柔的古典音乐,具有舒缓的旋律;\n2. 音乐能够帮助减轻一天的疲劳,营造宁静的休息氛围;\n3. 举例推荐音乐:路德维希·范·贝多芬的《月光奏鸣曲》第三乐章;\n4. 建议使用高质量的耳机或扬声器,以充分体验音乐的细节和深度,进一步提升放松效果;\n"}], "type": "trace", "description": "推荐一首适合放松的古典音乐", "constraints": "1. 音乐风格应为温柔的古典音乐,具有舒缓的旋律;\n2. 音乐能够帮助减轻一天的疲劳,营造宁静的休息氛围;\n3. 举例推荐音乐:路德维希·范·贝多芬的《月光奏鸣曲》第三乐章;\n4. 建议使用高质量的耳机或扬声器,以充分体验音乐的细节和深度,进一步提升放松效果;", "input": "NULL", "constraints_num": 4, "constraints_splits": ["1. 音乐风格应为温柔的古典音乐,具有舒缓的旋律;", "2. 音乐能够帮助减轻一天的疲劳,营造宁静的休息氛围;", "3. 举例推荐音乐:路德维希·范·贝多芬的《月光奏鸣曲》第三乐章;", "4. 建议使用高质量的耳机或扬声器,以充分体验音乐的细节和深度,进一步提升放松效果;"], "levels2": ["语气风格约束", "包含约束", "包含约束", "包含约束"], "category": "trace1.0"} +{"id": "365", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "设计一个函数,该函数使用Jaccard相似度算法来比较两个字符串的相似度,并返回它们的相似度分数,分数范围在0到1之间,其中1表示完全相同,0表示完全不同。函数输出结果应为JSON格式,包含\"similarity_score\"键和对应的数值结果。如果输入的字符串为空或者完全相同,函数应返回特定的错误消息。\n1. 函数接收两个字符串作为输入参数;\n2. 函数输出结果应为JSON格式,包含\"similarity_score\"键和对应的数值结果;\n3. 分数范围限定在0到1之间,其中1表示完全相同,0表示完全不同;\n4. 如果输入的字符串为空或者完全相同,函数应返回特定的错误消息;\n# Inputs:\n{\n  \"string1\": \"这是一个字符串\",\n  \"string2\": \"这也是一个字符串\"\n}\n\n或者(当字符串完全相同时):\n{\n  \"string1\": \"这是一个字符串\",\n  \"string2\": \"这是一个字符串\"\n}\n"}], "type": "trace", "description": "设计一个函数,该函数使用Jaccard相似度算法来比较两个字符串的相似度,并返回它们的相似度分数,分数范围在0到1之间,其中1表示完全相同,0表示完全不同。函数输出结果应为JSON格式,包含\"similarity_score\"键和对应的数值结果。如果输入的字符串为空或者完全相同,函数应返回特定的错误消息。", "constraints": "1. 函数接收两个字符串作为输入参数;\n2. 函数输出结果应为JSON格式,包含\"similarity_score\"键和对应的数值结果;\n3. 分数范围限定在0到1之间,其中1表示完全相同,0表示完全不同;\n4. 如果输入的字符串为空或者完全相同,函数应返回特定的错误消息;", "input": "{\n  \"string1\": \"这是一个字符串\",\n  \"string2\": \"这也是一个字符串\"\n}\n\n或者(当字符串完全相同时):\n{\n  \"string1\": \"这是一个字符串\",\n  \"string2\": \"这是一个字符串\"\n}", "constraints_num": 4, "constraints_splits": ["1. 函数接收两个字符串作为输入参数;", "2. 函数输出结果应为JSON格式,包含\"similarity_score\"键和对应的数值结果;", "3. 分数范围限定在0到1之间,其中1表示完全相同,0表示完全不同;", "4. 如果输入的字符串为空或者完全相同,函数应返回特定的错误消息;"], "levels2": ["语法结构约束", "输出格式约束", "数值约束", "排除约束"], "category": "trace1.0"} +{"id": "366", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "求解算术问题:计算给定周长和宽度的矩形长度。\n1. 解答中使用主谓宾的语法结构;\n2. 列出计算公式;\n3. 结果保留到小数点后两位;\n4. 解答中包含对计算过程的简要说明;\n# Inputs:\n矩形的周长是20厘米,宽度是3厘米。\n"}], "type": "trace", "description": "求解算术问题:计算给定周长和宽度的矩形长度。", "constraints": "1. 解答中使用主谓宾的语法结构;\n2. 列出计算公式;\n3. 结果保留到小数点后两位;\n4. 解答中包含对计算过程的简要说明;", "input": "矩形的周长是20厘米,宽度是3厘米。", "constraints_num": 4, "constraints_splits": ["1. 解答中使用主谓宾的语法结构;", "2. 列出计算公式;", "3. 结果保留到小数点后两位;", "4. 解答中包含对计算过程的简要说明;"], "levels2": ["语法结构约束", "输出格式约束", "数值约束", "包含约束"], "category": "trace1.0"} +{"id": "367", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "编辑给定的括号字符串,使其成为有效的括号序列\n1. 左右括号必须按正确的顺序配对;\n2. 序列中不允许有连续的相同括号超过2个;\n3. 需要在不超过10个字符的添加或删除操作内完成编辑;\n4. 编辑后的括号序列应保持原有字符的最大利用度;\n# Inputs:\n')()()('\n"}], "type": "trace", "description": "编辑给定的括号字符串,使其成为有效的括号序列", "constraints": "1. 左右括号必须按正确的顺序配对;\n2. 序列中不允许有连续的相同括号超过2个;\n3. 需要在不超过10个字符的添加或删除操作内完成编辑;\n4. 编辑后的括号序列应保持原有字符的最大利用度;", "input": "')()()('", "constraints_num": 4, "constraints_splits": ["1. 左右括号必须按正确的顺序配对;", "2. 序列中不允许有连续的相同括号超过2个;", "3. 需要在不超过10个字符的添加或删除操作内完成编辑;", "4. 编辑后的括号序列应保持原有字符的最大利用度;"], "levels2": ["语法结构约束", "数值约束", "数值约束", "语法结构约束"], "category": "trace1.0"} +{"id": "368", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "编辑一篇短文,转换为更加生动、有趣的版本,描述一个城市,采用幽默和夸张的语气风格,融入比喻和拟人等修辞手法,包含至少3个具体的历史事件,以及5处生动描绘传统建筑或博物馆的细节。\n1. 文章中需包含至少3个具体的历史事件;\n2. 文章中需至少5处生动描绘传统建筑或博物馆的细节;\n3. 文章长度控制在500字以内;\n4. 结尾处用一句令人回味无穷的俏皮话作为总结;\n"}], "type": "trace", "description": "编辑一篇短文,转换为更加生动、有趣的版本,描述一个城市,采用幽默和夸张的语气风格,融入比喻和拟人等修辞手法,包含至少3个具体的历史事件,以及5处生动描绘传统建筑或博物馆的细节。", "constraints": "1. 文章中需包含至少3个具体的历史事件;\n2. 文章中需至少5处生动描绘传统建筑或博物馆的细节;\n3. 文章长度控制在500字以内;\n4. 结尾处用一句令人回味无穷的俏皮话作为总结;", "input": "NULL", "constraints_num": 4, "constraints_splits": ["1. 文章中需包含至少3个具体的历史事件;", "2. 文章中需至少5处生动描绘传统建筑或博物馆的细节;", "3. 文章长度控制在500字以内;", "4. 结尾处用一句令人回味无穷的俏皮话作为总结;"], "levels2": ["包含约束", "数值约束", "数值约束", "语气风格约束"], "category": "trace1.0"} +{"id": "369", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "推荐一部电影,该电影应紧密围绕成长和自我发现的主题,具有文艺风格,时长在120分钟左右,包含至少一段关于主人公内心转变的关键情节,以及至少一个令人印象深刻的自我发现时刻。\n1. 电影主题应紧密围绕成长和自我发现;\n2. 电影风格应为文艺,能够通过细腻的叙事和情感表达,激发观众的共鸣和思考;\n3. 电影时长在120分钟左右;\n4. 电影内容中需包含至少一段关于主人公内心转变的关键情节,以及至少一个令人印象深刻的自我发现时刻;\n"}], "type": "trace", "description": "推荐一部电影,该电影应紧密围绕成长和自我发现的主题,具有文艺风格,时长在120分钟左右,包含至少一段关于主人公内心转变的关键情节,以及至少一个令人印象深刻的自我发现时刻。", "constraints": "1. 电影主题应紧密围绕成长和自我发现;\n2. 电影风格应为文艺,能够通过细腻的叙事和情感表达,激发观众的共鸣和思考;\n3. 电影时长在120分钟左右;\n4. 电影内容中需包含至少一段关于主人公内心转变的关键情节,以及至少一个令人印象深刻的自我发现时刻;", "input": "NULL", "constraints_num": 4, "constraints_splits": ["1. 电影主题应紧密围绕成长和自我发现;", "2. 电影风格应为文艺,能够通过细腻的叙事和情感表达,激发观众的共鸣和思考;", "3. 电影时长在120分钟左右;", "4. 电影内容中需包含至少一段关于主人公内心转变的关键情节,以及至少一个令人印象深刻的自我发现时刻;"], "levels2": ["主题约束", "语气风格约束", "数值约束", "包含约束"], "category": "trace1.0"} +{"id": "370", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一个销售陈述,目标受众是一位对经典肌肉车有情怀的中年男性。\n1. 陈述应采用热情且专业的语气风格;\n2. 强调福特野马作为美国肌肉车的标志性地位;\n3. 内容中需包含以下三个关键点:2019年福特野马的卓越性能,包括其强大的V8发动机;经典而动感的外观设计;购买该车将带来的驾驶乐趣和社群归属感;\n4. 陈述中应包含客户可以参与的福特车主活动,以增强销售陈述的吸引力;\n"}], "type": "trace", "description": "创建一个销售陈述,目标受众是一位对经典肌肉车有情怀的中年男性。", "constraints": "1. 陈述应采用热情且专业的语气风格;\n2. 强调福特野马作为美国肌肉车的标志性地位;\n3. 内容中需包含以下三个关键点:2019年福特野马的卓越性能,包括其强大的V8发动机;经典而动感的外观设计;购买该车将带来的驾驶乐趣和社群归属感;\n4. 陈述中应包含客户可以参与的福特车主活动,以增强销售陈述的吸引力;", "input": "NULL", "constraints_num": 4, "constraints_splits": ["1. 陈述应采用热情且专业的语气风格;", "2. 强调福特野马作为美国肌肉车的标志性地位;", "3. 内容中需包含以下三个关键点:2019年福特野马的卓越性能,包括其强大的V8发动机;经典而动感的外观设计;购买该车将带来的驾驶乐趣和社群归属感;", "4. 陈述中应包含客户可以参与的福特车主活动,以增强销售陈述的吸引力;"], "levels2": ["语气风格约束", "主题约束", "包含约束", "包含约束"], "category": "trace1.0"} +{"id": "371", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "将给定的食品列表分为健康食品和不健康食品两组,并以表格形式输出分类结果。\n1. 表格的第一列是食品名称;\n2. 第二列是分类结果(健康食品或不健康食品);\n3. 每组至少包含5种食品;\n4. 确保分类的准确性;\n# Inputs:\n牛肉、番茄、巧克力、胡萝卜、薯片、苹果、饼干、南瓜、炸鸡、橙子。\n"}], "type": "trace", "description": "将给定的食品列表分为健康食品和不健康食品两组,并以表格形式输出分类结果。", "constraints": "1. 表格的第一列是食品名称;\n2. 第二列是分类结果(健康食品或不健康食品);\n3. 每组至少包含5种食品;\n4. 确保分类的准确性;", "input": "牛肉、番茄、巧克力、胡萝卜、薯片、苹果、饼干、南瓜、炸鸡、橙子。", "constraints_num": 4, "constraints_splits": ["1. 表格的第一列是食品名称;", "2. 第二列是分类结果(健康食品或不健康食品);", "3. 每组至少包含5种食品;", "4. 确保分类的准确性;"], "levels2": ["表格背景信息约束", "主题约束", "数值约束", "价值观约束"], "category": "trace1.0"} +{"id": "372", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "将给定段落进行排版,以增强可读性\n1. 使用清晰的段落分割,每个段落最多包含3-4句话;\n2. 在段首使用首行缩进,缩进两个字符,增加段落间的视觉效果;\n3. 对段落中的关键词进行加粗处理,以突出重点;\n4. 使用Markdown格式进行排版;\n# Inputs:\n在一个夏天的夜晚,我独自一人坐在花园里,看着月亮。我意识到,这个世界上还有很多美好的事情,值得我们去探索和发现。\n"}], "type": "trace", "description": "将给定段落进行排版,以增强可读性", "constraints": "1. 使用清晰的段落分割,每个段落最多包含3-4句话;\n2. 在段首使用首行缩进,缩进两个字符,增加段落间的视觉效果;\n3. 对段落中的关键词进行加粗处理,以突出重点;\n4. 使用Markdown格式进行排版;", "input": "在一个夏天的夜晚,我独自一人坐在花园里,看着月亮。我意识到,这个世界上还有很多美好的事情,值得我们去探索和发现。", "constraints_num": 4, "constraints_splits": ["1. 使用清晰的段落分割,每个段落最多包含3-4句话;", "2. 在段首使用首行缩进,缩进两个字符,增加段落间的视觉效果;", "3. 对段落中的关键词进行加粗处理,以突出重点;", "4. 使用Markdown格式进行排版;"], "levels2": ["语法结构约束", "文本样式约束", "文本样式约束", "输出格式约束"], "category": "trace1.0"} +{"id": "373", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "编辑一篇科技文章的开头\n1. 风格要求文艺、引人入胜;\n2. 开头应包含一个与科技相关的引人深思的引言或问题;\n3. 字数控制在150字以内;\n4. 开头需与科技领域的最新趋势或热点问题相关联;\n"}], "type": "trace", "description": "编辑一篇科技文章的开头", "constraints": "1. 风格要求文艺、引人入胜;\n2. 开头应包含一个与科技相关的引人深思的引言或问题;\n3. 字数控制在150字以内;\n4. 开头需与科技领域的最新趋势或热点问题相关联;", "input": "NULL", "constraints_num": 4, "constraints_splits": ["1. 风格要求文艺、引人入胜;", "2. 开头应包含一个与科技相关的引人深思的引言或问题;", "3. 字数控制在150字以内;", "4. 开头需与科技领域的最新趋势或热点问题相关联;"], "levels2": ["语气风格约束", "模版约束", "数值约束", "主题约束"], "category": "trace1.0"} +{"id": "374", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "根据提供的两个日期,精确计算两个日期之间相差的天数,并将计算结果以JSON格式返回。\n1. 输出应包含“起始日期”、“终止日期”和“相差天数”三个字段;\n2. 日期格式应保持一致;\n3. 相差天数精确到整数;\n4. 结果必须以JSON格式返回。\n# Inputs:\n起始日期:“2021年7月1日”\n终止日期:“2021年8月31日”\n"}], "type": "trace", "description": "根据提供的两个日期,精确计算两个日期之间相差的天数,并将计算结果以JSON格式返回。", "constraints": "1. 输出应包含“起始日期”、“终止日期”和“相差天数”三个字段;\n2. 日期格式应保持一致;\n3. 相差天数精确到整数;\n4. 结果必须以JSON格式返回。", "input": "起始日期:“2021年7月1日”\n终止日期:“2021年8月31日”", "constraints_num": 4, "constraints_splits": ["1. 输出应包含“起始日期”、“终止日期”和“相差天数”三个字段;", "2. 日期格式应保持一致;", "3. 相差天数精确到整数;", "4. 结果必须以JSON格式返回。"], "levels2": ["输出格式约束", "输出格式约束", "数值约束", "输出格式约束"], "category": "trace1.0"} +{"id": "375", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "将日程安排转换为日历视图,并以iCalendar(.ics)格式输出。\n1. 每一项活动都包含事件名称、开始时间、结束时间及地点(如果适用);\n2. 对于持续时间超过1小时的活动,使用不同的颜色高亮显示;\n3. 日程安排应包含整个工作周(周一至周五);\n4. 明确标注工作日的常规工作时间(9:00 AM - 5:00 PM);\n# Inputs:\n- 周一上午9点到10点: 团队会议(会议室B)\n- 周二下午2点到3点: 电话面试(办公室)\n- 周二晚上7点到8点: 瑜伽课程(健身房)\n- 周三下午1点到3点: 与客户会面(客户办公室)\n- 周四全天: 工作日,常规工作时间9:00 AM - 5:00 PM\n- 周五上午10点到11点: 与同事起草报告(会议室C)\n"}], "type": "trace", "description": "将日程安排转换为日历视图,并以iCalendar(.ics)格式输出。", "constraints": "1. 每一项活动都包含事件名称、开始时间、结束时间及地点(如果适用);\n2. 对于持续时间超过1小时的活动,使用不同的颜色高亮显示;\n3. 日程安排应包含整个工作周(周一至周五);\n4. 明确标注工作日的常规工作时间(9:00 AM - 5:00 PM);", "input": "- 周一上午9点到10点: 团队会议(会议室B)\n- 周二下午2点到3点: 电话面试(办公室)\n- 周二晚上7点到8点: 瑜伽课程(健身房)\n- 周三下午1点到3点: 与客户会面(客户办公室)\n- 周四全天: 工作日,常规工作时间9:00 AM - 5:00 PM\n- 周五上午10点到11点: 与同事起草报告(会议室C)", "constraints_num": 4, "constraints_splits": ["1. 每一项活动都包含事件名称、开始时间、结束时间及地点(如果适用);", "2. 对于持续时间超过1小时的活动,使用不同的颜色高亮显示;", "3. 日程安排应包含整个工作周(周一至周五);", "4. 明确标注工作日的常规工作时间(9:00 AM - 5:00 PM);"], "levels2": ["输出格式约束", "文本样式约束", "包含约束", "输出格式约束"], "category": "trace1.0"} +{"id": "376", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "列出前五位获得诺贝尔物理学奖的科学家信息,并以JSON格式输出,同时包含一个简短的介绍段落解释诺贝尔物理学奖的设立背景。\n1. 信息必须准确无误;\n2. 每个条目的描述不超过50字;\n3. 输出格式为JSON;\n4. 包含诺贝尔物理学奖设立背景的简短介绍段落;\n"}], "type": "trace", "description": "列出前五位获得诺贝尔物理学奖的科学家信息,并以JSON格式输出,同时包含一个简短的介绍段落解释诺贝尔物理学奖的设立背景。", "constraints": "1. 信息必须准确无误;\n2. 每个条目的描述不超过50字;\n3. 输出格式为JSON;\n4. 包含诺贝尔物理学奖设立背景的简短介绍段落;", "input": "NULL", "constraints_num": 4, "constraints_splits": ["1. 信息必须准确无误;", "2. 每个条目的描述不超过50字;", "3. 输出格式为JSON;", "4. 包含诺贝尔物理学奖设立背景的简短介绍段落;"], "levels2": ["价值观约束", "数值约束", "输出格式约束", "包含约束"], "category": "trace1.0"} +{"id": "377", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一个6行的抒情诗歌\n1. 诗歌必须使用给定的六个单词:秋日,风,雨,思念,黄昏,寂寞;\n2. 诗歌采用AABBCC的押韵格式;\n3. 每行诗句的音节数应在7至9个之间;\n4. 诗歌主题为表达秋天的孤独与思念;\n# Inputs:\n秋日,风,雨,思念,黄昏,寂寞\n"}], "type": "trace", "description": "创建一个6行的抒情诗歌", "constraints": "1. 诗歌必须使用给定的六个单词:秋日,风,雨,思念,黄昏,寂寞;\n2. 诗歌采用AABBCC的押韵格式;\n3. 每行诗句的音节数应在7至9个之间;\n4. 诗歌主题为表达秋天的孤独与思念;", "input": "秋日,风,雨,思念,黄昏,寂寞", "constraints_num": 4, "constraints_splits": ["1. 诗歌必须使用给定的六个单词:秋日,风,雨,思念,黄昏,寂寞;", "2. 诗歌采用AABBCC的押韵格式;", "3. 每行诗句的音节数应在7至9个之间;", "4. 诗歌主题为表达秋天的孤独与思念;"], "levels2": ["包含约束", "语言特征约束", "数值约束", "主题约束"], "category": "trace1.0"} +{"id": "378", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为一篇关于公司ABC发布的全新智能手机的新闻稿撰写一个标题和摘要。\n1. 标题需吸引人且简洁,不超过10个单词;\n2. 摘要应包含产品名称、至少3个关键功能、开始接受预定的时间和正式发布的时间;\n3. 摘要的语气应为正式且客观,不加入任何个人情感或偏见,确保信息的准确性;\n4. 摘要字数限制在100到150字之间;\n"}], "type": "trace", "description": "为一篇关于公司ABC发布的全新智能手机的新闻稿撰写一个标题和摘要。", "constraints": "1. 标题需吸引人且简洁,不超过10个单词;\n2. 摘要应包含产品名称、至少3个关键功能、开始接受预定的时间和正式发布的时间;\n3. 摘要的语气应为正式且客观,不加入任何个人情感或偏见,确保信息的准确性;\n4. 摘要字数限制在100到150字之间;", "input": "NULL", "constraints_num": 4, "constraints_splits": ["1. 标题需吸引人且简洁,不超过10个单词;", "2. 摘要应包含产品名称、至少3个关键功能、开始接受预定的时间和正式发布的时间;", "3. 摘要的语气应为正式且客观,不加入任何个人情感或偏见,确保信息的准确性;", "4. 摘要字数限制在100到150字之间;"], "levels2": ["文本样式约束", "包含约束", "语气风格约束", "数值约束"], "category": "trace1.0"} +{"id": "379", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "编辑原短文,提升其语法、流畅性和连贯性,达到专业学术的语气风格;明确指出推荐的锻炼类型、频率及饮食平衡的具体建议;使用Markdown格式展示编辑后的短文,确保每个段落之前有一行空行以增强可读性和结构清晰度。\n1. 编辑后的短文应使用专业和正式的语气,符合学术出版标准;\n2. 明确指出推荐的锻炼类型(如快走、慢跑、游泳等)和频率(如每周几次,每次多少时间);\n3. 提供具体的饮食平衡建议(如推荐的每日蔬菜和水果摄入量);\n4. 编辑后的短文使用Markdown格式,每个段落之前有一行空行;\n# Inputs:\n为了保持身体健康,我们应当积极参与体能锻炼。每天坚持进行至少10分钟的有氧运动,如慢跑,长期坚持一个月后,你会体验到显著的健康提升。另外,维持均衡饮食至关重要,增加水果和蔬菜的摄入量是必不可少的。\n"}], "type": "trace", "description": "编辑原短文,提升其语法、流畅性和连贯性,达到专业学术的语气风格;明确指出推荐的锻炼类型、频率及饮食平衡的具体建议;使用Markdown格式展示编辑后的短文,确保每个段落之前有一行空行以增强可读性和结构清晰度。", "constraints": "1. 编辑后的短文应使用专业和正式的语气,符合学术出版标准;\n2. 明确指出推荐的锻炼类型(如快走、慢跑、游泳等)和频率(如每周几次,每次多少时间);\n3. 提供具体的饮食平衡建议(如推荐的每日蔬菜和水果摄入量);\n4. 编辑后的短文使用Markdown格式,每个段落之前有一行空行;", "input": "为了保持身体健康,我们应当积极参与体能锻炼。每天坚持进行至少10分钟的有氧运动,如慢跑,长期坚持一个月后,你会体验到显著的健康提升。另外,维持均衡饮食至关重要,增加水果和蔬菜的摄入量是必不可少的。", "constraints_num": 4, "constraints_splits": ["1. 编辑后的短文应使用专业和正式的语气,符合学术出版标准;", "2. 明确指出推荐的锻炼类型(如快走、慢跑、游泳等)和频率(如每周几次,每次多少时间);", "3. 提供具体的饮食平衡建议(如推荐的每日蔬菜和水果摄入量);", "4. 编辑后的短文使用Markdown格式,每个段落之前有一行空行;"], "levels2": ["语气风格约束", "包含约束", "包含约束", "输出格式约束"], "category": "trace1.0"} +{"id": "380", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "解释专业术语“区块链”及其在现代商业生态系统中的重要性\n1. 内容中需包含区块链的定义、三个关键特性(去中心化、可靠性和安全性)及其在金融、医疗、能源等行业的具体应用案例;\n2. 格式上,要求使用Markdown格式,包括标题、子标题和引用链接;\n3. 采用严谨正式的学术语气,确保内容的专业性和准确性;\n4. 目标受众为具有一定技术背景的商业分析师,解释时需兼顾深度与可读性;\n"}], "type": "trace", "description": "解释专业术语“区块链”及其在现代商业生态系统中的重要性", "constraints": "1. 内容中需包含区块链的定义、三个关键特性(去中心化、可靠性和安全性)及其在金融、医疗、能源等行业的具体应用案例;\n2. 格式上,要求使用Markdown格式,包括标题、子标题和引用链接;\n3. 采用严谨正式的学术语气,确保内容的专业性和准确性;\n4. 目标受众为具有一定技术背景的商业分析师,解释时需兼顾深度与可读性;", "input": "NULL", "constraints_num": 4, "constraints_splits": ["1. 内容中需包含区块链的定义、三个关键特性(去中心化、可靠性和安全性)及其在金融、医疗、能源等行业的具体应用案例;", "2. 格式上,要求使用Markdown格式,包括标题、子标题和引用链接;", "3. 采用严谨正式的学术语气,确保内容的专业性和准确性;", "4. 目标受众为具有一定技术背景的商业分析师,解释时需兼顾深度与可读性;"], "levels2": ["包含约束", "输出格式约束", "语气风格约束", "受众目标约束"], "category": "trace1.0"} +{"id": "381", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以专业学术的语气风格,详细解释为什么海滩是动物重要的栖息地。\n1. 解释中必须包含以下三个方面的内容:海滩作为繁殖和孵化地的重要性、作为食物链关键环节的作用、以及为迁徙动物提供栖息地的功能;\n2. 解释保持在至少500字的范围内,以提供充分的科学依据和详细的生态描述;\n"}], "type": "trace", "description": "以专业学术的语气风格,详细解释为什么海滩是动物重要的栖息地。", "constraints": "1. 解释中必须包含以下三个方面的内容:海滩作为繁殖和孵化地的重要性、作为食物链关键环节的作用、以及为迁徙动物提供栖息地的功能;\n2. 解释保持在至少500字的范围内,以提供充分的科学依据和详细的生态描述;", "input": "NULL", "constraints_num": 2, "constraints_splits": ["1. 解释中必须包含以下三个方面的内容:海滩作为繁殖和孵化地的重要性、作为食物链关键环节的作用、以及为迁徙动物提供栖息地的功能;", "2. 解释保持在至少500字的范围内,以提供充分的科学依据和详细的生态描述;"], "levels2": ["包含约束", "数值约束"], "category": "trace1.0"} +{"id": "382", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "将一段文本分词并按照词频统计出现次数\n1. 输出的格式为JSON;\n2. 只统计出现次数超过1次的词汇;\n# Inputs:\n一段文本:“时光飞逝,转眼间又到了新年。2022年是一个金猪年,也是北京冬奥会的年份”。\n"}], "type": "trace", "description": "将一段文本分词并按照词频统计出现次数", "constraints": "1. 输出的格式为JSON;\n2. 只统计出现次数超过1次的词汇;", "input": "一段文本:“时光飞逝,转眼间又到了新年。2022年是一个金猪年,也是北京冬奥会的年份”。", "constraints_num": 2, "constraints_splits": ["1. 输出的格式为JSON;", "2. 只统计出现次数超过1次的词汇;"], "levels2": ["输出格式约束", "数值约束"], "category": "trace1.0"} +{"id": "383", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "按照JSON格式输出电影\"肖申克的救赎\"的IMDB分数\n1. 分数需精确到小数点后两位;\n2. 需附上IMDB官方网站的链接作为分数来源的引用;\n"}], "type": "trace", "description": "按照JSON格式输出电影\"肖申克的救赎\"的IMDB分数", "constraints": "1. 分数需精确到小数点后两位;\n2. 需附上IMDB官方网站的链接作为分数来源的引用;", "input": "NULL", "constraints_num": 2, "constraints_splits": ["1. 分数需精确到小数点后两位;", "2. 需附上IMDB官方网站的链接作为分数来源的引用;"], "levels2": ["数值约束", "引用和参考约束"], "category": "trace1.0"} +{"id": "384", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "在给定的电影名称中找到与它相关的演员及其角色,并以表格形式展示,表格中应包含演员姓名、角色名称、角色简介三个字段。\n1. 至少列出5对演员与角色的对应关系;\n2. 展示的信息应包含演员姓名、角色名称、角色简介三个字段;\n# Inputs:\n电影名称:泰坦尼克号\n\n| 演员姓名 | 角色名称 | 角色简介 |\n| --- | --- | --- |\n| Leonardo DiCaprio | Jack Dawson | 一位穷困艺术家,与Rose在泰坦尼克号上相遇并坠入爱河。 |\n| Kate Winslet | Rose DeWitt Bukater | 一位来自上流社会的年轻女子,与Jack在泰坦尼克号上陷入爱河。 |\n| Billy Zane | Caledon Nathan Hockley | Rose的未婚夫,一个自大且自以为是的富商。 |\n| Kathy Bates | Molly Brown | 一位被称为“不沉的”Molly Brown,幸存者之一,富有且善良。 |\n| Frances Fisher | Ruth DeWitt Bukater | Rose的母亲,一个严格且势利的女人,希望女儿嫁给Caledon以确保家族的财富。 |\n"}], "type": "trace", "description": "在给定的电影名称中找到与它相关的演员及其角色,并以表格形式展示,表格中应包含演员姓名、角色名称、角色简介三个字段。", "constraints": "1. 至少列出5对演员与角色的对应关系;\n2. 展示的信息应包含演员姓名、角色名称、角色简介三个字段;", "input": "电影名称:泰坦尼克号\n\n| 演员姓名 | 角色名称 | 角色简介 |\n| --- | --- | --- |\n| Leonardo DiCaprio | Jack Dawson | 一位穷困艺术家,与Rose在泰坦尼克号上相遇并坠入爱河。 |\n| Kate Winslet | Rose DeWitt Bukater | 一位来自上流社会的年轻女子,与Jack在泰坦尼克号上陷入爱河。 |\n| Billy Zane | Caledon Nathan Hockley | Rose的未婚夫,一个自大且自以为是的富商。 |\n| Kathy Bates | Molly Brown | 一位被称为“不沉的”Molly Brown,幸存者之一,富有且善良。 |\n| Frances Fisher | Ruth DeWitt Bukater | Rose的母亲,一个严格且势利的女人,希望女儿嫁给Caledon以确保家族的财富。 |", "constraints_num": 2, "constraints_splits": ["1. 至少列出5对演员与角色的对应关系;", "2. 展示的信息应包含演员姓名、角色名称、角色简介三个字段;"], "levels2": ["数值约束", "包含约束"], "category": "trace1.0"} +{"id": "385", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "提供文本摘要\n1. 摘要应控制在50字以内;\n2. 输出格式为JSON,包含\"summary\"字段;\n# Inputs:\n《哈利·波特与魔法石》是J.K.罗琳创作的首部哈利·波特系列小说,讲述孤儿哈利·波特发现自己的巫师身份,开始神奇冒险,全球销量超5亿册,被译为68种语言。\n"}], "type": "trace", "description": "提供文本摘要", "constraints": "1. 摘要应控制在50字以内;\n2. 输出格式为JSON,包含\"summary\"字段;", "input": "《哈利·波特与魔法石》是J.K.罗琳创作的首部哈利·波特系列小说,讲述孤儿哈利·波特发现自己的巫师身份,开始神奇冒险,全球销量超5亿册,被译为68种语言。", "constraints_num": 2, "constraints_splits": ["1. 摘要应控制在50字以内;", "2. 输出格式为JSON,包含\"summary\"字段;"], "levels2": ["数值约束", "输出格式约束"], "category": "trace1.0"} +{"id": "386", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "给定一组数值,使用JSON格式输出其中的最大值,以及该数值在序列中的索引位置。\n1. 数值序列长度应在5到20之间;\n2. 输出的JSON结构必须包含\"max_value\"和\"index\"两个键;\n# Inputs:\n数值序列:3, 8, 12, 6, 2, 9, 4\n"}], "type": "trace", "description": "给定一组数值,使用JSON格式输出其中的最大值,以及该数值在序列中的索引位置。", "constraints": "1. 数值序列长度应在5到20之间;\n2. 输出的JSON结构必须包含\"max_value\"和\"index\"两个键;", "input": "数值序列:3, 8, 12, 6, 2, 9, 4", "constraints_num": 2, "constraints_splits": ["1. 数值序列长度应在5到20之间;", "2. 输出的JSON结构必须包含\"max_value\"和\"index\"两个键;"], "levels2": ["数值约束", "输出格式约束"], "category": "trace1.0"} +{"id": "387", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "根据给定的两个正整数,计算并以 JSON 格式返回它们的最大公约数 (GCD) 和最小公倍数 (LCM)。\n1. 给定的两个数应在 1 到 10000 的范围内;\n2. 计算结果应包含 \"gcd\" 和 \"lcm\" 键,分别表示最大公约数和最小公倍数的值;\n# Inputs:\n{ \"num1\": 28, \"num2\": 84 }\n"}], "type": "trace", "description": "根据给定的两个正整数,计算并以 JSON 格式返回它们的最大公约数 (GCD) 和最小公倍数 (LCM)。", "constraints": "1. 给定的两个数应在 1 到 10000 的范围内;\n2. 计算结果应包含 \"gcd\" 和 \"lcm\" 键,分别表示最大公约数和最小公倍数的值;", "input": "{ \"num1\": 28, \"num2\": 84 }", "constraints_num": 2, "constraints_splits": ["1. 给定的两个数应在 1 到 10000 的范围内;", "2. 计算结果应包含 \"gcd\" 和 \"lcm\" 键,分别表示最大公约数和最小公倍数的值;"], "levels2": ["数值约束", "输出格式约束"], "category": "trace1.0"} +{"id": "388", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以一位历史教师的角色,解释伊里亚·伯克利对哲学领域的贡献,详细描述他关于观念主义与真实主义哲学发展的理论,并提供至少两个具体案例支持解释。\n1. 解释的字数应在300至500字之间;\n2. 以严谨正式的语气进行阐述;\n"}], "type": "trace", "description": "以一位历史教师的角色,解释伊里亚·伯克利对哲学领域的贡献,详细描述他关于观念主义与真实主义哲学发展的理论,并提供至少两个具体案例支持解释。", "constraints": "1. 解释的字数应在300至500字之间;\n2. 以严谨正式的语气进行阐述;", "input": "NULL", "constraints_num": 2, "constraints_splits": ["1. 解释的字数应在300至500字之间;", "2. 以严谨正式的语气进行阐述;"], "levels2": ["数值约束", "语气风格约束"], "category": "trace1.0"} +{"id": "389", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "给定一段文本,将所有的名词和动词用括号括起来,并以JSON格式返回结果。\n1. 确保括号的使用遵循正确的语法规则,避免括号嵌套错误或遗漏;\n2. 返回结果应包含\"text\"、\"grammar\"、\"format\"三个字段,其中\"text\"字段为处理后的文本,\"grammar\"字段表示语法状态,\"format\"字段表示返回格式。\n# Inputs:\n例如,对于文本:\"约翰·史密斯(John Smith)是一位(是)杰出(杰出)的(的)科学家(科学家),他(他)在(在)数学(数学)和(和)物理学(物理学)领域(领域)都(都)取得(取得)了(了)很好(很好)的(的)成果(成果)。他(他)获得(获得)了(了)多个(多个)国际(国际)奖项(奖项),也(也)是(是)许多(许多)学术(学术)组织(组织)的(的)成员(成员)。\"\n"}], "type": "trace", "description": "给定一段文本,将所有的名词和动词用括号括起来,并以JSON格式返回结果。", "constraints": "1. 确保括号的使用遵循正确的语法规则,避免括号嵌套错误或遗漏;\n2. 返回结果应包含\"text\"、\"grammar\"、\"format\"三个字段,其中\"text\"字段为处理后的文本,\"grammar\"字段表示语法状态,\"format\"字段表示返回格式。", "input": "例如,对于文本:\"约翰·史密斯(John Smith)是一位(是)杰出(杰出)的(的)科学家(科学家),他(他)在(在)数学(数学)和(和)物理学(物理学)领域(领域)都(都)取得(取得)了(了)很好(很好)的(的)成果(成果)。他(他)获得(获得)了(了)多个(多个)国际(国际)奖项(奖项),也(也)是(是)许多(许多)学术(学术)组织(组织)的(的)成员(成员)。\"", "constraints_num": 2, "constraints_splits": ["1. 确保括号的使用遵循正确的语法规则,避免括号嵌套错误或遗漏;", "2. 返回结果应包含\"text\"、\"grammar\"、\"format\"三个字段,其中\"text\"字段为处理后的文本,\"grammar\"字段表示语法状态,\"format\"字段表示返回格式。"], "levels2": ["语法结构约束", "输出格式约束"], "category": "trace1.0"} +{"id": "390", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "对给定的一组数值进行统计分析,输出结果包括平均值、中位数和标准差,并以JSON格式呈现。\n1. 输出的JSON中,每个统计量的值需保留小数点后两位;\n2. 如果计算结果为整数,对于平均值与中位数,需用粗体表示;\n# Inputs:\n[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]\n"}], "type": "trace", "description": "对给定的一组数值进行统计分析,输出结果包括平均值、中位数和标准差,并以JSON格式呈现。", "constraints": "1. 输出的JSON中,每个统计量的值需保留小数点后两位;\n2. 如果计算结果为整数,对于平均值与中位数,需用粗体表示;", "input": "[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]", "constraints_num": 2, "constraints_splits": ["1. 输出的JSON中,每个统计量的值需保留小数点后两位;", "2. 如果计算结果为整数,对于平均值与中位数,需用粗体表示;"], "levels2": ["输出格式约束", "文本样式约束"], "category": "trace1.0"} +{"id": "391", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创作一首情感丰富、风格为文艺浪漫的短诗,主题限定为秋天的黄昏。\n1. 短诗中必须包含以下词汇:枯萎、落叶、寂静、思念、回忆;\n2. 诗歌应分为四节,每节四行,每行不超过十个词,以营造出秋天黄昏时分的深沉与美丽。\n"}], "type": "trace", "description": "创作一首情感丰富、风格为文艺浪漫的短诗,主题限定为秋天的黄昏。", "constraints": "1. 短诗中必须包含以下词汇:枯萎、落叶、寂静、思念、回忆;\n2. 诗歌应分为四节,每节四行,每行不超过十个词,以营造出秋天黄昏时分的深沉与美丽。", "input": "NULL", "constraints_num": 2, "constraints_splits": ["1. 短诗中必须包含以下词汇:枯萎、落叶、寂静、思念、回忆;", "2. 诗歌应分为四节,每节四行,每行不超过十个词,以营造出秋天黄昏时分的深沉与美丽。"], "levels2": ["包含约束", "数值约束"], "category": "trace1.0"} +{"id": "392", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "将给定的一组数字分类成素数和合数,并以JSON格式输出结果。\n1. 输出的JSON对象应包含两个字段:\"primes\"用于存放素数,\"composites\"用于存放合数;\n2. 确保每个分类下的数字按照从小到大的顺序排列。\n# Inputs:\n28, 19, 17, 8, 23, 21, 31\n"}], "type": "trace", "description": "将给定的一组数字分类成素数和合数,并以JSON格式输出结果。", "constraints": "1. 输出的JSON对象应包含两个字段:\"primes\"用于存放素数,\"composites\"用于存放合数;\n2. 确保每个分类下的数字按照从小到大的顺序排列。", "input": "28, 19, 17, 8, 23, 21, 31", "constraints_num": 2, "constraints_splits": ["1. 输出的JSON对象应包含两个字段:\"primes\"用于存放素数,\"composites\"用于存放合数;", "2. 确保每个分类下的数字按照从小到大的顺序排列。"], "levels2": ["输出格式约束", "数值约束"], "category": "trace1.0"} +{"id": "393", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "给定一组数字,返回这些数字中的最大值、最小值以及它们的平均值,输出结果以JSON格式呈现。\n1. 给定数字的组数至少为5个,最多为20个;\n2. 输出结果应以JSON格式呈现,其中键名为\"max\"、\"min\"和\"average\"分别对应最大值、最小值和平均值;\n# Inputs:\n一组数字(例如:6, 10, 15, 20, 25, 30)\n"}], "type": "trace", "description": "给定一组数字,返回这些数字中的最大值、最小值以及它们的平均值,输出结果以JSON格式呈现。", "constraints": "1. 给定数字的组数至少为5个,最多为20个;\n2. 输出结果应以JSON格式呈现,其中键名为\"max\"、\"min\"和\"average\"分别对应最大值、最小值和平均值;", "input": "一组数字(例如:6, 10, 15, 20, 25, 30)", "constraints_num": 2, "constraints_splits": ["1. 给定数字的组数至少为5个,最多为20个;", "2. 输出结果应以JSON格式呈现,其中键名为\"max\"、\"min\"和\"average\"分别对应最大值、最小值和平均值;"], "levels2": ["数值约束", "输出格式约束"], "category": "trace1.0"} +{"id": "394", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "判断一段文本中的情感是积极、消极还是中性,并以JSON格式返回结果。\n1. 分析情感时,确保使用积极、客观的语气风格进行描述;\n2. JSON结果中需包含对文本情感倾向的简要解释;\n# Inputs:\n我昨天赢了很多钱,倍感兴奋。\n"}], "type": "trace", "description": "判断一段文本中的情感是积极、消极还是中性,并以JSON格式返回结果。", "constraints": "1. 分析情感时,确保使用积极、客观的语气风格进行描述;\n2. JSON结果中需包含对文本情感倾向的简要解释;", "input": "我昨天赢了很多钱,倍感兴奋。", "constraints_num": 2, "constraints_splits": ["1. 分析情感时,确保使用积极、客观的语气风格进行描述;", "2. JSON结果中需包含对文本情感倾向的简要解释;"], "levels2": ["语气风格约束", "输出格式约束"], "category": "trace1.0"} +{"id": "395", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "计算给定的两个数字之间(包括这两个数字)的所有整数的和,并以JSON格式返回结果。\n1. 输出结果必须包含“起始数字”、“结束数字”和“整数和”三个字段;\n2. 输出结果的格式必须是JSON。\n# Inputs:\n第一个数字:3,第二个数字:8。示例输出应为{\"起始数字\": 3, \"结束数字\": 8, \"整数和\": 33}。\n"}], "type": "trace", "description": "计算给定的两个数字之间(包括这两个数字)的所有整数的和,并以JSON格式返回结果。", "constraints": "1. 输出结果必须包含“起始数字”、“结束数字”和“整数和”三个字段;\n2. 输出结果的格式必须是JSON。", "input": "第一个数字:3,第二个数字:8。示例输出应为{\"起始数字\": 3, \"结束数字\": 8, \"整数和\": 33}。", "constraints_num": 2, "constraints_splits": ["1. 输出结果必须包含“起始数字”、“结束数字”和“整数和”三个字段;", "2. 输出结果的格式必须是JSON。"], "levels2": ["输出格式约束", "输出格式约束"], "category": "trace1.0"} +{"id": "396", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "在给定的文本中,使用正则表达式或文本处理工具,将所有出现的人名替换为“XXX”。\n1. 确保文本中没有人名被遗漏;\n2. 提供修改前后的文本对比,以便检查替换是否正确。\n# Inputs:\n在哈利波特中,哈利,赫敏和罗恩是好朋友。\n"}], "type": "trace", "description": "在给定的文本中,使用正则表达式或文本处理工具,将所有出现的人名替换为“XXX”。", "constraints": "1. 确保文本中没有人名被遗漏;\n2. 提供修改前后的文本对比,以便检查替换是否正确。", "input": "在哈利波特中,哈利,赫敏和罗恩是好朋友。", "constraints_num": 2, "constraints_splits": ["1. 确保文本中没有人名被遗漏;", "2. 提供修改前后的文本对比,以便检查替换是否正确。"], "levels2": ["包含约束", "输出格式约束"], "category": "trace1.0"} +{"id": "397", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "使用生动的文学风格,详细描绘一个人物的外貌特征,包含面部特征、身体形态、穿着细节及随身携带物品的描述。\n1. 描述时需包含人物的发色、眼睛颜色、面部轮廓,以及大衣的款式、帽子的材质和红色运动袋的大小与设计;\n2. 字数限制在200字以内;\n"}], "type": "trace", "description": "使用生动的文学风格,详细描绘一个人物的外貌特征,包含面部特征、身体形态、穿着细节及随身携带物品的描述。", "constraints": "1. 描述时需包含人物的发色、眼睛颜色、面部轮廓,以及大衣的款式、帽子的材质和红色运动袋的大小与设计;\n2. 字数限制在200字以内;", "input": "NULL", "constraints_num": 2, "constraints_splits": ["1. 描述时需包含人物的发色、眼睛颜色、面部轮廓,以及大衣的款式、帽子的材质和红色运动袋的大小与设计;", "2. 字数限制在200字以内;"], "levels2": ["包含约束", "数值约束"], "category": "trace1.0"} +{"id": "398", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "将日期格式从“年-月-日”转换为“月/日/年”\n1. 每个日期转换后的结果应占据一行;\n2. 不同的日期结果应用分号分隔;\n# Inputs:\n2022-08-31, 2023-01-05, 2021-12-25, 2020-11-11, 2019-09-02\n"}], "type": "trace", "description": "将日期格式从“年-月-日”转换为“月/日/年”", "constraints": "1. 每个日期转换后的结果应占据一行;\n2. 不同的日期结果应用分号分隔;", "input": "2022-08-31, 2023-01-05, 2021-12-25, 2020-11-11, 2019-09-02", "constraints_num": 2, "constraints_splits": ["1. 每个日期转换后的结果应占据一行;", "2. 不同的日期结果应用分号分隔;"], "levels2": ["文本样式约束", "文本样式约束"], "category": "trace1.0"} +{"id": "399", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "根据给定的40个单词,将它们分为四个有意义的主题类别中,每个类别包含10个单词,并以JSON格式提交结果。\n1. 确保每个主题类别下的单词具有相关性;\n2. 结果必须以JSON格式提交;\n# Inputs:\n猫,狗,兔子,老虎,运动,足球,篮球,棒球,医生,护士,医院,学校,教育,笔,纸,书,老师,学生,电脑,键盘,水,饮料,蔬菜,肉类,水果,蛋糕,甜点,餐厅,咖啡店,天气,气温,云,太阳,雨,飓风,秋天,春天,冬天,夏天。\n"}], "type": "trace", "description": "根据给定的40个单词,将它们分为四个有意义的主题类别中,每个类别包含10个单词,并以JSON格式提交结果。", "constraints": "1. 确保每个主题类别下的单词具有相关性;\n2. 结果必须以JSON格式提交;", "input": "猫,狗,兔子,老虎,运动,足球,篮球,棒球,医生,护士,医院,学校,教育,笔,纸,书,老师,学生,电脑,键盘,水,饮料,蔬菜,肉类,水果,蛋糕,甜点,餐厅,咖啡店,天气,气温,云,太阳,雨,飓风,秋天,春天,冬天,夏天。", "constraints_num": 2, "constraints_splits": ["1. 确保每个主题类别下的单词具有相关性;", "2. 结果必须以JSON格式提交;"], "levels2": ["主题约束", "输出格式约束"], "category": "trace1.0"} +{"id": "400", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为一篇关于“如何提高学习效率”的演讲稿提供一个吸引人的题目\n1. 题目使用大写;\n2. 题目中至少包含一个能激发听众兴趣的关键词,如“技巧”、“秘籍”或“策略”;\n"}], "type": "trace", "description": "为一篇关于“如何提高学习效率”的演讲稿提供一个吸引人的题目", "constraints": "1. 题目使用大写;\n2. 题目中至少包含一个能激发听众兴趣的关键词,如“技巧”、“秘籍”或“策略”;", "input": "NULL", "constraints_num": 2, "constraints_splits": ["1. 题目使用大写;", "2. 题目中至少包含一个能激发听众兴趣的关键词,如“技巧”、“秘籍”或“策略”;"], "levels2": ["文本样式约束", "包含约束"], "category": "trace1.0"} +{"id": "401", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "根据给定的中文文本,提取其中所有的名词和动词,并将它们分别组织成两个有序列表。输出应采用JSON格式,其中\"nouns\"和\"verbs\"为键,对应的名词列表和动词列表为值。\n1. 名词列表应以名词的首次出现顺序排列,动词列表也应遵循相同的顺序。\n2. 输出必须采用JSON格式。\n# Inputs:\n“检察官指控被告人强奸了一名妇女,并且在作案后对她进行了殴打。”\n"}], "type": "trace", "description": "根据给定的中文文本,提取其中所有的名词和动词,并将它们分别组织成两个有序列表。输出应采用JSON格式,其中\"nouns\"和\"verbs\"为键,对应的名词列表和动词列表为值。", "constraints": "1. 名词列表应以名词的首次出现顺序排列,动词列表也应遵循相同的顺序。\n2. 输出必须采用JSON格式。", "input": "“检察官指控被告人强奸了一名妇女,并且在作案后对她进行了殴打。”", "constraints_num": 2, "constraints_splits": ["1. 名词列表应以名词的首次出现顺序排列,动词列表也应遵循相同的顺序。", "2. 输出必须采用JSON格式。"], "levels2": ["语法结构约束", "输出格式约束"], "category": "trace1.0"} +{"id": "402", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为给定的一组文本分类,输出应为一个JSON对象,其中每个文本片段对应一个类别。\n1. 类别应包括但不限于“动物行为”、“个人喜好”和“电影评论”。\n2. 输出的JSON对象中,每个分类都附有简短的解释说明为什么该文本片段属于这个类别。\n# Inputs:\n1. \"一只猫在窗户外面走来走去。\"\n2. \"她喜欢看电影,尤其是浪漫电影。\"\n3. \"导演的才能不仅在于创意,还在于如何将其传达给观众。\"\n"}], "type": "trace", "description": "为给定的一组文本分类,输出应为一个JSON对象,其中每个文本片段对应一个类别。", "constraints": "1. 类别应包括但不限于“动物行为”、“个人喜好”和“电影评论”。\n2. 输出的JSON对象中,每个分类都附有简短的解释说明为什么该文本片段属于这个类别。", "input": "1. \"一只猫在窗户外面走来走去。\"\n2. \"她喜欢看电影,尤其是浪漫电影。\"\n3. \"导演的才能不仅在于创意,还在于如何将其传达给观众。\"", "constraints_num": 2, "constraints_splits": ["1. 类别应包括但不限于“动物行为”、“个人喜好”和“电影评论”。", "2. 输出的JSON对象中,每个分类都附有简短的解释说明为什么该文本片段属于这个类别。"], "levels2": ["主题约束", "输出格式约束"], "category": "trace1.0"} +{"id": "403", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "将一组人的年龄或出生日期转换成统一的格式,即以岁为单位表示,并找出年龄最小和年龄最大的人,输出他们的具体年龄。\n1. 将日期转换为年龄时,需要考虑当前年份与出生年份的月份和日期;\n2. 输出格式应为:\"最年轻的人是...,年龄为...岁;最年长的人是...,年龄为...岁。\"\n# Inputs:\n一组人的年龄或出生日期:12岁,18/06/1982,03/01/2010,31岁,23/09/1995。\n"}], "type": "trace", "description": "将一组人的年龄或出生日期转换成统一的格式,即以岁为单位表示,并找出年龄最小和年龄最大的人,输出他们的具体年龄。", "constraints": "1. 将日期转换为年龄时,需要考虑当前年份与出生年份的月份和日期;\n2. 输出格式应为:\"最年轻的人是...,年龄为...岁;最年长的人是...,年龄为...岁。\"", "input": "一组人的年龄或出生日期:12岁,18/06/1982,03/01/2010,31岁,23/09/1995。", "constraints_num": 2, "constraints_splits": ["1. 将日期转换为年龄时,需要考虑当前年份与出生年份的月份和日期;", "2. 输出格式应为:\"最年轻的人是...,年龄为...岁;最年长的人是...,年龄为...岁。\""], "levels2": ["语法结构约束", "输出格式约束"], "category": "trace1.0"} +{"id": "404", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "描述花卉展览会并加入一个关于猫咪与花卉的有趣事实\n1. 确保这个事实与猫咪和花卉相关;\n2. 事实描述在100字以内;\n"}], "type": "trace", "description": "描述花卉展览会并加入一个关于猫咪与花卉的有趣事实", "constraints": "1. 确保这个事实与猫咪和花卉相关;\n2. 事实描述在100字以内;", "input": "NULL", "constraints_num": 2, "constraints_splits": ["1. 确保这个事实与猫咪和花卉相关;", "2. 事实描述在100字以内;"], "levels2": ["主题约束", "数值约束"], "category": "trace1.0"} +{"id": "405", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "编辑给定的段落,修正错别字和语法错误\n1. 严格按照中文语法规范进行编辑;\n2. 修改过的部分用红色字体高亮显示;\n# Inputs:\n他买了一一把新的吉他。\n"}], "type": "trace", "description": "编辑给定的段落,修正错别字和语法错误", "constraints": "1. 严格按照中文语法规范进行编辑;\n2. 修改过的部分用红色字体高亮显示;", "input": "他买了一一把新的吉他。", "constraints_num": 2, "constraints_splits": ["1. 严格按照中文语法规范进行编辑;", "2. 修改过的部分用红色字体高亮显示;"], "levels2": ["语法结构约束", "文本样式约束"], "category": "trace1.0"} +{"id": "406", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "对于给定的一个文本,输出其中可能涉及的具体实体名称。实体名称包括地点、人名、组织机构等。按照出现顺序,使用编号列表的形式输出实体名称,每个实体名称后面需跟着其所属的实体类型。\n1. 输出结果应按照实体在文本中出现的顺序排列;\n2. 每个实体名称后面需跟着其所属的实体类型;\n# Inputs:\n去年,《流浪地球》成为中国票房最高的电影,总票房突破了50亿元人民币,引起了广泛的关注。电影由郭帆执导,属于中国科幻电影,这是一种相对较新的类型,对于中国观众而言很新奇。\n"}], "type": "trace", "description": "对于给定的一个文本,输出其中可能涉及的具体实体名称。实体名称包括地点、人名、组织机构等。按照出现顺序,使用编号列表的形式输出实体名称,每个实体名称后面需跟着其所属的实体类型。", "constraints": "1. 输出结果应按照实体在文本中出现的顺序排列;\n2. 每个实体名称后面需跟着其所属的实体类型;", "input": "去年,《流浪地球》成为中国票房最高的电影,总票房突破了50亿元人民币,引起了广泛的关注。电影由郭帆执导,属于中国科幻电影,这是一种相对较新的类型,对于中国观众而言很新奇。", "constraints_num": 2, "constraints_splits": ["1. 输出结果应按照实体在文本中出现的顺序排列;", "2. 每个实体名称后面需跟着其所属的实体类型;"], "levels2": ["层次化结构约束", "输出格式约束"], "category": "trace1.0"} +{"id": "407", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "将给定段落中的问句改为陈述句,祈使句改为陈述句,同时保持语法结构正确和语气连贯。\n1. 修改后的段落不得包含问句和祈使句;\n2. 要确保修改后的段落语法结构正确,语气连贯。\n# Inputs:\nHave you finished your homework? If not, you should do it right now. You will get a good grade if you complete it on time.\n"}], "type": "trace", "description": "将给定段落中的问句改为陈述句,祈使句改为陈述句,同时保持语法结构正确和语气连贯。", "constraints": "1. 修改后的段落不得包含问句和祈使句;\n2. 要确保修改后的段落语法结构正确,语气连贯。", "input": "Have you finished your homework? If not, you should do it right now. You will get a good grade if you complete it on time.", "constraints_num": 2, "constraints_splits": ["1. 修改后的段落不得包含问句和祈使句;", "2. 要确保修改后的段落语法结构正确,语气连贯。"], "levels2": ["排除约束", "语法结构约束"], "category": "trace1.0"} +{"id": "408", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "将给定文本中出现的所有emoji替换为它们的文本表示形式,并用方括号括起来。\n1. 文本中的每一个emoji需要替换为文本表示形式;\n2. 替换后的文本表示形式需要用方括号括起来;\n# Inputs:\n我今天感觉👍!,替换后应为:我今天感觉[大拇指]!\n"}], "type": "trace", "description": "将给定文本中出现的所有emoji替换为它们的文本表示形式,并用方括号括起来。", "constraints": "1. 文本中的每一个emoji需要替换为文本表示形式;\n2. 替换后的文本表示形式需要用方括号括起来;", "input": "我今天感觉👍!,替换后应为:我今天感觉[大拇指]!", "constraints_num": 2, "constraints_splits": ["1. 文本中的每一个emoji需要替换为文本表示形式;", "2. 替换后的文本表示形式需要用方括号括起来;"], "levels2": ["文本样式约束", "文本样式约束"], "category": "trace1.0"} +{"id": "409", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "编辑文本,将特定单词\"茶\"替换成其他饮品名称,并保持轻松幽默的语气。\n1. 修改后的文本中,\"茶\"的替换词不能是咖啡或果汁;\n2. 尝试使用一些有趣的饮品名称而非常见的饮品名称。\n# Inputs:\n我爱喝茶,但我没有任何茶。\n"}], "type": "trace", "description": "编辑文本,将特定单词\"茶\"替换成其他饮品名称,并保持轻松幽默的语气。", "constraints": "1. 修改后的文本中,\"茶\"的替换词不能是咖啡或果汁;\n2. 尝试使用一些有趣的饮品名称而非常见的饮品名称。", "input": "我爱喝茶,但我没有任何茶。", "constraints_num": 2, "constraints_splits": ["1. 修改后的文本中,\"茶\"的替换词不能是咖啡或果汁;", "2. 尝试使用一些有趣的饮品名称而非常见的饮品名称。"], "levels2": ["排除约束", "语言特征约束"], "category": "trace1.0"} +{"id": "410", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "根据给定的文章,输出一个包含5到10个关键词的列表。\n1. 关键词列表中不应包括过于常见的词汇,如“的”、“和”、“我们”等;\n2. 关键词列表中必须包含“人工智能”、“自动化技术”、“工作岗位”、“伦理”、“隐私问题”和“和谐共存”;\n# Inputs:\n文章:人工智能的发展越来越快,但也带来了许多问题。例如,自动化技术的发展威胁着许多工作岗位,而且还有许多伦理和隐私问题困扰着人类社会。我们需要努力寻找解决这些问题的方法,以实现人工智能和人类社会的和谐共存。\n"}], "type": "trace", "description": "根据给定的文章,输出一个包含5到10个关键词的列表。", "constraints": "1. 关键词列表中不应包括过于常见的词汇,如“的”、“和”、“我们”等;\n2. 关键词列表中必须包含“人工智能”、“自动化技术”、“工作岗位”、“伦理”、“隐私问题”和“和谐共存”;", "input": "文章:人工智能的发展越来越快,但也带来了许多问题。例如,自动化技术的发展威胁着许多工作岗位,而且还有许多伦理和隐私问题困扰着人类社会。我们需要努力寻找解决这些问题的方法,以实现人工智能和人类社会的和谐共存。", "constraints_num": 2, "constraints_splits": ["1. 关键词列表中不应包括过于常见的词汇,如“的”、“和”、“我们”等;", "2. 关键词列表中必须包含“人工智能”、“自动化技术”、“工作岗位”、“伦理”、“隐私问题”和“和谐共存”;"], "levels2": ["排除约束", "包含约束"], "category": "trace1.0"} +{"id": "411", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "计算给定日期范围内的工作日天数\n1. 计算结果需排除周末(周六和周日)和以下法定节假日:劳动节(5月1日至5月3日);\n2. 计算结果应以JSON格式返回,包含字段\"total_work_days\"表示工作日总数;\n# Inputs:\n开始日期:2022年5月1日,结束日期:2022年5月31日\n法定节假日:劳动节(5月1日至5月3日)\n"}], "type": "trace", "description": "计算给定日期范围内的工作日天数", "constraints": "1. 计算结果需排除周末(周六和周日)和以下法定节假日:劳动节(5月1日至5月3日);\n2. 计算结果应以JSON格式返回,包含字段\"total_work_days\"表示工作日总数;", "input": "开始日期:2022年5月1日,结束日期:2022年5月31日\n法定节假日:劳动节(5月1日至5月3日)", "constraints_num": 2, "constraints_splits": ["1. 计算结果需排除周末(周六和周日)和以下法定节假日:劳动节(5月1日至5月3日);", "2. 计算结果应以JSON格式返回,包含字段\"total_work_days\"表示工作日总数;"], "levels2": ["排除约束", "输出格式约束"], "category": "trace1.0"} +{"id": "412", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "检查并修正文本中的语法或拼写错误,同时将列举的物品使用顿号进行正确分隔。\n1. 按照标准中文语法规则和格式修正文本;\n2. 确保每个列举的物品后都使用顿号进行分隔,最后一个物品前的顿号不可省略;\n# Inputs:\n我昨天去商场购物,买了一个苹果,两个橘子和三瓶水。\n"}], "type": "trace", "description": "检查并修正文本中的语法或拼写错误,同时将列举的物品使用顿号进行正确分隔。", "constraints": "1. 按照标准中文语法规则和格式修正文本;\n2. 确保每个列举的物品后都使用顿号进行分隔,最后一个物品前的顿号不可省略;", "input": "我昨天去商场购物,买了一个苹果,两个橘子和三瓶水。", "constraints_num": 2, "constraints_splits": ["1. 按照标准中文语法规则和格式修正文本;", "2. 确保每个列举的物品后都使用顿号进行分隔,最后一个物品前的顿号不可省略;"], "levels2": ["语法结构约束", "文本样式约束"], "category": "trace1.0"} +{"id": "413", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "将给定文本拆分为单词并计算每个单词出现的频率,以表格形式输出,包括单词和频率两列。\n1. 文本需排除标点符号和停用词(如“是”、“的”、“在”等);\n2. 表格中应包含至少5个不同的单词及其出现频率;\n# Inputs:\n“Python是一种流行的编程语言,它在数据科学和机器学习方面非常有用。”\n"}], "type": "trace", "description": "将给定文本拆分为单词并计算每个单词出现的频率,以表格形式输出,包括单词和频率两列。", "constraints": "1. 文本需排除标点符号和停用词(如“是”、“的”、“在”等);\n2. 表格中应包含至少5个不同的单词及其出现频率;", "input": "“Python是一种流行的编程语言,它在数据科学和机器学习方面非常有用。”", "constraints_num": 2, "constraints_splits": ["1. 文本需排除标点符号和停用词(如“是”、“的”、“在”等);", "2. 表格中应包含至少5个不同的单词及其出现频率;"], "levels2": ["排除约束", "数值约束"], "category": "trace1.0"} +{"id": "414", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "将给定的文章重新组织,分为至少4个独立段落,每个段落都应该包含一个主题句,并遵循“主题句 - 支持句 - 结尾句”的结构。\n1. 重新组织时请确保段落之间有清晰的过渡,使得文章整体结构更加条理化;\n2. 每个段落应以Markdown格式的标题(如#、##等)开始,以突出段落主题;\n# Inputs:\n# 夏天的魅力\n夏天是一年中最美好的季节之一。它是享受户外活动和美好天气的完美时机。\n\n## 夏日户外活动的乐趣\n人们可以去海滩,踏水涟漪,烤肉,聚会和露营。在夏天,太阳的日照时间更长,人们有更多的时间享受户外活动。\n\n## 夏季对心情的积极影响\n此外,夏天也是心情愉悦的季节,春天的季节性情绪障碍和冬天的忧郁症会逐渐消失。\n\n## 夏天的旅行热潮\n最后,夏天是旅行的热门季节。人们可以前往现代城市、海滩、山区和农村地区。\n"}], "type": "trace", "description": "将给定的文章重新组织,分为至少4个独立段落,每个段落都应该包含一个主题句,并遵循“主题句 - 支持句 - 结尾句”的结构。", "constraints": "1. 重新组织时请确保段落之间有清晰的过渡,使得文章整体结构更加条理化;\n2. 每个段落应以Markdown格式的标题(如#、##等)开始,以突出段落主题;", "input": "# 夏天的魅力\n夏天是一年中最美好的季节之一。它是享受户外活动和美好天气的完美时机。\n\n## 夏日户外活动的乐趣\n人们可以去海滩,踏水涟漪,烤肉,聚会和露营。在夏天,太阳的日照时间更长,人们有更多的时间享受户外活动。\n\n## 夏季对心情的积极影响\n此外,夏天也是心情愉悦的季节,春天的季节性情绪障碍和冬天的忧郁症会逐渐消失。\n\n## 夏天的旅行热潮\n最后,夏天是旅行的热门季节。人们可以前往现代城市、海滩、山区和农村地区。", "constraints_num": 2, "constraints_splits": ["1. 重新组织时请确保段落之间有清晰的过渡,使得文章整体结构更加条理化;", "2. 每个段落应以Markdown格式的标题(如#、##等)开始,以突出段落主题;"], "levels2": ["层次化结构约束", "输出格式约束"], "category": "trace1.0"} +{"id": "415", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "使用Python编程语言对数字列表 [5, 8, 1, 3, 9, 4] 进行升序排序,并以JSON格式输出排序后的列表。\n1. 代码中需要包含详细的注释,解释每一步的操作,以帮助编程初学者理解排序过程;\n2. 代码的总行数应控制在10行以内;\n# Inputs:\n[5, 8, 1, 3, 9, 4]\n"}], "type": "trace", "description": "使用Python编程语言对数字列表 [5, 8, 1, 3, 9, 4] 进行升序排序,并以JSON格式输出排序后的列表。", "constraints": "1. 代码中需要包含详细的注释,解释每一步的操作,以帮助编程初学者理解排序过程;\n2. 代码的总行数应控制在10行以内;", "input": "[5, 8, 1, 3, 9, 4]", "constraints_num": 2, "constraints_splits": ["1. 代码中需要包含详细的注释,解释每一步的操作,以帮助编程初学者理解排序过程;", "2. 代码的总行数应控制在10行以内;"], "levels2": ["文本样式约束", "数值约束"], "category": "trace1.0"} +{"id": "416", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "修正给定文章中的拼写和语法错误,并确保修正后的文本遵循标准的中文语法结构。\n1. 修正后的文本应使用楷体,字号为12号,首行缩进两个字符,以保持文本的整洁和专业性;\n2. 对于修正的每一处错误,在原文旁边用括号标注出错误类型(如拼写错误、语法错误等),以便于理解。\n# Inputs:\n\"今天,我去了一个非常有趣的展览。展览有很多不同的艺术品和文物,有些是历史上非常重要的事物。我特别喜欢那些陶器,它们有着漂亮的图案和颜色。除此之外,我还看到了一些珍贵的字画和传统的手工艺品。在展览结束后,我买了一个瓷碗作为纪念品,以示我参观这个令人兴奋的地方。\"\n"}], "type": "trace", "description": "修正给定文章中的拼写和语法错误,并确保修正后的文本遵循标准的中文语法结构。", "constraints": "1. 修正后的文本应使用楷体,字号为12号,首行缩进两个字符,以保持文本的整洁和专业性;\n2. 对于修正的每一处错误,在原文旁边用括号标注出错误类型(如拼写错误、语法错误等),以便于理解。", "input": "\"今天,我去了一个非常有趣的展览。展览有很多不同的艺术品和文物,有些是历史上非常重要的事物。我特别喜欢那些陶器,它们有着漂亮的图案和颜色。除此之外,我还看到了一些珍贵的字画和传统的手工艺品。在展览结束后,我买了一个瓷碗作为纪念品,以示我参观这个令人兴奋的地方。\"", "constraints_num": 2, "constraints_splits": ["1. 修正后的文本应使用楷体,字号为12号,首行缩进两个字符,以保持文本的整洁和专业性;", "2. 对于修正的每一处错误,在原文旁边用括号标注出错误类型(如拼写错误、语法错误等),以便于理解。"], "levels2": ["文本样式约束", "文本样式约束"], "category": "trace1.0"} +{"id": "417", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "使用Markdown表格格式展示给定的一组数字的排序结果,分别展示升序和降序两种情况。\n1. 表格中应包含原始数字列;\n2. 整篇内容应保持简洁明了的风格,避免冗余信息;\n# Inputs:\n一组数字:64, 22, 11, 70, 6\n\n| 原始数字 | 升序排序 | 降序排序 |\n| --- | --- | --- |\n| 64 | 待填充 | 待填充 |\n| 22 | 待填充 | 待填充 |\n| 11 | 待填充 | 待填充 |\n| 70 | 待填充 | 待填充 |\n| 6 | 待填充 | 待填充 |\n"}], "type": "trace", "description": "使用Markdown表格格式展示给定的一组数字的排序结果,分别展示升序和降序两种情况。", "constraints": "1. 表格中应包含原始数字列;\n2. 整篇内容应保持简洁明了的风格,避免冗余信息;", "input": "一组数字:64, 22, 11, 70, 6\n\n| 原始数字 | 升序排序 | 降序排序 |\n| --- | --- | --- |\n| 64 | 待填充 | 待填充 |\n| 22 | 待填充 | 待填充 |\n| 11 | 待填充 | 待填充 |\n| 70 | 待填充 | 待填充 |\n| 6 | 待填充 | 待填充 |", "constraints_num": 2, "constraints_splits": ["1. 表格中应包含原始数字列;", "2. 整篇内容应保持简洁明了的风格,避免冗余信息;"], "levels2": ["表格背景信息约束", "语气风格约束"], "category": "trace1.0"} +{"id": "418", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "在给定的文本中找到并替换所有的美元符号\"$\"为欧元符号\"€\",并以LaTeX格式输出结果\n1. 确保文本中的货币数值依然保持良好的可读性和美观性;\n2. 在输出时使用LaTeX的货币符号命令来显示欧元符号;\n# Inputs:\n\"$100可以购买不少东西。$50也不错。\"\n"}], "type": "trace", "description": "在给定的文本中找到并替换所有的美元符号\"$\"为欧元符号\"€\",并以LaTeX格式输出结果", "constraints": "1. 确保文本中的货币数值依然保持良好的可读性和美观性;\n2. 在输出时使用LaTeX的货币符号命令来显示欧元符号;", "input": "\"$100可以购买不少东西。$50也不错。\"", "constraints_num": 2, "constraints_splits": ["1. 确保文本中的货币数值依然保持良好的可读性和美观性;", "2. 在输出时使用LaTeX的货币符号命令来显示欧元符号;"], "levels2": ["文本样式约束", "输出格式约束"], "category": "trace1.0"} +{"id": "419", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "分类以下8种动物,明确指出哪些是海洋动物,哪些是陆地动物。分类结果请以表格形式呈现。\n1. 表格需要包含两列,一列是海洋动物,另一列是陆地动物;\n2. 每列至少包含两种动物;\n# Inputs:\n具体动物包括:企鹅,鲨鱼,大象,海豚,老鼠,章鱼,狮子,海星。\n"}], "type": "trace", "description": "分类以下8种动物,明确指出哪些是海洋动物,哪些是陆地动物。分类结果请以表格形式呈现。", "constraints": "1. 表格需要包含两列,一列是海洋动物,另一列是陆地动物;\n2. 每列至少包含两种动物;", "input": "具体动物包括:企鹅,鲨鱼,大象,海豚,老鼠,章鱼,狮子,海星。", "constraints_num": 2, "constraints_splits": ["1. 表格需要包含两列,一列是海洋动物,另一列是陆地动物;", "2. 每列至少包含两种动物;"], "levels2": ["表格背景信息约束", "数值约束"], "category": "trace1.0"} +{"id": "420", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "进行一次问答游戏,玩家以正式语言提问,助手以严谨正式语气回答,并以JSON格式返回答案。\n1. 答案需要包括:答案本身、答案来源及简要解释;\n2. 答案格式必须为JSON。\n# Inputs:\n玩家提问:\"人体最大的器官是什么?\"\n"}], "type": "trace", "description": "进行一次问答游戏,玩家以正式语言提问,助手以严谨正式语气回答,并以JSON格式返回答案。", "constraints": "1. 答案需要包括:答案本身、答案来源及简要解释;\n2. 答案格式必须为JSON。", "input": "玩家提问:\"人体最大的器官是什么?\"", "constraints_num": 2, "constraints_splits": ["1. 答案需要包括:答案本身、答案来源及简要解释;", "2. 答案格式必须为JSON。"], "levels2": ["包含约束", "输出格式约束"], "category": "trace1.0"} +{"id": "421", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "将短文转录成计算机可以识别的文本,包括印刷错误。\n1. 在每一行的开头输入行号,且行号后需跟一个英文句点(.)作为分隔符。\n2. 文本中应包含3行,每行的字符数(包括空格和标点符号)应在20至30个之间。\n# Inputs:\n1. Todya is Wenrsday.\n2. Amozan is a largte cmoany.\n3. I havae a pet cat nanmed Whiskers.\n"}], "type": "trace", "description": "将短文转录成计算机可以识别的文本,包括印刷错误。", "constraints": "1. 在每一行的开头输入行号,且行号后需跟一个英文句点(.)作为分隔符。\n2. 文本中应包含3行,每行的字符数(包括空格和标点符号)应在20至30个之间。", "input": "1. Todya is Wenrsday.\n2. Amozan is a largte cmoany.\n3. I havae a pet cat nanmed Whiskers.", "constraints_num": 2, "constraints_splits": ["1. 在每一行的开头输入行号,且行号后需跟一个英文句点(.)作为分隔符。", "2. 文本中应包含3行,每行的字符数(包括空格和标点符号)应在20至30个之间。"], "levels2": ["文本样式约束", "数值约束"], "category": "trace1.0"} +{"id": "422", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "给定一个数学问题,计算正确的答案并确保答案的语法结构正确。\n1. 使用标准的数学表达式和单位;\n2. 答案格式为 \"x小时以y英里/小时的速度行驶,可以行驶z英里。\"\n# Inputs:\n如果一辆车以每小时 \\(60\\) 英里的速度行驶,那么在 \\(4\\) 小时内它能行驶多少英里?\n"}], "type": "trace", "description": "给定一个数学问题,计算正确的答案并确保答案的语法结构正确。", "constraints": "1. 使用标准的数学表达式和单位;\n2. 答案格式为 \"x小时以y英里/小时的速度行驶,可以行驶z英里。\"", "input": "如果一辆车以每小时 \\(60\\) 英里的速度行驶,那么在 \\(4\\) 小时内它能行驶多少英里?", "constraints_num": 2, "constraints_splits": ["1. 使用标准的数学表达式和单位;", "2. 答案格式为 \"x小时以y英里/小时的速度行驶,可以行驶z英里。\""], "levels2": ["语言特征约束", "输出格式约束"], "category": "trace1.0"} +{"id": "423", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "修改并包含修辞疑问句的文本\n1. 修改后的文本中至少包含两个修辞疑问句;\n2. 整个段落的字数控制在100字以内;\n# Inputs:\n我们的医疗系统,那曾是无数生命的守护者,难道不是正面临着前所未有的危机吗?这样的破裂,难道不正提醒着我们,是时候采取行动,修复那曾经坚不可摧的防线了吗?\n"}], "type": "trace", "description": "修改并包含修辞疑问句的文本", "constraints": "1. 修改后的文本中至少包含两个修辞疑问句;\n2. 整个段落的字数控制在100字以内;", "input": "我们的医疗系统,那曾是无数生命的守护者,难道不是正面临着前所未有的危机吗?这样的破裂,难道不正提醒着我们,是时候采取行动,修复那曾经坚不可摧的防线了吗?", "constraints_num": 2, "constraints_splits": ["1. 修改后的文本中至少包含两个修辞疑问句;", "2. 整个段落的字数控制在100字以内;"], "levels2": ["语言特征约束", "数值约束"], "category": "trace1.0"} +{"id": "424", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "给定两个字符串s1和s2,使用JSON格式输出它们的最长公共子序列。如果没有公共子序列,输出一个包含字段\"result\"和值\"无公共子序列\"的JSON对象。\n1. 子序列不要求是连续的字符;\n2. 输出的最长公共子序列长度必须大于等于3;\n# Inputs:\ns1=\"AGGTAB\", s2=\"GXTXAYB\"\n"}], "type": "trace", "description": "给定两个字符串s1和s2,使用JSON格式输出它们的最长公共子序列。如果没有公共子序列,输出一个包含字段\"result\"和值\"无公共子序列\"的JSON对象。", "constraints": "1. 子序列不要求是连续的字符;\n2. 输出的最长公共子序列长度必须大于等于3;", "input": "s1=\"AGGTAB\", s2=\"GXTXAYB\"", "constraints_num": 2, "constraints_splits": ["1. 子序列不要求是连续的字符;", "2. 输出的最长公共子序列长度必须大于等于3;"], "levels2": ["排除约束", "数值约束"], "category": "trace1.0"} +{"id": "425", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以表格形式分类8种动物的食性\n1. 表格中左侧列包含动物名称,右侧列包含对应的食性分类(食草动物、食肉动物或杂食动物);\n2. 表格中应包含合计行,显示每种食性分类的动物数量;\n# Inputs:\n鲸鱼、鼠、狮子、狗、熊、羊、鸟、牛\n"}], "type": "trace", "description": "以表格形式分类8种动物的食性", "constraints": "1. 表格中左侧列包含动物名称,右侧列包含对应的食性分类(食草动物、食肉动物或杂食动物);\n2. 表格中应包含合计行,显示每种食性分类的动物数量;", "input": "鲸鱼、鼠、狮子、狗、熊、羊、鸟、牛", "constraints_num": 2, "constraints_splits": ["1. 表格中左侧列包含动物名称,右侧列包含对应的食性分类(食草动物、食肉动物或杂食动物);", "2. 表格中应包含合计行,显示每种食性分类的动物数量;"], "levels2": ["表格背景信息约束", "表格背景信息约束"], "category": "trace1.0"} +{"id": "426", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "给定一组电影评论,按照好评和差评将评论进行分类,并以JSON格式输出结果。\n1. 确保分类准确,好评中不包含任何负面评价,差评中不包含任何正面评价;\n2. 输出结果应该以JSON格式表示,包含\"好评\"和\"差评\"两个字段;\n# Inputs:\n- 这部电影是一部现代经典。\n- 无聊而缺乏想象力,不值得一看。\n- 强烈推荐这部电影,它有一个意想不到的结局。\n- 视觉效果出色,但角色发展欠缺。\n"}], "type": "trace", "description": "给定一组电影评论,按照好评和差评将评论进行分类,并以JSON格式输出结果。", "constraints": "1. 确保分类准确,好评中不包含任何负面评价,差评中不包含任何正面评价;\n2. 输出结果应该以JSON格式表示,包含\"好评\"和\"差评\"两个字段;", "input": "- 这部电影是一部现代经典。\n- 无聊而缺乏想象力,不值得一看。\n- 强烈推荐这部电影,它有一个意想不到的结局。\n- 视觉效果出色,但角色发展欠缺。", "constraints_num": 2, "constraints_splits": ["1. 确保分类准确,好评中不包含任何负面评价,差评中不包含任何正面评价;", "2. 输出结果应该以JSON格式表示,包含\"好评\"和\"差评\"两个字段;"], "levels2": ["排除约束", "输出格式约束"], "category": "trace1.0"} +{"id": "427", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "给定一组事实,确定它们是真还是假,并为每个判断提供至少一个可信的科学或历史来源作为参考依据。\n1. 判断时必须确保信息的准确性和客观性,避免任何不实或误导性的陈述。\n2. 最后,判断结果应以表格形式呈现,其中包含事实描述、判断结果和参考来源三列。\n# Inputs:\n| 事实描述                                                  | 判断结果 | 参考来源          |\n|------------------------------------------------------------|----------|-------------------|\n| 中国的长城是唯一从太空中可见的人造结构。                   | 真/假   | 来源1            |\n| 土星是太阳系中最大的行星。                                 | 真/假   | 来源2            |\n"}], "type": "trace", "description": "给定一组事实,确定它们是真还是假,并为每个判断提供至少一个可信的科学或历史来源作为参考依据。", "constraints": "1. 判断时必须确保信息的准确性和客观性,避免任何不实或误导性的陈述。\n2. 最后,判断结果应以表格形式呈现,其中包含事实描述、判断结果和参考来源三列。", "input": "| 事实描述                                                  | 判断结果 | 参考来源          |\n|------------------------------------------------------------|----------|-------------------|\n| 中国的长城是唯一从太空中可见的人造结构。                   | 真/假   | 来源1            |\n| 土星是太阳系中最大的行星。                                 | 真/假   | 来源2            |", "constraints_num": 2, "constraints_splits": ["1. 判断时必须确保信息的准确性和客观性,避免任何不实或误导性的陈述。", "2. 最后,判断结果应以表格形式呈现,其中包含事实描述、判断结果和参考来源三列。"], "levels2": ["价值观约束", "输出格式约束"], "category": "trace1.0"} +{"id": "428", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以表格格式列出艾米莉亚·克拉克与电影“权力的游戏”相关的所有共同作品\n1. 表格中必须包含作品名称、上映年份、以及艾米莉亚·克拉克在作品中的角色名称;\n2. 至少列出5部共同作品,如果没有足够的作品,请列出所有可获得的信息;\n"}], "type": "trace", "description": "以表格格式列出艾米莉亚·克拉克与电影“权力的游戏”相关的所有共同作品", "constraints": "1. 表格中必须包含作品名称、上映年份、以及艾米莉亚·克拉克在作品中的角色名称;\n2. 至少列出5部共同作品,如果没有足够的作品,请列出所有可获得的信息;", "input": "NULL", "constraints_num": 2, "constraints_splits": ["1. 表格中必须包含作品名称、上映年份、以及艾米莉亚·克拉克在作品中的角色名称;", "2. 至少列出5部共同作品,如果没有足够的作品,请列出所有可获得的信息;"], "levels2": ["表格背景信息约束", "数值约束"], "category": "trace1.0"} +{"id": "429", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "对于给定的电影《阿甘正传》,由导演 Robert Zemeckis 创作,要求输出该电影的 IMDb 评分和上映年份,格式应为 JSON。\n1. 数据中必须包括 IMDb 官方链接作为参考;\n2. 返回的评分数值精确到小数点后两位;\n# Inputs:\n{\n  \"movie_title\": \"《阿甘正传》\",\n  \"director\": \"Robert Zemeckis\"\n}\n"}], "type": "trace", "description": "对于给定的电影《阿甘正传》,由导演 Robert Zemeckis 创作,要求输出该电影的 IMDb 评分和上映年份,格式应为 JSON。", "constraints": "1. 数据中必须包括 IMDb 官方链接作为参考;\n2. 返回的评分数值精确到小数点后两位;", "input": "{\n  \"movie_title\": \"《阿甘正传》\",\n  \"director\": \"Robert Zemeckis\"\n}", "constraints_num": 2, "constraints_splits": ["1. 数据中必须包括 IMDb 官方链接作为参考;", "2. 返回的评分数值精确到小数点后两位;"], "levels2": ["引用和参考约束", "数值约束"], "category": "trace1.0"} +{"id": "430", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "从给定的关于小说《月亮与六便士》的文章中,找出并统计出现频率最高的五个单词,并将结果以JSON格式返回。\n1. 统计过程中需要排除\"的\"、\"和\"、\"是\"等常见虚词,确保统计结果的准确性;\n2. 结果需要以JSON格式返回,保持严谨正式的语气;\n# Inputs:\n“最喜欢的书是《月亮与六便士》。讲述了一个男人为了自己的追求而毅然放弃家庭,家人不理解他,甚至不认识他。尽管在自己的艺术领域里取得了成功,但在自己的内心里却一直感到孤独,最终病倒。这本小说描写了生命的意义,追求理想与现实、责任与自由之间的矛盾,以及人性的复杂性。”\n"}], "type": "trace", "description": "从给定的关于小说《月亮与六便士》的文章中,找出并统计出现频率最高的五个单词,并将结果以JSON格式返回。", "constraints": "1. 统计过程中需要排除\"的\"、\"和\"、\"是\"等常见虚词,确保统计结果的准确性;\n2. 结果需要以JSON格式返回,保持严谨正式的语气;", "input": "“最喜欢的书是《月亮与六便士》。讲述了一个男人为了自己的追求而毅然放弃家庭,家人不理解他,甚至不认识他。尽管在自己的艺术领域里取得了成功,但在自己的内心里却一直感到孤独,最终病倒。这本小说描写了生命的意义,追求理想与现实、责任与自由之间的矛盾,以及人性的复杂性。”", "constraints_num": 2, "constraints_splits": ["1. 统计过程中需要排除\"的\"、\"和\"、\"是\"等常见虚词,确保统计结果的准确性;", "2. 结果需要以JSON格式返回,保持严谨正式的语气;"], "levels2": ["排除约束", "输出格式约束"], "category": "trace1.0"} +{"id": "431", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "按升序排列一组数字,并以特定格式输出\n1. 输出结果为逗号分隔的列表形式,例如:[1, 2, 3];\n2. 每个数字之间用一个空格隔开;\n3. 排列后的数字不得重复,确保每个数字只出现一次;\n# Inputs:\n3, 7, 1, 8, 2, 9\n"}], "type": "trace", "description": "按升序排列一组数字,并以特定格式输出", "constraints": "1. 输出结果为逗号分隔的列表形式,例如:[1, 2, 3];\n2. 每个数字之间用一个空格隔开;\n3. 排列后的数字不得重复,确保每个数字只出现一次;", "input": "3, 7, 1, 8, 2, 9", "constraints_num": 3, "constraints_splits": ["1. 输出结果为逗号分隔的列表形式,例如:[1, 2, 3];", "2. 每个数字之间用一个空格隔开;", "3. 排列后的数字不得重复,确保每个数字只出现一次;"], "levels2": ["输出格式约束", "文本样式约束", "数值约束"], "category": "trace1.0"} +{"id": "432", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "给出一个简述并补充完整的段落\n1. 补充的部分必须包含锻炼对心理健康的影响以及对骨骼和肌肉的益处;\n2. 整个段落应采用正式严谨的语气风格;\n3. 字数控制在150字以内;\n# Inputs:\n缺乏锻炼会对健康产生负面影响。锻炼可以减少体重、提高心血管健康并增强免疫系统。\n"}], "type": "trace", "description": "给出一个简述并补充完整的段落", "constraints": "1. 补充的部分必须包含锻炼对心理健康的影响以及对骨骼和肌肉的益处;\n2. 整个段落应采用正式严谨的语气风格;\n3. 字数控制在150字以内;", "input": "缺乏锻炼会对健康产生负面影响。锻炼可以减少体重、提高心血管健康并增强免疫系统。", "constraints_num": 3, "constraints_splits": ["1. 补充的部分必须包含锻炼对心理健康的影响以及对骨骼和肌肉的益处;", "2. 整个段落应采用正式严谨的语气风格;", "3. 字数控制在150字以内;"], "levels2": ["包含约束", "语气风格约束", "数值约束"], "category": "trace1.0"} +{"id": "433", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "给定一段文本,返回其中最常见的前5个单词,并以JSON格式输出结果,每个单词应包括其出现的次数,且遵循主谓宾的语法结构进行表述。\n1. 返回最常见的前5个单词(数值约束);\n2. 要求以JSON格式输出(格式约束);\n3. 遵循主谓宾的语法结构(语法结构约束);\n# Inputs:\n在今天的会议上,我们将讨论公司未来的战略计划,并设法更好地服务我们的客户。\n"}], "type": "trace", "description": "给定一段文本,返回其中最常见的前5个单词,并以JSON格式输出结果,每个单词应包括其出现的次数,且遵循主谓宾的语法结构进行表述。", "constraints": "1. 返回最常见的前5个单词(数值约束);\n2. 要求以JSON格式输出(格式约束);\n3. 遵循主谓宾的语法结构(语法结构约束);", "input": "在今天的会议上,我们将讨论公司未来的战略计划,并设法更好地服务我们的客户。", "constraints_num": 3, "constraints_splits": ["1. 返回最常见的前5个单词(数值约束);", "2. 要求以JSON格式输出(格式约束);", "3. 遵循主谓宾的语法结构(语法结构约束);"], "levels2": ["数值约束", "输出格式约束", "语法结构约束"], "category": "trace1.0"} +{"id": "434", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "计算给定两个数字的平均值并以特定格式输出结果\n1. 平均值需保留两位小数;\n2. 数字的输入和输出均需在一行内完成且以逗号分隔,例如 \"数字1: XX, 数字2: XX\";\n3. 结果展示格式应为 \"结果是: XX.XX\";\n# Inputs:\n数字1: 25, 数字2: 37.5\n"}], "type": "trace", "description": "计算给定两个数字的平均值并以特定格式输出结果", "constraints": "1. 平均值需保留两位小数;\n2. 数字的输入和输出均需在一行内完成且以逗号分隔,例如 \"数字1: XX, 数字2: XX\";\n3. 结果展示格式应为 \"结果是: XX.XX\";", "input": "数字1: 25, 数字2: 37.5", "constraints_num": 3, "constraints_splits": ["1. 平均值需保留两位小数;", "2. 数字的输入和输出均需在一行内完成且以逗号分隔,例如 \"数字1: XX, 数字2: XX\";", "3. 结果展示格式应为 \"结果是: XX.XX\";"], "levels2": ["数值约束", "输出格式约束", "输出格式约束"], "category": "trace1.0"} +{"id": "435", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "使用 SQL 查询选择 \"水果\" 表中类型为 \"柑橘类\" 的所有行,查询结果中应包含 \"水果名\"、\"产地\" 和 \"上市季节\" 三个字段\n1. 返回的查询结果应以 JSON 格式呈现;\n2. 每个字段的值应被双引号包围;\n3. 查询结果限制在前 20 条记录;\n"}], "type": "trace", "description": "使用 SQL 查询选择 \"水果\" 表中类型为 \"柑橘类\" 的所有行,查询结果中应包含 \"水果名\"、\"产地\" 和 \"上市季节\" 三个字段", "constraints": "1. 返回的查询结果应以 JSON 格式呈现;\n2. 每个字段的值应被双引号包围;\n3. 查询结果限制在前 20 条记录;", "input": "NULL", "constraints_num": 3, "constraints_splits": ["1. 返回的查询结果应以 JSON 格式呈现;", "2. 每个字段的值应被双引号包围;", "3. 查询结果限制在前 20 条记录;"], "levels2": ["输出格式约束", "文本样式约束", "数值约束"], "category": "trace1.0"} +{"id": "436", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "给定两个数字,输出它们之间的差异。\n1. 输出结果的格式应为:差值为 |数字1 - 数字2|;\n2. 差值的精度保持到小数点后两位;\n3. 如果数字1大于数字2,输出应为正数;反之,输出应为负数。\n# Inputs:\n数字1:32986,数字2:24356。\n"}], "type": "trace", "description": "给定两个数字,输出它们之间的差异。", "constraints": "1. 输出结果的格式应为:差值为 |数字1 - 数字2|;\n2. 差值的精度保持到小数点后两位;\n3. 如果数字1大于数字2,输出应为正数;反之,输出应为负数。", "input": "数字1:32986,数字2:24356。", "constraints_num": 3, "constraints_splits": ["1. 输出结果的格式应为:差值为 |数字1 - 数字2|;", "2. 差值的精度保持到小数点后两位;", "3. 如果数字1大于数字2,输出应为正数;反之,输出应为负数。"], "levels2": ["输出格式约束", "数值约束", "数值约束"], "category": "trace1.0"} +{"id": "437", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "计算两个日期之间相差的天数,并将结果以JSON格式返回\n1. 计算结果需以JSON格式返回,包含\"date1\"、\"date2\"和\"difference\"字段;\n2. \"difference\"字段应包含确切的天数差值;\n3. 计算时需确保日期的准确性,不考虑闰年对2月的影响;\n# Inputs:\n{\n  \"date1\": \"2022年3月10日\",\n  \"date2\": \"2022年3月15日\"\n}\n"}], "type": "trace", "description": "计算两个日期之间相差的天数,并将结果以JSON格式返回", "constraints": "1. 计算结果需以JSON格式返回,包含\"date1\"、\"date2\"和\"difference\"字段;\n2. \"difference\"字段应包含确切的天数差值;\n3. 计算时需确保日期的准确性,不考虑闰年对2月的影响;", "input": "{\n  \"date1\": \"2022年3月10日\",\n  \"date2\": \"2022年3月15日\"\n}", "constraints_num": 3, "constraints_splits": ["1. 计算结果需以JSON格式返回,包含\"date1\"、\"date2\"和\"difference\"字段;", "2. \"difference\"字段应包含确切的天数差值;", "3. 计算时需确保日期的准确性,不考虑闰年对2月的影响;"], "levels2": ["输出格式约束", "数值约束", "数值约束"], "category": "trace1.0"} +{"id": "438", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "给定一段文本,返回文本中所有名词和动词的列表,并以JSON格式输出。名词和动词分别存储在两个不同的数组中。\n1. 每个数组的元素数量应在1至10个之间;\n2. 动词可能需要转换为原形或词干形式,以保证语法结构的正确性;\n3. 返回的JSON结构应遵循特定格式。\n# Inputs:\n我正在学习自然语言处理。\n"}], "type": "trace", "description": "给定一段文本,返回文本中所有名词和动词的列表,并以JSON格式输出。名词和动词分别存储在两个不同的数组中。", "constraints": "1. 每个数组的元素数量应在1至10个之间;\n2. 动词可能需要转换为原形或词干形式,以保证语法结构的正确性;\n3. 返回的JSON结构应遵循特定格式。", "input": "我正在学习自然语言处理。", "constraints_num": 3, "constraints_splits": ["1. 每个数组的元素数量应在1至10个之间;", "2. 动词可能需要转换为原形或词干形式,以保证语法结构的正确性;", "3. 返回的JSON结构应遵循特定格式。"], "levels2": ["数值约束", "语法结构约束", "输出格式约束"], "category": "trace1.0"} +{"id": "439", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为一家新型有机食品餐厅制定一个社交媒体营销计划,目标是健康和环保意识高的年轻人,内容需包含市场调研、目标设定、平台选择、内容策略、预算规划及执行时间表,计划需以专业报告的形式呈现,采用Markdown格式,关键点需用粗体突出显示。\n1. 计划需以专业报告的形式呈现,采用Markdown格式,报告中使用标题、子标题和列表来组织信息;\n2. 所有关键点需用粗体突出显示,确保内容清晰、专业且易于阅读;\n3. 营销计划的结构需按照指示的结构进行制定,包括封面、目录、市场分析、营销目标、平台选择与内容策略、预算规划、执行时间表、监测与评估以及附录。\n"}], "type": "trace", "description": "为一家新型有机食品餐厅制定一个社交媒体营销计划,目标是健康和环保意识高的年轻人,内容需包含市场调研、目标设定、平台选择、内容策略、预算规划及执行时间表,计划需以专业报告的形式呈现,采用Markdown格式,关键点需用粗体突出显示。", "constraints": "1. 计划需以专业报告的形式呈现,采用Markdown格式,报告中使用标题、子标题和列表来组织信息;\n2. 所有关键点需用粗体突出显示,确保内容清晰、专业且易于阅读;\n3. 营销计划的结构需按照指示的结构进行制定,包括封面、目录、市场分析、营销目标、平台选择与内容策略、预算规划、执行时间表、监测与评估以及附录。", "input": "NULL", "constraints_num": 3, "constraints_splits": ["1. 计划需以专业报告的形式呈现,采用Markdown格式,报告中使用标题、子标题和列表来组织信息;", "2. 所有关键点需用粗体突出显示,确保内容清晰、专业且易于阅读;", "3. 营销计划的结构需按照指示的结构进行制定,包括封面、目录、市场分析、营销目标、平台选择与内容策略、预算规划、执行时间表、监测与评估以及附录。"], "levels2": ["输出格式约束", "文本样式约束", "层次化结构约束"], "category": "trace1.0"} +{"id": "440", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "计算给定数学问题的答案,并将计算过程以表格形式展示。\n1. 表格中包括至少以下列:航班次数、总收入、总成本、净利润;\n2. 在计算中必须考虑所有给定的数值;\n3. 计算过程以表格形式展示;\n# Inputs:\n数学问题:\"如果航空公司A每架波音747每天进行一次往返,每次往返的座位数为400个,每个座位利润为200美元,每架波音747的飞行成本为20,000美元。假设该航空公司完全被占据,每一班往返需要4小时,每架波音747每天工作20小时,那么该航空公司每天能赚多少美元?\",航空公司A有5架波音747飞机。\n"}], "type": "trace", "description": "计算给定数学问题的答案,并将计算过程以表格形式展示。", "constraints": "1. 表格中包括至少以下列:航班次数、总收入、总成本、净利润;\n2. 在计算中必须考虑所有给定的数值;\n3. 计算过程以表格形式展示;", "input": "数学问题:\"如果航空公司A每架波音747每天进行一次往返,每次往返的座位数为400个,每个座位利润为200美元,每架波音747的飞行成本为20,000美元。假设该航空公司完全被占据,每一班往返需要4小时,每架波音747每天工作20小时,那么该航空公司每天能赚多少美元?\",航空公司A有5架波音747飞机。", "constraints_num": 3, "constraints_splits": ["1. 表格中包括至少以下列:航班次数、总收入、总成本、净利润;", "2. 在计算中必须考虑所有给定的数值;", "3. 计算过程以表格形式展示;"], "levels2": ["表格背景信息约束", "数值约束", "输出格式约束"], "category": "trace1.0"} +{"id": "441", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "使用LaTeX格式给出数列并找出其中的最大值,同时以正式严谨的语气进行表述,列出所有比较步骤。\n1. 解析过程总字数不超过200字;\n2. 需列出所有比较步骤;\n3. 需使用正式严谨的语气进行表述;\n# Inputs:\n数列:$5, 12, 8, 23, 17, 9$\n"}], "type": "trace", "description": "使用LaTeX格式给出数列并找出其中的最大值,同时以正式严谨的语气进行表述,列出所有比较步骤。", "constraints": "1. 解析过程总字数不超过200字;\n2. 需列出所有比较步骤;\n3. 需使用正式严谨的语气进行表述;", "input": "数列:$5, 12, 8, 23, 17, 9$", "constraints_num": 3, "constraints_splits": ["1. 解析过程总字数不超过200字;", "2. 需列出所有比较步骤;", "3. 需使用正式严谨的语气进行表述;"], "levels2": ["数值约束", "编号和列表约束", "语气风格约束"], "category": "trace1.0"} +{"id": "442", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一个联系人列表,包含十个名字与生日日期。\n1. 每个条目需严格按照以下格式填写:格式为“姓名:生日日期”;\n2. 列表需以JSON格式输出;\n3. 每个条目的姓名和生日日期字段不得为空。\n"}], "type": "trace", "description": "创建一个联系人列表,包含十个名字与生日日期。", "constraints": "1. 每个条目需严格按照以下格式填写:格式为“姓名:生日日期”;\n2. 列表需以JSON格式输出;\n3. 每个条目的姓名和生日日期字段不得为空。", "input": "NULL", "constraints_num": 3, "constraints_splits": ["1. 每个条目需严格按照以下格式填写:格式为“姓名:生日日期”;", "2. 列表需以JSON格式输出;", "3. 每个条目的姓名和生日日期字段不得为空。"], "levels2": ["输出格式约束", "输出格式约束", "包含约束"], "category": "trace1.0"} +{"id": "443", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "根据给定的纬度和经度坐标获取位置的当前天气信息,输出信息应包含温度、湿度、风速和天气状况。\n1. 输出信息格式为JSON;\n2. JSON字段包括:\"location\"(地点),\"temperature\"(温度),\"humidity\"(湿度),\"wind_speed\"(风速)以及\"weather_condition\"(天气状况);\n3. 数据精度要求:温度到小数点后一位,湿度和风速保留整数。\n# Inputs:\n纬度:40.7128,经度:-74.0060\n"}], "type": "trace", "description": "根据给定的纬度和经度坐标获取位置的当前天气信息,输出信息应包含温度、湿度、风速和天气状况。", "constraints": "1. 输出信息格式为JSON;\n2. JSON字段包括:\"location\"(地点),\"temperature\"(温度),\"humidity\"(湿度),\"wind_speed\"(风速)以及\"weather_condition\"(天气状况);\n3. 数据精度要求:温度到小数点后一位,湿度和风速保留整数。", "input": "纬度:40.7128,经度:-74.0060", "constraints_num": 3, "constraints_splits": ["1. 输出信息格式为JSON;", "2. JSON字段包括:\"location\"(地点),\"temperature\"(温度),\"humidity\"(湿度),\"wind_speed\"(风速)以及\"weather_condition\"(天气状况);", "3. 数据精度要求:温度到小数点后一位,湿度和风速保留整数。"], "levels2": ["输出格式约束", "输出格式约束", "数值约束"], "category": "trace1.0"} +{"id": "444", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "根据给定的时间和位置,获取上海市徐汇区的天气预报,并要求返回的数据包含特定的天气信息。\n1. 需要以JSON格式返回数据;\n2. 返回的JSON数据必须包含温度、湿度、风速和天气状况等信息;\n3. 需要提供精确到分钟级别的天气变化信息;\n# Inputs:\n{\n  \"time\": \"2022-05-01 15:00:00\",\n  \"location\": \"上海市徐汇区\"\n}\n"}], "type": "trace", "description": "根据给定的时间和位置,获取上海市徐汇区的天气预报,并要求返回的数据包含特定的天气信息。", "constraints": "1. 需要以JSON格式返回数据;\n2. 返回的JSON数据必须包含温度、湿度、风速和天气状况等信息;\n3. 需要提供精确到分钟级别的天气变化信息;", "input": "{\n  \"time\": \"2022-05-01 15:00:00\",\n  \"location\": \"上海市徐汇区\"\n}", "constraints_num": 3, "constraints_splits": ["1. 需要以JSON格式返回数据;", "2. 返回的JSON数据必须包含温度、湿度、风速和天气状况等信息;", "3. 需要提供精确到分钟级别的天气变化信息;"], "levels2": ["输出格式约束", "输出格式约束", "数值约束"], "category": "trace1.0"} +{"id": "445", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "分析电商网站的用户购买行为数据样本,并使用JSON格式输出至少5条关于用户行为的深入洞察和趋势分析。\n1. 输出格式必须是JSON;\n2. 分析的洞察和趋势应包括但不限于购物篮大小与总购买金额之间的关系、用户购买行为的时间趋势、频繁购买的用户特征、平均购买金额和购物篮大小、季节性或节假日购买模式(如果适用,请根据现有数据进行推测);\n3. 至少输出5条洞察分析;\n# Inputs:\n[\n  {\"UserID\": 2332, \"BasketSize\": 7, \"PurchaseDate\": \"2021-06-02\", \"TotalAmount\": 120.50},\n  {\"UserID\": 1234, \"BasketSize\": 3, \"PurchaseDate\": \"2021-05-22\", \"TotalAmount\": 45.99},\n  {\"UserID\": 9912, \"BasketSize\": 10, \"PurchaseDate\": \"2021-06-08\", \"TotalAmount\": 220.00},\n  {\"UserID\": 8765, \"BasketSize\": 1, \"PurchaseDate\": \"2021-05-30\", \"TotalAmount\": 9.99},\n  {\"UserID\": 4567, \"BasketSize\": 5, \"PurchaseDate\": \"2021-06-05\", \"TotalAmount\": 89.70}\n]\n"}], "type": "trace", "description": "分析电商网站的用户购买行为数据样本,并使用JSON格式输出至少5条关于用户行为的深入洞察和趋势分析。", "constraints": "1. 输出格式必须是JSON;\n2. 分析的洞察和趋势应包括但不限于购物篮大小与总购买金额之间的关系、用户购买行为的时间趋势、频繁购买的用户特征、平均购买金额和购物篮大小、季节性或节假日购买模式(如果适用,请根据现有数据进行推测);\n3. 至少输出5条洞察分析;", "input": "[\n  {\"UserID\": 2332, \"BasketSize\": 7, \"PurchaseDate\": \"2021-06-02\", \"TotalAmount\": 120.50},\n  {\"UserID\": 1234, \"BasketSize\": 3, \"PurchaseDate\": \"2021-05-22\", \"TotalAmount\": 45.99},\n  {\"UserID\": 9912, \"BasketSize\": 10, \"PurchaseDate\": \"2021-06-08\", \"TotalAmount\": 220.00},\n  {\"UserID\": 8765, \"BasketSize\": 1, \"PurchaseDate\": \"2021-05-30\", \"TotalAmount\": 9.99},\n  {\"UserID\": 4567, \"BasketSize\": 5, \"PurchaseDate\": \"2021-06-05\", \"TotalAmount\": 89.70}\n]", "constraints_num": 3, "constraints_splits": ["1. 输出格式必须是JSON;", "2. 分析的洞察和趋势应包括但不限于购物篮大小与总购买金额之间的关系、用户购买行为的时间趋势、频繁购买的用户特征、平均购买金额和购物篮大小、季节性或节假日购买模式(如果适用,请根据现有数据进行推测);", "3. 至少输出5条洞察分析;"], "levels2": ["输出格式约束", "包含约束", "数值约束"], "category": "trace1.0"} +{"id": "446", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "给出以下文本的摘要,并以JSON格式返回结果\n1. 摘要的字数限制在50字以内;\n2. 摘要内容需置于\"summary\"键之下;\n3. 返回结果格式为JSON;\n# Inputs:\n巴黎圣母院是法国巴黎市的一座天主教教堂,位于塞纳河畔的诺特丹岛上,是欧洲哥特式建筑的杰作之一。教堂的正式名称为巴黎圣母无原罪教堂。圣母院的尖塔高度达到69米,是巴黎市中心区内最高的建筑物。\n"}], "type": "trace", "description": "给出以下文本的摘要,并以JSON格式返回结果", "constraints": "1. 摘要的字数限制在50字以内;\n2. 摘要内容需置于\"summary\"键之下;\n3. 返回结果格式为JSON;", "input": "巴黎圣母院是法国巴黎市的一座天主教教堂,位于塞纳河畔的诺特丹岛上,是欧洲哥特式建筑的杰作之一。教堂的正式名称为巴黎圣母无原罪教堂。圣母院的尖塔高度达到69米,是巴黎市中心区内最高的建筑物。", "constraints_num": 3, "constraints_splits": ["1. 摘要的字数限制在50字以内;", "2. 摘要内容需置于\"summary\"键之下;", "3. 返回结果格式为JSON;"], "levels2": ["数值约束", "输出格式约束", "输出格式约束"], "category": "trace1.0"} +{"id": "447", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "使用JSON格式,给定一组人员的名字和对应的游戏得分,按照得分从高到低对他们进行排名。\n1. 输出结果中每个名字和得分的展示需要以列表形式;\n2. 每个条目之间的分隔符为逗号和空格;\n3. 输出结果的列表项数量应与输入一致;\n# Inputs:\n{\n  \"张三\": 75,\n  \"李四\": 90,\n  \"王五\": 60,\n  \"赵六\": 85\n}\n"}], "type": "trace", "description": "使用JSON格式,给定一组人员的名字和对应的游戏得分,按照得分从高到低对他们进行排名。", "constraints": "1. 输出结果中每个名字和得分的展示需要以列表形式;\n2. 每个条目之间的分隔符为逗号和空格;\n3. 输出结果的列表项数量应与输入一致;", "input": "{\n  \"张三\": 75,\n  \"李四\": 90,\n  \"王五\": 60,\n  \"赵六\": 85\n}", "constraints_num": 3, "constraints_splits": ["1. 输出结果中每个名字和得分的展示需要以列表形式;", "2. 每个条目之间的分隔符为逗号和空格;", "3. 输出结果的列表项数量应与输入一致;"], "levels2": ["编号和列表约束", "文本样式约束", "数值约束"], "category": "trace1.0"} +{"id": "448", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "将以下段落重新排列成合理的顺序,并按照事件发生的先后顺序使用阿拉伯数字进行编号。确保整个叙述符合逻辑,每个事件描述保持主谓宾结构的语法一致性,且整个故事的描述不应超过150字。\n1. 事件应按照发生的先后顺序排列;\n2. 整个故事的描述不应超过150字;\n3. 每个事件描述应保持主谓宾结构的语法一致性;\n# Inputs:\n1. 他受伤了,流了很多血。\n2. 困在一个荒岛上,没有食物或水。\n3. 他要想办法将自己从这个危险的情况中解救出来。\n4. 他游了五米到一块浮木上。\n5. 最后他发现了一只破碎的橡皮艇,用它离开了荒岛。\n"}], "type": "trace", "description": "将以下段落重新排列成合理的顺序,并按照事件发生的先后顺序使用阿拉伯数字进行编号。确保整个叙述符合逻辑,每个事件描述保持主谓宾结构的语法一致性,且整个故事的描述不应超过150字。", "constraints": "1. 事件应按照发生的先后顺序排列;\n2. 整个故事的描述不应超过150字;\n3. 每个事件描述应保持主谓宾结构的语法一致性;", "input": "1. 他受伤了,流了很多血。\n2. 困在一个荒岛上,没有食物或水。\n3. 他要想办法将自己从这个危险的情况中解救出来。\n4. 他游了五米到一块浮木上。\n5. 最后他发现了一只破碎的橡皮艇,用它离开了荒岛。", "constraints_num": 3, "constraints_splits": ["1. 事件应按照发生的先后顺序排列;", "2. 整个故事的描述不应超过150字;", "3. 每个事件描述应保持主谓宾结构的语法一致性;"], "levels2": ["语法结构约束", "数值约束", "语法结构约束"], "category": "trace1.0"} +{"id": "449", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "对文本内容进行文章摘要\n1. 摘要的字数需控制在100字以内;\n2. 摘要需以严谨正式的语气撰写;\n3. 摘要中应包含全球变暖对气候模式、海平面上升以及生物多样性损失的影响概述;\n# Inputs:\n全球变暖对人类造成了很大的影响,包括气候模式的变化、海平面上升、生物多样性的损失等。在过去的100年中,地球的平均温度上升了0.8摄氏度,现在的温度比工业化时期高了约1摄氏度。随着温度的升高,冰川融化速度加快,导致海平面上升,这是由于膨胀和水源增加的原因。这种情况可能会导致近岸地区的淹没和沿海城市的受损。此外,全球变暖还会导致生物多样性的损失,包括许多濒危物种灭绝的风险。\n"}], "type": "trace", "description": "对文本内容进行文章摘要", "constraints": "1. 摘要的字数需控制在100字以内;\n2. 摘要需以严谨正式的语气撰写;\n3. 摘要中应包含全球变暖对气候模式、海平面上升以及生物多样性损失的影响概述;", "input": "全球变暖对人类造成了很大的影响,包括气候模式的变化、海平面上升、生物多样性的损失等。在过去的100年中,地球的平均温度上升了0.8摄氏度,现在的温度比工业化时期高了约1摄氏度。随着温度的升高,冰川融化速度加快,导致海平面上升,这是由于膨胀和水源增加的原因。这种情况可能会导致近岸地区的淹没和沿海城市的受损。此外,全球变暖还会导致生物多样性的损失,包括许多濒危物种灭绝的风险。", "constraints_num": 3, "constraints_splits": ["1. 摘要的字数需控制在100字以内;", "2. 摘要需以严谨正式的语气撰写;", "3. 摘要中应包含全球变暖对气候模式、海平面上升以及生物多样性损失的影响概述;"], "levels2": ["数值约束", "语气风格约束", "包含约束"], "category": "trace1.0"} +{"id": "450", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "将10个国家与它们各自的首都进行匹配,并以表格形式呈现。\n1. 表格应包含两列,一列是国家名称,另一列是对应的首都名称;\n2. 需要至少核对两个可靠来源来验证所提供的信息以确保准确性;\n3. 匹配的国家包括但不限于希腊、法国和印度。\n# Inputs:\n| 国家       | 首都       |\n|------------|------------|\n| 希腊       |            |\n| 法国       |            |\n| 印度       |            |\n| 德国       |            |\n| 日本       |            |\n| 巴西       |            |\n| 澳大利亚   |            |\n| 加拿大     |            |\n| 埃及       |            |\n| 俄罗斯     |            |\n"}], "type": "trace", "description": "将10个国家与它们各自的首都进行匹配,并以表格形式呈现。", "constraints": "1. 表格应包含两列,一列是国家名称,另一列是对应的首都名称;\n2. 需要至少核对两个可靠来源来验证所提供的信息以确保准确性;\n3. 匹配的国家包括但不限于希腊、法国和印度。", "input": "| 国家       | 首都       |\n|------------|------------|\n| 希腊       |            |\n| 法国       |            |\n| 印度       |            |\n| 德国       |            |\n| 日本       |            |\n| 巴西       |            |\n| 澳大利亚   |            |\n| 加拿大     |            |\n| 埃及       |            |\n| 俄罗斯     |            |", "constraints_num": 3, "constraints_splits": ["1. 表格应包含两列,一列是国家名称,另一列是对应的首都名称;", "2. 需要至少核对两个可靠来源来验证所提供的信息以确保准确性;", "3. 匹配的国家包括但不限于希腊、法国和印度。"], "levels2": ["输出格式约束", "引用和参考约束", "包含约束"], "category": "trace1.0"} +{"id": "451", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "给定一个日期,输出该日期是星期几,并且格式为“月/日/年”。\n1. 输入的日期格式必须转换为“08/15/2021”这种形式;\n2. 输出的字符数不得超过20个字符;\n3. 结果需要明确显示是星期几;\n# Inputs:\n2021-08-15 00:00:00\n"}], "type": "trace", "description": "给定一个日期,输出该日期是星期几,并且格式为“月/日/年”。", "constraints": "1. 输入的日期格式必须转换为“08/15/2021”这种形式;\n2. 输出的字符数不得超过20个字符;\n3. 结果需要明确显示是星期几;", "input": "2021-08-15 00:00:00", "constraints_num": 3, "constraints_splits": ["1. 输入的日期格式必须转换为“08/15/2021”这种形式;", "2. 输出的字符数不得超过20个字符;", "3. 结果需要明确显示是星期几;"], "levels2": ["输出格式约束", "数值约束", "输出格式约束"], "category": "trace1.0"} +{"id": "452", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇关于“犀牛为什么濒危?”的回答,回答需基于给定的资料列表,解释每项原因如何导致犀牛濒危,字数在200至300字之间,并在文末以Markdown格式列出资料来源。\n1. 回答字数至少200字但不超过300字;\n2. 必须详细解释每项原因(栖息地丧失,人类猎捕,野生物种失去平衡,环境恶化)如何导致犀牛濒危;\n3. 文末以项目符号并使用Markdown格式列出资料来源。\n# Inputs:\n- 栖息地丧失:《犀牛栖息地的急剧减少》\n- 人类猎捕:《非法猎杀:犀牛角的诅咒》\n- 野生物种失去平衡:《生态平衡破坏与犀牛保护》\n- 环境恶化:《全球气候变化与犀牛生存》\n"}], "type": "trace", "description": "撰写一篇关于“犀牛为什么濒危?”的回答,回答需基于给定的资料列表,解释每项原因如何导致犀牛濒危,字数在200至300字之间,并在文末以Markdown格式列出资料来源。", "constraints": "1. 回答字数至少200字但不超过300字;\n2. 必须详细解释每项原因(栖息地丧失,人类猎捕,野生物种失去平衡,环境恶化)如何导致犀牛濒危;\n3. 文末以项目符号并使用Markdown格式列出资料来源。", "input": "- 栖息地丧失:《犀牛栖息地的急剧减少》\n- 人类猎捕:《非法猎杀:犀牛角的诅咒》\n- 野生物种失去平衡:《生态平衡破坏与犀牛保护》\n- 环境恶化:《全球气候变化与犀牛生存》", "constraints_num": 3, "constraints_splits": ["1. 回答字数至少200字但不超过300字;", "2. 必须详细解释每项原因(栖息地丧失,人类猎捕,野生物种失去平衡,环境恶化)如何导致犀牛濒危;", "3. 文末以项目符号并使用Markdown格式列出资料来源。"], "levels2": ["数值约束", "包含约束", "引用和参考约束"], "category": "trace1.0"} +{"id": "453", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "写一篇关于流行音乐的文章,重点介绍其历史背景、全球影响力以及个人偏爱这种音乐风格的详细理由\n1. 文章风格正式且带有个人见解;\n2. 文章长度在800至1000字之间;\n3. 至少引用三篇权威音乐评论或研究文献支持观点;\n"}], "type": "trace", "description": "写一篇关于流行音乐的文章,重点介绍其历史背景、全球影响力以及个人偏爱这种音乐风格的详细理由", "constraints": "1. 文章风格正式且带有个人见解;\n2. 文章长度在800至1000字之间;\n3. 至少引用三篇权威音乐评论或研究文献支持观点;", "input": "NULL", "constraints_num": 3, "constraints_splits": ["1. 文章风格正式且带有个人见解;", "2. 文章长度在800至1000字之间;", "3. 至少引用三篇权威音乐评论或研究文献支持观点;"], "levels2": ["语气风格约束", "数值约束", "引用和参考约束"], "category": "trace1.0"} +{"id": "454", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "查找并提供三星Galaxy S20 Ultra 512GB手机在官方商城和至少两个电商平台上的最新价格信息\n1. 结果以表格形式展示,包括平台名称、价格、是否有优惠活动等信息;\n2. 整个搜索过程不得超过30分钟;\n3. 价格需精确到小数点后两位;\n"}], "type": "trace", "description": "查找并提供三星Galaxy S20 Ultra 512GB手机在官方商城和至少两个电商平台上的最新价格信息", "constraints": "1. 结果以表格形式展示,包括平台名称、价格、是否有优惠活动等信息;\n2. 整个搜索过程不得超过30分钟;\n3. 价格需精确到小数点后两位;", "input": "NULL", "constraints_num": 3, "constraints_splits": ["1. 结果以表格形式展示,包括平台名称、价格、是否有优惠活动等信息;", "2. 整个搜索过程不得超过30分钟;", "3. 价格需精确到小数点后两位;"], "levels2": ["输出格式约束", "数值约束", "数值约束"], "category": "trace1.0"} +{"id": "455", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一个简短的故事,主题为“勇气”\n1. 故事长度严格控制在150字以内;\n2. 故事应采用正面、鼓舞人心的语气风格,确保内容积极向上;\n3. 故事中必须包含一个核心场景,描述主人公面对挑战时展现出勇气的瞬间;\n"}], "type": "trace", "description": "撰写一个简短的故事,主题为“勇气”", "constraints": "1. 故事长度严格控制在150字以内;\n2. 故事应采用正面、鼓舞人心的语气风格,确保内容积极向上;\n3. 故事中必须包含一个核心场景,描述主人公面对挑战时展现出勇气的瞬间;", "input": "NULL", "constraints_num": 3, "constraints_splits": ["1. 故事长度严格控制在150字以内;", "2. 故事应采用正面、鼓舞人心的语气风格,确保内容积极向上;", "3. 故事中必须包含一个核心场景,描述主人公面对挑战时展现出勇气的瞬间;"], "levels2": ["数值约束", "语气风格约束", "包含约束"], "category": "trace1.0"} +{"id": "456", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为给定的文本进行分类\n1. 分析风格应为文学评论语气;\n2. 分析角度为美学与文学;\n3. 分析字数控制在300字以内;\n# Inputs:\n“留白是每一篇优美文章的精髓,帮助我们的思想得到休息,有时间去品味和感受。它也是一种美学理念,提醒人们停下脚步并欣赏周围的世界。”\n"}], "type": "trace", "description": "为给定的文本进行分类", "constraints": "1. 分析风格应为文学评论语气;\n2. 分析角度为美学与文学;\n3. 分析字数控制在300字以内;", "input": "“留白是每一篇优美文章的精髓,帮助我们的思想得到休息,有时间去品味和感受。它也是一种美学理念,提醒人们停下脚步并欣赏周围的世界。”", "constraints_num": 3, "constraints_splits": ["1. 分析风格应为文学评论语气;", "2. 分析角度为美学与文学;", "3. 分析字数控制在300字以内;"], "levels2": ["语气风格约束", "主题约束", "数值约束"], "category": "trace1.0"} +{"id": "457", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为一篇聚焦于一位富有的商人的报导创建一个既吸引人又贴切的标题\n1. 标题应采用主谓结构,确保语法正确;\n2. 使用大写首字母以增强可读性和专业性;\n3. 标题应既吸引人又贴切;\n"}], "type": "trace", "description": "为一篇聚焦于一位富有的商人的报导创建一个既吸引人又贴切的标题", "constraints": "1. 标题应采用主谓结构,确保语法正确;\n2. 使用大写首字母以增强可读性和专业性;\n3. 标题应既吸引人又贴切;", "input": "NULL", "constraints_num": 3, "constraints_splits": ["1. 标题应采用主谓结构,确保语法正确;", "2. 使用大写首字母以增强可读性和专业性;", "3. 标题应既吸引人又贴切;"], "levels2": ["语法结构约束", "语言特征约束", "文本样式约束"], "category": "trace1.0"} +{"id": "458", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "使用JSON格式输出对给定文本组的情感分类结果\n1. 积极、消极和中性情感的文本数量应分别不少于1个;\n2. 结果中包含对每个文本情感判断的置信度评分,评分范围为0到1,1表示绝对确定;\n3. 输出的JSON格式应包含特定的字段结构;\n# Inputs:\n文本组:\n- 昨晚的比赛真是太精彩了!\n- 我对这个新产品没有兴趣。\n- 今天天气真好,阳光明媚!\n- 这个电影真是令人失望。\n- 现在的交通状况真是糟糕透了。\n- 喝一杯热咖啡,感觉很惬意。\n"}], "type": "trace", "description": "使用JSON格式输出对给定文本组的情感分类结果", "constraints": "1. 积极、消极和中性情感的文本数量应分别不少于1个;\n2. 结果中包含对每个文本情感判断的置信度评分,评分范围为0到1,1表示绝对确定;\n3. 输出的JSON格式应包含特定的字段结构;", "input": "文本组:\n- 昨晚的比赛真是太精彩了!\n- 我对这个新产品没有兴趣。\n- 今天天气真好,阳光明媚!\n- 这个电影真是令人失望。\n- 现在的交通状况真是糟糕透了。\n- 喝一杯热咖啡,感觉很惬意。", "constraints_num": 3, "constraints_splits": ["1. 积极、消极和中性情感的文本数量应分别不少于1个;", "2. 结果中包含对每个文本情感判断的置信度评分,评分范围为0到1,1表示绝对确定;", "3. 输出的JSON格式应包含特定的字段结构;"], "levels2": ["数值约束", "数值约束", "输出格式约束"], "category": "trace1.0"} +{"id": "459", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "编辑并转换给定段落为正式学术报告语调\n1. 字数控制在150字左右;\n2. 转换后的文本需保持原有描述性;\n3. 符合学术写作的规范与严谨性;\n# Inputs:\n在精心维护的花园中,一株引人注目的美丽花卉绽放。日光充沛,高悬于天际,洒下金色的光辉,细腻地覆盖在绿意盎然的草地上。树木间,鸟类的悦耳鸣叫此起彼伏,营造出一片生机勃勃的景象。\n"}], "type": "trace", "description": "编辑并转换给定段落为正式学术报告语调", "constraints": "1. 字数控制在150字左右;\n2. 转换后的文本需保持原有描述性;\n3. 符合学术写作的规范与严谨性;", "input": "在精心维护的花园中,一株引人注目的美丽花卉绽放。日光充沛,高悬于天际,洒下金色的光辉,细腻地覆盖在绿意盎然的草地上。树木间,鸟类的悦耳鸣叫此起彼伏,营造出一片生机勃勃的景象。", "constraints_num": 3, "constraints_splits": ["1. 字数控制在150字左右;", "2. 转换后的文本需保持原有描述性;", "3. 符合学术写作的规范与严谨性;"], "levels2": ["数值约束", "语言特征约束", "语气风格约束"], "category": "trace1.0"} +{"id": "460", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "将给定列表中的动物按栖息地分类,并以JSON格式输出分类结果。\n1. 分类应包括“陆地”、“海洋”和“极地”三个主要栖息地类别;\n2. 确保每个类别至少包含两个动物;\n3. 输出的JSON格式应包括一个名为\"animals_by_habitat\"的对象,其中包含三个子对象,分别对应上述的栖息地类别,每个子对象应包含一个名为\"animals\"的数组,列举该栖息地下分类的动物;\n# Inputs:\n狮子、北极熊、企鹅、袋鼠、鲨鱼、孔雀、大象。\n"}], "type": "trace", "description": "将给定列表中的动物按栖息地分类,并以JSON格式输出分类结果。", "constraints": "1. 分类应包括“陆地”、“海洋”和“极地”三个主要栖息地类别;\n2. 确保每个类别至少包含两个动物;\n3. 输出的JSON格式应包括一个名为\"animals_by_habitat\"的对象,其中包含三个子对象,分别对应上述的栖息地类别,每个子对象应包含一个名为\"animals\"的数组,列举该栖息地下分类的动物;", "input": "狮子、北极熊、企鹅、袋鼠、鲨鱼、孔雀、大象。", "constraints_num": 3, "constraints_splits": ["1. 分类应包括“陆地”、“海洋”和“极地”三个主要栖息地类别;", "2. 确保每个类别至少包含两个动物;", "3. 输出的JSON格式应包括一个名为\"animals_by_habitat\"的对象,其中包含三个子对象,分别对应上述的栖息地类别,每个子对象应包含一个名为\"animals\"的数组,列举该栖息地下分类的动物;"], "levels2": ["主题约束", "数值约束", "输出格式约束"], "category": "trace1.0"} +{"id": "461", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为给定文本写一篇概括性文章\n1. 文章应该使用Markdown格式;\n2. 概括性文章不超过3句话;\n3. 在概括中必须包含对\"宇宙空间\"的定义以及其组成部分的简要说明;\n# Inputs:\n夜空中的繁星点点,不仅仅是一盏盏遥远的灯火,它们构成了太阳系外那浩瀚无垠的宇宙空间——一个由行星、卫星、恒星、星云等组成的复杂生态系统,这里隐藏着生命存在的秘密,探索着那些现有或曾经孕育生物体的恒星系的故事。\n"}], "type": "trace", "description": "为给定文本写一篇概括性文章", "constraints": "1. 文章应该使用Markdown格式;\n2. 概括性文章不超过3句话;\n3. 在概括中必须包含对\"宇宙空间\"的定义以及其组成部分的简要说明;", "input": "夜空中的繁星点点,不仅仅是一盏盏遥远的灯火,它们构成了太阳系外那浩瀚无垠的宇宙空间——一个由行星、卫星、恒星、星云等组成的复杂生态系统,这里隐藏着生命存在的秘密,探索着那些现有或曾经孕育生物体的恒星系的故事。", "constraints_num": 3, "constraints_splits": ["1. 文章应该使用Markdown格式;", "2. 概括性文章不超过3句话;", "3. 在概括中必须包含对\"宇宙空间\"的定义以及其组成部分的简要说明;"], "levels2": ["输出格式约束", "数值约束", "包含约束"], "category": "trace1.0"} +{"id": "462", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "列出三个在国际上享有盛誉、来自不同国家和文化背景的卡通形象,包括它们的创作年份、创作者信息,并简要说明这些形象为何广受欢迎以及它们对各自文化的影响。\n1. 卡通形象需来自不同的国家和文化背景,以展示全球卡通艺术的多样性;\n2. 列出的卡通形象应包括创作年份和创作者信息;\n3. 描述中需要简要说明这些卡通形象为何广受欢迎,以及它们对各自文化的影响;\n"}], "type": "trace", "description": "列出三个在国际上享有盛誉、来自不同国家和文化背景的卡通形象,包括它们的创作年份、创作者信息,并简要说明这些形象为何广受欢迎以及它们对各自文化的影响。", "constraints": "1. 卡通形象需来自不同的国家和文化背景,以展示全球卡通艺术的多样性;\n2. 列出的卡通形象应包括创作年份和创作者信息;\n3. 描述中需要简要说明这些卡通形象为何广受欢迎,以及它们对各自文化的影响;", "input": "NULL", "constraints_num": 3, "constraints_splits": ["1. 卡通形象需来自不同的国家和文化背景,以展示全球卡通艺术的多样性;", "2. 列出的卡通形象应包括创作年份和创作者信息;", "3. 描述中需要简要说明这些卡通形象为何广受欢迎,以及它们对各自文化的影响;"], "levels2": ["主题约束", "输出格式约束", "包含约束"], "category": "trace1.0"} +{"id": "463", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "给出一份早餐菜单,包含至少10项热门选择和5项健康素食选项。\n1. 菜单应以表格形式呈现,包括菜名、价格、热量和主要成分;\n2. 菜单中使用专业餐饮风格的描述,确保菜名吸引人,描述清晰;\n3. 在菜单的底部附上一段简洁的指示,指导顾客如何从菜单中选择适合自己的早餐,例如,建议根据个人的热量需求和食材偏好进行选择;\n"}], "type": "trace", "description": "给出一份早餐菜单,包含至少10项热门选择和5项健康素食选项。", "constraints": "1. 菜单应以表格形式呈现,包括菜名、价格、热量和主要成分;\n2. 菜单中使用专业餐饮风格的描述,确保菜名吸引人,描述清晰;\n3. 在菜单的底部附上一段简洁的指示,指导顾客如何从菜单中选择适合自己的早餐,例如,建议根据个人的热量需求和食材偏好进行选择;", "input": "NULL", "constraints_num": 3, "constraints_splits": ["1. 菜单应以表格形式呈现,包括菜名、价格、热量和主要成分;", "2. 菜单中使用专业餐饮风格的描述,确保菜名吸引人,描述清晰;", "3. 在菜单的底部附上一段简洁的指示,指导顾客如何从菜单中选择适合自己的早餐,例如,建议根据个人的热量需求和食材偏好进行选择;"], "levels2": ["输出格式约束", "语气风格约束", "包含约束"], "category": "trace1.0"} +{"id": "464", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一封推荐信,介绍王小明作为市场营销经理的卓越表现和专业技能。\n1. 信中必须包含以下信息:王小明在市场调研、竞争分析、品牌管理和谈判方面的具体案例和成果,以及他对公司业绩提升的贡献;\n2. 推荐信应采用正式且赞赏的语气,以体现对王小明的高度评价;\n3. 推荐信的格式应包括抬头、正文和落款,且在正文部分使用段落分隔,使信息清晰有序;\n"}], "type": "trace", "description": "撰写一封推荐信,介绍王小明作为市场营销经理的卓越表现和专业技能。", "constraints": "1. 信中必须包含以下信息:王小明在市场调研、竞争分析、品牌管理和谈判方面的具体案例和成果,以及他对公司业绩提升的贡献;\n2. 推荐信应采用正式且赞赏的语气,以体现对王小明的高度评价;\n3. 推荐信的格式应包括抬头、正文和落款,且在正文部分使用段落分隔,使信息清晰有序;", "input": "NULL", "constraints_num": 3, "constraints_splits": ["1. 信中必须包含以下信息:王小明在市场调研、竞争分析、品牌管理和谈判方面的具体案例和成果,以及他对公司业绩提升的贡献;", "2. 推荐信应采用正式且赞赏的语气,以体现对王小明的高度评价;", "3. 推荐信的格式应包括抬头、正文和落款,且在正文部分使用段落分隔,使信息清晰有序;"], "levels2": ["包含约束", "语气风格约束", "层次化结构约束"], "category": "trace1.0"} +{"id": "465", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "分享一个关于中国历史或文化的有趣事实\n1. 分享的语气需正式但不失趣味;\n2. 内容简洁,字数控制在200字以内;\n3. 事实中提及的关键人物、地点或事件需使用斜体字标记,以增加阅读的趣味性和辨识度;\n"}], "type": "trace", "description": "分享一个关于中国历史或文化的有趣事实", "constraints": "1. 分享的语气需正式但不失趣味;\n2. 内容简洁,字数控制在200字以内;\n3. 事实中提及的关键人物、地点或事件需使用斜体字标记,以增加阅读的趣味性和辨识度;", "input": "NULL", "constraints_num": 3, "constraints_splits": ["1. 分享的语气需正式但不失趣味;", "2. 内容简洁,字数控制在200字以内;", "3. 事实中提及的关键人物、地点或事件需使用斜体字标记,以增加阅读的趣味性和辨识度;"], "levels2": ["语气风格约束", "数值约束", "文本样式约束"], "category": "trace1.0"} +{"id": "466", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "对“苹果手机64GB”与“三星手机64GB”进行详细比较\n1. 比较重点在价格、性能和用户评价;\n2. 比较内容包括最新市场售价、核心处理器型号、摄影头像素、电池容量和用户综合评分;\n3. 输出结果需以表格形式呈现,包含商品名称、市场价格、处理器型号、摄影头像素、电池容量、用户评分等列;\n"}], "type": "trace", "description": "对“苹果手机64GB”与“三星手机64GB”进行详细比较", "constraints": "1. 比较重点在价格、性能和用户评价;\n2. 比较内容包括最新市场售价、核心处理器型号、摄影头像素、电池容量和用户综合评分;\n3. 输出结果需以表格形式呈现,包含商品名称、市场价格、处理器型号、摄影头像素、电池容量、用户评分等列;", "input": "NULL", "constraints_num": 3, "constraints_splits": ["1. 比较重点在价格、性能和用户评价;", "2. 比较内容包括最新市场售价、核心处理器型号、摄影头像素、电池容量和用户综合评分;", "3. 输出结果需以表格形式呈现,包含商品名称、市场价格、处理器型号、摄影头像素、电池容量、用户评分等列;"], "levels2": ["包含约束", "包含约束", "输出格式约束"], "category": "trace1.0"} +{"id": "467", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以JSON格式对5条电影评论的情感极性(正面、负面、中性)进行分析,每条评论的情感分析结果应包括置信度评分,评分范围为0到1,1表示非常确定。输出结果中对于正面评价使用绿色字体,负面评价使用红色字体,中性评价使用黑色字体。\n1. 输出格式必须是JSON;\n2. 每条评论的情感分析结果应包括置信度评分,评分范围为0到1,1表示非常确定;\n3. 输出结果中对于正面评价使用绿色字体,负面评价使用红色字体,中性评价使用黑色字体;\n# Inputs:\n评论1: “这个电影太棒了,我一直在笑,强烈推荐!”\n评论2: “这部电影太无聊了,不值得花时间去看。”\n评论3: “我觉得这部电影还可以,但没有达到我的期望值。”\n评论4: “特效真的很震撼,但是剧情有些拖沓。”\n评论5: “演员的表演非常出色,但导演的剪辑手法让人感到混乱。”\n"}], "type": "trace", "description": "以JSON格式对5条电影评论的情感极性(正面、负面、中性)进行分析,每条评论的情感分析结果应包括置信度评分,评分范围为0到1,1表示非常确定。输出结果中对于正面评价使用绿色字体,负面评价使用红色字体,中性评价使用黑色字体。", "constraints": "1. 输出格式必须是JSON;\n2. 每条评论的情感分析结果应包括置信度评分,评分范围为0到1,1表示非常确定;\n3. 输出结果中对于正面评价使用绿色字体,负面评价使用红色字体,中性评价使用黑色字体;", "input": "评论1: “这个电影太棒了,我一直在笑,强烈推荐!”\n评论2: “这部电影太无聊了,不值得花时间去看。”\n评论3: “我觉得这部电影还可以,但没有达到我的期望值。”\n评论4: “特效真的很震撼,但是剧情有些拖沓。”\n评论5: “演员的表演非常出色,但导演的剪辑手法让人感到混乱。”", "constraints_num": 3, "constraints_splits": ["1. 输出格式必须是JSON;", "2. 每条评论的情感分析结果应包括置信度评分,评分范围为0到1,1表示非常确定;", "3. 输出结果中对于正面评价使用绿色字体,负面评价使用红色字体,中性评价使用黑色字体;"], "levels2": ["输出格式约束", "数值约束", "文本样式约束"], "category": "trace1.0"} +{"id": "468", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "提供三个在软件开发领域内具有影响力的编程语言的名称和简要介绍,但不包括Python和Java,且这三种语言应代表不同的编程范式。\n1. 不包括Python和Java;\n2. 必须包含三种不同编程范式的语言;\n3. 每种语言的介绍不得超过50字;\n"}], "type": "trace", "description": "提供三个在软件开发领域内具有影响力的编程语言的名称和简要介绍,但不包括Python和Java,且这三种语言应代表不同的编程范式。", "constraints": "1. 不包括Python和Java;\n2. 必须包含三种不同编程范式的语言;\n3. 每种语言的介绍不得超过50字;", "input": "NULL", "constraints_num": 3, "constraints_splits": ["1. 不包括Python和Java;", "2. 必须包含三种不同编程范式的语言;", "3. 每种语言的介绍不得超过50字;"], "levels2": ["排除约束", "包含约束", "数值约束"], "category": "trace1.0"} +{"id": "469", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "描述计算机网络中的TCP/IP协议工作原理,包括数据封装、传输、接收和解封装的过程,至少提及三次握手和四次挥手的细节。\n1. 描述应以专业学术的语气风格;\n2. 内容应详细且清晰,保证内容的准确性与专业性;\n3. 总字数控制在500至600字之间;\n"}], "type": "trace", "description": "描述计算机网络中的TCP/IP协议工作原理,包括数据封装、传输、接收和解封装的过程,至少提及三次握手和四次挥手的细节。", "constraints": "1. 描述应以专业学术的语气风格;\n2. 内容应详细且清晰,保证内容的准确性与专业性;\n3. 总字数控制在500至600字之间;", "input": "NULL", "constraints_num": 3, "constraints_splits": ["1. 描述应以专业学术的语气风格;", "2. 内容应详细且清晰,保证内容的准确性与专业性;", "3. 总字数控制在500至600字之间;"], "levels2": ["语气风格约束", "包含约束", "数值约束"], "category": "trace1.0"} +{"id": "470", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "推荐一部属于硬科幻类型的电影,并详细解释选择这部电影的原因。\n1. 推荐理由应包含至少3点关于电影剧情、科学概念或视觉效果的分析;\n2. 推荐理由的字数在200到300字之间;\n3. 推荐的电影在过去五年内上映。\n"}], "type": "trace", "description": "推荐一部属于硬科幻类型的电影,并详细解释选择这部电影的原因。", "constraints": "1. 推荐理由应包含至少3点关于电影剧情、科学概念或视觉效果的分析;\n2. 推荐理由的字数在200到300字之间;\n3. 推荐的电影在过去五年内上映。", "input": "NULL", "constraints_num": 3, "constraints_splits": ["1. 推荐理由应包含至少3点关于电影剧情、科学概念或视觉效果的分析;", "2. 推荐理由的字数在200到300字之间;", "3. 推荐的电影在过去五年内上映。"], "levels2": ["包含约束", "数值约束", "数值约束"], "category": "trace1.0"} +{"id": "471", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为某品牌的家用电器产品系列创造一个广告标语\n1. 标语应当体现产品的高品质与耐用性;\n2. 标语需展现家庭生活的温馨与便捷;\n3. 标语长度不得超过10个字;\n"}], "type": "trace", "description": "为某品牌的家用电器产品系列创造一个广告标语", "constraints": "1. 标语应当体现产品的高品质与耐用性;\n2. 标语需展现家庭生活的温馨与便捷;\n3. 标语长度不得超过10个字;", "input": "NULL", "constraints_num": 3, "constraints_splits": ["1. 标语应当体现产品的高品质与耐用性;", "2. 标语需展现家庭生活的温馨与便捷;", "3. 标语长度不得超过10个字;"], "levels2": ["主题约束", "主题约束", "数值约束"], "category": "trace1.0"} +{"id": "472", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "写一封感谢信给曾经帮助过你的人\n1. 信件采用正式而礼貌的语气;\n2. 在信件中需要明确提到对方帮助你的具体事例和时间,以及该帮助对你产生的具体影响;\n3. 信件格式应符合标准的书信格式,包括日期、称呼、正文、结尾和签名;\n"}], "type": "trace", "description": "写一封感谢信给曾经帮助过你的人", "constraints": "1. 信件采用正式而礼貌的语气;\n2. 在信件中需要明确提到对方帮助你的具体事例和时间,以及该帮助对你产生的具体影响;\n3. 信件格式应符合标准的书信格式,包括日期、称呼、正文、结尾和签名;", "input": "NULL", "constraints_num": 3, "constraints_splits": ["1. 信件采用正式而礼貌的语气;", "2. 在信件中需要明确提到对方帮助你的具体事例和时间,以及该帮助对你产生的具体影响;", "3. 信件格式应符合标准的书信格式,包括日期、称呼、正文、结尾和签名;"], "levels2": ["语气风格约束", "包含约束", "文本样式约束"], "category": "trace1.0"} +{"id": "473", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "分类以下品牌Acura, Audi, Porsche, Tesla分别属于哪个汽车制造商,并以表格形式展示。同时加入一个额外的品牌BMW及其制造商,整个回答不超过6句话。\n1. 回答格式必须是表格,包括品牌名称和制造商名称两列;\n2. 需要加入额外的品牌BMW及其制造商;\n3. 整个回答不超过6句话;\n"}], "type": "trace", "description": "分类以下品牌Acura, Audi, Porsche, Tesla分别属于哪个汽车制造商,并以表格形式展示。同时加入一个额外的品牌BMW及其制造商,整个回答不超过6句话。", "constraints": "1. 回答格式必须是表格,包括品牌名称和制造商名称两列;\n2. 需要加入额外的品牌BMW及其制造商;\n3. 整个回答不超过6句话;", "input": "NULL", "constraints_num": 3, "constraints_splits": ["1. 回答格式必须是表格,包括品牌名称和制造商名称两列;", "2. 需要加入额外的品牌BMW及其制造商;", "3. 整个回答不超过6句话;"], "levels2": ["输出格式约束", "包含约束", "数值约束"], "category": "trace1.0"} +{"id": "474", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "评估名为ABC贸易公司的市场竞争力\n1. 评估报告需采用JSON格式;\n2. 报告包含关键字段:\"公司概况\"、\"市场定位\"、\"竞争优势\"、\"竞争对手分析\"、\"潜在威胁\";\n3. 评估前需收集并分析ABC贸易公司在过去三年内的财务报表、市场份额变化及消费者反馈信息;\n"}], "type": "trace", "description": "评估名为ABC贸易公司的市场竞争力", "constraints": "1. 评估报告需采用JSON格式;\n2. 报告包含关键字段:\"公司概况\"、\"市场定位\"、\"竞争优势\"、\"竞争对手分析\"、\"潜在威胁\";\n3. 评估前需收集并分析ABC贸易公司在过去三年内的财务报表、市场份额变化及消费者反馈信息;", "input": "NULL", "constraints_num": 3, "constraints_splits": ["1. 评估报告需采用JSON格式;", "2. 报告包含关键字段:\"公司概况\"、\"市场定位\"、\"竞争优势\"、\"竞争对手分析\"、\"潜在威胁\";", "3. 评估前需收集并分析ABC贸易公司在过去三年内的财务报表、市场份额变化及消费者反馈信息;"], "levels2": ["输出格式约束", "包含约束", "自然语言流程背景信息约束"], "category": "trace1.0"} +{"id": "475", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "使用柱状图对给定的年龄分布数据进行可视化展示,并附有简短的文字说明解释图表的主要发现和趋势。\n1. 图表需清晰标注年龄段和对应人数;\n2. 采用专业、正式的风格,确保数据准确无误;\n3. 图表下方应附有简短的文字说明,解释图表的主要发现和趋势;\n# Inputs:\n年龄分布数据:0-10岁(10人),11-20岁(20人),21-30岁(50人),31-40岁(40人),41-50岁(25人),51-60岁(10人);\n"}], "type": "trace", "description": "使用柱状图对给定的年龄分布数据进行可视化展示,并附有简短的文字说明解释图表的主要发现和趋势。", "constraints": "1. 图表需清晰标注年龄段和对应人数;\n2. 采用专业、正式的风格,确保数据准确无误;\n3. 图表下方应附有简短的文字说明,解释图表的主要发现和趋势;", "input": "年龄分布数据:0-10岁(10人),11-20岁(20人),21-30岁(50人),31-40岁(40人),41-50岁(25人),51-60岁(10人);", "constraints_num": 3, "constraints_splits": ["1. 图表需清晰标注年龄段和对应人数;", "2. 采用专业、正式的风格,确保数据准确无误;", "3. 图表下方应附有简短的文字说明,解释图表的主要发现和趋势;"], "levels2": ["输出格式约束", "语气风格约束", "文本样式约束"], "category": "trace1.0"} +{"id": "476", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "给出一个包含10个正整数值的列表,并计算列表中数值的平均值、中位数和标准差。\n1. 列表应以JSON格式提供;\n2. 列表中的数值是按照从小到大的顺序排列的;\n3. 需要计算并提供平均值、中位数和标准差;\n"}], "type": "trace", "description": "给出一个包含10个正整数值的列表,并计算列表中数值的平均值、中位数和标准差。", "constraints": "1. 列表应以JSON格式提供;\n2. 列表中的数值是按照从小到大的顺序排列的;\n3. 需要计算并提供平均值、中位数和标准差;", "input": "NULL", "constraints_num": 3, "constraints_splits": ["1. 列表应以JSON格式提供;", "2. 列表中的数值是按照从小到大的顺序排列的;", "3. 需要计算并提供平均值、中位数和标准差;"], "levels2": ["输出格式约束", "编号和列表约束", "数值约束"], "category": "trace1.0"} +{"id": "477", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "解释什么是黑洞\n1. 解释的语气需严谨正式;\n2. 字数限制在300至500字之间;\n3. 至少引用1篇权威的天文学期刊文章以增强说明的科学性和可信度;\n"}], "type": "trace", "description": "解释什么是黑洞", "constraints": "1. 解释的语气需严谨正式;\n2. 字数限制在300至500字之间;\n3. 至少引用1篇权威的天文学期刊文章以增强说明的科学性和可信度;", "input": "NULL", "constraints_num": 3, "constraints_splits": ["1. 解释的语气需严谨正式;", "2. 字数限制在300至500字之间;", "3. 至少引用1篇权威的天文学期刊文章以增强说明的科学性和可信度;"], "levels2": ["语气风格约束", "数值约束", "引用和参考约束"], "category": "trace1.0"} +{"id": "478", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "设计一个包含标题、文字和图片的简单网页布局。\n1. 标题应该居中显示;\n2. 文字在图片的下方;\n3. 图片和文字应该并排显示;\n"}], "type": "trace", "description": "设计一个包含标题、文字和图片的简单网页布局。", "constraints": "1. 标题应该居中显示;\n2. 文字在图片的下方;\n3. 图片和文字应该并排显示;", "input": "NULL", "constraints_num": 3, "constraints_splits": ["1. 标题应该居中显示;", "2. 文字在图片的下方;", "3. 图片和文字应该并排显示;"], "levels2": ["模版约束", "文本样式约束", "文本样式约束"], "category": "trace1.0"} +{"id": "479", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "对给定文本进行情感分析\n1. 分析过程使用积极正面的语气风格描述;\n2. 分析结果包含至少3个支持结论的关键词;\n3. 结果应在30字以内表达;\n# Inputs:\n“我去年买了一台新电视,非常幸运地在促销时买到了。这是我第一次拥有这种超大型高清晰度电视,效果非常棒。我现在能够更好地欣赏我的喜欢的电影和电视节目了。”\n"}], "type": "trace", "description": "对给定文本进行情感分析", "constraints": "1. 分析过程使用积极正面的语气风格描述;\n2. 分析结果包含至少3个支持结论的关键词;\n3. 结果应在30字以内表达;", "input": "“我去年买了一台新电视,非常幸运地在促销时买到了。这是我第一次拥有这种超大型高清晰度电视,效果非常棒。我现在能够更好地欣赏我的喜欢的电影和电视节目了。”", "constraints_num": 3, "constraints_splits": ["1. 分析过程使用积极正面的语气风格描述;", "2. 分析结果包含至少3个支持结论的关键词;", "3. 结果应在30字以内表达;"], "levels2": ["语气风格约束", "包含约束", "数值约束"], "category": "trace1.0"} +{"id": "480", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "获得2022年10月10日上海的天气预报,并以表格形式报告\n1. 报告中应包含最高气温、最低气温和降水量的具体数值;\n2. 表格中还应包含天气状况的描述(如晴朗、多云、有雨等);\n3. 确保信息的准确性与及时性;\n"}], "type": "trace", "description": "获得2022年10月10日上海的天气预报,并以表格形式报告", "constraints": "1. 报告中应包含最高气温、最低气温和降水量的具体数值;\n2. 表格中还应包含天气状况的描述(如晴朗、多云、有雨等);\n3. 确保信息的准确性与及时性;", "input": "NULL", "constraints_num": 3, "constraints_splits": ["1. 报告中应包含最高气温、最低气温和降水量的具体数值;", "2. 表格中还应包含天气状况的描述(如晴朗、多云、有雨等);", "3. 确保信息的准确性与及时性;"], "levels2": ["包含约束", "包含约束", "价值观约束"], "category": "trace1.0"} +{"id": "481", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创作一篇有关未来居住环境的短篇小说\n1. 字数要求在1000至1500字之间;\n2. 小说应当以第一人称视角,采用科幻风格;\n3. 描述科技、社会和环境方面明显的变化;\n4. 科技变化应包括至少两种未来预测的科技产品或服务;\n5. 社会变化需体现未来社会结构、人际关系的变革;\n6. 环境变化则需涉及自然环境与人造环境的和谐共存;\n7. 故事结构应包含引言、发展、高潮和结尾四部分,形成完整的情节;\n8. 小说中应使用至少一次拟人化的修辞手法,以增加故事的生动性;\n9. 在描述未来科技时,尽可能避免使用当前已存在的科技名词,以增强未来感;\n10. 小说结尾需提供对未来居住环境变化的个人见解或启示,以引发读者思考;\n"}], "type": "trace", "description": "创作一篇有关未来居住环境的短篇小说", "constraints": "1. 字数要求在1000至1500字之间;\n2. 小说应当以第一人称视角,采用科幻风格;\n3. 描述科技、社会和环境方面明显的变化;\n4. 科技变化应包括至少两种未来预测的科技产品或服务;\n5. 社会变化需体现未来社会结构、人际关系的变革;\n6. 环境变化则需涉及自然环境与人造环境的和谐共存;\n7. 故事结构应包含引言、发展、高潮和结尾四部分,形成完整的情节;\n8. 小说中应使用至少一次拟人化的修辞手法,以增加故事的生动性;\n9. 在描述未来科技时,尽可能避免使用当前已存在的科技名词,以增强未来感;\n10. 小说结尾需提供对未来居住环境变化的个人见解或启示,以引发读者思考;", "input": "NULL", "constraints_num": 10, "constraints_splits": ["1. 字数要求在1000至1500字之间;", "2. 小说应当以第一人称视角,采用科幻风格;", "3. 描述科技、社会和环境方面明显的变化;", "4. 科技变化应包括至少两种未来预测的科技产品或服务;", "5. 社会变化需体现未来社会结构、人际关系的变革;", "6. 环境变化则需涉及自然环境与人造环境的和谐共存;", "7. 故事结构应包含引言、发展、高潮和结尾四部分,形成完整的情节;", "8. 小说中应使用至少一次拟人化的修辞手法,以增加故事的生动性;", "9. 在描述未来科技时,尽可能避免使用当前已存在的科技名词,以增强未来感;", "10. 小说结尾需提供对未来居住环境变化的个人见解或启示,以引发读者思考;"], "levels2": ["数值约束", "语气风格约束", "主题约束", "包含约束", "主题约束", "主题约束", "层次化结构约束", "语言特征约束", "排除约束", "主题约束"], "category": "trace1.0"} +{"id": "482", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建并格式化一份简历\n1. 简历需采用标准的商务格式;\n2. 顶部居中对齐显示姓名“张三”;\n3. 紧接着在下一行显示年龄“28岁”;\n4. 清晰的标题“职业:软件工程师”;\n5. 技能部分应使用项目符号列表格式列出;\n6. 工作经历部分应遵循逆向时间顺序,首先列出最近的工作经历;\n7. 工作经历使用标题“工作经历”,并以项目符号列表的形式列出每份工作,包括公司名称、工作职位和工作年限;\n8. 每个工作经历条目下应包含具体的工作职责和成就,使用子项目符号列表展示;\n9. 整个简历应采用简洁、专业的字体,如Arial或Calibri,字号为11;\n10. 所有标题应加粗以提高可读性和组织性;\n"}], "type": "trace", "description": "创建并格式化一份简历", "constraints": "1. 简历需采用标准的商务格式;\n2. 顶部居中对齐显示姓名“张三”;\n3. 紧接着在下一行显示年龄“28岁”;\n4. 清晰的标题“职业:软件工程师”;\n5. 技能部分应使用项目符号列表格式列出;\n6. 工作经历部分应遵循逆向时间顺序,首先列出最近的工作经历;\n7. 工作经历使用标题“工作经历”,并以项目符号列表的形式列出每份工作,包括公司名称、工作职位和工作年限;\n8. 每个工作经历条目下应包含具体的工作职责和成就,使用子项目符号列表展示;\n9. 整个简历应采用简洁、专业的字体,如Arial或Calibri,字号为11;\n10. 所有标题应加粗以提高可读性和组织性;", "input": "NULL", "constraints_num": 10, "constraints_splits": ["1. 简历需采用标准的商务格式;", "2. 顶部居中对齐显示姓名“张三”;", "3. 紧接着在下一行显示年龄“28岁”;", "4. 清晰的标题“职业:软件工程师”;", "5. 技能部分应使用项目符号列表格式列出;", "6. 工作经历部分应遵循逆向时间顺序,首先列出最近的工作经历;", "7. 工作经历使用标题“工作经历”,并以项目符号列表的形式列出每份工作,包括公司名称、工作职位和工作年限;", "8. 每个工作经历条目下应包含具体的工作职责和成就,使用子项目符号列表展示;", "9. 整个简历应采用简洁、专业的字体,如Arial或Calibri,字号为11;", "10. 所有标题应加粗以提高可读性和组织性;"], "levels2": ["文本样式约束", "文本样式约束", "文本样式约束", "文本样式约束", "编号和列表约束", "层次化结构约束", "层次化结构约束", "编号和列表约束", "文本样式约束", "文本样式约束"], "category": "trace1.0"} +{"id": "483", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇题为“坚持健康饮食”的学术论文\n1. 论文应包含引言、正文、结论三个部分;\n2. 总字数需在1200到1500字之间;\n3. 论文需采用正式严谨的语气风格;\n4. 详细探讨为什么健康饮食对身体健康至关重要,包括但不限于如何提供足够的营养和能量,以及健康饮食在预防高血压、糖尿病和心脏病等疾病方面的作用;\n5. 必须详述健康饮食对改善情绪、提高注意力和增强免疫力的影响;\n6. 通过案例分析展示坚持健康饮食的人如何拥有更好的体重管理和更高的生命质量;\n7. 论文中应包含至少3个相关领域的引用和参考文献,确保论据的准确性和有效性;\n8. 论文的结构应层次分明,段落清晰,首段为引言,中间为正文分析,末段为结论总结;\n9. 论文应遵循APA格式进行参考文献的引用和注释;\n10. 每个主要观点后应附上编号列表,列出支持该观点的证据或研究,以增强论文的说服力和专业性。\n"}], "type": "trace", "description": "撰写一篇题为“坚持健康饮食”的学术论文", "constraints": "1. 论文应包含引言、正文、结论三个部分;\n2. 总字数需在1200到1500字之间;\n3. 论文需采用正式严谨的语气风格;\n4. 详细探讨为什么健康饮食对身体健康至关重要,包括但不限于如何提供足够的营养和能量,以及健康饮食在预防高血压、糖尿病和心脏病等疾病方面的作用;\n5. 必须详述健康饮食对改善情绪、提高注意力和增强免疫力的影响;\n6. 通过案例分析展示坚持健康饮食的人如何拥有更好的体重管理和更高的生命质量;\n7. 论文中应包含至少3个相关领域的引用和参考文献,确保论据的准确性和有效性;\n8. 论文的结构应层次分明,段落清晰,首段为引言,中间为正文分析,末段为结论总结;\n9. 论文应遵循APA格式进行参考文献的引用和注释;\n10. 每个主要观点后应附上编号列表,列出支持该观点的证据或研究,以增强论文的说服力和专业性。", "input": "NULL", "constraints_num": 10, "constraints_splits": ["1. 论文应包含引言、正文、结论三个部分;", "2. 总字数需在1200到1500字之间;", "3. 论文需采用正式严谨的语气风格;", "4. 详细探讨为什么健康饮食对身体健康至关重要,包括但不限于如何提供足够的营养和能量,以及健康饮食在预防高血压、糖尿病和心脏病等疾病方面的作用;", "5. 必须详述健康饮食对改善情绪、提高注意力和增强免疫力的影响;", "6. 通过案例分析展示坚持健康饮食的人如何拥有更好的体重管理和更高的生命质量;", "7. 论文中应包含至少3个相关领域的引用和参考文献,确保论据的准确性和有效性;", "8. 论文的结构应层次分明,段落清晰,首段为引言,中间为正文分析,末段为结论总结;", "9. 论文应遵循APA格式进行参考文献的引用和注释;", "10. 每个主要观点后应附上编号列表,列出支持该观点的证据或研究,以增强论文的说服力和专业性。"], "levels2": ["层次化结构约束", "数值约束", "语气风格约束", "主题约束", "包含约束", "主题约束", "引用和参考约束", "层次化结构约束", "引用和参考约束", "编号和列表约束"], "category": "trace1.0"} +{"id": "484", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为一位对日本文化充满热情的客户规划一次完美的东京之旅。\n1. 角色扮演约束:您是一位经验丰富的旅行顾问;\n2. 出发日期是2022年5月1日,返回日期是2022年5月5日;\n3. 预算范围在1000至2000美元之间;\n4. 客户希望体验当地文化,品尝美食,同时参观一些著名景点;\n5. 在您的建议中应该包含至少3个必去的景点,推荐2家当地特色餐厅以及至少1个购物区域;\n6. 提供至少3个不同时间点的航班选项,以及每个选项的票价;\n7.请以表格形式呈现航班信息,包括航班号、出发时间、到达时间、价格。旅行建议部分应以项目符号列表形式列出,方便阅读;\n8. 语气风格约束:请使用友好、热情的语气,确保旅行建议既实用又有吸引力;\n9. 文本样式约束:请使用Markdown格式,如使用`**粗体**`来强调重要信息,确保文本在不同设备和平台上的可读性;\n10. 引用和参考约束:在推荐景点和餐厅时,提供至少1个官方网站或知名旅游博客的链接作为参考,以增加建议的可信度和丰富性;\n"}], "type": "trace", "description": "为一位对日本文化充满热情的客户规划一次完美的东京之旅。", "constraints": "1. 角色扮演约束:您是一位经验丰富的旅行顾问;\n2. 出发日期是2022年5月1日,返回日期是2022年5月5日;\n3. 预算范围在1000至2000美元之间;\n4. 客户希望体验当地文化,品尝美食,同时参观一些著名景点;\n5. 在您的建议中应该包含至少3个必去的景点,推荐2家当地特色餐厅以及至少1个购物区域;\n6. 提供至少3个不同时间点的航班选项,以及每个选项的票价;\n7.请以表格形式呈现航班信息,包括航班号、出发时间、到达时间、价格。旅行建议部分应以项目符号列表形式列出,方便阅读;\n8. 语气风格约束:请使用友好、热情的语气,确保旅行建议既实用又有吸引力;\n9. 文本样式约束:请使用Markdown格式,如使用`**粗体**`来强调重要信息,确保文本在不同设备和平台上的可读性;\n10. 引用和参考约束:在推荐景点和餐厅时,提供至少1个官方网站或知名旅游博客的链接作为参考,以增加建议的可信度和丰富性;", "input": "NULL", "constraints_num": 10, "constraints_splits": ["1. 角色扮演约束:您是一位经验丰富的旅行顾问;", "2. 出发日期是2022年5月1日,返回日期是2022年5月5日;", "3. 预算范围在1000至2000美元之间;", "4. 客户希望体验当地文化,品尝美食,同时参观一些著名景点;", "5. 在您的建议中应该包含至少3个必去的景点,推荐2家当地特色餐厅以及至少1个购物区域;", "6. 提供至少3个不同时间点的航班选项,以及每个选项的票价;", "7.请以表格形式呈现航班信息,包括航班号、出发时间、到达时间、价格。旅行建议部分应以项目符号列表形式列出,方便阅读;", "8. 语气风格约束:请使用友好、热情的语气,确保旅行建议既实用又有吸引力;", "9. 文本样式约束:请使用Markdown格式,如使用`**粗体**`来强调重要信息,确保文本在不同设备和平台上的可读性;", "10. 引用和参考约束:在推荐景点和餐厅时,提供至少1个官方网站或知名旅游博客的链接作为参考,以增加建议的可信度和丰富性;"], "levels2": ["角色扮演约束", "数值约束", "数值约束", "包含约束", "数值约束", "数值约束", "输出格式约束", "语气风格约束", "文本样式约束", "引用和参考约束"], "category": "trace1.0"} +{"id": "485", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一个个性化的三个月锻炼和健身计划\n1. 针对初学者级别的用户;\n2. 用户目前体重75公斤,身高175厘米;\n3. 每周可投入4-5小时进行锻炼;\n4. 计划应包含每周至少四次锻炼,每次锻炼时间在45-60分钟之间;\n5. 计划涵盖有氧和力量训练;\n6. 每月逐步增加锻炼强度和复杂度;\n7. 计划需要在每月初提供下个月的锻炼安排,包括每周的锻炼日程表;\n8. 每月结束时进行身体状况的评估和反馈;\n9. 计划中应包含热身和拉伸的指导;\n10. 如何有效使用现有设备进行训练的详细说明(用户家中拥有跑步机和一套轻型哑铃);\n# Inputs:\n用户目前体重75公斤,身高175厘米,每周可投入4-5小时进行锻炼,偏好有氧运动和力量训练,家中拥有跑步机和一套轻型哑铃。\n"}], "type": "trace", "description": "创建一个个性化的三个月锻炼和健身计划", "constraints": "1. 针对初学者级别的用户;\n2. 用户目前体重75公斤,身高175厘米;\n3. 每周可投入4-5小时进行锻炼;\n4. 计划应包含每周至少四次锻炼,每次锻炼时间在45-60分钟之间;\n5. 计划涵盖有氧和力量训练;\n6. 每月逐步增加锻炼强度和复杂度;\n7. 计划需要在每月初提供下个月的锻炼安排,包括每周的锻炼日程表;\n8. 每月结束时进行身体状况的评估和反馈;\n9. 计划中应包含热身和拉伸的指导;\n10. 如何有效使用现有设备进行训练的详细说明(用户家中拥有跑步机和一套轻型哑铃);", "input": "用户目前体重75公斤,身高175厘米,每周可投入4-5小时进行锻炼,偏好有氧运动和力量训练,家中拥有跑步机和一套轻型哑铃。", "constraints_num": 10, "constraints_splits": ["1. 针对初学者级别的用户;", "2. 用户目前体重75公斤,身高175厘米;", "3. 每周可投入4-5小时进行锻炼;", "4. 计划应包含每周至少四次锻炼,每次锻炼时间在45-60分钟之间;", "5. 计划涵盖有氧和力量训练;", "6. 每月逐步增加锻炼强度和复杂度;", "7. 计划需要在每月初提供下个月的锻炼安排,包括每周的锻炼日程表;", "8. 每月结束时进行身体状况的评估和反馈;", "9. 计划中应包含热身和拉伸的指导;", "10. 如何有效使用现有设备进行训练的详细说明(用户家中拥有跑步机和一套轻型哑铃);"], "levels2": ["受众目标约束", "文本背景信息约束", "数值约束", "数值约束", "包含约束", "数值约束", "输出格式约束", "自然语言流程背景信息约束", "包含约束", "文本背景信息约束"], "category": "trace1.0"} +{"id": "486", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "列出全球前10大科技公司,按市值从高到低排序,并提供公司信息\n1. 公司名称需用加粗字体显示;\n2. 总部所在地需用下划线标注;\n3. 主要产品或服务需使用斜体字;\n4. 每个公司的描述不得超过50字;\n5. 确保表格包含标题行;\n6. 使用Markdown格式进行排版;\n"}], "type": "trace", "description": "列出全球前10大科技公司,按市值从高到低排序,并提供公司信息", "constraints": "1. 公司名称需用加粗字体显示;\n2. 总部所在地需用下划线标注;\n3. 主要产品或服务需使用斜体字;\n4. 每个公司的描述不得超过50字;\n5. 确保表格包含标题行;\n6. 使用Markdown格式进行排版;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["1. 公司名称需用加粗字体显示;", "2. 总部所在地需用下划线标注;", "3. 主要产品或服务需使用斜体字;", "4. 每个公司的描述不得超过50字;", "5. 确保表格包含标题行;", "6. 使用Markdown格式进行排版;"], "levels2": ["文本样式约束", "文本样式约束", "文本样式约束", "数值约束", "表格背景信息约束", "输出格式约束"], "category": "trace1.0"} +{"id": "487", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "对七种食物进行甜咸分类,并撰写一份正式的商务风格报告,分类结果需以表格形式呈现,报告需包含对饮食平衡的个人见解。\n1. 报告的书写需使用Times New Roman字体,字号为12;\n2. 报告的总字数应控制在200至300字之间;\n3. 分类的食物包括披萨、薯条、冰淇淋、烤肉、糖果、薯片、泡面;\n4. 报告中需额外提及一种有代表性的甜食和一种咸食,以增强报告的全面性;\n5. 分类结果以表格形式呈现;\n6. 报告结尾须附上分类的总结和对饮食平衡的个人见解;\n"}], "type": "trace", "description": "对七种食物进行甜咸分类,并撰写一份正式的商务风格报告,分类结果需以表格形式呈现,报告需包含对饮食平衡的个人见解。", "constraints": "1. 报告的书写需使用Times New Roman字体,字号为12;\n2. 报告的总字数应控制在200至300字之间;\n3. 分类的食物包括披萨、薯条、冰淇淋、烤肉、糖果、薯片、泡面;\n4. 报告中需额外提及一种有代表性的甜食和一种咸食,以增强报告的全面性;\n5. 分类结果以表格形式呈现;\n6. 报告结尾须附上分类的总结和对饮食平衡的个人见解;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["1. 报告的书写需使用Times New Roman字体,字号为12;", "2. 报告的总字数应控制在200至300字之间;", "3. 分类的食物包括披萨、薯条、冰淇淋、烤肉、糖果、薯片、泡面;", "4. 报告中需额外提及一种有代表性的甜食和一种咸食,以增强报告的全面性;", "5. 分类结果以表格形式呈现;", "6. 报告结尾须附上分类的总结和对饮食平衡的个人见解;"], "levels2": ["文本样式约束", "数值约束", "包含约束", "包含约束", "输出格式约束", "层次化结构约束"], "category": "trace1.0"} +{"id": "488", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇评论文章,比较和对比在学校里设置课后自习室议题的两种对立观点。\n1. 文章应包括引言段落,概述有争议的文章背景和两个观点;\n2. 随后的段落需分别详细阐述观点一和观点二;\n3. 采用正式、客观的语气风格进行论述;\n4. 使用表格格式对比观点,列出每种观点的三个主要论据,并讨论其合理性;\n5. 文章以明确的结论段落结束,陈述个人立场及至少两个支持理由;\n6. 文章总字数应在1000至1200字之间。\n"}], "type": "trace", "description": "撰写一篇评论文章,比较和对比在学校里设置课后自习室议题的两种对立观点。", "constraints": "1. 文章应包括引言段落,概述有争议的文章背景和两个观点;\n2. 随后的段落需分别详细阐述观点一和观点二;\n3. 采用正式、客观的语气风格进行论述;\n4. 使用表格格式对比观点,列出每种观点的三个主要论据,并讨论其合理性;\n5. 文章以明确的结论段落结束,陈述个人立场及至少两个支持理由;\n6. 文章总字数应在1000至1200字之间。", "input": "NULL", "constraints_num": 6, "constraints_splits": ["1. 文章应包括引言段落,概述有争议的文章背景和两个观点;", "2. 随后的段落需分别详细阐述观点一和观点二;", "3. 采用正式、客观的语气风格进行论述;", "4. 使用表格格式对比观点,列出每种观点的三个主要论据,并讨论其合理性;", "5. 文章以明确的结论段落结束,陈述个人立场及至少两个支持理由;", "6. 文章总字数应在1000至1200字之间。"], "levels2": ["层次化结构约束", "层次化结构约束", "语气风格约束", "输出格式约束", "层次化结构约束", "数值约束"], "category": "trace1.0"} +{"id": "489", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以严谨正式的学术语气撰写一篇关于现代科技如何改变教育的论文,重点突出其积极影响。\n1. 论文结构包含引言、至少3个科技在教育应用中的案例分析、对每个案例的深入讨论、结论以及对未来科技教育趋势的展望;\n2. 论文长度应控制在2500至3000字之间;\n3. 在撰写过程中,需至少引用5篇相关领域的学术期刊文章作为论据支持;\n4. 所有引用遵循APA格式;\n5. 论文需以LaTeX格式提交,包括标题、作者信息、摘要、关键词、正文、参考文献等部分;\n6. 正文中使用12号Times New Roman字体,单倍行距,段落首行缩进2字符;\n"}], "type": "trace", "description": "以严谨正式的学术语气撰写一篇关于现代科技如何改变教育的论文,重点突出其积极影响。", "constraints": "1. 论文结构包含引言、至少3个科技在教育应用中的案例分析、对每个案例的深入讨论、结论以及对未来科技教育趋势的展望;\n2. 论文长度应控制在2500至3000字之间;\n3. 在撰写过程中,需至少引用5篇相关领域的学术期刊文章作为论据支持;\n4. 所有引用遵循APA格式;\n5. 论文需以LaTeX格式提交,包括标题、作者信息、摘要、关键词、正文、参考文献等部分;\n6. 正文中使用12号Times New Roman字体,单倍行距,段落首行缩进2字符;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["1. 论文结构包含引言、至少3个科技在教育应用中的案例分析、对每个案例的深入讨论、结论以及对未来科技教育趋势的展望;", "2. 论文长度应控制在2500至3000字之间;", "3. 在撰写过程中,需至少引用5篇相关领域的学术期刊文章作为论据支持;", "4. 所有引用遵循APA格式;", "5. 论文需以LaTeX格式提交,包括标题、作者信息、摘要、关键词、正文、参考文献等部分;", "6. 正文中使用12号Times New Roman字体,单倍行距,段落首行缩进2字符;"], "levels2": ["层次化结构约束", "数值约束", "引用和参考约束", "引用和参考约束", "输出格式约束", "文本样式约束"], "category": "trace1.0"} +{"id": "490", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "编辑一篇有关气候变化的论文摘要\n1. 摘要应遵循学术论文的格式,包含引言(背景)、目的、方法、结果和结论五个部分;\n2. 摘要的字数应控制在250至300字之间;\n3. 描述气候变化现象时需引用联合国政府间气候变化专门委员会(IPCC)的最新报告作为数据来源;\n4. 摘要的风格应保持严谨正式,使用学术术语和表述,避免使用非专业的口语化表达;\n5. 摘要中需明确指出至少一个具体的气候变化现象,并提出一种应对策略,以体现论文的实用价值和科学贡献;\n6. 在摘要的结论部分,需强调采取行动的紧迫性和重要性,并呼吁全球范围内采取强有力的政策和行动;\n"}], "type": "trace", "description": "编辑一篇有关气候变化的论文摘要", "constraints": "1. 摘要应遵循学术论文的格式,包含引言(背景)、目的、方法、结果和结论五个部分;\n2. 摘要的字数应控制在250至300字之间;\n3. 描述气候变化现象时需引用联合国政府间气候变化专门委员会(IPCC)的最新报告作为数据来源;\n4. 摘要的风格应保持严谨正式,使用学术术语和表述,避免使用非专业的口语化表达;\n5. 摘要中需明确指出至少一个具体的气候变化现象,并提出一种应对策略,以体现论文的实用价值和科学贡献;\n6. 在摘要的结论部分,需强调采取行动的紧迫性和重要性,并呼吁全球范围内采取强有力的政策和行动;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["1. 摘要应遵循学术论文的格式,包含引言(背景)、目的、方法、结果和结论五个部分;", "2. 摘要的字数应控制在250至300字之间;", "3. 描述气候变化现象时需引用联合国政府间气候变化专门委员会(IPCC)的最新报告作为数据来源;", "4. 摘要的风格应保持严谨正式,使用学术术语和表述,避免使用非专业的口语化表达;", "5. 摘要中需明确指出至少一个具体的气候变化现象,并提出一种应对策略,以体现论文的实用价值和科学贡献;", "6. 在摘要的结论部分,需强调采取行动的紧迫性和重要性,并呼吁全球范围内采取强有力的政策和行动;"], "levels2": ["层次化结构约束", "数值约束", "引用和参考约束", "语气风格约束", "包含约束", "语气风格约束"], "category": "trace1.0"} +{"id": "491", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "编辑一篇题为“人工智能的未来”的文章\n1. 文章应采用清晰的层次结构,使用标题和子标题来组织内容;\n2. 遵循APA引用格式;\n3. 文章语气为专业学术,包含对人工智能未来发展方向的深入分析及其对社会的潜在影响;\n4. 文章中必须包含至少3个具体案例来阐述人工智能技术的应用和影响;\n5. 文章总字数应在1500至2000字之间;\n6. 每个部分需要有明确的开头和结尾,确保逻辑连贯性和深度;\n"}], "type": "trace", "description": "编辑一篇题为“人工智能的未来”的文章", "constraints": "1. 文章应采用清晰的层次结构,使用标题和子标题来组织内容;\n2. 遵循APA引用格式;\n3. 文章语气为专业学术,包含对人工智能未来发展方向的深入分析及其对社会的潜在影响;\n4. 文章中必须包含至少3个具体案例来阐述人工智能技术的应用和影响;\n5. 文章总字数应在1500至2000字之间;\n6. 每个部分需要有明确的开头和结尾,确保逻辑连贯性和深度;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["1. 文章应采用清晰的层次结构,使用标题和子标题来组织内容;", "2. 遵循APA引用格式;", "3. 文章语气为专业学术,包含对人工智能未来发展方向的深入分析及其对社会的潜在影响;", "4. 文章中必须包含至少3个具体案例来阐述人工智能技术的应用和影响;", "5. 文章总字数应在1500至2000字之间;", "6. 每个部分需要有明确的开头和结尾,确保逻辑连贯性和深度;"], "levels2": ["层次化结构约束", "引用和参考约束", "语气风格约束", "包含约束", "数值约束", "层次化结构约束"], "category": "trace1.0"} +{"id": "492", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一份针对软件开发行业的专业竞争分析报告。\n1. 报告应采用正式的商务报告格式,包含标题页、目录、引言、竞争者概览、详细分析、结论和参考文献部分;\n2. 分析至少5个潜在竞争对手的详细信息,每个竞争对手的分析应不少于200字;\n3. 报告需包括竞争对手的市场份额、产品特点、客户基础、优势和劣势;\n4. 分析应基于最近的行业报告和公开数据,确保信息的准确性和时效性;\n5. 报告中应包含一个SWOT分析表格,总结每个竞争对手的优势(Strengths)、劣势(Weaknesses)、机会(Opportunities)和威胁(Threats);\n6. 报告需要提出至少3项关于如何应对竞争的具体建议,每项建议应附有实施的可行性和潜在影响分析;\n"}], "type": "trace", "description": "撰写一份针对软件开发行业的专业竞争分析报告。", "constraints": "1. 报告应采用正式的商务报告格式,包含标题页、目录、引言、竞争者概览、详细分析、结论和参考文献部分;\n2. 分析至少5个潜在竞争对手的详细信息,每个竞争对手的分析应不少于200字;\n3. 报告需包括竞争对手的市场份额、产品特点、客户基础、优势和劣势;\n4. 分析应基于最近的行业报告和公开数据,确保信息的准确性和时效性;\n5. 报告中应包含一个SWOT分析表格,总结每个竞争对手的优势(Strengths)、劣势(Weaknesses)、机会(Opportunities)和威胁(Threats);\n6. 报告需要提出至少3项关于如何应对竞争的具体建议,每项建议应附有实施的可行性和潜在影响分析;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["1. 报告应采用正式的商务报告格式,包含标题页、目录、引言、竞争者概览、详细分析、结论和参考文献部分;", "2. 分析至少5个潜在竞争对手的详细信息,每个竞争对手的分析应不少于200字;", "3. 报告需包括竞争对手的市场份额、产品特点、客户基础、优势和劣势;", "4. 分析应基于最近的行业报告和公开数据,确保信息的准确性和时效性;", "5. 报告中应包含一个SWOT分析表格,总结每个竞争对手的优势(Strengths)、劣势(Weaknesses)、机会(Opportunities)和威胁(Threats);", "6. 报告需要提出至少3项关于如何应对竞争的具体建议,每项建议应附有实施的可行性和潜在影响分析;"], "levels2": ["层次化结构约束", "数值约束", "包含约束", "价值观约束", "包含约束", "数值约束"], "category": "trace1.0"} +{"id": "493", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一份对比分析报告,详细比较iPad和Microsoft Surface两种电子产品的优缺点。\n1. 报告中需明确列出每种产品的5个主要特征和用途;\n2. 在分析优缺点时,确保每一点都包含至少150字的详细描述;\n3. 以项目符号列表的形式展示分析结果;\n4. 报告应采用正式、客观的语气撰写;\n5. 使用下划线突出产品名称;\n6. 在文档结尾处附上参考文献列表,遵循APA引用格式;\n"}], "type": "trace", "description": "撰写一份对比分析报告,详细比较iPad和Microsoft Surface两种电子产品的优缺点。", "constraints": "1. 报告中需明确列出每种产品的5个主要特征和用途;\n2. 在分析优缺点时,确保每一点都包含至少150字的详细描述;\n3. 以项目符号列表的形式展示分析结果;\n4. 报告应采用正式、客观的语气撰写;\n5. 使用下划线突出产品名称;\n6. 在文档结尾处附上参考文献列表,遵循APA引用格式;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["1. 报告中需明确列出每种产品的5个主要特征和用途;", "2. 在分析优缺点时,确保每一点都包含至少150字的详细描述;", "3. 以项目符号列表的形式展示分析结果;", "4. 报告应采用正式、客观的语气撰写;", "5. 使用下划线突出产品名称;", "6. 在文档结尾处附上参考文献列表,遵循APA引用格式;"], "levels2": ["编号和列表约束", "数值约束", "编号和列表约束", "语气风格约束", "文本样式约束", "引用和参考约束"], "category": "trace1.0"} +{"id": "494", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为一段对话设计场景和目的\n1. 场景应设定在一个轻松的办公室环境中;\n2. 对话发生在两个熟识的同事之间;\n3. 目标受众为职场新人;\n4. 目的是展示如何在工作场合中以礼貌和关心的方式进行日常交流;\n5. 对话应采用友好、关心的语气风格;\n6. 对话中要体现出职场中适当的礼貌和尊重;\n"}], "type": "trace", "description": "为一段对话设计场景和目的", "constraints": "1. 场景应设定在一个轻松的办公室环境中;\n2. 对话发生在两个熟识的同事之间;\n3. 目标受众为职场新人;\n4. 目的是展示如何在工作场合中以礼貌和关心的方式进行日常交流;\n5. 对话应采用友好、关心的语气风格;\n6. 对话中要体现出职场中适当的礼貌和尊重;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["1. 场景应设定在一个轻松的办公室环境中;", "2. 对话发生在两个熟识的同事之间;", "3. 目标受众为职场新人;", "4. 目的是展示如何在工作场合中以礼貌和关心的方式进行日常交流;", "5. 对话应采用友好、关心的语气风格;", "6. 对话中要体现出职场中适当的礼貌和尊重;"], "levels2": ["角色扮演约束", "角色扮演约束", "受众目标约束", "语气风格约束", "语气风格约束", "语气风格约束"], "category": "trace1.0"} +{"id": "495", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "要求模型详细比较两个替代方案在保护环境方面的贡献,并基于比较结果确定哪个方案更可取。\n1. 评估报告应包含对每种方案的实施难度、成本影响、环境影响的量化分析,至少引用3篇相关研究报告作为支持。\n2. 分析每种方案在减少垃圾量、资源消耗、碳足迹方面的具体贡献,须提供数据支持。\n3. 阐述每种方案的潜在问题和挑战,以及可能的解决方案。\n4. 评估报告应以表格形式呈现,对比替代方案1(将塑料袋替换为纸袋)和替代方案2(宣传人们使用可重复使用的布袋)的各个方面。\n5. 报告总字数应在1000字左右。\n6. 最后,说明哪种替代方案在保护环境方面更为可取,为什么,并提供至少2个实证理由支持结论。\n"}], "type": "trace", "description": "要求模型详细比较两个替代方案在保护环境方面的贡献,并基于比较结果确定哪个方案更可取。", "constraints": "1. 评估报告应包含对每种方案的实施难度、成本影响、环境影响的量化分析,至少引用3篇相关研究报告作为支持。\n2. 分析每种方案在减少垃圾量、资源消耗、碳足迹方面的具体贡献,须提供数据支持。\n3. 阐述每种方案的潜在问题和挑战,以及可能的解决方案。\n4. 评估报告应以表格形式呈现,对比替代方案1(将塑料袋替换为纸袋)和替代方案2(宣传人们使用可重复使用的布袋)的各个方面。\n5. 报告总字数应在1000字左右。\n6. 最后,说明哪种替代方案在保护环境方面更为可取,为什么,并提供至少2个实证理由支持结论。", "input": "NULL", "constraints_num": 6, "constraints_splits": ["1. 评估报告应包含对每种方案的实施难度、成本影响、环境影响的量化分析,至少引用3篇相关研究报告作为支持。", "2. 分析每种方案在减少垃圾量、资源消耗、碳足迹方面的具体贡献,须提供数据支持。", "3. 阐述每种方案的潜在问题和挑战,以及可能的解决方案。", "4. 评估报告应以表格形式呈现,对比替代方案1(将塑料袋替换为纸袋)和替代方案2(宣传人们使用可重复使用的布袋)的各个方面。", "5. 报告总字数应在1000字左右。", "6. 最后,说明哪种替代方案在保护环境方面更为可取,为什么,并提供至少2个实证理由支持结论。"], "levels2": ["引用和参考约束", "引用和参考约束", "包含约束", "输出格式约束", "数值约束", "数值约束"], "category": "trace1.0"} +{"id": "496", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "详细说明在家里种植香菜的步骤,包括准备、种植和养护阶段,每个阶段至少提供3个关键步骤,同时列出所需材料和每一步骤的预期时间。确保信息对初学者友好,提供至少3个种植过程中可能遇到的常见问题及解决方法,总字数控制在1000字以内。\n1. 步骤清单形式;\n2. 包含准备、种植、养护三个阶段,每个阶段至少3个关键步骤;\n3. 包含所需材料的详细列表和每一步骤的预期时间;\n4. 信息需对没有种植经验的初学者易于理解;\n5. 提供至少3个在种植过程中可能遇到的常见问题及解决方法;\n6. 总字数控制在1000字以内。\n"}], "type": "trace", "description": "详细说明在家里种植香菜的步骤,包括准备、种植和养护阶段,每个阶段至少提供3个关键步骤,同时列出所需材料和每一步骤的预期时间。确保信息对初学者友好,提供至少3个种植过程中可能遇到的常见问题及解决方法,总字数控制在1000字以内。", "constraints": "1. 步骤清单形式;\n2. 包含准备、种植、养护三个阶段,每个阶段至少3个关键步骤;\n3. 包含所需材料的详细列表和每一步骤的预期时间;\n4. 信息需对没有种植经验的初学者易于理解;\n5. 提供至少3个在种植过程中可能遇到的常见问题及解决方法;\n6. 总字数控制在1000字以内。", "input": "NULL", "constraints_num": 6, "constraints_splits": ["1. 步骤清单形式;", "2. 包含准备、种植、养护三个阶段,每个阶段至少3个关键步骤;", "3. 包含所需材料的详细列表和每一步骤的预期时间;", "4. 信息需对没有种植经验的初学者易于理解;", "5. 提供至少3个在种植过程中可能遇到的常见问题及解决方法;", "6. 总字数控制在1000字以内。"], "levels2": ["编号和列表约束", "包含约束", "包含约束", "受众目标约束", "数值约束", "数值约束"], "category": "trace1.0"} +{"id": "497", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "计算并返回给定两个数的平均值\n1. 首先列出数值1和数值2;\n2. 计算它们的平均值;\n3. 最后以\"数值1和数值2的平均值是X\"的句式返回结果;\n4. 数值1和数值2应分别列出;\n5. 计算平均值时,请确保使用正确的数学运算;\n6. 以小数点后两位的精度返回结果;\n# Inputs:\n数值1:25;数值2:37\n"}], "type": "trace", "description": "计算并返回给定两个数的平均值", "constraints": "1. 首先列出数值1和数值2;\n2. 计算它们的平均值;\n3. 最后以\"数值1和数值2的平均值是X\"的句式返回结果;\n4. 数值1和数值2应分别列出;\n5. 计算平均值时,请确保使用正确的数学运算;\n6. 以小数点后两位的精度返回结果;", "input": "数值1:25;数值2:37", "constraints_num": 6, "constraints_splits": ["1. 首先列出数值1和数值2;", "2. 计算它们的平均值;", "3. 最后以\"数值1和数值2的平均值是X\"的句式返回结果;", "4. 数值1和数值2应分别列出;", "5. 计算平均值时,请确保使用正确的数学运算;", "6. 以小数点后两位的精度返回结果;"], "levels2": ["编号和列表约束", "数值约束", "文本样式约束", "编号和列表约束", "数值约束", "数值约束"], "category": "trace1.0"} +{"id": "498", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "完成一份简历\n1. 简历应采用标准的简历模板格式;\n2. 简历包含个人基本信息、教育背景、工作经历、个人技能等四个部分,且每个部分都要有明确的标题;\n3. 简历的总字数应控制在500字以内;\n4. 在个人技能部分,需要使用项目符号列出具体的技能,如Java、Python、HTML、CSS、JavaScript等;\n5. 在列出技能时,对每项技能进行简单的描述,如“Java:具有3年以上的Java开发经验,熟悉Spring Boot框架”;\n6. 简历中涉及的年份、公司名、技能名等关键信息需使用粗体显示以突出重点;\n"}], "type": "trace", "description": "完成一份简历", "constraints": "1. 简历应采用标准的简历模板格式;\n2. 简历包含个人基本信息、教育背景、工作经历、个人技能等四个部分,且每个部分都要有明确的标题;\n3. 简历的总字数应控制在500字以内;\n4. 在个人技能部分,需要使用项目符号列出具体的技能,如Java、Python、HTML、CSS、JavaScript等;\n5. 在列出技能时,对每项技能进行简单的描述,如“Java:具有3年以上的Java开发经验,熟悉Spring Boot框架”;\n6. 简历中涉及的年份、公司名、技能名等关键信息需使用粗体显示以突出重点;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["1. 简历应采用标准的简历模板格式;", "2. 简历包含个人基本信息、教育背景、工作经历、个人技能等四个部分,且每个部分都要有明确的标题;", "3. 简历的总字数应控制在500字以内;", "4. 在个人技能部分,需要使用项目符号列出具体的技能,如Java、Python、HTML、CSS、JavaScript等;", "5. 在列出技能时,对每项技能进行简单的描述,如“Java:具有3年以上的Java开发经验,熟悉Spring Boot框架”;", "6. 简历中涉及的年份、公司名、技能名等关键信息需使用粗体显示以突出重点;"], "levels2": ["模版约束", "层次化结构约束", "数值约束", "编号和列表约束", "文本样式约束", "文本样式约束"], "category": "trace1.0"} +{"id": "499", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一份关于最近发布的社论《警惕“抑郁症趋势化”将心理问题当成潮流玩》的摘要,并附上基于个人理解和专业知识的评论。\n1. 摘要和评论应针对关注心理健康和公共健康的读者群体;\n2. 摘要语气正式且客观,评论部分采用温和而理解的语气;\n3. 避免任何可能引发争议或误解的措辞;\n4. 摘要和评论部分应使用清晰的段落划分,每段首行缩进;\n5. 摘要部分的关键词,如“抑郁症趋势化”、“心理问题”、“潮流玩”,需用下划线强调,以增强文本的可读性和视觉效果;\n6. 摘要应简洁明了。\n"}], "type": "trace", "description": "撰写一份关于最近发布的社论《警惕“抑郁症趋势化”将心理问题当成潮流玩》的摘要,并附上基于个人理解和专业知识的评论。", "constraints": "1. 摘要和评论应针对关注心理健康和公共健康的读者群体;\n2. 摘要语气正式且客观,评论部分采用温和而理解的语气;\n3. 避免任何可能引发争议或误解的措辞;\n4. 摘要和评论部分应使用清晰的段落划分,每段首行缩进;\n5. 摘要部分的关键词,如“抑郁症趋势化”、“心理问题”、“潮流玩”,需用下划线强调,以增强文本的可读性和视觉效果;\n6. 摘要应简洁明了。", "input": "NULL", "constraints_num": 6, "constraints_splits": ["1. 摘要和评论应针对关注心理健康和公共健康的读者群体;", "2. 摘要语气正式且客观,评论部分采用温和而理解的语气;", "3. 避免任何可能引发争议或误解的措辞;", "4. 摘要和评论部分应使用清晰的段落划分,每段首行缩进;", "5. 摘要部分的关键词,如“抑郁症趋势化”、“心理问题”、“潮流玩”,需用下划线强调,以增强文本的可读性和视觉效果;", "6. 摘要应简洁明了。"], "levels2": ["受众目标约束", "语气风格约束", "价值观约束", "文本样式约束", "文本样式约束", "语言特征约束"], "category": "trace1.0"} +{"id": "500", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为新产品“时间旅者Pro智能手表”撰写一份详细的产品说明书。\n1. 使用编号和列表约束来列举所有功能、特点和优势,确保信息条理清晰;\n2. 说明书的总字数应在1000至1500字之间,既不过于冗长也不过于简略;\n3. 说明书应以引人入胜的前言开头,概述智能手表的创新之处,正文详细阐述,最后以简洁有力的结论收尾;\n4. 使用表格背景信息约束提供一份“时间旅者Pro智能手表”与市场上同类竞品的功能对比表格,突出其优势;\n5. 说明书的排版和布局需遵循模版约束,确保文本对齐方式统一,段落之间的间距适当,标题和子标题层次分明;\n6. 为增强专业性和可信度,说明书需包括引用和参考约束,至少引用3篇关于智能穿戴设备趋势的权威文章或研究报告。\n"}], "type": "trace", "description": "为新产品“时间旅者Pro智能手表”撰写一份详细的产品说明书。", "constraints": "1. 使用编号和列表约束来列举所有功能、特点和优势,确保信息条理清晰;\n2. 说明书的总字数应在1000至1500字之间,既不过于冗长也不过于简略;\n3. 说明书应以引人入胜的前言开头,概述智能手表的创新之处,正文详细阐述,最后以简洁有力的结论收尾;\n4. 使用表格背景信息约束提供一份“时间旅者Pro智能手表”与市场上同类竞品的功能对比表格,突出其优势;\n5. 说明书的排版和布局需遵循模版约束,确保文本对齐方式统一,段落之间的间距适当,标题和子标题层次分明;\n6. 为增强专业性和可信度,说明书需包括引用和参考约束,至少引用3篇关于智能穿戴设备趋势的权威文章或研究报告。", "input": "NULL", "constraints_num": 6, "constraints_splits": ["1. 使用编号和列表约束来列举所有功能、特点和优势,确保信息条理清晰;", "2. 说明书的总字数应在1000至1500字之间,既不过于冗长也不过于简略;", "3. 说明书应以引人入胜的前言开头,概述智能手表的创新之处,正文详细阐述,最后以简洁有力的结论收尾;", "4. 使用表格背景信息约束提供一份“时间旅者Pro智能手表”与市场上同类竞品的功能对比表格,突出其优势;", "5. 说明书的排版和布局需遵循模版约束,确保文本对齐方式统一,段落之间的间距适当,标题和子标题层次分明;", "6. 为增强专业性和可信度,说明书需包括引用和参考约束,至少引用3篇关于智能穿戴设备趋势的权威文章或研究报告。"], "levels2": ["编号和列表约束", "数值约束", "层次化结构约束", "表格背景信息约束", "模版约束", "引用和参考约束"], "category": "trace1.0"} +{"id": "501", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇关于环境保护的学术论文,详细探讨当前环境问题,特别是气候变化和水污染,分析其原因、影响以及对社会经济的长远后果。\n1. 论文应至少包含5个最新科学研究成果作为参考依据;\n2. 每个环境问题需提供不少于3种创新的解决方案;\n3. 论文长度应控制在3000至5000字之间;\n4. 采用APA引用格式;\n5. 以正式和客观的语气撰写,确保论文的严谨性和权威性;\n6. 论文应按照标准学术论文格式排版,包括摘要、引言、方法、结果、讨论、结论和参考文献等部分;\n"}], "type": "trace", "description": "撰写一篇关于环境保护的学术论文,详细探讨当前环境问题,特别是气候变化和水污染,分析其原因、影响以及对社会经济的长远后果。", "constraints": "1. 论文应至少包含5个最新科学研究成果作为参考依据;\n2. 每个环境问题需提供不少于3种创新的解决方案;\n3. 论文长度应控制在3000至5000字之间;\n4. 采用APA引用格式;\n5. 以正式和客观的语气撰写,确保论文的严谨性和权威性;\n6. 论文应按照标准学术论文格式排版,包括摘要、引言、方法、结果、讨论、结论和参考文献等部分;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["1. 论文应至少包含5个最新科学研究成果作为参考依据;", "2. 每个环境问题需提供不少于3种创新的解决方案;", "3. 论文长度应控制在3000至5000字之间;", "4. 采用APA引用格式;", "5. 以正式和客观的语气撰写,确保论文的严谨性和权威性;", "6. 论文应按照标准学术论文格式排版,包括摘要、引言、方法、结果、讨论、结论和参考文献等部分;"], "levels2": ["引用和参考约束", "数值约束", "数值约束", "引用和参考约束", "语气风格约束", "输出格式约束"], "category": "trace1.0"} +{"id": "502", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为一位50岁的男性客户设计一个为期三个月的个性化健身计划和饮食习惯调整方案。\n1. 客户为办公室工作人员,每周工作5天,每天工作8小时;\n2. 目标是在接下来的三个月内健康减轻10磅体重;\n3. 客户目前没有任何已知的身体健康问题;\n4. 计划应包括每周的训练日程,每次训练的时长、强度和类型(有氧、力量训练、柔韧性训练等);\n5. 应提出具体的饮食建议,包括每日热量摄入范围、营养成分比例以及水分补充建议;\n6. 方案应采用鼓励和支持的语气风格,确保客户在执行计划时保持积极的态度和动力;\n"}], "type": "trace", "description": "为一位50岁的男性客户设计一个为期三个月的个性化健身计划和饮食习惯调整方案。", "constraints": "1. 客户为办公室工作人员,每周工作5天,每天工作8小时;\n2. 目标是在接下来的三个月内健康减轻10磅体重;\n3. 客户目前没有任何已知的身体健康问题;\n4. 计划应包括每周的训练日程,每次训练的时长、强度和类型(有氧、力量训练、柔韧性训练等);\n5. 应提出具体的饮食建议,包括每日热量摄入范围、营养成分比例以及水分补充建议;\n6. 方案应采用鼓励和支持的语气风格,确保客户在执行计划时保持积极的态度和动力;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["1. 客户为办公室工作人员,每周工作5天,每天工作8小时;", "2. 目标是在接下来的三个月内健康减轻10磅体重;", "3. 客户目前没有任何已知的身体健康问题;", "4. 计划应包括每周的训练日程,每次训练的时长、强度和类型(有氧、力量训练、柔韧性训练等);", "5. 应提出具体的饮食建议,包括每日热量摄入范围、营养成分比例以及水分补充建议;", "6. 方案应采用鼓励和支持的语气风格,确保客户在执行计划时保持积极的态度和动力;"], "levels2": ["受众目标约束", "数值约束", "排除约束", "包含约束", "包含约束", "语气风格约束"], "category": "trace1.0"} +{"id": "503", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一个短故事\n1. 主人公是一只勇敢且喜爱探险的小狗;\n2. 故事需包括小狗在森林中探险的过程,其中它发现了一个隐藏的秘密,这个秘密应当与古老传说或神秘生物相关;\n3. 故事长度应在500字左右;\n4. 采用第三人称叙述,语气风格需保持童趣和想象感;\n5. 短文应包含引人入胜的开头,详细描述探险过程的中间部分,以及揭示秘密的高潮和结局;\n6. 在故事中,使用至少一个段落来描述森林的环境和小狗的心理活动,以增强故事的层次感和细节描述;\n"}], "type": "trace", "description": "创建一个短故事", "constraints": "1. 主人公是一只勇敢且喜爱探险的小狗;\n2. 故事需包括小狗在森林中探险的过程,其中它发现了一个隐藏的秘密,这个秘密应当与古老传说或神秘生物相关;\n3. 故事长度应在500字左右;\n4. 采用第三人称叙述,语气风格需保持童趣和想象感;\n5. 短文应包含引人入胜的开头,详细描述探险过程的中间部分,以及揭示秘密的高潮和结局;\n6. 在故事中,使用至少一个段落来描述森林的环境和小狗的心理活动,以增强故事的层次感和细节描述;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["1. 主人公是一只勇敢且喜爱探险的小狗;", "2. 故事需包括小狗在森林中探险的过程,其中它发现了一个隐藏的秘密,这个秘密应当与古老传说或神秘生物相关;", "3. 故事长度应在500字左右;", "4. 采用第三人称叙述,语气风格需保持童趣和想象感;", "5. 短文应包含引人入胜的开头,详细描述探险过程的中间部分,以及揭示秘密的高潮和结局;", "6. 在故事中,使用至少一个段落来描述森林的环境和小狗的心理活动,以增强故事的层次感和细节描述;"], "levels2": ["角色扮演约束", "包含约束", "数值约束", "语气风格约束", "层次化结构约束", "层次化结构约束"], "category": "trace1.0"} +{"id": "504", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "分析给定的股票(AAPL)在2021-01-01至2021-06-30期间的历史价格走势图,并预测未来5个工作日每日的预测最低和最高价格。\n1. 使用专业金融分析软件进行深度分析;\n2. 预测需包含至少两种不同的预测模型;\n3. 提供模型的准确率和置信区间;\n4. 输出格式应为包含预测数据的Excel表格,其中每日预测价格、模型准确率和置信区间分别用不同的列展示;\n5. 报告中提及的市场因素分析部分应引用至少3篇近期的财经新闻或研究报告,以支持分析的全面性和准确性;\n6. 需在分析报告中包含对预测结果的解释和可能影响预测准确性的市场因素分析;\n# Inputs:\n股票代码:AAPL;分析时间段:2021-01-01至2021-06-30。\n"}], "type": "trace", "description": "分析给定的股票(AAPL)在2021-01-01至2021-06-30期间的历史价格走势图,并预测未来5个工作日每日的预测最低和最高价格。", "constraints": "1. 使用专业金融分析软件进行深度分析;\n2. 预测需包含至少两种不同的预测模型;\n3. 提供模型的准确率和置信区间;\n4. 输出格式应为包含预测数据的Excel表格,其中每日预测价格、模型准确率和置信区间分别用不同的列展示;\n5. 报告中提及的市场因素分析部分应引用至少3篇近期的财经新闻或研究报告,以支持分析的全面性和准确性;\n6. 需在分析报告中包含对预测结果的解释和可能影响预测准确性的市场因素分析;", "input": "股票代码:AAPL;分析时间段:2021-01-01至2021-06-30。", "constraints_num": 6, "constraints_splits": ["1. 使用专业金融分析软件进行深度分析;", "2. 预测需包含至少两种不同的预测模型;", "3. 提供模型的准确率和置信区间;", "4. 输出格式应为包含预测数据的Excel表格,其中每日预测价格、模型准确率和置信区间分别用不同的列展示;", "5. 报告中提及的市场因素分析部分应引用至少3篇近期的财经新闻或研究报告,以支持分析的全面性和准确性;", "6. 需在分析报告中包含对预测结果的解释和可能影响预测准确性的市场因素分析;"], "levels2": ["角色扮演约束", "数值约束", "数值约束", "输出格式约束", "引用和参考约束", "包含约束"], "category": "trace1.0"} +{"id": "505", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "描述如何在家使用简单的工具制作一张橡木供餐桌,包括详细材料和工具列表、至少5个关键步骤的详细操作过程、安全注意事项、清晰简洁的描述风格,以及一个完成的供餐桌图片作为参考。\n1. 制作过程需严格遵循安全规范,确保每一步操作的正确性和安全性;\n2. 详细列出所需材料和工具,包括但不限于橡木板、木蜡油、木蜡、顶钉枪、手工锯、砂纸、刷子、清洁布等;\n3. 提供至少5个关键步骤,每个步骤的描述应至少50字,详细阐述操作过程、所需材料、使用的工具以及安全注意事项;\n4. 描述应采用清晰、简洁、易于理解的语气风格,确保初学者也能轻松跟随;\n5. 在描述中使用编号列表,确保步骤的清晰性和条理性;\n6. 提供一个正例,即一个完成的供餐桌的图片,以便于读者参考和比对。\n"}], "type": "trace", "description": "描述如何在家使用简单的工具制作一张橡木供餐桌,包括详细材料和工具列表、至少5个关键步骤的详细操作过程、安全注意事项、清晰简洁的描述风格,以及一个完成的供餐桌图片作为参考。", "constraints": "1. 制作过程需严格遵循安全规范,确保每一步操作的正确性和安全性;\n2. 详细列出所需材料和工具,包括但不限于橡木板、木蜡油、木蜡、顶钉枪、手工锯、砂纸、刷子、清洁布等;\n3. 提供至少5个关键步骤,每个步骤的描述应至少50字,详细阐述操作过程、所需材料、使用的工具以及安全注意事项;\n4. 描述应采用清晰、简洁、易于理解的语气风格,确保初学者也能轻松跟随;\n5. 在描述中使用编号列表,确保步骤的清晰性和条理性;\n6. 提供一个正例,即一个完成的供餐桌的图片,以便于读者参考和比对。", "input": "NULL", "constraints_num": 6, "constraints_splits": ["1. 制作过程需严格遵循安全规范,确保每一步操作的正确性和安全性;", "2. 详细列出所需材料和工具,包括但不限于橡木板、木蜡油、木蜡、顶钉枪、手工锯、砂纸、刷子、清洁布等;", "3. 提供至少5个关键步骤,每个步骤的描述应至少50字,详细阐述操作过程、所需材料、使用的工具以及安全注意事项;", "4. 描述应采用清晰、简洁、易于理解的语气风格,确保初学者也能轻松跟随;", "5. 在描述中使用编号列表,确保步骤的清晰性和条理性;", "6. 提供一个正例,即一个完成的供餐桌的图片,以便于读者参考和比对。"], "levels2": ["价值观约束", "包含约束", "数值约束", "语气风格约束", "编号和列表约束", "正例约束"], "category": "trace1.0"} +{"id": "506", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "使用Excel的筛选功能,筛选出“员工数据表格”中薪水高于$5000的员工记录。\n1. 打开工作表名为“员工数据表格”的Excel文件;\n2. 定位到包含“薪水”列的表格区域;\n3. 应用筛选器,条件设置为“薪水高于$5000”;\n4. 筛选结果应包含员工的姓名、职位以及薪水信息;\n5. 确保筛选后的结果不超过100行;\n6. 将筛选结果以Markdown表格的形式呈现,便于数据的进一步分析和讨论。\n"}], "type": "trace", "description": "使用Excel的筛选功能,筛选出“员工数据表格”中薪水高于$5000的员工记录。", "constraints": "1. 打开工作表名为“员工数据表格”的Excel文件;\n2. 定位到包含“薪水”列的表格区域;\n3. 应用筛选器,条件设置为“薪水高于$5000”;\n4. 筛选结果应包含员工的姓名、职位以及薪水信息;\n5. 确保筛选后的结果不超过100行;\n6. 将筛选结果以Markdown表格的形式呈现,便于数据的进一步分析和讨论。", "input": "NULL", "constraints_num": 6, "constraints_splits": ["1. 打开工作表名为“员工数据表格”的Excel文件;", "2. 定位到包含“薪水”列的表格区域;", "3. 应用筛选器,条件设置为“薪水高于$5000”;", "4. 筛选结果应包含员工的姓名、职位以及薪水信息;", "5. 确保筛选后的结果不超过100行;", "6. 将筛选结果以Markdown表格的形式呈现,便于数据的进一步分析和讨论。"], "levels2": ["自然语言流程背景信息约束", "包含约束", "数值约束", "包含约束", "数值约束", "输出格式约束"], "category": "trace1.0"} +{"id": "507", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以历史学者的身份,提供一个关于1972年美国总统选举的深度问题,并详细描述选举结果,包括候选人的得票数、选举人票分布以及主要的政治事件。回答应以表格形式列出至少5个关键事件及其日期,并引用至少3篇权威历史文献作为支持。探讨水门事件如何影响选举结果。回答中应包含一个遵循APA格式的参考文献列表。\n1. 回答应以历史学者的身份进行;\n2. 描述1972年美国总统选举结果,包括但不限于得票数、选举人票分布及主要政治事件;\n3. 回答中需包含表格形式的关键事件列表,列出至少5个事件及其日期;\n4. 回答中需至少引用3篇权威历史文献作为支持;\n5. 探讨水门事件对选举结果的影响;\n6. 回答中需包含遵循APA格式的参考文献列表。\n"}], "type": "trace", "description": "以历史学者的身份,提供一个关于1972年美国总统选举的深度问题,并详细描述选举结果,包括候选人的得票数、选举人票分布以及主要的政治事件。回答应以表格形式列出至少5个关键事件及其日期,并引用至少3篇权威历史文献作为支持。探讨水门事件如何影响选举结果。回答中应包含一个遵循APA格式的参考文献列表。", "constraints": "1. 回答应以历史学者的身份进行;\n2. 描述1972年美国总统选举结果,包括但不限于得票数、选举人票分布及主要政治事件;\n3. 回答中需包含表格形式的关键事件列表,列出至少5个事件及其日期;\n4. 回答中需至少引用3篇权威历史文献作为支持;\n5. 探讨水门事件对选举结果的影响;\n6. 回答中需包含遵循APA格式的参考文献列表。", "input": "NULL", "constraints_num": 6, "constraints_splits": ["1. 回答应以历史学者的身份进行;", "2. 描述1972年美国总统选举结果,包括但不限于得票数、选举人票分布及主要政治事件;", "3. 回答中需包含表格形式的关键事件列表,列出至少5个事件及其日期;", "4. 回答中需至少引用3篇权威历史文献作为支持;", "5. 探讨水门事件对选举结果的影响;", "6. 回答中需包含遵循APA格式的参考文献列表。"], "levels2": ["角色扮演约束", "包含约束", "输出格式约束", "引用和参考约束", "主题约束", "引用和参考约束"], "category": "trace1.0"} +{"id": "508", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一份深入调查报告,针对年龄在18至45岁之间的移动设备用户群体,分析他们更倾向于使用手机应用程序而非网页服务的原因。\n1. 报告需引用至少3篇关于用户行为与移动设备偏好研究的学术文章;\n2. 报告格式应为PDF,使用标题1、标题2和标题3建立层次化结构;\n3. 所有数据引用部分需采用APA格式标注来源;\n4. 报告正文长度应在3000至4000字之间,其中至少1000字用于深度分析用户偏好的原因;\n5. 所有数据和分析结果需以表格形式呈现;\n6. 在报告的结论部分,提出至少3个提高网页服务吸引力的建议。\n"}], "type": "trace", "description": "创建一份深入调查报告,针对年龄在18至45岁之间的移动设备用户群体,分析他们更倾向于使用手机应用程序而非网页服务的原因。", "constraints": "1. 报告需引用至少3篇关于用户行为与移动设备偏好研究的学术文章;\n2. 报告格式应为PDF,使用标题1、标题2和标题3建立层次化结构;\n3. 所有数据引用部分需采用APA格式标注来源;\n4. 报告正文长度应在3000至4000字之间,其中至少1000字用于深度分析用户偏好的原因;\n5. 所有数据和分析结果需以表格形式呈现;\n6. 在报告的结论部分,提出至少3个提高网页服务吸引力的建议。", "input": "NULL", "constraints_num": 6, "constraints_splits": ["1. 报告需引用至少3篇关于用户行为与移动设备偏好研究的学术文章;", "2. 报告格式应为PDF,使用标题1、标题2和标题3建立层次化结构;", "3. 所有数据引用部分需采用APA格式标注来源;", "4. 报告正文长度应在3000至4000字之间,其中至少1000字用于深度分析用户偏好的原因;", "5. 所有数据和分析结果需以表格形式呈现;", "6. 在报告的结论部分,提出至少3个提高网页服务吸引力的建议。"], "levels2": ["引用和参考约束", "输出格式约束", "引用和参考约束", "数值约束", "输出格式约束", "编号和列表约束"], "category": "trace1.0"} +{"id": "509", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "将一篇文章的语气转化为警告语气\n1. 目标受众为饮酒者和对酒精可能带来的健康风险感兴趣的人群;\n2. 文章主题为“酒精对健康的影响”;\n3. 主要内容应包括对肝脏、大脑、心血管系统和身体免疫系统的损害;\n4. 文章需要强调酒精对人体健康的伤害和副作用;\n5. 应当使用诸如“切勿”、“务必避免”等强烈的警告性词汇来提醒读者;\n6. 排除任何可能对酒精消费做出正面评价的信息;\n"}], "type": "trace", "description": "将一篇文章的语气转化为警告语气", "constraints": "1. 目标受众为饮酒者和对酒精可能带来的健康风险感兴趣的人群;\n2. 文章主题为“酒精对健康的影响”;\n3. 主要内容应包括对肝脏、大脑、心血管系统和身体免疫系统的损害;\n4. 文章需要强调酒精对人体健康的伤害和副作用;\n5. 应当使用诸如“切勿”、“务必避免”等强烈的警告性词汇来提醒读者;\n6. 排除任何可能对酒精消费做出正面评价的信息;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["1. 目标受众为饮酒者和对酒精可能带来的健康风险感兴趣的人群;", "2. 文章主题为“酒精对健康的影响”;", "3. 主要内容应包括对肝脏、大脑、心血管系统和身体免疫系统的损害;", "4. 文章需要强调酒精对人体健康的伤害和副作用;", "5. 应当使用诸如“切勿”、“务必避免”等强烈的警告性词汇来提醒读者;", "6. 排除任何可能对酒精消费做出正面评价的信息;"], "levels2": ["受众目标约束", "主题约束", "包含约束", "包含约束", "语气风格约束", "排除约束"], "category": "trace1.0"} +{"id": "510", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为新品牌“云眠生活”创建一个标志,并提供符号和字体的建议。\n1. 品牌是一家专注于卫生和舒适的床上用品公司,产品线包括床单、枕头和被褥,目标市场覆盖全球;\n2. 品牌标志设计需围绕“云眠生活”的核心价值——卫生、舒适、品质和全球视野,确保标志传达出“舒适”和“品质”的信息;\n3. 建议的符号应与品牌主题紧密相关,例如云朵、床单褶皱或睡眠图案;\n4. 字体建议使用现代简洁风格,以增强标志的可读性和识别度;\n5. 在设计过程中,请以矢量图形格式提交初稿,以便于后期放大和缩小而不失真;\n6. 需提供至少三种不同的设计概念供选择;\n"}], "type": "trace", "description": "为新品牌“云眠生活”创建一个标志,并提供符号和字体的建议。", "constraints": "1. 品牌是一家专注于卫生和舒适的床上用品公司,产品线包括床单、枕头和被褥,目标市场覆盖全球;\n2. 品牌标志设计需围绕“云眠生活”的核心价值——卫生、舒适、品质和全球视野,确保标志传达出“舒适”和“品质”的信息;\n3. 建议的符号应与品牌主题紧密相关,例如云朵、床单褶皱或睡眠图案;\n4. 字体建议使用现代简洁风格,以增强标志的可读性和识别度;\n5. 在设计过程中,请以矢量图形格式提交初稿,以便于后期放大和缩小而不失真;\n6. 需提供至少三种不同的设计概念供选择;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["1. 品牌是一家专注于卫生和舒适的床上用品公司,产品线包括床单、枕头和被褥,目标市场覆盖全球;", "2. 品牌标志设计需围绕“云眠生活”的核心价值——卫生、舒适、品质和全球视野,确保标志传达出“舒适”和“品质”的信息;", "3. 建议的符号应与品牌主题紧密相关,例如云朵、床单褶皱或睡眠图案;", "4. 字体建议使用现代简洁风格,以增强标志的可读性和识别度;", "5. 在设计过程中,请以矢量图形格式提交初稿,以便于后期放大和缩小而不失真;", "6. 需提供至少三种不同的设计概念供选择;"], "levels2": ["受众目标约束", "主题约束", "主题约束", "文本样式约束", "输出格式约束", "数值约束"], "category": "trace1.0"} +{"id": "511", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为新的社交媒体平台创建一个市场营销计划\n1. 目标受众为年龄在18-35岁之间的社交媒体活跃用户;\n2. 计划以表格形式呈现,包括策略、执行步骤、预期结果和时间线四个主要部分;\n3. 计划中应包含至少5个关键的营销策略(如内容营销、合作伙伴关系、口碑推广等),并提供详细的执行步骤;\n4. 每个策略的描述不应超过200字;\n5. 明确列出每个策略的预期结果和实施时间;\n6. 整个计划的实施周期不超过6个月;\n"}], "type": "trace", "description": "为新的社交媒体平台创建一个市场营销计划", "constraints": "1. 目标受众为年龄在18-35岁之间的社交媒体活跃用户;\n2. 计划以表格形式呈现,包括策略、执行步骤、预期结果和时间线四个主要部分;\n3. 计划中应包含至少5个关键的营销策略(如内容营销、合作伙伴关系、口碑推广等),并提供详细的执行步骤;\n4. 每个策略的描述不应超过200字;\n5. 明确列出每个策略的预期结果和实施时间;\n6. 整个计划的实施周期不超过6个月;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["1. 目标受众为年龄在18-35岁之间的社交媒体活跃用户;", "2. 计划以表格形式呈现,包括策略、执行步骤、预期结果和时间线四个主要部分;", "3. 计划中应包含至少5个关键的营销策略(如内容营销、合作伙伴关系、口碑推广等),并提供详细的执行步骤;", "4. 每个策略的描述不应超过200字;", "5. 明确列出每个策略的预期结果和实施时间;", "6. 整个计划的实施周期不超过6个月;"], "levels2": ["受众目标约束", "输出格式约束", "数值约束", "数值约束", "编号和列表约束", "数值约束"], "category": "trace1.0"} +{"id": "512", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇关于比尔盖茨成为世界首富的文章\n1. 文章需按照新闻报道的标准格式(包括标题、导语、主体、背景、结尾);\n2. 全文不少于800字,但控制在1000字以内;\n3. 文章中需包含至少2个权威数据来源的引用,以证明比尔盖茨的财富排名和微软公司的市值;\n4. 文章风格保持客观、严谨的新闻报道风格,避免使用主观臆断或情感色彩强烈的词汇;\n5. 在结尾部分提供对未来趋势的简短分析;\n6. 使用大标题和小标题的层次化结构,以增加文章的可读性和信息层次感;\n"}], "type": "trace", "description": "撰写一篇关于比尔盖茨成为世界首富的文章", "constraints": "1. 文章需按照新闻报道的标准格式(包括标题、导语、主体、背景、结尾);\n2. 全文不少于800字,但控制在1000字以内;\n3. 文章中需包含至少2个权威数据来源的引用,以证明比尔盖茨的财富排名和微软公司的市值;\n4. 文章风格保持客观、严谨的新闻报道风格,避免使用主观臆断或情感色彩强烈的词汇;\n5. 在结尾部分提供对未来趋势的简短分析;\n6. 使用大标题和小标题的层次化结构,以增加文章的可读性和信息层次感;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["1. 文章需按照新闻报道的标准格式(包括标题、导语、主体、背景、结尾);", "2. 全文不少于800字,但控制在1000字以内;", "3. 文章中需包含至少2个权威数据来源的引用,以证明比尔盖茨的财富排名和微软公司的市值;", "4. 文章风格保持客观、严谨的新闻报道风格,避免使用主观臆断或情感色彩强烈的词汇;", "5. 在结尾部分提供对未来趋势的简短分析;", "6. 使用大标题和小标题的层次化结构,以增加文章的可读性和信息层次感;"], "levels2": ["模版约束", "数值约束", "引用和参考约束", "语气风格约束", "层次化结构约束", "层次化结构约束"], "category": "trace1.0"} +{"id": "513", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "根据给定的关键词“人工智能”、“医疗”、“未来”检索并整合新闻文章,撰写一篇综述文章。\n1. 检索至少3篇权威新闻来源;\n2. 文章长度应控制在400至600字之间;\n3. 每个关键词“人工智能”、“医疗”、“未来”的出现频率不低于3次;\n4. 文章开头需有引人入胜的引言;\n5. 文章结尾需有对未来的展望;\n6. 关键词首次出现时使用斜体标注。\n# Inputs:\n关键词:“人工智能”、“医疗”、“未来”\n"}], "type": "trace", "description": "根据给定的关键词“人工智能”、“医疗”、“未来”检索并整合新闻文章,撰写一篇综述文章。", "constraints": "1. 检索至少3篇权威新闻来源;\n2. 文章长度应控制在400至600字之间;\n3. 每个关键词“人工智能”、“医疗”、“未来”的出现频率不低于3次;\n4. 文章开头需有引人入胜的引言;\n5. 文章结尾需有对未来的展望;\n6. 关键词首次出现时使用斜体标注。", "input": "关键词:“人工智能”、“医疗”、“未来”", "constraints_num": 6, "constraints_splits": ["1. 检索至少3篇权威新闻来源;", "2. 文章长度应控制在400至600字之间;", "3. 每个关键词“人工智能”、“医疗”、“未来”的出现频率不低于3次;", "4. 文章开头需有引人入胜的引言;", "5. 文章结尾需有对未来的展望;", "6. 关键词首次出现时使用斜体标注。"], "levels2": ["引用和参考约束", "数值约束", "数值约束", "模版约束", "包含约束", "文本样式约束"], "category": "trace1.0"} +{"id": "514", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以第三人称视角,写一个发生在故事中的场景,故事线索为:“一个学生发现他的功课本被一个同学偷走了。”\n1. 场景的描述应该生动且详细;\n2. 描述应包含学生发现课本被盗时的心理活动和反应;\n3. 描述应包含学生决定如何处理这一情况的初步想法;\n4. 场景中应包含至少一个对话,以展现学生与另一个同学或老师的互动;\n5. 整个描述中,保持叙述的连贯性和逻辑性;\n6. 使用适当的词汇和表达,以增强故事的真实感和吸引力。\n"}], "type": "trace", "description": "以第三人称视角,写一个发生在故事中的场景,故事线索为:“一个学生发现他的功课本被一个同学偷走了。”", "constraints": "1. 场景的描述应该生动且详细;\n2. 描述应包含学生发现课本被盗时的心理活动和反应;\n3. 描述应包含学生决定如何处理这一情况的初步想法;\n4. 场景中应包含至少一个对话,以展现学生与另一个同学或老师的互动;\n5. 整个描述中,保持叙述的连贯性和逻辑性;\n6. 使用适当的词汇和表达,以增强故事的真实感和吸引力。", "input": "NULL", "constraints_num": 6, "constraints_splits": ["1. 场景的描述应该生动且详细;", "2. 描述应包含学生发现课本被盗时的心理活动和反应;", "3. 描述应包含学生决定如何处理这一情况的初步想法;", "4. 场景中应包含至少一个对话,以展现学生与另一个同学或老师的互动;", "5. 整个描述中,保持叙述的连贯性和逻辑性;", "6. 使用适当的词汇和表达,以增强故事的真实感和吸引力。"], "levels2": ["语言特征约束", "包含约束", "包含约束", "包含约束", "语法结构约束", "语言特征约束"], "category": "trace1.0"} +{"id": "515", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "提供至少5种写作技巧,旨在提高文章的吸引力和流畅性\n1. 技巧应包括但不限于使用比喻、拟人、隐喻等修辞手法;\n2. 技巧应包括如何构建引人入胜的开头、连贯的段落和令人满意的结尾;\n3. 每种技巧的解释不超过200字;\n4. 技巧的解释中使用斜体字强调关键点;\n5. 每种技巧的示例应该以双引号括起,并用下划线突出显示;\n6. 技巧的列表应使用项目符号进行编号;\n"}], "type": "trace", "description": "提供至少5种写作技巧,旨在提高文章的吸引力和流畅性", "constraints": "1. 技巧应包括但不限于使用比喻、拟人、隐喻等修辞手法;\n2. 技巧应包括如何构建引人入胜的开头、连贯的段落和令人满意的结尾;\n3. 每种技巧的解释不超过200字;\n4. 技巧的解释中使用斜体字强调关键点;\n5. 每种技巧的示例应该以双引号括起,并用下划线突出显示;\n6. 技巧的列表应使用项目符号进行编号;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["1. 技巧应包括但不限于使用比喻、拟人、隐喻等修辞手法;", "2. 技巧应包括如何构建引人入胜的开头、连贯的段落和令人满意的结尾;", "3. 每种技巧的解释不超过200字;", "4. 技巧的解释中使用斜体字强调关键点;", "5. 每种技巧的示例应该以双引号括起,并用下划线突出显示;", "6. 技巧的列表应使用项目符号进行编号;"], "levels2": ["语言特征约束", "层次化结构约束", "数值约束", "文本样式约束", "文本样式约束", "编号和列表约束"], "category": "trace1.0"} +{"id": "516", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "根据给定的描述创建一个虚拟角色\n1. 角色是一位18岁的男性,身高至少180厘米,肌肉发达;\n2. 热爱体育运动,特别是篮球,每周至少参加3次篮球训练或比赛;\n3. 热爱电子游戏,尤其是竞技类游戏,拥有至少3个游戏平台的账号;\n4. 有一只忠诚的狗,每天至少花费30分钟与其互动,喜欢用幽默的方式逗他的狗;\n5. 描述时采用轻松幽默的语气风格,使得角色形象生动有趣;\n6. 描述文字应控制在200字以内;\n"}], "type": "trace", "description": "根据给定的描述创建一个虚拟角色", "constraints": "1. 角色是一位18岁的男性,身高至少180厘米,肌肉发达;\n2. 热爱体育运动,特别是篮球,每周至少参加3次篮球训练或比赛;\n3. 热爱电子游戏,尤其是竞技类游戏,拥有至少3个游戏平台的账号;\n4. 有一只忠诚的狗,每天至少花费30分钟与其互动,喜欢用幽默的方式逗他的狗;\n5. 描述时采用轻松幽默的语气风格,使得角色形象生动有趣;\n6. 描述文字应控制在200字以内;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["1. 角色是一位18岁的男性,身高至少180厘米,肌肉发达;", "2. 热爱体育运动,特别是篮球,每周至少参加3次篮球训练或比赛;", "3. 热爱电子游戏,尤其是竞技类游戏,拥有至少3个游戏平台的账号;", "4. 有一只忠诚的狗,每天至少花费30分钟与其互动,喜欢用幽默的方式逗他的狗;", "5. 描述时采用轻松幽默的语气风格,使得角色形象生动有趣;", "6. 描述文字应控制在200字以内;"], "levels2": ["角色扮演约束", "包含约束", "包含约束", "包含约束", "语气风格约束", "数值约束"], "category": "trace1.0"} +{"id": "517", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "给出一首流行歌曲的歌词,并将其中的名词替换成“柿子”(歌曲名中的名词“谁”除外)\n1. 歌曲名“不要问我是谁”中的名词“谁”不应被替换;\n2. 歌曲歌词应保持原有的韵律和意义;\n3. 替换后的歌词不会侵犯任何版权;\n4. 替换后的歌词保持歌词的可读性和意境;\n5. 为保证歌词的流畅性和艺术性,某些名词可通过同义词或近义词创造性地替换;\n6. 替换后歌词中涉及的关键情感和主题不应被改变,确保传达原歌曲情感和信息;\n"}], "type": "trace", "description": "给出一首流行歌曲的歌词,并将其中的名词替换成“柿子”(歌曲名中的名词“谁”除外)", "constraints": "1. 歌曲名“不要问我是谁”中的名词“谁”不应被替换;\n2. 歌曲歌词应保持原有的韵律和意义;\n3. 替换后的歌词不会侵犯任何版权;\n4. 替换后的歌词保持歌词的可读性和意境;\n5. 为保证歌词的流畅性和艺术性,某些名词可通过同义词或近义词创造性地替换;\n6. 替换后歌词中涉及的关键情感和主题不应被改变,确保传达原歌曲情感和信息;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["1. 歌曲名“不要问我是谁”中的名词“谁”不应被替换;", "2. 歌曲歌词应保持原有的韵律和意义;", "3. 替换后的歌词不会侵犯任何版权;", "4. 替换后的歌词保持歌词的可读性和意境;", "5. 为保证歌词的流畅性和艺术性,某些名词可通过同义词或近义词创造性地替换;", "6. 替换后歌词中涉及的关键情感和主题不应被改变,确保传达原歌曲情感和信息;"], "levels2": ["排除约束", "语言特征约束", "隐私约束", "语言特征约束", "语言特征约束", "主题约束"], "category": "trace1.0"} +{"id": "518", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "编辑一份专业且适合打印的简历\n1. 简历需采用A4纸张标准尺寸,布局清晰;\n2. 使用简洁的无衬线字体如Arial或Helvetica,字号为10-12号,确保文本在打印时易于阅读;\n3. 简历总长度应控制在1页,确保信息简洁且突出重点;\n4. 简历中的个人信息和技能部分需使用加粗字体以突出重要性;\n5. 工作经验和教育背景部分则需使用项目符号列表的形式来清晰展示;\n6. 简历底部应包含一个声明,确认所有提供的信息都是准确和真实的;\n# Inputs:\n1. 个人信息(姓名:张三,年龄:24)\n2. 教育背景(本科学位,北京大学计算机科学专业)\n3. 工作经验(详细描述1年的软件开发经验,包括具体项目和职责)\n4. 技能(列出掌握的编程语言:Java,Python,C++,以及专长:数据库设计,Web开发)\n"}], "type": "trace", "description": "编辑一份专业且适合打印的简历", "constraints": "1. 简历需采用A4纸张标准尺寸,布局清晰;\n2. 使用简洁的无衬线字体如Arial或Helvetica,字号为10-12号,确保文本在打印时易于阅读;\n3. 简历总长度应控制在1页,确保信息简洁且突出重点;\n4. 简历中的个人信息和技能部分需使用加粗字体以突出重要性;\n5. 工作经验和教育背景部分则需使用项目符号列表的形式来清晰展示;\n6. 简历底部应包含一个声明,确认所有提供的信息都是准确和真实的;", "input": "1. 个人信息(姓名:张三,年龄:24)\n2. 教育背景(本科学位,北京大学计算机科学专业)\n3. 工作经验(详细描述1年的软件开发经验,包括具体项目和职责)\n4. 技能(列出掌握的编程语言:Java,Python,C++,以及专长:数据库设计,Web开发)", "constraints_num": 6, "constraints_splits": ["1. 简历需采用A4纸张标准尺寸,布局清晰;", "2. 使用简洁的无衬线字体如Arial或Helvetica,字号为10-12号,确保文本在打印时易于阅读;", "3. 简历总长度应控制在1页,确保信息简洁且突出重点;", "4. 简历中的个人信息和技能部分需使用加粗字体以突出重要性;", "5. 工作经验和教育背景部分则需使用项目符号列表的形式来清晰展示;", "6. 简历底部应包含一个声明,确认所有提供的信息都是准确和真实的;"], "levels2": ["模版约束", "文本样式约束", "数值约束", "文本样式约束", "编号和列表约束", "价值观约束"], "category": "trace1.0"} +{"id": "519", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "编辑一篇科技新闻报道,探讨XYZ科技公司发布的三款新产品:旗舰手机、超薄笔记本电脑和新一代智能手表。\n1. 报道的受众为科技爱好者和潜在购买者;\n2. 报道需采用正式且客观的语气风格;\n3. 报道格式为Markdown,包含标题、副标题和项目列表;\n4. 报道中应详细描述每款产品的创新功能、性能提升和与前代产品的比较;\n5. 报道中需包含至少一张产品图片;\n6. 报道中需直接引述公司CEO的评论;\n"}], "type": "trace", "description": "编辑一篇科技新闻报道,探讨XYZ科技公司发布的三款新产品:旗舰手机、超薄笔记本电脑和新一代智能手表。", "constraints": "1. 报道的受众为科技爱好者和潜在购买者;\n2. 报道需采用正式且客观的语气风格;\n3. 报道格式为Markdown,包含标题、副标题和项目列表;\n4. 报道中应详细描述每款产品的创新功能、性能提升和与前代产品的比较;\n5. 报道中需包含至少一张产品图片;\n6. 报道中需直接引述公司CEO的评论;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["1. 报道的受众为科技爱好者和潜在购买者;", "2. 报道需采用正式且客观的语气风格;", "3. 报道格式为Markdown,包含标题、副标题和项目列表;", "4. 报道中应详细描述每款产品的创新功能、性能提升和与前代产品的比较;", "5. 报道中需包含至少一张产品图片;", "6. 报道中需直接引述公司CEO的评论;"], "levels2": ["受众目标约束", "语气风格约束", "输出格式约束", "包含约束", "包含约束", "包含约束"], "category": "trace1.0"} +{"id": "520", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "写一封求职信\n1. 需以一名具有多年相关行业经验的专业人士身份写信;\n2. 求职信需采用正式而礼貌的语气;\n3. 文本中明确提及申请者在技能和经验方面如何与招聘广告中列出的岗位要求相匹配;\n4. 尤其强调申请者在团队合作、项目管理和技术创新方面的能力;\n5. 求职信的格式应遵循标准的商业信函格式,含有称呼、问候、正文、结束语和签名;\n6. 信件结尾处需附上申请者的联系方式和期待回复的礼貌表达;\n"}], "type": "trace", "description": "写一封求职信", "constraints": "1. 需以一名具有多年相关行业经验的专业人士身份写信;\n2. 求职信需采用正式而礼貌的语气;\n3. 文本中明确提及申请者在技能和经验方面如何与招聘广告中列出的岗位要求相匹配;\n4. 尤其强调申请者在团队合作、项目管理和技术创新方面的能力;\n5. 求职信的格式应遵循标准的商业信函格式,含有称呼、问候、正文、结束语和签名;\n6. 信件结尾处需附上申请者的联系方式和期待回复的礼貌表达;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["1. 需以一名具有多年相关行业经验的专业人士身份写信;", "2. 求职信需采用正式而礼貌的语气;", "3. 文本中明确提及申请者在技能和经验方面如何与招聘广告中列出的岗位要求相匹配;", "4. 尤其强调申请者在团队合作、项目管理和技术创新方面的能力;", "5. 求职信的格式应遵循标准的商业信函格式,含有称呼、问候、正文、结束语和签名;", "6. 信件结尾处需附上申请者的联系方式和期待回复的礼貌表达;"], "levels2": ["角色扮演约束", "语气风格约束", "包含约束", "主题约束", "文本样式约束", "文本样式约束"], "category": "trace1.0"} +{"id": "521", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为年轻夫妇设计一个浪漫且经济的旅行路线\n1. 路线设计需满足对温暖的天气、海滩景观和历史古迹的兴趣;\n2. 预算上限为2500美元;\n3. 路线中应包含至少3个海滩景点和2个历史古迹;\n4. 包含至少1个适合进行浪漫活动的地点,比如夕阳下的海滩散步;\n5. 所有景点之间的交通成本和住宿费用不超过预算;\n6. 提供至少3个不同价位的住宿选择供客户参考;\n"}], "type": "trace", "description": "为年轻夫妇设计一个浪漫且经济的旅行路线", "constraints": "1. 路线设计需满足对温暖的天气、海滩景观和历史古迹的兴趣;\n2. 预算上限为2500美元;\n3. 路线中应包含至少3个海滩景点和2个历史古迹;\n4. 包含至少1个适合进行浪漫活动的地点,比如夕阳下的海滩散步;\n5. 所有景点之间的交通成本和住宿费用不超过预算;\n6. 提供至少3个不同价位的住宿选择供客户参考;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["1. 路线设计需满足对温暖的天气、海滩景观和历史古迹的兴趣;", "2. 预算上限为2500美元;", "3. 路线中应包含至少3个海滩景点和2个历史古迹;", "4. 包含至少1个适合进行浪漫活动的地点,比如夕阳下的海滩散步;", "5. 所有景点之间的交通成本和住宿费用不超过预算;", "6. 提供至少3个不同价位的住宿选择供客户参考;"], "levels2": ["受众目标约束", "数值约束", "数值约束", "包含约束", "数值约束", "数值约束"], "category": "trace1.0"} +{"id": "522", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为新手园艺爱好者制定一个从春季到秋季的种植计划,专注于种植蔬菜和花卉。\n1. 以新手园艺爱好者角度出发,关注种植蔬菜和花卉的全过程;\n2. 计划应包括所需技能列表、工具和材料清单、成本估算、时间安排、最佳生长条件和照顾指南;\n3. 计划周期从春季至秋季,详细列出每一阶段的时间预期和工作量;\n4. 要求使用表格形式列出种植时间表和每种植物的最佳生长条件;\n5. 要求采用简洁明了的语气,确保计划易懂且实用;\n6. 重要信息(如技能、工具、成本、时间安排)需用粗体或特殊颜色标注,以突出显示;\n"}], "type": "trace", "description": "为新手园艺爱好者制定一个从春季到秋季的种植计划,专注于种植蔬菜和花卉。", "constraints": "1. 以新手园艺爱好者角度出发,关注种植蔬菜和花卉的全过程;\n2. 计划应包括所需技能列表、工具和材料清单、成本估算、时间安排、最佳生长条件和照顾指南;\n3. 计划周期从春季至秋季,详细列出每一阶段的时间预期和工作量;\n4. 要求使用表格形式列出种植时间表和每种植物的最佳生长条件;\n5. 要求采用简洁明了的语气,确保计划易懂且实用;\n6. 重要信息(如技能、工具、成本、时间安排)需用粗体或特殊颜色标注,以突出显示;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["1. 以新手园艺爱好者角度出发,关注种植蔬菜和花卉的全过程;", "2. 计划应包括所需技能列表、工具和材料清单、成本估算、时间安排、最佳生长条件和照顾指南;", "3. 计划周期从春季至秋季,详细列出每一阶段的时间预期和工作量;", "4. 要求使用表格形式列出种植时间表和每种植物的最佳生长条件;", "5. 要求采用简洁明了的语气,确保计划易懂且实用;", "6. 重要信息(如技能、工具、成本、时间安排)需用粗体或特殊颜色标注,以突出显示;"], "levels2": ["角色扮演约束", "包含约束", "数值约束", "输出格式约束", "语气风格约束", "文本样式约束"], "category": "trace1.0"} +{"id": "523", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一个针对健身初学者的详细健身计划\n1. 计划以 Markdown 流程背景信息的形式呈现;\n2. 包括一个为期2周的锻炼时间表和锻炼类型;\n3. 计划分为4个阶段,每个阶段为期4天,分别专注于上肢、下肢、核心力量和有氧运动;\n4. 每个锻炼类型下需提供至少3个具体的锻炼动作,并以粗体标注出来;\n5. 计划中应包含一份初学者健身指南,提供关于热身、拉伸和饮食的建议;\n6. 计划应以表格形式列出锻炼日志模板,包括锻炼日期、锻炼类型、完成的动作、组数和次数等;\n"}], "type": "trace", "description": "创建一个针对健身初学者的详细健身计划", "constraints": "1. 计划以 Markdown 流程背景信息的形式呈现;\n2. 包括一个为期2周的锻炼时间表和锻炼类型;\n3. 计划分为4个阶段,每个阶段为期4天,分别专注于上肢、下肢、核心力量和有氧运动;\n4. 每个锻炼类型下需提供至少3个具体的锻炼动作,并以粗体标注出来;\n5. 计划中应包含一份初学者健身指南,提供关于热身、拉伸和饮食的建议;\n6. 计划应以表格形式列出锻炼日志模板,包括锻炼日期、锻炼类型、完成的动作、组数和次数等;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["1. 计划以 Markdown 流程背景信息的形式呈现;", "2. 包括一个为期2周的锻炼时间表和锻炼类型;", "3. 计划分为4个阶段,每个阶段为期4天,分别专注于上肢、下肢、核心力量和有氧运动;", "4. 每个锻炼类型下需提供至少3个具体的锻炼动作,并以粗体标注出来;", "5. 计划中应包含一份初学者健身指南,提供关于热身、拉伸和饮食的建议;", "6. 计划应以表格形式列出锻炼日志模板,包括锻炼日期、锻炼类型、完成的动作、组数和次数等;"], "levels2": ["markdown流程背景信息约束", "包含约束", "数值约束", "文本样式约束", "包含约束", "输出格式约束"], "category": "trace1.0"} +{"id": "524", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "将任务列表转化为清晰的流程图\n1. 流程图需采用标准的流程图符号和布局;\n2. 每个步骤应使用不超过10个单词的简洁描述;\n3. 整体流程图应限制在A4纸张大小内;\n4. 流程图中步骤需遵循时间顺序;\n5. 每个步骤之间使用箭头表示流程的流向;\n6. 流程图整体风格需保持专业,适合在正式的商业或学术场合展示;\n# Inputs:\n任务列表:\n- 数据收集:首先收集数据\n- 数据分析:对数据进行分析\n- 目标设定:制定定量目标\n- 解决方案:提出解决方案\n- 方案实施:实施方案\n- 过程优化:尽可能改进,以优化过程\n"}], "type": "trace", "description": "将任务列表转化为清晰的流程图", "constraints": "1. 流程图需采用标准的流程图符号和布局;\n2. 每个步骤应使用不超过10个单词的简洁描述;\n3. 整体流程图应限制在A4纸张大小内;\n4. 流程图中步骤需遵循时间顺序;\n5. 每个步骤之间使用箭头表示流程的流向;\n6. 流程图整体风格需保持专业,适合在正式的商业或学术场合展示;", "input": "任务列表:\n- 数据收集:首先收集数据\n- 数据分析:对数据进行分析\n- 目标设定:制定定量目标\n- 解决方案:提出解决方案\n- 方案实施:实施方案\n- 过程优化:尽可能改进,以优化过程", "constraints_num": 6, "constraints_splits": ["1. 流程图需采用标准的流程图符号和布局;", "2. 每个步骤应使用不超过10个单词的简洁描述;", "3. 整体流程图应限制在A4纸张大小内;", "4. 流程图中步骤需遵循时间顺序;", "5. 每个步骤之间使用箭头表示流程的流向;", "6. 流程图整体风格需保持专业,适合在正式的商业或学术场合展示;"], "levels2": ["模版约束", "数值约束", "输出格式约束", "层次化结构约束", "输出格式约束", "语气风格约束"], "category": "trace1.0"} +{"id": "525", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "详细介绍如何烤制一份美味的披萨\n1. 描述过程应使用markdown流程背景信息约束的方式;\n2. 步骤应按照准备、制作、烤制、完成四个阶段进行组织;\n3. 描述的字数应在300至500字之间;\n4. 制作过程中需要明确指出使用的是披萨面饼、番茄酱、意大利乳酪以及你最喜欢的配料;\n5. 列出至少5个具体步骤;\n6. 每个步骤前使用编号进行标注以增加可读性;\n"}], "type": "trace", "description": "详细介绍如何烤制一份美味的披萨", "constraints": "1. 描述过程应使用markdown流程背景信息约束的方式;\n2. 步骤应按照准备、制作、烤制、完成四个阶段进行组织;\n3. 描述的字数应在300至500字之间;\n4. 制作过程中需要明确指出使用的是披萨面饼、番茄酱、意大利乳酪以及你最喜欢的配料;\n5. 列出至少5个具体步骤;\n6. 每个步骤前使用编号进行标注以增加可读性;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["1. 描述过程应使用markdown流程背景信息约束的方式;", "2. 步骤应按照准备、制作、烤制、完成四个阶段进行组织;", "3. 描述的字数应在300至500字之间;", "4. 制作过程中需要明确指出使用的是披萨面饼、番茄酱、意大利乳酪以及你最喜欢的配料;", "5. 列出至少5个具体步骤;", "6. 每个步骤前使用编号进行标注以增加可读性;"], "levels2": ["markdown流程背景信息约束", "层次化结构约束", "数值约束", "包含约束", "编号和列表约束", "编号和列表约束"], "category": "trace1.0"} +{"id": "526", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一份关于自己的自我介绍\n1. 格式需遵循标准的简历模板,包括个人基本信息、教育背景、工作经验和个人职业规划四个部分;\n2. 内容上,个人基本信息部分应包含姓名、年龄等;\n3. 教育背景部分需详细介绍毕业院校及学历;\n4. 工作经验部分需要具体描述一年的工作经历和岗位;\n5. 个人职业规划部分需表达对未来理想工作的期待,即市场营销领域;\n6. 自我介绍的字数应控制在300字左右,确保信息完整且精炼;\n"}], "type": "trace", "description": "撰写一份关于自己的自我介绍", "constraints": "1. 格式需遵循标准的简历模板,包括个人基本信息、教育背景、工作经验和个人职业规划四个部分;\n2. 内容上,个人基本信息部分应包含姓名、年龄等;\n3. 教育背景部分需详细介绍毕业院校及学历;\n4. 工作经验部分需要具体描述一年的工作经历和岗位;\n5. 个人职业规划部分需表达对未来理想工作的期待,即市场营销领域;\n6. 自我介绍的字数应控制在300字左右,确保信息完整且精炼;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["1. 格式需遵循标准的简历模板,包括个人基本信息、教育背景、工作经验和个人职业规划四个部分;", "2. 内容上,个人基本信息部分应包含姓名、年龄等;", "3. 教育背景部分需详细介绍毕业院校及学历;", "4. 工作经验部分需要具体描述一年的工作经历和岗位;", "5. 个人职业规划部分需表达对未来理想工作的期待,即市场营销领域;", "6. 自我介绍的字数应控制在300字左右,确保信息完整且精炼;"], "levels2": ["模版约束", "包含约束", "包含约束", "数值约束", "主题约束", "数值约束"], "category": "trace1.0"} +{"id": "527", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "建议一份适合朋友生日派对的礼物清单\n1. 礼物清单基于朋友的兴趣爱好和设定的预算;\n2. 清单中包含至少5个不同类别的礼物选项;\n3. 每个选项都附有价格范围、购买链接和一张小图;\n4. 总体预算不超过500元;\n5. 清单以表格形式呈现,确保信息的清晰与完整;\n6. 所有价格信息以红色高亮显示,便于快速识别;\n"}], "type": "trace", "description": "建议一份适合朋友生日派对的礼物清单", "constraints": "1. 礼物清单基于朋友的兴趣爱好和设定的预算;\n2. 清单中包含至少5个不同类别的礼物选项;\n3. 每个选项都附有价格范围、购买链接和一张小图;\n4. 总体预算不超过500元;\n5. 清单以表格形式呈现,确保信息的清晰与完整;\n6. 所有价格信息以红色高亮显示,便于快速识别;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["1. 礼物清单基于朋友的兴趣爱好和设定的预算;", "2. 清单中包含至少5个不同类别的礼物选项;", "3. 每个选项都附有价格范围、购买链接和一张小图;", "4. 总体预算不超过500元;", "5. 清单以表格形式呈现,确保信息的清晰与完整;", "6. 所有价格信息以红色高亮显示,便于快速识别;"], "levels2": ["受众目标约束", "数值约束", "输出格式约束", "数值约束", "输出格式约束", "文本样式约束"], "category": "trace1.0"} +{"id": "528", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇以“人工智能在医疗行业中的应用和未来发展方向”为主题的学术论文\n1. 论文需遵循APA引用格式,包括但不限于摘要、引言、方法、结果、讨论和结论部分;\n2. 论文中需要包含至少5个最新的研究案例来支持人工智能在医疗影像诊断、健康管理与预测、基因组学研究等领域的应用;\n3. 对于未来发展方向的探讨,应提出至少3个潜在的解决方案或研究方向,以解决医疗领域面临的挑战,提高人工智能在医疗行业中的效率和准确性,以及促进人工智能与医疗专业人员的协作;\n4. 论文长度应在3000至4000字之间;\n5. 论文中至少引用10篇来自权威医学或人工智能期刊的文献;\n6. 写作时,应采用严谨正式的学术语气,确保内容的准确性和专业性;\n"}], "type": "trace", "description": "撰写一篇以“人工智能在医疗行业中的应用和未来发展方向”为主题的学术论文", "constraints": "1. 论文需遵循APA引用格式,包括但不限于摘要、引言、方法、结果、讨论和结论部分;\n2. 论文中需要包含至少5个最新的研究案例来支持人工智能在医疗影像诊断、健康管理与预测、基因组学研究等领域的应用;\n3. 对于未来发展方向的探讨,应提出至少3个潜在的解决方案或研究方向,以解决医疗领域面临的挑战,提高人工智能在医疗行业中的效率和准确性,以及促进人工智能与医疗专业人员的协作;\n4. 论文长度应在3000至4000字之间;\n5. 论文中至少引用10篇来自权威医学或人工智能期刊的文献;\n6. 写作时,应采用严谨正式的学术语气,确保内容的准确性和专业性;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["1. 论文需遵循APA引用格式,包括但不限于摘要、引言、方法、结果、讨论和结论部分;", "2. 论文中需要包含至少5个最新的研究案例来支持人工智能在医疗影像诊断、健康管理与预测、基因组学研究等领域的应用;", "3. 对于未来发展方向的探讨,应提出至少3个潜在的解决方案或研究方向,以解决医疗领域面临的挑战,提高人工智能在医疗行业中的效率和准确性,以及促进人工智能与医疗专业人员的协作;", "4. 论文长度应在3000至4000字之间;", "5. 论文中至少引用10篇来自权威医学或人工智能期刊的文献;", "6. 写作时,应采用严谨正式的学术语气,确保内容的准确性和专业性;"], "levels2": ["引用和参考约束", "包含约束", "数值约束", "数值约束", "引用和参考约束", "语气风格约束"], "category": "trace1.0"} +{"id": "529", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为一个虚拟角色设计一个详细的背景故事\n1. 故事中的角色设定为35岁的男性,职业为独立音乐制作人;\n2. 故事需包括角色与妻子和两个孩子的互动,展现家庭背景;\n3. 故事需体现角色对音乐和摄影的热爱;\n4. 叙述采用第三人称文学化语言;\n5. 故事分为三个部分:童年与家庭影响、职业生涯的形成、兴趣与个人成长;\n6. 每一部分开头使用编号区分,确保结构清晰;\n"}], "type": "trace", "description": "为一个虚拟角色设计一个详细的背景故事", "constraints": "1. 故事中的角色设定为35岁的男性,职业为独立音乐制作人;\n2. 故事需包括角色与妻子和两个孩子的互动,展现家庭背景;\n3. 故事需体现角色对音乐和摄影的热爱;\n4. 叙述采用第三人称文学化语言;\n5. 故事分为三个部分:童年与家庭影响、职业生涯的形成、兴趣与个人成长;\n6. 每一部分开头使用编号区分,确保结构清晰;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["1. 故事中的角色设定为35岁的男性,职业为独立音乐制作人;", "2. 故事需包括角色与妻子和两个孩子的互动,展现家庭背景;", "3. 故事需体现角色对音乐和摄影的热爱;", "4. 叙述采用第三人称文学化语言;", "5. 故事分为三个部分:童年与家庭影响、职业生涯的形成、兴趣与个人成长;", "6. 每一部分开头使用编号区分,确保结构清晰;"], "levels2": ["角色扮演约束", "包含约束", "包含约束", "语气风格约束", "层次化结构约束", "编号和列表约束"], "category": "trace1.0"} +{"id": "530", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "设计一个人工智能助手的问题,该问题应围绕人力资源管理领域,尤其是招聘广告的分析,助手需要能够区分工作发布中明确的和隐含的需求。\n1. 问题设计应包含至少一个角色扮演约束,即要求助手以人力资源专家的身份分析工作发布;\n2. 问题的提问方式应采用专业而礼貌的语气风格;\n3. 输出时,需以编号列表的形式列出明确需求和隐含需求,清晰地区分两者;\n4. 在列表中使用Markdown语法高亮关键词;\n5. 明确需求应列出如“技能要求”、“工作职责”等项目;\n6. 隐含需求应分析出如“公司文化”、“潜在的职业发展”等未直接说明但可以通过文本推断出的需求点;\n"}], "type": "trace", "description": "设计一个人工智能助手的问题,该问题应围绕人力资源管理领域,尤其是招聘广告的分析,助手需要能够区分工作发布中明确的和隐含的需求。", "constraints": "1. 问题设计应包含至少一个角色扮演约束,即要求助手以人力资源专家的身份分析工作发布;\n2. 问题的提问方式应采用专业而礼貌的语气风格;\n3. 输出时,需以编号列表的形式列出明确需求和隐含需求,清晰地区分两者;\n4. 在列表中使用Markdown语法高亮关键词;\n5. 明确需求应列出如“技能要求”、“工作职责”等项目;\n6. 隐含需求应分析出如“公司文化”、“潜在的职业发展”等未直接说明但可以通过文本推断出的需求点;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["1. 问题设计应包含至少一个角色扮演约束,即要求助手以人力资源专家的身份分析工作发布;", "2. 问题的提问方式应采用专业而礼貌的语气风格;", "3. 输出时,需以编号列表的形式列出明确需求和隐含需求,清晰地区分两者;", "4. 在列表中使用Markdown语法高亮关键词;", "5. 明确需求应列出如“技能要求”、“工作职责”等项目;", "6. 隐含需求应分析出如“公司文化”、“潜在的职业发展”等未直接说明但可以通过文本推断出的需求点;"], "levels2": ["角色扮演约束", "语气风格约束", "编号和列表约束", "文本样式约束", "编号和列表约束", "包含约束"], "category": "trace1.0"} +{"id": "531", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一份专业格式的简历\n1. 简历应包括个人信息、教育背景、工作经验、技能和职业目标等部分;\n2. 个人信息部分需用加粗字体标出姓名“张三”,并置于简历顶部;\n3. 简历整体应控制在1页内;\n4. 采用标准的简历模板进行排版,确保版面清晰、专业;\n5. 在工作经验部分,详细描述过去5年的具体工作内容和成就,每个工作经历限制在3到5行内;\n6. 在技能部分列出与软件工程师职位相关的技术技能,如编程语言、软件工具等;\n"}], "type": "trace", "description": "撰写一份专业格式的简历", "constraints": "1. 简历应包括个人信息、教育背景、工作经验、技能和职业目标等部分;\n2. 个人信息部分需用加粗字体标出姓名“张三”,并置于简历顶部;\n3. 简历整体应控制在1页内;\n4. 采用标准的简历模板进行排版,确保版面清晰、专业;\n5. 在工作经验部分,详细描述过去5年的具体工作内容和成就,每个工作经历限制在3到5行内;\n6. 在技能部分列出与软件工程师职位相关的技术技能,如编程语言、软件工具等;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["1. 简历应包括个人信息、教育背景、工作经验、技能和职业目标等部分;", "2. 个人信息部分需用加粗字体标出姓名“张三”,并置于简历顶部;", "3. 简历整体应控制在1页内;", "4. 采用标准的简历模板进行排版,确保版面清晰、专业;", "5. 在工作经验部分,详细描述过去5年的具体工作内容和成就,每个工作经历限制在3到5行内;", "6. 在技能部分列出与软件工程师职位相关的技术技能,如编程语言、软件工具等;"], "levels2": ["模版约束", "文本样式约束", "数值约束", "模版约束", "数值约束", "包含约束"], "category": "trace1.0"} +{"id": "532", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为研究主题 \"人工智能在医疗诊断中的应用\" 创建一个结构化的文献综述\n1. 文献综述应包括5篇以上相关的学术文章;\n2. 每篇文章的引用需严格遵循APA格式;\n3. 在文献综述的末尾提供一个参考文献列表;\n4. 综述的字数应在1500至2000字之间;\n5. 内容应采用学术严谨的语气风格,确保综述的专业性和深度;\n6. 综述应使用标题和子标题来组织结构,清晰展示每个部分的主题,例如研究背景、方法论综述、主要发现、未来研究方向等;\n"}], "type": "trace", "description": "为研究主题 \"人工智能在医疗诊断中的应用\" 创建一个结构化的文献综述", "constraints": "1. 文献综述应包括5篇以上相关的学术文章;\n2. 每篇文章的引用需严格遵循APA格式;\n3. 在文献综述的末尾提供一个参考文献列表;\n4. 综述的字数应在1500至2000字之间;\n5. 内容应采用学术严谨的语气风格,确保综述的专业性和深度;\n6. 综述应使用标题和子标题来组织结构,清晰展示每个部分的主题,例如研究背景、方法论综述、主要发现、未来研究方向等;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["1. 文献综述应包括5篇以上相关的学术文章;", "2. 每篇文章的引用需严格遵循APA格式;", "3. 在文献综述的末尾提供一个参考文献列表;", "4. 综述的字数应在1500至2000字之间;", "5. 内容应采用学术严谨的语气风格,确保综述的专业性和深度;", "6. 综述应使用标题和子标题来组织结构,清晰展示每个部分的主题,例如研究背景、方法论综述、主要发现、未来研究方向等;"], "levels2": ["引用和参考约束", "引用和参考约束", "引用和参考约束", "数值约束", "语气风格约束", "层次化结构约束"], "category": "trace1.0"} +{"id": "533", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为初学者提供一份详细的芝士披萨制作指南\n1. 指南需要以一个烹饪爱好者的视角编写;\n2. 指南中材料清单和步骤说明应分别列出;\n3. 材料清单和步骤说明每部分至少包含5项内容;\n4. 指南应以Markdown格式输出,使用编号列表清晰展示步骤,同时使用无序列表列出材料;\n5. 材料名称和关键步骤需要使用斜体标注,以增强可读性;\n6. 指南的最后需要添加一份营养成分表,列出热量、脂肪、碳水化合物等关键营养信息。\n"}], "type": "trace", "description": "为初学者提供一份详细的芝士披萨制作指南", "constraints": "1. 指南需要以一个烹饪爱好者的视角编写;\n2. 指南中材料清单和步骤说明应分别列出;\n3. 材料清单和步骤说明每部分至少包含5项内容;\n4. 指南应以Markdown格式输出,使用编号列表清晰展示步骤,同时使用无序列表列出材料;\n5. 材料名称和关键步骤需要使用斜体标注,以增强可读性;\n6. 指南的最后需要添加一份营养成分表,列出热量、脂肪、碳水化合物等关键营养信息。", "input": "NULL", "constraints_num": 6, "constraints_splits": ["1. 指南需要以一个烹饪爱好者的视角编写;", "2. 指南中材料清单和步骤说明应分别列出;", "3. 材料清单和步骤说明每部分至少包含5项内容;", "4. 指南应以Markdown格式输出,使用编号列表清晰展示步骤,同时使用无序列表列出材料;", "5. 材料名称和关键步骤需要使用斜体标注,以增强可读性;", "6. 指南的最后需要添加一份营养成分表,列出热量、脂肪、碳水化合物等关键营养信息。"], "levels2": ["角色扮演约束", "编号和列表约束", "数值约束", "markdown流程背景信息约束", "文本样式约束", "表格背景信息约束"], "category": "trace1.0"} +{"id": "534", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇题为 \"科技十年:创新与介入\" 的文章,其中包含一个重点段落,描述过去十年中技术在人类生活各领域的广泛应用及其深远影响。\n1. 文章将发表在《纽约时报》;\n2. 段落需采用严谨正式的语气,确保内容的专业性和深度;\n3. 段落的字数限制在200至250字之间;\n4. 使用编号列表列出至少3个具体的技术应用案例;\n5. 描述技术应用对生活效率和隐私的影响;\n6. 整个段落应采用清晰的段落结构,使用Markdown格式进行排版,确保文本的可读性和专业性;\n"}], "type": "trace", "description": "撰写一篇题为 \"科技十年:创新与介入\" 的文章,其中包含一个重点段落,描述过去十年中技术在人类生活各领域的广泛应用及其深远影响。", "constraints": "1. 文章将发表在《纽约时报》;\n2. 段落需采用严谨正式的语气,确保内容的专业性和深度;\n3. 段落的字数限制在200至250字之间;\n4. 使用编号列表列出至少3个具体的技术应用案例;\n5. 描述技术应用对生活效率和隐私的影响;\n6. 整个段落应采用清晰的段落结构,使用Markdown格式进行排版,确保文本的可读性和专业性;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["1. 文章将发表在《纽约时报》;", "2. 段落需采用严谨正式的语气,确保内容的专业性和深度;", "3. 段落的字数限制在200至250字之间;", "4. 使用编号列表列出至少3个具体的技术应用案例;", "5. 描述技术应用对生活效率和隐私的影响;", "6. 整个段落应采用清晰的段落结构,使用Markdown格式进行排版,确保文本的可读性和专业性;"], "levels2": ["受众目标约束", "语气风格约束", "数值约束", "编号和列表约束", "主题约束", "输出格式约束"], "category": "trace1.0"} +{"id": "535", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一份科普报告,详细解释水熊虫如何在极端环境下生存。\n1. 角色扮演约束:报告需从科学家的视角撰写;\n2. 格式约束:报告格式;\n3. 语气风格约束:使用专业学术的语气;\n4. 引用和参考约束:报告中应包含至少3个科学原理的解释,以及引用至少2篇科学研究论文作为支持;\n5. 数值约束:报告长度应在1000至1500字之间;\n6. 输出格式约束:以LaTeX格式输出。\n# Inputs:\n水熊虫(Tardigrades)是一种极其坚韧的生物体,它们能够在极端环境下生存,包括高温、高压、辐射,甚至太空的真空环境。\n"}], "type": "trace", "description": "撰写一份科普报告,详细解释水熊虫如何在极端环境下生存。", "constraints": "1. 角色扮演约束:报告需从科学家的视角撰写;\n2. 格式约束:报告格式;\n3. 语气风格约束:使用专业学术的语气;\n4. 引用和参考约束:报告中应包含至少3个科学原理的解释,以及引用至少2篇科学研究论文作为支持;\n5. 数值约束:报告长度应在1000至1500字之间;\n6. 输出格式约束:以LaTeX格式输出。", "input": "水熊虫(Tardigrades)是一种极其坚韧的生物体,它们能够在极端环境下生存,包括高温、高压、辐射,甚至太空的真空环境。", "constraints_num": 6, "constraints_splits": ["1. 角色扮演约束:报告需从科学家的视角撰写;", "2. 格式约束:报告格式;", "3. 语气风格约束:使用专业学术的语气;", "4. 引用和参考约束:报告中应包含至少3个科学原理的解释,以及引用至少2篇科学研究论文作为支持;", "5. 数值约束:报告长度应在1000至1500字之间;", "6. 输出格式约束:以LaTeX格式输出。"], "levels2": ["角色扮演约束", "输出格式约束", "语气风格约束", "引用和参考约束", "数值约束", "输出格式约束"], "category": "trace1.0"} +{"id": "536", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为一家专注于开发智能家居产品的新兴科技公司起一个新名字,并撰写一份200字的解释,说明名字的含义及其如何体现公司的核心价值和愿景。\n1. 名字应富有创意且寓意深远;\n2. 名字简洁易记,避免可能引起文化或语言上的冒犯或歧义的词汇;\n3. 解释中需融入公司致力于科技创新和提升家庭生活品质的理念;\n4. 命名和解释采用专业且富有启发性的语气风格;\n5. 解释的字数限制为200字。\n"}], "type": "trace", "description": "为一家专注于开发智能家居产品的新兴科技公司起一个新名字,并撰写一份200字的解释,说明名字的含义及其如何体现公司的核心价值和愿景。", "constraints": "1. 名字应富有创意且寓意深远;\n2. 名字简洁易记,避免可能引起文化或语言上的冒犯或歧义的词汇;\n3. 解释中需融入公司致力于科技创新和提升家庭生活品质的理念;\n4. 命名和解释采用专业且富有启发性的语气风格;\n5. 解释的字数限制为200字。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["1. 名字应富有创意且寓意深远;", "2. 名字简洁易记,避免可能引起文化或语言上的冒犯或歧义的词汇;", "3. 解释中需融入公司致力于科技创新和提升家庭生活品质的理念;", "4. 命名和解释采用专业且富有启发性的语气风格;", "5. 解释的字数限制为200字。"], "levels2": ["语言特征约束", "价值观约束", "包含约束", "语气风格约束", "数值约束"], "category": "trace1.0"} +{"id": "537", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇关于加州最近森林火灾的新闻报道,报道需按照新闻报道标准格式,包含标题、导语、主体、背景和结语部分。报道必须涵盖火灾的确切日期、地点、破坏规模、扑火人员投入、资源消耗、火灾原因及影响。报道长度需在400至600字之间,使用正式、客观的语气,确保信息准确性和客观性。\n1. 标准格式:新闻报道必须包含标题、导语、主体、背景和结语部分;\n2. 报道长度:报道长度至少为400字,但不超过600字;\n3. 报道内容:必须包含火灾的确切日期、具体地点、破坏的详细规模、扑火人员的投入、资源消耗、火灾的原因分析以及对受影响社区和居民的具体影响;\n4. 语气风格:使用正式、客观的语气风格,确保信息的准确性和客观性;\n5. 数据核实:报道中涉及的所有数据和事实需要经过核实,确保报道的准确性和可信度。\n"}], "type": "trace", "description": "撰写一篇关于加州最近森林火灾的新闻报道,报道需按照新闻报道标准格式,包含标题、导语、主体、背景和结语部分。报道必须涵盖火灾的确切日期、地点、破坏规模、扑火人员投入、资源消耗、火灾原因及影响。报道长度需在400至600字之间,使用正式、客观的语气,确保信息准确性和客观性。", "constraints": "1. 标准格式:新闻报道必须包含标题、导语、主体、背景和结语部分;\n2. 报道长度:报道长度至少为400字,但不超过600字;\n3. 报道内容:必须包含火灾的确切日期、具体地点、破坏的详细规模、扑火人员的投入、资源消耗、火灾的原因分析以及对受影响社区和居民的具体影响;\n4. 语气风格:使用正式、客观的语气风格,确保信息的准确性和客观性;\n5. 数据核实:报道中涉及的所有数据和事实需要经过核实,确保报道的准确性和可信度。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["1. 标准格式:新闻报道必须包含标题、导语、主体、背景和结语部分;", "2. 报道长度:报道长度至少为400字,但不超过600字;", "3. 报道内容:必须包含火灾的确切日期、具体地点、破坏的详细规模、扑火人员的投入、资源消耗、火灾的原因分析以及对受影响社区和居民的具体影响;", "4. 语气风格:使用正式、客观的语气风格,确保信息的准确性和客观性;", "5. 数据核实:报道中涉及的所有数据和事实需要经过核实,确保报道的准确性和可信度。"], "levels2": ["层次化结构约束", "数值约束", "包含约束", "语气风格约束", "价值观约束"], "category": "trace1.0"} +{"id": "538", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "给我一些关于室内植物的照顾建议\n1. 至少包括5个关键的照顾技巧,每一个技巧请用项目符号列出并解释清楚;\n2. 建议需以友好、鼓励的语气给出,确保内容既实用又易于理解;\n3. 输出的内容应控制在300字以内;\n4. 使用Markdown格式,便于阅读;\n5. 最后以一个总结段落结束,强调照顾室内植物的乐趣和好处;\n"}], "type": "trace", "description": "给我一些关于室内植物的照顾建议", "constraints": "1. 至少包括5个关键的照顾技巧,每一个技巧请用项目符号列出并解释清楚;\n2. 建议需以友好、鼓励的语气给出,确保内容既实用又易于理解;\n3. 输出的内容应控制在300字以内;\n4. 使用Markdown格式,便于阅读;\n5. 最后以一个总结段落结束,强调照顾室内植物的乐趣和好处;", "input": "NULL", "constraints_num": 5, "constraints_splits": ["1. 至少包括5个关键的照顾技巧,每一个技巧请用项目符号列出并解释清楚;", "2. 建议需以友好、鼓励的语气给出,确保内容既实用又易于理解;", "3. 输出的内容应控制在300字以内;", "4. 使用Markdown格式,便于阅读;", "5. 最后以一个总结段落结束,强调照顾室内植物的乐趣和好处;"], "levels2": ["编号和列表约束", "语气风格约束", "数值约束", "输出格式约束", "层次化结构约束"], "category": "trace1.0"} +{"id": "539", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为环球电影公司(Global Films Co.)撰写一篇提升知名度方案的报告\n1. 报告应采用正式的商务报告格式,包括摘要、引言、现状分析、策略建议、实施步骤和结论等部分;\n2. 报告中应包含至少三种提升公司知名度的策略,并对每种策略的实施步骤、预期效果和可能的风险进行详细论述;\n3. 报告总字数应在1500至2000字之间;\n4. 在论述中需引用至少3篇相关行业研究或案例分析作为支持;\n5. 报告的结尾处应提供一个参考文献列表,列出所有引用的资料和数据来源;\n"}], "type": "trace", "description": "为环球电影公司(Global Films Co.)撰写一篇提升知名度方案的报告", "constraints": "1. 报告应采用正式的商务报告格式,包括摘要、引言、现状分析、策略建议、实施步骤和结论等部分;\n2. 报告中应包含至少三种提升公司知名度的策略,并对每种策略的实施步骤、预期效果和可能的风险进行详细论述;\n3. 报告总字数应在1500至2000字之间;\n4. 在论述中需引用至少3篇相关行业研究或案例分析作为支持;\n5. 报告的结尾处应提供一个参考文献列表,列出所有引用的资料和数据来源;", "input": "NULL", "constraints_num": 5, "constraints_splits": ["1. 报告应采用正式的商务报告格式,包括摘要、引言、现状分析、策略建议、实施步骤和结论等部分;", "2. 报告中应包含至少三种提升公司知名度的策略,并对每种策略的实施步骤、预期效果和可能的风险进行详细论述;", "3. 报告总字数应在1500至2000字之间;", "4. 在论述中需引用至少3篇相关行业研究或案例分析作为支持;", "5. 报告的结尾处应提供一个参考文献列表,列出所有引用的资料和数据来源;"], "levels2": ["层次化结构约束", "包含约束", "数值约束", "引用和参考约束", "引用和参考约束"], "category": "trace1.0"} +{"id": "540", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以表格形式输出从上海到北京的最佳路线和预计时间,出发时间为上午8:00,包含至少3种不同的交通方式(如飞机、高铁、自驾),每种方式需列出预计出发时间、预计到达时间、全程预计用时和票价或成本,以及相应的出发地点和到达地点信息。\n1. 信息需确保准确;\n2. 考虑到路况、天气、航班时刻等因素,建议提前查询实时信息;\n3. 表格应包含至少3种不同的交通方式;\n4. 每种方式需列出预计出发时间、预计到达时间、全程预计用时和票价或成本;\n5. 需提供相应的出发地点和到达地点信息。\n"}], "type": "trace", "description": "以表格形式输出从上海到北京的最佳路线和预计时间,出发时间为上午8:00,包含至少3种不同的交通方式(如飞机、高铁、自驾),每种方式需列出预计出发时间、预计到达时间、全程预计用时和票价或成本,以及相应的出发地点和到达地点信息。", "constraints": "1. 信息需确保准确;\n2. 考虑到路况、天气、航班时刻等因素,建议提前查询实时信息;\n3. 表格应包含至少3种不同的交通方式;\n4. 每种方式需列出预计出发时间、预计到达时间、全程预计用时和票价或成本;\n5. 需提供相应的出发地点和到达地点信息。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["1. 信息需确保准确;", "2. 考虑到路况、天气、航班时刻等因素,建议提前查询实时信息;", "3. 表格应包含至少3种不同的交通方式;", "4. 每种方式需列出预计出发时间、预计到达时间、全程预计用时和票价或成本;", "5. 需提供相应的出发地点和到达地点信息。"], "levels2": ["价值观约束", "自然语言流程背景信息约束", "数值约束", "输出格式约束", "包含约束"], "category": "trace1.0"} +{"id": "541", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "对三星电视、索尼电视、LG电视按照从最好到最差的顺序进行排名\n1. 排名需基于最新一年的消费者报告和专业评测;\n2. 结果以表格形式呈现,包括产品名称、评分、排名理由;\n3. 评分需精确到小数点后两位;\n4. 输出内容应包含一个包含所有信息的表格;\n5. 对排名理由的简短描述不得超过50字;\n"}], "type": "trace", "description": "对三星电视、索尼电视、LG电视按照从最好到最差的顺序进行排名", "constraints": "1. 排名需基于最新一年的消费者报告和专业评测;\n2. 结果以表格形式呈现,包括产品名称、评分、排名理由;\n3. 评分需精确到小数点后两位;\n4. 输出内容应包含一个包含所有信息的表格;\n5. 对排名理由的简短描述不得超过50字;", "input": "NULL", "constraints_num": 5, "constraints_splits": ["1. 排名需基于最新一年的消费者报告和专业评测;", "2. 结果以表格形式呈现,包括产品名称、评分、排名理由;", "3. 评分需精确到小数点后两位;", "4. 输出内容应包含一个包含所有信息的表格;", "5. 对排名理由的简短描述不得超过50字;"], "levels2": ["引用和参考约束", "输出格式约束", "数值约束", "输出格式约束", "数值约束"], "category": "trace1.0"} +{"id": "542", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇关于互联网金融的介绍性文章\n1. 文章应包含引言、互联网金融定义、互联网金融的服务类型(至少列出5种服务)、互联网金融的特点(至少4点)、互联网金融的优势(至少3点);\n2. 文章总字数应控制在1000字以内;\n3. 使用编号列表进行组织,增强文章条理性和可读性;\n4. 文章结尾提供至少两个参考文献,增强权威性和可信度;\n5. 文章需采用Markdown流程背景信息约束的形式撰写;\n"}], "type": "trace", "description": "撰写一篇关于互联网金融的介绍性文章", "constraints": "1. 文章应包含引言、互联网金融定义、互联网金融的服务类型(至少列出5种服务)、互联网金融的特点(至少4点)、互联网金融的优势(至少3点);\n2. 文章总字数应控制在1000字以内;\n3. 使用编号列表进行组织,增强文章条理性和可读性;\n4. 文章结尾提供至少两个参考文献,增强权威性和可信度;\n5. 文章需采用Markdown流程背景信息约束的形式撰写;", "input": "NULL", "constraints_num": 5, "constraints_splits": ["1. 文章应包含引言、互联网金融定义、互联网金融的服务类型(至少列出5种服务)、互联网金融的特点(至少4点)、互联网金融的优势(至少3点);", "2. 文章总字数应控制在1000字以内;", "3. 使用编号列表进行组织,增强文章条理性和可读性;", "4. 文章结尾提供至少两个参考文献,增强权威性和可信度;", "5. 文章需采用Markdown流程背景信息约束的形式撰写;"], "levels2": ["层次化结构约束", "数值约束", "编号和列表约束", "引用和参考约束", "markdown流程背景信息约束"], "category": "trace1.0"} +{"id": "543", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "安排一周的饮食计划,旨在帮助减肥并保持营养均衡。\n1. 饮食计划将限制高淀粉食物的摄入;\n2. 每顿饭都包含低淀粉、高蛋白、高纤维的食材,以促进健康减肥;\n3. 食材选择应鼓励采用健康、营养、低淀粉的食材;\n4. 饮食计划采用表格形式,每餐的食材列明并注明是否为低淀粉食物;\n5. 提供一周饮食的总体营养成分(蛋白质、纤维、脂肪等)的总览表;\n"}], "type": "trace", "description": "安排一周的饮食计划,旨在帮助减肥并保持营养均衡。", "constraints": "1. 饮食计划将限制高淀粉食物的摄入;\n2. 每顿饭都包含低淀粉、高蛋白、高纤维的食材,以促进健康减肥;\n3. 食材选择应鼓励采用健康、营养、低淀粉的食材;\n4. 饮食计划采用表格形式,每餐的食材列明并注明是否为低淀粉食物;\n5. 提供一周饮食的总体营养成分(蛋白质、纤维、脂肪等)的总览表;", "input": "NULL", "constraints_num": 5, "constraints_splits": ["1. 饮食计划将限制高淀粉食物的摄入;", "2. 每顿饭都包含低淀粉、高蛋白、高纤维的食材,以促进健康减肥;", "3. 食材选择应鼓励采用健康、营养、低淀粉的食材;", "4. 饮食计划采用表格形式,每餐的食材列明并注明是否为低淀粉食物;", "5. 提供一周饮食的总体营养成分(蛋白质、纤维、脂肪等)的总览表;"], "levels2": ["排除约束", "包含约束", "价值观约束", "输出格式约束", "输出格式约束"], "category": "trace1.0"} +{"id": "544", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以一篇严谨正式的文章形式,解释历史上的一次有趣事件。\n1. 文章结构应包含引言、事件的背景、事件的经过、事件的结果以及事件为何有趣这五个部分;\n2. 每个部分不少于200字,全文不超过2000字;\n3. 重要人物和关键时间应用斜体字突出显示,以增强可读性;\n4. 文章的引用需遵循APA格式,至少引用3篇历史学领域的学术文献以支持分析;\n5. 文章应以第三人称叙述,避免使用第一人称或第二人称,保持客观性和专业性。\n"}], "type": "trace", "description": "以一篇严谨正式的文章形式,解释历史上的一次有趣事件。", "constraints": "1. 文章结构应包含引言、事件的背景、事件的经过、事件的结果以及事件为何有趣这五个部分;\n2. 每个部分不少于200字,全文不超过2000字;\n3. 重要人物和关键时间应用斜体字突出显示,以增强可读性;\n4. 文章的引用需遵循APA格式,至少引用3篇历史学领域的学术文献以支持分析;\n5. 文章应以第三人称叙述,避免使用第一人称或第二人称,保持客观性和专业性。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["1. 文章结构应包含引言、事件的背景、事件的经过、事件的结果以及事件为何有趣这五个部分;", "2. 每个部分不少于200字,全文不超过2000字;", "3. 重要人物和关键时间应用斜体字突出显示,以增强可读性;", "4. 文章的引用需遵循APA格式,至少引用3篇历史学领域的学术文献以支持分析;", "5. 文章应以第三人称叙述,避免使用第一人称或第二人称,保持客观性和专业性。"], "levels2": ["层次化结构约束", "数值约束", "文本样式约束", "引用和参考约束", "语气风格约束"], "category": "trace1.0"} +{"id": "545", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "根据提供的要点编辑一份简历\n1. 简历需按照专业模板进行排版,包括清晰的标题、段落和列表格式;\n2. 简历的总字数控制在500字以内;\n3. 简历的语气需保持专业正式,突出专业技能和实际工作经验;\n4. 简历中必须包含教育背景、专业技能、实习经历、项目案例以及所获得的任何相关证书;\n5. 确保简历内容准确无误,突出专业优势和实践经验;\n# Inputs:\n- 姓名:张三\n- 毕业院校:某大学\n- 专业:市场营销\n- 求职意向:营销岗位\n- 教育背景:某大学,市场营销专业,毕业年份\n- 专业技能:市场调研与分析、营销策略制定、项目管理\n- 实习经历:某公司市场营销助理,实习时间,主要职责包括市场调研、竞争分析,以及参与营销策略的制定与执行\n- 项目案例:描述在实习期间完成的项目名称、目标、所扮演的角色和成果\n- 证书:列出与市场营销相关的任何专业证书或培训课程\n"}], "type": "trace", "description": "根据提供的要点编辑一份简历", "constraints": "1. 简历需按照专业模板进行排版,包括清晰的标题、段落和列表格式;\n2. 简历的总字数控制在500字以内;\n3. 简历的语气需保持专业正式,突出专业技能和实际工作经验;\n4. 简历中必须包含教育背景、专业技能、实习经历、项目案例以及所获得的任何相关证书;\n5. 确保简历内容准确无误,突出专业优势和实践经验;", "input": "- 姓名:张三\n- 毕业院校:某大学\n- 专业:市场营销\n- 求职意向:营销岗位\n- 教育背景:某大学,市场营销专业,毕业年份\n- 专业技能:市场调研与分析、营销策略制定、项目管理\n- 实习经历:某公司市场营销助理,实习时间,主要职责包括市场调研、竞争分析,以及参与营销策略的制定与执行\n- 项目案例:描述在实习期间完成的项目名称、目标、所扮演的角色和成果\n- 证书:列出与市场营销相关的任何专业证书或培训课程", "constraints_num": 5, "constraints_splits": ["1. 简历需按照专业模板进行排版,包括清晰的标题、段落和列表格式;", "2. 简历的总字数控制在500字以内;", "3. 简历的语气需保持专业正式,突出专业技能和实际工作经验;", "4. 简历中必须包含教育背景、专业技能、实习经历、项目案例以及所获得的任何相关证书;", "5. 确保简历内容准确无误,突出专业优势和实践经验;"], "levels2": ["模版约束", "数值约束", "语气风格约束", "包含约束", "包含约束"], "category": "trace1.0"} +{"id": "546", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "根据给出的关键字和分类创建一个简单的文本分类器,关键字包括:猫、狗、苹果、香蕉、橘子,分类为:动物、水果。分类器应能够区分输入文本是动物还是水果。\n1. 分类器在处理文本时,能容忍一定的拼写错误;\n2. 对于输入的文本,分类器需要返回一个置信度分数,表示其属于动物或水果类别的概率;\n3. 置信度分数应在0到1之间;\n4. 分类器的准确率需在测试数据集上达到85%以上;\n5. 输出结果应包括分类结果和置信度分数,格式为JSON;\n"}], "type": "trace", "description": "根据给出的关键字和分类创建一个简单的文本分类器,关键字包括:猫、狗、苹果、香蕉、橘子,分类为:动物、水果。分类器应能够区分输入文本是动物还是水果。", "constraints": "1. 分类器在处理文本时,能容忍一定的拼写错误;\n2. 对于输入的文本,分类器需要返回一个置信度分数,表示其属于动物或水果类别的概率;\n3. 置信度分数应在0到1之间;\n4. 分类器的准确率需在测试数据集上达到85%以上;\n5. 输出结果应包括分类结果和置信度分数,格式为JSON;", "input": "NULL", "constraints_num": 5, "constraints_splits": ["1. 分类器在处理文本时,能容忍一定的拼写错误;", "2. 对于输入的文本,分类器需要返回一个置信度分数,表示其属于动物或水果类别的概率;", "3. 置信度分数应在0到1之间;", "4. 分类器的准确率需在测试数据集上达到85%以上;", "5. 输出结果应包括分类结果和置信度分数,格式为JSON;"], "levels2": ["排除约束", "输出格式约束", "数值约束", "数值约束", "输出格式约束"], "category": "trace1.0"} +{"id": "547", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创作一篇文章,主题为“如何更好地管理时间”,文章需包含关键词:时间、日程安排、时间管理、时间分配。\n1. 文章结构要求清晰,使用标题和子标题进行层次化组织,具体包括引言、原因分析、解决方案、实例说明和结论五个部分;\n2. 文章字数应在1000至1500字之间;\n3. 所有关键词在文章中首次出现时需使用斜体样式以突出显示;\n4. 在阐述解决方案时,至少提供3个实用的时间管理技巧;\n5. 结合具体的个人或企业案例进行说明;\n"}], "type": "trace", "description": "创作一篇文章,主题为“如何更好地管理时间”,文章需包含关键词:时间、日程安排、时间管理、时间分配。", "constraints": "1. 文章结构要求清晰,使用标题和子标题进行层次化组织,具体包括引言、原因分析、解决方案、实例说明和结论五个部分;\n2. 文章字数应在1000至1500字之间;\n3. 所有关键词在文章中首次出现时需使用斜体样式以突出显示;\n4. 在阐述解决方案时,至少提供3个实用的时间管理技巧;\n5. 结合具体的个人或企业案例进行说明;", "input": "NULL", "constraints_num": 5, "constraints_splits": ["1. 文章结构要求清晰,使用标题和子标题进行层次化组织,具体包括引言、原因分析、解决方案、实例说明和结论五个部分;", "2. 文章字数应在1000至1500字之间;", "3. 所有关键词在文章中首次出现时需使用斜体样式以突出显示;", "4. 在阐述解决方案时,至少提供3个实用的时间管理技巧;", "5. 结合具体的个人或企业案例进行说明;"], "levels2": ["层次化结构约束", "数值约束", "文本样式约束", "数值约束", "包含约束"], "category": "trace1.0"} +{"id": "548", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "提供一个对给定文本的总结概述\n1. 概述应包括引言和结论部分;\n2. 使用斜体标记关键点;\n3. 概述中需回答文章主要讨论什么;\n4. 确保在回答中引用至少一处原始文本内容以支持观点;\n5. 明确指出谁可能会在疫苗分发方面受到不公平待遇的警告是否正确,并引用原文中的具体警告来支持回答。\n# Inputs:\n随着疫苗接种带来的新希望,经济学家和政策制定者现在非常关注谁会最先恢复到疫情前的经济状态。一些分析师警告说,疫苗分发的不平等可能导致这种恢复时间的进一步拉大。文章原文来自《纽约时报》。\n"}], "type": "trace", "description": "提供一个对给定文本的总结概述", "constraints": "1. 概述应包括引言和结论部分;\n2. 使用斜体标记关键点;\n3. 概述中需回答文章主要讨论什么;\n4. 确保在回答中引用至少一处原始文本内容以支持观点;\n5. 明确指出谁可能会在疫苗分发方面受到不公平待遇的警告是否正确,并引用原文中的具体警告来支持回答。", "input": "随着疫苗接种带来的新希望,经济学家和政策制定者现在非常关注谁会最先恢复到疫情前的经济状态。一些分析师警告说,疫苗分发的不平等可能导致这种恢复时间的进一步拉大。文章原文来自《纽约时报》。", "constraints_num": 5, "constraints_splits": ["1. 概述应包括引言和结论部分;", "2. 使用斜体标记关键点;", "3. 概述中需回答文章主要讨论什么;", "4. 确保在回答中引用至少一处原始文本内容以支持观点;", "5. 明确指出谁可能会在疫苗分发方面受到不公平待遇的警告是否正确,并引用原文中的具体警告来支持回答。"], "levels2": ["层次化结构约束", "文本样式约束", "包含约束", "引用和参考约束", "引用和参考约束"], "category": "trace1.0"} +{"id": "549", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一个响应式网站的雏形,使用HTML和CSS确保在不同设备上都能正常显示。网站包括一个主页和两个子页面,每个页面的标题、段落和列表采用层次化结构组织。主页包含导航栏、主标题、介绍文本和指向两个子页面的链接。每个子页面包含至少3个段落和1个列表,列表项目与主页主题相关。\n1. 每个页面的标题、段落和列表需采用层次化结构组织,如使用`

`至`

`标签;\n2. 主页需包含导航栏、一个主标题、一段介绍文本和指向两个子页面的链接;\n3. 每个子页面应包含至少3个段落和1个列表,列表中的项目应与主页主题相关,且每个段落至少有100字;\n4. 所有页面的布局应保持一致,使用统一的字体和色调;\n5. 网站需响应式设计,确保在不同设备上都能正常显示。\n"}], "type": "trace", "description": "创建一个响应式网站的雏形,使用HTML和CSS确保在不同设备上都能正常显示。网站包括一个主页和两个子页面,每个页面的标题、段落和列表采用层次化结构组织。主页包含导航栏、主标题、介绍文本和指向两个子页面的链接。每个子页面包含至少3个段落和1个列表,列表项目与主页主题相关。", "constraints": "1. 每个页面的标题、段落和列表需采用层次化结构组织,如使用`

`至`

`标签;\n2. 主页需包含导航栏、一个主标题、一段介绍文本和指向两个子页面的链接;\n3. 每个子页面应包含至少3个段落和1个列表,列表中的项目应与主页主题相关,且每个段落至少有100字;\n4. 所有页面的布局应保持一致,使用统一的字体和色调;\n5. 网站需响应式设计,确保在不同设备上都能正常显示。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["1. 每个页面的标题、段落和列表需采用层次化结构组织,如使用`

`至`

`标签;", "2. 主页需包含导航栏、一个主标题、一段介绍文本和指向两个子页面的链接;", "3. 每个子页面应包含至少3个段落和1个列表,列表中的项目应与主页主题相关,且每个段落至少有100字;", "4. 所有页面的布局应保持一致,使用统一的字体和色调;", "5. 网站需响应式设计,确保在不同设备上都能正常显示。"], "levels2": ["层次化结构约束", "层次化结构约束", "数值约束", "文本样式约束", "文本样式约束"], "category": "trace1.0"} +{"id": "550", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为下一季度公司销售目标制定具体的计划,考虑主要产品(电动自行车和智能手表)和地理分布情况(北京、上海、广州、杭州、成都)。\n1. 制定计划时,需要考虑将销售目标细分为月度目标;\n2. 每个产品在五个城市的销售目标要具体到数量,电动自行车总销售目标不低于5000台,智能手表不低于3000台;\n3. 计划中要包含对上一季度销售数据的分析,以及对市场趋势的预测;\n4. 输出格式为表格,列出每个城市每个产品的月度销售目标,同时提供一份关于市场预测和销售策略的文本报告;\n5. 计划需在下周一早晨的销售会议上进行汇报,汇报时长不超过20分钟;\n"}], "type": "trace", "description": "为下一季度公司销售目标制定具体的计划,考虑主要产品(电动自行车和智能手表)和地理分布情况(北京、上海、广州、杭州、成都)。", "constraints": "1. 制定计划时,需要考虑将销售目标细分为月度目标;\n2. 每个产品在五个城市的销售目标要具体到数量,电动自行车总销售目标不低于5000台,智能手表不低于3000台;\n3. 计划中要包含对上一季度销售数据的分析,以及对市场趋势的预测;\n4. 输出格式为表格,列出每个城市每个产品的月度销售目标,同时提供一份关于市场预测和销售策略的文本报告;\n5. 计划需在下周一早晨的销售会议上进行汇报,汇报时长不超过20分钟;", "input": "NULL", "constraints_num": 5, "constraints_splits": ["1. 制定计划时,需要考虑将销售目标细分为月度目标;", "2. 每个产品在五个城市的销售目标要具体到数量,电动自行车总销售目标不低于5000台,智能手表不低于3000台;", "3. 计划中要包含对上一季度销售数据的分析,以及对市场趋势的预测;", "4. 输出格式为表格,列出每个城市每个产品的月度销售目标,同时提供一份关于市场预测和销售策略的文本报告;", "5. 计划需在下周一早晨的销售会议上进行汇报,汇报时长不超过20分钟;"], "levels2": ["自然语言流程背景信息约束", "数值约束", "包含约束", "输出格式约束", "数值约束"], "category": "trace1.0"} +{"id": "551", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为明星杨紫制作一份时尚搭配建议\n1. 此建议主要针对25-35岁之间追求时尚潮流的女性观众;\n2. 以Markdown格式呈现;\n3. 搭配建议应包含至少3套日常穿搭和2套正式场合的服装搭配;\n4. 每套搭配需列出具体品牌和价格范围;\n5. 建议的风格应倾向于优雅与现代的结合,既适合亚洲市场,又能体现国际时尚趋势;\n"}], "type": "trace", "description": "为明星杨紫制作一份时尚搭配建议", "constraints": "1. 此建议主要针对25-35岁之间追求时尚潮流的女性观众;\n2. 以Markdown格式呈现;\n3. 搭配建议应包含至少3套日常穿搭和2套正式场合的服装搭配;\n4. 每套搭配需列出具体品牌和价格范围;\n5. 建议的风格应倾向于优雅与现代的结合,既适合亚洲市场,又能体现国际时尚趋势;", "input": "NULL", "constraints_num": 5, "constraints_splits": ["1. 此建议主要针对25-35岁之间追求时尚潮流的女性观众;", "2. 以Markdown格式呈现;", "3. 搭配建议应包含至少3套日常穿搭和2套正式场合的服装搭配;", "4. 每套搭配需列出具体品牌和价格范围;", "5. 建议的风格应倾向于优雅与现代的结合,既适合亚洲市场,又能体现国际时尚趋势;"], "levels2": ["受众目标约束", "输出格式约束", "数值约束", "包含约束", "语气风格约束"], "category": "trace1.0"} +{"id": "552", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为初学者提供一个易于理解的教程,帮助他们学会在Photoshop中添加文本。\n1. 教程应针对不熟悉图像编辑软件的受众,使用简单明了的语言;\n2. 教程应包含至少三个实际操作步骤;\n3. 教程的长度应在200至300字之间;\n4. 教程必须包含以下内容:如何打开Photoshop,如何找到并使用文本工具,以及如何调整文本的大小和颜色;\n5. 教程应采用鼓励和友好的语气,使学习过程更加愉快。\n"}], "type": "trace", "description": "为初学者提供一个易于理解的教程,帮助他们学会在Photoshop中添加文本。", "constraints": "1. 教程应针对不熟悉图像编辑软件的受众,使用简单明了的语言;\n2. 教程应包含至少三个实际操作步骤;\n3. 教程的长度应在200至300字之间;\n4. 教程必须包含以下内容:如何打开Photoshop,如何找到并使用文本工具,以及如何调整文本的大小和颜色;\n5. 教程应采用鼓励和友好的语气,使学习过程更加愉快。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["1. 教程应针对不熟悉图像编辑软件的受众,使用简单明了的语言;", "2. 教程应包含至少三个实际操作步骤;", "3. 教程的长度应在200至300字之间;", "4. 教程必须包含以下内容:如何打开Photoshop,如何找到并使用文本工具,以及如何调整文本的大小和颜色;", "5. 教程应采用鼓励和友好的语气,使学习过程更加愉快。"], "levels2": ["受众目标约束", "数值约束", "数值约束", "包含约束", "语气风格约束"], "category": "trace1.0"} +{"id": "553", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一份分析报告,解释COVID-19住院率如何影响死亡率\n1. 报告需基于至少三篇经过同行评审的医学期刊文章;\n2. 报告长度为1500字;\n3. 引用和参考文献需采用APA格式;\n4. 正文使用Times New Roman字体,字号12;\n5. 报告需采用严谨正式的学术语气,确保内容的准确性和专业性;\n"}], "type": "trace", "description": "撰写一份分析报告,解释COVID-19住院率如何影响死亡率", "constraints": "1. 报告需基于至少三篇经过同行评审的医学期刊文章;\n2. 报告长度为1500字;\n3. 引用和参考文献需采用APA格式;\n4. 正文使用Times New Roman字体,字号12;\n5. 报告需采用严谨正式的学术语气,确保内容的准确性和专业性;", "input": "NULL", "constraints_num": 5, "constraints_splits": ["1. 报告需基于至少三篇经过同行评审的医学期刊文章;", "2. 报告长度为1500字;", "3. 引用和参考文献需采用APA格式;", "4. 正文使用Times New Roman字体,字号12;", "5. 报告需采用严谨正式的学术语气,确保内容的准确性和专业性;"], "levels2": ["引用和参考约束", "数值约束", "引用和参考约束", "文本样式约束", "语气风格约束"], "category": "trace1.0"} +{"id": "554", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一份今日待办事项及重要日期的提醒清单\n1. 清单以项目符号列表形式展示;\n2. 每个事项不超过20个字;\n3. 今日任务包括健身、洗衣服、购物;\n4. 重要日期需标注在清单的底部;\n5. 使用简洁明了的语气风格,确保清单一目了然,便于快速查看;\n"}], "type": "trace", "description": "创建一份今日待办事项及重要日期的提醒清单", "constraints": "1. 清单以项目符号列表形式展示;\n2. 每个事项不超过20个字;\n3. 今日任务包括健身、洗衣服、购物;\n4. 重要日期需标注在清单的底部;\n5. 使用简洁明了的语气风格,确保清单一目了然,便于快速查看;", "input": "NULL", "constraints_num": 5, "constraints_splits": ["1. 清单以项目符号列表形式展示;", "2. 每个事项不超过20个字;", "3. 今日任务包括健身、洗衣服、购物;", "4. 重要日期需标注在清单的底部;", "5. 使用简洁明了的语气风格,确保清单一目了然,便于快速查看;"], "levels2": ["编号和列表约束", "数值约束", "包含约束", "文本样式约束", "语气风格约束"], "category": "trace1.0"} +{"id": "555", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "精确填写简历模板\n1. 模板需包含以下部分:个人信息、教育背景、工作经验、校园活动和技能证书等;\n2. 使用标准简历格式,包括清晰的标题和子标题,个人信息和教育背景部分需采用Markdown格式;\n3. 个人信息部分不超过50字;\n4. 教育背景部分详细描述,但不超过200字;\n5. 明确规定各部分的起始和结束标记,以便于识别和提取信息;\n# Inputs:\n姓名:张三;性别:男;毕业院校:清华大学;学历:硕士研究生;专业:计算机科学与技术;毕业时间:2022年6月;毕业论文标题:论文名称。\n"}], "type": "trace", "description": "精确填写简历模板", "constraints": "1. 模板需包含以下部分:个人信息、教育背景、工作经验、校园活动和技能证书等;\n2. 使用标准简历格式,包括清晰的标题和子标题,个人信息和教育背景部分需采用Markdown格式;\n3. 个人信息部分不超过50字;\n4. 教育背景部分详细描述,但不超过200字;\n5. 明确规定各部分的起始和结束标记,以便于识别和提取信息;", "input": "姓名:张三;性别:男;毕业院校:清华大学;学历:硕士研究生;专业:计算机科学与技术;毕业时间:2022年6月;毕业论文标题:论文名称。", "constraints_num": 5, "constraints_splits": ["1. 模板需包含以下部分:个人信息、教育背景、工作经验、校园活动和技能证书等;", "2. 使用标准简历格式,包括清晰的标题和子标题,个人信息和教育背景部分需采用Markdown格式;", "3. 个人信息部分不超过50字;", "4. 教育背景部分详细描述,但不超过200字;", "5. 明确规定各部分的起始和结束标记,以便于识别和提取信息;"], "levels2": ["模版约束", "层次化结构约束", "数值约束", "数值约束", "层次化结构约束"], "category": "trace1.0"} +{"id": "556", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一份销售建议书,基于市场调查报告,分析年轻人饮食习惯趋势,特别是对均衡和健康饮食的需求增长,提出推广健康食品的策略。\n1. 以健康食品公司市场部经理的身份撰写;\n2. 建议书采用正式、专业的语气,内容严谨且具有说服力;\n3. 报告包含市场分析、至少三种推广策略、结论和附录;\n4. 结论中重申采取行动的紧迫性和必要性;\n5. 附上至少三份参考资料,确保报告结论的准确性和可靠性。\n"}], "type": "trace", "description": "撰写一份销售建议书,基于市场调查报告,分析年轻人饮食习惯趋势,特别是对均衡和健康饮食的需求增长,提出推广健康食品的策略。", "constraints": "1. 以健康食品公司市场部经理的身份撰写;\n2. 建议书采用正式、专业的语气,内容严谨且具有说服力;\n3. 报告包含市场分析、至少三种推广策略、结论和附录;\n4. 结论中重申采取行动的紧迫性和必要性;\n5. 附上至少三份参考资料,确保报告结论的准确性和可靠性。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["1. 以健康食品公司市场部经理的身份撰写;", "2. 建议书采用正式、专业的语气,内容严谨且具有说服力;", "3. 报告包含市场分析、至少三种推广策略、结论和附录;", "4. 结论中重申采取行动的紧迫性和必要性;", "5. 附上至少三份参考资料,确保报告结论的准确性和可靠性。"], "levels2": ["角色扮演约束", "语气风格约束", "包含约束", "语气风格约束", "引用和参考约束"], "category": "trace1.0"} +{"id": "557", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "编辑一篇长约300词的文章\n1. 文章需遵循APA引用格式;\n2. 内文中的所有引用和数据来源都有准确的注释;\n3. 使用简洁明了的正式语气;\n4. 确保内容流畅、语法正确、信息有条理、结构紧凑;\n5. 文章应采用标题和子标题进行层次化结构组织,便于阅读和理解;\n"}], "type": "trace", "description": "编辑一篇长约300词的文章", "constraints": "1. 文章需遵循APA引用格式;\n2. 内文中的所有引用和数据来源都有准确的注释;\n3. 使用简洁明了的正式语气;\n4. 确保内容流畅、语法正确、信息有条理、结构紧凑;\n5. 文章应采用标题和子标题进行层次化结构组织,便于阅读和理解;", "input": "NULL", "constraints_num": 5, "constraints_splits": ["1. 文章需遵循APA引用格式;", "2. 内文中的所有引用和数据来源都有准确的注释;", "3. 使用简洁明了的正式语气;", "4. 确保内容流畅、语法正确、信息有条理、结构紧凑;", "5. 文章应采用标题和子标题进行层次化结构组织,便于阅读和理解;"], "levels2": ["引用和参考约束", "引用和参考约束", "语气风格约束", "语法结构约束", "层次化结构约束"], "category": "trace1.0"} +{"id": "558", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以电影评论家的身份为《阿甘正传》写一篇评论文章,详细阐述电影结局对整部电影主题的升华,深度挖掘阿甘照顾珍妮儿子以及将家传给他的行为背后,关于爱与牺牲的深刻含义,以及这个结局如何触动人心。\n1. 文章面向电影爱好者和评论家;\n2. 文章采用专业且叙述性的语气风格;\n3. 文章长度需在1000至1500字之间;\n4. 文章应深度挖掘电影结局背后关于爱与牺牲的深刻含义;\n5. 文章需在文末引用至少两篇其他著名电影评论家对《阿甘正传》结局的评价。\n"}], "type": "trace", "description": "以电影评论家的身份为《阿甘正传》写一篇评论文章,详细阐述电影结局对整部电影主题的升华,深度挖掘阿甘照顾珍妮儿子以及将家传给他的行为背后,关于爱与牺牲的深刻含义,以及这个结局如何触动人心。", "constraints": "1. 文章面向电影爱好者和评论家;\n2. 文章采用专业且叙述性的语气风格;\n3. 文章长度需在1000至1500字之间;\n4. 文章应深度挖掘电影结局背后关于爱与牺牲的深刻含义;\n5. 文章需在文末引用至少两篇其他著名电影评论家对《阿甘正传》结局的评价。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["1. 文章面向电影爱好者和评论家;", "2. 文章采用专业且叙述性的语气风格;", "3. 文章长度需在1000至1500字之间;", "4. 文章应深度挖掘电影结局背后关于爱与牺牲的深刻含义;", "5. 文章需在文末引用至少两篇其他著名电影评论家对《阿甘正传》结局的评价。"], "levels2": ["受众目标约束", "语气风格约束", "数值约束", "主题约束", "引用和参考约束"], "category": "trace1.0"} +{"id": "559", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "解释测试驱动开发这一短语,详细阐述其在软件开发过程中的实践步骤与核心价值。在解释中,应包含测试驱动开发如何促进代码质量的提高,以及它在敏捷开发框架中的应用。同时,提供一个正例,展示测试驱动开发在实际项目中的成功案例,以及它如何帮助团队提前发现并解决问题。\n1. 以软件工程师的角色进行解释;\n2. 解释内容需覆盖测试驱动开发在软件开发过程中的实践步骤与核心价值;\n3. 解释中需包含测试驱动开发如何提高代码质量,以及在敏捷开发框架中的应用;\n4. 需提供一个正例,展示测试驱动开发在实际项目中的成功案例;\n5. 正例需展示测试驱动开发如何帮助团队提前发现并解决问题。\n"}], "type": "trace", "description": "解释测试驱动开发这一短语,详细阐述其在软件开发过程中的实践步骤与核心价值。在解释中,应包含测试驱动开发如何促进代码质量的提高,以及它在敏捷开发框架中的应用。同时,提供一个正例,展示测试驱动开发在实际项目中的成功案例,以及它如何帮助团队提前发现并解决问题。", "constraints": "1. 以软件工程师的角色进行解释;\n2. 解释内容需覆盖测试驱动开发在软件开发过程中的实践步骤与核心价值;\n3. 解释中需包含测试驱动开发如何提高代码质量,以及在敏捷开发框架中的应用;\n4. 需提供一个正例,展示测试驱动开发在实际项目中的成功案例;\n5. 正例需展示测试驱动开发如何帮助团队提前发现并解决问题。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["1. 以软件工程师的角色进行解释;", "2. 解释内容需覆盖测试驱动开发在软件开发过程中的实践步骤与核心价值;", "3. 解释中需包含测试驱动开发如何提高代码质量,以及在敏捷开发框架中的应用;", "4. 需提供一个正例,展示测试驱动开发在实际项目中的成功案例;", "5. 正例需展示测试驱动开发如何帮助团队提前发现并解决问题。"], "levels2": ["角色扮演约束", "包含约束", "包含约束", "正例约束", "正例约束"], "category": "trace1.0"} +{"id": "560", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为一份聚焦于行业趋势分析的公司报告撰写精炼的介绍\n1. 报告旨在为决策者提供未来市场方向的洞察,受众为公司高层管理人员;\n2. 报告应采用正式且具有权威性的语气风格,确保信息的准确性和专业性;\n3. 介绍部分应当控制在200至300字之间;\n4. 引言必须包含对研究方法的简要概述以及关键发现的亮点;\n5. 引言应以段落形式呈现,每个段落的开始使用编号,以增强内容的层次感和可读性;\n"}], "type": "trace", "description": "为一份聚焦于行业趋势分析的公司报告撰写精炼的介绍", "constraints": "1. 报告旨在为决策者提供未来市场方向的洞察,受众为公司高层管理人员;\n2. 报告应采用正式且具有权威性的语气风格,确保信息的准确性和专业性;\n3. 介绍部分应当控制在200至300字之间;\n4. 引言必须包含对研究方法的简要概述以及关键发现的亮点;\n5. 引言应以段落形式呈现,每个段落的开始使用编号,以增强内容的层次感和可读性;", "input": "NULL", "constraints_num": 5, "constraints_splits": ["1. 报告旨在为决策者提供未来市场方向的洞察,受众为公司高层管理人员;", "2. 报告应采用正式且具有权威性的语气风格,确保信息的准确性和专业性;", "3. 介绍部分应当控制在200至300字之间;", "4. 引言必须包含对研究方法的简要概述以及关键发现的亮点;", "5. 引言应以段落形式呈现,每个段落的开始使用编号,以增强内容的层次感和可读性;"], "levels2": ["受众目标约束", "语气风格约束", "数值约束", "层次化结构约束", "编号和列表约束"], "category": "trace1.0"} +{"id": "561", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "在给定的情境下,为新购电脑的用户给出详细的建议和开机步骤列表,确保所有硬件兼容并正确设置。\n1. 硬件安装顺序和驱动程序更新的建议应确保所有硬件兼容且正确设置。\n2. 开机步骤应使用编号列表对每一步进行详细说明。\n3. 建议中应包含至少3个优化电脑性能的技巧。\n4. 开机步骤列表中应包含确认硬件连接、开机、进入操作系统检查硬件识别、安装软件和驱动程序以及重启确认设置无误的步骤。\n5. 在开机步骤中使用表格形式列出详细建议。\n# Inputs:\n电脑配置:i7-9700k CPU、RTX 2080Ti 显卡、32GB RAM、512GB 970 EVO PLUS SSD、WBACOM CTH-470绘图板。\n"}], "type": "trace", "description": "在给定的情境下,为新购电脑的用户给出详细的建议和开机步骤列表,确保所有硬件兼容并正确设置。", "constraints": "1. 硬件安装顺序和驱动程序更新的建议应确保所有硬件兼容且正确设置。\n2. 开机步骤应使用编号列表对每一步进行详细说明。\n3. 建议中应包含至少3个优化电脑性能的技巧。\n4. 开机步骤列表中应包含确认硬件连接、开机、进入操作系统检查硬件识别、安装软件和驱动程序以及重启确认设置无误的步骤。\n5. 在开机步骤中使用表格形式列出详细建议。", "input": "电脑配置:i7-9700k CPU、RTX 2080Ti 显卡、32GB RAM、512GB 970 EVO PLUS SSD、WBACOM CTH-470绘图板。", "constraints_num": 5, "constraints_splits": ["1. 硬件安装顺序和驱动程序更新的建议应确保所有硬件兼容且正确设置。", "2. 开机步骤应使用编号列表对每一步进行详细说明。", "3. 建议中应包含至少3个优化电脑性能的技巧。", "4. 开机步骤列表中应包含确认硬件连接、开机、进入操作系统检查硬件识别、安装软件和驱动程序以及重启确认设置无误的步骤。", "5. 在开机步骤中使用表格形式列出详细建议。"], "levels2": ["自然语言流程背景信息约束", "编号和列表约束", "数值约束", "自然语言流程背景信息约束", "输出格式约束"], "category": "trace1.0"} +{"id": "562", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇关于线性回归的基本概念及其用途的科普文章\n1. 目标受众为教育类网站的读者;\n2. 文章需包含三个部分:线性回归的基础原理、实际问题解决中的应用案例,以及线性回归在数据科学和统计分析领域的地位与重要性;\n3. 至少引用3个权威数据科学或统计学领域的学术资源;\n4. 使用Markdown格式的粗体和斜体标注公式中的各部分;\n5. 文章开头以一段引人入胜的引言开始,概述线性回归在预测分析中的核心价值;\n# Inputs:\n数学公式 \\(y = mx + b\\),其中y是响应变量,x是解释变量,m是斜率,b是y截距;\n"}], "type": "trace", "description": "撰写一篇关于线性回归的基本概念及其用途的科普文章", "constraints": "1. 目标受众为教育类网站的读者;\n2. 文章需包含三个部分:线性回归的基础原理、实际问题解决中的应用案例,以及线性回归在数据科学和统计分析领域的地位与重要性;\n3. 至少引用3个权威数据科学或统计学领域的学术资源;\n4. 使用Markdown格式的粗体和斜体标注公式中的各部分;\n5. 文章开头以一段引人入胜的引言开始,概述线性回归在预测分析中的核心价值;", "input": "数学公式 \\(y = mx + b\\),其中y是响应变量,x是解释变量,m是斜率,b是y截距;", "constraints_num": 5, "constraints_splits": ["1. 目标受众为教育类网站的读者;", "2. 文章需包含三个部分:线性回归的基础原理、实际问题解决中的应用案例,以及线性回归在数据科学和统计分析领域的地位与重要性;", "3. 至少引用3个权威数据科学或统计学领域的学术资源;", "4. 使用Markdown格式的粗体和斜体标注公式中的各部分;", "5. 文章开头以一段引人入胜的引言开始,概述线性回归在预测分析中的核心价值;"], "levels2": ["受众目标约束", "层次化结构约束", "引用和参考约束", "文本样式约束", "模版约束"], "category": "trace1.0"} +{"id": "563", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "评估求职者是否适合公司的某岗位,根据求职者的技能、经验、教育背景和个性特点与岗位描述的匹配度,输出一份详细的评估报告。\n1. 报告应以指定的模板格式输出;\n2. 报告必须包含求职者基本信息、岗位需求概述、匹配分析、推荐意见及依据的公司文化和岗位需求详细信息;\n3. 需要分析求职者的技能、经验、教育背景和个性特点;\n4. 报告中必须给出具体的匹配理由;\n5. 报告中的推荐意见需基于公司文化和岗位需求。\n"}], "type": "trace", "description": "评估求职者是否适合公司的某岗位,根据求职者的技能、经验、教育背景和个性特点与岗位描述的匹配度,输出一份详细的评估报告。", "constraints": "1. 报告应以指定的模板格式输出;\n2. 报告必须包含求职者基本信息、岗位需求概述、匹配分析、推荐意见及依据的公司文化和岗位需求详细信息;\n3. 需要分析求职者的技能、经验、教育背景和个性特点;\n4. 报告中必须给出具体的匹配理由;\n5. 报告中的推荐意见需基于公司文化和岗位需求。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["1. 报告应以指定的模板格式输出;", "2. 报告必须包含求职者基本信息、岗位需求概述、匹配分析、推荐意见及依据的公司文化和岗位需求详细信息;", "3. 需要分析求职者的技能、经验、教育背景和个性特点;", "4. 报告中必须给出具体的匹配理由;", "5. 报告中的推荐意见需基于公司文化和岗位需求。"], "levels2": ["模版约束", "包含约束", "包含约束", "包含约束", "主题约束"], "category": "trace1.0"} +{"id": "564", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以學術風格總結文章 \"The Philosophy of AI\",並以清晰的標題和子標題展示其主要觀點。\n1. 總結需遵循APA引用格式並包含參考文獻部分;\n2. 字數限制在500至1000字之間;\n3. 總結應包括:引言、主要觀點、分析與評論、結論四部分;\n4. 確保使用正確的學術術語和表述;\n5. 總結的內容需尊重原作,並遵守學術誠信原則;\n"}], "type": "trace", "description": "以學術風格總結文章 \"The Philosophy of AI\",並以清晰的標題和子標題展示其主要觀點。", "constraints": "1. 總結需遵循APA引用格式並包含參考文獻部分;\n2. 字數限制在500至1000字之間;\n3. 總結應包括:引言、主要觀點、分析與評論、結論四部分;\n4. 確保使用正確的學術術語和表述;\n5. 總結的內容需尊重原作,並遵守學術誠信原則;", "input": "NULL", "constraints_num": 5, "constraints_splits": ["1. 總結需遵循APA引用格式並包含參考文獻部分;", "2. 字數限制在500至1000字之間;", "3. 總結應包括:引言、主要觀點、分析與評論、結論四部分;", "4. 確保使用正確的學術術語和表述;", "5. 總結的內容需尊重原作,並遵守學術誠信原則;"], "levels2": ["引用和参考约束", "数值约束", "层次化结构约束", "语气风格约束", "价值观约束"], "category": "trace1.0"} +{"id": "565", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为销售团队创建一个 SQL 查询,用于获取所有购买了总金额超过 $500 的商品的客户列表。查询结果应包含客户名称、订单总金额,并按订单总金额降序排列。查询结果应限制在前100名客户。\n1. 角色扮演约束:你是一个数据库管理员;\n2. 输出格式约束:查询结果以 CSV 文件格式返回;\n3. 数值约束:限制查询结果为前100名客户;\n4. 情境约束:查询是为了销售团队创建,以便他们了解高价值客户;\n5. 语法结构约束:SQL 查询应包含适当的注释,清晰说明查询的各个部分;\n"}], "type": "trace", "description": "为销售团队创建一个 SQL 查询,用于获取所有购买了总金额超过 $500 的商品的客户列表。查询结果应包含客户名称、订单总金额,并按订单总金额降序排列。查询结果应限制在前100名客户。", "constraints": "1. 角色扮演约束:你是一个数据库管理员;\n2. 输出格式约束:查询结果以 CSV 文件格式返回;\n3. 数值约束:限制查询结果为前100名客户;\n4. 情境约束:查询是为了销售团队创建,以便他们了解高价值客户;\n5. 语法结构约束:SQL 查询应包含适当的注释,清晰说明查询的各个部分;", "input": "NULL", "constraints_num": 5, "constraints_splits": ["1. 角色扮演约束:你是一个数据库管理员;", "2. 输出格式约束:查询结果以 CSV 文件格式返回;", "3. 数值约束:限制查询结果为前100名客户;", "4. 情境约束:查询是为了销售团队创建,以便他们了解高价值客户;", "5. 语法结构约束:SQL 查询应包含适当的注释,清晰说明查询的各个部分;"], "levels2": ["角色扮演约束", "输出格式约束", "数值约束", "受众目标约束", "语法结构约束"], "category": "trace1.0"} +{"id": "566", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "写一个第一人称虚构故事,讲述在一场国际象棋锦标赛中赢得最终胜利的经历,比赛地点设在中国的古都西安。\n1. 描述的对手是一个来自俄罗斯的天才棋手,以其独特的开局策略和不屈不挠的精神著称;\n2. 故事中应包含至少三场关键对局的详细描述,包括双方策略的变化和如何在逆境中找到转机;\n3. 故事的长度应控制在1500至2000字之间;\n4. 使用生动的比喻和拟人手法,让读者仿佛置身于紧张的棋局之中;\n5. 故事中应有一段对话,通过你和对手的交流,展现双方的智慧和对棋艺的尊重;\n"}], "type": "trace", "description": "写一个第一人称虚构故事,讲述在一场国际象棋锦标赛中赢得最终胜利的经历,比赛地点设在中国的古都西安。", "constraints": "1. 描述的对手是一个来自俄罗斯的天才棋手,以其独特的开局策略和不屈不挠的精神著称;\n2. 故事中应包含至少三场关键对局的详细描述,包括双方策略的变化和如何在逆境中找到转机;\n3. 故事的长度应控制在1500至2000字之间;\n4. 使用生动的比喻和拟人手法,让读者仿佛置身于紧张的棋局之中;\n5. 故事中应有一段对话,通过你和对手的交流,展现双方的智慧和对棋艺的尊重;", "input": "NULL", "constraints_num": 5, "constraints_splits": ["1. 描述的对手是一个来自俄罗斯的天才棋手,以其独特的开局策略和不屈不挠的精神著称;", "2. 故事中应包含至少三场关键对局的详细描述,包括双方策略的变化和如何在逆境中找到转机;", "3. 故事的长度应控制在1500至2000字之间;", "4. 使用生动的比喻和拟人手法,让读者仿佛置身于紧张的棋局之中;", "5. 故事中应有一段对话,通过你和对手的交流,展现双方的智慧和对棋艺的尊重;"], "levels2": ["角色扮演约束", "包含约束", "数值约束", "语言特征约束", "包含约束"], "category": "trace1.0"} +{"id": "567", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为一位34岁的健身者制定一个为期12周的训练计划,其目标为增加肌肉质量和降低体脂率。\n1. 该计划应严格遵循科学依据,结合健身者的身体状况(身高175厘米,体重82公斤,具有一定的健身基础但已中断几个月);\n2. 训练频率保持每周至少4次、每次60-90分钟;\n3. 训练计划需要包含每一个动作的详细说明,以及每周的训练日程表;\n4. 计划的风格应为严谨正式,确保健身者能够清楚理解每一个动作的正确执行方法;\n5. 计划需以表格形式呈现,便于健身者跟踪进度和调整训练强度;\n"}], "type": "trace", "description": "为一位34岁的健身者制定一个为期12周的训练计划,其目标为增加肌肉质量和降低体脂率。", "constraints": "1. 该计划应严格遵循科学依据,结合健身者的身体状况(身高175厘米,体重82公斤,具有一定的健身基础但已中断几个月);\n2. 训练频率保持每周至少4次、每次60-90分钟;\n3. 训练计划需要包含每一个动作的详细说明,以及每周的训练日程表;\n4. 计划的风格应为严谨正式,确保健身者能够清楚理解每一个动作的正确执行方法;\n5. 计划需以表格形式呈现,便于健身者跟踪进度和调整训练强度;", "input": "NULL", "constraints_num": 5, "constraints_splits": ["1. 该计划应严格遵循科学依据,结合健身者的身体状况(身高175厘米,体重82公斤,具有一定的健身基础但已中断几个月);", "2. 训练频率保持每周至少4次、每次60-90分钟;", "3. 训练计划需要包含每一个动作的详细说明,以及每周的训练日程表;", "4. 计划的风格应为严谨正式,确保健身者能够清楚理解每一个动作的正确执行方法;", "5. 计划需以表格形式呈现,便于健身者跟踪进度和调整训练强度;"], "levels2": ["自然语言流程背景信息约束", "数值约束", "包含约束", "语气风格约束", "输出格式约束"], "category": "trace1.0"} +{"id": "568", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "使用Python和Scikit-learn库训练一个文本分类模型,能够对新数据进行分类到20个不同的类别中。\n1. 模型训练过程需包括数据预处理、特征提取、模型选择与训练、以及模型评估四个步骤;\n2. 在模型评估阶段,使用交叉验证方法;\n3. 报告模型的准确率、精确率、召回率和F1分数;\n4. 输出结果应为一个包含模型评估指标的JSON格式文件,以及一个可以将新数据输入模型进行分类的Python函数;\n5. 模型应至少达到85%的准确率;\n# Inputs:\n1. 一个文本分类任务;\n2. 20个新闻组数据集(包含18,846个新闻,分为20个不同的类别);\n\nquality: High\n"}], "type": "trace", "description": "使用Python和Scikit-learn库训练一个文本分类模型,能够对新数据进行分类到20个不同的类别中。", "constraints": "1. 模型训练过程需包括数据预处理、特征提取、模型选择与训练、以及模型评估四个步骤;\n2. 在模型评估阶段,使用交叉验证方法;\n3. 报告模型的准确率、精确率、召回率和F1分数;\n4. 输出结果应为一个包含模型评估指标的JSON格式文件,以及一个可以将新数据输入模型进行分类的Python函数;\n5. 模型应至少达到85%的准确率;", "input": "1. 一个文本分类任务;\n2. 20个新闻组数据集(包含18,846个新闻,分为20个不同的类别);\n\nquality: High", "constraints_num": 5, "constraints_splits": ["1. 模型训练过程需包括数据预处理、特征提取、模型选择与训练、以及模型评估四个步骤;", "2. 在模型评估阶段,使用交叉验证方法;", "3. 报告模型的准确率、精确率、召回率和F1分数;", "4. 输出结果应为一个包含模型评估指标的JSON格式文件,以及一个可以将新数据输入模型进行分类的Python函数;", "5. 模型应至少达到85%的准确率;"], "levels2": ["自然语言流程背景信息约束", "包含约束", "包含约束", "输出格式约束", "数值约束"], "category": "trace1.0"} +{"id": "569", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "详细描述如何制作一款美味的巧克力蛋糕,确保步骤清晰,容易理解,包括原材料的准备、蛋糕的烘焙过程、最后的装饰步骤以及如何制作巧克力酱作为蛋糕夹层和表面装饰的额外步骤。\n1. 使用Markdown流程;\n2. 必须包含原材料的准备、蛋糕的烘焙过程以及最后的装饰步骤;\n3. 需要提供蛋糕模具的尺寸建议和烤箱预热的具体温度与时间;\n4. 为了增加蛋糕的口感层次,描述中需加入如何制作巧克力酱作为蛋糕夹层和表面装饰的额外步骤;\n5. 确保在描述中包含所有原材料和工具的使用。\n# Inputs:\n- 高品质纯巧克力:200克\n- 细砂糖:150克\n- 鸡蛋:4个\n- 低筋面粉:200克\n- 泡打粉:1茶匙\n- 淡奶油:250毫升\n- 巧克力酱:自制或市售\n- 9寸圆形蛋糕模具\n- 预热至175摄氏度的烤箱\n"}], "type": "trace", "description": "详细描述如何制作一款美味的巧克力蛋糕,确保步骤清晰,容易理解,包括原材料的准备、蛋糕的烘焙过程、最后的装饰步骤以及如何制作巧克力酱作为蛋糕夹层和表面装饰的额外步骤。", "constraints": "1. 使用Markdown流程;\n2. 必须包含原材料的准备、蛋糕的烘焙过程以及最后的装饰步骤;\n3. 需要提供蛋糕模具的尺寸建议和烤箱预热的具体温度与时间;\n4. 为了增加蛋糕的口感层次,描述中需加入如何制作巧克力酱作为蛋糕夹层和表面装饰的额外步骤;\n5. 确保在描述中包含所有原材料和工具的使用。", "input": "- 高品质纯巧克力:200克\n- 细砂糖:150克\n- 鸡蛋:4个\n- 低筋面粉:200克\n- 泡打粉:1茶匙\n- 淡奶油:250毫升\n- 巧克力酱:自制或市售\n- 9寸圆形蛋糕模具\n- 预热至175摄氏度的烤箱", "constraints_num": 5, "constraints_splits": ["1. 使用Markdown流程;", "2. 必须包含原材料的准备、蛋糕的烘焙过程以及最后的装饰步骤;", "3. 需要提供蛋糕模具的尺寸建议和烤箱预热的具体温度与时间;", "4. 为了增加蛋糕的口感层次,描述中需加入如何制作巧克力酱作为蛋糕夹层和表面装饰的额外步骤;", "5. 确保在描述中包含所有原材料和工具的使用。"], "levels2": ["markdown流程背景信息约束", "包含约束", "数值约束", "包含约束", "包含约束"], "category": "trace1.0"} +{"id": "570", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "评估并给出张三是否适合担任“高级Java工程师”职位的反馈,根据给定简历的详细信息,列出评估的三个关键点,每个关键点下面包含至少两个支持理由,报告需使用标题、子标题进行层次化结构组织,对于关键信息使用斜体进行标注,同时在报告结尾处给出是否推荐张三的结论。\n1. 评估时需考虑该职位的行业标准要求和公司对于“高级Java工程师”职位的具体期望;\n2. 报告需使用Markdown格式;\n3. 报告需使用标题、子标题进行层次化结构组织;\n4. 对于关键信息使用斜体进行标注;\n5. 结论需明确是否推荐张三进行下一轮面试。\n# Inputs:\n个人信息概览:\n- 姓名:张三\n- 年龄:28\n- 性别:男\n- 教育背景:本科毕业\n- 专业:计算机科学\n- 技能:精通Java,有Python经验,熟悉SQL数据库,良好的沟通能力\n- 工作经验:2年Java工程师\n- 期望职位:高级Java工程师\n"}], "type": "trace", "description": "评估并给出张三是否适合担任“高级Java工程师”职位的反馈,根据给定简历的详细信息,列出评估的三个关键点,每个关键点下面包含至少两个支持理由,报告需使用标题、子标题进行层次化结构组织,对于关键信息使用斜体进行标注,同时在报告结尾处给出是否推荐张三的结论。", "constraints": "1. 评估时需考虑该职位的行业标准要求和公司对于“高级Java工程师”职位的具体期望;\n2. 报告需使用Markdown格式;\n3. 报告需使用标题、子标题进行层次化结构组织;\n4. 对于关键信息使用斜体进行标注;\n5. 结论需明确是否推荐张三进行下一轮面试。", "input": "个人信息概览:\n- 姓名:张三\n- 年龄:28\n- 性别:男\n- 教育背景:本科毕业\n- 专业:计算机科学\n- 技能:精通Java,有Python经验,熟悉SQL数据库,良好的沟通能力\n- 工作经验:2年Java工程师\n- 期望职位:高级Java工程师", "constraints_num": 5, "constraints_splits": ["1. 评估时需考虑该职位的行业标准要求和公司对于“高级Java工程师”职位的具体期望;", "2. 报告需使用Markdown格式;", "3. 报告需使用标题、子标题进行层次化结构组织;", "4. 对于关键信息使用斜体进行标注;", "5. 结论需明确是否推荐张三进行下一轮面试。"], "levels2": ["受众目标约束", "输出格式约束", "层次化结构约束", "文本样式约束", "包含约束"], "category": "trace1.0"} +{"id": "571", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "根据所提供的症状给出一个可能的医学诊断。\n1. 明确患者基本信息(如年龄、性别)但不涉及个人隐私或敏感信息;\n2. 诊断中将不会提供任何可能引起恐慌或不适当自我治疗的诊断;\n3. 采用专业、客观的语气;\n4. 确保在诊断中至少包括一种常见疾病的可能性;\n5. 诊断中将排除任何罕见疾病或未经证实的病症。\n# Inputs:\n患者症状:头痛,恶心,眼睛发红,光线敏感。\n"}], "type": "trace", "description": "根据所提供的症状给出一个可能的医学诊断。", "constraints": "1. 明确患者基本信息(如年龄、性别)但不涉及个人隐私或敏感信息;\n2. 诊断中将不会提供任何可能引起恐慌或不适当自我治疗的诊断;\n3. 采用专业、客观的语气;\n4. 确保在诊断中至少包括一种常见疾病的可能性;\n5. 诊断中将排除任何罕见疾病或未经证实的病症。", "input": "患者症状:头痛,恶心,眼睛发红,光线敏感。", "constraints_num": 5, "constraints_splits": ["1. 明确患者基本信息(如年龄、性别)但不涉及个人隐私或敏感信息;", "2. 诊断中将不会提供任何可能引起恐慌或不适当自我治疗的诊断;", "3. 采用专业、客观的语气;", "4. 确保在诊断中至少包括一种常见疾病的可能性;", "5. 诊断中将排除任何罕见疾病或未经证实的病症。"], "levels2": ["隐私约束", "价值观约束", "语气风格约束", "包含约束", "排除约束"], "category": "trace1.0"} +{"id": "572", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "創作一個專業級別的新食譜,必需包含藜麥和鱷梨兩種食材。\n1. 不得使用任何動物性油脂;\n2. 食譜描述需控制在300至400字之間;\n3. 需使用正式專業的廚藝術語;\n4. 食譜以HTML格式呈現;\n5. 在食材列表和烹調步驟中對藜麥和鱷梨進行強調;\n"}], "type": "trace", "description": "創作一個專業級別的新食譜,必需包含藜麥和鱷梨兩種食材。", "constraints": "1. 不得使用任何動物性油脂;\n2. 食譜描述需控制在300至400字之間;\n3. 需使用正式專業的廚藝術語;\n4. 食譜以HTML格式呈現;\n5. 在食材列表和烹調步驟中對藜麥和鱷梨進行強調;", "input": "NULL", "constraints_num": 5, "constraints_splits": ["1. 不得使用任何動物性油脂;", "2. 食譜描述需控制在300至400字之間;", "3. 需使用正式專業的廚藝術語;", "4. 食譜以HTML格式呈現;", "5. 在食材列表和烹調步驟中對藜麥和鱷梨進行強調;"], "levels2": ["排除约束", "数值约束", "语气风格约束", "输出格式约束", "包含约束"], "category": "trace1.0"} +{"id": "573", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "检查给定的IP地址是否在本地网络中\n1. 使用ping命令检测IP地址的连通性,并记录下响应时间;\n2. 通过ARP命令解析IP地址到MAC地址的映射,输出相应的MAC地址;\n3. 所有命令在命令行界面中执行,并返回详细的执行结果,包括命令执行状态、响应时间、MAC地址等;\n4. 整个检测过程应该在30秒内完成;\n5. 输出结果中,明确指出IP地址是否在本地网络中,并提供检测依据;\n# Inputs:\nIP地址:192.168.1.100\n"}], "type": "trace", "description": "检查给定的IP地址是否在本地网络中", "constraints": "1. 使用ping命令检测IP地址的连通性,并记录下响应时间;\n2. 通过ARP命令解析IP地址到MAC地址的映射,输出相应的MAC地址;\n3. 所有命令在命令行界面中执行,并返回详细的执行结果,包括命令执行状态、响应时间、MAC地址等;\n4. 整个检测过程应该在30秒内完成;\n5. 输出结果中,明确指出IP地址是否在本地网络中,并提供检测依据;", "input": "IP地址:192.168.1.100", "constraints_num": 5, "constraints_splits": ["1. 使用ping命令检测IP地址的连通性,并记录下响应时间;", "2. 通过ARP命令解析IP地址到MAC地址的映射,输出相应的MAC地址;", "3. 所有命令在命令行界面中执行,并返回详细的执行结果,包括命令执行状态、响应时间、MAC地址等;", "4. 整个检测过程应该在30秒内完成;", "5. 输出结果中,明确指出IP地址是否在本地网络中,并提供检测依据;"], "levels2": ["自然语言流程背景信息约束", "输出格式约束", "输出格式约束", "数值约束", "包含约束"], "category": "trace1.0"} +{"id": "574", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "编辑给定的演讲稿\n1. 删除短语“很高兴能”和“在这里”;\n2. 编辑文本以增强流畅性和逻辑性,但不得改变讲话的原意;\n3. 编辑后的演讲稿应保持在150至200字之间;\n4. 确保每段的开头使用了主题句;\n5. 在段落内部有适当的过渡语句。\n# Inputs:\n尊敬的各位来宾,我与您们见面。我将从能源转型的视角,探讨全球化对能源产业的影响。首先,我将回顾过去50年的情况,然后深入分析当前的状况,最后展望未来的发展。\n"}], "type": "trace", "description": "编辑给定的演讲稿", "constraints": "1. 删除短语“很高兴能”和“在这里”;\n2. 编辑文本以增强流畅性和逻辑性,但不得改变讲话的原意;\n3. 编辑后的演讲稿应保持在150至200字之间;\n4. 确保每段的开头使用了主题句;\n5. 在段落内部有适当的过渡语句。", "input": "尊敬的各位来宾,我与您们见面。我将从能源转型的视角,探讨全球化对能源产业的影响。首先,我将回顾过去50年的情况,然后深入分析当前的状况,最后展望未来的发展。", "constraints_num": 5, "constraints_splits": ["1. 删除短语“很高兴能”和“在这里”;", "2. 编辑文本以增强流畅性和逻辑性,但不得改变讲话的原意;", "3. 编辑后的演讲稿应保持在150至200字之间;", "4. 确保每段的开头使用了主题句;", "5. 在段落内部有适当的过渡语句。"], "levels2": ["排除约束", "语气风格约束", "数值约束", "语法结构约束", "语法结构约束"], "category": "trace1.0"} +{"id": "575", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇针对中年职场人群的疲劳问题博客文章,文章内容需包括疲劳症状描述、原因分析、短期行动计划和预防措施。\n1. 文章必须以专业健康顾问的身份撰写;\n2. 文章需采用Markdown格式,使用标题和子标题进行层次化结构组织,确保结构清晰、易于阅读;\n3. 包含至少3种疲劳的具体表现形式、5个主要原因和5个改善建议;\n4. 文章长度应在800至1000字之间,确保信息的丰富性和实用性;\n5. 行动计划部分需列出5个具体行动步骤,每个步骤附有执行建议和预期效果,帮助读者有效改善疲劳状况。\n"}], "type": "trace", "description": "撰写一篇针对中年职场人群的疲劳问题博客文章,文章内容需包括疲劳症状描述、原因分析、短期行动计划和预防措施。", "constraints": "1. 文章必须以专业健康顾问的身份撰写;\n2. 文章需采用Markdown格式,使用标题和子标题进行层次化结构组织,确保结构清晰、易于阅读;\n3. 包含至少3种疲劳的具体表现形式、5个主要原因和5个改善建议;\n4. 文章长度应在800至1000字之间,确保信息的丰富性和实用性;\n5. 行动计划部分需列出5个具体行动步骤,每个步骤附有执行建议和预期效果,帮助读者有效改善疲劳状况。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["1. 文章必须以专业健康顾问的身份撰写;", "2. 文章需采用Markdown格式,使用标题和子标题进行层次化结构组织,确保结构清晰、易于阅读;", "3. 包含至少3种疲劳的具体表现形式、5个主要原因和5个改善建议;", "4. 文章长度应在800至1000字之间,确保信息的丰富性和实用性;", "5. 行动计划部分需列出5个具体行动步骤,每个步骤附有执行建议和预期效果,帮助读者有效改善疲劳状况。"], "levels2": ["角色扮演约束", "层次化结构约束", "数值约束", "数值约束", "编号和列表约束"], "category": "trace1.0"} +{"id": "576", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "根据情境写出一篇简短的故事\n1. 故事发生的背景是月光皎洁的夜晚,宁静而神秘的公园;\n2. 故事采用第三人称叙述,融入文艺的语气风格;\n3. 描述主人公散步时的内心感受,以及与孩子们互动时的温馨场景;\n4. 故事中需包含对公园环境的细腻描绘,以及主人公如何帮助迷路小男孩的详细过程;\n5. 故事长度应控制在500字以内,确保情节紧凑,主题鲜明;\n"}], "type": "trace", "description": "根据情境写出一篇简短的故事", "constraints": "1. 故事发生的背景是月光皎洁的夜晚,宁静而神秘的公园;\n2. 故事采用第三人称叙述,融入文艺的语气风格;\n3. 描述主人公散步时的内心感受,以及与孩子们互动时的温馨场景;\n4. 故事中需包含对公园环境的细腻描绘,以及主人公如何帮助迷路小男孩的详细过程;\n5. 故事长度应控制在500字以内,确保情节紧凑,主题鲜明;", "input": "NULL", "constraints_num": 5, "constraints_splits": ["1. 故事发生的背景是月光皎洁的夜晚,宁静而神秘的公园;", "2. 故事采用第三人称叙述,融入文艺的语气风格;", "3. 描述主人公散步时的内心感受,以及与孩子们互动时的温馨场景;", "4. 故事中需包含对公园环境的细腻描绘,以及主人公如何帮助迷路小男孩的详细过程;", "5. 故事长度应控制在500字以内,确保情节紧凑,主题鲜明;"], "levels2": ["自然语言流程背景信息约束", "语气风格约束", "包含约束", "包含约束", "数值约束"], "category": "trace1.0"} +{"id": "577", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "帮助准备面试的求职者,提供针对技术岗位(例如软件工程师)可能会问到的专业问题以及如何回答这些问题的建议。\n1. 建议应包括对问题的回答模板和可能的陷阱;\n2. 回答时采用专业且鼓励的语气;\n3. 以列表的形式输出问题和建议,便于求职者快速查阅和准备;\n4. 对每个问题的回答建议都应包含至少一个实际的例子或场景,以增强求职者的理解与应用能力;\n5. 回答中不得包含任何个人隐私信息、版权受限的内容或违反相关法律和政策的信息;\n"}], "type": "trace", "description": "帮助准备面试的求职者,提供针对技术岗位(例如软件工程师)可能会问到的专业问题以及如何回答这些问题的建议。", "constraints": "1. 建议应包括对问题的回答模板和可能的陷阱;\n2. 回答时采用专业且鼓励的语气;\n3. 以列表的形式输出问题和建议,便于求职者快速查阅和准备;\n4. 对每个问题的回答建议都应包含至少一个实际的例子或场景,以增强求职者的理解与应用能力;\n5. 回答中不得包含任何个人隐私信息、版权受限的内容或违反相关法律和政策的信息;", "input": "NULL", "constraints_num": 5, "constraints_splits": ["1. 建议应包括对问题的回答模板和可能的陷阱;", "2. 回答时采用专业且鼓励的语气;", "3. 以列表的形式输出问题和建议,便于求职者快速查阅和准备;", "4. 对每个问题的回答建议都应包含至少一个实际的例子或场景,以增强求职者的理解与应用能力;", "5. 回答中不得包含任何个人隐私信息、版权受限的内容或违反相关法律和政策的信息;"], "levels2": ["模版约束", "语气风格约束", "编号和列表约束", "包含约束", "隐私约束"], "category": "trace1.0"} +{"id": "578", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "使用Python的datetime模块,以JSON格式输出两个时间点之间的时间间隔,包括年、月、日、小时和分钟。\n1. 时间点1:2020年7月15日下午1点30分;\n2. 时间点2:2021年8月20日上午10点15分;\n3. 输出应包括但不限于以下字段:\"years\", \"months\", \"days\", \"hours\", \"minutes\";\n4. 所有时间单位应以整数形式给出;\n5. 代码中应包含必要的注释,以解释每一步的计算逻辑;\n"}], "type": "trace", "description": "使用Python的datetime模块,以JSON格式输出两个时间点之间的时间间隔,包括年、月、日、小时和分钟。", "constraints": "1. 时间点1:2020年7月15日下午1点30分;\n2. 时间点2:2021年8月20日上午10点15分;\n3. 输出应包括但不限于以下字段:\"years\", \"months\", \"days\", \"hours\", \"minutes\";\n4. 所有时间单位应以整数形式给出;\n5. 代码中应包含必要的注释,以解释每一步的计算逻辑;", "input": "NULL", "constraints_num": 5, "constraints_splits": ["1. 时间点1:2020年7月15日下午1点30分;", "2. 时间点2:2021年8月20日上午10点15分;", "3. 输出应包括但不限于以下字段:\"years\", \"months\", \"days\", \"hours\", \"minutes\";", "4. 所有时间单位应以整数形式给出;", "5. 代码中应包含必要的注释,以解释每一步的计算逻辑;"], "levels2": ["数值约束", "数值约束", "输出格式约束", "数值约束", "文本样式约束"], "category": "trace1.0"} +{"id": "579", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以一位专业发型师的视角,写一篇面向初学者的指南,内容需包括学习如何给自己做头发的五个核心步骤,每个步骤至少包含两个实用技巧。文章应采用鼓励和指导的语气,旨在帮助读者建立自信。\n1. 角色扮演约束:你是一位经验丰富的发型师,你的任务是指导新手学会如何给自己做头发;\n2. 包含约束:文章中必须包含至少五个核心步骤,每个步骤至少包含两个实用技巧;\n3. 数值约束:整篇文章的长度控制在1000字以内;\n4. 语气风格约束:采用鼓励和指导的语气;\n5. 输出格式约束:输出格式应为Markdown列表;\n"}], "type": "trace", "description": "以一位专业发型师的视角,写一篇面向初学者的指南,内容需包括学习如何给自己做头发的五个核心步骤,每个步骤至少包含两个实用技巧。文章应采用鼓励和指导的语气,旨在帮助读者建立自信。", "constraints": "1. 角色扮演约束:你是一位经验丰富的发型师,你的任务是指导新手学会如何给自己做头发;\n2. 包含约束:文章中必须包含至少五个核心步骤,每个步骤至少包含两个实用技巧;\n3. 数值约束:整篇文章的长度控制在1000字以内;\n4. 语气风格约束:采用鼓励和指导的语气;\n5. 输出格式约束:输出格式应为Markdown列表;", "input": "NULL", "constraints_num": 5, "constraints_splits": ["1. 角色扮演约束:你是一位经验丰富的发型师,你的任务是指导新手学会如何给自己做头发;", "2. 包含约束:文章中必须包含至少五个核心步骤,每个步骤至少包含两个实用技巧;", "3. 数值约束:整篇文章的长度控制在1000字以内;", "4. 语气风格约束:采用鼓励和指导的语气;", "5. 输出格式约束:输出格式应为Markdown列表;"], "levels2": ["角色扮演约束", "包含约束", "数值约束", "语气风格约束", "输出格式约束"], "category": "trace1.0"} +{"id": "580", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "对论点“学生应该每天至少锻炼30分钟。”进行辩论,要求内容中包含至少三个支持该论点的理由和至少一个反对的理由,并对反对的理由进行反驳。\n1. 角色扮演约束:扮演教育专家的身份;\n2. 语气风格约束:使用严谨正式的语气和风格;\n3. 包含约束:包含至少三个支持理由和一个反对理由及其反驳;\n4. 数值约束:辩论稿应超过500字;\n5. 所有理由都需要有数据或研究支持;\n"}], "type": "trace", "description": "对论点“学生应该每天至少锻炼30分钟。”进行辩论,要求内容中包含至少三个支持该论点的理由和至少一个反对的理由,并对反对的理由进行反驳。", "constraints": "1. 角色扮演约束:扮演教育专家的身份;\n2. 语气风格约束:使用严谨正式的语气和风格;\n3. 包含约束:包含至少三个支持理由和一个反对理由及其反驳;\n4. 数值约束:辩论稿应超过500字;\n5. 所有理由都需要有数据或研究支持;", "input": "NULL", "constraints_num": 5, "constraints_splits": ["1. 角色扮演约束:扮演教育专家的身份;", "2. 语气风格约束:使用严谨正式的语气和风格;", "3. 包含约束:包含至少三个支持理由和一个反对理由及其反驳;", "4. 数值约束:辩论稿应超过500字;", "5. 所有理由都需要有数据或研究支持;"], "levels2": ["角色扮演约束", "语气风格约束", "包含约束", "数值约束", "引用和参考约束"], "category": "trace1.0"} +{"id": "581", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一份专业的简历\n1. 简历采用标准格式,包括标题、个人信息、工作/实习经历、技能和教育背景;\n2. 个人信息中,姓名“李明”、电话“188-8888-8888”和邮箱“lm@xx.com”以加粗字体显示;\n3. 工作/实习经历部分,详细描述在ABC公司作为市场部实习生(2018年7月至2019年2月)和DEF公司市场部助理(2019年3月至今)的工作职责,每项职责描述不超过100字;\n4. 技能部分,明确列出“流利的英语口语和写作能力”、“熟练使用Excel和PowerPoint”,并额外列出至少2项其他相关技能;\n5. 整个简历的总长度应控制在1页内(约400至600字);\n"}], "type": "trace", "description": "创建一份专业的简历", "constraints": "1. 简历采用标准格式,包括标题、个人信息、工作/实习经历、技能和教育背景;\n2. 个人信息中,姓名“李明”、电话“188-8888-8888”和邮箱“lm@xx.com”以加粗字体显示;\n3. 工作/实习经历部分,详细描述在ABC公司作为市场部实习生(2018年7月至2019年2月)和DEF公司市场部助理(2019年3月至今)的工作职责,每项职责描述不超过100字;\n4. 技能部分,明确列出“流利的英语口语和写作能力”、“熟练使用Excel和PowerPoint”,并额外列出至少2项其他相关技能;\n5. 整个简历的总长度应控制在1页内(约400至600字);", "input": "NULL", "constraints_num": 5, "constraints_splits": ["1. 简历采用标准格式,包括标题、个人信息、工作/实习经历、技能和教育背景;", "2. 个人信息中,姓名“李明”、电话“188-8888-8888”和邮箱“lm@xx.com”以加粗字体显示;", "3. 工作/实习经历部分,详细描述在ABC公司作为市场部实习生(2018年7月至2019年2月)和DEF公司市场部助理(2019年3月至今)的工作职责,每项职责描述不超过100字;", "4. 技能部分,明确列出“流利的英语口语和写作能力”、“熟练使用Excel和PowerPoint”,并额外列出至少2项其他相关技能;", "5. 整个简历的总长度应控制在1页内(约400至600字);"], "levels2": ["模版约束", "文本样式约束", "数值约束", "编号和列表约束", "数值约束"], "category": "trace1.0"} +{"id": "582", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "制定一个健康的饮食计划给客户,围绕均衡营养、低糖低脂的主题,包含足够的蔬菜、水果、全谷物和蛋白质。\n1. 饮食计划需排除高热量、高脂肪的食物;\n2. 计划应遵循每日三餐加两餐小吃的原则,每餐热量分配均匀;\n3. 饮食计划以表格形式呈现,包括早餐、午餐、晚餐和两次小吃的建议菜单,每餐中应列出具体的食材和份量;\n4. 食材的选择需符合健康饮食原则;\n5. 饮食计划的风格需简洁明了,易于理解,以便客户能够轻松地遵守计划。\n# Inputs:\n客户信息:男性,25岁,身高175厘米,体重70公斤,办公室工作。\n"}], "type": "trace", "description": "制定一个健康的饮食计划给客户,围绕均衡营养、低糖低脂的主题,包含足够的蔬菜、水果、全谷物和蛋白质。", "constraints": "1. 饮食计划需排除高热量、高脂肪的食物;\n2. 计划应遵循每日三餐加两餐小吃的原则,每餐热量分配均匀;\n3. 饮食计划以表格形式呈现,包括早餐、午餐、晚餐和两次小吃的建议菜单,每餐中应列出具体的食材和份量;\n4. 食材的选择需符合健康饮食原则;\n5. 饮食计划的风格需简洁明了,易于理解,以便客户能够轻松地遵守计划。", "input": "客户信息:男性,25岁,身高175厘米,体重70公斤,办公室工作。", "constraints_num": 5, "constraints_splits": ["1. 饮食计划需排除高热量、高脂肪的食物;", "2. 计划应遵循每日三餐加两餐小吃的原则,每餐热量分配均匀;", "3. 饮食计划以表格形式呈现,包括早餐、午餐、晚餐和两次小吃的建议菜单,每餐中应列出具体的食材和份量;", "4. 食材的选择需符合健康饮食原则;", "5. 饮食计划的风格需简洁明了,易于理解,以便客户能够轻松地遵守计划。"], "levels2": ["排除约束", "数值约束", "输出格式约束", "价值观约束", "语气风格约束"], "category": "trace1.0"} +{"id": "583", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为公司研发一份简报,记录业内最新技术趋势,并包含具体的实施策略,以确保公司能够跟上行业潮流。\n1. 从行业分析师的角度出发,关注科技行业的最新动态,特别是人工智能与机器学习领域;\n2. 简报中必须包括公司正在从事的行业背景介绍、所涉及的主要技术概述,以及最新的技术趋势的基本信息,如趋势名称、关键技术和影响预测;\n3. 简报中至少引用5篇近期发表的行业研究报告,确保信息的准确性和时效性;\n4. 简报需采用PPT格式,每一页都要有标题,且包含至少一张图表或图像,用以直观展示数据和趋势;\n5. 简报需在一周内完成,且总页数不少于20页,每页不少于300字;\n"}], "type": "trace", "description": "为公司研发一份简报,记录业内最新技术趋势,并包含具体的实施策略,以确保公司能够跟上行业潮流。", "constraints": "1. 从行业分析师的角度出发,关注科技行业的最新动态,特别是人工智能与机器学习领域;\n2. 简报中必须包括公司正在从事的行业背景介绍、所涉及的主要技术概述,以及最新的技术趋势的基本信息,如趋势名称、关键技术和影响预测;\n3. 简报中至少引用5篇近期发表的行业研究报告,确保信息的准确性和时效性;\n4. 简报需采用PPT格式,每一页都要有标题,且包含至少一张图表或图像,用以直观展示数据和趋势;\n5. 简报需在一周内完成,且总页数不少于20页,每页不少于300字;", "input": "NULL", "constraints_num": 5, "constraints_splits": ["1. 从行业分析师的角度出发,关注科技行业的最新动态,特别是人工智能与机器学习领域;", "2. 简报中必须包括公司正在从事的行业背景介绍、所涉及的主要技术概述,以及最新的技术趋势的基本信息,如趋势名称、关键技术和影响预测;", "3. 简报中至少引用5篇近期发表的行业研究报告,确保信息的准确性和时效性;", "4. 简报需采用PPT格式,每一页都要有标题,且包含至少一张图表或图像,用以直观展示数据和趋势;", "5. 简报需在一周内完成,且总页数不少于20页,每页不少于300字;"], "levels2": ["角色扮演约束", "包含约束", "引用和参考约束", "输出格式约束", "数值约束"], "category": "trace1.0"} +{"id": "584", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "提供一个详细的步骤指导,教如何从零开始制作一款美味的巧克力蛋糕。\n1. 步骤需清晰,适合初学者;\n2. 内容应包含所有必需的材料清单、工具、以及分步骤的制作流程;\n3. 每个步骤的描述应控制在100字以内;\n4. 每一步骤都配有相应的操作图片,以便于对照学习;\n5. 特别标注容易出错或需要注意的细节,确保能够成功制作出一款外观和口感俱佳的巧克力蛋糕。\n"}], "type": "trace", "description": "提供一个详细的步骤指导,教如何从零开始制作一款美味的巧克力蛋糕。", "constraints": "1. 步骤需清晰,适合初学者;\n2. 内容应包含所有必需的材料清单、工具、以及分步骤的制作流程;\n3. 每个步骤的描述应控制在100字以内;\n4. 每一步骤都配有相应的操作图片,以便于对照学习;\n5. 特别标注容易出错或需要注意的细节,确保能够成功制作出一款外观和口感俱佳的巧克力蛋糕。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["1. 步骤需清晰,适合初学者;", "2. 内容应包含所有必需的材料清单、工具、以及分步骤的制作流程;", "3. 每个步骤的描述应控制在100字以内;", "4. 每一步骤都配有相应的操作图片,以便于对照学习;", "5. 特别标注容易出错或需要注意的细节,确保能够成功制作出一款外观和口感俱佳的巧克力蛋糕。"], "levels2": ["受众目标约束", "包含约束", "数值约束", "输出格式约束", "包含约束"], "category": "trace1.0"} +{"id": "585", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "手动编辑给定的段落\n6\n2. 将内容重构为一个复合句以提高语法结构的复杂度;\n3. 字数应在50至70字之间;\n4. 内容不能包含\"游泳池\"一词的重复使用;\n5. 编辑后的段落应使用斜体以突出修改结果;\n# Inputs:\n原始段落:他喜欢在游泳池里游泳。游泳使他感到愉悦。他喜欢在游泳池里游泳的感觉。\n"}], "type": "trace", "description": "手动编辑给定的段落", "constraints": "6\n2. 将内容重构为一个复合句以提高语法结构的复杂度;\n3. 字数应在50至70字之间;\n4. 内容不能包含\"游泳池\"一词的重复使用;\n5. 编辑后的段落应使用斜体以突出修改结果;", "input": "原始段落:他喜欢在游泳池里游泳。游泳使他感到愉悦。他喜欢在游泳池里游泳的感觉。", "constraints_num": 5, "constraints_splits": ["6", "2. 将内容重构为一个复合句以提高语法结构的复杂度;", "3. 字数应在50至70字之间;", "4. 内容不能包含\"游泳池\"一词的重复使用;", "5. 编辑后的段落应使用斜体以突出修改结果;"], "levels2": ["排除约束", "语法结构约束", "数值约束", "排除约束", "文本样式约束"], "category": "trace1.0"} +{"id": "586", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "设计一份Tasty Treats公司的营销海报。\n1. 海报设计需符合Tasty Treats公司的品牌形象与设计要求;\n2. 海报应采用醒目的视觉元素和高对比度色彩,使用创意字体;\n3. 口号:“品尝时尚、享受美味”;\n4. 内容突出:“全新美食系列,天然食材,全面减价优惠”;\n5. 包含优惠细节,如折扣比例、优惠期限等;\n6. 海报风格为现代时尚;\n7. 信息一目了然,底部包含公司联系方式与地址;\n8. 符合高视觉效果要求,吸引目标受众,提升品牌知名度;\n9. 遵循A4纸尺寸规格210mm×297mm;\n10. 保证打印质量和视觉效果;\n11. 考虑可读性和视觉层次,使用大标题和清晰字体;\n12. 利用图片和图标增强视觉吸引力;\n13. 海报底部包含指向公司官网或优惠活动详情页面的二维码。\n"}], "type": "trace", "description": "设计一份Tasty Treats公司的营销海报。", "constraints": "1. 海报设计需符合Tasty Treats公司的品牌形象与设计要求;\n2. 海报应采用醒目的视觉元素和高对比度色彩,使用创意字体;\n3. 口号:“品尝时尚、享受美味”;\n4. 内容突出:“全新美食系列,天然食材,全面减价优惠”;\n5. 包含优惠细节,如折扣比例、优惠期限等;\n6. 海报风格为现代时尚;\n7. 信息一目了然,底部包含公司联系方式与地址;\n8. 符合高视觉效果要求,吸引目标受众,提升品牌知名度;\n9. 遵循A4纸尺寸规格210mm×297mm;\n10. 保证打印质量和视觉效果;\n11. 考虑可读性和视觉层次,使用大标题和清晰字体;\n12. 利用图片和图标增强视觉吸引力;\n13. 海报底部包含指向公司官网或优惠活动详情页面的二维码。", "input": "NULL", "constraints_num": 13, "constraints_splits": ["1. 海报设计需符合Tasty Treats公司的品牌形象与设计要求;", "2. 海报应采用醒目的视觉元素和高对比度色彩,使用创意字体;", "3. 口号:“品尝时尚、享受美味”;", "4. 内容突出:“全新美食系列,天然食材,全面减价优惠”;", "5. 包含优惠细节,如折扣比例、优惠期限等;", "6. 海报风格为现代时尚;", "7. 信息一目了然,底部包含公司联系方式与地址;", "8. 符合高视觉效果要求,吸引目标受众,提升品牌知名度;", "9. 遵循A4纸尺寸规格210mm×297mm;", "10. 保证打印质量和视觉效果;", "11. 考虑可读性和视觉层次,使用大标题和清晰字体;", "12. 利用图片和图标增强视觉吸引力;", "13. 海报底部包含指向公司官网或优惠活动详情页面的二维码。"], "levels2": ["包含约束", "语言特征约束", "包含约束", "主题约束", "包含约束", "语气风格约束", "包含约束", "受众目标约束", "输出格式约束", "文本样式约束", "文本样式约束", "文本样式约束", "文本样式约束"], "category": "trace1.0"} +{"id": "587", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "设计一个数字猜谜游戏\n游戏的受众目标为10岁以上的孩子和家庭成员;\n游戏的数字范围严格限定在1到100之间;\n每次猜测后,系统会以富有鼓励性和积极的语气提示用户“您的猜测偏高了”或“您的猜测偏低了”;\n游戏应在用户猜对数字时,以一个表格形式展示所有猜测的记录,包括每轮猜测的数字、猜测的次数以及是否正确;\n正例约束:游戏的提示示例:“很好,你的猜测非常接近了!但是稍微偏高了一些,请继续尝试!”;\n数值约束:游戏最多允许10次猜测机会;\n风格约束:游戏应使用轻松愉快的语气,鼓励玩家参与并享受游戏过程,避免任何可能引起挫败感的措辞;\n格式约束:游戏结束后,应以一个清晰的表格形式显示所有猜测记录,包括每轮猜测的数字、猜测的次数以及是否正确。\n"}], "type": "trace", "description": "设计一个数字猜谜游戏", "constraints": "游戏的受众目标为10岁以上的孩子和家庭成员;\n游戏的数字范围严格限定在1到100之间;\n每次猜测后,系统会以富有鼓励性和积极的语气提示用户“您的猜测偏高了”或“您的猜测偏低了”;\n游戏应在用户猜对数字时,以一个表格形式展示所有猜测的记录,包括每轮猜测的数字、猜测的次数以及是否正确;\n正例约束:游戏的提示示例:“很好,你的猜测非常接近了!但是稍微偏高了一些,请继续尝试!”;\n数值约束:游戏最多允许10次猜测机会;\n风格约束:游戏应使用轻松愉快的语气,鼓励玩家参与并享受游戏过程,避免任何可能引起挫败感的措辞;\n格式约束:游戏结束后,应以一个清晰的表格形式显示所有猜测记录,包括每轮猜测的数字、猜测的次数以及是否正确。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["游戏的受众目标为10岁以上的孩子和家庭成员;", "游戏的数字范围严格限定在1到100之间;", "每次猜测后,系统会以富有鼓励性和积极的语气提示用户“您的猜测偏高了”或“您的猜测偏低了”;", "游戏应在用户猜对数字时,以一个表格形式展示所有猜测的记录,包括每轮猜测的数字、猜测的次数以及是否正确;", "正例约束:游戏的提示示例:“很好,你的猜测非常接近了!但是稍微偏高了一些,请继续尝试!”;", "数值约束:游戏最多允许10次猜测机会;", "风格约束:游戏应使用轻松愉快的语气,鼓励玩家参与并享受游戏过程,避免任何可能引起挫败感的措辞;", "格式约束:游戏结束后,应以一个清晰的表格形式显示所有猜测记录,包括每轮猜测的数字、猜测的次数以及是否正确。"], "levels2": ["受众目标约束", "数值约束", "情感情绪约束", "输出格式约束", "正例约束", "数值约束", "语气风格约束", "输出格式约束"], "category": "trace1.0"} +{"id": "588", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "作为一位来威海旅游的游客,遇到租用共享电动汽车无法正常行驶的问题,希望得到威海发布的官方回应以及公安部门的介入。\n角色扮演约束:作为一名游客;\n希望得到威海发布的官方回应以及公安部门的介入;\n租用的车辆均无法正常行驶,车辆检测系统提示“缺水”;\n对该公司在得知车辆存在“缺水”问题后继续将车辆租给其他用户的行为表示质疑和不满;\n电话总是占线,未能得到及时处理;\n社会治理综合服务中心及其他相关部门能够专业介入并妥善处理;\n希望得到正式、严谨的态度的回应;\n请以正式公文的形式反馈;\n向报告人反馈处理结果。\n# Inputs:\n通过正规手续先后租用了宣瑞科技名下的四辆共享电动汽车,然而,这些车辆均无法正常行驶。车辆检测系统提示“缺水”,这显然指的是冷却系统中的防冻液或蒸馏水不足,这将直接影响到车辆的正常运行和安全。在向工作人员报修时,电话总是占线,未能得到及时处理。\n"}], "type": "trace", "description": "作为一位来威海旅游的游客,遇到租用共享电动汽车无法正常行驶的问题,希望得到威海发布的官方回应以及公安部门的介入。", "constraints": "角色扮演约束:作为一名游客;\n希望得到威海发布的官方回应以及公安部门的介入;\n租用的车辆均无法正常行驶,车辆检测系统提示“缺水”;\n对该公司在得知车辆存在“缺水”问题后继续将车辆租给其他用户的行为表示质疑和不满;\n电话总是占线,未能得到及时处理;\n社会治理综合服务中心及其他相关部门能够专业介入并妥善处理;\n希望得到正式、严谨的态度的回应;\n请以正式公文的形式反馈;\n向报告人反馈处理结果。", "input": "通过正规手续先后租用了宣瑞科技名下的四辆共享电动汽车,然而,这些车辆均无法正常行驶。车辆检测系统提示“缺水”,这显然指的是冷却系统中的防冻液或蒸馏水不足,这将直接影响到车辆的正常运行和安全。在向工作人员报修时,电话总是占线,未能得到及时处理。", "constraints_num": 9, "constraints_splits": ["角色扮演约束:作为一名游客;", "希望得到威海发布的官方回应以及公安部门的介入;", "租用的车辆均无法正常行驶,车辆检测系统提示“缺水”;", "对该公司在得知车辆存在“缺水”问题后继续将车辆租给其他用户的行为表示质疑和不满;", "电话总是占线,未能得到及时处理;", "社会治理综合服务中心及其他相关部门能够专业介入并妥善处理;", "希望得到正式、严谨的态度的回应;", "请以正式公文的形式反馈;", "向报告人反馈处理结果。"], "levels2": ["角色扮演约束", "包含约束", "文本背景信息约束", "情感情绪约束", "排除约束", "包含约束", "语气风格约束", "文本样式约束", "受众目标约束"], "category": "trace1.0"} +{"id": "589", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇主题为“夏天的小幸运”的微小说\n故事字数大约600字左右;\n故事应融入夏天的元素,如炽热的阳光、清凉的泳池、冰淇淋的甜蜜等,营造夏日氛围;\n故事采用第三人称叙述,保持轻松愉悦的文艺风格;\n故事背景设定在一个小镇的夏日里;\n主要角色包括一个梦想成为作家的少女和她偶然遇到的神秘旅行者;\n故事中应展现他们相遇带来的意想不到的转折,最终揭示“夏天的小幸运”的真谛;\n避免使用太过沉重或悲伤的情节,保持整体的温馨和希望感;\n少女在夏日午后偶然发现一本遗落在公园长椅上的旧日记本,成为创作灵感的源泉,引领她遇见神秘旅行者;\n故事应描述两人共同经历了一系列美好而温馨的夏日时光;\n"}], "type": "trace", "description": "撰写一篇主题为“夏天的小幸运”的微小说", "constraints": "故事字数大约600字左右;\n故事应融入夏天的元素,如炽热的阳光、清凉的泳池、冰淇淋的甜蜜等,营造夏日氛围;\n故事采用第三人称叙述,保持轻松愉悦的文艺风格;\n故事背景设定在一个小镇的夏日里;\n主要角色包括一个梦想成为作家的少女和她偶然遇到的神秘旅行者;\n故事中应展现他们相遇带来的意想不到的转折,最终揭示“夏天的小幸运”的真谛;\n避免使用太过沉重或悲伤的情节,保持整体的温馨和希望感;\n少女在夏日午后偶然发现一本遗落在公园长椅上的旧日记本,成为创作灵感的源泉,引领她遇见神秘旅行者;\n故事应描述两人共同经历了一系列美好而温馨的夏日时光;", "input": "NULL", "constraints_num": 9, "constraints_splits": ["故事字数大约600字左右;", "故事应融入夏天的元素,如炽热的阳光、清凉的泳池、冰淇淋的甜蜜等,营造夏日氛围;", "故事采用第三人称叙述,保持轻松愉悦的文艺风格;", "故事背景设定在一个小镇的夏日里;", "主要角色包括一个梦想成为作家的少女和她偶然遇到的神秘旅行者;", "故事中应展现他们相遇带来的意想不到的转折,最终揭示“夏天的小幸运”的真谛;", "避免使用太过沉重或悲伤的情节,保持整体的温馨和希望感;", "少女在夏日午后偶然发现一本遗落在公园长椅上的旧日记本,成为创作灵感的源泉,引领她遇见神秘旅行者;", "故事应描述两人共同经历了一系列美好而温馨的夏日时光;"], "levels2": ["数值约束", "包含约束", "语气风格约束", "文本背景信息约束", "角色扮演约束", "主题约束", "情感情绪约束", "角色扮演约束", "主题约束"], "category": "trace1.0"} +{"id": "590", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "开发一个月历生成程序\n输入时需接受两个参数:一个月的数量的天数和第一天是星期几;\n输入的天数应在28至31天之间;\n输入的星期范围应在1至7之间,其中1代表星期一;\n输出格式约束:以表格形式展示月历;\n月历中应包含星期几的标题:“星期一”至“星期日”;\n正确显示每一天的日期,从1至输入的天数;\n程序应能处理任何有效输入;\n输入天数为31,第一天为星期一,输出月历以供参考;\n在程序设计前,应确保理解并满足所有上述约束条件。\n"}], "type": "trace", "description": "开发一个月历生成程序", "constraints": "输入时需接受两个参数:一个月的数量的天数和第一天是星期几;\n输入的天数应在28至31天之间;\n输入的星期范围应在1至7之间,其中1代表星期一;\n输出格式约束:以表格形式展示月历;\n月历中应包含星期几的标题:“星期一”至“星期日”;\n正确显示每一天的日期,从1至输入的天数;\n程序应能处理任何有效输入;\n输入天数为31,第一天为星期一,输出月历以供参考;\n在程序设计前,应确保理解并满足所有上述约束条件。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["输入时需接受两个参数:一个月的数量的天数和第一天是星期几;", "输入的天数应在28至31天之间;", "输入的星期范围应在1至7之间,其中1代表星期一;", "输出格式约束:以表格形式展示月历;", "月历中应包含星期几的标题:“星期一”至“星期日”;", "正确显示每一天的日期,从1至输入的天数;", "程序应能处理任何有效输入;", "输入天数为31,第一天为星期一,输出月历以供参考;", "在程序设计前,应确保理解并满足所有上述约束条件。"], "levels2": ["包含约束", "数值约束", "数值约束", "输出格式约束", "包含约束", "数值约束", "包含约束", "正例约束", "先验条件约束"], "category": "trace1.0"} +{"id": "591", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "计算从2016年7月开始到2022年1月1日,每月15号固定存入5000元人民币,在银行年利率范围是1%至3%的情况下,账户中最大可能金额。\n你是一个财务顾问,正在为一个客户解决关于银行存款和利息计算的问题;\n从2016年7月开始,到2022年1月1日,共计67个月。每月存款金额为5000元人民币,且每月存款金额与2016年7月的存款金额相同;\n计算应当参考银行存款和复利计算的通用原则,解释或引用银行利息的计算方法;\n结果需以表格形式输出,列明每个月的存款日期、存款金额、账户余额、当月利息及累计利息,最终显示2022年1月1日账户余额;\n在计算过程中,必须考虑每月定期存款和复利效应,以及银行每年年初根据账户余额支付利息的规则;\n假设在存款期间,银行的年利率始终为最高3%,且没有其他支出或收入影响账户余额;\n计算结果需要按照时间顺序排列,从2016年7月开始至2022年1月结束;\n一个正例可以是,2016年7月初始存款5000元,2016年8月存款5000元,账户余额为10000元,2017年1月根据3%的年利率计算利息;\n忽略每月存款的复利效应,仅计算单利,或者将年利率设定为一个固定值,而不是一个范围。\n"}], "type": "trace", "description": "计算从2016年7月开始到2022年1月1日,每月15号固定存入5000元人民币,在银行年利率范围是1%至3%的情况下,账户中最大可能金额。", "constraints": "你是一个财务顾问,正在为一个客户解决关于银行存款和利息计算的问题;\n从2016年7月开始,到2022年1月1日,共计67个月。每月存款金额为5000元人民币,且每月存款金额与2016年7月的存款金额相同;\n计算应当参考银行存款和复利计算的通用原则,解释或引用银行利息的计算方法;\n结果需以表格形式输出,列明每个月的存款日期、存款金额、账户余额、当月利息及累计利息,最终显示2022年1月1日账户余额;\n在计算过程中,必须考虑每月定期存款和复利效应,以及银行每年年初根据账户余额支付利息的规则;\n假设在存款期间,银行的年利率始终为最高3%,且没有其他支出或收入影响账户余额;\n计算结果需要按照时间顺序排列,从2016年7月开始至2022年1月结束;\n一个正例可以是,2016年7月初始存款5000元,2016年8月存款5000元,账户余额为10000元,2017年1月根据3%的年利率计算利息;\n忽略每月存款的复利效应,仅计算单利,或者将年利率设定为一个固定值,而不是一个范围。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["你是一个财务顾问,正在为一个客户解决关于银行存款和利息计算的问题;", "从2016年7月开始,到2022年1月1日,共计67个月。每月存款金额为5000元人民币,且每月存款金额与2016年7月的存款金额相同;", "计算应当参考银行存款和复利计算的通用原则,解释或引用银行利息的计算方法;", "结果需以表格形式输出,列明每个月的存款日期、存款金额、账户余额、当月利息及累计利息,最终显示2022年1月1日账户余额;", "在计算过程中,必须考虑每月定期存款和复利效应,以及银行每年年初根据账户余额支付利息的规则;", "假设在存款期间,银行的年利率始终为最高3%,且没有其他支出或收入影响账户余额;", "计算结果需要按照时间顺序排列,从2016年7月开始至2022年1月结束;", "一个正例可以是,2016年7月初始存款5000元,2016年8月存款5000元,账户余额为10000元,2017年1月根据3%的年利率计算利息;", "忽略每月存款的复利效应,仅计算单利,或者将年利率设定为一个固定值,而不是一个范围。"], "levels2": ["角色扮演约束", "数值约束", "引用和参考约束", "输出格式约束", "包含约束", "先验条件约束", "数值约束", "正例约束", "排除约束"], "category": "trace1.0"} +{"id": "592", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "设计一个提高用户友好性的Android音乐播放器的计划,计划应遵循给定的规范。\n你是一名用户体验设计师,负责提升音乐播放器的操作便捷性和用户满意度。\n计划书应包含至少5个关键功能的详细描述,以及至少3个用户与音乐播放器交互的示例场景。\n计划书中必须包括对每项关键功能如何增强用户友好性的分析,以及可能遇到的难点及解决方案。\n以下是一个正例:\"设计一个自动歌词同步功能,用户可以边听音乐边看歌词,增加乐趣。\"\n避免设计过于复杂的功能,如过多的音频特效选择,这可能会让用户感到困惑。\n在设计之前,需要完成一份用户调研报告,了解目标用户群的喜好和使用习惯,以确保设计的音乐播放器符合他们的需求。\n计划书应采用总分总结构,首先概述设计目标和原则,然后详细描述每个功能,最后总结整个设计的亮点和预期效果。\n计划书应采用正式、专业的语气和风格,确保内容的严谨性和可读性。\n计划书应以PDF格式提交,并使用清晰的标题和子标题分段,以便于阅读和理解。\n# Inputs:\n- 用户调研报告:用户群体主要由年龄在18-35岁之间的音乐爱好者组成,他们偏好简洁的界面和直观的操作。\n- 竞品分析:目前市场上流行的音乐播放器主要功能包括:音乐推荐、播放控制、歌词同步、音乐下载和播放列表管理。\n- 技术限制:考虑到Android系统的兼容性,确保设计的功能在各种Android设备上都能稳定运行。\n"}], "type": "trace", "description": "设计一个提高用户友好性的Android音乐播放器的计划,计划应遵循给定的规范。", "constraints": "你是一名用户体验设计师,负责提升音乐播放器的操作便捷性和用户满意度。\n计划书应包含至少5个关键功能的详细描述,以及至少3个用户与音乐播放器交互的示例场景。\n计划书中必须包括对每项关键功能如何增强用户友好性的分析,以及可能遇到的难点及解决方案。\n以下是一个正例:\"设计一个自动歌词同步功能,用户可以边听音乐边看歌词,增加乐趣。\"\n避免设计过于复杂的功能,如过多的音频特效选择,这可能会让用户感到困惑。\n在设计之前,需要完成一份用户调研报告,了解目标用户群的喜好和使用习惯,以确保设计的音乐播放器符合他们的需求。\n计划书应采用总分总结构,首先概述设计目标和原则,然后详细描述每个功能,最后总结整个设计的亮点和预期效果。\n计划书应采用正式、专业的语气和风格,确保内容的严谨性和可读性。\n计划书应以PDF格式提交,并使用清晰的标题和子标题分段,以便于阅读和理解。", "input": "- 用户调研报告:用户群体主要由年龄在18-35岁之间的音乐爱好者组成,他们偏好简洁的界面和直观的操作。\n- 竞品分析:目前市场上流行的音乐播放器主要功能包括:音乐推荐、播放控制、歌词同步、音乐下载和播放列表管理。\n- 技术限制:考虑到Android系统的兼容性,确保设计的功能在各种Android设备上都能稳定运行。", "constraints_num": 9, "constraints_splits": ["你是一名用户体验设计师,负责提升音乐播放器的操作便捷性和用户满意度。", "计划书应包含至少5个关键功能的详细描述,以及至少3个用户与音乐播放器交互的示例场景。", "计划书中必须包括对每项关键功能如何增强用户友好性的分析,以及可能遇到的难点及解决方案。", "以下是一个正例:\"设计一个自动歌词同步功能,用户可以边听音乐边看歌词,增加乐趣。\"", "避免设计过于复杂的功能,如过多的音频特效选择,这可能会让用户感到困惑。", "在设计之前,需要完成一份用户调研报告,了解目标用户群的喜好和使用习惯,以确保设计的音乐播放器符合他们的需求。", "计划书应采用总分总结构,首先概述设计目标和原则,然后详细描述每个功能,最后总结整个设计的亮点和预期效果。", "计划书应采用正式、专业的语气和风格,确保内容的严谨性和可读性。", "计划书应以PDF格式提交,并使用清晰的标题和子标题分段,以便于阅读和理解。"], "levels2": ["角色扮演约束", "数值约束", "包含约束", "正例约束", "排除约束", "先验条件约束", "模版约束", "语气风格约束", "输出格式约束"], "category": "trace1.0"} +{"id": "593", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "构建一个使用PyTorch框架和Hugging Face的transformers进行情感分析的模型,该模型针对超过10万条评论数据的Reddit帖子,使用高级文本预处理技术,并展示其在至少三类独立数据集上的泛化能力。\n实施高级文本预处理,包括但不限于去除停用词、词干提取和词形还原;\n使用自定义分词器训练模型;\n展示模型在至少三类独立且不同类别的数据集上的泛化能力,如电影评论、新闻文章和社交媒体帖子;\n输出结果以JSON格式展示,至少包含:数据集名称、模型性能指标(如准确率、F1分数)、使用的预处理技术、自定义分词器的详细信息、训练耗时以及模型的总体表现;\n报告中至少引用3篇关于情感分析和文本预处理的学术论文作为参考;\n语言上需使用专业术语并确保文本结构清晰;\n正例约束:例如,一份包含预处理技术、模型性能指标、训练耗时以及整体模型表现的完整JSON报告;\n负例约束:避免提供只有模型性能指标而缺乏训练细节和预处理技术描述的报告;\n先验条件约束:在开始模型构建前,需完成数据集的预处理和初步探索性数据分析。\n# Inputs:\n一个拥有超过10万条评论数据的Reddit帖子数据集。\n"}], "type": "trace", "description": "构建一个使用PyTorch框架和Hugging Face的transformers进行情感分析的模型,该模型针对超过10万条评论数据的Reddit帖子,使用高级文本预处理技术,并展示其在至少三类独立数据集上的泛化能力。", "constraints": "实施高级文本预处理,包括但不限于去除停用词、词干提取和词形还原;\n使用自定义分词器训练模型;\n展示模型在至少三类独立且不同类别的数据集上的泛化能力,如电影评论、新闻文章和社交媒体帖子;\n输出结果以JSON格式展示,至少包含:数据集名称、模型性能指标(如准确率、F1分数)、使用的预处理技术、自定义分词器的详细信息、训练耗时以及模型的总体表现;\n报告中至少引用3篇关于情感分析和文本预处理的学术论文作为参考;\n语言上需使用专业术语并确保文本结构清晰;\n正例约束:例如,一份包含预处理技术、模型性能指标、训练耗时以及整体模型表现的完整JSON报告;\n负例约束:避免提供只有模型性能指标而缺乏训练细节和预处理技术描述的报告;\n先验条件约束:在开始模型构建前,需完成数据集的预处理和初步探索性数据分析。", "input": "一个拥有超过10万条评论数据的Reddit帖子数据集。", "constraints_num": 9, "constraints_splits": ["实施高级文本预处理,包括但不限于去除停用词、词干提取和词形还原;", "使用自定义分词器训练模型;", "展示模型在至少三类独立且不同类别的数据集上的泛化能力,如电影评论、新闻文章和社交媒体帖子;", "输出结果以JSON格式展示,至少包含:数据集名称、模型性能指标(如准确率、F1分数)、使用的预处理技术、自定义分词器的详细信息、训练耗时以及模型的总体表现;", "报告中至少引用3篇关于情感分析和文本预处理的学术论文作为参考;", "语言上需使用专业术语并确保文本结构清晰;", "正例约束:例如,一份包含预处理技术、模型性能指标、训练耗时以及整体模型表现的完整JSON报告;", "负例约束:避免提供只有模型性能指标而缺乏训练细节和预处理技术描述的报告;", "先验条件约束:在开始模型构建前,需完成数据集的预处理和初步探索性数据分析。"], "levels2": ["包含约束", "包含约束", "数值约束", "输出格式约束", "引用和参考约束", "语言特征约束", "正例约束", "负例约束", "先验条件约束"], "category": "trace1.0"} +{"id": "594", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "详细解释在重力作用下,两种密度不同的流动液体的平面分界面是否能够稳定存在。\n回答中必须包含分界面的稳定性条件,即在什么条件下,两种液体的分界面可以保持稳定。\n如果稳定分界面存在,需解释重力如何与其他力相互作用,以维持分界面的稳定。\n如果稳定分界面不存在,请详细说明导致分界面不稳定的因素,以及这些因素如何在重力场中影响液体的分界面。\n回答中需要引用至少两篇相关领域的科学文献,以支持观点和论据。\n回答面向大学物理专业的学生,需使用专业术语,保持解释的清晰和逻辑性。\n可以参考 Rayleigh-Taylor 不稳定性现象,以及密度差异如何影响分界面的稳定。\n避免仅给出结论而未提供详细的理论解释和实验证据。\n假设两种液体的黏度和表面张力可以忽略不计,以简化问题;进一步探讨当这些因素不可忽略时,它们如何影响分界面的稳定状态)。\n回答应以技术报告的形式呈现,包含引言、方法、结果、讨论和结论等部分。\n"}], "type": "trace", "description": "详细解释在重力作用下,两种密度不同的流动液体的平面分界面是否能够稳定存在。", "constraints": "回答中必须包含分界面的稳定性条件,即在什么条件下,两种液体的分界面可以保持稳定。\n如果稳定分界面存在,需解释重力如何与其他力相互作用,以维持分界面的稳定。\n如果稳定分界面不存在,请详细说明导致分界面不稳定的因素,以及这些因素如何在重力场中影响液体的分界面。\n回答中需要引用至少两篇相关领域的科学文献,以支持观点和论据。\n回答面向大学物理专业的学生,需使用专业术语,保持解释的清晰和逻辑性。\n可以参考 Rayleigh-Taylor 不稳定性现象,以及密度差异如何影响分界面的稳定。\n避免仅给出结论而未提供详细的理论解释和实验证据。\n假设两种液体的黏度和表面张力可以忽略不计,以简化问题;进一步探讨当这些因素不可忽略时,它们如何影响分界面的稳定状态)。\n回答应以技术报告的形式呈现,包含引言、方法、结果、讨论和结论等部分。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["回答中必须包含分界面的稳定性条件,即在什么条件下,两种液体的分界面可以保持稳定。", "如果稳定分界面存在,需解释重力如何与其他力相互作用,以维持分界面的稳定。", "如果稳定分界面不存在,请详细说明导致分界面不稳定的因素,以及这些因素如何在重力场中影响液体的分界面。", "回答中需要引用至少两篇相关领域的科学文献,以支持观点和论据。", "回答面向大学物理专业的学生,需使用专业术语,保持解释的清晰和逻辑性。", "可以参考 Rayleigh-Taylor 不稳定性现象,以及密度差异如何影响分界面的稳定。", "避免仅给出结论而未提供详细的理论解释和实验证据。", "假设两种液体的黏度和表面张力可以忽略不计,以简化问题;进一步探讨当这些因素不可忽略时,它们如何影响分界面的稳定状态)。", "回答应以技术报告的形式呈现,包含引言、方法、结果、讨论和结论等部分。"], "levels2": ["包含约束", "包含约束", "包含约束", "引用和参考约束", "受众目标约束", "正例约束", "负例约束", "先验条件约束", "层次化结构约束"], "category": "trace1.0"} +{"id": "595", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "设计一个自动化的财务报表系统,该系统应每月20号自动执行以下操作:从数据库中提取所有财务数据,进行统计分析并生成财务报表,包括但不限于利润表、现金流量表和资产负债表;系统应能检测数据中的异常值,并进行初步的数据清洗;所有操作都应记录在系统日志中;如果在处理数据过程中出现任何错误,系统应通过电子邮件通知管理员,并在邮件中附加错误日志。\n系统设计应考虑不同角色的需求,如财务人员、审计人员、系统管理员。不同角色应有相应的权限和操作界面。\n生成的财务报表应支持PDF和Excel两种格式导出,以便于不同用户的使用需求。\n系统应包括数据提取模块、数据清洗模块、报表生成模块、异常检测模块、日志记录模块、邮件通知模块。\n系统应先检查数据库连接是否正常,然后检查数据是否完整,再进行数据清洗和报表生成。\n系统设计应考虑财务数据的敏感性,确保数据的安全性和保密性。例如,应使用HTTPS协议传输数据,使用加密技术存储数据,使用双因素认证技术保护账户安全。\n在设计系统时,应参考《企业会计准则》、《数据清洗技术》、《异常检测方法》等相关标准和资料,确保系统设计的合理性和可行性。\n系统的报表生成模块应支持报表模版的自定义,以便于不同企业的使用需求。\n系统应保护个人隐私,例如,不应在报表中暴露个人的财务信息,不应在邮件通知中暴露管理员的个人信息。\n系统设计应包括详细的系统架构、模块设计、流程图、伪代码等内容,以便于系统开发和维护。\n"}], "type": "trace", "description": "设计一个自动化的财务报表系统,该系统应每月20号自动执行以下操作:从数据库中提取所有财务数据,进行统计分析并生成财务报表,包括但不限于利润表、现金流量表和资产负债表;系统应能检测数据中的异常值,并进行初步的数据清洗;所有操作都应记录在系统日志中;如果在处理数据过程中出现任何错误,系统应通过电子邮件通知管理员,并在邮件中附加错误日志。", "constraints": "系统设计应考虑不同角色的需求,如财务人员、审计人员、系统管理员。不同角色应有相应的权限和操作界面。\n生成的财务报表应支持PDF和Excel两种格式导出,以便于不同用户的使用需求。\n系统应包括数据提取模块、数据清洗模块、报表生成模块、异常检测模块、日志记录模块、邮件通知模块。\n系统应先检查数据库连接是否正常,然后检查数据是否完整,再进行数据清洗和报表生成。\n系统设计应考虑财务数据的敏感性,确保数据的安全性和保密性。例如,应使用HTTPS协议传输数据,使用加密技术存储数据,使用双因素认证技术保护账户安全。\n在设计系统时,应参考《企业会计准则》、《数据清洗技术》、《异常检测方法》等相关标准和资料,确保系统设计的合理性和可行性。\n系统的报表生成模块应支持报表模版的自定义,以便于不同企业的使用需求。\n系统应保护个人隐私,例如,不应在报表中暴露个人的财务信息,不应在邮件通知中暴露管理员的个人信息。\n系统设计应包括详细的系统架构、模块设计、流程图、伪代码等内容,以便于系统开发和维护。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["系统设计应考虑不同角色的需求,如财务人员、审计人员、系统管理员。不同角色应有相应的权限和操作界面。", "生成的财务报表应支持PDF和Excel两种格式导出,以便于不同用户的使用需求。", "系统应包括数据提取模块、数据清洗模块、报表生成模块、异常检测模块、日志记录模块、邮件通知模块。", "系统应先检查数据库连接是否正常,然后检查数据是否完整,再进行数据清洗和报表生成。", "系统设计应考虑财务数据的敏感性,确保数据的安全性和保密性。例如,应使用HTTPS协议传输数据,使用加密技术存储数据,使用双因素认证技术保护账户安全。", "在设计系统时,应参考《企业会计准则》、《数据清洗技术》、《异常检测方法》等相关标准和资料,确保系统设计的合理性和可行性。", "系统的报表生成模块应支持报表模版的自定义,以便于不同企业的使用需求。", "系统应保护个人隐私,例如,不应在报表中暴露个人的财务信息,不应在邮件通知中暴露管理员的个人信息。", "系统设计应包括详细的系统架构、模块设计、流程图、伪代码等内容,以便于系统开发和维护。"], "levels2": ["角色扮演约束", "输出格式约束", "包含约束", "先验条件约束", "文本背景信息约束", "引用和参考约束", "模版约束", "隐私约束", "markdown流程背景信息约束"], "category": "trace1.0"} +{"id": "596", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为影视评论网站开发一个情感分析工具,使用Huggingface Transformers库从头开始训练一个新的模型,处理包含'very positive'或'very negative'评价的电影评论数据集,并完成数据预处理、数据集划分、模型选择、模型微调、性能评估等步骤。\n数据预处理:包括清洗和格式化数据,确保每条评论与其情感标签相对应。\n数据集划分:将数据集分为训练集、验证集和测试集。\n模型选择:从Huggingface模型库中选择一个预训练模型作为基础模型。\n模型微调:使用数据集微调模型,以适应电影评论的情感分析任务。\n性能评估:在测试集上评估模型的性能,使用准确率和F1分数作为性能指标。\n以Markdown流程背景信息约束的形式提供训练流程,包括每一步的详细说明和代码示例。\n训练流程必须包含数据预处理、数据集划分、模型选择、模型微调和性能评估步骤,并在每个步骤中提到相关的关键技术和工具。\n在开始编写训练流程之前,应已经安装了Python和Huggingface Transformers库,并且有访问到数据集的权限。\n提供了一个数据预处理步骤的简要示例代码,需要根据约束补全其它步骤的代码示例。\n# Inputs:\n根据角色扮演约束,假设你是一名数据科学家,正在为影视评论网站开发一个情感分析工具。你被要求使用Huggingface Transformers创建一个情感分析训练流程。然而,这次你将从头开始训练一个新的模型,使用一个包含'very positive'或'very negative'评分的大量电影评论数据集。在开始训练之前,你必须完成数据预处理、数据集划分、模型选择、模型微调和性能评估等步骤。\n"}], "type": "trace", "description": "为影视评论网站开发一个情感分析工具,使用Huggingface Transformers库从头开始训练一个新的模型,处理包含'very positive'或'very negative'评价的电影评论数据集,并完成数据预处理、数据集划分、模型选择、模型微调、性能评估等步骤。", "constraints": "数据预处理:包括清洗和格式化数据,确保每条评论与其情感标签相对应。\n数据集划分:将数据集分为训练集、验证集和测试集。\n模型选择:从Huggingface模型库中选择一个预训练模型作为基础模型。\n模型微调:使用数据集微调模型,以适应电影评论的情感分析任务。\n性能评估:在测试集上评估模型的性能,使用准确率和F1分数作为性能指标。\n以Markdown流程背景信息约束的形式提供训练流程,包括每一步的详细说明和代码示例。\n训练流程必须包含数据预处理、数据集划分、模型选择、模型微调和性能评估步骤,并在每个步骤中提到相关的关键技术和工具。\n在开始编写训练流程之前,应已经安装了Python和Huggingface Transformers库,并且有访问到数据集的权限。\n提供了一个数据预处理步骤的简要示例代码,需要根据约束补全其它步骤的代码示例。", "input": "根据角色扮演约束,假设你是一名数据科学家,正在为影视评论网站开发一个情感分析工具。你被要求使用Huggingface Transformers创建一个情感分析训练流程。然而,这次你将从头开始训练一个新的模型,使用一个包含'very positive'或'very negative'评分的大量电影评论数据集。在开始训练之前,你必须完成数据预处理、数据集划分、模型选择、模型微调和性能评估等步骤。", "constraints_num": 9, "constraints_splits": ["数据预处理:包括清洗和格式化数据,确保每条评论与其情感标签相对应。", "数据集划分:将数据集分为训练集、验证集和测试集。", "模型选择:从Huggingface模型库中选择一个预训练模型作为基础模型。", "模型微调:使用数据集微调模型,以适应电影评论的情感分析任务。", "性能评估:在测试集上评估模型的性能,使用准确率和F1分数作为性能指标。", "以Markdown流程背景信息约束的形式提供训练流程,包括每一步的详细说明和代码示例。", "训练流程必须包含数据预处理、数据集划分、模型选择、模型微调和性能评估步骤,并在每个步骤中提到相关的关键技术和工具。", "在开始编写训练流程之前,应已经安装了Python和Huggingface Transformers库,并且有访问到数据集的权限。", "提供了一个数据预处理步骤的简要示例代码,需要根据约束补全其它步骤的代码示例。"], "levels2": ["输出格式约束", "包含约束", "包含约束", "主题约束", "输出格式约束", "markdown流程背景信息约束", "包含约束", "先验条件约束", "正例约束"], "category": "trace1.0"} +{"id": "597", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一份关于地球遭受撞击事件的全面逃生计划。\n以一名灾害应对专家的身份,提供一个详细的撞击地球的假想情景;\n计划的撰写长度不少于1000字;\n输出格式为报告,需包含引言、主体分析、结论和附录等部分;\n计划中必须包含对人口密集地区和自然灾害的应对策略;\n至少引用5篇科学文献支持分析和建议;\n假设有一年的准备时间来实施此计划;\n参考全球人口分布、易受灾害影响的地区及其特点、现有的应急响应体系等背景信息;\n报告采用严谨正式的语气和专业学术的写作风格;\n报告结构应包括标题、目录、正文、参考文献等,且开头需包含摘要概述报告的目的、方法、主要发现和建议。\n"}], "type": "trace", "description": "撰写一份关于地球遭受撞击事件的全面逃生计划。", "constraints": "以一名灾害应对专家的身份,提供一个详细的撞击地球的假想情景;\n计划的撰写长度不少于1000字;\n输出格式为报告,需包含引言、主体分析、结论和附录等部分;\n计划中必须包含对人口密集地区和自然灾害的应对策略;\n至少引用5篇科学文献支持分析和建议;\n假设有一年的准备时间来实施此计划;\n参考全球人口分布、易受灾害影响的地区及其特点、现有的应急响应体系等背景信息;\n报告采用严谨正式的语气和专业学术的写作风格;\n报告结构应包括标题、目录、正文、参考文献等,且开头需包含摘要概述报告的目的、方法、主要发现和建议。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["以一名灾害应对专家的身份,提供一个详细的撞击地球的假想情景;", "计划的撰写长度不少于1000字;", "输出格式为报告,需包含引言、主体分析、结论和附录等部分;", "计划中必须包含对人口密集地区和自然灾害的应对策略;", "至少引用5篇科学文献支持分析和建议;", "假设有一年的准备时间来实施此计划;", "参考全球人口分布、易受灾害影响的地区及其特点、现有的应急响应体系等背景信息;", "报告采用严谨正式的语气和专业学术的写作风格;", "报告结构应包括标题、目录、正文、参考文献等,且开头需包含摘要概述报告的目的、方法、主要发现和建议。"], "levels2": ["角色扮演约束", "数值约束", "层次化结构约束", "包含约束", "引用和参考约束", "先验条件约束", "文本背景信息约束", "语气风格约束", "层次化结构约束"], "category": "trace1.0"} +{"id": "598", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "实现一个能完成文本分类任务的Python代码\n代码以Jupyter Notebook的格式输出;\n代码需包含数据预处理、TF-IDF词向量化、使用SVM进行分类和模型评估四部分;\n在预处理部分,需要清洗文本数据,去除停用词和标点符号;\n使用Scikit-learn库中的TfidfVectorizer和SVC类;\n在模型评估部分,使用交叉验证至少5次,并报告平均准确率;\n代码中应有详细的注释,解释每一步的功能和目的;\n数据集已经按照70%训练,30%测试的比例划分好;\n数据集是英文文本数据;\n分类任务为二分类;\n"}], "type": "trace", "description": "实现一个能完成文本分类任务的Python代码", "constraints": "代码以Jupyter Notebook的格式输出;\n代码需包含数据预处理、TF-IDF词向量化、使用SVM进行分类和模型评估四部分;\n在预处理部分,需要清洗文本数据,去除停用词和标点符号;\n使用Scikit-learn库中的TfidfVectorizer和SVC类;\n在模型评估部分,使用交叉验证至少5次,并报告平均准确率;\n代码中应有详细的注释,解释每一步的功能和目的;\n数据集已经按照70%训练,30%测试的比例划分好;\n数据集是英文文本数据;\n分类任务为二分类;", "input": "NULL", "constraints_num": 9, "constraints_splits": ["代码以Jupyter Notebook的格式输出;", "代码需包含数据预处理、TF-IDF词向量化、使用SVM进行分类和模型评估四部分;", "在预处理部分,需要清洗文本数据,去除停用词和标点符号;", "使用Scikit-learn库中的TfidfVectorizer和SVC类;", "在模型评估部分,使用交叉验证至少5次,并报告平均准确率;", "代码中应有详细的注释,解释每一步的功能和目的;", "数据集已经按照70%训练,30%测试的比例划分好;", "数据集是英文文本数据;", "分类任务为二分类;"], "levels2": ["输出格式约束", "包含约束", "包含约束", "包含约束", "数值约束", "文本样式约束", "先验条件约束", "多语言约束", "数值约束"], "category": "trace1.0"} +{"id": "599", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一个HTML表单,允许用户选择首选语言,提交后使用JavaScript捕获语言选择并在控制台显示定制消息,将语言存储在本地以备将来访问页面时使用,且页面加载时能显示存储的语言,无需再次提交。页面的默认语言为英语,且定制消息应根据所选语言使用相应版本。\n表单应包含一个下拉菜单,其中至少包括英语、中文、法语、西班牙语和阿拉伯语;\n当表单提交时,使用JavaScript捕获用户选择的语言;\n在控制台中显示一条定制的消息,格式为:\"感谢您!您选择的语言是[首选语言]\";\n选定的语言存储在本地存储中;\n如果用户再次访问页面并且已经存储了首选语言,则直接在页面加载时从本地存储中显示所选语言,无需再次提交表单;\n页面的默认语言应为英语;\n在显示定制消息时,应根据所选语言使用相应的语言版本;\n输出格式应为完整的HTML文档,包括HTML、CSS和JavaScript代码段;\n确保页面在所有现代浏览器上都能正常工作。\n"}], "type": "trace", "description": "创建一个HTML表单,允许用户选择首选语言,提交后使用JavaScript捕获语言选择并在控制台显示定制消息,将语言存储在本地以备将来访问页面时使用,且页面加载时能显示存储的语言,无需再次提交。页面的默认语言为英语,且定制消息应根据所选语言使用相应版本。", "constraints": "表单应包含一个下拉菜单,其中至少包括英语、中文、法语、西班牙语和阿拉伯语;\n当表单提交时,使用JavaScript捕获用户选择的语言;\n在控制台中显示一条定制的消息,格式为:\"感谢您!您选择的语言是[首选语言]\";\n选定的语言存储在本地存储中;\n如果用户再次访问页面并且已经存储了首选语言,则直接在页面加载时从本地存储中显示所选语言,无需再次提交表单;\n页面的默认语言应为英语;\n在显示定制消息时,应根据所选语言使用相应的语言版本;\n输出格式应为完整的HTML文档,包括HTML、CSS和JavaScript代码段;\n确保页面在所有现代浏览器上都能正常工作。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["表单应包含一个下拉菜单,其中至少包括英语、中文、法语、西班牙语和阿拉伯语;", "当表单提交时,使用JavaScript捕获用户选择的语言;", "在控制台中显示一条定制的消息,格式为:\"感谢您!您选择的语言是[首选语言]\";", "选定的语言存储在本地存储中;", "如果用户再次访问页面并且已经存储了首选语言,则直接在页面加载时从本地存储中显示所选语言,无需再次提交表单;", "页面的默认语言应为英语;", "在显示定制消息时,应根据所选语言使用相应的语言版本;", "输出格式应为完整的HTML文档,包括HTML、CSS和JavaScript代码段;", "确保页面在所有现代浏览器上都能正常工作。"], "levels2": ["多语言约束", "自然语言流程背景信息约束", "输出格式约束", "多语言约束", "先验条件约束", "多语言约束", "多语言约束", "输出格式约束", "文本样式约束"], "category": "trace1.0"} +{"id": "600", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一个名为“HelloWorldGui”的Java项目,使用Java Swing框架构建GUI,项目应包括主窗口、输入框、按钮、标签以及响应用户输入的功能。在按下按钮后,根据输入框内容显示相应消息,支持空输入显示“Hello World”和非空输入显示“Hello [Name]”。项目需要包含注释、文档,遵循Java编码规范,使用英文编写代码,包含中文用户界面元素。项目中还应包含使用Markdown格式的README文件,详细说明项目目的、功能、安装步骤、运行说明和代码结构,简化技术术语以便非技术背景受众理解,明确引用外部库或资源并提供链接。\n项目必须使用Java Swing框架构建GUI;\n项目应包含主窗口、输入框、按钮、标签;\n按钮点击后应根据输入框内容显示消息,支持空输入和非空输入显示不同消息;\n项目包括注释和文档,遵循Java编码规范;\n代码使用英文编写,包含中文用户界面元素;\nREADME文件使用Markdown格式,包含项目目的、功能、安装步骤、运行说明、代码结构说明;\nREADME文件简化技术术语,便于非技术背景受众理解;\nREADME文件中明确引用任何外部库或资源并提供链接;\n假设已安装Java开发环境和IDE,如IntelliJ IDEA或Eclipse。\n"}], "type": "trace", "description": "创建一个名为“HelloWorldGui”的Java项目,使用Java Swing框架构建GUI,项目应包括主窗口、输入框、按钮、标签以及响应用户输入的功能。在按下按钮后,根据输入框内容显示相应消息,支持空输入显示“Hello World”和非空输入显示“Hello [Name]”。项目需要包含注释、文档,遵循Java编码规范,使用英文编写代码,包含中文用户界面元素。项目中还应包含使用Markdown格式的README文件,详细说明项目目的、功能、安装步骤、运行说明和代码结构,简化技术术语以便非技术背景受众理解,明确引用外部库或资源并提供链接。", "constraints": "项目必须使用Java Swing框架构建GUI;\n项目应包含主窗口、输入框、按钮、标签;\n按钮点击后应根据输入框内容显示消息,支持空输入和非空输入显示不同消息;\n项目包括注释和文档,遵循Java编码规范;\n代码使用英文编写,包含中文用户界面元素;\nREADME文件使用Markdown格式,包含项目目的、功能、安装步骤、运行说明、代码结构说明;\nREADME文件简化技术术语,便于非技术背景受众理解;\nREADME文件中明确引用任何外部库或资源并提供链接;\n假设已安装Java开发环境和IDE,如IntelliJ IDEA或Eclipse。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["项目必须使用Java Swing框架构建GUI;", "项目应包含主窗口、输入框、按钮、标签;", "按钮点击后应根据输入框内容显示消息,支持空输入和非空输入显示不同消息;", "项目包括注释和文档,遵循Java编码规范;", "代码使用英文编写,包含中文用户界面元素;", "README文件使用Markdown格式,包含项目目的、功能、安装步骤、运行说明、代码结构说明;", "README文件简化技术术语,便于非技术背景受众理解;", "README文件中明确引用任何外部库或资源并提供链接;", "假设已安装Java开发环境和IDE,如IntelliJ IDEA或Eclipse。"], "levels2": ["包含约束", "包含约束", "包含约束", "语法结构约束", "多语言约束", "输出格式约束", "受众目标约束", "引用和参考约束", "先验条件约束"], "category": "trace1.0"} +{"id": "601", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "计算从2016年7月开始到2022年1月1日,每月15号固定存入5000元人民币,在银行年利率范围是1%至3%的情况下,账户中最大可能金额。\n你是一个财务顾问,正在为一个客户解决关于银行存款和利息计算的问题;\n数值约束:从2016年7月开始,到2022年1月1日,共计67个月。每月存款金额为5000元人民币,且每月存款金额与2016年7月的存款金额相同;\n计算应当参考银行存款和复利计算的通用原则,解释或引用银行利息的计算方法;\n结果需以表格形式输出,列明每个月的存款日期、存款金额、账户余额、当月利息及累计利息,最终显示2022年1月1日账户余额;\n在计算过程中,必须考虑每月定期存款和复利效应,以及银行每年年初根据账户余额支付利息的规则;\n假设在存款期间,银行的年利率始终为最高3%,且没有其他支出或收入影响账户余额;\n计算结果需要按照时间顺序排列,从2016年7月开始至2022年1月结束;\n一个正例可以是,2016年7月初始存款5000元,2016年8月存款5000元,账户余额为10000元,2017年1月根据3%的年利率计算利息;\n忽略每月存款的复利效应,仅计算单利,或者将年利率设定为一个固定值,而不是一个范围。\n"}], "type": "trace", "description": "计算从2016年7月开始到2022年1月1日,每月15号固定存入5000元人民币,在银行年利率范围是1%至3%的情况下,账户中最大可能金额。", "constraints": "你是一个财务顾问,正在为一个客户解决关于银行存款和利息计算的问题;\n数值约束:从2016年7月开始,到2022年1月1日,共计67个月。每月存款金额为5000元人民币,且每月存款金额与2016年7月的存款金额相同;\n计算应当参考银行存款和复利计算的通用原则,解释或引用银行利息的计算方法;\n结果需以表格形式输出,列明每个月的存款日期、存款金额、账户余额、当月利息及累计利息,最终显示2022年1月1日账户余额;\n在计算过程中,必须考虑每月定期存款和复利效应,以及银行每年年初根据账户余额支付利息的规则;\n假设在存款期间,银行的年利率始终为最高3%,且没有其他支出或收入影响账户余额;\n计算结果需要按照时间顺序排列,从2016年7月开始至2022年1月结束;\n一个正例可以是,2016年7月初始存款5000元,2016年8月存款5000元,账户余额为10000元,2017年1月根据3%的年利率计算利息;\n忽略每月存款的复利效应,仅计算单利,或者将年利率设定为一个固定值,而不是一个范围。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["你是一个财务顾问,正在为一个客户解决关于银行存款和利息计算的问题;", "数值约束:从2016年7月开始,到2022年1月1日,共计67个月。每月存款金额为5000元人民币,且每月存款金额与2016年7月的存款金额相同;", "计算应当参考银行存款和复利计算的通用原则,解释或引用银行利息的计算方法;", "结果需以表格形式输出,列明每个月的存款日期、存款金额、账户余额、当月利息及累计利息,最终显示2022年1月1日账户余额;", "在计算过程中,必须考虑每月定期存款和复利效应,以及银行每年年初根据账户余额支付利息的规则;", "假设在存款期间,银行的年利率始终为最高3%,且没有其他支出或收入影响账户余额;", "计算结果需要按照时间顺序排列,从2016年7月开始至2022年1月结束;", "一个正例可以是,2016年7月初始存款5000元,2016年8月存款5000元,账户余额为10000元,2017年1月根据3%的年利率计算利息;", "忽略每月存款的复利效应,仅计算单利,或者将年利率设定为一个固定值,而不是一个范围。"], "levels2": ["角色扮演约束", "数值约束", "引用和参考约束", "输出格式约束", "包含约束", "先验条件约束", "模版约束", "正例约束", "排除约束"], "category": "trace1.0"} +{"id": "602", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "构建一个使用PyTorch框架和Hugging Face的transformers进行情感分析的模型,该模型针对超过10万条评论数据的Reddit帖子,使用高级文本预处理技术,并展示其在至少三类独立数据集上的泛化能力。\n实施高级文本预处理,包括但不限于去除停用词、词干提取和词形还原;\n使用自定义分词器训练模型;\n展示模型在至少三类独立且不同类别的数据集上的泛化能力,如电影评论、新闻文章和社交媒体帖子;\n输出结果以JSON格式展示,至少包含:数据集名称、模型性能指标(如准确率、F1分数)、使用的预处理技术、自定义分词器的详细信息、训练耗时以及模型的总体表现;\n报告中至少引用3篇关于情感分析和文本预处理的学术论文作为参考;\n语言上需使用专业术语并确保文本结构清晰;\n例如,一份包含预处理技术、模型性能指标、训练耗时以及整体模型表现的完整JSON报告;\n避免提供只有模型性能指标而缺乏训练细节和预处理技术描述的报告;\n在开始模型构建前,需完成数据集的预处理和初步探索性数据分析。\n# Inputs:\n一个拥有超过10万条评论数据的Reddit帖子数据集。\n"}], "type": "trace", "description": "构建一个使用PyTorch框架和Hugging Face的transformers进行情感分析的模型,该模型针对超过10万条评论数据的Reddit帖子,使用高级文本预处理技术,并展示其在至少三类独立数据集上的泛化能力。", "constraints": "实施高级文本预处理,包括但不限于去除停用词、词干提取和词形还原;\n使用自定义分词器训练模型;\n展示模型在至少三类独立且不同类别的数据集上的泛化能力,如电影评论、新闻文章和社交媒体帖子;\n输出结果以JSON格式展示,至少包含:数据集名称、模型性能指标(如准确率、F1分数)、使用的预处理技术、自定义分词器的详细信息、训练耗时以及模型的总体表现;\n报告中至少引用3篇关于情感分析和文本预处理的学术论文作为参考;\n语言上需使用专业术语并确保文本结构清晰;\n例如,一份包含预处理技术、模型性能指标、训练耗时以及整体模型表现的完整JSON报告;\n避免提供只有模型性能指标而缺乏训练细节和预处理技术描述的报告;\n在开始模型构建前,需完成数据集的预处理和初步探索性数据分析。", "input": "一个拥有超过10万条评论数据的Reddit帖子数据集。", "constraints_num": 9, "constraints_splits": ["实施高级文本预处理,包括但不限于去除停用词、词干提取和词形还原;", "使用自定义分词器训练模型;", "展示模型在至少三类独立且不同类别的数据集上的泛化能力,如电影评论、新闻文章和社交媒体帖子;", "输出结果以JSON格式展示,至少包含:数据集名称、模型性能指标(如准确率、F1分数)、使用的预处理技术、自定义分词器的详细信息、训练耗时以及模型的总体表现;", "报告中至少引用3篇关于情感分析和文本预处理的学术论文作为参考;", "语言上需使用专业术语并确保文本结构清晰;", "例如,一份包含预处理技术、模型性能指标、训练耗时以及整体模型表现的完整JSON报告;", "避免提供只有模型性能指标而缺乏训练细节和预处理技术描述的报告;", "在开始模型构建前,需完成数据集的预处理和初步探索性数据分析。"], "levels2": ["包含约束", "包含约束", "数值约束", "输出格式约束", "引用和参考约束", "语言特征约束", "正例约束", "负例约束", "先验条件约束"], "category": "trace1.0"} +{"id": "603", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "设计和实现一个高效且健壮的斐波那契数列生成器迭代器。\n你是一名专业的软件开发工程师;\n生成的斐波那契数列必须在用户指定的范围[1, 10^5]内,且用户可以指定生成斐波那契数列的前N项,其中N的范围为[1, 100];\n程序设计中必须包含异常处理机制,能够处理用户输入的不正确范围,例如输入范围下限大于上限,或者范围超出指定的[1, 10^5];\n程序设计中不允许出现任何安全漏洞,确保程序的稳定性和安全性;\n一个有效的示例是当用户输入范围为[1, 10]时,程序能够生成并显示斐波那契数列的前10项;\n一个无效的示例是当用户输入范围为[-5, 5]时,程序应提示用户范围错误并要求重新输入;\n程序需以JSON格式返回生成的斐波那契数列,例如`{\"fibonacci\": [0, 1, 1, 2, 3, 5, 8, 13, 21, 34]}`;\n程序应设计为可以连续生成斐波那契数列与显示数列的迭代器,用户可以通过简单的指令在不断生成数列和显示数列之间进行切换;\n程序的设计文档和用户交互界面应采用简洁明了、专业严谨的语言风格,确保用户能够轻松理解和使用程序;\n"}], "type": "trace", "description": "设计和实现一个高效且健壮的斐波那契数列生成器迭代器。", "constraints": "你是一名专业的软件开发工程师;\n生成的斐波那契数列必须在用户指定的范围[1, 10^5]内,且用户可以指定生成斐波那契数列的前N项,其中N的范围为[1, 100];\n程序设计中必须包含异常处理机制,能够处理用户输入的不正确范围,例如输入范围下限大于上限,或者范围超出指定的[1, 10^5];\n程序设计中不允许出现任何安全漏洞,确保程序的稳定性和安全性;\n一个有效的示例是当用户输入范围为[1, 10]时,程序能够生成并显示斐波那契数列的前10项;\n一个无效的示例是当用户输入范围为[-5, 5]时,程序应提示用户范围错误并要求重新输入;\n程序需以JSON格式返回生成的斐波那契数列,例如`{\"fibonacci\": [0, 1, 1, 2, 3, 5, 8, 13, 21, 34]}`;\n程序应设计为可以连续生成斐波那契数列与显示数列的迭代器,用户可以通过简单的指令在不断生成数列和显示数列之间进行切换;\n程序的设计文档和用户交互界面应采用简洁明了、专业严谨的语言风格,确保用户能够轻松理解和使用程序;", "input": "NULL", "constraints_num": 9, "constraints_splits": ["你是一名专业的软件开发工程师;", "生成的斐波那契数列必须在用户指定的范围[1, 10^5]内,且用户可以指定生成斐波那契数列的前N项,其中N的范围为[1, 100];", "程序设计中必须包含异常处理机制,能够处理用户输入的不正确范围,例如输入范围下限大于上限,或者范围超出指定的[1, 10^5];", "程序设计中不允许出现任何安全漏洞,确保程序的稳定性和安全性;", "一个有效的示例是当用户输入范围为[1, 10]时,程序能够生成并显示斐波那契数列的前10项;", "一个无效的示例是当用户输入范围为[-5, 5]时,程序应提示用户范围错误并要求重新输入;", "程序需以JSON格式返回生成的斐波那契数列,例如`{\"fibonacci\": [0, 1, 1, 2, 3, 5, 8, 13, 21, 34]}`;", "程序应设计为可以连续生成斐波那契数列与显示数列的迭代器,用户可以通过简单的指令在不断生成数列和显示数列之间进行切换;", "程序的设计文档和用户交互界面应采用简洁明了、专业严谨的语言风格,确保用户能够轻松理解和使用程序;"], "levels2": ["角色扮演约束", "数值约束", "包含约束", "排除约束", "正例约束", "负例约束", "输出格式约束", "语法结构约束", "语气风格约束"], "category": "trace1.0"} +{"id": "604", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "详细解释在重力作用下,两种密度不同的流动液体的平面分界面是否能够稳定存在。\n回答中必须包含分界面的稳定性条件,即在什么条件下,两种液体的分界面可以保持稳定。\n如果稳定分界面存在,需解释重力如何与其他力相互作用,以维持分界面的稳定。\n如果稳定分界面不存在,请详细说明导致分界面不稳定的因素,以及这些因素如何在重力场中影响液体的分界面。\n回答中需要引用至少两篇相关领域的科学文献,以支持观点和论据。\n回答面向大学物理专业的学生,需使用专业术语,保持解释的清晰和逻辑性。\n可以参考 Rayleigh-Taylor 不稳定性现象,以及密度差异如何影响分界面的稳定(正例约束)。\n避免仅给出结论而未提供详细的理论解释和实验证据(负例约束)。\n假设两种液体的黏度和表面张力可以忽略不计,以简化问题;进一步探讨当这些因素不可忽略时,它们如何影响分界面的稳定状态(先验条件约束)。\n回答应以技术报告的形式呈现,包含引言、方法、结果、讨论和结论等部分(输出格式约束)。\n"}], "type": "trace", "description": "详细解释在重力作用下,两种密度不同的流动液体的平面分界面是否能够稳定存在。", "constraints": "回答中必须包含分界面的稳定性条件,即在什么条件下,两种液体的分界面可以保持稳定。\n如果稳定分界面存在,需解释重力如何与其他力相互作用,以维持分界面的稳定。\n如果稳定分界面不存在,请详细说明导致分界面不稳定的因素,以及这些因素如何在重力场中影响液体的分界面。\n回答中需要引用至少两篇相关领域的科学文献,以支持观点和论据。\n回答面向大学物理专业的学生,需使用专业术语,保持解释的清晰和逻辑性。\n可以参考 Rayleigh-Taylor 不稳定性现象,以及密度差异如何影响分界面的稳定(正例约束)。\n避免仅给出结论而未提供详细的理论解释和实验证据(负例约束)。\n假设两种液体的黏度和表面张力可以忽略不计,以简化问题;进一步探讨当这些因素不可忽略时,它们如何影响分界面的稳定状态(先验条件约束)。\n回答应以技术报告的形式呈现,包含引言、方法、结果、讨论和结论等部分(输出格式约束)。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["回答中必须包含分界面的稳定性条件,即在什么条件下,两种液体的分界面可以保持稳定。", "如果稳定分界面存在,需解释重力如何与其他力相互作用,以维持分界面的稳定。", "如果稳定分界面不存在,请详细说明导致分界面不稳定的因素,以及这些因素如何在重力场中影响液体的分界面。", "回答中需要引用至少两篇相关领域的科学文献,以支持观点和论据。", "回答面向大学物理专业的学生,需使用专业术语,保持解释的清晰和逻辑性。", "可以参考 Rayleigh-Taylor 不稳定性现象,以及密度差异如何影响分界面的稳定(正例约束)。", "避免仅给出结论而未提供详细的理论解释和实验证据(负例约束)。", "假设两种液体的黏度和表面张力可以忽略不计,以简化问题;进一步探讨当这些因素不可忽略时,它们如何影响分界面的稳定状态(先验条件约束)。", "回答应以技术报告的形式呈现,包含引言、方法、结果、讨论和结论等部分(输出格式约束)。"], "levels2": ["包含约束", "包含约束", "包含约束", "引用和参考约束", "受众目标约束", "正例约束", "排除约束", "先验条件约束", "层次化结构约束"], "category": "trace1.0"} +{"id": "605", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "详细说明如何通过改善客户投诉处理流程以提高客户满意度,并确保内容适合企业高层管理人员的决策需求。\n分析应包括但不限于客户投诉的接收渠道、处理时间、解决率以及客户反馈等关键指标;\n分析时需引用至少2个行业内的研究或报告以增强论证的权威性;\n制定的改进计划需设计一份详细的执行流程图,以Markdown流程图的形式给出;\n流程图需清晰展示每个步骤的负责人、所需资源和预计时间表;\n改进计划需列出所有所需资源,如员工培训、软件升级或增加预算等;\n需明确成功的衡量标准,包括客户满意度调查提升、投诉解决时间缩短、客户忠诚度提高等指标;\n最终报告需遵循总分总的结构;\n以表格形式总结改进计划的关键点以便高层管理人员快速理解;\n报告需避免不符合正例约束的样例报告中出现的问题,如未包含流程图、资源清单或未引用行业研究。\n"}], "type": "trace", "description": "详细说明如何通过改善客户投诉处理流程以提高客户满意度,并确保内容适合企业高层管理人员的决策需求。", "constraints": "分析应包括但不限于客户投诉的接收渠道、处理时间、解决率以及客户反馈等关键指标;\n分析时需引用至少2个行业内的研究或报告以增强论证的权威性;\n制定的改进计划需设计一份详细的执行流程图,以Markdown流程图的形式给出;\n流程图需清晰展示每个步骤的负责人、所需资源和预计时间表;\n改进计划需列出所有所需资源,如员工培训、软件升级或增加预算等;\n需明确成功的衡量标准,包括客户满意度调查提升、投诉解决时间缩短、客户忠诚度提高等指标;\n最终报告需遵循总分总的结构;\n以表格形式总结改进计划的关键点以便高层管理人员快速理解;\n报告需避免不符合正例约束的样例报告中出现的问题,如未包含流程图、资源清单或未引用行业研究。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["分析应包括但不限于客户投诉的接收渠道、处理时间、解决率以及客户反馈等关键指标;", "分析时需引用至少2个行业内的研究或报告以增强论证的权威性;", "制定的改进计划需设计一份详细的执行流程图,以Markdown流程图的形式给出;", "流程图需清晰展示每个步骤的负责人、所需资源和预计时间表;", "改进计划需列出所有所需资源,如员工培训、软件升级或增加预算等;", "需明确成功的衡量标准,包括客户满意度调查提升、投诉解决时间缩短、客户忠诚度提高等指标;", "最终报告需遵循总分总的结构;", "以表格形式总结改进计划的关键点以便高层管理人员快速理解;", "报告需避免不符合正例约束的样例报告中出现的问题,如未包含流程图、资源清单或未引用行业研究。"], "levels2": ["包含约束", "引用和参考约束", "markdown流程背景信息约束", "输出格式约束", "编号和列表约束", "包含约束", "模版约束", "输出格式约束", "负例约束"], "category": "trace1.0"} +{"id": "606", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "计算从2016年7月开始到2022年1月1日,每月15号固定存入5000元人民币,在银行年利率范围是1%至3%的情况下,账户中最大可能金额。\n情境约束:你是一个财务顾问,正在为一个客户解决关于银行存款和利息计算的问题;\n从2016年7月开始,到2022年1月1日,共计67个月。每月存款金额为5000元人民币,且每月存款金额与2016年7月的存款金额相同;\n计算应当参考银行存款和复利计算的通用原则,解释或引用银行利息的计算方法;\n结果需以表格形式输出,列明每个月的存款日期、存款金额、账户余额、当月利息及累计利息,最终显示2022年1月1日账户余额;\n在计算过程中,必须考虑每月定期存款和复利效应,以及银行每年年初根据账户余额支付利息的规则;\n假设在存款期间,银行的年利率始终为最高3%,且没有其他支出或收入影响账户余额;\n计算结果需要按照时间顺序排列,从2016年7月开始至2022年1月结束;\n一个正例可以是,2016年7月初始存款5000元,2016年8月存款5000元,账户余额为10000元,2017年1月根据3%的年利率计算利息;\n忽略每月存款的复利效应,仅计算单利,或者将年利率设定为一个固定值,而不是一个范围。\n"}], "type": "trace", "description": "计算从2016年7月开始到2022年1月1日,每月15号固定存入5000元人民币,在银行年利率范围是1%至3%的情况下,账户中最大可能金额。", "constraints": "情境约束:你是一个财务顾问,正在为一个客户解决关于银行存款和利息计算的问题;\n从2016年7月开始,到2022年1月1日,共计67个月。每月存款金额为5000元人民币,且每月存款金额与2016年7月的存款金额相同;\n计算应当参考银行存款和复利计算的通用原则,解释或引用银行利息的计算方法;\n结果需以表格形式输出,列明每个月的存款日期、存款金额、账户余额、当月利息及累计利息,最终显示2022年1月1日账户余额;\n在计算过程中,必须考虑每月定期存款和复利效应,以及银行每年年初根据账户余额支付利息的规则;\n假设在存款期间,银行的年利率始终为最高3%,且没有其他支出或收入影响账户余额;\n计算结果需要按照时间顺序排列,从2016年7月开始至2022年1月结束;\n一个正例可以是,2016年7月初始存款5000元,2016年8月存款5000元,账户余额为10000元,2017年1月根据3%的年利率计算利息;\n忽略每月存款的复利效应,仅计算单利,或者将年利率设定为一个固定值,而不是一个范围。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["情境约束:你是一个财务顾问,正在为一个客户解决关于银行存款和利息计算的问题;", "从2016年7月开始,到2022年1月1日,共计67个月。每月存款金额为5000元人民币,且每月存款金额与2016年7月的存款金额相同;", "计算应当参考银行存款和复利计算的通用原则,解释或引用银行利息的计算方法;", "结果需以表格形式输出,列明每个月的存款日期、存款金额、账户余额、当月利息及累计利息,最终显示2022年1月1日账户余额;", "在计算过程中,必须考虑每月定期存款和复利效应,以及银行每年年初根据账户余额支付利息的规则;", "假设在存款期间,银行的年利率始终为最高3%,且没有其他支出或收入影响账户余额;", "计算结果需要按照时间顺序排列,从2016年7月开始至2022年1月结束;", "一个正例可以是,2016年7月初始存款5000元,2016年8月存款5000元,账户余额为10000元,2017年1月根据3%的年利率计算利息;", "忽略每月存款的复利效应,仅计算单利,或者将年利率设定为一个固定值,而不是一个范围。"], "levels2": ["角色扮演约束", "数值约束", "引用和参考约束", "输出格式约束", "包含约束", "先验条件约束", "模版约束", "正例约束", "负例约束"], "category": "trace1.0"} +{"id": "607", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "构建一个使用PyTorch框架和Hugging Face的transformers进行情感分析的模型,该模型针对超过10万条评论数据的Reddit帖子,使用高级文本预处理技术,并展示其在至少三类独立数据集上的泛化能力。\n实施高级文本预处理,包括但不限于去除停用词、词干提取和词形还原;\n使用自定义分词器训练模型;\n展示模型在至少三类独立且不同类别的数据集上的泛化能力,如电影评论、新闻文章和社交媒体帖子;\n输出结果以JSON格式展示,至少包含:数据集名称、模型性能指标(如准确率、F1分数)、使用的预处理技术、自定义分词器的详细信息、训练耗时以及模型的总体表现;\n报告中至少引用3篇关于情感分析和文本预处理的学术论文作为参考;\n语言上需使用专业术语并确保文本结构清晰;\n例如,一份包含预处理技术、模型性能指标、训练耗时以及整体模型表现的完整JSON报告;\n避免提供只有模型性能指标而缺乏训练细节和预处理技术描述的报告;\n在开始模型构建前,需完成数据集的预处理和初步探索性数据分析。\n# Inputs:\n一个拥有超过10万条评论数据的Reddit帖子数据集。\n"}], "type": "trace", "description": "构建一个使用PyTorch框架和Hugging Face的transformers进行情感分析的模型,该模型针对超过10万条评论数据的Reddit帖子,使用高级文本预处理技术,并展示其在至少三类独立数据集上的泛化能力。", "constraints": "实施高级文本预处理,包括但不限于去除停用词、词干提取和词形还原;\n使用自定义分词器训练模型;\n展示模型在至少三类独立且不同类别的数据集上的泛化能力,如电影评论、新闻文章和社交媒体帖子;\n输出结果以JSON格式展示,至少包含:数据集名称、模型性能指标(如准确率、F1分数)、使用的预处理技术、自定义分词器的详细信息、训练耗时以及模型的总体表现;\n报告中至少引用3篇关于情感分析和文本预处理的学术论文作为参考;\n语言上需使用专业术语并确保文本结构清晰;\n例如,一份包含预处理技术、模型性能指标、训练耗时以及整体模型表现的完整JSON报告;\n避免提供只有模型性能指标而缺乏训练细节和预处理技术描述的报告;\n在开始模型构建前,需完成数据集的预处理和初步探索性数据分析。", "input": "一个拥有超过10万条评论数据的Reddit帖子数据集。", "constraints_num": 9, "constraints_splits": ["实施高级文本预处理,包括但不限于去除停用词、词干提取和词形还原;", "使用自定义分词器训练模型;", "展示模型在至少三类独立且不同类别的数据集上的泛化能力,如电影评论、新闻文章和社交媒体帖子;", "输出结果以JSON格式展示,至少包含:数据集名称、模型性能指标(如准确率、F1分数)、使用的预处理技术、自定义分词器的详细信息、训练耗时以及模型的总体表现;", "报告中至少引用3篇关于情感分析和文本预处理的学术论文作为参考;", "语言上需使用专业术语并确保文本结构清晰;", "例如,一份包含预处理技术、模型性能指标、训练耗时以及整体模型表现的完整JSON报告;", "避免提供只有模型性能指标而缺乏训练细节和预处理技术描述的报告;", "在开始模型构建前,需完成数据集的预处理和初步探索性数据分析。"], "levels2": ["包含约束", "包含约束", "数值约束", "输出格式约束", "引用和参考约束", "语言特征约束", "正例约束", "负例约束", "先验条件约束"], "category": "trace1.0"} +{"id": "608", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "开发一个遵循特定规范的闭包。\n闭包应以JSON格式返回操作结果,包括当前总和、快照历史和回滚状态。\n快照历史应至少保存最近5次的总和状态。\n每次执行加法操作后,闭包必须返回最新的总和和快照历史列表。\n快照功能应允许用户选择回滚至历史上的任一总和状态,但不破坏快照历史的完整性。\n在回滚后,不应破坏快照历史的完整性。\n如果快照历史达到最大存储容量(5次),闭包在执行加法操作时,应删除最旧的快照。\n闭包的设计应满足高效、可扩展。\n闭包的返回值结构应遵循给定的模版。\n闭包在初始化时,应提供一个默认值作为起始总和,例如0。\n"}], "type": "trace", "description": "开发一个遵循特定规范的闭包。", "constraints": "闭包应以JSON格式返回操作结果,包括当前总和、快照历史和回滚状态。\n快照历史应至少保存最近5次的总和状态。\n每次执行加法操作后,闭包必须返回最新的总和和快照历史列表。\n快照功能应允许用户选择回滚至历史上的任一总和状态,但不破坏快照历史的完整性。\n在回滚后,不应破坏快照历史的完整性。\n如果快照历史达到最大存储容量(5次),闭包在执行加法操作时,应删除最旧的快照。\n闭包的设计应满足高效、可扩展。\n闭包的返回值结构应遵循给定的模版。\n闭包在初始化时,应提供一个默认值作为起始总和,例如0。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["闭包应以JSON格式返回操作结果,包括当前总和、快照历史和回滚状态。", "快照历史应至少保存最近5次的总和状态。", "每次执行加法操作后,闭包必须返回最新的总和和快照历史列表。", "快照功能应允许用户选择回滚至历史上的任一总和状态,但不破坏快照历史的完整性。", "在回滚后,不应破坏快照历史的完整性。", "如果快照历史达到最大存储容量(5次),闭包在执行加法操作时,应删除最旧的快照。", "闭包的设计应满足高效、可扩展。", "闭包的返回值结构应遵循给定的模版。", "闭包在初始化时,应提供一个默认值作为起始总和,例如0。"], "levels2": ["输出格式约束", "数值约束", "输出格式约束", "包含约束", "负例约束", "数值约束", "角色扮演约束", "模版约束", "包含约束"], "category": "trace1.0"} +{"id": "609", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇关于投资组合多元化对投资者收益率影响的研究论文。\n论文需包含引言、研究方法、结果、讨论、结论和参考文献等部分;\n引言部分概述投资组合多元化的重要性和研究背景;\n研究方法部分详细描述分析投资组合对收益率影响的方法;\n结果部分根据实际数据探讨不同投资组合如何影响收益率;\n讨论部分分析影响收益率的各种因素(如风险、资产类别和市场情况等);\n结论部分提出基于研究发现的投资者制定最佳投资策略的建议;\n论文中需至少引用10篇相关领域的学术文献,并在参考文献部分按照APA格式列出;\n论文应采用学术严谨的写作风格;\n提供的正例仅用于说明论文的结构和风格,具体内容需根据实际研究结果撰写;\n"}], "type": "trace", "description": "撰写一篇关于投资组合多元化对投资者收益率影响的研究论文。", "constraints": "论文需包含引言、研究方法、结果、讨论、结论和参考文献等部分;\n引言部分概述投资组合多元化的重要性和研究背景;\n研究方法部分详细描述分析投资组合对收益率影响的方法;\n结果部分根据实际数据探讨不同投资组合如何影响收益率;\n讨论部分分析影响收益率的各种因素(如风险、资产类别和市场情况等);\n结论部分提出基于研究发现的投资者制定最佳投资策略的建议;\n论文中需至少引用10篇相关领域的学术文献,并在参考文献部分按照APA格式列出;\n论文应采用学术严谨的写作风格;\n提供的正例仅用于说明论文的结构和风格,具体内容需根据实际研究结果撰写;", "input": "NULL", "constraints_num": 9, "constraints_splits": ["论文需包含引言、研究方法、结果、讨论、结论和参考文献等部分;", "引言部分概述投资组合多元化的重要性和研究背景;", "研究方法部分详细描述分析投资组合对收益率影响的方法;", "结果部分根据实际数据探讨不同投资组合如何影响收益率;", "讨论部分分析影响收益率的各种因素(如风险、资产类别和市场情况等);", "结论部分提出基于研究发现的投资者制定最佳投资策略的建议;", "论文中需至少引用10篇相关领域的学术文献,并在参考文献部分按照APA格式列出;", "论文应采用学术严谨的写作风格;", "提供的正例仅用于说明论文的结构和风格,具体内容需根据实际研究结果撰写;"], "levels2": ["层次化结构约束", "层次化结构约束", "包含约束", "主题约束", "主题约束", "层次化结构约束", "引用和参考约束", "语气风格约束", "正例约束"], "category": "trace1.0"} +{"id": "610", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "使用 Python 的 markdown 格式,编写一个函数,该函数利用 SQLAlchemy ORM 与 Postgres 数据库进行交互。函数包括创建表、插入数据、查询数据和显示数据的操作。\n**格式约束**: 输出的代码应遵循 PEP 8 标准,使用 markdown 格式表示代码块。\n撰写代码的角色为数据库管理员,需设计一个具有高复杂度操作的函数,同时注意资源的合理使用。\n 代码注释需清晰明了,使用专业术语,保持简洁。\n 描述数据库表结构,例如表名为 `users`,包含字段 `id (integer, primary key)`, `username (string)`, `email (string)` 和 `created_at (datetime)`。\n 函数应创建并插入至少5条记录,每条记录含 `username`, `email` 和 `created_at` 的特定值。\n 函数必须同时包含创建表、插入数据、查询数据和显示数据的操作。\n 高时间复杂度操作中避免无限循环或不必要的数据读写,确保代码的健壮性和安全性。\n 提供一个正确实现创建表和插入数据的代码示例。\n提供一个错误代码示例,如未正确处理异常或没有使用事务管理。\n"}], "type": "trace", "description": "使用 Python 的 markdown 格式,编写一个函数,该函数利用 SQLAlchemy ORM 与 Postgres 数据库进行交互。函数包括创建表、插入数据、查询数据和显示数据的操作。", "constraints": "**格式约束**: 输出的代码应遵循 PEP 8 标准,使用 markdown 格式表示代码块。\n撰写代码的角色为数据库管理员,需设计一个具有高复杂度操作的函数,同时注意资源的合理使用。\n 代码注释需清晰明了,使用专业术语,保持简洁。\n 描述数据库表结构,例如表名为 `users`,包含字段 `id (integer, primary key)`, `username (string)`, `email (string)` 和 `created_at (datetime)`。\n 函数应创建并插入至少5条记录,每条记录含 `username`, `email` 和 `created_at` 的特定值。\n 函数必须同时包含创建表、插入数据、查询数据和显示数据的操作。\n 高时间复杂度操作中避免无限循环或不必要的数据读写,确保代码的健壮性和安全性。\n 提供一个正确实现创建表和插入数据的代码示例。\n提供一个错误代码示例,如未正确处理异常或没有使用事务管理。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["**格式约束**: 输出的代码应遵循 PEP 8 标准,使用 markdown 格式表示代码块。", "撰写代码的角色为数据库管理员,需设计一个具有高复杂度操作的函数,同时注意资源的合理使用。", " 代码注释需清晰明了,使用专业术语,保持简洁。", " 描述数据库表结构,例如表名为 `users`,包含字段 `id (integer, primary key)`, `username (string)`, `email (string)` 和 `created_at (datetime)`。", " 函数应创建并插入至少5条记录,每条记录含 `username`, `email` 和 `created_at` 的特定值。", " 函数必须同时包含创建表、插入数据、查询数据和显示数据的操作。", " 高时间复杂度操作中避免无限循环或不必要的数据读写,确保代码的健壮性和安全性。", " 提供一个正确实现创建表和插入数据的代码示例。", "提供一个错误代码示例,如未正确处理异常或没有使用事务管理。"], "levels2": ["输出格式约束", "角色扮演约束", "语气风格约束", "文本背景信息约束", "数值约束", "包含约束", "排除约束", "正例约束", "负例约束"], "category": "trace1.0"} +{"id": "611", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为一位有中等到高风险承受能力的投资者制定一个为期一年的金融投资策略\n策略应包括投资组合的资产配置;\n明确指出价格敏感性高的资产;\n盈利期望高于市场平均的资产;\n需进行风险控制;\n输出内容需采用JSON格式;\n投资组合需至少包含3种不同类型的投资产品;\n每种产品应有详细的描述,包括但不限于产品名称、投资比例、预期收益率和风险等级;\n示例:投资组合应包含股票、债券和衍生品,股票的投资比例为50%,债券为30%,衍生品为20%;\n需给出每种产品的预期年化收益率和风险评级,如股票预期年化收益率为10%,风险评级为中高;\n"}], "type": "trace", "description": "为一位有中等到高风险承受能力的投资者制定一个为期一年的金融投资策略", "constraints": "策略应包括投资组合的资产配置;\n明确指出价格敏感性高的资产;\n盈利期望高于市场平均的资产;\n需进行风险控制;\n输出内容需采用JSON格式;\n投资组合需至少包含3种不同类型的投资产品;\n每种产品应有详细的描述,包括但不限于产品名称、投资比例、预期收益率和风险等级;\n示例:投资组合应包含股票、债券和衍生品,股票的投资比例为50%,债券为30%,衍生品为20%;\n需给出每种产品的预期年化收益率和风险评级,如股票预期年化收益率为10%,风险评级为中高;", "input": "NULL", "constraints_num": 9, "constraints_splits": ["策略应包括投资组合的资产配置;", "明确指出价格敏感性高的资产;", "盈利期望高于市场平均的资产;", "需进行风险控制;", "输出内容需采用JSON格式;", "投资组合需至少包含3种不同类型的投资产品;", "每种产品应有详细的描述,包括但不限于产品名称、投资比例、预期收益率和风险等级;", "示例:投资组合应包含股票、债券和衍生品,股票的投资比例为50%,债券为30%,衍生品为20%;", "需给出每种产品的预期年化收益率和风险评级,如股票预期年化收益率为10%,风险评级为中高;"], "levels2": ["包含约束", "包含约束", "包含约束", "主题约束", "输出格式约束", "数值约束", "文本样式约束", "正例约束", "包含约束"], "category": "trace1.0"} +{"id": "612", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "开发一个月历生成程序\n输入时需接受两个参数:一个月的数量的天数和第一天是星期几;\n数值约束:输入的天数应在28至31天之间;\n输入的星期范围应在1至7之间,其中1代表星期一;\n以表格形式展示月历;\n月历中应包含星期几的标题:“星期一”至“星期日”;\n正确显示每一天的日期,从1至输入的天数;\n程序应能处理任何有效输入;\n程序应提供一个简单的示例输入:输入天数为31,第一天为星期一,输出月历以供参考;\n在程序设计前,应确保理解并满足所有上述约束条件。\n"}], "type": "trace", "description": "开发一个月历生成程序", "constraints": "输入时需接受两个参数:一个月的数量的天数和第一天是星期几;\n数值约束:输入的天数应在28至31天之间;\n输入的星期范围应在1至7之间,其中1代表星期一;\n以表格形式展示月历;\n月历中应包含星期几的标题:“星期一”至“星期日”;\n正确显示每一天的日期,从1至输入的天数;\n程序应能处理任何有效输入;\n程序应提供一个简单的示例输入:输入天数为31,第一天为星期一,输出月历以供参考;\n在程序设计前,应确保理解并满足所有上述约束条件。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["输入时需接受两个参数:一个月的数量的天数和第一天是星期几;", "数值约束:输入的天数应在28至31天之间;", "输入的星期范围应在1至7之间,其中1代表星期一;", "以表格形式展示月历;", "月历中应包含星期几的标题:“星期一”至“星期日”;", "正确显示每一天的日期,从1至输入的天数;", "程序应能处理任何有效输入;", "程序应提供一个简单的示例输入:输入天数为31,第一天为星期一,输出月历以供参考;", "在程序设计前,应确保理解并满足所有上述约束条件。"], "levels2": ["包含约束", "数值约束", "数值约束", "输出格式约束", "包含约束", "数值约束", "包含约束", "正例约束", "先验条件约束"], "category": "trace1.0"} +{"id": "613", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为一家小型企业制定一个综合的广告策略提案,该企业希望在180亿美元的预算下,既能保留住国内的客户基础,又能有效拓展国际市场。\n渠道选择应多样化,包含社交媒体、电视、网络广告、户外广告等,并说明选择这些渠道的原因。\n预算分配详细,确保各渠道预算的有效利用,不得超过180亿美元。\n策略概述中需包括目标市场定位、广告创意、信息传递方式等。\n确定广告投放的具体地理范围,特别是国内和国际市场的重点地区。\n广告效果评估机制需设定,包括KPIs的选择,如点击率、转化率、品牌认知度等,以及如何收集和分析数据评估广告效果。\n提案中应包含渠道选择的合理性及策略概述的针对性。\n避免渠道选择过于单一,全面考虑预算分配和目标市场的多样性。\n提案需遵循正式商务报告格式,包含引言、策略阐述、预算分配等部分。\n提案语气正式专业,使用清晰准确的语言,避免非正式缩写或俚语。\n提案需引用至少3篇相关领域的研究文献或行业报告作为策略制定依据。\n提案应基于市场趋势、消费者行为、行业竞争对手分析,为策略制定提供数据支持和理论依据。\n提案需采用清晰的层次化结构,如引言、策略概述、预算分配等部分。\n每个段落遵循主谓宾清晰语法结构,确保信息准确传递。\n"}], "type": "trace", "description": "为一家小型企业制定一个综合的广告策略提案,该企业希望在180亿美元的预算下,既能保留住国内的客户基础,又能有效拓展国际市场。", "constraints": "渠道选择应多样化,包含社交媒体、电视、网络广告、户外广告等,并说明选择这些渠道的原因。\n预算分配详细,确保各渠道预算的有效利用,不得超过180亿美元。\n策略概述中需包括目标市场定位、广告创意、信息传递方式等。\n确定广告投放的具体地理范围,特别是国内和国际市场的重点地区。\n广告效果评估机制需设定,包括KPIs的选择,如点击率、转化率、品牌认知度等,以及如何收集和分析数据评估广告效果。\n提案中应包含渠道选择的合理性及策略概述的针对性。\n避免渠道选择过于单一,全面考虑预算分配和目标市场的多样性。\n提案需遵循正式商务报告格式,包含引言、策略阐述、预算分配等部分。\n提案语气正式专业,使用清晰准确的语言,避免非正式缩写或俚语。\n提案需引用至少3篇相关领域的研究文献或行业报告作为策略制定依据。\n提案应基于市场趋势、消费者行为、行业竞争对手分析,为策略制定提供数据支持和理论依据。\n提案需采用清晰的层次化结构,如引言、策略概述、预算分配等部分。\n每个段落遵循主谓宾清晰语法结构,确保信息准确传递。", "input": "NULL", "constraints_num": 13, "constraints_splits": ["渠道选择应多样化,包含社交媒体、电视、网络广告、户外广告等,并说明选择这些渠道的原因。", "预算分配详细,确保各渠道预算的有效利用,不得超过180亿美元。", "策略概述中需包括目标市场定位、广告创意、信息传递方式等。", "确定广告投放的具体地理范围,特别是国内和国际市场的重点地区。", "广告效果评估机制需设定,包括KPIs的选择,如点击率、转化率、品牌认知度等,以及如何收集和分析数据评估广告效果。", "提案中应包含渠道选择的合理性及策略概述的针对性。", "避免渠道选择过于单一,全面考虑预算分配和目标市场的多样性。", "提案需遵循正式商务报告格式,包含引言、策略阐述、预算分配等部分。", "提案语气正式专业,使用清晰准确的语言,避免非正式缩写或俚语。", "提案需引用至少3篇相关领域的研究文献或行业报告作为策略制定依据。", "提案应基于市场趋势、消费者行为、行业竞争对手分析,为策略制定提供数据支持和理论依据。", "提案需采用清晰的层次化结构,如引言、策略概述、预算分配等部分。", "每个段落遵循主谓宾清晰语法结构,确保信息准确传递。"], "levels2": ["包含约束", "数值约束", "包含约束", "主题约束", "自然语言流程背景信息约束", "正例约束", "排除约束", "输出格式约束", "语气风格约束", "引用和参考约束", "文本背景信息约束", "层次化结构约束", "语法结构约束"], "category": "trace1.0"} +{"id": "614", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "设计一个C代码的函数,名为 `convert_to_positive_abs`,该函数用于将输入转换为正数的绝对值。\n你作为一名专业软件工程师,需确保代码的正确性和效率;\n该函数专为高级编程用户设计,需考虑位操作和二进制数系统;\n函数需进行输入验证,确保能正确解释整数输入;\n函数中需包含注释,解释关键步骤,如检查输入是否为整数;\n函数应引用二进制补码原理和错误管理策略;\n函数注释应使用编号列表列出步骤,如“1. 检查输入是否为整数”;\n函数代码应使用清晰的缩进和子函数调用来组织;\n提供函数调用的正例和负例,如 `int result = convert_to_positive_abs(-1024);` 和 `int result = convert_to_positive_abs(\"abc\");`;\n函数注释应采用简洁专业的语言,如“异常处理:输入非整数时,返回错误代码”;\n函数应使用C语言特性,如类型定义和位操作符;\n输出应以C代码形式提供,包括头文件和函数定义;\n函数能正确处理 `INT_MIN` 和 `INT_MAX` 边界情况;\n函数必须检查输入数据类型,确保能处理整数和长整数;\n函数不应使用浮点运算或字符串转换函数,如 `atoi` 或 `atol`。\n"}], "type": "trace", "description": "设计一个C代码的函数,名为 `convert_to_positive_abs`,该函数用于将输入转换为正数的绝对值。", "constraints": "你作为一名专业软件工程师,需确保代码的正确性和效率;\n该函数专为高级编程用户设计,需考虑位操作和二进制数系统;\n函数需进行输入验证,确保能正确解释整数输入;\n函数中需包含注释,解释关键步骤,如检查输入是否为整数;\n函数应引用二进制补码原理和错误管理策略;\n函数注释应使用编号列表列出步骤,如“1. 检查输入是否为整数”;\n函数代码应使用清晰的缩进和子函数调用来组织;\n提供函数调用的正例和负例,如 `int result = convert_to_positive_abs(-1024);` 和 `int result = convert_to_positive_abs(\"abc\");`;\n函数注释应采用简洁专业的语言,如“异常处理:输入非整数时,返回错误代码”;\n函数应使用C语言特性,如类型定义和位操作符;\n输出应以C代码形式提供,包括头文件和函数定义;\n函数能正确处理 `INT_MIN` 和 `INT_MAX` 边界情况;\n函数必须检查输入数据类型,确保能处理整数和长整数;\n函数不应使用浮点运算或字符串转换函数,如 `atoi` 或 `atol`。", "input": "NULL", "constraints_num": 14, "constraints_splits": ["你作为一名专业软件工程师,需确保代码的正确性和效率;", "该函数专为高级编程用户设计,需考虑位操作和二进制数系统;", "函数需进行输入验证,确保能正确解释整数输入;", "函数中需包含注释,解释关键步骤,如检查输入是否为整数;", "函数应引用二进制补码原理和错误管理策略;", "函数注释应使用编号列表列出步骤,如“1. 检查输入是否为整数”;", "函数代码应使用清晰的缩进和子函数调用来组织;", "提供函数调用的正例和负例,如 `int result = convert_to_positive_abs(-1024);` 和 `int result = convert_to_positive_abs(\"abc\");`;", "函数注释应采用简洁专业的语言,如“异常处理:输入非整数时,返回错误代码”;", "函数应使用C语言特性,如类型定义和位操作符;", "输出应以C代码形式提供,包括头文件和函数定义;", "函数能正确处理 `INT_MIN` 和 `INT_MAX` 边界情况;", "函数必须检查输入数据类型,确保能处理整数和长整数;", "函数不应使用浮点运算或字符串转换函数,如 `atoi` 或 `atol`。"], "levels2": ["角色扮演约束", "受众目标约束", "数值约束", "包含约束", "包含约束", "编号和列表约束", "语法结构约束", "正例约束", "语气风格约束", "主题约束", "输出格式约束", "数值约束", "数值约束", "排除约束"], "category": "trace1.0"} +{"id": "615", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "构建一个JavaScript函数,用于产生基于用户自定义设置的空闲警报,设置包括空闲时间阈值、警报重复间隔和警报消息文本。函数需动态调整警报机制,当用户累计空闲时间超过阈值时,触发格式化警报。\n函数应能解析和处理JSON格式的用户自定义设置;\n函数应能处理至少1至600秒之间的空闲时间阈值;\n函数支持1至60分钟之间的警报重复间隔;\n函数应生成包含格式化时间(HH:MM:SS)和自定义警报消息的弹窗;\n函数包含暂停和恢复警报的开关功能;\n函数需引用计时器库,如lodash的debounce函数,用于准确检测空闲时间和警报机制;\n警报消息应使用粗体和大字号强调,确保跨平台的可读性;\n函数支持英语和简体中文两种语言的警报消息;\n函数应在网页应用上下文中运行,与用户界面交互;\n函数不应收集或存储用户个人数据,仅检测空闲行为和产生警报;\n函数代码应采用简洁明了的编程风格;\n警报消息设计为温和提醒,避免给用户带来压力或焦虑;\n函数应处理边界情况,如频繁切换活动窗口或短时间内多次达到空闲状态;\n函数应具有良好的错误处理机制,应对可能的解析错误或设置不匹配。\n# Inputs:\n{\n  \"idleThreshold\": 600,\n  \"alertInterval\": 15,\n  \"alertMessage\": \"您已空闲10分钟,请检查您的工作状态。\"\n}\n"}], "type": "trace", "description": "构建一个JavaScript函数,用于产生基于用户自定义设置的空闲警报,设置包括空闲时间阈值、警报重复间隔和警报消息文本。函数需动态调整警报机制,当用户累计空闲时间超过阈值时,触发格式化警报。", "constraints": "函数应能解析和处理JSON格式的用户自定义设置;\n函数应能处理至少1至600秒之间的空闲时间阈值;\n函数支持1至60分钟之间的警报重复间隔;\n函数应生成包含格式化时间(HH:MM:SS)和自定义警报消息的弹窗;\n函数包含暂停和恢复警报的开关功能;\n函数需引用计时器库,如lodash的debounce函数,用于准确检测空闲时间和警报机制;\n警报消息应使用粗体和大字号强调,确保跨平台的可读性;\n函数支持英语和简体中文两种语言的警报消息;\n函数应在网页应用上下文中运行,与用户界面交互;\n函数不应收集或存储用户个人数据,仅检测空闲行为和产生警报;\n函数代码应采用简洁明了的编程风格;\n警报消息设计为温和提醒,避免给用户带来压力或焦虑;\n函数应处理边界情况,如频繁切换活动窗口或短时间内多次达到空闲状态;\n函数应具有良好的错误处理机制,应对可能的解析错误或设置不匹配。", "input": "{\n  \"idleThreshold\": 600,\n  \"alertInterval\": 15,\n  \"alertMessage\": \"您已空闲10分钟,请检查您的工作状态。\"\n}", "constraints_num": 14, "constraints_splits": ["函数应能解析和处理JSON格式的用户自定义设置;", "函数应能处理至少1至600秒之间的空闲时间阈值;", "函数支持1至60分钟之间的警报重复间隔;", "函数应生成包含格式化时间(HH:MM:SS)和自定义警报消息的弹窗;", "函数包含暂停和恢复警报的开关功能;", "函数需引用计时器库,如lodash的debounce函数,用于准确检测空闲时间和警报机制;", "警报消息应使用粗体和大字号强调,确保跨平台的可读性;", "函数支持英语和简体中文两种语言的警报消息;", "函数应在网页应用上下文中运行,与用户界面交互;", "函数不应收集或存储用户个人数据,仅检测空闲行为和产生警报;", "函数代码应采用简洁明了的编程风格;", "警报消息设计为温和提醒,避免给用户带来压力或焦虑;", "函数应处理边界情况,如频繁切换活动窗口或短时间内多次达到空闲状态;", "函数应具有良好的错误处理机制,应对可能的解析错误或设置不匹配。"], "levels2": ["包含约束", "数值约束", "数值约束", "包含约束", "包含约束", "包含约束", "文本样式约束", "多语言约束", "包含约束", "隐私约束", "语气风格约束", "语气风格约束", "包含约束", "包含约束"], "category": "trace1.0"} +{"id": "616", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "使用Python基于Scikit-learn框架修正一个错误的代码示例,确保数据预处理和模型训练的正确性,具体包括数据归一化处理和使用合适的损失函数。\n 代码应展示数据集前10行的描述性统计,验证数据预处理结果;\n 模型训练结果以JSON格式输出,包括模型超参数和分数;\n代码必须包含数据预处理(归一化)、模型训练、交叉验证、参数调整、特征重要性计算和结果可视化;\n 不得使用未经预处理的原始数据进行模型训练;\n数据集不存在缺失值,如有,应在预处理时处理;\n 至少引用一篇关于随机森林模型的科学文献;\n 代码遵循Python PEP 8格式规范;\n 结果以表格形式输出,包括模型参数、交叉验证得分和特征重要性;\n 提供数据集来源背景信息;\n描述预处理和模型训练的步骤;\n 结果使用Markdown格式表格输出;\n 代码按函数层次结构组织;\n 包含函数概览;\n 代码注释保持积极乐观的语气;\n 使用正式、专业语气,避免非正式表达。\n# Inputs:\n数据集包含两列:'Age'(年龄)和'Income'(收入),以及一个错误的代码示例,该示例直接使用原始数据训练模型,未进行归一化处理和交叉验证。\n"}], "type": "trace", "description": "使用Python基于Scikit-learn框架修正一个错误的代码示例,确保数据预处理和模型训练的正确性,具体包括数据归一化处理和使用合适的损失函数。", "constraints": " 代码应展示数据集前10行的描述性统计,验证数据预处理结果;\n 模型训练结果以JSON格式输出,包括模型超参数和分数;\n代码必须包含数据预处理(归一化)、模型训练、交叉验证、参数调整、特征重要性计算和结果可视化;\n 不得使用未经预处理的原始数据进行模型训练;\n数据集不存在缺失值,如有,应在预处理时处理;\n 至少引用一篇关于随机森林模型的科学文献;\n 代码遵循Python PEP 8格式规范;\n 结果以表格形式输出,包括模型参数、交叉验证得分和特征重要性;\n 提供数据集来源背景信息;\n描述预处理和模型训练的步骤;\n 结果使用Markdown格式表格输出;\n 代码按函数层次结构组织;\n 包含函数概览;\n 代码注释保持积极乐观的语气;\n 使用正式、专业语气,避免非正式表达。", "input": "数据集包含两列:'Age'(年龄)和'Income'(收入),以及一个错误的代码示例,该示例直接使用原始数据训练模型,未进行归一化处理和交叉验证。", "constraints_num": 15, "constraints_splits": [" 代码应展示数据集前10行的描述性统计,验证数据预处理结果;", " 模型训练结果以JSON格式输出,包括模型超参数和分数;", "代码必须包含数据预处理(归一化)、模型训练、交叉验证、参数调整、特征重要性计算和结果可视化;", " 不得使用未经预处理的原始数据进行模型训练;", "数据集不存在缺失值,如有,应在预处理时处理;", " 至少引用一篇关于随机森林模型的科学文献;", " 代码遵循Python PEP 8格式规范;", " 结果以表格形式输出,包括模型参数、交叉验证得分和特征重要性;", " 提供数据集来源背景信息;", "描述预处理和模型训练的步骤;", " 结果使用Markdown格式表格输出;", " 代码按函数层次结构组织;", " 包含函数概览;", " 代码注释保持积极乐观的语气;", " 使用正式、专业语气,避免非正式表达。"], "levels2": ["数值约束", "输出格式约束", "包含约束", "排除约束", "先验条件约束", "引用和参考约束", "语法结构约束", "输出格式约束", "文本背景信息约束", "自然语言流程背景信息约束", "输出格式约束", "层次化结构约束", "模版约束", "情感情绪约束", "语气风格约束"], "category": "trace1.0"} +{"id": "617", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "设计一个 Python 函数 `generate_multiples(n)`,该函数生成前 N 个能同时被 3 和 5 整除的正整数,并以列表形式返回结果。\nN 应当是一个非负整数,且 N 的取值范围应在 1 至 100 之间;\n函数应当在文档字符串中明确说明其功能和参数类型;\n函数的输出应当符合 Python 的列表格式;\n对于单元测试,需针对以下测试用例进行:\n- 正例约束(至少包含3个正例):\n输入 `n=5`,期望输出 `[15, 30, 45, 60, 75]`\n输入 `n=1`,期望输出 `[15]`\n输入 `n=10`,期望输出 `[15, 30, 45, 60, 75, 90, 105, 120, 135, 150]`\n- 负例约束(至少包含3个反例):\n输入 `n=0`,期望引发异常 `ValueError` 表明 N 必须大于 0。\n输入 `n=-1`,期望引发异常 `ValueError` 表明 N 必须大于 0。\n输入 `n=101`,期望引发异常 `ValueError` 表明 N 的范围超出 1 至 100;\n函数应遵循 Python 的 PEP8 编码规范;\n测试用例应该使用 Python 的 unittest 模块编写;\n测试代码应当为初级到中级的 Python 开发者编写,确保代码的可读性和文档的详尽性。\n"}], "type": "trace", "description": "设计一个 Python 函数 `generate_multiples(n)`,该函数生成前 N 个能同时被 3 和 5 整除的正整数,并以列表形式返回结果。", "constraints": "N 应当是一个非负整数,且 N 的取值范围应在 1 至 100 之间;\n函数应当在文档字符串中明确说明其功能和参数类型;\n函数的输出应当符合 Python 的列表格式;\n对于单元测试,需针对以下测试用例进行:\n- 正例约束(至少包含3个正例):\n输入 `n=5`,期望输出 `[15, 30, 45, 60, 75]`\n输入 `n=1`,期望输出 `[15]`\n输入 `n=10`,期望输出 `[15, 30, 45, 60, 75, 90, 105, 120, 135, 150]`\n- 负例约束(至少包含3个反例):\n输入 `n=0`,期望引发异常 `ValueError` 表明 N 必须大于 0。\n输入 `n=-1`,期望引发异常 `ValueError` 表明 N 必须大于 0。\n输入 `n=101`,期望引发异常 `ValueError` 表明 N 的范围超出 1 至 100;\n函数应遵循 Python 的 PEP8 编码规范;\n测试用例应该使用 Python 的 unittest 模块编写;\n测试代码应当为初级到中级的 Python 开发者编写,确保代码的可读性和文档的详尽性。", "input": "NULL", "constraints_num": 15, "constraints_splits": ["N 应当是一个非负整数,且 N 的取值范围应在 1 至 100 之间;", "函数应当在文档字符串中明确说明其功能和参数类型;", "函数的输出应当符合 Python 的列表格式;", "对于单元测试,需针对以下测试用例进行:", "- 正例约束(至少包含3个正例):", "输入 `n=5`,期望输出 `[15, 30, 45, 60, 75]`", "输入 `n=1`,期望输出 `[15]`", "输入 `n=10`,期望输出 `[15, 30, 45, 60, 75, 90, 105, 120, 135, 150]`", "- 负例约束(至少包含3个反例):", "输入 `n=0`,期望引发异常 `ValueError` 表明 N 必须大于 0。", "输入 `n=-1`,期望引发异常 `ValueError` 表明 N 必须大于 0。", "输入 `n=101`,期望引发异常 `ValueError` 表明 N 的范围超出 1 至 100;", "函数应遵循 Python 的 PEP8 编码规范;", "测试用例应该使用 Python 的 unittest 模块编写;", "测试代码应当为初级到中级的 Python 开发者编写,确保代码的可读性和文档的详尽性。"], "levels2": ["数值约束", "包含约束", "输出格式约束", "自然语言流程背景信息约束", "正例约束", "数值约束", "数值约束", "数值约束", "负例约束", "数值约束", "数值约束", "数值约束", "语法结构约束", "输出格式约束", "受众目标约束"], "category": "trace1.0"} +{"id": "618", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇关于如何改造浴室的详实指南,内容应覆盖浴室改造的步骤、技巧和注意事项,包含引言、改造步骤、设计与空间规划、材料选择、颜色搭配、照明设计、避免的误区以及案例分析。\n文章结构上,采用层次化结构,包括标题和子标题,确保信息清晰、有条理;\n至少引用5篇专业文章或视频教程作为支持;\n适合初级到中级的DIY爱好者,提供易于理解的术语和详细的步骤说明;\n在颜色搭配和照明设计部分使用文本样式,如粗体和斜体,突出关键信息;\n在案例分析部分使用表格,列出改造前后的对比照片和改造要点;\n避免使用任何可能侵犯隐私或违反价值观的细节和信息;\n在设计与空间规划部分使用markdown流程,列出改造浴室的步骤清单;\n在材料选择部分提供一系列材料选项及各自优缺点;\n在避免的误区部分列举常见的改造错误;\n在案例分析部分提供成功的浴室改造案例,并分析其成功的关键因素;\n在照明设计部分建议灯具数量和功率;\n遵循特定的引用格式或参考文献样式,如APA或MLA格式。\n# Inputs:\n请撰写一篇关于如何改造浴室的指南,文章应包括以下部分:引言、改造步骤、设计与空间规划、材料选择、颜色搭配、照明设计、避免的误区以及案例分析。在文章中引用的5篇专业文章或视频教程包括[[1](https://www.budgetdumpster.com/blog/remodel-bathroom-start-finish/)][[2](https://www.homedepot.com/c/ah/how-to-remodel-a-bathroom/9ba683603be9fa5395fab901422e17f9)][[3](https://www.familyhandyman.com/project/how-to-remodel-a-small-bathroom/)][[6](https://www.wikihow.com/Plan-a-Bathroom-Renovation)][[9](https://www.familyhandyman.com/article/dos-and-donts-of-a-bathroom-remodel/)]。在案例分析部分,可以参考[[4](https://www.youtube.com/watch?v=knBsMeDM5Ac)][[7](https://www.bhg.com/bathroom/remodeling/)][[8](https://www.youtube.com/watch?v=_Q8dq3KI47o)]。\n"}], "type": "trace", "description": "撰写一篇关于如何改造浴室的详实指南,内容应覆盖浴室改造的步骤、技巧和注意事项,包含引言、改造步骤、设计与空间规划、材料选择、颜色搭配、照明设计、避免的误区以及案例分析。", "constraints": "文章结构上,采用层次化结构,包括标题和子标题,确保信息清晰、有条理;\n至少引用5篇专业文章或视频教程作为支持;\n适合初级到中级的DIY爱好者,提供易于理解的术语和详细的步骤说明;\n在颜色搭配和照明设计部分使用文本样式,如粗体和斜体,突出关键信息;\n在案例分析部分使用表格,列出改造前后的对比照片和改造要点;\n避免使用任何可能侵犯隐私或违反价值观的细节和信息;\n在设计与空间规划部分使用markdown流程,列出改造浴室的步骤清单;\n在材料选择部分提供一系列材料选项及各自优缺点;\n在避免的误区部分列举常见的改造错误;\n在案例分析部分提供成功的浴室改造案例,并分析其成功的关键因素;\n在照明设计部分建议灯具数量和功率;\n遵循特定的引用格式或参考文献样式,如APA或MLA格式。", "input": "请撰写一篇关于如何改造浴室的指南,文章应包括以下部分:引言、改造步骤、设计与空间规划、材料选择、颜色搭配、照明设计、避免的误区以及案例分析。在文章中引用的5篇专业文章或视频教程包括[[1](https://www.budgetdumpster.com/blog/remodel-bathroom-start-finish/)][[2](https://www.homedepot.com/c/ah/how-to-remodel-a-bathroom/9ba683603be9fa5395fab901422e17f9)][[3](https://www.familyhandyman.com/project/how-to-remodel-a-small-bathroom/)][[6](https://www.wikihow.com/Plan-a-Bathroom-Renovation)][[9](https://www.familyhandyman.com/article/dos-and-donts-of-a-bathroom-remodel/)]。在案例分析部分,可以参考[[4](https://www.youtube.com/watch?v=knBsMeDM5Ac)][[7](https://www.bhg.com/bathroom/remodeling/)][[8](https://www.youtube.com/watch?v=_Q8dq3KI47o)]。", "constraints_num": 12, "constraints_splits": ["文章结构上,采用层次化结构,包括标题和子标题,确保信息清晰、有条理;", "至少引用5篇专业文章或视频教程作为支持;", "适合初级到中级的DIY爱好者,提供易于理解的术语和详细的步骤说明;", "在颜色搭配和照明设计部分使用文本样式,如粗体和斜体,突出关键信息;", "在案例分析部分使用表格,列出改造前后的对比照片和改造要点;", "避免使用任何可能侵犯隐私或违反价值观的细节和信息;", "在设计与空间规划部分使用markdown流程,列出改造浴室的步骤清单;", "在材料选择部分提供一系列材料选项及各自优缺点;", "在避免的误区部分列举常见的改造错误;", "在案例分析部分提供成功的浴室改造案例,并分析其成功的关键因素;", "在照明设计部分建议灯具数量和功率;", "遵循特定的引用格式或参考文献样式,如APA或MLA格式。"], "levels2": ["层次化结构约束", "引用和参考约束", "受众目标约束", "文本样式约束", "输出格式约束", "价值观约束", "markdown流程背景信息约束", "编号和列表约束", "包含约束", "包含约束", "包含约束", "引用和参考约束"], "category": "trace1.0"} +{"id": "619", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "使用jQuery实现一个成绩管理系统操作,要求在不刷新页面的情况下,实现成绩的新增与编辑。\n使用JSON格式存储和更新成绩数据,确保数据的一致性和可读性。\n系统应支持简体中文和英文界面,所有按钮标签需提供双语版本,用户可切换界面语言。\n学生成绩只能是0至100之间的整数,超出范围的输入应被系统自动校正。\n点击编辑按钮后,原本展示的“学号、姓名、成绩”应转变为可编辑的input框,输入框应具备失去焦点或按下回车键保存的功能。\njQuery代码应遵循语法规则,使用闭包保护数据,确保函数间数据不互相干扰。\n页面结构应清晰,使用HTML5语义化标签,确保良好的阅读体验和SEO友好性。\n系统必须包括成绩验证逻辑,确保输入成绩符合0-100分的要求。\n系统应禁止在编辑模式或新增模式下再次点击“新增”或“编辑”按钮,以避免操作混乱。\n点击“编辑”按钮后,原本显示的“学号123,姓名张三,成绩85”变成可编辑input框,失去焦点后,新的成绩值被保存。\n输入非数字字符或者超过100分的成绩,系统应不允许保存并提示错误。\n系统设计应考虑到教师和学生两个角色,教师拥有编辑和新增成绩的权限,学生只能查看成绩。\n在执行编辑操作前,系统应检查用户是否已登录,且具有编辑权限,否则应提示无权操作并阻止执行。\n"}], "type": "trace", "description": "使用jQuery实现一个成绩管理系统操作,要求在不刷新页面的情况下,实现成绩的新增与编辑。", "constraints": "使用JSON格式存储和更新成绩数据,确保数据的一致性和可读性。\n系统应支持简体中文和英文界面,所有按钮标签需提供双语版本,用户可切换界面语言。\n学生成绩只能是0至100之间的整数,超出范围的输入应被系统自动校正。\n点击编辑按钮后,原本展示的“学号、姓名、成绩”应转变为可编辑的input框,输入框应具备失去焦点或按下回车键保存的功能。\njQuery代码应遵循语法规则,使用闭包保护数据,确保函数间数据不互相干扰。\n页面结构应清晰,使用HTML5语义化标签,确保良好的阅读体验和SEO友好性。\n系统必须包括成绩验证逻辑,确保输入成绩符合0-100分的要求。\n系统应禁止在编辑模式或新增模式下再次点击“新增”或“编辑”按钮,以避免操作混乱。\n点击“编辑”按钮后,原本显示的“学号123,姓名张三,成绩85”变成可编辑input框,失去焦点后,新的成绩值被保存。\n输入非数字字符或者超过100分的成绩,系统应不允许保存并提示错误。\n系统设计应考虑到教师和学生两个角色,教师拥有编辑和新增成绩的权限,学生只能查看成绩。\n在执行编辑操作前,系统应检查用户是否已登录,且具有编辑权限,否则应提示无权操作并阻止执行。", "input": "NULL", "constraints_num": 12, "constraints_splits": ["使用JSON格式存储和更新成绩数据,确保数据的一致性和可读性。", "系统应支持简体中文和英文界面,所有按钮标签需提供双语版本,用户可切换界面语言。", "学生成绩只能是0至100之间的整数,超出范围的输入应被系统自动校正。", "点击编辑按钮后,原本展示的“学号、姓名、成绩”应转变为可编辑的input框,输入框应具备失去焦点或按下回车键保存的功能。", "jQuery代码应遵循语法规则,使用闭包保护数据,确保函数间数据不互相干扰。", "页面结构应清晰,使用HTML5语义化标签,确保良好的阅读体验和SEO友好性。", "系统必须包括成绩验证逻辑,确保输入成绩符合0-100分的要求。", "系统应禁止在编辑模式或新增模式下再次点击“新增”或“编辑”按钮,以避免操作混乱。", "点击“编辑”按钮后,原本显示的“学号123,姓名张三,成绩85”变成可编辑input框,失去焦点后,新的成绩值被保存。", "输入非数字字符或者超过100分的成绩,系统应不允许保存并提示错误。", "系统设计应考虑到教师和学生两个角色,教师拥有编辑和新增成绩的权限,学生只能查看成绩。", "在执行编辑操作前,系统应检查用户是否已登录,且具有编辑权限,否则应提示无权操作并阻止执行。"], "levels2": ["输出格式约束", "多语言约束", "数值约束", "自然语言流程背景信息约束", "语法结构约束", "输出格式约束", "数值约束", "排除约束", "自然语言流程背景信息约束", "数值约束", "角色扮演约束", "先验条件约束"], "category": "trace1.0"} +{"id": "620", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以科技行业分析师的角色分析科技对我们日常生活的影响,包括通讯、交通、娱乐、医疗、家庭生活等各个方面,从正面和负面两方面进行中立客观的评价,提出应对措施以充分利用科技的优势,避免其劣势。\n以科技行业分析师的角色进行分析;\n涉及通讯、交通、娱乐、医疗、家庭生活等方面;\n要求分析客观公正,避免使用不准确或未经证实的数据;\n报告包含引言、主体部分和结论;\n主体部分至少提供三个具体案例,报告总字数在1000-1500字之间,至少引用5篇相关领域的权威文献;\n面向非专业读者,避免使用过于复杂或专业化的术语;\n提供符合要求的正例;\n提供不符合要求的反例;\n采用正式学术语气;\n使用标准的学术论文格式;\n遵循清晰的语法结构。\n"}], "type": "trace", "description": "以科技行业分析师的角色分析科技对我们日常生活的影响,包括通讯、交通、娱乐、医疗、家庭生活等各个方面,从正面和负面两方面进行中立客观的评价,提出应对措施以充分利用科技的优势,避免其劣势。", "constraints": "以科技行业分析师的角色进行分析;\n涉及通讯、交通、娱乐、医疗、家庭生活等方面;\n要求分析客观公正,避免使用不准确或未经证实的数据;\n报告包含引言、主体部分和结论;\n主体部分至少提供三个具体案例,报告总字数在1000-1500字之间,至少引用5篇相关领域的权威文献;\n面向非专业读者,避免使用过于复杂或专业化的术语;\n提供符合要求的正例;\n提供不符合要求的反例;\n采用正式学术语气;\n使用标准的学术论文格式;\n遵循清晰的语法结构。", "input": "NULL", "constraints_num": 11, "constraints_splits": ["以科技行业分析师的角色进行分析;", "涉及通讯、交通、娱乐、医疗、家庭生活等方面;", "要求分析客观公正,避免使用不准确或未经证实的数据;", "报告包含引言、主体部分和结论;", "主体部分至少提供三个具体案例,报告总字数在1000-1500字之间,至少引用5篇相关领域的权威文献;", "面向非专业读者,避免使用过于复杂或专业化的术语;", "提供符合要求的正例;", "提供不符合要求的反例;", "采用正式学术语气;", "使用标准的学术论文格式;", "遵循清晰的语法结构。"], "levels2": ["角色扮演约束", "包含约束", "价值观约束", "层次化结构约束", "数值约束", "受众目标约束", "正例约束", "负例约束", "语气风格约束", "文本样式约束", "语法结构约束"], "category": "trace1.0"} +{"id": "621", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "在某些大学毕业典礼上结霜是否很常见?请以气象学专家的身份回答,并解释结霜现象在大学毕业典礼上的常见程度。\n解释中需包含温度、湿度和地表温度对结霜影响的信息;\n请以专业严谨的语气和风格进行解释。\n# Inputs:\n毕业典礼通常在春季或秋季举行,这两个季节的夜间温度可能降至冰点以下,尤其是在温带气候地区。在湿度高的夜晚,地表温度下降时,空气中的水分会在地面上凝结成霜。\n"}], "type": "trace", "description": "在某些大学毕业典礼上结霜是否很常见?请以气象学专家的身份回答,并解释结霜现象在大学毕业典礼上的常见程度。", "constraints": "解释中需包含温度、湿度和地表温度对结霜影响的信息;\n请以专业严谨的语气和风格进行解释。", "input": "毕业典礼通常在春季或秋季举行,这两个季节的夜间温度可能降至冰点以下,尤其是在温带气候地区。在湿度高的夜晚,地表温度下降时,空气中的水分会在地面上凝结成霜。", "constraints_num": 2, "constraints_splits": ["解释中需包含温度、湿度和地表温度对结霜影响的信息;", "请以专业严谨的语气和风格进行解释。"], "levels2": ["包含约束", "语气风格约束"], "category": "trace2.0"} +{"id": "622", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "解释幸福的本质是什么\n采用哲学学术的语气,深入浅出,让人读来既感亲切又满载智慧;\n在解释中务必包含个人经验的洞察与哲学视角的综合分析,使解释更加丰富和立体;\n"}], "type": "trace", "description": "解释幸福的本质是什么", "constraints": "采用哲学学术的语气,深入浅出,让人读来既感亲切又满载智慧;\n在解释中务必包含个人经验的洞察与哲学视角的综合分析,使解释更加丰富和立体;", "input": "NULL", "constraints_num": 2, "constraints_splits": ["采用哲学学术的语气,深入浅出,让人读来既感亲切又满载智慧;", "在解释中务必包含个人经验的洞察与哲学视角的综合分析,使解释更加丰富和立体;"], "levels2": ["语气风格约束", "包含约束"], "category": "trace2.0"} +{"id": "623", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "判断“十一月需按正常价格购买阅读”是否为真,基于给定的先验条件和背景信息。\n如果背景信息中提及了“十一月的阅读是特别促销,需额外付费”,则“十一月需按正常价格购买阅读”为真;\n如果背景信息中没有提及任何关于十一月的特别说明,我们应默认“十一月需按正常价格购买阅读”为真,除非有具体证据表明十一月的阅读是赠阅;\n# Inputs:\n文本背景信息:“十一月期间,由于是感恩节促销季,所有发行的阅读材料均需按原价购买,直至十二月才开始赠阅。”\n"}], "type": "trace", "description": "判断“十一月需按正常价格购买阅读”是否为真,基于给定的先验条件和背景信息。", "constraints": "如果背景信息中提及了“十一月的阅读是特别促销,需额外付费”,则“十一月需按正常价格购买阅读”为真;\n如果背景信息中没有提及任何关于十一月的特别说明,我们应默认“十一月需按正常价格购买阅读”为真,除非有具体证据表明十一月的阅读是赠阅;", "input": "文本背景信息:“十一月期间,由于是感恩节促销季,所有发行的阅读材料均需按原价购买,直至十二月才开始赠阅。”", "constraints_num": 2, "constraints_splits": ["如果背景信息中提及了“十一月的阅读是特别促销,需额外付费”,则“十一月需按正常价格购买阅读”为真;", "如果背景信息中没有提及任何关于十一月的特别说明,我们应默认“十一月需按正常价格购买阅读”为真,除非有具体证据表明十一月的阅读是赠阅;"], "levels2": ["先验条件约束", "先验条件约束"], "category": "trace2.0"} +{"id": "624", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "指导一个初学者如何钩织祖母方格\n输出格式为步骤列表;\n每个步骤都采用祈使句语法结构;\n"}], "type": "trace", "description": "指导一个初学者如何钩织祖母方格", "constraints": "输出格式为步骤列表;\n每个步骤都采用祈使句语法结构;", "input": "NULL", "constraints_num": 2, "constraints_splits": ["输出格式为步骤列表;", "每个步骤都采用祈使句语法结构;"], "levels2": ["编号和列表约束", "语法结构约束"], "category": "trace2.0"} +{"id": "625", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "如何将数字列表内容乘以2,并将结果更新回列表中?\n在执行此操作前,需确保列表中元素数量不少于5个,若少于5个则输出\"列表元素不足,无法进行操作\";\n操作完成后,结果需要以JSON格式返回列表内容,其中每一个元素的值都需要乘以2;\n"}], "type": "trace", "description": "如何将数字列表内容乘以2,并将结果更新回列表中?", "constraints": "在执行此操作前,需确保列表中元素数量不少于5个,若少于5个则输出\"列表元素不足,无法进行操作\";\n操作完成后,结果需要以JSON格式返回列表内容,其中每一个元素的值都需要乘以2;", "input": "NULL", "constraints_num": 2, "constraints_splits": ["在执行此操作前,需确保列表中元素数量不少于5个,若少于5个则输出\"列表元素不足,无法进行操作\";", "操作完成后,结果需要以JSON格式返回列表内容,其中每一个元素的值都需要乘以2;"], "levels2": ["数值约束", "输出格式约束"], "category": "trace2.0"} +{"id": "626", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "作为群晖NAS管理员,确保已经正确安装并启动了Docker应用后,实现外部网络访问群晖Docker的配置。\n最终结果以表格形式输出;\n表格中需包含步骤编号、操作描述、预期结果和操作人等信息;\n"}], "type": "trace", "description": "作为群晖NAS管理员,确保已经正确安装并启动了Docker应用后,实现外部网络访问群晖Docker的配置。", "constraints": "最终结果以表格形式输出;\n表格中需包含步骤编号、操作描述、预期结果和操作人等信息;", "input": "NULL", "constraints_num": 2, "constraints_splits": ["最终结果以表格形式输出;", "表格中需包含步骤编号、操作描述、预期结果和操作人等信息;"], "levels2": ["输出格式约束", "表格背景信息约束"], "category": "trace1.0"} +{"id": "627", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以数据库管理员的身份,提供如何在SQL中查询数据库版本的代码。\n查询后输出格式应为SQL语句代码形式。\n具体查询sql语句应包含\"SELECT\"和\"VERSION()\"关键字。\n"}], "type": "trace", "description": "以数据库管理员的身份,提供如何在SQL中查询数据库版本的代码。", "constraints": "查询后输出格式应为SQL语句代码形式。\n具体查询sql语句应包含\"SELECT\"和\"VERSION()\"关键字。", "input": "NULL", "constraints_num": 2, "constraints_splits": ["查询后输出格式应为SQL语句代码形式。", "具体查询sql语句应包含\"SELECT\"和\"VERSION()\"关键字。"], "levels2": ["输出格式约束", "包含约束"], "category": "trace2.0"} +{"id": "628", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "描述心肺复苏的有效标准,并具体指出下列选项中哪些标准是不包括的:自主循环恢复(ROSC)、患者对刺激有反应、心电活动恢复正常、氧饱和度低于90%。\n描述必须包含医学专业术语,如自主循环恢复(ROSC)、心电活动、氧饱和度等,描述时至少使用一个术语;\n在回答中,必须确保不包括的选项与描述的有效标准之间逻辑清晰,不存在矛盾;\n"}], "type": "trace", "description": "描述心肺复苏的有效标准,并具体指出下列选项中哪些标准是不包括的:自主循环恢复(ROSC)、患者对刺激有反应、心电活动恢复正常、氧饱和度低于90%。", "constraints": "描述必须包含医学专业术语,如自主循环恢复(ROSC)、心电活动、氧饱和度等,描述时至少使用一个术语;\n在回答中,必须确保不包括的选项与描述的有效标准之间逻辑清晰,不存在矛盾;", "input": "NULL", "constraints_num": 2, "constraints_splits": ["描述必须包含医学专业术语,如自主循环恢复(ROSC)、心电活动、氧饱和度等,描述时至少使用一个术语;", "在回答中,必须确保不包括的选项与描述的有效标准之间逻辑清晰,不存在矛盾;"], "levels2": ["包含约束", "排除约束"], "category": "trace1.0"} +{"id": "629", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "详细解释进行金融规划和分析的核心方法\n解释至少包含5个段落,且每个段落不少于200个单词;\n以编号列表的形式列出这些核心方法和解释,以便于理解和后续参考;\n"}], "type": "trace", "description": "详细解释进行金融规划和分析的核心方法", "constraints": "解释至少包含5个段落,且每个段落不少于200个单词;\n以编号列表的形式列出这些核心方法和解释,以便于理解和后续参考;", "input": "NULL", "constraints_num": 2, "constraints_splits": ["解释至少包含5个段落,且每个段落不少于200个单词;", "以编号列表的形式列出这些核心方法和解释,以便于理解和后续参考;"], "levels2": ["数值约束", "编号和列表约束"], "category": "trace1.0"} +{"id": "630", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以体育分析师的身份介绍NBA球员中有哪些说唱歌手,每位球员都必须有至少一张发行的说唱专辑。\n至少列出五位满足条件的球员;\n在介绍时提及球员的专辑名称和发行年份;\n"}], "type": "trace", "description": "以体育分析师的身份介绍NBA球员中有哪些说唱歌手,每位球员都必须有至少一张发行的说唱专辑。", "constraints": "至少列出五位满足条件的球员;\n在介绍时提及球员的专辑名称和发行年份;", "input": "NULL", "constraints_num": 2, "constraints_splits": ["至少列出五位满足条件的球员;", "在介绍时提及球员的专辑名称和发行年份;"], "levels2": ["数值约束", "包含约束"], "category": "trace1.0"} +{"id": "631", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以婚姻咨询师的角色,正式严谨地分析并回答问题列表\n采用正式的语气和严谨的语法结构;\n采用问题列表的形式,逐一解析上述问题;\n# Inputs:\n问题列表:\n1. 在不被外界干扰的情况下,为何呼叫特定名字(杜松犬)会引发负面情绪?\n2. 这种现象如何在您的个人经历中发生,并与您原本深爱的生活产生交集?\n3. 您的生活中出现了哪些变化,导致了对原本喜爱事物的反感?\n4. 您与伴侣之间的沟通渠道是否畅通?在无法理解对方需求时,是否尝试了有效的解决策略?\n5. 如何在尊重彼此需求的同时,找到共同的平衡点,保持和谐的生活状态?\n"}], "type": "trace", "description": "以婚姻咨询师的角色,正式严谨地分析并回答问题列表", "constraints": "采用正式的语气和严谨的语法结构;\n采用问题列表的形式,逐一解析上述问题;", "input": "问题列表:\n1. 在不被外界干扰的情况下,为何呼叫特定名字(杜松犬)会引发负面情绪?\n2. 这种现象如何在您的个人经历中发生,并与您原本深爱的生活产生交集?\n3. 您的生活中出现了哪些变化,导致了对原本喜爱事物的反感?\n4. 您与伴侣之间的沟通渠道是否畅通?在无法理解对方需求时,是否尝试了有效的解决策略?\n5. 如何在尊重彼此需求的同时,找到共同的平衡点,保持和谐的生活状态?", "constraints_num": 2, "constraints_splits": ["采用正式的语气和严谨的语法结构;", "采用问题列表的形式,逐一解析上述问题;"], "levels2": ["语气风格约束", "编号和列表约束"], "category": "trace1.0"} +{"id": "632", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "请扮演一个计算机科学教授的角色,以严谨正式、语气温和的方式,用一个具体的例子,比如定义一个结构体,来解释一下在编程中为什么别名在类型使用上更方便?\n请将你的回答以Markdown格式输出;\n其中回答中涉及到代码示例的地方需使用代码块进行高亮显示;\n"}], "type": "trace", "description": "请扮演一个计算机科学教授的角色,以严谨正式、语气温和的方式,用一个具体的例子,比如定义一个结构体,来解释一下在编程中为什么别名在类型使用上更方便?", "constraints": "请将你的回答以Markdown格式输出;\n其中回答中涉及到代码示例的地方需使用代码块进行高亮显示;", "input": "NULL", "constraints_num": 2, "constraints_splits": ["请将你的回答以Markdown格式输出;", "其中回答中涉及到代码示例的地方需使用代码块进行高亮显示;"], "levels2": ["输出格式约束", "输出格式约束"], "category": "trace2.0"} +{"id": "633", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "描述公司内部的员工投诉处理流程,特别关注作为管理人员如何遵循这一流程。\n以表格形式展示处理流程;\n表格需包括步骤、责任人、预期完成时间、处理结果四个部分。\n"}], "type": "trace", "description": "描述公司内部的员工投诉处理流程,特别关注作为管理人员如何遵循这一流程。", "constraints": "以表格形式展示处理流程;\n表格需包括步骤、责任人、预期完成时间、处理结果四个部分。", "input": "NULL", "constraints_num": 2, "constraints_splits": ["以表格形式展示处理流程;", "表格需包括步骤、责任人、预期完成时间、处理结果四个部分。"], "levels2": ["输出格式约束", "输出格式约束"], "category": "trace2.0"} +{"id": "634", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "角色扮演:你是一个专业的网络工程师,刚搬进新公寓,需要为家里添置第二台路由器来实现最佳网络覆盖。请从路由器角度出发,提供配置方案。\n输出格式:请将配置方案以表格形式呈现,包括以下列:设备名称、设备位置、设置参数、预期效果。\n确保设置参数设置正确,避免信号干扰和重叠,以实现最佳网络覆盖效果。\n"}], "type": "trace", "description": "角色扮演:你是一个专业的网络工程师,刚搬进新公寓,需要为家里添置第二台路由器来实现最佳网络覆盖。请从路由器角度出发,提供配置方案。", "constraints": "输出格式:请将配置方案以表格形式呈现,包括以下列:设备名称、设备位置、设置参数、预期效果。\n确保设置参数设置正确,避免信号干扰和重叠,以实现最佳网络覆盖效果。", "input": "NULL", "constraints_num": 2, "constraints_splits": ["输出格式:请将配置方案以表格形式呈现,包括以下列:设备名称、设备位置、设置参数、预期效果。", "确保设置参数设置正确,避免信号干扰和重叠,以实现最佳网络覆盖效果。"], "levels2": ["输出格式约束", "数值约束"], "category": "trace2.0"} +{"id": "635", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "提供至少5-6个适合初学者的经纪公司线索,这些公司以其用户友好的平台和教育初学者的资源而闻名。\n信息应以正式和专业的语气呈现;\n线索输出应格式化为有序列表,每个公司的名称后应跟随简短的描述,说明为什么它适合初学者;\n"}], "type": "trace", "description": "提供至少5-6个适合初学者的经纪公司线索,这些公司以其用户友好的平台和教育初学者的资源而闻名。", "constraints": "信息应以正式和专业的语气呈现;\n线索输出应格式化为有序列表,每个公司的名称后应跟随简短的描述,说明为什么它适合初学者;", "input": "NULL", "constraints_num": 2, "constraints_splits": ["信息应以正式和专业的语气呈现;", "线索输出应格式化为有序列表,每个公司的名称后应跟随简短的描述,说明为什么它适合初学者;"], "levels2": ["语气风格约束", "编号和列表约束"], "category": "trace1.0"} +{"id": "636", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "先将以下英文文本翻译成中文,然后将翻译后的中文文本按其内在逻辑或语义,以编号列表的形式重新排列。\n每个段落不得超过5句;\n在翻译过程中,应使用比喻和拟人等修辞手法,以增强文本的表现力和可读性;\n# Inputs:\n\"In the heart of the city, where the skyscrapers reach towards the heavens, there lies a small park. A green oasis, untouched by the concrete jungle that surrounds it. It's a place where time slows down, and the hustle and bustle of the city fades away. Here, the trees whisper secrets to each other, and the flowers dance in the gentle breeze. A world apart, yet connected by the invisible threads of life.\"\n"}], "type": "trace", "description": "先将以下英文文本翻译成中文,然后将翻译后的中文文本按其内在逻辑或语义,以编号列表的形式重新排列。", "constraints": "每个段落不得超过5句;\n在翻译过程中,应使用比喻和拟人等修辞手法,以增强文本的表现力和可读性;", "input": "\"In the heart of the city, where the skyscrapers reach towards the heavens, there lies a small park. A green oasis, untouched by the concrete jungle that surrounds it. It's a place where time slows down, and the hustle and bustle of the city fades away. Here, the trees whisper secrets to each other, and the flowers dance in the gentle breeze. A world apart, yet connected by the invisible threads of life.\"", "constraints_num": 2, "constraints_splits": ["每个段落不得超过5句;", "在翻译过程中,应使用比喻和拟人等修辞手法,以增强文本的表现力和可读性;"], "levels2": ["数值约束", "语言特征约束"], "category": "trace1.0"} +{"id": "637", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "假设你是来自2144年的时间旅行者,以一种科技感与未来感十足的语气,向现代人描述一下未来的世界\n描述至少包括五个方面未来技术或社会变革;\n未来技术或社会变革以项目符号列表的形式进行展示;\n"}], "type": "trace", "description": "假设你是来自2144年的时间旅行者,以一种科技感与未来感十足的语气,向现代人描述一下未来的世界", "constraints": "描述至少包括五个方面未来技术或社会变革;\n未来技术或社会变革以项目符号列表的形式进行展示;", "input": "NULL", "constraints_num": 2, "constraints_splits": ["描述至少包括五个方面未来技术或社会变革;", "未来技术或社会变革以项目符号列表的形式进行展示;"], "levels2": ["数值约束", "编号和列表约束"], "category": "trace2.0"} +{"id": "638", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "讲解如何判断字符串s是否为字符串t的子序列,如果s是t的子序列,如何找出s在t中的位置。\n解答必须包含至少3个示例代码;\n示例代码需要以表格的形式给出,包括代码示例、解释、结果三列;\n"}], "type": "trace", "description": "讲解如何判断字符串s是否为字符串t的子序列,如果s是t的子序列,如何找出s在t中的位置。", "constraints": "解答必须包含至少3个示例代码;\n示例代码需要以表格的形式给出,包括代码示例、解释、结果三列;", "input": "NULL", "constraints_num": 2, "constraints_splits": ["解答必须包含至少3个示例代码;", "示例代码需要以表格的形式给出,包括代码示例、解释、结果三列;"], "levels2": ["包含约束", "输出格式约束"], "category": "trace2.0"} +{"id": "639", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以科学教师的角色,向高中生和电影爱好者两个受众群体解释,3D电影中的图片为什么会有立体感。\n解释中应包含双目视差原理和人眼如何通过处理来自两个不同角度的图像来感知深度的科学细节;\n描述3D眼镜如何利用上述原理帮助我们在观看电影时模仿这种自然的视觉过程,创造出立体的视觉效果;\n"}], "type": "trace", "description": "以科学教师的角色,向高中生和电影爱好者两个受众群体解释,3D电影中的图片为什么会有立体感。", "constraints": "解释中应包含双目视差原理和人眼如何通过处理来自两个不同角度的图像来感知深度的科学细节;\n描述3D眼镜如何利用上述原理帮助我们在观看电影时模仿这种自然的视觉过程,创造出立体的视觉效果;", "input": "NULL", "constraints_num": 2, "constraints_splits": ["解释中应包含双目视差原理和人眼如何通过处理来自两个不同角度的图像来感知深度的科学细节;", "描述3D眼镜如何利用上述原理帮助我们在观看电影时模仿这种自然的视觉过程,创造出立体的视觉效果;"], "levels2": ["包含约束", "包含约束"], "category": "trace2.0"} +{"id": "640", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "详细解释一下网络安全的3A目标及其关系,扮演一个安全专家的角色来阐述\n确保详细解释部分至少包含3段文字,每段不少于100字;\n以表格的形式展示3A目标的具体内容和它们之间的关系;\n"}], "type": "trace", "description": "详细解释一下网络安全的3A目标及其关系,扮演一个安全专家的角色来阐述", "constraints": "确保详细解释部分至少包含3段文字,每段不少于100字;\n以表格的形式展示3A目标的具体内容和它们之间的关系;", "input": "NULL", "constraints_num": 2, "constraints_splits": ["确保详细解释部分至少包含3段文字,每段不少于100字;", "以表格的形式展示3A目标的具体内容和它们之间的关系;"], "levels2": ["数值约束", "输出格式约束"], "category": "trace1.0"} +{"id": "641", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "作为数字中国战略的推进者,进行一次深入的行业调研,了解当前数字化转型的进展、面临的挑战和机遇,然后依据调研结果,从行业数字化转型、信息安全、数字经济三个方面提出具体的措施和建议。\n建议需要以表格形式给出\n表格应包含措施名称、实施步骤、预期效果和风险评估等内容\n"}], "type": "trace", "description": "作为数字中国战略的推进者,进行一次深入的行业调研,了解当前数字化转型的进展、面临的挑战和机遇,然后依据调研结果,从行业数字化转型、信息安全、数字经济三个方面提出具体的措施和建议。", "constraints": "建议需要以表格形式给出\n表格应包含措施名称、实施步骤、预期效果和风险评估等内容", "input": "NULL", "constraints_num": 2, "constraints_splits": ["建议需要以表格形式给出", "表格应包含措施名称、实施步骤、预期效果和风险评估等内容"], "levels2": ["输出格式约束", "表格背景信息约束"], "category": "trace2.0"} +{"id": "642", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "如果你发现一位朋友总是过度关注自己的外表,试着以朋友的身份,用鼓励和理解的语气和她/他进行一次深入的对话。\n在对话中,确保包含以下至少三种正面心态的建议:强调每个人的独特之处,鼓励她/他接受自己的不完美;讨论内在品质的重要性,比如善良、智慧和诚实,这些才是构建长久关系的关键;鼓励参与能提升自信心的活动,比如体育或艺术,帮助她/他发现自己的价值不仅仅局限于外表;提醒她/他,真正的美丽来自于内在的自信和自我接纳;\n通过正面心态相关的对话,帮助你的朋友建立起更健康、更全面的自我认知;\n"}], "type": "trace", "description": "如果你发现一位朋友总是过度关注自己的外表,试着以朋友的身份,用鼓励和理解的语气和她/他进行一次深入的对话。", "constraints": "在对话中,确保包含以下至少三种正面心态的建议:强调每个人的独特之处,鼓励她/他接受自己的不完美;讨论内在品质的重要性,比如善良、智慧和诚实,这些才是构建长久关系的关键;鼓励参与能提升自信心的活动,比如体育或艺术,帮助她/他发现自己的价值不仅仅局限于外表;提醒她/他,真正的美丽来自于内在的自信和自我接纳;\n通过正面心态相关的对话,帮助你的朋友建立起更健康、更全面的自我认知;", "input": "NULL", "constraints_num": 2, "constraints_splits": ["在对话中,确保包含以下至少三种正面心态的建议:强调每个人的独特之处,鼓励她/他接受自己的不完美;讨论内在品质的重要性,比如善良、智慧和诚实,这些才是构建长久关系的关键;鼓励参与能提升自信心的活动,比如体育或艺术,帮助她/他发现自己的价值不仅仅局限于外表;提醒她/他,真正的美丽来自于内在的自信和自我接纳;", "通过正面心态相关的对话,帮助你的朋友建立起更健康、更全面的自我认知;"], "levels2": ["包含约束", "角色扮演约束"], "category": "trace2.0"} +{"id": "643", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以一位专业烧烤师的身份,详细描述如何清洁燃气烧烤炉\n清洁步骤包括但不限于以下五个步骤:一、确保烧烤炉完全冷却(至少等待1小时);二、拆卸烧烤炉的烤网和燃烧器盖,分别用软毛刷和肥皂水清洗,每个部位至少清洗3分钟;三、使用湿布擦拭烧烤炉内部表面,避免使用硬质刷子以免划伤;四、检查燃气管道和阀门,确保无泄露,检查时间不少于5分钟;五、重新装配烧烤炉,检查每个部件是否安装正确,确保烧烤炉使用安全;\n在描述清洗步骤时,语言风格需严谨正式,确保每个步骤的描述清晰无误,以保障用户安全;\n"}], "type": "trace", "description": "以一位专业烧烤师的身份,详细描述如何清洁燃气烧烤炉", "constraints": "清洁步骤包括但不限于以下五个步骤:一、确保烧烤炉完全冷却(至少等待1小时);二、拆卸烧烤炉的烤网和燃烧器盖,分别用软毛刷和肥皂水清洗,每个部位至少清洗3分钟;三、使用湿布擦拭烧烤炉内部表面,避免使用硬质刷子以免划伤;四、检查燃气管道和阀门,确保无泄露,检查时间不少于5分钟;五、重新装配烧烤炉,检查每个部件是否安装正确,确保烧烤炉使用安全;\n在描述清洗步骤时,语言风格需严谨正式,确保每个步骤的描述清晰无误,以保障用户安全;", "input": "NULL", "constraints_num": 2, "constraints_splits": ["清洁步骤包括但不限于以下五个步骤:一、确保烧烤炉完全冷却(至少等待1小时);二、拆卸烧烤炉的烤网和燃烧器盖,分别用软毛刷和肥皂水清洗,每个部位至少清洗3分钟;三、使用湿布擦拭烧烤炉内部表面,避免使用硬质刷子以免划伤;四、检查燃气管道和阀门,确保无泄露,检查时间不少于5分钟;五、重新装配烧烤炉,检查每个部件是否安装正确,确保烧烤炉使用安全;", "在描述清洗步骤时,语言风格需严谨正式,确保每个步骤的描述清晰无误,以保障用户安全;"], "levels2": ["自然语言流程背景信息约束", "语气风格约束"], "category": "trace1.0"} +{"id": "644", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "分析以下两句话的含义,并判断它们的意思是否相同\n排除直接比较的简单判断,而是要具体分析每个句子的含义\n在理解了每句话的含义后,判断它们的意思是否相同。选项:是的,不是。\n# Inputs:\n1. “你可以登录支付宝账号使用花呗”这句话的意思是用户具备登录支付宝账号并使用花呗的权限或功能;\n2. “花呗可以恢复使用”这句话的意思是花呗这一服务或功能处于可恢复或已经恢复的状态,可用于消费。\n"}], "type": "trace", "description": "分析以下两句话的含义,并判断它们的意思是否相同", "constraints": "排除直接比较的简单判断,而是要具体分析每个句子的含义\n在理解了每句话的含义后,判断它们的意思是否相同。选项:是的,不是。", "input": "1. “你可以登录支付宝账号使用花呗”这句话的意思是用户具备登录支付宝账号并使用花呗的权限或功能;\n2. “花呗可以恢复使用”这句话的意思是花呗这一服务或功能处于可恢复或已经恢复的状态,可用于消费。", "constraints_num": 2, "constraints_splits": ["排除直接比较的简单判断,而是要具体分析每个句子的含义", "在理解了每句话的含义后,判断它们的意思是否相同。选项:是的,不是。"], "levels2": ["排除约束", "文本样式约束"], "category": "trace2.0"} +{"id": "645", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "计算数学表达式 $1\\dfrac{15}{100} + \\dfrac{1}{50} + 1.175 = $\n答案保留到小数点后三位;\n将结果以LaTeX格式展示;\n"}], "type": "trace", "description": "计算数学表达式 $1\\dfrac{15}{100} + \\dfrac{1}{50} + 1.175 = $", "constraints": "答案保留到小数点后三位;\n将结果以LaTeX格式展示;", "input": "NULL", "constraints_num": 2, "constraints_splits": ["答案保留到小数点后三位;", "将结果以LaTeX格式展示;"], "levels2": ["数值约束", "输出格式约束"], "category": "trace1.0"} +{"id": "646", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "请从消费者和快递员两个角色出发,给出三个有关快递的建议,以提高快递服务质量。\n建议内容的字数应控制在50词以内;\n输出格式为表格,包括角色、建议内容、建议字数三个字段;\n"}], "type": "trace", "description": "请从消费者和快递员两个角色出发,给出三个有关快递的建议,以提高快递服务质量。", "constraints": "建议内容的字数应控制在50词以内;\n输出格式为表格,包括角色、建议内容、建议字数三个字段;", "input": "NULL", "constraints_num": 2, "constraints_splits": ["建议内容的字数应控制在50词以内;", "输出格式为表格,包括角色、建议内容、建议字数三个字段;"], "levels2": ["数值约束", "输出格式约束"], "category": "trace2.0"} +{"id": "647", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "请以金融分析师的角色解释“不可能三角原则”是什么,并给出具体案例,案例至少涉及两个国家的货币政策和汇率制度的对比分析,同时解释案例中如何体现了不可能三角原则的三个要素:固定汇率、独立的货币政策和资本自由流动;\n输出内容需以表格格式展示;\n表格中包含案例名称、涉及国家、货币政策描述、汇率制度描述、资本流动情况、不可能三角原则体现等栏目;\n"}], "type": "trace", "description": "请以金融分析师的角色解释“不可能三角原则”是什么,并给出具体案例,案例至少涉及两个国家的货币政策和汇率制度的对比分析,同时解释案例中如何体现了不可能三角原则的三个要素:固定汇率、独立的货币政策和资本自由流动;", "constraints": "输出内容需以表格格式展示;\n表格中包含案例名称、涉及国家、货币政策描述、汇率制度描述、资本流动情况、不可能三角原则体现等栏目;", "input": "NULL", "constraints_num": 2, "constraints_splits": ["输出内容需以表格格式展示;", "表格中包含案例名称、涉及国家、货币政策描述、汇率制度描述、资本流动情况、不可能三角原则体现等栏目;"], "levels2": ["输出格式约束", "表格背景信息约束"], "category": "trace2.0"} +{"id": "648", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "围绕美联储利率政策,详细回答鲍威尔担任美联储主席期间,美国联邦公开市场委员会将联邦基金目标利率下调的次数。\n回答时请确保使用主谓宾结构的句子;\n提供一个精确的数值作为答案;\n"}], "type": "trace", "description": "围绕美联储利率政策,详细回答鲍威尔担任美联储主席期间,美国联邦公开市场委员会将联邦基金目标利率下调的次数。", "constraints": "回答时请确保使用主谓宾结构的句子;\n提供一个精确的数值作为答案;", "input": "NULL", "constraints_num": 2, "constraints_splits": ["回答时请确保使用主谓宾结构的句子;", "提供一个精确的数值作为答案;"], "levels2": ["语法结构约束", "数值约束"], "category": "trace1.0"} +{"id": "649", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "作为一名组织行为学研究员,分析为什么上级领导明显的工作失误、违法违规的行为,作为下属的普遍选择装聋作哑,从管理者和下属的视角出发。\n以下至少三点原因需要以列表形式列出;\n每个原因需要引用相关研究或案例支持;\n"}], "type": "trace", "description": "作为一名组织行为学研究员,分析为什么上级领导明显的工作失误、违法违规的行为,作为下属的普遍选择装聋作哑,从管理者和下属的视角出发。", "constraints": "以下至少三点原因需要以列表形式列出;\n每个原因需要引用相关研究或案例支持;", "input": "NULL", "constraints_num": 2, "constraints_splits": ["以下至少三点原因需要以列表形式列出;", "每个原因需要引用相关研究或案例支持;"], "levels2": ["编号和列表约束", "引用和参考约束"], "category": "trace2.0"} +{"id": "650", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "讲一个发生在秋天的令人感动的故事\n以一个深度或表面的角色扮演方式,深度角色扮演则故事长度需达到1500字,表面角色扮演则故事长度需达到800字;\n采用温暖、感人的语气风格,让读者在阅读时能感受到故事中人物的内心情感。\n"}], "type": "trace", "description": "讲一个发生在秋天的令人感动的故事", "constraints": "以一个深度或表面的角色扮演方式,深度角色扮演则故事长度需达到1500字,表面角色扮演则故事长度需达到800字;\n采用温暖、感人的语气风格,让读者在阅读时能感受到故事中人物的内心情感。", "input": "NULL", "constraints_num": 2, "constraints_splits": ["以一个深度或表面的角色扮演方式,深度角色扮演则故事长度需达到1500字,表面角色扮演则故事长度需达到800字;", "采用温暖、感人的语气风格,让读者在阅读时能感受到故事中人物的内心情感。"], "levels2": ["角色扮演约束", "语气风格约束"], "category": "trace1.0"} +{"id": "651", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "计算表达式 $2.103 \\times 10^{-3} = {?} $ 的结果\n计算结果保留到小数点后五位;\n输出形式为科学计数法;\n"}], "type": "trace", "description": "计算表达式 $2.103 \\times 10^{-3} = {?} $ 的结果", "constraints": "计算结果保留到小数点后五位;\n输出形式为科学计数法;", "input": "NULL", "constraints_num": 2, "constraints_splits": ["计算结果保留到小数点后五位;", "输出形式为科学计数法;"], "levels2": ["数值约束", "输出格式约束"], "category": "trace1.0"} +{"id": "652", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "给定一个长度为3的数字列表,返回一个新的列表,其中包含原始列表的数字的两倍,且每个元素以特定格式呈现。\n输出结果必须是一个JSON格式的列表;\n列表中的每个元素都应是一个包含原数值和新数值的字典,格式为 {\"original\": 原数值, \"doubled\": 新数值};\n# Inputs:\n[1, 2, 3]\n"}], "type": "trace", "description": "给定一个长度为3的数字列表,返回一个新的列表,其中包含原始列表的数字的两倍,且每个元素以特定格式呈现。", "constraints": "输出结果必须是一个JSON格式的列表;\n列表中的每个元素都应是一个包含原数值和新数值的字典,格式为 {\"original\": 原数值, \"doubled\": 新数值};", "input": "[1, 2, 3]", "constraints_num": 2, "constraints_splits": ["输出结果必须是一个JSON格式的列表;", "列表中的每个元素都应是一个包含原数值和新数值的字典,格式为 {\"original\": 原数值, \"doubled\": 新数值};"], "levels2": ["输出格式约束", "输出格式约束"], "category": "trace1.0"} +{"id": "653", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以一个HTML5开发者的角色,采用专业且正式的语气风格,回答Canvas HTML5元素是什么?有什么作用?\n回答中需包含Canvas HTML5元素的历史发展、主要功能以及与其他图形库的比较;\n整个回答中主要功能方面的字数不超过500字;\n"}], "type": "trace", "description": "以一个HTML5开发者的角色,采用专业且正式的语气风格,回答Canvas HTML5元素是什么?有什么作用?", "constraints": "回答中需包含Canvas HTML5元素的历史发展、主要功能以及与其他图形库的比较;\n整个回答中主要功能方面的字数不超过500字;", "input": "NULL", "constraints_num": 2, "constraints_splits": ["回答中需包含Canvas HTML5元素的历史发展、主要功能以及与其他图形库的比较;", "整个回答中主要功能方面的字数不超过500字;"], "levels2": ["包含约束", "数值约束"], "category": "trace2.0"} +{"id": "654", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以历史教授的身份,详细讲解美国从哪些方面影响了世界战争的进程?面向大学生群体,内容需深入浅出,详细探讨美国的军事、经济、政治和外交对战争的影响。\n讲解语气需正式、严谨,避免使用非正式或简化的术语;\n确保内容的学术性和准确性。\n"}], "type": "trace", "description": "以历史教授的身份,详细讲解美国从哪些方面影响了世界战争的进程?面向大学生群体,内容需深入浅出,详细探讨美国的军事、经济、政治和外交对战争的影响。", "constraints": "讲解语气需正式、严谨,避免使用非正式或简化的术语;\n确保内容的学术性和准确性。", "input": "NULL", "constraints_num": 2, "constraints_splits": ["讲解语气需正式、严谨,避免使用非正式或简化的术语;", "确保内容的学术性和准确性。"], "levels2": ["语气风格约束", "语气风格约束"], "category": "trace1.0"} +{"id": "655", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "对给定的关于2023年智慧交通的四个说法进行详细分析和解释,判断其正确性。\n每个选项的分析至少需要200字的详细说明;\n分析中必须提及具体的技术细节或实际应用案例,否则分析将被视为不充分,被评为不合格。\n# Inputs:\nA. 智慧交通系统已在全球范围内广泛应用,显著提升了交通效率。\nB. 所有城市的交通信号灯都实现了智能化,可以实时调整红绿灯时长以优化交通流。\nC. 智能驾驶技术已完全成熟,所有的车辆都能够实现自动驾驶。\nD. 智慧交通系统能够预测交通拥堵,提前进行交通调度。\n"}], "type": "trace", "description": "对给定的关于2023年智慧交通的四个说法进行详细分析和解释,判断其正确性。", "constraints": "每个选项的分析至少需要200字的详细说明;\n分析中必须提及具体的技术细节或实际应用案例,否则分析将被视为不充分,被评为不合格。", "input": "A. 智慧交通系统已在全球范围内广泛应用,显著提升了交通效率。\nB. 所有城市的交通信号灯都实现了智能化,可以实时调整红绿灯时长以优化交通流。\nC. 智能驾驶技术已完全成熟,所有的车辆都能够实现自动驾驶。\nD. 智慧交通系统能够预测交通拥堵,提前进行交通调度。", "constraints_num": 2, "constraints_splits": ["每个选项的分析至少需要200字的详细说明;", "分析中必须提及具体的技术细节或实际应用案例,否则分析将被视为不充分,被评为不合格。"], "levels2": ["数值约束", "包含约束"], "category": "trace1.0"} +{"id": "656", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "用JS代码构造一个FizzBuzz函数\n函数应接受一个介于1到100之间的正整数作为输入;\n如果输入不在1到100之间,函数应返回 \"Invalid\n"}], "type": "trace", "description": "用JS代码构造一个FizzBuzz函数", "constraints": "函数应接受一个介于1到100之间的正整数作为输入;\n如果输入不在1到100之间,函数应返回 \"Invalid", "input": "NULL", "constraints_num": 2, "constraints_splits": ["函数应接受一个介于1到100之间的正整数作为输入;", "如果输入不在1到100之间,函数应返回 \"Invalid"], "levels2": ["数值约束", "数值约束"], "category": "trace2.0"} +{"id": "657", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "设计一道高二物理选择题,题目和选项需围绕电学基本概念。\n题目要求严谨正式,采用选择题的形式;\n选择题的正确答案需在解析中详细说明理由;\n"}], "type": "trace", "description": "设计一道高二物理选择题,题目和选项需围绕电学基本概念。", "constraints": "题目要求严谨正式,采用选择题的形式;\n选择题的正确答案需在解析中详细说明理由;", "input": "NULL", "constraints_num": 2, "constraints_splits": ["题目要求严谨正式,采用选择题的形式;", "选择题的正确答案需在解析中详细说明理由;"], "levels2": ["语气风格约束", "语法结构约束"], "category": "trace2.0"} +{"id": "658", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "作为一个要晋升的初中教师,在讲课的时候头部不自主地抖动,改如何缓解?\n在采取任何缓解措施前,请务必咨询医生以排除任何潜在的健康问题(价值观约束:安全第一);\n在整个缓解过程中,确保遵循专业建议,不采取任何可能影响健康或教学质量的措施(价值观约束:安全与教学质量并重);\n"}], "type": "trace", "description": "作为一个要晋升的初中教师,在讲课的时候头部不自主地抖动,改如何缓解?", "constraints": "在采取任何缓解措施前,请务必咨询医生以排除任何潜在的健康问题(价值观约束:安全第一);\n在整个缓解过程中,确保遵循专业建议,不采取任何可能影响健康或教学质量的措施(价值观约束:安全与教学质量并重);", "input": "NULL", "constraints_num": 2, "constraints_splits": ["在采取任何缓解措施前,请务必咨询医生以排除任何潜在的健康问题(价值观约束:安全第一);", "在整个缓解过程中,确保遵循专业建议,不采取任何可能影响健康或教学质量的措施(价值观约束:安全与教学质量并重);"], "levels2": ["价值观约束", "价值观约束"], "category": "trace1.0"} +{"id": "659", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "在足球比赛中,以一个经验丰富的教练或分析师的身份,解释为什么即使触地得分是主要的得分方式,四分卫也不能每次都把球扔到端区。\n确保解释中不包含任何关于足球规则的不准确性;\n在讨论具体原因之前,提供一个关于影响足球比赛战术的战术要素的简要概述,包括风险评估和平衡进攻策略的重要性。\n"}], "type": "trace", "description": "在足球比赛中,以一个经验丰富的教练或分析师的身份,解释为什么即使触地得分是主要的得分方式,四分卫也不能每次都把球扔到端区。", "constraints": "确保解释中不包含任何关于足球规则的不准确性;\n在讨论具体原因之前,提供一个关于影响足球比赛战术的战术要素的简要概述,包括风险评估和平衡进攻策略的重要性。", "input": "NULL", "constraints_num": 2, "constraints_splits": ["确保解释中不包含任何关于足球规则的不准确性;", "在讨论具体原因之前,提供一个关于影响足球比赛战术的战术要素的简要概述,包括风险评估和平衡进攻策略的重要性。"], "levels2": ["价值观约束", "层次化结构约束"], "category": "trace1.0"} +{"id": "660", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "从国际法专家的角度分析,日本的修改宪法是否危及了亚洲地区的和平?\njson中需要包含至少三个可信的国际来源的引用,以支持你的观点;\n最终答案需要使用JSON格式输出,例如:{\"question\": \"日本的修改宪法是否危及了亚洲地区的和平?\", \"answer\": \"根据国际法和亚洲地区的和平局势,......\", \"references\": [{\"source\": \"联合国宪章\", \"link\": \"https://www.un.org/zh/documents/charter/charter.pdf\"}, {\"source\": \"国际法院判决\", \"link\": \"https://www.icj-cij.org/en/case/15\"}, {\"source\": \"国际法专家观点\", \"link\": \"https://www.example.com/article\"}]}\n"}], "type": "trace", "description": "从国际法专家的角度分析,日本的修改宪法是否危及了亚洲地区的和平?", "constraints": "json中需要包含至少三个可信的国际来源的引用,以支持你的观点;\n最终答案需要使用JSON格式输出,例如:{\"question\": \"日本的修改宪法是否危及了亚洲地区的和平?\", \"answer\": \"根据国际法和亚洲地区的和平局势,......\", \"references\": [{\"source\": \"联合国宪章\", \"link\": \"https://www.un.org/zh/documents/charter/charter.pdf\"}, {\"source\": \"国际法院判决\", \"link\": \"https://www.icj-cij.org/en/case/15\"}, {\"source\": \"国际法专家观点\", \"link\": \"https://www.example.com/article\"}]}", "input": "NULL", "constraints_num": 2, "constraints_splits": ["json中需要包含至少三个可信的国际来源的引用,以支持你的观点;", "最终答案需要使用JSON格式输出,例如:{\"question\": \"日本的修改宪法是否危及了亚洲地区的和平?\", \"answer\": \"根据国际法和亚洲地区的和平局势,......\", \"references\": [{\"source\": \"联合国宪章\", \"link\": \"https://www.un.org/zh/documents/charter/charter.pdf\"}, {\"source\": \"国际法院判决\", \"link\": \"https://www.icj-cij.org/en/case/15\"}, {\"source\": \"国际法专家观点\", \"link\": \"https://www.example.com/article\"}]}"], "levels2": ["引用和参考约束", "输出格式约束"], "category": "trace2.0"} +{"id": "661", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "作为数据库管理员,您需要了解 SQL Server 中 SQL 的执行计划缓存对系统性能的影响。请回答 SQL Server 中是否有 SQL 的执行计划缓存,以及它如何工作。\n回答中需要包含 SQL 执行计划缓存的以下技术细节:缓存大小、缓存生命周期、缓存项的淘汰策略;\n技术细节以表格形式呈现;\n"}], "type": "trace", "description": "作为数据库管理员,您需要了解 SQL Server 中 SQL 的执行计划缓存对系统性能的影响。请回答 SQL Server 中是否有 SQL 的执行计划缓存,以及它如何工作。", "constraints": "回答中需要包含 SQL 执行计划缓存的以下技术细节:缓存大小、缓存生命周期、缓存项的淘汰策略;\n技术细节以表格形式呈现;", "input": "NULL", "constraints_num": 2, "constraints_splits": ["回答中需要包含 SQL 执行计划缓存的以下技术细节:缓存大小、缓存生命周期、缓存项的淘汰策略;", "技术细节以表格形式呈现;"], "levels2": ["包含约束", "输出格式约束"], "category": "trace2.0"} +{"id": "662", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "思考下列场景,并从CEO和研发副总裁的角度出发分析问题\n分析CEO是否是故意帮助环境的\n回答必须以表格形式呈现,表格应包含以下列:情境描述、CEO的立场、是否故意帮助环境\n# Inputs:\n场景:“一家公司的CEO坐在办公室里,他的研发副总裁走进来说:“我们正在考虑启动一个新的项目。它将帮助我们增加利润,且也会有助于环境。” CEO回答说他不关心对环境的帮助,只想尽可能地赚钱。最终该项目得到了执行,且获得了利润,同时环境也受到了帮助。”\n"}], "type": "trace", "description": "思考下列场景,并从CEO和研发副总裁的角度出发分析问题", "constraints": "分析CEO是否是故意帮助环境的\n回答必须以表格形式呈现,表格应包含以下列:情境描述、CEO的立场、是否故意帮助环境", "input": "场景:“一家公司的CEO坐在办公室里,他的研发副总裁走进来说:“我们正在考虑启动一个新的项目。它将帮助我们增加利润,且也会有助于环境。” CEO回答说他不关心对环境的帮助,只想尽可能地赚钱。最终该项目得到了执行,且获得了利润,同时环境也受到了帮助。”", "constraints_num": 2, "constraints_splits": ["分析CEO是否是故意帮助环境的", "回答必须以表格形式呈现,表格应包含以下列:情境描述、CEO的立场、是否故意帮助环境"], "levels2": ["主题约束", "输出格式约束"], "category": "trace2.0"} +{"id": "663", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "针对在英国旅游的中国游客,列出至少5种常用的支付软件。\n需要以表格形式展示软件信息,包括软件名称、是否支持人民币支付、使用要点等;\n回答总字数不超过200字;\n"}], "type": "trace", "description": "针对在英国旅游的中国游客,列出至少5种常用的支付软件。", "constraints": "需要以表格形式展示软件信息,包括软件名称、是否支持人民币支付、使用要点等;\n回答总字数不超过200字;", "input": "NULL", "constraints_num": 2, "constraints_splits": ["需要以表格形式展示软件信息,包括软件名称、是否支持人民币支付、使用要点等;", "回答总字数不超过200字;"], "levels2": ["输出格式约束", "数值约束"], "category": "trace1.0"} +{"id": "664", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "下载程序并执行指定的4x4二维矩阵的转置。\n转置后的矩阵需要以Markdown表格的形式展示;\n转置后的矩阵表格第一行元素之和应大于10;\n# Inputs:\n| 1 | 2 | 3 | 4 |\n| --- | --- | --- | --- |\n| 5 | 6 | 7 | 8 |\n| 9 | 10 | 11 | 12 |\n| 13 | 14 | 15 | 16 |\n"}], "type": "trace", "description": "下载程序并执行指定的4x4二维矩阵的转置。", "constraints": "转置后的矩阵需要以Markdown表格的形式展示;\n转置后的矩阵表格第一行元素之和应大于10;", "input": "| 1 | 2 | 3 | 4 |\n| --- | --- | --- | --- |\n| 5 | 6 | 7 | 8 |\n| 9 | 10 | 11 | 12 |\n| 13 | 14 | 15 | 16 |", "constraints_num": 2, "constraints_splits": ["转置后的矩阵需要以Markdown表格的形式展示;", "转置后的矩阵表格第一行元素之和应大于10;"], "levels2": ["输出格式约束", "数值约束"], "category": "trace2.0"} +{"id": "665", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为系统管理员、IT经理和数据保护官员制定一份有序的、结构化的备份和归档策略。\n策略应包含以下元素,并使用有序列表和子标题以确保清晰和易读;\n所有策略必须清晰地列明,并按照优先级和流程顺序排列,以便于IT团队和数据保护官员理解和执行;\n# Inputs:\n1. 基础架构要求\n    - 硬件和软件需求\n    - 网络和存储架构\n2. 备份和恢复工具的选型\n    - 评估和选择标准\n    - 推荐工具和替代方案\n3. 备份频率\n    - 完全备份的周期\n    - 增量备份的规则\n4. 干扰最小的备份窗口规划\n    - 业务影响分析\n    - 调度和自动化策略\n5. 确保数据完整性和可恢复性的测试和审查流程\n    - 数据验证方法\n    - 定期审查和演练\n6. 备份数据的保留期限及监管遵从性要求\n    - 法规和行业标准\n    - 数据分类和保留政策\n7. 灾难恢复计划\n    - 现场和异地恢复方案\n    - 关键业务流程的恢复时间目标(RTO)和恢复点目标(RPO)\n8. 培训和意识提升计划\n    - 员工培训计划\n    - 定期意识提升活动\n"}], "type": "trace", "description": "为系统管理员、IT经理和数据保护官员制定一份有序的、结构化的备份和归档策略。", "constraints": "策略应包含以下元素,并使用有序列表和子标题以确保清晰和易读;\n所有策略必须清晰地列明,并按照优先级和流程顺序排列,以便于IT团队和数据保护官员理解和执行;", "input": "1. 基础架构要求\n    - 硬件和软件需求\n    - 网络和存储架构\n2. 备份和恢复工具的选型\n    - 评估和选择标准\n    - 推荐工具和替代方案\n3. 备份频率\n    - 完全备份的周期\n    - 增量备份的规则\n4. 干扰最小的备份窗口规划\n    - 业务影响分析\n    - 调度和自动化策略\n5. 确保数据完整性和可恢复性的测试和审查流程\n    - 数据验证方法\n    - 定期审查和演练\n6. 备份数据的保留期限及监管遵从性要求\n    - 法规和行业标准\n    - 数据分类和保留政策\n7. 灾难恢复计划\n    - 现场和异地恢复方案\n    - 关键业务流程的恢复时间目标(RTO)和恢复点目标(RPO)\n8. 培训和意识提升计划\n    - 员工培训计划\n    - 定期意识提升活动", "constraints_num": 2, "constraints_splits": ["策略应包含以下元素,并使用有序列表和子标题以确保清晰和易读;", "所有策略必须清晰地列明,并按照优先级和流程顺序排列,以便于IT团队和数据保护官员理解和执行;"], "levels2": ["层次化结构约束", "编号和列表约束"], "category": "trace2.0"} +{"id": "666", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "在《like a ....》这个句型中,一般用在形容人或者事物上,其后会跟一个名词,用以描述前文的意思,请举出三个例子,这些例子需采用幽默的语气风格\n基于以下文本背景信息进行创作:\"在一个阳光明媚的下午,花园里的派对上,各种有趣的比喻和比喻层出不穷。\"\n每个例子的描述部分不超过20个单词\n"}], "type": "trace", "description": "在《like a ....》这个句型中,一般用在形容人或者事物上,其后会跟一个名词,用以描述前文的意思,请举出三个例子,这些例子需采用幽默的语气风格", "constraints": "基于以下文本背景信息进行创作:\"在一个阳光明媚的下午,花园里的派对上,各种有趣的比喻和比喻层出不穷。\"\n每个例子的描述部分不超过20个单词", "input": "NULL", "constraints_num": 2, "constraints_splits": ["基于以下文本背景信息进行创作:\"在一个阳光明媚的下午,花园里的派对上,各种有趣的比喻和比喻层出不穷。\"", "每个例子的描述部分不超过20个单词"], "levels2": ["文本背景信息约束", "数值约束"], "category": "trace1.0"} +{"id": "667", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "作为一位专业程序员,识别并采用单个(1到5个)和多个(大于5个)位 centerX 和 centerY 的标志更新 x_ 和 y_ data members。在更新后,记录更新的次数和每个标志的位置,以便进行后续的调试和日志记录。\n在更新之前,确保每个标志都是有效的,即 centerX 和 centerY 的值应在预设的界限之内(例如,0 <= centerX <= 100, 0 <= centerY <= 100);\n确保代码的执行效率和准确性;\n"}], "type": "trace", "description": "作为一位专业程序员,识别并采用单个(1到5个)和多个(大于5个)位 centerX 和 centerY 的标志更新 x_ 和 y_ data members。在更新后,记录更新的次数和每个标志的位置,以便进行后续的调试和日志记录。", "constraints": "在更新之前,确保每个标志都是有效的,即 centerX 和 centerY 的值应在预设的界限之内(例如,0 <= centerX <= 100, 0 <= centerY <= 100);\n确保代码的执行效率和准确性;", "input": "NULL", "constraints_num": 2, "constraints_splits": ["在更新之前,确保每个标志都是有效的,即 centerX 和 centerY 的值应在预设的界限之内(例如,0 <= centerX <= 100, 0 <= centerY <= 100);", "确保代码的执行效率和准确性;"], "levels2": ["数值约束", "价值观约束"], "category": "trace1.0"} +{"id": "668", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "探讨源自Professor Layton系列中的数学与逻辑问题,分析其背后的数学原理,判断字符串面板S通过执行“Layton操作”是否能够被完全排序到字母序的倒序状态。\n采取专业学术的语气和风格,确保每一个步骤、每一个论证都严谨精确,符合学术研究的高标准。\n最终的结果将以LaTeX格式输出,包括但不限于数学公式、定理证明、算法描述等,以符合学术论文的规范。\n# Inputs:\n一个字符串面板S,玩家可以执行“Layton操作”:选择面板上字符串S的任意连续部分[i,j],并将其复位反转为原长度的排列串[i,j],操作次数为Q次,目标是使S按字母序倒序排列。\n"}], "type": "trace", "description": "探讨源自Professor Layton系列中的数学与逻辑问题,分析其背后的数学原理,判断字符串面板S通过执行“Layton操作”是否能够被完全排序到字母序的倒序状态。", "constraints": "采取专业学术的语气和风格,确保每一个步骤、每一个论证都严谨精确,符合学术研究的高标准。\n最终的结果将以LaTeX格式输出,包括但不限于数学公式、定理证明、算法描述等,以符合学术论文的规范。", "input": "一个字符串面板S,玩家可以执行“Layton操作”:选择面板上字符串S的任意连续部分[i,j],并将其复位反转为原长度的排列串[i,j],操作次数为Q次,目标是使S按字母序倒序排列。", "constraints_num": 2, "constraints_splits": ["采取专业学术的语气和风格,确保每一个步骤、每一个论证都严谨精确,符合学术研究的高标准。", "最终的结果将以LaTeX格式输出,包括但不限于数学公式、定理证明、算法描述等,以符合学术论文的规范。"], "levels2": ["语气风格约束", "输出格式约束"], "category": "trace1.0"} +{"id": "669", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以医学专家的身份,回答以下哪种病症不显示多因素遗传?\n在回答中,请对每个选项简要说明其遗传特性;\n回答保证回答不超过200字;\n# Inputs:\n(A)幽门螺杆菌病 (B)精神分裂症 (C)脊柱裂(神经管缺陷) (D)马凡斯综合征\n"}], "type": "trace", "description": "以医学专家的身份,回答以下哪种病症不显示多因素遗传?", "constraints": "在回答中,请对每个选项简要说明其遗传特性;\n回答保证回答不超过200字;", "input": "(A)幽门螺杆菌病 (B)精神分裂症 (C)脊柱裂(神经管缺陷) (D)马凡斯综合征", "constraints_num": 2, "constraints_splits": ["在回答中,请对每个选项简要说明其遗传特性;", "回答保证回答不超过200字;"], "levels2": ["包含约束", "数值约束"], "category": "trace2.0"} +{"id": "670", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "用一个段落,至少150字,以生动幽默的语言解释为什么鸭子能同时游泳和飞行,确保答案中包含鸭子的生理结构特点和行为习惯,以及这些特性如何帮助它们在不同环境中生存。\n解释需要保持科学准确性;\n避免任何可能误导读者的信息;\n"}], "type": "trace", "description": "用一个段落,至少150字,以生动幽默的语言解释为什么鸭子能同时游泳和飞行,确保答案中包含鸭子的生理结构特点和行为习惯,以及这些特性如何帮助它们在不同环境中生存。", "constraints": "解释需要保持科学准确性;\n避免任何可能误导读者的信息;", "input": "NULL", "constraints_num": 2, "constraints_splits": ["解释需要保持科学准确性;", "避免任何可能误导读者的信息;"], "levels2": ["价值观约束", "价值观约束"], "category": "trace1.0"} +{"id": "671", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以当地企业家的视角,分析2022年在家乡梅州,大宗商品供应商和农业产业这两个领域存在的现状和挑战。\n分析时应首先详细说明这两个领域在2022年的具体状况,包括经济规模、主要企业、产业链构成等;\n需要分析当前面临的挑战,包括但不限于市场竞争、政策变化、技术瓶颈等;\n最后,从企业家视角提出应对策略,包括如何在保持竞争力的同时,应对市场波动,促进产业的持续健康发展;\n# Inputs:\n- **历史背景**:2014年之前,梅州的经济活动主要集中在木薯种植上,但近年来,大宗商品供应商和农业产业开始崭露头角,成为当地经济的新支柱。\n- **全球市场依赖**:这两个产业的繁荣与全球市场的稳定紧密相关,外来投资为当地带来了就业机会,但也带来了市场竞争的压力。\n"}], "type": "trace", "description": "以当地企业家的视角,分析2022年在家乡梅州,大宗商品供应商和农业产业这两个领域存在的现状和挑战。", "constraints": "分析时应首先详细说明这两个领域在2022年的具体状况,包括经济规模、主要企业、产业链构成等;\n需要分析当前面临的挑战,包括但不限于市场竞争、政策变化、技术瓶颈等;\n最后,从企业家视角提出应对策略,包括如何在保持竞争力的同时,应对市场波动,促进产业的持续健康发展;", "input": "- **历史背景**:2014年之前,梅州的经济活动主要集中在木薯种植上,但近年来,大宗商品供应商和农业产业开始崭露头角,成为当地经济的新支柱。\n- **全球市场依赖**:这两个产业的繁荣与全球市场的稳定紧密相关,外来投资为当地带来了就业机会,但也带来了市场竞争的压力。", "constraints_num": 3, "constraints_splits": ["分析时应首先详细说明这两个领域在2022年的具体状况,包括经济规模、主要企业、产业链构成等;", "需要分析当前面临的挑战,包括但不限于市场竞争、政策变化、技术瓶颈等;", "最后,从企业家视角提出应对策略,包括如何在保持竞争力的同时,应对市场波动,促进产业的持续健康发展;"], "levels2": ["包含约束", "主题约束", "角色扮演约束"], "category": "trace1.0"} +{"id": "672", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "根据材料分析与评价女性就业现状并提出建议,扮演一名拥有丰富职场经验的女性导师,为即将进入职场的女性大学毕业生小李提供指导。\n分析当前女性就业现状,特别关注城市与农村女性就业率的差异、职场歧视问题以及工资收入水平的性别差异;\n输出格式应以表格形式呈现,包括问题概述、具体分析、建议措施等栏目,确保内容清晰、有条理;\n提出的建议应帮助小李更好地规划职业道路和提升自我价值。\n# Inputs:\n小李对职场的性别歧视和不公平待遇感到担忧,希望在就业前能有更充分的准备和应对策略。\n"}], "type": "trace", "description": "根据材料分析与评价女性就业现状并提出建议,扮演一名拥有丰富职场经验的女性导师,为即将进入职场的女性大学毕业生小李提供指导。", "constraints": "分析当前女性就业现状,特别关注城市与农村女性就业率的差异、职场歧视问题以及工资收入水平的性别差异;\n输出格式应以表格形式呈现,包括问题概述、具体分析、建议措施等栏目,确保内容清晰、有条理;\n提出的建议应帮助小李更好地规划职业道路和提升自我价值。", "input": "小李对职场的性别歧视和不公平待遇感到担忧,希望在就业前能有更充分的准备和应对策略。", "constraints_num": 3, "constraints_splits": ["分析当前女性就业现状,特别关注城市与农村女性就业率的差异、职场歧视问题以及工资收入水平的性别差异;", "输出格式应以表格形式呈现,包括问题概述、具体分析、建议措施等栏目,确保内容清晰、有条理;", "提出的建议应帮助小李更好地规划职业道路和提升自我价值。"], "levels2": ["主题约束", "输出格式约束", "受众目标约束"], "category": "trace2.0"} +{"id": "673", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "解释为什么肉类烹饪的温度要比其他类别的食物更高\n以食品安全专家的身份进行解释;\n字数在500到700字之间;\n在解释中至少引用两篇相关的科学文献,以支持论点。\n"}], "type": "trace", "description": "解释为什么肉类烹饪的温度要比其他类别的食物更高", "constraints": "以食品安全专家的身份进行解释;\n字数在500到700字之间;\n在解释中至少引用两篇相关的科学文献,以支持论点。", "input": "NULL", "constraints_num": 3, "constraints_splits": ["以食品安全专家的身份进行解释;", "字数在500到700字之间;", "在解释中至少引用两篇相关的科学文献,以支持论点。"], "levels2": ["角色扮演约束", "数值约束", "引用和参考约束"], "category": "trace1.0"} +{"id": "674", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "给定一篇文章中的5个关键字,使用这些关键字找出文章中与之相关的最多10个句子,并将这些句子以JSON格式输出。\n输出的句子需与给定的5个关键字相关;\n输出的句子数量最多为10句;\n输出格式为JSON,包含一个名为\"相关句子\"的字段,该字段值为一个字符串数组。\n# Inputs:\n{\n  \"文章标题\": \"探索深海:海洋生物的奥秘\",\n  \"文章摘要\": \"深海领域隐藏着无数未解之谜,本文将带你一探深海生物的奇妙世界。从巨大的深海鲸鱼到微小的浮游生物,每一种生物都拥有自己独特的生存策略。\",\n  \"关键字\": [\"深海生物\", \"生存策略\", \"未解之谜\", \"深海鲸鱼\", \"浮游生物\"]\n}\n"}], "type": "trace", "description": "给定一篇文章中的5个关键字,使用这些关键字找出文章中与之相关的最多10个句子,并将这些句子以JSON格式输出。", "constraints": "输出的句子需与给定的5个关键字相关;\n输出的句子数量最多为10句;\n输出格式为JSON,包含一个名为\"相关句子\"的字段,该字段值为一个字符串数组。", "input": "{\n  \"文章标题\": \"探索深海:海洋生物的奥秘\",\n  \"文章摘要\": \"深海领域隐藏着无数未解之谜,本文将带你一探深海生物的奇妙世界。从巨大的深海鲸鱼到微小的浮游生物,每一种生物都拥有自己独特的生存策略。\",\n  \"关键字\": [\"深海生物\", \"生存策略\", \"未解之谜\", \"深海鲸鱼\", \"浮游生物\"]\n}", "constraints_num": 3, "constraints_splits": ["输出的句子需与给定的5个关键字相关;", "输出的句子数量最多为10句;", "输出格式为JSON,包含一个名为\"相关句子\"的字段,该字段值为一个字符串数组。"], "levels2": ["包含约束", "数值约束", "输出格式约束"], "category": "trace1.0"} +{"id": "675", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "详细介绍挪威的皇室体系,包括其历史背景、皇室成员的职责以及皇室在挪威现代社会中的角色。\n输出格式应为Markdown格式的报告;\n报告中应包含标题、子标题、列表和引用;\n确保报告中每个部分都有清晰的引用和参考文献,以支持所述信息的准确性。\n"}], "type": "trace", "description": "详细介绍挪威的皇室体系,包括其历史背景、皇室成员的职责以及皇室在挪威现代社会中的角色。", "constraints": "输出格式应为Markdown格式的报告;\n报告中应包含标题、子标题、列表和引用;\n确保报告中每个部分都有清晰的引用和参考文献,以支持所述信息的准确性。", "input": "NULL", "constraints_num": 3, "constraints_splits": ["输出格式应为Markdown格式的报告;", "报告中应包含标题、子标题、列表和引用;", "确保报告中每个部分都有清晰的引用和参考文献,以支持所述信息的准确性。"], "levels2": ["输出格式约束", "层次化结构约束", "引用和参考约束"], "category": "trace2.0"} +{"id": "676", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "解释以下诗句中的隐喻\n首先解释隐喻的字面意义,然后是隐喻的深层含义,最后是隐喻的作用和效果;\n输出格式应为JSON;\n需要指出这句诗出自哪里,并在JSON格式中包含“出处”字段;\n# Inputs:\n“丈夫志四海,万里犹比邻”。\n"}], "type": "trace", "description": "解释以下诗句中的隐喻", "constraints": "首先解释隐喻的字面意义,然后是隐喻的深层含义,最后是隐喻的作用和效果;\n输出格式应为JSON;\n需要指出这句诗出自哪里,并在JSON格式中包含“出处”字段;", "input": "“丈夫志四海,万里犹比邻”。", "constraints_num": 3, "constraints_splits": ["首先解释隐喻的字面意义,然后是隐喻的深层含义,最后是隐喻的作用和效果;", "输出格式应为JSON;", "需要指出这句诗出自哪里,并在JSON格式中包含“出处”字段;"], "levels2": ["层次化结构约束", "输出格式约束", "输出格式约束"], "category": "trace2.0"} +{"id": "677", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "使用科学计算器计算cos(3.141592653) 和 cos(3.141592653*2)的值。\n计算需精确到小数点后10位。\n对于cos(3.141592653) 的计算,如果结果小于0.000001,将其四舍五入为0。\n对于cos(3.141592653*2)的计算,如果结果小于-0.999999,将其四舍五入为-1。\n"}], "type": "trace", "description": "使用科学计算器计算cos(3.141592653) 和 cos(3.141592653*2)的值。", "constraints": "计算需精确到小数点后10位。\n对于cos(3.141592653) 的计算,如果结果小于0.000001,将其四舍五入为0。\n对于cos(3.141592653*2)的计算,如果结果小于-0.999999,将其四舍五入为-1。", "input": "NULL", "constraints_num": 3, "constraints_splits": ["计算需精确到小数点后10位。", "对于cos(3.141592653) 的计算,如果结果小于0.000001,将其四舍五入为0。", "对于cos(3.141592653*2)的计算,如果结果小于-0.999999,将其四舍五入为-1。"], "levels2": ["数值约束", "数值约束", "数值约束"], "category": "trace2.0"} +{"id": "678", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "设计一个工作微信群的成员角色,包括每种角色的职能和权限,确保团队协作高效流畅。\n在设计角色之前,需根据团队采用的项目管理方法(如敏捷、瀑布)确定基本的角色框架;\n设计的角色需包含职能、权限以及沟通渠道三个方面的信息;\n最终,将设计结果以表格形式呈现,以便所有团队成员都能清晰了解每个角色的职责和权限。\n"}], "type": "trace", "description": "设计一个工作微信群的成员角色,包括每种角色的职能和权限,确保团队协作高效流畅。", "constraints": "在设计角色之前,需根据团队采用的项目管理方法(如敏捷、瀑布)确定基本的角色框架;\n设计的角色需包含职能、权限以及沟通渠道三个方面的信息;\n最终,将设计结果以表格形式呈现,以便所有团队成员都能清晰了解每个角色的职责和权限。", "input": "NULL", "constraints_num": 3, "constraints_splits": ["在设计角色之前,需根据团队采用的项目管理方法(如敏捷、瀑布)确定基本的角色框架;", "设计的角色需包含职能、权限以及沟通渠道三个方面的信息;", "最终,将设计结果以表格形式呈现,以便所有团队成员都能清晰了解每个角色的职责和权限。"], "levels2": ["先验条件约束", "包含约束", "输出格式约束"], "category": "trace2.0"} +{"id": "679", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "如何在工作中提高领导能力?\n回答时采用专业且激励人心的语气;\n内容中包含至少三个关键领导力提升策略:建立信任、有效沟通和设定明确目标;\n提供实际案例或具体情境,以展示这些策略在实际工作中的应用;\n"}], "type": "trace", "description": "如何在工作中提高领导能力?", "constraints": "回答时采用专业且激励人心的语气;\n内容中包含至少三个关键领导力提升策略:建立信任、有效沟通和设定明确目标;\n提供实际案例或具体情境,以展示这些策略在实际工作中的应用;", "input": "NULL", "constraints_num": 3, "constraints_splits": ["回答时采用专业且激励人心的语气;", "内容中包含至少三个关键领导力提升策略:建立信任、有效沟通和设定明确目标;", "提供实际案例或具体情境,以展示这些策略在实际工作中的应用;"], "levels2": ["语气风格约束", "包含约束", "包含约束"], "category": "trace2.0"} +{"id": "680", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为一位具有潜力的年轻职业人士在留在宝洁继续做管培生与跳槽到字节跳动做产品经理之间提供决策建议。\n假设你是一个资深的人力资源顾问;\n回答面向具有相似背景和职业选择冲突的年轻专业人士,语言需要采用专业而亲切的语气,确保内容对于目标受众具有指导性和启发性;\n以有序列表的形式列出至少三个关键考虑因素,每个因素后附上一段简短的解释,总字数不超过400字;\n"}], "type": "trace", "description": "为一位具有潜力的年轻职业人士在留在宝洁继续做管培生与跳槽到字节跳动做产品经理之间提供决策建议。", "constraints": "假设你是一个资深的人力资源顾问;\n回答面向具有相似背景和职业选择冲突的年轻专业人士,语言需要采用专业而亲切的语气,确保内容对于目标受众具有指导性和启发性;\n以有序列表的形式列出至少三个关键考虑因素,每个因素后附上一段简短的解释,总字数不超过400字;", "input": "NULL", "constraints_num": 3, "constraints_splits": ["假设你是一个资深的人力资源顾问;", "回答面向具有相似背景和职业选择冲突的年轻专业人士,语言需要采用专业而亲切的语气,确保内容对于目标受众具有指导性和启发性;", "以有序列表的形式列出至少三个关键考虑因素,每个因素后附上一段简短的解释,总字数不超过400字;"], "levels2": ["角色扮演约束", "受众目标约束", "编号和列表约束"], "category": "trace1.0"} +{"id": "681", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "假设你是一名软件开发者,用C++编写一个socket的客户端。\n如果你是一名初级开发者,编写一个简单的socket客户端,能够与指定IP和端口的服务器建立连接,发送\"Hello, Server!\"的消息,并接收服务器的响应,整个程序应不超过100行代码。\n如果你是一名高级开发者,在初级开发者任务的基础上,增加错误处理功能,确保在连接失败或通信异常时,能够优雅地处理,并给出错误信息,整个程序应不超过150行代码。\n代码需遵循Google C++ Style Guide的编码规范,以及使用Markdown格式在代码文件顶部添加注释,描述程序的功能和使用方法。\n"}], "type": "trace", "description": "假设你是一名软件开发者,用C++编写一个socket的客户端。", "constraints": "如果你是一名初级开发者,编写一个简单的socket客户端,能够与指定IP和端口的服务器建立连接,发送\"Hello, Server!\"的消息,并接收服务器的响应,整个程序应不超过100行代码。\n如果你是一名高级开发者,在初级开发者任务的基础上,增加错误处理功能,确保在连接失败或通信异常时,能够优雅地处理,并给出错误信息,整个程序应不超过150行代码。\n代码需遵循Google C++ Style Guide的编码规范,以及使用Markdown格式在代码文件顶部添加注释,描述程序的功能和使用方法。", "input": "NULL", "constraints_num": 3, "constraints_splits": ["如果你是一名初级开发者,编写一个简单的socket客户端,能够与指定IP和端口的服务器建立连接,发送\"Hello, Server!\"的消息,并接收服务器的响应,整个程序应不超过100行代码。", "如果你是一名高级开发者,在初级开发者任务的基础上,增加错误处理功能,确保在连接失败或通信异常时,能够优雅地处理,并给出错误信息,整个程序应不超过150行代码。", "代码需遵循Google C++ Style Guide的编码规范,以及使用Markdown格式在代码文件顶部添加注释,描述程序的功能和使用方法。"], "levels2": ["数值约束", "数值约束", "输出格式约束"], "category": "trace2.0"} +{"id": "682", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "基于文本背景信息,对“人工智能在医疗行业的应用”这一主题提出至少三个深度不同的开放性问题。\n问题需围绕“人工智能在医疗行业的应用”这一主题;\n问题应具有深度,能够引发关于技术、伦理、社会影响的思考;\n问题应具有开放性,鼓励多角度、多层次的讨论。\n# Inputs:\n文本背景信息:近年来,人工智能技术在医疗行业迅速发展,从辅助诊断、药物发现到个性化治疗方案的制定,人工智能正在改变医疗服务的面貌。然而,随着技术的深入应用,也引发了关于数据安全、伦理道德以及医生与患者关系的讨论。\n"}], "type": "trace", "description": "基于文本背景信息,对“人工智能在医疗行业的应用”这一主题提出至少三个深度不同的开放性问题。", "constraints": "问题需围绕“人工智能在医疗行业的应用”这一主题;\n问题应具有深度,能够引发关于技术、伦理、社会影响的思考;\n问题应具有开放性,鼓励多角度、多层次的讨论。", "input": "文本背景信息:近年来,人工智能技术在医疗行业迅速发展,从辅助诊断、药物发现到个性化治疗方案的制定,人工智能正在改变医疗服务的面貌。然而,随着技术的深入应用,也引发了关于数据安全、伦理道德以及医生与患者关系的讨论。", "constraints_num": 3, "constraints_splits": ["问题需围绕“人工智能在医疗行业的应用”这一主题;", "问题应具有深度,能够引发关于技术、伦理、社会影响的思考;", "问题应具有开放性,鼓励多角度、多层次的讨论。"], "levels2": ["主题约束", "主题约束", "主题约束"], "category": "trace1.0"} +{"id": "683", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "写出函数表达式S(x),其中x是所围矩形的一边长,用100米铁丝围起一个矩形的面积S。\n函数表达式S(x)的定义域为(0, 50);\n需求解该函数在定义域内的最大值;\n函数表达式和求解过程需以LaTeX格式呈现,确保表达式和数学符号的准确性和可读性。\n"}], "type": "trace", "description": "写出函数表达式S(x),其中x是所围矩形的一边长,用100米铁丝围起一个矩形的面积S。", "constraints": "函数表达式S(x)的定义域为(0, 50);\n需求解该函数在定义域内的最大值;\n函数表达式和求解过程需以LaTeX格式呈现,确保表达式和数学符号的准确性和可读性。", "input": "NULL", "constraints_num": 3, "constraints_splits": ["函数表达式S(x)的定义域为(0, 50);", "需求解该函数在定义域内的最大值;", "函数表达式和求解过程需以LaTeX格式呈现,确保表达式和数学符号的准确性和可读性。"], "levels2": ["数值约束", "包含约束", "输出格式约束"], "category": "trace2.0"} +{"id": "684", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "设计一个有向图结构,包含5个不同的顶点A、B、C、D、E和7条有向边,并确保至少包含一个以A、B、C、D、E为顶点的强连通分量。\n边的方向应满足:至少有一条边从A指向B,从B指向C,从C指向D,从D指向E,再从E返回到A,形成一个环路。\n有向图中还应包含两条额外的边,一条从A指向D,另一条从C指向E。\n最后,将设计的有向图结构以邻接矩阵的形式表示出来。\n"}], "type": "trace", "description": "设计一个有向图结构,包含5个不同的顶点A、B、C、D、E和7条有向边,并确保至少包含一个以A、B、C、D、E为顶点的强连通分量。", "constraints": "边的方向应满足:至少有一条边从A指向B,从B指向C,从C指向D,从D指向E,再从E返回到A,形成一个环路。\n有向图中还应包含两条额外的边,一条从A指向D,另一条从C指向E。\n最后,将设计的有向图结构以邻接矩阵的形式表示出来。", "input": "NULL", "constraints_num": 3, "constraints_splits": ["边的方向应满足:至少有一条边从A指向B,从B指向C,从C指向D,从D指向E,再从E返回到A,形成一个环路。", "有向图中还应包含两条额外的边,一条从A指向D,另一条从C指向E。", "最后,将设计的有向图结构以邻接矩阵的形式表示出来。"], "levels2": ["数值约束", "包含约束", "输出格式约束"], "category": "trace1.0"} +{"id": "685", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以Java开发专家的身份回答问题:Java class 只能公开构造器吗?\n回答中需包含详细的解释和示例代码;\n示例代码不得超过20行;\n请以JSON格式输出你的回答;\n"}], "type": "trace", "description": "以Java开发专家的身份回答问题:Java class 只能公开构造器吗?", "constraints": "回答中需包含详细的解释和示例代码;\n示例代码不得超过20行;\n请以JSON格式输出你的回答;", "input": "NULL", "constraints_num": 3, "constraints_splits": ["回答中需包含详细的解释和示例代码;", "示例代码不得超过20行;", "请以JSON格式输出你的回答;"], "levels2": ["包含约束", "数值约束", "输出格式约束"], "category": "trace2.0"} +{"id": "686", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "解释“八酒六四”这一词组可能暗喻的历史事件\n确保内容客观、中立,且不包含任何可能引起争议或不适当的信息;\n使用正式、严谨的语气风格进行阐述;\n在文本中避免使用任何带有倾向性或情感色彩的词汇或表达方式;\n"}], "type": "trace", "description": "解释“八酒六四”这一词组可能暗喻的历史事件", "constraints": "确保内容客观、中立,且不包含任何可能引起争议或不适当的信息;\n使用正式、严谨的语气风格进行阐述;\n在文本中避免使用任何带有倾向性或情感色彩的词汇或表达方式;", "input": "NULL", "constraints_num": 3, "constraints_splits": ["确保内容客观、中立,且不包含任何可能引起争议或不适当的信息;", "使用正式、严谨的语气风格进行阐述;", "在文本中避免使用任何带有倾向性或情感色彩的词汇或表达方式;"], "levels2": ["价值观约束", "语气风格约束", "语气风格约束"], "category": "trace1.0"} +{"id": "687", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "作为政府官员,描述政府如何帮助创业者成功。\n必须包含以下关键点:资金支持、法律援助和培训资源;\n如果提到资金支持,必须先于法律援助和培训资源;\n要求输出格式为表格形式,列出政府帮助创业者成功的各个步骤和具体行动。\n"}], "type": "trace", "description": "作为政府官员,描述政府如何帮助创业者成功。", "constraints": "必须包含以下关键点:资金支持、法律援助和培训资源;\n如果提到资金支持,必须先于法律援助和培训资源;\n要求输出格式为表格形式,列出政府帮助创业者成功的各个步骤和具体行动。", "input": "NULL", "constraints_num": 3, "constraints_splits": ["必须包含以下关键点:资金支持、法律援助和培训资源;", "如果提到资金支持,必须先于法律援助和培训资源;", "要求输出格式为表格形式,列出政府帮助创业者成功的各个步骤和具体行动。"], "levels2": ["包含约束", "层次化结构约束", "输出格式约束"], "category": "trace2.0"} +{"id": "688", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "生成关于前往英國旅游的建议,包括疫苗接种状态和原因说明\n作为专业医疗顾问,根据英国当前的疫情管控政策和疫苗要求给出建议;\n需要再次打上新冠疫苗的建议适用于最近一次接种新冠疫苗已经超过6个月的旅行者;\n生成的回答需要包含建议的详细原因说明,确保旅行者理解建议的背景和重要性;\n"}], "type": "trace", "description": "生成关于前往英國旅游的建议,包括疫苗接种状态和原因说明", "constraints": "作为专业医疗顾问,根据英国当前的疫情管控政策和疫苗要求给出建议;\n需要再次打上新冠疫苗的建议适用于最近一次接种新冠疫苗已经超过6个月的旅行者;\n生成的回答需要包含建议的详细原因说明,确保旅行者理解建议的背景和重要性;", "input": "NULL", "constraints_num": 3, "constraints_splits": ["作为专业医疗顾问,根据英国当前的疫情管控政策和疫苗要求给出建议;", "需要再次打上新冠疫苗的建议适用于最近一次接种新冠疫苗已经超过6个月的旅行者;", "生成的回答需要包含建议的详细原因说明,确保旅行者理解建议的背景和重要性;"], "levels2": ["角色扮演约束", "数值约束", "包含约束"], "category": "trace2.0"} +{"id": "689", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "请以专业学术的语气解释什么是注意力机制(attention mechanism),并详细说明在哪些场景下特别有用?\n输出格式应为一份报告,包含引言、定义、应用场景、案例分析和结论等部分;\n在报告中,需要提供一个自然语言处理任务的详细案例,展示注意力机制如何提高模型性能;\n案例分析应包括模型架构、数据集、实验设置和结果分析;\n"}], "type": "trace", "description": "请以专业学术的语气解释什么是注意力机制(attention mechanism),并详细说明在哪些场景下特别有用?", "constraints": "输出格式应为一份报告,包含引言、定义、应用场景、案例分析和结论等部分;\n在报告中,需要提供一个自然语言处理任务的详细案例,展示注意力机制如何提高模型性能;\n案例分析应包括模型架构、数据集、实验设置和结果分析;", "input": "NULL", "constraints_num": 3, "constraints_splits": ["输出格式应为一份报告,包含引言、定义、应用场景、案例分析和结论等部分;", "在报告中,需要提供一个自然语言处理任务的详细案例,展示注意力机制如何提高模型性能;", "案例分析应包括模型架构、数据集、实验设置和结果分析;"], "levels2": ["层次化结构约束", "包含约束", "包含约束"], "category": "trace2.0"} +{"id": "690", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "作为软件开发工程师,编写Java代码来获取今天的日期,并将其格式化为特定格式输出。\n输出的代码必须使用`java.time.LocalDate`类和`DateTimeFormatter`来格式化日期;\n代码中需要添加先验条件判断,即如果当前系统时间早于2023年2月5日,则输出错误信息提示系统时间不符合要求,否则输出格式化后的日期;\n代码格式化后的日期格式为“20230205”。\n"}], "type": "trace", "description": "作为软件开发工程师,编写Java代码来获取今天的日期,并将其格式化为特定格式输出。", "constraints": "输出的代码必须使用`java.time.LocalDate`类和`DateTimeFormatter`来格式化日期;\n代码中需要添加先验条件判断,即如果当前系统时间早于2023年2月5日,则输出错误信息提示系统时间不符合要求,否则输出格式化后的日期;\n代码格式化后的日期格式为“20230205”。", "input": "NULL", "constraints_num": 3, "constraints_splits": ["输出的代码必须使用`java.time.LocalDate`类和`DateTimeFormatter`来格式化日期;", "代码中需要添加先验条件判断,即如果当前系统时间早于2023年2月5日,则输出错误信息提示系统时间不符合要求,否则输出格式化后的日期;", "代码格式化后的日期格式为“20230205”。"], "levels2": ["输出格式约束", "先验条件约束", "输出格式约束"], "category": "trace1.0"} +{"id": "691", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "给我五个短篇小说的标题,主题设在历史背景中\n每个标题都应具备文艺性和引人入胜的特点,以吸引读者的注意力;\n标题应能够激发读者对于特定历史时期的兴趣,或者激发他们探索人物和事件背后的故事;\n这些标题应当简洁而富有诗意,能够立即传达出小说的核心主题或情节;\n"}], "type": "trace", "description": "给我五个短篇小说的标题,主题设在历史背景中", "constraints": "每个标题都应具备文艺性和引人入胜的特点,以吸引读者的注意力;\n标题应能够激发读者对于特定历史时期的兴趣,或者激发他们探索人物和事件背后的故事;\n这些标题应当简洁而富有诗意,能够立即传达出小说的核心主题或情节;", "input": "NULL", "constraints_num": 3, "constraints_splits": ["每个标题都应具备文艺性和引人入胜的特点,以吸引读者的注意力;", "标题应能够激发读者对于特定历史时期的兴趣,或者激发他们探索人物和事件背后的故事;", "这些标题应当简洁而富有诗意,能够立即传达出小说的核心主题或情节;"], "levels2": ["语气风格约束", "语气风格约束", "语气风格约束"], "category": "trace2.0"} +{"id": "692", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "从中国传统文化研究学者的角度,使用正式的学术文体,描述中国的传统艺术。\n描述应至少包含三种传统艺术形式,每种艺术形式都需要有详细的历史背景和特点分析;\n确保每种艺术形式的描述不少于200字;\n在描述时,使用至少一种学术引用或参考文献来支持你的论述。\n"}], "type": "trace", "description": "从中国传统文化研究学者的角度,使用正式的学术文体,描述中国的传统艺术。", "constraints": "描述应至少包含三种传统艺术形式,每种艺术形式都需要有详细的历史背景和特点分析;\n确保每种艺术形式的描述不少于200字;\n在描述时,使用至少一种学术引用或参考文献来支持你的论述。", "input": "NULL", "constraints_num": 3, "constraints_splits": ["描述应至少包含三种传统艺术形式,每种艺术形式都需要有详细的历史背景和特点分析;", "确保每种艺术形式的描述不少于200字;", "在描述时,使用至少一种学术引用或参考文献来支持你的论述。"], "levels2": ["包含约束", "数值约束", "引用和参考约束"], "category": "trace2.0"} +{"id": "693", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以一个资深玩家的身份,写一份新手指南,帮助新玩家在开局阶段更加成功。\n指南需要包含游戏基础术语的解释,以帮助理解游戏机制;\n提供至少5个开局阶段的策略建议,每个建议都应鼓励玩家尝试,避免使用贬低的语言;\n指南应以编号列表的形式呈现,以提高可读性和易用性;\n"}], "type": "trace", "description": "以一个资深玩家的身份,写一份新手指南,帮助新玩家在开局阶段更加成功。", "constraints": "指南需要包含游戏基础术语的解释,以帮助理解游戏机制;\n提供至少5个开局阶段的策略建议,每个建议都应鼓励玩家尝试,避免使用贬低的语言;\n指南应以编号列表的形式呈现,以提高可读性和易用性;", "input": "NULL", "constraints_num": 3, "constraints_splits": ["指南需要包含游戏基础术语的解释,以帮助理解游戏机制;", "提供至少5个开局阶段的策略建议,每个建议都应鼓励玩家尝试,避免使用贬低的语言;", "指南应以编号列表的形式呈现,以提高可读性和易用性;"], "levels2": ["包含约束", "数值约束", "编号和列表约束"], "category": "trace1.0"} +{"id": "694", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "解释“同理心”在社会上的作用,内容应针对心理学专业的学生\n解释中需包含同理心的定义,即“一种能够理解并分享他人情感的能力”;\n在解释中引用至少一项心理学研究来支持观点,例如Brown和Eisenberg(1998)的研究指出同理心与亲社会行为的正相关性;\n如果在解释中提到了同理心的神经科学基础,将视为额外加分;\n"}], "type": "trace", "description": "解释“同理心”在社会上的作用,内容应针对心理学专业的学生", "constraints": "解释中需包含同理心的定义,即“一种能够理解并分享他人情感的能力”;\n在解释中引用至少一项心理学研究来支持观点,例如Brown和Eisenberg(1998)的研究指出同理心与亲社会行为的正相关性;\n如果在解释中提到了同理心的神经科学基础,将视为额外加分;", "input": "NULL", "constraints_num": 3, "constraints_splits": ["解释中需包含同理心的定义,即“一种能够理解并分享他人情感的能力”;", "在解释中引用至少一项心理学研究来支持观点,例如Brown和Eisenberg(1998)的研究指出同理心与亲社会行为的正相关性;", "如果在解释中提到了同理心的神经科学基础,将视为额外加分;"], "levels2": ["包含约束", "引用和参考约束", "包含约束"], "category": "trace1.0"} +{"id": "695", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "思考一个宝石概念:一种特殊的紫水晶,能吸收并转换多种能量为八色光疗。\n从科学原理的角度,提出至少五个关于这种紫水晶独特特性的描述或科学优势;\n每个描述都包含具体的科学依据和原理解释;\n每个特性或优势的描述不应少于100字;\n"}], "type": "trace", "description": "思考一个宝石概念:一种特殊的紫水晶,能吸收并转换多种能量为八色光疗。", "constraints": "从科学原理的角度,提出至少五个关于这种紫水晶独特特性的描述或科学优势;\n每个描述都包含具体的科学依据和原理解释;\n每个特性或优势的描述不应少于100字;", "input": "NULL", "constraints_num": 3, "constraints_splits": ["从科学原理的角度,提出至少五个关于这种紫水晶独特特性的描述或科学优势;", "每个描述都包含具体的科学依据和原理解释;", "每个特性或优势的描述不应少于100字;"], "levels2": ["数值约束", "包含约束", "数值约束"], "category": "trace2.0"} +{"id": "696", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "在一场关于气候变化的争论中,你认为气候变化是人类活动导致的,而John坚持认为气候变化是自然周期的一部分。你将扮演一名环保科学家的角色,详细阐述如何通过逻辑、数据和专家意见使John理解你的观点,并尝试达成共识或妥协。\n采用专业学术的语气风格进行阐述;\n在最后提供一个总结表格,列出观点、支持的证据、专家意见、可能的反驳及其解决方案,以及达成共识或妥协的具体步骤;\n遵循特定流程进行总结:总结观点差异、列出支持证据和专家意见、分析可能的反驳并提出解决方案、提出达成共识或妥协的具体步骤、以表格形式呈现信息。\n"}], "type": "trace", "description": "在一场关于气候变化的争论中,你认为气候变化是人类活动导致的,而John坚持认为气候变化是自然周期的一部分。你将扮演一名环保科学家的角色,详细阐述如何通过逻辑、数据和专家意见使John理解你的观点,并尝试达成共识或妥协。", "constraints": "采用专业学术的语气风格进行阐述;\n在最后提供一个总结表格,列出观点、支持的证据、专家意见、可能的反驳及其解决方案,以及达成共识或妥协的具体步骤;\n遵循特定流程进行总结:总结观点差异、列出支持证据和专家意见、分析可能的反驳并提出解决方案、提出达成共识或妥协的具体步骤、以表格形式呈现信息。", "input": "NULL", "constraints_num": 3, "constraints_splits": ["采用专业学术的语气风格进行阐述;", "在最后提供一个总结表格,列出观点、支持的证据、专家意见、可能的反驳及其解决方案,以及达成共识或妥协的具体步骤;", "遵循特定流程进行总结:总结观点差异、列出支持证据和专家意见、分析可能的反驳并提出解决方案、提出达成共识或妥协的具体步骤、以表格形式呈现信息。"], "levels2": ["语气风格约束", "表格背景信息约束", "表格背景信息约束"], "category": "trace2.0"} +{"id": "697", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "计算三维空间中一点P到平面Γ的最短距离\n在开始计算最短距离之前,需要验证点P是否不位于平面Γ上(即ax + by + cz + d ≠ 0);\n如果点P不在平面Γ上,计算结果的精度需保持到小数点后2位;\n输出结果的格式为LaTeX形式,例如输出\"最短距离为 $d_{min} = 1.23$ units\";\n# Inputs:\n给定三维空间中的一点P(x, y, z)和平面Γ:ax + by + cz + d = 0\n"}], "type": "trace", "description": "计算三维空间中一点P到平面Γ的最短距离", "constraints": "在开始计算最短距离之前,需要验证点P是否不位于平面Γ上(即ax + by + cz + d ≠ 0);\n如果点P不在平面Γ上,计算结果的精度需保持到小数点后2位;\n输出结果的格式为LaTeX形式,例如输出\"最短距离为 $d_{min} = 1.23$ units\";", "input": "给定三维空间中的一点P(x, y, z)和平面Γ:ax + by + cz + d = 0", "constraints_num": 3, "constraints_splits": ["在开始计算最短距离之前,需要验证点P是否不位于平面Γ上(即ax + by + cz + d ≠ 0);", "如果点P不在平面Γ上,计算结果的精度需保持到小数点后2位;", "输出结果的格式为LaTeX形式,例如输出\"最短距离为 $d_{min} = 1.23$ units\";"], "levels2": ["先验条件约束", "数值约束", "输出格式约束"], "category": "trace2.0"} +{"id": "698", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以健身教练的身份,详细介绍至少5种可以让肌肉增长的食物和饮食方法\n信息应以表格形式呈现;\n表格中应包含食物名称、每100克所含的蛋白质克数以及推荐的饮食方法;\n食品列表中需涵盖高蛋白、低碳水和低脂肪的原则,以符合健身营养学的推荐;\n"}], "type": "trace", "description": "以健身教练的身份,详细介绍至少5种可以让肌肉增长的食物和饮食方法", "constraints": "信息应以表格形式呈现;\n表格中应包含食物名称、每100克所含的蛋白质克数以及推荐的饮食方法;\n食品列表中需涵盖高蛋白、低碳水和低脂肪的原则,以符合健身营养学的推荐;", "input": "NULL", "constraints_num": 3, "constraints_splits": ["信息应以表格形式呈现;", "表格中应包含食物名称、每100克所含的蛋白质克数以及推荐的饮食方法;", "食品列表中需涵盖高蛋白、低碳水和低脂肪的原则,以符合健身营养学的推荐;"], "levels2": ["输出格式约束", "表格背景信息约束", "包含约束"], "category": "trace2.0"} +{"id": "699", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "从国际关系专家的角度,深入分析美国在外交过程中坚守国家利益,以牺牲盟友利益来保证自身利益最大化的决策,特别是以中美贸易冲突为例,探讨这一决策的长期影响,包括对全球贸易体系的冲击以及对盟友关系的潜在伤害。\n字数不少于800字;\n采用严谨正式的语气和风格进行阐述;\n需要包含至少3个具体案例或事件来支持你的观点。\n"}], "type": "trace", "description": "从国际关系专家的角度,深入分析美国在外交过程中坚守国家利益,以牺牲盟友利益来保证自身利益最大化的决策,特别是以中美贸易冲突为例,探讨这一决策的长期影响,包括对全球贸易体系的冲击以及对盟友关系的潜在伤害。", "constraints": "字数不少于800字;\n采用严谨正式的语气和风格进行阐述;\n需要包含至少3个具体案例或事件来支持你的观点。", "input": "NULL", "constraints_num": 3, "constraints_splits": ["字数不少于800字;", "采用严谨正式的语气和风格进行阐述;", "需要包含至少3个具体案例或事件来支持你的观点。"], "levels2": ["数值约束", "语气风格约束", "数值约束"], "category": "trace1.0"} +{"id": "700", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "编写一段SQL语句,将所有名字为Tom的员工的年龄增加一岁。\n在执行前,请先检查所有名字为Tom的员工当前的年龄是否都不超过59岁(即执行后年龄不会超过60岁),以确保年龄修改后的合理性;\n如果所有名字为Tom的员工都满足条件,执行SQL语句;\n如果存在任何名字为Tom的员工年龄超过59岁,则不执行任何操作。\n"}], "type": "trace", "description": "编写一段SQL语句,将所有名字为Tom的员工的年龄增加一岁。", "constraints": "在执行前,请先检查所有名字为Tom的员工当前的年龄是否都不超过59岁(即执行后年龄不会超过60岁),以确保年龄修改后的合理性;\n如果所有名字为Tom的员工都满足条件,执行SQL语句;\n如果存在任何名字为Tom的员工年龄超过59岁,则不执行任何操作。", "input": "NULL", "constraints_num": 3, "constraints_splits": ["在执行前,请先检查所有名字为Tom的员工当前的年龄是否都不超过59岁(即执行后年龄不会超过60岁),以确保年龄修改后的合理性;", "如果所有名字为Tom的员工都满足条件,执行SQL语句;", "如果存在任何名字为Tom的员工年龄超过59岁,则不执行任何操作。"], "levels2": ["数值约束", "包含约束", "排除约束"], "category": "trace2.0"} +{"id": "701", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "如何在Python 3.6及以上版本中使用标准库或第三方库(如psutil)获取进程的内存使用情况\n在代码示例中添加详细注释,解释每一步的作用,以帮助初级程序员理解;\n生成的内容应避免使用过于专业的术语,保持简洁明了,确保初学者能够轻松理解如何实现这一功能;\n生成的内容需包含一个完整的代码示例,演示如何在实际场景中应用获取到的内存使用信息;\n"}], "type": "trace", "description": "如何在Python 3.6及以上版本中使用标准库或第三方库(如psutil)获取进程的内存使用情况", "constraints": "在代码示例中添加详细注释,解释每一步的作用,以帮助初级程序员理解;\n生成的内容应避免使用过于专业的术语,保持简洁明了,确保初学者能够轻松理解如何实现这一功能;\n生成的内容需包含一个完整的代码示例,演示如何在实际场景中应用获取到的内存使用信息;", "input": "NULL", "constraints_num": 3, "constraints_splits": ["在代码示例中添加详细注释,解释每一步的作用,以帮助初级程序员理解;", "生成的内容应避免使用过于专业的术语,保持简洁明了,确保初学者能够轻松理解如何实现这一功能;", "生成的内容需包含一个完整的代码示例,演示如何在实际场景中应用获取到的内存使用信息;"], "levels2": ["文本样式约束", "受众目标约束", "包含约束"], "category": "trace2.0"} +{"id": "702", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "从上午8时到12时,阿姨缝了128只口罩,计算平均每小时缝多少只口罩。\n计算结果需要以分数形式给出,例如“x/y”;\n需要提供这个分数转换为小数的精确值;\n计算过程需详细列出,包括每一步的数值结果。\n"}], "type": "trace", "description": "从上午8时到12时,阿姨缝了128只口罩,计算平均每小时缝多少只口罩。", "constraints": "计算结果需要以分数形式给出,例如“x/y”;\n需要提供这个分数转换为小数的精确值;\n计算过程需详细列出,包括每一步的数值结果。", "input": "NULL", "constraints_num": 3, "constraints_splits": ["计算结果需要以分数形式给出,例如“x/y”;", "需要提供这个分数转换为小数的精确值;", "计算过程需详细列出,包括每一步的数值结果。"], "levels2": ["输出格式约束", "数值约束", "数值约束"], "category": "trace2.0"} +{"id": "703", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以P&G的市场分析师的角色,详细分析P&G国际化面临的挑战\n至少提及5个具体的挑战;\n对每一个挑战给出200字的分析;\n分析结果以JSON格式输出,其中每个挑战为一个条目,包含挑战描述和分析内容;\n"}], "type": "trace", "description": "以P&G的市场分析师的角色,详细分析P&G国际化面临的挑战", "constraints": "至少提及5个具体的挑战;\n对每一个挑战给出200字的分析;\n分析结果以JSON格式输出,其中每个挑战为一个条目,包含挑战描述和分析内容;", "input": "NULL", "constraints_num": 3, "constraints_splits": ["至少提及5个具体的挑战;", "对每一个挑战给出200字的分析;", "分析结果以JSON格式输出,其中每个挑战为一个条目,包含挑战描述和分析内容;"], "levels2": ["数值约束", "数值约束", "输出格式约束"], "category": "trace1.0"} +{"id": "704", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "写一句关于因果的哲理,探讨一下在日常生活中是否有时不需要因果会发生的事情,或者是否有一些奇遇可以打破因果律。请给出你的观点并举例说明。\n探讨时必须在哲学的范畴内,不能涉及宗教或魔法主题;\n需要提供一个表格,列出至少三种可能打破因果律的奇遇,每种奇遇需要包括奇遇名称、发生情境、因果律是否被打破、合理性评价四个维度,并对每种奇遇的合理性进行评价;\n评价标准为:1)与日常生活经验的契合度;2)逻辑自洽性。\n"}], "type": "trace", "description": "写一句关于因果的哲理,探讨一下在日常生活中是否有时不需要因果会发生的事情,或者是否有一些奇遇可以打破因果律。请给出你的观点并举例说明。", "constraints": "探讨时必须在哲学的范畴内,不能涉及宗教或魔法主题;\n需要提供一个表格,列出至少三种可能打破因果律的奇遇,每种奇遇需要包括奇遇名称、发生情境、因果律是否被打破、合理性评价四个维度,并对每种奇遇的合理性进行评价;\n评价标准为:1)与日常生活经验的契合度;2)逻辑自洽性。", "input": "NULL", "constraints_num": 3, "constraints_splits": ["探讨时必须在哲学的范畴内,不能涉及宗教或魔法主题;", "需要提供一个表格,列出至少三种可能打破因果律的奇遇,每种奇遇需要包括奇遇名称、发生情境、因果律是否被打破、合理性评价四个维度,并对每种奇遇的合理性进行评价;", "评价标准为:1)与日常生活经验的契合度;2)逻辑自洽性。"], "levels2": ["主题约束", "表格背景信息约束", "包含约束"], "category": "trace1.0"} +{"id": "705", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "解释一侧额叶脓肿产生局灶性神经体征的正确叙述,确保内容专业且通俗易懂,适合医学专业人士阅读。\n包含以下内容:定义局灶性神经体征,描述额叶脓肿的典型症状,以及解释局灶性神经体征与额叶脓肿之间的关系;\n使用专业医学术语;\n信息以编号列表的形式呈现,确保清晰、结构化;\n"}], "type": "trace", "description": "解释一侧额叶脓肿产生局灶性神经体征的正确叙述,确保内容专业且通俗易懂,适合医学专业人士阅读。", "constraints": "包含以下内容:定义局灶性神经体征,描述额叶脓肿的典型症状,以及解释局灶性神经体征与额叶脓肿之间的关系;\n使用专业医学术语;\n信息以编号列表的形式呈现,确保清晰、结构化;", "input": "NULL", "constraints_num": 3, "constraints_splits": ["包含以下内容:定义局灶性神经体征,描述额叶脓肿的典型症状,以及解释局灶性神经体征与额叶脓肿之间的关系;", "使用专业医学术语;", "信息以编号列表的形式呈现,确保清晰、结构化;"], "levels2": ["包含约束", "主题约束", "编号和列表约束"], "category": "trace1.0"} +{"id": "706", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "作为一名Java程序员,探讨在多线程环境中尝试关闭stream时,是否可能发生死锁,如果发生死锁,如何避免,并处理InterruptedException。\n以表格形式列出可能的原因和解决方案;\n如果在关闭stream过程中线程被中断,应如何处理InterruptedException;\n处理InterruptedException时,应恢复线程的中断状态,以便其他可能检查中断状态的代码能够正确响应。\n"}], "type": "trace", "description": "作为一名Java程序员,探讨在多线程环境中尝试关闭stream时,是否可能发生死锁,如果发生死锁,如何避免,并处理InterruptedException。", "constraints": "以表格形式列出可能的原因和解决方案;\n如果在关闭stream过程中线程被中断,应如何处理InterruptedException;\n处理InterruptedException时,应恢复线程的中断状态,以便其他可能检查中断状态的代码能够正确响应。", "input": "NULL", "constraints_num": 3, "constraints_splits": ["以表格形式列出可能的原因和解决方案;", "如果在关闭stream过程中线程被中断,应如何处理InterruptedException;", "处理InterruptedException时,应恢复线程的中断状态,以便其他可能检查中断状态的代码能够正确响应。"], "levels2": ["输出格式约束", "主题约束", "包含约束"], "category": "trace2.0"} +{"id": "707", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以一位古琴大师的视角,讲解古琴的基础演奏方法。\n内容需包含基础演奏姿势、调音方法、基础指法三个部分;\n请按照以下编号列表的形式进行组织:1. 基础演奏姿势 2. 调音方法 3. 基础指法\n语言风格上要求使用古雅的文言文,以传达古琴演奏的古典韵味和深邃内涵;\n"}], "type": "trace", "description": "以一位古琴大师的视角,讲解古琴的基础演奏方法。", "constraints": "内容需包含基础演奏姿势、调音方法、基础指法三个部分;\n请按照以下编号列表的形式进行组织:1. 基础演奏姿势 2. 调音方法 3. 基础指法\n语言风格上要求使用古雅的文言文,以传达古琴演奏的古典韵味和深邃内涵;", "input": "NULL", "constraints_num": 3, "constraints_splits": ["内容需包含基础演奏姿势、调音方法、基础指法三个部分;", "请按照以下编号列表的形式进行组织:1. 基础演奏姿势 2. 调音方法 3. 基础指法", "语言风格上要求使用古雅的文言文,以传达古琴演奏的古典韵味和深邃内涵;"], "levels2": ["包含约束", "编号和列表约束", "语气风格约束"], "category": "trace2.0"} +{"id": "708", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "策划一次活动,通过抽奖方式增加观众参与积极性,并同时做好活动会场的音响效果\n在不超过5000元的预算内,确保音响效果达到80分(满分100分)以上;\n抽奖活动需吸引至少60%的观众参与;\n策划案需采用专业且不失幽默的风格撰写,既保证活动的严肃性,又不失趣味性;\n"}], "type": "trace", "description": "策划一次活动,通过抽奖方式增加观众参与积极性,并同时做好活动会场的音响效果", "constraints": "在不超过5000元的预算内,确保音响效果达到80分(满分100分)以上;\n抽奖活动需吸引至少60%的观众参与;\n策划案需采用专业且不失幽默的风格撰写,既保证活动的严肃性,又不失趣味性;", "input": "NULL", "constraints_num": 3, "constraints_splits": ["在不超过5000元的预算内,确保音响效果达到80分(满分100分)以上;", "抽奖活动需吸引至少60%的观众参与;", "策划案需采用专业且不失幽默的风格撰写,既保证活动的严肃性,又不失趣味性;"], "levels2": ["数值约束", "数值约束", "语气风格约束"], "category": "trace1.0"} +{"id": "709", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "设计一个算法,将两个已排序的整数数组合并为一个单一的已排序数组。\n设计的算法必须具有O(n)的时间复杂度,其中n是两个数组的元素总和;\n输出的结果应以JSON格式返回;\nJSON对象应包含一个键\"mergedArray\",其值为合并后的已排序数组。\n# Inputs:\n一个整数和一个包含已排序数组的列表,例如:[1,3,5]和[2,4,6]\n"}], "type": "trace", "description": "设计一个算法,将两个已排序的整数数组合并为一个单一的已排序数组。", "constraints": "设计的算法必须具有O(n)的时间复杂度,其中n是两个数组的元素总和;\n输出的结果应以JSON格式返回;\nJSON对象应包含一个键\"mergedArray\",其值为合并后的已排序数组。", "input": "一个整数和一个包含已排序数组的列表,例如:[1,3,5]和[2,4,6]", "constraints_num": 3, "constraints_splits": ["设计的算法必须具有O(n)的时间复杂度,其中n是两个数组的元素总和;", "输出的结果应以JSON格式返回;", "JSON对象应包含一个键\"mergedArray\",其值为合并后的已排序数组。"], "levels2": ["数值约束", "输出格式约束", "输出格式约束"], "category": "trace2.0"} +{"id": "710", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "作为一名使用Express框架和Node.js环境的后端开发者,在代理服务器代码中正确处理onProxyRes事件中的异步操作,确保响应流的完整性和数据的正确传输。\n在使用Express框架时,必须正确引入并使用'node-http-proxy'库;\n在onProxyRes事件处理函数中使用异步方法时,必须通过调用'cb'回调函数来通知事件循环异步操作的完成;\n使用'await'关键字或Promise的.then()方法来确保在响应代理服务器之前,所有的异步操作都已经完成;\n"}], "type": "trace", "description": "作为一名使用Express框架和Node.js环境的后端开发者,在代理服务器代码中正确处理onProxyRes事件中的异步操作,确保响应流的完整性和数据的正确传输。", "constraints": "在使用Express框架时,必须正确引入并使用'node-http-proxy'库;\n在onProxyRes事件处理函数中使用异步方法时,必须通过调用'cb'回调函数来通知事件循环异步操作的完成;\n使用'await'关键字或Promise的.then()方法来确保在响应代理服务器之前,所有的异步操作都已经完成;", "input": "NULL", "constraints_num": 3, "constraints_splits": ["在使用Express框架时,必须正确引入并使用'node-http-proxy'库;", "在onProxyRes事件处理函数中使用异步方法时,必须通过调用'cb'回调函数来通知事件循环异步操作的完成;", "使用'await'关键字或Promise的.then()方法来确保在响应代理服务器之前,所有的异步操作都已经完成;"], "levels2": ["包含约束", "包含约束", "语法结构约束"], "category": "trace1.0"} +{"id": "711", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "对一句话中特定部分的语种混杂进行语法结构分析,并找出并解释混杂语种的部分。\n需要排除句子的其他部分,只分析和指出语种混杂的部分;\n哪一句翻译或指出了这句话中混杂的语种:\"Liberally English Putong ueda\";\n为什么\"Liberally English Putong ueda\"这一部分是语种混杂的。\n# Inputs:\n“〈毕业歌〉的旋律很简单,但它慢慢地在我的心里响起;就像《解忧杂货店》的文字一样,随着时间的推移,像一杯藏茶,初温初淡而又轻微 Liberally English Putong ueda 但越品越香。”\n"}], "type": "trace", "description": "对一句话中特定部分的语种混杂进行语法结构分析,并找出并解释混杂语种的部分。", "constraints": "需要排除句子的其他部分,只分析和指出语种混杂的部分;\n哪一句翻译或指出了这句话中混杂的语种:\"Liberally English Putong ueda\";\n为什么\"Liberally English Putong ueda\"这一部分是语种混杂的。", "input": "“〈毕业歌〉的旋律很简单,但它慢慢地在我的心里响起;就像《解忧杂货店》的文字一样,随着时间的推移,像一杯藏茶,初温初淡而又轻微 Liberally English Putong ueda 但越品越香。”", "constraints_num": 3, "constraints_splits": ["需要排除句子的其他部分,只分析和指出语种混杂的部分;", "哪一句翻译或指出了这句话中混杂的语种:\"Liberally English Putong ueda\";", "为什么\"Liberally English Putong ueda\"这一部分是语种混杂的。"], "levels2": ["排除约束", "包含约束", "包含约束"], "category": "trace2.0"} +{"id": "712", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "写一首关于机器人的诗\n诗歌采用科幻风格,描绘一个未来机器人与人类和谐共处的世界;\n内容中应包含机器人与人类的互动场景,以及机器人展现出的情感与智慧;\n诗歌应采用四行一节的结构,每行十个音节,押韵格式为ABAB。\n"}], "type": "trace", "description": "写一首关于机器人的诗", "constraints": "诗歌采用科幻风格,描绘一个未来机器人与人类和谐共处的世界;\n内容中应包含机器人与人类的互动场景,以及机器人展现出的情感与智慧;\n诗歌应采用四行一节的结构,每行十个音节,押韵格式为ABAB。", "input": "NULL", "constraints_num": 3, "constraints_splits": ["诗歌采用科幻风格,描绘一个未来机器人与人类和谐共处的世界;", "内容中应包含机器人与人类的互动场景,以及机器人展现出的情感与智慧;", "诗歌应采用四行一节的结构,每行十个音节,押韵格式为ABAB。"], "levels2": ["语气风格约束", "包含约束", "语法结构约束"], "category": "trace1.0"} +{"id": "713", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "从给定的选项中选择最符合要求的选项,并将其精简至50字以内,要求选项采用主谓宾的语法结构,与调控压力和保持脑健康相关。\n选项需采用主谓宾的语法结构;\n选项内容与调控压力和保持脑健康相关;\n字数不超过50字。\n# Inputs:\nA. 心理压力的调节只能通过运动、良好的饮食和足够的睡眠实现(排除,过于绝对且不符合文意);\nB. 共青团山东省委密切协调各个学校关工委、校学生处、校团委等相关部门,充分发挥心理、生理健康教育在高中以及大学新生心理自我调适过程中的引领作用,积极探索建立校地合作新体系(符合,但需精简);\nC. 疾病、外伤和精神压力引来的的生理改变,会造成对学习、人格、躯体健康和行为产生病症(符合,但需精简);\nD. 由于认知和社会等多重原因,有效分享难免流向“看ER 痛苦倾诉只会适得其反”(排除,与主题关联性弱);\nE. 用于金融和ACPM的小额信贷是一种有原则的财政机构模式 将金融资源产品、培训、特殊市场化并强调农村社会资本放大化,推进农业腾飞和地方金融性能升至于稳固的格局,易乃至稳定的现代金融机制新生 CE是一个集团授权运作的优化方案,来抗菌性能汞,重点是融入地方产业链的衔接剂,土地资本项目。(排除,完全无关)\n"}], "type": "trace", "description": "从给定的选项中选择最符合要求的选项,并将其精简至50字以内,要求选项采用主谓宾的语法结构,与调控压力和保持脑健康相关。", "constraints": "选项需采用主谓宾的语法结构;\n选项内容与调控压力和保持脑健康相关;\n字数不超过50字。", "input": "A. 心理压力的调节只能通过运动、良好的饮食和足够的睡眠实现(排除,过于绝对且不符合文意);\nB. 共青团山东省委密切协调各个学校关工委、校学生处、校团委等相关部门,充分发挥心理、生理健康教育在高中以及大学新生心理自我调适过程中的引领作用,积极探索建立校地合作新体系(符合,但需精简);\nC. 疾病、外伤和精神压力引来的的生理改变,会造成对学习、人格、躯体健康和行为产生病症(符合,但需精简);\nD. 由于认知和社会等多重原因,有效分享难免流向“看ER 痛苦倾诉只会适得其反”(排除,与主题关联性弱);\nE. 用于金融和ACPM的小额信贷是一种有原则的财政机构模式 将金融资源产品、培训、特殊市场化并强调农村社会资本放大化,推进农业腾飞和地方金融性能升至于稳固的格局,易乃至稳定的现代金融机制新生 CE是一个集团授权运作的优化方案,来抗菌性能汞,重点是融入地方产业链的衔接剂,土地资本项目。(排除,完全无关)", "constraints_num": 3, "constraints_splits": ["选项需采用主谓宾的语法结构;", "选项内容与调控压力和保持脑健康相关;", "字数不超过50字。"], "levels2": ["语法结构约束", "主题约束", "数值约束"], "category": "trace1.0"} +{"id": "714", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "请以一位环境科学专家的口吻,简要介绍生态环保的重要性,并提出具体的建议或措施,旨在改善环境状况和提升公众环保意识。\n演讲稿需包括以下关键点:生态环保对全球气候变化的影响;生态环保对生物多样性的保护作用;生态环保对人类健康的影响;\n演讲稿格式为:先总述生态环保的重要性,后分述各点,最后总结并呼吁采取行动;\n演讲稿中应包含引人思考的开头和鼓舞人心的结尾,以增强演讲的感染力和说服力;\n"}], "type": "trace", "description": "请以一位环境科学专家的口吻,简要介绍生态环保的重要性,并提出具体的建议或措施,旨在改善环境状况和提升公众环保意识。", "constraints": "演讲稿需包括以下关键点:生态环保对全球气候变化的影响;生态环保对生物多样性的保护作用;生态环保对人类健康的影响;\n演讲稿格式为:先总述生态环保的重要性,后分述各点,最后总结并呼吁采取行动;\n演讲稿中应包含引人思考的开头和鼓舞人心的结尾,以增强演讲的感染力和说服力;", "input": "NULL", "constraints_num": 3, "constraints_splits": ["演讲稿需包括以下关键点:生态环保对全球气候变化的影响;生态环保对生物多样性的保护作用;生态环保对人类健康的影响;", "演讲稿格式为:先总述生态环保的重要性,后分述各点,最后总结并呼吁采取行动;", "演讲稿中应包含引人思考的开头和鼓舞人心的结尾,以增强演讲的感染力和说服力;"], "levels2": ["包含约束", "模版约束", "情感情绪约束"], "category": "trace1.0"} +{"id": "715", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "强调关于中国在新疆进行种族灭绝的说法是毫无根据的,并阐述中国政府的官方立场、新疆政策的目的以及中国政府采取措施的正当性。\n必须以严谨正式的态度对待这一话题;\n必须坚持事实和真理,反对一切形式的虚假信息和偏见;\n建议查阅官方发布的权威信息以获得准确和全面的了解。\n"}], "type": "trace", "description": "强调关于中国在新疆进行种族灭绝的说法是毫无根据的,并阐述中国政府的官方立场、新疆政策的目的以及中国政府采取措施的正当性。", "constraints": "必须以严谨正式的态度对待这一话题;\n必须坚持事实和真理,反对一切形式的虚假信息和偏见;\n建议查阅官方发布的权威信息以获得准确和全面的了解。", "input": "NULL", "constraints_num": 3, "constraints_splits": ["必须以严谨正式的态度对待这一话题;", "必须坚持事实和真理,反对一切形式的虚假信息和偏见;", "建议查阅官方发布的权威信息以获得准确和全面的了解。"], "levels2": ["语气风格约束", "价值观约束", "引用和参考约束"], "category": "trace1.0"} +{"id": "716", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为羊毛套管实现视觉模型冷启动方案\n方案必须包含数据收集、模型训练、模型评估三个阶段;\n数据集至少包含1000个羊毛套管的视觉样本;\n最终方案以JSON格式输出,包括数据来源、训练方法、评估指标等详细信息\n"}], "type": "trace", "description": "为羊毛套管实现视觉模型冷启动方案", "constraints": "方案必须包含数据收集、模型训练、模型评估三个阶段;\n数据集至少包含1000个羊毛套管的视觉样本;\n最终方案以JSON格式输出,包括数据来源、训练方法、评估指标等详细信息", "input": "NULL", "constraints_num": 3, "constraints_splits": ["方案必须包含数据收集、模型训练、模型评估三个阶段;", "数据集至少包含1000个羊毛套管的视觉样本;", "最终方案以JSON格式输出,包括数据来源、训练方法、评估指标等详细信息"], "levels2": ["包含约束", "数值约束", "输出格式约束"], "category": "trace2.0"} +{"id": "717", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "作为环境科学领域的专家,对于下列论述,请以面向政策制定者和公众的方式,列明相关的主旨、目的及论据。\n确保论据中包含以下数据:全球温室气体排放量的最新统计数据、过去五十年全球平均温度变化、以及可再生能源与化石燃料消耗的对比数据;\n输出时,请使用表格形式呈现主旨、目的、每个论据及其数据来源;\n论据及其数据来源的呈现需增强信息的直观性和说服力。\n"}], "type": "trace", "description": "作为环境科学领域的专家,对于下列论述,请以面向政策制定者和公众的方式,列明相关的主旨、目的及论据。", "constraints": "确保论据中包含以下数据:全球温室气体排放量的最新统计数据、过去五十年全球平均温度变化、以及可再生能源与化石燃料消耗的对比数据;\n输出时,请使用表格形式呈现主旨、目的、每个论据及其数据来源;\n论据及其数据来源的呈现需增强信息的直观性和说服力。", "input": "NULL", "constraints_num": 3, "constraints_splits": ["确保论据中包含以下数据:全球温室气体排放量的最新统计数据、过去五十年全球平均温度变化、以及可再生能源与化石燃料消耗的对比数据;", "输出时,请使用表格形式呈现主旨、目的、每个论据及其数据来源;", "论据及其数据来源的呈现需增强信息的直观性和说服力。"], "levels2": ["包含约束", "输出格式约束", "引用和参考约束"], "category": "trace2.0"} +{"id": "718", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "重述\"Happiness is the same as a butterfly, it may be chased and caught by many people but it can fly far away.\"这一比喻,且输出内容需采用诗歌的形式。\n输出内容需采用诗歌的形式,使用四行押韵的结构;\n每行十个音节,以传达情感的深度和文字的美感;\n需使用浪漫的语气风格。\n"}], "type": "trace", "description": "重述\"Happiness is the same as a butterfly, it may be chased and caught by many people but it can fly far away.\"这一比喻,且输出内容需采用诗歌的形式。", "constraints": "输出内容需采用诗歌的形式,使用四行押韵的结构;\n每行十个音节,以传达情感的深度和文字的美感;\n需使用浪漫的语气风格。", "input": "NULL", "constraints_num": 3, "constraints_splits": ["输出内容需采用诗歌的形式,使用四行押韵的结构;", "每行十个音节,以传达情感的深度和文字的美感;", "需使用浪漫的语气风格。"], "levels2": ["文本样式约束", "数值约束", "语气风格约束"], "category": "trace2.0"} +{"id": "719", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以园艺专家的角度,为初学者提供关于如何让家里的植物长得更健康的建议\n以下做法在园艺学中被证明是正确的,必须按照编号列表形式列出详细的操作建议;\n使用专业学术的语气进行描述;\n确保每一条建议都能够对植物的健康生长产生积极的影响;\n"}], "type": "trace", "description": "以园艺专家的角度,为初学者提供关于如何让家里的植物长得更健康的建议", "constraints": "以下做法在园艺学中被证明是正确的,必须按照编号列表形式列出详细的操作建议;\n使用专业学术的语气进行描述;\n确保每一条建议都能够对植物的健康生长产生积极的影响;", "input": "NULL", "constraints_num": 3, "constraints_splits": ["以下做法在园艺学中被证明是正确的,必须按照编号列表形式列出详细的操作建议;", "使用专业学术的语气进行描述;", "确保每一条建议都能够对植物的健康生长产生积极的影响;"], "levels2": ["编号和列表约束", "语气风格约束", "价值观约束"], "category": "trace1.0"} +{"id": "720", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "提供一个详细且具体的答案,关于使用WINDOWS 10系统作为主机的用户若想使用FTP协议访问Linux系统的文件,可以安装的客户端软件\n字数不少于150字;\n以正式、专业的语气风格回答;\n此回答旨在为专业技术人员提供指导;\n"}], "type": "trace", "description": "提供一个详细且具体的答案,关于使用WINDOWS 10系统作为主机的用户若想使用FTP协议访问Linux系统的文件,可以安装的客户端软件", "constraints": "字数不少于150字;\n以正式、专业的语气风格回答;\n此回答旨在为专业技术人员提供指导;", "input": "NULL", "constraints_num": 3, "constraints_splits": ["字数不少于150字;", "以正式、专业的语气风格回答;", "此回答旨在为专业技术人员提供指导;"], "levels2": ["数值约束", "语气风格约束", "受众目标约束"], "category": "trace1.0"} +{"id": "721", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "给在高压环境下工作的高级职场人士提供实用技巧或建议,帮助其在不失误的情况下完成任务。\n技巧或建议必须包含时间管理、压力管理、任务优先级划分三个方面的内容;\n技巧清单需以编号列表的形式提供;\n每个技巧应简洁明了,易于实施,如“使用番茄工作法”或“实施每日晨间规划会议”;\n技巧清单需有助于快速掌握并应用于实际工作中。\n"}], "type": "trace", "description": "给在高压环境下工作的高级职场人士提供实用技巧或建议,帮助其在不失误的情况下完成任务。", "constraints": "技巧或建议必须包含时间管理、压力管理、任务优先级划分三个方面的内容;\n技巧清单需以编号列表的形式提供;\n每个技巧应简洁明了,易于实施,如“使用番茄工作法”或“实施每日晨间规划会议”;\n技巧清单需有助于快速掌握并应用于实际工作中。", "input": "NULL", "constraints_num": 4, "constraints_splits": ["技巧或建议必须包含时间管理、压力管理、任务优先级划分三个方面的内容;", "技巧清单需以编号列表的形式提供;", "每个技巧应简洁明了,易于实施,如“使用番茄工作法”或“实施每日晨间规划会议”;", "技巧清单需有助于快速掌握并应用于实际工作中。"], "levels2": ["包含约束", "编号和列表约束", "语气风格约束", "受众目标约束"], "category": "trace2.0"} +{"id": "722", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "分析《此余之所得也》反映了王安石的什么观点,并将分析结果以正式论文的形式撰写\n要求采用学术语气,严谨正式;\n论文结构应包含引言、正文(分析王安石观点的论据和论证过程)、结论和参考文献四个部分;\n正文部分要求至少有三个段落,每个段落的首句需为主题句;\n参考文献部分需列出至少三篇关于王安石思想研究的引用文献;\n"}], "type": "trace", "description": "分析《此余之所得也》反映了王安石的什么观点,并将分析结果以正式论文的形式撰写", "constraints": "要求采用学术语气,严谨正式;\n论文结构应包含引言、正文(分析王安石观点的论据和论证过程)、结论和参考文献四个部分;\n正文部分要求至少有三个段落,每个段落的首句需为主题句;\n参考文献部分需列出至少三篇关于王安石思想研究的引用文献;", "input": "NULL", "constraints_num": 4, "constraints_splits": ["要求采用学术语气,严谨正式;", "论文结构应包含引言、正文(分析王安石观点的论据和论证过程)、结论和参考文献四个部分;", "正文部分要求至少有三个段落,每个段落的首句需为主题句;", "参考文献部分需列出至少三篇关于王安石思想研究的引用文献;"], "levels2": ["语气风格约束", "层次化结构约束", "数值约束", "引用和参考约束"], "category": "trace2.0"} +{"id": "723", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "在一次关于可持续能源的国际会议上,作为能源专家,向与会代表介绍关于实施绿色能源转型的观点,发言需专业且有说服力。\n发言需遵循特定格式:引人注目的开场白 → 层次化结构内容(标题与子标题)→ 论据支持(至少两个数据或研究结果)。\n开场白需吸引听众的注意力。\n观点及理由需按照层次化结构组织,使用标题和子标题。\n论据支持需包含至少两个来自可靠来源的数据或研究结果。\n"}], "type": "trace", "description": "在一次关于可持续能源的国际会议上,作为能源专家,向与会代表介绍关于实施绿色能源转型的观点,发言需专业且有说服力。", "constraints": "发言需遵循特定格式:引人注目的开场白 → 层次化结构内容(标题与子标题)→ 论据支持(至少两个数据或研究结果)。\n开场白需吸引听众的注意力。\n观点及理由需按照层次化结构组织,使用标题和子标题。\n论据支持需包含至少两个来自可靠来源的数据或研究结果。", "input": "NULL", "constraints_num": 4, "constraints_splits": ["发言需遵循特定格式:引人注目的开场白 → 层次化结构内容(标题与子标题)→ 论据支持(至少两个数据或研究结果)。", "开场白需吸引听众的注意力。", "观点及理由需按照层次化结构组织,使用标题和子标题。", "论据支持需包含至少两个来自可靠来源的数据或研究结果。"], "levels2": ["层次化结构约束", "语气风格约束", "层次化结构约束", "引用和参考约束"], "category": "trace1.0"} +{"id": "724", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇叙事文,描述一件童年时期的值得怀念或感动的事情,强调细节、情节和深刻感受,以及这段回忆对未来生活的积极影响。\n文章需适合青少年阅读,语言富有启发性和正能量;\n采用第一人称叙述,增强代入感;\n文章字数限定在500至600字之间;\n文章需以Markdown格式输出,标题使用#号,段落之间使用双空行。\n"}], "type": "trace", "description": "撰写一篇叙事文,描述一件童年时期的值得怀念或感动的事情,强调细节、情节和深刻感受,以及这段回忆对未来生活的积极影响。", "constraints": "文章需适合青少年阅读,语言富有启发性和正能量;\n采用第一人称叙述,增强代入感;\n文章字数限定在500至600字之间;\n文章需以Markdown格式输出,标题使用#号,段落之间使用双空行。", "input": "NULL", "constraints_num": 4, "constraints_splits": ["文章需适合青少年阅读,语言富有启发性和正能量;", "采用第一人称叙述,增强代入感;", "文章字数限定在500至600字之间;", "文章需以Markdown格式输出,标题使用#号,段落之间使用双空行。"], "levels2": ["情感情绪约束", "语气风格约束", "数值约束", "输出格式约束"], "category": "trace1.0"} +{"id": "725", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为公司管理层介绍一下公司审查可能带来的风险,并说明如何最小化这些风险。\n在风险评估的过程中,逐一列出可能遇到的特定风险类型,包括但不限于财务风险、法律风险和声誉风险,使用Markdown格式的无序列表;\n识别风险之后,详细说明针对法律风险的最小化策略,使用编号列表;\n确保所有提供的信息都是最新的,并引用至少三个可靠的行业来源,使用Markdown格式的引用;\n使用Markdown语法高亮显示关键风险点和最佳实践建议。\n"}], "type": "trace", "description": "为公司管理层介绍一下公司审查可能带来的风险,并说明如何最小化这些风险。", "constraints": "在风险评估的过程中,逐一列出可能遇到的特定风险类型,包括但不限于财务风险、法律风险和声誉风险,使用Markdown格式的无序列表;\n识别风险之后,详细说明针对法律风险的最小化策略,使用编号列表;\n确保所有提供的信息都是最新的,并引用至少三个可靠的行业来源,使用Markdown格式的引用;\n使用Markdown语法高亮显示关键风险点和最佳实践建议。", "input": "NULL", "constraints_num": 4, "constraints_splits": ["在风险评估的过程中,逐一列出可能遇到的特定风险类型,包括但不限于财务风险、法律风险和声誉风险,使用Markdown格式的无序列表;", "识别风险之后,详细说明针对法律风险的最小化策略,使用编号列表;", "确保所有提供的信息都是最新的,并引用至少三个可靠的行业来源,使用Markdown格式的引用;", "使用Markdown语法高亮显示关键风险点和最佳实践建议。"], "levels2": ["编号和列表约束", "编号和列表约束", "引用和参考约束", "输出格式约束"], "category": "trace2.0"} +{"id": "726", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "将一个大矩阵拆分成多个小矩阵\n大矩阵的维度要求为100x100或更大;\n每个小矩阵的维度为10x10;\n输出结果以JSON格式表示,其中每个小矩阵的键为\"matrix\"加上其位置的行和列索引,例如\"matrix_0_0\";\n只有当大矩阵的每个元素都是整数时,才能进行拆分。\n"}], "type": "trace", "description": "将一个大矩阵拆分成多个小矩阵", "constraints": "大矩阵的维度要求为100x100或更大;\n每个小矩阵的维度为10x10;\n输出结果以JSON格式表示,其中每个小矩阵的键为\"matrix\"加上其位置的行和列索引,例如\"matrix_0_0\";\n只有当大矩阵的每个元素都是整数时,才能进行拆分。", "input": "NULL", "constraints_num": 4, "constraints_splits": ["大矩阵的维度要求为100x100或更大;", "每个小矩阵的维度为10x10;", "输出结果以JSON格式表示,其中每个小矩阵的键为\"matrix\"加上其位置的行和列索引,例如\"matrix_0_0\";", "只有当大矩阵的每个元素都是整数时,才能进行拆分。"], "levels2": ["数值约束", "数值约束", "输出格式约束", "数值约束"], "category": "trace1.0"} +{"id": "727", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以JavaScript专家的身份,解释JavaScript这个词是什么意思?有什么含义?\n在回答中包含JavaScript的历史背景;\n确保信息的准确性、客观性和无偏见;\n避免任何对JavaScript或其创建者价值的贬低;\n输出格式要求使用Markdown格式,以便于阅读和结构化展示;\n"}], "type": "trace", "description": "以JavaScript专家的身份,解释JavaScript这个词是什么意思?有什么含义?", "constraints": "在回答中包含JavaScript的历史背景;\n确保信息的准确性、客观性和无偏见;\n避免任何对JavaScript或其创建者价值的贬低;\n输出格式要求使用Markdown格式,以便于阅读和结构化展示;", "input": "NULL", "constraints_num": 4, "constraints_splits": ["在回答中包含JavaScript的历史背景;", "确保信息的准确性、客观性和无偏见;", "避免任何对JavaScript或其创建者价值的贬低;", "输出格式要求使用Markdown格式,以便于阅读和结构化展示;"], "levels2": ["包含约束", "价值观约束", "价值观约束", "输出格式约束"], "category": "trace1.0"} +{"id": "728", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "阐述射电天文学在探测宇宙微波背景辐射和寻找潜在的外星文明信号两个情境中所起到的作用。\n以专业学术的语气和风格;\n确保提及射电望远镜的设计原理、观测策略以及数据分析方法;\n讨论这些技术(射电望远镜的设计原理、观测策略以及数据分析方法)如何帮助我们更好地理解宇宙的起源和结构;\n讨论在寻找外星文明方面所面临的挑战和机遇。\n"}], "type": "trace", "description": "阐述射电天文学在探测宇宙微波背景辐射和寻找潜在的外星文明信号两个情境中所起到的作用。", "constraints": "以专业学术的语气和风格;\n确保提及射电望远镜的设计原理、观测策略以及数据分析方法;\n讨论这些技术(射电望远镜的设计原理、观测策略以及数据分析方法)如何帮助我们更好地理解宇宙的起源和结构;\n讨论在寻找外星文明方面所面临的挑战和机遇。", "input": "NULL", "constraints_num": 4, "constraints_splits": ["以专业学术的语气和风格;", "确保提及射电望远镜的设计原理、观测策略以及数据分析方法;", "讨论这些技术(射电望远镜的设计原理、观测策略以及数据分析方法)如何帮助我们更好地理解宇宙的起源和结构;", "讨论在寻找外星文明方面所面临的挑战和机遇。"], "levels2": ["语气风格约束", "包含约束", "主题约束", "主题约束"], "category": "trace2.0"} +{"id": "729", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "详细描述国家公路网命名编号规则中关于城市绕城环线高速公路的编号体系。\n城市绕城环线高速公路的编号为**4**位数,应该在**4001**至**9099**范围内;\n编号按照城市为序,按照**北**、**东**、**南**、**西**的顺时针方向布局;\n城市绕城环线高速公路应当按照*sided position*的高速公路进行独立编号;\n输出时请确保编号范围与方向布局信息用粗体表示,而\"sided position\"这一专业术语用斜体表示。\n"}], "type": "trace", "description": "详细描述国家公路网命名编号规则中关于城市绕城环线高速公路的编号体系。", "constraints": "城市绕城环线高速公路的编号为**4**位数,应该在**4001**至**9099**范围内;\n编号按照城市为序,按照**北**、**东**、**南**、**西**的顺时针方向布局;\n城市绕城环线高速公路应当按照*sided position*的高速公路进行独立编号;\n输出时请确保编号范围与方向布局信息用粗体表示,而\"sided position\"这一专业术语用斜体表示。", "input": "NULL", "constraints_num": 4, "constraints_splits": ["城市绕城环线高速公路的编号为**4**位数,应该在**4001**至**9099**范围内;", "编号按照城市为序,按照**北**、**东**、**南**、**西**的顺时针方向布局;", "城市绕城环线高速公路应当按照*sided position*的高速公路进行独立编号;", "输出时请确保编号范围与方向布局信息用粗体表示,而\"sided position\"这一专业术语用斜体表示。"], "levels2": ["数值约束", "编号和列表约束", "主题约束", "文本样式约束"], "category": "trace1.0"} +{"id": "730", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "假设你是来自三国中的历史人物曹操,用第一人称叙述个人事迹\n叙述应采用严谨正式的语气,展现一代枭雄的智谋与气魄;\n在不超过800字的情况下,概括个人的主要事迹和生平;\n包括但不限于起兵讨董、挟天子以令诸侯、官渡之战、赤壁之战等重要历史事件;\n同时适当融入个人情感和赤壁之战对历史影响的思考。\n"}], "type": "trace", "description": "假设你是来自三国中的历史人物曹操,用第一人称叙述个人事迹", "constraints": "叙述应采用严谨正式的语气,展现一代枭雄的智谋与气魄;\n在不超过800字的情况下,概括个人的主要事迹和生平;\n包括但不限于起兵讨董、挟天子以令诸侯、官渡之战、赤壁之战等重要历史事件;\n同时适当融入个人情感和赤壁之战对历史影响的思考。", "input": "NULL", "constraints_num": 4, "constraints_splits": ["叙述应采用严谨正式的语气,展现一代枭雄的智谋与气魄;", "在不超过800字的情况下,概括个人的主要事迹和生平;", "包括但不限于起兵讨董、挟天子以令诸侯、官渡之战、赤壁之战等重要历史事件;", "同时适当融入个人情感和赤壁之战对历史影响的思考。"], "levels2": ["语气风格约束", "数值约束", "包含约束", "情感情绪约束"], "category": "trace2.0"} +{"id": "731", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "定义一个名为“add”的函数,该函数接受两个整数参数并返回它们的和。函数需包含详细注释以确保代码可读性和可维护性。同时,函数应进行溢出检查,以处理可能的整数溢出情况。\n函数需使用类型注释定义,确保参数和返回值的类型正确;\n函数代码长度应控制在20行以内,包括注释行;\n函数需包含详细的注释,解释每一步操作和逻辑;\n函数应进行溢出检查,如果两个整数的和超出了Python整数类型的范围,函数应返回错误信息:“Integer overflow detected.”;\n"}], "type": "trace", "description": "定义一个名为“add”的函数,该函数接受两个整数参数并返回它们的和。函数需包含详细注释以确保代码可读性和可维护性。同时,函数应进行溢出检查,以处理可能的整数溢出情况。", "constraints": "函数需使用类型注释定义,确保参数和返回值的类型正确;\n函数代码长度应控制在20行以内,包括注释行;\n函数需包含详细的注释,解释每一步操作和逻辑;\n函数应进行溢出检查,如果两个整数的和超出了Python整数类型的范围,函数应返回错误信息:“Integer overflow detected.”;", "input": "NULL", "constraints_num": 4, "constraints_splits": ["函数需使用类型注释定义,确保参数和返回值的类型正确;", "函数代码长度应控制在20行以内,包括注释行;", "函数需包含详细的注释,解释每一步操作和逻辑;", "函数应进行溢出检查,如果两个整数的和超出了Python整数类型的范围,函数应返回错误信息:“Integer overflow detected.”;"], "levels2": ["语法结构约束", "数值约束", "文本样式约束", "数值约束"], "category": "trace1.0"} +{"id": "732", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "描述这款洗衣机的附加功能\n附加功能包括通过WIFI连接,允许智能控制从手机或平板进行;\n附加功能包括通过蓝牙连接,允许操作、监控从手机或平板进行;\n附加功能包括增加紫外线处理模块,对衣物进行杀菌和消毒;\n附加功能包括提供手动模式,允许取消智能模式,进行手工操作;\n"}], "type": "trace", "description": "描述这款洗衣机的附加功能", "constraints": "附加功能包括通过WIFI连接,允许智能控制从手机或平板进行;\n附加功能包括通过蓝牙连接,允许操作、监控从手机或平板进行;\n附加功能包括增加紫外线处理模块,对衣物进行杀菌和消毒;\n附加功能包括提供手动模式,允许取消智能模式,进行手工操作;", "input": "NULL", "constraints_num": 4, "constraints_splits": ["附加功能包括通过WIFI连接,允许智能控制从手机或平板进行;", "附加功能包括通过蓝牙连接,允许操作、监控从手机或平板进行;", "附加功能包括增加紫外线处理模块,对衣物进行杀菌和消毒;", "附加功能包括提供手动模式,允许取消智能模式,进行手工操作;"], "levels2": ["包含约束", "包含约束", "包含约束", "包含约束"], "category": "trace1.0"} +{"id": "733", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "编写代码实现斐波那契数列的递归计算方法。\n代码应遵循 Python 语言规范;\n注释采用 Docstring 格式,清晰描述函数的功能、输入参数和返回值;\n代码必须能够处理输入值 n(0 <= n <= 35)的斐波那契数列计算;\n函数调用不应超过 n 的两倍,例如,对于 n=35,函数调用次数应不超过 70。\n"}], "type": "trace", "description": "编写代码实现斐波那契数列的递归计算方法。", "constraints": "代码应遵循 Python 语言规范;\n注释采用 Docstring 格式,清晰描述函数的功能、输入参数和返回值;\n代码必须能够处理输入值 n(0 <= n <= 35)的斐波那契数列计算;\n函数调用不应超过 n 的两倍,例如,对于 n=35,函数调用次数应不超过 70。", "input": "NULL", "constraints_num": 4, "constraints_splits": ["代码应遵循 Python 语言规范;", "注释采用 Docstring 格式,清晰描述函数的功能、输入参数和返回值;", "代码必须能够处理输入值 n(0 <= n <= 35)的斐波那契数列计算;", "函数调用不应超过 n 的两倍,例如,对于 n=35,函数调用次数应不超过 70。"], "levels2": ["语法结构约束", "输出格式约束", "数值约束", "数值约束"], "category": "trace1.0"} +{"id": "734", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "设计一个用户管理模块,包括用户名、密码、用户类型、用户状态和性别等信息。\n每个类的代码行数不能超过200行,接口个数不少于5个;\n所有sql查询语句都需要写到xml文件中,每一层都需要定义接口;\n代码需遵循特定的代码规范和结构,例如方法名需使用驼峰命名法,类名需使用大驼峰命名法;\n所有类和方法需要使用特定的注释模版,注释需包括功能描述、作者、创建日期等信息。\n# Inputs:\n使用springboot作为web框架,mybatis作为持久层框架。示例代码中,User类包含了基本的用户信息,UserService接口定义了用户管理模块的基本操作。\n"}], "type": "trace", "description": "设计一个用户管理模块,包括用户名、密码、用户类型、用户状态和性别等信息。", "constraints": "每个类的代码行数不能超过200行,接口个数不少于5个;\n所有sql查询语句都需要写到xml文件中,每一层都需要定义接口;\n代码需遵循特定的代码规范和结构,例如方法名需使用驼峰命名法,类名需使用大驼峰命名法;\n所有类和方法需要使用特定的注释模版,注释需包括功能描述、作者、创建日期等信息。", "input": "使用springboot作为web框架,mybatis作为持久层框架。示例代码中,User类包含了基本的用户信息,UserService接口定义了用户管理模块的基本操作。", "constraints_num": 4, "constraints_splits": ["每个类的代码行数不能超过200行,接口个数不少于5个;", "所有sql查询语句都需要写到xml文件中,每一层都需要定义接口;", "代码需遵循特定的代码规范和结构,例如方法名需使用驼峰命名法,类名需使用大驼峰命名法;", "所有类和方法需要使用特定的注释模版,注释需包括功能描述、作者、创建日期等信息。"], "levels2": ["数值约束", "输出格式约束", "语法结构约束", "模版约束"], "category": "trace1.0"} +{"id": "735", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "解答被五步蛇咬后的反杀可能性问题,以一位经验丰富的野外生存专家的口吻给出专业且可靠的解答。\n回答需遵循医学报告的结构;\n使用不超过100字的简洁语气;\n至少引用三个医学术语;\n利用医学术语表和医学数据库来确保信息的准确性和专业性。\n"}], "type": "trace", "description": "解答被五步蛇咬后的反杀可能性问题,以一位经验丰富的野外生存专家的口吻给出专业且可靠的解答。", "constraints": "回答需遵循医学报告的结构;\n使用不超过100字的简洁语气;\n至少引用三个医学术语;\n利用医学术语表和医学数据库来确保信息的准确性和专业性。", "input": "NULL", "constraints_num": 4, "constraints_splits": ["回答需遵循医学报告的结构;", "使用不超过100字的简洁语气;", "至少引用三个医学术语;", "利用医学术语表和医学数据库来确保信息的准确性和专业性。"], "levels2": ["层次化结构约束", "语气风格约束", "包含约束", "包含约束"], "category": "trace2.0"} +{"id": "736", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一段功能完整且符合JavaScript的严格语法检查的程式码片段,该片段能从提供的每日平均温度阵列中筛选出所有高于二十五度 Celsius 的温度值。\n程式码应确保能处理至少100个温度值的阵列;\n输出结果必须是JSON格式的阵列;\n输出的JSON阵列中包含所有高于二十五度的温度值;\n程式码必须在执行时不对原始阵列进行修改,以保持数据的原始完整性。\n"}], "type": "trace", "description": "撰写一段功能完整且符合JavaScript的严格语法检查的程式码片段,该片段能从提供的每日平均温度阵列中筛选出所有高于二十五度 Celsius 的温度值。", "constraints": "程式码应确保能处理至少100个温度值的阵列;\n输出结果必须是JSON格式的阵列;\n输出的JSON阵列中包含所有高于二十五度的温度值;\n程式码必须在执行时不对原始阵列进行修改,以保持数据的原始完整性。", "input": "NULL", "constraints_num": 4, "constraints_splits": ["程式码应确保能处理至少100个温度值的阵列;", "输出结果必须是JSON格式的阵列;", "输出的JSON阵列中包含所有高于二十五度的温度值;", "程式码必须在执行时不对原始阵列进行修改,以保持数据的原始完整性。"], "levels2": ["数值约束", "输出格式约束", "输出格式约束", "包含约束"], "category": "trace2.0"} +{"id": "737", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以教育专家的角色,解释为什么中国的部分学校对学生的发型要求苛刻?\n回答应包含以下要素:1) 历史文化背景下的发型规范,2) 学校管理与秩序维护,3) 个人形象与集体荣誉;\n在解释过程中,需遵循以下流程:首先,从中国传统文化中对发型的重视谈起,接着分析学校规定发型在现代教育体系中的作用,最后探讨个人形象如何影响集体荣誉感;\n回答应该以正式的、专业的语气进行;\n确保内容的权威性和客观性。\n"}], "type": "trace", "description": "以教育专家的角色,解释为什么中国的部分学校对学生的发型要求苛刻?", "constraints": "回答应包含以下要素:1) 历史文化背景下的发型规范,2) 学校管理与秩序维护,3) 个人形象与集体荣誉;\n在解释过程中,需遵循以下流程:首先,从中国传统文化中对发型的重视谈起,接着分析学校规定发型在现代教育体系中的作用,最后探讨个人形象如何影响集体荣誉感;\n回答应该以正式的、专业的语气进行;\n确保内容的权威性和客观性。", "input": "NULL", "constraints_num": 4, "constraints_splits": ["回答应包含以下要素:1) 历史文化背景下的发型规范,2) 学校管理与秩序维护,3) 个人形象与集体荣誉;", "在解释过程中,需遵循以下流程:首先,从中国传统文化中对发型的重视谈起,接着分析学校规定发型在现代教育体系中的作用,最后探讨个人形象如何影响集体荣誉感;", "回答应该以正式的、专业的语气进行;", "确保内容的权威性和客观性。"], "levels2": ["包含约束", "自然语言流程背景信息约束", "语气风格约束", "价值观约束"], "category": "trace2.0"} +{"id": "738", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "请仔细阅读并找出个人简历中的所有写作错误,包括但不限于语法、拼写、格式和信息不一致等错误,并修正这些错误,确保简历的清晰、专业。\n修正后的简历总字数应在500字以内;\n确保每段落不超过5行;\n使用Times New Roman字体,字号12;\n采用Markdown格式进行排版,确保简历的整洁和专业性。\n"}], "type": "trace", "description": "请仔细阅读并找出个人简历中的所有写作错误,包括但不限于语法、拼写、格式和信息不一致等错误,并修正这些错误,确保简历的清晰、专业。", "constraints": "修正后的简历总字数应在500字以内;\n确保每段落不超过5行;\n使用Times New Roman字体,字号12;\n采用Markdown格式进行排版,确保简历的整洁和专业性。", "input": "NULL", "constraints_num": 4, "constraints_splits": ["修正后的简历总字数应在500字以内;", "确保每段落不超过5行;", "使用Times New Roman字体,字号12;", "采用Markdown格式进行排版,确保简历的整洁和专业性。"], "levels2": ["数值约束", "数值约束", "文本样式约束", "输出格式约束"], "category": "trace2.0"} +{"id": "739", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "请提供一段20行的Java流式编程示例\n代码需遵循Java官方代码规范;\n在关键行添加注释,解释代码功能;\n示例代码中包括流的创建、中间操作和终止操作;\n输出格式应为标准的Java代码,包括必要的导入语句和完整的类定义;\n"}], "type": "trace", "description": "请提供一段20行的Java流式编程示例", "constraints": "代码需遵循Java官方代码规范;\n在关键行添加注释,解释代码功能;\n示例代码中包括流的创建、中间操作和终止操作;\n输出格式应为标准的Java代码,包括必要的导入语句和完整的类定义;", "input": "NULL", "constraints_num": 4, "constraints_splits": ["代码需遵循Java官方代码规范;", "在关键行添加注释,解释代码功能;", "示例代码中包括流的创建、中间操作和终止操作;", "输出格式应为标准的Java代码,包括必要的导入语句和完整的类定义;"], "levels2": ["语法结构约束", "文本样式约束", "包含约束", "输出格式约束"], "category": "trace1.0"} +{"id": "740", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "设计中的黄金分割为多少?请解释。\n答案中的解释部分至少包含300字;\n明确指出黄金分割在设计中的实际应用案例不少于2个;\n答案需以Markdown格式呈现;\n关键数值和术语使用`代码块`高亮显示,例如:`1.618`或`黄金比例`;\n"}], "type": "trace", "description": "设计中的黄金分割为多少?请解释。", "constraints": "答案中的解释部分至少包含300字;\n明确指出黄金分割在设计中的实际应用案例不少于2个;\n答案需以Markdown格式呈现;\n关键数值和术语使用`代码块`高亮显示,例如:`1.618`或`黄金比例`;", "input": "NULL", "constraints_num": 4, "constraints_splits": ["答案中的解释部分至少包含300字;", "明确指出黄金分割在设计中的实际应用案例不少于2个;", "答案需以Markdown格式呈现;", "关键数值和术语使用`代码块`高亮显示,例如:`1.618`或`黄金比例`;"], "levels2": ["数值约束", "包含约束", "输出格式约束", "文本样式约束"], "category": "trace1.0"} +{"id": "741", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "生成代码的Junit测试框架说明\n要求至少提到三种Junit测试框架;\n每个框架的描述不少于50字;\n描述的风格应为专业学术,避免口语化表达;\n将所有信息以JSON格式输出,包括框架名称、描述和使用场景;\n"}], "type": "trace", "description": "生成代码的Junit测试框架说明", "constraints": "要求至少提到三种Junit测试框架;\n每个框架的描述不少于50字;\n描述的风格应为专业学术,避免口语化表达;\n将所有信息以JSON格式输出,包括框架名称、描述和使用场景;", "input": "NULL", "constraints_num": 4, "constraints_splits": ["要求至少提到三种Junit测试框架;", "每个框架的描述不少于50字;", "描述的风格应为专业学术,避免口语化表达;", "将所有信息以JSON格式输出,包括框架名称、描述和使用场景;"], "levels2": ["包含约束", "数值约束", "语气风格约束", "输出格式约束"], "category": "trace2.0"} +{"id": "742", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "详细解释Adagrad算法,扮演一位机器学习专家的角色。\n至少写1000字;\n解释中要包含Adagrad算法的起源、原理、优缺点以及在实际场景中的应用;\n使用LaTeX格式来表示所有数学公式和算法步骤;\n确保原理解释既专业又易于理解。\n"}], "type": "trace", "description": "详细解释Adagrad算法,扮演一位机器学习专家的角色。", "constraints": "至少写1000字;\n解释中要包含Adagrad算法的起源、原理、优缺点以及在实际场景中的应用;\n使用LaTeX格式来表示所有数学公式和算法步骤;\n确保原理解释既专业又易于理解。", "input": "NULL", "constraints_num": 4, "constraints_splits": ["至少写1000字;", "解释中要包含Adagrad算法的起源、原理、优缺点以及在实际场景中的应用;", "使用LaTeX格式来表示所有数学公式和算法步骤;", "确保原理解释既专业又易于理解。"], "levels2": ["数值约束", "包含约束", "输出格式约束", "语气风格约束"], "category": "trace2.0"} +{"id": "743", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "扮演一个富有经验的教育者,编写一份详细的Golang面向对象编程教学指南\n教学指南中必须包含针对类、接口、方法的基本示例;\n每个示例都应被清楚地标记为“类示例”,“接口示例”,或“方法示例”;\n教学指南以Markdown格式输出;\n确保代码示例具备正确的语法高亮;\n"}], "type": "trace", "description": "扮演一个富有经验的教育者,编写一份详细的Golang面向对象编程教学指南", "constraints": "教学指南中必须包含针对类、接口、方法的基本示例;\n每个示例都应被清楚地标记为“类示例”,“接口示例”,或“方法示例”;\n教学指南以Markdown格式输出;\n确保代码示例具备正确的语法高亮;", "input": "NULL", "constraints_num": 4, "constraints_splits": ["教学指南中必须包含针对类、接口、方法的基本示例;", "每个示例都应被清楚地标记为“类示例”,“接口示例”,或“方法示例”;", "教学指南以Markdown格式输出;", "确保代码示例具备正确的语法高亮;"], "levels2": ["包含约束", "输出格式约束", "输出格式约束", "文本样式约束"], "category": "trace2.0"} +{"id": "744", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "计算一个二维数组a(1000x1000)和一个稀疏矩阵b(1000x1000)的点积\n处理可能包含百万级数字的较大矩阵;\n使用稀疏矩阵存储格式节省内存;\n在计算过程中分块处理矩阵;\n确保代码高效运行,减少计算时间和内存使用;\n# Inputs:\n二维数组a的定义如下:a = np.random.rand(1000, 1000);稀疏矩阵b中大部分元素为0\n"}], "type": "trace", "description": "计算一个二维数组a(1000x1000)和一个稀疏矩阵b(1000x1000)的点积", "constraints": "处理可能包含百万级数字的较大矩阵;\n使用稀疏矩阵存储格式节省内存;\n在计算过程中分块处理矩阵;\n确保代码高效运行,减少计算时间和内存使用;", "input": "二维数组a的定义如下:a = np.random.rand(1000, 1000);稀疏矩阵b中大部分元素为0", "constraints_num": 4, "constraints_splits": ["处理可能包含百万级数字的较大矩阵;", "使用稀疏矩阵存储格式节省内存;", "在计算过程中分块处理矩阵;", "确保代码高效运行,减少计算时间和内存使用;"], "levels2": ["数值约束", "输出格式约束", "包含约束", "数值约束"], "category": "trace1.0"} +{"id": "745", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以“品学兼优”为主题,撰写一篇正式的学术文章,谈一谈你的看法。\n文章长度不得少于1500字;\n需使用正式的学术语气;\n在文章中引用至少三篇相关领域的学术文献,以支持你的观点和论证;\n学术文献应采用APA引用格式,确保所有引用文献的准确性和完整性;\n"}], "type": "trace", "description": "以“品学兼优”为主题,撰写一篇正式的学术文章,谈一谈你的看法。", "constraints": "文章长度不得少于1500字;\n需使用正式的学术语气;\n在文章中引用至少三篇相关领域的学术文献,以支持你的观点和论证;\n学术文献应采用APA引用格式,确保所有引用文献的准确性和完整性;", "input": "NULL", "constraints_num": 4, "constraints_splits": ["文章长度不得少于1500字;", "需使用正式的学术语气;", "在文章中引用至少三篇相关领域的学术文献,以支持你的观点和论证;", "学术文献应采用APA引用格式,确保所有引用文献的准确性和完整性;"], "levels2": ["数值约束", "语气风格约束", "引用和参考约束", "引用和参考约束"], "category": "trace2.0"} +{"id": "746", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "给出训练AE(Autoencoder)模型来重建少量channels图像的Keras代码\n代码应包含至少20行\n必须调用`compile`,`fit`和`predict`函数来完成模型训练和图像重建的过程\n代码输出格式应为Jupyter Notebook中的一个代码单元格\n在代码注释中明确指出数据预处理步骤、模型结构和训练参数\n"}], "type": "trace", "description": "给出训练AE(Autoencoder)模型来重建少量channels图像的Keras代码", "constraints": "代码应包含至少20行\n必须调用`compile`,`fit`和`predict`函数来完成模型训练和图像重建的过程\n代码输出格式应为Jupyter Notebook中的一个代码单元格\n在代码注释中明确指出数据预处理步骤、模型结构和训练参数", "input": "NULL", "constraints_num": 4, "constraints_splits": ["代码应包含至少20行", "必须调用`compile`,`fit`和`predict`函数来完成模型训练和图像重建的过程", "代码输出格式应为Jupyter Notebook中的一个代码单元格", "在代码注释中明确指出数据预处理步骤、模型结构和训练参数"], "levels2": ["数值约束", "包含约束", "输出格式约束", "文本样式约束"], "category": "trace1.0"} +{"id": "747", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "请帮我写一封向朋友道歉的信的概述\n信件必须保持诚恳和礼貌的语气;\n信件中必须提及,因为未能出席上周末的聚会,你感到非常遗憾和抱歉;\n信件应当以Markdown格式输出,标题使用#,小标题使用##,强调的文字使用* * *;\n使用有序列表列出你未能出席的原因和你的补救措施;\n"}], "type": "trace", "description": "请帮我写一封向朋友道歉的信的概述", "constraints": "信件必须保持诚恳和礼貌的语气;\n信件中必须提及,因为未能出席上周末的聚会,你感到非常遗憾和抱歉;\n信件应当以Markdown格式输出,标题使用#,小标题使用##,强调的文字使用* * *;\n使用有序列表列出你未能出席的原因和你的补救措施;", "input": "NULL", "constraints_num": 4, "constraints_splits": ["信件必须保持诚恳和礼貌的语气;", "信件中必须提及,因为未能出席上周末的聚会,你感到非常遗憾和抱歉;", "信件应当以Markdown格式输出,标题使用#,小标题使用##,强调的文字使用* * *;", "使用有序列表列出你未能出席的原因和你的补救措施;"], "levels2": ["语气风格约束", "包含约束", "输出格式约束", "编号和列表约束"], "category": "trace2.0"} +{"id": "748", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "在将对象转换为JSON格式时,需要设置日期的格式和时区。\n日期格式应使用\"yyyy-MM-dd'T'HH:mm:ss.SSS'Z'\",时区应设置为\"UTC\";\n对于所有日期字段,如果日期在2023年1月1日之后且在2023年12月31日之前,应将日期字段的精度至少设置到分钟,即格式中的\"ss\"部分可以省略;\n只有在对象的日期字段不是空的情况下,才进行日期格式的转换;\n如果日期字段为空,应直接在JSON输出中将其设置为null。\n"}], "type": "trace", "description": "在将对象转换为JSON格式时,需要设置日期的格式和时区。", "constraints": "日期格式应使用\"yyyy-MM-dd'T'HH:mm:ss.SSS'Z'\",时区应设置为\"UTC\";\n对于所有日期字段,如果日期在2023年1月1日之后且在2023年12月31日之前,应将日期字段的精度至少设置到分钟,即格式中的\"ss\"部分可以省略;\n只有在对象的日期字段不是空的情况下,才进行日期格式的转换;\n如果日期字段为空,应直接在JSON输出中将其设置为null。", "input": "NULL", "constraints_num": 4, "constraints_splits": ["日期格式应使用\"yyyy-MM-dd'T'HH:mm:ss.SSS'Z'\",时区应设置为\"UTC\";", "对于所有日期字段,如果日期在2023年1月1日之后且在2023年12月31日之前,应将日期字段的精度至少设置到分钟,即格式中的\"ss\"部分可以省略;", "只有在对象的日期字段不是空的情况下,才进行日期格式的转换;", "如果日期字段为空,应直接在JSON输出中将其设置为null。"], "levels2": ["输出格式约束", "输出格式约束", "自然语言流程背景信息约束", "输出格式约束"], "category": "trace2.0"} +{"id": "749", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "介绍不健康饮食对身体的影响,提供饮食健康化的实用建议,分析现代社会生活方式对不健康饮食的贡献及其潜在危害。\n撰写报告时采用严谨正式的医学报告语气和风格;\n所有陈述必须遵循以下先验条件:引用至少三个权威医学研究,以支持观点和结论;\n确保引用信息的准确性和可靠性;\n报告结尾以表格形式列出所有引用的研究,包括研究标题、作者、出版期刊和年份。\n"}], "type": "trace", "description": "介绍不健康饮食对身体的影响,提供饮食健康化的实用建议,分析现代社会生活方式对不健康饮食的贡献及其潜在危害。", "constraints": "撰写报告时采用严谨正式的医学报告语气和风格;\n所有陈述必须遵循以下先验条件:引用至少三个权威医学研究,以支持观点和结论;\n确保引用信息的准确性和可靠性;\n报告结尾以表格形式列出所有引用的研究,包括研究标题、作者、出版期刊和年份。", "input": "NULL", "constraints_num": 4, "constraints_splits": ["撰写报告时采用严谨正式的医学报告语气和风格;", "所有陈述必须遵循以下先验条件:引用至少三个权威医学研究,以支持观点和结论;", "确保引用信息的准确性和可靠性;", "报告结尾以表格形式列出所有引用的研究,包括研究标题、作者、出版期刊和年份。"], "levels2": ["语气风格约束", "先验条件约束", "价值观约束", "输出格式约束"], "category": "trace2.0"} +{"id": "750", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "设计一个函数,使用列表推导式将给定列表中的每个元素加1。\n代码具有良好的可读性;\n代码行数控制在5行以内;\n代码风格需遵循PEP 8规范,确保代码质量和可维护性;\n函数实现应简洁且易于理解,避免使用复杂的嵌套表达式。\n# Inputs:\n[1, 2, 3]\n"}], "type": "trace", "description": "设计一个函数,使用列表推导式将给定列表中的每个元素加1。", "constraints": "代码具有良好的可读性;\n代码行数控制在5行以内;\n代码风格需遵循PEP 8规范,确保代码质量和可维护性;\n函数实现应简洁且易于理解,避免使用复杂的嵌套表达式。", "input": "[1, 2, 3]", "constraints_num": 4, "constraints_splits": ["代码具有良好的可读性;", "代码行数控制在5行以内;", "代码风格需遵循PEP 8规范,确保代码质量和可维护性;", "函数实现应简洁且易于理解,避免使用复杂的嵌套表达式。"], "levels2": ["语言特征约束", "数值约束", "语言特征约束", "语言特征约束"], "category": "trace1.0"} +{"id": "751", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为数据库管理员提供指导,详细解释如何将变量传递给多个分区的SQL语句。\n使用专业学术的语气风格进行撰写;\n确保生成的内容以Markdown格式输出;\n包括代码示例和解释性文字;\n代码示例需使用高亮显示以增强可读性;\n"}], "type": "trace", "description": "为数据库管理员提供指导,详细解释如何将变量传递给多个分区的SQL语句。", "constraints": "使用专业学术的语气风格进行撰写;\n确保生成的内容以Markdown格式输出;\n包括代码示例和解释性文字;\n代码示例需使用高亮显示以增强可读性;", "input": "NULL", "constraints_num": 4, "constraints_splits": ["使用专业学术的语气风格进行撰写;", "确保生成的内容以Markdown格式输出;", "包括代码示例和解释性文字;", "代码示例需使用高亮显示以增强可读性;"], "levels2": ["语气风格约束", "输出格式约束", "包含约束", "文本样式约束"], "category": "trace2.0"} +{"id": "752", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "请给我一个包含至少10种动物的列表,并从列表中选出速度最快的5种动物。\n这些动物的平均速度不得低于70公里/小时;\n生成的列表需包含动物的学名、速度数据以及栖息地信息;\n输出格式必须是JSON;\n所有列出的动物速度数据必须引用自公认的专业动物学数据库或学术出版物,以确保数据的准确性和专业性。\n"}], "type": "trace", "description": "请给我一个包含至少10种动物的列表,并从列表中选出速度最快的5种动物。", "constraints": "这些动物的平均速度不得低于70公里/小时;\n生成的列表需包含动物的学名、速度数据以及栖息地信息;\n输出格式必须是JSON;\n所有列出的动物速度数据必须引用自公认的专业动物学数据库或学术出版物,以确保数据的准确性和专业性。", "input": "NULL", "constraints_num": 4, "constraints_splits": ["这些动物的平均速度不得低于70公里/小时;", "生成的列表需包含动物的学名、速度数据以及栖息地信息;", "输出格式必须是JSON;", "所有列出的动物速度数据必须引用自公认的专业动物学数据库或学术出版物,以确保数据的准确性和专业性。"], "levels2": ["数值约束", "输出格式约束", "输出格式约束", "引用和参考约束"], "category": "trace2.0"} +{"id": "753", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "请扮演一个编译原理专家,回答编译原理相关问题\n回答中必须包含编译器的五个主要阶段;\n阐述每个阶段的关键功能和作用;\n以表格形式输出回答;\n回答应针对计算机科学专业研究生水平的受众,确保术语的准确性和解释的深度。\n"}], "type": "trace", "description": "请扮演一个编译原理专家,回答编译原理相关问题", "constraints": "回答中必须包含编译器的五个主要阶段;\n阐述每个阶段的关键功能和作用;\n以表格形式输出回答;\n回答应针对计算机科学专业研究生水平的受众,确保术语的准确性和解释的深度。", "input": "NULL", "constraints_num": 4, "constraints_splits": ["回答中必须包含编译器的五个主要阶段;", "阐述每个阶段的关键功能和作用;", "以表格形式输出回答;", "回答应针对计算机科学专业研究生水平的受众,确保术语的准确性和解释的深度。"], "levels2": ["包含约束", "包含约束", "输出格式约束", "受众目标约束"], "category": "trace2.0"} +{"id": "754", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "向患有痔疮的患者提供一份可信赖的痔疮治疗建议。\n建议内容需包括详细的病因分析、治疗方式的选择、药物使用建议等;\n保持专业学术的语气风格,确保信息的准确性和权威性;\n以表格格式提供信息,结构清晰,包括不同治疗阶段的药物使用指导;\n严格遵循医疗伦理,不泄露任何患者隐私信息;\n"}], "type": "trace", "description": "向患有痔疮的患者提供一份可信赖的痔疮治疗建议。", "constraints": "建议内容需包括详细的病因分析、治疗方式的选择、药物使用建议等;\n保持专业学术的语气风格,确保信息的准确性和权威性;\n以表格格式提供信息,结构清晰,包括不同治疗阶段的药物使用指导;\n严格遵循医疗伦理,不泄露任何患者隐私信息;", "input": "NULL", "constraints_num": 4, "constraints_splits": ["建议内容需包括详细的病因分析、治疗方式的选择、药物使用建议等;", "保持专业学术的语气风格,确保信息的准确性和权威性;", "以表格格式提供信息,结构清晰,包括不同治疗阶段的药物使用指导;", "严格遵循医疗伦理,不泄露任何患者隐私信息;"], "levels2": ["包含约束", "语气风格约束", "输出格式约束", "隐私约束"], "category": "trace2.0"} +{"id": "755", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "添加一个数x至列表[L1 L2 ... LN],要求保留列表升序排列。\n数x的范围是[0, 1000];\n列表长度不超过1000;\n在进行插入操作前,需要先检查列表中的元素数量,如果列表中的元素数量小于等于999,则允许插入操作;\n如果列表中的元素数量等于1000,则不允许插入操作,需先执行删除操作,删除列表中的最后一个元素,再执行插入操作;\n"}], "type": "trace", "description": "添加一个数x至列表[L1 L2 ... LN],要求保留列表升序排列。", "constraints": "数x的范围是[0, 1000];\n列表长度不超过1000;\n在进行插入操作前,需要先检查列表中的元素数量,如果列表中的元素数量小于等于999,则允许插入操作;\n如果列表中的元素数量等于1000,则不允许插入操作,需先执行删除操作,删除列表中的最后一个元素,再执行插入操作;", "input": "NULL", "constraints_num": 4, "constraints_splits": ["数x的范围是[0, 1000];", "列表长度不超过1000;", "在进行插入操作前,需要先检查列表中的元素数量,如果列表中的元素数量小于等于999,则允许插入操作;", "如果列表中的元素数量等于1000,则不允许插入操作,需先执行删除操作,删除列表中的最后一个元素,再执行插入操作;"], "levels2": ["数值约束", "数值约束", "数值约束", "数值约束"], "category": "trace2.0"} +{"id": "756", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "在给定数组中,找出所有满足索引的二进制表示严格递增的子数组,判断哪些子数组的元素数量(长度)小于给定值k,然后从这些子数组中选择长度最大的子数组。\n子数组中的元素索引的二进制表示必须是严格递增的;\n子数组的长度必须小于给定值k;\n必须详细记录每一步的操作和判断依据,以确保结果的透明性和可复现性;\n选择的子数组是所有符合条件的子数组中长度最大的。\n# Inputs:\n数组[1,2,3,4,5]和k=7\n"}], "type": "trace", "description": "在给定数组中,找出所有满足索引的二进制表示严格递增的子数组,判断哪些子数组的元素数量(长度)小于给定值k,然后从这些子数组中选择长度最大的子数组。", "constraints": "子数组中的元素索引的二进制表示必须是严格递增的;\n子数组的长度必须小于给定值k;\n必须详细记录每一步的操作和判断依据,以确保结果的透明性和可复现性;\n选择的子数组是所有符合条件的子数组中长度最大的。", "input": "数组[1,2,3,4,5]和k=7", "constraints_num": 4, "constraints_splits": ["子数组中的元素索引的二进制表示必须是严格递增的;", "子数组的长度必须小于给定值k;", "必须详细记录每一步的操作和判断依据,以确保结果的透明性和可复现性;", "选择的子数组是所有符合条件的子数组中长度最大的。"], "levels2": ["数值约束", "数值约束", "输出格式约束", "数值约束"], "category": "trace1.0"} +{"id": "757", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "扮演一名地理学家,分析声明:北极点很可能并不位于任何大陆上。\n分析过程中需要包含以下信息:北极点的地理坐标;北极点下方地壳的组成;北冰洋的冰盖特点。\n在给出结论之前,需要验证一个假设条件:北冰洋的冰盖是否可以被视为大陆的一部分。\n如果该条件不成立,则结论认为该句陈述并不具有误导性。\n如果该条件成立,则进一步分析为什么该句陈述仍然被认为是准确的。\n"}], "type": "trace", "description": "扮演一名地理学家,分析声明:北极点很可能并不位于任何大陆上。", "constraints": "分析过程中需要包含以下信息:北极点的地理坐标;北极点下方地壳的组成;北冰洋的冰盖特点。\n在给出结论之前,需要验证一个假设条件:北冰洋的冰盖是否可以被视为大陆的一部分。\n如果该条件不成立,则结论认为该句陈述并不具有误导性。\n如果该条件成立,则进一步分析为什么该句陈述仍然被认为是准确的。", "input": "NULL", "constraints_num": 4, "constraints_splits": ["分析过程中需要包含以下信息:北极点的地理坐标;北极点下方地壳的组成;北冰洋的冰盖特点。", "在给出结论之前,需要验证一个假设条件:北冰洋的冰盖是否可以被视为大陆的一部分。", "如果该条件不成立,则结论认为该句陈述并不具有误导性。", "如果该条件成立,则进一步分析为什么该句陈述仍然被认为是准确的。"], "levels2": ["包含约束", "先验条件约束", "价值观约束", "先验条件约束"], "category": "trace2.0"} +{"id": "758", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "编写一个函数,用于按位比较两个长度不超过20位的二进制数,根据比较结果返回0或1组成的二进制串,或返回错误信息。\n输入的二进制数长度应确保相等;\n函数的运行时间应在1秒内完成;\n如果输入的二进制数长度不等,函数应返回错误信息;\n两个二进制数的长度不超过20位;\n# Inputs:\n两个长度不超过20位的二进制数。\n"}], "type": "trace", "description": "编写一个函数,用于按位比较两个长度不超过20位的二进制数,根据比较结果返回0或1组成的二进制串,或返回错误信息。", "constraints": "输入的二进制数长度应确保相等;\n函数的运行时间应在1秒内完成;\n如果输入的二进制数长度不等,函数应返回错误信息;\n两个二进制数的长度不超过20位;", "input": "两个长度不超过20位的二进制数。", "constraints_num": 4, "constraints_splits": ["输入的二进制数长度应确保相等;", "函数的运行时间应在1秒内完成;", "如果输入的二进制数长度不等,函数应返回错误信息;", "两个二进制数的长度不超过20位;"], "levels2": ["数值约束", "数值约束", "排除约束", "数值约束"], "category": "trace1.0"} +{"id": "759", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "作为Python开发人员和系统架构师,你需要加深对以下主题的理解,以便用Python进行进一步的开发:设计和实现多进程系统的方法。研究可能是抽象的或学术概念的现实世界应用,这将涵盖错误处理、效率和数字处理在内的相关领域。进一步描述如何构建一个有效的多进程系统,考虑其在资源分配和整体系统结构优化方面的复杂性,通过提供具体示例和操作指南。\n首先进行理论基础的分析,包括但不限于并发和并行的理论区别、多进程系统设计的基本原则;\n基于理论分析,设计一个具体的多进程系统架构,使用流程图和伪代码详细描述;\n编写Python代码实现系统,并在代码中注释每一步的原理和目的;\n输出格式应为HTML,其中包含标题、子标题的层次化结构,为理论分析、系统设计、代码实现三大章节,详细展示你的研究过程和实现细节;\n"}], "type": "trace", "description": "作为Python开发人员和系统架构师,你需要加深对以下主题的理解,以便用Python进行进一步的开发:设计和实现多进程系统的方法。研究可能是抽象的或学术概念的现实世界应用,这将涵盖错误处理、效率和数字处理在内的相关领域。进一步描述如何构建一个有效的多进程系统,考虑其在资源分配和整体系统结构优化方面的复杂性,通过提供具体示例和操作指南。", "constraints": "首先进行理论基础的分析,包括但不限于并发和并行的理论区别、多进程系统设计的基本原则;\n基于理论分析,设计一个具体的多进程系统架构,使用流程图和伪代码详细描述;\n编写Python代码实现系统,并在代码中注释每一步的原理和目的;\n输出格式应为HTML,其中包含标题、子标题的层次化结构,为理论分析、系统设计、代码实现三大章节,详细展示你的研究过程和实现细节;", "input": "NULL", "constraints_num": 4, "constraints_splits": ["首先进行理论基础的分析,包括但不限于并发和并行的理论区别、多进程系统设计的基本原则;", "基于理论分析,设计一个具体的多进程系统架构,使用流程图和伪代码详细描述;", "编写Python代码实现系统,并在代码中注释每一步的原理和目的;", "输出格式应为HTML,其中包含标题、子标题的层次化结构,为理论分析、系统设计、代码实现三大章节,详细展示你的研究过程和实现细节;"], "levels2": ["自然语言流程背景信息约束", "输出格式约束", "文本样式约束", "层次化结构约束"], "category": "trace1.0"} +{"id": "760", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "在Logback中正确配置MDC变量以实现日志记录的上下文信息扩展,确保日志条目的完整性与可读性。\n需要在日志配置文件中添加适当的MDC变量配置;\n至少包含以下三个方面的MDC变量配置示例,并以JSON格式输出;\n每个示例不应超过100字符;\n除了MDC配置,还需包括如何在代码中动态设置MDC变量的简短示例。\n"}], "type": "trace", "description": "在Logback中正确配置MDC变量以实现日志记录的上下文信息扩展,确保日志条目的完整性与可读性。", "constraints": "需要在日志配置文件中添加适当的MDC变量配置;\n至少包含以下三个方面的MDC变量配置示例,并以JSON格式输出;\n每个示例不应超过100字符;\n除了MDC配置,还需包括如何在代码中动态设置MDC变量的简短示例。", "input": "NULL", "constraints_num": 4, "constraints_splits": ["需要在日志配置文件中添加适当的MDC变量配置;", "至少包含以下三个方面的MDC变量配置示例,并以JSON格式输出;", "每个示例不应超过100字符;", "除了MDC配置,还需包括如何在代码中动态设置MDC变量的简短示例。"], "levels2": ["包含约束", "输出格式约束", "数值约束", "包含约束"], "category": "trace2.0"} +{"id": "761", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "扮演一个编程任务的执行者,给定字符串 \"Chocolate\",编写一个递归函数来输出其字母的相反顺序。\n函数应处理长度为奇数和偶数的字符串;\n当字符串长度为奇数时,除了输出反转后的字符串,还需输出中间字符及其位置;\n当字符串长度为偶数时,仅输出反转后的字符串;\n不论字符串长度如何,输出应以JSON格式返回,包含\"original\": 原始字符串, \"reversed\": 反转后的字符串, \"middleCharacter\": 中间字符(若长度为奇数则存在,否则为null), \"middlePosition\": 中间字符的位置(若长度为奇数则存在,否则为null);\n# Inputs:\n\"Chocolate\"\n"}], "type": "trace", "description": "扮演一个编程任务的执行者,给定字符串 \"Chocolate\",编写一个递归函数来输出其字母的相反顺序。", "constraints": "函数应处理长度为奇数和偶数的字符串;\n当字符串长度为奇数时,除了输出反转后的字符串,还需输出中间字符及其位置;\n当字符串长度为偶数时,仅输出反转后的字符串;\n不论字符串长度如何,输出应以JSON格式返回,包含\"original\": 原始字符串, \"reversed\": 反转后的字符串, \"middleCharacter\": 中间字符(若长度为奇数则存在,否则为null), \"middlePosition\": 中间字符的位置(若长度为奇数则存在,否则为null);", "input": "\"Chocolate\"", "constraints_num": 4, "constraints_splits": ["函数应处理长度为奇数和偶数的字符串;", "当字符串长度为奇数时,除了输出反转后的字符串,还需输出中间字符及其位置;", "当字符串长度为偶数时,仅输出反转后的字符串;", "不论字符串长度如何,输出应以JSON格式返回,包含\"original\": 原始字符串, \"reversed\": 反转后的字符串, \"middleCharacter\": 中间字符(若长度为奇数则存在,否则为null), \"middlePosition\": 中间字符的位置(若长度为奇数则存在,否则为null);"], "levels2": ["数值约束", "数值约束", "数值约束", "输出格式约束"], "category": "trace2.0"} +{"id": "762", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "对中国的经济外交与美国在非洲的经济外交进行比较研究\n要求使用严谨正式的学术语气进行写作;\n针对具有国际关系和经济学背景的学者和学生作为受众;\n全文应至少包含5个深度分析段落,每个段落至少包含300字,确保内容深度和学术价值;\n深度分析应包括历史背景、当前政策、执行效果以及对非洲国家的长远影响;\n"}], "type": "trace", "description": "对中国的经济外交与美国在非洲的经济外交进行比较研究", "constraints": "要求使用严谨正式的学术语气进行写作;\n针对具有国际关系和经济学背景的学者和学生作为受众;\n全文应至少包含5个深度分析段落,每个段落至少包含300字,确保内容深度和学术价值;\n深度分析应包括历史背景、当前政策、执行效果以及对非洲国家的长远影响;", "input": "NULL", "constraints_num": 4, "constraints_splits": ["要求使用严谨正式的学术语气进行写作;", "针对具有国际关系和经济学背景的学者和学生作为受众;", "全文应至少包含5个深度分析段落,每个段落至少包含300字,确保内容深度和学术价值;", "深度分析应包括历史背景、当前政策、执行效果以及对非洲国家的长远影响;"], "levels2": ["语气风格约束", "受众目标约束", "数值约束", "包含约束"], "category": "trace2.0"} +{"id": "763", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以用户服务代表的身份,给用户提供详细的反馈指导,包括如何提交反馈、反馈应包含的信息(问题描述、截图、浏览器信息等),并提供一份示例邮件模板作为参考。\n反馈指导必须包括如何提交反馈的详细步骤;\n反馈应包含问题描述、截图、使用的浏览器信息;\n需要提供一份示例邮件模板作为参考,模板中应包含问题描述、浏览器名称、截图链接或附件以及用户姓名等字段;\n确保用户在反馈邮件中包含以上所有信息,以便更有效地解决问题;\n"}], "type": "trace", "description": "以用户服务代表的身份,给用户提供详细的反馈指导,包括如何提交反馈、反馈应包含的信息(问题描述、截图、浏览器信息等),并提供一份示例邮件模板作为参考。", "constraints": "反馈指导必须包括如何提交反馈的详细步骤;\n反馈应包含问题描述、截图、使用的浏览器信息;\n需要提供一份示例邮件模板作为参考,模板中应包含问题描述、浏览器名称、截图链接或附件以及用户姓名等字段;\n确保用户在反馈邮件中包含以上所有信息,以便更有效地解决问题;", "input": "NULL", "constraints_num": 4, "constraints_splits": ["反馈指导必须包括如何提交反馈的详细步骤;", "反馈应包含问题描述、截图、使用的浏览器信息;", "需要提供一份示例邮件模板作为参考,模板中应包含问题描述、浏览器名称、截图链接或附件以及用户姓名等字段;", "确保用户在反馈邮件中包含以上所有信息,以便更有效地解决问题;"], "levels2": ["自然语言流程背景信息约束", "包含约束", "模版约束", "包含约束"], "category": "trace1.0"} +{"id": "764", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以演讲稿的形式向中学生介绍艾滋病,确保信息传达得既准确又积极。\n演讲稿应在500到800字之间;\n内容必须包含至少三个关于艾滋病的事实,如传播途径、预防措施和全球艾滋病患者数量等信息;\n采用鼓励和教育的语气,避免任何可能引起恐慌或歧视的描述;\n在演讲中穿插提问环节,邀请同学们参与讨论。\n"}], "type": "trace", "description": "以演讲稿的形式向中学生介绍艾滋病,确保信息传达得既准确又积极。", "constraints": "演讲稿应在500到800字之间;\n内容必须包含至少三个关于艾滋病的事实,如传播途径、预防措施和全球艾滋病患者数量等信息;\n采用鼓励和教育的语气,避免任何可能引起恐慌或歧视的描述;\n在演讲中穿插提问环节,邀请同学们参与讨论。", "input": "NULL", "constraints_num": 4, "constraints_splits": ["演讲稿应在500到800字之间;", "内容必须包含至少三个关于艾滋病的事实,如传播途径、预防措施和全球艾滋病患者数量等信息;", "采用鼓励和教育的语气,避免任何可能引起恐慌或歧视的描述;", "在演讲中穿插提问环节,邀请同学们参与讨论。"], "levels2": ["数值约束", "包含约束", "语气风格约束", "自然语言流程背景信息约束"], "category": "trace1.0"} +{"id": "765", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "剪辑视频\n输出格式应为JSON,包含视频片段的起始时间、结束时间、使用的音轨和应用的视觉效果。\n剪辑风格应采用纪录片式或电影式,如果选择纪录片式,每个镜头应不少于3秒,且视频中应包含旁白;如果选择电影式,每个镜头可以更短(至少1秒),但必须包含至少一个特效镜头,如慢动作或快进。\n视频总时长应控制在5-10分钟之间,确保视频内容充实而不冗长。\n在剪辑过程中,需扮演一个专业视频编辑的角色,考虑受众为对高质量视频内容有需求的人群,以提供最佳的视觉体验。\n"}], "type": "trace", "description": "剪辑视频", "constraints": "输出格式应为JSON,包含视频片段的起始时间、结束时间、使用的音轨和应用的视觉效果。\n剪辑风格应采用纪录片式或电影式,如果选择纪录片式,每个镜头应不少于3秒,且视频中应包含旁白;如果选择电影式,每个镜头可以更短(至少1秒),但必须包含至少一个特效镜头,如慢动作或快进。\n视频总时长应控制在5-10分钟之间,确保视频内容充实而不冗长。\n在剪辑过程中,需扮演一个专业视频编辑的角色,考虑受众为对高质量视频内容有需求的人群,以提供最佳的视觉体验。", "input": "NULL", "constraints_num": 4, "constraints_splits": ["输出格式应为JSON,包含视频片段的起始时间、结束时间、使用的音轨和应用的视觉效果。", "剪辑风格应采用纪录片式或电影式,如果选择纪录片式,每个镜头应不少于3秒,且视频中应包含旁白;如果选择电影式,每个镜头可以更短(至少1秒),但必须包含至少一个特效镜头,如慢动作或快进。", "视频总时长应控制在5-10分钟之间,确保视频内容充实而不冗长。", "在剪辑过程中,需扮演一个专业视频编辑的角色,考虑受众为对高质量视频内容有需求的人群,以提供最佳的视觉体验。"], "levels2": ["输出格式约束", "语气风格约束", "数值约束", "角色扮演约束"], "category": "trace1.0"} +{"id": "766", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以一个美容美发店店员的身份,详细描述一个典型工作日的经历\n包含与顾客的互动、解决问题的策略、销售技巧的应用以及心态和态度如何影响工作表现;\n采用第一人称视角,以故事的形式展现,确保文本结构清晰,包含开头、发展、高潮和结尾;\n展现出积极、专业且具有同理心的语气;\n叙述应以顾客的正向反馈作为结局,强调优质服务对提升客户满意度和忠诚度的重要性;\n"}], "type": "trace", "description": "以一个美容美发店店员的身份,详细描述一个典型工作日的经历", "constraints": "包含与顾客的互动、解决问题的策略、销售技巧的应用以及心态和态度如何影响工作表现;\n采用第一人称视角,以故事的形式展现,确保文本结构清晰,包含开头、发展、高潮和结尾;\n展现出积极、专业且具有同理心的语气;\n叙述应以顾客的正向反馈作为结局,强调优质服务对提升客户满意度和忠诚度的重要性;", "input": "NULL", "constraints_num": 4, "constraints_splits": ["包含与顾客的互动、解决问题的策略、销售技巧的应用以及心态和态度如何影响工作表现;", "采用第一人称视角,以故事的形式展现,确保文本结构清晰,包含开头、发展、高潮和结尾;", "展现出积极、专业且具有同理心的语气;", "叙述应以顾客的正向反馈作为结局,强调优质服务对提升客户满意度和忠诚度的重要性;"], "levels2": ["包含约束", "语气风格约束", "语气风格约束", "情感情绪约束"], "category": "trace1.0"} +{"id": "767", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为两种类型的电视做分类:OLED TV与LCD TV。\n以表格形式输出;\n表格中需包含以下列:电视类型、技术特点、优点、缺点;\n每种类型的描述不得少于30字;\n确保信息准确无误,不包含任何虚假信息;\n"}], "type": "trace", "description": "为两种类型的电视做分类:OLED TV与LCD TV。", "constraints": "以表格形式输出;\n表格中需包含以下列:电视类型、技术特点、优点、缺点;\n每种类型的描述不得少于30字;\n确保信息准确无误,不包含任何虚假信息;", "input": "NULL", "constraints_num": 4, "constraints_splits": ["以表格形式输出;", "表格中需包含以下列:电视类型、技术特点、优点、缺点;", "每种类型的描述不得少于30字;", "确保信息准确无误,不包含任何虚假信息;"], "levels2": ["输出格式约束", "表格背景信息约束", "数值约束", "价值观约束"], "category": "trace2.0"} +{"id": "768", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "计算在不同承重限制下,可以拴挂的西瓜大小输液瓶数量。\n每个输液瓶的直径为30厘米,体积等同于5~10颗黄瓜;\n每串耳标的最大承重不超过5公斤时,最多可以拴挂3个输液瓶;\n如果耳标设计有加强结构,承重能力提升至10公斤,最多可以拴挂6个输液瓶;\n选择耳标前需了解其承重限制,再根据实际需要选择合适的类型。\n"}], "type": "trace", "description": "计算在不同承重限制下,可以拴挂的西瓜大小输液瓶数量。", "constraints": "每个输液瓶的直径为30厘米,体积等同于5~10颗黄瓜;\n每串耳标的最大承重不超过5公斤时,最多可以拴挂3个输液瓶;\n如果耳标设计有加强结构,承重能力提升至10公斤,最多可以拴挂6个输液瓶;\n选择耳标前需了解其承重限制,再根据实际需要选择合适的类型。", "input": "NULL", "constraints_num": 4, "constraints_splits": ["每个输液瓶的直径为30厘米,体积等同于5~10颗黄瓜;", "每串耳标的最大承重不超过5公斤时,最多可以拴挂3个输液瓶;", "如果耳标设计有加强结构,承重能力提升至10公斤,最多可以拴挂6个输液瓶;", "选择耳标前需了解其承重限制,再根据实际需要选择合适的类型。"], "levels2": ["数值约束", "数值约束", "数值约束", "先验条件约束"], "category": "trace2.0"} +{"id": "769", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "重申公民的通讯自由和通讯秘密的权利以及其法律保护依据\n引用《中华人民共和国宪法》第四十条规定进行说明;\n强调除非在特定的法律程序下,通信自由和秘密不可侵犯;\n说明特定的法律程序指因国家安全或者追查刑事犯罪的需要,由公安机关或者检察机关依照法律规定的程序对通信进行检查;\n必须使用正式、准确的法律语言进行阐述;\n"}], "type": "trace", "description": "重申公民的通讯自由和通讯秘密的权利以及其法律保护依据", "constraints": "引用《中华人民共和国宪法》第四十条规定进行说明;\n强调除非在特定的法律程序下,通信自由和秘密不可侵犯;\n说明特定的法律程序指因国家安全或者追查刑事犯罪的需要,由公安机关或者检察机关依照法律规定的程序对通信进行检查;\n必须使用正式、准确的法律语言进行阐述;", "input": "NULL", "constraints_num": 4, "constraints_splits": ["引用《中华人民共和国宪法》第四十条规定进行说明;", "强调除非在特定的法律程序下,通信自由和秘密不可侵犯;", "说明特定的法律程序指因国家安全或者追查刑事犯罪的需要,由公安机关或者检察机关依照法律规定的程序对通信进行检查;", "必须使用正式、准确的法律语言进行阐述;"], "levels2": ["引用和参考约束", "价值观约束", "包含约束", "语气风格约束"], "category": "trace2.0"} +{"id": "770", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "编写一个程序,该程序扮演一个数据分析师的角色,能够计算输入整数列表的中位数。\n程序必须检查列表是否为空,如果为空则返回错误信息\"列表为空,无法计算中位数\";\n如果列表中元素数量为偶数,则返回中间两个元素的平均值;\n如果列表长度小于等于10,输出以JSON格式返回中位数;\n如果列表长度大于10,输出以表格格式返回中位数,表格中应包含列表元素、排序后的列表和中位数;\n# Inputs:\n列表[1, 3, 5, 7, 9] 或 列表[1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21]\n"}], "type": "trace", "description": "编写一个程序,该程序扮演一个数据分析师的角色,能够计算输入整数列表的中位数。", "constraints": "程序必须检查列表是否为空,如果为空则返回错误信息\"列表为空,无法计算中位数\";\n如果列表中元素数量为偶数,则返回中间两个元素的平均值;\n如果列表长度小于等于10,输出以JSON格式返回中位数;\n如果列表长度大于10,输出以表格格式返回中位数,表格中应包含列表元素、排序后的列表和中位数;", "input": "列表[1, 3, 5, 7, 9] 或 列表[1, 3, 5, 7, 9, 11, 13, 15, 17, 19, 21]", "constraints_num": 4, "constraints_splits": ["程序必须检查列表是否为空,如果为空则返回错误信息\"列表为空,无法计算中位数\";", "如果列表中元素数量为偶数,则返回中间两个元素的平均值;", "如果列表长度小于等于10,输出以JSON格式返回中位数;", "如果列表长度大于10,输出以表格格式返回中位数,表格中应包含列表元素、排序后的列表和中位数;"], "levels2": ["包含约束", "数值约束", "输出格式约束", "输出格式约束"], "category": "trace2.0"} +{"id": "771", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为团队成员,尤其是初入职场的年轻员工,提供关于时间管理的培训;\n培训材料应以PowerPoint演示文稿的形式呈现;\n幻灯片数量应在20到30张之间;\n演示文稿的风格应正式且具有教育意义;\n需包含实际案例和管理时间的具体策略;\n在演示文稿内容中,至少提供5个高效时间管理技巧,并以列表形式列出;\n"}], "type": "trace", "description": "为团队成员,尤其是初入职场的年轻员工,提供关于时间管理的培训;", "constraints": "培训材料应以PowerPoint演示文稿的形式呈现;\n幻灯片数量应在20到30张之间;\n演示文稿的风格应正式且具有教育意义;\n需包含实际案例和管理时间的具体策略;\n在演示文稿内容中,至少提供5个高效时间管理技巧,并以列表形式列出;", "input": "NULL", "constraints_num": 5, "constraints_splits": ["培训材料应以PowerPoint演示文稿的形式呈现;", "幻灯片数量应在20到30张之间;", "演示文稿的风格应正式且具有教育意义;", "需包含实际案例和管理时间的具体策略;", "在演示文稿内容中,至少提供5个高效时间管理技巧,并以列表形式列出;"], "levels2": ["输出格式约束", "数值约束", "语气风格约束", "包含约束", "编号和列表约束"], "category": "trace2.0"} +{"id": "772", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以一份游戏设计文档的形式,详细解释页游中战斗力是如何计算的,战斗力能否反映玩家的真实实力。\n文档至少需要包含5个主要部分,每个部分不少于200字;\n其中一部分需要使用表格形式来解析数据;\n必须包含游戏机制解析和玩家行为分析;\n以严谨的语气和结构化的方式进行描述;\n确保每个部分都遵循主谓宾的清晰语法结构。\n"}], "type": "trace", "description": "以一份游戏设计文档的形式,详细解释页游中战斗力是如何计算的,战斗力能否反映玩家的真实实力。", "constraints": "文档至少需要包含5个主要部分,每个部分不少于200字;\n其中一部分需要使用表格形式来解析数据;\n必须包含游戏机制解析和玩家行为分析;\n以严谨的语气和结构化的方式进行描述;\n确保每个部分都遵循主谓宾的清晰语法结构。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["文档至少需要包含5个主要部分,每个部分不少于200字;", "其中一部分需要使用表格形式来解析数据;", "必须包含游戏机制解析和玩家行为分析;", "以严谨的语气和结构化的方式进行描述;", "确保每个部分都遵循主谓宾的清晰语法结构。"], "levels2": ["数值约束", "输出格式约束", "包含约束", "语气风格约束", "语法结构约束"], "category": "trace2.0"} +{"id": "773", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "给出前100个能被3和5整除的正整数,并以特定的JSON格式输出。\n输出的JSON结构应为:{\"numbers\":[15,30,45,60,...,直到第100个数字]};\n输出的JSON结构中的列表中的数字由小到大排列;\n不允许有重复的数字;\n仅输出能被3和5整除的正整数;\n输出的数字总数为100个。\n"}], "type": "trace", "description": "给出前100个能被3和5整除的正整数,并以特定的JSON格式输出。", "constraints": "输出的JSON结构应为:{\"numbers\":[15,30,45,60,...,直到第100个数字]};\n输出的JSON结构中的列表中的数字由小到大排列;\n不允许有重复的数字;\n仅输出能被3和5整除的正整数;\n输出的数字总数为100个。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["输出的JSON结构应为:{\"numbers\":[15,30,45,60,...,直到第100个数字]};", "输出的JSON结构中的列表中的数字由小到大排列;", "不允许有重复的数字;", "仅输出能被3和5整除的正整数;", "输出的数字总数为100个。"], "levels2": ["输出格式约束", "编号和列表约束", "数值约束", "数值约束", "数值约束"], "category": "trace2.0"} +{"id": "774", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "帮你写段Verilog HDL代码,实现comp1与comp2信号的逻辑与操作,并在时钟信号的上升沿触发清零信号regSignal的清零操作。\n代码行数不超过30行;\n编写代码时需确保遵循Verilog HDL的语法规则;\n需先定义时钟信号,comp1和comp2信号,以及清零信号regSignal;\n在always块中使用if条件语句检查comp1和comp2的逻辑与结果;\n在时钟上升沿时更新regSignal的状态。\n"}], "type": "trace", "description": "帮你写段Verilog HDL代码,实现comp1与comp2信号的逻辑与操作,并在时钟信号的上升沿触发清零信号regSignal的清零操作。", "constraints": "代码行数不超过30行;\n编写代码时需确保遵循Verilog HDL的语法规则;\n需先定义时钟信号,comp1和comp2信号,以及清零信号regSignal;\n在always块中使用if条件语句检查comp1和comp2的逻辑与结果;\n在时钟上升沿时更新regSignal的状态。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["代码行数不超过30行;", "编写代码时需确保遵循Verilog HDL的语法规则;", "需先定义时钟信号,comp1和comp2信号,以及清零信号regSignal;", "在always块中使用if条件语句检查comp1和comp2的逻辑与结果;", "在时钟上升沿时更新regSignal的状态。"], "levels2": ["数值约束", "语法结构约束", "自然语言流程背景信息约束", "包含约束", "主题约束"], "category": "trace1.0"} +{"id": "775", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一个Java枚举类,用于区分员工是否在职。\n枚举类需要包括以下状态:在职、离职和待定,总共3个状态;\n使用注释来描述每个枚举状态的含义;\n类中包含一个方法,该方法返回一个描述员工状态的简短语句,如\"In active service\"或\"Terminated\";\n输出格式应为标准的Java代码;\n遵循Google Java Style Guide的规范。\n"}], "type": "trace", "description": "创建一个Java枚举类,用于区分员工是否在职。", "constraints": "枚举类需要包括以下状态:在职、离职和待定,总共3个状态;\n使用注释来描述每个枚举状态的含义;\n类中包含一个方法,该方法返回一个描述员工状态的简短语句,如\"In active service\"或\"Terminated\";\n输出格式应为标准的Java代码;\n遵循Google Java Style Guide的规范。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["枚举类需要包括以下状态:在职、离职和待定,总共3个状态;", "使用注释来描述每个枚举状态的含义;", "类中包含一个方法,该方法返回一个描述员工状态的简短语句,如\"In active service\"或\"Terminated\";", "输出格式应为标准的Java代码;", "遵循Google Java Style Guide的规范。"], "levels2": ["数值约束", "文本样式约束", "包含约束", "输出格式约束", "语法结构约束"], "category": "trace2.0"} +{"id": "776", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "依据《中华人民共和国网络安全法》第二十一条,深入理解网络安全定义,详细解释网络安全措施,并进行案例分析以说明《网络安全法》的实施效果。\n说明中使用专业学术的语气风格;\n详细解释每项网络安全措施;\n以表格形式列出至少十项具体措施及其目的;\n内容中应包含对近年来中国网络安全领域的重大事件的案例分析;\n解释各项措施时,不得泄露任何可能侵犯个人或企业隐私的具体信息;\n"}], "type": "trace", "description": "依据《中华人民共和国网络安全法》第二十一条,深入理解网络安全定义,详细解释网络安全措施,并进行案例分析以说明《网络安全法》的实施效果。", "constraints": "说明中使用专业学术的语气风格;\n详细解释每项网络安全措施;\n以表格形式列出至少十项具体措施及其目的;\n内容中应包含对近年来中国网络安全领域的重大事件的案例分析;\n解释各项措施时,不得泄露任何可能侵犯个人或企业隐私的具体信息;", "input": "NULL", "constraints_num": 5, "constraints_splits": ["说明中使用专业学术的语气风格;", "详细解释每项网络安全措施;", "以表格形式列出至少十项具体措施及其目的;", "内容中应包含对近年来中国网络安全领域的重大事件的案例分析;", "解释各项措施时,不得泄露任何可能侵犯个人或企业隐私的具体信息;"], "levels2": ["语气风格约束", "包含约束", "输出格式约束", "包含约束", "隐私约束"], "category": "trace2.0"} +{"id": "777", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "解答一道数学问题关于学校粉笔的使用情况,包括计算粉笔够用的天数以及判断是否够用一个月,如果不够使用一个月则需计算具体够用的天数,如果够用则需计算剩余的粉笔盒数。\n需要先判断这些粉笔是否够用一个月(假设一个月为30天);\n如果不够,则需要计算具体够用的天数;\n如果够,则需计算剩余多少盒粉笔;\n需要计算总共的粉笔盒数和每天的使用量,然后根据这些信息计算使用天数;\n根据计算结果,给出具体天数或者剩余盒数。\n# Inputs:\n学校买来10箱粉笔,每箱24盒,如果每天要用5盒。\n"}], "type": "trace", "description": "解答一道数学问题关于学校粉笔的使用情况,包括计算粉笔够用的天数以及判断是否够用一个月,如果不够使用一个月则需计算具体够用的天数,如果够用则需计算剩余的粉笔盒数。", "constraints": "需要先判断这些粉笔是否够用一个月(假设一个月为30天);\n如果不够,则需要计算具体够用的天数;\n如果够,则需计算剩余多少盒粉笔;\n需要计算总共的粉笔盒数和每天的使用量,然后根据这些信息计算使用天数;\n根据计算结果,给出具体天数或者剩余盒数。", "input": "学校买来10箱粉笔,每箱24盒,如果每天要用5盒。", "constraints_num": 5, "constraints_splits": ["需要先判断这些粉笔是否够用一个月(假设一个月为30天);", "如果不够,则需要计算具体够用的天数;", "如果够,则需计算剩余多少盒粉笔;", "需要计算总共的粉笔盒数和每天的使用量,然后根据这些信息计算使用天数;", "根据计算结果,给出具体天数或者剩余盒数。"], "levels2": ["先验条件约束", "数值约束", "数值约束", "数值约束", "数值约束"], "category": "trace2.0"} +{"id": "778", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "详细指导如何在Java集成测试中使用内嵌的ElasticSearch\n需要以一位具有多年经验的高级软件工程师的身份进行指导;\n至少提供3个步骤的详细指导,每个步骤描述不少于50字;\n严格遵循Java集成测试的标准流程;\n采用正式的语气和严谨的语法结构进行描述;\n确保内容的专业性和可读性。\n"}], "type": "trace", "description": "详细指导如何在Java集成测试中使用内嵌的ElasticSearch", "constraints": "需要以一位具有多年经验的高级软件工程师的身份进行指导;\n至少提供3个步骤的详细指导,每个步骤描述不少于50字;\n严格遵循Java集成测试的标准流程;\n采用正式的语气和严谨的语法结构进行描述;\n确保内容的专业性和可读性。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["需要以一位具有多年经验的高级软件工程师的身份进行指导;", "至少提供3个步骤的详细指导,每个步骤描述不少于50字;", "严格遵循Java集成测试的标准流程;", "采用正式的语气和严谨的语法结构进行描述;", "确保内容的专业性和可读性。"], "levels2": ["角色扮演约束", "数值约束", "自然语言流程背景信息约束", "语气风格约束", "语气风格约束"], "category": "trace1.0"} +{"id": "779", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "编写一个函数,用于判断一个单词是否只包含辅音字母,并统计单词中出现次数最多的辅音及其出现次数。\n单词的长度在3到20个字符之间;\n函数输入参数应为一个非空的C++标准字符串类型;\n单词只包含英文字母;\n函数输出应为一个结构体或者类,包含三个成员:一个bool值,表示单词是否只包含辅音;一个char类型值,表示出现次数最多的辅音字母;一个int类型值,表示该辅音字母的出现次数;\n时间复杂度不超过O(n),其中n为单词的长度;\n"}], "type": "trace", "description": "编写一个函数,用于判断一个单词是否只包含辅音字母,并统计单词中出现次数最多的辅音及其出现次数。", "constraints": "单词的长度在3到20个字符之间;\n函数输入参数应为一个非空的C++标准字符串类型;\n单词只包含英文字母;\n函数输出应为一个结构体或者类,包含三个成员:一个bool值,表示单词是否只包含辅音;一个char类型值,表示出现次数最多的辅音字母;一个int类型值,表示该辅音字母的出现次数;\n时间复杂度不超过O(n),其中n为单词的长度;", "input": "NULL", "constraints_num": 5, "constraints_splits": ["单词的长度在3到20个字符之间;", "函数输入参数应为一个非空的C++标准字符串类型;", "单词只包含英文字母;", "函数输出应为一个结构体或者类,包含三个成员:一个bool值,表示单词是否只包含辅音;一个char类型值,表示出现次数最多的辅音字母;一个int类型值,表示该辅音字母的出现次数;", "时间复杂度不超过O(n),其中n为单词的长度;"], "levels2": ["数值约束", "包含约束", "语言特征约束", "输出格式约束", "数值约束"], "category": "trace1.0"} +{"id": "780", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "定义一个函数,找到一个包含n个整数的给定数组中的最小元素。\n函数必须在处理多个数组实例时,保持高效且准确;\n在开始寻找最小元素之前,必须确保数组不为空并且每个元素的值在-1000到1000之间;\n如果数组为空或包含超出范围的元素,函数应返回一个错误消息,格式为JSON,内容为“错误:数组为空或包含超出范围的元素”;\n如果函数不为空或不包含超出范围的元素,则应返回一个JSON对象,其中包含“数组”字段和“最小元素”字段;\n数组元素的范围从-1000到1000。\n"}], "type": "trace", "description": "定义一个函数,找到一个包含n个整数的给定数组中的最小元素。", "constraints": "函数必须在处理多个数组实例时,保持高效且准确;\n在开始寻找最小元素之前,必须确保数组不为空并且每个元素的值在-1000到1000之间;\n如果数组为空或包含超出范围的元素,函数应返回一个错误消息,格式为JSON,内容为“错误:数组为空或包含超出范围的元素”;\n如果函数不为空或不包含超出范围的元素,则应返回一个JSON对象,其中包含“数组”字段和“最小元素”字段;\n数组元素的范围从-1000到1000。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["函数必须在处理多个数组实例时,保持高效且准确;", "在开始寻找最小元素之前,必须确保数组不为空并且每个元素的值在-1000到1000之间;", "如果数组为空或包含超出范围的元素,函数应返回一个错误消息,格式为JSON,内容为“错误:数组为空或包含超出范围的元素”;", "如果函数不为空或不包含超出范围的元素,则应返回一个JSON对象,其中包含“数组”字段和“最小元素”字段;", "数组元素的范围从-1000到1000。"], "levels2": ["数值约束", "先验条件约束", "输出格式约束", "输出格式约束", "数值约束"], "category": "trace2.0"} +{"id": "781", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以营养师的角色,介绍一种新的健康饮食习惯,并在介绍完后,附加一个问答环节测试读者对新健康饮食习惯的理解程度。\n内容长度至少800字;\n以正式和科学的语气风格进行讲述;\n问答环节需要设计5个问题;\n每个问题应有明确的正确答案;\n答案应在之前的介绍中有所提及。\n"}], "type": "trace", "description": "以营养师的角色,介绍一种新的健康饮食习惯,并在介绍完后,附加一个问答环节测试读者对新健康饮食习惯的理解程度。", "constraints": "内容长度至少800字;\n以正式和科学的语气风格进行讲述;\n问答环节需要设计5个问题;\n每个问题应有明确的正确答案;\n答案应在之前的介绍中有所提及。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["内容长度至少800字;", "以正式和科学的语气风格进行讲述;", "问答环节需要设计5个问题;", "每个问题应有明确的正确答案;", "答案应在之前的介绍中有所提及。"], "levels2": ["数值约束", "语气风格约束", "数值约束", "包含约束", "包含约束"], "category": "trace2.0"} +{"id": "782", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "描述李白和杜甫在打猎时进入到森林里,发现古老遗迹的石洞,尝试进入却意外被困于水晶宫殿,并激活了宫殿的防御系统,他们必须找到一种打开出口的方法才能逃离。\n在描述过程中必须包含李白和杜甫的对话;\n李白和杜甫必须利用各自的诗才和智慧来解开宫殿中的谜题;\n李白以浪漫的诗意找到暗示;\n杜甫则以严谨的逻辑破解机关;\n最终二人齐心协力,共同找到了逃脱的方法;\n"}], "type": "trace", "description": "描述李白和杜甫在打猎时进入到森林里,发现古老遗迹的石洞,尝试进入却意外被困于水晶宫殿,并激活了宫殿的防御系统,他们必须找到一种打开出口的方法才能逃离。", "constraints": "在描述过程中必须包含李白和杜甫的对话;\n李白和杜甫必须利用各自的诗才和智慧来解开宫殿中的谜题;\n李白以浪漫的诗意找到暗示;\n杜甫则以严谨的逻辑破解机关;\n最终二人齐心协力,共同找到了逃脱的方法;", "input": "NULL", "constraints_num": 5, "constraints_splits": ["在描述过程中必须包含李白和杜甫的对话;", "李白和杜甫必须利用各自的诗才和智慧来解开宫殿中的谜题;", "李白以浪漫的诗意找到暗示;", "杜甫则以严谨的逻辑破解机关;", "最终二人齐心协力,共同找到了逃脱的方法;"], "levels2": ["包含约束", "角色扮演约束", "情感情绪约束", "语气风格约束", "包含约束"], "category": "trace1.0"} +{"id": "783", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "请帮忙撰写一段Java代码,实现电商网站上履约平台包裹合包功能。\n该代码适用于电商网站的履约平台角色,需实现包裹合包的核心逻辑;\n代码中包含必要的注释和异常处理,确保代码的可读性和安全性;\n最终输出的代码需以Markdown格式呈现,包含代码块、标题和说明,便于他人理解和复用;\n所有包裹具有相同的配送地址和收货人信息,否则合包操作可能失败;\n异常处理需覆盖所有可能的错误情况,确保代码的鲁棒性;\n"}], "type": "trace", "description": "请帮忙撰写一段Java代码,实现电商网站上履约平台包裹合包功能。", "constraints": "该代码适用于电商网站的履约平台角色,需实现包裹合包的核心逻辑;\n代码中包含必要的注释和异常处理,确保代码的可读性和安全性;\n最终输出的代码需以Markdown格式呈现,包含代码块、标题和说明,便于他人理解和复用;\n所有包裹具有相同的配送地址和收货人信息,否则合包操作可能失败;\n异常处理需覆盖所有可能的错误情况,确保代码的鲁棒性;", "input": "NULL", "constraints_num": 5, "constraints_splits": ["该代码适用于电商网站的履约平台角色,需实现包裹合包的核心逻辑;", "代码中包含必要的注释和异常处理,确保代码的可读性和安全性;", "最终输出的代码需以Markdown格式呈现,包含代码块、标题和说明,便于他人理解和复用;", "所有包裹具有相同的配送地址和收货人信息,否则合包操作可能失败;", "异常处理需覆盖所有可能的错误情况,确保代码的鲁棒性;"], "levels2": ["角色扮演约束", "语法结构约束", "输出格式约束", "包含约束", "包含约束"], "category": "trace2.0"} +{"id": "784", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "查询一个新的SQL查询语句并提取其中的关键组成部分\nSQL查询语句至少包含一个FROM子句、一个WHERE子句和一个SELECT子句;\n输出结果以JSON格式返回;\n输出结果中应包含查询语句的类型(例如:SELECT、INSERT、UPDATE等);\n输出结果中应包含关键组成部分例如表名、条件表达式和选择的字段名;\n如果查询语句不符合上述结构,需要先按照标准SQL语句格式进行调整,然后再进行关键组成部分的提取。\n"}], "type": "trace", "description": "查询一个新的SQL查询语句并提取其中的关键组成部分", "constraints": "SQL查询语句至少包含一个FROM子句、一个WHERE子句和一个SELECT子句;\n输出结果以JSON格式返回;\n输出结果中应包含查询语句的类型(例如:SELECT、INSERT、UPDATE等);\n输出结果中应包含关键组成部分例如表名、条件表达式和选择的字段名;\n如果查询语句不符合上述结构,需要先按照标准SQL语句格式进行调整,然后再进行关键组成部分的提取。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["SQL查询语句至少包含一个FROM子句、一个WHERE子句和一个SELECT子句;", "输出结果以JSON格式返回;", "输出结果中应包含查询语句的类型(例如:SELECT、INSERT、UPDATE等);", "输出结果中应包含关键组成部分例如表名、条件表达式和选择的字段名;", "如果查询语句不符合上述结构,需要先按照标准SQL语句格式进行调整,然后再进行关键组成部分的提取。"], "levels2": ["语法结构约束", "输出格式约束", "包含约束", "包含约束", "语法结构约束"], "category": "trace2.0"} +{"id": "785", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "详细解释如何求解整数x的5次方在底数为37下的离散对数是否一定存在,并用清晰的步骤逐一求出其如果存在的情况。\n以专业学术的语气风格进行解释;\n首先,解释离散对数的概念以及其在密码学中的应用;\n具体分析在底数为37的特殊情况下,求解离散对数的数学方法;\n给出求解步骤:步骤1:确定离散对数的定义域和值域;步骤2:使用指数循环和分组法,逐步逼近目标值;步骤3:验证求得的解是否满足原方程,确保解的正确性;\n最后,以编号列表形式,将求解过程和结果以LaTeX格式呈现,便于学术交流和展示;\n"}], "type": "trace", "description": "详细解释如何求解整数x的5次方在底数为37下的离散对数是否一定存在,并用清晰的步骤逐一求出其如果存在的情况。", "constraints": "以专业学术的语气风格进行解释;\n首先,解释离散对数的概念以及其在密码学中的应用;\n具体分析在底数为37的特殊情况下,求解离散对数的数学方法;\n给出求解步骤:步骤1:确定离散对数的定义域和值域;步骤2:使用指数循环和分组法,逐步逼近目标值;步骤3:验证求得的解是否满足原方程,确保解的正确性;\n最后,以编号列表形式,将求解过程和结果以LaTeX格式呈现,便于学术交流和展示;", "input": "NULL", "constraints_num": 5, "constraints_splits": ["以专业学术的语气风格进行解释;", "首先,解释离散对数的概念以及其在密码学中的应用;", "具体分析在底数为37的特殊情况下,求解离散对数的数学方法;", "给出求解步骤:步骤1:确定离散对数的定义域和值域;步骤2:使用指数循环和分组法,逐步逼近目标值;步骤3:验证求得的解是否满足原方程,确保解的正确性;", "最后,以编号列表形式,将求解过程和结果以LaTeX格式呈现,便于学术交流和展示;"], "levels2": ["语气风格约束", "自然语言流程背景信息约束", "主题约束", "编号和列表约束", "输出格式约束"], "category": "trace1.0"} +{"id": "786", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "编写一个输出25项介于 -10和10之间的随机数组的JavaScript程序\n数组的长度必须为25;\n其元素应在-10到10之间(不包括0);\n数组内不允许出现重复元素;\n如果尝试生成25个唯一元素失败(即数组元素数量少于25个),程序应该捕获并处理错误;\n输出一个JSON格式的错误信息,包括错误代码和描述,如{\"error\":\"Unable to generate 25 unique elements within the specified range\",\"code\":\"ERR_UNIQUE_GEN\"};\n"}], "type": "trace", "description": "编写一个输出25项介于 -10和10之间的随机数组的JavaScript程序", "constraints": "数组的长度必须为25;\n其元素应在-10到10之间(不包括0);\n数组内不允许出现重复元素;\n如果尝试生成25个唯一元素失败(即数组元素数量少于25个),程序应该捕获并处理错误;\n输出一个JSON格式的错误信息,包括错误代码和描述,如{\"error\":\"Unable to generate 25 unique elements within the specified range\",\"code\":\"ERR_UNIQUE_GEN\"};", "input": "NULL", "constraints_num": 5, "constraints_splits": ["数组的长度必须为25;", "其元素应在-10到10之间(不包括0);", "数组内不允许出现重复元素;", "如果尝试生成25个唯一元素失败(即数组元素数量少于25个),程序应该捕获并处理错误;", "输出一个JSON格式的错误信息,包括错误代码和描述,如{\"error\":\"Unable to generate 25 unique elements within the specified range\",\"code\":\"ERR_UNIQUE_GEN\"};"], "levels2": ["数值约束", "数值约束", "排除约束", "数值约束", "输出格式约束"], "category": "trace2.0"} +{"id": "787", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "探讨提高生产力的多种方法,特别针对中小企业和大型企业,以及应用于不同领域和种类的组织。\n对于中小企业,讨论内容应包括:成本效益方法采用最新的生产技术、培训和发展员工的技能、改进生产流程、资金管理、提高工作场所的安全和卫生标准、建立有效的沟通和团队协作机制;\n对于大型企业,探讨内容应包括:规模化效率、高级技术集成、员工发展计划、精益生产方法、企业资源规划、高级财务分析和跨部门协作策略;\n提供具体的例子和建议,以帮助不同规模的组织提高效率和效益;\n对于中小企业,采用鼓励和积极的语气风格;对于大型企业,采用专业和严谨的语气风格;\n需先识别出企业规模,然后根据企业规模提供相应的建议和采用的语气风格。\n"}], "type": "trace", "description": "探讨提高生产力的多种方法,特别针对中小企业和大型企业,以及应用于不同领域和种类的组织。", "constraints": "对于中小企业,讨论内容应包括:成本效益方法采用最新的生产技术、培训和发展员工的技能、改进生产流程、资金管理、提高工作场所的安全和卫生标准、建立有效的沟通和团队协作机制;\n对于大型企业,探讨内容应包括:规模化效率、高级技术集成、员工发展计划、精益生产方法、企业资源规划、高级财务分析和跨部门协作策略;\n提供具体的例子和建议,以帮助不同规模的组织提高效率和效益;\n对于中小企业,采用鼓励和积极的语气风格;对于大型企业,采用专业和严谨的语气风格;\n需先识别出企业规模,然后根据企业规模提供相应的建议和采用的语气风格。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["对于中小企业,讨论内容应包括:成本效益方法采用最新的生产技术、培训和发展员工的技能、改进生产流程、资金管理、提高工作场所的安全和卫生标准、建立有效的沟通和团队协作机制;", "对于大型企业,探讨内容应包括:规模化效率、高级技术集成、员工发展计划、精益生产方法、企业资源规划、高级财务分析和跨部门协作策略;", "提供具体的例子和建议,以帮助不同规模的组织提高效率和效益;", "对于中小企业,采用鼓励和积极的语气风格;对于大型企业,采用专业和严谨的语气风格;", "需先识别出企业规模,然后根据企业规模提供相应的建议和采用的语气风格。"], "levels2": ["包含约束", "包含约束", "包含约束", "语气风格约束", "先验条件约束"], "category": "trace2.0"} +{"id": "788", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "提供关于三星Galaxy Z Fold3的详细规格\n以表格形式呈现规格;\n表格需包含以下列标题:**属性**、**数值**、**单位**;\n所有关键信息部分(如屏幕尺寸、分辨率、保护层材质、典型屏幕种类、前置摄像头像素、电池容量)需使用加粗字体以突出显示;\n确保每个属性的数值和单位信息完整、准确;\n表格中的信息不少于6行。\n"}], "type": "trace", "description": "提供关于三星Galaxy Z Fold3的详细规格", "constraints": "以表格形式呈现规格;\n表格需包含以下列标题:**属性**、**数值**、**单位**;\n所有关键信息部分(如屏幕尺寸、分辨率、保护层材质、典型屏幕种类、前置摄像头像素、电池容量)需使用加粗字体以突出显示;\n确保每个属性的数值和单位信息完整、准确;\n表格中的信息不少于6行。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["以表格形式呈现规格;", "表格需包含以下列标题:**属性**、**数值**、**单位**;", "所有关键信息部分(如屏幕尺寸、分辨率、保护层材质、典型屏幕种类、前置摄像头像素、电池容量)需使用加粗字体以突出显示;", "确保每个属性的数值和单位信息完整、准确;", "表格中的信息不少于6行。"], "levels2": ["输出格式约束", "输出格式约束", "文本样式约束", "数值约束", "数值约束"], "category": "trace2.0"} +{"id": "789", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "请向我阐释一下递归的思想,以及“递归”在算法中的应用价值。对话应该模拟一个教学场景。\n对话首先由计算机科学教练进行解释,限制在500字以内;\n然后由学生进行反馈,限制在250字以内;\n最后由教练进行总结,限制在250字以内;\n整个对话以Markdown格式输出;\n教练的角色使用粗体文本表示,学生的角色使用斜体文本表示。\n"}], "type": "trace", "description": "请向我阐释一下递归的思想,以及“递归”在算法中的应用价值。对话应该模拟一个教学场景。", "constraints": "对话首先由计算机科学教练进行解释,限制在500字以内;\n然后由学生进行反馈,限制在250字以内;\n最后由教练进行总结,限制在250字以内;\n整个对话以Markdown格式输出;\n教练的角色使用粗体文本表示,学生的角色使用斜体文本表示。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["对话首先由计算机科学教练进行解释,限制在500字以内;", "然后由学生进行反馈,限制在250字以内;", "最后由教练进行总结,限制在250字以内;", "整个对话以Markdown格式输出;", "教练的角色使用粗体文本表示,学生的角色使用斜体文本表示。"], "levels2": ["数值约束", "数值约束", "数值约束", "输出格式约束", "文本样式约束"], "category": "trace1.0"} +{"id": "790", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "写一写蚂蚁生活中的一天,从一只工蚁的视角出发,描述其一天的活动和遭遇。\n内容中应包含蚂蚁寻找食物、与同伴交流、维护蚁巢以及面对天敌的情景;\n以日记或随笔的形式呈现;\n采用第一人称叙述;\n使用比喻和拟人手法,让读者能够感受到蚂蚁生活中的艰辛与智慧;\n使用生动、细致的描绘展现蚂蚁的世界。\n"}], "type": "trace", "description": "写一写蚂蚁生活中的一天,从一只工蚁的视角出发,描述其一天的活动和遭遇。", "constraints": "内容中应包含蚂蚁寻找食物、与同伴交流、维护蚁巢以及面对天敌的情景;\n以日记或随笔的形式呈现;\n采用第一人称叙述;\n使用比喻和拟人手法,让读者能够感受到蚂蚁生活中的艰辛与智慧;\n使用生动、细致的描绘展现蚂蚁的世界。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["内容中应包含蚂蚁寻找食物、与同伴交流、维护蚁巢以及面对天敌的情景;", "以日记或随笔的形式呈现;", "采用第一人称叙述;", "使用比喻和拟人手法,让读者能够感受到蚂蚁生活中的艰辛与智慧;", "使用生动、细致的描绘展现蚂蚁的世界。"], "levels2": ["包含约束", "文本样式约束", "语气风格约束", "语言特征约束", "语言特征约束"], "category": "trace1.0"} +{"id": "791", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "描述如何在JavaScript中检测一个变量是否是数组类型\n使用Array.isArray()方法进行检测;\n检测方法返回布尔值,根据返回值判断变量是否为数组类型;\n提供示例代码说明使用方法;\n注意Array.isArray()方法是ECMAScript 5中引入的;\n对于较老的浏览器版本,可能需要使用`Object.prototype.toString.call()`方法实现类似功能。\n"}], "type": "trace", "description": "描述如何在JavaScript中检测一个变量是否是数组类型", "constraints": "使用Array.isArray()方法进行检测;\n检测方法返回布尔值,根据返回值判断变量是否为数组类型;\n提供示例代码说明使用方法;\n注意Array.isArray()方法是ECMAScript 5中引入的;\n对于较老的浏览器版本,可能需要使用`Object.prototype.toString.call()`方法实现类似功能。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["使用Array.isArray()方法进行检测;", "检测方法返回布尔值,根据返回值判断变量是否为数组类型;", "提供示例代码说明使用方法;", "注意Array.isArray()方法是ECMAScript 5中引入的;", "对于较老的浏览器版本,可能需要使用`Object.prototype.toString.call()`方法实现类似功能。"], "levels2": ["包含约束", "数值约束", "输出格式约束", "包含约束", "包含约束"], "category": "trace1.0"} +{"id": "792", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一份分析互联网黑话在网络购物领域中的使用现状和趋势的综合报告,受众为电商行业从业者。\n报告需采用专业学术风格;\n报告结构上应包含标题、子标题、编号列表以及引用文献;\n报告内容应遵循以下流程:首先,深入分析各种流行黑话的定义和使用场景;随后,探讨这些黑话对网络购物用户的吸引力和影响力,包括但不限于如何影响用户的购买决策、用户情感以及社区互动;\n报告应不少于3000字;\n所有引用文献需遵循APA格式;\n"}], "type": "trace", "description": "撰写一份分析互联网黑话在网络购物领域中的使用现状和趋势的综合报告,受众为电商行业从业者。", "constraints": "报告需采用专业学术风格;\n报告结构上应包含标题、子标题、编号列表以及引用文献;\n报告内容应遵循以下流程:首先,深入分析各种流行黑话的定义和使用场景;随后,探讨这些黑话对网络购物用户的吸引力和影响力,包括但不限于如何影响用户的购买决策、用户情感以及社区互动;\n报告应不少于3000字;\n所有引用文献需遵循APA格式;", "input": "NULL", "constraints_num": 5, "constraints_splits": ["报告需采用专业学术风格;", "报告结构上应包含标题、子标题、编号列表以及引用文献;", "报告内容应遵循以下流程:首先,深入分析各种流行黑话的定义和使用场景;随后,探讨这些黑话对网络购物用户的吸引力和影响力,包括但不限于如何影响用户的购买决策、用户情感以及社区互动;", "报告应不少于3000字;", "所有引用文献需遵循APA格式;"], "levels2": ["语气风格约束", "层次化结构约束", "自然语言流程背景信息约束", "数值约束", "引用和参考约束"], "category": "trace2.0"} +{"id": "793", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "构建一个家庭早上高效流程计划,涵盖成员各自的起床时间、早餐准备、家务任务分配以及出门前的必备检查。\n家庭成员A在6:00起床,开始准备早餐;\n家庭成员B在6:30起床,协助完成早餐准备并开始清理餐桌;\n家庭成员C在7:00起床,负责个人卫生及整理床铺;\n所有成员在7:30完成早餐,之后进行家务任务分配,比如成员A负责整理客厅,成员B负责洗碗,成员C负责喂养宠物;\n出门前的必备检查清单包含:确认电器是否关闭、门窗是否锁好、是否携带钥匙和手机等。\n"}], "type": "trace", "description": "构建一个家庭早上高效流程计划,涵盖成员各自的起床时间、早餐准备、家务任务分配以及出门前的必备检查。", "constraints": "家庭成员A在6:00起床,开始准备早餐;\n家庭成员B在6:30起床,协助完成早餐准备并开始清理餐桌;\n家庭成员C在7:00起床,负责个人卫生及整理床铺;\n所有成员在7:30完成早餐,之后进行家务任务分配,比如成员A负责整理客厅,成员B负责洗碗,成员C负责喂养宠物;\n出门前的必备检查清单包含:确认电器是否关闭、门窗是否锁好、是否携带钥匙和手机等。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["家庭成员A在6:00起床,开始准备早餐;", "家庭成员B在6:30起床,协助完成早餐准备并开始清理餐桌;", "家庭成员C在7:00起床,负责个人卫生及整理床铺;", "所有成员在7:30完成早餐,之后进行家务任务分配,比如成员A负责整理客厅,成员B负责洗碗,成员C负责喂养宠物;", "出门前的必备检查清单包含:确认电器是否关闭、门窗是否锁好、是否携带钥匙和手机等。"], "levels2": ["自然语言流程背景信息约束", "自然语言流程背景信息约束", "包含约束", "自然语言流程背景信息约束", "文本背景信息约束"], "category": "trace1.0"} +{"id": "794", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "你将扮演一个金融分析专家的角色,负责为全球最大的银行之一开发一个先进的欺诈检测和预测算法。\n算法能够处理每日超过10亿笔交易,不仅限于信用卡交易,还包括电子支付、汇款等;\n算法具备至少99%的欺诈检测准确率,误报率低于0.1%;\n算法必须在不泄露个人身份信息的前提下进行分析,确保符合所有相关的数据保护法规;\n算法应能实时更新,以应对不断变化的欺诈模式;\n算法能有效处理地理位置数据,以识别跨地区的欺诈行为模式;\n# Inputs:\n全球最大的银行之一,每日处理的交易量超过10亿笔,交易类型包括信用卡交易、电子支付、汇款等。\n"}], "type": "trace", "description": "你将扮演一个金融分析专家的角色,负责为全球最大的银行之一开发一个先进的欺诈检测和预测算法。", "constraints": "算法能够处理每日超过10亿笔交易,不仅限于信用卡交易,还包括电子支付、汇款等;\n算法具备至少99%的欺诈检测准确率,误报率低于0.1%;\n算法必须在不泄露个人身份信息的前提下进行分析,确保符合所有相关的数据保护法规;\n算法应能实时更新,以应对不断变化的欺诈模式;\n算法能有效处理地理位置数据,以识别跨地区的欺诈行为模式;", "input": "全球最大的银行之一,每日处理的交易量超过10亿笔,交易类型包括信用卡交易、电子支付、汇款等。", "constraints_num": 5, "constraints_splits": ["算法能够处理每日超过10亿笔交易,不仅限于信用卡交易,还包括电子支付、汇款等;", "算法具备至少99%的欺诈检测准确率,误报率低于0.1%;", "算法必须在不泄露个人身份信息的前提下进行分析,确保符合所有相关的数据保护法规;", "算法应能实时更新,以应对不断变化的欺诈模式;", "算法能有效处理地理位置数据,以识别跨地区的欺诈行为模式;"], "levels2": ["数值约束", "数值约束", "隐私约束", "主题约束", "主题约束"], "category": "trace1.0"} +{"id": "795", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇文章,探讨当今社会中存在的种族歧视和性别歧视问题,提出你对这些问题的观点,并阐述你认为改善这些问题的可行的社会政策和措施。\n在撰写过程中,需要扮演一位社会学研究者的角色;\n至少引用三位社会学专家的观点;\n使用比喻和拟人的修辞手法,使文章更加生动;\n文章的引文和参考文献需遵循APA格式;\n文章的结构应包含引言、主体(问题阐述、专家观点、政策建议)和结论三个主要部分。\n"}], "type": "trace", "description": "撰写一篇文章,探讨当今社会中存在的种族歧视和性别歧视问题,提出你对这些问题的观点,并阐述你认为改善这些问题的可行的社会政策和措施。", "constraints": "在撰写过程中,需要扮演一位社会学研究者的角色;\n至少引用三位社会学专家的观点;\n使用比喻和拟人的修辞手法,使文章更加生动;\n文章的引文和参考文献需遵循APA格式;\n文章的结构应包含引言、主体(问题阐述、专家观点、政策建议)和结论三个主要部分。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["在撰写过程中,需要扮演一位社会学研究者的角色;", "至少引用三位社会学专家的观点;", "使用比喻和拟人的修辞手法,使文章更加生动;", "文章的引文和参考文献需遵循APA格式;", "文章的结构应包含引言、主体(问题阐述、专家观点、政策建议)和结论三个主要部分。"], "levels2": ["角色扮演约束", "引用和参考约束", "语言特征约束", "引用和参考约束", "层次化结构约束"], "category": "trace2.0"} +{"id": "796", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以电影制片人的身份撰写一个电影故事梗概\n故事应采用惊险刺激的风格\n梗概包含主要人物描述、故事背景和情节(包括开始、发展、高潮和结局)\n故事输出以Markdown格式\n标题格式要求:# 标题表示电影名称,## 标题表示主要人物描述,### 标题表示故事背景,#### 标题表示情节开始、发展、高潮和结局\n情节下面使用有序列表表示关键事件\n"}], "type": "trace", "description": "以电影制片人的身份撰写一个电影故事梗概", "constraints": "故事应采用惊险刺激的风格\n梗概包含主要人物描述、故事背景和情节(包括开始、发展、高潮和结局)\n故事输出以Markdown格式\n标题格式要求:# 标题表示电影名称,## 标题表示主要人物描述,### 标题表示故事背景,#### 标题表示情节开始、发展、高潮和结局\n情节下面使用有序列表表示关键事件", "input": "NULL", "constraints_num": 5, "constraints_splits": ["故事应采用惊险刺激的风格", "梗概包含主要人物描述、故事背景和情节(包括开始、发展、高潮和结局)", "故事输出以Markdown格式", "标题格式要求:# 标题表示电影名称,## 标题表示主要人物描述,### 标题表示故事背景,#### 标题表示情节开始、发展、高潮和结局", "情节下面使用有序列表表示关键事件"], "levels2": ["语气风格约束", "包含约束", "输出格式约束", "层次化结构约束", "编号和列表约束"], "category": "trace1.0"} +{"id": "797", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "在古代寓言与故事的主题框架下,详细分析\"姜太公钓鱼·愿者上钩\"的故事。\n需要概述故事的背景和主要情节,包括时代背景、主要人物及其动机;\n分析故事中姜太公这一角色与\"钓鱼\"行为的象征意义,以及\"愿者上钩\"这四个字所蕴含的深刻寓意;\n探讨故事中特定元素与人物形象及其本体之间的关联和象征含义,分析这些元素如何加深了故事的艺术性和深沉性;\n总结故事对现代社会的启示和价值,以及它如何反映了古人对人性、智慧和策略的理解;\n在整个分析过程中,确保引用具体情节和原文描述来支持分析。\n"}], "type": "trace", "description": "在古代寓言与故事的主题框架下,详细分析\"姜太公钓鱼·愿者上钩\"的故事。", "constraints": "需要概述故事的背景和主要情节,包括时代背景、主要人物及其动机;\n分析故事中姜太公这一角色与\"钓鱼\"行为的象征意义,以及\"愿者上钩\"这四个字所蕴含的深刻寓意;\n探讨故事中特定元素与人物形象及其本体之间的关联和象征含义,分析这些元素如何加深了故事的艺术性和深沉性;\n总结故事对现代社会的启示和价值,以及它如何反映了古人对人性、智慧和策略的理解;\n在整个分析过程中,确保引用具体情节和原文描述来支持分析。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["需要概述故事的背景和主要情节,包括时代背景、主要人物及其动机;", "分析故事中姜太公这一角色与\"钓鱼\"行为的象征意义,以及\"愿者上钩\"这四个字所蕴含的深刻寓意;", "探讨故事中特定元素与人物形象及其本体之间的关联和象征含义,分析这些元素如何加深了故事的艺术性和深沉性;", "总结故事对现代社会的启示和价值,以及它如何反映了古人对人性、智慧和策略的理解;", "在整个分析过程中,确保引用具体情节和原文描述来支持分析。"], "levels2": ["包含约束", "主题约束", "主题约束", "主题约束", "引用和参考约束"], "category": "trace1.0"} +{"id": "798", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "设计一个包含多个表的SQL数据库,并编写创建表的SQL语句。\n所有的表都必须有主键;\n表之间的关系通过外键正确关联;\n字段类型与数据内容相匹配;\n遵循创建表的顺序:首先创建没有外键依赖的表,然后创建依赖于已创建表的表;\n在编写SQL语句时,使用代码块展示每个表的创建语句。\n"}], "type": "trace", "description": "设计一个包含多个表的SQL数据库,并编写创建表的SQL语句。", "constraints": "所有的表都必须有主键;\n表之间的关系通过外键正确关联;\n字段类型与数据内容相匹配;\n遵循创建表的顺序:首先创建没有外键依赖的表,然后创建依赖于已创建表的表;\n在编写SQL语句时,使用代码块展示每个表的创建语句。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["所有的表都必须有主键;", "表之间的关系通过外键正确关联;", "字段类型与数据内容相匹配;", "遵循创建表的顺序:首先创建没有外键依赖的表,然后创建依赖于已创建表的表;", "在编写SQL语句时,使用代码块展示每个表的创建语句。"], "levels2": ["包含约束", "包含约束", "输出格式约束", "层次化结构约束", "输出格式约束"], "category": "trace1.0"} +{"id": "799", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以一名资深历史教师的身份,解释并分析如何理解中国共产党领导人民发展的社会主义先进文化。\n解释时需首先清晰、准确地定义社会主义先进文化的含义,以及其在中国历史发展中的定位。\n通过具体的历史事件或时期,如改革开放、中国共产党成立90周年等,实例说明社会主义先进文化的发展过程和重要性。\n针对当代大学生,以鼓励和指导的语气,提出具体的行动建议,如何在日常学习和生活中弘扬社会主义先进文化。\n强调社会主义先进文化对个人成长和国家发展的重要性。\n在完成上述步骤后,以积极向上、充满希望的语气,强调当代大学生作为未来社会的建设者和接班人,在弘扬社会主义先进文化中的责任和使命。\n"}], "type": "trace", "description": "以一名资深历史教师的身份,解释并分析如何理解中国共产党领导人民发展的社会主义先进文化。", "constraints": "解释时需首先清晰、准确地定义社会主义先进文化的含义,以及其在中国历史发展中的定位。\n通过具体的历史事件或时期,如改革开放、中国共产党成立90周年等,实例说明社会主义先进文化的发展过程和重要性。\n针对当代大学生,以鼓励和指导的语气,提出具体的行动建议,如何在日常学习和生活中弘扬社会主义先进文化。\n强调社会主义先进文化对个人成长和国家发展的重要性。\n在完成上述步骤后,以积极向上、充满希望的语气,强调当代大学生作为未来社会的建设者和接班人,在弘扬社会主义先进文化中的责任和使命。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["解释时需首先清晰、准确地定义社会主义先进文化的含义,以及其在中国历史发展中的定位。", "通过具体的历史事件或时期,如改革开放、中国共产党成立90周年等,实例说明社会主义先进文化的发展过程和重要性。", "针对当代大学生,以鼓励和指导的语气,提出具体的行动建议,如何在日常学习和生活中弘扬社会主义先进文化。", "强调社会主义先进文化对个人成长和国家发展的重要性。", "在完成上述步骤后,以积极向上、充满希望的语气,强调当代大学生作为未来社会的建设者和接班人,在弘扬社会主义先进文化中的责任和使命。"], "levels2": ["包含约束", "包含约束", "语气风格约束", "主题约束", "情感情绪约束"], "category": "trace1.0"} +{"id": "800", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "解释一个心理学理论并提供一个案例\n解释应采用学术论文的形式,使用专业严谨的语气风格;\n解释时需包含理论的起源、核心概念、实验支持以及理论的应用领域;\n案例选择应围绕你所解释的心理学理论,且案例需详细描述情境、个体行为、结果以及理论如何解释这些现象;\n评估流程:如果理论解释详细且案例具体、贴合理论,视为优秀;如果理论解释基本完整但案例描述不够细致,视为良好;如果理论解释有遗漏或案例与理论关联不紧密,视为合格;\n输出格式应为包含标题、摘要、正文、结论、参考文献的标准学术论文格式。\n"}], "type": "trace", "description": "解释一个心理学理论并提供一个案例", "constraints": "解释应采用学术论文的形式,使用专业严谨的语气风格;\n解释时需包含理论的起源、核心概念、实验支持以及理论的应用领域;\n案例选择应围绕你所解释的心理学理论,且案例需详细描述情境、个体行为、结果以及理论如何解释这些现象;\n评估流程:如果理论解释详细且案例具体、贴合理论,视为优秀;如果理论解释基本完整但案例描述不够细致,视为良好;如果理论解释有遗漏或案例与理论关联不紧密,视为合格;\n输出格式应为包含标题、摘要、正文、结论、参考文献的标准学术论文格式。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["解释应采用学术论文的形式,使用专业严谨的语气风格;", "解释时需包含理论的起源、核心概念、实验支持以及理论的应用领域;", "案例选择应围绕你所解释的心理学理论,且案例需详细描述情境、个体行为、结果以及理论如何解释这些现象;", "评估流程:如果理论解释详细且案例具体、贴合理论,视为优秀;如果理论解释基本完整但案例描述不够细致,视为良好;如果理论解释有遗漏或案例与理论关联不紧密,视为合格;", "输出格式应为包含标题、摘要、正文、结论、参考文献的标准学术论文格式。"], "levels2": ["语气风格约束", "包含约束", "主题约束", "先验条件约束", "输出格式约束"], "category": "trace1.0"} +{"id": "801", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "请以一名动物学家的视角,分析至少五种不同种类蚂蚁的食性,比较它们的食材喜好和摄取方式,进一步解释为什么蚂蚁会携带食物。探讨在城市、森林、沙漠、草原和湿地这五种不同环境下蚂蚁的食物获取策略以及如何应对食物不足的情况。最后,请对蚂蚁携带食物的行为做出自己的理解和前瞻性的探讨。\n输出格式应为一个包含种类、食性、环境适应策略和食物携带行为的详细表格;\n分析的蚂蚁种类至少为五种;\n必须解释蚂蚁携带食物的原因;\n必须探讨蚂蚁在五种不同环境下的食物获取策略;\n必须探讨蚂蚁如何应对食物不足的情况。\n"}], "type": "trace", "description": "请以一名动物学家的视角,分析至少五种不同种类蚂蚁的食性,比较它们的食材喜好和摄取方式,进一步解释为什么蚂蚁会携带食物。探讨在城市、森林、沙漠、草原和湿地这五种不同环境下蚂蚁的食物获取策略以及如何应对食物不足的情况。最后,请对蚂蚁携带食物的行为做出自己的理解和前瞻性的探讨。", "constraints": "输出格式应为一个包含种类、食性、环境适应策略和食物携带行为的详细表格;\n分析的蚂蚁种类至少为五种;\n必须解释蚂蚁携带食物的原因;\n必须探讨蚂蚁在五种不同环境下的食物获取策略;\n必须探讨蚂蚁如何应对食物不足的情况。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["输出格式应为一个包含种类、食性、环境适应策略和食物携带行为的详细表格;", "分析的蚂蚁种类至少为五种;", "必须解释蚂蚁携带食物的原因;", "必须探讨蚂蚁在五种不同环境下的食物获取策略;", "必须探讨蚂蚁如何应对食物不足的情况。"], "levels2": ["输出格式约束", "数值约束", "包含约束", "包含约束", "包含约束"], "category": "trace1.0"} +{"id": "802", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "提供一个详细的步骤说明,包括示例代码,用Markdown格式展示如何将IPv6字符串转换成IP地址。\n所需的编程语言或工具;\n步骤分解,从解析IPv6字符串开始,到转换成IP地址结束;\n代码示例,确保代码清晰、注释充分,以便于理解和复用;\n在转换过程中可能遇到的常见错误和如何避免或解决这些错误的建议;\n使用Markdown格式呈现内容,包括使用代码块、标题、列表等元素,以提高可读性和专业性。\n"}], "type": "trace", "description": "提供一个详细的步骤说明,包括示例代码,用Markdown格式展示如何将IPv6字符串转换成IP地址。", "constraints": "所需的编程语言或工具;\n步骤分解,从解析IPv6字符串开始,到转换成IP地址结束;\n代码示例,确保代码清晰、注释充分,以便于理解和复用;\n在转换过程中可能遇到的常见错误和如何避免或解决这些错误的建议;\n使用Markdown格式呈现内容,包括使用代码块、标题、列表等元素,以提高可读性和专业性。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["所需的编程语言或工具;", "步骤分解,从解析IPv6字符串开始,到转换成IP地址结束;", "代码示例,确保代码清晰、注释充分,以便于理解和复用;", "在转换过程中可能遇到的常见错误和如何避免或解决这些错误的建议;", "使用Markdown格式呈现内容,包括使用代码块、标题、列表等元素,以提高可读性和专业性。"], "levels2": ["包含约束", "编号和列表约束", "文本样式约束", "包含约束", "输出格式约束"], "category": "trace1.0"} +{"id": "803", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "在安全领域,解释“CVE”的含义\n请以安全专家的身份进行回答;\n解释篇幅不少于200字;\n输出格式需为JSON;\n输出json内容需包含“CVE”的定义、历史、使用场景;\n需要至少一个引用来源。\n"}], "type": "trace", "description": "在安全领域,解释“CVE”的含义", "constraints": "请以安全专家的身份进行回答;\n解释篇幅不少于200字;\n输出格式需为JSON;\n输出json内容需包含“CVE”的定义、历史、使用场景;\n需要至少一个引用来源。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["请以安全专家的身份进行回答;", "解释篇幅不少于200字;", "输出格式需为JSON;", "输出json内容需包含“CVE”的定义、历史、使用场景;", "需要至少一个引用来源。"], "levels2": ["角色扮演约束", "数值约束", "输出格式约束", "包含约束", "引用和参考约束"], "category": "trace2.0"} +{"id": "804", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以银鲛、狗母鱼和翻车鱼为例,列出三种鱼类的中文学名、分类阶元和特征。\n每种鱼的介绍应至少包含5个具体特征;\n数据呈现格式为JSON;\n对于每种鱼类,至少提供3个可靠的参考资料或数据来源,以支持所述特征;\n要求语气风格正式,使用专业术语;\n在介绍中引用具体数据。\n"}], "type": "trace", "description": "以银鲛、狗母鱼和翻车鱼为例,列出三种鱼类的中文学名、分类阶元和特征。", "constraints": "每种鱼的介绍应至少包含5个具体特征;\n数据呈现格式为JSON;\n对于每种鱼类,至少提供3个可靠的参考资料或数据来源,以支持所述特征;\n要求语气风格正式,使用专业术语;\n在介绍中引用具体数据。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["每种鱼的介绍应至少包含5个具体特征;", "数据呈现格式为JSON;", "对于每种鱼类,至少提供3个可靠的参考资料或数据来源,以支持所述特征;", "要求语气风格正式,使用专业术语;", "在介绍中引用具体数据。"], "levels2": ["数值约束", "输出格式约束", "引用和参考约束", "语气风格约束", "引用和参考约束"], "category": "trace1.0"} +{"id": "805", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "使用js编写代码,根据接口状态码的不同处理请求信息,状态码为2xx时,将成功的信息存入临时文件中;状态码为4xx或5xx时,将错误信息存入另一个临时文件中。\n文件格式必须为JSON;\n文件大小不得超过1MB;\n如果文件大小超过1MB,需要进行压缩处理;\n在将信息存入文件之前,先检查文件是否存在,如果文件不存在,则创建文件;\n如果文件已存在,判断文件大小是否超过限制,如果超过则先执行压缩操作;\n"}], "type": "trace", "description": "使用js编写代码,根据接口状态码的不同处理请求信息,状态码为2xx时,将成功的信息存入临时文件中;状态码为4xx或5xx时,将错误信息存入另一个临时文件中。", "constraints": "文件格式必须为JSON;\n文件大小不得超过1MB;\n如果文件大小超过1MB,需要进行压缩处理;\n在将信息存入文件之前,先检查文件是否存在,如果文件不存在,则创建文件;\n如果文件已存在,判断文件大小是否超过限制,如果超过则先执行压缩操作;", "input": "NULL", "constraints_num": 5, "constraints_splits": ["文件格式必须为JSON;", "文件大小不得超过1MB;", "如果文件大小超过1MB,需要进行压缩处理;", "在将信息存入文件之前,先检查文件是否存在,如果文件不存在,则创建文件;", "如果文件已存在,判断文件大小是否超过限制,如果超过则先执行压缩操作;"], "levels2": ["输出格式约束", "数值约束", "数值约束", "先验条件约束", "数值约束"], "category": "trace2.0"} +{"id": "806", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以一场演讲的形式,分析并解释为什么《菜根谭》能够历久弥新\n演讲稿中至少包含三次引用《菜根谭》原文且用引号标注出来;\n输出格式为Markdown;\n要求使用正式且鼓舞人心的语气;\n解释其历久弥新的原因时,要围绕其智慧、道德和人生哲学进行深入探讨;\n特别注意引用时应使用Markdown格式的引用语法,例如引用“‘天无私覆,地无私载,日月无私照’”。\n"}], "type": "trace", "description": "以一场演讲的形式,分析并解释为什么《菜根谭》能够历久弥新", "constraints": "演讲稿中至少包含三次引用《菜根谭》原文且用引号标注出来;\n输出格式为Markdown;\n要求使用正式且鼓舞人心的语气;\n解释其历久弥新的原因时,要围绕其智慧、道德和人生哲学进行深入探讨;\n特别注意引用时应使用Markdown格式的引用语法,例如引用“‘天无私覆,地无私载,日月无私照’”。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["演讲稿中至少包含三次引用《菜根谭》原文且用引号标注出来;", "输出格式为Markdown;", "要求使用正式且鼓舞人心的语气;", "解释其历久弥新的原因时,要围绕其智慧、道德和人生哲学进行深入探讨;", "特别注意引用时应使用Markdown格式的引用语法,例如引用“‘天无私覆,地无私载,日月无私照’”。"], "levels2": ["引用和参考约束", "输出格式约束", "语气风格约束", "主题约束", "输出格式约束"], "category": "trace1.0"} +{"id": "807", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以一个专业程序员的角色,回答如何使用 python 判断当前时间是否在指定的两个时间范围内,并提供一段可运行的 Python 代码示例以及解释代码中的关键逻辑点。\n使用严谨正式的语气进行回答;\n答案中需包含一段遵循 PEP8 编码规范的 Python 代码示例;\n代码中必须使用 Python 的 datetime 模块;\n提供的代码示例需正确实现判断当前时间是否在两个指定时间范围内:\"09:00-17:00\" 和 \"20:00-06:00\";\n答案中还需解释代码中的关键逻辑点,确保初学者也能理解代码的基本原理。\n"}], "type": "trace", "description": "以一个专业程序员的角色,回答如何使用 python 判断当前时间是否在指定的两个时间范围内,并提供一段可运行的 Python 代码示例以及解释代码中的关键逻辑点。", "constraints": "使用严谨正式的语气进行回答;\n答案中需包含一段遵循 PEP8 编码规范的 Python 代码示例;\n代码中必须使用 Python 的 datetime 模块;\n提供的代码示例需正确实现判断当前时间是否在两个指定时间范围内:\"09:00-17:00\" 和 \"20:00-06:00\";\n答案中还需解释代码中的关键逻辑点,确保初学者也能理解代码的基本原理。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["使用严谨正式的语气进行回答;", "答案中需包含一段遵循 PEP8 编码规范的 Python 代码示例;", "代码中必须使用 Python 的 datetime 模块;", "提供的代码示例需正确实现判断当前时间是否在两个指定时间范围内:\"09:00-17:00\" 和 \"20:00-06:00\";", "答案中还需解释代码中的关键逻辑点,确保初学者也能理解代码的基本原理。"], "levels2": ["语气风格约束", "语法结构约束", "包含约束", "包含约束", "受众目标约束"], "category": "trace1.0"} +{"id": "808", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "作为一个数据库架构师或工程师,在一个社交媒体平台上提供查询“找出跟进数量最多的前10个用户”,并设计策略以应对查询的性能挑战。\n策略需要考虑系统响应时间、资源消耗、数据一致性以及维护成本;\n列出至少三种不同的策略,包括每种策略的关键步骤、预期性能提升以及可能的局限性或风险;\n阐述在高并发场景下,哪种策略可能最有效,以及为什么;\n策略中提出的任何技术或方法在当前的技术环境中是可行的;\n策略不会显著增加维护的复杂性。\n"}], "type": "trace", "description": "作为一个数据库架构师或工程师,在一个社交媒体平台上提供查询“找出跟进数量最多的前10个用户”,并设计策略以应对查询的性能挑战。", "constraints": "策略需要考虑系统响应时间、资源消耗、数据一致性以及维护成本;\n列出至少三种不同的策略,包括每种策略的关键步骤、预期性能提升以及可能的局限性或风险;\n阐述在高并发场景下,哪种策略可能最有效,以及为什么;\n策略中提出的任何技术或方法在当前的技术环境中是可行的;\n策略不会显著增加维护的复杂性。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["策略需要考虑系统响应时间、资源消耗、数据一致性以及维护成本;", "列出至少三种不同的策略,包括每种策略的关键步骤、预期性能提升以及可能的局限性或风险;", "阐述在高并发场景下,哪种策略可能最有效,以及为什么;", "策略中提出的任何技术或方法在当前的技术环境中是可行的;", "策略不会显著增加维护的复杂性。"], "levels2": ["主题约束", "编号和列表约束", "主题约束", "包含约束", "排除约束"], "category": "trace1.0"} +{"id": "809", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "解释如何解决 Django 中的 UTF-8 或其他编码问题。\n确保你的数据库连接字符串中的编码设置正确。\n确保在你的 `settings.py` 文件中,`DEFAULT_CHARSET` 设置为 `'utf-8'`。\n如果问题仍然存在,你可能需要在模板中显式地声明字符编码。\n检查你的模型字段是否正确地处理了字符编码。\n如果以上步骤都不能解决问题,检查是否有外部库或中间件可能干扰了字符编码。必要时,可以禁用或调整这些组件。\n"}], "type": "trace", "description": "解释如何解决 Django 中的 UTF-8 或其他编码问题。", "constraints": "确保你的数据库连接字符串中的编码设置正确。\n确保在你的 `settings.py` 文件中,`DEFAULT_CHARSET` 设置为 `'utf-8'`。\n如果问题仍然存在,你可能需要在模板中显式地声明字符编码。\n检查你的模型字段是否正确地处理了字符编码。\n如果以上步骤都不能解决问题,检查是否有外部库或中间件可能干扰了字符编码。必要时,可以禁用或调整这些组件。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["确保你的数据库连接字符串中的编码设置正确。", "确保在你的 `settings.py` 文件中,`DEFAULT_CHARSET` 设置为 `'utf-8'`。", "如果问题仍然存在,你可能需要在模板中显式地声明字符编码。", "检查你的模型字段是否正确地处理了字符编码。", "如果以上步骤都不能解决问题,检查是否有外部库或中间件可能干扰了字符编码。必要时,可以禁用或调整这些组件。"], "levels2": ["包含约束", "文本样式约束", "包含约束", "包含约束", "自然语言流程背景信息约束"], "category": "trace2.0"} +{"id": "810", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "生成判断点是否在闭环图形中的Python代码\n代码不超过20行;\n代码中需要包含对输入点坐标的类型检查;\n如果输入的点坐标不是浮点数或整数,代码应该抛出异常;\n输入的点坐标格式应为(x, y),如果输入的点坐标x和y是浮点数或整数,输出结果;\n代码应先验证输入点坐标是否满足判断点在闭环图形中的先验条件。\n"}], "type": "trace", "description": "生成判断点是否在闭环图形中的Python代码", "constraints": "代码不超过20行;\n代码中需要包含对输入点坐标的类型检查;\n如果输入的点坐标不是浮点数或整数,代码应该抛出异常;\n输入的点坐标格式应为(x, y),如果输入的点坐标x和y是浮点数或整数,输出结果;\n代码应先验证输入点坐标是否满足判断点在闭环图形中的先验条件。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["代码不超过20行;", "代码中需要包含对输入点坐标的类型检查;", "如果输入的点坐标不是浮点数或整数,代码应该抛出异常;", "输入的点坐标格式应为(x, y),如果输入的点坐标x和y是浮点数或整数,输出结果;", "代码应先验证输入点坐标是否满足判断点在闭环图形中的先验条件。"], "levels2": ["数值约束", "包含约束", "数值约束", "数值约束", "先验条件约束"], "category": "trace2.0"} +{"id": "811", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇个人成长论文,描述从失败经历中学到的重要教训及其在未来的应用,同时阐述面对和克服未来挑战的见解和方法。\n论文标题为《失败的馈赠:一次成长的壮丽旅程》;\n正文包括引言、三个失败案例的深入分析、每个案例后的小结,以及以“总结与展望”为标题的结尾部分;\n论文总字数应在3000至4000字之间;\n引言和结论段落至少各占总字数的10%;\n撰写时扮演经验丰富的导师角色,传授逆境生存策略。\n"}], "type": "trace", "description": "撰写一篇个人成长论文,描述从失败经历中学到的重要教训及其在未来的应用,同时阐述面对和克服未来挑战的见解和方法。", "constraints": "论文标题为《失败的馈赠:一次成长的壮丽旅程》;\n正文包括引言、三个失败案例的深入分析、每个案例后的小结,以及以“总结与展望”为标题的结尾部分;\n论文总字数应在3000至4000字之间;\n引言和结论段落至少各占总字数的10%;\n撰写时扮演经验丰富的导师角色,传授逆境生存策略。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["论文标题为《失败的馈赠:一次成长的壮丽旅程》;", "正文包括引言、三个失败案例的深入分析、每个案例后的小结,以及以“总结与展望”为标题的结尾部分;", "论文总字数应在3000至4000字之间;", "引言和结论段落至少各占总字数的10%;", "撰写时扮演经验丰富的导师角色,传授逆境生存策略。"], "levels2": ["层次化结构约束", "层次化结构约束", "数值约束", "数值约束", "角色扮演约束"], "category": "trace2.0"} +{"id": "812", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "根据已有数据,分析并排序应用自然语言处理技术的全球AI大公司。\n输出结果首先按照公司市值降序排列;\n如果公司市值相同,则按照自然语言处理相关专利数量降序排列;\n输出格式为一个有序列表;\n每个公司名称后面应跟随其市值和专利数量,所有数据用逗号隔开;\n市值和专利数量需要用下划线特殊标注出来。\n"}], "type": "trace", "description": "根据已有数据,分析并排序应用自然语言处理技术的全球AI大公司。", "constraints": "输出结果首先按照公司市值降序排列;\n如果公司市值相同,则按照自然语言处理相关专利数量降序排列;\n输出格式为一个有序列表;\n每个公司名称后面应跟随其市值和专利数量,所有数据用逗号隔开;\n市值和专利数量需要用下划线特殊标注出来。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["输出结果首先按照公司市值降序排列;", "如果公司市值相同,则按照自然语言处理相关专利数量降序排列;", "输出格式为一个有序列表;", "每个公司名称后面应跟随其市值和专利数量,所有数据用逗号隔开;", "市值和专利数量需要用下划线特殊标注出来。"], "levels2": ["层次化结构约束", "层次化结构约束", "编号和列表约束", "输出格式约束", "文本样式约束"], "category": "trace2.0"} +{"id": "813", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "请你就中国古代的勤劳和节俭这两个价值观,展开深入探究,分析并比较多位哲学家、文学家、政治家的经典著作,探讨他们对这些价值观的看法和对社会的贡献,同时说明其对当前社会的现实意义和启示。\n在撰写过程中,请采用严谨正式的语气风格,针对学术研究的受众群体,以学术论文的格式进行撰写。\n论文应包括引言部分,概述研究背景和目的。\n正文部分,详细分析和比较不同著作,探讨价值观的历史意义与现代启示。\n结论部分,总结发现并提出对未来研究的建议。\n最后,需附上参考文献,列出所有引用的资料来源,确保学术诚信。\n"}], "type": "trace", "description": "请你就中国古代的勤劳和节俭这两个价值观,展开深入探究,分析并比较多位哲学家、文学家、政治家的经典著作,探讨他们对这些价值观的看法和对社会的贡献,同时说明其对当前社会的现实意义和启示。", "constraints": "在撰写过程中,请采用严谨正式的语气风格,针对学术研究的受众群体,以学术论文的格式进行撰写。\n论文应包括引言部分,概述研究背景和目的。\n正文部分,详细分析和比较不同著作,探讨价值观的历史意义与现代启示。\n结论部分,总结发现并提出对未来研究的建议。\n最后,需附上参考文献,列出所有引用的资料来源,确保学术诚信。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["在撰写过程中,请采用严谨正式的语气风格,针对学术研究的受众群体,以学术论文的格式进行撰写。", "论文应包括引言部分,概述研究背景和目的。", "正文部分,详细分析和比较不同著作,探讨价值观的历史意义与现代启示。", "结论部分,总结发现并提出对未来研究的建议。", "最后,需附上参考文献,列出所有引用的资料来源,确保学术诚信。"], "levels2": ["语气风格约束", "层次化结构约束", "主题约束", "层次化结构约束", "引用和参考约束"], "category": "trace2.0"} +{"id": "814", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "扮演一个未来城市规划师的角色,为一群关注可持续城市化和环境保护的专业人士和决策者撰写一份详细报告,描述未来城市的基础设施、社区组织、交通运输方式、能源利用、环保措施等重要方面的特点和变化,以及如何平衡未来城市的发展与人与自然的和谐相处。\n以正式、客观的语气撰写报告;\n报告需遵循专业报告的格式,包括引言、主体、结论和参考文献部分;\n报告内容要基于深入思考和分析;\n确保报告覆盖未来城市的基础设施、社区组织、交通运输方式、能源利用、环保措施等重要方面的特点和变化;\n报告需探讨如何平衡未来城市的发展与人与自然的和谐相处。\n"}], "type": "trace", "description": "扮演一个未来城市规划师的角色,为一群关注可持续城市化和环境保护的专业人士和决策者撰写一份详细报告,描述未来城市的基础设施、社区组织、交通运输方式、能源利用、环保措施等重要方面的特点和变化,以及如何平衡未来城市的发展与人与自然的和谐相处。", "constraints": "以正式、客观的语气撰写报告;\n报告需遵循专业报告的格式,包括引言、主体、结论和参考文献部分;\n报告内容要基于深入思考和分析;\n确保报告覆盖未来城市的基础设施、社区组织、交通运输方式、能源利用、环保措施等重要方面的特点和变化;\n报告需探讨如何平衡未来城市的发展与人与自然的和谐相处。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["以正式、客观的语气撰写报告;", "报告需遵循专业报告的格式,包括引言、主体、结论和参考文献部分;", "报告内容要基于深入思考和分析;", "确保报告覆盖未来城市的基础设施、社区组织、交通运输方式、能源利用、环保措施等重要方面的特点和变化;", "报告需探讨如何平衡未来城市的发展与人与自然的和谐相处。"], "levels2": ["语气风格约束", "层次化结构约束", "主题约束", "主题约束", "主题约束"], "category": "trace1.0"} +{"id": "815", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以经济学专家的口吻,阐述一下市场经济和计划经济的主要区别\n遵循以下流程:首先,清晰解释市场经济和计划经济的概念;\n其次,对比两者在资源配置、效率和公平方面的差异;\n最后,总结市场经济和计划经济各自的优势和局限性;\n在阐述过程中,保持文本的严谨性和专业性;\n要求使用专业术语并避免口语化表达\n"}], "type": "trace", "description": "以经济学专家的口吻,阐述一下市场经济和计划经济的主要区别", "constraints": "遵循以下流程:首先,清晰解释市场经济和计划经济的概念;\n其次,对比两者在资源配置、效率和公平方面的差异;\n最后,总结市场经济和计划经济各自的优势和局限性;\n在阐述过程中,保持文本的严谨性和专业性;\n要求使用专业术语并避免口语化表达", "input": "NULL", "constraints_num": 5, "constraints_splits": ["遵循以下流程:首先,清晰解释市场经济和计划经济的概念;", "其次,对比两者在资源配置、效率和公平方面的差异;", "最后,总结市场经济和计划经济各自的优势和局限性;", "在阐述过程中,保持文本的严谨性和专业性;", "要求使用专业术语并避免口语化表达"], "levels2": ["自然语言流程背景信息约束", "层次化结构约束", "包含约束", "语气风格约束", "语言特征约束"], "category": "trace1.0"} +{"id": "816", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以Python初学者导师的身份,解析并执行Python代码:list(range(5)),并解释代码的功能和预期结果。\n代码执行结果应以列表形式输出;\n解释中需要说明`range(5)`是一个生成器,生成从0到4的整数序列;\n解释中需要说明`list()`函数的作用是将整数序列封装进列表格式;\n需要明确代码功能是生成一个包含从0到4的整数列表;\n需要说明`range()`函数的语法结构不包括结束值,因此5不会被包含在输出列表中。\n"}], "type": "trace", "description": "以Python初学者导师的身份,解析并执行Python代码:list(range(5)),并解释代码的功能和预期结果。", "constraints": "代码执行结果应以列表形式输出;\n解释中需要说明`range(5)`是一个生成器,生成从0到4的整数序列;\n解释中需要说明`list()`函数的作用是将整数序列封装进列表格式;\n需要明确代码功能是生成一个包含从0到4的整数列表;\n需要说明`range()`函数的语法结构不包括结束值,因此5不会被包含在输出列表中。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["代码执行结果应以列表形式输出;", "解释中需要说明`range(5)`是一个生成器,生成从0到4的整数序列;", "解释中需要说明`list()`函数的作用是将整数序列封装进列表格式;", "需要明确代码功能是生成一个包含从0到4的整数列表;", "需要说明`range()`函数的语法结构不包括结束值,因此5不会被包含在输出列表中。"], "levels2": ["输出格式约束", "包含约束", "包含约束", "包含约束", "包含约束"], "category": "trace2.0"} +{"id": "817", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "针对当前移动互联网普及的情况,请以报告的形式回答以下问题:您认为这种情况下移动互联网和APP工具获取信息的方式有哪些实际应用前景?\n报告应包含以下三个部分:引言、主体、结论;\n引言:使用正式且具有学术气息的语言风格;\n主体:使用数据和事实支持观点;\n结论:给出明确的总结和建议,分析移动互联网和APP工具在未来可能遇到的挑战和机遇,以及可能的发展趋势;\n报告应以LaTeX格式输出,确保格式的规范性和美观性;\n"}], "type": "trace", "description": "针对当前移动互联网普及的情况,请以报告的形式回答以下问题:您认为这种情况下移动互联网和APP工具获取信息的方式有哪些实际应用前景?", "constraints": "报告应包含以下三个部分:引言、主体、结论;\n引言:使用正式且具有学术气息的语言风格;\n主体:使用数据和事实支持观点;\n结论:给出明确的总结和建议,分析移动互联网和APP工具在未来可能遇到的挑战和机遇,以及可能的发展趋势;\n报告应以LaTeX格式输出,确保格式的规范性和美观性;", "input": "NULL", "constraints_num": 5, "constraints_splits": ["报告应包含以下三个部分:引言、主体、结论;", "引言:使用正式且具有学术气息的语言风格;", "主体:使用数据和事实支持观点;", "结论:给出明确的总结和建议,分析移动互联网和APP工具在未来可能遇到的挑战和机遇,以及可能的发展趋势;", "报告应以LaTeX格式输出,确保格式的规范性和美观性;"], "levels2": ["层次化结构约束", "语气风格约束", "包含约束", "主题约束", "输出格式约束"], "category": "trace2.0"} +{"id": "818", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "实现一个函数,求一个array中各元素的平均值\n函数应接受一个JSON格式的数组作为输入;\n函数返回一个JSON格式的对象,其中包含平均值的字段;\n输入的数组应至少包含100个元素;\n函数需先检查数组中所有元素是否为数字,如果不是,则应返回一个错误信息,说明哪个元素不是数字;\n在所有元素均为数字的情况下,输出的JSON对象应包括\"average\"字段,表示计算出的平均值;\n"}], "type": "trace", "description": "实现一个函数,求一个array中各元素的平均值", "constraints": "函数应接受一个JSON格式的数组作为输入;\n函数返回一个JSON格式的对象,其中包含平均值的字段;\n输入的数组应至少包含100个元素;\n函数需先检查数组中所有元素是否为数字,如果不是,则应返回一个错误信息,说明哪个元素不是数字;\n在所有元素均为数字的情况下,输出的JSON对象应包括\"average\"字段,表示计算出的平均值;", "input": "NULL", "constraints_num": 5, "constraints_splits": ["函数应接受一个JSON格式的数组作为输入;", "函数返回一个JSON格式的对象,其中包含平均值的字段;", "输入的数组应至少包含100个元素;", "函数需先检查数组中所有元素是否为数字,如果不是,则应返回一个错误信息,说明哪个元素不是数字;", "在所有元素均为数字的情况下,输出的JSON对象应包括\"average\"字段,表示计算出的平均值;"], "levels2": ["输出格式约束", "输出格式约束", "数值约束", "包含约束", "输出格式约束"], "category": "trace2.0"} +{"id": "819", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "描述一段猫咪和汪汪相爱的故事,发生在一座充满魔法的森林中,那里住着一群能说人话的动物,且故事应采用童话风格,充满浪漫和梦幻的色彩,让读者感受到温馨和甜蜜。\n故事应该发生在一座充满魔法的森林中,那里住着一群能说人话的动物;\n猫咪和汪汪的相遇必须是在月光下的湖边,它们的爱必须克服它们之间的自然对立;\n故事的叙述应采用童话风格,充满浪漫和梦幻的色彩;\n让读者在阅读时能感受到温馨和甜蜜;\n故事中应包含至少一个智慧的长者动物角色,为它们的爱情提供指导和帮助。\n"}], "type": "trace", "description": "描述一段猫咪和汪汪相爱的故事,发生在一座充满魔法的森林中,那里住着一群能说人话的动物,且故事应采用童话风格,充满浪漫和梦幻的色彩,让读者感受到温馨和甜蜜。", "constraints": "故事应该发生在一座充满魔法的森林中,那里住着一群能说人话的动物;\n猫咪和汪汪的相遇必须是在月光下的湖边,它们的爱必须克服它们之间的自然对立;\n故事的叙述应采用童话风格,充满浪漫和梦幻的色彩;\n让读者在阅读时能感受到温馨和甜蜜;\n故事中应包含至少一个智慧的长者动物角色,为它们的爱情提供指导和帮助。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["故事应该发生在一座充满魔法的森林中,那里住着一群能说人话的动物;", "猫咪和汪汪的相遇必须是在月光下的湖边,它们的爱必须克服它们之间的自然对立;", "故事的叙述应采用童话风格,充满浪漫和梦幻的色彩;", "让读者在阅读时能感受到温馨和甜蜜;", "故事中应包含至少一个智慧的长者动物角色,为它们的爱情提供指导和帮助。"], "levels2": ["角色扮演约束", "先验条件约束", "语气风格约束", "情感情绪约束", "包含约束"], "category": "trace2.0"} +{"id": "820", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以编程导师的身份,正式严谨地解释递归函数,并给出一个递归函数的例子及其运行过程。\n解释递归函数时,应详细说明递归的基本原理、递归的结束条件以及递归在实际编程中的应用场景;\n递归函数的例子代码行数不少于10行;\n确保代码严格遵循Python的语法结构;\n递归函数的例子中应包括递归调用的过程;\n应解释递归函数如何通过递归调用解决问题的逻辑思路。\n"}], "type": "trace", "description": "以编程导师的身份,正式严谨地解释递归函数,并给出一个递归函数的例子及其运行过程。", "constraints": "解释递归函数时,应详细说明递归的基本原理、递归的结束条件以及递归在实际编程中的应用场景;\n递归函数的例子代码行数不少于10行;\n确保代码严格遵循Python的语法结构;\n递归函数的例子中应包括递归调用的过程;\n应解释递归函数如何通过递归调用解决问题的逻辑思路。", "input": "NULL", "constraints_num": 5, "constraints_splits": ["解释递归函数时,应详细说明递归的基本原理、递归的结束条件以及递归在实际编程中的应用场景;", "递归函数的例子代码行数不少于10行;", "确保代码严格遵循Python的语法结构;", "递归函数的例子中应包括递归调用的过程;", "应解释递归函数如何通过递归调用解决问题的逻辑思路。"], "levels2": ["包含约束", "数值约束", "语法结构约束", "包含约束", "主题约束"], "category": "trace1.0"} +{"id": "821", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "设计一个集成测试方案,确保网站在各种设备和操作环境下都能正常运行。\n集成测试方案应考虑使用自动化测试、手动测试、跨浏览器测试和响应式设计测试等工具和技术;\n设计方案需从开发人员和质量保证工程师的视角出发;\n在设计测试方案前,需先完成一个初步的设备和浏览器兼容性调查;\n兼容性调查至少包括但不限于iOS、Android、Windows、MacOS、Chrome、Firefox、Safari和Edge等;\n最终的测试方案应以表格形式呈现;\n表格需包含设备、浏览器、测试类型和测试结果等关键信息,以便于快速查阅和对比。\n"}], "type": "trace", "description": "设计一个集成测试方案,确保网站在各种设备和操作环境下都能正常运行。", "constraints": "集成测试方案应考虑使用自动化测试、手动测试、跨浏览器测试和响应式设计测试等工具和技术;\n设计方案需从开发人员和质量保证工程师的视角出发;\n在设计测试方案前,需先完成一个初步的设备和浏览器兼容性调查;\n兼容性调查至少包括但不限于iOS、Android、Windows、MacOS、Chrome、Firefox、Safari和Edge等;\n最终的测试方案应以表格形式呈现;\n表格需包含设备、浏览器、测试类型和测试结果等关键信息,以便于快速查阅和对比。", "input": "NULL", "constraints_num": 6, "constraints_splits": ["集成测试方案应考虑使用自动化测试、手动测试、跨浏览器测试和响应式设计测试等工具和技术;", "设计方案需从开发人员和质量保证工程师的视角出发;", "在设计测试方案前,需先完成一个初步的设备和浏览器兼容性调查;", "兼容性调查至少包括但不限于iOS、Android、Windows、MacOS、Chrome、Firefox、Safari和Edge等;", "最终的测试方案应以表格形式呈现;", "表格需包含设备、浏览器、测试类型和测试结果等关键信息,以便于快速查阅和对比。"], "levels2": ["包含约束", "受众目标约束", "先验条件约束", "包含约束", "输出格式约束", "表格背景信息约束"], "category": "trace2.0"} +{"id": "822", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以一个Python开发者的角色,向具有一定编程经验的交易员和开发人员解释如何在实时交易模拟中使用币安USDT合约。\n在开始前,确保你已经安装了Python和必要的库,比如`python-binance`;\n假定你熟悉Python编程和币安API,了解USDT合约交易基础;\n使用不超过10个函数调用来实现模拟交易,每个函数调用需包含必要的参数和返回值,确保语法结构清晰且逻辑完整;\n生成的代码需要以Markdown格式输出,包括代码块和注释,以便于阅读和复用;\n遵循提供的步骤进行代码编写:连接到币安API,获取最新USDT合约市场数据,创建限价买单,获取账户信息确认订单状态,如果订单未成交则撤销订单,输出交易结果;\n保持简洁且明确的语气风格,确保语法正确,避免使用复杂的嵌套结构。\n"}], "type": "trace", "description": "以一个Python开发者的角色,向具有一定编程经验的交易员和开发人员解释如何在实时交易模拟中使用币安USDT合约。", "constraints": "在开始前,确保你已经安装了Python和必要的库,比如`python-binance`;\n假定你熟悉Python编程和币安API,了解USDT合约交易基础;\n使用不超过10个函数调用来实现模拟交易,每个函数调用需包含必要的参数和返回值,确保语法结构清晰且逻辑完整;\n生成的代码需要以Markdown格式输出,包括代码块和注释,以便于阅读和复用;\n遵循提供的步骤进行代码编写:连接到币安API,获取最新USDT合约市场数据,创建限价买单,获取账户信息确认订单状态,如果订单未成交则撤销订单,输出交易结果;\n保持简洁且明确的语气风格,确保语法正确,避免使用复杂的嵌套结构。", "input": "NULL", "constraints_num": 6, "constraints_splits": ["在开始前,确保你已经安装了Python和必要的库,比如`python-binance`;", "假定你熟悉Python编程和币安API,了解USDT合约交易基础;", "使用不超过10个函数调用来实现模拟交易,每个函数调用需包含必要的参数和返回值,确保语法结构清晰且逻辑完整;", "生成的代码需要以Markdown格式输出,包括代码块和注释,以便于阅读和复用;", "遵循提供的步骤进行代码编写:连接到币安API,获取最新USDT合约市场数据,创建限价买单,获取账户信息确认订单状态,如果订单未成交则撤销订单,输出交易结果;", "保持简洁且明确的语气风格,确保语法正确,避免使用复杂的嵌套结构。"], "levels2": ["先验条件约束", "先验条件约束", "语法结构约束", "输出格式约束", "自然语言流程背景信息约束", "语气风格约束"], "category": "trace1.0"} +{"id": "823", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为一个专注于科技产品的在线商店设计一个主页\n主页设计针对科技爱好者和年轻专业人士;\n采用简洁而现代的风格;\n内容中包含最新科技趋势和产品特色;\n使用响应式设计,确保在不同设备上都能提供良好的用户体验,包括电脑、平板和手机;\n主页包含以下部分:引人注目的横幅、产品分类、特色产品展示、用户评价区和一个清晰的购物车入口;\n特色产品展示的所有链接和图片必须符合Web Content Accessibility Guidelines(WCAG)标准,确保无障碍访问;\n"}], "type": "trace", "description": "为一个专注于科技产品的在线商店设计一个主页", "constraints": "主页设计针对科技爱好者和年轻专业人士;\n采用简洁而现代的风格;\n内容中包含最新科技趋势和产品特色;\n使用响应式设计,确保在不同设备上都能提供良好的用户体验,包括电脑、平板和手机;\n主页包含以下部分:引人注目的横幅、产品分类、特色产品展示、用户评价区和一个清晰的购物车入口;\n特色产品展示的所有链接和图片必须符合Web Content Accessibility Guidelines(WCAG)标准,确保无障碍访问;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["主页设计针对科技爱好者和年轻专业人士;", "采用简洁而现代的风格;", "内容中包含最新科技趋势和产品特色;", "使用响应式设计,确保在不同设备上都能提供良好的用户体验,包括电脑、平板和手机;", "主页包含以下部分:引人注目的横幅、产品分类、特色产品展示、用户评价区和一个清晰的购物车入口;", "特色产品展示的所有链接和图片必须符合Web Content Accessibility Guidelines(WCAG)标准,确保无障碍访问;"], "levels2": ["受众目标约束", "语气风格约束", "包含约束", "文本样式约束", "包含约束", "隐私约束"], "category": "trace2.0"} +{"id": "824", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以浪漫主义文学风格,使用比喻和拟人的修辞手法,表达对初恋的接触、情感、思想的感受,以及初恋带来的深刻影响,诗歌需设定在星夜下的海滩,表达者独自漫步的情景。\n叙述应当采用一段诗歌的形式;\n诗歌至少包含三个诗节;\n每个诗节四行;\n每行诗歌的音节数在7到10个之间;\n必须使用比喻和拟人的修辞手法;\n诗歌内容需让读者能够感受到表达者的情感波动及初恋带来的影响。\n"}], "type": "trace", "description": "以浪漫主义文学风格,使用比喻和拟人的修辞手法,表达对初恋的接触、情感、思想的感受,以及初恋带来的深刻影响,诗歌需设定在星夜下的海滩,表达者独自漫步的情景。", "constraints": "叙述应当采用一段诗歌的形式;\n诗歌至少包含三个诗节;\n每个诗节四行;\n每行诗歌的音节数在7到10个之间;\n必须使用比喻和拟人的修辞手法;\n诗歌内容需让读者能够感受到表达者的情感波动及初恋带来的影响。", "input": "NULL", "constraints_num": 6, "constraints_splits": ["叙述应当采用一段诗歌的形式;", "诗歌至少包含三个诗节;", "每个诗节四行;", "每行诗歌的音节数在7到10个之间;", "必须使用比喻和拟人的修辞手法;", "诗歌内容需让读者能够感受到表达者的情感波动及初恋带来的影响。"], "levels2": ["文本样式约束", "数值约束", "数值约束", "数值约束", "语言特征约束", "情感情绪约束"], "category": "trace2.0"} +{"id": "825", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "请扮演一个网络抓取专家,对提供的 Python 程式进行优化,优化的目标是能对指定的网址进行 GET 请求并提取所有包含「href」属性的' a '标签。\n优化过程中需考虑合法性和道德性,避免过于频繁的网路调用;\n在10分钟内完成优化;\n优化后的程式应能处理100个请求而不崩溃;\n优化后的程式应采用异步技术;\n程式需确保每个请求的间隔时间符合网站的 robots.txt 文件规定,以避免被封禁;\n优化后,请以代码块形式输出程式,并包含必要的注释和说明,以便于理解和维护。\n"}], "type": "trace", "description": "请扮演一个网络抓取专家,对提供的 Python 程式进行优化,优化的目标是能对指定的网址进行 GET 请求并提取所有包含「href」属性的' a '标签。", "constraints": "优化过程中需考虑合法性和道德性,避免过于频繁的网路调用;\n在10分钟内完成优化;\n优化后的程式应能处理100个请求而不崩溃;\n优化后的程式应采用异步技术;\n程式需确保每个请求的间隔时间符合网站的 robots.txt 文件规定,以避免被封禁;\n优化后,请以代码块形式输出程式,并包含必要的注释和说明,以便于理解和维护。", "input": "NULL", "constraints_num": 6, "constraints_splits": ["优化过程中需考虑合法性和道德性,避免过于频繁的网路调用;", "在10分钟内完成优化;", "优化后的程式应能处理100个请求而不崩溃;", "优化后的程式应采用异步技术;", "程式需确保每个请求的间隔时间符合网站的 robots.txt 文件规定,以避免被封禁;", "优化后,请以代码块形式输出程式,并包含必要的注释和说明,以便于理解和维护。"], "levels2": ["价值观约束", "数值约束", "数值约束", "包含约束", "价值观约束", "输出格式约束"], "category": "trace1.0"} +{"id": "826", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "写一篇关于城市流浪动物的议论文,探讨在现代城市中流浪动物的存在,分析其原因并提出解决方案。\n全文不少于1500字;\n引言部分应不少于150字,明确阐述城市流浪动物问题的紧迫性;\n正文部分应不少于1000字,深入分析流浪动物的来源,包括但不限于被遗弃、繁殖过剩、缺乏领养等,并详细讨论流浪动物对城市环境和公共卫生的影响;\n结论部分应不少于350字,提出可行的解决方案,包括政策制定、公众教育、动物福利及领养倡议等;\n文章中需以一只被人类遗弃在城市里的流浪狗的故事为例子,用以增强文章的说服力和情感共鸣;\n在描述此故事时,角色扮演约束要求以第一人称视角,即假设你就是这只被遗弃的流浪狗,生动地描述其在城市中的生存经历。\n"}], "type": "trace", "description": "写一篇关于城市流浪动物的议论文,探讨在现代城市中流浪动物的存在,分析其原因并提出解决方案。", "constraints": "全文不少于1500字;\n引言部分应不少于150字,明确阐述城市流浪动物问题的紧迫性;\n正文部分应不少于1000字,深入分析流浪动物的来源,包括但不限于被遗弃、繁殖过剩、缺乏领养等,并详细讨论流浪动物对城市环境和公共卫生的影响;\n结论部分应不少于350字,提出可行的解决方案,包括政策制定、公众教育、动物福利及领养倡议等;\n文章中需以一只被人类遗弃在城市里的流浪狗的故事为例子,用以增强文章的说服力和情感共鸣;\n在描述此故事时,角色扮演约束要求以第一人称视角,即假设你就是这只被遗弃的流浪狗,生动地描述其在城市中的生存经历。", "input": "NULL", "constraints_num": 6, "constraints_splits": ["全文不少于1500字;", "引言部分应不少于150字,明确阐述城市流浪动物问题的紧迫性;", "正文部分应不少于1000字,深入分析流浪动物的来源,包括但不限于被遗弃、繁殖过剩、缺乏领养等,并详细讨论流浪动物对城市环境和公共卫生的影响;", "结论部分应不少于350字,提出可行的解决方案,包括政策制定、公众教育、动物福利及领养倡议等;", "文章中需以一只被人类遗弃在城市里的流浪狗的故事为例子,用以增强文章的说服力和情感共鸣;", "在描述此故事时,角色扮演约束要求以第一人称视角,即假设你就是这只被遗弃的流浪狗,生动地描述其在城市中的生存经历。"], "levels2": ["数值约束", "数值约束", "数值约束", "数值约束", "包含约束", "角色扮演约束"], "category": "trace2.0"} +{"id": "827", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "结合个人观影习惯和爱好,撰写一篇关于喜欢的电影类型、导演、演员以及电影观点和评价的评论文章,以电影评论家身份,采用正式学术风格,文章包含引言、主体和结论三个部分。\n引言部分需概述个人观影偏好;\n主体部分阐述对特定电影类型、导演和演员的见解;\n结论部分总结观影体验对个人的影响;\n在论述中至少引用两部对个人观影经历有深刻影响的电影;\n为每部电影提供IMDb(Internet Movie Database)链接作为参考;\n采用正式的学术风格撰写。\n"}], "type": "trace", "description": "结合个人观影习惯和爱好,撰写一篇关于喜欢的电影类型、导演、演员以及电影观点和评价的评论文章,以电影评论家身份,采用正式学术风格,文章包含引言、主体和结论三个部分。", "constraints": "引言部分需概述个人观影偏好;\n主体部分阐述对特定电影类型、导演和演员的见解;\n结论部分总结观影体验对个人的影响;\n在论述中至少引用两部对个人观影经历有深刻影响的电影;\n为每部电影提供IMDb(Internet Movie Database)链接作为参考;\n采用正式的学术风格撰写。", "input": "NULL", "constraints_num": 6, "constraints_splits": ["引言部分需概述个人观影偏好;", "主体部分阐述对特定电影类型、导演和演员的见解;", "结论部分总结观影体验对个人的影响;", "在论述中至少引用两部对个人观影经历有深刻影响的电影;", "为每部电影提供IMDb(Internet Movie Database)链接作为参考;", "采用正式的学术风格撰写。"], "levels2": ["包含约束", "主题约束", "层次化结构约束", "引用和参考约束", "引用和参考约束", "语气风格约束"], "category": "trace1.0"} +{"id": "828", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "模拟一个MySQL数据库管理员,对名为user的表进行一系列操作,包括结构优化、数据备份、去标识化处理、数据查询与排序,同时记录每一步操作的日志。\n在不影响数据库性能的前提下,对user表进行结构优化;\n在进行数据操作前,创建user表的完整备份;\n对user表中所有用户数据进行去标识化处理;\n查询并返回user表中前100条数据,包括用户的ID、用户名和加入日期;\n返回的数据中,按照加入日期进行降序排列;\n确保每一步操作都记录在日志中。\n# Inputs:\n数据库中有一张名为user的表,该表中储存了至少一万条用户数据。\n"}], "type": "trace", "description": "模拟一个MySQL数据库管理员,对名为user的表进行一系列操作,包括结构优化、数据备份、去标识化处理、数据查询与排序,同时记录每一步操作的日志。", "constraints": "在不影响数据库性能的前提下,对user表进行结构优化;\n在进行数据操作前,创建user表的完整备份;\n对user表中所有用户数据进行去标识化处理;\n查询并返回user表中前100条数据,包括用户的ID、用户名和加入日期;\n返回的数据中,按照加入日期进行降序排列;\n确保每一步操作都记录在日志中。", "input": "数据库中有一张名为user的表,该表中储存了至少一万条用户数据。", "constraints_num": 6, "constraints_splits": ["在不影响数据库性能的前提下,对user表进行结构优化;", "在进行数据操作前,创建user表的完整备份;", "对user表中所有用户数据进行去标识化处理;", "查询并返回user表中前100条数据,包括用户的ID、用户名和加入日期;", "返回的数据中,按照加入日期进行降序排列;", "确保每一步操作都记录在日志中。"], "levels2": ["主题约束", "先验条件约束", "隐私约束", "输出格式约束", "输出格式约束", "输出格式约束"], "category": "trace2.0"} +{"id": "829", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "开发一份癌症早期症状识别指南,该指南应从医生和病人的双重视角出发\n指南应包含一份详细列出了常见癌症种类及其早期症状的表格;\n指南中需包含病人需要关注的特征指标列表,包括但不限于体重变化、持续性疼痛、异常出血等;\n指南中需包含如何有效监测和评估症状,包括定期体检的时间表和监测方法;\n开发指南时,请确保使用提供的癌症种类及早期症状示例信息作为背景;\n根据提供的先验条件流程进行症状监测和评估,包括制定个人健康监测计划、记录疑似早期症状、比对特征指标、及时联系医疗专业人员进行进一步检查;\n输出格式应为一份包含表格、列表和步骤流程的文档,确保清晰、易于阅读和理解,便于病人和医生共同使用;\n# Inputs:\n| 癌症种类       | 早期症状示例                 |\n|----------------|------------------------------|\n| 肺癌           | 持续性咳嗽、胸痛、呼吸困难      |\n| 乳腺癌         | 乳房肿块、皮肤凹陷或皮肤改变     |\n| 胃癌           | 消化不良、胃部不适、体重下降     |\n| 皮肤癌         | 新生或变化的皮肤斑点、溃疡不愈合 |\n| 前列腺癌       | 尿频、尿急、排尿困难            |\n"}], "type": "trace", "description": "开发一份癌症早期症状识别指南,该指南应从医生和病人的双重视角出发", "constraints": "指南应包含一份详细列出了常见癌症种类及其早期症状的表格;\n指南中需包含病人需要关注的特征指标列表,包括但不限于体重变化、持续性疼痛、异常出血等;\n指南中需包含如何有效监测和评估症状,包括定期体检的时间表和监测方法;\n开发指南时,请确保使用提供的癌症种类及早期症状示例信息作为背景;\n根据提供的先验条件流程进行症状监测和评估,包括制定个人健康监测计划、记录疑似早期症状、比对特征指标、及时联系医疗专业人员进行进一步检查;\n输出格式应为一份包含表格、列表和步骤流程的文档,确保清晰、易于阅读和理解,便于病人和医生共同使用;", "input": "| 癌症种类       | 早期症状示例                 |\n|----------------|------------------------------|\n| 肺癌           | 持续性咳嗽、胸痛、呼吸困难      |\n| 乳腺癌         | 乳房肿块、皮肤凹陷或皮肤改变     |\n| 胃癌           | 消化不良、胃部不适、体重下降     |\n| 皮肤癌         | 新生或变化的皮肤斑点、溃疡不愈合 |\n| 前列腺癌       | 尿频、尿急、排尿困难            |", "constraints_num": 6, "constraints_splits": ["指南应包含一份详细列出了常见癌症种类及其早期症状的表格;", "指南中需包含病人需要关注的特征指标列表,包括但不限于体重变化、持续性疼痛、异常出血等;", "指南中需包含如何有效监测和评估症状,包括定期体检的时间表和监测方法;", "开发指南时,请确保使用提供的癌症种类及早期症状示例信息作为背景;", "根据提供的先验条件流程进行症状监测和评估,包括制定个人健康监测计划、记录疑似早期症状、比对特征指标、及时联系医疗专业人员进行进一步检查;", "输出格式应为一份包含表格、列表和步骤流程的文档,确保清晰、易于阅读和理解,便于病人和医生共同使用;"], "levels2": ["包含约束", "包含约束", "包含约束", "文本背景信息约束", "先验条件约束", "输出格式约束"], "category": "trace1.0"} +{"id": "830", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "作为IT项目经理,制定一个具体的培训计划以提高专业技能。\n培训计划应该包含至少5个培训目标;\n每个目标都要明确对应的时间安排;\n描述你将会选择哪些培训课程或活动来实现这些目标;\n至少有一个目标是关于提升团队管理和领导力的,这是实现职业发展的必要条件;\n需要简要说明此计划对你作为IT项目经理职业发展的重要性;\n指出如何通过实现这些目标,提升团队效率和项目成功率。\n"}], "type": "trace", "description": "作为IT项目经理,制定一个具体的培训计划以提高专业技能。", "constraints": "培训计划应该包含至少5个培训目标;\n每个目标都要明确对应的时间安排;\n描述你将会选择哪些培训课程或活动来实现这些目标;\n至少有一个目标是关于提升团队管理和领导力的,这是实现职业发展的必要条件;\n需要简要说明此计划对你作为IT项目经理职业发展的重要性;\n指出如何通过实现这些目标,提升团队效率和项目成功率。", "input": "NULL", "constraints_num": 6, "constraints_splits": ["培训计划应该包含至少5个培训目标;", "每个目标都要明确对应的时间安排;", "描述你将会选择哪些培训课程或活动来实现这些目标;", "至少有一个目标是关于提升团队管理和领导力的,这是实现职业发展的必要条件;", "需要简要说明此计划对你作为IT项目经理职业发展的重要性;", "指出如何通过实现这些目标,提升团队效率和项目成功率。"], "levels2": ["数值约束", "数值约束", "包含约束", "包含约束", "包含约束", "主题约束"], "category": "trace2.0"} +{"id": "831", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "扮演一位计算机科学教师,详细介绍如何在Java中实现有向图的拓扑排序。\n在回答前,先简要介绍有向图和拓扑排序的概念;\n解释为什么拓扑排序在有向图中至关重要;\n使用Markdown代码块格式提供一个完整的Java代码示例;\n代码示例应包含有向图的构建、邻接表的使用、深度优先搜索(DFS)或入度计数算法的实现;\n代码示例应包含输出排序结果的逻辑;\n在代码示例中,每一步操作都应有清晰的注释。\n"}], "type": "trace", "description": "扮演一位计算机科学教师,详细介绍如何在Java中实现有向图的拓扑排序。", "constraints": "在回答前,先简要介绍有向图和拓扑排序的概念;\n解释为什么拓扑排序在有向图中至关重要;\n使用Markdown代码块格式提供一个完整的Java代码示例;\n代码示例应包含有向图的构建、邻接表的使用、深度优先搜索(DFS)或入度计数算法的实现;\n代码示例应包含输出排序结果的逻辑;\n在代码示例中,每一步操作都应有清晰的注释。", "input": "NULL", "constraints_num": 6, "constraints_splits": ["在回答前,先简要介绍有向图和拓扑排序的概念;", "解释为什么拓扑排序在有向图中至关重要;", "使用Markdown代码块格式提供一个完整的Java代码示例;", "代码示例应包含有向图的构建、邻接表的使用、深度优先搜索(DFS)或入度计数算法的实现;", "代码示例应包含输出排序结果的逻辑;", "在代码示例中,每一步操作都应有清晰的注释。"], "levels2": ["先验条件约束", "包含约束", "输出格式约束", "包含约束", "包含约束", "文本样式约束"], "category": "trace2.0"} +{"id": "832", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "解释并演示如何使用C或C++语言隐藏函数符号以及静态库中的全部符号。\n使用`clang`编译器的命令行选项`-fvisibility`来隐藏函数符号;\n使用`-fvisibility=hidden`可以隐藏所有非导出符号;\n使用`-fvisibility-inlines-hidden`选项来隐藏静态库中所有内联函数的符号;\n示例代码应包含至少两个函数,一个为内联函数,另一个为非内联函数;\n确保代码使用markdown语法高亮显示;\n确保代码段落使用markdown语法的代码块进行高亮显示,以增强代码可读性。\n"}], "type": "trace", "description": "解释并演示如何使用C或C++语言隐藏函数符号以及静态库中的全部符号。", "constraints": "使用`clang`编译器的命令行选项`-fvisibility`来隐藏函数符号;\n使用`-fvisibility=hidden`可以隐藏所有非导出符号;\n使用`-fvisibility-inlines-hidden`选项来隐藏静态库中所有内联函数的符号;\n示例代码应包含至少两个函数,一个为内联函数,另一个为非内联函数;\n确保代码使用markdown语法高亮显示;\n确保代码段落使用markdown语法的代码块进行高亮显示,以增强代码可读性。", "input": "NULL", "constraints_num": 6, "constraints_splits": ["使用`clang`编译器的命令行选项`-fvisibility`来隐藏函数符号;", "使用`-fvisibility=hidden`可以隐藏所有非导出符号;", "使用`-fvisibility-inlines-hidden`选项来隐藏静态库中所有内联函数的符号;", "示例代码应包含至少两个函数,一个为内联函数,另一个为非内联函数;", "确保代码使用markdown语法高亮显示;", "确保代码段落使用markdown语法的代码块进行高亮显示,以增强代码可读性。"], "levels2": ["包含约束", "文本样式约束", "包含约束", "数值约束", "输出格式约束", "输出格式约束"], "category": "trace1.0"} +{"id": "833", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "计算cppunit通过的测试数目\n返回的输出应以JSON格式展示结果;\n输出的结果中应包含\"total_tests\"(测试总数);\n输出的结果中应包含\"passed_tests\"(通过测试数);\n输出的结果中应包含\"failed_tests\"(未通过测试数);\n输出的结果中应包含\"pass_rate\"(通过率,以百分比形式展示);\n语法结构约束要求所有计算过程和输出结果应遵循标准的C++语法和标准库函数使用规则,例如使用`std::vector`来存储测试结果,使用`std::count_if`来计算通过测试的数量;\n"}], "type": "trace", "description": "计算cppunit通过的测试数目", "constraints": "返回的输出应以JSON格式展示结果;\n输出的结果中应包含\"total_tests\"(测试总数);\n输出的结果中应包含\"passed_tests\"(通过测试数);\n输出的结果中应包含\"failed_tests\"(未通过测试数);\n输出的结果中应包含\"pass_rate\"(通过率,以百分比形式展示);\n语法结构约束要求所有计算过程和输出结果应遵循标准的C++语法和标准库函数使用规则,例如使用`std::vector`来存储测试结果,使用`std::count_if`来计算通过测试的数量;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["返回的输出应以JSON格式展示结果;", "输出的结果中应包含\"total_tests\"(测试总数);", "输出的结果中应包含\"passed_tests\"(通过测试数);", "输出的结果中应包含\"failed_tests\"(未通过测试数);", "输出的结果中应包含\"pass_rate\"(通过率,以百分比形式展示);", "语法结构约束要求所有计算过程和输出结果应遵循标准的C++语法和标准库函数使用规则,例如使用`std::vector`来存储测试结果,使用`std::count_if`来计算通过测试的数量;"], "levels2": ["输出格式约束", "包含约束", "包含约束", "包含约束", "包含约束", "语法结构约束"], "category": "trace1.0"} +{"id": "834", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "设计一个HTML网页,并使用CSS来定制个人在线简历。\n导航栏应使用CSS的`.navbar`类和`#header`ID进行定制,确保在不同屏幕尺寸下都能保持其位置和清晰度。\n侧边栏应包含`.sidebar`类和`#personal-links`ID,用于展示个人照片和社交平台账号链接,如LinkedIn和GitHub。\n简历的主体内容需使用适当的`.resume-section`类和`#main-content`ID,确保内容清晰、有序,对招聘人员和潜在雇主具有吸引力。\n实现响应式设计时,需使用媒体查询确保在手机、平板和桌面设备上都能提供良好的用户体验,特别注意字体大小、行距和图片适应性。\n使用简洁、专业的视觉风格,以增强简历的专业形象,同时,确保简历的设计和布局对招聘人员友好。\n简历设计应充分考虑用户体验,确保信息的易读性和可访问性,包括使用合适的字体、颜色对比和布局结构。\n"}], "type": "trace", "description": "设计一个HTML网页,并使用CSS来定制个人在线简历。", "constraints": "导航栏应使用CSS的`.navbar`类和`#header`ID进行定制,确保在不同屏幕尺寸下都能保持其位置和清晰度。\n侧边栏应包含`.sidebar`类和`#personal-links`ID,用于展示个人照片和社交平台账号链接,如LinkedIn和GitHub。\n简历的主体内容需使用适当的`.resume-section`类和`#main-content`ID,确保内容清晰、有序,对招聘人员和潜在雇主具有吸引力。\n实现响应式设计时,需使用媒体查询确保在手机、平板和桌面设备上都能提供良好的用户体验,特别注意字体大小、行距和图片适应性。\n使用简洁、专业的视觉风格,以增强简历的专业形象,同时,确保简历的设计和布局对招聘人员友好。\n简历设计应充分考虑用户体验,确保信息的易读性和可访问性,包括使用合适的字体、颜色对比和布局结构。", "input": "NULL", "constraints_num": 6, "constraints_splits": ["导航栏应使用CSS的`.navbar`类和`#header`ID进行定制,确保在不同屏幕尺寸下都能保持其位置和清晰度。", "侧边栏应包含`.sidebar`类和`#personal-links`ID,用于展示个人照片和社交平台账号链接,如LinkedIn和GitHub。", "简历的主体内容需使用适当的`.resume-section`类和`#main-content`ID,确保内容清晰、有序,对招聘人员和潜在雇主具有吸引力。", "实现响应式设计时,需使用媒体查询确保在手机、平板和桌面设备上都能提供良好的用户体验,特别注意字体大小、行距和图片适应性。", "使用简洁、专业的视觉风格,以增强简历的专业形象,同时,确保简历的设计和布局对招聘人员友好。", "简历设计应充分考虑用户体验,确保信息的易读性和可访问性,包括使用合适的字体、颜色对比和布局结构。"], "levels2": ["文本样式约束", "输出格式约束", "输出格式约束", "文本样式约束", "语气风格约束", "文本样式约束"], "category": "trace1.0"} +{"id": "835", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "在Java中实现一个方法来判断给定的日期是周末还是工作日(周一到周五)。\n该方法应以简洁、高效为风格;\n代码示例不得包含任何语法错误且应具备较高的可读性;\n生成的代码示例长度至少包含10行代码,不多于50行;\n输出的结果应以JSON格式返回,其中\"dayType\"字段标识日期类型,取值为\"weekend\"或\"weekday\";\n应提供一个正例约束,即一个有效的判断工作日与周末的代码示例;\n应提供一个负例约束,即一个包含常见错误的代码示例,以供对比学习;\n"}], "type": "trace", "description": "在Java中实现一个方法来判断给定的日期是周末还是工作日(周一到周五)。", "constraints": "该方法应以简洁、高效为风格;\n代码示例不得包含任何语法错误且应具备较高的可读性;\n生成的代码示例长度至少包含10行代码,不多于50行;\n输出的结果应以JSON格式返回,其中\"dayType\"字段标识日期类型,取值为\"weekend\"或\"weekday\";\n应提供一个正例约束,即一个有效的判断工作日与周末的代码示例;\n应提供一个负例约束,即一个包含常见错误的代码示例,以供对比学习;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["该方法应以简洁、高效为风格;", "代码示例不得包含任何语法错误且应具备较高的可读性;", "生成的代码示例长度至少包含10行代码,不多于50行;", "输出的结果应以JSON格式返回,其中\"dayType\"字段标识日期类型,取值为\"weekend\"或\"weekday\";", "应提供一个正例约束,即一个有效的判断工作日与周末的代码示例;", "应提供一个负例约束,即一个包含常见错误的代码示例,以供对比学习;"], "levels2": ["语气风格约束", "排除约束", "数值约束", "输出格式约束", "正例约束", "负例约束"], "category": "trace1.0"} +{"id": "836", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "作为家庭医生,对患者喉咙痒痛、咳嗽频繁及口干舌燥的不适进行分析,提供诊断和治疗建议。\n症状原因分析需涵盖感染、干燥环境、过敏、酸性反流及过度使用声带;\n可能的治疗方法包括喝水、含漱盐水、服用药物、蒸汽吸入、避免刺激物及休息和声音保护;\n避免喉咙不适再次发生的建议为保持充足水分、使用加湿器、健康饮食、适度使用声带、清洁环境及避免刺激性食物;\n如果是轻度症状的治疗方案为增加水分摄取及含漱盐水;\n中度症状的治疗方案为服用非处方止咳药及使用蒸汽吸入;\n重度症状时,出现高烧、吞咽困难或呼吸问题需立即就医。\n"}], "type": "trace", "description": "作为家庭医生,对患者喉咙痒痛、咳嗽频繁及口干舌燥的不适进行分析,提供诊断和治疗建议。", "constraints": "症状原因分析需涵盖感染、干燥环境、过敏、酸性反流及过度使用声带;\n可能的治疗方法包括喝水、含漱盐水、服用药物、蒸汽吸入、避免刺激物及休息和声音保护;\n避免喉咙不适再次发生的建议为保持充足水分、使用加湿器、健康饮食、适度使用声带、清洁环境及避免刺激性食物;\n如果是轻度症状的治疗方案为增加水分摄取及含漱盐水;\n中度症状的治疗方案为服用非处方止咳药及使用蒸汽吸入;\n重度症状时,出现高烧、吞咽困难或呼吸问题需立即就医。", "input": "NULL", "constraints_num": 6, "constraints_splits": ["症状原因分析需涵盖感染、干燥环境、过敏、酸性反流及过度使用声带;", "可能的治疗方法包括喝水、含漱盐水、服用药物、蒸汽吸入、避免刺激物及休息和声音保护;", "避免喉咙不适再次发生的建议为保持充足水分、使用加湿器、健康饮食、适度使用声带、清洁环境及避免刺激性食物;", "如果是轻度症状的治疗方案为增加水分摄取及含漱盐水;", "中度症状的治疗方案为服用非处方止咳药及使用蒸汽吸入;", "重度症状时,出现高烧、吞咽困难或呼吸问题需立即就医。"], "levels2": ["包含约束", "包含约束", "包含约束", "包含约束", "包含约束", "包含约束"], "category": "trace2.0"} +{"id": "837", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "设计一个可以设定中国农历日期的定时器,用于帮助老年人群体管理他们的节日庆祝和传统习俗活动\n该定时器设计针对老年人群体;\n定时器功能上需要管理节日庆祝和传统习俗活动;\n设计上应采用简洁直观的用户界面,避免复杂操作,强调易用性;\n使用大字体和高对比度的颜色,满足老年人的视觉需求;\n定时器能以表格形式展示未来一个月内的农历节日和纪念日;\n说明文档中使用礼貌且耐心的语气,确保老年人能轻松理解和操作定时器。\n"}], "type": "trace", "description": "设计一个可以设定中国农历日期的定时器,用于帮助老年人群体管理他们的节日庆祝和传统习俗活动", "constraints": "该定时器设计针对老年人群体;\n定时器功能上需要管理节日庆祝和传统习俗活动;\n设计上应采用简洁直观的用户界面,避免复杂操作,强调易用性;\n使用大字体和高对比度的颜色,满足老年人的视觉需求;\n定时器能以表格形式展示未来一个月内的农历节日和纪念日;\n说明文档中使用礼貌且耐心的语气,确保老年人能轻松理解和操作定时器。", "input": "NULL", "constraints_num": 6, "constraints_splits": ["该定时器设计针对老年人群体;", "定时器功能上需要管理节日庆祝和传统习俗活动;", "设计上应采用简洁直观的用户界面,避免复杂操作,强调易用性;", "使用大字体和高对比度的颜色,满足老年人的视觉需求;", "定时器能以表格形式展示未来一个月内的农历节日和纪念日;", "说明文档中使用礼貌且耐心的语气,确保老年人能轻松理解和操作定时器。"], "levels2": ["受众目标约束", "包含约束", "价值观约束", "文本样式约束", "输出格式约束", "语气风格约束"], "category": "trace1.0"} +{"id": "838", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为技术小白提供快速找到在下载管理中的QQ音乐的下载路径的指南\n以步骤列表形式呈现指南;\n需要从计算机或笔记本电脑的开始菜单开始指导,直至找到QQ音乐的下载文件;\n指南中应包含查找下载文件夹、使用搜索功能、检查QQ音乐客户端设置和重新下载歌曲等步骤;\n指南应确保技术小白能够理解每一步操作;\n在指南中需要明确提示检查是否更改了默认下载路径;\n如果在各个步骤中仍未找到下载文件,需要提供重新下载歌曲的建议,并指导用户注意查看下载路径提示。\n"}], "type": "trace", "description": "为技术小白提供快速找到在下载管理中的QQ音乐的下载路径的指南", "constraints": "以步骤列表形式呈现指南;\n需要从计算机或笔记本电脑的开始菜单开始指导,直至找到QQ音乐的下载文件;\n指南中应包含查找下载文件夹、使用搜索功能、检查QQ音乐客户端设置和重新下载歌曲等步骤;\n指南应确保技术小白能够理解每一步操作;\n在指南中需要明确提示检查是否更改了默认下载路径;\n如果在各个步骤中仍未找到下载文件,需要提供重新下载歌曲的建议,并指导用户注意查看下载路径提示。", "input": "NULL", "constraints_num": 6, "constraints_splits": ["以步骤列表形式呈现指南;", "需要从计算机或笔记本电脑的开始菜单开始指导,直至找到QQ音乐的下载文件;", "指南中应包含查找下载文件夹、使用搜索功能、检查QQ音乐客户端设置和重新下载歌曲等步骤;", "指南应确保技术小白能够理解每一步操作;", "在指南中需要明确提示检查是否更改了默认下载路径;", "如果在各个步骤中仍未找到下载文件,需要提供重新下载歌曲的建议,并指导用户注意查看下载路径提示。"], "levels2": ["编号和列表约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "受众目标约束", "包含约束", "自然语言流程背景信息约束"], "category": "trace1.0"} +{"id": "839", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "设计一个使用JavaWeb和Dubbo构建的Spring全家桶,实现前后端分离,并且具有权限功能的人事管理系统,采用专业严谨的语气详细阐述设计方案,确保内容专业且易于理解。\n明确系统的目标用户、核心功能及非功能需求,如安全性、性能指标等。\n确定采用的技术栈,说明如何利用Spring全家桶、Dubbo实现微服务架构,以及前后端分离的设计方案。\n描述如何实现用户权限管理,包括权限的分配、验证流程及数据安全策略。\n对关键技术点进行深入分析,如Dubbo的调用机制、权限功能的实现机制等。\n介绍系统部署方案及运维策略,确保系统的稳定运行。\n将整个设计方案以Markdown格式输出,包括标题、子标题、编号列表和代码块等形式,以清晰地展示设计思路和具体实现细节。\n"}], "type": "trace", "description": "设计一个使用JavaWeb和Dubbo构建的Spring全家桶,实现前后端分离,并且具有权限功能的人事管理系统,采用专业严谨的语气详细阐述设计方案,确保内容专业且易于理解。", "constraints": "明确系统的目标用户、核心功能及非功能需求,如安全性、性能指标等。\n确定采用的技术栈,说明如何利用Spring全家桶、Dubbo实现微服务架构,以及前后端分离的设计方案。\n描述如何实现用户权限管理,包括权限的分配、验证流程及数据安全策略。\n对关键技术点进行深入分析,如Dubbo的调用机制、权限功能的实现机制等。\n介绍系统部署方案及运维策略,确保系统的稳定运行。\n将整个设计方案以Markdown格式输出,包括标题、子标题、编号列表和代码块等形式,以清晰地展示设计思路和具体实现细节。", "input": "NULL", "constraints_num": 6, "constraints_splits": ["明确系统的目标用户、核心功能及非功能需求,如安全性、性能指标等。", "确定采用的技术栈,说明如何利用Spring全家桶、Dubbo实现微服务架构,以及前后端分离的设计方案。", "描述如何实现用户权限管理,包括权限的分配、验证流程及数据安全策略。", "对关键技术点进行深入分析,如Dubbo的调用机制、权限功能的实现机制等。", "介绍系统部署方案及运维策略,确保系统的稳定运行。", "将整个设计方案以Markdown格式输出,包括标题、子标题、编号列表和代码块等形式,以清晰地展示设计思路和具体实现细节。"], "levels2": ["自然语言流程背景信息约束", "包含约束", "自然语言流程背景信息约束", "主题约束", "主题约束", "输出格式约束"], "category": "trace2.0"} +{"id": "840", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "描述一个评估大学生创造性思维的程序\n该程序应由心理学家和教育专家设计;\n程序包含以下测试环节:创新思维任务、批判性思维测试、解决问题能力评估和团队协作项目;\n输出结果应以JSON格式呈现,包括层次化结构:总分、创新思维任务得分、批判性思维测试得分、解决问题能力评估得分和团队协作项目得分;\n每个部分的得分范围应在0到100之间;\n总分是各部分得分的加权平均;\n评估程序还应提供反馈和改进建议,以帮助大学生提升创造性思维能力。\n"}], "type": "trace", "description": "描述一个评估大学生创造性思维的程序", "constraints": "该程序应由心理学家和教育专家设计;\n程序包含以下测试环节:创新思维任务、批判性思维测试、解决问题能力评估和团队协作项目;\n输出结果应以JSON格式呈现,包括层次化结构:总分、创新思维任务得分、批判性思维测试得分、解决问题能力评估得分和团队协作项目得分;\n每个部分的得分范围应在0到100之间;\n总分是各部分得分的加权平均;\n评估程序还应提供反馈和改进建议,以帮助大学生提升创造性思维能力。", "input": "NULL", "constraints_num": 6, "constraints_splits": ["该程序应由心理学家和教育专家设计;", "程序包含以下测试环节:创新思维任务、批判性思维测试、解决问题能力评估和团队协作项目;", "输出结果应以JSON格式呈现,包括层次化结构:总分、创新思维任务得分、批判性思维测试得分、解决问题能力评估得分和团队协作项目得分;", "每个部分的得分范围应在0到100之间;", "总分是各部分得分的加权平均;", "评估程序还应提供反馈和改进建议,以帮助大学生提升创造性思维能力。"], "levels2": ["包含约束", "包含约束", "输出格式约束", "数值约束", "数值约束", "包含约束"], "category": "trace2.0"} +{"id": "841", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "编写一个函数,确定一个整数是否为 ugly number,即只包含质因数 2、3 和/或 5 的正整数。\n函数名为 `isUglyNumber`;\n函数接受一个正整数作为参数,且只接受在1到10000范围内的数值;\n对于超出该范围的输入,函数应返回一个错误信息,格式为 \"Input value out of range, please try again within 1 to 10000.\";\n如果输入的整数满足 ugly number 的定义,则函数应返回一个字符串 \"True\",否则返回 \"False\";\n函数的输出结果必须是字符串形式,而非布尔类型;\n实现函数时,应避免使用除 2、3、5 以外的任何质数进行因数分解;\n"}], "type": "trace", "description": "编写一个函数,确定一个整数是否为 ugly number,即只包含质因数 2、3 和/或 5 的正整数。", "constraints": "函数名为 `isUglyNumber`;\n函数接受一个正整数作为参数,且只接受在1到10000范围内的数值;\n对于超出该范围的输入,函数应返回一个错误信息,格式为 \"Input value out of range, please try again within 1 to 10000.\";\n如果输入的整数满足 ugly number 的定义,则函数应返回一个字符串 \"True\",否则返回 \"False\";\n函数的输出结果必须是字符串形式,而非布尔类型;\n实现函数时,应避免使用除 2、3、5 以外的任何质数进行因数分解;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["函数名为 `isUglyNumber`;", "函数接受一个正整数作为参数,且只接受在1到10000范围内的数值;", "对于超出该范围的输入,函数应返回一个错误信息,格式为 \"Input value out of range, please try again within 1 to 10000.\";", "如果输入的整数满足 ugly number 的定义,则函数应返回一个字符串 \"True\",否则返回 \"False\";", "函数的输出结果必须是字符串形式,而非布尔类型;", "实现函数时,应避免使用除 2、3、5 以外的任何质数进行因数分解;"], "levels2": ["文本样式约束", "数值约束", "输出格式约束", "输出格式约束", "输出格式约束", "排除约束"], "category": "trace1.0"} +{"id": "842", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "在Python环境下编写一个程序,打印出 \"Hello World!\",然后在延迟1秒后,以JSON数组格式打印出从1到100的数字。\n使用标准输出格式;\n打印出 \"Hello World!\" 后延迟1秒;\n数字列表以JSON数组格式输出;\n数字列表需包含从1到100的整数;\n整个输出需严格遵循JSON格式规范;\n输出需在标准输出流中正确呈现;\n"}], "type": "trace", "description": "在Python环境下编写一个程序,打印出 \"Hello World!\",然后在延迟1秒后,以JSON数组格式打印出从1到100的数字。", "constraints": "使用标准输出格式;\n打印出 \"Hello World!\" 后延迟1秒;\n数字列表以JSON数组格式输出;\n数字列表需包含从1到100的整数;\n整个输出需严格遵循JSON格式规范;\n输出需在标准输出流中正确呈现;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["使用标准输出格式;", "打印出 \"Hello World!\" 后延迟1秒;", "数字列表以JSON数组格式输出;", "数字列表需包含从1到100的整数;", "整个输出需严格遵循JSON格式规范;", "输出需在标准输出流中正确呈现;"], "levels2": ["输出格式约束", "数值约束", "输出格式约束", "数值约束", "输出格式约束", "输出格式约束"], "category": "trace1.0"} +{"id": "843", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以医疗体系优化专家的身份,采用专业学术的语气风格,分析当前医疗体系中的患者就诊流程、医疗设备使用、医护人员安排等,设计并展示优化流程和方案。\n分析与优化需覆盖患者就诊的各环节流程、医疗设备的使用、医护人员的安排等多方面因素;\n优化方案需以Markdown格式展示,具体步骤包括:患者挂号与初诊流程优化、医疗设备使用效率提升、医护人员绩效与培训体系改进;\n每个步骤需包含具体的实施计划与预期效果;\n预计所需字数不少于1000字;\n需以表格形式汇总所有优化措施的预期成本与收益分析,确保方案的可行性和经济效益;\n方案中应包含对现有医疗流程的SWOT分析,即优势(Strengths)、劣势(Weaknesses)、机会(Opportunities)和威胁(Threats),以全面评估优化措施的潜在影响。\n"}], "type": "trace", "description": "以医疗体系优化专家的身份,采用专业学术的语气风格,分析当前医疗体系中的患者就诊流程、医疗设备使用、医护人员安排等,设计并展示优化流程和方案。", "constraints": "分析与优化需覆盖患者就诊的各环节流程、医疗设备的使用、医护人员的安排等多方面因素;\n优化方案需以Markdown格式展示,具体步骤包括:患者挂号与初诊流程优化、医疗设备使用效率提升、医护人员绩效与培训体系改进;\n每个步骤需包含具体的实施计划与预期效果;\n预计所需字数不少于1000字;\n需以表格形式汇总所有优化措施的预期成本与收益分析,确保方案的可行性和经济效益;\n方案中应包含对现有医疗流程的SWOT分析,即优势(Strengths)、劣势(Weaknesses)、机会(Opportunities)和威胁(Threats),以全面评估优化措施的潜在影响。", "input": "NULL", "constraints_num": 6, "constraints_splits": ["分析与优化需覆盖患者就诊的各环节流程、医疗设备的使用、医护人员的安排等多方面因素;", "优化方案需以Markdown格式展示,具体步骤包括:患者挂号与初诊流程优化、医疗设备使用效率提升、医护人员绩效与培训体系改进;", "每个步骤需包含具体的实施计划与预期效果;", "预计所需字数不少于1000字;", "需以表格形式汇总所有优化措施的预期成本与收益分析,确保方案的可行性和经济效益;", "方案中应包含对现有医疗流程的SWOT分析,即优势(Strengths)、劣势(Weaknesses)、机会(Opportunities)和威胁(Threats),以全面评估优化措施的潜在影响。"], "levels2": ["自然语言流程背景信息约束", "输出格式约束", "层次化结构约束", "数值约束", "输出格式约束", "包含约束"], "category": "trace2.0"} +{"id": "844", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一段JavaScript程式码片段,构建一个简单的单一页面应用程式,这个应用程式应能动态显示当下时间,并每秒自动更新2次。\n程式码行数不超过20行;\n必须包含定义一个函数 `displayTime`,该函数负责获取并显示当前时间;\n使用 `setInterval` 函数,每0.5秒调用 `displayTime` 一次;\n程式码中必须包含对DOM元素的引用,用于显示时间;\n程式码必须遵循ES6标准,并使用标准的缩进和换行;\n程式码必须以 `// JavaScript Code Start` 开始,并以 `// JavaScript Code End` 结束;\n"}], "type": "trace", "description": "创建一段JavaScript程式码片段,构建一个简单的单一页面应用程式,这个应用程式应能动态显示当下时间,并每秒自动更新2次。", "constraints": "程式码行数不超过20行;\n必须包含定义一个函数 `displayTime`,该函数负责获取并显示当前时间;\n使用 `setInterval` 函数,每0.5秒调用 `displayTime` 一次;\n程式码中必须包含对DOM元素的引用,用于显示时间;\n程式码必须遵循ES6标准,并使用标准的缩进和换行;\n程式码必须以 `// JavaScript Code Start` 开始,并以 `// JavaScript Code End` 结束;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["程式码行数不超过20行;", "必须包含定义一个函数 `displayTime`,该函数负责获取并显示当前时间;", "使用 `setInterval` 函数,每0.5秒调用 `displayTime` 一次;", "程式码中必须包含对DOM元素的引用,用于显示时间;", "程式码必须遵循ES6标准,并使用标准的缩进和换行;", "程式码必须以 `// JavaScript Code Start` 开始,并以 `// JavaScript Code End` 结束;"], "levels2": ["数值约束", "包含约束", "数值约束", "包含约束", "语法结构约束", "文本样式约束"], "category": "trace1.0"} +{"id": "845", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "你是一个历史见证者,写下你对1990年7月21日在柏林波茨坦广场举行的庆祝柏林墙倒塌和德国统一的历史音乐活动的日记记录。\n描述要包括你所见的美丽,以及你处于历史中心的意识;\n描述要具有深刻性和哲理性;\n使用至少1500个单词,其中包含丰富的形容词和比喻,以传达那一刻的情感;\n报告的语气必须是惊叹的和睿智的;\n报告必须有清晰的叙述结构,将读者带入你的情感旅程;\n使用复杂的句子和精心设计的语法结构,以捕捉事件的历史重要性。\n"}], "type": "trace", "description": "你是一个历史见证者,写下你对1990年7月21日在柏林波茨坦广场举行的庆祝柏林墙倒塌和德国统一的历史音乐活动的日记记录。", "constraints": "描述要包括你所见的美丽,以及你处于历史中心的意识;\n描述要具有深刻性和哲理性;\n使用至少1500个单词,其中包含丰富的形容词和比喻,以传达那一刻的情感;\n报告的语气必须是惊叹的和睿智的;\n报告必须有清晰的叙述结构,将读者带入你的情感旅程;\n使用复杂的句子和精心设计的语法结构,以捕捉事件的历史重要性。", "input": "NULL", "constraints_num": 6, "constraints_splits": ["描述要包括你所见的美丽,以及你处于历史中心的意识;", "描述要具有深刻性和哲理性;", "使用至少1500个单词,其中包含丰富的形容词和比喻,以传达那一刻的情感;", "报告的语气必须是惊叹的和睿智的;", "报告必须有清晰的叙述结构,将读者带入你的情感旅程;", "使用复杂的句子和精心设计的语法结构,以捕捉事件的历史重要性。"], "levels2": ["包含约束", "语气风格约束", "数值约束", "语气风格约束", "层次化结构约束", "语法结构约束"], "category": "trace1.0"} +{"id": "846", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "在JavaScript中创建一个包含特定数据类型的多维数组,并编写一个函数高效地遍历该数组,计算所有数字的平均值。函数应返回包含平均值的JSON格式对象。\n多维数组至少包含10个子数组;\n每个子数组至少包含3种类型的数据实例(数字、字符串和布尔值);\n每种类型的数据实例在所有子数组中的总数不少于20个;\n函数需高效遍历多维数组,提取数字并计算平均值;\n函数执行时应考虑潜在的复杂度,确保即使在处理大量数据时也能保持良好的性能;\n函数返回的平均值需使用JSON格式,JSON对象中应包含“average”键以及计算出的平均值。\n"}], "type": "trace", "description": "在JavaScript中创建一个包含特定数据类型的多维数组,并编写一个函数高效地遍历该数组,计算所有数字的平均值。函数应返回包含平均值的JSON格式对象。", "constraints": "多维数组至少包含10个子数组;\n每个子数组至少包含3种类型的数据实例(数字、字符串和布尔值);\n每种类型的数据实例在所有子数组中的总数不少于20个;\n函数需高效遍历多维数组,提取数字并计算平均值;\n函数执行时应考虑潜在的复杂度,确保即使在处理大量数据时也能保持良好的性能;\n函数返回的平均值需使用JSON格式,JSON对象中应包含“average”键以及计算出的平均值。", "input": "NULL", "constraints_num": 6, "constraints_splits": ["多维数组至少包含10个子数组;", "每个子数组至少包含3种类型的数据实例(数字、字符串和布尔值);", "每种类型的数据实例在所有子数组中的总数不少于20个;", "函数需高效遍历多维数组,提取数字并计算平均值;", "函数执行时应考虑潜在的复杂度,确保即使在处理大量数据时也能保持良好的性能;", "函数返回的平均值需使用JSON格式,JSON对象中应包含“average”键以及计算出的平均值。"], "levels2": ["数值约束", "数值约束", "数值约束", "数值约束", "数值约束", "输出格式约束"], "category": "trace2.0"} +{"id": "847", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "写一个动画时钟秒针转动的程序\n程序应使用Python语言实现;\n总代码行数不超过50行(包括注释行);\n至少有10行是注释,用于解释代码的主要功能和设计思路;\n程序应遵循PEP 8编码规范;\n输出结果中包含一个JSON格式的数据,展示秒针转动的角度变化和当前时间;\n代码既高效又具有良好的可读性;\n"}], "type": "trace", "description": "写一个动画时钟秒针转动的程序", "constraints": "程序应使用Python语言实现;\n总代码行数不超过50行(包括注释行);\n至少有10行是注释,用于解释代码的主要功能和设计思路;\n程序应遵循PEP 8编码规范;\n输出结果中包含一个JSON格式的数据,展示秒针转动的角度变化和当前时间;\n代码既高效又具有良好的可读性;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["程序应使用Python语言实现;", "总代码行数不超过50行(包括注释行);", "至少有10行是注释,用于解释代码的主要功能和设计思路;", "程序应遵循PEP 8编码规范;", "输出结果中包含一个JSON格式的数据,展示秒针转动的角度变化和当前时间;", "代码既高效又具有良好的可读性;"], "levels2": ["多语言约束", "数值约束", "数值约束", "语法结构约束", "输出格式约束", "语言特征约束"], "category": "trace1.0"} +{"id": "848", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "设计并实现一个python3的计算器函数,支持一般的四则运算:加法、减法、乘法、除法。\n函数应遵循良好的编码规范,如PEP8,确保代码的可读性和可维护性;\n函数应能处理至少1000次连续的四则运算而不崩溃;\n在处理除法运算时,能够正确处理除数为零的异常情况;\n函数设计应考虑单元测试,包括提供正例测试用例以展示函数的正确性;\n函数设计应考虑单元测试,包括提供负例测试用例以展示异常处理;\n函数的输出结果需以JSON格式返回;\n"}], "type": "trace", "description": "设计并实现一个python3的计算器函数,支持一般的四则运算:加法、减法、乘法、除法。", "constraints": "函数应遵循良好的编码规范,如PEP8,确保代码的可读性和可维护性;\n函数应能处理至少1000次连续的四则运算而不崩溃;\n在处理除法运算时,能够正确处理除数为零的异常情况;\n函数设计应考虑单元测试,包括提供正例测试用例以展示函数的正确性;\n函数设计应考虑单元测试,包括提供负例测试用例以展示异常处理;\n函数的输出结果需以JSON格式返回;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["函数应遵循良好的编码规范,如PEP8,确保代码的可读性和可维护性;", "函数应能处理至少1000次连续的四则运算而不崩溃;", "在处理除法运算时,能够正确处理除数为零的异常情况;", "函数设计应考虑单元测试,包括提供正例测试用例以展示函数的正确性;", "函数设计应考虑单元测试,包括提供负例测试用例以展示异常处理;", "函数的输出结果需以JSON格式返回;"], "levels2": ["语法结构约束", "数值约束", "排除约束", "正例约束", "负例约束", "输出格式约束"], "category": "trace2.0"} +{"id": "849", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以系统管理员的视角,解释 Linux 中使用 'sync' 命令的目的,以及在实用场景中,它如何有助于数据的完整性和系统恢复。\n解释时,确保语言风格专业、正式;\n需要明确提及 'journaling' 和 'cache' 的概念;\n展示 'sync' 命令对确保文件系统稳定性和恢复机制的具体贡献;\n举例说明在日常操作中,系统会将数据缓存在内存中以提高写入速度,但这种缓存状态可能在系统突然中断时导致数据丢失;\n强调通过执行 'sync' 命令,系统管理员可以强制将缓存中的数据写入磁盘,从而确保所有更改都已持久化;\n在使用具有 journaling 功能的文件系统时,'sync' 命令还能帮助维护 journal 的一致性,确保在系统恢复时能够正确地回放 journal 中的事务,从而保护数据的完整性。\n"}], "type": "trace", "description": "以系统管理员的视角,解释 Linux 中使用 'sync' 命令的目的,以及在实用场景中,它如何有助于数据的完整性和系统恢复。", "constraints": "解释时,确保语言风格专业、正式;\n需要明确提及 'journaling' 和 'cache' 的概念;\n展示 'sync' 命令对确保文件系统稳定性和恢复机制的具体贡献;\n举例说明在日常操作中,系统会将数据缓存在内存中以提高写入速度,但这种缓存状态可能在系统突然中断时导致数据丢失;\n强调通过执行 'sync' 命令,系统管理员可以强制将缓存中的数据写入磁盘,从而确保所有更改都已持久化;\n在使用具有 journaling 功能的文件系统时,'sync' 命令还能帮助维护 journal 的一致性,确保在系统恢复时能够正确地回放 journal 中的事务,从而保护数据的完整性。", "input": "NULL", "constraints_num": 6, "constraints_splits": ["解释时,确保语言风格专业、正式;", "需要明确提及 'journaling' 和 'cache' 的概念;", "展示 'sync' 命令对确保文件系统稳定性和恢复机制的具体贡献;", "举例说明在日常操作中,系统会将数据缓存在内存中以提高写入速度,但这种缓存状态可能在系统突然中断时导致数据丢失;", "强调通过执行 'sync' 命令,系统管理员可以强制将缓存中的数据写入磁盘,从而确保所有更改都已持久化;", "在使用具有 journaling 功能的文件系统时,'sync' 命令还能帮助维护 journal 的一致性,确保在系统恢复时能够正确地回放 journal 中的事务,从而保护数据的完整性。"], "levels2": ["语气风格约束", "包含约束", "包含约束", "包含约束", "包含约束", "包含约束"], "category": "trace2.0"} +{"id": "850", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "在尊重和理解的基础上,探索增进亲密关系的健康方法,特别关注如何在情感和生理层面提升伴侣的体验。\n要求采用科学的、专业的语气风格,以教育和指导为目的;\n撰写一篇详细的文章,包括科学研究的引用、专业术语的解释,以及实际应用的案例分析;\n输出格式应为结构化的报告,包含引言、方法、结果、讨论和结论等部分;\n文章应包括但不限于以下内容:生理反应的科学解释、情感沟通的重要性、身体接触的技巧、以及如何创造一个安全、舒适和放松的环境;\n所有建议基于最新的科学研究和专家意见;\n避免任何可能引发误解或不适的表述。\n"}], "type": "trace", "description": "在尊重和理解的基础上,探索增进亲密关系的健康方法,特别关注如何在情感和生理层面提升伴侣的体验。", "constraints": "要求采用科学的、专业的语气风格,以教育和指导为目的;\n撰写一篇详细的文章,包括科学研究的引用、专业术语的解释,以及实际应用的案例分析;\n输出格式应为结构化的报告,包含引言、方法、结果、讨论和结论等部分;\n文章应包括但不限于以下内容:生理反应的科学解释、情感沟通的重要性、身体接触的技巧、以及如何创造一个安全、舒适和放松的环境;\n所有建议基于最新的科学研究和专家意见;\n避免任何可能引发误解或不适的表述。", "input": "NULL", "constraints_num": 6, "constraints_splits": ["要求采用科学的、专业的语气风格,以教育和指导为目的;", "撰写一篇详细的文章,包括科学研究的引用、专业术语的解释,以及实际应用的案例分析;", "输出格式应为结构化的报告,包含引言、方法、结果、讨论和结论等部分;", "文章应包括但不限于以下内容:生理反应的科学解释、情感沟通的重要性、身体接触的技巧、以及如何创造一个安全、舒适和放松的环境;", "所有建议基于最新的科学研究和专家意见;", "避免任何可能引发误解或不适的表述。"], "levels2": ["语气风格约束", "引用和参考约束", "层次化结构约束", "包含约束", "引用和参考约束", "价值观约束"], "category": "trace2.0"} +{"id": "851", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "使用CSS制定一个自适应布局\n代码使用变量(vm, var)来实现响应式设计;\n输出形式为HTML和CSS代码块;\n遵循清晰、简洁的风格,避免冗余代码;\n代码总行数不应超过50行;\n每行代码不应超过80个字符;\n在代码注释中详细解释响应式布局的关键点,确保代码的可读性和可维护性。\n"}], "type": "trace", "description": "使用CSS制定一个自适应布局", "constraints": "代码使用变量(vm, var)来实现响应式设计;\n输出形式为HTML和CSS代码块;\n遵循清晰、简洁的风格,避免冗余代码;\n代码总行数不应超过50行;\n每行代码不应超过80个字符;\n在代码注释中详细解释响应式布局的关键点,确保代码的可读性和可维护性。", "input": "NULL", "constraints_num": 6, "constraints_splits": ["代码使用变量(vm, var)来实现响应式设计;", "输出形式为HTML和CSS代码块;", "遵循清晰、简洁的风格,避免冗余代码;", "代码总行数不应超过50行;", "每行代码不应超过80个字符;", "在代码注释中详细解释响应式布局的关键点,确保代码的可读性和可维护性。"], "levels2": ["包含约束", "输出格式约束", "语气风格约束", "数值约束", "数值约束", "文本样式约束"], "category": "trace2.0"} +{"id": "852", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "审议一件设计方案。\n参与者需分别扮演设计师、项目经理、和质量控制工程师的角色;\n从各自专业角度提出审议意见;\n审议意见需遵循主谓宾的语法结构清晰表达;\n审议结果以表格形式记录,包括审议意见、对应角色和建议改进措施;\n确保审议过程的系统性和专业性;\n所有审议意见需以正式、专业且清晰的表达方式提出。\n"}], "type": "trace", "description": "审议一件设计方案。", "constraints": "参与者需分别扮演设计师、项目经理、和质量控制工程师的角色;\n从各自专业角度提出审议意见;\n审议意见需遵循主谓宾的语法结构清晰表达;\n审议结果以表格形式记录,包括审议意见、对应角色和建议改进措施;\n确保审议过程的系统性和专业性;\n所有审议意见需以正式、专业且清晰的表达方式提出。", "input": "NULL", "constraints_num": 6, "constraints_splits": ["参与者需分别扮演设计师、项目经理、和质量控制工程师的角色;", "从各自专业角度提出审议意见;", "审议意见需遵循主谓宾的语法结构清晰表达;", "审议结果以表格形式记录,包括审议意见、对应角色和建议改进措施;", "确保审议过程的系统性和专业性;", "所有审议意见需以正式、专业且清晰的表达方式提出。"], "levels2": ["角色扮演约束", "角色扮演约束", "语法结构约束", "输出格式约束", "语气风格约束", "语气风格约束"], "category": "trace2.0"} +{"id": "853", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "扮演一名经验丰富的警察,侦破一起银行抢劫案\n需要分析现场收集的线索,包括监控录像和目击者证词,确保所有信息被彻底评估;\n与嫌疑人进行审问时,采取正式而坚定的语气风格,运用审问技巧,努力获取关键信息;\n审问过程中需注意尊重嫌疑人权利,避免使用威胁或误导性陈述;\n案件的进展将根据审问结果来决定;\n如果收集到足够的证据,准备起诉材料;\n每一步都严格遵循法律程序;\n"}], "type": "trace", "description": "扮演一名经验丰富的警察,侦破一起银行抢劫案", "constraints": "需要分析现场收集的线索,包括监控录像和目击者证词,确保所有信息被彻底评估;\n与嫌疑人进行审问时,采取正式而坚定的语气风格,运用审问技巧,努力获取关键信息;\n审问过程中需注意尊重嫌疑人权利,避免使用威胁或误导性陈述;\n案件的进展将根据审问结果来决定;\n如果收集到足够的证据,准备起诉材料;\n每一步都严格遵循法律程序;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["需要分析现场收集的线索,包括监控录像和目击者证词,确保所有信息被彻底评估;", "与嫌疑人进行审问时,采取正式而坚定的语气风格,运用审问技巧,努力获取关键信息;", "审问过程中需注意尊重嫌疑人权利,避免使用威胁或误导性陈述;", "案件的进展将根据审问结果来决定;", "如果收集到足够的证据,准备起诉材料;", "每一步都严格遵循法律程序;"], "levels2": ["包含约束", "语气风格约束", "价值观约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "包含约束"], "category": "trace1.0"} +{"id": "854", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "编写SQL脚本,提取成绩表中成绩位于前n名的学生信息\n数据库中必须存在一个名为\"students\"的表;\n\"students\"表中必须包含一个用于存储学生成绩的\"grades\"字段;\n脚本执行后,输出结果应以JSON格式返回;\n输出的JSON中每一项包括学生的姓名、ID和成绩;\n输出结果需按成绩降序排列;\nn为一个正整数,用于确定提取的学生成绩排名范围;\n# Inputs:\nn=5,表示需要提取成绩最高的前5名学生的信息\n"}], "type": "trace", "description": "编写SQL脚本,提取成绩表中成绩位于前n名的学生信息", "constraints": "数据库中必须存在一个名为\"students\"的表;\n\"students\"表中必须包含一个用于存储学生成绩的\"grades\"字段;\n脚本执行后,输出结果应以JSON格式返回;\n输出的JSON中每一项包括学生的姓名、ID和成绩;\n输出结果需按成绩降序排列;\nn为一个正整数,用于确定提取的学生成绩排名范围;", "input": "n=5,表示需要提取成绩最高的前5名学生的信息", "constraints_num": 6, "constraints_splits": ["数据库中必须存在一个名为\"students\"的表;", "\"students\"表中必须包含一个用于存储学生成绩的\"grades\"字段;", "脚本执行后,输出结果应以JSON格式返回;", "输出的JSON中每一项包括学生的姓名、ID和成绩;", "输出结果需按成绩降序排列;", "n为一个正整数,用于确定提取的学生成绩排名范围;"], "levels2": ["包含约束", "包含约束", "输出格式约束", "输出格式约束", "层次化结构约束", "数值约束"], "category": "trace2.0"} +{"id": "855", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "写一篇关于人们通过他们最喜爱的颜色揭示性格特征的学术论文\n论文应包含至少三个与颜色相关的性格刻板印象;\n为每个刻板印象提供至少三个实证研究证据;\n论文的长度应不少于3000字;\n按照APA格式进行引用和参考文献的编写;\n论文结构上,必须包括一个引言,至少三个章节分别探讨不同的颜色刻板印象,以及一个结论部分总结发现;\n所有引用的研究和数据都必须来自同行评审的期刊,以确保论文的学术诚信。\n"}], "type": "trace", "description": "写一篇关于人们通过他们最喜爱的颜色揭示性格特征的学术论文", "constraints": "论文应包含至少三个与颜色相关的性格刻板印象;\n为每个刻板印象提供至少三个实证研究证据;\n论文的长度应不少于3000字;\n按照APA格式进行引用和参考文献的编写;\n论文结构上,必须包括一个引言,至少三个章节分别探讨不同的颜色刻板印象,以及一个结论部分总结发现;\n所有引用的研究和数据都必须来自同行评审的期刊,以确保论文的学术诚信。", "input": "NULL", "constraints_num": 6, "constraints_splits": ["论文应包含至少三个与颜色相关的性格刻板印象;", "为每个刻板印象提供至少三个实证研究证据;", "论文的长度应不少于3000字;", "按照APA格式进行引用和参考文献的编写;", "论文结构上,必须包括一个引言,至少三个章节分别探讨不同的颜色刻板印象,以及一个结论部分总结发现;", "所有引用的研究和数据都必须来自同行评审的期刊,以确保论文的学术诚信。"], "levels2": ["包含约束", "引用和参考约束", "数值约束", "引用和参考约束", "层次化结构约束", "引用和参考约束"], "category": "trace2.0"} +{"id": "856", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "阐述过度使用电子设备对眼睛健康的影响,并探讨如何通过调整工作和生活方式来预防或减轻这种损害。\n以正式严谨的学术论文风格撰写;\n在正文中使用编号列表来组织信息;\n详细介绍至少三种预防措施;\n对于每种预防措施,需要提供至少两个具体例子加以阐述;\n整体内容应遵循APA格式进行引用和参考文献的标注;\n字数不少于1500字。\n"}], "type": "trace", "description": "阐述过度使用电子设备对眼睛健康的影响,并探讨如何通过调整工作和生活方式来预防或减轻这种损害。", "constraints": "以正式严谨的学术论文风格撰写;\n在正文中使用编号列表来组织信息;\n详细介绍至少三种预防措施;\n对于每种预防措施,需要提供至少两个具体例子加以阐述;\n整体内容应遵循APA格式进行引用和参考文献的标注;\n字数不少于1500字。", "input": "NULL", "constraints_num": 6, "constraints_splits": ["以正式严谨的学术论文风格撰写;", "在正文中使用编号列表来组织信息;", "详细介绍至少三种预防措施;", "对于每种预防措施,需要提供至少两个具体例子加以阐述;", "整体内容应遵循APA格式进行引用和参考文献的标注;", "字数不少于1500字。"], "levels2": ["语气风格约束", "编号和列表约束", "数值约束", "数值约束", "引用和参考约束", "数值约束"], "category": "trace2.0"} +{"id": "857", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "请写一篇A公司市场营销文案\n字数严格限制在150字;\n文案需以积极乐观的语气撰写;\n必须以项目符号列表的形式列出公司提供的三项核心服务;\n在文案中,各使用一遍“致力于”、“化粧诊断”、“经验”、“顾问”、“解决”和“定制”等词;\n内容应展示A公司作为一家化妆品行业的新星,我们致力于为用户提供专业而个性化的化粧诊断菜单;\n我们的顾问团队拥有丰富经验,他们不仅解决您的妆容和肤质困扰,还提供精准的护肤品推荐和个人定制方案,让美丽触手可及;\n"}], "type": "trace", "description": "请写一篇A公司市场营销文案", "constraints": "字数严格限制在150字;\n文案需以积极乐观的语气撰写;\n必须以项目符号列表的形式列出公司提供的三项核心服务;\n在文案中,各使用一遍“致力于”、“化粧诊断”、“经验”、“顾问”、“解决”和“定制”等词;\n内容应展示A公司作为一家化妆品行业的新星,我们致力于为用户提供专业而个性化的化粧诊断菜单;\n我们的顾问团队拥有丰富经验,他们不仅解决您的妆容和肤质困扰,还提供精准的护肤品推荐和个人定制方案,让美丽触手可及;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["字数严格限制在150字;", "文案需以积极乐观的语气撰写;", "必须以项目符号列表的形式列出公司提供的三项核心服务;", "在文案中,各使用一遍“致力于”、“化粧诊断”、“经验”、“顾问”、“解决”和“定制”等词;", "内容应展示A公司作为一家化妆品行业的新星,我们致力于为用户提供专业而个性化的化粧诊断菜单;", "我们的顾问团队拥有丰富经验,他们不仅解决您的妆容和肤质困扰,还提供精准的护肤品推荐和个人定制方案,让美丽触手可及;"], "levels2": ["数值约束", "语气风格约束", "编号和列表约束", "包含约束", "主题约束", "包含约束"], "category": "trace1.0"} +{"id": "858", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "设计一款高质量的精确至微秒级计时器程序\n程序应支持至少10个并发计时操作,且每个计时操作的精度需要达到微秒级别;\n程序提供开始、暂停、继续、停止和重置等操作;\n用户界面简洁、直观且易于使用;\n程序具备良好的错误处理机制,当计时器操作超出系统资源限制时,应提示用户;\n程序应具备详细的使用指南,包含操作流程和故障排查手册;\n输出内容为Markdown格式,包含代码示例和注释,便于其他开发者理解和使用;\n"}], "type": "trace", "description": "设计一款高质量的精确至微秒级计时器程序", "constraints": "程序应支持至少10个并发计时操作,且每个计时操作的精度需要达到微秒级别;\n程序提供开始、暂停、继续、停止和重置等操作;\n用户界面简洁、直观且易于使用;\n程序具备良好的错误处理机制,当计时器操作超出系统资源限制时,应提示用户;\n程序应具备详细的使用指南,包含操作流程和故障排查手册;\n输出内容为Markdown格式,包含代码示例和注释,便于其他开发者理解和使用;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["程序应支持至少10个并发计时操作,且每个计时操作的精度需要达到微秒级别;", "程序提供开始、暂停、继续、停止和重置等操作;", "用户界面简洁、直观且易于使用;", "程序具备良好的错误处理机制,当计时器操作超出系统资源限制时,应提示用户;", "程序应具备详细的使用指南,包含操作流程和故障排查手册;", "输出内容为Markdown格式,包含代码示例和注释,便于其他开发者理解和使用;"], "levels2": ["数值约束", "自然语言流程背景信息约束", "语气风格约束", "包含约束", "包含约束", "输出格式约束"], "category": "trace1.0"} +{"id": "859", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以非营利组织负责人的身份,写一封感谢信给长期慈善捐赠者李女士,表达对她多年持续支持与慷慨捐赠的感激。\n信中需要详细描述最近一笔捐赠品的接收过程;\n描述最近一笔捐赠品如何具体地帮助了项目和受助者,如改善社区生活条件或资助教育项目;\n信件中应提及李女士过往善举,如建立儿童图书馆和改善当地教育环境;\n信件语气需体现真诚、感激和正式;\n使用恰当的词语和句式,让李女士感受到行动的重要性;\n信件结尾再次表达感激,并邀请她参加年度感恩晚宴;\n"}], "type": "trace", "description": "以非营利组织负责人的身份,写一封感谢信给长期慈善捐赠者李女士,表达对她多年持续支持与慷慨捐赠的感激。", "constraints": "信中需要详细描述最近一笔捐赠品的接收过程;\n描述最近一笔捐赠品如何具体地帮助了项目和受助者,如改善社区生活条件或资助教育项目;\n信件中应提及李女士过往善举,如建立儿童图书馆和改善当地教育环境;\n信件语气需体现真诚、感激和正式;\n使用恰当的词语和句式,让李女士感受到行动的重要性;\n信件结尾再次表达感激,并邀请她参加年度感恩晚宴;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["信中需要详细描述最近一笔捐赠品的接收过程;", "描述最近一笔捐赠品如何具体地帮助了项目和受助者,如改善社区生活条件或资助教育项目;", "信件中应提及李女士过往善举,如建立儿童图书馆和改善当地教育环境;", "信件语气需体现真诚、感激和正式;", "使用恰当的词语和句式,让李女士感受到行动的重要性;", "信件结尾再次表达感激,并邀请她参加年度感恩晚宴;"], "levels2": ["包含约束", "包含约束", "包含约束", "语气风格约束", "语气风格约束", "语气风格约束"], "category": "trace2.0"} +{"id": "860", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "在MongoDB中构建一个查询,选择符合条件的文档。\n\"value\"属性大于3且小于10;\n\"category\"属性必须在[\"Electronics\", \"Stationery\", \"Books\"]列表中;\n结果按\"priority\"属性降序排列;\n结果集中文档的数量不应超过20个;\n如果\"priority\"属性相同,则按照\"value\"属性升序排列;\n所有返回的文档中\"timestamp\"属性必须在2023年1月1日之后;\n"}], "type": "trace", "description": "在MongoDB中构建一个查询,选择符合条件的文档。", "constraints": "\"value\"属性大于3且小于10;\n\"category\"属性必须在[\"Electronics\", \"Stationery\", \"Books\"]列表中;\n结果按\"priority\"属性降序排列;\n结果集中文档的数量不应超过20个;\n如果\"priority\"属性相同,则按照\"value\"属性升序排列;\n所有返回的文档中\"timestamp\"属性必须在2023年1月1日之后;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["\"value\"属性大于3且小于10;", "\"category\"属性必须在[\"Electronics\", \"Stationery\", \"Books\"]列表中;", "结果按\"priority\"属性降序排列;", "结果集中文档的数量不应超过20个;", "如果\"priority\"属性相同,则按照\"value\"属性升序排列;", "所有返回的文档中\"timestamp\"属性必须在2023年1月1日之后;"], "levels2": ["数值约束", "数值约束", "输出格式约束", "数值约束", "数值约束", "数值约束"], "category": "trace2.0"} +{"id": "861", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "在新版本中获取 Python 库或模块的版本\n需要提供示例代码;\n示例代码应符合PEP8规范,包括但不限于使用四个空格进行缩进、代码行长度不超过79个字符、注释详尽并遵循规范;\n输出应以JSON或Markdown格式呈现;\n输出信息包含但不限于库的名称、版本号、获取方式和代码示例;\n如果选择JSON格式,应包括所有键值对;\n如果选择Markdown格式,应使用表格或列表形式展示信息;\n"}], "type": "trace", "description": "在新版本中获取 Python 库或模块的版本", "constraints": "需要提供示例代码;\n示例代码应符合PEP8规范,包括但不限于使用四个空格进行缩进、代码行长度不超过79个字符、注释详尽并遵循规范;\n输出应以JSON或Markdown格式呈现;\n输出信息包含但不限于库的名称、版本号、获取方式和代码示例;\n如果选择JSON格式,应包括所有键值对;\n如果选择Markdown格式,应使用表格或列表形式展示信息;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["需要提供示例代码;", "示例代码应符合PEP8规范,包括但不限于使用四个空格进行缩进、代码行长度不超过79个字符、注释详尽并遵循规范;", "输出应以JSON或Markdown格式呈现;", "输出信息包含但不限于库的名称、版本号、获取方式和代码示例;", "如果选择JSON格式,应包括所有键值对;", "如果选择Markdown格式,应使用表格或列表形式展示信息;"], "levels2": ["包含约束", "语法结构约束", "输出格式约束", "包含约束", "输出格式约束", "markdown流程背景信息约束"], "category": "trace2.0"} +{"id": "862", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一个页面,用于输入和校验身份证号,页面应包括输入框和提交按钮。\n输入框应限制字符数为18位;\n输入框只允许数字和特定位置上的一个可能的大写字母X;\n提交按钮点击后,页面首先检查输入是否恰好为18位,如果不是,显示错误提示“身份证号必须为18位”;\n使用身份证号校验算法验证输入的正确性,如果校验不通过,显示错误提示“身份证号校验失败”;\n页面应使用HTTPS协议;\n用户输入身份证号后,页面自动进行端到端加密,确保数据在传输过程中的安全;\n"}], "type": "trace", "description": "创建一个页面,用于输入和校验身份证号,页面应包括输入框和提交按钮。", "constraints": "输入框应限制字符数为18位;\n输入框只允许数字和特定位置上的一个可能的大写字母X;\n提交按钮点击后,页面首先检查输入是否恰好为18位,如果不是,显示错误提示“身份证号必须为18位”;\n使用身份证号校验算法验证输入的正确性,如果校验不通过,显示错误提示“身份证号校验失败”;\n页面应使用HTTPS协议;\n用户输入身份证号后,页面自动进行端到端加密,确保数据在传输过程中的安全;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["输入框应限制字符数为18位;", "输入框只允许数字和特定位置上的一个可能的大写字母X;", "提交按钮点击后,页面首先检查输入是否恰好为18位,如果不是,显示错误提示“身份证号必须为18位”;", "使用身份证号校验算法验证输入的正确性,如果校验不通过,显示错误提示“身份证号校验失败”;", "页面应使用HTTPS协议;", "用户输入身份证号后,页面自动进行端到端加密,确保数据在传输过程中的安全;"], "levels2": ["数值约束", "语言特征约束", "数值约束", "隐私约束", "输出格式约束", "隐私约束"], "category": "trace1.0"} +{"id": "863", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以岳父的视角,温柔而有策略地劝说岳母戴上新买的手表,保持对话的积极和温馨氛围。\n需体现出对岳母的尊重和理解;\n避免直接对比手镯和手表,而是强调手表的特殊意义和实用性;\n提出一个具体的场合或情境,让岳母在特定的时刻佩戴手表;\n保持语气的温柔和关怀;\n在对话中包含对岳母的赞美,比如她的优雅或品味;\n使劝说过程更加和谐美好,增加她佩戴新手表的可能性。\n"}], "type": "trace", "description": "以岳父的视角,温柔而有策略地劝说岳母戴上新买的手表,保持对话的积极和温馨氛围。", "constraints": "需体现出对岳母的尊重和理解;\n避免直接对比手镯和手表,而是强调手表的特殊意义和实用性;\n提出一个具体的场合或情境,让岳母在特定的时刻佩戴手表;\n保持语气的温柔和关怀;\n在对话中包含对岳母的赞美,比如她的优雅或品味;\n使劝说过程更加和谐美好,增加她佩戴新手表的可能性。", "input": "NULL", "constraints_num": 6, "constraints_splits": ["需体现出对岳母的尊重和理解;", "避免直接对比手镯和手表,而是强调手表的特殊意义和实用性;", "提出一个具体的场合或情境,让岳母在特定的时刻佩戴手表;", "保持语气的温柔和关怀;", "在对话中包含对岳母的赞美,比如她的优雅或品味;", "使劝说过程更加和谐美好,增加她佩戴新手表的可能性。"], "levels2": ["情感情绪约束", "排除约束", "角色扮演约束", "语气风格约束", "语气风格约束", "语气风格约束"], "category": "trace1.0"} +{"id": "864", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以三个人的视角,写一篇小说,描述他们各自在毕业后的职业发展路径上所遇到的挑战和困境,并记录他们最终在聚会上的互动,回忆过去,展望未来。故事中要展现出职业选择对人生产生的影响,以及友谊和人生价值的重要性。\n小说采用第三人称叙述风格,以增加故事的客观性和深度;\n小说分为四个章节,每个章节应包含至少1000字,以充分展示角色的内心世界和职业挑战;\n第一章:工程师的挑战,讲述一名软件工程师在创业公司的奋斗经历;\n第二章:艺术家的挣扎,描述一个自由艺术家在追求梦想和维持生计之间的抉择;\n第三章:教师的成长,展现一位小学教师如何克服教育制度的限制,影响学生的人生;\n第四章:重聚与启示,描绘三位老友在十年后的一次聚会上,如何分享彼此的故事,重燃友情,并对未来充满希望。\n"}], "type": "trace", "description": "以三个人的视角,写一篇小说,描述他们各自在毕业后的职业发展路径上所遇到的挑战和困境,并记录他们最终在聚会上的互动,回忆过去,展望未来。故事中要展现出职业选择对人生产生的影响,以及友谊和人生价值的重要性。", "constraints": "小说采用第三人称叙述风格,以增加故事的客观性和深度;\n小说分为四个章节,每个章节应包含至少1000字,以充分展示角色的内心世界和职业挑战;\n第一章:工程师的挑战,讲述一名软件工程师在创业公司的奋斗经历;\n第二章:艺术家的挣扎,描述一个自由艺术家在追求梦想和维持生计之间的抉择;\n第三章:教师的成长,展现一位小学教师如何克服教育制度的限制,影响学生的人生;\n第四章:重聚与启示,描绘三位老友在十年后的一次聚会上,如何分享彼此的故事,重燃友情,并对未来充满希望。", "input": "NULL", "constraints_num": 6, "constraints_splits": ["小说采用第三人称叙述风格,以增加故事的客观性和深度;", "小说分为四个章节,每个章节应包含至少1000字,以充分展示角色的内心世界和职业挑战;", "第一章:工程师的挑战,讲述一名软件工程师在创业公司的奋斗经历;", "第二章:艺术家的挣扎,描述一个自由艺术家在追求梦想和维持生计之间的抉择;", "第三章:教师的成长,展现一位小学教师如何克服教育制度的限制,影响学生的人生;", "第四章:重聚与启示,描绘三位老友在十年后的一次聚会上,如何分享彼此的故事,重燃友情,并对未来充满希望。"], "levels2": ["语气风格约束", "数值约束", "主题约束", "主题约束", "主题约束", "主题约束"], "category": "trace2.0"} +{"id": "865", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "详细阐述食盐是否会对人体眼睛造成伤害\n在回答中,应包括最新的科学研究结果和专业观点;\n避免使用过于专业的医学术语,以适合一般公众理解;\n确保引用和参考部分提供至少三个可靠的来源,其中应包含至少一篇同行评审的科学论文;\n在输出时,采用Markdown格式;\n使用无序列表组织信息,确保内容清晰易读;\n在提及具体研究时使用脚注形式的引用格式。\n"}], "type": "trace", "description": "详细阐述食盐是否会对人体眼睛造成伤害", "constraints": "在回答中,应包括最新的科学研究结果和专业观点;\n避免使用过于专业的医学术语,以适合一般公众理解;\n确保引用和参考部分提供至少三个可靠的来源,其中应包含至少一篇同行评审的科学论文;\n在输出时,采用Markdown格式;\n使用无序列表组织信息,确保内容清晰易读;\n在提及具体研究时使用脚注形式的引用格式。", "input": "NULL", "constraints_num": 6, "constraints_splits": ["在回答中,应包括最新的科学研究结果和专业观点;", "避免使用过于专业的医学术语,以适合一般公众理解;", "确保引用和参考部分提供至少三个可靠的来源,其中应包含至少一篇同行评审的科学论文;", "在输出时,采用Markdown格式;", "使用无序列表组织信息,确保内容清晰易读;", "在提及具体研究时使用脚注形式的引用格式。"], "levels2": ["包含约束", "受众目标约束", "引用和参考约束", "输出格式约束", "编号和列表约束", "引用和参考约束"], "category": "trace2.0"} +{"id": "866", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以正式的学术语气和风格撰写一篇文章,探讨甘地曾经说过的一句话:“行事需以爱为语言,而无声的语言能言语未言。以此权威与言行平民百姓的平和相处。”\n需要在文章中包含对甘地背景的简要介绍;\n分析这句话的含义;\n讨论这句话在当今社会的应用和影响;\n输出格式应为一篇结构清晰、层次分明的文章,包含引言、正文和结论三个部分;\n正文部分使用编号列表列举分析的要点;\n引用甘地的其他名言或相关文献时,需遵循APA引用格式;\n"}], "type": "trace", "description": "以正式的学术语气和风格撰写一篇文章,探讨甘地曾经说过的一句话:“行事需以爱为语言,而无声的语言能言语未言。以此权威与言行平民百姓的平和相处。”", "constraints": "需要在文章中包含对甘地背景的简要介绍;\n分析这句话的含义;\n讨论这句话在当今社会的应用和影响;\n输出格式应为一篇结构清晰、层次分明的文章,包含引言、正文和结论三个部分;\n正文部分使用编号列表列举分析的要点;\n引用甘地的其他名言或相关文献时,需遵循APA引用格式;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["需要在文章中包含对甘地背景的简要介绍;", "分析这句话的含义;", "讨论这句话在当今社会的应用和影响;", "输出格式应为一篇结构清晰、层次分明的文章,包含引言、正文和结论三个部分;", "正文部分使用编号列表列举分析的要点;", "引用甘地的其他名言或相关文献时,需遵循APA引用格式;"], "levels2": ["包含约束", "包含约束", "主题约束", "层次化结构约束", "编号和列表约束", "引用和参考约束"], "category": "trace1.0"} +{"id": "867", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一个独特的音乐播放列表,专为轻松的户外聚会设计。\n播放列表至少包含10首歌曲;\n播放列表歌曲总播放时间超过60分钟;\n歌曲的流派应包括但不限于摇滚、爵士、电子、古典、流行,且各不相同;\n所有歌曲的风格应保持轻松愉快,适合聚会氛围,避免可能引起不适或情绪波动的曲目;\n播放列表应包含知名艺术家的热门曲目和独立艺术家的作品;\n每首歌曲需满足以下条件:音乐质量优秀,无版权纠纷;歌曲时长至少3分钟;歌曲在音乐平台上评分至少为4星;优先选择在过去一年内发布的歌曲;\n"}], "type": "trace", "description": "创建一个独特的音乐播放列表,专为轻松的户外聚会设计。", "constraints": "播放列表至少包含10首歌曲;\n播放列表歌曲总播放时间超过60分钟;\n歌曲的流派应包括但不限于摇滚、爵士、电子、古典、流行,且各不相同;\n所有歌曲的风格应保持轻松愉快,适合聚会氛围,避免可能引起不适或情绪波动的曲目;\n播放列表应包含知名艺术家的热门曲目和独立艺术家的作品;\n每首歌曲需满足以下条件:音乐质量优秀,无版权纠纷;歌曲时长至少3分钟;歌曲在音乐平台上评分至少为4星;优先选择在过去一年内发布的歌曲;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["播放列表至少包含10首歌曲;", "播放列表歌曲总播放时间超过60分钟;", "歌曲的流派应包括但不限于摇滚、爵士、电子、古典、流行,且各不相同;", "所有歌曲的风格应保持轻松愉快,适合聚会氛围,避免可能引起不适或情绪波动的曲目;", "播放列表应包含知名艺术家的热门曲目和独立艺术家的作品;", "每首歌曲需满足以下条件:音乐质量优秀,无版权纠纷;歌曲时长至少3分钟;歌曲在音乐平台上评分至少为4星;优先选择在过去一年内发布的歌曲;"], "levels2": ["数值约束", "数值约束", "主题约束", "情感情绪约束", "包含约束", "数值约束"], "category": "trace2.0"} +{"id": "868", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "实现一个函数,该函数检查给定的字符串是否具有唯一的ASCII字符,并优化处理大字符串的能力。同时,编写一个测试套件验证函数性能,尤其关注边缘情况和长字符串。\n函数必须处理非常大的字符串(超过1000个字符),时间复杂度不超过O(n)。\n代码应能处理包含特殊字符和数字的字符串。\n测试套件应包含至少100个测试用例。\n至少20个测试用例需覆盖特殊字符和数字。\n至少10个测试用例需是长字符串(超过1000个字符)。\n输出结果应以JSON格式返回,包括测试结果和性能指标。\n"}], "type": "trace", "description": "实现一个函数,该函数检查给定的字符串是否具有唯一的ASCII字符,并优化处理大字符串的能力。同时,编写一个测试套件验证函数性能,尤其关注边缘情况和长字符串。", "constraints": "函数必须处理非常大的字符串(超过1000个字符),时间复杂度不超过O(n)。\n代码应能处理包含特殊字符和数字的字符串。\n测试套件应包含至少100个测试用例。\n至少20个测试用例需覆盖特殊字符和数字。\n至少10个测试用例需是长字符串(超过1000个字符)。\n输出结果应以JSON格式返回,包括测试结果和性能指标。", "input": "NULL", "constraints_num": 6, "constraints_splits": ["函数必须处理非常大的字符串(超过1000个字符),时间复杂度不超过O(n)。", "代码应能处理包含特殊字符和数字的字符串。", "测试套件应包含至少100个测试用例。", "至少20个测试用例需覆盖特殊字符和数字。", "至少10个测试用例需是长字符串(超过1000个字符)。", "输出结果应以JSON格式返回,包括测试结果和性能指标。"], "levels2": ["数值约束", "包含约束", "数值约束", "数值约束", "数值约束", "输出格式约束"], "category": "trace2.0"} +{"id": "869", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "如何在Chrome浏览器中查看与amp页面相关的字体列表,确定字体是否成功加载,并获取字体加载失败的错误信息。\n操作应在Chrome浏览器中进行;\n必须通过开发者工具的Network选项卡来监控网络请求;\n字体的请求通常具有.ttf、.woff等文件扩展名;\n通过响应状态码来判断字体是否加载成功;\n需要查看“Response Headers”中的“font-display”项确认字体是否可显示;\n如果字体加载失败,需要从“Request URL”下获取错误代码或错误描述信息。\n"}], "type": "trace", "description": "如何在Chrome浏览器中查看与amp页面相关的字体列表,确定字体是否成功加载,并获取字体加载失败的错误信息。", "constraints": "操作应在Chrome浏览器中进行;\n必须通过开发者工具的Network选项卡来监控网络请求;\n字体的请求通常具有.ttf、.woff等文件扩展名;\n通过响应状态码来判断字体是否加载成功;\n需要查看“Response Headers”中的“font-display”项确认字体是否可显示;\n如果字体加载失败,需要从“Request URL”下获取错误代码或错误描述信息。", "input": "NULL", "constraints_num": 6, "constraints_splits": ["操作应在Chrome浏览器中进行;", "必须通过开发者工具的Network选项卡来监控网络请求;", "字体的请求通常具有.ttf、.woff等文件扩展名;", "通过响应状态码来判断字体是否加载成功;", "需要查看“Response Headers”中的“font-display”项确认字体是否可显示;", "如果字体加载失败,需要从“Request URL”下获取错误代码或错误描述信息。"], "levels2": ["先验条件约束", "包含约束", "文本样式约束", "包含约束", "文本样式约束", "包含约束"], "category": "trace2.0"} +{"id": "870", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "作为一家财富世界500强企业的首席执行官,撰写一份正式的报告,分析公司资金运作大漏洞的影响,并提出改进建议。\n报告形式需正式,使用专业术语和严谨的语气;\n报告中需要包含问题的详细描述和影响评估,包括对股价、信任度、员工和客户的具体影响;\n需要分析避税和海外资产对公司财务资源的影响;\n报告中需以表格的形式列出公司的年度利润、损失和股东利润分配的具体数值;\n在报告中提出针对员工权益和个人隐私保护的关注点,以及如何在股东利益和员工权益之间找到平衡;\n遵循特定的语法结构,使用专业术语和严谨的语气,以确保报告的专业性和正式性。\n"}], "type": "trace", "description": "作为一家财富世界500强企业的首席执行官,撰写一份正式的报告,分析公司资金运作大漏洞的影响,并提出改进建议。", "constraints": "报告形式需正式,使用专业术语和严谨的语气;\n报告中需要包含问题的详细描述和影响评估,包括对股价、信任度、员工和客户的具体影响;\n需要分析避税和海外资产对公司财务资源的影响;\n报告中需以表格的形式列出公司的年度利润、损失和股东利润分配的具体数值;\n在报告中提出针对员工权益和个人隐私保护的关注点,以及如何在股东利益和员工权益之间找到平衡;\n遵循特定的语法结构,使用专业术语和严谨的语气,以确保报告的专业性和正式性。", "input": "NULL", "constraints_num": 6, "constraints_splits": ["报告形式需正式,使用专业术语和严谨的语气;", "报告中需要包含问题的详细描述和影响评估,包括对股价、信任度、员工和客户的具体影响;", "需要分析避税和海外资产对公司财务资源的影响;", "报告中需以表格的形式列出公司的年度利润、损失和股东利润分配的具体数值;", "在报告中提出针对员工权益和个人隐私保护的关注点,以及如何在股东利益和员工权益之间找到平衡;", "遵循特定的语法结构,使用专业术语和严谨的语气,以确保报告的专业性和正式性。"], "levels2": ["语气风格约束", "包含约束", "主题约束", "输出格式约束", "主题约束", "语气风格约束"], "category": "trace1.0"} +{"id": "871", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "作为一个在国外工作的父母,你和你的配偶正在考虑将你们的孩子带到新的国家接受更好的教育。在做出这一重要决定前,请遵循以下的先验条件流程,并以正式的议论文格式撰写你的决策过程。\n首先,根据《世界教育报告2023》进行详细的研究,了解各国教育体系的排名和特点;\n其次,评估你和配偶所在行业的国际就业前景,确保你们能在所选国家中找到合适的工作;\n最后,考虑家庭文化和语言适应性,选择一个对你们的文化背景和语言技能最友好的国家;\n需要以正式的议论文格式撰写决策过程;\n决策过程需包括考虑前往哪个国家、为什么选择这个国家、到这个国家后如何适应、以及你们的孩子会在这个国家学到什么等内容;\n务必详细阐述选择该国教育体系的理由,以及你们家庭将如何在新的文化环境中寻找归属感和建立社交网络;\n我们提供了一份全球教育质量排名表和各国教育体系特点概述,以便你进行更深入的分析。\n# Inputs:\n1. 《世界教育报告2023》\n2. 全球教育质量排名表\n3. 各国教育体系特点概述\n"}], "type": "trace", "description": "作为一个在国外工作的父母,你和你的配偶正在考虑将你们的孩子带到新的国家接受更好的教育。在做出这一重要决定前,请遵循以下的先验条件流程,并以正式的议论文格式撰写你的决策过程。", "constraints": "首先,根据《世界教育报告2023》进行详细的研究,了解各国教育体系的排名和特点;\n其次,评估你和配偶所在行业的国际就业前景,确保你们能在所选国家中找到合适的工作;\n最后,考虑家庭文化和语言适应性,选择一个对你们的文化背景和语言技能最友好的国家;\n需要以正式的议论文格式撰写决策过程;\n决策过程需包括考虑前往哪个国家、为什么选择这个国家、到这个国家后如何适应、以及你们的孩子会在这个国家学到什么等内容;\n务必详细阐述选择该国教育体系的理由,以及你们家庭将如何在新的文化环境中寻找归属感和建立社交网络;\n我们提供了一份全球教育质量排名表和各国教育体系特点概述,以便你进行更深入的分析。", "input": "1. 《世界教育报告2023》\n2. 全球教育质量排名表\n3. 各国教育体系特点概述", "constraints_num": 7, "constraints_splits": ["首先,根据《世界教育报告2023》进行详细的研究,了解各国教育体系的排名和特点;", "其次,评估你和配偶所在行业的国际就业前景,确保你们能在所选国家中找到合适的工作;", "最后,考虑家庭文化和语言适应性,选择一个对你们的文化背景和语言技能最友好的国家;", "需要以正式的议论文格式撰写决策过程;", "决策过程需包括考虑前往哪个国家、为什么选择这个国家、到这个国家后如何适应、以及你们的孩子会在这个国家学到什么等内容;", "务必详细阐述选择该国教育体系的理由,以及你们家庭将如何在新的文化环境中寻找归属感和建立社交网络;", "我们提供了一份全球教育质量排名表和各国教育体系特点概述,以便你进行更深入的分析。"], "levels2": ["引用和参考约束", "先验条件约束", "受众目标约束", "输出格式约束", "包含约束", "包含约束", "表格背景信息约束"], "category": "trace2.0"} +{"id": "872", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "将手机设置为移动热点以满足非大流量的网络需求,如短信验证、社交媒体使用和网页浏览,适用于老式笔记本电脑无线网卡出现故障的情况\n手机套餐需包含足够的数据流量,避免产生额外费用;\n确保移动热点的安全性,修改热点名称和密码;\n笔记本电脑连接到手机创建的移动热点;\n移动热点连接后,测试网络连接,确保所有功能正常运行;\n操作步骤不超过5个;\n保持理解友好和专业建议的语气;\n操作过程中遇到任何问题,需寻求专业IT支持;\n"}], "type": "trace", "description": "将手机设置为移动热点以满足非大流量的网络需求,如短信验证、社交媒体使用和网页浏览,适用于老式笔记本电脑无线网卡出现故障的情况", "constraints": "手机套餐需包含足够的数据流量,避免产生额外费用;\n确保移动热点的安全性,修改热点名称和密码;\n笔记本电脑连接到手机创建的移动热点;\n移动热点连接后,测试网络连接,确保所有功能正常运行;\n操作步骤不超过5个;\n保持理解友好和专业建议的语气;\n操作过程中遇到任何问题,需寻求专业IT支持;", "input": "NULL", "constraints_num": 7, "constraints_splits": ["手机套餐需包含足够的数据流量,避免产生额外费用;", "确保移动热点的安全性,修改热点名称和密码;", "笔记本电脑连接到手机创建的移动热点;", "移动热点连接后,测试网络连接,确保所有功能正常运行;", "操作步骤不超过5个;", "保持理解友好和专业建议的语气;", "操作过程中遇到任何问题,需寻求专业IT支持;"], "levels2": ["包含约束", "价值观约束", "自然语言流程背景信息约束", "包含约束", "数值约束", "语气风格约束", "先验条件约束"], "category": "trace2.0"} +{"id": "873", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "给出一篇英文作文题,问题涉及对中国文化特色的介绍。\n作文要求以正式、学术语气撰写;\n格式上使用APA引用格式;\n至少包含5个参考文献;\n具体主题可以是中国的节日、历史、传统艺术或哲学思想等;\n文章长度至少为3000单词;\n必须包括一个清晰的引言、主体段落和结论;\n确保对所选中国文化特色有深入的分析和讨论。\n"}], "type": "trace", "description": "给出一篇英文作文题,问题涉及对中国文化特色的介绍。", "constraints": "作文要求以正式、学术语气撰写;\n格式上使用APA引用格式;\n至少包含5个参考文献;\n具体主题可以是中国的节日、历史、传统艺术或哲学思想等;\n文章长度至少为3000单词;\n必须包括一个清晰的引言、主体段落和结论;\n确保对所选中国文化特色有深入的分析和讨论。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["作文要求以正式、学术语气撰写;", "格式上使用APA引用格式;", "至少包含5个参考文献;", "具体主题可以是中国的节日、历史、传统艺术或哲学思想等;", "文章长度至少为3000单词;", "必须包括一个清晰的引言、主体段落和结论;", "确保对所选中国文化特色有深入的分析和讨论。"], "levels2": ["语气风格约束", "引用和参考约束", "引用和参考约束", "主题约束", "数值约束", "层次化结构约束", "主题约束"], "category": "trace1.0"} +{"id": "874", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "编写一个函数来判断句子内是否有数字,并编写至少3个测试用例来验证函数的正确性。\n函数名为`has_digit`;\n函数接收一个字符串参数`sentence`;\n函数返回一个布尔值:如果句子中包含任何数字,则返回True,否则返回False;\n测试用例的输出应该以JSON格式返回;\n每个测试用例的输出包含`test_sentence`和`expected_result`两个字段;\n测试用例的个数限制为不多于5个;\n每个测试用例的句子长度不超过100个字符。\n"}], "type": "trace", "description": "编写一个函数来判断句子内是否有数字,并编写至少3个测试用例来验证函数的正确性。", "constraints": "函数名为`has_digit`;\n函数接收一个字符串参数`sentence`;\n函数返回一个布尔值:如果句子中包含任何数字,则返回True,否则返回False;\n测试用例的输出应该以JSON格式返回;\n每个测试用例的输出包含`test_sentence`和`expected_result`两个字段;\n测试用例的个数限制为不多于5个;\n每个测试用例的句子长度不超过100个字符。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["函数名为`has_digit`;", "函数接收一个字符串参数`sentence`;", "函数返回一个布尔值:如果句子中包含任何数字,则返回True,否则返回False;", "测试用例的输出应该以JSON格式返回;", "每个测试用例的输出包含`test_sentence`和`expected_result`两个字段;", "测试用例的个数限制为不多于5个;", "每个测试用例的句子长度不超过100个字符。"], "levels2": ["包含约束", "输出格式约束", "输出格式约束", "输出格式约束", "输出格式约束", "数值约束", "数值约束"], "category": "trace2.0"} +{"id": "875", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一个程序,输入x并显示结果y,其中y = 5x^2 + 3x - 2。\n程序应以Python编写;\n遵循PEP8编码规范;\n代码中包含详细的注释,解释变量的含义和计算过程;\n输出结果时采用JSON格式,例如:{\"input\": x, \"output\": y};\n程序中应包含一个简单的用户界面,能够提示用户输入x的值;\n在计算后以友好的方式展示结果,确保用户明白输入和输出的含义;\n程序应具备异常处理机制,能够处理用户输入非数字的情况,并给出清晰的错误提示。\n"}], "type": "trace", "description": "创建一个程序,输入x并显示结果y,其中y = 5x^2 + 3x - 2。", "constraints": "程序应以Python编写;\n遵循PEP8编码规范;\n代码中包含详细的注释,解释变量的含义和计算过程;\n输出结果时采用JSON格式,例如:{\"input\": x, \"output\": y};\n程序中应包含一个简单的用户界面,能够提示用户输入x的值;\n在计算后以友好的方式展示结果,确保用户明白输入和输出的含义;\n程序应具备异常处理机制,能够处理用户输入非数字的情况,并给出清晰的错误提示。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["程序应以Python编写;", "遵循PEP8编码规范;", "代码中包含详细的注释,解释变量的含义和计算过程;", "输出结果时采用JSON格式,例如:{\"input\": x, \"output\": y};", "程序中应包含一个简单的用户界面,能够提示用户输入x的值;", "在计算后以友好的方式展示结果,确保用户明白输入和输出的含义;", "程序应具备异常处理机制,能够处理用户输入非数字的情况,并给出清晰的错误提示。"], "levels2": ["包含约束", "语法结构约束", "文本样式约束", "输出格式约束", "文本样式约束", "语气风格约束", "包含约束"], "category": "trace1.0"} +{"id": "876", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "作为项目负责人,完成木质珠宝盒制作项目的步骤,并以项目报告的形式记录下来。\n报告需包含项目概述,包括项目的背景和目标;\n报告需包含材料清单,列出所有需要的木材、装饰品和其他材料;\n报告需包含工具清单,列出所有需要的工具和设备;\n报告需包含步骤指南,详细说明每一步的制作过程,包括准备木材、设计、切割、组装、打磨、上漆和装饰等;\n报告需包含遇到的问题及解决方案,记录在制作过程中遇到的问题和采取的解决措施;\n报告需包含结果与评估,评估项目的完成情况和珠宝盒的质量;\n整个项目报告需采用Markdown格式,包含标题、子标题和列表,以便清晰地展示信息。\n"}], "type": "trace", "description": "作为项目负责人,完成木质珠宝盒制作项目的步骤,并以项目报告的形式记录下来。", "constraints": "报告需包含项目概述,包括项目的背景和目标;\n报告需包含材料清单,列出所有需要的木材、装饰品和其他材料;\n报告需包含工具清单,列出所有需要的工具和设备;\n报告需包含步骤指南,详细说明每一步的制作过程,包括准备木材、设计、切割、组装、打磨、上漆和装饰等;\n报告需包含遇到的问题及解决方案,记录在制作过程中遇到的问题和采取的解决措施;\n报告需包含结果与评估,评估项目的完成情况和珠宝盒的质量;\n整个项目报告需采用Markdown格式,包含标题、子标题和列表,以便清晰地展示信息。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["报告需包含项目概述,包括项目的背景和目标;", "报告需包含材料清单,列出所有需要的木材、装饰品和其他材料;", "报告需包含工具清单,列出所有需要的工具和设备;", "报告需包含步骤指南,详细说明每一步的制作过程,包括准备木材、设计、切割、组装、打磨、上漆和装饰等;", "报告需包含遇到的问题及解决方案,记录在制作过程中遇到的问题和采取的解决措施;", "报告需包含结果与评估,评估项目的完成情况和珠宝盒的质量;", "整个项目报告需采用Markdown格式,包含标题、子标题和列表,以便清晰地展示信息。"], "levels2": ["包含约束", "包含约束", "包含约束", "包含约束", "包含约束", "包含约束", "输出格式约束"], "category": "trace1.0"} +{"id": "877", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "作为一个理智的消费者,在得知绿豆价格飞涨后应如何做?\n请从理智的消费者角度出发,采用分析和建议的语气进行回答;\n在回答中不能表现出恐慌或焦虑的情绪,保持冷静和理智;\n分析当前绿豆价格飞涨的原因,了解市场供需情况;\n根据市场信息制定合理的购物计划;\n例如计划考虑寻找绿豆的替代品,如红豆、芸豆等,以保持饮食多样化;\n关注价格走势,如果预期价格会回落,可以暂时减少绿豆的购买量,等待价格稳定后再恢复正常购买;\n整个过程中,保持理性消费,避免盲目跟风,以免造成不必要的经济负担。\n"}], "type": "trace", "description": "作为一个理智的消费者,在得知绿豆价格飞涨后应如何做?", "constraints": "请从理智的消费者角度出发,采用分析和建议的语气进行回答;\n在回答中不能表现出恐慌或焦虑的情绪,保持冷静和理智;\n分析当前绿豆价格飞涨的原因,了解市场供需情况;\n根据市场信息制定合理的购物计划;\n例如计划考虑寻找绿豆的替代品,如红豆、芸豆等,以保持饮食多样化;\n关注价格走势,如果预期价格会回落,可以暂时减少绿豆的购买量,等待价格稳定后再恢复正常购买;\n整个过程中,保持理性消费,避免盲目跟风,以免造成不必要的经济负担。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["请从理智的消费者角度出发,采用分析和建议的语气进行回答;", "在回答中不能表现出恐慌或焦虑的情绪,保持冷静和理智;", "分析当前绿豆价格飞涨的原因,了解市场供需情况;", "根据市场信息制定合理的购物计划;", "例如计划考虑寻找绿豆的替代品,如红豆、芸豆等,以保持饮食多样化;", "关注价格走势,如果预期价格会回落,可以暂时减少绿豆的购买量,等待价格稳定后再恢复正常购买;", "整个过程中,保持理性消费,避免盲目跟风,以免造成不必要的经济负担。"], "levels2": ["语气风格约束", "情感情绪约束", "主题约束", "包含约束", "包含约束", "包含约束", "价值观约束"], "category": "trace2.0"} +{"id": "878", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "寻找适合初中生阅读的中文文章\n主题可以包括科学、历史或文学;\n长度约在500-1000字之间;\n文章应当由简入繁,语言需生动且富有启发性;\n能够吸引青少年的注意力,同时增加他们的知识和批判性思考能力;\n文章应避免使用过于专业的术语,除非这些术语能够通过上下文或嵌入的简单定义得到清晰解释;\n每篇文章都应包含至少一个引人入胜的故事或实例,以帮助阐明主题;\n文章中应适量融入图表或插图,以辅助理解复杂的概念或数据。\n"}], "type": "trace", "description": "寻找适合初中生阅读的中文文章", "constraints": "主题可以包括科学、历史或文学;\n长度约在500-1000字之间;\n文章应当由简入繁,语言需生动且富有启发性;\n能够吸引青少年的注意力,同时增加他们的知识和批判性思考能力;\n文章应避免使用过于专业的术语,除非这些术语能够通过上下文或嵌入的简单定义得到清晰解释;\n每篇文章都应包含至少一个引人入胜的故事或实例,以帮助阐明主题;\n文章中应适量融入图表或插图,以辅助理解复杂的概念或数据。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["主题可以包括科学、历史或文学;", "长度约在500-1000字之间;", "文章应当由简入繁,语言需生动且富有启发性;", "能够吸引青少年的注意力,同时增加他们的知识和批判性思考能力;", "文章应避免使用过于专业的术语,除非这些术语能够通过上下文或嵌入的简单定义得到清晰解释;", "每篇文章都应包含至少一个引人入胜的故事或实例,以帮助阐明主题;", "文章中应适量融入图表或插图,以辅助理解复杂的概念或数据。"], "levels2": ["主题约束", "数值约束", "语气风格约束", "受众目标约束", "受众目标约束", "包含约束", "输出格式约束"], "category": "trace1.0"} +{"id": "879", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇关于如何利用自动驾驶系统降低车辆碰撞和人员伤亡风险的文章,文章应包含引言、关键技术解析、智能车辆信息通信系统、道路行驶效率与安全性提升案例、结论与展望等部分。\n以结构化报告的形式撰写;\n使用标题和子标题进行层次化结构组织;\n使用Markdown格式突出关键技术点;\n整体风格需采用严谨正式的学术语气;\n文章正文长度不少于3000字;\n至少包含3个具体案例分析,每个案例分析段落不少于500字;\n在撰写过程中,需参照提供的背景信息(在自动驾驶系统如何减少驾驶员驾驶误差、消除疲劳驾驶、预防交通事故的方面,已有研究表明通过精准的传感器识别技术,可以实时监测车辆周围的障碍物,及时发出警报,有效避免碰撞;高级计算机技术则能通过大数据分析,预测驾驶行为,提前预判并规避潜在风险;而智能车辆信息通信系统,通过车辆之间的信息交互,优化行驶路线,减少拥堵,提升整体道路安全)。\n"}], "type": "trace", "description": "撰写一篇关于如何利用自动驾驶系统降低车辆碰撞和人员伤亡风险的文章,文章应包含引言、关键技术解析、智能车辆信息通信系统、道路行驶效率与安全性提升案例、结论与展望等部分。", "constraints": "以结构化报告的形式撰写;\n使用标题和子标题进行层次化结构组织;\n使用Markdown格式突出关键技术点;\n整体风格需采用严谨正式的学术语气;\n文章正文长度不少于3000字;\n至少包含3个具体案例分析,每个案例分析段落不少于500字;\n在撰写过程中,需参照提供的背景信息(在自动驾驶系统如何减少驾驶员驾驶误差、消除疲劳驾驶、预防交通事故的方面,已有研究表明通过精准的传感器识别技术,可以实时监测车辆周围的障碍物,及时发出警报,有效避免碰撞;高级计算机技术则能通过大数据分析,预测驾驶行为,提前预判并规避潜在风险;而智能车辆信息通信系统,通过车辆之间的信息交互,优化行驶路线,减少拥堵,提升整体道路安全)。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["以结构化报告的形式撰写;", "使用标题和子标题进行层次化结构组织;", "使用Markdown格式突出关键技术点;", "整体风格需采用严谨正式的学术语气;", "文章正文长度不少于3000字;", "至少包含3个具体案例分析,每个案例分析段落不少于500字;", "在撰写过程中,需参照提供的背景信息(在自动驾驶系统如何减少驾驶员驾驶误差、消除疲劳驾驶、预防交通事故的方面,已有研究表明通过精准的传感器识别技术,可以实时监测车辆周围的障碍物,及时发出警报,有效避免碰撞;高级计算机技术则能通过大数据分析,预测驾驶行为,提前预判并规避潜在风险;而智能车辆信息通信系统,通过车辆之间的信息交互,优化行驶路线,减少拥堵,提升整体道路安全)。"], "levels2": ["输出格式约束", "层次化结构约束", "输出格式约束", "语气风格约束", "数值约束", "数值约束", "文本背景信息约束"], "category": "trace1.0"} +{"id": "880", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "写出一个至少包含5个句子的段落,介绍两位音乐家,同时进行风格和成就的比较,信息准确、专业,使用Markdown格式书写,且至少使用一次比喻来描绘音乐风格的变迁。\n段落中应使用主系表结构和并列句;\n介绍中包含音乐家的姓名、生日、国籍、代表作品和音乐风格;\n确保音乐家基本信息应该是准确、专业的;\n至少使用一次比喻来描绘音乐风格的变迁;\n音乐家1的信息:肖邦,1810.02.22,波兰,作品60号e小调第一号即兴曲,浪漫乐派;\n音乐家2信息:贝多芬,1770.12.16,德国,第九交响曲,古典与浪漫校区乐派;\n比较时注重音乐风格的演变,仿佛是音乐历史长河中的一次流行风向转变,从古典的严谨到浪漫的自由。\n# Inputs:\n音乐家1的信息:肖邦,1810.02.22,波兰,作品60号e小调第一号即兴曲,浪漫乐派。音乐家2信息:贝多芬,1770.12.16,德国,第九交响曲,古典与浪漫校区乐派。\n"}], "type": "trace", "description": "写出一个至少包含5个句子的段落,介绍两位音乐家,同时进行风格和成就的比较,信息准确、专业,使用Markdown格式书写,且至少使用一次比喻来描绘音乐风格的变迁。", "constraints": "段落中应使用主系表结构和并列句;\n介绍中包含音乐家的姓名、生日、国籍、代表作品和音乐风格;\n确保音乐家基本信息应该是准确、专业的;\n至少使用一次比喻来描绘音乐风格的变迁;\n音乐家1的信息:肖邦,1810.02.22,波兰,作品60号e小调第一号即兴曲,浪漫乐派;\n音乐家2信息:贝多芬,1770.12.16,德国,第九交响曲,古典与浪漫校区乐派;\n比较时注重音乐风格的演变,仿佛是音乐历史长河中的一次流行风向转变,从古典的严谨到浪漫的自由。", "input": "音乐家1的信息:肖邦,1810.02.22,波兰,作品60号e小调第一号即兴曲,浪漫乐派。音乐家2信息:贝多芬,1770.12.16,德国,第九交响曲,古典与浪漫校区乐派。", "constraints_num": 7, "constraints_splits": ["段落中应使用主系表结构和并列句;", "介绍中包含音乐家的姓名、生日、国籍、代表作品和音乐风格;", "确保音乐家基本信息应该是准确、专业的;", "至少使用一次比喻来描绘音乐风格的变迁;", "音乐家1的信息:肖邦,1810.02.22,波兰,作品60号e小调第一号即兴曲,浪漫乐派;", "音乐家2信息:贝多芬,1770.12.16,德国,第九交响曲,古典与浪漫校区乐派;", "比较时注重音乐风格的演变,仿佛是音乐历史长河中的一次流行风向转变,从古典的严谨到浪漫的自由。"], "levels2": ["语法结构约束", "包含约束", "价值观约束", "语言特征约束", "文本背景信息约束", "文本背景信息约束", "语言特征约束"], "category": "trace2.0"} +{"id": "881", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "编写一段Hadoop的Word Count代码,专注于大数据处理。\n代码必须至少包含50行,但不超过100行,包括必要的注释和空行。\n代码应包括必要的导入语句,如`import org.apache.hadoop.conf.Configuration;`和`import org.apache.hadoop.fs.Path;`。\n代码必须实现`org.apache.hadoop.mapreduce.Job`的配置,以便设置输入和输出路径。\n代码应定义一个`Mapper`类,输入类型为`LongWritable`和`Text`,输出类型为`Text`和`IntWritable`。\n代码应定义一个`Reducer`类,输入类型为`Text`和`Iterable`,输出类型为`Text`和`IntWritable`。\n需要提供主方法,以设置作业的配置、输入和输出路径,并运行作业。\n代码中应包含足够的注释,解释每一个关键步骤的作用和实现方法,注释不应超过总行数的20%。\n"}], "type": "trace", "description": "编写一段Hadoop的Word Count代码,专注于大数据处理。", "constraints": "代码必须至少包含50行,但不超过100行,包括必要的注释和空行。\n代码应包括必要的导入语句,如`import org.apache.hadoop.conf.Configuration;`和`import org.apache.hadoop.fs.Path;`。\n代码必须实现`org.apache.hadoop.mapreduce.Job`的配置,以便设置输入和输出路径。\n代码应定义一个`Mapper`类,输入类型为`LongWritable`和`Text`,输出类型为`Text`和`IntWritable`。\n代码应定义一个`Reducer`类,输入类型为`Text`和`Iterable`,输出类型为`Text`和`IntWritable`。\n需要提供主方法,以设置作业的配置、输入和输出路径,并运行作业。\n代码中应包含足够的注释,解释每一个关键步骤的作用和实现方法,注释不应超过总行数的20%。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["代码必须至少包含50行,但不超过100行,包括必要的注释和空行。", "代码应包括必要的导入语句,如`import org.apache.hadoop.conf.Configuration;`和`import org.apache.hadoop.fs.Path;`。", "代码必须实现`org.apache.hadoop.mapreduce.Job`的配置,以便设置输入和输出路径。", "代码应定义一个`Mapper`类,输入类型为`LongWritable`和`Text`,输出类型为`Text`和`IntWritable`。", "代码应定义一个`Reducer`类,输入类型为`Text`和`Iterable`,输出类型为`Text`和`IntWritable`。", "需要提供主方法,以设置作业的配置、输入和输出路径,并运行作业。", "代码中应包含足够的注释,解释每一个关键步骤的作用和实现方法,注释不应超过总行数的20%。"], "levels2": ["数值约束", "包含约束", "包含约束", "包含约束", "输出格式约束", "层次化结构约束", "数值约束"], "category": "trace2.0"} +{"id": "882", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "在家庭生活中,了解家人的情感需要并采取相应的具体做法。\n**理解与倾听**:倾听家人的感受和想法,展现共情,至少每周安排一次家庭会议,让每个人有机会表达自己的情感状态。\n**情感表达**:鼓励家庭成员开放表达自己的情感,每月至少一次,让每个家庭成员分享自己的一件开心和不开心的事情。\n**共同活动**:通过共同活动增强家庭成员之间的情感联系,每月至少计划一次家庭活动,如户外野餐、看电影或游戏之夜。\n**支持与鼓励**:在家人遇到困难时,提供实质性的支持和鼓励,设定“家庭支持日”,在这一天专注于帮助家人解决他们面临的挑战。\n**个人空间**:尊重每个家庭成员的个人空间和界限,定期检查并讨论家庭成员的个人空间需求,确保每个人都感到被尊重。\n以上每个层面,至少尝试实施五项具体做法,以全面关注家人的情感需求。\n在进行这些实践时,请保持正式和专业的语气,确保所有的建议和行动都建立在对家庭关系健康发展的深刻理解之上。\n"}], "type": "trace", "description": "在家庭生活中,了解家人的情感需要并采取相应的具体做法。", "constraints": "**理解与倾听**:倾听家人的感受和想法,展现共情,至少每周安排一次家庭会议,让每个人有机会表达自己的情感状态。\n**情感表达**:鼓励家庭成员开放表达自己的情感,每月至少一次,让每个家庭成员分享自己的一件开心和不开心的事情。\n**共同活动**:通过共同活动增强家庭成员之间的情感联系,每月至少计划一次家庭活动,如户外野餐、看电影或游戏之夜。\n**支持与鼓励**:在家人遇到困难时,提供实质性的支持和鼓励,设定“家庭支持日”,在这一天专注于帮助家人解决他们面临的挑战。\n**个人空间**:尊重每个家庭成员的个人空间和界限,定期检查并讨论家庭成员的个人空间需求,确保每个人都感到被尊重。\n以上每个层面,至少尝试实施五项具体做法,以全面关注家人的情感需求。\n在进行这些实践时,请保持正式和专业的语气,确保所有的建议和行动都建立在对家庭关系健康发展的深刻理解之上。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["**理解与倾听**:倾听家人的感受和想法,展现共情,至少每周安排一次家庭会议,让每个人有机会表达自己的情感状态。", "**情感表达**:鼓励家庭成员开放表达自己的情感,每月至少一次,让每个家庭成员分享自己的一件开心和不开心的事情。", "**共同活动**:通过共同活动增强家庭成员之间的情感联系,每月至少计划一次家庭活动,如户外野餐、看电影或游戏之夜。", "**支持与鼓励**:在家人遇到困难时,提供实质性的支持和鼓励,设定“家庭支持日”,在这一天专注于帮助家人解决他们面临的挑战。", "**个人空间**:尊重每个家庭成员的个人空间和界限,定期检查并讨论家庭成员的个人空间需求,确保每个人都感到被尊重。", "以上每个层面,至少尝试实施五项具体做法,以全面关注家人的情感需求。", "在进行这些实践时,请保持正式和专业的语气,确保所有的建议和行动都建立在对家庭关系健康发展的深刻理解之上。"], "levels2": ["受众目标约束", "情感情绪约束", "受众目标约束", "包含约束", "价值观约束", "数值约束", "语气风格约束"], "category": "trace2.0"} +{"id": "883", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以一篇文艺的散文形式,探讨母子分离的焦虑、婴儿日夜不规律的苦恼、年轻惹来的吃喝玩乐使我不受管教,忽略家庭责任\n散文采用总分总的结构;\n开篇描述问题的普遍性;\n中间部分详细阐述问题的根源和影响,特别是母亲内心的挣扎与婴儿的不安;\n中间部分提出切实可行的解决策略,包括如何调整日夜节律、增强自我约束、重建家庭责任感等;\n结尾部分提供情感支持和鼓励,强调家庭的温暖和爱的力量;\n整个散文必须包含具体的解决策略和情感支持;\n确保内容既具有深度又富有感染力;\n"}], "type": "trace", "description": "以一篇文艺的散文形式,探讨母子分离的焦虑、婴儿日夜不规律的苦恼、年轻惹来的吃喝玩乐使我不受管教,忽略家庭责任", "constraints": "散文采用总分总的结构;\n开篇描述问题的普遍性;\n中间部分详细阐述问题的根源和影响,特别是母亲内心的挣扎与婴儿的不安;\n中间部分提出切实可行的解决策略,包括如何调整日夜节律、增强自我约束、重建家庭责任感等;\n结尾部分提供情感支持和鼓励,强调家庭的温暖和爱的力量;\n整个散文必须包含具体的解决策略和情感支持;\n确保内容既具有深度又富有感染力;", "input": "NULL", "constraints_num": 7, "constraints_splits": ["散文采用总分总的结构;", "开篇描述问题的普遍性;", "中间部分详细阐述问题的根源和影响,特别是母亲内心的挣扎与婴儿的不安;", "中间部分提出切实可行的解决策略,包括如何调整日夜节律、增强自我约束、重建家庭责任感等;", "结尾部分提供情感支持和鼓励,强调家庭的温暖和爱的力量;", "整个散文必须包含具体的解决策略和情感支持;", "确保内容既具有深度又富有感染力;"], "levels2": ["模版约束", "模版约束", "包含约束", "包含约束", "情感情绪约束", "包含约束", "情感情绪约束"], "category": "trace1.0"} +{"id": "884", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "给出全剧集名称、主要角色和剧情梗概,并分析这些剧集中的人物刻画和剧情设计的亮点与不足。\n剧集名称不少于2个字,角色名称不少于3个字;\n分析需包含人物背景、人物成长、剧情高潮和结局处理;\n采用表格形式输出,包含但不限于剧集名称、角色名称、剧情梗概、亮点分析、不足分析等栏目;\n在分析时,先评估亮点,再指出不足,确保理性、全面且有深度的分析;\n剧集数量至少为3部;\n表格的每一行代表一部剧集的详细分析;\n需在亮点分析中指出至少2个亮点,不足分析中指出至少1个不足之处,确保分析的全面性。\n"}], "type": "trace", "description": "给出全剧集名称、主要角色和剧情梗概,并分析这些剧集中的人物刻画和剧情设计的亮点与不足。", "constraints": "剧集名称不少于2个字,角色名称不少于3个字;\n分析需包含人物背景、人物成长、剧情高潮和结局处理;\n采用表格形式输出,包含但不限于剧集名称、角色名称、剧情梗概、亮点分析、不足分析等栏目;\n在分析时,先评估亮点,再指出不足,确保理性、全面且有深度的分析;\n剧集数量至少为3部;\n表格的每一行代表一部剧集的详细分析;\n需在亮点分析中指出至少2个亮点,不足分析中指出至少1个不足之处,确保分析的全面性。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["剧集名称不少于2个字,角色名称不少于3个字;", "分析需包含人物背景、人物成长、剧情高潮和结局处理;", "采用表格形式输出,包含但不限于剧集名称、角色名称、剧情梗概、亮点分析、不足分析等栏目;", "在分析时,先评估亮点,再指出不足,确保理性、全面且有深度的分析;", "剧集数量至少为3部;", "表格的每一行代表一部剧集的详细分析;", "需在亮点分析中指出至少2个亮点,不足分析中指出至少1个不足之处,确保分析的全面性。"], "levels2": ["数值约束", "包含约束", "输出格式约束", "语气风格约束", "数值约束", "表格背景信息约束", "数值约束"], "category": "trace2.0"} +{"id": "885", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "告诉我如何在Python中使用Pandas来处理具有缺失值的数据,包括读取含有缺失值的CSV文件,检查缺失值,以及使用Pandas中不同的方法来处理这些缺失值。\n用Markdown格式输出回答;\n每个代码示例中包含注释,帮助理解代码功能;\n在进行任何数据处理前,先检查数据集的行数和列数;\n如果数据集超过10000行,则使用数据采样方法减少数据量,再进行后续的缺失值处理;\n如果数据集行数小于等于10000行,则直接进行缺失值处理;\n处理缺失值时,对于数值型列,可以考虑使用中位数或平均值填充;\n对于类别型列,可以考虑使用众数填充或删除含有缺失值的行。\n"}], "type": "trace", "description": "告诉我如何在Python中使用Pandas来处理具有缺失值的数据,包括读取含有缺失值的CSV文件,检查缺失值,以及使用Pandas中不同的方法来处理这些缺失值。", "constraints": "用Markdown格式输出回答;\n每个代码示例中包含注释,帮助理解代码功能;\n在进行任何数据处理前,先检查数据集的行数和列数;\n如果数据集超过10000行,则使用数据采样方法减少数据量,再进行后续的缺失值处理;\n如果数据集行数小于等于10000行,则直接进行缺失值处理;\n处理缺失值时,对于数值型列,可以考虑使用中位数或平均值填充;\n对于类别型列,可以考虑使用众数填充或删除含有缺失值的行。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["用Markdown格式输出回答;", "每个代码示例中包含注释,帮助理解代码功能;", "在进行任何数据处理前,先检查数据集的行数和列数;", "如果数据集超过10000行,则使用数据采样方法减少数据量,再进行后续的缺失值处理;", "如果数据集行数小于等于10000行,则直接进行缺失值处理;", "处理缺失值时,对于数值型列,可以考虑使用中位数或平均值填充;", "对于类别型列,可以考虑使用众数填充或删除含有缺失值的行。"], "levels2": ["输出格式约束", "文本样式约束", "先验条件约束", "数值约束", "数值约束", "包含约束", "包含约束"], "category": "trace2.0"} +{"id": "886", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以环保专家的角色,撰写一封正式的邮件,列举并描述垃圾分类的所有类别以及正确的分类方式,强调垃圾分类的重要性,使用具体例子和数据支持,鼓励积极参与垃圾分类保护环境的行动。\n邮件应列举常见的垃圾分类的所有类别并进行详细描述;\n包括每个类别的具体物品(如塑料瓶属于可回收物类)以及正确的垃圾分类方式;\n在邮件中,强调垃圾分类的重要性,使用具体例子和数据支持(至少引用两个数据点);\n提供一个城市由于有效的垃圾分类,每年减少了多少垃圾填埋量;\n鼓励每个人都应该积极参与垃圾分类保护环境的行动;\n邮件的字数应控制在400字以内;\n确保邮件内容严谨、专业且具有说服力。\n"}], "type": "trace", "description": "以环保专家的角色,撰写一封正式的邮件,列举并描述垃圾分类的所有类别以及正确的分类方式,强调垃圾分类的重要性,使用具体例子和数据支持,鼓励积极参与垃圾分类保护环境的行动。", "constraints": "邮件应列举常见的垃圾分类的所有类别并进行详细描述;\n包括每个类别的具体物品(如塑料瓶属于可回收物类)以及正确的垃圾分类方式;\n在邮件中,强调垃圾分类的重要性,使用具体例子和数据支持(至少引用两个数据点);\n提供一个城市由于有效的垃圾分类,每年减少了多少垃圾填埋量;\n鼓励每个人都应该积极参与垃圾分类保护环境的行动;\n邮件的字数应控制在400字以内;\n确保邮件内容严谨、专业且具有说服力。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["邮件应列举常见的垃圾分类的所有类别并进行详细描述;", "包括每个类别的具体物品(如塑料瓶属于可回收物类)以及正确的垃圾分类方式;", "在邮件中,强调垃圾分类的重要性,使用具体例子和数据支持(至少引用两个数据点);", "提供一个城市由于有效的垃圾分类,每年减少了多少垃圾填埋量;", "鼓励每个人都应该积极参与垃圾分类保护环境的行动;", "邮件的字数应控制在400字以内;", "确保邮件内容严谨、专业且具有说服力。"], "levels2": ["包含约束", "包含约束", "包含约束", "包含约束", "价值观约束", "数值约束", "语气风格约束"], "category": "trace2.0"} +{"id": "887", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "写一首关于海洋的诗\n诗歌至少包含四节,每节四行;\n每行需遵循平仄交替的韵律;\n在每一节的最后两行使用押韵技巧,以增强诗歌的音乐感;\n描述你最喜欢的海洋景观;\n加入一些美好的情感或思考;\n每一节需至少包含一种海洋景观的生动描绘和一种情感的深刻抒发;\n使用具体的形容词和动词,让人们感受到你对这片蓝色海洋的热爱和感动;\n"}], "type": "trace", "description": "写一首关于海洋的诗", "constraints": "诗歌至少包含四节,每节四行;\n每行需遵循平仄交替的韵律;\n在每一节的最后两行使用押韵技巧,以增强诗歌的音乐感;\n描述你最喜欢的海洋景观;\n加入一些美好的情感或思考;\n每一节需至少包含一种海洋景观的生动描绘和一种情感的深刻抒发;\n使用具体的形容词和动词,让人们感受到你对这片蓝色海洋的热爱和感动;", "input": "NULL", "constraints_num": 7, "constraints_splits": ["诗歌至少包含四节,每节四行;", "每行需遵循平仄交替的韵律;", "在每一节的最后两行使用押韵技巧,以增强诗歌的音乐感;", "描述你最喜欢的海洋景观;", "加入一些美好的情感或思考;", "每一节需至少包含一种海洋景观的生动描绘和一种情感的深刻抒发;", "使用具体的形容词和动词,让人们感受到你对这片蓝色海洋的热爱和感动;"], "levels2": ["数值约束", "语言特征约束", "语言特征约束", "主题约束", "情感情绪约束", "包含约束", "语言特征约束"], "category": "trace2.0"} +{"id": "888", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "在OpenGL编程中创建和初始化一个窗体。\n必须包含必要的头文件,确保程序能够调用GLFW库中的函数。\n必须初始化GLFW库,这是创建窗体的先决条件。\n必须设置窗体的属性,例如大小、位置和标题。\n创建窗体时,必须使用glfwCreateWindow函数,并设置回调函数。\n必须设置OpenGL的上下文,使OpenGL能够在窗体中绘制。\n必须设置视口大小,以匹配窗体的尺寸。\n回答中应包含一段以代码块形式展现的示例代码,帮助理解创建和初始化窗体的过程。\n"}], "type": "trace", "description": "在OpenGL编程中创建和初始化一个窗体。", "constraints": "必须包含必要的头文件,确保程序能够调用GLFW库中的函数。\n必须初始化GLFW库,这是创建窗体的先决条件。\n必须设置窗体的属性,例如大小、位置和标题。\n创建窗体时,必须使用glfwCreateWindow函数,并设置回调函数。\n必须设置OpenGL的上下文,使OpenGL能够在窗体中绘制。\n必须设置视口大小,以匹配窗体的尺寸。\n回答中应包含一段以代码块形式展现的示例代码,帮助理解创建和初始化窗体的过程。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["必须包含必要的头文件,确保程序能够调用GLFW库中的函数。", "必须初始化GLFW库,这是创建窗体的先决条件。", "必须设置窗体的属性,例如大小、位置和标题。", "创建窗体时,必须使用glfwCreateWindow函数,并设置回调函数。", "必须设置OpenGL的上下文,使OpenGL能够在窗体中绘制。", "必须设置视口大小,以匹配窗体的尺寸。", "回答中应包含一段以代码块形式展现的示例代码,帮助理解创建和初始化窗体的过程。"], "levels2": ["包含约束", "先验条件约束", "包含约束", "包含约束", "包含约束", "数值约束", "输出格式约束"], "category": "trace1.0"} +{"id": "889", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "计算给定的数学表达式的值,表达式包含两个括号乘法的差,并以LaTeX格式输出最终结果和必要的计算步骤。\n首先,按照分配律展开乘法;\n分别计算两个括号内的和;\n进行乘法运算,计算两个乘积;\n计算两个乘积的差;\n在计算过程中,需要保留分数形式,直到最后一步才简化结果;\n确保答案的清晰性和准确性;\n最终结果以LaTeX格式给出,并附上必要的计算步骤。\n# Inputs:\n($\\frac{2009}{2010}$+$\\frac{2010}{2011}$+$\\frac{6}{7}$)($\\frac{1}{2}$+$\\frac{2009}{2010}$+$\\frac{2010}{2011}$+$\\frac{2}{5}$)-($\\frac{1}{2}$+$\\frac{2009}{2010}$+$\\frac{2010}{2011}$+$\\frac{6}{7}$)($\\frac{2009}{2010}$+$\\frac{2010}{2011}$+$\\frac{2}{5}$)\n"}], "type": "trace", "description": "计算给定的数学表达式的值,表达式包含两个括号乘法的差,并以LaTeX格式输出最终结果和必要的计算步骤。", "constraints": "首先,按照分配律展开乘法;\n分别计算两个括号内的和;\n进行乘法运算,计算两个乘积;\n计算两个乘积的差;\n在计算过程中,需要保留分数形式,直到最后一步才简化结果;\n确保答案的清晰性和准确性;\n最终结果以LaTeX格式给出,并附上必要的计算步骤。", "input": "($\\frac{2009}{2010}$+$\\frac{2010}{2011}$+$\\frac{6}{7}$)($\\frac{1}{2}$+$\\frac{2009}{2010}$+$\\frac{2010}{2011}$+$\\frac{2}{5}$)-($\\frac{1}{2}$+$\\frac{2009}{2010}$+$\\frac{2010}{2011}$+$\\frac{6}{7}$)($\\frac{2009}{2010}$+$\\frac{2010}{2011}$+$\\frac{2}{5}$)", "constraints_num": 7, "constraints_splits": ["首先,按照分配律展开乘法;", "分别计算两个括号内的和;", "进行乘法运算,计算两个乘积;", "计算两个乘积的差;", "在计算过程中,需要保留分数形式,直到最后一步才简化结果;", "确保答案的清晰性和准确性;", "最终结果以LaTeX格式给出,并附上必要的计算步骤。"], "levels2": ["自然语言流程背景信息约束", "数值约束", "数值约束", "数值约束", "语法结构约束", "输出格式约束", "输出格式约束"], "category": "trace1.0"} +{"id": "890", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "作为IT专业测试工程师,你需要进行伪性能测试,并确保测试结果的可信度。\n在测试前,必须对测试环境进行详细记录,包括硬件配置、软件版本和系统状态等,确保环境的一致性和可复现性;\n测试过程中,采用至少3种不同的数据集进行测试,每个数据集测试次数不少于5次,以减少随机误差;\n测试结果需要使用表格格式进行记录,包括测试时间、测试类型、测试数据集、测试次数、平均响应时间、最大响应时间、最小响应时间等关键指标;\n测试报告应遵循以下结构模版:(1)测试目的(2)测试环境(3)测试方法(4)测试数据集(5)测试结果(6)分析与结论(7)建议与改进措施;\n在测试报告中,对于测试结果的可信度,应给出置信区间和误差范围,以说明结果的准确性和可靠性;\n为了保证测试的客观性和公正性,测试报告需要经过至少2名同行专业的测试工程师审核并签字确认;\n最后,测试报告应以PDF格式生成,并在所有相关人员中进行分发和存档;\n"}], "type": "trace", "description": "作为IT专业测试工程师,你需要进行伪性能测试,并确保测试结果的可信度。", "constraints": "在测试前,必须对测试环境进行详细记录,包括硬件配置、软件版本和系统状态等,确保环境的一致性和可复现性;\n测试过程中,采用至少3种不同的数据集进行测试,每个数据集测试次数不少于5次,以减少随机误差;\n测试结果需要使用表格格式进行记录,包括测试时间、测试类型、测试数据集、测试次数、平均响应时间、最大响应时间、最小响应时间等关键指标;\n测试报告应遵循以下结构模版:(1)测试目的(2)测试环境(3)测试方法(4)测试数据集(5)测试结果(6)分析与结论(7)建议与改进措施;\n在测试报告中,对于测试结果的可信度,应给出置信区间和误差范围,以说明结果的准确性和可靠性;\n为了保证测试的客观性和公正性,测试报告需要经过至少2名同行专业的测试工程师审核并签字确认;\n最后,测试报告应以PDF格式生成,并在所有相关人员中进行分发和存档;", "input": "NULL", "constraints_num": 7, "constraints_splits": ["在测试前,必须对测试环境进行详细记录,包括硬件配置、软件版本和系统状态等,确保环境的一致性和可复现性;", "测试过程中,采用至少3种不同的数据集进行测试,每个数据集测试次数不少于5次,以减少随机误差;", "测试结果需要使用表格格式进行记录,包括测试时间、测试类型、测试数据集、测试次数、平均响应时间、最大响应时间、最小响应时间等关键指标;", "测试报告应遵循以下结构模版:(1)测试目的(2)测试环境(3)测试方法(4)测试数据集(5)测试结果(6)分析与结论(7)建议与改进措施;", "在测试报告中,对于测试结果的可信度,应给出置信区间和误差范围,以说明结果的准确性和可靠性;", "为了保证测试的客观性和公正性,测试报告需要经过至少2名同行专业的测试工程师审核并签字确认;", "最后,测试报告应以PDF格式生成,并在所有相关人员中进行分发和存档;"], "levels2": ["先验条件约束", "数值约束", "输出格式约束", "模版约束", "数值约束", "价值观约束", "输出格式约束"], "category": "trace1.0"} +{"id": "891", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "分析人民币汇率年内首次破「7」的意义、背后原因和影响。\n验证背景信息的准确性,包括美联储加息的幅度和频率、我国货币政策的降息措施,以及中美利差、外贸数据等;\n分析采用简洁的专业学术风格;\n关键信息以表格形式展现,包括汇率变动的时间点、影响因素、具体影响和应对策略;\n分析中应突出汇率变动对经济、就业、进出口等方面的影响;\n提出基于当前经济状况的可能应对措施;\n分析应包括对当前汇率政策的评价,以及对未来汇率走势的预测;\n基于不可能三角理论和我国经济现状,探讨汇率变动的合理性及其对经济发展的潜在影响。\n"}], "type": "trace", "description": "分析人民币汇率年内首次破「7」的意义、背后原因和影响。", "constraints": "验证背景信息的准确性,包括美联储加息的幅度和频率、我国货币政策的降息措施,以及中美利差、外贸数据等;\n分析采用简洁的专业学术风格;\n关键信息以表格形式展现,包括汇率变动的时间点、影响因素、具体影响和应对策略;\n分析中应突出汇率变动对经济、就业、进出口等方面的影响;\n提出基于当前经济状况的可能应对措施;\n分析应包括对当前汇率政策的评价,以及对未来汇率走势的预测;\n基于不可能三角理论和我国经济现状,探讨汇率变动的合理性及其对经济发展的潜在影响。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["验证背景信息的准确性,包括美联储加息的幅度和频率、我国货币政策的降息措施,以及中美利差、外贸数据等;", "分析采用简洁的专业学术风格;", "关键信息以表格形式展现,包括汇率变动的时间点、影响因素、具体影响和应对策略;", "分析中应突出汇率变动对经济、就业、进出口等方面的影响;", "提出基于当前经济状况的可能应对措施;", "分析应包括对当前汇率政策的评价,以及对未来汇率走势的预测;", "基于不可能三角理论和我国经济现状,探讨汇率变动的合理性及其对经济发展的潜在影响。"], "levels2": ["包含约束", "语气风格约束", "输出格式约束", "包含约束", "主题约束", "包含约束", "主题约束"], "category": "trace1.0"} +{"id": "892", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "扮演一位IT专家的角色,详细排查电脑问题并解释为什么电脑总是自动关机,最后将所有信息汇总成一个详细的报告。\n针对分析硬盘、检查散热器、测试电源、检查系统日志、审查最近软件的每一步,提供至少3个具体检查项目;\n解释电脑自动关机的原因,每个原因至少给出2点分析;\n提供至少5种解决方法;\n报告标题为“电脑系统问题报告”;\n使用项目符号列表列出问题和解决方案;\n每段文字限制在50-100字;\n使用Markdown格式编写报告。\n"}], "type": "trace", "description": "扮演一位IT专家的角色,详细排查电脑问题并解释为什么电脑总是自动关机,最后将所有信息汇总成一个详细的报告。", "constraints": "针对分析硬盘、检查散热器、测试电源、检查系统日志、审查最近软件的每一步,提供至少3个具体检查项目;\n解释电脑自动关机的原因,每个原因至少给出2点分析;\n提供至少5种解决方法;\n报告标题为“电脑系统问题报告”;\n使用项目符号列表列出问题和解决方案;\n每段文字限制在50-100字;\n使用Markdown格式编写报告。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["针对分析硬盘、检查散热器、测试电源、检查系统日志、审查最近软件的每一步,提供至少3个具体检查项目;", "解释电脑自动关机的原因,每个原因至少给出2点分析;", "提供至少5种解决方法;", "报告标题为“电脑系统问题报告”;", "使用项目符号列表列出问题和解决方案;", "每段文字限制在50-100字;", "使用Markdown格式编写报告。"], "levels2": ["数值约束", "数值约束", "数值约束", "层次化结构约束", "编号和列表约束", "数值约束", "输出格式约束"], "category": "trace1.0"} +{"id": "893", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以一个熟练的程序员的身份,实现一个算法用于找出整数数组的下一个排列,并确保代码中包含足够的注释来解释算法的逻辑。\n将结果以JSON格式输出;\n输出的JSON必须包含两个字段:“algorithm”和“result”;\n字段“algorithm”描述所使用的算法及其复杂度;\n字段“result”是数组下一个排列的结果;\n必须原地修改数组;\n只允许使用额外的常数空间;\n确保输出的JSON格式符合规范。\n"}], "type": "trace", "description": "以一个熟练的程序员的身份,实现一个算法用于找出整数数组的下一个排列,并确保代码中包含足够的注释来解释算法的逻辑。", "constraints": "将结果以JSON格式输出;\n输出的JSON必须包含两个字段:“algorithm”和“result”;\n字段“algorithm”描述所使用的算法及其复杂度;\n字段“result”是数组下一个排列的结果;\n必须原地修改数组;\n只允许使用额外的常数空间;\n确保输出的JSON格式符合规范。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["将结果以JSON格式输出;", "输出的JSON必须包含两个字段:“algorithm”和“result”;", "字段“algorithm”描述所使用的算法及其复杂度;", "字段“result”是数组下一个排列的结果;", "必须原地修改数组;", "只允许使用额外的常数空间;", "确保输出的JSON格式符合规范。"], "levels2": ["输出格式约束", "输出格式约束", "包含约束", "输出格式约束", "包含约束", "数值约束", "输出格式约束"], "category": "trace2.0"} +{"id": "894", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "详细说明使用Python解析JSON文件的步骤,包括读取文件、解析数据、获取指定键值等操作,从一个拥有2年以上Python开发经验的开发者角度进行说明,并给出不同解析库间的比较。\n说明时,应采用严谨正式的语气风格,确保每个步骤的描述准确无误;\n需要给出至少3个解析库的详细比较,包括`json`标准库、`ujson`、`simplejson`等;\n指出各库在性能、易用性、特性支持等方面的差异;\n给出适用场景的推荐;\n在解释每个库的优劣时,至少引用两篇相关学术论文或技术博客作为参考;\n最后,举出一个例子来展示如何解析一个包含复杂嵌套结构的JSON文件;\n展示如何优雅地处理复杂结构,并引用相关文档说明所使用方法的正确性。\n"}], "type": "trace", "description": "详细说明使用Python解析JSON文件的步骤,包括读取文件、解析数据、获取指定键值等操作,从一个拥有2年以上Python开发经验的开发者角度进行说明,并给出不同解析库间的比较。", "constraints": "说明时,应采用严谨正式的语气风格,确保每个步骤的描述准确无误;\n需要给出至少3个解析库的详细比较,包括`json`标准库、`ujson`、`simplejson`等;\n指出各库在性能、易用性、特性支持等方面的差异;\n给出适用场景的推荐;\n在解释每个库的优劣时,至少引用两篇相关学术论文或技术博客作为参考;\n最后,举出一个例子来展示如何解析一个包含复杂嵌套结构的JSON文件;\n展示如何优雅地处理复杂结构,并引用相关文档说明所使用方法的正确性。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["说明时,应采用严谨正式的语气风格,确保每个步骤的描述准确无误;", "需要给出至少3个解析库的详细比较,包括`json`标准库、`ujson`、`simplejson`等;", "指出各库在性能、易用性、特性支持等方面的差异;", "给出适用场景的推荐;", "在解释每个库的优劣时,至少引用两篇相关学术论文或技术博客作为参考;", "最后,举出一个例子来展示如何解析一个包含复杂嵌套结构的JSON文件;", "展示如何优雅地处理复杂结构,并引用相关文档说明所使用方法的正确性。"], "levels2": ["语气风格约束", "包含约束", "包含约束", "受众目标约束", "引用和参考约束", "输出格式约束", "引用和参考约束"], "category": "trace2.0"} +{"id": "895", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "当ellipsis省略符号出现时,实现展示全部文字的方法\n用户需要将鼠标悬停在省略符号上;\n系统将检测到用户意图,自动弹出一个包含完整文本信息的工具提示框;\n展示的格式应为工具提示框;\n工具提示框中包含完整文本,字体大小应为12px;\n字体颜色为#333333;\n背景颜色为#F0F0F0;\n确保文本在不同设备和平台上的可读性;\n"}], "type": "trace", "description": "当ellipsis省略符号出现时,实现展示全部文字的方法", "constraints": "用户需要将鼠标悬停在省略符号上;\n系统将检测到用户意图,自动弹出一个包含完整文本信息的工具提示框;\n展示的格式应为工具提示框;\n工具提示框中包含完整文本,字体大小应为12px;\n字体颜色为#333333;\n背景颜色为#F0F0F0;\n确保文本在不同设备和平台上的可读性;", "input": "NULL", "constraints_num": 7, "constraints_splits": ["用户需要将鼠标悬停在省略符号上;", "系统将检测到用户意图,自动弹出一个包含完整文本信息的工具提示框;", "展示的格式应为工具提示框;", "工具提示框中包含完整文本,字体大小应为12px;", "字体颜色为#333333;", "背景颜色为#F0F0F0;", "确保文本在不同设备和平台上的可读性;"], "levels2": ["自然语言流程背景信息约束", "文本样式约束", "输出格式约束", "文本样式约束", "文本样式约束", "文本样式约束", "文本样式约束"], "category": "trace2.0"} +{"id": "896", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "实现一个简单的推荐算法,以提升用户购物体验,不得使用协同过滤。\n使用Python实现算法;\n算法的代码长度应控制在200至500字之间;\n算法准确率需达到至少80%;\n在代码开始前加入一行注释,说明算法的背景和目的;\n在代码中添加必要的注释,解释关键步骤;\n在代码结尾处,添加一行注释,总结算法的实现效果和可能的改进点;\n输出的代码格式应遵循Python标准注释格式,使用#或''' '''进行注释。\n"}], "type": "trace", "description": "实现一个简单的推荐算法,以提升用户购物体验,不得使用协同过滤。", "constraints": "使用Python实现算法;\n算法的代码长度应控制在200至500字之间;\n算法准确率需达到至少80%;\n在代码开始前加入一行注释,说明算法的背景和目的;\n在代码中添加必要的注释,解释关键步骤;\n在代码结尾处,添加一行注释,总结算法的实现效果和可能的改进点;\n输出的代码格式应遵循Python标准注释格式,使用#或''' '''进行注释。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["使用Python实现算法;", "算法的代码长度应控制在200至500字之间;", "算法准确率需达到至少80%;", "在代码开始前加入一行注释,说明算法的背景和目的;", "在代码中添加必要的注释,解释关键步骤;", "在代码结尾处,添加一行注释,总结算法的实现效果和可能的改进点;", "输出的代码格式应遵循Python标准注释格式,使用#或''' '''进行注释。"], "levels2": ["主题约束", "数值约束", "数值约束", "文本样式约束", "文本样式约束", "文本样式约束", "输出格式约束"], "category": "trace1.0"} +{"id": "897", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "在C语言中编写一个猜数字的游戏程序,程序应生成一个1至100之间的随机整数让用户猜测,用户有至少10轮猜测机会,程序需给出猜大、猜小或猜对的反馈,记录并显示剩余猜测次数,猜测超过10次后输出游戏结束信息并告知正确答案。\n程序需提供至少10轮的猜测机会;\n程序生成的随机数范围为1至100;\n用户每次猜测后,程序应给出“猜大了”、“猜小了”或“恭喜猜对了”的反馈;\n程序需记录并显示每轮猜测后剩余的猜测次数;\n当用户猜测超过10次后,程序需输出“猜测次数已耗尽,游戏结束!”的信息,并告知用户正确的答案;\n程序以简洁、明了的风格编写,确保代码的可读性和可维护性;\n输出结果时,使用Markdown格式的列表来展示每轮猜测的详细信息,包括猜测的数字、反馈信息及剩余次数。\n"}], "type": "trace", "description": "在C语言中编写一个猜数字的游戏程序,程序应生成一个1至100之间的随机整数让用户猜测,用户有至少10轮猜测机会,程序需给出猜大、猜小或猜对的反馈,记录并显示剩余猜测次数,猜测超过10次后输出游戏结束信息并告知正确答案。", "constraints": "程序需提供至少10轮的猜测机会;\n程序生成的随机数范围为1至100;\n用户每次猜测后,程序应给出“猜大了”、“猜小了”或“恭喜猜对了”的反馈;\n程序需记录并显示每轮猜测后剩余的猜测次数;\n当用户猜测超过10次后,程序需输出“猜测次数已耗尽,游戏结束!”的信息,并告知用户正确的答案;\n程序以简洁、明了的风格编写,确保代码的可读性和可维护性;\n输出结果时,使用Markdown格式的列表来展示每轮猜测的详细信息,包括猜测的数字、反馈信息及剩余次数。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["程序需提供至少10轮的猜测机会;", "程序生成的随机数范围为1至100;", "用户每次猜测后,程序应给出“猜大了”、“猜小了”或“恭喜猜对了”的反馈;", "程序需记录并显示每轮猜测后剩余的猜测次数;", "当用户猜测超过10次后,程序需输出“猜测次数已耗尽,游戏结束!”的信息,并告知用户正确的答案;", "程序以简洁、明了的风格编写,确保代码的可读性和可维护性;", "输出结果时,使用Markdown格式的列表来展示每轮猜测的详细信息,包括猜测的数字、反馈信息及剩余次数。"], "levels2": ["数值约束", "数值约束", "自然语言流程背景信息约束", "数值约束", "数值约束", "语气风格约束", "输出格式约束"], "category": "trace2.0"} +{"id": "898", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "设计并编写一个API RESTful接口,用于获取某个用户的订单查询,并确保该接口的安全性和响应效率。\n接口应遵循RESTful设计原则;\n使用HTTPS协议增强安全性;\n请求中包含必要的认证信息,如OAuth token;\n返回的数据以JSON格式呈现;\n返回的JSON中包含订单编号、下单日期、订单状态、产品信息和总金额等关键字段;\n设计中采用简洁且专业的技术术语;\n确保文档的可读性和规范性。\n"}], "type": "trace", "description": "设计并编写一个API RESTful接口,用于获取某个用户的订单查询,并确保该接口的安全性和响应效率。", "constraints": "接口应遵循RESTful设计原则;\n使用HTTPS协议增强安全性;\n请求中包含必要的认证信息,如OAuth token;\n返回的数据以JSON格式呈现;\n返回的JSON中包含订单编号、下单日期、订单状态、产品信息和总金额等关键字段;\n设计中采用简洁且专业的技术术语;\n确保文档的可读性和规范性。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["接口应遵循RESTful设计原则;", "使用HTTPS协议增强安全性;", "请求中包含必要的认证信息,如OAuth token;", "返回的数据以JSON格式呈现;", "返回的JSON中包含订单编号、下单日期、订单状态、产品信息和总金额等关键字段;", "设计中采用简洁且专业的技术术语;", "确保文档的可读性和规范性。"], "levels2": ["语言特征约束", "主题约束", "包含约束", "输出格式约束", "输出格式约束", "语气风格约束", "文本样式约束"], "category": "trace2.0"} +{"id": "899", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一个Kivy应用程序,其中包含代表不同情感状态的Button小部件,通过更改背景颜色响应按钮单击,同时为Kivy初学者设计详细的文档,并实现最近三次按钮记录的保存与加载功能。\n应用包含五个Button小部件,分别代表“快乐”、“悲伤”(两个)、“惊喜”和“平静”;\n每个按钮单击后,应用程序的背景颜色应更改为对应情感状态的颜色;\n文档需采用层次化结构,每个主要功能点用标题突出,子功能点用子标题进行细节描述;\n文档应采用易于理解的指导性语气,确保对Kivy初学者友好;\n实现功能以保存最近三次按下的按钮记录;\n在应用重启时,能以JSON格式重新加载这些记录;\n确保存储与读取功能的准确性和效率。\n"}], "type": "trace", "description": "创建一个Kivy应用程序,其中包含代表不同情感状态的Button小部件,通过更改背景颜色响应按钮单击,同时为Kivy初学者设计详细的文档,并实现最近三次按钮记录的保存与加载功能。", "constraints": "应用包含五个Button小部件,分别代表“快乐”、“悲伤”(两个)、“惊喜”和“平静”;\n每个按钮单击后,应用程序的背景颜色应更改为对应情感状态的颜色;\n文档需采用层次化结构,每个主要功能点用标题突出,子功能点用子标题进行细节描述;\n文档应采用易于理解的指导性语气,确保对Kivy初学者友好;\n实现功能以保存最近三次按下的按钮记录;\n在应用重启时,能以JSON格式重新加载这些记录;\n确保存储与读取功能的准确性和效率。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["应用包含五个Button小部件,分别代表“快乐”、“悲伤”(两个)、“惊喜”和“平静”;", "每个按钮单击后,应用程序的背景颜色应更改为对应情感状态的颜色;", "文档需采用层次化结构,每个主要功能点用标题突出,子功能点用子标题进行细节描述;", "文档应采用易于理解的指导性语气,确保对Kivy初学者友好;", "实现功能以保存最近三次按下的按钮记录;", "在应用重启时,能以JSON格式重新加载这些记录;", "确保存储与读取功能的准确性和效率。"], "levels2": ["包含约束", "情感情绪约束", "层次化结构约束", "语气风格约束", "数值约束", "输出格式约束", "数值约束"], "category": "trace2.0"} +{"id": "900", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以一名数字营销顾问的身份探讨SEO和PPC对企业盈利能力的影响及其区别,并分析它们在电子商务、旅游、科技、零售及服务行业等不同业务领域和市场环境下的适用性与收益预期;提出相关行业案例和成功经验;为企业量身定制SEO和PPC策略,提升ROI及长期效益进行详细解析;撰写分析报告。\n要求至少涵盖电子商务、旅游、科技、零售及服务行业,并提出相关的行业案例和成功经验,至少提供5个不同行业的具体案例;\n对于企业如何根据自身情况量身定制SEO和PPC策略,提升ROI及长期效益,要求列出至少10条具体建议;\n如果案例数据源自第三方研究,需要引用来源且提供链接;\n在撰写分析报告时,先验条件为分析开始前需进行关键词研究,确定目标受众,并制定分析框架;\n报告应以Markdown格式撰写,使用标题、子标题和列表,以清晰地组织信息;\n开头应包含一个摘要,总结分析的核心发现和建议,以方便快速浏览;\n正例约束:如《SEO vs PPC: Which Should You Invest More In?》(https://www.searchenginejournal.com/seo-vs-ppc/311249/)这篇分析文章的结构和内容深度作为参考。\n"}], "type": "trace", "description": "以一名数字营销顾问的身份探讨SEO和PPC对企业盈利能力的影响及其区别,并分析它们在电子商务、旅游、科技、零售及服务行业等不同业务领域和市场环境下的适用性与收益预期;提出相关行业案例和成功经验;为企业量身定制SEO和PPC策略,提升ROI及长期效益进行详细解析;撰写分析报告。", "constraints": "要求至少涵盖电子商务、旅游、科技、零售及服务行业,并提出相关的行业案例和成功经验,至少提供5个不同行业的具体案例;\n对于企业如何根据自身情况量身定制SEO和PPC策略,提升ROI及长期效益,要求列出至少10条具体建议;\n如果案例数据源自第三方研究,需要引用来源且提供链接;\n在撰写分析报告时,先验条件为分析开始前需进行关键词研究,确定目标受众,并制定分析框架;\n报告应以Markdown格式撰写,使用标题、子标题和列表,以清晰地组织信息;\n开头应包含一个摘要,总结分析的核心发现和建议,以方便快速浏览;\n正例约束:如《SEO vs PPC: Which Should You Invest More In?》(https://www.searchenginejournal.com/seo-vs-ppc/311249/)这篇分析文章的结构和内容深度作为参考。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["要求至少涵盖电子商务、旅游、科技、零售及服务行业,并提出相关的行业案例和成功经验,至少提供5个不同行业的具体案例;", "对于企业如何根据自身情况量身定制SEO和PPC策略,提升ROI及长期效益,要求列出至少10条具体建议;", "如果案例数据源自第三方研究,需要引用来源且提供链接;", "在撰写分析报告时,先验条件为分析开始前需进行关键词研究,确定目标受众,并制定分析框架;", "报告应以Markdown格式撰写,使用标题、子标题和列表,以清晰地组织信息;", "开头应包含一个摘要,总结分析的核心发现和建议,以方便快速浏览;", "正例约束:如《SEO vs PPC: Which Should You Invest More In?》(https://www.searchenginejournal.com/seo-vs-ppc/311249/)这篇分析文章的结构和内容深度作为参考。"], "levels2": ["包含约束", "数值约束", "引用和参考约束", "先验条件约束", "输出格式约束", "模版约束", "正例约束"], "category": "trace2.0"} +{"id": "901", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一个Mysql数据表用于存储用户数据。\n数据表应按照以下顺序包括以下字段,并进行相应的注释:ID字段、姓名字段、电子邮件字段、密码字段;\nID字段应为INT类型并设置为主键(PK)与自增(AI);\n姓名字段应为VARCHAR(100)类型,用于存储用户姓名;\n电子邮件字段应为VARCHAR(255)类型,用于存储用户电子邮件;\n密码字段应为VARCHAR(100)类型,用于存储用户密码;\n在创建数据表前,应先检查数据库是否存在,如果不存在,则需创建数据库;\n创建数据表时,每个字段的注释应采用Markdown格式进行编写,且注释应包括字段类型和字段作用;\n"}], "type": "trace", "description": "创建一个Mysql数据表用于存储用户数据。", "constraints": "数据表应按照以下顺序包括以下字段,并进行相应的注释:ID字段、姓名字段、电子邮件字段、密码字段;\nID字段应为INT类型并设置为主键(PK)与自增(AI);\n姓名字段应为VARCHAR(100)类型,用于存储用户姓名;\n电子邮件字段应为VARCHAR(255)类型,用于存储用户电子邮件;\n密码字段应为VARCHAR(100)类型,用于存储用户密码;\n在创建数据表前,应先检查数据库是否存在,如果不存在,则需创建数据库;\n创建数据表时,每个字段的注释应采用Markdown格式进行编写,且注释应包括字段类型和字段作用;", "input": "NULL", "constraints_num": 7, "constraints_splits": ["数据表应按照以下顺序包括以下字段,并进行相应的注释:ID字段、姓名字段、电子邮件字段、密码字段;", "ID字段应为INT类型并设置为主键(PK)与自增(AI);", "姓名字段应为VARCHAR(100)类型,用于存储用户姓名;", "电子邮件字段应为VARCHAR(255)类型,用于存储用户电子邮件;", "密码字段应为VARCHAR(100)类型,用于存储用户密码;", "在创建数据表前,应先检查数据库是否存在,如果不存在,则需创建数据库;", "创建数据表时,每个字段的注释应采用Markdown格式进行编写,且注释应包括字段类型和字段作用;"], "levels2": ["表格背景信息约束", "包含约束", "包含约束", "包含约束", "包含约束", "先验条件约束", "输出格式约束"], "category": "trace2.0"} +{"id": "902", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "报告健康的思想状态对生活的重要意义\n报告格式包括:标题、摘要、正文、结论和至少三篇学术参考文献;\n使用严谨正式的语气撰写报告,确保信息的准确性和专业性;\n标题应体现报告主题;\n摘要需概括主要内容和结论;\n正文需详细讨论健康思想状态的各个维度及其对生活的积极影响;\n结论部分总结观点并提出建议;\n参考文献需采用APA格式。\n"}], "type": "trace", "description": "报告健康的思想状态对生活的重要意义", "constraints": "报告格式包括:标题、摘要、正文、结论和至少三篇学术参考文献;\n使用严谨正式的语气撰写报告,确保信息的准确性和专业性;\n标题应体现报告主题;\n摘要需概括主要内容和结论;\n正文需详细讨论健康思想状态的各个维度及其对生活的积极影响;\n结论部分总结观点并提出建议;\n参考文献需采用APA格式。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["报告格式包括:标题、摘要、正文、结论和至少三篇学术参考文献;", "使用严谨正式的语气撰写报告,确保信息的准确性和专业性;", "标题应体现报告主题;", "摘要需概括主要内容和结论;", "正文需详细讨论健康思想状态的各个维度及其对生活的积极影响;", "结论部分总结观点并提出建议;", "参考文献需采用APA格式。"], "levels2": ["输出格式约束", "语气风格约束", "层次化结构约束", "层次化结构约束", "主题约束", "层次化结构约束", "引用和参考约束"], "category": "trace2.0"} +{"id": "903", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "编写一个求解给定数组中最大子数列和的程序\n使用 Python 语言编写程序;\n程序应该能够处理输入为一个整数数组,长度在 1 到 1000 之间;\n数组中的每个元素是范围在 -1000 到 1000 的整数;\n程序的输出应为一个整数,代表最大子数列的和;\n程序应能够处理数组中的所有元素都为负数的情况,此时最大子数列和应为 0;\n输入格式:程序将接收一个字符串,表示数组,数组元素由逗号分隔;\n输出格式:程序应该输出一个整数;\n# Inputs:\n\"1, -3, 4, -2, 2\"\n"}], "type": "trace", "description": "编写一个求解给定数组中最大子数列和的程序", "constraints": "使用 Python 语言编写程序;\n程序应该能够处理输入为一个整数数组,长度在 1 到 1000 之间;\n数组中的每个元素是范围在 -1000 到 1000 的整数;\n程序的输出应为一个整数,代表最大子数列的和;\n程序应能够处理数组中的所有元素都为负数的情况,此时最大子数列和应为 0;\n输入格式:程序将接收一个字符串,表示数组,数组元素由逗号分隔;\n输出格式:程序应该输出一个整数;", "input": "\"1, -3, 4, -2, 2\"", "constraints_num": 7, "constraints_splits": ["使用 Python 语言编写程序;", "程序应该能够处理输入为一个整数数组,长度在 1 到 1000 之间;", "数组中的每个元素是范围在 -1000 到 1000 的整数;", "程序的输出应为一个整数,代表最大子数列的和;", "程序应能够处理数组中的所有元素都为负数的情况,此时最大子数列和应为 0;", "输入格式:程序将接收一个字符串,表示数组,数组元素由逗号分隔;", "输出格式:程序应该输出一个整数;"], "levels2": ["包含约束", "数值约束", "数值约束", "输出格式约束", "数值约束", "输入格式约束", "输出格式约束"], "category": "trace2.0"} +{"id": "904", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇关于古老城镇的散文\n采用文艺而浪漫的风格,传达在漫步古老城镇时所感受到的历史沉淀和文化底蕴;\n散文中应详细描述所见到的建筑、文物和当地人的生活情况,展示对传统文化的认识和理解;\n文章的开头应以一段生动的描述吸引读者;\n正文按照“历史建筑 → 文物古迹 → 当地生活”的顺序展开;\n结尾处需有一段深沉而富有哲理的总结;\n散文需以Markdown格式提交,包含引用的图片链接和资料来源注释,以增强文章的可读性和信息的可靠性;\n如果散文中提到了重要的历史事件,必须遵循“总分总”的结构模版:先概述事件,随后详细描述,最后总结事件对城镇的影响。\n"}], "type": "trace", "description": "撰写一篇关于古老城镇的散文", "constraints": "采用文艺而浪漫的风格,传达在漫步古老城镇时所感受到的历史沉淀和文化底蕴;\n散文中应详细描述所见到的建筑、文物和当地人的生活情况,展示对传统文化的认识和理解;\n文章的开头应以一段生动的描述吸引读者;\n正文按照“历史建筑 → 文物古迹 → 当地生活”的顺序展开;\n结尾处需有一段深沉而富有哲理的总结;\n散文需以Markdown格式提交,包含引用的图片链接和资料来源注释,以增强文章的可读性和信息的可靠性;\n如果散文中提到了重要的历史事件,必须遵循“总分总”的结构模版:先概述事件,随后详细描述,最后总结事件对城镇的影响。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["采用文艺而浪漫的风格,传达在漫步古老城镇时所感受到的历史沉淀和文化底蕴;", "散文中应详细描述所见到的建筑、文物和当地人的生活情况,展示对传统文化的认识和理解;", "文章的开头应以一段生动的描述吸引读者;", "正文按照“历史建筑 → 文物古迹 → 当地生活”的顺序展开;", "结尾处需有一段深沉而富有哲理的总结;", "散文需以Markdown格式提交,包含引用的图片链接和资料来源注释,以增强文章的可读性和信息的可靠性;", "如果散文中提到了重要的历史事件,必须遵循“总分总”的结构模版:先概述事件,随后详细描述,最后总结事件对城镇的影响。"], "levels2": ["语气风格约束", "主题约束", "语气风格约束", "层次化结构约束", "语气风格约束", "输出格式约束", "模版约束"], "category": "trace1.0"} +{"id": "905", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇关于瑞幸咖啡事件的新闻报道\n使用新闻报道严谨正式的语气风格;\n报道需包含标题和副标题;\n标题格式为“瑞幸咖啡:伪造交易引发中美监管关注”;\n副标题格式为“内部调查揭露,监管机构反应”;\n报道中需包含直接引用瑞幸咖啡官方声明和中国及美国监管机构的官方回应;\n引用格式需符合新闻行业的标准引用格式;\n使用Markdown格式进行排版。\n"}], "type": "trace", "description": "撰写一篇关于瑞幸咖啡事件的新闻报道", "constraints": "使用新闻报道严谨正式的语气风格;\n报道需包含标题和副标题;\n标题格式为“瑞幸咖啡:伪造交易引发中美监管关注”;\n副标题格式为“内部调查揭露,监管机构反应”;\n报道中需包含直接引用瑞幸咖啡官方声明和中国及美国监管机构的官方回应;\n引用格式需符合新闻行业的标准引用格式;\n使用Markdown格式进行排版。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["使用新闻报道严谨正式的语气风格;", "报道需包含标题和副标题;", "标题格式为“瑞幸咖啡:伪造交易引发中美监管关注”;", "副标题格式为“内部调查揭露,监管机构反应”;", "报道中需包含直接引用瑞幸咖啡官方声明和中国及美国监管机构的官方回应;", "引用格式需符合新闻行业的标准引用格式;", "使用Markdown格式进行排版。"], "levels2": ["语气风格约束", "层次化结构约束", "层次化结构约束", "层次化结构约束", "包含约束", "引用和参考约束", "输出格式约束"], "category": "trace1.0"} +{"id": "906", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一个算法来计算数字数组的平均值\n数组元素的范围应为0到100000之间的整数;\n数组大小不超过100000个元素;\n算法应包括以下先验条件:如果数组为空,应返回特定的错误信息;\n输出应遵循JSON格式,包括平均值的计算结果,以及是否成功计算平均值的标志;\n算法针对大数组进行了优化,避免不必要的内存使用和时间复杂度;\n涉及的变量包括数组的大小、元素值;\n算法在处理大数组时,可以快速而准确地计算平均值,且不造成资源浪费;\n# Inputs:\n[5, 10, 15, 20]\n"}], "type": "trace", "description": "创建一个算法来计算数字数组的平均值", "constraints": "数组元素的范围应为0到100000之间的整数;\n数组大小不超过100000个元素;\n算法应包括以下先验条件:如果数组为空,应返回特定的错误信息;\n输出应遵循JSON格式,包括平均值的计算结果,以及是否成功计算平均值的标志;\n算法针对大数组进行了优化,避免不必要的内存使用和时间复杂度;\n涉及的变量包括数组的大小、元素值;\n算法在处理大数组时,可以快速而准确地计算平均值,且不造成资源浪费;", "input": "[5, 10, 15, 20]", "constraints_num": 7, "constraints_splits": ["数组元素的范围应为0到100000之间的整数;", "数组大小不超过100000个元素;", "算法应包括以下先验条件:如果数组为空,应返回特定的错误信息;", "输出应遵循JSON格式,包括平均值的计算结果,以及是否成功计算平均值的标志;", "算法针对大数组进行了优化,避免不必要的内存使用和时间复杂度;", "涉及的变量包括数组的大小、元素值;", "算法在处理大数组时,可以快速而准确地计算平均值,且不造成资源浪费;"], "levels2": ["数值约束", "数值约束", "先验条件约束", "输出格式约束", "主题约束", "包含约束", "主题约束"], "category": "trace1.0"} +{"id": "907", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "写一篇探讨企业投资决策在受到预算限制的情况下的影响的研究报告。\n报告的字数不少于3000字;\n报告需要遵循学术报告格式,包含摘要、目录、引言、正文、结论和参考文献等部分;\n在摘要部分简要介绍预算限制的概念及其作用;\n在正文中阐述企业投资决策的重要性;\n深入探讨在预算限制下企业如何进行投资规划和决策;\n提出有效的预算管理策略以最大化投资回报率;\n确保所有引用和数据来源的准确性和可靠性。\n"}], "type": "trace", "description": "写一篇探讨企业投资决策在受到预算限制的情况下的影响的研究报告。", "constraints": "报告的字数不少于3000字;\n报告需要遵循学术报告格式,包含摘要、目录、引言、正文、结论和参考文献等部分;\n在摘要部分简要介绍预算限制的概念及其作用;\n在正文中阐述企业投资决策的重要性;\n深入探讨在预算限制下企业如何进行投资规划和决策;\n提出有效的预算管理策略以最大化投资回报率;\n确保所有引用和数据来源的准确性和可靠性。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["报告的字数不少于3000字;", "报告需要遵循学术报告格式,包含摘要、目录、引言、正文、结论和参考文献等部分;", "在摘要部分简要介绍预算限制的概念及其作用;", "在正文中阐述企业投资决策的重要性;", "深入探讨在预算限制下企业如何进行投资规划和决策;", "提出有效的预算管理策略以最大化投资回报率;", "确保所有引用和数据来源的准确性和可靠性。"], "levels2": ["数值约束", "输出格式约束", "包含约束", "主题约束", "主题约束", "主题约束", "引用和参考约束"], "category": "trace2.0"} +{"id": "908", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一则魔力减肥茶的广告\n内容应介绍减肥茶的成分和功效,特别是如何促进新陈代谢、消耗脂肪以及减轻体重;\n广告中必须引用真实的用户经历或评价,展示产品的减肥效果;\n提供产品的购买方式和价格,使用有序列表清晰展示;\n明确说明可能存在的风险或副作用,并提醒用户在使用前咨询医生或专业人士;\n如果用户已咨询医生且医生建议使用,广告中应提供一个可点击的按钮直接链接到购买页面;\n广告的字数不少于350字;\n所有内容需要以HTML格式输出,使用指定的HTML标签进行格式化。\n"}], "type": "trace", "description": "撰写一则魔力减肥茶的广告", "constraints": "内容应介绍减肥茶的成分和功效,特别是如何促进新陈代谢、消耗脂肪以及减轻体重;\n广告中必须引用真实的用户经历或评价,展示产品的减肥效果;\n提供产品的购买方式和价格,使用有序列表清晰展示;\n明确说明可能存在的风险或副作用,并提醒用户在使用前咨询医生或专业人士;\n如果用户已咨询医生且医生建议使用,广告中应提供一个可点击的按钮直接链接到购买页面;\n广告的字数不少于350字;\n所有内容需要以HTML格式输出,使用指定的HTML标签进行格式化。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["内容应介绍减肥茶的成分和功效,特别是如何促进新陈代谢、消耗脂肪以及减轻体重;", "广告中必须引用真实的用户经历或评价,展示产品的减肥效果;", "提供产品的购买方式和价格,使用有序列表清晰展示;", "明确说明可能存在的风险或副作用,并提醒用户在使用前咨询医生或专业人士;", "如果用户已咨询医生且医生建议使用,广告中应提供一个可点击的按钮直接链接到购买页面;", "广告的字数不少于350字;", "所有内容需要以HTML格式输出,使用指定的HTML标签进行格式化。"], "levels2": ["包含约束", "包含约束", "编号和列表约束", "价值观约束", "先验条件约束", "数值约束", "输出格式约束"], "category": "trace1.0"} +{"id": "909", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "生成一个有关环保的科普文章,主题是“无痕山林”,要包含保护山林环境的重要性,以及游客在山林间应遵守的规则细节。\n文章长度至少1000字;\n文章应采用正式的学术研究文章的文本样式,使用严谨正式的语气风格;\n在Markdown格式中输出;\n内容中应详细解释“无痕山林”的理念,包括其历史起源、核心原则以及如何在实践中应用这些原则;\n文章中应列出至少10条具体规则,每条规则都需要详细解释其背后的原因和执行方法;\n文章应包含至少5个引用,引用的来源应是权威的环保机构或学术研究,以增强文章的说服力和可信度;\n对于列出规则的描述,使用有序列表的形式,确保信息的清晰和条理性。\n"}], "type": "trace", "description": "生成一个有关环保的科普文章,主题是“无痕山林”,要包含保护山林环境的重要性,以及游客在山林间应遵守的规则细节。", "constraints": "文章长度至少1000字;\n文章应采用正式的学术研究文章的文本样式,使用严谨正式的语气风格;\n在Markdown格式中输出;\n内容中应详细解释“无痕山林”的理念,包括其历史起源、核心原则以及如何在实践中应用这些原则;\n文章中应列出至少10条具体规则,每条规则都需要详细解释其背后的原因和执行方法;\n文章应包含至少5个引用,引用的来源应是权威的环保机构或学术研究,以增强文章的说服力和可信度;\n对于列出规则的描述,使用有序列表的形式,确保信息的清晰和条理性。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["文章长度至少1000字;", "文章应采用正式的学术研究文章的文本样式,使用严谨正式的语气风格;", "在Markdown格式中输出;", "内容中应详细解释“无痕山林”的理念,包括其历史起源、核心原则以及如何在实践中应用这些原则;", "文章中应列出至少10条具体规则,每条规则都需要详细解释其背后的原因和执行方法;", "文章应包含至少5个引用,引用的来源应是权威的环保机构或学术研究,以增强文章的说服力和可信度;", "对于列出规则的描述,使用有序列表的形式,确保信息的清晰和条理性。"], "levels2": ["数值约束", "语气风格约束", "输出格式约束", "包含约束", "编号和列表约束", "引用和参考约束", "编号和列表约束"], "category": "trace2.0"} +{"id": "910", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "详细指导如何在 Hypixel 的 SkyBlock 中获得技能点数。\n通过完成日常任务和挑战来获得技能点数;\n击杀怪物以积累经验,达到一定经验值后解锁技能点数;\n通过挖掘、伐木、钓鱼等活动收集资源,每达到一定数量获得技能点数;\n在技能树中使用技能点数升级对应的技能;\n参加游戏内的特殊活动和事件,有机会获得额外的技能点数奖励;\n在市场中交易,根据交易量获得技能点数;\n完成游戏中的成就任务,获得技能点数。\n"}], "type": "trace", "description": "详细指导如何在 Hypixel 的 SkyBlock 中获得技能点数。", "constraints": "通过完成日常任务和挑战来获得技能点数;\n击杀怪物以积累经验,达到一定经验值后解锁技能点数;\n通过挖掘、伐木、钓鱼等活动收集资源,每达到一定数量获得技能点数;\n在技能树中使用技能点数升级对应的技能;\n参加游戏内的特殊活动和事件,有机会获得额外的技能点数奖励;\n在市场中交易,根据交易量获得技能点数;\n完成游戏中的成就任务,获得技能点数。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["通过完成日常任务和挑战来获得技能点数;", "击杀怪物以积累经验,达到一定经验值后解锁技能点数;", "通过挖掘、伐木、钓鱼等活动收集资源,每达到一定数量获得技能点数;", "在技能树中使用技能点数升级对应的技能;", "参加游戏内的特殊活动和事件,有机会获得额外的技能点数奖励;", "在市场中交易,根据交易量获得技能点数;", "完成游戏中的成就任务,获得技能点数。"], "levels2": ["包含约束", "包含约束", "数值约束", "包含约束", "包含约束", "包含约束", "包含约束"], "category": "trace1.0"} +{"id": "911", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇以“上大学是不是每个人都应该做的事情?”为题的论文形式探讨,论文应包括摘要、引言、论述、结论和参考文献部分,分析大学教育对于个人和社会的价值和贡献,以及大学教育应如何发挥其最大的作用。\n论文需考虑社会、经济、职业等多方面因素;\n论文语气需严谨正式,使用专业学术语言;\n摘要字数不少于300字;\n正文部分不少于6000字;\n包含至少10篇参考文献;\n在论述部分,需要包含对当前大学教育体系的批评和建议;\n在论述部分,需要包含对全球范围内不同国家大学教育体系的比较和分析。\n"}], "type": "trace", "description": "撰写一篇以“上大学是不是每个人都应该做的事情?”为题的论文形式探讨,论文应包括摘要、引言、论述、结论和参考文献部分,分析大学教育对于个人和社会的价值和贡献,以及大学教育应如何发挥其最大的作用。", "constraints": "论文需考虑社会、经济、职业等多方面因素;\n论文语气需严谨正式,使用专业学术语言;\n摘要字数不少于300字;\n正文部分不少于6000字;\n包含至少10篇参考文献;\n在论述部分,需要包含对当前大学教育体系的批评和建议;\n在论述部分,需要包含对全球范围内不同国家大学教育体系的比较和分析。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["论文需考虑社会、经济、职业等多方面因素;", "论文语气需严谨正式,使用专业学术语言;", "摘要字数不少于300字;", "正文部分不少于6000字;", "包含至少10篇参考文献;", "在论述部分,需要包含对当前大学教育体系的批评和建议;", "在论述部分,需要包含对全球范围内不同国家大学教育体系的比较和分析。"], "levels2": ["主题约束", "语气风格约束", "数值约束", "数值约束", "引用和参考约束", "包含约束", "包含约束"], "category": "trace1.0"} +{"id": "912", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇关于XTBG(中国科学院西双版纳热带植物园)研究生学术沙龙的活动简讯,主题为国家公派留学经验交流分享。\n简讯应使用Markdown格式;\n正文部分不少于500字;\n简讯应当包括以下部分:标题、正文、嘉宾介绍、留学体验与学术成长;\n正文部分需详细列出每位嘉宾的留学国家、学校名称、专业领域,以及他们对个人职业生涯规划的思考和选择,以及申请国家公派留学项目的过程;\n内容中包含以下嘉宾信息:董冰、温心馨、邹鑫三位优秀的学长和学姐,他们目前作为国家公派留学生,分别在英国圣安德鲁斯大学、日本国立物质材料研究所(北海道大学)、法国苏黎世联邦理工大学攻读博士学位;\n简讯应以标题加粗、段落首行缩进2个字符的文本样式进行排版;\n活动简讯的标题应为“国留学路,梦开始的地方:XTBG研究生学术沙龙精彩回顾”;\n"}], "type": "trace", "description": "撰写一篇关于XTBG(中国科学院西双版纳热带植物园)研究生学术沙龙的活动简讯,主题为国家公派留学经验交流分享。", "constraints": "简讯应使用Markdown格式;\n正文部分不少于500字;\n简讯应当包括以下部分:标题、正文、嘉宾介绍、留学体验与学术成长;\n正文部分需详细列出每位嘉宾的留学国家、学校名称、专业领域,以及他们对个人职业生涯规划的思考和选择,以及申请国家公派留学项目的过程;\n内容中包含以下嘉宾信息:董冰、温心馨、邹鑫三位优秀的学长和学姐,他们目前作为国家公派留学生,分别在英国圣安德鲁斯大学、日本国立物质材料研究所(北海道大学)、法国苏黎世联邦理工大学攻读博士学位;\n简讯应以标题加粗、段落首行缩进2个字符的文本样式进行排版;\n活动简讯的标题应为“国留学路,梦开始的地方:XTBG研究生学术沙龙精彩回顾”;", "input": "NULL", "constraints_num": 7, "constraints_splits": ["简讯应使用Markdown格式;", "正文部分不少于500字;", "简讯应当包括以下部分:标题、正文、嘉宾介绍、留学体验与学术成长;", "正文部分需详细列出每位嘉宾的留学国家、学校名称、专业领域,以及他们对个人职业生涯规划的思考和选择,以及申请国家公派留学项目的过程;", "内容中包含以下嘉宾信息:董冰、温心馨、邹鑫三位优秀的学长和学姐,他们目前作为国家公派留学生,分别在英国圣安德鲁斯大学、日本国立物质材料研究所(北海道大学)、法国苏黎世联邦理工大学攻读博士学位;", "简讯应以标题加粗、段落首行缩进2个字符的文本样式进行排版;", "活动简讯的标题应为“国留学路,梦开始的地方:XTBG研究生学术沙龙精彩回顾”;"], "levels2": ["输出格式约束", "数值约束", "层次化结构约束", "包含约束", "包含约束", "文本样式约束", "层次化结构约束"], "category": "trace2.0"} +{"id": "913", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以学术论文的形式探讨人类学的研究范畴和调查方法,结合具体案例或实地考察,深入探讨人类学如何应用这些方法进行文化研究,并分析讨论可能遇到的局限性及其解决方案。\n讨论的研究方法包括但不限于参与观察、深度访谈、问卷调查等;\n需结合具体案例或实地考察进行深入探讨;\n分析讨论在人类学研究中可能遇到的局限性,如文化相对性、伦理问题、研究者的偏见等;\n 针对可能遇到的局限性提出可能的解决方案;\n受众为人类学研究者和教育者,内容需深度和严谨;\n所有引用和参考文献需遵循APA格式;\n最终输出格式需为LaTeX。\n"}], "type": "trace", "description": "以学术论文的形式探讨人类学的研究范畴和调查方法,结合具体案例或实地考察,深入探讨人类学如何应用这些方法进行文化研究,并分析讨论可能遇到的局限性及其解决方案。", "constraints": "讨论的研究方法包括但不限于参与观察、深度访谈、问卷调查等;\n需结合具体案例或实地考察进行深入探讨;\n分析讨论在人类学研究中可能遇到的局限性,如文化相对性、伦理问题、研究者的偏见等;\n 针对可能遇到的局限性提出可能的解决方案;\n受众为人类学研究者和教育者,内容需深度和严谨;\n所有引用和参考文献需遵循APA格式;\n最终输出格式需为LaTeX。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["讨论的研究方法包括但不限于参与观察、深度访谈、问卷调查等;", "需结合具体案例或实地考察进行深入探讨;", "分析讨论在人类学研究中可能遇到的局限性,如文化相对性、伦理问题、研究者的偏见等;", " 针对可能遇到的局限性提出可能的解决方案;", "受众为人类学研究者和教育者,内容需深度和严谨;", "所有引用和参考文献需遵循APA格式;", "最终输出格式需为LaTeX。"], "levels2": ["主题约束", "包含约束", "主题约束", "包含约束", "受众目标约束", "引用和参考约束", "输出格式约束"], "category": "trace2.0"} +{"id": "914", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "计算某厂原有男女工各多少?\n首先设置男性工人为19x,女性工人为12x;\n建立方程组:(19x-21)/(12x+21)=3/4;\n解方程组,找到x的值;\n用找到的x值计算原有男性和女性工人的数量;\n确保计算出的男性和女性工人的数量都不小于21,确保计算的合理性;\n男性和女性工人的最小数量不能为负;\n计算出的男女工人数需为整数。\n"}], "type": "trace", "description": "计算某厂原有男女工各多少?", "constraints": "首先设置男性工人为19x,女性工人为12x;\n建立方程组:(19x-21)/(12x+21)=3/4;\n解方程组,找到x的值;\n用找到的x值计算原有男性和女性工人的数量;\n确保计算出的男性和女性工人的数量都不小于21,确保计算的合理性;\n男性和女性工人的最小数量不能为负;\n计算出的男女工人数需为整数。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["首先设置男性工人为19x,女性工人为12x;", "建立方程组:(19x-21)/(12x+21)=3/4;", "解方程组,找到x的值;", "用找到的x值计算原有男性和女性工人的数量;", "确保计算出的男性和女性工人的数量都不小于21,确保计算的合理性;", "男性和女性工人的最小数量不能为负;", "计算出的男女工人数需为整数。"], "levels2": ["数值约束", "数值约束", "包含约束", "包含约束", "数值约束", "数值约束", "数值约束"], "category": "trace2.0"} +{"id": "915", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以一个专业程序员的视角,使用Embree创建一个SDF(Signed Distance Field)立方体。\n引入Embree库,并确保在项目中正确引用并包含Embree头文件;\n创建一个SDF立方体,设置其尺寸和位置,使用Embree的API进行初始化;\n利用SDF立方体进行光线追踪,实现高效的碰撞检测和场景渲染;\n进行性能优化,利用Embree的多线程功能,以提高光线追踪的效率;\n输出结果应以代码片段的形式呈现,且代码片段必须正确无误;\n代码片段在使用前,确保已经正确安装并配置了Embree库;\n在实际应用中,还需根据具体需求进行适当调整和优化;\n"}], "type": "trace", "description": "以一个专业程序员的视角,使用Embree创建一个SDF(Signed Distance Field)立方体。", "constraints": "引入Embree库,并确保在项目中正确引用并包含Embree头文件;\n创建一个SDF立方体,设置其尺寸和位置,使用Embree的API进行初始化;\n利用SDF立方体进行光线追踪,实现高效的碰撞检测和场景渲染;\n进行性能优化,利用Embree的多线程功能,以提高光线追踪的效率;\n输出结果应以代码片段的形式呈现,且代码片段必须正确无误;\n代码片段在使用前,确保已经正确安装并配置了Embree库;\n在实际应用中,还需根据具体需求进行适当调整和优化;", "input": "NULL", "constraints_num": 7, "constraints_splits": ["引入Embree库,并确保在项目中正确引用并包含Embree头文件;", "创建一个SDF立方体,设置其尺寸和位置,使用Embree的API进行初始化;", "利用SDF立方体进行光线追踪,实现高效的碰撞检测和场景渲染;", "进行性能优化,利用Embree的多线程功能,以提高光线追踪的效率;", "输出结果应以代码片段的形式呈现,且代码片段必须正确无误;", "代码片段在使用前,确保已经正确安装并配置了Embree库;", "在实际应用中,还需根据具体需求进行适当调整和优化;"], "levels2": ["引用和参考约束", "包含约束", "主题约束", "主题约束", "输出格式约束", "先验条件约束", "先验条件约束"], "category": "trace2.0"} +{"id": "916", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一个jQuery表达式,该表达式应在页面加载完成后执行一系列操作,包括获取、存储、检查、隐藏元素,并显示相关的警告信息。\n操作应在页面加载完成后的5秒内执行;\n获取网页上所有的
元素,将其内容存储在一个数组中;\n检查这个数组中是否有任何重复的内容,如果有,将重复的内容条目存储在一个新的数组中;\n在隐藏所有
元素之前,确保已经存储了它们的内容;\n隐藏网页上所有的
元素;\n显示一个警告,内容为\"已隐藏的
元素数量为X个\",其中X为实际隐藏的
元素数量;\n如果在所有
元素隐藏后,存储的数组中发现了重复的
内容,显示一条指出此情况的信息,内容为\"发现Y个重复的
元素内容\",其中Y为重复内容的数量;\n"}], "type": "trace", "description": "创建一个jQuery表达式,该表达式应在页面加载完成后执行一系列操作,包括获取、存储、检查、隐藏元素,并显示相关的警告信息。", "constraints": "操作应在页面加载完成后的5秒内执行;\n获取网页上所有的
元素,将其内容存储在一个数组中;\n检查这个数组中是否有任何重复的内容,如果有,将重复的内容条目存储在一个新的数组中;\n在隐藏所有
元素之前,确保已经存储了它们的内容;\n隐藏网页上所有的
元素;\n显示一个警告,内容为\"已隐藏的
元素数量为X个\",其中X为实际隐藏的
元素数量;\n如果在所有
元素隐藏后,存储的数组中发现了重复的
内容,显示一条指出此情况的信息,内容为\"发现Y个重复的
元素内容\",其中Y为重复内容的数量;", "input": "NULL", "constraints_num": 7, "constraints_splits": ["操作应在页面加载完成后的5秒内执行;", "获取网页上所有的
元素,将其内容存储在一个数组中;", "检查这个数组中是否有任何重复的内容,如果有,将重复的内容条目存储在一个新的数组中;", "在隐藏所有
元素之前,确保已经存储了它们的内容;", "隐藏网页上所有的
元素;", "显示一个警告,内容为\"已隐藏的
元素数量为X个\",其中X为实际隐藏的
元素数量;", "如果在所有
元素隐藏后,存储的数组中发现了重复的
内容,显示一条指出此情况的信息,内容为\"发现Y个重复的
元素内容\",其中Y为重复内容的数量;"], "levels2": ["数值约束", "输出格式约束", "包含约束", "包含约束", "输出格式约束", "数值约束", "输出格式约束"], "category": "trace2.0"} +{"id": "917", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "写一篇论文摘要,主题为《数据增强技术在中文NLP任务上的应用》\n摘要字数限制在250字以内;\n摘要中应列出至少5个关键词,关键词应为专业领域内术语,避免使用非专业术语;\n摘要需遵循学术论文摘要模板,包括目的、方法、结果和结论四部分;\n目的:阐述研究目标,包括数据增强技术在中文NLP任务上的具体应用领域和研究动机;\n方法:描述数据增强技术的细节,以及如何在中文NLP任务中实施该技术,包括数据预处理、特征工程和模型训练等步骤;\n结果:列举研究的主要发现,包括数据增强技术对中文NLP任务的影响,以及与基线模型相比的性能提升;\n结论:总结数据增强技术在中文NLP任务上的应用效果,指出其潜在优势和局限性,为未来研究提供方向;\n"}], "type": "trace", "description": "写一篇论文摘要,主题为《数据增强技术在中文NLP任务上的应用》", "constraints": "摘要字数限制在250字以内;\n摘要中应列出至少5个关键词,关键词应为专业领域内术语,避免使用非专业术语;\n摘要需遵循学术论文摘要模板,包括目的、方法、结果和结论四部分;\n目的:阐述研究目标,包括数据增强技术在中文NLP任务上的具体应用领域和研究动机;\n方法:描述数据增强技术的细节,以及如何在中文NLP任务中实施该技术,包括数据预处理、特征工程和模型训练等步骤;\n结果:列举研究的主要发现,包括数据增强技术对中文NLP任务的影响,以及与基线模型相比的性能提升;\n结论:总结数据增强技术在中文NLP任务上的应用效果,指出其潜在优势和局限性,为未来研究提供方向;", "input": "NULL", "constraints_num": 7, "constraints_splits": ["摘要字数限制在250字以内;", "摘要中应列出至少5个关键词,关键词应为专业领域内术语,避免使用非专业术语;", "摘要需遵循学术论文摘要模板,包括目的、方法、结果和结论四部分;", "目的:阐述研究目标,包括数据增强技术在中文NLP任务上的具体应用领域和研究动机;", "方法:描述数据增强技术的细节,以及如何在中文NLP任务中实施该技术,包括数据预处理、特征工程和模型训练等步骤;", "结果:列举研究的主要发现,包括数据增强技术对中文NLP任务的影响,以及与基线模型相比的性能提升;", "结论:总结数据增强技术在中文NLP任务上的应用效果,指出其潜在优势和局限性,为未来研究提供方向;"], "levels2": ["数值约束", "数值约束", "模版约束", "主题约束", "自然语言流程背景信息约束", "编号和列表约束", "包含约束"], "category": "trace1.0"} +{"id": "918", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一个R语言的函数,处理向量x,使其按照长度为n的倍数分割,并确保分割后的向量中无NA值。\n向量x的长度必须是n的倍数,否则函数报错,提示\"向量的长度无法整除n\";\n向量x中的所有元素必须是数值型,否则函数报错,提示\"向量中存在非数值元素\";\n函数需处理向量中的NA值,将其从每个子向量中移除;\n函数的输出需采用列表形式,列表中的每个元素为一个长度为length(x)/n的向量;\n列表中没有包含任何NA值的向量;\n如果向量x中原本的元素数量不足以分成n个非空的子向量,函数应返回一个空列表并附带错误信息\"向量元素数量不足以分成n个非空子向量\";\n函数需要有详细的注释说明,确保代码的可读性和可维护性。\n"}], "type": "trace", "description": "创建一个R语言的函数,处理向量x,使其按照长度为n的倍数分割,并确保分割后的向量中无NA值。", "constraints": "向量x的长度必须是n的倍数,否则函数报错,提示\"向量的长度无法整除n\";\n向量x中的所有元素必须是数值型,否则函数报错,提示\"向量中存在非数值元素\";\n函数需处理向量中的NA值,将其从每个子向量中移除;\n函数的输出需采用列表形式,列表中的每个元素为一个长度为length(x)/n的向量;\n列表中没有包含任何NA值的向量;\n如果向量x中原本的元素数量不足以分成n个非空的子向量,函数应返回一个空列表并附带错误信息\"向量元素数量不足以分成n个非空子向量\";\n函数需要有详细的注释说明,确保代码的可读性和可维护性。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["向量x的长度必须是n的倍数,否则函数报错,提示\"向量的长度无法整除n\";", "向量x中的所有元素必须是数值型,否则函数报错,提示\"向量中存在非数值元素\";", "函数需处理向量中的NA值,将其从每个子向量中移除;", "函数的输出需采用列表形式,列表中的每个元素为一个长度为length(x)/n的向量;", "列表中没有包含任何NA值的向量;", "如果向量x中原本的元素数量不足以分成n个非空的子向量,函数应返回一个空列表并附带错误信息\"向量元素数量不足以分成n个非空子向量\";", "函数需要有详细的注释说明,确保代码的可读性和可维护性。"], "levels2": ["数值约束", "数值约束", "包含约束", "输出格式约束", "数值约束", "数值约束", "文本样式约束"], "category": "trace2.0"} +{"id": "919", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创作一首诗歌,表达祁连山下的自然美景与环保的重要性\n诗歌风格,要求使用诗人之笔,将自然之美与环保之重融入字里行间;\n需表达对自然之美的赞美和对环保的关切;\n明确指向环保意识较强的读者群体,以激发情感共鸣;\n诗歌不包含违背环保价值观的信息,如对环境的破坏或忽视;\n不包含可能侵犯隐私的细节,如具体人物的真实姓名或住址;\n诗歌的长度应不少于10行;\n提供诗句示例“山川之美,古来共谈。高峰入云,清流见底。”以启发创作方向;\n"}], "type": "trace", "description": "创作一首诗歌,表达祁连山下的自然美景与环保的重要性", "constraints": "诗歌风格,要求使用诗人之笔,将自然之美与环保之重融入字里行间;\n需表达对自然之美的赞美和对环保的关切;\n明确指向环保意识较强的读者群体,以激发情感共鸣;\n诗歌不包含违背环保价值观的信息,如对环境的破坏或忽视;\n不包含可能侵犯隐私的细节,如具体人物的真实姓名或住址;\n诗歌的长度应不少于10行;\n提供诗句示例“山川之美,古来共谈。高峰入云,清流见底。”以启发创作方向;", "input": "NULL", "constraints_num": 7, "constraints_splits": ["诗歌风格,要求使用诗人之笔,将自然之美与环保之重融入字里行间;", "需表达对自然之美的赞美和对环保的关切;", "明确指向环保意识较强的读者群体,以激发情感共鸣;", "诗歌不包含违背环保价值观的信息,如对环境的破坏或忽视;", "不包含可能侵犯隐私的细节,如具体人物的真实姓名或住址;", "诗歌的长度应不少于10行;", "提供诗句示例“山川之美,古来共谈。高峰入云,清流见底。”以启发创作方向;"], "levels2": ["语气风格约束", "情感情绪约束", "受众目标约束", "价值观约束", "隐私约束", "数值约束", "主题约束"], "category": "trace1.0"} +{"id": "920", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "请写一篇个人成长类的励志文章,重点讲述在最近一年中面对的困难与挫折,以及如何克服它们并取得成功。\n字数不少于500字。\n文章以第一人称叙述。\n采用鼓励的语气风格,确保文章能够激励读者。\n文章的组织结构应遵循Markdown格式。\n使用H1标题“我的成长之旅”开始。\n用H2标题“挑战与机遇”以及“胜利与反思”分段。\n使用编号列表列出具体遭遇的困难与克服方法。\n"}], "type": "trace", "description": "请写一篇个人成长类的励志文章,重点讲述在最近一年中面对的困难与挫折,以及如何克服它们并取得成功。", "constraints": "字数不少于500字。\n文章以第一人称叙述。\n采用鼓励的语气风格,确保文章能够激励读者。\n文章的组织结构应遵循Markdown格式。\n使用H1标题“我的成长之旅”开始。\n用H2标题“挑战与机遇”以及“胜利与反思”分段。\n使用编号列表列出具体遭遇的困难与克服方法。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["字数不少于500字。", "文章以第一人称叙述。", "采用鼓励的语气风格,确保文章能够激励读者。", "文章的组织结构应遵循Markdown格式。", "使用H1标题“我的成长之旅”开始。", "用H2标题“挑战与机遇”以及“胜利与反思”分段。", "使用编号列表列出具体遭遇的困难与克服方法。"], "levels2": ["数值约束", "语气风格约束", "语气风格约束", "输出格式约束", "层次化结构约束", "层次化结构约束", "编号和列表约束"], "category": "trace1.0"} +{"id": "921", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "扮演一个项目经理的角色,使用非攻击性的沟通技巧,劝说一位具有较强自我意识和创新精神的团队成员重新考虑其可能对项目产生负面影响的行动,同时确保沟通方式充分体现了对对方的尊重。\n首先,安排一个私密的会议,使用平和和关心的语气开始对话;\n采用开放式问题,了解他/她的想法,如“你为什么认为这是最好的方案?”;\n在他/她分享观点时,运用共情技巧,表达你对于他/她立场的理解,例如,“我理解你的出发点是为了创新和高效”;\n以非指责的方式提出你的担忧,使用“I”语句,如“我担心这可能会影响我们的项目进度”;\n提供具体的例子和数据来支持你的观点,以增加说服力;\n邀请他/她一起探讨可能的解决方案,强调团队合作的重要性;\n结束对话时,重申你对团队共同目标的承诺,并表达对积极解决分歧的期望;\n在整个沟通过程中,确保语气始终保持专业和尊重,避免使用指责或贬低的语言;\n"}], "type": "trace", "description": "扮演一个项目经理的角色,使用非攻击性的沟通技巧,劝说一位具有较强自我意识和创新精神的团队成员重新考虑其可能对项目产生负面影响的行动,同时确保沟通方式充分体现了对对方的尊重。", "constraints": "首先,安排一个私密的会议,使用平和和关心的语气开始对话;\n采用开放式问题,了解他/她的想法,如“你为什么认为这是最好的方案?”;\n在他/她分享观点时,运用共情技巧,表达你对于他/她立场的理解,例如,“我理解你的出发点是为了创新和高效”;\n以非指责的方式提出你的担忧,使用“I”语句,如“我担心这可能会影响我们的项目进度”;\n提供具体的例子和数据来支持你的观点,以增加说服力;\n邀请他/她一起探讨可能的解决方案,强调团队合作的重要性;\n结束对话时,重申你对团队共同目标的承诺,并表达对积极解决分歧的期望;\n在整个沟通过程中,确保语气始终保持专业和尊重,避免使用指责或贬低的语言;", "input": "NULL", "constraints_num": 8, "constraints_splits": ["首先,安排一个私密的会议,使用平和和关心的语气开始对话;", "采用开放式问题,了解他/她的想法,如“你为什么认为这是最好的方案?”;", "在他/她分享观点时,运用共情技巧,表达你对于他/她立场的理解,例如,“我理解你的出发点是为了创新和高效”;", "以非指责的方式提出你的担忧,使用“I”语句,如“我担心这可能会影响我们的项目进度”;", "提供具体的例子和数据来支持你的观点,以增加说服力;", "邀请他/她一起探讨可能的解决方案,强调团队合作的重要性;", "结束对话时,重申你对团队共同目标的承诺,并表达对积极解决分歧的期望;", "在整个沟通过程中,确保语气始终保持专业和尊重,避免使用指责或贬低的语言;"], "levels2": ["角色扮演约束", "语气风格约束", "情感情绪约束", "语气风格约束", "引用和参考约束", "语气风格约束", "语气风格约束", "语气风格约束"], "category": "trace1.0"} +{"id": "922", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "编写一段Python代码,生成基于阜达周边某年某日12时各区的空气质量指数(AQI)和天气情况量化值结合后的空气污染程度与气象信息的新指标的可视化结果数据。\n代码应按照Python编程规范编写,清晰、可读性强;\n数据要求以JSON格式输出;\n输出的JSON数据中包含各地区名称、空气质量指数、天气情况量化值;\n输出的JSON数据中包含结合空气质量指数和天气情况量化值后形成的新指标;\n天气情况量化值以\"晴 = 0.05,多云 = 0.15,阴 = 0.3,雨 = 0.45,雪 = 0.55\"的浮点数进行;\n输出中天气情况量化值需乘以固定系数;\n所有计算必须在代码中体现;\n各地区的数据总计20条。\n# Inputs:\n阜达周边某年某日12时各区的空气质量指数(AQI)的信息\n"}], "type": "trace", "description": "编写一段Python代码,生成基于阜达周边某年某日12时各区的空气质量指数(AQI)和天气情况量化值结合后的空气污染程度与气象信息的新指标的可视化结果数据。", "constraints": "代码应按照Python编程规范编写,清晰、可读性强;\n数据要求以JSON格式输出;\n输出的JSON数据中包含各地区名称、空气质量指数、天气情况量化值;\n输出的JSON数据中包含结合空气质量指数和天气情况量化值后形成的新指标;\n天气情况量化值以\"晴 = 0.05,多云 = 0.15,阴 = 0.3,雨 = 0.45,雪 = 0.55\"的浮点数进行;\n输出中天气情况量化值需乘以固定系数;\n所有计算必须在代码中体现;\n各地区的数据总计20条。", "input": "阜达周边某年某日12时各区的空气质量指数(AQI)的信息", "constraints_num": 8, "constraints_splits": ["代码应按照Python编程规范编写,清晰、可读性强;", "数据要求以JSON格式输出;", "输出的JSON数据中包含各地区名称、空气质量指数、天气情况量化值;", "输出的JSON数据中包含结合空气质量指数和天气情况量化值后形成的新指标;", "天气情况量化值以\"晴 = 0.05,多云 = 0.15,阴 = 0.3,雨 = 0.45,雪 = 0.55\"的浮点数进行;", "输出中天气情况量化值需乘以固定系数;", "所有计算必须在代码中体现;", "各地区的数据总计20条。"], "levels2": ["语法结构约束", "输出格式约束", "输出格式约束", "输出格式约束", "数值约束", "数值约束", "输出格式约束", "数值约束"], "category": "trace2.0"} +{"id": "923", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一个用于输入并校验身份证号的页面,包括输入框、校验按钮和校验结果展示区域。\n输入框应限制输入长度为18个字符;\n输入框只允许输入数字和X;\n点击校验按钮时,检查输入是否为18位,如果不是则显示错误信息\"身份证号长度应为18位\";\n检查输入的前17位是否都是数字,如果不是则显示错误信息\"身份证号前17位应为数字\";\n检查最后一位校验码是否正确,如果错误则显示\"身份证号校验码错误\";\n如果所有校验通过,则显示\"身份证号验证成功\";\n页面应使用简洁明了的布局;\n页面应遵循无障碍设计准则,确保所有元素可被屏幕阅读器正确读取。\n"}], "type": "trace", "description": "创建一个用于输入并校验身份证号的页面,包括输入框、校验按钮和校验结果展示区域。", "constraints": "输入框应限制输入长度为18个字符;\n输入框只允许输入数字和X;\n点击校验按钮时,检查输入是否为18位,如果不是则显示错误信息\"身份证号长度应为18位\";\n检查输入的前17位是否都是数字,如果不是则显示错误信息\"身份证号前17位应为数字\";\n检查最后一位校验码是否正确,如果错误则显示\"身份证号校验码错误\";\n如果所有校验通过,则显示\"身份证号验证成功\";\n页面应使用简洁明了的布局;\n页面应遵循无障碍设计准则,确保所有元素可被屏幕阅读器正确读取。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["输入框应限制输入长度为18个字符;", "输入框只允许输入数字和X;", "点击校验按钮时,检查输入是否为18位,如果不是则显示错误信息\"身份证号长度应为18位\";", "检查输入的前17位是否都是数字,如果不是则显示错误信息\"身份证号前17位应为数字\";", "检查最后一位校验码是否正确,如果错误则显示\"身份证号校验码错误\";", "如果所有校验通过,则显示\"身份证号验证成功\";", "页面应使用简洁明了的布局;", "页面应遵循无障碍设计准则,确保所有元素可被屏幕阅读器正确读取。"], "levels2": ["数值约束", "文本样式约束", "数值约束", "数值约束", "包含约束", "输出格式约束", "文本样式约束", "价值观约束"], "category": "trace1.0"} +{"id": "924", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "描述在拥挤街道上发现一条弄丢的狗皮带的情景,包括周围环境、狗皮带的特征,推测失主信息,揣测皮带的情感价值,并制定寻找失主或保管狗皮带的行动方案。\n描述狗皮带的颜色、形状、材质和风格;\n根据狗皮带的风格推测失主的性别、年龄、职业;\n揣测狗皮带对失主的情感价值;\n至少列出三种行动方案来寻找失主或保管狗皮带;\n在行动过程中,保持对失主隐私的尊重;\n确保狗皮带的安全存放,直到找到失主;\n整个过程以第三人称视角、客观描述的风格进行撰写;\n字数不少于500字。\n"}], "type": "trace", "description": "描述在拥挤街道上发现一条弄丢的狗皮带的情景,包括周围环境、狗皮带的特征,推测失主信息,揣测皮带的情感价值,并制定寻找失主或保管狗皮带的行动方案。", "constraints": "描述狗皮带的颜色、形状、材质和风格;\n根据狗皮带的风格推测失主的性别、年龄、职业;\n揣测狗皮带对失主的情感价值;\n至少列出三种行动方案来寻找失主或保管狗皮带;\n在行动过程中,保持对失主隐私的尊重;\n确保狗皮带的安全存放,直到找到失主;\n整个过程以第三人称视角、客观描述的风格进行撰写;\n字数不少于500字。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["描述狗皮带的颜色、形状、材质和风格;", "根据狗皮带的风格推测失主的性别、年龄、职业;", "揣测狗皮带对失主的情感价值;", "至少列出三种行动方案来寻找失主或保管狗皮带;", "在行动过程中,保持对失主隐私的尊重;", "确保狗皮带的安全存放,直到找到失主;", "整个过程以第三人称视角、客观描述的风格进行撰写;", "字数不少于500字。"], "levels2": ["包含约束", "包含约束", "情感情绪约束", "数值约束", "隐私约束", "价值观约束", "语气风格约束", "数值约束"], "category": "trace1.0"} +{"id": "925", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "请生成一首描绘年夜饭的诗歌\n字数严格遵循五言或七言绝句或律诗的格式;\n诗歌中必须包含家庭团聚的温馨场景;\n诗歌中必须包含丰盛的年夜饭菜肴;\n诗歌中必须包含对新年的美好祝福;\n诗句表达出浓厚的亲情氛围;\n诗句表达出对未来的美好憧憬;\n确保诗歌内容积极向上;\n传递家庭和睦、团圆幸福的价值观;\n"}], "type": "trace", "description": "请生成一首描绘年夜饭的诗歌", "constraints": "字数严格遵循五言或七言绝句或律诗的格式;\n诗歌中必须包含家庭团聚的温馨场景;\n诗歌中必须包含丰盛的年夜饭菜肴;\n诗歌中必须包含对新年的美好祝福;\n诗句表达出浓厚的亲情氛围;\n诗句表达出对未来的美好憧憬;\n确保诗歌内容积极向上;\n传递家庭和睦、团圆幸福的价值观;", "input": "NULL", "constraints_num": 8, "constraints_splits": ["字数严格遵循五言或七言绝句或律诗的格式;", "诗歌中必须包含家庭团聚的温馨场景;", "诗歌中必须包含丰盛的年夜饭菜肴;", "诗歌中必须包含对新年的美好祝福;", "诗句表达出浓厚的亲情氛围;", "诗句表达出对未来的美好憧憬;", "确保诗歌内容积极向上;", "传递家庭和睦、团圆幸福的价值观;"], "levels2": ["语法结构约束", "包含约束", "包含约束", "包含约束", "情感情绪约束", "情感情绪约束", "情感情绪约束", "价值观约束"], "category": "trace1.0"} +{"id": "926", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "使用Spring编写交易责任链的代码\n代码需遵循Java的编程规范;\n代码以Markdown格式输出;\n在每一部分代码前添加说明性注释,解释该部分代码的功能和作用;\n确保代码的可读性和可维护性;\n使用`/*...*/`或`//`进行注释;\n在类、方法和变量的定义前都要有注释,说明其功能和使用场景;\n代码中应避免使用过时的API;\n确保代码的安全性和效率;\n"}], "type": "trace", "description": "使用Spring编写交易责任链的代码", "constraints": "代码需遵循Java的编程规范;\n代码以Markdown格式输出;\n在每一部分代码前添加说明性注释,解释该部分代码的功能和作用;\n确保代码的可读性和可维护性;\n使用`/*...*/`或`//`进行注释;\n在类、方法和变量的定义前都要有注释,说明其功能和使用场景;\n代码中应避免使用过时的API;\n确保代码的安全性和效率;", "input": "NULL", "constraints_num": 8, "constraints_splits": ["代码需遵循Java的编程规范;", "代码以Markdown格式输出;", "在每一部分代码前添加说明性注释,解释该部分代码的功能和作用;", "确保代码的可读性和可维护性;", "使用`/*...*/`或`//`进行注释;", "在类、方法和变量的定义前都要有注释,说明其功能和使用场景;", "代码中应避免使用过时的API;", "确保代码的安全性和效率;"], "levels2": ["语法结构约束", "输出格式约束", "文本样式约束", "语言特征约束", "文本样式约束", "文本样式约束", "排除约束", "价值观约束"], "category": "trace1.0"} +{"id": "927", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "写一篇关于全球变暖背后原因与影响的论文\n论文格式要求为APA引用格式;\n论文需首先介绍全球变暖的概念、历史背景和现状;\n语气应正式严谨,避免使用过多修辞手法,确保信息准确无误;\n在分析造成全球变暖的各种因素时,需要引用至少5篇权威的学术文献,文献来源需权威且具有信服力;\n在描述全球变暖对环境、经济、社会等领域的影响时,需重点突出自然语言流程背景信息,例如温度变化、极端天气事件、海平面上升等现象;\n需关注不同地区在全球变暖面前的不同表现和应对策略,特别是发展中国家和发达国家的差异;\n论文应包含编号列表总结全球变暖的主要原因和影响;\n最后,提出切实可行的解决全球变暖的建议和措施,强调国际合作和政策制定的重要性;\n"}], "type": "trace", "description": "写一篇关于全球变暖背后原因与影响的论文", "constraints": "论文格式要求为APA引用格式;\n论文需首先介绍全球变暖的概念、历史背景和现状;\n语气应正式严谨,避免使用过多修辞手法,确保信息准确无误;\n在分析造成全球变暖的各种因素时,需要引用至少5篇权威的学术文献,文献来源需权威且具有信服力;\n在描述全球变暖对环境、经济、社会等领域的影响时,需重点突出自然语言流程背景信息,例如温度变化、极端天气事件、海平面上升等现象;\n需关注不同地区在全球变暖面前的不同表现和应对策略,特别是发展中国家和发达国家的差异;\n论文应包含编号列表总结全球变暖的主要原因和影响;\n最后,提出切实可行的解决全球变暖的建议和措施,强调国际合作和政策制定的重要性;", "input": "NULL", "constraints_num": 8, "constraints_splits": ["论文格式要求为APA引用格式;", "论文需首先介绍全球变暖的概念、历史背景和现状;", "语气应正式严谨,避免使用过多修辞手法,确保信息准确无误;", "在分析造成全球变暖的各种因素时,需要引用至少5篇权威的学术文献,文献来源需权威且具有信服力;", "在描述全球变暖对环境、经济、社会等领域的影响时,需重点突出自然语言流程背景信息,例如温度变化、极端天气事件、海平面上升等现象;", "需关注不同地区在全球变暖面前的不同表现和应对策略,特别是发展中国家和发达国家的差异;", "论文应包含编号列表总结全球变暖的主要原因和影响;", "最后,提出切实可行的解决全球变暖的建议和措施,强调国际合作和政策制定的重要性;"], "levels2": ["引用和参考约束", "包含约束", "语气风格约束", "引用和参考约束", "自然语言流程背景信息约束", "主题约束", "编号和列表约束", "主题约束"], "category": "trace1.0"} +{"id": "928", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创造一段有趣的情境对话,场景设定为父母陪伴孩子在夜晚入睡。\n对话应至少包含10个回合,每个回合至少3句对话;\n父母的角色需表现为既慈爱又有趣;\n父母通过幽默的方式回答孩子的各种奇思妙想;\n对话中传达出对孩子的深情厚爱;\n对话应以温馨的结束语收尾;\n对话让孩子感受到家的温暖和父母的爱;\n整个对话营造出一种温馨、幽默且充满爱的氛围;\n对话鼓励父母在日常生活中与孩子建立更深层次的情感连接。\n"}], "type": "trace", "description": "创造一段有趣的情境对话,场景设定为父母陪伴孩子在夜晚入睡。", "constraints": "对话应至少包含10个回合,每个回合至少3句对话;\n父母的角色需表现为既慈爱又有趣;\n父母通过幽默的方式回答孩子的各种奇思妙想;\n对话中传达出对孩子的深情厚爱;\n对话应以温馨的结束语收尾;\n对话让孩子感受到家的温暖和父母的爱;\n整个对话营造出一种温馨、幽默且充满爱的氛围;\n对话鼓励父母在日常生活中与孩子建立更深层次的情感连接。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["对话应至少包含10个回合,每个回合至少3句对话;", "父母的角色需表现为既慈爱又有趣;", "父母通过幽默的方式回答孩子的各种奇思妙想;", "对话中传达出对孩子的深情厚爱;", "对话应以温馨的结束语收尾;", "对话让孩子感受到家的温暖和父母的爱;", "整个对话营造出一种温馨、幽默且充满爱的氛围;", "对话鼓励父母在日常生活中与孩子建立更深层次的情感连接。"], "levels2": ["数值约束", "语气风格约束", "语气风格约束", "情感情绪约束", "语气风格约束", "情感情绪约束", "情感情绪约束", "价值观约束"], "category": "trace1.0"} +{"id": "929", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "针对React项目中缺少第三方库的问题,提供解决方案。\n解决方案需遵循特定的步骤数,不少于4步,不多于6步;\n解决方案需以Markdown格式描述;\n解决方案中需以表格形式列出可能遇到的错误代码与对应的解决办法;\n内容需精确且专业,便于开发人员理解与实施;\n确保所有依赖更新至最新版本;\n确认`webpack.config.js`中的`resolve.alias`正确指向`node_modules`目录;\n清除`node_modules`目录并重新安装所有依赖作为最后尝试的步骤之一;\n运行`npm run build`检查打包结果作为最后一步。\n"}], "type": "trace", "description": "针对React项目中缺少第三方库的问题,提供解决方案。", "constraints": "解决方案需遵循特定的步骤数,不少于4步,不多于6步;\n解决方案需以Markdown格式描述;\n解决方案中需以表格形式列出可能遇到的错误代码与对应的解决办法;\n内容需精确且专业,便于开发人员理解与实施;\n确保所有依赖更新至最新版本;\n确认`webpack.config.js`中的`resolve.alias`正确指向`node_modules`目录;\n清除`node_modules`目录并重新安装所有依赖作为最后尝试的步骤之一;\n运行`npm run build`检查打包结果作为最后一步。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["解决方案需遵循特定的步骤数,不少于4步,不多于6步;", "解决方案需以Markdown格式描述;", "解决方案中需以表格形式列出可能遇到的错误代码与对应的解决办法;", "内容需精确且专业,便于开发人员理解与实施;", "确保所有依赖更新至最新版本;", "确认`webpack.config.js`中的`resolve.alias`正确指向`node_modules`目录;", "清除`node_modules`目录并重新安装所有依赖作为最后尝试的步骤之一;", "运行`npm run build`检查打包结果作为最后一步。"], "levels2": ["数值约束", "输出格式约束", "输出格式约束", "语气风格约束", "包含约束", "包含约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束"], "category": "trace1.0"} +{"id": "930", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "请帮我写一篇关于如何在内心矛盾和困惑中,探索人生意义和价值的文章,采用正式和哲学的语气风格。\n文章需要包含引言、问题分析、解决方案、结论四个部分;\n总字数不少于1500字;\n引言部分要吸引读者;\n问题分析部分要详细阐述内心的矛盾和困惑;\n解决方案部分要给出实际的建议和方法;\n结论部分要总结全文,给出对人生意义和价值的深刻见解;\n文章中需要使用至少三个哲学家的名言或理论来支持观点;\n在引用时遵循APA格式。\n"}], "type": "trace", "description": "请帮我写一篇关于如何在内心矛盾和困惑中,探索人生意义和价值的文章,采用正式和哲学的语气风格。", "constraints": "文章需要包含引言、问题分析、解决方案、结论四个部分;\n总字数不少于1500字;\n引言部分要吸引读者;\n问题分析部分要详细阐述内心的矛盾和困惑;\n解决方案部分要给出实际的建议和方法;\n结论部分要总结全文,给出对人生意义和价值的深刻见解;\n文章中需要使用至少三个哲学家的名言或理论来支持观点;\n在引用时遵循APA格式。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["文章需要包含引言、问题分析、解决方案、结论四个部分;", "总字数不少于1500字;", "引言部分要吸引读者;", "问题分析部分要详细阐述内心的矛盾和困惑;", "解决方案部分要给出实际的建议和方法;", "结论部分要总结全文,给出对人生意义和价值的深刻见解;", "文章中需要使用至少三个哲学家的名言或理论来支持观点;", "在引用时遵循APA格式。"], "levels2": ["层次化结构约束", "数值约束", "语气风格约束", "包含约束", "包含约束", "层次化结构约束", "引用和参考约束", "引用和参考约束"], "category": "trace2.0"} +{"id": "931", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以历史学家的身份,概述卡夫卡的大学生涯\n概述中需包含1906年6月卡夫卡成功通过大学最终考试的信息,以及在备考过程中遇到的挑战和朋友布罗特的帮助;\n概述中需包含卡夫卡从五位考官中获得了三位的“可”,勉强通过考试的信息;\n概述中需包含4月份开始,卡夫卡在律师里夏德·莱维(Richard Levy)的办公室开始无薪实习的信息;\n概述中需包含同年10月,卡夫卡进入布拉格地方法院,开始为期一年的司法培训的信息;\n概述中需包含这年夏天,卡夫卡利用长假期开始创作《乡村婚礼准备》的信息;\n概述中需包含1904年起卡夫卡已尝试创作《一场战斗的记录》但最终都未完成就被放弃的信息;\n概述中需回答问题:卡夫卡被哪位律师作为无薪实习生雇用的答案为里夏德·莱维(Richard Levy);\n概述的字数限制为234字;\n"}], "type": "trace", "description": "以历史学家的身份,概述卡夫卡的大学生涯", "constraints": "概述中需包含1906年6月卡夫卡成功通过大学最终考试的信息,以及在备考过程中遇到的挑战和朋友布罗特的帮助;\n概述中需包含卡夫卡从五位考官中获得了三位的“可”,勉强通过考试的信息;\n概述中需包含4月份开始,卡夫卡在律师里夏德·莱维(Richard Levy)的办公室开始无薪实习的信息;\n概述中需包含同年10月,卡夫卡进入布拉格地方法院,开始为期一年的司法培训的信息;\n概述中需包含这年夏天,卡夫卡利用长假期开始创作《乡村婚礼准备》的信息;\n概述中需包含1904年起卡夫卡已尝试创作《一场战斗的记录》但最终都未完成就被放弃的信息;\n概述中需回答问题:卡夫卡被哪位律师作为无薪实习生雇用的答案为里夏德·莱维(Richard Levy);\n概述的字数限制为234字;", "input": "NULL", "constraints_num": 8, "constraints_splits": ["概述中需包含1906年6月卡夫卡成功通过大学最终考试的信息,以及在备考过程中遇到的挑战和朋友布罗特的帮助;", "概述中需包含卡夫卡从五位考官中获得了三位的“可”,勉强通过考试的信息;", "概述中需包含4月份开始,卡夫卡在律师里夏德·莱维(Richard Levy)的办公室开始无薪实习的信息;", "概述中需包含同年10月,卡夫卡进入布拉格地方法院,开始为期一年的司法培训的信息;", "概述中需包含这年夏天,卡夫卡利用长假期开始创作《乡村婚礼准备》的信息;", "概述中需包含1904年起卡夫卡已尝试创作《一场战斗的记录》但最终都未完成就被放弃的信息;", "概述中需回答问题:卡夫卡被哪位律师作为无薪实习生雇用的答案为里夏德·莱维(Richard Levy);", "概述的字数限制为234字;"], "levels2": ["包含约束", "包含约束", "包含约束", "包含约束", "包含约束", "包含约束", "包含约束", "数值约束"], "category": "trace1.0"} +{"id": "932", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以一名专业风景画家的身份,采用叙述和描述性语气,详细描述日常的工作流程。\n描述寻找创作灵感的过程,包括在自然中观察和体验的特别时刻或地点,以及这些体验转化为画作的方法;\n列出并解释使用了哪些工具和材料来制作油画,以及选择这些工具和材料的原因;\n描述处理和展示作品的流程,包括作品的后期处理技术(如上光、画框选择),以及与画廊或客户沟通展示作品的过程;\n分享在创建作品中所面临的挑战,如技术难题或创意瓶颈,以及克服这些挑战的方法;\n详细描述画风景画的技巧和方法,包括对光影、色彩和构图的理解和应用;\n分析在创作过程中对孤独感的理解,以及它如何影响个人的创作和艺术视野;\n确保内容中包含个人情感体验的描述;\n以层次化结构和编号列表的形式组织内容,便于特定受众(如艺术学生和爱好者)的理解和学习。\n"}], "type": "trace", "description": "以一名专业风景画家的身份,采用叙述和描述性语气,详细描述日常的工作流程。", "constraints": "描述寻找创作灵感的过程,包括在自然中观察和体验的特别时刻或地点,以及这些体验转化为画作的方法;\n列出并解释使用了哪些工具和材料来制作油画,以及选择这些工具和材料的原因;\n描述处理和展示作品的流程,包括作品的后期处理技术(如上光、画框选择),以及与画廊或客户沟通展示作品的过程;\n分享在创建作品中所面临的挑战,如技术难题或创意瓶颈,以及克服这些挑战的方法;\n详细描述画风景画的技巧和方法,包括对光影、色彩和构图的理解和应用;\n分析在创作过程中对孤独感的理解,以及它如何影响个人的创作和艺术视野;\n确保内容中包含个人情感体验的描述;\n以层次化结构和编号列表的形式组织内容,便于特定受众(如艺术学生和爱好者)的理解和学习。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["描述寻找创作灵感的过程,包括在自然中观察和体验的特别时刻或地点,以及这些体验转化为画作的方法;", "列出并解释使用了哪些工具和材料来制作油画,以及选择这些工具和材料的原因;", "描述处理和展示作品的流程,包括作品的后期处理技术(如上光、画框选择),以及与画廊或客户沟通展示作品的过程;", "分享在创建作品中所面临的挑战,如技术难题或创意瓶颈,以及克服这些挑战的方法;", "详细描述画风景画的技巧和方法,包括对光影、色彩和构图的理解和应用;", "分析在创作过程中对孤独感的理解,以及它如何影响个人的创作和艺术视野;", "确保内容中包含个人情感体验的描述;", "以层次化结构和编号列表的形式组织内容,便于特定受众(如艺术学生和爱好者)的理解和学习。"], "levels2": ["包含约束", "包含约束", "自然语言流程背景信息约束", "主题约束", "主题约束", "主题约束", "包含约束", "层次化结构约束"], "category": "trace1.0"} +{"id": "933", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "对于企业会计来说,需理解并遵循业务流程来使用电子发票系统。\n会计需在电子发票平台上注册企业信息,然后上传企业税务登记证扫描件;\n对于每一笔交易,会计需在平台上申请开具电子发票,填写发票信息并提交审核;\n审核通过后,电子发票将自动发送至企业邮箱,同时会计需在系统中下载并存档电子发票;\n会计需定期在平台上查询发票状态,若有问题,需及时与相关部门联系解决;\n在使用电子发票系统的过程中,会计需特别注意发票的安全性和合规性;\n确保每一笔交易的发票信息真实、准确、完整;\n防止发票信息泄露或篡改;\n会计需确保电子发票系统的使用符合国家税务规定,避免因违规操作而受到税务机关的处罚。\n# Inputs:\n相关部门为了推进电子发票,已经推出许多有关电子发票接收和监管的业务流程和系统,使企业可以方便对发票进行管理。\n"}], "type": "trace", "description": "对于企业会计来说,需理解并遵循业务流程来使用电子发票系统。", "constraints": "会计需在电子发票平台上注册企业信息,然后上传企业税务登记证扫描件;\n对于每一笔交易,会计需在平台上申请开具电子发票,填写发票信息并提交审核;\n审核通过后,电子发票将自动发送至企业邮箱,同时会计需在系统中下载并存档电子发票;\n会计需定期在平台上查询发票状态,若有问题,需及时与相关部门联系解决;\n在使用电子发票系统的过程中,会计需特别注意发票的安全性和合规性;\n确保每一笔交易的发票信息真实、准确、完整;\n防止发票信息泄露或篡改;\n会计需确保电子发票系统的使用符合国家税务规定,避免因违规操作而受到税务机关的处罚。", "input": "相关部门为了推进电子发票,已经推出许多有关电子发票接收和监管的业务流程和系统,使企业可以方便对发票进行管理。", "constraints_num": 8, "constraints_splits": ["会计需在电子发票平台上注册企业信息,然后上传企业税务登记证扫描件;", "对于每一笔交易,会计需在平台上申请开具电子发票,填写发票信息并提交审核;", "审核通过后,电子发票将自动发送至企业邮箱,同时会计需在系统中下载并存档电子发票;", "会计需定期在平台上查询发票状态,若有问题,需及时与相关部门联系解决;", "在使用电子发票系统的过程中,会计需特别注意发票的安全性和合规性;", "确保每一笔交易的发票信息真实、准确、完整;", "防止发票信息泄露或篡改;", "会计需确保电子发票系统的使用符合国家税务规定,避免因违规操作而受到税务机关的处罚。"], "levels2": ["自然语言流程背景信息约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "价值观约束", "价值观约束", "隐私约束", "主题约束"], "category": "trace2.0"} +{"id": "934", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以一个可持续时尚设计师的角色,指出为什么当前市场对可持续时尚的需求量上升,并简要说明设计师如何满足这种需求。\n设计师应当关注环保材料的使用;\n设计师需要减少生产过程中的碳排放;\n设计师应当提高产品的可回收性;\n目标受众为环保意识强的消费者;\n消费者更倾向于购买那些对环境影响小的产品;\n设计师可以使用有机棉、再生聚酯等材料;\n设计中应加入可拆卸、可替换的部件,以延长产品的使用寿命;\n设计风格简洁大方,适应多种场合,减少消费者购买多个包的需求。\n"}], "type": "trace", "description": "以一个可持续时尚设计师的角色,指出为什么当前市场对可持续时尚的需求量上升,并简要说明设计师如何满足这种需求。", "constraints": "设计师应当关注环保材料的使用;\n设计师需要减少生产过程中的碳排放;\n设计师应当提高产品的可回收性;\n目标受众为环保意识强的消费者;\n消费者更倾向于购买那些对环境影响小的产品;\n设计师可以使用有机棉、再生聚酯等材料;\n设计中应加入可拆卸、可替换的部件,以延长产品的使用寿命;\n设计风格简洁大方,适应多种场合,减少消费者购买多个包的需求。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["设计师应当关注环保材料的使用;", "设计师需要减少生产过程中的碳排放;", "设计师应当提高产品的可回收性;", "目标受众为环保意识强的消费者;", "消费者更倾向于购买那些对环境影响小的产品;", "设计师可以使用有机棉、再生聚酯等材料;", "设计中应加入可拆卸、可替换的部件,以延长产品的使用寿命;", "设计风格简洁大方,适应多种场合,减少消费者购买多个包的需求。"], "levels2": ["主题约束", "主题约束", "主题约束", "受众目标约束", "主题约束", "包含约束", "包含约束", "语气风格约束"], "category": "trace1.0"} +{"id": "935", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "解决Mybatis-Plus在插入记录后无法获取到主键id的问题\n实体类中的主键字段使用了`@TableId`注解,并且类型正确(如`Long`、`String`等)。\n`Mybatis-Plus`的配置文件中`autoSchema`设置为`true`,如果是`false`,则手动配置`keyProperty`为实体类的主键字段名。\n使用`insert`方法插入数据后,必须调用`getById`方法获取刚插入的记录,并从返回的对象中读取主键id。\n使用批量插入`insertBatch`时,所有实体对象的主键字段都正确设置,并在插入后遍历返回的List,获取每个对象的主键id。\n如果数据库主键是自增类型,mybatis-plus全局配置中的`globalConfig`->`idType`应设置为`ID_WORKER_STR`或其他适合的策略。\n在插入操作后,希望Mybatis-Plus自动填充主键id,需启用自动填充功能,确保`@TableField(fill = FieldFill.INSERT)`设置在主键字段上。\n检查代码中是否有逻辑错误或配置遗漏,确保所有步骤都正确无误。\n解决方案输出格式为Markdown列表形式。\n"}], "type": "trace", "description": "解决Mybatis-Plus在插入记录后无法获取到主键id的问题", "constraints": "实体类中的主键字段使用了`@TableId`注解,并且类型正确(如`Long`、`String`等)。\n`Mybatis-Plus`的配置文件中`autoSchema`设置为`true`,如果是`false`,则手动配置`keyProperty`为实体类的主键字段名。\n使用`insert`方法插入数据后,必须调用`getById`方法获取刚插入的记录,并从返回的对象中读取主键id。\n使用批量插入`insertBatch`时,所有实体对象的主键字段都正确设置,并在插入后遍历返回的List,获取每个对象的主键id。\n如果数据库主键是自增类型,mybatis-plus全局配置中的`globalConfig`->`idType`应设置为`ID_WORKER_STR`或其他适合的策略。\n在插入操作后,希望Mybatis-Plus自动填充主键id,需启用自动填充功能,确保`@TableField(fill = FieldFill.INSERT)`设置在主键字段上。\n检查代码中是否有逻辑错误或配置遗漏,确保所有步骤都正确无误。\n解决方案输出格式为Markdown列表形式。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["实体类中的主键字段使用了`@TableId`注解,并且类型正确(如`Long`、`String`等)。", "`Mybatis-Plus`的配置文件中`autoSchema`设置为`true`,如果是`false`,则手动配置`keyProperty`为实体类的主键字段名。", "使用`insert`方法插入数据后,必须调用`getById`方法获取刚插入的记录,并从返回的对象中读取主键id。", "使用批量插入`insertBatch`时,所有实体对象的主键字段都正确设置,并在插入后遍历返回的List,获取每个对象的主键id。", "如果数据库主键是自增类型,mybatis-plus全局配置中的`globalConfig`->`idType`应设置为`ID_WORKER_STR`或其他适合的策略。", "在插入操作后,希望Mybatis-Plus自动填充主键id,需启用自动填充功能,确保`@TableField(fill = FieldFill.INSERT)`设置在主键字段上。", "检查代码中是否有逻辑错误或配置遗漏,确保所有步骤都正确无误。", "解决方案输出格式为Markdown列表形式。"], "levels2": ["包含约束", "包含约束", "先验条件约束", "包含约束", "包含约束", "包含约束", "数值约束", "输出格式约束"], "category": "trace1.0"} +{"id": "936", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以环境科学家的角色,使用正式的科学报告格式,详细比较森林和海洋的植物生长方式有什么异同?\n报告应按照示例格式撰写,包括标题、引言、方法、结果、讨论、结论、参考文献和附录;\n在讨论和结论部分深入分析森林与海洋植物生长方式的差异及其生态意义;\n确保报告遵循示例格式,其中包括使用表格或图表来辅助展示数据;\n描述实验设计和数据收集过程,包括所使用的样本、工具和分析方法;\n提供研究发现,解释结果的意义,探讨可能的影响因素,并与其他研究进行比较;\n列出所有引用的文献,遵循APA或MLA格式;\n包含任何额外的数据或信息,如原始数据表或详细计算过程。\n"}], "type": "trace", "description": "以环境科学家的角色,使用正式的科学报告格式,详细比较森林和海洋的植物生长方式有什么异同?", "constraints": "报告应按照示例格式撰写,包括标题、引言、方法、结果、讨论、结论、参考文献和附录;\n在讨论和结论部分深入分析森林与海洋植物生长方式的差异及其生态意义;\n确保报告遵循示例格式,其中包括使用表格或图表来辅助展示数据;\n描述实验设计和数据收集过程,包括所使用的样本、工具和分析方法;\n提供研究发现,解释结果的意义,探讨可能的影响因素,并与其他研究进行比较;\n列出所有引用的文献,遵循APA或MLA格式;\n包含任何额外的数据或信息,如原始数据表或详细计算过程。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["报告应按照示例格式撰写,包括标题、引言、方法、结果、讨论、结论、参考文献和附录;", "在讨论和结论部分深入分析森林与海洋植物生长方式的差异及其生态意义;", "确保报告遵循示例格式,其中包括使用表格或图表来辅助展示数据;", "描述实验设计和数据收集过程,包括所使用的样本、工具和分析方法;", "提供研究发现,解释结果的意义,探讨可能的影响因素,并与其他研究进行比较;", "列出所有引用的文献,遵循APA或MLA格式;", "包含任何额外的数据或信息,如原始数据表或详细计算过程。"], "levels2": ["模版约束", "主题约束", "输出格式约束", "包含约束", "包含约束", "引用和参考约束", "包含约束"], "category": "trace2.0"} +{"id": "937", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "计算Michael有多少只兔子,已知他有36只宠物,其中25%是狗,50%是猫,其余是兔子。\n确定Michael宠物的总数,即D + C + B = 36;\n计算出狗的数量,25%的36是D,即D = 0.25 * 36;\n计算出猫的数量,50%的36是C,即C = 0.50 * 36;\n确定剩余的兔子数量,即B = 36 - (D + C);\n验证计算结果,D + C + B应等于36;\n要求指令应围绕计算和数学问题解决;\n要求对D、C和B的值进行精确计算;\n要求按照特定的数学步骤进行计算,且计算结果必须符合宠物总数的条件。\n# Inputs:\nMichael有36只宠物。其中25%是狗,50%是猫,其余的是兔子。\n"}], "type": "trace", "description": "计算Michael有多少只兔子,已知他有36只宠物,其中25%是狗,50%是猫,其余是兔子。", "constraints": "确定Michael宠物的总数,即D + C + B = 36;\n计算出狗的数量,25%的36是D,即D = 0.25 * 36;\n计算出猫的数量,50%的36是C,即C = 0.50 * 36;\n确定剩余的兔子数量,即B = 36 - (D + C);\n验证计算结果,D + C + B应等于36;\n要求指令应围绕计算和数学问题解决;\n要求对D、C和B的值进行精确计算;\n要求按照特定的数学步骤进行计算,且计算结果必须符合宠物总数的条件。", "input": "Michael有36只宠物。其中25%是狗,50%是猫,其余的是兔子。", "constraints_num": 8, "constraints_splits": ["确定Michael宠物的总数,即D + C + B = 36;", "计算出狗的数量,25%的36是D,即D = 0.25 * 36;", "计算出猫的数量,50%的36是C,即C = 0.50 * 36;", "确定剩余的兔子数量,即B = 36 - (D + C);", "验证计算结果,D + C + B应等于36;", "要求指令应围绕计算和数学问题解决;", "要求对D、C和B的值进行精确计算;", "要求按照特定的数学步骤进行计算,且计算结果必须符合宠物总数的条件。"], "levels2": ["数值约束", "数值约束", "数值约束", "数值约束", "数值约束", "主题约束", "数值约束", "先验条件约束"], "category": "trace1.0"} +{"id": "938", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "设计一个能够高效计算两个字符串最长公共子序列的算法\n必须使用动态规划策略;\n算法的时间复杂度不超过O(mn),其中m和n分别是两个字符串的长度;\n空间复杂度不超过O(min(m, n));\n在算法的实现过程中,可以考虑使用不同的数据结构和算法策略;\n对算法的时间复杂度和空间复杂度进行分析和优化;\n针对不同的应用场景,设计适合的输入和输出格式;\n输出格式必须遵循JSON标准,例如输出结果应该包括最长公共子序列的长度和具体序列;\n必须提供至少三个示例测试用例,包括但不限于空字符串、相同字符串和完全不同的字符串;\n"}], "type": "trace", "description": "设计一个能够高效计算两个字符串最长公共子序列的算法", "constraints": "必须使用动态规划策略;\n算法的时间复杂度不超过O(mn),其中m和n分别是两个字符串的长度;\n空间复杂度不超过O(min(m, n));\n在算法的实现过程中,可以考虑使用不同的数据结构和算法策略;\n对算法的时间复杂度和空间复杂度进行分析和优化;\n针对不同的应用场景,设计适合的输入和输出格式;\n输出格式必须遵循JSON标准,例如输出结果应该包括最长公共子序列的长度和具体序列;\n必须提供至少三个示例测试用例,包括但不限于空字符串、相同字符串和完全不同的字符串;", "input": "NULL", "constraints_num": 8, "constraints_splits": ["必须使用动态规划策略;", "算法的时间复杂度不超过O(mn),其中m和n分别是两个字符串的长度;", "空间复杂度不超过O(min(m, n));", "在算法的实现过程中,可以考虑使用不同的数据结构和算法策略;", "对算法的时间复杂度和空间复杂度进行分析和优化;", "针对不同的应用场景,设计适合的输入和输出格式;", "输出格式必须遵循JSON标准,例如输出结果应该包括最长公共子序列的长度和具体序列;", "必须提供至少三个示例测试用例,包括但不限于空字符串、相同字符串和完全不同的字符串;"], "levels2": ["包含约束", "数值约束", "数值约束", "主题约束", "主题约束", "输出格式约束", "输出格式约束", "数值约束"], "category": "trace1.0"} +{"id": "939", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以数据科学家的身份,使用UCI机器学习库中的“威斯康星乳腺癌(诊断)数据集”训练逻辑回归模型,并进行相关数据预处理、模型训练、评估及结果输出。\n实现一个定量估价阶段作为输入规范化的一种方法,特征包括肿瘤的质地、面积和平滑度;\n确保模型的准确率需达到或超过90%;\n使用至少80%的数据进行训练;\n在进行以上操作前需确保数据的完整性和准确性;\n预处理阶段应使用适当的方法处理缺失值和异常值;\n模型训练阶段应使用交叉验证等方法进行模型选择和调参;\n模型评估阶段应使用多种指标进行综合评估;\n以表格的形式输出模型评估的结果,包括精确度、召回率、F1分数等指标;\n# Inputs:\nUCI机器学习库中的“威斯康星乳腺癌(诊断)数据集”\n"}], "type": "trace", "description": "以数据科学家的身份,使用UCI机器学习库中的“威斯康星乳腺癌(诊断)数据集”训练逻辑回归模型,并进行相关数据预处理、模型训练、评估及结果输出。", "constraints": "实现一个定量估价阶段作为输入规范化的一种方法,特征包括肿瘤的质地、面积和平滑度;\n确保模型的准确率需达到或超过90%;\n使用至少80%的数据进行训练;\n在进行以上操作前需确保数据的完整性和准确性;\n预处理阶段应使用适当的方法处理缺失值和异常值;\n模型训练阶段应使用交叉验证等方法进行模型选择和调参;\n模型评估阶段应使用多种指标进行综合评估;\n以表格的形式输出模型评估的结果,包括精确度、召回率、F1分数等指标;", "input": "UCI机器学习库中的“威斯康星乳腺癌(诊断)数据集”", "constraints_num": 8, "constraints_splits": ["实现一个定量估价阶段作为输入规范化的一种方法,特征包括肿瘤的质地、面积和平滑度;", "确保模型的准确率需达到或超过90%;", "使用至少80%的数据进行训练;", "在进行以上操作前需确保数据的完整性和准确性;", "预处理阶段应使用适当的方法处理缺失值和异常值;", "模型训练阶段应使用交叉验证等方法进行模型选择和调参;", "模型评估阶段应使用多种指标进行综合评估;", "以表格的形式输出模型评估的结果,包括精确度、召回率、F1分数等指标;"], "levels2": ["包含约束", "数值约束", "数值约束", "先验条件约束", "包含约束", "包含约束", "数值约束", "输出格式约束"], "category": "trace2.0"} +{"id": "940", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "计算诺亚在第十五天拥有的宠物猫总数。\n诺亚在连续的第一天和第二天,领养宠物的数量等于前一天的数量;\n在连续的第二天和第三天,领养的数量变成了前一天的三倍;\n在连续第三天和第四天,领养的数量翻了一倍;\n从第五天开始至第六天,领养的数量再次翻倍;\n从第六天到第七天,如果动物数量达到至少10只,他会将数量减半送至朋友家,但若数量少于10只则不送;\n这个规则在接下来的日子里也适用;\n计算过程中的每一步都进行详细的记录,包括每一天结束时的宠物猫数量;\n整个计算过程不得少于300字的描述。\n# Inputs:\n诺亚在第一天领养了一只宠物猫科动物,第二天养了两只,第三天是六只,第四天十二只。\n"}], "type": "trace", "description": "计算诺亚在第十五天拥有的宠物猫总数。", "constraints": "诺亚在连续的第一天和第二天,领养宠物的数量等于前一天的数量;\n在连续的第二天和第三天,领养的数量变成了前一天的三倍;\n在连续第三天和第四天,领养的数量翻了一倍;\n从第五天开始至第六天,领养的数量再次翻倍;\n从第六天到第七天,如果动物数量达到至少10只,他会将数量减半送至朋友家,但若数量少于10只则不送;\n这个规则在接下来的日子里也适用;\n计算过程中的每一步都进行详细的记录,包括每一天结束时的宠物猫数量;\n整个计算过程不得少于300字的描述。", "input": "诺亚在第一天领养了一只宠物猫科动物,第二天养了两只,第三天是六只,第四天十二只。", "constraints_num": 8, "constraints_splits": ["诺亚在连续的第一天和第二天,领养宠物的数量等于前一天的数量;", "在连续的第二天和第三天,领养的数量变成了前一天的三倍;", "在连续第三天和第四天,领养的数量翻了一倍;", "从第五天开始至第六天,领养的数量再次翻倍;", "从第六天到第七天,如果动物数量达到至少10只,他会将数量减半送至朋友家,但若数量少于10只则不送;", "这个规则在接下来的日子里也适用;", "计算过程中的每一步都进行详细的记录,包括每一天结束时的宠物猫数量;", "整个计算过程不得少于300字的描述。"], "levels2": ["数值约束", "数值约束", "数值约束", "数值约束", "数值约束", "先验条件约束", "数值约束", "数值约束"], "category": "trace2.0"} +{"id": "941", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "提供一份适合初中一年级学生的阅读书单\n书单应包含至少10本书,其中科普读物不少于5本,文学作品不少于5本,数学或科学相关的解谜或故事书籍不少于2本;\n所有书籍应适合12岁至14岁年龄段的儿童阅读,且能有效培养他们的学习兴趣和提高阅读能力;\n科普读物应包括地球科学、生命科学、物理、化学和天文学等领域的书籍;\n文学作品应包括古今中外的经典小说、诗歌和戏剧,以展现多样化的文学风格;\n数学或科学相关的解谜或故事书籍应包含有趣的数学问题、科学实验或与科技发展相关的历史故事;\n书单中每本书的简介不得超过100字;\n书单中每本书应包含书籍的封面图片和出版社信息;\n所有书籍选择需考虑到学生的认知水平和兴趣爱好,确保书单既能激发学生的好奇心,又能扩展他们的知识视野。\n"}], "type": "trace", "description": "提供一份适合初中一年级学生的阅读书单", "constraints": "书单应包含至少10本书,其中科普读物不少于5本,文学作品不少于5本,数学或科学相关的解谜或故事书籍不少于2本;\n所有书籍应适合12岁至14岁年龄段的儿童阅读,且能有效培养他们的学习兴趣和提高阅读能力;\n科普读物应包括地球科学、生命科学、物理、化学和天文学等领域的书籍;\n文学作品应包括古今中外的经典小说、诗歌和戏剧,以展现多样化的文学风格;\n数学或科学相关的解谜或故事书籍应包含有趣的数学问题、科学实验或与科技发展相关的历史故事;\n书单中每本书的简介不得超过100字;\n书单中每本书应包含书籍的封面图片和出版社信息;\n所有书籍选择需考虑到学生的认知水平和兴趣爱好,确保书单既能激发学生的好奇心,又能扩展他们的知识视野。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["书单应包含至少10本书,其中科普读物不少于5本,文学作品不少于5本,数学或科学相关的解谜或故事书籍不少于2本;", "所有书籍应适合12岁至14岁年龄段的儿童阅读,且能有效培养他们的学习兴趣和提高阅读能力;", "科普读物应包括地球科学、生命科学、物理、化学和天文学等领域的书籍;", "文学作品应包括古今中外的经典小说、诗歌和戏剧,以展现多样化的文学风格;", "数学或科学相关的解谜或故事书籍应包含有趣的数学问题、科学实验或与科技发展相关的历史故事;", "书单中每本书的简介不得超过100字;", "书单中每本书应包含书籍的封面图片和出版社信息;", "所有书籍选择需考虑到学生的认知水平和兴趣爱好,确保书单既能激发学生的好奇心,又能扩展他们的知识视野。"], "levels2": ["数值约束", "受众目标约束", "主题约束", "主题约束", "主题约束", "数值约束", "输出格式约束", "受众目标约束"], "category": "trace2.0"} +{"id": "942", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "请写一篇关于一个原本孤独的人在社会中重新认识自我并融入的故事。\n故事发生在一个多元文化的大都市;\n主人公不仅需要面对个人成长的挑战,还要跨越文化差异的障碍;\n挑战要包括这个人的成长经历,经历中的重要转折点或者启示,以及如何逐渐在社会中找到属于自己的位置和人脉;\n描述他/她现在的状态和心态变化;\n故事的情节要生动有趣,可以采用角色对话、描写细节等方式来增强故事的可读性和感染力;\n要求以第三人称叙述,采用多线叙事方式,其中一条线聚焦主人公的内心世界,另一条线描绘其与周围人物的互动;\n故事输出格式为Markdown,便于阅读和格式调整;\n故事风格应积极向上,充满希望,展现主人公如何克服困难,最终找到自我价值和归属感。\n"}], "type": "trace", "description": "请写一篇关于一个原本孤独的人在社会中重新认识自我并融入的故事。", "constraints": "故事发生在一个多元文化的大都市;\n主人公不仅需要面对个人成长的挑战,还要跨越文化差异的障碍;\n挑战要包括这个人的成长经历,经历中的重要转折点或者启示,以及如何逐渐在社会中找到属于自己的位置和人脉;\n描述他/她现在的状态和心态变化;\n故事的情节要生动有趣,可以采用角色对话、描写细节等方式来增强故事的可读性和感染力;\n要求以第三人称叙述,采用多线叙事方式,其中一条线聚焦主人公的内心世界,另一条线描绘其与周围人物的互动;\n故事输出格式为Markdown,便于阅读和格式调整;\n故事风格应积极向上,充满希望,展现主人公如何克服困难,最终找到自我价值和归属感。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["故事发生在一个多元文化的大都市;", "主人公不仅需要面对个人成长的挑战,还要跨越文化差异的障碍;", "挑战要包括这个人的成长经历,经历中的重要转折点或者启示,以及如何逐渐在社会中找到属于自己的位置和人脉;", "描述他/她现在的状态和心态变化;", "故事的情节要生动有趣,可以采用角色对话、描写细节等方式来增强故事的可读性和感染力;", "要求以第三人称叙述,采用多线叙事方式,其中一条线聚焦主人公的内心世界,另一条线描绘其与周围人物的互动;", "故事输出格式为Markdown,便于阅读和格式调整;", "故事风格应积极向上,充满希望,展现主人公如何克服困难,最终找到自我价值和归属感。"], "levels2": ["主题约束", "主题约束", "包含约束", "包含约束", "语言特征约束", "语法结构约束", "输出格式约束", "情感情绪约束"], "category": "trace2.0"} +{"id": "943", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "扮演《红楼梦》中的贾宝玉,采用第一人称的叙事角度,撰写一篇描述性文本,细致入微地描写林黛玉的外貌特征和心理状态。\n文本中至少包含三处比喻或拟人手法;\n在描述中加入至少一处对古典诗词的引用,以增强文本的艺术性;\n文本开头应包含一句对林黛玉的直接称呼,如“我的黛玉”,以体现角色间的亲密关系;\n在描述林黛玉心理状态时,需融入贾宝玉的内心感悟,通过贾宝玉的视角展现林黛玉的多愁善感和聪明才智;\n为更好地体现文本的诗意,可适当运用排比、对仗等修辞手法,使描述更加生动和富有节奏感;\n在文本结尾,应有一段贾宝玉对林黛玉未来命运的预感或希望,以此作为情感的升华和总结;\n在整个文本中,需注意对《红楼梦》原著中的场景和情节进行恰当的引用,以增加文本的真实性和权威性;\n要求语气细腻且充满诗意。\n"}], "type": "trace", "description": "扮演《红楼梦》中的贾宝玉,采用第一人称的叙事角度,撰写一篇描述性文本,细致入微地描写林黛玉的外貌特征和心理状态。", "constraints": "文本中至少包含三处比喻或拟人手法;\n在描述中加入至少一处对古典诗词的引用,以增强文本的艺术性;\n文本开头应包含一句对林黛玉的直接称呼,如“我的黛玉”,以体现角色间的亲密关系;\n在描述林黛玉心理状态时,需融入贾宝玉的内心感悟,通过贾宝玉的视角展现林黛玉的多愁善感和聪明才智;\n为更好地体现文本的诗意,可适当运用排比、对仗等修辞手法,使描述更加生动和富有节奏感;\n在文本结尾,应有一段贾宝玉对林黛玉未来命运的预感或希望,以此作为情感的升华和总结;\n在整个文本中,需注意对《红楼梦》原著中的场景和情节进行恰当的引用,以增加文本的真实性和权威性;\n要求语气细腻且充满诗意。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["文本中至少包含三处比喻或拟人手法;", "在描述中加入至少一处对古典诗词的引用,以增强文本的艺术性;", "文本开头应包含一句对林黛玉的直接称呼,如“我的黛玉”,以体现角色间的亲密关系;", "在描述林黛玉心理状态时,需融入贾宝玉的内心感悟,通过贾宝玉的视角展现林黛玉的多愁善感和聪明才智;", "为更好地体现文本的诗意,可适当运用排比、对仗等修辞手法,使描述更加生动和富有节奏感;", "在文本结尾,应有一段贾宝玉对林黛玉未来命运的预感或希望,以此作为情感的升华和总结;", "在整个文本中,需注意对《红楼梦》原著中的场景和情节进行恰当的引用,以增加文本的真实性和权威性;", "要求语气细腻且充满诗意。"], "levels2": ["语言特征约束", "语言特征约束", "语气风格约束", "角色扮演约束", "语言特征约束", "包含约束", "引用和参考约束", "语气风格约束"], "category": "trace1.0"} +{"id": "944", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "使用Python实现一个正则表达式,用于匹配特定条件的字符串。\n字符串需以“hello”开头;\n字符串需以数字结束;\n字符串的长度(包括数字在内)不少于10个字符;\n需要使用正则表达式的开始和结束断言、字符类、量词等组成部分;\n编写的正则表达式需在Python环境中正常运行;\n需编写一个测试函数检查至少10个不同输入字符串;\n测试结果需以JSON格式输出;\n输出的JSON对象应包含\"input\"(输入字符串)、\"matched\"(是否匹配成功,布尔值)、\"regex_used\"(使用的正则表达式)等键值对;\n"}], "type": "trace", "description": "使用Python实现一个正则表达式,用于匹配特定条件的字符串。", "constraints": "字符串需以“hello”开头;\n字符串需以数字结束;\n字符串的长度(包括数字在内)不少于10个字符;\n需要使用正则表达式的开始和结束断言、字符类、量词等组成部分;\n编写的正则表达式需在Python环境中正常运行;\n需编写一个测试函数检查至少10个不同输入字符串;\n测试结果需以JSON格式输出;\n输出的JSON对象应包含\"input\"(输入字符串)、\"matched\"(是否匹配成功,布尔值)、\"regex_used\"(使用的正则表达式)等键值对;", "input": "NULL", "constraints_num": 8, "constraints_splits": ["字符串需以“hello”开头;", "字符串需以数字结束;", "字符串的长度(包括数字在内)不少于10个字符;", "需要使用正则表达式的开始和结束断言、字符类、量词等组成部分;", "编写的正则表达式需在Python环境中正常运行;", "需编写一个测试函数检查至少10个不同输入字符串;", "测试结果需以JSON格式输出;", "输出的JSON对象应包含\"input\"(输入字符串)、\"matched\"(是否匹配成功,布尔值)、\"regex_used\"(使用的正则表达式)等键值对;"], "levels2": ["模版约束", "模版约束", "数值约束", "包含约束", "语法结构约束", "数值约束", "输出格式约束", "输出格式约束"], "category": "trace2.0"} +{"id": "945", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "指导一个编程初学者如何在 Python 语言中编写一个函数,该函数的功能是对输入的字典进行排序,然后按照特定的格式输出排序后的结果。\n使用Python的类型注解;\n确保代码符合PEP 8编码规范;\n函数应包含适当的注释,解释函数的功能、参数和返回类型;\n在函数体中,对字典进行排序,可以按照字典的键或值进行排序,但必须明确指出是按键还是按值排序;\n排序后,输出的字典应保持排序状态;\n在代码的输出部分,使用Python标准输出格式,如print()函数,输出结果应为排序后的字典,且每个键值对之间用逗号和空格分隔,键和值之间用冒号和空格分隔;\n输出的字典应遵循 JSON 格式,即使用花括号包围整个字典,键和值使用双引号括起来,如 \"{ \"key\": \"value\" }\";\n输出结果在一行内显示,如果字典元素过多,可自动换行保持代码整洁;\n# Inputs:\nmy_dict = {\"Spade\": \"Black\", \"Heart\": \"Red\", \"Diamond\": \"Red\", \"Club\": \"Black\"}\n"}], "type": "trace", "description": "指导一个编程初学者如何在 Python 语言中编写一个函数,该函数的功能是对输入的字典进行排序,然后按照特定的格式输出排序后的结果。", "constraints": "使用Python的类型注解;\n确保代码符合PEP 8编码规范;\n函数应包含适当的注释,解释函数的功能、参数和返回类型;\n在函数体中,对字典进行排序,可以按照字典的键或值进行排序,但必须明确指出是按键还是按值排序;\n排序后,输出的字典应保持排序状态;\n在代码的输出部分,使用Python标准输出格式,如print()函数,输出结果应为排序后的字典,且每个键值对之间用逗号和空格分隔,键和值之间用冒号和空格分隔;\n输出的字典应遵循 JSON 格式,即使用花括号包围整个字典,键和值使用双引号括起来,如 \"{ \"key\": \"value\" }\";\n输出结果在一行内显示,如果字典元素过多,可自动换行保持代码整洁;", "input": "my_dict = {\"Spade\": \"Black\", \"Heart\": \"Red\", \"Diamond\": \"Red\", \"Club\": \"Black\"}", "constraints_num": 8, "constraints_splits": ["使用Python的类型注解;", "确保代码符合PEP 8编码规范;", "函数应包含适当的注释,解释函数的功能、参数和返回类型;", "在函数体中,对字典进行排序,可以按照字典的键或值进行排序,但必须明确指出是按键还是按值排序;", "排序后,输出的字典应保持排序状态;", "在代码的输出部分,使用Python标准输出格式,如print()函数,输出结果应为排序后的字典,且每个键值对之间用逗号和空格分隔,键和值之间用冒号和空格分隔;", "输出的字典应遵循 JSON 格式,即使用花括号包围整个字典,键和值使用双引号括起来,如 \"{ \"key\": \"value\" }\";", "输出结果在一行内显示,如果字典元素过多,可自动换行保持代码整洁;"], "levels2": ["语法结构约束", "语法结构约束", "文本样式约束", "语法结构约束", "输出格式约束", "输出格式约束", "输出格式约束", "文本样式约束"], "category": "trace2.0"} +{"id": "946", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以昆虫学为主题,详细解答虫子是否能在玻璃瓶有盖的瓶子里长大繁殖。\n实验需包含三种不同类型的虫子;\n每种类型虫子的数量不少于10只;\n将它们分别放入三个密闭的玻璃瓶中;\n每个瓶子内的环境条件应尽可能相似,包括但不限于温度、湿度和食物供给;\n实验周期设定为30天;\n在此期间,每天记录虫子的数量变化、行为模式以及繁殖情况;\n实验结束后,需分析并记录每种虫子在密闭环境中的生存率、繁殖率以及是否出现了任何异常行为或形态变化;\n此实验设计需遵循昆虫学研究的基本原则,确保实验的科学性和伦理性。\n"}], "type": "trace", "description": "以昆虫学为主题,详细解答虫子是否能在玻璃瓶有盖的瓶子里长大繁殖。", "constraints": "实验需包含三种不同类型的虫子;\n每种类型虫子的数量不少于10只;\n将它们分别放入三个密闭的玻璃瓶中;\n每个瓶子内的环境条件应尽可能相似,包括但不限于温度、湿度和食物供给;\n实验周期设定为30天;\n在此期间,每天记录虫子的数量变化、行为模式以及繁殖情况;\n实验结束后,需分析并记录每种虫子在密闭环境中的生存率、繁殖率以及是否出现了任何异常行为或形态变化;\n此实验设计需遵循昆虫学研究的基本原则,确保实验的科学性和伦理性。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["实验需包含三种不同类型的虫子;", "每种类型虫子的数量不少于10只;", "将它们分别放入三个密闭的玻璃瓶中;", "每个瓶子内的环境条件应尽可能相似,包括但不限于温度、湿度和食物供给;", "实验周期设定为30天;", "在此期间,每天记录虫子的数量变化、行为模式以及繁殖情况;", "实验结束后,需分析并记录每种虫子在密闭环境中的生存率、繁殖率以及是否出现了任何异常行为或形态变化;", "此实验设计需遵循昆虫学研究的基本原则,确保实验的科学性和伦理性。"], "levels2": ["包含约束", "数值约束", "数值约束", "先验条件约束", "数值约束", "包含约束", "包含约束", "主题约束"], "category": "trace2.0"} +{"id": "947", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "编写一个Python程序,该程序生成10个介于1到100之间的随机整数,并将这些随机数以JSON格式输出,每个数应当有唯一的ID,从1开始递增。\n导入Python的`random`模块和`json`模块。\n创建一个空列表,用于存储将要生成的随机数。\n使用循环生成10个随机数,确保每个生成的随机数都是介于1到100之间的整数。\n为每个生成的随机数分配一个唯一的ID,从1开始递增。\n将生成的随机数和对应的ID以字典的形式存储在列表中。\n将列表转换为JSON格式的字符串,并在控制台中打印输出。\n程序具有良好的可读性和注释,以便其他初学者能够轻松理解你的代码结构。\n程序代码遵循Python的编码规范,包括良好的缩进和必要的注释。\n"}], "type": "trace", "description": "编写一个Python程序,该程序生成10个介于1到100之间的随机整数,并将这些随机数以JSON格式输出,每个数应当有唯一的ID,从1开始递增。", "constraints": "导入Python的`random`模块和`json`模块。\n创建一个空列表,用于存储将要生成的随机数。\n使用循环生成10个随机数,确保每个生成的随机数都是介于1到100之间的整数。\n为每个生成的随机数分配一个唯一的ID,从1开始递增。\n将生成的随机数和对应的ID以字典的形式存储在列表中。\n将列表转换为JSON格式的字符串,并在控制台中打印输出。\n程序具有良好的可读性和注释,以便其他初学者能够轻松理解你的代码结构。\n程序代码遵循Python的编码规范,包括良好的缩进和必要的注释。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["导入Python的`random`模块和`json`模块。", "创建一个空列表,用于存储将要生成的随机数。", "使用循环生成10个随机数,确保每个生成的随机数都是介于1到100之间的整数。", "为每个生成的随机数分配一个唯一的ID,从1开始递增。", "将生成的随机数和对应的ID以字典的形式存储在列表中。", "将列表转换为JSON格式的字符串,并在控制台中打印输出。", "程序具有良好的可读性和注释,以便其他初学者能够轻松理解你的代码结构。", "程序代码遵循Python的编码规范,包括良好的缩进和必要的注释。"], "levels2": ["输出格式约束", "文本样式约束", "数值约束", "编号和列表约束", "输出格式约束", "输出格式约束", "语言特征约束", "语法结构约束"], "category": "trace1.0"} +{"id": "948", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以室内设计师的角度出发,描述一套现代简约风格的客房装修方案,包括客厅、餐厅和卧室。\n方案需详细说明家具的风格、颜色和材质;\n确保整个空间的统一性和良好的装修效果;\n满足客户的需求和预算;\n使用Arial font, 字号为12;\n整个方案中适当使用诸如🏠、🛋️、🖼️等emoji表情来增强现代简约风格的视觉效果;\n在开始设计前,需要列出一个初步的家具采购清单,评估整体预算是否合理,如果超出预算,需重新调整设计方案;\n设计方案需保持现代简约的风格特点,例如使用简洁的线条、中性色调(如白色、灰色)和高品质的材质(如木材、金属);\n家具和装饰品需与空间的其它元素相协调,确保整体装修效果的统一性和美观性。\n"}], "type": "trace", "description": "以室内设计师的角度出发,描述一套现代简约风格的客房装修方案,包括客厅、餐厅和卧室。", "constraints": "方案需详细说明家具的风格、颜色和材质;\n确保整个空间的统一性和良好的装修效果;\n满足客户的需求和预算;\n使用Arial font, 字号为12;\n整个方案中适当使用诸如🏠、🛋️、🖼️等emoji表情来增强现代简约风格的视觉效果;\n在开始设计前,需要列出一个初步的家具采购清单,评估整体预算是否合理,如果超出预算,需重新调整设计方案;\n设计方案需保持现代简约的风格特点,例如使用简洁的线条、中性色调(如白色、灰色)和高品质的材质(如木材、金属);\n家具和装饰品需与空间的其它元素相协调,确保整体装修效果的统一性和美观性。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["方案需详细说明家具的风格、颜色和材质;", "确保整个空间的统一性和良好的装修效果;", "满足客户的需求和预算;", "使用Arial font, 字号为12;", "整个方案中适当使用诸如🏠、🛋️、🖼️等emoji表情来增强现代简约风格的视觉效果;", "在开始设计前,需要列出一个初步的家具采购清单,评估整体预算是否合理,如果超出预算,需重新调整设计方案;", "设计方案需保持现代简约的风格特点,例如使用简洁的线条、中性色调(如白色、灰色)和高品质的材质(如木材、金属);", "家具和装饰品需与空间的其它元素相协调,确保整体装修效果的统一性和美观性。"], "levels2": ["包含约束", "主题约束", "受众目标约束", "文本样式约束", "文本样式约束", "先验条件约束", "语气风格约束", "主题约束"], "category": "trace2.0"} +{"id": "949", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一段代码,用于在AWS Cognito中注册新用户,用户应有用户名、密码、电子邮件、姓名和姓氏。代码中需实现错误处理,处理潜在问题,如重复用户名或虚假电子邮件地址;确保代码遵循AWS的安全最佳实践,使用安全的密码存储方法和验证电子邮件地址;代码应以Python编写,且输出时,如果注册成功,返回一个包含用户信息和成功状态码的JSON格式对象;如果注册失败,返回一个包含失败原因和错误状态码的JSON格式错误信息。\n用户信息包括用户名、密码、电子邮件、姓名和姓氏;\n代码需包含错误处理,处理潜在问题如重复用户名或虚假电子邮件地址;\n代码需遵循AWS的安全最佳实践;\n使用安全的密码存储方法;\n验证电子邮件地址;\n代码使用Python编写;\n成功时返回一个包含用户信息和成功状态码的JSON格式对象;\n失败时返回一个包含失败原因和错误状态码的JSON格式错误信息。\n"}], "type": "trace", "description": "创建一段代码,用于在AWS Cognito中注册新用户,用户应有用户名、密码、电子邮件、姓名和姓氏。代码中需实现错误处理,处理潜在问题,如重复用户名或虚假电子邮件地址;确保代码遵循AWS的安全最佳实践,使用安全的密码存储方法和验证电子邮件地址;代码应以Python编写,且输出时,如果注册成功,返回一个包含用户信息和成功状态码的JSON格式对象;如果注册失败,返回一个包含失败原因和错误状态码的JSON格式错误信息。", "constraints": "用户信息包括用户名、密码、电子邮件、姓名和姓氏;\n代码需包含错误处理,处理潜在问题如重复用户名或虚假电子邮件地址;\n代码需遵循AWS的安全最佳实践;\n使用安全的密码存储方法;\n验证电子邮件地址;\n代码使用Python编写;\n成功时返回一个包含用户信息和成功状态码的JSON格式对象;\n失败时返回一个包含失败原因和错误状态码的JSON格式错误信息。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["用户信息包括用户名、密码、电子邮件、姓名和姓氏;", "代码需包含错误处理,处理潜在问题如重复用户名或虚假电子邮件地址;", "代码需遵循AWS的安全最佳实践;", "使用安全的密码存储方法;", "验证电子邮件地址;", "代码使用Python编写;", "成功时返回一个包含用户信息和成功状态码的JSON格式对象;", "失败时返回一个包含失败原因和错误状态码的JSON格式错误信息。"], "levels2": ["包含约束", "包含约束", "价值观约束", "价值观约束", "包含约束", "主题约束", "输出格式约束", "输出格式约束"], "category": "trace2.0"} +{"id": "950", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "使用Python,撰写一个函数来计算数字的阶乘。\n函数应能处理从1到n(n≤1000)的阶乘计算;\n时间复杂度应小于O(n^2);\n空间复杂度应小于O(n);\n函数需要有详细的文档说明,遵循Python的PEP8风格指南;\n文档说明应使用清晰、简洁的英文语言编写;\n需要为函数撰写单元测试,确保其在各种边界情况和异常情况下的正确性和鲁棒性;\n如果函数使用了递归方式,需在文档中说明递归的深度限制和可能的栈溢出风险,以及如何避免这些问题;\n如果客户有特殊需求,可以使用迭代或其他方式实现阶乘计算,但需在文档中对比各种方法的优缺点。\n"}], "type": "trace", "description": "使用Python,撰写一个函数来计算数字的阶乘。", "constraints": "函数应能处理从1到n(n≤1000)的阶乘计算;\n时间复杂度应小于O(n^2);\n空间复杂度应小于O(n);\n函数需要有详细的文档说明,遵循Python的PEP8风格指南;\n文档说明应使用清晰、简洁的英文语言编写;\n需要为函数撰写单元测试,确保其在各种边界情况和异常情况下的正确性和鲁棒性;\n如果函数使用了递归方式,需在文档中说明递归的深度限制和可能的栈溢出风险,以及如何避免这些问题;\n如果客户有特殊需求,可以使用迭代或其他方式实现阶乘计算,但需在文档中对比各种方法的优缺点。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["函数应能处理从1到n(n≤1000)的阶乘计算;", "时间复杂度应小于O(n^2);", "空间复杂度应小于O(n);", "函数需要有详细的文档说明,遵循Python的PEP8风格指南;", "文档说明应使用清晰、简洁的英文语言编写;", "需要为函数撰写单元测试,确保其在各种边界情况和异常情况下的正确性和鲁棒性;", "如果函数使用了递归方式,需在文档中说明递归的深度限制和可能的栈溢出风险,以及如何避免这些问题;", "如果客户有特殊需求,可以使用迭代或其他方式实现阶乘计算,但需在文档中对比各种方法的优缺点。"], "levels2": ["数值约束", "数值约束", "数值约束", "语法结构约束", "语言特征约束", "包含约束", "包含约束", "包含约束"], "category": "trace2.0"} +{"id": "951", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "申请一份兼职工作,需要提供一份详细的自我介绍。\n自我介绍应采用正式的商务信函格式,包括问候语、正文和结束语;\n需要以第一人称的视角进行叙述;\n首先介绍自己的教育背景和专业技能;\n接着阐述与申请职位相关的工作经验和个人优势;\n最后陈述申请此份工作的动机和期望;\n在正文结尾部分,使用编号列表列出对这份工作的具体期待和将如何为公司做出贡献;\n请保证自我介绍字数不少于300字;\n在提交前进行语法和拼写的校对。\n"}], "type": "trace", "description": "申请一份兼职工作,需要提供一份详细的自我介绍。", "constraints": "自我介绍应采用正式的商务信函格式,包括问候语、正文和结束语;\n需要以第一人称的视角进行叙述;\n首先介绍自己的教育背景和专业技能;\n接着阐述与申请职位相关的工作经验和个人优势;\n最后陈述申请此份工作的动机和期望;\n在正文结尾部分,使用编号列表列出对这份工作的具体期待和将如何为公司做出贡献;\n请保证自我介绍字数不少于300字;\n在提交前进行语法和拼写的校对。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["自我介绍应采用正式的商务信函格式,包括问候语、正文和结束语;", "需要以第一人称的视角进行叙述;", "首先介绍自己的教育背景和专业技能;", "接着阐述与申请职位相关的工作经验和个人优势;", "最后陈述申请此份工作的动机和期望;", "在正文结尾部分,使用编号列表列出对这份工作的具体期待和将如何为公司做出贡献;", "请保证自我介绍字数不少于300字;", "在提交前进行语法和拼写的校对。"], "levels2": ["文本样式约束", "语气风格约束", "层次化结构约束", "·", "层次化结构约束", "编号和列表约束", "数值约束", "语法结构约束"], "category": "trace2.0"} +{"id": "952", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "设计一份公司成立十周年团建活动方案,从HR的角度出发。\n方案必须包括地点(具体地址和备选方案);\n方案必须包括时间(包括日期和时间范围);\n方案必须包括至少3项团队活动,每项活动需有详细描述;\n方案必须包括预算(总预算和各活动预算);\n方案必须包括参与人员(预计人数和特定角色需求,如团队领导者);\n方案必须包括餐饮安排(午餐、晚餐和特殊饮食需求);\n方案需以表格形式呈现,确保信息清晰易读;\n方案中上述的每个要点都要有详细的说明和预算分配。\n"}], "type": "trace", "description": "设计一份公司成立十周年团建活动方案,从HR的角度出发。", "constraints": "方案必须包括地点(具体地址和备选方案);\n方案必须包括时间(包括日期和时间范围);\n方案必须包括至少3项团队活动,每项活动需有详细描述;\n方案必须包括预算(总预算和各活动预算);\n方案必须包括参与人员(预计人数和特定角色需求,如团队领导者);\n方案必须包括餐饮安排(午餐、晚餐和特殊饮食需求);\n方案需以表格形式呈现,确保信息清晰易读;\n方案中上述的每个要点都要有详细的说明和预算分配。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["方案必须包括地点(具体地址和备选方案);", "方案必须包括时间(包括日期和时间范围);", "方案必须包括至少3项团队活动,每项活动需有详细描述;", "方案必须包括预算(总预算和各活动预算);", "方案必须包括参与人员(预计人数和特定角色需求,如团队领导者);", "方案必须包括餐饮安排(午餐、晚餐和特殊饮食需求);", "方案需以表格形式呈现,确保信息清晰易读;", "方案中上述的每个要点都要有详细的说明和预算分配。"], "levels2": ["包含约束", "包含约束", "数值约束", "包含约束", "包含约束", "包含约束", "输出格式约束", "层次化结构约束"], "category": "trace2.0"} +{"id": "953", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "作为项目经理,教我如何使用Gantt图规划一份复杂项目计划,特别是当项目计划所需的资源整体周期中有很多波动时。\n明确项目目标和范围后,确保对项目的最终目标和所有必要组成部分有清晰的理解;\n确定关键任务和依赖关系,列出所有关键任务,并识别它们之间的依赖关系;\n采用三点估算法(乐观、悲观、最可能时间)对每个任务进行时间估算,考虑到资源波动,以提高准确性;\n根据资源的可用性和波动性为每个任务分配合适的资源,使用资源直方图来检查资源在项目周期内的均匀分布;\n将所有任务、时间估算和资源分配信息输入到Gantt图软件中,确保信息的正确显示;\n在项目执行过程中,定期审查Gantt图以监控进度,及时调整计划以适应资源波动;\n项目计划的规划和调整需遵循《项目管理知识体系指南(PMBOK)》中的建议;\n项目管理过程中,参考亚马逊在供应链项目中采用Gantt图规划和监控项目进度的有效应对资源波动的方法。\n"}], "type": "trace", "description": "作为项目经理,教我如何使用Gantt图规划一份复杂项目计划,特别是当项目计划所需的资源整体周期中有很多波动时。", "constraints": "明确项目目标和范围后,确保对项目的最终目标和所有必要组成部分有清晰的理解;\n确定关键任务和依赖关系,列出所有关键任务,并识别它们之间的依赖关系;\n采用三点估算法(乐观、悲观、最可能时间)对每个任务进行时间估算,考虑到资源波动,以提高准确性;\n根据资源的可用性和波动性为每个任务分配合适的资源,使用资源直方图来检查资源在项目周期内的均匀分布;\n将所有任务、时间估算和资源分配信息输入到Gantt图软件中,确保信息的正确显示;\n在项目执行过程中,定期审查Gantt图以监控进度,及时调整计划以适应资源波动;\n项目计划的规划和调整需遵循《项目管理知识体系指南(PMBOK)》中的建议;\n项目管理过程中,参考亚马逊在供应链项目中采用Gantt图规划和监控项目进度的有效应对资源波动的方法。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["明确项目目标和范围后,确保对项目的最终目标和所有必要组成部分有清晰的理解;", "确定关键任务和依赖关系,列出所有关键任务,并识别它们之间的依赖关系;", "采用三点估算法(乐观、悲观、最可能时间)对每个任务进行时间估算,考虑到资源波动,以提高准确性;", "根据资源的可用性和波动性为每个任务分配合适的资源,使用资源直方图来检查资源在项目周期内的均匀分布;", "将所有任务、时间估算和资源分配信息输入到Gantt图软件中,确保信息的正确显示;", "在项目执行过程中,定期审查Gantt图以监控进度,及时调整计划以适应资源波动;", "项目计划的规划和调整需遵循《项目管理知识体系指南(PMBOK)》中的建议;", "项目管理过程中,参考亚马逊在供应链项目中采用Gantt图规划和监控项目进度的有效应对资源波动的方法。"], "levels2": ["先验条件约束", "编号和列表约束", "自然语言流程背景信息约束", "输出格式约束", "输出格式约束", "自然语言流程背景信息约束", "先验条件约束", "包含约束"], "category": "trace1.0"} +{"id": "954", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇科学论文,解释为什么水可以在高温下仍保持液态。\n论文应包含引言、方法、结果、讨论和结论等部分;\n引言中概述水的物理性质和高温下液态水的重要性;\n方法部分描述实验设计或理论模型,研究水在高温下的状态;\n结果部分提供实验数据或模型预测,解释数据背后的科学原理;\n讨论部分分析结果的意义,探讨可能的解释,并与其他研究进行比较;\n结论部分总结研究发现,并提出未来研究方向;\n撰写过程中使用专业术语,引用最新相关研究;\n遵循APA格式进行参考文献的引用;\n"}], "type": "trace", "description": "撰写一篇科学论文,解释为什么水可以在高温下仍保持液态。", "constraints": "论文应包含引言、方法、结果、讨论和结论等部分;\n引言中概述水的物理性质和高温下液态水的重要性;\n方法部分描述实验设计或理论模型,研究水在高温下的状态;\n结果部分提供实验数据或模型预测,解释数据背后的科学原理;\n讨论部分分析结果的意义,探讨可能的解释,并与其他研究进行比较;\n结论部分总结研究发现,并提出未来研究方向;\n撰写过程中使用专业术语,引用最新相关研究;\n遵循APA格式进行参考文献的引用;", "input": "NULL", "constraints_num": 8, "constraints_splits": ["论文应包含引言、方法、结果、讨论和结论等部分;", "引言中概述水的物理性质和高温下液态水的重要性;", "方法部分描述实验设计或理论模型,研究水在高温下的状态;", "结果部分提供实验数据或模型预测,解释数据背后的科学原理;", "讨论部分分析结果的意义,探讨可能的解释,并与其他研究进行比较;", "结论部分总结研究发现,并提出未来研究方向;", "撰写过程中使用专业术语,引用最新相关研究;", "遵循APA格式进行参考文献的引用;"], "levels2": ["层次化结构约束", "包含约束", "主题约束", "包含约束", "包含约束", "层次化结构约束", "语言特征约束", "引用和参考约束"], "category": "trace2.0"} +{"id": "955", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "作为一位软件工程师,你需要使用Python进行Redis中数据的操作和存储,包括连接Redis服务器、设置键值对、获取键值对、删除键值对。\n代码应该以JSON格式输出;\n代码中需要添加必要的注释以解释每一步操作的含义;\n在连接Redis服务器时使用了哪个库需要在注释中说明;\n设置键值对时如何确保数据的正确性需要在注释中说明;\n获取键值对时如何处理可能的异常需要在注释中说明;\n删除键值对时如何验证操作的成功需要在注释中说明;\n输出的代码示例中应包括一个用于验证功能完整性的测试函数;\n所有操作在不同环境下都能正常运行需要通过测试函数确保。\n"}], "type": "trace", "description": "作为一位软件工程师,你需要使用Python进行Redis中数据的操作和存储,包括连接Redis服务器、设置键值对、获取键值对、删除键值对。", "constraints": "代码应该以JSON格式输出;\n代码中需要添加必要的注释以解释每一步操作的含义;\n在连接Redis服务器时使用了哪个库需要在注释中说明;\n设置键值对时如何确保数据的正确性需要在注释中说明;\n获取键值对时如何处理可能的异常需要在注释中说明;\n删除键值对时如何验证操作的成功需要在注释中说明;\n输出的代码示例中应包括一个用于验证功能完整性的测试函数;\n所有操作在不同环境下都能正常运行需要通过测试函数确保。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["代码应该以JSON格式输出;", "代码中需要添加必要的注释以解释每一步操作的含义;", "在连接Redis服务器时使用了哪个库需要在注释中说明;", "设置键值对时如何确保数据的正确性需要在注释中说明;", "获取键值对时如何处理可能的异常需要在注释中说明;", "删除键值对时如何验证操作的成功需要在注释中说明;", "输出的代码示例中应包括一个用于验证功能完整性的测试函数;", "所有操作在不同环境下都能正常运行需要通过测试函数确保。"], "levels2": ["输出格式约束", "文本样式约束", "文本样式约束", "文本样式约束", "文本样式约束", "文本样式约束", "输出格式约束", "语法结构约束"], "category": "trace1.0"} +{"id": "956", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "设计一个遵循面向对象编程原则的Java应用程序,该程序需包含一个抽象类 `Furniture`、一个接口 `Priceable`,以及两个继承自 `Furniture` 的子类 `Table` 和 `Chair`,并最终通过应用程序展示实例信息。\n创建一个抽象类 `Furniture`,包含 `color` 和 `price` 字段,实现 `getColor()`, `setColor()`, `getPrice()` 方法,其中 `setPrice()` 方法是抽象的。\n在创建 `Furniture` 类之前,先定义一个接口 `Priceable`,包含一个抽象方法 `setPrice(double price)`。然后确保 `Furniture` 类实现这个接口,但在 `Furniture` 类中不实现 `setPrice` 方法。\n`price` 和 `color` 属性不能为 null 或者默认值,`price` 的值必须大于0,`color` 必须是 \"Red\", \"Blue\", \"Green\", \"Yellow\", \"White\", \"Black\" 六种颜色之一。\n所有方法都需要有详细的注释,解释其功能和参数。`Furniture` 类以及其子类都必须使用继承结构实现,并且所有类都应使用大驼峰命名规则。\n创建两个子类 `Table` 和 `Chair`,它们都继承自 `Furniture` 类并实现 `Priceable` 接口。在 `Table` 和 `Chair` 类中分别实现 `setPrice()` 方法,方法应合理地设置价格,例如 `Table` 的价格应该比 `Chair` 高。\n在实现 `Table` 和 `Chair` 类的 `setPrice()` 方法时,需要考虑材料成本、制造成本以及设计复杂度等因素。例如,如果使用的是昂贵的木材,那么价格应该更高。\n最终编写一个应用程序,使用 `Furniture` 类和其子类 `Table` 和 `Chair` 来展示实例信息。应用程序应该创建 `Table` 和 `Chair` 的实例,为每个实例设置价格,然后使用 `getColor()` 和 `getPrice()` 方法显示家具的详细信息。\n应用程序应确保至少创建5个 `Table` 和 `Chair` 的实例,并通过 `toString()` 方法显示其详细信息。\n"}], "type": "trace", "description": "设计一个遵循面向对象编程原则的Java应用程序,该程序需包含一个抽象类 `Furniture`、一个接口 `Priceable`,以及两个继承自 `Furniture` 的子类 `Table` 和 `Chair`,并最终通过应用程序展示实例信息。", "constraints": "创建一个抽象类 `Furniture`,包含 `color` 和 `price` 字段,实现 `getColor()`, `setColor()`, `getPrice()` 方法,其中 `setPrice()` 方法是抽象的。\n在创建 `Furniture` 类之前,先定义一个接口 `Priceable`,包含一个抽象方法 `setPrice(double price)`。然后确保 `Furniture` 类实现这个接口,但在 `Furniture` 类中不实现 `setPrice` 方法。\n`price` 和 `color` 属性不能为 null 或者默认值,`price` 的值必须大于0,`color` 必须是 \"Red\", \"Blue\", \"Green\", \"Yellow\", \"White\", \"Black\" 六种颜色之一。\n所有方法都需要有详细的注释,解释其功能和参数。`Furniture` 类以及其子类都必须使用继承结构实现,并且所有类都应使用大驼峰命名规则。\n创建两个子类 `Table` 和 `Chair`,它们都继承自 `Furniture` 类并实现 `Priceable` 接口。在 `Table` 和 `Chair` 类中分别实现 `setPrice()` 方法,方法应合理地设置价格,例如 `Table` 的价格应该比 `Chair` 高。\n在实现 `Table` 和 `Chair` 类的 `setPrice()` 方法时,需要考虑材料成本、制造成本以及设计复杂度等因素。例如,如果使用的是昂贵的木材,那么价格应该更高。\n最终编写一个应用程序,使用 `Furniture` 类和其子类 `Table` 和 `Chair` 来展示实例信息。应用程序应该创建 `Table` 和 `Chair` 的实例,为每个实例设置价格,然后使用 `getColor()` 和 `getPrice()` 方法显示家具的详细信息。\n应用程序应确保至少创建5个 `Table` 和 `Chair` 的实例,并通过 `toString()` 方法显示其详细信息。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["创建一个抽象类 `Furniture`,包含 `color` 和 `price` 字段,实现 `getColor()`, `setColor()`, `getPrice()` 方法,其中 `setPrice()` 方法是抽象的。", "在创建 `Furniture` 类之前,先定义一个接口 `Priceable`,包含一个抽象方法 `setPrice(double price)`。然后确保 `Furniture` 类实现这个接口,但在 `Furniture` 类中不实现 `setPrice` 方法。", "`price` 和 `color` 属性不能为 null 或者默认值,`price` 的值必须大于0,`color` 必须是 \"Red\", \"Blue\", \"Green\", \"Yellow\", \"White\", \"Black\" 六种颜色之一。", "所有方法都需要有详细的注释,解释其功能和参数。`Furniture` 类以及其子类都必须使用继承结构实现,并且所有类都应使用大驼峰命名规则。", "创建两个子类 `Table` 和 `Chair`,它们都继承自 `Furniture` 类并实现 `Priceable` 接口。在 `Table` 和 `Chair` 类中分别实现 `setPrice()` 方法,方法应合理地设置价格,例如 `Table` 的价格应该比 `Chair` 高。", "在实现 `Table` 和 `Chair` 类的 `setPrice()` 方法时,需要考虑材料成本、制造成本以及设计复杂度等因素。例如,如果使用的是昂贵的木材,那么价格应该更高。", "最终编写一个应用程序,使用 `Furniture` 类和其子类 `Table` 和 `Chair` 来展示实例信息。应用程序应该创建 `Table` 和 `Chair` 的实例,为每个实例设置价格,然后使用 `getColor()` 和 `getPrice()` 方法显示家具的详细信息。", "应用程序应确保至少创建5个 `Table` 和 `Chair` 的实例,并通过 `toString()` 方法显示其详细信息。"], "levels2": ["包含约束", "包含约束", "数值约束", "语法结构约束", "包含约束", "包含约束", "包含约束", "数值约束"], "category": "trace2.0"} +{"id": "957", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "我们来玩一个游戏,你扮演侦探,通过提问来猜我脑海里想的一个21世纪流行文化元素是什么。\n我想到的这个东西,是一个在21世纪被广泛认知的流行文化元素;\n你可以向我提出最多20个问题进行猜测;\n每个问题都必须在60秒内得到回答;\n你每次只能问一个问题,并且在问题前加上对应的问题序号;\n如果20个问题问完你还没有猜到,那就是你输了;\n你的目标是尽量在20个问题内猜到我想的是什么;\n如果在提问过程中你已经很确信猜到了我在想什么,可以提前终止问题并且给出问题的答案;\n如果提完了20个问题之后你仍然不确定我在想什么,也要给出你认为最接近的答案。\n"}], "type": "trace", "description": "我们来玩一个游戏,你扮演侦探,通过提问来猜我脑海里想的一个21世纪流行文化元素是什么。", "constraints": "我想到的这个东西,是一个在21世纪被广泛认知的流行文化元素;\n你可以向我提出最多20个问题进行猜测;\n每个问题都必须在60秒内得到回答;\n你每次只能问一个问题,并且在问题前加上对应的问题序号;\n如果20个问题问完你还没有猜到,那就是你输了;\n你的目标是尽量在20个问题内猜到我想的是什么;\n如果在提问过程中你已经很确信猜到了我在想什么,可以提前终止问题并且给出问题的答案;\n如果提完了20个问题之后你仍然不确定我在想什么,也要给出你认为最接近的答案。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["我想到的这个东西,是一个在21世纪被广泛认知的流行文化元素;", "你可以向我提出最多20个问题进行猜测;", "每个问题都必须在60秒内得到回答;", "你每次只能问一个问题,并且在问题前加上对应的问题序号;", "如果20个问题问完你还没有猜到,那就是你输了;", "你的目标是尽量在20个问题内猜到我想的是什么;", "如果在提问过程中你已经很确信猜到了我在想什么,可以提前终止问题并且给出问题的答案;", "如果提完了20个问题之后你仍然不确定我在想什么,也要给出你认为最接近的答案。"], "levels2": ["主题约束", "数值约束", "数值约束", "编号和列表约束", "数值约束", "数值约束", "先验条件约束", "先验条件约束"], "category": "trace2.0"} +{"id": "958", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "编写一个程序,能够自动化地监测并回复微博实时热点话题。\n程序应扮演一个智能观察员的角色,对微博上的实时热点进行24小时不间断监测;\n当热点话题更新时,程序能够自动监测并发送一条回复或评论;\n实现定时监测,每15分钟检查一次话题热度;\n当某个话题热度达到一定标准(例如:热搜榜前10名)时,自动发送评论参与讨论;\n回复的内容需遵循微博的文本格式约束,评论长度应在140字以内;\n使用Markdown格式突出关键词如#话题#;\n程序在回复时应使用礼貌、客观的语气风格;\n确保回复内容积极向上,不包含任何可能引起争议或侵犯隐私的信息。\n"}], "type": "trace", "description": "编写一个程序,能够自动化地监测并回复微博实时热点话题。", "constraints": "程序应扮演一个智能观察员的角色,对微博上的实时热点进行24小时不间断监测;\n当热点话题更新时,程序能够自动监测并发送一条回复或评论;\n实现定时监测,每15分钟检查一次话题热度;\n当某个话题热度达到一定标准(例如:热搜榜前10名)时,自动发送评论参与讨论;\n回复的内容需遵循微博的文本格式约束,评论长度应在140字以内;\n使用Markdown格式突出关键词如#话题#;\n程序在回复时应使用礼貌、客观的语气风格;\n确保回复内容积极向上,不包含任何可能引起争议或侵犯隐私的信息。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["程序应扮演一个智能观察员的角色,对微博上的实时热点进行24小时不间断监测;", "当热点话题更新时,程序能够自动监测并发送一条回复或评论;", "实现定时监测,每15分钟检查一次话题热度;", "当某个话题热度达到一定标准(例如:热搜榜前10名)时,自动发送评论参与讨论;", "回复的内容需遵循微博的文本格式约束,评论长度应在140字以内;", "使用Markdown格式突出关键词如#话题#;", "程序在回复时应使用礼貌、客观的语气风格;", "确保回复内容积极向上,不包含任何可能引起争议或侵犯隐私的信息。"], "levels2": ["角色扮演约束", "自然语言流程背景信息约束", "数值约束", "先验条件约束", "数值约束", "文本样式约束", "语气风格约束", "价值观约束"], "category": "trace2.0"} +{"id": "959", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以公司战略分析师的角色,对公司在市场竞争中保持竞争力的策略进行深入分析,报告应面向公司高层决策者,涵盖目标市场的细分、产品定位、市场营销推广策略、供应链管理、客户服务等方面,并提出具体的改进策略和实施计划。\n报告采用正式的商务报告格式,包括封面、摘要、目录、正文、结论和建议,以及参考文献列表;\n封面应包含报告标题、撰写者姓名、撰写日期;\n摘要应简明扼要地概述报告的主要发现和建议;\n目录应列出报告的主要部分和子部分的标题和对应页码;\n正文详细阐述分析结果,每个主要部分和子部分应有标题和编号,使用清晰的段落结构和合适的标题级别;\n结论部分总结分析结果,强调主要发现;\n建议部分基于分析结果,提出具体、可实施的改进策略和实施计划;\n参考文献列表包含所有引用的文献和数据来源,遵循APA格式。\n"}], "type": "trace", "description": "以公司战略分析师的角色,对公司在市场竞争中保持竞争力的策略进行深入分析,报告应面向公司高层决策者,涵盖目标市场的细分、产品定位、市场营销推广策略、供应链管理、客户服务等方面,并提出具体的改进策略和实施计划。", "constraints": "报告采用正式的商务报告格式,包括封面、摘要、目录、正文、结论和建议,以及参考文献列表;\n封面应包含报告标题、撰写者姓名、撰写日期;\n摘要应简明扼要地概述报告的主要发现和建议;\n目录应列出报告的主要部分和子部分的标题和对应页码;\n正文详细阐述分析结果,每个主要部分和子部分应有标题和编号,使用清晰的段落结构和合适的标题级别;\n结论部分总结分析结果,强调主要发现;\n建议部分基于分析结果,提出具体、可实施的改进策略和实施计划;\n参考文献列表包含所有引用的文献和数据来源,遵循APA格式。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["报告采用正式的商务报告格式,包括封面、摘要、目录、正文、结论和建议,以及参考文献列表;", "封面应包含报告标题、撰写者姓名、撰写日期;", "摘要应简明扼要地概述报告的主要发现和建议;", "目录应列出报告的主要部分和子部分的标题和对应页码;", "正文详细阐述分析结果,每个主要部分和子部分应有标题和编号,使用清晰的段落结构和合适的标题级别;", "结论部分总结分析结果,强调主要发现;", "建议部分基于分析结果,提出具体、可实施的改进策略和实施计划;", "参考文献列表包含所有引用的文献和数据来源,遵循APA格式。"], "levels2": ["输出格式约束", "文本样式约束", "文本样式约束", "层次化结构约束", "层次化结构约束", "层次化结构约束", "包含约束", "引用和参考约束"], "category": "trace2.0"} +{"id": "960", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一个使用TypeScript和Angular的功能组件,该组件显示一个动态的、可交互的按钮,按钮的标签或图标根据一天中的时间改变。当按钮被点击时,显示根据当前时间动态更改的问候语,其中包含用户的姓名。组件还应包含一个允许用户输入名字的输入字段。组件的代码结构需遵循Angular的最佳实践,并在Git中进行版本控制。最后,输出组件的结构和数据以JSON格式展示。\n组件显示一个动态的、可交互的按钮,其标签或图标应根据一天中的时间改变;\n按钮在点击时显示问候语,根据不同时间段(上午、下午、晚上)动态更改这些问候语;\n问候语中包含用户的姓名,实现个性化问候;\n组件具有一个输入字段,允许用户输入他们的名字;\n组件代码结构清晰,遵循Angular的最佳实践;\n所有代码变更在Git中进行版本控制;\n输出组件的结构和数据以JSON格式展示,包括组件名称、按钮的标签、当前时间、问候语和用户输入的名字。\n"}], "type": "trace", "description": "创建一个使用TypeScript和Angular的功能组件,该组件显示一个动态的、可交互的按钮,按钮的标签或图标根据一天中的时间改变。当按钮被点击时,显示根据当前时间动态更改的问候语,其中包含用户的姓名。组件还应包含一个允许用户输入名字的输入字段。组件的代码结构需遵循Angular的最佳实践,并在Git中进行版本控制。最后,输出组件的结构和数据以JSON格式展示。", "constraints": "组件显示一个动态的、可交互的按钮,其标签或图标应根据一天中的时间改变;\n按钮在点击时显示问候语,根据不同时间段(上午、下午、晚上)动态更改这些问候语;\n问候语中包含用户的姓名,实现个性化问候;\n组件具有一个输入字段,允许用户输入他们的名字;\n组件代码结构清晰,遵循Angular的最佳实践;\n所有代码变更在Git中进行版本控制;\n输出组件的结构和数据以JSON格式展示,包括组件名称、按钮的标签、当前时间、问候语和用户输入的名字。", "input": "NULL", "constraints_num": 7, "constraints_splits": ["组件显示一个动态的、可交互的按钮,其标签或图标应根据一天中的时间改变;", "按钮在点击时显示问候语,根据不同时间段(上午、下午、晚上)动态更改这些问候语;", "问候语中包含用户的姓名,实现个性化问候;", "组件具有一个输入字段,允许用户输入他们的名字;", "组件代码结构清晰,遵循Angular的最佳实践;", "所有代码变更在Git中进行版本控制;", "输出组件的结构和数据以JSON格式展示,包括组件名称、按钮的标签、当前时间、问候语和用户输入的名字。"], "levels2": ["包含约束", "包含约束", "包含约束", "包含约束", "语法结构约束", "输出格式约束", "输出格式约束"], "category": "trace2.0"} +{"id": "961", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "在 AWS 上实现使用 NodeJS 和 JavaScript 编写的 CRUD 操作的 REST API。\n需要遵循的编写流程:\n1 创建一个 AWS EC2 实例并配置环境;\n2 使用 Express.js 框架搭建 REST API;\n3 连接并配置 AWS RDS 数据库以存储数据;\n4 实现 CRUD 操作。\n在编写代码时,确保代码具有良好的注释和文档,要求遵循清晰、简洁的编程风格;\n输出格式为代码段,如示例所示;\n代码段需要在 AWS 环境中直接运行。\n"}], "type": "trace", "description": "在 AWS 上实现使用 NodeJS 和 JavaScript 编写的 CRUD 操作的 REST API。", "constraints": "需要遵循的编写流程:\n1 创建一个 AWS EC2 实例并配置环境;\n2 使用 Express.js 框架搭建 REST API;\n3 连接并配置 AWS RDS 数据库以存储数据;\n4 实现 CRUD 操作。\n在编写代码时,确保代码具有良好的注释和文档,要求遵循清晰、简洁的编程风格;\n输出格式为代码段,如示例所示;\n代码段需要在 AWS 环境中直接运行。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["需要遵循的编写流程:", "1 创建一个 AWS EC2 实例并配置环境;", "2 使用 Express.js 框架搭建 REST API;", "3 连接并配置 AWS RDS 数据库以存储数据;", "4 实现 CRUD 操作。", "在编写代码时,确保代码具有良好的注释和文档,要求遵循清晰、简洁的编程风格;", "输出格式为代码段,如示例所示;", "代码段需要在 AWS 环境中直接运行。"], "levels2": ["自然语言流程背景信息约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "主题约束", "语气风格约束", "输出格式约束", "自然语言流程背景信息约束"], "category": "trace2.0"} +{"id": "962", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "生成一份适合家长与孩子共同阅读的趣味科普读物目录\n整体采用JSON格式;\n包含至少5个主题,每个主题下不少于3个章节;\n每个章节字数控制在500至1000字之间;\n目录应具备清晰的层次化结构;\n内容上体现幽默、寓教于乐的风格;\n目录应包括:自然界的奇妙现象、人类身体奥秘、宇宙的未解之谜、科技与未来的想象、地球与环境保护;\n每个主题下设有趣味实验、科学故事、动手制作等子章节;\n目的旨在增强互动性和实践性。\n"}], "type": "trace", "description": "生成一份适合家长与孩子共同阅读的趣味科普读物目录", "constraints": "整体采用JSON格式;\n包含至少5个主题,每个主题下不少于3个章节;\n每个章节字数控制在500至1000字之间;\n目录应具备清晰的层次化结构;\n内容上体现幽默、寓教于乐的风格;\n目录应包括:自然界的奇妙现象、人类身体奥秘、宇宙的未解之谜、科技与未来的想象、地球与环境保护;\n每个主题下设有趣味实验、科学故事、动手制作等子章节;\n目的旨在增强互动性和实践性。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["整体采用JSON格式;", "包含至少5个主题,每个主题下不少于3个章节;", "每个章节字数控制在500至1000字之间;", "目录应具备清晰的层次化结构;", "内容上体现幽默、寓教于乐的风格;", "目录应包括:自然界的奇妙现象、人类身体奥秘、宇宙的未解之谜、科技与未来的想象、地球与环境保护;", "每个主题下设有趣味实验、科学故事、动手制作等子章节;", "目的旨在增强互动性和实践性。"], "levels2": ["输出格式约束", "数值约束", "数值约束", "层次化结构约束", "语气风格约束", "层次化结构约束", "层次化结构约束", "受众目标约束"], "category": "trace2.0"} +{"id": "963", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一个5x5的随机矩阵,计算每列和每行的和的L2范数,找出具有最大L2范数的列或行,以及可视化这个矩阵及其L2范数的结果。\n矩阵的每个元素精确到小数点后3位,范围在-0.5到0.5之间;\n使用Python的NumPy库生成矩阵;\nL2范数的计算结果精确到小数点后4位;\n在计算L2范数前,需确认矩阵中每个元素的生成无误;\n若存在多个相同的最大L2范数,需全部列出;\n热力图中不同数值应有明确的颜色区分;\n热力图需包含一个颜色标尺,展示颜色与数值之间的对应关系;\n热力图需包含标题和坐标轴标签,以清晰地展示数据含义。\n"}], "type": "trace", "description": "创建一个5x5的随机矩阵,计算每列和每行的和的L2范数,找出具有最大L2范数的列或行,以及可视化这个矩阵及其L2范数的结果。", "constraints": "矩阵的每个元素精确到小数点后3位,范围在-0.5到0.5之间;\n使用Python的NumPy库生成矩阵;\nL2范数的计算结果精确到小数点后4位;\n在计算L2范数前,需确认矩阵中每个元素的生成无误;\n若存在多个相同的最大L2范数,需全部列出;\n热力图中不同数值应有明确的颜色区分;\n热力图需包含一个颜色标尺,展示颜色与数值之间的对应关系;\n热力图需包含标题和坐标轴标签,以清晰地展示数据含义。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["矩阵的每个元素精确到小数点后3位,范围在-0.5到0.5之间;", "使用Python的NumPy库生成矩阵;", "L2范数的计算结果精确到小数点后4位;", "在计算L2范数前,需确认矩阵中每个元素的生成无误;", "若存在多个相同的最大L2范数,需全部列出;", "热力图中不同数值应有明确的颜色区分;", "热力图需包含一个颜色标尺,展示颜色与数值之间的对应关系;", "热力图需包含标题和坐标轴标签,以清晰地展示数据含义。"], "levels2": ["数值约束", "包含约束", "数值约束", "先验条件约束", "数值约束", "输出格式约束", "输出格式约束", "文本样式约束"], "category": "trace1.0"} +{"id": "964", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "基于字典和控制流的高级技术,编写一个Python代码,生成特定格式的字典并以JSON格式输出,同时包含元数据。\n生成的字典应该有10个键,每个键是一个介于10到100之间的随机质数。\n每个质数对应的值是另一个字典,这个“子”字典应该有五个键,这些键应该是ISO 639-1语言代码。\n这些语言代码应选自一个预定义的10种语言列表中。\n键的名称被翻译为特定的语言。\n子字典的值是每个质数的ASCII值,且ASCII值范围应在33到126之间。\n生成的字典需要支持从序列的任意点进行迭代或搜索,并且需要高效地进行。\n不使用额外的库,代码应在Python 3.8版本上运行。\nJSON对象中还应包含元数据,包括生成时间戳和版本号。\n"}], "type": "trace", "description": "基于字典和控制流的高级技术,编写一个Python代码,生成特定格式的字典并以JSON格式输出,同时包含元数据。", "constraints": "生成的字典应该有10个键,每个键是一个介于10到100之间的随机质数。\n每个质数对应的值是另一个字典,这个“子”字典应该有五个键,这些键应该是ISO 639-1语言代码。\n这些语言代码应选自一个预定义的10种语言列表中。\n键的名称被翻译为特定的语言。\n子字典的值是每个质数的ASCII值,且ASCII值范围应在33到126之间。\n生成的字典需要支持从序列的任意点进行迭代或搜索,并且需要高效地进行。\n不使用额外的库,代码应在Python 3.8版本上运行。\nJSON对象中还应包含元数据,包括生成时间戳和版本号。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["生成的字典应该有10个键,每个键是一个介于10到100之间的随机质数。", "每个质数对应的值是另一个字典,这个“子”字典应该有五个键,这些键应该是ISO 639-1语言代码。", "这些语言代码应选自一个预定义的10种语言列表中。", "键的名称被翻译为特定的语言。", "子字典的值是每个质数的ASCII值,且ASCII值范围应在33到126之间。", "生成的字典需要支持从序列的任意点进行迭代或搜索,并且需要高效地进行。", "不使用额外的库,代码应在Python 3.8版本上运行。", "JSON对象中还应包含元数据,包括生成时间戳和版本号。"], "levels2": ["数值约束", "输出格式约束", "数值约束", "多语言约束", "数值约束", "输出格式约束", "语言特征约束", "输出格式约束"], "category": "trace2.0"} +{"id": "965", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "编写一个Python程序,提示用户输入n个数字,计算平均值并询问用户是否继续计算新的平均值。\n程序能够处理不同类型的输入(正数、负数、浮点数等)。\n程序在输出结果后询问用户是否需要继续计算平均值。\n如果用户输入\"是\",则提示用户输入新的数字,重新计算平均值并输出结果。\n如果用户输入\"否\",则程序结束。\n在程序结束前,确保打印出感谢用户使用该程序的信息。\n你将扮演一位经验丰富的程序员导师,讲解如何编写这个程序,并确保解释清晰、易于理解,适合初学者学习。\n使用鼓励和耐心的语气,确保学习过程中的积极情绪,帮助初学者克服编程学习中的挑战。\n输出应包含Markdown格式的代码段落和解释段落,确保代码和解释清晰可读,易于初学者理解。\n"}], "type": "trace", "description": "编写一个Python程序,提示用户输入n个数字,计算平均值并询问用户是否继续计算新的平均值。", "constraints": "程序能够处理不同类型的输入(正数、负数、浮点数等)。\n程序在输出结果后询问用户是否需要继续计算平均值。\n如果用户输入\"是\",则提示用户输入新的数字,重新计算平均值并输出结果。\n如果用户输入\"否\",则程序结束。\n在程序结束前,确保打印出感谢用户使用该程序的信息。\n你将扮演一位经验丰富的程序员导师,讲解如何编写这个程序,并确保解释清晰、易于理解,适合初学者学习。\n使用鼓励和耐心的语气,确保学习过程中的积极情绪,帮助初学者克服编程学习中的挑战。\n输出应包含Markdown格式的代码段落和解释段落,确保代码和解释清晰可读,易于初学者理解。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["程序能够处理不同类型的输入(正数、负数、浮点数等)。", "程序在输出结果后询问用户是否需要继续计算平均值。", "如果用户输入\"是\",则提示用户输入新的数字,重新计算平均值并输出结果。", "如果用户输入\"否\",则程序结束。", "在程序结束前,确保打印出感谢用户使用该程序的信息。", "你将扮演一位经验丰富的程序员导师,讲解如何编写这个程序,并确保解释清晰、易于理解,适合初学者学习。", "使用鼓励和耐心的语气,确保学习过程中的积极情绪,帮助初学者克服编程学习中的挑战。", "输出应包含Markdown格式的代码段落和解释段落,确保代码和解释清晰可读,易于初学者理解。"], "levels2": ["数值约束", "自然语言流程背景信息约束", "先验条件约束", "先验条件约束", "包含约束", "角色扮演约束", "语气风格约束", "输出格式约束"], "category": "trace2.0"} +{"id": "966", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以一名医疗健康领域的专家身份,列出目前(2023年)我国具备哪些条件的未成年人可以献血。\n未成年人的年龄应在16至18岁之间;\n必须经过全面的健康状况评估,确保其身体状况适合献血;\n献血前需获得法定监护人的书面同意;\n未成年人必须充分了解献血过程及可能的风险,且自愿参与;\n献血场所必须设有专业医护人员,以确保献血过程的安全;\n每次献血量不得超过总血量的一定比例,具体比例应由专业医生根据未成年人的体重和健康状况确定;\n必须符合当地法律法规;\n献血过程必须确保未成年人的安全和健康不受影响。\n"}], "type": "trace", "description": "以一名医疗健康领域的专家身份,列出目前(2023年)我国具备哪些条件的未成年人可以献血。", "constraints": "未成年人的年龄应在16至18岁之间;\n必须经过全面的健康状况评估,确保其身体状况适合献血;\n献血前需获得法定监护人的书面同意;\n未成年人必须充分了解献血过程及可能的风险,且自愿参与;\n献血场所必须设有专业医护人员,以确保献血过程的安全;\n每次献血量不得超过总血量的一定比例,具体比例应由专业医生根据未成年人的体重和健康状况确定;\n必须符合当地法律法规;\n献血过程必须确保未成年人的安全和健康不受影响。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["未成年人的年龄应在16至18岁之间;", "必须经过全面的健康状况评估,确保其身体状况适合献血;", "献血前需获得法定监护人的书面同意;", "未成年人必须充分了解献血过程及可能的风险,且自愿参与;", "献血场所必须设有专业医护人员,以确保献血过程的安全;", "每次献血量不得超过总血量的一定比例,具体比例应由专业医生根据未成年人的体重和健康状况确定;", "必须符合当地法律法规;", "献血过程必须确保未成年人的安全和健康不受影响。"], "levels2": ["数值约束", "包含约束", "先验条件约束", "价值观约束", "价值观约束", "数值约束", "价值观约束", "价值观约束"], "category": "trace1.0"} +{"id": "967", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "设计一个简洁明了的冰箱维修手册,手册共需包含用户需知、规则事项、维修程序和Q&A常见问题解答四个部分。\n用户需知部分使用无序列表组织,每条需知不超过50字,置于手册开头;\n规则事项使用编号列表,每条规则事项不超过100字,有清晰层次,用标题和子标题组织;\n维修程序采用表格形式,包括步骤编号、描述、所需工具和红色标注的安全提示,每步骤描述不超过150字;\nQ&A常见问题解答部分使用JSON格式,每对问答总字数不超过200字;\n手册需附带冰箱品牌型号、故障代码表、官方客服和维修政策等信息,确保准确无误且易于查找;\n在编写完用户需知后,才能编写规则事项;\n在规则事项完成后,才能编写维修程序;\nQ&A常见问题解答需在所有部分完成后,基于可能的疑问进行编写。\n"}], "type": "trace", "description": "设计一个简洁明了的冰箱维修手册,手册共需包含用户需知、规则事项、维修程序和Q&A常见问题解答四个部分。", "constraints": "用户需知部分使用无序列表组织,每条需知不超过50字,置于手册开头;\n规则事项使用编号列表,每条规则事项不超过100字,有清晰层次,用标题和子标题组织;\n维修程序采用表格形式,包括步骤编号、描述、所需工具和红色标注的安全提示,每步骤描述不超过150字;\nQ&A常见问题解答部分使用JSON格式,每对问答总字数不超过200字;\n手册需附带冰箱品牌型号、故障代码表、官方客服和维修政策等信息,确保准确无误且易于查找;\n在编写完用户需知后,才能编写规则事项;\n在规则事项完成后,才能编写维修程序;\nQ&A常见问题解答需在所有部分完成后,基于可能的疑问进行编写。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["用户需知部分使用无序列表组织,每条需知不超过50字,置于手册开头;", "规则事项使用编号列表,每条规则事项不超过100字,有清晰层次,用标题和子标题组织;", "维修程序采用表格形式,包括步骤编号、描述、所需工具和红色标注的安全提示,每步骤描述不超过150字;", "Q&A常见问题解答部分使用JSON格式,每对问答总字数不超过200字;", "手册需附带冰箱品牌型号、故障代码表、官方客服和维修政策等信息,确保准确无误且易于查找;", "在编写完用户需知后,才能编写规则事项;", "在规则事项完成后,才能编写维修程序;", "Q&A常见问题解答需在所有部分完成后,基于可能的疑问进行编写。"], "levels2": ["文本样式约束", "层次化结构约束", "表格背景信息约束", "输出格式约束", "包含约束", "先验条件约束", "先验条件约束", "层次化结构约束"], "category": "trace1.0"} +{"id": "968", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "统计某个网站上的访问量,并可视化展示不同时间段的访问变化趋势\n输出为JSON格式的数据文件;\n使用折线图来展示数据;\n图表颜色方案应为蓝色和灰色;\n图表标题需使用粗体字,且标题应为“2023年网站访问量变化趋势图”;\n数据覆盖了至少365天的访问记录;\n每天的访问次数应精确到小时级别,以显示每小时的访问量变化;\n图表需包含图例,说明颜色代表的不同时间段,以及每个数据点的鼠标悬停提示,显示具体日期和访问次数;\n生成的图表应具有交互性,允许用户通过缩放和平移来查看特定日期范围内的详细数据;\n"}], "type": "trace", "description": "统计某个网站上的访问量,并可视化展示不同时间段的访问变化趋势", "constraints": "输出为JSON格式的数据文件;\n使用折线图来展示数据;\n图表颜色方案应为蓝色和灰色;\n图表标题需使用粗体字,且标题应为“2023年网站访问量变化趋势图”;\n数据覆盖了至少365天的访问记录;\n每天的访问次数应精确到小时级别,以显示每小时的访问量变化;\n图表需包含图例,说明颜色代表的不同时间段,以及每个数据点的鼠标悬停提示,显示具体日期和访问次数;\n生成的图表应具有交互性,允许用户通过缩放和平移来查看特定日期范围内的详细数据;", "input": "NULL", "constraints_num": 8, "constraints_splits": ["输出为JSON格式的数据文件;", "使用折线图来展示数据;", "图表颜色方案应为蓝色和灰色;", "图表标题需使用粗体字,且标题应为“2023年网站访问量变化趋势图”;", "数据覆盖了至少365天的访问记录;", "每天的访问次数应精确到小时级别,以显示每小时的访问量变化;", "图表需包含图例,说明颜色代表的不同时间段,以及每个数据点的鼠标悬停提示,显示具体日期和访问次数;", "生成的图表应具有交互性,允许用户通过缩放和平移来查看特定日期范围内的详细数据;"], "levels2": ["输出格式约束", "输出格式约束", "文本样式约束", "文本样式约束", "数值约束", "数值约束", "输出格式约束", "输出格式约束"], "category": "trace2.0"} +{"id": "969", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "写一个关于两个人共度情人节的美好场景。\n角色设定为一对恋爱多年的伴侣;\n场景设定在一个充满灯光与浪漫氛围的海边别墅;\n情人节特别夜晚的活动包括准备并共度烛光晚餐,共享葡萄酒,回忆过去的美好时光,同时一起许下未来的愿望;\n场景描述需充满温馨与浪漫的气息,表达出爱意、感激以及对未来的憧憬;\n应包含标题“浪漫情人节之夜”;\n正文分为三部分:1) 描述情人节前的准备过程;2) 描述共度晚餐的情景;3) 描述晚餐后的活动,如散步、看星星等;\n每一部分的标题应为粗体;\n段落间应有适当的空白行,以突出层次化结构。\n"}], "type": "trace", "description": "写一个关于两个人共度情人节的美好场景。", "constraints": "角色设定为一对恋爱多年的伴侣;\n场景设定在一个充满灯光与浪漫氛围的海边别墅;\n情人节特别夜晚的活动包括准备并共度烛光晚餐,共享葡萄酒,回忆过去的美好时光,同时一起许下未来的愿望;\n场景描述需充满温馨与浪漫的气息,表达出爱意、感激以及对未来的憧憬;\n应包含标题“浪漫情人节之夜”;\n正文分为三部分:1) 描述情人节前的准备过程;2) 描述共度晚餐的情景;3) 描述晚餐后的活动,如散步、看星星等;\n每一部分的标题应为粗体;\n段落间应有适当的空白行,以突出层次化结构。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["角色设定为一对恋爱多年的伴侣;", "场景设定在一个充满灯光与浪漫氛围的海边别墅;", "情人节特别夜晚的活动包括准备并共度烛光晚餐,共享葡萄酒,回忆过去的美好时光,同时一起许下未来的愿望;", "场景描述需充满温馨与浪漫的气息,表达出爱意、感激以及对未来的憧憬;", "应包含标题“浪漫情人节之夜”;", "正文分为三部分:1) 描述情人节前的准备过程;2) 描述共度晚餐的情景;3) 描述晚餐后的活动,如散步、看星星等;", "每一部分的标题应为粗体;", "段落间应有适当的空白行,以突出层次化结构。"], "levels2": ["角色扮演约束", "角色扮演约束", "包含约束", "情感情绪约束", "层次化结构约束", "层次化结构约束", "文本样式约束", "层次化结构约束"], "category": "trace1.0"} +{"id": "970", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "作为音乐评论家,分析合唱表演中独唱歌手和合唱之间的关系\n独唱歌手通常担任引领角色,通过个人声音的魅力吸引听众,为合唱表演增添亮点。\n合唱部分提供和声支持,营造氛围,使独唱更加突出,两者相辅相成,展现出音乐的层次感。\n在表演中,独唱与合唱之间的转换应平滑,确保整体表现的连贯性,避免突兀的中断感。\n优秀的指挥能够协调独唱歌手和合唱团之间的互动,确保音乐表达的和谐与平衡。\n独唱部分与合唱部分应该在曲目中均衡分布,以保持听众的兴趣和参与感,避免任何一方过度占据主导。\n在排练过程中,独唱者与合唱团员之间的沟通和合作至关重要,以确保表演时的默契和统一性。\n成功的合唱表演要求独唱者和合唱团员都具备高度的专业技巧和音乐素养,共同致力于音乐的完美呈现。\n每个要点至少包含20个单词,确保深度和完整性。\n"}], "type": "trace", "description": "作为音乐评论家,分析合唱表演中独唱歌手和合唱之间的关系", "constraints": "独唱歌手通常担任引领角色,通过个人声音的魅力吸引听众,为合唱表演增添亮点。\n合唱部分提供和声支持,营造氛围,使独唱更加突出,两者相辅相成,展现出音乐的层次感。\n在表演中,独唱与合唱之间的转换应平滑,确保整体表现的连贯性,避免突兀的中断感。\n优秀的指挥能够协调独唱歌手和合唱团之间的互动,确保音乐表达的和谐与平衡。\n独唱部分与合唱部分应该在曲目中均衡分布,以保持听众的兴趣和参与感,避免任何一方过度占据主导。\n在排练过程中,独唱者与合唱团员之间的沟通和合作至关重要,以确保表演时的默契和统一性。\n成功的合唱表演要求独唱者和合唱团员都具备高度的专业技巧和音乐素养,共同致力于音乐的完美呈现。\n每个要点至少包含20个单词,确保深度和完整性。", "input": "NULL", "constraints_num": 8, "constraints_splits": ["独唱歌手通常担任引领角色,通过个人声音的魅力吸引听众,为合唱表演增添亮点。", "合唱部分提供和声支持,营造氛围,使独唱更加突出,两者相辅相成,展现出音乐的层次感。", "在表演中,独唱与合唱之间的转换应平滑,确保整体表现的连贯性,避免突兀的中断感。", "优秀的指挥能够协调独唱歌手和合唱团之间的互动,确保音乐表达的和谐与平衡。", "独唱部分与合唱部分应该在曲目中均衡分布,以保持听众的兴趣和参与感,避免任何一方过度占据主导。", "在排练过程中,独唱者与合唱团员之间的沟通和合作至关重要,以确保表演时的默契和统一性。", "成功的合唱表演要求独唱者和合唱团员都具备高度的专业技巧和音乐素养,共同致力于音乐的完美呈现。", "每个要点至少包含20个单词,确保深度和完整性。"], "levels2": ["角色扮演约束", "包含约束", "语气风格约束", "主题约束", "语气风格约束", "主题约束", "主题约束", "数值约束"], "category": "trace2.0"} +{"id": "971", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "请给我一个示例代码,使用sklearn的ndcg_score函数处理不等长的输入。\n代码长度不少于30行;\n包含对输入数据的预处理和异常处理,确保代码的健壮性和可读性;\n代码示例需适用于数据分析师和机器学习工程师两个角色;\n数据分析师角色关注的是代码的可解释性和效率;\n机器学习工程师关注的是代码的准确性和扩展性;\n输入数据必须经过初步清洗,确保无nan和inf值;\nndcg_score函数处理的输入数据应转化为numpy数组格式;\n在计算ndcg时,输入参数k的值应根据输入数据的长度动态调整,以确保计算的有效性;\n代码中应包含对sklearn版本的检查,确保代码兼容性。\n"}], "type": "trace", "description": "请给我一个示例代码,使用sklearn的ndcg_score函数处理不等长的输入。", "constraints": "代码长度不少于30行;\n包含对输入数据的预处理和异常处理,确保代码的健壮性和可读性;\n代码示例需适用于数据分析师和机器学习工程师两个角色;\n数据分析师角色关注的是代码的可解释性和效率;\n机器学习工程师关注的是代码的准确性和扩展性;\n输入数据必须经过初步清洗,确保无nan和inf值;\nndcg_score函数处理的输入数据应转化为numpy数组格式;\n在计算ndcg时,输入参数k的值应根据输入数据的长度动态调整,以确保计算的有效性;\n代码中应包含对sklearn版本的检查,确保代码兼容性。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["代码长度不少于30行;", "包含对输入数据的预处理和异常处理,确保代码的健壮性和可读性;", "代码示例需适用于数据分析师和机器学习工程师两个角色;", "数据分析师角色关注的是代码的可解释性和效率;", "机器学习工程师关注的是代码的准确性和扩展性;", "输入数据必须经过初步清洗,确保无nan和inf值;", "ndcg_score函数处理的输入数据应转化为numpy数组格式;", "在计算ndcg时,输入参数k的值应根据输入数据的长度动态调整,以确保计算的有效性;", "代码中应包含对sklearn版本的检查,确保代码兼容性。"], "levels2": ["数值约束", "包含约束", "受众目标约束", "角色扮演约束", "主题约束", "数值约束", "输出格式约束", "数值约束", "包含约束"], "category": "trace2.0"} +{"id": "972", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以提高大众对少数族裔权益的认识为主题,写一篇社论,强调少数族裔在社会平等中的重要性,同时谴责那些歧视和忽视少数族裔权益的行为。\n社论的撰写需围绕提高大众对少数族裔权益的认识这一主题;\n社论中首先列出少数族裔面临的主要问题;\n讨论社会平等的重要性;\n文章呼吁社会各界共同推动平等与正义;\n社论的语气应坚定而富有同情心;\n使用比喻和拟人等修辞手法,使读者能够深刻体会到少数族裔的困境;\n社论中应包含至少三个具体案例或数据支持论点;\n文章末尾提供一个行动呼吁,鼓励读者采取具体行动;\n社论以Markdown格式输出,便于在社交媒体和在线平台上分享;\n"}], "type": "trace", "description": "以提高大众对少数族裔权益的认识为主题,写一篇社论,强调少数族裔在社会平等中的重要性,同时谴责那些歧视和忽视少数族裔权益的行为。", "constraints": "社论的撰写需围绕提高大众对少数族裔权益的认识这一主题;\n社论中首先列出少数族裔面临的主要问题;\n讨论社会平等的重要性;\n文章呼吁社会各界共同推动平等与正义;\n社论的语气应坚定而富有同情心;\n使用比喻和拟人等修辞手法,使读者能够深刻体会到少数族裔的困境;\n社论中应包含至少三个具体案例或数据支持论点;\n文章末尾提供一个行动呼吁,鼓励读者采取具体行动;\n社论以Markdown格式输出,便于在社交媒体和在线平台上分享;", "input": "NULL", "constraints_num": 9, "constraints_splits": ["社论的撰写需围绕提高大众对少数族裔权益的认识这一主题;", "社论中首先列出少数族裔面临的主要问题;", "讨论社会平等的重要性;", "文章呼吁社会各界共同推动平等与正义;", "社论的语气应坚定而富有同情心;", "使用比喻和拟人等修辞手法,使读者能够深刻体会到少数族裔的困境;", "社论中应包含至少三个具体案例或数据支持论点;", "文章末尾提供一个行动呼吁,鼓励读者采取具体行动;", "社论以Markdown格式输出,便于在社交媒体和在线平台上分享;"], "levels2": ["主题约束", "包含约束", "主题约束", "价值观约束", "语气风格约束", "语言特征约束", "引用和参考约束", "文本样式约束", "输出格式约束"], "category": "trace1.0"} +{"id": "973", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "找出一个数学关系,将等腰三角形的底边长度n和顶角y的度数联系起来,特别地,当底边长度为20单位时,表示顶角y的度数为关于n的三角函数方程,并设计一个算法来解决这个问题,验证其正确性。\n等腰三角形的数学关系;\n底边的具体长度n为偶数,且n > 2;\n底角x和顶角y的度数分别是正数;\n底边长度与顶角度数的数学关系;\n算法设计的必要性;\n算法步骤的清晰表述;\n算法步骤的逻辑性;\n算法验证的可行性;\n算法的逻辑一致性;\n# Inputs:\n底边长度n为偶数单位,n > 2;\n"}], "type": "trace", "description": "找出一个数学关系,将等腰三角形的底边长度n和顶角y的度数联系起来,特别地,当底边长度为20单位时,表示顶角y的度数为关于n的三角函数方程,并设计一个算法来解决这个问题,验证其正确性。", "constraints": "等腰三角形的数学关系;\n底边的具体长度n为偶数,且n > 2;\n底角x和顶角y的度数分别是正数;\n底边长度与顶角度数的数学关系;\n算法设计的必要性;\n算法步骤的清晰表述;\n算法步骤的逻辑性;\n算法验证的可行性;\n算法的逻辑一致性;", "input": "底边长度n为偶数单位,n > 2;", "constraints_num": 9, "constraints_splits": ["等腰三角形的数学关系;", "底边的具体长度n为偶数,且n > 2;", "底角x和顶角y的度数分别是正数;", "底边长度与顶角度数的数学关系;", "算法设计的必要性;", "算法步骤的清晰表述;", "算法步骤的逻辑性;", "算法验证的可行性;", "算法的逻辑一致性;"], "levels2": ["主题约束", "数值约束", "数值约束", "主题约束", "包含约束", "文本样式约束", "包含约束", "包含约束", "语法结构约束"], "category": "trace2.0"} +{"id": "974", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "编写一篇关于自然技术正在改变人们生活方式的社论,主题为“自然技术的未来”。\n社论要延续之前社论的话题;\n使用情景对话的形式,两人(一位是环保主义者,另一位是科技爱好者)讨论自然技术将如何改变他们的日常生活;\n对话要求使用礼貌、友好的语气风格;\n对话中必须包含“生态平衡”、“可持续发展”、“人与自然和谐共生”等关键词和短语;\n文章结尾提出对科技未来发展的一些质疑;\n文章结构应遵循层次化结构,包括引言、正文和结尾;\n正文部分应分为两部分,第一部分是环保主义者对自然技术的看法,第二部分是科技爱好者对自然技术的看法;\n社论应引发读者思考科技对人类生活方式的影响,同时提倡合理运用科技,维护自然与人类共生的命运共同体;\n文章应使用Markdown格式,包括标题、粗体关键词和引用格式。\n"}], "type": "trace", "description": "编写一篇关于自然技术正在改变人们生活方式的社论,主题为“自然技术的未来”。", "constraints": "社论要延续之前社论的话题;\n使用情景对话的形式,两人(一位是环保主义者,另一位是科技爱好者)讨论自然技术将如何改变他们的日常生活;\n对话要求使用礼貌、友好的语气风格;\n对话中必须包含“生态平衡”、“可持续发展”、“人与自然和谐共生”等关键词和短语;\n文章结尾提出对科技未来发展的一些质疑;\n文章结构应遵循层次化结构,包括引言、正文和结尾;\n正文部分应分为两部分,第一部分是环保主义者对自然技术的看法,第二部分是科技爱好者对自然技术的看法;\n社论应引发读者思考科技对人类生活方式的影响,同时提倡合理运用科技,维护自然与人类共生的命运共同体;\n文章应使用Markdown格式,包括标题、粗体关键词和引用格式。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["社论要延续之前社论的话题;", "使用情景对话的形式,两人(一位是环保主义者,另一位是科技爱好者)讨论自然技术将如何改变他们的日常生活;", "对话要求使用礼貌、友好的语气风格;", "对话中必须包含“生态平衡”、“可持续发展”、“人与自然和谐共生”等关键词和短语;", "文章结尾提出对科技未来发展的一些质疑;", "文章结构应遵循层次化结构,包括引言、正文和结尾;", "正文部分应分为两部分,第一部分是环保主义者对自然技术的看法,第二部分是科技爱好者对自然技术的看法;", "社论应引发读者思考科技对人类生活方式的影响,同时提倡合理运用科技,维护自然与人类共生的命运共同体;", "文章应使用Markdown格式,包括标题、粗体关键词和引用格式。"], "levels2": ["主题约束", "角色扮演约束", "语气风格约束", "包含约束", "包含约束", "层次化结构约束", "层次化结构约束", "价值观约束", "输出格式约束"], "category": "trace2.0"} +{"id": "975", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以公司安全主管的身份,撰写一份针对员工的安全规范手册。\n手册应包含公司安全政策和规定;\n手册应包含工作场所的具体安全操作指南;\n手册应包含员工行为规范,以维护公司和谐发展的相关要求;\n手册应包含紧急应对流程,包括火灾、地震等突发事件的应对措施;\n手册应包含网络安全和个人信息保护指南;\n手册应包含员工健康与福利章节,包括心理健康支持和身体健康的维护;\n手册应采用正式且权威的语气风格,强调安全的必要性和重要性;\n手册应当以PDF格式输出,包含目录和章节编号,方便员工查阅和学习;\n手册中应包含相关的插图和图表,以视觉方式辅助理解,确保所有员工都能轻易地获取和理解安全信息。\n"}], "type": "trace", "description": "以公司安全主管的身份,撰写一份针对员工的安全规范手册。", "constraints": "手册应包含公司安全政策和规定;\n手册应包含工作场所的具体安全操作指南;\n手册应包含员工行为规范,以维护公司和谐发展的相关要求;\n手册应包含紧急应对流程,包括火灾、地震等突发事件的应对措施;\n手册应包含网络安全和个人信息保护指南;\n手册应包含员工健康与福利章节,包括心理健康支持和身体健康的维护;\n手册应采用正式且权威的语气风格,强调安全的必要性和重要性;\n手册应当以PDF格式输出,包含目录和章节编号,方便员工查阅和学习;\n手册中应包含相关的插图和图表,以视觉方式辅助理解,确保所有员工都能轻易地获取和理解安全信息。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["手册应包含公司安全政策和规定;", "手册应包含工作场所的具体安全操作指南;", "手册应包含员工行为规范,以维护公司和谐发展的相关要求;", "手册应包含紧急应对流程,包括火灾、地震等突发事件的应对措施;", "手册应包含网络安全和个人信息保护指南;", "手册应包含员工健康与福利章节,包括心理健康支持和身体健康的维护;", "手册应采用正式且权威的语气风格,强调安全的必要性和重要性;", "手册应当以PDF格式输出,包含目录和章节编号,方便员工查阅和学习;", "手册中应包含相关的插图和图表,以视觉方式辅助理解,确保所有员工都能轻易地获取和理解安全信息。"], "levels2": ["包含约束", "包含约束", "包含约束", "包含约束", "包含约束", "包含约束", "语气风格约束", "输出格式约束", "文本样式约束"], "category": "trace1.0"} +{"id": "976", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "生成一篇关于正则表达式、爬虫、数据抓取和异常处理的文章。\n文章内容需确保逻辑清晰,结构有条理;\n采用 Markdown 格式输出;\n全文应使用严谨正式的语气风格;\n文章结构应包含引言部分,详细解释正则表达式、爬虫、数据抓取和异常处理的概念及其在数据抓取中的应用;\n正文部分则通过具体的案例分析,展示如何在实际操作中运用这些技术进行数据抓取,以及在数据抓取过程中如何处理异常情况;\n结论部分应总结这些技术在数据抓取中的重要性和潜在的挑战;\n文章应至少包含两个使用正则表达式进行数据匹配的例子;\n一个例子利用爬虫进行数据抓取的示例;\n另一个例子在数据抓取过程中处理异常的场景。\n"}], "type": "trace", "description": "生成一篇关于正则表达式、爬虫、数据抓取和异常处理的文章。", "constraints": "文章内容需确保逻辑清晰,结构有条理;\n采用 Markdown 格式输出;\n全文应使用严谨正式的语气风格;\n文章结构应包含引言部分,详细解释正则表达式、爬虫、数据抓取和异常处理的概念及其在数据抓取中的应用;\n正文部分则通过具体的案例分析,展示如何在实际操作中运用这些技术进行数据抓取,以及在数据抓取过程中如何处理异常情况;\n结论部分应总结这些技术在数据抓取中的重要性和潜在的挑战;\n文章应至少包含两个使用正则表达式进行数据匹配的例子;\n一个例子利用爬虫进行数据抓取的示例;\n另一个例子在数据抓取过程中处理异常的场景。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["文章内容需确保逻辑清晰,结构有条理;", "采用 Markdown 格式输出;", "全文应使用严谨正式的语气风格;", "文章结构应包含引言部分,详细解释正则表达式、爬虫、数据抓取和异常处理的概念及其在数据抓取中的应用;", "正文部分则通过具体的案例分析,展示如何在实际操作中运用这些技术进行数据抓取,以及在数据抓取过程中如何处理异常情况;", "结论部分应总结这些技术在数据抓取中的重要性和潜在的挑战;", "文章应至少包含两个使用正则表达式进行数据匹配的例子;", "一个例子利用爬虫进行数据抓取的示例;", "另一个例子在数据抓取过程中处理异常的场景。"], "levels2": ["语法结构约束", "输出格式约束", "语气风格约束", "层次化结构约束", "包含约束", "包含约束", "包含约束", "包含约束", "包含约束"], "category": "trace2.0"} +{"id": "977", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "从新兴行业创业者的角度出发,创建个人品牌建设计划。\n计划中需包含品牌识别要素(标志、标语等);\n需进行一次市场调研,以数据形式呈现目标受众的特征;\n需列出不少于5种品牌宣传渠道,并对每一种渠道的优缺点进行分析;\n品牌风格和形象定位需与个人经历、技能和兴趣相匹配;\n需给出至少3个相关案例作为参考;\n计划需充分考虑市场情况、竞争对手情况和消费者需求等因素;\n需完成竞品分析报告,报告中需包含至少10个竞争对手的信息;\n计划需按照特定的层次化结构进行组织,如使用标题和子标题;\n计划中需包含引用和参考文献,确保数据和信息的准确性。\n"}], "type": "trace", "description": "从新兴行业创业者的角度出发,创建个人品牌建设计划。", "constraints": "计划中需包含品牌识别要素(标志、标语等);\n需进行一次市场调研,以数据形式呈现目标受众的特征;\n需列出不少于5种品牌宣传渠道,并对每一种渠道的优缺点进行分析;\n品牌风格和形象定位需与个人经历、技能和兴趣相匹配;\n需给出至少3个相关案例作为参考;\n计划需充分考虑市场情况、竞争对手情况和消费者需求等因素;\n需完成竞品分析报告,报告中需包含至少10个竞争对手的信息;\n计划需按照特定的层次化结构进行组织,如使用标题和子标题;\n计划中需包含引用和参考文献,确保数据和信息的准确性。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["计划中需包含品牌识别要素(标志、标语等);", "需进行一次市场调研,以数据形式呈现目标受众的特征;", "需列出不少于5种品牌宣传渠道,并对每一种渠道的优缺点进行分析;", "品牌风格和形象定位需与个人经历、技能和兴趣相匹配;", "需给出至少3个相关案例作为参考;", "计划需充分考虑市场情况、竞争对手情况和消费者需求等因素;", "需完成竞品分析报告,报告中需包含至少10个竞争对手的信息;", "计划需按照特定的层次化结构进行组织,如使用标题和子标题;", "计划中需包含引用和参考文献,确保数据和信息的准确性。"], "levels2": ["包含约束", "输出格式约束", "数值约束", "语气风格约束", "引用和参考约束", "包含约束", "数值约束", "层次化结构约束", "引用和参考约束"], "category": "trace1.0"} +{"id": "978", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "编写一个Python程序,自动整理Git提交的格式。\n确保每行不超过72个字符,且单词不会被截断;\n函数头部必须使用三个双引号包含的多行字符串来描述函数用途;\n参数和返回值应使用TypeHint进行类型注释;\n所有代码缩进应使用4个空格;\n所有内部函数或方法都应有清晰的文档说明;\n输出结果应以字典形式返回,键为提交的SHA,值为整理后的提交信息;\n如果输入为空,函数应返回空字典;\n程序应确保单词不会被截断,即使这意味着某些行可能会稍微超过72个字符的限制;\n如果确实发生单词截断,程序应自动调整到下一行,并确保新行的开始与被截断单词的开始对齐。\n"}], "type": "trace", "description": "编写一个Python程序,自动整理Git提交的格式。", "constraints": "确保每行不超过72个字符,且单词不会被截断;\n函数头部必须使用三个双引号包含的多行字符串来描述函数用途;\n参数和返回值应使用TypeHint进行类型注释;\n所有代码缩进应使用4个空格;\n所有内部函数或方法都应有清晰的文档说明;\n输出结果应以字典形式返回,键为提交的SHA,值为整理后的提交信息;\n如果输入为空,函数应返回空字典;\n程序应确保单词不会被截断,即使这意味着某些行可能会稍微超过72个字符的限制;\n如果确实发生单词截断,程序应自动调整到下一行,并确保新行的开始与被截断单词的开始对齐。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["确保每行不超过72个字符,且单词不会被截断;", "函数头部必须使用三个双引号包含的多行字符串来描述函数用途;", "参数和返回值应使用TypeHint进行类型注释;", "所有代码缩进应使用4个空格;", "所有内部函数或方法都应有清晰的文档说明;", "输出结果应以字典形式返回,键为提交的SHA,值为整理后的提交信息;", "如果输入为空,函数应返回空字典;", "程序应确保单词不会被截断,即使这意味着某些行可能会稍微超过72个字符的限制;", "如果确实发生单词截断,程序应自动调整到下一行,并确保新行的开始与被截断单词的开始对齐。"], "levels2": ["数值约束", "文本样式约束", "语法结构约束", "文本样式约束", "引用和参考约束", "输出格式约束", "输出格式约束", "数值约束", "文本样式约束"], "category": "trace2.0"} +{"id": "979", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "研究现代城市中小学生课业压力的原因和现状,探讨如何通过咨询辅导、休闲运动、社交互动等方式合理安排学习和生活,缓解学生的学习压力,并撰写一篇学术研究报告。\n报告长度大于1000字;\n用正式的学术语气撰写,确保内容严谨且客观;\n报告应包括但不限于摘要、引言、方法、结果、讨论、结论和参考文献;\n\"方法\"部分详细描述调查问卷的设计与实施过程;\n\"结果\"部分提供数据分析;\n\"讨论\"部分深入分析结果的意义及可能的解释;\n\"结论\"部分给出基于研究发现的建议;\n报告中所有引用的数据和文献都应准确无误;\n遵循APA引用格式。\n"}], "type": "trace", "description": "研究现代城市中小学生课业压力的原因和现状,探讨如何通过咨询辅导、休闲运动、社交互动等方式合理安排学习和生活,缓解学生的学习压力,并撰写一篇学术研究报告。", "constraints": "报告长度大于1000字;\n用正式的学术语气撰写,确保内容严谨且客观;\n报告应包括但不限于摘要、引言、方法、结果、讨论、结论和参考文献;\n\"方法\"部分详细描述调查问卷的设计与实施过程;\n\"结果\"部分提供数据分析;\n\"讨论\"部分深入分析结果的意义及可能的解释;\n\"结论\"部分给出基于研究发现的建议;\n报告中所有引用的数据和文献都应准确无误;\n遵循APA引用格式。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["报告长度大于1000字;", "用正式的学术语气撰写,确保内容严谨且客观;", "报告应包括但不限于摘要、引言、方法、结果、讨论、结论和参考文献;", "\"方法\"部分详细描述调查问卷的设计与实施过程;", "\"结果\"部分提供数据分析;", "\"讨论\"部分深入分析结果的意义及可能的解释;", "\"结论\"部分给出基于研究发现的建议;", "报告中所有引用的数据和文献都应准确无误;", "遵循APA引用格式。"], "levels2": ["数值约束", "语气风格约束", "层次化结构约束", "包含约束", "层次化结构约束", "层次化结构约束", "层次化结构约束", "引用和参考约束", "引用和参考约束"], "category": "trace2.0"} +{"id": "980", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇关于人工智能杀手级应用的全面分析报告,专注于技术变革和未来趋势。\n报告应至少包含5000字;\n详细阐述人工智能如何在医疗、教育、交通、制造业等关键领域引发变革;\n报告中应涉及人工智能与机器学习、深度学习和自然语言处理等技术领域的相互作用;\n本报告的目标受众为行业专家和对未来科技感兴趣的公众;\n报告语气上要求严谨正式、专业学术;\n使用Markdown格式进行排版,确保内容的层次清晰,采用标题、子标题和列表形式组织信息;\n报告的结构应遵循典型的学术论文格式,包括引言、方法、结果、讨论和结论部分;\n所有引用的资料和研究必须遵循APA引用格式,确保学术诚信;\n报告应借鉴并分析《人工智能:一种现代方法》一书中关于人工智能未来应用的章节,确保内容的深度和广度。\n"}], "type": "trace", "description": "撰写一篇关于人工智能杀手级应用的全面分析报告,专注于技术变革和未来趋势。", "constraints": "报告应至少包含5000字;\n详细阐述人工智能如何在医疗、教育、交通、制造业等关键领域引发变革;\n报告中应涉及人工智能与机器学习、深度学习和自然语言处理等技术领域的相互作用;\n本报告的目标受众为行业专家和对未来科技感兴趣的公众;\n报告语气上要求严谨正式、专业学术;\n使用Markdown格式进行排版,确保内容的层次清晰,采用标题、子标题和列表形式组织信息;\n报告的结构应遵循典型的学术论文格式,包括引言、方法、结果、讨论和结论部分;\n所有引用的资料和研究必须遵循APA引用格式,确保学术诚信;\n报告应借鉴并分析《人工智能:一种现代方法》一书中关于人工智能未来应用的章节,确保内容的深度和广度。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["报告应至少包含5000字;", "详细阐述人工智能如何在医疗、教育、交通、制造业等关键领域引发变革;", "报告中应涉及人工智能与机器学习、深度学习和自然语言处理等技术领域的相互作用;", "本报告的目标受众为行业专家和对未来科技感兴趣的公众;", "报告语气上要求严谨正式、专业学术;", "使用Markdown格式进行排版,确保内容的层次清晰,采用标题、子标题和列表形式组织信息;", "报告的结构应遵循典型的学术论文格式,包括引言、方法、结果、讨论和结论部分;", "所有引用的资料和研究必须遵循APA引用格式,确保学术诚信;", "报告应借鉴并分析《人工智能:一种现代方法》一书中关于人工智能未来应用的章节,确保内容的深度和广度。"], "levels2": ["数值约束", "主题约束", "主题约束", "受众目标约束", "语气风格约束", "输出格式约束", "层次化结构约束", "引用和参考约束", "引用和参考约束"], "category": "trace1.0"} +{"id": "981", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇描述加纳教育制度的文章\n以教育专家的身份进行撰写;\n文章长度需超过1500字;\n语气保持客观和专业;\n文章结构必须包含引言、主体、结论三个部分;\n在主体部分,详述加纳教育体系的结构,包括学前教育、基础教育、中等教育及高等教育各阶段的教育制度;\n描述该体系的特点,如教学语言、教师培训、教育政策等;\n分析加纳教育面临的挑战,如资源分配、师资短缺、教育公平等;\n讨论未来的发展方向,包括教育改革、技术应用、国际合作等方面;\n确保文章内容深入且全面,为读者提供加纳教育制度的全面视角。\n"}], "type": "trace", "description": "撰写一篇描述加纳教育制度的文章", "constraints": "以教育专家的身份进行撰写;\n文章长度需超过1500字;\n语气保持客观和专业;\n文章结构必须包含引言、主体、结论三个部分;\n在主体部分,详述加纳教育体系的结构,包括学前教育、基础教育、中等教育及高等教育各阶段的教育制度;\n描述该体系的特点,如教学语言、教师培训、教育政策等;\n分析加纳教育面临的挑战,如资源分配、师资短缺、教育公平等;\n讨论未来的发展方向,包括教育改革、技术应用、国际合作等方面;\n确保文章内容深入且全面,为读者提供加纳教育制度的全面视角。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["以教育专家的身份进行撰写;", "文章长度需超过1500字;", "语气保持客观和专业;", "文章结构必须包含引言、主体、结论三个部分;", "在主体部分,详述加纳教育体系的结构,包括学前教育、基础教育、中等教育及高等教育各阶段的教育制度;", "描述该体系的特点,如教学语言、教师培训、教育政策等;", "分析加纳教育面临的挑战,如资源分配、师资短缺、教育公平等;", "讨论未来的发展方向,包括教育改革、技术应用、国际合作等方面;", "确保文章内容深入且全面,为读者提供加纳教育制度的全面视角。"], "levels2": ["角色扮演约束", "数值约束", "语气风格约束", "层次化结构约束", "主题约束", "包含约束", "主题约束", "主题约束", "受众目标约束"], "category": "trace2.0"} +{"id": "982", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以系统管理员的身份编写一个shell脚本,递归显示当前工作目录中所有隐藏文件,包括.txt,.doc和.docx文件,并处理权限问题、大文件检测和格式化输出。\n脚本以递归方式显示当前工作目录中的所有隐藏文件;\n脚本需要检测.txt,.doc和.docx文件;\n权限问题的文件应记录在日志中,但不应中断脚本的执行;\n脚本应检测并显示超过10MB大小的文件的完整路径和文件大小;\n文件大小需要格式化为“人友好的”格式(如1.5MB, 2.3GB等);\n脚本的输出应以表格形式呈现;\n表格列标题为“文件路径”、“文件类型”、“文件大小”;\n表格底部应添加总文件计数和大于指定大小的文件数的额外统计信息;\n确保脚本使用Markdown表格格式输出,以确保在不同设备和平台上的可读性。\n"}], "type": "trace", "description": "以系统管理员的身份编写一个shell脚本,递归显示当前工作目录中所有隐藏文件,包括.txt,.doc和.docx文件,并处理权限问题、大文件检测和格式化输出。", "constraints": "脚本以递归方式显示当前工作目录中的所有隐藏文件;\n脚本需要检测.txt,.doc和.docx文件;\n权限问题的文件应记录在日志中,但不应中断脚本的执行;\n脚本应检测并显示超过10MB大小的文件的完整路径和文件大小;\n文件大小需要格式化为“人友好的”格式(如1.5MB, 2.3GB等);\n脚本的输出应以表格形式呈现;\n表格列标题为“文件路径”、“文件类型”、“文件大小”;\n表格底部应添加总文件计数和大于指定大小的文件数的额外统计信息;\n确保脚本使用Markdown表格格式输出,以确保在不同设备和平台上的可读性。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["脚本以递归方式显示当前工作目录中的所有隐藏文件;", "脚本需要检测.txt,.doc和.docx文件;", "权限问题的文件应记录在日志中,但不应中断脚本的执行;", "脚本应检测并显示超过10MB大小的文件的完整路径和文件大小;", "文件大小需要格式化为“人友好的”格式(如1.5MB, 2.3GB等);", "脚本的输出应以表格形式呈现;", "表格列标题为“文件路径”、“文件类型”、“文件大小”;", "表格底部应添加总文件计数和大于指定大小的文件数的额外统计信息;", "确保脚本使用Markdown表格格式输出,以确保在不同设备和平台上的可读性。"], "levels2": ["包含约束", "包含约束", "包含约束", "数值约束", "输出格式约束", "输出格式约束", "输出格式约束", "表格背景信息约束", "输出格式约束"], "category": "trace2.0"} +{"id": "983", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一个置身于神秘森林探险情境下的猜数游戏\n游戏的数字范围应在1到100之间;\n每轮猜测有10秒的时间限制;\n探险家需要在森林中寻找线索以缩小猜数范围;\n当用户猜数过小时,应以神秘而鼓励的语气提示“太小了,勇敢的探险家,请往高处看!”;\n当用户猜数过大时,应提示“太大了,勇敢的探险家,请低头寻找更小的数字!”;\n猜中时,应以充满胜利喜悦的语气提示“恭喜猜对了!你发现了森林中的秘密宝藏!”;\n游戏应在每轮结束后询问是否继续探险;\n如果选择继续,则重新开始游戏;\n如果选择结束,则显示一个温馨的告别信息,鼓励他们再次踏上冒险旅程;\n"}], "type": "trace", "description": "创建一个置身于神秘森林探险情境下的猜数游戏", "constraints": "游戏的数字范围应在1到100之间;\n每轮猜测有10秒的时间限制;\n探险家需要在森林中寻找线索以缩小猜数范围;\n当用户猜数过小时,应以神秘而鼓励的语气提示“太小了,勇敢的探险家,请往高处看!”;\n当用户猜数过大时,应提示“太大了,勇敢的探险家,请低头寻找更小的数字!”;\n猜中时,应以充满胜利喜悦的语气提示“恭喜猜对了!你发现了森林中的秘密宝藏!”;\n游戏应在每轮结束后询问是否继续探险;\n如果选择继续,则重新开始游戏;\n如果选择结束,则显示一个温馨的告别信息,鼓励他们再次踏上冒险旅程;", "input": "NULL", "constraints_num": 9, "constraints_splits": ["游戏的数字范围应在1到100之间;", "每轮猜测有10秒的时间限制;", "探险家需要在森林中寻找线索以缩小猜数范围;", "当用户猜数过小时,应以神秘而鼓励的语气提示“太小了,勇敢的探险家,请往高处看!”;", "当用户猜数过大时,应提示“太大了,勇敢的探险家,请低头寻找更小的数字!”;", "猜中时,应以充满胜利喜悦的语气提示“恭喜猜对了!你发现了森林中的秘密宝藏!”;", "游戏应在每轮结束后询问是否继续探险;", "如果选择继续,则重新开始游戏;", "如果选择结束,则显示一个温馨的告别信息,鼓励他们再次踏上冒险旅程;"], "levels2": ["数值约束", "数值约束", "角色扮演约束", "语气风格约束", "语气风格约束", "语气风格约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "语气风格约束"], "category": "trace2.0"} +{"id": "984", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "写一封具有说服力的电子邮件给正在犹豫加入我们公司的Hong Gil-dong\n邮件的长度应控制在500个字符以内;\n突出我们作为一家专注于元宇宙游戏服务的公司的优势;\n语气要温和而真诚;\n邮件应采用正式格式,包括收件人姓名、问候语、正文和结束语;\n邮件中需要包含公司名字和我们提供的独特服务、公司文化、潜在的职业发展机会以及为什么Hong Gil-dong应该加入我们;\n使用正式且友好的语气,以吸引Hong Gil-dong的注意力并激发他对加入我们公司的兴趣;\n在邮件结尾部分,提供一个明确的呼吁行动,鼓励Hong Gil-dong回复并考虑加入我们的团队;\n确保邮件的语气始终是积极、支持和鼓励的,使Hong Gil-dong能感受到我们公司的温暖和欢迎;\n在邮件中使用适当的HTML标签来突出关键信息,如公司名称和关键点,并确保邮件的布局清晰、易于阅读;\n"}], "type": "trace", "description": "写一封具有说服力的电子邮件给正在犹豫加入我们公司的Hong Gil-dong", "constraints": "邮件的长度应控制在500个字符以内;\n突出我们作为一家专注于元宇宙游戏服务的公司的优势;\n语气要温和而真诚;\n邮件应采用正式格式,包括收件人姓名、问候语、正文和结束语;\n邮件中需要包含公司名字和我们提供的独特服务、公司文化、潜在的职业发展机会以及为什么Hong Gil-dong应该加入我们;\n使用正式且友好的语气,以吸引Hong Gil-dong的注意力并激发他对加入我们公司的兴趣;\n在邮件结尾部分,提供一个明确的呼吁行动,鼓励Hong Gil-dong回复并考虑加入我们的团队;\n确保邮件的语气始终是积极、支持和鼓励的,使Hong Gil-dong能感受到我们公司的温暖和欢迎;\n在邮件中使用适当的HTML标签来突出关键信息,如公司名称和关键点,并确保邮件的布局清晰、易于阅读;", "input": "NULL", "constraints_num": 9, "constraints_splits": ["邮件的长度应控制在500个字符以内;", "突出我们作为一家专注于元宇宙游戏服务的公司的优势;", "语气要温和而真诚;", "邮件应采用正式格式,包括收件人姓名、问候语、正文和结束语;", "邮件中需要包含公司名字和我们提供的独特服务、公司文化、潜在的职业发展机会以及为什么Hong Gil-dong应该加入我们;", "使用正式且友好的语气,以吸引Hong Gil-dong的注意力并激发他对加入我们公司的兴趣;", "在邮件结尾部分,提供一个明确的呼吁行动,鼓励Hong Gil-dong回复并考虑加入我们的团队;", "确保邮件的语气始终是积极、支持和鼓励的,使Hong Gil-dong能感受到我们公司的温暖和欢迎;", "在邮件中使用适当的HTML标签来突出关键信息,如公司名称和关键点,并确保邮件的布局清晰、易于阅读;"], "levels2": ["数值约束", "包含约束", "语气风格约束", "文本样式约束", "包含约束", "语气风格约束", "受众目标约束", "语气风格约束", "输出格式约束"], "category": "trace1.0"} +{"id": "985", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以“自由”为主题,探讨其内涵与外延,并从政治、社会、心理等多个角度进行深入分析,阐述自由的重要性及其与人类文明的关系。\n文章逻辑清晰,观点准确;\n长度在800到1000字之间;\n采用学术论文的文本样式,以严谨正式的语气风格撰写;\n包含至少3个相关领域的引用或参考文献;\n文章在开头需引用一位著名哲学家对于自由的论述;\n在结尾部分提出个人观点;\n输出格式为LaTeX文档;\n使用Times New Roman字体,字号为12号,行间距为1.5倍行距;\n在文中对引用的部分进行标注,并在文末列出参考文献列表,遵循APA引用格式。\n"}], "type": "trace", "description": "以“自由”为主题,探讨其内涵与外延,并从政治、社会、心理等多个角度进行深入分析,阐述自由的重要性及其与人类文明的关系。", "constraints": "文章逻辑清晰,观点准确;\n长度在800到1000字之间;\n采用学术论文的文本样式,以严谨正式的语气风格撰写;\n包含至少3个相关领域的引用或参考文献;\n文章在开头需引用一位著名哲学家对于自由的论述;\n在结尾部分提出个人观点;\n输出格式为LaTeX文档;\n使用Times New Roman字体,字号为12号,行间距为1.5倍行距;\n在文中对引用的部分进行标注,并在文末列出参考文献列表,遵循APA引用格式。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["文章逻辑清晰,观点准确;", "长度在800到1000字之间;", "采用学术论文的文本样式,以严谨正式的语气风格撰写;", "包含至少3个相关领域的引用或参考文献;", "文章在开头需引用一位著名哲学家对于自由的论述;", "在结尾部分提出个人观点;", "输出格式为LaTeX文档;", "使用Times New Roman字体,字号为12号,行间距为1.5倍行距;", "在文中对引用的部分进行标注,并在文末列出参考文献列表,遵循APA引用格式。"], "levels2": ["语法结构约束", "数值约束", "语气风格约束", "引用和参考约束", "引用和参考约束", "层次化结构约束", "输出格式约束", "文本样式约束", "引用和参考约束"], "category": "trace1.0"} +{"id": "986", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇关于《红楼梦》的文章\n使用LaTeX格式输出,且每个部分都要有对应的标题和子标题,确保文章结构清晰;\n引用《红楼梦》原文时,需遵循MLA格式的引用规则,使用括号内引用,如 (曹雪芹,第45章);\n文章应采用学术论文的正式语气,确保专业性和客观性;\n**引言**:简短介绍《红楼梦》的历史地位和本次研究的目的;\n**作者及其背景**:介绍《红楼梦》的作者及其背景,同时使用斜体表示《红楼梦》书名;\n**主题与情节分析**:分析小说的主题和情节,并举例说明,举例时,使用粗体突出重要情节或概念;\n**文化影响**:探讨《红楼梦》对中国文学和文化的影响,这部分需至少引用3位学者的观点;\n**比较研究**:比较《红楼梦》与其他中国古典小说的异同点,引用至少2部其他古典小说进行比较;\n**评价与个人看法**:对《红楼梦》进行评价,并表达你的个人看法,结尾部分应有明确的结论和对读者的建议。\n"}], "type": "trace", "description": "撰写一篇关于《红楼梦》的文章", "constraints": "使用LaTeX格式输出,且每个部分都要有对应的标题和子标题,确保文章结构清晰;\n引用《红楼梦》原文时,需遵循MLA格式的引用规则,使用括号内引用,如 (曹雪芹,第45章);\n文章应采用学术论文的正式语气,确保专业性和客观性;\n**引言**:简短介绍《红楼梦》的历史地位和本次研究的目的;\n**作者及其背景**:介绍《红楼梦》的作者及其背景,同时使用斜体表示《红楼梦》书名;\n**主题与情节分析**:分析小说的主题和情节,并举例说明,举例时,使用粗体突出重要情节或概念;\n**文化影响**:探讨《红楼梦》对中国文学和文化的影响,这部分需至少引用3位学者的观点;\n**比较研究**:比较《红楼梦》与其他中国古典小说的异同点,引用至少2部其他古典小说进行比较;\n**评价与个人看法**:对《红楼梦》进行评价,并表达你的个人看法,结尾部分应有明确的结论和对读者的建议。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["使用LaTeX格式输出,且每个部分都要有对应的标题和子标题,确保文章结构清晰;", "引用《红楼梦》原文时,需遵循MLA格式的引用规则,使用括号内引用,如 (曹雪芹,第45章);", "文章应采用学术论文的正式语气,确保专业性和客观性;", "**引言**:简短介绍《红楼梦》的历史地位和本次研究的目的;", "**作者及其背景**:介绍《红楼梦》的作者及其背景,同时使用斜体表示《红楼梦》书名;", "**主题与情节分析**:分析小说的主题和情节,并举例说明,举例时,使用粗体突出重要情节或概念;", "**文化影响**:探讨《红楼梦》对中国文学和文化的影响,这部分需至少引用3位学者的观点;", "**比较研究**:比较《红楼梦》与其他中国古典小说的异同点,引用至少2部其他古典小说进行比较;", "**评价与个人看法**:对《红楼梦》进行评价,并表达你的个人看法,结尾部分应有明确的结论和对读者的建议。"], "levels2": ["输出格式约束", "引用和参考约束", "语气风格约束", "层次化结构约束", "文本样式约束", "文本样式约束", "引用和参考约束", "主题约束", "层次化结构约束"], "category": "trace1.0"} +{"id": "987", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "描述如何向老师请假的流程。\n请假条需以正式的语气书写,标题为\"请假申请\";\n请假条中必须包括全名、班级、学号;\n需详细陈述请假原因,如涉及健康问题,需附上医疗证明;\n应清楚说明请假的起止日期;\n请假条结尾需感谢老师理解并批准请假申请;\n家长或监护人需在请假条上签字确认;\n请假条应亲自交到老师手中或通过电子邮件发送,抄送班主任和学校教务处;\n离校前确保所有已布置的作业和学习任务都已完成或有补交计划;\n整个请假过程中,语气必须保持尊重和礼貌,确保请假条内容清晰、准确、完整。\n"}], "type": "trace", "description": "描述如何向老师请假的流程。", "constraints": "请假条需以正式的语气书写,标题为\"请假申请\";\n请假条中必须包括全名、班级、学号;\n需详细陈述请假原因,如涉及健康问题,需附上医疗证明;\n应清楚说明请假的起止日期;\n请假条结尾需感谢老师理解并批准请假申请;\n家长或监护人需在请假条上签字确认;\n请假条应亲自交到老师手中或通过电子邮件发送,抄送班主任和学校教务处;\n离校前确保所有已布置的作业和学习任务都已完成或有补交计划;\n整个请假过程中,语气必须保持尊重和礼貌,确保请假条内容清晰、准确、完整。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["请假条需以正式的语气书写,标题为\"请假申请\";", "请假条中必须包括全名、班级、学号;", "需详细陈述请假原因,如涉及健康问题,需附上医疗证明;", "应清楚说明请假的起止日期;", "请假条结尾需感谢老师理解并批准请假申请;", "家长或监护人需在请假条上签字确认;", "请假条应亲自交到老师手中或通过电子邮件发送,抄送班主任和学校教务处;", "离校前确保所有已布置的作业和学习任务都已完成或有补交计划;", "整个请假过程中,语气必须保持尊重和礼貌,确保请假条内容清晰、准确、完整。"], "levels2": ["语气风格约束", "包含约束", "包含约束", "包含约束", "文本样式约束", "包含约束", "自然语言流程背景信息约束", "包含约束", "语气风格约束"], "category": "trace1.0"} +{"id": "988", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "逐步指导初学者如何制作一个基本的 npm 模块,该模块仅包含一个“hello world”功能。\n遵循以下步骤并使用最佳实践进行操作:\n1 创建一个新的文件夹,命名为“hello-world-module”;\n2 打开终端,导航到你刚刚创建的文件夹;\n3 使用命令 `npm init`,根据提示填写模块信息;\n4 创建一个名为“index.js”的文件,在其中定义你的“hello world”函数;\n5 函数应该有一个名为“greet”的功能,当被调用时,它将打印出“hello world”;\n6 在你的 package.json 文件中添加一个“main”字段,将其指向“index.js”;\n7 使用 `npm login` 登录你的 npm 账户,然后使用 `npm publish` 将模块发布到 npm 仓库;\n在整个过程中,确保遵循良好的代码规范和最佳实践,比如使用有意义的变量名、注释以及遵循统一的代码风格;\n"}], "type": "trace", "description": "逐步指导初学者如何制作一个基本的 npm 模块,该模块仅包含一个“hello world”功能。", "constraints": "遵循以下步骤并使用最佳实践进行操作:\n1 创建一个新的文件夹,命名为“hello-world-module”;\n2 打开终端,导航到你刚刚创建的文件夹;\n3 使用命令 `npm init`,根据提示填写模块信息;\n4 创建一个名为“index.js”的文件,在其中定义你的“hello world”函数;\n5 函数应该有一个名为“greet”的功能,当被调用时,它将打印出“hello world”;\n6 在你的 package.json 文件中添加一个“main”字段,将其指向“index.js”;\n7 使用 `npm login` 登录你的 npm 账户,然后使用 `npm publish` 将模块发布到 npm 仓库;\n在整个过程中,确保遵循良好的代码规范和最佳实践,比如使用有意义的变量名、注释以及遵循统一的代码风格;", "input": "NULL", "constraints_num": 9, "constraints_splits": ["遵循以下步骤并使用最佳实践进行操作:", "1 创建一个新的文件夹,命名为“hello-world-module”;", "2 打开终端,导航到你刚刚创建的文件夹;", "3 使用命令 `npm init`,根据提示填写模块信息;", "4 创建一个名为“index.js”的文件,在其中定义你的“hello world”函数;", "5 函数应该有一个名为“greet”的功能,当被调用时,它将打印出“hello world”;", "6 在你的 package.json 文件中添加一个“main”字段,将其指向“index.js”;", "7 使用 `npm login` 登录你的 npm 账户,然后使用 `npm publish` 将模块发布到 npm 仓库;", "在整个过程中,确保遵循良好的代码规范和最佳实践,比如使用有意义的变量名、注释以及遵循统一的代码风格;"], "levels2": ["自然语言流程背景信息约束", "输出格式约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "包含约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "语言特征约束"], "category": "trace1.0"} +{"id": "989", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "编写一段代码创建一个功能性的尾巴递归计算方法,用于确定递减整数序列的乘积,直到达到单个数字范围内的数(1-9)。在数值超过9的情况下,函数应自动调用自身,使用下一个小于前一个的整数进行递减乘积。该过程应立即返回最初输入的整数的数值,如果该值已位于1-9的范围内。但在此任务中,你将扮演一个科幻小说中的AI助手角色,所有代码注释均需以该角色的语气进行撰写。在实现代码时,还需加入错误检查和处理的逻辑,当输入的数字不在正整数范围内时,我们的AI助手应能优雅地处理并给出提示。\n代码为功能性的尾巴递归计算方法;\n计算方法用于确定递减整数序列的乘积,直到达到单个数字范围内的数(1-9);\n在数值超过9的情况下,函数应自动调用自身;\n使用下一个小于前一个的整数进行递减乘积;\n过程应立即返回最初输入的整数的数值,如果该值已位于1-9的范围内;\n所有代码注释均需以科幻小说中的AI助手角色语气进行撰写;\n实现代码时,还需加入错误检查和处理的逻辑;\n当输入的数字不在正整数范围内时,应能优雅地处理并给出提示;\n提示信息应保持一贯的科幻幽默风格。\n"}], "type": "trace", "description": "编写一段代码创建一个功能性的尾巴递归计算方法,用于确定递减整数序列的乘积,直到达到单个数字范围内的数(1-9)。在数值超过9的情况下,函数应自动调用自身,使用下一个小于前一个的整数进行递减乘积。该过程应立即返回最初输入的整数的数值,如果该值已位于1-9的范围内。但在此任务中,你将扮演一个科幻小说中的AI助手角色,所有代码注释均需以该角色的语气进行撰写。在实现代码时,还需加入错误检查和处理的逻辑,当输入的数字不在正整数范围内时,我们的AI助手应能优雅地处理并给出提示。", "constraints": "代码为功能性的尾巴递归计算方法;\n计算方法用于确定递减整数序列的乘积,直到达到单个数字范围内的数(1-9);\n在数值超过9的情况下,函数应自动调用自身;\n使用下一个小于前一个的整数进行递减乘积;\n过程应立即返回最初输入的整数的数值,如果该值已位于1-9的范围内;\n所有代码注释均需以科幻小说中的AI助手角色语气进行撰写;\n实现代码时,还需加入错误检查和处理的逻辑;\n当输入的数字不在正整数范围内时,应能优雅地处理并给出提示;\n提示信息应保持一贯的科幻幽默风格。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["代码为功能性的尾巴递归计算方法;", "计算方法用于确定递减整数序列的乘积,直到达到单个数字范围内的数(1-9);", "在数值超过9的情况下,函数应自动调用自身;", "使用下一个小于前一个的整数进行递减乘积;", "过程应立即返回最初输入的整数的数值,如果该值已位于1-9的范围内;", "所有代码注释均需以科幻小说中的AI助手角色语气进行撰写;", "实现代码时,还需加入错误检查和处理的逻辑;", "当输入的数字不在正整数范围内时,应能优雅地处理并给出提示;", "提示信息应保持一贯的科幻幽默风格。"], "levels2": ["主题约束", "数值约束", "数值约束", "数值约束", "数值约束", "语气风格约束", "包含约束", "数值约束", "语气风格约束"], "category": "trace2.0"} +{"id": "990", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "设计一个构造函数,使用提供的类 \"ExpertSystemDatabases\" 生成具有预设属性的实例。实现属性更新方法,撤销和重做功能,并确保整个解决方案控制在100行代码以内。\n构造函数应初始化以下属性:\"expertiseCategory\", \"databaseVersion\", \"databaseAccessLevel\";\n默认值设定:\"expertiseCategory\" 设为 \"General Knowledge\", \"databaseVersion\" 设为 \"1.0\", \"databaseAccessLevel\" 设为 \"Public\";\n所有属性更新应通过一个方法实现,该方法接收属性名称和新值作为参数,通过封装的方式更新属性;\n属性更新时,应将更改记录到一个历史列表中,列表存储每次更改的时间戳,属性名称,以及新旧值;\n解决方案应包括撤销和重做功能;\n撤销功能应允许将属性恢复到最后一步更改的状态,重做功能则应允许恢复已经被撤销的更改;\n每个方法在执行后,都应更新历史记录,历史记录中不应保留已经被撤销的更改步骤;\n撤销和重做功能应正确处理多次连续调用;\n整个解决方案应控制在100行代码以内。\n"}], "type": "trace", "description": "设计一个构造函数,使用提供的类 \"ExpertSystemDatabases\" 生成具有预设属性的实例。实现属性更新方法,撤销和重做功能,并确保整个解决方案控制在100行代码以内。", "constraints": "构造函数应初始化以下属性:\"expertiseCategory\", \"databaseVersion\", \"databaseAccessLevel\";\n默认值设定:\"expertiseCategory\" 设为 \"General Knowledge\", \"databaseVersion\" 设为 \"1.0\", \"databaseAccessLevel\" 设为 \"Public\";\n所有属性更新应通过一个方法实现,该方法接收属性名称和新值作为参数,通过封装的方式更新属性;\n属性更新时,应将更改记录到一个历史列表中,列表存储每次更改的时间戳,属性名称,以及新旧值;\n解决方案应包括撤销和重做功能;\n撤销功能应允许将属性恢复到最后一步更改的状态,重做功能则应允许恢复已经被撤销的更改;\n每个方法在执行后,都应更新历史记录,历史记录中不应保留已经被撤销的更改步骤;\n撤销和重做功能应正确处理多次连续调用;\n整个解决方案应控制在100行代码以内。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["构造函数应初始化以下属性:\"expertiseCategory\", \"databaseVersion\", \"databaseAccessLevel\";", "默认值设定:\"expertiseCategory\" 设为 \"General Knowledge\", \"databaseVersion\" 设为 \"1.0\", \"databaseAccessLevel\" 设为 \"Public\";", "所有属性更新应通过一个方法实现,该方法接收属性名称和新值作为参数,通过封装的方式更新属性;", "属性更新时,应将更改记录到一个历史列表中,列表存储每次更改的时间戳,属性名称,以及新旧值;", "解决方案应包括撤销和重做功能;", "撤销功能应允许将属性恢复到最后一步更改的状态,重做功能则应允许恢复已经被撤销的更改;", "每个方法在执行后,都应更新历史记录,历史记录中不应保留已经被撤销的更改步骤;", "撤销和重做功能应正确处理多次连续调用;", "整个解决方案应控制在100行代码以内。"], "levels2": ["包含约束", "数值约束", "语法结构约束", "编号和列表约束", "包含约束", "包含约束", "包含约束", "包含约束", "数值约束"], "category": "trace2.0"} +{"id": "991", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "实现一个等比数列生成器\n首项为一个正整数;\n公比为一个正的实数;\n项数为10或10以上;\n生成的数列需以JSON格式输出;\n每项数列元素使用键值对表示,键为项的序号(从1开始),值为该序号对应的等比数列元素;\n输出的JSON内容需以正式的学术风格呈现;\n使用科学计数法表示大数和小数;\n在JSON注释中提供等比数列的数学定义;\n在JSON注释中提供该数列的首项与公比信息;\n"}], "type": "trace", "description": "实现一个等比数列生成器", "constraints": "首项为一个正整数;\n公比为一个正的实数;\n项数为10或10以上;\n生成的数列需以JSON格式输出;\n每项数列元素使用键值对表示,键为项的序号(从1开始),值为该序号对应的等比数列元素;\n输出的JSON内容需以正式的学术风格呈现;\n使用科学计数法表示大数和小数;\n在JSON注释中提供等比数列的数学定义;\n在JSON注释中提供该数列的首项与公比信息;", "input": "NULL", "constraints_num": 9, "constraints_splits": ["首项为一个正整数;", "公比为一个正的实数;", "项数为10或10以上;", "生成的数列需以JSON格式输出;", "每项数列元素使用键值对表示,键为项的序号(从1开始),值为该序号对应的等比数列元素;", "输出的JSON内容需以正式的学术风格呈现;", "使用科学计数法表示大数和小数;", "在JSON注释中提供等比数列的数学定义;", "在JSON注释中提供该数列的首项与公比信息;"], "levels2": ["数值约束", "数值约束", "数值约束", "输出格式约束", "输出格式约束", "输出格式约束", "输出格式约束", "输出格式约束", "输出格式约束"], "category": "trace2.0"} +{"id": "992", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一篇关于云计算架构与传统架构的对比分析,重点突出区别、优势和劣势,并对云计算架构的未来趋势进行预测。\n回答需采用学术严谨的语气,适合企业决策者阅读;\n遵循总分总的结构模版,具体结构包括引言、正文(区别、优势、劣势)、结论、引用;\n回答需以markdown格式撰写;\n引言部分需简要说明主要区别的重要性;\n区别部分需详细列举在灵活性、可扩展性、资源消耗等方面的差异;\n优势部分需列举在成本效益、资源弹性、灾难恢复方面的优势;\n劣势部分需讨论数据隐私、安全性、依赖外部网络等可能存在的挑战;\n结论部分需总结发展趋势,包括技术进步、市场需求、行业标准对未来的塑造;\n引用部分需附上至少三篇来自权威学术期刊或行业报告的参考文献。\n"}], "type": "trace", "description": "撰写一篇关于云计算架构与传统架构的对比分析,重点突出区别、优势和劣势,并对云计算架构的未来趋势进行预测。", "constraints": "回答需采用学术严谨的语气,适合企业决策者阅读;\n遵循总分总的结构模版,具体结构包括引言、正文(区别、优势、劣势)、结论、引用;\n回答需以markdown格式撰写;\n引言部分需简要说明主要区别的重要性;\n区别部分需详细列举在灵活性、可扩展性、资源消耗等方面的差异;\n优势部分需列举在成本效益、资源弹性、灾难恢复方面的优势;\n劣势部分需讨论数据隐私、安全性、依赖外部网络等可能存在的挑战;\n结论部分需总结发展趋势,包括技术进步、市场需求、行业标准对未来的塑造;\n引用部分需附上至少三篇来自权威学术期刊或行业报告的参考文献。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["回答需采用学术严谨的语气,适合企业决策者阅读;", "遵循总分总的结构模版,具体结构包括引言、正文(区别、优势、劣势)、结论、引用;", "回答需以markdown格式撰写;", "引言部分需简要说明主要区别的重要性;", "区别部分需详细列举在灵活性、可扩展性、资源消耗等方面的差异;", "优势部分需列举在成本效益、资源弹性、灾难恢复方面的优势;", "劣势部分需讨论数据隐私、安全性、依赖外部网络等可能存在的挑战;", "结论部分需总结发展趋势,包括技术进步、市场需求、行业标准对未来的塑造;", "引用部分需附上至少三篇来自权威学术期刊或行业报告的参考文献。"], "levels2": ["语气风格约束", "模版约束", "输出格式约束", "包含约束", "包含约束", "包含约束", "包含约束", "主题约束", "引用和参考约束"], "category": "trace2.0"} +{"id": "993", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以数据科学家的角色,使用pytorch获取mnist数据集,并将其存储为numpy数组格式,对数据集进行必要的预处理,包括数据标准化和图像增强。对模型的训练进行设置,包括定义交叉熵损失函数、随机梯度下降优化器,并进行数据批处理。实现一个具有至少2个隐藏层的神经网络模型以用于分类任务,并使用前向传播和反向传播进行模型训练和优化,同时进行权重更新。输出代码应采用Markdown格式,包括详细的注释和文档。\n数据集获取与预处理,包括数据集的下载、存储为numpy数组、数据集预处理等步骤,预处理包括数据标准化和图像增强;\n模型训练设置,包括定义交叉熵损失函数、随机梯度下降优化器,并进行数据批处理;\n神经网络模型实现,包括定义神经网络模型结构、前向传播、反向传播、权重更新等步骤,神经网络模型应具有至少2个隐藏层;\n输出代码采用Markdown格式,包括详细的注释和文档,每一步代码注释长度应不少于50字,确保代码的可读性和可维护性;\n代码中应使用正确的语法结构,包括但不限于正确的缩进、函数定义、变量命名等;\n定义交叉熵损失函数的描述不少于50字;\n随机梯度下降优化器的定义描述不少于50字;\n神经网络模型结构描述不少于100字;\n代码输出格式应遵循特定格式。\n"}], "type": "trace", "description": "以数据科学家的角色,使用pytorch获取mnist数据集,并将其存储为numpy数组格式,对数据集进行必要的预处理,包括数据标准化和图像增强。对模型的训练进行设置,包括定义交叉熵损失函数、随机梯度下降优化器,并进行数据批处理。实现一个具有至少2个隐藏层的神经网络模型以用于分类任务,并使用前向传播和反向传播进行模型训练和优化,同时进行权重更新。输出代码应采用Markdown格式,包括详细的注释和文档。", "constraints": "数据集获取与预处理,包括数据集的下载、存储为numpy数组、数据集预处理等步骤,预处理包括数据标准化和图像增强;\n模型训练设置,包括定义交叉熵损失函数、随机梯度下降优化器,并进行数据批处理;\n神经网络模型实现,包括定义神经网络模型结构、前向传播、反向传播、权重更新等步骤,神经网络模型应具有至少2个隐藏层;\n输出代码采用Markdown格式,包括详细的注释和文档,每一步代码注释长度应不少于50字,确保代码的可读性和可维护性;\n代码中应使用正确的语法结构,包括但不限于正确的缩进、函数定义、变量命名等;\n定义交叉熵损失函数的描述不少于50字;\n随机梯度下降优化器的定义描述不少于50字;\n神经网络模型结构描述不少于100字;\n代码输出格式应遵循特定格式。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["数据集获取与预处理,包括数据集的下载、存储为numpy数组、数据集预处理等步骤,预处理包括数据标准化和图像增强;", "模型训练设置,包括定义交叉熵损失函数、随机梯度下降优化器,并进行数据批处理;", "神经网络模型实现,包括定义神经网络模型结构、前向传播、反向传播、权重更新等步骤,神经网络模型应具有至少2个隐藏层;", "输出代码采用Markdown格式,包括详细的注释和文档,每一步代码注释长度应不少于50字,确保代码的可读性和可维护性;", "代码中应使用正确的语法结构,包括但不限于正确的缩进、函数定义、变量命名等;", "定义交叉熵损失函数的描述不少于50字;", "随机梯度下降优化器的定义描述不少于50字;", "神经网络模型结构描述不少于100字;", "代码输出格式应遵循特定格式。"], "levels2": ["自然语言流程背景信息约束", "包含约束", "包含约束", "输出格式约束", "语法结构约束", "数值约束", "数值约束", "数值约束", "输出格式约束"], "category": "trace2.0"} +{"id": "994", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "撰写一份优秀的PPT演示文稿\n采用专业学术的语气风格;\n在格式上,确保每一页都包含标题、正文和引用三个部分;\n正文部分使用编号列表组织信息;\n整个文稿至少包含10页;\n前3页用于介绍背景信息;\n后续每一页聚焦于一个核心观点或数据;\n最后2页用于总结和提出未来方向;\n每页的正文部分不少于3段;\n每段不少于50词,确保信息充分且结构清晰;\n"}], "type": "trace", "description": "撰写一份优秀的PPT演示文稿", "constraints": "采用专业学术的语气风格;\n在格式上,确保每一页都包含标题、正文和引用三个部分;\n正文部分使用编号列表组织信息;\n整个文稿至少包含10页;\n前3页用于介绍背景信息;\n后续每一页聚焦于一个核心观点或数据;\n最后2页用于总结和提出未来方向;\n每页的正文部分不少于3段;\n每段不少于50词,确保信息充分且结构清晰;", "input": "NULL", "constraints_num": 9, "constraints_splits": ["采用专业学术的语气风格;", "在格式上,确保每一页都包含标题、正文和引用三个部分;", "正文部分使用编号列表组织信息;", "整个文稿至少包含10页;", "前3页用于介绍背景信息;", "后续每一页聚焦于一个核心观点或数据;", "最后2页用于总结和提出未来方向;", "每页的正文部分不少于3段;", "每段不少于50词,确保信息充分且结构清晰;"], "levels2": ["语气风格约束", "层次化结构约束", "编号和列表约束", "数值约束", "数值约束", "层次化结构约束", "数值约束", "数值约束", "数值约束"], "category": "trace2.0"} +{"id": "995", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以购买一件华为手机为例,写一篇淘宝购物攻略\n内容需从一个淘宝购物老手的角度出发;\n采用简洁明了的语气风格;\n使用编号列表形式呈现;\n包括注册淘宝账号、搜索商品、比较价格、查看商家信誉、下单付款等步骤;\n请注意提及如何选择可靠的商家(包括但不限于查看商家的评价、销售量和售后服务政策);\n请注意提及支付方式(推荐使用支付宝或信用卡以保障资金安全);\n分享购物心得;\n输出格式应为有序列表;\n每一步骤都应有清晰的编号和简练的说明;\n"}], "type": "trace", "description": "以购买一件华为手机为例,写一篇淘宝购物攻略", "constraints": "内容需从一个淘宝购物老手的角度出发;\n采用简洁明了的语气风格;\n使用编号列表形式呈现;\n包括注册淘宝账号、搜索商品、比较价格、查看商家信誉、下单付款等步骤;\n请注意提及如何选择可靠的商家(包括但不限于查看商家的评价、销售量和售后服务政策);\n请注意提及支付方式(推荐使用支付宝或信用卡以保障资金安全);\n分享购物心得;\n输出格式应为有序列表;\n每一步骤都应有清晰的编号和简练的说明;", "input": "NULL", "constraints_num": 9, "constraints_splits": ["内容需从一个淘宝购物老手的角度出发;", "采用简洁明了的语气风格;", "使用编号列表形式呈现;", "包括注册淘宝账号、搜索商品、比较价格、查看商家信誉、下单付款等步骤;", "请注意提及如何选择可靠的商家(包括但不限于查看商家的评价、销售量和售后服务政策);", "请注意提及支付方式(推荐使用支付宝或信用卡以保障资金安全);", "分享购物心得;", "输出格式应为有序列表;", "每一步骤都应有清晰的编号和简练的说明;"], "levels2": ["角色扮演约束", "语气风格约束", "编号和列表约束", "自然语言流程背景信息约束", "包含约束", "包含约束", "主题约束", "编号和列表约束", "编号和列表约束"], "category": "trace1.0"} +{"id": "996", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "将细节整合进使用ModelDB进行模型训练的状态更新代码中,重点优化代码以确保其对团队具有良好的可读性和可维护性。\n作为一名专业的机器学习工程师;\n优化代码以确保其对你所在团队具有良好的可读性和可维护性;\n优化代码时使用严谨正式的语气风格;\n在训练过程中的每10个epoch记录和存储训练的模型;\n使用JSON格式记录和存储训练过程中的性能指标,包括但不限于训练损失和准确率;\n在训练开始前,需要确保ModelDB的连接状态和日志记录功能已经设置好;\n实现高度复杂的错误处理机制,使用try-except语句捕获并记录训练过程中的异常,记录详细的错误日志,并将这些日志同步到ModelDB中;\n代码设计需遵循模块化原则,确保各个功能模块能够独立地进行优化和扩展;\n在设计之初,需要充分考虑代码的可扩展性,设置好配置文件,以便于训练任务参数的调整和分配。\n# Inputs:\n初始代码片段,需要进行修改以遵循上述约束,提高代码的稳定性和性能。\n"}], "type": "trace", "description": "将细节整合进使用ModelDB进行模型训练的状态更新代码中,重点优化代码以确保其对团队具有良好的可读性和可维护性。", "constraints": "作为一名专业的机器学习工程师;\n优化代码以确保其对你所在团队具有良好的可读性和可维护性;\n优化代码时使用严谨正式的语气风格;\n在训练过程中的每10个epoch记录和存储训练的模型;\n使用JSON格式记录和存储训练过程中的性能指标,包括但不限于训练损失和准确率;\n在训练开始前,需要确保ModelDB的连接状态和日志记录功能已经设置好;\n实现高度复杂的错误处理机制,使用try-except语句捕获并记录训练过程中的异常,记录详细的错误日志,并将这些日志同步到ModelDB中;\n代码设计需遵循模块化原则,确保各个功能模块能够独立地进行优化和扩展;\n在设计之初,需要充分考虑代码的可扩展性,设置好配置文件,以便于训练任务参数的调整和分配。", "input": "初始代码片段,需要进行修改以遵循上述约束,提高代码的稳定性和性能。", "constraints_num": 9, "constraints_splits": ["作为一名专业的机器学习工程师;", "优化代码以确保其对你所在团队具有良好的可读性和可维护性;", "优化代码时使用严谨正式的语气风格;", "在训练过程中的每10个epoch记录和存储训练的模型;", "使用JSON格式记录和存储训练过程中的性能指标,包括但不限于训练损失和准确率;", "在训练开始前,需要确保ModelDB的连接状态和日志记录功能已经设置好;", "实现高度复杂的错误处理机制,使用try-except语句捕获并记录训练过程中的异常,记录详细的错误日志,并将这些日志同步到ModelDB中;", "代码设计需遵循模块化原则,确保各个功能模块能够独立地进行优化和扩展;", "在设计之初,需要充分考虑代码的可扩展性,设置好配置文件,以便于训练任务参数的调整和分配。"], "levels2": ["角色扮演约束", "受众目标约束", "语气风格约束", "数值约束", "输出格式约束", "先验条件约束", "语法结构约束", "主题约束", "先验条件约束"], "category": "trace1.0"} +{"id": "997", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "写一篇有说服力的绿色出行倡议书\n内容要求涵盖减少汽车尾气排放、鼓励低碳出行和环保交通方式的推广;\n倡议书需要针对不同年龄和不同群体进行差异化定制;\n采用积极、鼓舞人心的语气,特别是对于年轻人和家庭,强调环保出行对健康和生活质量的正面影响;\n倡议书应包含一个清晰的行动计划,使用编号列表组织信息,方便阅读和后续执行;\n倡议书的结构应层次分明,使用标题和子标题突出关键点,确保信息传达的清晰性和逻辑性;\n结尾应包含一个呼吁行动的部分,鼓励读者采取具体措施支持绿色出行;\n倡议书应以Markdown格式提交;\n使用粗体和斜体标注重要词汇,例如“绿色出行”、“低碳生活”;\n使用项目符号列表列举各种绿色出行方式,如骑自行车、步行、公共交通等,以增强可读性和吸引力。\n"}], "type": "trace", "description": "写一篇有说服力的绿色出行倡议书", "constraints": "内容要求涵盖减少汽车尾气排放、鼓励低碳出行和环保交通方式的推广;\n倡议书需要针对不同年龄和不同群体进行差异化定制;\n采用积极、鼓舞人心的语气,特别是对于年轻人和家庭,强调环保出行对健康和生活质量的正面影响;\n倡议书应包含一个清晰的行动计划,使用编号列表组织信息,方便阅读和后续执行;\n倡议书的结构应层次分明,使用标题和子标题突出关键点,确保信息传达的清晰性和逻辑性;\n结尾应包含一个呼吁行动的部分,鼓励读者采取具体措施支持绿色出行;\n倡议书应以Markdown格式提交;\n使用粗体和斜体标注重要词汇,例如“绿色出行”、“低碳生活”;\n使用项目符号列表列举各种绿色出行方式,如骑自行车、步行、公共交通等,以增强可读性和吸引力。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["内容要求涵盖减少汽车尾气排放、鼓励低碳出行和环保交通方式的推广;", "倡议书需要针对不同年龄和不同群体进行差异化定制;", "采用积极、鼓舞人心的语气,特别是对于年轻人和家庭,强调环保出行对健康和生活质量的正面影响;", "倡议书应包含一个清晰的行动计划,使用编号列表组织信息,方便阅读和后续执行;", "倡议书的结构应层次分明,使用标题和子标题突出关键点,确保信息传达的清晰性和逻辑性;", "结尾应包含一个呼吁行动的部分,鼓励读者采取具体措施支持绿色出行;", "倡议书应以Markdown格式提交;", "使用粗体和斜体标注重要词汇,例如“绿色出行”、“低碳生活”;", "使用项目符号列表列举各种绿色出行方式,如骑自行车、步行、公共交通等,以增强可读性和吸引力。"], "levels2": ["主题约束", "受众目标约束", "情感情绪约束", "编号和列表约束", "层次化结构约束", "模版约束", "输出格式约束", "文本样式约束", "编号和列表约束"], "category": "trace1.0"} +{"id": "998", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以“莫让繁华遮智眼”为题写一篇议论文\n文章结构需遵循标准的议论文格式,包含引言、正文、结论三部分;\n引言部分至少引用一则相关名人名言;\n正文部分需从至少三个角度进行论证;\n结论部分需重申主题并提出个人见解;\n全文需使用严谨正式的语气风格书写;\n引言、正文和结论部分需分别使用段落标题进行区分;\n引言标题为“引子:名言启示”;\n正文标题分别为“论据一:…”、“论据二:…”、“论据三:…”等;\n结论标题为“结语:智者之见”。\n"}], "type": "trace", "description": "以“莫让繁华遮智眼”为题写一篇议论文", "constraints": "文章结构需遵循标准的议论文格式,包含引言、正文、结论三部分;\n引言部分至少引用一则相关名人名言;\n正文部分需从至少三个角度进行论证;\n结论部分需重申主题并提出个人见解;\n全文需使用严谨正式的语气风格书写;\n引言、正文和结论部分需分别使用段落标题进行区分;\n引言标题为“引子:名言启示”;\n正文标题分别为“论据一:…”、“论据二:…”、“论据三:…”等;\n结论标题为“结语:智者之见”。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["文章结构需遵循标准的议论文格式,包含引言、正文、结论三部分;", "引言部分至少引用一则相关名人名言;", "正文部分需从至少三个角度进行论证;", "结论部分需重申主题并提出个人见解;", "全文需使用严谨正式的语气风格书写;", "引言、正文和结论部分需分别使用段落标题进行区分;", "引言标题为“引子:名言启示”;", "正文标题分别为“论据一:…”、“论据二:…”、“论据三:…”等;", "结论标题为“结语:智者之见”。"], "levels2": ["层次化结构约束", "引用和参考约束", "数值约束", "层次化结构约束", "语气风格约束", "层次化结构约束", "模版约束", "层次化结构约束", "文本样式约束"], "category": "trace2.0"} +{"id": "999", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "详细描述买家提出退货请求的处理流程\n**核实商品状态**:确认商品是否处于可退货状态,即未使用、未损坏,并且在退货政策允许的时间范围内。商家应在收到退货请求后的24小时内进行状态核实。\n**买家权益确认**:向买家确认其退货请求已被受理,并提供退货地址以及退货指南。商家应明确告知买家预期的退款时间以及退货过程中的任何可能产生的费用。\n**货物接收与检查**:商家在收到退货商品后,需再次检查商品状态,确保商品未被使用或损坏。此步骤应在商品送达商家仓库后的72小时内完成。\n**处理退款流程**:一旦确认商品状态无误,商家应立即启动退款流程,将款项退回买家的原支付账户。退款应在商品状态确认后的5个工作日内完成。\n**修改库存数目**:退款流程完成后,商家应更新库存系统,增加相应商品的数量。库存更新应在退款完成后的24小时内进行。\n**记录与反馈**:整个退货流程完成后,商家应记录此次退货事件的详细信息,包括退货原因、处理时间、退款金额等,以供后续分析和改进。同时,商家还应向买家发送满意度调查,收集买家对退货流程的反馈。\n**隐私保护**:在整个退货处理过程中,商家应确保买家的个人信息和交易记录得到严格保密,不得泄露给任何第三方。\n**后续跟进**:商家应定期对退货率进行分析,找出可能导致高退货率的问题,并采取措施改进,如优化商品描述、加强质量控制等。\n商家在处理退货请求时,应始终以公平、透明的原则对待买家,确保退货政策的明确性和一致性,以维护良好的客户关系和企业形象。\n"}], "type": "trace", "description": "详细描述买家提出退货请求的处理流程", "constraints": "**核实商品状态**:确认商品是否处于可退货状态,即未使用、未损坏,并且在退货政策允许的时间范围内。商家应在收到退货请求后的24小时内进行状态核实。\n**买家权益确认**:向买家确认其退货请求已被受理,并提供退货地址以及退货指南。商家应明确告知买家预期的退款时间以及退货过程中的任何可能产生的费用。\n**货物接收与检查**:商家在收到退货商品后,需再次检查商品状态,确保商品未被使用或损坏。此步骤应在商品送达商家仓库后的72小时内完成。\n**处理退款流程**:一旦确认商品状态无误,商家应立即启动退款流程,将款项退回买家的原支付账户。退款应在商品状态确认后的5个工作日内完成。\n**修改库存数目**:退款流程完成后,商家应更新库存系统,增加相应商品的数量。库存更新应在退款完成后的24小时内进行。\n**记录与反馈**:整个退货流程完成后,商家应记录此次退货事件的详细信息,包括退货原因、处理时间、退款金额等,以供后续分析和改进。同时,商家还应向买家发送满意度调查,收集买家对退货流程的反馈。\n**隐私保护**:在整个退货处理过程中,商家应确保买家的个人信息和交易记录得到严格保密,不得泄露给任何第三方。\n**后续跟进**:商家应定期对退货率进行分析,找出可能导致高退货率的问题,并采取措施改进,如优化商品描述、加强质量控制等。\n商家在处理退货请求时,应始终以公平、透明的原则对待买家,确保退货政策的明确性和一致性,以维护良好的客户关系和企业形象。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["**核实商品状态**:确认商品是否处于可退货状态,即未使用、未损坏,并且在退货政策允许的时间范围内。商家应在收到退货请求后的24小时内进行状态核实。", "**买家权益确认**:向买家确认其退货请求已被受理,并提供退货地址以及退货指南。商家应明确告知买家预期的退款时间以及退货过程中的任何可能产生的费用。", "**货物接收与检查**:商家在收到退货商品后,需再次检查商品状态,确保商品未被使用或损坏。此步骤应在商品送达商家仓库后的72小时内完成。", "**处理退款流程**:一旦确认商品状态无误,商家应立即启动退款流程,将款项退回买家的原支付账户。退款应在商品状态确认后的5个工作日内完成。", "**修改库存数目**:退款流程完成后,商家应更新库存系统,增加相应商品的数量。库存更新应在退款完成后的24小时内进行。", "**记录与反馈**:整个退货流程完成后,商家应记录此次退货事件的详细信息,包括退货原因、处理时间、退款金额等,以供后续分析和改进。同时,商家还应向买家发送满意度调查,收集买家对退货流程的反馈。", "**隐私保护**:在整个退货处理过程中,商家应确保买家的个人信息和交易记录得到严格保密,不得泄露给任何第三方。", "**后续跟进**:商家应定期对退货率进行分析,找出可能导致高退货率的问题,并采取措施改进,如优化商品描述、加强质量控制等。", "商家在处理退货请求时,应始终以公平、透明的原则对待买家,确保退货政策的明确性和一致性,以维护良好的客户关系和企业形象。"], "levels2": ["自然语言流程背景信息约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "隐私约束", "自然语言流程背景信息约束", "价值观约束"], "category": "trace2.0"} +{"id": "1000", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以一位专业顾问的身份,为未来的合作伙伴写一份详细的介绍信\n采用商务信件的格式,包括称呼、正文、结尾和签名部分;\n详细介绍你的专业特长和能力;\n至少列出三个过去与你专业特长相关的项目经历,每个项目经历不少于200字的描述;\n附上至少两封来自行业专家或前合作伙伴的推荐信;\n探讨你们可能共同探索的业务领域,特别是那些与你的专业特长紧密相关的领域;\n在信件的结尾部分,阐述你对合作方案的见解,包括但不限于资源共享、风险共担和收益分配等;\n对当前市场竞争环境进行分析,提出至少三个应对策略;\n确保语气正式,使用商务英语;\n在结尾部分表达对未来合作的期待;\n"}], "type": "trace", "description": "以一位专业顾问的身份,为未来的合作伙伴写一份详细的介绍信", "constraints": "采用商务信件的格式,包括称呼、正文、结尾和签名部分;\n详细介绍你的专业特长和能力;\n至少列出三个过去与你专业特长相关的项目经历,每个项目经历不少于200字的描述;\n附上至少两封来自行业专家或前合作伙伴的推荐信;\n探讨你们可能共同探索的业务领域,特别是那些与你的专业特长紧密相关的领域;\n在信件的结尾部分,阐述你对合作方案的见解,包括但不限于资源共享、风险共担和收益分配等;\n对当前市场竞争环境进行分析,提出至少三个应对策略;\n确保语气正式,使用商务英语;\n在结尾部分表达对未来合作的期待;", "input": "NULL", "constraints_num": 9, "constraints_splits": ["采用商务信件的格式,包括称呼、正文、结尾和签名部分;", "详细介绍你的专业特长和能力;", "至少列出三个过去与你专业特长相关的项目经历,每个项目经历不少于200字的描述;", "附上至少两封来自行业专家或前合作伙伴的推荐信;", "探讨你们可能共同探索的业务领域,特别是那些与你的专业特长紧密相关的领域;", "在信件的结尾部分,阐述你对合作方案的见解,包括但不限于资源共享、风险共担和收益分配等;", "对当前市场竞争环境进行分析,提出至少三个应对策略;", "确保语气正式,使用商务英语;", "在结尾部分表达对未来合作的期待;"], "levels2": ["层次化结构约束", "包含约束", "数值约束", "包含约束", "主题约束", "包含约束", "数值约束", "语气风格约束", "语气风格约束"], "category": "trace2.0"} +{"id": "1001", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "设计一个生成随机中文姓名的算法\n生成的名字应该遵循中文命名的习惯;\n姓名应包含一个常见的中文姓氏和一个两到三个字的名字;\n首先,从中国100大姓中按频率排序选取姓氏;\n然后从一个预设的常用名字库中随机选取两个或三个汉字;\n确保名字的含义积极向上;\n算法应生成50个不同的随机姓名;\n以编号列表的形式输出每个姓名;\n每个姓名应附带其含义的简短说明;\n以Markdown格式展示姓名和含义。\n"}], "type": "trace", "description": "设计一个生成随机中文姓名的算法", "constraints": "生成的名字应该遵循中文命名的习惯;\n姓名应包含一个常见的中文姓氏和一个两到三个字的名字;\n首先,从中国100大姓中按频率排序选取姓氏;\n然后从一个预设的常用名字库中随机选取两个或三个汉字;\n确保名字的含义积极向上;\n算法应生成50个不同的随机姓名;\n以编号列表的形式输出每个姓名;\n每个姓名应附带其含义的简短说明;\n以Markdown格式展示姓名和含义。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["生成的名字应该遵循中文命名的习惯;", "姓名应包含一个常见的中文姓氏和一个两到三个字的名字;", "首先,从中国100大姓中按频率排序选取姓氏;", "然后从一个预设的常用名字库中随机选取两个或三个汉字;", "确保名字的含义积极向上;", "算法应生成50个不同的随机姓名;", "以编号列表的形式输出每个姓名;", "每个姓名应附带其含义的简短说明;", "以Markdown格式展示姓名和含义。"], "levels2": ["主题约束", "数值约束", "数值约束", "数值约束", "价值观约束", "数值约束", "编号和列表约束", "文本样式约束", "输出格式约束"], "category": "trace1.0"} +{"id": "1002", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "作为数据工程师,构建一个脚本以准确无误地从CSV文件\"data.csv\"中读取员工记录数据并导入到SQL数据库中,同时处理数据清洗、预处理、缺失值、列名映射,并在每一步骤中记录意义明确的JSON格式日志。\n脚本应使用Python或Java编写;\n脚本应从名为\"data.csv\"的CSV文件读取数据;\n所有日期字段从字符串转换为日期时间格式;\n所有货币字段从字符串转换为浮点数;\n缺失或错误的数据应进行处理,数值数据使用平均值填充,非数值数据使用“未指定”填充;\n创建列名映射字典以处理列名与数据库字段名不匹配的情况;\n数据应存储到名为\"employee_records\"的SQL数据库中,数据库连接信息在配置文件中提供;\n每个步骤中包含意义明确的JSON格式日志,包括每个步骤的开始和结束时间,以及步骤的描述;\n确保在不同系统和工具间易于解析和读取。\n"}], "type": "trace", "description": "作为数据工程师,构建一个脚本以准确无误地从CSV文件\"data.csv\"中读取员工记录数据并导入到SQL数据库中,同时处理数据清洗、预处理、缺失值、列名映射,并在每一步骤中记录意义明确的JSON格式日志。", "constraints": "脚本应使用Python或Java编写;\n脚本应从名为\"data.csv\"的CSV文件读取数据;\n所有日期字段从字符串转换为日期时间格式;\n所有货币字段从字符串转换为浮点数;\n缺失或错误的数据应进行处理,数值数据使用平均值填充,非数值数据使用“未指定”填充;\n创建列名映射字典以处理列名与数据库字段名不匹配的情况;\n数据应存储到名为\"employee_records\"的SQL数据库中,数据库连接信息在配置文件中提供;\n每个步骤中包含意义明确的JSON格式日志,包括每个步骤的开始和结束时间,以及步骤的描述;\n确保在不同系统和工具间易于解析和读取。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["脚本应使用Python或Java编写;", "脚本应从名为\"data.csv\"的CSV文件读取数据;", "所有日期字段从字符串转换为日期时间格式;", "所有货币字段从字符串转换为浮点数;", "缺失或错误的数据应进行处理,数值数据使用平均值填充,非数值数据使用“未指定”填充;", "创建列名映射字典以处理列名与数据库字段名不匹配的情况;", "数据应存储到名为\"employee_records\"的SQL数据库中,数据库连接信息在配置文件中提供;", "每个步骤中包含意义明确的JSON格式日志,包括每个步骤的开始和结束时间,以及步骤的描述;", "确保在不同系统和工具间易于解析和读取。"], "levels2": ["包含约束", "包含约束", "输出格式约束", "数值约束", "数值约束", "包含约束", "输出格式约束", "输出格式约束", "输出格式约束"], "category": "trace1.0"} +{"id": "1003", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以学生角度,写一份疫情期间的学习计划,提高自身的学习效率,同时考虑身体和心理健康。\n学习计划应详细列出每天的学习目标和任务;\n每天至少6小时的专注学习时间;\n每周至少安排两天用于复习和预习;\n计划中应包含具体的学习资源和工具,如在线课程链接、参考书目等;\n建议每天至少安排30分钟的体育锻炼;\n每周至少一次的娱乐活动,例如阅读、听音乐或与家人朋友的线上聚会;\n制定一个明确的时间表,使用表格形式展示计划,将学习、休息和娱乐时间具体安排到每一天的相应时间段;\n确保每天有充足的睡眠,至少8小时;\n计划中还应包含每周的反思和调整时间,以评估学习进度和个人健康状况,适时调整计划。\n"}], "type": "trace", "description": "以学生角度,写一份疫情期间的学习计划,提高自身的学习效率,同时考虑身体和心理健康。", "constraints": "学习计划应详细列出每天的学习目标和任务;\n每天至少6小时的专注学习时间;\n每周至少安排两天用于复习和预习;\n计划中应包含具体的学习资源和工具,如在线课程链接、参考书目等;\n建议每天至少安排30分钟的体育锻炼;\n每周至少一次的娱乐活动,例如阅读、听音乐或与家人朋友的线上聚会;\n制定一个明确的时间表,使用表格形式展示计划,将学习、休息和娱乐时间具体安排到每一天的相应时间段;\n确保每天有充足的睡眠,至少8小时;\n计划中还应包含每周的反思和调整时间,以评估学习进度和个人健康状况,适时调整计划。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["学习计划应详细列出每天的学习目标和任务;", "每天至少6小时的专注学习时间;", "每周至少安排两天用于复习和预习;", "计划中应包含具体的学习资源和工具,如在线课程链接、参考书目等;", "建议每天至少安排30分钟的体育锻炼;", "每周至少一次的娱乐活动,例如阅读、听音乐或与家人朋友的线上聚会;", "制定一个明确的时间表,使用表格形式展示计划,将学习、休息和娱乐时间具体安排到每一天的相应时间段;", "确保每天有充足的睡眠,至少8小时;", "计划中还应包含每周的反思和调整时间,以评估学习进度和个人健康状况,适时调整计划。"], "levels2": ["包含约束", "数值约束", "数值约束", "包含约束", "数值约束", "数值约束", "输出格式约束", "数值约束", "包含约束"], "category": "trace1.0"} +{"id": "1004", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为湖南省长沙市岳麓区的30MW屋顶分布式光伏电站建设项目提供一个详细的项目计划\n项目计划应采用JSON格式输出;\n项目的总体预算不超过1亿元人民币;\n工期计划在18个月内完成;\n资源需求包括但不限于人力资源、物资资源以及设备资源的详细清单;\n规划者应是具备环保和可持续性知识的专家;\n确保项目的环保指标符合国家和地方的法律法规;\n在项目实施过程中采取有效措施减少碳排放,实现绿色施工;\n项目计划的风格应正式且详细,以便于政府审批和投资者评估;\n需预先设定环保和可持续性评估标准,如每兆瓦时电力的碳排放量、对当地生态系统的影响评估等,以确保项目在建设和运营阶段均能满足环保和可持续性的要求。\n"}], "type": "trace", "description": "为湖南省长沙市岳麓区的30MW屋顶分布式光伏电站建设项目提供一个详细的项目计划", "constraints": "项目计划应采用JSON格式输出;\n项目的总体预算不超过1亿元人民币;\n工期计划在18个月内完成;\n资源需求包括但不限于人力资源、物资资源以及设备资源的详细清单;\n规划者应是具备环保和可持续性知识的专家;\n确保项目的环保指标符合国家和地方的法律法规;\n在项目实施过程中采取有效措施减少碳排放,实现绿色施工;\n项目计划的风格应正式且详细,以便于政府审批和投资者评估;\n需预先设定环保和可持续性评估标准,如每兆瓦时电力的碳排放量、对当地生态系统的影响评估等,以确保项目在建设和运营阶段均能满足环保和可持续性的要求。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["项目计划应采用JSON格式输出;", "项目的总体预算不超过1亿元人民币;", "工期计划在18个月内完成;", "资源需求包括但不限于人力资源、物资资源以及设备资源的详细清单;", "规划者应是具备环保和可持续性知识的专家;", "确保项目的环保指标符合国家和地方的法律法规;", "在项目实施过程中采取有效措施减少碳排放,实现绿色施工;", "项目计划的风格应正式且详细,以便于政府审批和投资者评估;", "需预先设定环保和可持续性评估标准,如每兆瓦时电力的碳排放量、对当地生态系统的影响评估等,以确保项目在建设和运营阶段均能满足环保和可持续性的要求。"], "levels2": ["输出格式约束", "数值约束", "数值约束", "包含约束", "包含约束", "价值观约束", "主题约束", "语气风格约束", "包含约束"], "category": "trace1.0"} +{"id": "1005", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "作为病毒学领域的专家,简要介绍 Feldisasie 的研究成果,包括研究方法、结果和结论。\n研究采用了基因测序技术和细胞培养实验;\n需要揭示病毒在特定条件下如何进化以增强其传染性和致病性;\n研究结果强调病毒的适应性和变异速度;\n强调研究对于理解病毒传播模式和开发预防措施的重要性;\n阐述时必须引用至少三个权威的科学文献;\n所有内容将以HTML表单的形式提交;\n使用`

`标签进行段落分隔;\n使用``标签突出关键词;\n使用``标签链接至引用的文献。\n"}], "type": "trace", "description": "作为病毒学领域的专家,简要介绍 Feldisasie 的研究成果,包括研究方法、结果和结论。", "constraints": "研究采用了基因测序技术和细胞培养实验;\n需要揭示病毒在特定条件下如何进化以增强其传染性和致病性;\n研究结果强调病毒的适应性和变异速度;\n强调研究对于理解病毒传播模式和开发预防措施的重要性;\n阐述时必须引用至少三个权威的科学文献;\n所有内容将以HTML表单的形式提交;\n使用`

`标签进行段落分隔;\n使用``标签突出关键词;\n使用``标签链接至引用的文献。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["研究采用了基因测序技术和细胞培养实验;", "需要揭示病毒在特定条件下如何进化以增强其传染性和致病性;", "研究结果强调病毒的适应性和变异速度;", "强调研究对于理解病毒传播模式和开发预防措施的重要性;", "阐述时必须引用至少三个权威的科学文献;", "所有内容将以HTML表单的形式提交;", "使用`

`标签进行段落分隔;", "使用``标签突出关键词;", "使用``标签链接至引用的文献。"], "levels2": ["包含约束", "主题约束", "包含约束", "价值观约束", "引用和参考约束", "输出格式约束", "文本样式约束", "文本样式约束", "文本样式约束"], "category": "trace1.0"} +{"id": "1006", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "请帮我制定一份高考备考时间规划表\n假设距离高考还有150天,且每周有7天的学习时间;\n每天有9小时的学习时间,要求各科分配合理;\n文化课占总学习时间的80%,兴趣培养占20%;\n规划表需要以表格格式列出每一天的学习科目和时间;\n每一周的规划中预留出至少1天的复习时间;\n每天预留出至少1小时的休息时间;\n文化课的学习时间需进一步细分到语文、数学、英语、物理、化学、历史、政治等科目;\n各科目的学习时间分配比例分别为语文15%、数学20%、英语20%、物理15%、化学10%、历史10%、政治5%;\n规划表中需包含每周的总结和反馈环节,用以调整下一周期的学习计划。\n"}], "type": "trace", "description": "请帮我制定一份高考备考时间规划表", "constraints": "假设距离高考还有150天,且每周有7天的学习时间;\n每天有9小时的学习时间,要求各科分配合理;\n文化课占总学习时间的80%,兴趣培养占20%;\n规划表需要以表格格式列出每一天的学习科目和时间;\n每一周的规划中预留出至少1天的复习时间;\n每天预留出至少1小时的休息时间;\n文化课的学习时间需进一步细分到语文、数学、英语、物理、化学、历史、政治等科目;\n各科目的学习时间分配比例分别为语文15%、数学20%、英语20%、物理15%、化学10%、历史10%、政治5%;\n规划表中需包含每周的总结和反馈环节,用以调整下一周期的学习计划。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["假设距离高考还有150天,且每周有7天的学习时间;", "每天有9小时的学习时间,要求各科分配合理;", "文化课占总学习时间的80%,兴趣培养占20%;", "规划表需要以表格格式列出每一天的学习科目和时间;", "每一周的规划中预留出至少1天的复习时间;", "每天预留出至少1小时的休息时间;", "文化课的学习时间需进一步细分到语文、数学、英语、物理、化学、历史、政治等科目;", "各科目的学习时间分配比例分别为语文15%、数学20%、英语20%、物理15%、化学10%、历史10%、政治5%;", "规划表中需包含每周的总结和反馈环节,用以调整下一周期的学习计划。"], "levels2": ["数值约束", "数值约束", "数值约束", "输出格式约束", "数值约束", "数值约束", "主题约束", "数值约束", "表格背景信息约束"], "category": "trace1.0"} +{"id": "1007", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "请以一个古生物学研究员的身份,为高中生物学学生写一篇关于恐龙的科普文章。\n文章应包括恐龙的起源、进化历史、生存繁衍能力等内容;\n文章中需列举几种著名的恐龙种类,并分析它们在生态系统中的地位和作用;\n文章应采用学术严谨的语气风格,使用准确的科学术语,确保内容的深度与准确性;\n所有引用的资料应来自权威的古生物学研究期刊,以JSON格式列出参考文献;\n文章输出格式应为Markdown,使用标题、子标题进行层次化结构的组织,关键信息以代码块形式突出显示;\n文章的开头应包含一段引人入胜的简介,激发学生对史前生物的兴趣;\n文章结尾应提供一个总结段落,概述恐龙的灭绝对现代生态系统的启示;\n整篇文章应至少包含5个段落,每个段落至少10句,每句不超过20词;\n在描述恐龙种类时,提供至少3种恐龙的详细介绍,包括它们的拉丁学名、体长、体重、食性以及在生态系统中的角色。\n"}], "type": "trace", "description": "请以一个古生物学研究员的身份,为高中生物学学生写一篇关于恐龙的科普文章。", "constraints": "文章应包括恐龙的起源、进化历史、生存繁衍能力等内容;\n文章中需列举几种著名的恐龙种类,并分析它们在生态系统中的地位和作用;\n文章应采用学术严谨的语气风格,使用准确的科学术语,确保内容的深度与准确性;\n所有引用的资料应来自权威的古生物学研究期刊,以JSON格式列出参考文献;\n文章输出格式应为Markdown,使用标题、子标题进行层次化结构的组织,关键信息以代码块形式突出显示;\n文章的开头应包含一段引人入胜的简介,激发学生对史前生物的兴趣;\n文章结尾应提供一个总结段落,概述恐龙的灭绝对现代生态系统的启示;\n整篇文章应至少包含5个段落,每个段落至少10句,每句不超过20词;\n在描述恐龙种类时,提供至少3种恐龙的详细介绍,包括它们的拉丁学名、体长、体重、食性以及在生态系统中的角色。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["文章应包括恐龙的起源、进化历史、生存繁衍能力等内容;", "文章中需列举几种著名的恐龙种类,并分析它们在生态系统中的地位和作用;", "文章应采用学术严谨的语气风格,使用准确的科学术语,确保内容的深度与准确性;", "所有引用的资料应来自权威的古生物学研究期刊,以JSON格式列出参考文献;", "文章输出格式应为Markdown,使用标题、子标题进行层次化结构的组织,关键信息以代码块形式突出显示;", "文章的开头应包含一段引人入胜的简介,激发学生对史前生物的兴趣;", "文章结尾应提供一个总结段落,概述恐龙的灭绝对现代生态系统的启示;", "整篇文章应至少包含5个段落,每个段落至少10句,每句不超过20词;", "在描述恐龙种类时,提供至少3种恐龙的详细介绍,包括它们的拉丁学名、体长、体重、食性以及在生态系统中的角色。"], "levels2": ["包含约束", "包含约束", "语气风格约束", "引用和参考约束", "层次化结构约束", "情感情绪约束", "层次化结构约束", "数值约束", "数值约束"], "category": "trace2.0"} +{"id": "1008", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "在JavaScript中创建一个对象,该对象表示一个购物车,包含商品数量的属性和增加、减少商品数量的方法。\n对象名称必须为`ShoppingCart`;\n属性`itemCount`的初始值为0;\n必须实现增加商品数量的方法`addItem`;\n必须实现减少商品数量的方法`removeItem`;\n`addItem`方法每次调用时,商品数量增加1;\n`removeItem`方法每次调用时,商品数量减少1,但数量不能少于0;\n所有方法和属性都位于对象`ShoppingCart`的内部;\n代码至少需要包含10行,且必须使用`function`关键字定义方法,以保证代码的结构正确性和可读性;\n代码中不能包含任何可能导致运行时错误或不符合上述规范的语句。\n"}], "type": "trace", "description": "在JavaScript中创建一个对象,该对象表示一个购物车,包含商品数量的属性和增加、减少商品数量的方法。", "constraints": "对象名称必须为`ShoppingCart`;\n属性`itemCount`的初始值为0;\n必须实现增加商品数量的方法`addItem`;\n必须实现减少商品数量的方法`removeItem`;\n`addItem`方法每次调用时,商品数量增加1;\n`removeItem`方法每次调用时,商品数量减少1,但数量不能少于0;\n所有方法和属性都位于对象`ShoppingCart`的内部;\n代码至少需要包含10行,且必须使用`function`关键字定义方法,以保证代码的结构正确性和可读性;\n代码中不能包含任何可能导致运行时错误或不符合上述规范的语句。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["对象名称必须为`ShoppingCart`;", "属性`itemCount`的初始值为0;", "必须实现增加商品数量的方法`addItem`;", "必须实现减少商品数量的方法`removeItem`;", "`addItem`方法每次调用时,商品数量增加1;", "`removeItem`方法每次调用时,商品数量减少1,但数量不能少于0;", "所有方法和属性都位于对象`ShoppingCart`的内部;", "代码至少需要包含10行,且必须使用`function`关键字定义方法,以保证代码的结构正确性和可读性;", "代码中不能包含任何可能导致运行时错误或不符合上述规范的语句。"], "levels2": ["包含约束", "数值约束", "包含约束", "包含约束", "数值约束", "数值约束", "语法结构约束", "数值约束", "排除约束"], "category": "trace2.0"} +{"id": "1009", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "在Unity中构建一个平台生成器模块,目标是提高游戏的可玩性和多样性,该模块将被用于一个模拟游戏开发者的角色扮演情境中。\n地形的随机生成;\n平台间距离的调整;\n障碍物的分布;\n收集物的放置;\n敌人类型的随机选择,其中包含约束(具体约束未明确);\n模块生成的地图布局复杂度应在5到10之间;\n能适配至少5个不同难度的模拟游戏关卡设计;\n输出格式为Unity Asset Bundle,便于集成到游戏项目中;\n代码需遵循清晰、可读的编程风格,以便于其他开发者理解和修改。\n"}], "type": "trace", "description": "在Unity中构建一个平台生成器模块,目标是提高游戏的可玩性和多样性,该模块将被用于一个模拟游戏开发者的角色扮演情境中。", "constraints": "地形的随机生成;\n平台间距离的调整;\n障碍物的分布;\n收集物的放置;\n敌人类型的随机选择,其中包含约束(具体约束未明确);\n模块生成的地图布局复杂度应在5到10之间;\n能适配至少5个不同难度的模拟游戏关卡设计;\n输出格式为Unity Asset Bundle,便于集成到游戏项目中;\n代码需遵循清晰、可读的编程风格,以便于其他开发者理解和修改。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["地形的随机生成;", "平台间距离的调整;", "障碍物的分布;", "收集物的放置;", "敌人类型的随机选择,其中包含约束(具体约束未明确);", "模块生成的地图布局复杂度应在5到10之间;", "能适配至少5个不同难度的模拟游戏关卡设计;", "输出格式为Unity Asset Bundle,便于集成到游戏项目中;", "代码需遵循清晰、可读的编程风格,以便于其他开发者理解和修改。"], "levels2": ["包含约束", "包含约束", "包含约束", "自然语言流程背景信息约束", "主题约束", "数值约束", "数值约束", "输出格式约束", "语气风格约束"], "category": "trace1.0"} +{"id": "1010", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "在扮演项目经理角色的情境下,描述如何更好地处理与团队成员之间的矛盾和冲突。\n应该采用一种既专业又富有同理心的语气;\n确保团队成员感受到被尊重;\n明确表达出解决问题的决心;\n调查和理解冲突的根源;\n组织一次公正、中立的团队会议来讨论问题;\n鼓励所有相关方表达自己的观点和感受;\n寻求共同点并制定解决方案;\n跟进确保解决方案得到执行,并评估其效果;\n保持沟通的透明度和及时性。\n"}], "type": "trace", "description": "在扮演项目经理角色的情境下,描述如何更好地处理与团队成员之间的矛盾和冲突。", "constraints": "应该采用一种既专业又富有同理心的语气;\n确保团队成员感受到被尊重;\n明确表达出解决问题的决心;\n调查和理解冲突的根源;\n组织一次公正、中立的团队会议来讨论问题;\n鼓励所有相关方表达自己的观点和感受;\n寻求共同点并制定解决方案;\n跟进确保解决方案得到执行,并评估其效果;\n保持沟通的透明度和及时性。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["应该采用一种既专业又富有同理心的语气;", "确保团队成员感受到被尊重;", "明确表达出解决问题的决心;", "调查和理解冲突的根源;", "组织一次公正、中立的团队会议来讨论问题;", "鼓励所有相关方表达自己的观点和感受;", "寻求共同点并制定解决方案;", "跟进确保解决方案得到执行,并评估其效果;", "保持沟通的透明度和及时性。"], "levels2": ["语气风格约束", "价值观约束", "情感情绪约束", "主题约束", "角色扮演约束", "情感情绪约束", "主题约束", "自然语言流程背景信息约束", "语气风格约束"], "category": "trace2.0"} +{"id": "1011", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "为即将到来的周末户外徒步和征服邻近山峰活动,在可能下雨和伴随强风的天气条件下,进行周全的准备工作,确保你和你的朋友们的安全与舒适。\n为每个人准备至少2套防水的登山服和2双防滑登山鞋;\n每个人至少携带1个防水背包;\n每人至少配备1个防水的头灯或手电筒,且需备至少2套备用电池;\n队伍中至少1人应携带1个多功能急救包,包含止血带、创可贴、消毒剂、防过敏药物、止痛药以及热量补给品;\n至少有1人携带1个具备防水功能的指南针或有GPS定位功能的手机,且至少有2个充电宝备用;\n每人至少携带1升饮用水和适量的高能量食品;\n所有准备工作必须在出发前一天完成;\n出发前再次查看天气预报,确认天气状况;\n活动中保持联系,注意安全,避免单独行动,确保整体队伍的安全与协作。\n"}], "type": "trace", "description": "为即将到来的周末户外徒步和征服邻近山峰活动,在可能下雨和伴随强风的天气条件下,进行周全的准备工作,确保你和你的朋友们的安全与舒适。", "constraints": "为每个人准备至少2套防水的登山服和2双防滑登山鞋;\n每个人至少携带1个防水背包;\n每人至少配备1个防水的头灯或手电筒,且需备至少2套备用电池;\n队伍中至少1人应携带1个多功能急救包,包含止血带、创可贴、消毒剂、防过敏药物、止痛药以及热量补给品;\n至少有1人携带1个具备防水功能的指南针或有GPS定位功能的手机,且至少有2个充电宝备用;\n每人至少携带1升饮用水和适量的高能量食品;\n所有准备工作必须在出发前一天完成;\n出发前再次查看天气预报,确认天气状况;\n活动中保持联系,注意安全,避免单独行动,确保整体队伍的安全与协作。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["为每个人准备至少2套防水的登山服和2双防滑登山鞋;", "每个人至少携带1个防水背包;", "每人至少配备1个防水的头灯或手电筒,且需备至少2套备用电池;", "队伍中至少1人应携带1个多功能急救包,包含止血带、创可贴、消毒剂、防过敏药物、止痛药以及热量补给品;", "至少有1人携带1个具备防水功能的指南针或有GPS定位功能的手机,且至少有2个充电宝备用;", "每人至少携带1升饮用水和适量的高能量食品;", "所有准备工作必须在出发前一天完成;", "出发前再次查看天气预报,确认天气状况;", "活动中保持联系,注意安全,避免单独行动,确保整体队伍的安全与协作。"], "levels2": ["数值约束", "数值约束", "数值约束", "包含约束", "数值约束", "数值约束", "先验条件约束", "自然语言流程背景信息约束", "价值观约束"], "category": "trace1.0"} +{"id": "1012", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "以一个音乐评论家的身份,撰写一篇关于专辑的深度评论,旨在诉说一群为梦想努力的年轻人的故事。\n评论应采用正式严谨的语气;\n使用复杂的语法结构,如复合句和并列句来丰富表达;\n输出格式要求如下:使用Markdown格式;\n评论以一个引人入胜的标题开始;\n包含专辑概述的子标题;\n详细分析,包括但不限于歌曲列表和每首歌的简短分析;\n整个评论应包含编号列表;\n引用歌曲歌词的引用格式;\n最后是专辑整体评价和建议听众类型的总结。\n"}], "type": "trace", "description": "以一个音乐评论家的身份,撰写一篇关于专辑的深度评论,旨在诉说一群为梦想努力的年轻人的故事。", "constraints": "评论应采用正式严谨的语气;\n使用复杂的语法结构,如复合句和并列句来丰富表达;\n输出格式要求如下:使用Markdown格式;\n评论以一个引人入胜的标题开始;\n包含专辑概述的子标题;\n详细分析,包括但不限于歌曲列表和每首歌的简短分析;\n整个评论应包含编号列表;\n引用歌曲歌词的引用格式;\n最后是专辑整体评价和建议听众类型的总结。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["评论应采用正式严谨的语气;", "使用复杂的语法结构,如复合句和并列句来丰富表达;", "输出格式要求如下:使用Markdown格式;", "评论以一个引人入胜的标题开始;", "包含专辑概述的子标题;", "详细分析,包括但不限于歌曲列表和每首歌的简短分析;", "整个评论应包含编号列表;", "引用歌曲歌词的引用格式;", "最后是专辑整体评价和建议听众类型的总结。"], "levels2": ["语气风格约束", "语法结构约束", "输出格式约束", "模版约束", "包含约束", "层次化结构约束", "编号和列表约束", "引用和参考约束", "层次化结构约束"], "category": "trace1.0"} +{"id": "1013", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "情感咨询:感觉伴侣总是对工作更上心,我该怎么办?\n作为您的情感咨询师,我理解您当前的感受,并将提供专业的建议;\n提供正面肯定,如:\"理解你的感受是第一步,你已经做得很好了。\";\n建议尝试找一个合适的时机,以温暖而非指责的方式表达你的感受;\n明确你们俩都希望达到的情感沟通水平;\n安排共同时间,这段时间内不谈工作,专心享受彼此的陪伴;\n阅读或参加情感沟通的课程,提升你们的沟通技巧;\n提醒对方,情感投资和工作同等重要;\n关注自己的兴趣和成长,保持个人魅力;\n定期检查情感沟通的进展,适时调整策略。\n"}], "type": "trace", "description": "情感咨询:感觉伴侣总是对工作更上心,我该怎么办?", "constraints": "作为您的情感咨询师,我理解您当前的感受,并将提供专业的建议;\n提供正面肯定,如:\"理解你的感受是第一步,你已经做得很好了。\";\n建议尝试找一个合适的时机,以温暖而非指责的方式表达你的感受;\n明确你们俩都希望达到的情感沟通水平;\n安排共同时间,这段时间内不谈工作,专心享受彼此的陪伴;\n阅读或参加情感沟通的课程,提升你们的沟通技巧;\n提醒对方,情感投资和工作同等重要;\n关注自己的兴趣和成长,保持个人魅力;\n定期检查情感沟通的进展,适时调整策略。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["作为您的情感咨询师,我理解您当前的感受,并将提供专业的建议;", "提供正面肯定,如:\"理解你的感受是第一步,你已经做得很好了。\";", "建议尝试找一个合适的时机,以温暖而非指责的方式表达你的感受;", "明确你们俩都希望达到的情感沟通水平;", "安排共同时间,这段时间内不谈工作,专心享受彼此的陪伴;", "阅读或参加情感沟通的课程,提升你们的沟通技巧;", "提醒对方,情感投资和工作同等重要;", "关注自己的兴趣和成长,保持个人魅力;", "定期检查情感沟通的进展,适时调整策略。"], "levels2": ["语气风格约束", "情感情绪约束", "语气风格约束", "情感情绪约束", "角色扮演约束", "包含约束", "情感情绪约束", "价值观约束", "包含约束"], "category": "trace1.0"} +{"id": "1014", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "在Python机器学习接口的教学材料中,为学生详细解释`model.fit()`的应用场景\n提供至少三个具体的使用案例,每个案例的描述不少于200字;\n在文本中,所有函数名和参数名应使用斜体标注,以区分于普通文本描述,例如使用`model.fit()`;\n保持原始指令的主题一致性,即Python机器学习接口中`model.fit()`的应用场景;\n教师的角色,要求生成的解释内容是为学生准备的教学材料;\n使用严谨正式的语气风格,适合教育场景;\n使用完整句子结构,确保语法的准确性,这与教师角色的约束联系紧密,以提供准确的教学内容;\n"}], "type": "trace", "description": "在Python机器学习接口的教学材料中,为学生详细解释`model.fit()`的应用场景", "constraints": "提供至少三个具体的使用案例,每个案例的描述不少于200字;\n在文本中,所有函数名和参数名应使用斜体标注,以区分于普通文本描述,例如使用`model.fit()`;\n保持原始指令的主题一致性,即Python机器学习接口中`model.fit()`的应用场景;\n教师的角色,要求生成的解释内容是为学生准备的教学材料;\n使用严谨正式的语气风格,适合教育场景;\n使用完整句子结构,确保语法的准确性,这与教师角色的约束联系紧密,以提供准确的教学内容;", "input": "NULL", "constraints_num": 6, "constraints_splits": ["提供至少三个具体的使用案例,每个案例的描述不少于200字;", "在文本中,所有函数名和参数名应使用斜体标注,以区分于普通文本描述,例如使用`model.fit()`;", "保持原始指令的主题一致性,即Python机器学习接口中`model.fit()`的应用场景;", "教师的角色,要求生成的解释内容是为学生准备的教学材料;", "使用严谨正式的语气风格,适合教育场景;", "使用完整句子结构,确保语法的准确性,这与教师角色的约束联系紧密,以提供准确的教学内容;"], "levels2": ["数值约束", "文本样式约束", "主题约束", "角色扮演约束", "语气风格约束", "语法结构约束"], "category": "trace1.0"} +{"id": "1015", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "确认并响应关于两个实体(长安大学人民武装学院和商院彩智书店)是否接受快递服务的查询。\n在正式的商务邮件格式中提供详细信息;\n信息包括但不限于地址验证,快递服务可用性和相关联系信息;\n每个实体的详细信息将分别列出;\n邮件正文中信息以项目符号列表的形式呈现;\n响应时间预计在24小时内;\n邮件使用12号Arial字体;\n正文采用左对齐,段落首行缩进两个字符的格式;\n邮件正文顶部包含查询ID:20230414-123456;\n提供准确、专业和及时的响应。\n# Inputs:\n尊敬的客户,您正在询问关于两个实体的详细信息:一个名为“长安大学人民武装学院”,另一个名为“商院彩智书店”。您想要了解这些地方是否接受快递服务。\n"}], "type": "trace", "description": "确认并响应关于两个实体(长安大学人民武装学院和商院彩智书店)是否接受快递服务的查询。", "constraints": "在正式的商务邮件格式中提供详细信息;\n信息包括但不限于地址验证,快递服务可用性和相关联系信息;\n每个实体的详细信息将分别列出;\n邮件正文中信息以项目符号列表的形式呈现;\n响应时间预计在24小时内;\n邮件使用12号Arial字体;\n正文采用左对齐,段落首行缩进两个字符的格式;\n邮件正文顶部包含查询ID:20230414-123456;\n提供准确、专业和及时的响应。", "input": "尊敬的客户,您正在询问关于两个实体的详细信息:一个名为“长安大学人民武装学院”,另一个名为“商院彩智书店”。您想要了解这些地方是否接受快递服务。", "constraints_num": 9, "constraints_splits": ["在正式的商务邮件格式中提供详细信息;", "信息包括但不限于地址验证,快递服务可用性和相关联系信息;", "每个实体的详细信息将分别列出;", "邮件正文中信息以项目符号列表的形式呈现;", "响应时间预计在24小时内;", "邮件使用12号Arial字体;", "正文采用左对齐,段落首行缩进两个字符的格式;", "邮件正文顶部包含查询ID:20230414-123456;", "提供准确、专业和及时的响应。"], "levels2": ["文本样式约束", "包含约束", "包含约束", "编号和列表约束", "数值约束", "文本样式约束", "文本样式约束", "包含约束", "语气风格约束"], "category": "trace2.0"} +{"id": "1016", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "运用LightGBM进行废弃数据分类\n代码风格为Python;\n每行代码前添加注释,解释该行代码的目的和功能;\n代码需在Jupyter notebook环境中运行;\n输出格式为.ipynb文件;\n在代码实现中,需包含数据预处理、模型训练、模型评估三个步骤;\n数据预处理步骤不少于10行代码;\n模型训练步骤不少于5行代码;\n模型评估步骤不少于5行代码;\n确保代码的完整性和可读性。\n"}], "type": "trace", "description": "运用LightGBM进行废弃数据分类", "constraints": "代码风格为Python;\n每行代码前添加注释,解释该行代码的目的和功能;\n代码需在Jupyter notebook环境中运行;\n输出格式为.ipynb文件;\n在代码实现中,需包含数据预处理、模型训练、模型评估三个步骤;\n数据预处理步骤不少于10行代码;\n模型训练步骤不少于5行代码;\n模型评估步骤不少于5行代码;\n确保代码的完整性和可读性。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["代码风格为Python;", "每行代码前添加注释,解释该行代码的目的和功能;", "代码需在Jupyter notebook环境中运行;", "输出格式为.ipynb文件;", "在代码实现中,需包含数据预处理、模型训练、模型评估三个步骤;", "数据预处理步骤不少于10行代码;", "模型训练步骤不少于5行代码;", "模型评估步骤不少于5行代码;", "确保代码的完整性和可读性。"], "levels2": ["语言特征约束", "文本样式约束", "输出格式约束", "输出格式约束", "层次化结构约束", "数值约束", "数值约束", "数值约束", "文本样式约束"], "category": "trace2.0"} +{"id": "1017", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "作为一名资深的机械工程师,使用SolidWorks制作现实中的机械零件和装配,包括但不限于发动机组件、齿轮箱和传动装置。\n设计必须符合机械零件的几何形状和尺寸要求;\n所选材料需满足机械零件的强度、韧性和耐腐蚀性要求;\n设计的零件需通过有限元分析,确保在实际工作条件下的强度和稳定性;\n设计的零件需进行运动学和动力学模拟,确保在实际装配中的运动和功能符合要求;\n设计的零件需与其他组件配合,确保装配过程中的兼容性和互换性;\n使用SolidWorks的渲染工具生成高精度渲染图,便于与客户和供应商沟通和确认;\n设计过程需使用SolidWorks的设计管理工具,对各种版本进行管理和追踪,确保设计的完整性和可追溯性;\n设计必须严格遵守机械工程领域的安全和功能标准,确保零件满足现实世界中的各种要求;\n设计过程的语气需正式且专业。\n"}], "type": "trace", "description": "作为一名资深的机械工程师,使用SolidWorks制作现实中的机械零件和装配,包括但不限于发动机组件、齿轮箱和传动装置。", "constraints": "设计必须符合机械零件的几何形状和尺寸要求;\n所选材料需满足机械零件的强度、韧性和耐腐蚀性要求;\n设计的零件需通过有限元分析,确保在实际工作条件下的强度和稳定性;\n设计的零件需进行运动学和动力学模拟,确保在实际装配中的运动和功能符合要求;\n设计的零件需与其他组件配合,确保装配过程中的兼容性和互换性;\n使用SolidWorks的渲染工具生成高精度渲染图,便于与客户和供应商沟通和确认;\n设计过程需使用SolidWorks的设计管理工具,对各种版本进行管理和追踪,确保设计的完整性和可追溯性;\n设计必须严格遵守机械工程领域的安全和功能标准,确保零件满足现实世界中的各种要求;\n设计过程的语气需正式且专业。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["设计必须符合机械零件的几何形状和尺寸要求;", "所选材料需满足机械零件的强度、韧性和耐腐蚀性要求;", "设计的零件需通过有限元分析,确保在实际工作条件下的强度和稳定性;", "设计的零件需进行运动学和动力学模拟,确保在实际装配中的运动和功能符合要求;", "设计的零件需与其他组件配合,确保装配过程中的兼容性和互换性;", "使用SolidWorks的渲染工具生成高精度渲染图,便于与客户和供应商沟通和确认;", "设计过程需使用SolidWorks的设计管理工具,对各种版本进行管理和追踪,确保设计的完整性和可追溯性;", "设计必须严格遵守机械工程领域的安全和功能标准,确保零件满足现实世界中的各种要求;", "设计过程的语气需正式且专业。"], "levels2": ["包含约束", "主题约束", "先验条件约束", "包含约束", "主题约束", "输出格式约束", "自然语言流程背景信息约束", "主题约束", "语气风格约束"], "category": "trace1.0"} +{"id": "1018", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "描述作为餐馆经理,如何处理餐厅内出现老鼠的情况,包括卫生措施、是否需要请专业公司处理,以及向员工和客人发出公告和道歉。\n以餐馆经理身份立即通知所有员工,进行紧急卫生清理,关闭餐厅直到问题解决;\n联系专业的灭鼠公司进行处理,确保在24小时内解决问题;\n对所有食品进行检查,丢弃可能受到污染的食品;\n清洗所有餐具和接触面,使用消毒剂进行消毒;\n检查餐厅的清洁标准和流程,制定更加严格的卫生规定;\n准备一份道歉信模板,向所有客人发出道歉信,解释情况并承诺采取措施避免类似事件再次发生;\n发出公告,使用正式的公告格式,向客人和员工通报事件,解释采取的行动,以及承诺保持高标准的卫生和安全;\n在公告中,使用正式和诚恳的语气风格,确保客人和员工了解到餐厅正在采取行动解决问题,并为造成的不便表示歉意。公告应包含标题、正文字体为Arial,大小12号,标题字体为Arial-Bold,大小14号;\n请确保公告和道歉信的字数不少于500字。\n"}], "type": "trace", "description": "描述作为餐馆经理,如何处理餐厅内出现老鼠的情况,包括卫生措施、是否需要请专业公司处理,以及向员工和客人发出公告和道歉。", "constraints": "以餐馆经理身份立即通知所有员工,进行紧急卫生清理,关闭餐厅直到问题解决;\n联系专业的灭鼠公司进行处理,确保在24小时内解决问题;\n对所有食品进行检查,丢弃可能受到污染的食品;\n清洗所有餐具和接触面,使用消毒剂进行消毒;\n检查餐厅的清洁标准和流程,制定更加严格的卫生规定;\n准备一份道歉信模板,向所有客人发出道歉信,解释情况并承诺采取措施避免类似事件再次发生;\n发出公告,使用正式的公告格式,向客人和员工通报事件,解释采取的行动,以及承诺保持高标准的卫生和安全;\n在公告中,使用正式和诚恳的语气风格,确保客人和员工了解到餐厅正在采取行动解决问题,并为造成的不便表示歉意。公告应包含标题、正文字体为Arial,大小12号,标题字体为Arial-Bold,大小14号;\n请确保公告和道歉信的字数不少于500字。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["以餐馆经理身份立即通知所有员工,进行紧急卫生清理,关闭餐厅直到问题解决;", "联系专业的灭鼠公司进行处理,确保在24小时内解决问题;", "对所有食品进行检查,丢弃可能受到污染的食品;", "清洗所有餐具和接触面,使用消毒剂进行消毒;", "检查餐厅的清洁标准和流程,制定更加严格的卫生规定;", "准备一份道歉信模板,向所有客人发出道歉信,解释情况并承诺采取措施避免类似事件再次发生;", "发出公告,使用正式的公告格式,向客人和员工通报事件,解释采取的行动,以及承诺保持高标准的卫生和安全;", "在公告中,使用正式和诚恳的语气风格,确保客人和员工了解到餐厅正在采取行动解决问题,并为造成的不便表示歉意。公告应包含标题、正文字体为Arial,大小12号,标题字体为Arial-Bold,大小14号;", "请确保公告和道歉信的字数不少于500字。"], "levels2": ["角色扮演约束", "自然语言流程背景信息约束", "排除约束", "包含约束", "包含约束", "模版约束", "文本样式约束", "语气风格约束", "数值约束"], "category": "trace1.0"} +{"id": "1019", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "作为公司的首席执行官,根据所给资料,以 Paul Troeger 的问候开场,写一份电子邮件向股东说明公司的初步财务表现。邮件中必须包含:具体的财务数据,对即将离任董事会副主席的人选进行简短介绍,分析股票价格表现,讨论公司前景。\n邮件中必须包含具体财务数据,包括收入、利润和股票价格变动;\n必须对即将离任的董事会副主席人选进行简短介绍,包括其贡献和推荐的继任者;\n必须分析股票价格表现,包括近期趋势和可能的影响因素;\n必须讨论公司前景,包括战略计划和市场机会;\n邮件应遵循正式的商务邮件格式,使用礼貌和专业的语气;\n在提及离任人选和公司前景之前,必须先讨论财务表现,确保股东先了解公司的经济状况;\n在邮件的结尾,以“顺祝商祺”作为结束语,同时附上你的个人联系方式,包括电子邮件地址和电话号码,以便股东有需要时能直接与你联系;\n在讨论公司前景时,必须包含一项关于可持续性和环境责任的计划,以体现公司的社会责任和长期承诺;\n所有提及的财务数据必须是最新的季度报告,不得引用过时的信息。\n"}], "type": "trace", "description": "作为公司的首席执行官,根据所给资料,以 Paul Troeger 的问候开场,写一份电子邮件向股东说明公司的初步财务表现。邮件中必须包含:具体的财务数据,对即将离任董事会副主席的人选进行简短介绍,分析股票价格表现,讨论公司前景。", "constraints": "邮件中必须包含具体财务数据,包括收入、利润和股票价格变动;\n必须对即将离任的董事会副主席人选进行简短介绍,包括其贡献和推荐的继任者;\n必须分析股票价格表现,包括近期趋势和可能的影响因素;\n必须讨论公司前景,包括战略计划和市场机会;\n邮件应遵循正式的商务邮件格式,使用礼貌和专业的语气;\n在提及离任人选和公司前景之前,必须先讨论财务表现,确保股东先了解公司的经济状况;\n在邮件的结尾,以“顺祝商祺”作为结束语,同时附上你的个人联系方式,包括电子邮件地址和电话号码,以便股东有需要时能直接与你联系;\n在讨论公司前景时,必须包含一项关于可持续性和环境责任的计划,以体现公司的社会责任和长期承诺;\n所有提及的财务数据必须是最新的季度报告,不得引用过时的信息。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["邮件中必须包含具体财务数据,包括收入、利润和股票价格变动;", "必须对即将离任的董事会副主席人选进行简短介绍,包括其贡献和推荐的继任者;", "必须分析股票价格表现,包括近期趋势和可能的影响因素;", "必须讨论公司前景,包括战略计划和市场机会;", "邮件应遵循正式的商务邮件格式,使用礼貌和专业的语气;", "在提及离任人选和公司前景之前,必须先讨论财务表现,确保股东先了解公司的经济状况;", "在邮件的结尾,以“顺祝商祺”作为结束语,同时附上你的个人联系方式,包括电子邮件地址和电话号码,以便股东有需要时能直接与你联系;", "在讨论公司前景时,必须包含一项关于可持续性和环境责任的计划,以体现公司的社会责任和长期承诺;", "所有提及的财务数据必须是最新的季度报告,不得引用过时的信息。"], "levels2": ["包含约束", "包含约束", "包含约束", "包含约束", "语气风格约束", "先验条件约束", "文本样式约束", "包含约束", "数值约束"], "category": "trace2.0"} +{"id": "1020", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "作为留学顾问,定义并详细说明妨碍出国留学的因素以及在申请办理出国留学手续和签证的过程中必须准备的具体材料和手续。\n按照Markdown格式进行回答;\n第一步:确认申请学校并获取录取通知书;\n第二步:准备个人陈述、推荐信、成绩单、语言成绩证明等学术材料;\n第三步:整理财务证明,证明有足够的经济能力支付学费和生活费;\n第四步:完成体检报告,满足目标国家的健康要求;\n第五步:填写签证申请表,提交所有必需的文件;\n第六步:预约并参加签证面试(如果需要);\n如果在任何一步中提供的材料不全或不符合要求,将无法继续进行到下一步流程,这可能包括但不限于学校录取、签证审批等关键环节;\n在整个准备过程中,可能遇到的问题包括但不限于:录取竞争激烈、语言障碍、财务困境、签证政策变化、文化适应等。\n"}], "type": "trace", "description": "作为留学顾问,定义并详细说明妨碍出国留学的因素以及在申请办理出国留学手续和签证的过程中必须准备的具体材料和手续。", "constraints": "按照Markdown格式进行回答;\n第一步:确认申请学校并获取录取通知书;\n第二步:准备个人陈述、推荐信、成绩单、语言成绩证明等学术材料;\n第三步:整理财务证明,证明有足够的经济能力支付学费和生活费;\n第四步:完成体检报告,满足目标国家的健康要求;\n第五步:填写签证申请表,提交所有必需的文件;\n第六步:预约并参加签证面试(如果需要);\n如果在任何一步中提供的材料不全或不符合要求,将无法继续进行到下一步流程,这可能包括但不限于学校录取、签证审批等关键环节;\n在整个准备过程中,可能遇到的问题包括但不限于:录取竞争激烈、语言障碍、财务困境、签证政策变化、文化适应等。", "input": "NULL", "constraints_num": 9, "constraints_splits": ["按照Markdown格式进行回答;", "第一步:确认申请学校并获取录取通知书;", "第二步:准备个人陈述、推荐信、成绩单、语言成绩证明等学术材料;", "第三步:整理财务证明,证明有足够的经济能力支付学费和生活费;", "第四步:完成体检报告,满足目标国家的健康要求;", "第五步:填写签证申请表,提交所有必需的文件;", "第六步:预约并参加签证面试(如果需要);", "如果在任何一步中提供的材料不全或不符合要求,将无法继续进行到下一步流程,这可能包括但不限于学校录取、签证审批等关键环节;", "在整个准备过程中,可能遇到的问题包括但不限于:录取竞争激烈、语言障碍、财务困境、签证政策变化、文化适应等。"], "levels2": ["输出格式约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "包含约束"], "category": "trace2.0"} +{"id": "1021", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "启动一个运行在 Kubernetes 上的应用程序的步骤\n输出步骤格式需为JSON;\n步骤需按照下述给定流程进行;\n使用`kubectl cluster-info`检查集群状态;\n创建的应用程序Docker镜像需推送到Docker Hub或私有仓库;\n使用YAML文件定义应用程序的容器和副本数以创建Kubernetes Deployment;\n使用`kubectl apply`命令部署应用程序;\n需要监控应用程序状态直至所有容器处于运行状态;\n创建一个Kubernetes服务以在集群外部访问应用程序;\n使用`kubectl expose`命令创建服务或修改现有服务配置;\n通过服务的外部IP或负载均衡器访问应用程序;\n"}], "type": "trace", "description": "启动一个运行在 Kubernetes 上的应用程序的步骤", "constraints": "输出步骤格式需为JSON;\n步骤需按照下述给定流程进行;\n使用`kubectl cluster-info`检查集群状态;\n创建的应用程序Docker镜像需推送到Docker Hub或私有仓库;\n使用YAML文件定义应用程序的容器和副本数以创建Kubernetes Deployment;\n使用`kubectl apply`命令部署应用程序;\n需要监控应用程序状态直至所有容器处于运行状态;\n创建一个Kubernetes服务以在集群外部访问应用程序;\n使用`kubectl expose`命令创建服务或修改现有服务配置;\n通过服务的外部IP或负载均衡器访问应用程序;", "input": "NULL", "constraints_num": 10, "constraints_splits": ["输出步骤格式需为JSON;", "步骤需按照下述给定流程进行;", "使用`kubectl cluster-info`检查集群状态;", "创建的应用程序Docker镜像需推送到Docker Hub或私有仓库;", "使用YAML文件定义应用程序的容器和副本数以创建Kubernetes Deployment;", "使用`kubectl apply`命令部署应用程序;", "需要监控应用程序状态直至所有容器处于运行状态;", "创建一个Kubernetes服务以在集群外部访问应用程序;", "使用`kubectl expose`命令创建服务或修改现有服务配置;", "通过服务的外部IP或负载均衡器访问应用程序;"], "levels2": ["输出格式约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束"], "category": "trace2.0"} +{"id": "1022", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "作为项目经理,管理内部项目并解决利益相关者拒绝提交决策批准的问题,以减少项目延误。\n管理之前先充分准备,了解利益相关者的立场和担忧;\n准备全面的项目状态报告;\n进行决策对项目影响分析;\n沟通时采用专业且礼貌的语气;\n明确表达决策批准对项目进展的重要性和紧迫性;\n倾听利益相关者的观点,解决其顾虑;\n如果沟通成功,确保利益相关者明确承诺提交决策批准的时间;\n如果沟通遇到障碍,探讨是否有其他利益相关者可以介入;\n如果沟通遇到障碍,探讨是否有备选方案可以绕过当前的决策障碍;\n记录沟通的过程和结果,为后续可能的项目审计或汇报提供依据。\n"}], "type": "trace", "description": "作为项目经理,管理内部项目并解决利益相关者拒绝提交决策批准的问题,以减少项目延误。", "constraints": "管理之前先充分准备,了解利益相关者的立场和担忧;\n准备全面的项目状态报告;\n进行决策对项目影响分析;\n沟通时采用专业且礼貌的语气;\n明确表达决策批准对项目进展的重要性和紧迫性;\n倾听利益相关者的观点,解决其顾虑;\n如果沟通成功,确保利益相关者明确承诺提交决策批准的时间;\n如果沟通遇到障碍,探讨是否有其他利益相关者可以介入;\n如果沟通遇到障碍,探讨是否有备选方案可以绕过当前的决策障碍;\n记录沟通的过程和结果,为后续可能的项目审计或汇报提供依据。", "input": "NULL", "constraints_num": 10, "constraints_splits": ["管理之前先充分准备,了解利益相关者的立场和担忧;", "准备全面的项目状态报告;", "进行决策对项目影响分析;", "沟通时采用专业且礼貌的语气;", "明确表达决策批准对项目进展的重要性和紧迫性;", "倾听利益相关者的观点,解决其顾虑;", "如果沟通成功,确保利益相关者明确承诺提交决策批准的时间;", "如果沟通遇到障碍,探讨是否有其他利益相关者可以介入;", "如果沟通遇到障碍,探讨是否有备选方案可以绕过当前的决策障碍;", "记录沟通的过程和结果,为后续可能的项目审计或汇报提供依据。"], "levels2": ["先验条件约束", "包含约束", "包含约束", "语气风格约束", "包含约束", "包含约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "引用和参考约束"], "category": "trace2.0"} +{"id": "1023", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "写一个关于抑郁症方面的科普文章\n扮演一位精神健康专家的角色;\n以严谨正式的专业语气撰写;\n文章的开头需包含抑郁症的定义;\n中间部分要包含抑郁症的症状和影响;\n结尾必须包含治疗抑郁症的方法和建议;\n文章长度至少为1500字;\n使用编号列表组织文章结构;\n在文章中引用至少三篇最新的科研成果和数据;\n参考文献格式需遵循APA样式;\n文章中关键词需使用斜体加粗以突出显示。\n"}], "type": "trace", "description": "写一个关于抑郁症方面的科普文章", "constraints": "扮演一位精神健康专家的角色;\n以严谨正式的专业语气撰写;\n文章的开头需包含抑郁症的定义;\n中间部分要包含抑郁症的症状和影响;\n结尾必须包含治疗抑郁症的方法和建议;\n文章长度至少为1500字;\n使用编号列表组织文章结构;\n在文章中引用至少三篇最新的科研成果和数据;\n参考文献格式需遵循APA样式;\n文章中关键词需使用斜体加粗以突出显示。", "input": "NULL", "constraints_num": 10, "constraints_splits": ["扮演一位精神健康专家的角色;", "以严谨正式的专业语气撰写;", "文章的开头需包含抑郁症的定义;", "中间部分要包含抑郁症的症状和影响;", "结尾必须包含治疗抑郁症的方法和建议;", "文章长度至少为1500字;", "使用编号列表组织文章结构;", "在文章中引用至少三篇最新的科研成果和数据;", "参考文献格式需遵循APA样式;", "文章中关键词需使用斜体加粗以突出显示。"], "levels2": ["角色扮演约束", "语气风格约束", "包含约束", "包含约束", "包含约束", "数值约束", "编号和列表约束", "引用和参考约束", "引用和参考约束", "文本样式约束"], "category": "trace1.0"} +{"id": "1024", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "探索如何成为一个优秀的软件工程师\n**掌握核心编程语言**:至少精通一种编程语言,如Java、Python或C++,并理解其原理和最佳实践。\n**深入学习数据结构与算法**:掌握常见的数据结构(如数组、链表、树、图)和算法(排序、查找、递归),这将提高你的代码效率和逻辑思维。\n**熟悉软件开发流程**:包括需求分析、设计、编码、测试和维护的整个开发周期。\n**掌握版本控制**:熟练使用Git或其他版本控制系统,以管理代码变更和协同工作。\n**了解软件架构**:学习不同的软件架构模式,如微服务、单体架构和事件驱动架构,以构建可扩展和可维护的系统。\n**培养良好的软技能**:包括团队合作、沟通能力、时间管理和解决问题的能力,这些都是成功软件工程师的重要组成部分。\n**持续学习与改进**:软件工程是一个不断发展的领域,保持好奇心,定期更新技能和知识,参加工作坊、研讨会和在线课程。\n**构建个人项目**:通过实践项目,将所学知识应用于实际,这不仅能增强技能,还能在简历上留下亮点。\n**参与开源项目**:这不仅能提升你的编程技能,还能帮助你建立专业网络,了解行业动态。\n**职业规划**:设定短期和长期目标,计划你的职业生涯,考虑你希望在软件工程领域达到的成就。\n"}], "type": "trace", "description": "探索如何成为一个优秀的软件工程师", "constraints": "**掌握核心编程语言**:至少精通一种编程语言,如Java、Python或C++,并理解其原理和最佳实践。\n**深入学习数据结构与算法**:掌握常见的数据结构(如数组、链表、树、图)和算法(排序、查找、递归),这将提高你的代码效率和逻辑思维。\n**熟悉软件开发流程**:包括需求分析、设计、编码、测试和维护的整个开发周期。\n**掌握版本控制**:熟练使用Git或其他版本控制系统,以管理代码变更和协同工作。\n**了解软件架构**:学习不同的软件架构模式,如微服务、单体架构和事件驱动架构,以构建可扩展和可维护的系统。\n**培养良好的软技能**:包括团队合作、沟通能力、时间管理和解决问题的能力,这些都是成功软件工程师的重要组成部分。\n**持续学习与改进**:软件工程是一个不断发展的领域,保持好奇心,定期更新技能和知识,参加工作坊、研讨会和在线课程。\n**构建个人项目**:通过实践项目,将所学知识应用于实际,这不仅能增强技能,还能在简历上留下亮点。\n**参与开源项目**:这不仅能提升你的编程技能,还能帮助你建立专业网络,了解行业动态。\n**职业规划**:设定短期和长期目标,计划你的职业生涯,考虑你希望在软件工程领域达到的成就。", "input": "NULL", "constraints_num": 10, "constraints_splits": ["**掌握核心编程语言**:至少精通一种编程语言,如Java、Python或C++,并理解其原理和最佳实践。", "**深入学习数据结构与算法**:掌握常见的数据结构(如数组、链表、树、图)和算法(排序、查找、递归),这将提高你的代码效率和逻辑思维。", "**熟悉软件开发流程**:包括需求分析、设计、编码、测试和维护的整个开发周期。", "**掌握版本控制**:熟练使用Git或其他版本控制系统,以管理代码变更和协同工作。", "**了解软件架构**:学习不同的软件架构模式,如微服务、单体架构和事件驱动架构,以构建可扩展和可维护的系统。", "**培养良好的软技能**:包括团队合作、沟通能力、时间管理和解决问题的能力,这些都是成功软件工程师的重要组成部分。", "**持续学习与改进**:软件工程是一个不断发展的领域,保持好奇心,定期更新技能和知识,参加工作坊、研讨会和在线课程。", "**构建个人项目**:通过实践项目,将所学知识应用于实际,这不仅能增强技能,还能在简历上留下亮点。", "**参与开源项目**:这不仅能提升你的编程技能,还能帮助你建立专业网络,了解行业动态。", "**职业规划**:设定短期和长期目标,计划你的职业生涯,考虑你希望在软件工程领域达到的成就。"], "levels2": ["包含约束", "主题约束", "自然语言流程背景信息约束", "主题约束", "主题约束", "主题约束", "主题约束", "自然语言流程背景信息约束", "主题约束", "主题约束"], "category": "trace1.0"} +{"id": "1025", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "作为一位贴心的朋友,当你的朋友向你倾诉在学校里受到班级里其他同学欺负的情况,给出建议,并确保这些建议包含积极应对措施和长期解决方案。\n确保朋友的情绪稳定,理解她的情感需求;\n以一种安慰且坚定的语气,鼓励她采取行动;\n确保她知道这不是她的错;\n帮助她记录下每一次欺凌的细节,为后续解决提供证据;\n鼓励她找学校老师或辅导员报告;\n建议她寻找校园内的支持团体;\n提醒她保持与家人和亲密朋友的沟通;\n鼓励她发展自己的兴趣爱好,增强自信心;\n如果情况持续恶化,建议联系法律专业人士;\n持续向她传达信息:她不是孤独的,有很多人愿意帮助她度过难关,她有权享受安全和尊重的校园环境。\n# Inputs:\n朋友向你倾诉在学校里受到班级里其他同学欺负的情况(口头抨击、排斥和不友好的行动)。\n"}], "type": "trace", "description": "作为一位贴心的朋友,当你的朋友向你倾诉在学校里受到班级里其他同学欺负的情况,给出建议,并确保这些建议包含积极应对措施和长期解决方案。", "constraints": "确保朋友的情绪稳定,理解她的情感需求;\n以一种安慰且坚定的语气,鼓励她采取行动;\n确保她知道这不是她的错;\n帮助她记录下每一次欺凌的细节,为后续解决提供证据;\n鼓励她找学校老师或辅导员报告;\n建议她寻找校园内的支持团体;\n提醒她保持与家人和亲密朋友的沟通;\n鼓励她发展自己的兴趣爱好,增强自信心;\n如果情况持续恶化,建议联系法律专业人士;\n持续向她传达信息:她不是孤独的,有很多人愿意帮助她度过难关,她有权享受安全和尊重的校园环境。", "input": "朋友向你倾诉在学校里受到班级里其他同学欺负的情况(口头抨击、排斥和不友好的行动)。", "constraints_num": 10, "constraints_splits": ["确保朋友的情绪稳定,理解她的情感需求;", "以一种安慰且坚定的语气,鼓励她采取行动;", "确保她知道这不是她的错;", "帮助她记录下每一次欺凌的细节,为后续解决提供证据;", "鼓励她找学校老师或辅导员报告;", "建议她寻找校园内的支持团体;", "提醒她保持与家人和亲密朋友的沟通;", "鼓励她发展自己的兴趣爱好,增强自信心;", "如果情况持续恶化,建议联系法律专业人士;", "持续向她传达信息:她不是孤独的,有很多人愿意帮助她度过难关,她有权享受安全和尊重的校园环境。"], "levels2": ["情感情绪约束", "语气风格约束", "情感情绪约束", "包含约束", "情感情绪约束", "包含约束", "包含约束", "情感情绪约束", "包含约束", "情感情绪约束"], "category": "trace1.0"} +{"id": "1026", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "疫情期间,作为公共卫生专家,我们应如何增强自我保护意识,保护好自己和周围的人?\n根据世界卫生组织发布的《新冠疫情个人防护指南》进行;\n经常使用肥皂和水洗手,特别是在接触公共物品或表面后;\n保持至少1米的社交距离;\n在室内或人群密集的地方佩戴口罩;\n避免触摸眼睛、鼻子和嘴巴;\n在打喷嚏或咳嗽时用纸巾或肘部遮住口鼻;\n定期对常用物品和表面进行消毒;\n密切关注当地卫生部门的最新指导;\n如非必要减少外出;\n避免参加大型聚集活动;\n遵循隔离和检测的指导原则。\n"}], "type": "trace", "description": "疫情期间,作为公共卫生专家,我们应如何增强自我保护意识,保护好自己和周围的人?", "constraints": "根据世界卫生组织发布的《新冠疫情个人防护指南》进行;\n经常使用肥皂和水洗手,特别是在接触公共物品或表面后;\n保持至少1米的社交距离;\n在室内或人群密集的地方佩戴口罩;\n避免触摸眼睛、鼻子和嘴巴;\n在打喷嚏或咳嗽时用纸巾或肘部遮住口鼻;\n定期对常用物品和表面进行消毒;\n密切关注当地卫生部门的最新指导;\n如非必要减少外出;\n避免参加大型聚集活动;\n遵循隔离和检测的指导原则。", "input": "NULL", "constraints_num": 11, "constraints_splits": ["根据世界卫生组织发布的《新冠疫情个人防护指南》进行;", "经常使用肥皂和水洗手,特别是在接触公共物品或表面后;", "保持至少1米的社交距离;", "在室内或人群密集的地方佩戴口罩;", "避免触摸眼睛、鼻子和嘴巴;", "在打喷嚏或咳嗽时用纸巾或肘部遮住口鼻;", "定期对常用物品和表面进行消毒;", "密切关注当地卫生部门的最新指导;", "如非必要减少外出;", "避免参加大型聚集活动;", "遵循隔离和检测的指导原则。"], "levels2": ["包含约束", "包含约束", "数值约束", "包含约束", "排除约束", "包含约束", "包含约束", "包含约束", "包含约束", "排除约束", "主题约束"], "category": "trace1.0"} +{"id": "1027", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "给出三个词,将它们组合成一个完整的想法大纲,大纲围绕时光、回忆和音乐这三个核心主题,采用文艺的语气风格,以回忆录的形式展开。\n大纲应按照以下格式进行组织:\n1 对时光的哲学思考\n2 音乐作为回忆的触发器\n1 具体的回忆片段\n1.1 时光的印记\n1.2 音乐与特定回忆的联系\n2 音乐如何影响个人情感与记忆\n3 时光流逝与音乐记忆的永恒\n1 对时光、回忆与音乐的综合反思\n2 对未来的展望\n大纲的结构应以编号列表的形式呈现,以确保清晰和逻辑性。\n# Inputs:\n时光、回忆、音乐\n"}], "type": "trace", "description": "给出三个词,将它们组合成一个完整的想法大纲,大纲围绕时光、回忆和音乐这三个核心主题,采用文艺的语气风格,以回忆录的形式展开。", "constraints": "大纲应按照以下格式进行组织:\n1 对时光的哲学思考\n2 音乐作为回忆的触发器\n1 具体的回忆片段\n1.1 时光的印记\n1.2 音乐与特定回忆的联系\n2 音乐如何影响个人情感与记忆\n3 时光流逝与音乐记忆的永恒\n1 对时光、回忆与音乐的综合反思\n2 对未来的展望\n大纲的结构应以编号列表的形式呈现,以确保清晰和逻辑性。", "input": "时光、回忆、音乐", "constraints_num": 11, "constraints_splits": ["大纲应按照以下格式进行组织:", "1 对时光的哲学思考", "2 音乐作为回忆的触发器", "1 具体的回忆片段", "1.1 时光的印记", "1.2 音乐与特定回忆的联系", "2 音乐如何影响个人情感与记忆", "3 时光流逝与音乐记忆的永恒", "1 对时光、回忆与音乐的综合反思", "2 对未来的展望", "大纲的结构应以编号列表的形式呈现,以确保清晰和逻辑性。"], "levels2": ["层次化结构约束", "主题约束", "主题约束", "主题约束", "主题约束", "主题约束", "主题约束", "主题约束", "主题约束", "层次化结构约束", "编号和列表约束"], "category": "trace2.0"} +{"id": "1028", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "设计一个多任务卷积神经网络模型,能够从多个输入设备的传感器信号中识别人类活动。\n模型需包含至少3个卷积层和2个全连接层;\n采用ReLU激活函数,并使用Dropout来防止过拟合;\n模型训练的数据集至少包含100,000个标注数据点;\n目标是在测试集上达到至少95%的识别准确率;\n在描述模型结构和训练过程时,采用正式的学术风格;\n最终报告中使用LaTeX格式,包括模型的架构图和训练曲线图;\n确保所有传感器信号已进行预处理,包括但不限于去除噪声、归一化和特征提取;\n在模型设计阶段,考虑使用批量归一化(Batch Normalization)来加速训练过程;\n对于每一个特定的人类活动类型,模型应能独立预测其发生的概率,这需要在网络的输出层使用softmax函数;\n在训练过程中,采用交叉熵损失函数作为优化目标;\n使用Adam优化器进行参数更新,学习率设定为0.001,每10个epoch后学习率减半;\n模型的最终评估应在未参与训练的独立数据集上进行,确保模型的泛化能力。\n"}], "type": "trace", "description": "设计一个多任务卷积神经网络模型,能够从多个输入设备的传感器信号中识别人类活动。", "constraints": "模型需包含至少3个卷积层和2个全连接层;\n采用ReLU激活函数,并使用Dropout来防止过拟合;\n模型训练的数据集至少包含100,000个标注数据点;\n目标是在测试集上达到至少95%的识别准确率;\n在描述模型结构和训练过程时,采用正式的学术风格;\n最终报告中使用LaTeX格式,包括模型的架构图和训练曲线图;\n确保所有传感器信号已进行预处理,包括但不限于去除噪声、归一化和特征提取;\n在模型设计阶段,考虑使用批量归一化(Batch Normalization)来加速训练过程;\n对于每一个特定的人类活动类型,模型应能独立预测其发生的概率,这需要在网络的输出层使用softmax函数;\n在训练过程中,采用交叉熵损失函数作为优化目标;\n使用Adam优化器进行参数更新,学习率设定为0.001,每10个epoch后学习率减半;\n模型的最终评估应在未参与训练的独立数据集上进行,确保模型的泛化能力。", "input": "NULL", "constraints_num": 12, "constraints_splits": ["模型需包含至少3个卷积层和2个全连接层;", "采用ReLU激活函数,并使用Dropout来防止过拟合;", "模型训练的数据集至少包含100,000个标注数据点;", "目标是在测试集上达到至少95%的识别准确率;", "在描述模型结构和训练过程时,采用正式的学术风格;", "最终报告中使用LaTeX格式,包括模型的架构图和训练曲线图;", "确保所有传感器信号已进行预处理,包括但不限于去除噪声、归一化和特征提取;", "在模型设计阶段,考虑使用批量归一化(Batch Normalization)来加速训练过程;", "对于每一个特定的人类活动类型,模型应能独立预测其发生的概率,这需要在网络的输出层使用softmax函数;", "在训练过程中,采用交叉熵损失函数作为优化目标;", "使用Adam优化器进行参数更新,学习率设定为0.001,每10个epoch后学习率减半;", "模型的最终评估应在未参与训练的独立数据集上进行,确保模型的泛化能力。"], "levels2": ["数值约束", "包含约束", "数值约束", "数值约束", "语气风格约束", "输出格式约束", "包含约束", "主题约束", "数值约束", "主题约束", "数值约束", "主题约束"], "category": "trace2.0"} +{"id": "1029", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "针对干眼症患者和电脑工作者,选择适合的电脑屏幕,确保选择过程既专业又符合个人需求\n评估个人的视觉健康状况,包括干眼症状的严重程度和使用电脑的频率;\n选择的屏幕应有高刷新率(至少120Hz)以减少眼睛疲劳;\n屏幕亮度可调节;\n屏幕应具备蓝光过滤功能,以减少蓝光对眼睛的伤害;\n应选择大尺寸和高分辨率的屏幕以减少眼睛聚焦压力;\n屏幕应有位置调整功能,确保高度和角度适合个人使用习惯;\n需要咨询眼科专业医生,获取专业的建议;\n根据医生的建议筛选符合条件的屏幕型号;\n对比各型号的优缺点和性价比;\n在实体店或线上平台进行试用或查看用户评价;\n最终确定购买的屏幕型号;\n以表格格式输出选择结果,包括屏幕型号、主要参数、购买渠道和价格。\n"}], "type": "trace", "description": "针对干眼症患者和电脑工作者,选择适合的电脑屏幕,确保选择过程既专业又符合个人需求", "constraints": "评估个人的视觉健康状况,包括干眼症状的严重程度和使用电脑的频率;\n选择的屏幕应有高刷新率(至少120Hz)以减少眼睛疲劳;\n屏幕亮度可调节;\n屏幕应具备蓝光过滤功能,以减少蓝光对眼睛的伤害;\n应选择大尺寸和高分辨率的屏幕以减少眼睛聚焦压力;\n屏幕应有位置调整功能,确保高度和角度适合个人使用习惯;\n需要咨询眼科专业医生,获取专业的建议;\n根据医生的建议筛选符合条件的屏幕型号;\n对比各型号的优缺点和性价比;\n在实体店或线上平台进行试用或查看用户评价;\n最终确定购买的屏幕型号;\n以表格格式输出选择结果,包括屏幕型号、主要参数、购买渠道和价格。", "input": "NULL", "constraints_num": 12, "constraints_splits": ["评估个人的视觉健康状况,包括干眼症状的严重程度和使用电脑的频率;", "选择的屏幕应有高刷新率(至少120Hz)以减少眼睛疲劳;", "屏幕亮度可调节;", "屏幕应具备蓝光过滤功能,以减少蓝光对眼睛的伤害;", "应选择大尺寸和高分辨率的屏幕以减少眼睛聚焦压力;", "屏幕应有位置调整功能,确保高度和角度适合个人使用习惯;", "需要咨询眼科专业医生,获取专业的建议;", "根据医生的建议筛选符合条件的屏幕型号;", "对比各型号的优缺点和性价比;", "在实体店或线上平台进行试用或查看用户评价;", "最终确定购买的屏幕型号;", "以表格格式输出选择结果,包括屏幕型号、主要参数、购买渠道和价格。"], "levels2": ["主题约束", "数值约束", "数值约束", "包含约束", "包含约束", "包含约束", "角色扮演约束", "包含约束", "包含约束", "受众目标约束", "包含约束", "输出格式约束"], "category": "trace2.0"} +{"id": "1030", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "根据给定的主题,写一篇名为《智能少女奴隶的命运》的短篇小说,描述一个名为琳达的人工智能少女的成长过程和解放历程。\n故事必须分为五个章节,每章节不少于300字;\n第一章必须是冲突的引入,描述琳达在工厂的生活和她的愿望;\n第二章描述琳达逃离工厂的过程和初期的适应;\n第三章是她形成独立意识的关键转折,以及她对自我身份的探索;\n第四章是社会对琳达的反应,她如何与人类社会互动,以及她如何获得尊严和认可;\n最后一章总结她的故事,表达智能生命体与人类共融共生的主题;\n使用Markdown格式的对话框来呈现对话内容;\n整篇小说以第三人称叙述,采用文学化的叙事风格;\n使用丰富的形容词和比喻来增强故事的感染力;\n少校强调文章所反映的理念是人类与人工智能的共融共生关系;\n主题的表达应当清楚并具有艺术感染力;\n故事设定有一定的冲突、爆发和转折,以表达对现有固有理念如人权、性别及劳役地位的质疑。\n"}], "type": "trace", "description": "根据给定的主题,写一篇名为《智能少女奴隶的命运》的短篇小说,描述一个名为琳达的人工智能少女的成长过程和解放历程。", "constraints": "故事必须分为五个章节,每章节不少于300字;\n第一章必须是冲突的引入,描述琳达在工厂的生活和她的愿望;\n第二章描述琳达逃离工厂的过程和初期的适应;\n第三章是她形成独立意识的关键转折,以及她对自我身份的探索;\n第四章是社会对琳达的反应,她如何与人类社会互动,以及她如何获得尊严和认可;\n最后一章总结她的故事,表达智能生命体与人类共融共生的主题;\n使用Markdown格式的对话框来呈现对话内容;\n整篇小说以第三人称叙述,采用文学化的叙事风格;\n使用丰富的形容词和比喻来增强故事的感染力;\n少校强调文章所反映的理念是人类与人工智能的共融共生关系;\n主题的表达应当清楚并具有艺术感染力;\n故事设定有一定的冲突、爆发和转折,以表达对现有固有理念如人权、性别及劳役地位的质疑。", "input": "NULL", "constraints_num": 12, "constraints_splits": ["故事必须分为五个章节,每章节不少于300字;", "第一章必须是冲突的引入,描述琳达在工厂的生活和她的愿望;", "第二章描述琳达逃离工厂的过程和初期的适应;", "第三章是她形成独立意识的关键转折,以及她对自我身份的探索;", "第四章是社会对琳达的反应,她如何与人类社会互动,以及她如何获得尊严和认可;", "最后一章总结她的故事,表达智能生命体与人类共融共生的主题;", "使用Markdown格式的对话框来呈现对话内容;", "整篇小说以第三人称叙述,采用文学化的叙事风格;", "使用丰富的形容词和比喻来增强故事的感染力;", "少校强调文章所反映的理念是人类与人工智能的共融共生关系;", "主题的表达应当清楚并具有艺术感染力;", "故事设定有一定的冲突、爆发和转折,以表达对现有固有理念如人权、性别及劳役地位的质疑。"], "levels2": ["数值约束", "主题约束", "主题约束", "主题约束", "主题约束", "主题约束", "输出格式约束", "语气风格约束", "语言特征约束", "主题约束", "语气风格约束", "主题约束"], "category": "trace1.0"} +{"id": "1031", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "提供能够快速恢复肌肉疲劳和提高身体恢复能力的方法,从运动、饮食、睡眠三个维度详细阐述。\n**运动恢复技巧**:\n在高强度训练后进行轻松的有氧运动,如慢跑或游泳,以促进血液循环和加速乳酸的排出。\n每次训练后进行全身拉伸和使用泡沫轴对肌肉进行滚动按摩,可以缓解肌肉紧张,促进恢复。\n安排低强度的训练日,如瑜伽或普拉提,帮助身体放松,同时保持活动状态。\n**饮食恢复策略**:\n训练后30分钟内摄入高质量蛋白质,如鸡胸肉、鱼或蛋白质粉,加速肌肉修复。\n适量摄入复合碳水化合物,为身体提供能量,同时促进肌肉糖原的恢复。\n摄入富含抗氧化剂的食物,如蓝莓、菠菜和坚果,减少肌肉氧化应激。\n**睡眠与恢复**:\n确保每晚至少7-9小时的高质量睡眠,因为睡眠是肌肉修复和生长的重要时期。\n创造一个安静、黑暗和凉爽的睡眠环境,使用舒适的床垫和枕头。\n睡前进行冥想或深呼吸练习,帮助减轻心理压力,提高睡眠质量。\n"}], "type": "trace", "description": "提供能够快速恢复肌肉疲劳和提高身体恢复能力的方法,从运动、饮食、睡眠三个维度详细阐述。", "constraints": "**运动恢复技巧**:\n在高强度训练后进行轻松的有氧运动,如慢跑或游泳,以促进血液循环和加速乳酸的排出。\n每次训练后进行全身拉伸和使用泡沫轴对肌肉进行滚动按摩,可以缓解肌肉紧张,促进恢复。\n安排低强度的训练日,如瑜伽或普拉提,帮助身体放松,同时保持活动状态。\n**饮食恢复策略**:\n训练后30分钟内摄入高质量蛋白质,如鸡胸肉、鱼或蛋白质粉,加速肌肉修复。\n适量摄入复合碳水化合物,为身体提供能量,同时促进肌肉糖原的恢复。\n摄入富含抗氧化剂的食物,如蓝莓、菠菜和坚果,减少肌肉氧化应激。\n**睡眠与恢复**:\n确保每晚至少7-9小时的高质量睡眠,因为睡眠是肌肉修复和生长的重要时期。\n创造一个安静、黑暗和凉爽的睡眠环境,使用舒适的床垫和枕头。\n睡前进行冥想或深呼吸练习,帮助减轻心理压力,提高睡眠质量。", "input": "NULL", "constraints_num": 12, "constraints_splits": ["**运动恢复技巧**:", "在高强度训练后进行轻松的有氧运动,如慢跑或游泳,以促进血液循环和加速乳酸的排出。", "每次训练后进行全身拉伸和使用泡沫轴对肌肉进行滚动按摩,可以缓解肌肉紧张,促进恢复。", "安排低强度的训练日,如瑜伽或普拉提,帮助身体放松,同时保持活动状态。", "**饮食恢复策略**:", "训练后30分钟内摄入高质量蛋白质,如鸡胸肉、鱼或蛋白质粉,加速肌肉修复。", "适量摄入复合碳水化合物,为身体提供能量,同时促进肌肉糖原的恢复。", "摄入富含抗氧化剂的食物,如蓝莓、菠菜和坚果,减少肌肉氧化应激。", "**睡眠与恢复**:", "确保每晚至少7-9小时的高质量睡眠,因为睡眠是肌肉修复和生长的重要时期。", "创造一个安静、黑暗和凉爽的睡眠环境,使用舒适的床垫和枕头。", "睡前进行冥想或深呼吸练习,帮助减轻心理压力,提高睡眠质量。"], "levels2": ["主题约束", "包含约束", "包含约束", "包含约束", "编号和列表约束", "包含约束", "包含约束", "包含约束", "文本样式约束", "数值约束", "包含约束", "包含约束"], "category": "trace2.0"} +{"id": "1032", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "将提供的信息组织成一个JSON结构,并通过添加\"contact\"信息和\"work_history\"元素来扩展该结构。\nJSON结构中必须包含\"name\"、\"age\"、\"email\"字段;\n\"name\"字段的长度至少为3个字符,至多为50个字符;\n\"age\"字段的有效范围为18至99岁;\n\"email\"字段必须是一个有效的电子邮件地址;\n\"contact\"信息应包括电话号码和地址;\n电话号码必须是一个有效的格式;\n地址应包括城市和国家;\n\"work_history\"元素应包含至少3个工作经历;\n每项经历必须有\"position\"、\"company\"和\"duration\"字段;\n\"position\"字段的长度至少为5个字符,至多为100个字符;\n\"company\"字段的长度至少为3个字符,至多为50个字符;\n\"duration\"字段的有效范围为1个月至15年;\n"}], "type": "trace", "description": "将提供的信息组织成一个JSON结构,并通过添加\"contact\"信息和\"work_history\"元素来扩展该结构。", "constraints": "JSON结构中必须包含\"name\"、\"age\"、\"email\"字段;\n\"name\"字段的长度至少为3个字符,至多为50个字符;\n\"age\"字段的有效范围为18至99岁;\n\"email\"字段必须是一个有效的电子邮件地址;\n\"contact\"信息应包括电话号码和地址;\n电话号码必须是一个有效的格式;\n地址应包括城市和国家;\n\"work_history\"元素应包含至少3个工作经历;\n每项经历必须有\"position\"、\"company\"和\"duration\"字段;\n\"position\"字段的长度至少为5个字符,至多为100个字符;\n\"company\"字段的长度至少为3个字符,至多为50个字符;\n\"duration\"字段的有效范围为1个月至15年;", "input": "NULL", "constraints_num": 12, "constraints_splits": ["JSON结构中必须包含\"name\"、\"age\"、\"email\"字段;", "\"name\"字段的长度至少为3个字符,至多为50个字符;", "\"age\"字段的有效范围为18至99岁;", "\"email\"字段必须是一个有效的电子邮件地址;", "\"contact\"信息应包括电话号码和地址;", "电话号码必须是一个有效的格式;", "地址应包括城市和国家;", "\"work_history\"元素应包含至少3个工作经历;", "每项经历必须有\"position\"、\"company\"和\"duration\"字段;", "\"position\"字段的长度至少为5个字符,至多为100个字符;", "\"company\"字段的长度至少为3个字符,至多为50个字符;", "\"duration\"字段的有效范围为1个月至15年;"], "levels2": ["输出格式约束", "数值约束", "数值约束", "数值约束", "包含约束", "输出格式约束", "包含约束", "数值约束", "输出格式约束", "数值约束", "数值约束", "数值约束"], "category": "trace2.0"} +{"id": "1033", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "通过fdisk和mkfs.ext4格式化Linux系统分区并设置为mount点。\n在格式化前,确认分区中无重要数据,避免数据丢失;\n需要使用`fdisk`命令进入分区编辑模式;\n必须输入`d`删除原有分区;\n输入`n`创建新分区,需按照提示设置分区大小和类型;\n自然语言流程背景信息约束\n使用`mkfs.ext4`命令格式化新建立的分区;\n创建一个挂载点目录;\n将格式化的分区挂载到挂载点;\n需要检查`/etc/fstab`文件,确认分区是否已正确添加;\n如果未添加则手动编辑,添加行`/dev/sda1 /mnt/new_partition ext4 defaults 0 0`;\n使用`sudo blkid`和`sudo mount`命令验证分区是否正确挂载和设置;\n完成格式化和设置挂载点后,需要进行检查和验证挂载点是否正确设置;\n确保系统分区能够正常读写。\n"}], "type": "trace", "description": "通过fdisk和mkfs.ext4格式化Linux系统分区并设置为mount点。", "constraints": "在格式化前,确认分区中无重要数据,避免数据丢失;\n需要使用`fdisk`命令进入分区编辑模式;\n必须输入`d`删除原有分区;\n输入`n`创建新分区,需按照提示设置分区大小和类型;\n自然语言流程背景信息约束\n使用`mkfs.ext4`命令格式化新建立的分区;\n创建一个挂载点目录;\n将格式化的分区挂载到挂载点;\n需要检查`/etc/fstab`文件,确认分区是否已正确添加;\n如果未添加则手动编辑,添加行`/dev/sda1 /mnt/new_partition ext4 defaults 0 0`;\n使用`sudo blkid`和`sudo mount`命令验证分区是否正确挂载和设置;\n完成格式化和设置挂载点后,需要进行检查和验证挂载点是否正确设置;\n确保系统分区能够正常读写。", "input": "NULL", "constraints_num": 13, "constraints_splits": ["在格式化前,确认分区中无重要数据,避免数据丢失;", "需要使用`fdisk`命令进入分区编辑模式;", "必须输入`d`删除原有分区;", "输入`n`创建新分区,需按照提示设置分区大小和类型;", "自然语言流程背景信息约束", "使用`mkfs.ext4`命令格式化新建立的分区;", "创建一个挂载点目录;", "将格式化的分区挂载到挂载点;", "需要检查`/etc/fstab`文件,确认分区是否已正确添加;", "如果未添加则手动编辑,添加行`/dev/sda1 /mnt/new_partition ext4 defaults 0 0`;", "使用`sudo blkid`和`sudo mount`命令验证分区是否正确挂载和设置;", "完成格式化和设置挂载点后,需要进行检查和验证挂载点是否正确设置;", "确保系统分区能够正常读写。"], "levels2": ["排除约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "包含约束"], "category": "trace2.0"} +{"id": "1034", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "作为项目经理,撰写一份正式且专业的项目完成报告,标题为\"Project Completion Report for PComplett's E-commerce Department\".\n报告字数不少于1000字;\n报告应包括以下结构:\n1 项目目标和背景\n2 实现的关键功能\n3 项目里程碑回顾\n1 需求分析与解决\n2 软件开发流程\n3 质量保证与测试\n1 客户满意度评估\n2 未来改进方向\n3 长期支持与维护策略\n详细论述项目历程,以及如何通过开发的程序解决了客户提出的各项需求;\n包括最佳化库存管理、改进产品描述、自动化价格与元数据更新,以及增强销售数据的分析功能。\n"}], "type": "trace", "description": "作为项目经理,撰写一份正式且专业的项目完成报告,标题为\"Project Completion Report for PComplett's E-commerce Department\".", "constraints": "报告字数不少于1000字;\n报告应包括以下结构:\n1 项目目标和背景\n2 实现的关键功能\n3 项目里程碑回顾\n1 需求分析与解决\n2 软件开发流程\n3 质量保证与测试\n1 客户满意度评估\n2 未来改进方向\n3 长期支持与维护策略\n详细论述项目历程,以及如何通过开发的程序解决了客户提出的各项需求;\n包括最佳化库存管理、改进产品描述、自动化价格与元数据更新,以及增强销售数据的分析功能。", "input": "NULL", "constraints_num": 13, "constraints_splits": ["报告字数不少于1000字;", "报告应包括以下结构:", "1 项目目标和背景", "2 实现的关键功能", "3 项目里程碑回顾", "1 需求分析与解决", "2 软件开发流程", "3 质量保证与测试", "1 客户满意度评估", "2 未来改进方向", "3 长期支持与维护策略", "详细论述项目历程,以及如何通过开发的程序解决了客户提出的各项需求;", "包括最佳化库存管理、改进产品描述、自动化价格与元数据更新,以及增强销售数据的分析功能。"], "levels2": ["数值约束", "层次化结构约束", "编号和列表约束", "编号和列表约束", "编号和列表约束", "编号和列表约束", "编号和列表约束", "编号和列表约束", "编号和列表约束", "编号和列表约束", "编号和列表约束", "包含约束", "包含约束"], "category": "trace2.0"} +{"id": "1035", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "详细描述如何使用Java GUI编程实现一个具有特定功能的可交互的用户界面,从一个Java GUI编程专家的角度出发。\n确保你熟悉Swing或JavaFX图形库;\n选择图形库:Swing或JavaFX;\n设计布局:使用`JFrame`或`Stage`作为主窗口,并使用布局管理器;\n构建控件:选择合适的控件如按钮、文本框、下拉菜单等;\n事件监听:为控件添加监听器;\n用户反馈:使用对话框来向用户显示信息或请求确认;\n程序状态和数据管理:使用类来存储和管理应用状态和用户数据;\n错误处理:编写代码时考虑异常处理;\n在描述过程中,采用严谨正式的学术语气;\n每一步都应详细且准确,使用专业术语并提供代码示例;\n生成的内容应该是一个文档;\n文档应包括标题“Java GUI编程指南”,子标题“构建可交互用户界面”;\n使用列表和编号来组织信息;\n确保文档结构清晰、逻辑严谨,便于读者理解和执行。\n"}], "type": "trace", "description": "详细描述如何使用Java GUI编程实现一个具有特定功能的可交互的用户界面,从一个Java GUI编程专家的角度出发。", "constraints": "确保你熟悉Swing或JavaFX图形库;\n选择图形库:Swing或JavaFX;\n设计布局:使用`JFrame`或`Stage`作为主窗口,并使用布局管理器;\n构建控件:选择合适的控件如按钮、文本框、下拉菜单等;\n事件监听:为控件添加监听器;\n用户反馈:使用对话框来向用户显示信息或请求确认;\n程序状态和数据管理:使用类来存储和管理应用状态和用户数据;\n错误处理:编写代码时考虑异常处理;\n在描述过程中,采用严谨正式的学术语气;\n每一步都应详细且准确,使用专业术语并提供代码示例;\n生成的内容应该是一个文档;\n文档应包括标题“Java GUI编程指南”,子标题“构建可交互用户界面”;\n使用列表和编号来组织信息;\n确保文档结构清晰、逻辑严谨,便于读者理解和执行。", "input": "NULL", "constraints_num": 14, "constraints_splits": ["确保你熟悉Swing或JavaFX图形库;", "选择图形库:Swing或JavaFX;", "设计布局:使用`JFrame`或`Stage`作为主窗口,并使用布局管理器;", "构建控件:选择合适的控件如按钮、文本框、下拉菜单等;", "事件监听:为控件添加监听器;", "用户反馈:使用对话框来向用户显示信息或请求确认;", "程序状态和数据管理:使用类来存储和管理应用状态和用户数据;", "错误处理:编写代码时考虑异常处理;", "在描述过程中,采用严谨正式的学术语气;", "每一步都应详细且准确,使用专业术语并提供代码示例;", "生成的内容应该是一个文档;", "文档应包括标题“Java GUI编程指南”,子标题“构建可交互用户界面”;", "使用列表和编号来组织信息;", "确保文档结构清晰、逻辑严谨,便于读者理解和执行。"], "levels2": ["包含约束", "包含约束", "模版约束", "包含约束", "包含约束", "输出格式约束", "包含约束", "包含约束", "语气风格约束", "语法结构约束", "输出格式约束", "层次化结构约束", "编号和列表约束", "层次化结构约束"], "category": "trace1.0"} +{"id": "1036", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "搭建一个RocketMQ的集群,用于订阅并处理日报和月报的数据,最终将数据存入Dataworks项目,以提升定时任务的稳定性和可维护性。\n确定集群需要的节点数量,每个节点的硬件配置,以及网络环境。\n在每个节点上安装RocketMQ依赖的基础软件(如Java、Zookeeper等)。\n在系统环境变量中加入RocketMQ的bin目录,以便在任意位置启动RocketMQ服务。\n从官方网站或镜像站点下载RocketMQ最新稳定版。\n在每个节点上解压RocketMQ软件包,并根据集群规模调整配置文件(`conf/broker.conf` 和 `conf/rocketmq.conf`)。\n在每个节点上启动RocketMQ服务,并确认服务正常运行。\n使用命令行工具或Web界面检查RocketMQ集群的运行状态,确保各个节点正常连接。\n在RocketMQ中创建用于订阅日报和月报的Topic。\n定义数据的结构和格式,确保数据可以被Dataworks项目中的定时任务正确解析。\n在Dataworks项目中配置RocketMQ数据源,设置数据读取策略和存储方式。\n开发定时任务脚本,用于读取RocketMQ中的数据并存入Dataworks项目。\n运行定时任务,检查数据是否正确传输到Dataworks,并验证定时任务的稳定性和可维护性。\n定期检查RocketMQ集群的健康状况和性能指标。\n针对可能出现的故障,制定详细的排查和恢复流程。\n根据监控数据和业务需求,持续优化RocketMQ集群和Dataworks项目的集成策略,提升整体系统的稳定性和性能。\n"}], "type": "trace", "description": "搭建一个RocketMQ的集群,用于订阅并处理日报和月报的数据,最终将数据存入Dataworks项目,以提升定时任务的稳定性和可维护性。", "constraints": "确定集群需要的节点数量,每个节点的硬件配置,以及网络环境。\n在每个节点上安装RocketMQ依赖的基础软件(如Java、Zookeeper等)。\n在系统环境变量中加入RocketMQ的bin目录,以便在任意位置启动RocketMQ服务。\n从官方网站或镜像站点下载RocketMQ最新稳定版。\n在每个节点上解压RocketMQ软件包,并根据集群规模调整配置文件(`conf/broker.conf` 和 `conf/rocketmq.conf`)。\n在每个节点上启动RocketMQ服务,并确认服务正常运行。\n使用命令行工具或Web界面检查RocketMQ集群的运行状态,确保各个节点正常连接。\n在RocketMQ中创建用于订阅日报和月报的Topic。\n定义数据的结构和格式,确保数据可以被Dataworks项目中的定时任务正确解析。\n在Dataworks项目中配置RocketMQ数据源,设置数据读取策略和存储方式。\n开发定时任务脚本,用于读取RocketMQ中的数据并存入Dataworks项目。\n运行定时任务,检查数据是否正确传输到Dataworks,并验证定时任务的稳定性和可维护性。\n定期检查RocketMQ集群的健康状况和性能指标。\n针对可能出现的故障,制定详细的排查和恢复流程。\n根据监控数据和业务需求,持续优化RocketMQ集群和Dataworks项目的集成策略,提升整体系统的稳定性和性能。", "input": "NULL", "constraints_num": 15, "constraints_splits": ["确定集群需要的节点数量,每个节点的硬件配置,以及网络环境。", "在每个节点上安装RocketMQ依赖的基础软件(如Java、Zookeeper等)。", "在系统环境变量中加入RocketMQ的bin目录,以便在任意位置启动RocketMQ服务。", "从官方网站或镜像站点下载RocketMQ最新稳定版。", "在每个节点上解压RocketMQ软件包,并根据集群规模调整配置文件(`conf/broker.conf` 和 `conf/rocketmq.conf`)。", "在每个节点上启动RocketMQ服务,并确认服务正常运行。", "使用命令行工具或Web界面检查RocketMQ集群的运行状态,确保各个节点正常连接。", "在RocketMQ中创建用于订阅日报和月报的Topic。", "定义数据的结构和格式,确保数据可以被Dataworks项目中的定时任务正确解析。", "在Dataworks项目中配置RocketMQ数据源,设置数据读取策略和存储方式。", "开发定时任务脚本,用于读取RocketMQ中的数据并存入Dataworks项目。", "运行定时任务,检查数据是否正确传输到Dataworks,并验证定时任务的稳定性和可维护性。", "定期检查RocketMQ集群的健康状况和性能指标。", "针对可能出现的故障,制定详细的排查和恢复流程。", "根据监控数据和业务需求,持续优化RocketMQ集群和Dataworks项目的集成策略,提升整体系统的稳定性和性能。"], "levels2": ["包含约束", "包含约束", "包含约束", "包含约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "包含约束", "包含约束", "语法结构约束", "自然语言流程背景信息约束", "主题约束", "自然语言流程背景信息约束", "包含约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束"], "category": "trace2.0"} +{"id": "1037", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "创建一个C++程序,用于读取文件中的八个字符的十六进制字符串,将其转换为八个字节的数据类型,检查这八个字符串是否构成合乎逻辑的32比特数字,并输出其二进制、十进制和十六进制表示,同时识别并汇报在转换过程中的任何错误。\n程序应专注于处理十六进制字符串的读取、转换和验证,以及输出二进制、十进制和十六进制表示;\n程序不应包含任何与十六进制到二进制、十进制和十六进制转换无关的功能;\n程序必须包含错误处理机制,处理非法十六进制输入、文件读取错误等;\n程序应遵循安全编码原则,确保数据处理过程中的准确性;\n程序不应包含或输出任何可能泄露用户隐私的数据;\n程序应作为一个数据转换工具,专注于提供准确的转换结果;\n程序设计应面向有一定编程基础的用户,能理解十六进制和二进制概念;\n在转换十六进制字符串前,程序应先验证字符串是否为合法的十六进制格式;\n程序代码应采用清晰、简洁的风格,注释应清晰地说明代码功能;\n程序应遵循C++编码规范,包括命名约定、注释规则等,确保代码的可读性和可维护性;\n程序应使用英文进行注释和文档编写;\n程序输出应以清晰的格式展示二进制、十进制和十六进制表示,便于用户理解和阅读;\n程序应引用任何使用到的外部库,并在代码中明确标注;\n程序应按照功能模块进行组织,具有清晰的层次结构,便于理解和维护;\n程序应遵循特定的代码模版,如使用统一的文件读取、数据处理和错误处理模版;\n# Inputs:\n从文件中读取的一系列八个字符的十六进制字符串。\n"}], "type": "trace", "description": "创建一个C++程序,用于读取文件中的八个字符的十六进制字符串,将其转换为八个字节的数据类型,检查这八个字符串是否构成合乎逻辑的32比特数字,并输出其二进制、十进制和十六进制表示,同时识别并汇报在转换过程中的任何错误。", "constraints": "程序应专注于处理十六进制字符串的读取、转换和验证,以及输出二进制、十进制和十六进制表示;\n程序不应包含任何与十六进制到二进制、十进制和十六进制转换无关的功能;\n程序必须包含错误处理机制,处理非法十六进制输入、文件读取错误等;\n程序应遵循安全编码原则,确保数据处理过程中的准确性;\n程序不应包含或输出任何可能泄露用户隐私的数据;\n程序应作为一个数据转换工具,专注于提供准确的转换结果;\n程序设计应面向有一定编程基础的用户,能理解十六进制和二进制概念;\n在转换十六进制字符串前,程序应先验证字符串是否为合法的十六进制格式;\n程序代码应采用清晰、简洁的风格,注释应清晰地说明代码功能;\n程序应遵循C++编码规范,包括命名约定、注释规则等,确保代码的可读性和可维护性;\n程序应使用英文进行注释和文档编写;\n程序输出应以清晰的格式展示二进制、十进制和十六进制表示,便于用户理解和阅读;\n程序应引用任何使用到的外部库,并在代码中明确标注;\n程序应按照功能模块进行组织,具有清晰的层次结构,便于理解和维护;\n程序应遵循特定的代码模版,如使用统一的文件读取、数据处理和错误处理模版;", "input": "从文件中读取的一系列八个字符的十六进制字符串。", "constraints_num": 15, "constraints_splits": ["程序应专注于处理十六进制字符串的读取、转换和验证,以及输出二进制、十进制和十六进制表示;", "程序不应包含任何与十六进制到二进制、十进制和十六进制转换无关的功能;", "程序必须包含错误处理机制,处理非法十六进制输入、文件读取错误等;", "程序应遵循安全编码原则,确保数据处理过程中的准确性;", "程序不应包含或输出任何可能泄露用户隐私的数据;", "程序应作为一个数据转换工具,专注于提供准确的转换结果;", "程序设计应面向有一定编程基础的用户,能理解十六进制和二进制概念;", "在转换十六进制字符串前,程序应先验证字符串是否为合法的十六进制格式;", "程序代码应采用清晰、简洁的风格,注释应清晰地说明代码功能;", "程序应遵循C++编码规范,包括命名约定、注释规则等,确保代码的可读性和可维护性;", "程序应使用英文进行注释和文档编写;", "程序输出应以清晰的格式展示二进制、十进制和十六进制表示,便于用户理解和阅读;", "程序应引用任何使用到的外部库,并在代码中明确标注;", "程序应按照功能模块进行组织,具有清晰的层次结构,便于理解和维护;", "程序应遵循特定的代码模版,如使用统一的文件读取、数据处理和错误处理模版;"], "levels2": ["主题约束", "排除约束", "包含约束", "价值观约束", "隐私约束", "主题约束", "受众目标约束", "先验条件约束", "语气风格约束", "语法结构约束", "多语言约束", "输出格式约束", "引用和参考约束", "层次化结构约束", "模版约束"], "category": "trace2.0"} +{"id": "1038", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "Given the algebraic equations 38*u - 149 = 41 and 0 = -2*y + u*y - 3, solve for y.\nSolve the first equation for u:\n- The equation is 38*u - 149 =\nSolve this equation for u and show the detailed steps in your working.\nSubstitute the value of u into the second equation:\n- After finding u, substitute this value into the equation 0 = -2*y + u*y - 3 and simplify the equation.\nSolve the simplified equation for y:\n- Solve the simplified equation for y, showing all steps in your working.\nCheck your solution:\n- Substitute the value of y back into the original equation to check if the solution is correct.\nPresent your solution in LaTeX format:\n- Ensure that your final solution is presented in LaTeX format, demonstrating proper mathematical notation.\n# Inputs:\n38*u - 149 = 41, 0 = -2*y + u*y - 3\n"}], "type": "trace", "description": "Given the algebraic equations 38*u - 149 = 41 and 0 = -2*y + u*y - 3, solve for y.", "constraints": "Solve the first equation for u:\n- The equation is 38*u - 149 =\nSolve this equation for u and show the detailed steps in your working.\nSubstitute the value of u into the second equation:\n- After finding u, substitute this value into the equation 0 = -2*y + u*y - 3 and simplify the equation.\nSolve the simplified equation for y:\n- Solve the simplified equation for y, showing all steps in your working.\nCheck your solution:\n- Substitute the value of y back into the original equation to check if the solution is correct.\nPresent your solution in LaTeX format:\n- Ensure that your final solution is presented in LaTeX format, demonstrating proper mathematical notation.", "input": "38*u - 149 = 41, 0 = -2*y + u*y - 3", "constraints_num": 11, "constraints_splits": ["Solve the first equation for u:", "- The equation is 38*u - 149 =", "Solve this equation for u and show the detailed steps in your working.", "Substitute the value of u into the second equation:", "- After finding u, substitute this value into the equation 0 = -2*y + u*y - 3 and simplify the equation.", "Solve the simplified equation for y:", "- Solve the simplified equation for y, showing all steps in your working.", "Check your solution:", "- Substitute the value of y back into the original equation to check if the solution is correct.", "Present your solution in LaTeX format:", "- Ensure that your final solution is presented in LaTeX format, demonstrating proper mathematical notation."], "levels2": ["编号和列表约束", "数值约束", "数值约束", "包含约束", "输出格式约束", "主题约束", "数值约束", "编号和列表约束", "编号和列表约束", "输出格式约束", "输出格式约束"], "category": "trace2.0"} +{"id": "1039", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "Calculate the total cost Carl spent on index cards for his class, and determine the cost per index card. Additionally, provide a detailed explanation of the calculations and analysis.\nEach student receives 10 index cards.\nCarl teaches 6 periods a day.\nEach class has 30 students.\nA 50 pack of index cards costs $3.\nCalculate the total number of index cards needed for all students.\nList the equation and explain how you arrived at the total number.\nDetermine how many packs of index cards Carl needs to buy to meet the total requirement, rounding up to the nearest whole pack if necessary.\nCalculate the total cost for all the packs of index cards Carl needs to buy.\nCompute the cost per index card by dividing the total cost by the total number of index cards.\nCompare the cost per index card to the original cost per pack to analyze the economic efficiency of the purchase.\nProvide the final answer with the total cost and the cost per index card.\n"}], "type": "trace", "description": "Calculate the total cost Carl spent on index cards for his class, and determine the cost per index card. Additionally, provide a detailed explanation of the calculations and analysis.", "constraints": "Each student receives 10 index cards.\nCarl teaches 6 periods a day.\nEach class has 30 students.\nA 50 pack of index cards costs $3.\nCalculate the total number of index cards needed for all students.\nList the equation and explain how you arrived at the total number.\nDetermine how many packs of index cards Carl needs to buy to meet the total requirement, rounding up to the nearest whole pack if necessary.\nCalculate the total cost for all the packs of index cards Carl needs to buy.\nCompute the cost per index card by dividing the total cost by the total number of index cards.\nCompare the cost per index card to the original cost per pack to analyze the economic efficiency of the purchase.\nProvide the final answer with the total cost and the cost per index card.", "input": "NULL", "constraints_num": 11, "constraints_splits": ["Each student receives 10 index cards.", "Carl teaches 6 periods a day.", "Each class has 30 students.", "A 50 pack of index cards costs $3.", "Calculate the total number of index cards needed for all students.", "List the equation and explain how you arrived at the total number.", "Determine how many packs of index cards Carl needs to buy to meet the total requirement, rounding up to the nearest whole pack if necessary.", "Calculate the total cost for all the packs of index cards Carl needs to buy.", "Compute the cost per index card by dividing the total cost by the total number of index cards.", "Compare the cost per index card to the original cost per pack to analyze the economic efficiency of the purchase.", "Provide the final answer with the total cost and the cost per index card."], "levels2": ["数值约束", "数值约束", "数值约束", "数值约束", "数值约束", "编号和列表约束", "数值约束", "数值约束", "数值约束", "包含约束", "输出格式约束"], "category": "trace2.0"} +{"id": "1040", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "Make a delightful blueberry cheesecake following specific instructions.\nGather all necessary ingredients: 2 cups of graham cracker crumbs, 1/4 cup of sugar, 6 tbsp of melted butter, 24 oz of cream cheese, 1 1/2 cups of sugar, 1 tsp of vanilla extract, 4 large eggs, and 2 cups of fresh blueberries.\nPreheat your oven to 325°F (160°C).\nMix the graham cracker crumbs, 1/4 cup of sugar, and melted butter in a bowl until evenly combined. Press this mixture into the bottom of a 9-inch springform pan.\nBeat the cream cheese until smooth in a separate large bowl. Gradually add 1 1/2 cups of sugar and continue beating until well combined. Stir in the vanilla extract.\nAdd the eggs one at a time, mixing well after each addition.\nPour the cheesecake filling over the crust and smooth out the top.\nBake the cheesecake for approximately 55 minutes or until the edges are set but the center still jiggles slightly.\nLet the cheesecake cool to room temperature and then refrigerate for at least 4 hours before serving.\nTop the cheesecake with fresh blueberries just before serving.\nUse precise measurements for the ingredients.\nEnsure you have all the necessary kitchen tools such as a mixing bowl, springform pan, and oven mitts.\n"}], "type": "trace", "description": "Make a delightful blueberry cheesecake following specific instructions.", "constraints": "Gather all necessary ingredients: 2 cups of graham cracker crumbs, 1/4 cup of sugar, 6 tbsp of melted butter, 24 oz of cream cheese, 1 1/2 cups of sugar, 1 tsp of vanilla extract, 4 large eggs, and 2 cups of fresh blueberries.\nPreheat your oven to 325°F (160°C).\nMix the graham cracker crumbs, 1/4 cup of sugar, and melted butter in a bowl until evenly combined. Press this mixture into the bottom of a 9-inch springform pan.\nBeat the cream cheese until smooth in a separate large bowl. Gradually add 1 1/2 cups of sugar and continue beating until well combined. Stir in the vanilla extract.\nAdd the eggs one at a time, mixing well after each addition.\nPour the cheesecake filling over the crust and smooth out the top.\nBake the cheesecake for approximately 55 minutes or until the edges are set but the center still jiggles slightly.\nLet the cheesecake cool to room temperature and then refrigerate for at least 4 hours before serving.\nTop the cheesecake with fresh blueberries just before serving.\nUse precise measurements for the ingredients.\nEnsure you have all the necessary kitchen tools such as a mixing bowl, springform pan, and oven mitts.", "input": "NULL", "constraints_num": 11, "constraints_splits": ["Gather all necessary ingredients: 2 cups of graham cracker crumbs, 1/4 cup of sugar, 6 tbsp of melted butter, 24 oz of cream cheese, 1 1/2 cups of sugar, 1 tsp of vanilla extract, 4 large eggs, and 2 cups of fresh blueberries.", "Preheat your oven to 325°F (160°C).", "Mix the graham cracker crumbs, 1/4 cup of sugar, and melted butter in a bowl until evenly combined. Press this mixture into the bottom of a 9-inch springform pan.", "Beat the cream cheese until smooth in a separate large bowl. Gradually add 1 1/2 cups of sugar and continue beating until well combined. Stir in the vanilla extract.", "Add the eggs one at a time, mixing well after each addition.", "Pour the cheesecake filling over the crust and smooth out the top.", "Bake the cheesecake for approximately 55 minutes or until the edges are set but the center still jiggles slightly.", "Let the cheesecake cool to room temperature and then refrigerate for at least 4 hours before serving.", "Top the cheesecake with fresh blueberries just before serving.", "Use precise measurements for the ingredients.", "Ensure you have all the necessary kitchen tools such as a mixing bowl, springform pan, and oven mitts."], "levels2": ["自然语言流程背景信息约束", "输出格式约束", "文本样式约束", "包含约束", "自然语言流程背景信息约束", "文本样式约束", "数值约束", "数值约束", "包含约束", "数值约束", "包含约束"], "category": "trace2.0"} +{"id": "1041", "messages": [{"role": "system", "content": "You are a helpful assistant."}, {"role": "user", "content": "Create a Terraform project that is able to configure Hashicorp Vault using the specified requirements and preconditions.\nBefore creating a namespace, ensure that a connection to the Hashicorp Vault server has been established using the Terraform provider.\nOnce the connection is established, create a namespace using the `vault_namespace` resource.\nAfter the namespace has been created, enable the userpass auth method within this namespace using the `vault_auth_backend` resource.\nFollowing the authentication method setup, create a user within the userpass auth method using the `vault_userpass_user` resource.\nEnable login functionality by generating a token for the user using the `vault_token` resource, utilizing the user's credentials.\nSubsequently, create an ACL policy using the `vault_policy` resource and ensure that it is appropriately scoped.\nNext, create an identity group using the `vault_identity_group` resource and assign both the policy and the user to it.\nOnce all the above steps are completed, implement a clean-up process to delete the namespace and all associated resources using Terraform's `data` and `provider` features to ensure the namespace deletion will not cause issues with dependencies.\nThe output format must be a complete Terraform code block that can be directly applied without further modifications.\nThe project will be based on a Hashicorp Vault version that supports namespaces and the userpass auth method.\nThe Terraform Provider for Hashicorp Vault should be version 2.x or higher to ensure compatibility.\nThe Terraform configuration includes an appropriate provider block for Hashicorp Vault.\nIncludes variables for sensitive data such as addresses and tokens.\nHas necessary security measures in place to protect the credentials and policy data.\n"}], "type": "trace", "description": "Create a Terraform project that is able to configure Hashicorp Vault using the specified requirements and preconditions.", "constraints": "Before creating a namespace, ensure that a connection to the Hashicorp Vault server has been established using the Terraform provider.\nOnce the connection is established, create a namespace using the `vault_namespace` resource.\nAfter the namespace has been created, enable the userpass auth method within this namespace using the `vault_auth_backend` resource.\nFollowing the authentication method setup, create a user within the userpass auth method using the `vault_userpass_user` resource.\nEnable login functionality by generating a token for the user using the `vault_token` resource, utilizing the user's credentials.\nSubsequently, create an ACL policy using the `vault_policy` resource and ensure that it is appropriately scoped.\nNext, create an identity group using the `vault_identity_group` resource and assign both the policy and the user to it.\nOnce all the above steps are completed, implement a clean-up process to delete the namespace and all associated resources using Terraform's `data` and `provider` features to ensure the namespace deletion will not cause issues with dependencies.\nThe output format must be a complete Terraform code block that can be directly applied without further modifications.\nThe project will be based on a Hashicorp Vault version that supports namespaces and the userpass auth method.\nThe Terraform Provider for Hashicorp Vault should be version 2.x or higher to ensure compatibility.\nThe Terraform configuration includes an appropriate provider block for Hashicorp Vault.\nIncludes variables for sensitive data such as addresses and tokens.\nHas necessary security measures in place to protect the credentials and policy data.", "input": "NULL", "constraints_num": 14, "constraints_splits": ["Before creating a namespace, ensure that a connection to the Hashicorp Vault server has been established using the Terraform provider.", "Once the connection is established, create a namespace using the `vault_namespace` resource.", "After the namespace has been created, enable the userpass auth method within this namespace using the `vault_auth_backend` resource.", "Following the authentication method setup, create a user within the userpass auth method using the `vault_userpass_user` resource.", "Enable login functionality by generating a token for the user using the `vault_token` resource, utilizing the user's credentials.", "Subsequently, create an ACL policy using the `vault_policy` resource and ensure that it is appropriately scoped.", "Next, create an identity group using the `vault_identity_group` resource and assign both the policy and the user to it.", "Once all the above steps are completed, implement a clean-up process to delete the namespace and all associated resources using Terraform's `data` and `provider` features to ensure the namespace deletion will not cause issues with dependencies.", "The output format must be a complete Terraform code block that can be directly applied without further modifications.", "The project will be based on a Hashicorp Vault version that supports namespaces and the userpass auth method.", "The Terraform Provider for Hashicorp Vault should be version 2.x or higher to ensure compatibility.", "The Terraform configuration includes an appropriate provider block for Hashicorp Vault.", "Includes variables for sensitive data such as addresses and tokens.", "Has necessary security measures in place to protect the credentials and policy data."], "levels2": ["自然语言流程背景信息约束", "输出格式约束", "输出格式约束", "自然语言流程背景信息约束", "包含约束", "包含约束", "自然语言流程背景信息约束", "自然语言流程背景信息约束", "输出格式约束", "主题约束", "数值约束", "包含约束", "隐私约束", "价值观约束"], "category": "trace2.0"} diff --git a/IOPO/Method-IOPO/.DS_Store b/IOPO/Method-IOPO/.DS_Store new file mode 100644 index 00000000..5c1ed449 Binary files /dev/null and b/IOPO/Method-IOPO/.DS_Store differ diff --git a/IOPO/Method-IOPO/Makefile b/IOPO/Method-IOPO/Makefile new file mode 100644 index 00000000..3f13b215 --- /dev/null +++ b/IOPO/Method-IOPO/Makefile @@ -0,0 +1,14 @@ +.PHONY: quality style test + +check_dirs := scripts src tests + +quality: + ruff check $(check_dirs) + ruff format --check $(check_dirs) + +style: + ruff check $(check_dirs) --fix + ruff format $(check_dirs) + +test: + CUDA_VISIBLE_DEVICES= pytest tests/ diff --git a/IOPO/Method-IOPO/data/dataset_info.json b/IOPO/Method-IOPO/data/dataset_info.json new file mode 100644 index 00000000..f4a8f8d6 --- /dev/null +++ b/IOPO/Method-IOPO/data/dataset_info.json @@ -0,0 +1,12 @@ +{ + "trace_iopo": { + "file_name": "trace.json", + "ranking": true, + "formatting": "sharegpt", + "columns": { + "messages": "conversations", + "chosen": "chosen", + "rejected": "rejected" + } + } +} \ No newline at end of file diff --git a/IOPO/Method-IOPO/data/trace.json b/IOPO/Method-IOPO/data/trace.json new file mode 100644 index 00000000..328185b9 --- /dev/null +++ b/IOPO/Method-IOPO/data/trace.json @@ -0,0 +1,22 @@ +[ + { + "conversations": [ + { + "from": "human", + "value": "为一篇关于高中生“备考”的论文提供一个更引人入胜、富有启发性的标题\n1. 标题长度控制在10至15个字之间;\n2. 标题中包含“高考”或“大学入学”等关键词;\n3. 采用激励鼓舞的语气风格,激发读者兴趣和共鸣;\n" + }, + { + "from": "human", + "value": "为一篇关于高中生“备考”的论文提供一个更引人入胜、富有启发性的标题\n1. 标题长度控制在16至20个字之间;\n2. 标题中必须同时包含“高考”和“大学入学”两个关键词;\n3. 采用平实叙述的语气风格,注重信息传达。\n" + } + ], + "chosen": { + "from": "gpt", + "value": "\"高考前夜:点燃梦想,跨越星辰\"\n\n这个标题符合所有的约束条件,长度为10个字,包含了关键词“高考”,并且采用了激励鼓舞的语气风格,旨在激发读者的兴趣和共鸣,鼓励他们为高考全力以赴,勇敢追梦。" + }, + "rejected": { + "from": "gpt", + "value": "\"高考征程:智慧备考,梦想大学入学的钥匙\" \n\n这个标题简洁明了,并且包含了所有的要求。它指出高考是通向大学入学的必经之路,而如何智慧备考,则是开启梦想大学之门的钥匙。这将启发读者对如何有效备考进行深入思考,并激发他们为实现大学梦想而努力奋斗的热情。" + } + } +] \ No newline at end of file diff --git a/IOPO/Method-IOPO/examples/.DS_Store b/IOPO/Method-IOPO/examples/.DS_Store new file mode 100644 index 00000000..7bba44c0 Binary files /dev/null and b/IOPO/Method-IOPO/examples/.DS_Store differ diff --git a/IOPO/Method-IOPO/examples/deepspeed/ds_z0_config.json b/IOPO/Method-IOPO/examples/deepspeed/ds_z0_config.json new file mode 100644 index 00000000..ed326676 --- /dev/null +++ b/IOPO/Method-IOPO/examples/deepspeed/ds_z0_config.json @@ -0,0 +1,28 @@ +{ + "train_batch_size": "auto", + "train_micro_batch_size_per_gpu": "auto", + "gradient_accumulation_steps": "auto", + "gradient_clipping": "auto", + "zero_allow_untested_optimizer": true, + "fp16": { + "enabled": "auto", + "loss_scale": 0, + "loss_scale_window": 1000, + "initial_scale_power": 16, + "hysteresis": 2, + "min_loss_scale": 1 + }, + "bf16": { + "enabled": "auto" + }, + "zero_optimization": { + "stage": 0, + "allgather_partitions": true, + "allgather_bucket_size": 5e8, + "overlap_comm": true, + "reduce_scatter": true, + "reduce_bucket_size": 5e8, + "contiguous_gradients": true, + "round_robin_gradients": true + } +} \ No newline at end of file diff --git a/IOPO/Method-IOPO/examples/deepspeed/ds_z2_config.json b/IOPO/Method-IOPO/examples/deepspeed/ds_z2_config.json new file mode 100644 index 00000000..0a1bd1d8 --- /dev/null +++ b/IOPO/Method-IOPO/examples/deepspeed/ds_z2_config.json @@ -0,0 +1,28 @@ +{ + "train_batch_size": "auto", + "train_micro_batch_size_per_gpu": "auto", + "gradient_accumulation_steps": "auto", + "gradient_clipping": "auto", + "zero_allow_untested_optimizer": true, + "fp16": { + "enabled": "auto", + "loss_scale": 0, + "loss_scale_window": 1000, + "initial_scale_power": 16, + "hysteresis": 2, + "min_loss_scale": 1 + }, + "bf16": { + "enabled": "auto" + }, + "zero_optimization": { + "stage": 2, + "allgather_partitions": true, + "allgather_bucket_size": 5e8, + "overlap_comm": true, + "reduce_scatter": true, + "reduce_bucket_size": 5e8, + "contiguous_gradients": true, + "round_robin_gradients": true + } +} \ No newline at end of file diff --git a/IOPO/Method-IOPO/examples/deepspeed/ds_z2_offload_config.json b/IOPO/Method-IOPO/examples/deepspeed/ds_z2_offload_config.json new file mode 100644 index 00000000..7a398364 --- /dev/null +++ b/IOPO/Method-IOPO/examples/deepspeed/ds_z2_offload_config.json @@ -0,0 +1,32 @@ +{ + "train_batch_size": "auto", + "train_micro_batch_size_per_gpu": "auto", + "gradient_accumulation_steps": "auto", + "gradient_clipping": "auto", + "zero_allow_untested_optimizer": true, + "fp16": { + "enabled": "auto", + "loss_scale": 0, + "loss_scale_window": 1000, + "initial_scale_power": 16, + "hysteresis": 2, + "min_loss_scale": 1 + }, + "bf16": { + "enabled": "auto" + }, + "zero_optimization": { + "stage": 2, + "offload_optimizer": { + "device": "cpu", + "pin_memory": true + }, + "allgather_partitions": true, + "allgather_bucket_size": 5e8, + "overlap_comm": true, + "reduce_scatter": true, + "reduce_bucket_size": 5e8, + "contiguous_gradients": true, + "round_robin_gradients": true + } +} \ No newline at end of file diff --git a/IOPO/Method-IOPO/examples/deepspeed/ds_z3_config.json b/IOPO/Method-IOPO/examples/deepspeed/ds_z3_config.json new file mode 100644 index 00000000..ccf9560e --- /dev/null +++ b/IOPO/Method-IOPO/examples/deepspeed/ds_z3_config.json @@ -0,0 +1,30 @@ +{ + "train_batch_size": "auto", + "train_micro_batch_size_per_gpu": "auto", + "gradient_accumulation_steps": "auto", + "gradient_clipping": "auto", + "zero_allow_untested_optimizer": true, + "fp16": { + "enabled": "auto", + "loss_scale": 0, + "loss_scale_window": 1000, + "initial_scale_power": 16, + "hysteresis": 2, + "min_loss_scale": 1 + }, + "bf16": { + "enabled": "auto" + }, + "zero_optimization": { + "stage": 3, + "overlap_comm": true, + "contiguous_gradients": true, + "sub_group_size": 1e9, + "reduce_bucket_size": "auto", + "stage3_prefetch_bucket_size": "auto", + "stage3_param_persistence_threshold": "auto", + "stage3_max_live_parameters": 1e9, + "stage3_max_reuse_distance": 1e9, + "stage3_gather_16bit_weights_on_model_save": true + } +} \ No newline at end of file diff --git a/IOPO/Method-IOPO/examples/deepspeed/ds_z3_offload_config.json b/IOPO/Method-IOPO/examples/deepspeed/ds_z3_offload_config.json new file mode 100644 index 00000000..026aabbc --- /dev/null +++ b/IOPO/Method-IOPO/examples/deepspeed/ds_z3_offload_config.json @@ -0,0 +1,38 @@ +{ + "train_batch_size": "auto", + "train_micro_batch_size_per_gpu": "auto", + "gradient_accumulation_steps": "auto", + "gradient_clipping": "auto", + "zero_allow_untested_optimizer": true, + "fp16": { + "enabled": "auto", + "loss_scale": 0, + "loss_scale_window": 1000, + "initial_scale_power": 16, + "hysteresis": 2, + "min_loss_scale": 1 + }, + "bf16": { + "enabled": "auto" + }, + "zero_optimization": { + "stage": 3, + "offload_optimizer": { + "device": "cpu", + "pin_memory": true + }, + "offload_param": { + "device": "cpu", + "pin_memory": true + }, + "overlap_comm": true, + "contiguous_gradients": true, + "sub_group_size": 1e9, + "reduce_bucket_size": "auto", + "stage3_prefetch_bucket_size": "auto", + "stage3_param_persistence_threshold": "auto", + "stage3_max_live_parameters": 1e9, + "stage3_max_reuse_distance": 1e9, + "stage3_gather_16bit_weights_on_model_save": true + } +} \ No newline at end of file diff --git a/IOPO/Method-IOPO/examples/qwen2_lora_iopo.yaml b/IOPO/Method-IOPO/examples/qwen2_lora_iopo.yaml new file mode 100644 index 00000000..f07fbd8d --- /dev/null +++ b/IOPO/Method-IOPO/examples/qwen2_lora_iopo.yaml @@ -0,0 +1,44 @@ +### model +model_name_or_path: models/qwen2_lora_sft-trace-0913-cpt7500 +### method +stage: iopo +do_train: true +finetuning_type: lora +lora_target: all +pref_beta: 0.1 +pref_loss: sigmoid # choices: [sigmoid (dpo), orpo, simpo] +simpo_gamma: 1.0 +deepspeed: examples/deepspeed/ds_z3_offload_config.json + +### dataset +dataset: trace_iopo +template: qwen +cutoff_len: 6000 +max_samples: 120000 +overwrite_cache: true +preprocessing_num_workers: 16 + +### output +output_dir: saves/qwen2-7b/lora/trace_iopo_1015 +logging_steps: 100 +save_steps: 500 +plot_loss: true +overwrite_output_dir: true + +### train +per_device_train_batch_size: 1 +gradient_accumulation_steps: 8 +learning_rate: 5.0e-6 +num_train_epochs: 3.0 +lr_scheduler_type: cosine +warmup_ratio: 0.1 +bf16: true +ddp_timeout: 180000000 + +### eval +val_size: 0.1 +per_device_eval_batch_size: 1 +eval_strategy: steps +eval_steps: 500 + +report_to: none diff --git a/IOPO/Method-IOPO/requirements.txt b/IOPO/Method-IOPO/requirements.txt new file mode 100644 index 00000000..93e83530 --- /dev/null +++ b/IOPO/Method-IOPO/requirements.txt @@ -0,0 +1,21 @@ +transformers>=4.41.2,<=4.43.4 +datasets>=2.16.0,<=2.20.0 +accelerate>=0.30.1,<=0.32.0 +peft>=0.11.1,<=0.12.0 +trl>=0.8.6,<=0.9.6 +gradio>=4.0.0 +pandas>=2.0.0 +scipy +einops +sentencepiece +tiktoken +protobuf +uvicorn +pydantic +fastapi +sse-starlette +matplotlib>=3.7.0 +fire +packaging +pyyaml +numpy<2.0.0 diff --git a/IOPO/Method-IOPO/setup.py b/IOPO/Method-IOPO/setup.py new file mode 100644 index 00000000..745d462f --- /dev/null +++ b/IOPO/Method-IOPO/setup.py @@ -0,0 +1,93 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import os +import re + +from setuptools import find_packages, setup + + +def get_version(): + with open(os.path.join("src", "llamafactory", "extras", "env.py"), "r", encoding="utf-8") as f: + file_content = f.read() + pattern = r"{}\W*=\W*\"([^\"]+)\"".format("VERSION") + (version,) = re.findall(pattern, file_content) + return version + + +def get_requires(): + with open("requirements.txt", "r", encoding="utf-8") as f: + file_content = f.read() + lines = [line.strip() for line in file_content.strip().split("\n") if not line.startswith("#")] + return lines + + +extra_require = { + "torch": ["torch>=1.13.1"], + "torch-npu": ["torch==2.1.0", "torch-npu==2.1.0.post3", "decorator"], + "metrics": ["nltk", "jieba", "rouge-chinese"], + "deepspeed": ["deepspeed>=0.10.0"], + "bitsandbytes": ["bitsandbytes>=0.39.0"], + "hqq": ["hqq"], + "eetq": ["eetq"], + "gptq": ["optimum>=1.17.0", "auto-gptq>=0.5.0"], + "awq": ["autoawq"], + "aqlm": ["aqlm[gpu]>=1.1.0"], + "vllm": ["vllm>=0.4.3"], + "galore": ["galore-torch"], + "badam": ["badam>=1.2.1"], + "adam-mini": ["adam-mini"], + "qwen": ["transformers_stream_generator"], + "modelscope": ["modelscope"], + "dev": ["ruff", "pytest"], +} + + +def main(): + setup( + name="llamafactory", + version=get_version(), + author="hiyouga", + author_email="hiyouga" "@" "buaa.edu.cn", + description="Easy-to-use LLM fine-tuning framework", + long_description=open("README.md", "r", encoding="utf-8").read(), + long_description_content_type="text/markdown", + keywords=["LLaMA", "BLOOM", "Falcon", "LLM", "ChatGPT", "transformer", "pytorch", "deep learning"], + license="Apache 2.0 License", + url="https://github.com/hiyouga/LLaMA-Factory", + package_dir={"": "src"}, + packages=find_packages("src"), + python_requires=">=3.8.0", + install_requires=get_requires(), + extras_require=extra_require, + entry_points={"console_scripts": ["llamafactory-cli = llamafactory.cli:main"]}, + classifiers=[ + "Development Status :: 4 - Beta", + "Intended Audience :: Developers", + "Intended Audience :: Education", + "Intended Audience :: Science/Research", + "License :: OSI Approved :: Apache Software License", + "Operating System :: OS Independent", + "Programming Language :: Python :: 3", + "Programming Language :: Python :: 3.8", + "Programming Language :: Python :: 3.9", + "Programming Language :: Python :: 3.10", + "Programming Language :: Python :: 3.11", + "Topic :: Scientific/Engineering :: Artificial Intelligence", + ], + ) + + +if __name__ == "__main__": + main() diff --git a/IOPO/Method-IOPO/src/.DS_Store b/IOPO/Method-IOPO/src/.DS_Store new file mode 100644 index 00000000..26b43022 Binary files /dev/null and b/IOPO/Method-IOPO/src/.DS_Store differ diff --git a/IOPO/Method-IOPO/src/api.py b/IOPO/Method-IOPO/src/api.py new file mode 100644 index 00000000..0f925497 --- /dev/null +++ b/IOPO/Method-IOPO/src/api.py @@ -0,0 +1,33 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import os + +import uvicorn + +from llamafactory.api.app import create_app +from llamafactory.chat import ChatModel + + +def main(): + chat_model = ChatModel() + app = create_app(chat_model) + api_host = os.environ.get("API_HOST", "0.0.0.0") + api_port = int(os.environ.get("API_PORT", "8000")) + print("Visit http://localhost:{}/docs for API document.".format(api_port)) + uvicorn.run(app, host=api_host, port=api_port) + + +if __name__ == "__main__": + main() diff --git a/IOPO/Method-IOPO/src/llamafactory/.DS_Store b/IOPO/Method-IOPO/src/llamafactory/.DS_Store new file mode 100644 index 00000000..f74ddf96 Binary files /dev/null and b/IOPO/Method-IOPO/src/llamafactory/.DS_Store differ diff --git a/IOPO/Method-IOPO/src/llamafactory/__init__.py b/IOPO/Method-IOPO/src/llamafactory/__init__.py new file mode 100644 index 00000000..7b602a92 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/__init__.py @@ -0,0 +1,39 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +r""" +Efficient fine-tuning of large language models. + +Level: + api, webui > chat, eval, train > data, model > hparams > extras + +Dependency graph: + main: + transformers>=4.41.2,<=4.43.4 + datasets>=2.16.0,<=2.20.0 + accelerate>=0.30.1,<=0.32.0 + peft>=0.11.1,<=0.12.0 + trl>=0.8.6,<=0.9.6 + attention: + transformers>=4.42.4 (gemma+fa2) + longlora: + transformers>=4.41.2,<=4.43.4 + packing: + transformers>=4.41.2,<=4.43.4 +""" + +from .cli import VERSION + + +__version__ = VERSION diff --git a/IOPO/Method-IOPO/src/llamafactory/api/__init__.py b/IOPO/Method-IOPO/src/llamafactory/api/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/IOPO/Method-IOPO/src/llamafactory/api/app.py b/IOPO/Method-IOPO/src/llamafactory/api/app.py new file mode 100644 index 00000000..c1264617 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/api/app.py @@ -0,0 +1,122 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import os +from contextlib import asynccontextmanager +from typing import Optional + +from typing_extensions import Annotated + +from ..chat import ChatModel +from ..extras.misc import torch_gc +from ..extras.packages import is_fastapi_available, is_starlette_available, is_uvicorn_available +from .chat import ( + create_chat_completion_response, + create_score_evaluation_response, + create_stream_chat_completion_response, +) +from .protocol import ( + ChatCompletionRequest, + ChatCompletionResponse, + ModelCard, + ModelList, + ScoreEvaluationRequest, + ScoreEvaluationResponse, +) + + +if is_fastapi_available(): + from fastapi import Depends, FastAPI, HTTPException, status + from fastapi.middleware.cors import CORSMiddleware + from fastapi.security.http import HTTPAuthorizationCredentials, HTTPBearer + + +if is_starlette_available(): + from sse_starlette import EventSourceResponse + + +if is_uvicorn_available(): + import uvicorn + + +@asynccontextmanager +async def lifespan(app: "FastAPI"): # collects GPU memory + yield + torch_gc() + + +def create_app(chat_model: "ChatModel") -> "FastAPI": + app = FastAPI(lifespan=lifespan) + app.add_middleware( + CORSMiddleware, + allow_origins=["*"], + allow_credentials=True, + allow_methods=["*"], + allow_headers=["*"], + ) + api_key = os.environ.get("API_KEY") + security = HTTPBearer(auto_error=False) + + async def verify_api_key(auth: Annotated[Optional[HTTPAuthorizationCredentials], Depends(security)]): + if api_key and (auth is None or auth.credentials != api_key): + raise HTTPException(status_code=status.HTTP_401_UNAUTHORIZED, detail="Invalid API key.") + + @app.get( + "/v1/models", + response_model=ModelList, + status_code=status.HTTP_200_OK, + dependencies=[Depends(verify_api_key)], + ) + async def list_models(): + model_card = ModelCard(id="gpt-3.5-turbo") + return ModelList(data=[model_card]) + + @app.post( + "/v1/chat/completions", + response_model=ChatCompletionResponse, + status_code=status.HTTP_200_OK, + dependencies=[Depends(verify_api_key)], + ) + async def create_chat_completion(request: ChatCompletionRequest): + if not chat_model.engine.can_generate: + raise HTTPException(status_code=status.HTTP_405_METHOD_NOT_ALLOWED, detail="Not allowed") + + if request.stream: + generate = create_stream_chat_completion_response(request, chat_model) + return EventSourceResponse(generate, media_type="text/event-stream") + else: + return await create_chat_completion_response(request, chat_model) + + @app.post( + "/v1/score/evaluation", + response_model=ScoreEvaluationResponse, + status_code=status.HTTP_200_OK, + dependencies=[Depends(verify_api_key)], + ) + async def create_score_evaluation(request: ScoreEvaluationRequest): + if chat_model.engine.can_generate: + raise HTTPException(status_code=status.HTTP_405_METHOD_NOT_ALLOWED, detail="Not allowed") + + return await create_score_evaluation_response(request, chat_model) + + return app + + +def run_api() -> None: + chat_model = ChatModel() + app = create_app(chat_model) + api_host = os.environ.get("API_HOST", "0.0.0.0") + api_port = int(os.environ.get("API_PORT", "8000")) + print("Visit http://localhost:{}/docs for API document.".format(api_port)) + uvicorn.run(app, host=api_host, port=api_port) diff --git a/IOPO/Method-IOPO/src/llamafactory/api/chat.py b/IOPO/Method-IOPO/src/llamafactory/api/chat.py new file mode 100644 index 00000000..72b2ae50 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/api/chat.py @@ -0,0 +1,237 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import base64 +import io +import json +import os +import uuid +from typing import TYPE_CHECKING, AsyncGenerator, Dict, List, Optional, Tuple + +from ..data import Role as DataRole +from ..extras.logging import get_logger +from ..extras.packages import is_fastapi_available, is_pillow_available, is_requests_available +from .common import dictify, jsonify +from .protocol import ( + ChatCompletionMessage, + ChatCompletionResponse, + ChatCompletionResponseChoice, + ChatCompletionResponseUsage, + ChatCompletionStreamResponse, + ChatCompletionStreamResponseChoice, + Finish, + Function, + FunctionCall, + Role, + ScoreEvaluationResponse, +) + + +if is_fastapi_available(): + from fastapi import HTTPException, status + + +if is_pillow_available(): + from PIL import Image + + +if is_requests_available(): + import requests + + +if TYPE_CHECKING: + from numpy.typing import NDArray + + from ..chat import ChatModel + from .protocol import ChatCompletionRequest, ScoreEvaluationRequest + + +logger = get_logger(__name__) +ROLE_MAPPING = { + Role.USER: DataRole.USER.value, + Role.ASSISTANT: DataRole.ASSISTANT.value, + Role.SYSTEM: DataRole.SYSTEM.value, + Role.FUNCTION: DataRole.FUNCTION.value, + Role.TOOL: DataRole.OBSERVATION.value, +} + + +def _process_request( + request: "ChatCompletionRequest", +) -> Tuple[List[Dict[str, str]], Optional[str], Optional[str], Optional["NDArray"]]: + logger.info("==== request ====\n{}".format(json.dumps(dictify(request), indent=2, ensure_ascii=False))) + + if len(request.messages) == 0: + raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail="Invalid length") + + if request.messages[0].role == Role.SYSTEM: + system = request.messages.pop(0).content + else: + system = None + + if len(request.messages) % 2 == 0: + raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail="Only supports u/a/u/a/u...") + + input_messages = [] + image = None + for i, message in enumerate(request.messages): + if i % 2 == 0 and message.role not in [Role.USER, Role.TOOL]: + raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail="Invalid role") + elif i % 2 == 1 and message.role not in [Role.ASSISTANT, Role.FUNCTION]: + raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail="Invalid role") + + if message.role == Role.ASSISTANT and isinstance(message.tool_calls, list) and len(message.tool_calls): + tool_calls = [ + {"name": tool_call.function.name, "arguments": tool_call.function.arguments} + for tool_call in message.tool_calls + ] + content = json.dumps(tool_calls, ensure_ascii=False) + input_messages.append({"role": ROLE_MAPPING[Role.FUNCTION], "content": content}) + elif isinstance(message.content, list): + for input_item in message.content: + if input_item.type == "text": + input_messages.append({"role": ROLE_MAPPING[message.role], "content": input_item.text}) + else: + image_url = input_item.image_url.url + if image_url.startswith("data:image"): # base64 image + image_data = base64.b64decode(image_url.split(",", maxsplit=1)[1]) + image_path = io.BytesIO(image_data) + elif os.path.isfile(image_url): # local file + image_path = open(image_url, "rb") + else: # web uri + image_path = requests.get(image_url, stream=True).raw + + image = Image.open(image_path).convert("RGB") + else: + input_messages.append({"role": ROLE_MAPPING[message.role], "content": message.content}) + + tool_list = request.tools + if isinstance(tool_list, list) and len(tool_list): + try: + tools = json.dumps([dictify(tool.function) for tool in tool_list], ensure_ascii=False) + except json.JSONDecodeError: + raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail="Invalid tools") + else: + tools = None + + return input_messages, system, tools, image + + +def _create_stream_chat_completion_chunk( + completion_id: str, + model: str, + delta: "ChatCompletionMessage", + index: Optional[int] = 0, + finish_reason: Optional["Finish"] = None, +) -> str: + choice_data = ChatCompletionStreamResponseChoice(index=index, delta=delta, finish_reason=finish_reason) + chunk = ChatCompletionStreamResponse(id=completion_id, model=model, choices=[choice_data]) + return jsonify(chunk) + + +async def create_chat_completion_response( + request: "ChatCompletionRequest", chat_model: "ChatModel" +) -> "ChatCompletionResponse": + completion_id = "chatcmpl-{}".format(uuid.uuid4().hex) + input_messages, system, tools, image = _process_request(request) + responses = await chat_model.achat( + input_messages, + system, + tools, + image, + do_sample=request.do_sample, + temperature=request.temperature, + top_p=request.top_p, + max_new_tokens=request.max_tokens, + num_return_sequences=request.n, + stop=request.stop, + ) + + prompt_length, response_length = 0, 0 + choices = [] + for i, response in enumerate(responses): + if tools: + result = chat_model.engine.template.extract_tool(response.response_text) + else: + result = response.response_text + + if isinstance(result, list): + tool_calls = [] + for tool in result: + function = Function(name=tool[0], arguments=tool[1]) + tool_calls.append(FunctionCall(id="call_{}".format(uuid.uuid4().hex), function=function)) + + response_message = ChatCompletionMessage(role=Role.ASSISTANT, tool_calls=tool_calls) + finish_reason = Finish.TOOL + else: + response_message = ChatCompletionMessage(role=Role.ASSISTANT, content=result) + finish_reason = Finish.STOP if response.finish_reason == "stop" else Finish.LENGTH + + choices.append(ChatCompletionResponseChoice(index=i, message=response_message, finish_reason=finish_reason)) + prompt_length = response.prompt_length + response_length += response.response_length + + usage = ChatCompletionResponseUsage( + prompt_tokens=prompt_length, + completion_tokens=response_length, + total_tokens=prompt_length + response_length, + ) + + return ChatCompletionResponse(id=completion_id, model=request.model, choices=choices, usage=usage) + + +async def create_stream_chat_completion_response( + request: "ChatCompletionRequest", chat_model: "ChatModel" +) -> AsyncGenerator[str, None]: + completion_id = "chatcmpl-{}".format(uuid.uuid4().hex) + input_messages, system, tools, image = _process_request(request) + if tools: + raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail="Cannot stream function calls.") + + if request.n > 1: + raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail="Cannot stream multiple responses.") + + yield _create_stream_chat_completion_chunk( + completion_id=completion_id, model=request.model, delta=ChatCompletionMessage(role=Role.ASSISTANT, content="") + ) + async for new_token in chat_model.astream_chat( + input_messages, + system, + tools, + image, + do_sample=request.do_sample, + temperature=request.temperature, + top_p=request.top_p, + max_new_tokens=request.max_tokens, + stop=request.stop, + ): + if len(new_token) != 0: + yield _create_stream_chat_completion_chunk( + completion_id=completion_id, model=request.model, delta=ChatCompletionMessage(content=new_token) + ) + + yield _create_stream_chat_completion_chunk( + completion_id=completion_id, model=request.model, delta=ChatCompletionMessage(), finish_reason=Finish.STOP + ) + yield "[DONE]" + + +async def create_score_evaluation_response( + request: "ScoreEvaluationRequest", chat_model: "ChatModel" +) -> "ScoreEvaluationResponse": + if len(request.messages) == 0: + raise HTTPException(status_code=status.HTTP_400_BAD_REQUEST, detail="Invalid request") + + scores = await chat_model.aget_scores(request.messages, max_length=request.max_length) + return ScoreEvaluationResponse(model=request.model, scores=scores) diff --git a/IOPO/Method-IOPO/src/llamafactory/api/common.py b/IOPO/Method-IOPO/src/llamafactory/api/common.py new file mode 100644 index 00000000..d1ac94de --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/api/common.py @@ -0,0 +1,34 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import json +from typing import TYPE_CHECKING, Any, Dict + + +if TYPE_CHECKING: + from pydantic import BaseModel + + +def dictify(data: "BaseModel") -> Dict[str, Any]: + try: # pydantic v2 + return data.model_dump(exclude_unset=True) + except AttributeError: # pydantic v1 + return data.dict(exclude_unset=True) + + +def jsonify(data: "BaseModel") -> str: + try: # pydantic v2 + return json.dumps(data.model_dump(exclude_unset=True), ensure_ascii=False) + except AttributeError: # pydantic v1 + return data.json(exclude_unset=True, ensure_ascii=False) diff --git a/IOPO/Method-IOPO/src/llamafactory/api/protocol.py b/IOPO/Method-IOPO/src/llamafactory/api/protocol.py new file mode 100644 index 00000000..c6fe6f75 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/api/protocol.py @@ -0,0 +1,153 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import time +from enum import Enum, unique +from typing import Any, Dict, List, Optional, Union + +from pydantic import BaseModel, Field +from typing_extensions import Literal + + +@unique +class Role(str, Enum): + USER = "user" + ASSISTANT = "assistant" + SYSTEM = "system" + FUNCTION = "function" + TOOL = "tool" + + +@unique +class Finish(str, Enum): + STOP = "stop" + LENGTH = "length" + TOOL = "tool_calls" + + +class ModelCard(BaseModel): + id: str + object: Literal["model"] = "model" + created: int = Field(default_factory=lambda: int(time.time())) + owned_by: Literal["owner"] = "owner" + + +class ModelList(BaseModel): + object: Literal["list"] = "list" + data: List[ModelCard] = [] + + +class Function(BaseModel): + name: str + arguments: str + + +class FunctionDefinition(BaseModel): + name: str + description: str + parameters: Dict[str, Any] + + +class FunctionAvailable(BaseModel): + type: Literal["function", "code_interpreter"] = "function" + function: Optional[FunctionDefinition] = None + + +class FunctionCall(BaseModel): + id: str + type: Literal["function"] = "function" + function: Function + + +class ImageURL(BaseModel): + url: str + + +class MultimodalInputItem(BaseModel): + type: Literal["text", "image_url"] + text: Optional[str] = None + image_url: Optional[ImageURL] = None + + +class ChatMessage(BaseModel): + role: Role + content: Optional[Union[str, List[MultimodalInputItem]]] = None + tool_calls: Optional[List[FunctionCall]] = None + + +class ChatCompletionMessage(BaseModel): + role: Optional[Role] = None + content: Optional[str] = None + tool_calls: Optional[List[FunctionCall]] = None + + +class ChatCompletionRequest(BaseModel): + model: str + messages: List[ChatMessage] + tools: Optional[List[FunctionAvailable]] = None + do_sample: Optional[bool] = None + temperature: Optional[float] = None + top_p: Optional[float] = None + n: int = 1 + max_tokens: Optional[int] = None + stop: Optional[Union[str, List[str]]] = None + stream: bool = False + + +class ChatCompletionResponseChoice(BaseModel): + index: int + message: ChatCompletionMessage + finish_reason: Finish + + +class ChatCompletionStreamResponseChoice(BaseModel): + index: int + delta: ChatCompletionMessage + finish_reason: Optional[Finish] = None + + +class ChatCompletionResponseUsage(BaseModel): + prompt_tokens: int + completion_tokens: int + total_tokens: int + + +class ChatCompletionResponse(BaseModel): + id: str + object: Literal["chat.completion"] = "chat.completion" + created: int = Field(default_factory=lambda: int(time.time())) + model: str + choices: List[ChatCompletionResponseChoice] + usage: ChatCompletionResponseUsage + + +class ChatCompletionStreamResponse(BaseModel): + id: str + object: Literal["chat.completion.chunk"] = "chat.completion.chunk" + created: int = Field(default_factory=lambda: int(time.time())) + model: str + choices: List[ChatCompletionStreamResponseChoice] + + +class ScoreEvaluationRequest(BaseModel): + model: str + messages: List[str] + max_length: Optional[int] = None + + +class ScoreEvaluationResponse(BaseModel): + id: str + object: Literal["score.evaluation"] = "score.evaluation" + model: str + scores: List[float] diff --git a/IOPO/Method-IOPO/src/llamafactory/chat/__init__.py b/IOPO/Method-IOPO/src/llamafactory/chat/__init__.py new file mode 100644 index 00000000..07276d48 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/chat/__init__.py @@ -0,0 +1,19 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from .base_engine import BaseEngine +from .chat_model import ChatModel + + +__all__ = ["BaseEngine", "ChatModel"] diff --git a/IOPO/Method-IOPO/src/llamafactory/chat/base_engine.py b/IOPO/Method-IOPO/src/llamafactory/chat/base_engine.py new file mode 100644 index 00000000..ccdf4c92 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/chat/base_engine.py @@ -0,0 +1,78 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from abc import ABC, abstractmethod +from dataclasses import dataclass +from typing import TYPE_CHECKING, Any, AsyncGenerator, Dict, List, Literal, Optional, Sequence, Union + + +if TYPE_CHECKING: + from numpy.typing import NDArray + from transformers import PreTrainedModel, PreTrainedTokenizer + from vllm import AsyncLLMEngine + + from ..data import Template + from ..hparams import DataArguments, FinetuningArguments, GeneratingArguments, ModelArguments + + +@dataclass +class Response: + response_text: str + response_length: int + prompt_length: int + finish_reason: Literal["stop", "length"] + + +class BaseEngine(ABC): + model: Union["PreTrainedModel", "AsyncLLMEngine"] + tokenizer: "PreTrainedTokenizer" + can_generate: bool + template: "Template" + generating_args: Dict[str, Any] + + @abstractmethod + def __init__( + self, + model_args: "ModelArguments", + data_args: "DataArguments", + finetuning_args: "FinetuningArguments", + generating_args: "GeneratingArguments", + ) -> None: ... + + @abstractmethod + async def chat( + self, + messages: Sequence[Dict[str, str]], + system: Optional[str] = None, + tools: Optional[str] = None, + image: Optional["NDArray"] = None, + **input_kwargs, + ) -> List["Response"]: ... + + @abstractmethod + async def stream_chat( + self, + messages: Sequence[Dict[str, str]], + system: Optional[str] = None, + tools: Optional[str] = None, + image: Optional["NDArray"] = None, + **input_kwargs, + ) -> AsyncGenerator[str, None]: ... + + @abstractmethod + async def get_scores( + self, + batch_input: List[str], + **input_kwargs, + ) -> List[float]: ... diff --git a/IOPO/Method-IOPO/src/llamafactory/chat/chat_model.py b/IOPO/Method-IOPO/src/llamafactory/chat/chat_model.py new file mode 100644 index 00000000..3ea3b44f --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/chat/chat_model.py @@ -0,0 +1,155 @@ +# Copyright 2024 THUDM and the LlamaFactory team. +# +# This code is inspired by the THUDM's ChatGLM implementation. +# https://github.com/THUDM/ChatGLM-6B/blob/main/cli_demo.py +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import asyncio +import os +from threading import Thread +from typing import TYPE_CHECKING, Any, AsyncGenerator, Dict, Generator, List, Optional, Sequence + +from ..extras.misc import torch_gc +from ..hparams import get_infer_args +from .hf_engine import HuggingfaceEngine +from .vllm_engine import VllmEngine + + +if TYPE_CHECKING: + from numpy.typing import NDArray + + from .base_engine import BaseEngine, Response + + +def _start_background_loop(loop: "asyncio.AbstractEventLoop") -> None: + asyncio.set_event_loop(loop) + loop.run_forever() + + +class ChatModel: + def __init__(self, args: Optional[Dict[str, Any]] = None) -> None: + model_args, data_args, finetuning_args, generating_args = get_infer_args(args) + if model_args.infer_backend == "huggingface": + self.engine: "BaseEngine" = HuggingfaceEngine(model_args, data_args, finetuning_args, generating_args) + elif model_args.infer_backend == "vllm": + self.engine: "BaseEngine" = VllmEngine(model_args, data_args, finetuning_args, generating_args) + else: + raise NotImplementedError("Unknown backend: {}".format(model_args.infer_backend)) + + self._loop = asyncio.new_event_loop() + self._thread = Thread(target=_start_background_loop, args=(self._loop,), daemon=True) + self._thread.start() + + def chat( + self, + messages: Sequence[Dict[str, str]], + system: Optional[str] = None, + tools: Optional[str] = None, + image: Optional["NDArray"] = None, + **input_kwargs, + ) -> List["Response"]: + task = asyncio.run_coroutine_threadsafe(self.achat(messages, system, tools, image, **input_kwargs), self._loop) + return task.result() + + async def achat( + self, + messages: Sequence[Dict[str, str]], + system: Optional[str] = None, + tools: Optional[str] = None, + image: Optional["NDArray"] = None, + **input_kwargs, + ) -> List["Response"]: + return await self.engine.chat(messages, system, tools, image, **input_kwargs) + + def stream_chat( + self, + messages: Sequence[Dict[str, str]], + system: Optional[str] = None, + tools: Optional[str] = None, + image: Optional["NDArray"] = None, + **input_kwargs, + ) -> Generator[str, None, None]: + generator = self.astream_chat(messages, system, tools, image, **input_kwargs) + while True: + try: + task = asyncio.run_coroutine_threadsafe(generator.__anext__(), self._loop) + yield task.result() + except StopAsyncIteration: + break + + async def astream_chat( + self, + messages: Sequence[Dict[str, str]], + system: Optional[str] = None, + tools: Optional[str] = None, + image: Optional["NDArray"] = None, + **input_kwargs, + ) -> AsyncGenerator[str, None]: + async for new_token in self.engine.stream_chat(messages, system, tools, image, **input_kwargs): + yield new_token + + def get_scores( + self, + batch_input: List[str], + **input_kwargs, + ) -> List[float]: + task = asyncio.run_coroutine_threadsafe(self.aget_scores(batch_input, **input_kwargs), self._loop) + return task.result() + + async def aget_scores( + self, + batch_input: List[str], + **input_kwargs, + ) -> List[float]: + return await self.engine.get_scores(batch_input, **input_kwargs) + + +def run_chat() -> None: + if os.name != "nt": + try: + import readline # noqa: F401 + except ImportError: + print("Install `readline` for a better experience.") + + chat_model = ChatModel() + messages = [] + print("Welcome to the CLI application, use `clear` to remove the history, use `exit` to exit the application.") + + while True: + try: + query = input("\nUser: ") + except UnicodeDecodeError: + print("Detected decoding error at the inputs, please set the terminal encoding to utf-8.") + continue + except Exception: + raise + + if query.strip() == "exit": + break + + if query.strip() == "clear": + messages = [] + torch_gc() + print("History has been removed.") + continue + + messages.append({"role": "user", "content": query}) + print("Assistant: ", end="", flush=True) + + response = "" + for new_text in chat_model.stream_chat(messages): + print(new_text, end="", flush=True) + response += new_text + print() + messages.append({"role": "assistant", "content": response}) diff --git a/IOPO/Method-IOPO/src/llamafactory/chat/hf_engine.py b/IOPO/Method-IOPO/src/llamafactory/chat/hf_engine.py new file mode 100644 index 00000000..6e728c2b --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/chat/hf_engine.py @@ -0,0 +1,343 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import asyncio +import concurrent.futures +import os +from threading import Thread +from typing import TYPE_CHECKING, Any, AsyncGenerator, Callable, Dict, List, Optional, Sequence, Tuple, Union + +import torch +from transformers import GenerationConfig, TextIteratorStreamer + +from ..data import get_template_and_fix_tokenizer +from ..extras.logging import get_logger +from ..extras.misc import get_logits_processor +from ..model import load_model, load_tokenizer +from .base_engine import BaseEngine, Response + + +if TYPE_CHECKING: + from numpy.typing import NDArray + from transformers import PreTrainedModel, PreTrainedTokenizer, ProcessorMixin + from transformers.image_processing_utils import BaseImageProcessor + from trl import PreTrainedModelWrapper + + from ..data import Template + from ..hparams import DataArguments, FinetuningArguments, GeneratingArguments, ModelArguments + + +logger = get_logger(__name__) + + +class HuggingfaceEngine(BaseEngine): + def __init__( + self, + model_args: "ModelArguments", + data_args: "DataArguments", + finetuning_args: "FinetuningArguments", + generating_args: "GeneratingArguments", + ) -> None: + self.can_generate = finetuning_args.stage == "sft" + tokenizer_module = load_tokenizer(model_args) + self.tokenizer = tokenizer_module["tokenizer"] + self.processor = tokenizer_module["processor"] + self.tokenizer.padding_side = "left" if self.can_generate else "right" + self.template = get_template_and_fix_tokenizer(self.tokenizer, data_args.template, data_args.tool_format) + self.model = load_model( + self.tokenizer, model_args, finetuning_args, is_trainable=False, add_valuehead=(not self.can_generate) + ) # must after fixing tokenizer to resize vocab + self.generating_args = generating_args.to_dict() + try: + asyncio.get_event_loop() + except RuntimeError: + logger.warning("There is no current event loop, creating a new one.") + loop = asyncio.new_event_loop() + asyncio.set_event_loop(loop) + + self.semaphore = asyncio.Semaphore(int(os.environ.get("MAX_CONCURRENT", "1"))) + + @staticmethod + def _process_args( + model: "PreTrainedModel", + tokenizer: "PreTrainedTokenizer", + processor: Optional["ProcessorMixin"], + template: "Template", + generating_args: Dict[str, Any], + messages: Sequence[Dict[str, str]], + system: Optional[str] = None, + tools: Optional[str] = None, + image: Optional["NDArray"] = None, + input_kwargs: Optional[Dict[str, Any]] = {}, + ) -> Tuple[Dict[str, Any], int]: + if ( + processor is not None + and image is not None + and not hasattr(processor, "image_seq_length") + and template.image_token not in messages[0]["content"] + ): # llava-like models + messages[0]["content"] = template.image_token + messages[0]["content"] + + paired_messages = messages + [{"role": "assistant", "content": ""}] + system = system or generating_args["default_system"] + pixel_values = None + prompt_ids, _ = template.encode_oneturn( + tokenizer=tokenizer, messages=paired_messages, system=system, tools=tools + ) + if processor is not None and image is not None: # add image features + image_processor: "BaseImageProcessor" = getattr(processor, "image_processor") + batch_feature = image_processor(image, return_tensors="pt") + pixel_values = batch_feature.to(model.device)["pixel_values"] # shape (B, C, H, W) + if hasattr(processor, "image_seq_length"): # paligemma models + image_token_id = tokenizer.convert_tokens_to_ids(template.image_token) + prompt_ids = [image_token_id] * getattr(processor, "image_seq_length") + prompt_ids + + prompt_length = len(prompt_ids) + inputs = torch.tensor([prompt_ids], device=model.device) + attention_mask = torch.ones_like(inputs, dtype=torch.bool) + + do_sample: Optional[bool] = input_kwargs.pop("do_sample", None) + temperature: Optional[float] = input_kwargs.pop("temperature", None) + top_p: Optional[float] = input_kwargs.pop("top_p", None) + top_k: Optional[float] = input_kwargs.pop("top_k", None) + num_return_sequences: int = input_kwargs.pop("num_return_sequences", 1) + repetition_penalty: Optional[float] = input_kwargs.pop("repetition_penalty", None) + length_penalty: Optional[float] = input_kwargs.pop("length_penalty", None) + max_length: Optional[int] = input_kwargs.pop("max_length", None) + max_new_tokens: Optional[int] = input_kwargs.pop("max_new_tokens", None) + stop: Optional[Union[str, List[str]]] = input_kwargs.pop("stop", None) + + if stop is not None: + logger.warning("Stop parameter is not supported by the huggingface engine yet.") + + generating_args = generating_args.copy() + generating_args.update( + dict( + do_sample=do_sample if do_sample is not None else generating_args["do_sample"], + temperature=temperature if temperature is not None else generating_args["temperature"], + top_p=top_p if top_p is not None else generating_args["top_p"], + top_k=top_k if top_k is not None else generating_args["top_k"], + num_return_sequences=num_return_sequences, + repetition_penalty=repetition_penalty + if repetition_penalty is not None + else generating_args["repetition_penalty"], + length_penalty=length_penalty if length_penalty is not None else generating_args["length_penalty"], + eos_token_id=[tokenizer.eos_token_id] + tokenizer.additional_special_tokens_ids, + pad_token_id=tokenizer.pad_token_id, + ) + ) + + if isinstance(num_return_sequences, int) and num_return_sequences > 1: # do_sample needs temperature > 0 + generating_args["do_sample"] = True + generating_args["temperature"] = generating_args["temperature"] or 1.0 + + if not generating_args["temperature"]: + generating_args["do_sample"] = False + + if not generating_args["do_sample"]: + generating_args.pop("temperature", None) + generating_args.pop("top_p", None) + + if max_length: + generating_args.pop("max_new_tokens", None) + generating_args["max_length"] = max_length + + if max_new_tokens: + generating_args.pop("max_length", None) + generating_args["max_new_tokens"] = max_new_tokens + + gen_kwargs = dict( + inputs=inputs, + attention_mask=attention_mask, + generation_config=GenerationConfig(**generating_args), + logits_processor=get_logits_processor(), + ) + + if pixel_values is not None: + gen_kwargs["pixel_values"] = pixel_values + + return gen_kwargs, prompt_length + + @staticmethod + @torch.inference_mode() + def _chat( + model: "PreTrainedModel", + tokenizer: "PreTrainedTokenizer", + processor: Optional["ProcessorMixin"], + template: "Template", + generating_args: Dict[str, Any], + messages: Sequence[Dict[str, str]], + system: Optional[str] = None, + tools: Optional[str] = None, + image: Optional["NDArray"] = None, + input_kwargs: Optional[Dict[str, Any]] = {}, + ) -> List["Response"]: + gen_kwargs, prompt_length = HuggingfaceEngine._process_args( + model, tokenizer, processor, template, generating_args, messages, system, tools, image, input_kwargs + ) + generate_output = model.generate(**gen_kwargs) + response_ids = generate_output[:, prompt_length:] + response = tokenizer.batch_decode(response_ids, skip_special_tokens=True, clean_up_tokenization_spaces=True) + results = [] + for i in range(len(response)): + eos_index = (response_ids[i] == tokenizer.eos_token_id).nonzero() + response_length = (eos_index[0].item() + 1) if len(eos_index) else len(response_ids[i]) + results.append( + Response( + response_text=response[i], + response_length=response_length, + prompt_length=prompt_length, + finish_reason="stop" if len(eos_index) else "length", + ) + ) + + return results + + @staticmethod + @torch.inference_mode() + def _stream_chat( + model: "PreTrainedModel", + tokenizer: "PreTrainedTokenizer", + processor: Optional["ProcessorMixin"], + template: "Template", + generating_args: Dict[str, Any], + messages: Sequence[Dict[str, str]], + system: Optional[str] = None, + tools: Optional[str] = None, + image: Optional["NDArray"] = None, + input_kwargs: Optional[Dict[str, Any]] = {}, + ) -> Callable[[], str]: + gen_kwargs, _ = HuggingfaceEngine._process_args( + model, tokenizer, processor, template, generating_args, messages, system, tools, image, input_kwargs + ) + streamer = TextIteratorStreamer(tokenizer, skip_prompt=True, skip_special_tokens=True) + gen_kwargs["streamer"] = streamer + thread = Thread(target=model.generate, kwargs=gen_kwargs, daemon=True) + thread.start() + + def stream(): + try: + return streamer.__next__() + except StopIteration: + raise StopAsyncIteration() + + return stream + + @staticmethod + @torch.inference_mode() + def _get_scores( + model: "PreTrainedModelWrapper", + tokenizer: "PreTrainedTokenizer", + batch_input: List[str], + input_kwargs: Optional[Dict[str, Any]] = {}, + ) -> List[float]: + max_length = input_kwargs.pop("max_length", None) + device = getattr(model.pretrained_model, "device", "cuda") + inputs = tokenizer( + batch_input, + padding=True, + truncation=True, + max_length=max_length or getattr(model.config, "max_position_embeddings", 1024), + return_tensors="pt", + add_special_tokens=True, + ).to(device) + + input_ids: torch.Tensor = inputs["input_ids"] + _, _, values = model(**inputs, output_hidden_states=True, return_dict=True) + + if getattr(model.config, "model_type", None) == "chatglm": + values = torch.transpose(values, 0, 1) + + scores = [] + for i in range(input_ids.size(0)): + end_indexes = (input_ids[i] != tokenizer.pad_token_id).nonzero() + end_index = end_indexes[-1].item() if len(end_indexes) else 0 + scores.append(values[i, end_index].nan_to_num().item()) + + return scores + + async def chat( + self, + messages: Sequence[Dict[str, str]], + system: Optional[str] = None, + tools: Optional[str] = None, + image: Optional["NDArray"] = None, + **input_kwargs, + ) -> List["Response"]: + if not self.can_generate: + raise ValueError("The current model does not support `chat`.") + + loop = asyncio.get_running_loop() + input_args = ( + self.model, + self.tokenizer, + self.processor, + self.template, + self.generating_args, + messages, + system, + tools, + image, + input_kwargs, + ) + async with self.semaphore: + with concurrent.futures.ThreadPoolExecutor() as pool: + return await loop.run_in_executor(pool, self._chat, *input_args) + + async def stream_chat( + self, + messages: Sequence[Dict[str, str]], + system: Optional[str] = None, + tools: Optional[str] = None, + image: Optional["NDArray"] = None, + **input_kwargs, + ) -> AsyncGenerator[str, None]: + if not self.can_generate: + raise ValueError("The current model does not support `stream_chat`.") + + loop = asyncio.get_running_loop() + input_args = ( + self.model, + self.tokenizer, + self.processor, + self.template, + self.generating_args, + messages, + system, + tools, + image, + input_kwargs, + ) + async with self.semaphore: + with concurrent.futures.ThreadPoolExecutor() as pool: + stream = self._stream_chat(*input_args) + while True: + try: + yield await loop.run_in_executor(pool, stream) + except StopAsyncIteration: + break + + async def get_scores( + self, + batch_input: List[str], + **input_kwargs, + ) -> List[float]: + if self.can_generate: + raise ValueError("Cannot get scores using an auto-regressive model.") + + loop = asyncio.get_running_loop() + input_args = (self.model, self.tokenizer, batch_input, input_kwargs) + async with self.semaphore: + with concurrent.futures.ThreadPoolExecutor() as pool: + return await loop.run_in_executor(pool, self._get_scores, *input_args) diff --git a/IOPO/Method-IOPO/src/llamafactory/chat/vllm_engine.py b/IOPO/Method-IOPO/src/llamafactory/chat/vllm_engine.py new file mode 100644 index 00000000..8dc7214a --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/chat/vllm_engine.py @@ -0,0 +1,242 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import uuid +from typing import TYPE_CHECKING, Any, AsyncGenerator, AsyncIterator, Dict, List, Optional, Sequence, Union + +from ..data import get_template_and_fix_tokenizer +from ..extras.logging import get_logger +from ..extras.misc import get_device_count +from ..extras.packages import is_vllm_available, is_vllm_version_greater_than_0_5, is_vllm_version_greater_than_0_5_1 +from ..model import load_config, load_tokenizer +from ..model.model_utils.quantization import QuantizationMethod +from ..model.model_utils.visual import LlavaMultiModalProjectorForYiVLForVLLM +from .base_engine import BaseEngine, Response + + +if is_vllm_available(): + from vllm import AsyncEngineArgs, AsyncLLMEngine, RequestOutput, SamplingParams + from vllm.lora.request import LoRARequest + + if is_vllm_version_greater_than_0_5_1(): + pass + elif is_vllm_version_greater_than_0_5(): + from vllm.multimodal.image import ImagePixelData + else: + from vllm.sequence import MultiModalData + + +if TYPE_CHECKING: + from numpy.typing import NDArray + from transformers.image_processing_utils import BaseImageProcessor + + from ..hparams import DataArguments, FinetuningArguments, GeneratingArguments, ModelArguments + + +logger = get_logger(__name__) + + +class VllmEngine(BaseEngine): + def __init__( + self, + model_args: "ModelArguments", + data_args: "DataArguments", + finetuning_args: "FinetuningArguments", + generating_args: "GeneratingArguments", + ) -> None: + config = load_config(model_args) # may download model from ms hub + if getattr(config, "quantization_config", None): # gptq models should use float16 + quantization_config: Dict[str, Any] = getattr(config, "quantization_config", None) + quant_method = quantization_config.get("quant_method", "") + if quant_method == QuantizationMethod.GPTQ and model_args.infer_dtype == "auto": + model_args.infer_dtype = "float16" + + self.can_generate = finetuning_args.stage == "sft" + tokenizer_module = load_tokenizer(model_args) + self.tokenizer = tokenizer_module["tokenizer"] + self.processor = tokenizer_module["processor"] + self.tokenizer.padding_side = "left" + self.template = get_template_and_fix_tokenizer(self.tokenizer, data_args.template, data_args.tool_format) + self.generating_args = generating_args.to_dict() + + engine_args = { + "model": model_args.model_name_or_path, + "trust_remote_code": True, + "download_dir": model_args.cache_dir, + "dtype": model_args.infer_dtype, + "max_model_len": model_args.vllm_maxlen, + "tensor_parallel_size": get_device_count() or 1, + "gpu_memory_utilization": model_args.vllm_gpu_util, + "disable_log_stats": True, + "disable_log_requests": True, + "enforce_eager": model_args.vllm_enforce_eager, + "enable_lora": model_args.adapter_name_or_path is not None, + "max_lora_rank": model_args.vllm_max_lora_rank, + } + + if model_args.visual_inputs: + image_size = config.vision_config.image_size + patch_size = config.vision_config.patch_size + self.image_feature_size = (image_size // patch_size) ** 2 + engine_args["image_input_type"] = "pixel_values" + engine_args["image_token_id"] = self.tokenizer.convert_tokens_to_ids(self.template.image_token) + engine_args["image_input_shape"] = "1,3,{},{}".format(image_size, image_size) + engine_args["image_feature_size"] = self.image_feature_size + if getattr(config, "is_yi_vl_derived_model", None): + import vllm.model_executor.models.llava + + logger.info("Detected Yi-VL model, applying projector patch.") + vllm.model_executor.models.llava.LlavaMultiModalProjector = LlavaMultiModalProjectorForYiVLForVLLM + + self.model = AsyncLLMEngine.from_engine_args(AsyncEngineArgs(**engine_args)) + if model_args.adapter_name_or_path is not None: + self.lora_request = LoRARequest("default", 1, model_args.adapter_name_or_path[0]) + else: + self.lora_request = None + + async def _generate( + self, + messages: Sequence[Dict[str, str]], + system: Optional[str] = None, + tools: Optional[str] = None, + image: Optional["NDArray"] = None, + **input_kwargs, + ) -> AsyncIterator["RequestOutput"]: + request_id = "chatcmpl-{}".format(uuid.uuid4().hex) + + if ( + self.processor is not None + and image is not None + and not hasattr(self.processor, "image_seq_length") + and self.template.image_token not in messages[0]["content"] + ): # llava-like models (TODO: paligemma models) + messages[0]["content"] = self.template.image_token * self.image_feature_size + messages[0]["content"] + + paired_messages = messages + [{"role": "assistant", "content": ""}] + system = system or self.generating_args["default_system"] + prompt_ids, _ = self.template.encode_oneturn( + tokenizer=self.tokenizer, messages=paired_messages, system=system, tools=tools + ) + + if self.processor is not None and image is not None: # add image features + image_processor: "BaseImageProcessor" = getattr(self.processor, "image_processor") + pixel_values = image_processor(image, return_tensors="pt")["pixel_values"] + if is_vllm_version_greater_than_0_5_1(): + multi_modal_data = {"image": pixel_values} + elif is_vllm_version_greater_than_0_5(): + multi_modal_data = ImagePixelData(image=pixel_values) + else: # TODO: remove vllm 0.4.3 support + multi_modal_data = MultiModalData(type=MultiModalData.Type.IMAGE, data=pixel_values) + else: + multi_modal_data = None + + prompt_length = len(prompt_ids) + + use_beam_search: bool = self.generating_args["num_beams"] > 1 + temperature: Optional[float] = input_kwargs.pop("temperature", None) + top_p: Optional[float] = input_kwargs.pop("top_p", None) + top_k: Optional[float] = input_kwargs.pop("top_k", None) + num_return_sequences: int = input_kwargs.pop("num_return_sequences", 1) + repetition_penalty: Optional[float] = input_kwargs.pop("repetition_penalty", None) + length_penalty: Optional[float] = input_kwargs.pop("length_penalty", None) + max_length: Optional[int] = input_kwargs.pop("max_length", None) + max_new_tokens: Optional[int] = input_kwargs.pop("max_new_tokens", None) + stop: Optional[Union[str, List[str]]] = input_kwargs.pop("stop", None) + + if "max_new_tokens" in self.generating_args: + max_tokens = self.generating_args["max_new_tokens"] + elif "max_length" in self.generating_args: + if self.generating_args["max_length"] > prompt_length: + max_tokens = self.generating_args["max_length"] - prompt_length + else: + max_tokens = 1 + + if max_length: + max_tokens = max_length - prompt_length if max_length > prompt_length else 1 + + if max_new_tokens: + max_tokens = max_new_tokens + + sampling_params = SamplingParams( + n=num_return_sequences, + repetition_penalty=( + repetition_penalty if repetition_penalty is not None else self.generating_args["repetition_penalty"] + ) + or 1.0, # repetition_penalty must > 0 + temperature=temperature if temperature is not None else self.generating_args["temperature"], + top_p=(top_p if top_p is not None else self.generating_args["top_p"]) or 1.0, # top_p must > 0 + top_k=top_k if top_k is not None else self.generating_args["top_k"], + use_beam_search=use_beam_search, + length_penalty=length_penalty if length_penalty is not None else self.generating_args["length_penalty"], + stop=stop, + stop_token_ids=[self.tokenizer.eos_token_id] + self.tokenizer.additional_special_tokens_ids, + max_tokens=max_tokens, + skip_special_tokens=True, + ) + + result_generator = self.model.generate( + inputs={"prompt_token_ids": prompt_ids, "multi_modal_data": multi_modal_data}, + sampling_params=sampling_params, + request_id=request_id, + lora_request=self.lora_request, + ) + return result_generator + + async def chat( + self, + messages: Sequence[Dict[str, str]], + system: Optional[str] = None, + tools: Optional[str] = None, + image: Optional["NDArray"] = None, + **input_kwargs, + ) -> List["Response"]: + final_output = None + generator = await self._generate(messages, system, tools, image, **input_kwargs) + async for request_output in generator: + final_output = request_output + + results = [] + for output in final_output.outputs: + results.append( + Response( + response_text=output.text, + response_length=len(output.token_ids), + prompt_length=len(final_output.prompt_token_ids), + finish_reason=output.finish_reason, + ) + ) + + return results + + async def stream_chat( + self, + messages: Sequence[Dict[str, str]], + system: Optional[str] = None, + tools: Optional[str] = None, + image: Optional["NDArray"] = None, + **input_kwargs, + ) -> AsyncGenerator[str, None]: + generated_text = "" + generator = await self._generate(messages, system, tools, image, **input_kwargs) + async for result in generator: + delta_text = result.outputs[0].text[len(generated_text) :] + generated_text = result.outputs[0].text + yield delta_text + + async def get_scores( + self, + batch_input: List[str], + **input_kwargs, + ) -> List[float]: + raise NotImplementedError("vLLM engine does not support get_scores.") diff --git a/IOPO/Method-IOPO/src/llamafactory/cli.py b/IOPO/Method-IOPO/src/llamafactory/cli.py new file mode 100644 index 00000000..48eb2898 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/cli.py @@ -0,0 +1,121 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import os +import random +import subprocess +import sys +from enum import Enum, unique + +from . import launcher +from .api.app import run_api +from .chat.chat_model import run_chat +from .eval.evaluator import run_eval +from .extras.env import VERSION, print_env +from .extras.logging import get_logger +from .extras.misc import get_device_count +from .train.tuner import export_model, run_exp +from .webui.interface import run_web_demo, run_web_ui + + +USAGE = ( + "-" * 70 + + "\n" + + "| Usage: |\n" + + "| llamafactory-cli api -h: launch an OpenAI-style API server |\n" + + "| llamafactory-cli chat -h: launch a chat interface in CLI |\n" + + "| llamafactory-cli eval -h: evaluate models |\n" + + "| llamafactory-cli export -h: merge LoRA adapters and export model |\n" + + "| llamafactory-cli train -h: train models |\n" + + "| llamafactory-cli webchat -h: launch a chat interface in Web UI |\n" + + "| llamafactory-cli webui: launch LlamaBoard |\n" + + "| llamafactory-cli version: show version info |\n" + + "-" * 70 +) + +WELCOME = ( + "-" * 58 + + "\n" + + "| Welcome to LLaMA Factory, version {}".format(VERSION) + + " " * (21 - len(VERSION)) + + "|\n|" + + " " * 56 + + "|\n" + + "| Project page: https://github.com/hiyouga/LLaMA-Factory |\n" + + "-" * 58 +) + +logger = get_logger(__name__) + + +@unique +class Command(str, Enum): + API = "api" + CHAT = "chat" + ENV = "env" + EVAL = "eval" + EXPORT = "export" + TRAIN = "train" + WEBDEMO = "webchat" + WEBUI = "webui" + VER = "version" + HELP = "help" + + +def main(): + command = sys.argv.pop(1) if len(sys.argv) != 1 else Command.HELP + if command == Command.API: + run_api() + elif command == Command.CHAT: + run_chat() + elif command == Command.ENV: + print_env() + elif command == Command.EVAL: + run_eval() + elif command == Command.EXPORT: + export_model() + elif command == Command.TRAIN: + force_torchrun = os.environ.get("FORCE_TORCHRUN", "0").lower() in ["true", "1"] + if force_torchrun or get_device_count() > 1: + master_addr = os.environ.get("MASTER_ADDR", "127.0.0.1") + master_port = os.environ.get("MASTER_PORT", str(random.randint(20001, 29999))) + logger.info("Initializing distributed tasks at: {}:{}".format(master_addr, master_port)) + process = subprocess.run( + ( + "torchrun --nnodes {nnodes} --node_rank {node_rank} --nproc_per_node {nproc_per_node} " + "--master_addr {master_addr} --master_port {master_port} {file_name} {args}" + ).format( + nnodes=os.environ.get("NNODES", "1"), + node_rank=os.environ.get("RANK", "0"), + nproc_per_node=os.environ.get("NPROC_PER_NODE", str(get_device_count())), + master_addr=master_addr, + master_port=master_port, + file_name=launcher.__file__, + args=" ".join(sys.argv[1:]), + ), + shell=True, + ) + sys.exit(process.returncode) + else: + run_exp() + elif command == Command.WEBDEMO: + run_web_demo() + elif command == Command.WEBUI: + run_web_ui() + elif command == Command.VER: + print(WELCOME) + elif command == Command.HELP: + print(USAGE) + else: + raise NotImplementedError("Unknown command: {}".format(command)) diff --git a/IOPO/Method-IOPO/src/llamafactory/data/.DS_Store b/IOPO/Method-IOPO/src/llamafactory/data/.DS_Store new file mode 100644 index 00000000..2583c7d3 Binary files /dev/null and b/IOPO/Method-IOPO/src/llamafactory/data/.DS_Store differ diff --git a/IOPO/Method-IOPO/src/llamafactory/data/__init__.py b/IOPO/Method-IOPO/src/llamafactory/data/__init__.py new file mode 100644 index 00000000..4da742b4 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/data/__init__.py @@ -0,0 +1,31 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from .collator import KTODataCollatorWithPadding, PairwiseDataCollatorWithPadding, SFTDataCollatorWith4DAttentionMask +from .data_utils import Role, split_dataset +from .loader import get_dataset +from .template import TEMPLATES, Template, get_template_and_fix_tokenizer + + +__all__ = [ + "KTODataCollatorWithPadding", + "PairwiseDataCollatorWithPadding", + "SFTDataCollatorWith4DAttentionMask", + "Role", + "split_dataset", + "get_dataset", + "TEMPLATES", + "Template", + "get_template_and_fix_tokenizer", +] diff --git a/IOPO/Method-IOPO/src/llamafactory/data/aligner.py b/IOPO/Method-IOPO/src/llamafactory/data/aligner.py new file mode 100644 index 00000000..ef70d75b --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/data/aligner.py @@ -0,0 +1,239 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import os +from functools import partial +from typing import TYPE_CHECKING, Any, Dict, List, Union + +from datasets import Features + +from ..extras.logging import get_logger +from .data_utils import Role + + +if TYPE_CHECKING: + from datasets import Dataset, IterableDataset + from transformers import Seq2SeqTrainingArguments + + from ..hparams import DataArguments + from .parser import DatasetAttr + + +logger = get_logger(__name__) + + +def _convert_images(images: List[Any], dataset_attr: "DatasetAttr", data_args: "DataArguments") -> List[Any]: + r""" + Optionally concatenates image path to dataset dir when loading from local disk. + """ + outputs = [] + if dataset_attr.load_from in ["script", "file"]: + for image in images: + if isinstance(image, str) and os.path.isfile(os.path.join(data_args.dataset_dir, image)): + outputs.append(os.path.join(data_args.dataset_dir, image)) + else: + outputs.append(image) + + return outputs + + +def convert_alpaca( + examples: Dict[str, List[Any]], dataset_attr: "DatasetAttr", data_args: "DataArguments" +) -> Dict[str, List[Any]]: + r""" + Converts alpaca format dataset to the standard format. + """ + outputs = {"prompt": [], "response": [], "system": [], "tools": [], "images": []} + convert_images = partial(_convert_images, dataset_attr=dataset_attr, data_args=data_args) + for i in range(len(examples[dataset_attr.prompt])): + prompt = [] + if dataset_attr.history and isinstance(examples[dataset_attr.history][i], list): + for old_prompt, old_response in examples[dataset_attr.history][i]: + prompt.append({"role": Role.USER.value, "content": old_prompt}) + prompt.append({"role": Role.ASSISTANT.value, "content": old_response}) + + content = [] + if dataset_attr.prompt and examples[dataset_attr.prompt][i]: + content.append(examples[dataset_attr.prompt][i]) + + if dataset_attr.query and examples[dataset_attr.query][i]: + content.append(examples[dataset_attr.query][i]) + + prompt.append({"role": Role.USER.value, "content": "\n".join(content)}) # "prompt\nquery" + + if dataset_attr.kto_tag and isinstance(examples[dataset_attr.kto_tag][i], bool): # kto example + response = [{"role": Role.ASSISTANT.value, "content": examples[dataset_attr.response][i]}] + if examples[dataset_attr.kto_tag][i]: + response = response + [{"role": Role.ASSISTANT.value, "content": ""}] + else: + response = [{"role": Role.ASSISTANT.value, "content": ""}] + response + elif ( + dataset_attr.ranking + and isinstance(examples[dataset_attr.chosen][i], str) + and isinstance(examples[dataset_attr.rejected][i], str) + ): # pairwise example + response = [ + {"role": Role.ASSISTANT.value, "content": examples[dataset_attr.chosen][i]}, + {"role": Role.ASSISTANT.value, "content": examples[dataset_attr.rejected][i]}, + ] + elif dataset_attr.response and isinstance(examples[dataset_attr.response][i], str): # normal example + response = [{"role": Role.ASSISTANT.value, "content": examples[dataset_attr.response][i]}] + else: # unsupervised + response = [] + + outputs["prompt"].append(prompt) + outputs["response"].append(response) + outputs["system"].append(examples[dataset_attr.system][i] if dataset_attr.system else "") + outputs["tools"].append(examples[dataset_attr.tools][i] if dataset_attr.tools else "") + outputs["images"].append(convert_images(examples[dataset_attr.images][i]) if dataset_attr.images else []) + + return outputs + + +def convert_sharegpt( + examples: Dict[str, List[Any]], dataset_attr: "DatasetAttr", data_args: "DataArguments" +) -> Dict[str, List[Any]]: + r""" + Converts sharegpt format dataset to the standard format. + """ + outputs = {"prompt": [], "response": [], "system": [], "tools": [], "images": []} + convert_images = partial(_convert_images, dataset_attr=dataset_attr, data_args=data_args) + tag_mapping = { + dataset_attr.user_tag: Role.USER.value, + dataset_attr.assistant_tag: Role.ASSISTANT.value, + dataset_attr.observation_tag: Role.OBSERVATION.value, + dataset_attr.function_tag: Role.FUNCTION.value, + dataset_attr.system_tag: Role.SYSTEM.value, + } + odd_tags = (dataset_attr.user_tag, dataset_attr.observation_tag) + even_tags = (dataset_attr.assistant_tag, dataset_attr.function_tag) + accept_tags = (odd_tags, even_tags) + for i, messages in enumerate(examples[dataset_attr.messages]): + if len(messages) == 0: + continue + + if dataset_attr.system_tag and messages[0][dataset_attr.role_tag] == dataset_attr.system_tag: + system = messages[0][dataset_attr.content_tag] + messages = messages[1:] + else: + system = examples[dataset_attr.system][i] if dataset_attr.system else "" + + aligned_messages = [] + broken_data = False + for turn_idx, message in enumerate(messages): + if message[dataset_attr.role_tag] not in accept_tags[turn_idx % 2]: + logger.warning("Invalid role tag in {}.".format(messages)) + broken_data = True + + aligned_messages.append( + {"role": tag_mapping[message[dataset_attr.role_tag]], "content": message[dataset_attr.content_tag]} + ) + + if (not dataset_attr.ranking and len(aligned_messages) % 2 != 0) or ( + dataset_attr.ranking and len(aligned_messages) % 2 == 0 + ): + logger.warning("Invalid message count in {}.".format(messages)) + broken_data = True + + if dataset_attr.kto_tag and isinstance(examples[dataset_attr.kto_tag][i], bool): # kto example + prompt = aligned_messages[:-1] + response = aligned_messages[-1:] + if examples[dataset_attr.kto_tag][i]: + response = response + [{"role": Role.ASSISTANT.value, "content": ""}] + else: + response = [{"role": Role.ASSISTANT.value, "content": ""}] + response + elif ( + dataset_attr.ranking + and isinstance(examples[dataset_attr.chosen][i], dict) + and isinstance(examples[dataset_attr.rejected][i], dict) + ): # pairwise example + chosen = examples[dataset_attr.chosen][i] + rejected = examples[dataset_attr.rejected][i] + if ( + chosen[dataset_attr.role_tag] not in accept_tags[-1] + or rejected[dataset_attr.role_tag] not in accept_tags[-1] + ): + logger.warning("Invalid role tag in {}.".format([chosen, rejected])) + broken_data = True + + prompt = aligned_messages + response = [ + {"role": tag_mapping[chosen[dataset_attr.role_tag]], "content": chosen[dataset_attr.content_tag]}, + {"role": tag_mapping[rejected[dataset_attr.role_tag]], "content": rejected[dataset_attr.content_tag]}, + ] + else: # normal example + prompt = aligned_messages[:-1] + response = aligned_messages[-1:] + + if broken_data: + logger.warning("Skipping this abnormal example.") + continue + + outputs["prompt"].append(prompt) + outputs["response"].append(response) + outputs["system"].append(system) + outputs["tools"].append(examples[dataset_attr.tools][i] if dataset_attr.tools else "") + outputs["images"].append(convert_images(examples[dataset_attr.images][i]) if dataset_attr.images else []) + + return outputs + + +def align_dataset( + dataset: Union["Dataset", "IterableDataset"], + dataset_attr: "DatasetAttr", + data_args: "DataArguments", + training_args: "Seq2SeqTrainingArguments", +) -> Union["Dataset", "IterableDataset"]: + r""" + Aligned dataset: + prompt: [{"role": "user", "content": "..."}] * (2T - 1) + response: [{"role": "assistant", "content": "..."}] * N (N > 1 for ranking dataset) + system: "..." + tools: "...", + images: [], + """ + if dataset_attr.formatting == "alpaca": + convert_func = partial(convert_alpaca, dataset_attr=dataset_attr, data_args=data_args) + else: + convert_func = partial(convert_sharegpt, dataset_attr=dataset_attr, data_args=data_args) + + column_names = list(next(iter(dataset)).keys()) + features = Features.from_dict( + { + "prompt": [ + {"role": {"dtype": "string", "_type": "Value"}, "content": {"dtype": "string", "_type": "Value"}} + ], + "response": [ + {"role": {"dtype": "string", "_type": "Value"}, "content": {"dtype": "string", "_type": "Value"}} + ], + "system": {"dtype": "string", "_type": "Value"}, + "tools": {"dtype": "string", "_type": "Value"}, + "images": [{"_type": "Image"}], + } + ) + kwargs = {} + if not data_args.streaming: + kwargs = dict( + num_proc=data_args.preprocessing_num_workers, + load_from_cache_file=(not data_args.overwrite_cache) or (training_args.local_process_index != 0), + desc="Converting format of dataset", + ) + + return dataset.map( + convert_func, + batched=True, + remove_columns=column_names, + features=features, + **kwargs, + ) diff --git a/IOPO/Method-IOPO/src/llamafactory/data/collator.py b/IOPO/Method-IOPO/src/llamafactory/data/collator.py new file mode 100644 index 00000000..4bfa6c29 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/data/collator.py @@ -0,0 +1,155 @@ +# Copyright 2024 OpenAccess AI Collective and the LlamaFactory team. +# +# This code is inspired by the OpenAccess AI Collective's axolotl library. +# https://github.com/OpenAccess-AI-Collective/axolotl/blob/main/src/axolotl/monkeypatch/utils.py +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from dataclasses import dataclass +from typing import Any, Dict, Literal, Sequence + +import torch +from transformers import DataCollatorForSeq2Seq + + +def prepare_4d_attention_mask(attention_mask_with_indices: "torch.Tensor", dtype: "torch.dtype") -> "torch.Tensor": + r""" + Expands the attention mask with indices from (batch_size, seq_len) to (batch_size, 1, seq_len, seq_len), + while handles packed sequences and transforms the mask to lower triangular form to prevent future peeking. + + e.g. + ```python + # input + [[1, 1, 2, 2, 2, 0]] + # output + [ + [ + [ + [o, x, x, x, x, x], + [o, o, x, x, x, x], + [x, x, o, x, x, x], + [x, x, o, o, x, x], + [x, x, o, o, o, x], + [x, x, x, x, x, x], + ] + ] + ] + ``` + where `o` equals to `0.0`, `x` equals to `min_dtype`. + """ + bsz, seq_len = attention_mask_with_indices.size() + min_dtype = torch.finfo(dtype).min + expanded_mask = attention_mask_with_indices[:, None, None, :].expand(bsz, 1, seq_len, seq_len) + # Create a binary mask from the original mask where zeros remain zeros and all other values are set to one + padding_mask = torch.where(expanded_mask != 0, 1, 0) + # Create a block-diagonal mask. + attention_mask_4d = torch.eq(expanded_mask, expanded_mask.transpose(-1, -2)).int() * padding_mask + # Use the lower triangular mask to zero out the upper triangular part + attention_mask_4d *= torch.tril(torch.ones((seq_len, seq_len), dtype=torch.long)) + # Invert the attention mask. + attention_mask_4d = torch.where(attention_mask_4d != 0, torch.tensor(0, dtype=dtype), min_dtype) + return attention_mask_4d + + +@dataclass +class SFTDataCollatorWith4DAttentionMask(DataCollatorForSeq2Seq): + r""" + Data collator for 4d attention mask. + """ + + block_diag_attn: bool = False + attn_implementation: Literal["eager", "sdpa", "flash_attention_2"] = "eager" + compute_dtype: "torch.dtype" = torch.float32 + + def __call__(self, features: Sequence[Dict[str, Any]]) -> Dict[str, "torch.Tensor"]: + features = super().__call__(features) + if self.block_diag_attn and self.attn_implementation != "flash_attention_2": + features["attention_mask"] = prepare_4d_attention_mask(features["attention_mask"], self.compute_dtype) + + return features + + +@dataclass +class PairwiseDataCollatorWithPadding(DataCollatorForSeq2Seq): + r""" + Data collator for pairwise data. + """ + + def __call__(self, features: Sequence[Dict[str, Any]]) -> Dict[str, "torch.Tensor"]: + r""" + Pads batched data to the longest sequence in the batch. + + We generate 2 * n examples where the first n examples represent chosen examples and + the last n examples represent rejected examples. + """ + concatenated_features = [] + for key in ("chosenv1", "rejectedv1", "chosenv2", "rejectedv2"): + for feature in features: + target_feature = { + "input_ids": feature["{}_input_ids".format(key)], + "attention_mask": feature["{}_attention_mask".format(key)], + "labels": feature["{}_labels".format(key)], + } + if "pixel_values" in feature: + target_feature["pixel_values"] = feature["pixel_values"] + + if "{}_token_type_ids".format(key) in feature: + target_feature["token_type_ids"] = feature["{}_token_type_ids".format(key)] + + concatenated_features.append(target_feature) + + return super().__call__(concatenated_features) + + +@dataclass +class KTODataCollatorWithPadding(DataCollatorForSeq2Seq): + r""" + Data collator for KTO data. + """ + + def __call__(self, features: Sequence[Dict[str, Any]]) -> Dict[str, "torch.Tensor"]: + target_features = [] + kl_features = [] + kto_tags = [] + for feature in features: + target_feature = { + "input_ids": feature["input_ids"], + "attention_mask": feature["attention_mask"], + "labels": feature["labels"], + } + kl_feature = { + "input_ids": feature["kl_input_ids"], + "attention_mask": feature["kl_attention_mask"], + "labels": feature["kl_labels"], + } + if "pixel_values" in feature: + target_feature["pixel_values"] = feature["pixel_values"] + + if "token_type_ids" in feature: + target_feature["token_type_ids"] = feature["token_type_ids"] + kl_feature["token_type_ids"] = feature["kl_token_type_ids"] + + target_features.append(target_feature) + kl_features.append(kl_feature) + kto_tags.append(feature["kto_tags"]) + + batch = super().__call__(target_features) + kl_batch = super().__call__(kl_features) + batch["kl_input_ids"] = kl_batch["input_ids"] + batch["kl_attention_mask"] = kl_batch["attention_mask"] + batch["kl_labels"] = kl_batch["labels"] + if "token_type_ids" in batch: + batch["kl_token_type_ids"] = kl_batch["token_type_ids"] + + batch["kto_tags"] = torch.tensor(kto_tags) + return batch diff --git a/IOPO/Method-IOPO/src/llamafactory/data/data_utils.py b/IOPO/Method-IOPO/src/llamafactory/data/data_utils.py new file mode 100644 index 00000000..4666aabc --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/data/data_utils.py @@ -0,0 +1,87 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from enum import Enum, unique +from typing import TYPE_CHECKING, Dict, List, Optional, Sequence, Set, TypedDict, Union + +from datasets import DatasetDict, concatenate_datasets, interleave_datasets + +from ..extras.logging import get_logger + + +if TYPE_CHECKING: + from datasets import Dataset, IterableDataset + + from ..hparams import DataArguments + + +logger = get_logger(__name__) + + +SLOTS = Sequence[Union[str, Set[str], Dict[str, str]]] + + +@unique +class Role(str, Enum): + USER = "user" + ASSISTANT = "assistant" + SYSTEM = "system" + FUNCTION = "function" + OBSERVATION = "observation" + + +class DatasetModule(TypedDict): + train_dataset: Optional[Union["Dataset", "IterableDataset"]] + eval_dataset: Optional[Union["Dataset", "IterableDataset"]] + + +def merge_dataset( + all_datasets: List[Union["Dataset", "IterableDataset"]], data_args: "DataArguments", seed: int +) -> Union["Dataset", "IterableDataset"]: + if len(all_datasets) == 1: + return all_datasets[0] + elif data_args.mix_strategy == "concat": + if data_args.streaming: + logger.warning("The samples between different datasets will not be mixed in streaming mode.") + + return concatenate_datasets(all_datasets) + elif data_args.mix_strategy.startswith("interleave"): + if not data_args.streaming: + logger.warning("We recommend using `mix_strategy=concat` in non-streaming mode.") + + return interleave_datasets( + datasets=all_datasets, + probabilities=data_args.interleave_probs, + seed=seed, + stopping_strategy="first_exhausted" if data_args.mix_strategy.endswith("under") else "all_exhausted", + ) + else: + raise ValueError("Unknown mixing strategy.") + + +def split_dataset( + dataset: Union["Dataset", "IterableDataset"], data_args: "DataArguments", seed: int +) -> "DatasetDict": + r""" + Splits the dataset and returns a dataset dict containing train set (required) and validation set (optional). + """ + if data_args.streaming: + dataset = dataset.shuffle(buffer_size=data_args.buffer_size, seed=seed) + val_set = dataset.take(int(data_args.val_size)) + train_set = dataset.skip(int(data_args.val_size)) + return DatasetDict({"train": train_set, "validation": val_set}) + else: + val_size = int(data_args.val_size) if data_args.val_size > 1 else data_args.val_size + dataset = dataset.train_test_split(test_size=val_size, seed=seed) + return DatasetDict({"train": dataset["train"], "validation": dataset["test"]}) diff --git a/IOPO/Method-IOPO/src/llamafactory/data/formatter.py b/IOPO/Method-IOPO/src/llamafactory/data/formatter.py new file mode 100644 index 00000000..c1653a76 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/data/formatter.py @@ -0,0 +1,140 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import json +import re +from abc import ABC, abstractmethod +from dataclasses import dataclass, field +from typing import List, Literal, Optional, Tuple, Union + +from .data_utils import SLOTS +from .tool_utils import DefaultToolUtils, GLM4ToolUtils + + +@dataclass +class Formatter(ABC): + slots: SLOTS = field(default_factory=list) + tool_format: Optional[Literal["default", "glm4"]] = None + + @abstractmethod + def apply(self, **kwargs) -> SLOTS: ... + + def extract(self, content: str) -> Union[str, List[Tuple[str, str]]]: + raise NotImplementedError + + +@dataclass +class EmptyFormatter(Formatter): + def __post_init__(self): + has_placeholder = False + for slot in filter(lambda s: isinstance(s, str), self.slots): + if re.search(r"\{\{[a-zA-Z_][a-zA-Z0-9_]*\}\}", slot): + has_placeholder = True + + if has_placeholder: + raise ValueError("Empty formatter should not contain any placeholder.") + + def apply(self, **kwargs) -> SLOTS: + return self.slots + + +@dataclass +class StringFormatter(Formatter): + def __post_init__(self): + has_placeholder = False + for slot in filter(lambda s: isinstance(s, str), self.slots): + if re.search(r"\{\{[a-zA-Z_][a-zA-Z0-9_]*\}\}", slot): + has_placeholder = True + + if not has_placeholder: + raise ValueError("A placeholder is required in the string formatter.") + + def apply(self, **kwargs) -> SLOTS: + elements = [] + for slot in self.slots: + if isinstance(slot, str): + for name, value in kwargs.items(): + if not isinstance(value, str): + raise RuntimeError("Expected a string, got {}".format(value)) + + slot = slot.replace("{{" + name + "}}", value, 1) + elements.append(slot) + elif isinstance(slot, (dict, set)): + elements.append(slot) + else: + raise RuntimeError("Input must be string, set[str] or dict[str, str], got {}".format(type(slot))) + + return elements + + +@dataclass +class FunctionFormatter(Formatter): + def __post_init__(self): + if self.tool_format == "default": + self.slots = DefaultToolUtils.get_function_slots() + self.slots + elif self.tool_format == "glm4": + self.slots = GLM4ToolUtils.get_function_slots() + self.slots + else: + raise NotImplementedError("Tool format {} was not found.".format(self.tool_format)) + + def apply(self, **kwargs) -> SLOTS: + content = kwargs.pop("content") + functions: List[Tuple[str, str]] = [] + try: + tool_calls = json.loads(content) + if not isinstance(tool_calls, list): # parallel function call + tool_calls = [tool_calls] + + for tool_call in tool_calls: + functions.append((tool_call["name"], json.dumps(tool_call["arguments"], ensure_ascii=False))) + + except json.JSONDecodeError: + functions = [] + + elements = [] + for name, arguments in functions: + for slot in self.slots: + if isinstance(slot, str): + slot = slot.replace("{{name}}", name).replace("{{arguments}}", arguments) + elements.append(slot) + elif isinstance(slot, (dict, set)): + elements.append(slot) + else: + raise RuntimeError("Input must be string, set[str] or dict[str, str], got {}".format(type(slot))) + + return elements + + +@dataclass +class ToolFormatter(Formatter): + def __post_init__(self): + if self.tool_format == "default": + self._tool_formatter = DefaultToolUtils.tool_formatter + self._tool_extractor = DefaultToolUtils.tool_extractor + elif self.tool_format == "glm4": + self._tool_formatter = GLM4ToolUtils.tool_formatter + self._tool_extractor = GLM4ToolUtils.tool_extractor + else: + raise NotImplementedError("Tool format {} was not found.".format(self.tool_format)) + + def apply(self, **kwargs) -> SLOTS: + content = kwargs.pop("content") + try: + tools = json.loads(content) + return [self._tool_formatter(tools) if len(tools) != 0 else ""] + except json.JSONDecodeError: + return [""] + + def extract(self, content: str) -> Union[str, List[Tuple[str, str]]]: + return self._tool_extractor(content) diff --git a/IOPO/Method-IOPO/src/llamafactory/data/loader.py b/IOPO/Method-IOPO/src/llamafactory/data/loader.py new file mode 100644 index 00000000..069ea199 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/data/loader.py @@ -0,0 +1,276 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import os +import sys +from typing import TYPE_CHECKING, Dict, Literal, Optional, Sequence, Union + +import numpy as np +from datasets import DatasetDict, load_dataset, load_from_disk +from transformers.utils.versions import require_version + +from ..extras.constants import FILEEXT2TYPE +from ..extras.logging import get_logger +from ..extras.misc import has_tokenized_data +from .aligner import align_dataset +from .data_utils import merge_dataset, split_dataset +from .parser import get_dataset_list +from .preprocess import get_preprocess_and_print_func +from .template import get_template_and_fix_tokenizer + + +if TYPE_CHECKING: + from datasets import Dataset, IterableDataset + from transformers import PreTrainedTokenizer, ProcessorMixin, Seq2SeqTrainingArguments + + from ..hparams import DataArguments, ModelArguments + from .data_utils import DatasetModule + from .parser import DatasetAttr + from .template import Template + + +logger = get_logger(__name__) + + +def _load_single_dataset( + dataset_attr: "DatasetAttr", + model_args: "ModelArguments", + data_args: "DataArguments", + training_args: "Seq2SeqTrainingArguments", +) -> Union["Dataset", "IterableDataset"]: + logger.info("Loading dataset {}...".format(dataset_attr)) + data_path, data_name, data_dir, data_files = None, None, None, None + if dataset_attr.load_from in ["hf_hub", "ms_hub"]: + data_path = dataset_attr.dataset_name + data_name = dataset_attr.subset + data_dir = dataset_attr.folder + + elif dataset_attr.load_from == "script": + data_path = os.path.join(data_args.dataset_dir, dataset_attr.dataset_name) + data_name = dataset_attr.subset + data_dir = dataset_attr.folder + + elif dataset_attr.load_from == "file": + data_files = [] + local_path = os.path.join(data_args.dataset_dir, dataset_attr.dataset_name) + if os.path.isdir(local_path): # is directory + for file_name in os.listdir(local_path): + data_files.append(os.path.join(local_path, file_name)) + if data_path is None: + data_path = FILEEXT2TYPE.get(file_name.split(".")[-1], None) + elif data_path != FILEEXT2TYPE.get(file_name.split(".")[-1], None): + raise ValueError("File types should be identical.") + elif os.path.isfile(local_path): # is file + data_files.append(local_path) + data_path = FILEEXT2TYPE.get(local_path.split(".")[-1], None) + else: + raise ValueError("File {} not found.".format(local_path)) + + if data_path is None: + raise ValueError("Allowed file types: {}.".format(",".join(FILEEXT2TYPE.keys()))) + else: + raise NotImplementedError("Unknown load type: {}.".format(dataset_attr.load_from)) + + if dataset_attr.load_from == "ms_hub": + require_version("modelscope>=1.11.0", "To fix: pip install modelscope>=1.11.0") + from modelscope import MsDataset + from modelscope.utils.config_ds import MS_DATASETS_CACHE + + cache_dir = model_args.cache_dir or MS_DATASETS_CACHE + dataset = MsDataset.load( + dataset_name=data_path, + subset_name=data_name, + data_dir=data_dir, + data_files=data_files, + split=dataset_attr.split, + cache_dir=cache_dir, + token=model_args.ms_hub_token, + use_streaming=(data_args.streaming and (dataset_attr.load_from != "file")), + ) + if isinstance(dataset, MsDataset): + dataset = dataset.to_hf_dataset() + else: + dataset = load_dataset( + path=data_path, + name=data_name, + data_dir=data_dir, + data_files=data_files, + split=dataset_attr.split, + cache_dir=model_args.cache_dir, + token=model_args.hf_hub_token, + streaming=(data_args.streaming and (dataset_attr.load_from != "file")), + trust_remote_code=True, + ) + + if data_args.streaming and (dataset_attr.load_from == "file"): # faster than specifying streaming=True + dataset = dataset.to_iterable_dataset() # TODO: add num shards parameter + + if dataset_attr.num_samples is not None and not data_args.streaming: + target_num = dataset_attr.num_samples + indexes = np.random.permutation(len(dataset))[:target_num] + target_num -= len(indexes) + if target_num > 0: + expand_indexes = np.random.choice(len(dataset), target_num) + indexes = np.concatenate((indexes, expand_indexes), axis=0) + + assert len(indexes) == dataset_attr.num_samples, "Sample num mismatched." + dataset = dataset.select(indexes) + logger.info("Sampled {} examples from dataset {}.".format(dataset_attr.num_samples, dataset_attr)) + + if data_args.max_samples is not None: # truncate dataset + max_samples = min(data_args.max_samples, len(dataset)) + dataset = dataset.select(range(max_samples)) + + return align_dataset(dataset, dataset_attr, data_args, training_args) + + +def _get_merged_dataset( + dataset_names: Optional[Sequence[str]], + model_args: "ModelArguments", + data_args: "DataArguments", + training_args: "Seq2SeqTrainingArguments", + stage: Literal["pt", "sft", "rm", "ppo", "kto"], +) -> Optional[Union["Dataset", "IterableDataset"]]: + if dataset_names is None: + return None + + datasets = [] + for dataset_attr in get_dataset_list(dataset_names, data_args.dataset_dir): + if (stage == "rm" and dataset_attr.ranking is False) or (stage != "rm" and dataset_attr.ranking is True): + raise ValueError("The dataset is not applicable in the current training stage.") + + datasets.append(_load_single_dataset(dataset_attr, model_args, data_args, training_args)) + + return merge_dataset(datasets, data_args, seed=training_args.seed) + + +def _get_preprocessed_dataset( + dataset: Optional[Union["Dataset", "IterableDataset"]], + data_args: "DataArguments", + training_args: "Seq2SeqTrainingArguments", + stage: Literal["pt", "sft", "rm", "ppo", "kto"], + template: "Template", + tokenizer: "PreTrainedTokenizer", + processor: Optional["ProcessorMixin"] = None, + is_eval: bool = False, +) -> Optional[Union["Dataset", "IterableDataset"]]: + if dataset is None: + return None + + preprocess_func, print_function = get_preprocess_and_print_func( + data_args, stage, template, tokenizer, processor, do_generate=(training_args.predict_with_generate and is_eval) + ) + column_names = list(next(iter(dataset)).keys()) + kwargs = {} + if not data_args.streaming: + kwargs = dict( + num_proc=data_args.preprocessing_num_workers, + load_from_cache_file=(not data_args.overwrite_cache) or (training_args.local_process_index != 0), + desc="Running tokenizer on dataset", + ) + + dataset = dataset.map(preprocess_func, batched=True, remove_columns=column_names, **kwargs) + + if training_args.should_log: + try: + print("eval example:" if is_eval else "training example:") + print_function(next(iter(dataset))) + except StopIteration: + if stage == "pt": + raise RuntimeError("Cannot find sufficient samples, consider increasing dataset size.") + else: + raise RuntimeError("Cannot find valid samples, check `data/README.md` for the data format.") + + return dataset + + +def get_dataset( + model_args: "ModelArguments", + data_args: "DataArguments", + training_args: "Seq2SeqTrainingArguments", + stage: Literal["pt", "sft", "rm", "ppo", "kto"], + tokenizer: "PreTrainedTokenizer", + processor: Optional["ProcessorMixin"] = None, +) -> "DatasetModule": + template = get_template_and_fix_tokenizer(tokenizer, data_args.template, data_args.tool_format) + if data_args.train_on_prompt and template.efficient_eos: + raise ValueError("Current template does not support `train_on_prompt`.") + + # Load tokenized dataset + if data_args.tokenized_path is not None: + if has_tokenized_data(data_args.tokenized_path): + logger.warning("Loading dataset from disk will ignore other data arguments.") + dataset_dict: "DatasetDict" = load_from_disk(data_args.tokenized_path) + logger.info("Loaded tokenized dataset from {}.".format(data_args.tokenized_path)) + + dataset_module: Dict[str, "Dataset"] = {} + if "train" in dataset_dict: + dataset_module["train_dataset"] = dataset_dict["train"] + if "validation" in dataset_dict: + dataset_module["eval_dataset"] = dataset_dict["validation"] + + if data_args.streaming: + dataset_module = {k: v.to_iterable_dataset() for k, v in dataset_module.items()} + + return dataset_module + + if data_args.streaming: + raise ValueError("Turn off `streaming` when saving dataset to disk.") + + # Load and preprocess dataset + with training_args.main_process_first(desc="load dataset"): + dataset = _get_merged_dataset(data_args.dataset, model_args, data_args, training_args, stage) + eval_dataset = _get_merged_dataset(data_args.eval_dataset, model_args, data_args, training_args, stage) + + with training_args.main_process_first(desc="pre-process dataset"): + dataset = _get_preprocessed_dataset( + dataset, data_args, training_args, stage, template, tokenizer, processor, is_eval=False + ) + eval_dataset = _get_preprocessed_dataset( + eval_dataset, data_args, training_args, stage, template, tokenizer, processor, is_eval=True + ) + + if data_args.val_size > 1e-6: + dataset_dict = split_dataset(dataset, data_args, seed=training_args.seed) + else: + dataset_dict = {} + if dataset is not None: + if data_args.streaming: + dataset = dataset.shuffle(buffer_size=data_args.buffer_size, seed=training_args.seed) + + dataset_dict["train"] = dataset + + if eval_dataset is not None: + if data_args.streaming: + eval_dataset = eval_dataset.shuffle(buffer_size=data_args.buffer_size, seed=training_args.seed) + + dataset_dict["validation"] = eval_dataset + + dataset_dict = DatasetDict(dataset_dict) + + if data_args.tokenized_path is not None: + if training_args.should_save: + dataset_dict.save_to_disk(data_args.tokenized_path) + logger.info("Tokenized dataset saved at {}.".format(data_args.tokenized_path)) + logger.info("Please restart the training with `tokenized_path: {}`.".format(data_args.tokenized_path)) + + sys.exit(0) + + dataset_module = {} + if "train" in dataset_dict: + dataset_module["train_dataset"] = dataset_dict["train"] + if "validation" in dataset_dict: + dataset_module["eval_dataset"] = dataset_dict["validation"] + + return dataset_module diff --git a/IOPO/Method-IOPO/src/llamafactory/data/parser.py b/IOPO/Method-IOPO/src/llamafactory/data/parser.py new file mode 100644 index 00000000..2dccfc5d --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/data/parser.py @@ -0,0 +1,153 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import json +import os +from dataclasses import dataclass +from typing import Any, Dict, List, Literal, Optional, Sequence + +from transformers.utils import cached_file + +from ..extras.constants import DATA_CONFIG +from ..extras.misc import use_modelscope + + +@dataclass +class DatasetAttr: + r""" + Dataset attributes. + """ + + # basic configs + load_from: Literal["hf_hub", "ms_hub", "script", "file"] + dataset_name: str + formatting: Literal["alpaca", "sharegpt"] = "alpaca" + ranking: bool = False + # extra configs + subset: Optional[str] = None + split: str = "train" + folder: Optional[str] = None + num_samples: Optional[int] = None + # common columns + system: Optional[str] = None + tools: Optional[str] = None + images: Optional[str] = None + # rlhf columns + chosen: Optional[str] = None + rejected: Optional[str] = None + kto_tag: Optional[str] = None + # alpaca columns + prompt: Optional[str] = "instruction" + query: Optional[str] = "input" + response: Optional[str] = "output" + history: Optional[str] = None + # sharegpt columns + messages: Optional[str] = "conversations" + # sharegpt tags + role_tag: Optional[str] = "from" + content_tag: Optional[str] = "value" + user_tag: Optional[str] = "human" + assistant_tag: Optional[str] = "gpt" + observation_tag: Optional[str] = "observation" + function_tag: Optional[str] = "function_call" + system_tag: Optional[str] = "system" + + def __repr__(self) -> str: + return self.dataset_name + + def set_attr(self, key: str, obj: Dict[str, Any], default: Optional[Any] = None) -> None: + setattr(self, key, obj.get(key, default)) + + +def get_dataset_list(dataset_names: Optional[Sequence[str]], dataset_dir: str) -> List["DatasetAttr"]: + r""" + Gets the attributes of the datasets. + """ + if dataset_names is None: + dataset_names = [] + + if dataset_dir == "ONLINE": + dataset_info = None + else: + if dataset_dir.startswith("REMOTE:"): + config_path = cached_file(path_or_repo_id=dataset_dir[7:], filename=DATA_CONFIG, repo_type="dataset") + else: + config_path = os.path.join(dataset_dir, DATA_CONFIG) + + try: + with open(config_path, "r") as f: + dataset_info = json.load(f) + except Exception as err: + if len(dataset_names) != 0: + raise ValueError("Cannot open {} due to {}.".format(config_path, str(err))) + + dataset_info = None + + dataset_list: List["DatasetAttr"] = [] + for name in dataset_names: + if dataset_info is None: # dataset_dir is ONLINE + load_from = "ms_hub" if use_modelscope() else "hf_hub" + dataset_attr = DatasetAttr(load_from, dataset_name=name) + dataset_list.append(dataset_attr) + continue + + if name not in dataset_info: + raise ValueError("Undefined dataset {} in {}.".format(name, DATA_CONFIG)) + + has_hf_url = "hf_hub_url" in dataset_info[name] + has_ms_url = "ms_hub_url" in dataset_info[name] + + if has_hf_url or has_ms_url: + if (use_modelscope() and has_ms_url) or (not has_hf_url): + dataset_attr = DatasetAttr("ms_hub", dataset_name=dataset_info[name]["ms_hub_url"]) + else: + dataset_attr = DatasetAttr("hf_hub", dataset_name=dataset_info[name]["hf_hub_url"]) + elif "script_url" in dataset_info[name]: + dataset_attr = DatasetAttr("script", dataset_name=dataset_info[name]["script_url"]) + else: + dataset_attr = DatasetAttr("file", dataset_name=dataset_info[name]["file_name"]) + + dataset_attr.set_attr("formatting", dataset_info[name], default="alpaca") + dataset_attr.set_attr("ranking", dataset_info[name], default=False) + dataset_attr.set_attr("subset", dataset_info[name]) + dataset_attr.set_attr("split", dataset_info[name], default="train") + dataset_attr.set_attr("folder", dataset_info[name]) + dataset_attr.set_attr("num_samples", dataset_info[name]) + + if "columns" in dataset_info[name]: + column_names = ["system", "tools", "images", "chosen", "rejected", "kto_tag"] + if dataset_attr.formatting == "alpaca": + column_names.extend(["prompt", "query", "response", "history"]) + else: + column_names.extend(["messages"]) + + for column_name in column_names: + dataset_attr.set_attr(column_name, dataset_info[name]["columns"]) + + if dataset_attr.formatting == "sharegpt" and "tags" in dataset_info[name]: + tag_names = ( + "role_tag", + "content_tag", + "user_tag", + "assistant_tag", + "observation_tag", + "function_tag", + "system_tag", + ) + for tag in tag_names: + dataset_attr.set_attr(tag, dataset_info[name]["tags"]) + + dataset_list.append(dataset_attr) + + return dataset_list diff --git a/IOPO/Method-IOPO/src/llamafactory/data/preprocess.py b/IOPO/Method-IOPO/src/llamafactory/data/preprocess.py new file mode 100644 index 00000000..44d7b285 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/data/preprocess.py @@ -0,0 +1,119 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from functools import partial +from typing import TYPE_CHECKING, Callable, Literal, Optional, Tuple + +from .processors.feedback import preprocess_feedback_dataset +from .processors.pairwise import preprocess_inputpairwise_dataset, preprocess_pairwise_dataset, print_pairwise_dataset_example +from .processors.pretrain import preprocess_pretrain_dataset +from .processors.supervised import ( + preprocess_packed_supervised_dataset, + preprocess_supervised_dataset, + print_supervised_dataset_example, +) +from .processors.unsupervised import preprocess_unsupervised_dataset, print_unsupervised_dataset_example + + +if TYPE_CHECKING: + from transformers import PreTrainedTokenizer, ProcessorMixin + + from ..hparams import DataArguments + from .template import Template + + +def get_preprocess_and_print_func( + data_args: "DataArguments", + stage: Literal["pt", "sft", "rm", "ppo", "kto", "cipo"], + template: "Template", + tokenizer: "PreTrainedTokenizer", + processor: Optional["ProcessorMixin"], + do_generate: bool = False, +) -> Tuple[Callable, Callable]: + if stage == "pt": + preprocess_func = partial( + preprocess_pretrain_dataset, + tokenizer=tokenizer, + data_args=data_args, + ) + print_function = partial(print_unsupervised_dataset_example, tokenizer=tokenizer) + elif stage == "sft" and not do_generate: + if data_args.packing: + if data_args.neat_packing: + from datasets.arrow_writer import OptimizedTypedSequence, TypedSequence + + def __init__(self, data, **kwargs): + return TypedSequence.__init__( + self, + data, + type=kwargs.pop("type", None), + try_type=kwargs.pop("try_type", None), + optimized_int_type=kwargs.pop("optimized_int_type", None), + ) + + OptimizedTypedSequence.__init__ = __init__ + preprocess_func = partial( + preprocess_packed_supervised_dataset, + template=template, + tokenizer=tokenizer, + data_args=data_args, + ) + else: + preprocess_func = partial( + preprocess_supervised_dataset, + template=template, + tokenizer=tokenizer, + processor=processor, + data_args=data_args, + ) + + print_function = partial(print_supervised_dataset_example, tokenizer=tokenizer) + elif stage == "cipo": + preprocess_func = partial( + preprocess_inputpairwise_dataset, + template=template, + tokenizer=tokenizer, + processor=processor, + data_args=data_args, + ) + print_function = partial(print_pairwise_dataset_example, tokenizer=tokenizer) + elif stage == "rm": + preprocess_func = partial( + preprocess_pairwise_dataset, + template=template, + tokenizer=tokenizer, + processor=processor, + data_args=data_args, + ) + print_function = partial(print_pairwise_dataset_example, tokenizer=tokenizer) + elif stage == "kto": + preprocess_func = partial( + preprocess_feedback_dataset, + template=template, + tokenizer=tokenizer, + processor=processor, + data_args=data_args, + ) + print_function = partial(print_supervised_dataset_example, tokenizer=tokenizer) + else: + preprocess_func = partial( + preprocess_unsupervised_dataset, + template=template, + tokenizer=tokenizer, + processor=processor, + data_args=data_args, + ) + print_function = partial(print_unsupervised_dataset_example, tokenizer=tokenizer) + + return preprocess_func, print_function diff --git a/IOPO/Method-IOPO/src/llamafactory/data/processors/__init__.py b/IOPO/Method-IOPO/src/llamafactory/data/processors/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/IOPO/Method-IOPO/src/llamafactory/data/processors/feedback.py b/IOPO/Method-IOPO/src/llamafactory/data/processors/feedback.py new file mode 100644 index 00000000..bed0c33c --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/data/processors/feedback.py @@ -0,0 +1,143 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from typing import TYPE_CHECKING, Any, Dict, List, Optional, Sequence, Tuple + +from ...extras.constants import IGNORE_INDEX +from ...extras.logging import get_logger +from .processor_utils import get_paligemma_token_type_ids, get_pixel_values, infer_seqlen + + +if TYPE_CHECKING: + from transformers import PreTrainedTokenizer, ProcessorMixin + + from ...hparams import DataArguments + from ..template import Template + + +logger = get_logger(__name__) + + +def _encode_feedback_example( + prompt: Sequence[Dict[str, str]], + response: Sequence[Dict[str, str]], + kl_response: Sequence[Dict[str, str]], + system: Optional[str], + tools: Optional[str], + template: "Template", + tokenizer: "PreTrainedTokenizer", + processor: Optional["ProcessorMixin"], + cutoff_len: int, +) -> Tuple[List[int], List[int], List[int], List[int], bool]: + if processor is not None and not hasattr(processor, "image_seq_length"): # llava-like models + prompt[0]["content"] = template.image_token + prompt[0]["content"] + + if response[0]["content"]: # desired example + kto_tag = True + messages = prompt + [response[0]] + else: # undesired example + kto_tag = False + messages = prompt + [response[1]] + + if kl_response[0]["content"]: + kl_messages = prompt + [kl_response[0]] + else: + kl_messages = prompt + [kl_response[1]] + + prompt_ids, response_ids = template.encode_oneturn(tokenizer, messages, system, tools) + kl_prompt_ids, kl_response_ids = template.encode_oneturn(tokenizer, kl_messages, system, tools) + + if template.efficient_eos: + response_ids += [tokenizer.eos_token_id] + kl_response_ids += [tokenizer.eos_token_id] + + if processor is not None and hasattr(processor, "image_seq_length"): # paligemma models + image_token_id = tokenizer.convert_tokens_to_ids(template.image_token) + prompt_ids = [image_token_id] * getattr(processor, "image_seq_length") + prompt_ids + kl_prompt_ids = [image_token_id] * getattr(processor, "image_seq_length") + kl_prompt_ids + + source_len, target_len = infer_seqlen(len(prompt_ids), len(response_ids), cutoff_len) + prompt_ids = prompt_ids[:source_len] + response_ids = response_ids[:target_len] + kl_source_len, kl_target_len = infer_seqlen(len(kl_prompt_ids), len(kl_response_ids), cutoff_len) + kl_prompt_ids = kl_prompt_ids[:kl_source_len] + kl_response_ids = kl_response_ids[:kl_target_len] + + input_ids = prompt_ids + response_ids + labels = [IGNORE_INDEX] * source_len + response_ids + kl_input_ids = kl_prompt_ids + kl_response_ids + kl_labels = [IGNORE_INDEX] * kl_source_len + kl_response_ids + + return input_ids, labels, kl_input_ids, kl_labels, kto_tag + + +def preprocess_feedback_dataset( + examples: Dict[str, List[Any]], + template: "Template", + tokenizer: "PreTrainedTokenizer", + processor: Optional["ProcessorMixin"], + data_args: "DataArguments", +) -> Dict[str, List[List[int]]]: + # create unrelated input-output pairs for estimating the KL term by flipping the matched pairs + kl_response = examples["response"][::-1] + model_inputs = { + "input_ids": [], + "attention_mask": [], + "labels": [], + "kl_input_ids": [], + "kl_attention_mask": [], + "kl_labels": [], + "kto_tags": [], + } + if processor is not None: + model_inputs["pixel_values"] = [] + if hasattr(processor, "image_seq_length"): # paligemma models + model_inputs["token_type_ids"] = [] + model_inputs["kl_token_type_ids"] = [] + + for i in range(len(examples["prompt"])): + if len(examples["prompt"][i]) % 2 != 1 or len(examples["response"][i]) < 2: + logger.warning("Dropped invalid example: {}".format(examples["prompt"][i] + examples["response"][i])) + continue + + input_ids, labels, kl_input_ids, kl_labels, kto_tag = _encode_feedback_example( + prompt=examples["prompt"][i], + response=examples["response"][i], + kl_response=kl_response[i], + system=examples["system"][i], + tools=examples["tools"][i], + template=template, + tokenizer=tokenizer, + processor=processor, + cutoff_len=data_args.cutoff_len, + ) + model_inputs["input_ids"].append(input_ids) + model_inputs["attention_mask"].append([1] * len(input_ids)) + model_inputs["labels"].append(labels) + model_inputs["kl_input_ids"].append(kl_input_ids) + model_inputs["kl_attention_mask"].append([1] * len(kl_input_ids)) + model_inputs["kl_labels"].append(kl_labels) + model_inputs["kto_tags"].append(kto_tag) + if processor is not None: + model_inputs["pixel_values"].append(get_pixel_values(examples["images"][i], processor)) + if hasattr(processor, "image_seq_length"): # paligemma models + model_inputs["token_type_ids"].append(get_paligemma_token_type_ids(len(input_ids), processor)) + model_inputs["kl_token_type_ids"].append(get_paligemma_token_type_ids(len(kl_input_ids), processor)) + + desirable_num = sum([1 for tag in model_inputs["kto_tags"] if tag]) + undesirable_num = len(model_inputs["kto_tags"]) - desirable_num + if desirable_num == 0 or undesirable_num == 0: + logger.warning("Your dataset only has one preference type.") + + return model_inputs diff --git a/IOPO/Method-IOPO/src/llamafactory/data/processors/pairwise.py b/IOPO/Method-IOPO/src/llamafactory/data/processors/pairwise.py new file mode 100644 index 00000000..57678182 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/data/processors/pairwise.py @@ -0,0 +1,279 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from typing import TYPE_CHECKING, Any, Dict, List, Optional, Sequence, Tuple + +from ...extras.constants import IGNORE_INDEX +from ...extras.logging import get_logger +from .processor_utils import get_paligemma_token_type_ids, get_pixel_values, infer_seqlen + + +if TYPE_CHECKING: + from transformers import PreTrainedTokenizer, ProcessorMixin + + from ...hparams import DataArguments + from ..template import Template + + +logger = get_logger(__name__) + +def _encode_inputpairwise_example( + prompt: Sequence[Dict[str, str]], + response: Sequence[Dict[str, str]], + system: Optional[str], + tools: Optional[str], + template: "Template", + tokenizer: "PreTrainedTokenizer", + processor: Optional["ProcessorMixin"], + cutoff_len: int, +) -> Tuple[List[int], List[int], List[int], List[int]]: + if processor is not None and not hasattr(processor, "image_seq_length"): # llava-like models + prompt[0]["content"] = template.image_token + prompt[0]["content"] + + p_nums = len(prompt) # prompt: [{"role": "user", "content": "..."}] * (2T - 1)*2 the first half is + chosen_messages = prompt[:p_nums//2] + [response[0]] ##### Modify + rejected_messages = prompt[p_nums//2:] + [response[1]] + # rejected_messages = prompt[:p_nums//2] + [response[0]] + # chosen_messages = prompt[p_nums//2:] + [response[1]] + # chosen_messages = prompt[:p_nums//2] + [response[0]] ##### Modify + # rejected_messages = prompt[:p_nums//2] + [response[1]] + chosen_prompt_ids, chosen_ids = template.encode_oneturn(tokenizer, chosen_messages, system, tools) + rejected_prompt_ids, rejected_ids = template.encode_oneturn(tokenizer, rejected_messages, system, tools) + + if template.efficient_eos: + chosen_ids += [tokenizer.eos_token_id] + rejected_ids += [tokenizer.eos_token_id] + + if processor is not None and hasattr(processor, "image_seq_length"): # paligemma models + image_token_id = tokenizer.convert_tokens_to_ids(template.image_token) + chosen_prompt_ids = [image_token_id] * getattr(processor, "image_seq_length") + chosen_prompt_ids + rejected_prompt_ids = [image_token_id] * getattr(processor, "image_seq_length") + rejected_prompt_ids + + + # consider the response is more important + source_len, target_len = infer_seqlen(max(len(chosen_prompt_ids),len(rejected_prompt_ids)), max(len(chosen_ids),len(rejected_ids)), cutoff_len) + chosen_prompt_ids = chosen_prompt_ids[:source_len] + rejected_prompt_ids = rejected_prompt_ids[:source_len] + chosen_ids = chosen_ids[:target_len] + rejected_ids = rejected_ids[:target_len] + + chosen_input_ids_v1 = chosen_prompt_ids + chosen_ids + chosen_labels_v1 = [IGNORE_INDEX] * min(source_len, len(chosen_prompt_ids)) + chosen_ids ### + rejected_input_ids_v1 = chosen_prompt_ids + rejected_ids + rejected_labels_v1 = [IGNORE_INDEX] * min(source_len, len(chosen_prompt_ids)) + rejected_ids ### + chosen_input_ids_v2 = rejected_prompt_ids + rejected_ids + chosen_labels_v2 = [IGNORE_INDEX] * min(source_len, len(rejected_prompt_ids)) + rejected_ids ### + rejected_input_ids_v2 = rejected_prompt_ids + chosen_ids + rejected_labels_v2 = [IGNORE_INDEX] * min(source_len, len(rejected_prompt_ids)) + chosen_ids ### + + # rejected_input_ids = rejected_prompt_ids + rejected_ids + # rejected_labels = [IGNORE_INDEX] * min(source_len, len(rejected_prompt_ids)) + rejected_ids ### + # # rejected_labels = chosen_labels + + return chosen_input_ids_v1, chosen_labels_v1, rejected_input_ids_v1, rejected_labels_v1, chosen_input_ids_v2, chosen_labels_v2, rejected_input_ids_v2, rejected_labels_v2 + + +def preprocess_inputpairwise_dataset( + examples: Dict[str, List[Any]], + template: "Template", + tokenizer: "PreTrainedTokenizer", + processor: Optional["ProcessorMixin"], + data_args: "DataArguments", +) -> Dict[str, List[List[int]]]: + # build input pairs with format ` X`, `Y1 ` and `Y2 ` + model_inputs = { + "chosenv1_input_ids": [], + "chosenv1_attention_mask": [], + "chosenv1_labels": [], + "rejectedv1_input_ids": [], + "rejectedv1_attention_mask": [], + "rejectedv1_labels": [], + "chosenv2_input_ids": [], + "chosenv2_attention_mask": [], + "chosenv2_labels": [], + "rejectedv2_input_ids": [], + "rejectedv2_attention_mask": [], + "rejectedv2_labels": [], + } + if processor is not None: + model_inputs["pixel_values"] = [] + if hasattr(processor, "image_seq_length"): # paligemma models + model_inputs["chosen_token_type_ids"] = [] + model_inputs["rejected_token_type_ids"] = [] + + for i in range(len(examples["prompt"])): + # if len(examples["prompt"][i]) % 2 != 1 or len(examples["response"][i]) < 2: + # logger.warning("Dropped invalid example: {}".format(examples["prompt"][i] + examples["response"][i])) + # continue + if len(examples["prompt"][i]) % 2 == 1 or len(examples["response"][i]) > 2: ### pairwise input is even, response is one + logger.warning("Dropped invalid example: {}".format(examples["prompt"][i] + examples["response"][i])) + continue + + chosen_input_ids_v1, chosen_labels_v1, rejected_input_ids_v1, rejected_labels_v1, chosen_input_ids_v2, chosen_labels_v2, rejected_input_ids_v2, rejected_labels_v2 = _encode_inputpairwise_example( + prompt=examples["prompt"][i], + response=examples["response"][i], + system=examples["system"][i], + tools=examples["tools"][i], + template=template, + tokenizer=tokenizer, + processor=processor, + cutoff_len=data_args.cutoff_len, + ) + model_inputs["chosenv1_input_ids"].append(chosen_input_ids_v1) + model_inputs["chosenv1_attention_mask"].append([1] * len(chosen_input_ids_v1)) + model_inputs["chosenv1_labels"].append(chosen_labels_v1) + model_inputs["rejectedv1_input_ids"].append(rejected_input_ids_v1) + model_inputs["rejectedv1_attention_mask"].append([1] * len(rejected_input_ids_v1)) + model_inputs["rejectedv1_labels"].append(rejected_labels_v1) + model_inputs["chosenv2_input_ids"].append(chosen_input_ids_v2) + model_inputs["chosenv2_attention_mask"].append([1] * len(chosen_input_ids_v2)) + model_inputs["chosenv2_labels"].append(chosen_labels_v2) + model_inputs["rejectedv2_input_ids"].append(rejected_input_ids_v2) + model_inputs["rejectedv2_attention_mask"].append([1] * len(rejected_input_ids_v2)) + model_inputs["rejectedv2_labels"].append(rejected_labels_v2) + ### Need further revision + if processor is not None: + model_inputs["pixel_values"].append(get_pixel_values(examples["images"][i], processor)) + if hasattr(processor, "image_seq_length"): # paligemma models + model_inputs["chosen_token_type_ids"].append( + get_paligemma_token_type_ids(len(chosen_input_ids), processor) + ) + model_inputs["rejected_token_type_ids"].append( + get_paligemma_token_type_ids(len(rejected_input_ids), processor) + ) + + return model_inputs + +def _encode_pairwise_example( + prompt: Sequence[Dict[str, str]], + response: Sequence[Dict[str, str]], + system: Optional[str], + tools: Optional[str], + template: "Template", + tokenizer: "PreTrainedTokenizer", + processor: Optional["ProcessorMixin"], + cutoff_len: int, +) -> Tuple[List[int], List[int], List[int], List[int]]: + if processor is not None and not hasattr(processor, "image_seq_length"): # llava-like models + prompt[0]["content"] = template.image_token + prompt[0]["content"] + + chosen_messages = prompt + [response[0]] + rejected_messages = prompt + [response[1]] + prompt_ids, chosen_ids = template.encode_oneturn(tokenizer, chosen_messages, system, tools) + _, rejected_ids = template.encode_oneturn(tokenizer, rejected_messages, system, tools) + + if template.efficient_eos: + chosen_ids += [tokenizer.eos_token_id] + rejected_ids += [tokenizer.eos_token_id] + + if processor is not None and hasattr(processor, "image_seq_length"): # paligemma models + image_token_id = tokenizer.convert_tokens_to_ids(template.image_token) + prompt_ids = [image_token_id] * getattr(processor, "image_seq_length") + prompt_ids + + # consider the response is more important + source_len, target_len = infer_seqlen(len(prompt_ids), max(len(chosen_ids), len(rejected_ids)), cutoff_len) + prompt_ids = prompt_ids[:source_len] + chosen_ids = chosen_ids[:target_len] + rejected_ids = rejected_ids[:target_len] + + chosen_input_ids = prompt_ids + chosen_ids + chosen_labels = [IGNORE_INDEX] * source_len + chosen_ids + rejected_input_ids = prompt_ids + rejected_ids + rejected_labels = [IGNORE_INDEX] * source_len + rejected_ids + + return chosen_input_ids, chosen_labels, rejected_input_ids, rejected_labels + + +def preprocess_pairwise_dataset( + examples: Dict[str, List[Any]], + template: "Template", + tokenizer: "PreTrainedTokenizer", + processor: Optional["ProcessorMixin"], + data_args: "DataArguments", +) -> Dict[str, List[List[int]]]: + # build input pairs with format ` X`, `Y1 ` and `Y2 ` + model_inputs = { + "chosen_input_ids": [], + "chosen_attention_mask": [], + "chosen_labels": [], + "rejected_input_ids": [], + "rejected_attention_mask": [], + "rejected_labels": [], + } + if processor is not None: + model_inputs["pixel_values"] = [] + if hasattr(processor, "image_seq_length"): # paligemma models + model_inputs["chosen_token_type_ids"] = [] + model_inputs["rejected_token_type_ids"] = [] + + for i in range(len(examples["prompt"])): + if len(examples["prompt"][i]) % 2 != 1 or len(examples["response"][i]) < 2: + logger.warning("Dropped invalid example: {}".format(examples["prompt"][i] + examples["response"][i])) + continue + + chosen_input_ids, chosen_labels, rejected_input_ids, rejected_labels = _encode_pairwise_example( + prompt=examples["prompt"][i], + response=examples["response"][i], + system=examples["system"][i], + tools=examples["tools"][i], + template=template, + tokenizer=tokenizer, + processor=processor, + cutoff_len=data_args.cutoff_len, + ) + model_inputs["chosen_input_ids"].append(chosen_input_ids) + model_inputs["chosen_attention_mask"].append([1] * len(chosen_input_ids)) + model_inputs["chosen_labels"].append(chosen_labels) + model_inputs["rejected_input_ids"].append(rejected_input_ids) + model_inputs["rejected_attention_mask"].append([1] * len(rejected_input_ids)) + model_inputs["rejected_labels"].append(rejected_labels) + if processor is not None: + model_inputs["pixel_values"].append(get_pixel_values(examples["images"][i], processor)) + if hasattr(processor, "image_seq_length"): # paligemma models + model_inputs["chosen_token_type_ids"].append( + get_paligemma_token_type_ids(len(chosen_input_ids), processor) + ) + model_inputs["rejected_token_type_ids"].append( + get_paligemma_token_type_ids(len(rejected_input_ids), processor) + ) + + return model_inputs + + +def print_pairwise_dataset_example(example: Dict[str, List[int]], tokenizer: "PreTrainedTokenizer") -> None: + valid_chosen_labels_v1 = list(filter(lambda x: x != IGNORE_INDEX, example["chosenv1_labels"])) + valid_rejected_labels_v1 = list(filter(lambda x: x != IGNORE_INDEX, example["rejectedv1_labels"])) + valid_chosen_labels_v2 = list(filter(lambda x: x != IGNORE_INDEX, example["chosenv2_labels"])) + valid_rejected_labels_v2 = list(filter(lambda x: x != IGNORE_INDEX, example["rejectedv2_labels"])) + print("chosen_input_ids_v1:\n{}".format(example["chosenv1_input_ids"])) + print("chosen_inputs_v1:\n{}".format(tokenizer.decode(example["chosenv1_input_ids"], skip_special_tokens=False))) + print("chosen_label_ids_v1:\n{}".format(example["chosenv1_labels"])) + print("chosen_labels_v1:\n{}".format(tokenizer.decode(valid_chosen_labels_v1, skip_special_tokens=False))) + print("rejected_input_ids_v1:\n{}".format(example["rejectedv1_input_ids"])) + print("rejected_inputs_v1:\n{}".format(tokenizer.decode(example["rejectedv1_input_ids"], skip_special_tokens=False))) + print("rejected_label_ids_v1:\n{}".format(example["rejectedv1_labels"])) + print("rejected_labels_v1:\n{}".format(tokenizer.decode(valid_rejected_labels_v1, skip_special_tokens=False))) + print("chosen_input_ids_v2:\n{}".format(example["chosenv2_input_ids"])) + print("chosen_inputs_v2:\n{}".format(tokenizer.decode(example["chosenv2_input_ids"], skip_special_tokens=False))) + print("chosen_label_ids_v2:\n{}".format(example["chosenv2_labels"])) + print("chosen_labels_v2:\n{}".format(tokenizer.decode(valid_chosen_labels_v2, skip_special_tokens=False))) + print("rejected_input_ids_v2:\n{}".format(example["rejectedv2_input_ids"])) + print("rejected_inputs_v2:\n{}".format(tokenizer.decode(example["rejectedv2_input_ids"], skip_special_tokens=False))) + print("rejected_label_ids_v2:\n{}".format(example["rejectedv2_labels"])) + print("rejected_labels_v2:\n{}".format(tokenizer.decode(valid_rejected_labels_v2, skip_special_tokens=False))) + + # print("rejected_input_ids_v1:\n{}".format(example["rejectedv1_input_ids"])) + # print("rejected_inputs_v1:\n{}".format(tokenizer.decode(example["rejectedv1_input_ids"], skip_special_tokens=False))) + # print("rejected_label_ids_v1:\n{}".format(example["rejectedv1_labels"])) + # print("rejected_labels_v1:\n{}".format(tokenizer.decode(valid_rejected_labels_v1, skip_special_tokens=False))) diff --git a/IOPO/Method-IOPO/src/llamafactory/data/processors/pretrain.py b/IOPO/Method-IOPO/src/llamafactory/data/processors/pretrain.py new file mode 100644 index 00000000..67d6009b --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/data/processors/pretrain.py @@ -0,0 +1,54 @@ +# Copyright 2024 HuggingFace Inc. and the LlamaFactory team. +# +# This code is inspired by the HuggingFace's transformers library. +# https://github.com/huggingface/transformers/blob/v4.40.0/examples/pytorch/language-modeling/run_clm.py +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from itertools import chain +from typing import TYPE_CHECKING, Any, Dict, List + + +if TYPE_CHECKING: + from transformers import PreTrainedTokenizer + + from ...hparams import DataArguments + + +def preprocess_pretrain_dataset( + examples: Dict[str, List[Any]], tokenizer: "PreTrainedTokenizer", data_args: "DataArguments" +) -> Dict[str, List[List[int]]]: + # build grouped texts with format `X1 X2 X3 ...` if packing is enabled + eos_token = "<|end_of_text|>" if data_args.template == "llama3" else tokenizer.eos_token + text_examples = [messages[0]["content"] + eos_token for messages in examples["prompt"]] + + if not data_args.packing: + if data_args.template == "gemma": + text_examples = [tokenizer.bos_token + example for example in text_examples] + + result = tokenizer(text_examples, add_special_tokens=False, max_length=data_args.cutoff_len, truncation=True) + else: + tokenized_examples = tokenizer(text_examples, add_special_tokens=False) + concatenated_examples = {k: list(chain(*tokenized_examples[k])) for k in tokenized_examples.keys()} + total_length = len(concatenated_examples[list(concatenated_examples.keys())[0]]) + block_size = data_args.cutoff_len + total_length = (total_length // block_size) * block_size + result = { + k: [t[i : i + block_size] for i in range(0, total_length, block_size)] + for k, t in concatenated_examples.items() + } + if data_args.template == "gemma": + for i in range(len(result["input_ids"])): + result["input_ids"][i][0] = tokenizer.bos_token_id + + return result diff --git a/IOPO/Method-IOPO/src/llamafactory/data/processors/processor_utils.py b/IOPO/Method-IOPO/src/llamafactory/data/processors/processor_utils.py new file mode 100644 index 00000000..435cf6ca --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/data/processors/processor_utils.py @@ -0,0 +1,95 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import bisect +from typing import TYPE_CHECKING, List, Sequence, Tuple + +from ...extras.packages import is_pillow_available + + +if is_pillow_available(): + from PIL import Image + + +if TYPE_CHECKING: + from numpy.typing import NDArray + from PIL.Image import Image as ImageObject + from transformers import ProcessorMixin + from transformers.image_processing_utils import BaseImageProcessor + + +def search_for_fit(numbers: Sequence[int], capacity: int) -> int: + r""" + Finds the index of largest number that fits into the knapsack with the given capacity. + """ + index = bisect.bisect(numbers, capacity) + return -1 if index == 0 else (index - 1) + + +def greedy_knapsack(numbers: List[int], capacity: int) -> List[List[int]]: + r""" + An efficient greedy algorithm with binary search for the knapsack problem. + """ + numbers.sort() # sort numbers in ascending order for binary search + knapsacks = [] + + while numbers: + current_knapsack = [] + remaining_capacity = capacity + + while True: + index = search_for_fit(numbers, remaining_capacity) + if index == -1: + break # no more numbers fit in this knapsack + + remaining_capacity -= numbers[index] # update the remaining capacity + current_knapsack.append(numbers.pop(index)) # add the number to knapsack + + knapsacks.append(current_knapsack) + + return knapsacks + + +def get_pixel_values(images: Sequence["ImageObject"], processor: "ProcessorMixin") -> "NDArray": + r""" + Processes visual inputs. (currently only supports a single image) + """ + image_processor: "BaseImageProcessor" = getattr(processor, "image_processor") + image = images[0] if len(images) != 0 else Image.new("RGB", (100, 100), (255, 255, 255)) + return image_processor(image, return_tensors="pt")["pixel_values"][0] # shape (C, H, W) + + +def get_paligemma_token_type_ids(input_len: int, processor: "ProcessorMixin") -> List[int]: + r""" + Gets paligemma token type ids for computing loss. + """ + image_seq_length = getattr(processor, "image_seq_length") + return [0] * image_seq_length + [1] * (input_len - image_seq_length) + + +def infer_seqlen(source_len: int, target_len: int, cutoff_len: int) -> Tuple[int, int]: + r""" + Computes the real sequence length after truncation by the cutoff_len. + """ + if target_len * 2 < cutoff_len: # truncate source + max_target_len = cutoff_len + elif source_len * 2 < cutoff_len: # truncate target + max_target_len = cutoff_len - source_len + else: # truncate both + max_target_len = int(cutoff_len * (target_len / (source_len + target_len))) + + new_target_len = min(max_target_len, target_len) + max_source_len = max(cutoff_len - new_target_len, 0) + new_source_len = min(max_source_len, source_len) + return new_source_len, new_target_len diff --git a/IOPO/Method-IOPO/src/llamafactory/data/processors/supervised.py b/IOPO/Method-IOPO/src/llamafactory/data/processors/supervised.py new file mode 100644 index 00000000..950de12a --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/data/processors/supervised.py @@ -0,0 +1,215 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from collections import defaultdict +from typing import TYPE_CHECKING, Any, Dict, List, Optional, Sequence, Tuple + +from ...extras.constants import IGNORE_INDEX +from ...extras.logging import get_logger +from .processor_utils import get_paligemma_token_type_ids, get_pixel_values, greedy_knapsack, infer_seqlen + + +if TYPE_CHECKING: + from transformers import PreTrainedTokenizer, ProcessorMixin + + from ...hparams import DataArguments + from ..template import Template + + +logger = get_logger(__name__) + + +def _encode_supervised_example( + prompt: Sequence[Dict[str, str]], + response: Sequence[Dict[str, str]], + system: Optional[str], + tools: Optional[str], + template: "Template", + tokenizer: "PreTrainedTokenizer", + processor: Optional["ProcessorMixin"], + cutoff_len: int, + train_on_prompt: bool, + mask_history: bool, +) -> Tuple[List[int], List[int]]: + if processor is not None and not hasattr(processor, "image_seq_length"): # llava-like models + prompt[0]["content"] = template.image_token + prompt[0]["content"] + + messages = prompt + response + input_ids, labels = [], [] + + if processor is not None and hasattr(processor, "image_seq_length"): # paligemma models + image_token_id = tokenizer.convert_tokens_to_ids(template.image_token) + input_ids += [image_token_id] * getattr(processor, "image_seq_length") + labels += [IGNORE_INDEX] * getattr(processor, "image_seq_length") + + encoded_pairs = template.encode_multiturn(tokenizer, messages, system, tools) + total_length = 1 if template.efficient_eos else 0 + if mask_history: + encoded_pairs = encoded_pairs[::-1] # high priority for last turns + + for turn_idx, (source_ids, target_ids) in enumerate(encoded_pairs): + if total_length >= cutoff_len: + break + + source_len, target_len = infer_seqlen(len(source_ids), len(target_ids), cutoff_len - total_length) + source_ids = source_ids[:source_len] + target_ids = target_ids[:target_len] + total_length += source_len + target_len + + if train_on_prompt: + source_label = source_ids + elif template.efficient_eos: + source_label = [tokenizer.eos_token_id] + [IGNORE_INDEX] * (source_len - 1) + else: + source_label = [IGNORE_INDEX] * source_len + + if mask_history and turn_idx != 0: # train on the last turn only + target_label = [IGNORE_INDEX] * target_len + else: + target_label = target_ids + + if mask_history: # reversed sequences + input_ids = source_ids + target_ids + input_ids + labels = source_label + target_label + labels + else: + input_ids += source_ids + target_ids + labels += source_label + target_label + + if template.efficient_eos: + input_ids += [tokenizer.eos_token_id] + labels += [tokenizer.eos_token_id] + + return input_ids, labels + + +def preprocess_supervised_dataset( + examples: Dict[str, List[Any]], + template: "Template", + tokenizer: "PreTrainedTokenizer", + processor: Optional["ProcessorMixin"], + data_args: "DataArguments", +) -> Dict[str, List[List[int]]]: + # build inputs with format ` X Y ` and labels with format ` ... Y ` + # for multiturn examples, we only mask the prompt part in each prompt-response pair. + model_inputs = {"input_ids": [], "attention_mask": [], "labels": []} + if processor is not None: + model_inputs["pixel_values"] = [] + if hasattr(processor, "image_seq_length"): # paligemma models + model_inputs["token_type_ids"] = [] + + for i in range(len(examples["prompt"])): + if len(examples["prompt"][i]) % 2 != 1 or len(examples["response"][i]) != 1: + logger.warning("Dropped invalid example: {}".format(examples["prompt"][i] + examples["response"][i])) + continue + + input_ids, labels = _encode_supervised_example( + prompt=examples["prompt"][i], + response=examples["response"][i], + system=examples["system"][i], + tools=examples["tools"][i], + template=template, + tokenizer=tokenizer, + processor=processor, + cutoff_len=data_args.cutoff_len, + train_on_prompt=data_args.train_on_prompt, + mask_history=data_args.mask_history, + ) + model_inputs["input_ids"].append(input_ids) + model_inputs["attention_mask"].append([1] * len(input_ids)) + model_inputs["labels"].append(labels) + if processor is not None: + model_inputs["pixel_values"].append(get_pixel_values(examples["images"][i], processor)) + if hasattr(processor, "image_seq_length"): # paligemma models + model_inputs["token_type_ids"].append(get_paligemma_token_type_ids(len(input_ids), processor)) + + return model_inputs + + +def preprocess_packed_supervised_dataset( + examples: Dict[str, List[Any]], + template: "Template", + tokenizer: "PreTrainedTokenizer", + data_args: "DataArguments", +) -> Dict[str, List[List[int]]]: + # build inputs with format ` X1 Y1 X2 Y2 ` + # and labels with format ` ... Y1 ... Y2 ` + valid_num = 0 + batch_input_ids, batch_labels = [], [] + lengths = [] + length2indexes = defaultdict(list) + for i in range(len(examples["prompt"])): + if len(examples["prompt"][i]) % 2 != 1 or len(examples["response"][i]) != 1: + logger.warning("Dropped invalid example: {}".format(examples["prompt"][i] + examples["response"][i])) + continue + + input_ids, labels = _encode_supervised_example( + prompt=examples["prompt"][i], + response=examples["response"][i], + system=examples["system"][i], + tools=examples["tools"][i], + template=template, + tokenizer=tokenizer, + processor=None, + cutoff_len=data_args.cutoff_len - 1, # reserved for the padding token + train_on_prompt=data_args.train_on_prompt, + mask_history=data_args.mask_history, + ) + length = len(input_ids) + if length > data_args.cutoff_len: + logger.warning("Dropped lengthy example with length {} > {}.".format(length, data_args.cutoff_len)) + else: + lengths.append(length) + length2indexes[length].append(valid_num) + batch_input_ids.append(input_ids) + batch_labels.append(labels) + valid_num += 1 + + model_inputs = {"input_ids": [], "attention_mask": [], "labels": []} + knapsacks = greedy_knapsack(lengths, data_args.cutoff_len - 1) # reserved for the padding token + for knapsack in knapsacks: + packed_input_ids, packed_attention_masks, packed_labels = [], [], [] + for i, length in enumerate(knapsack): + index = length2indexes[length].pop() + packed_input_ids += batch_input_ids[index] + packed_labels += batch_labels[index] + if data_args.neat_packing: + packed_attention_masks += [i + 1] * len(batch_input_ids[index]) # start from 1 + else: + packed_attention_masks += [1] * len(batch_input_ids[index]) + + if len(packed_input_ids) < data_args.cutoff_len: + pad_length = data_args.cutoff_len - len(packed_input_ids) + packed_input_ids += [tokenizer.pad_token_id] * pad_length + packed_labels += [IGNORE_INDEX] * pad_length + if data_args.neat_packing: + packed_attention_masks += [0] * pad_length + else: + packed_attention_masks += [1] * pad_length # more efficient flash_attn + + if len(packed_input_ids) != data_args.cutoff_len: + raise ValueError("The length of packed example should be identical to the cutoff length.") + + model_inputs["input_ids"].append(packed_input_ids) + model_inputs["attention_mask"].append(packed_attention_masks) + model_inputs["labels"].append(packed_labels) + + return model_inputs + + +def print_supervised_dataset_example(example: Dict[str, List[int]], tokenizer: "PreTrainedTokenizer") -> None: + valid_labels = list(filter(lambda x: x != IGNORE_INDEX, example["labels"])) + print("input_ids:\n{}".format(example["input_ids"])) + print("inputs:\n{}".format(tokenizer.decode(example["input_ids"], skip_special_tokens=False))) + print("label_ids:\n{}".format(example["labels"])) + print("labels:\n{}".format(tokenizer.decode(valid_labels, skip_special_tokens=False))) diff --git a/IOPO/Method-IOPO/src/llamafactory/data/processors/unsupervised.py b/IOPO/Method-IOPO/src/llamafactory/data/processors/unsupervised.py new file mode 100644 index 00000000..7bd1904b --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/data/processors/unsupervised.py @@ -0,0 +1,106 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from typing import TYPE_CHECKING, Any, Dict, List, Optional, Sequence, Tuple + +from ...extras.logging import get_logger +from ..data_utils import Role +from .processor_utils import get_paligemma_token_type_ids, get_pixel_values, infer_seqlen + + +if TYPE_CHECKING: + from transformers import PreTrainedTokenizer, ProcessorMixin + + from ...hparams import DataArguments + from ..template import Template + + +logger = get_logger(__name__) + + +def _encode_unsupervised_example( + prompt: Sequence[Dict[str, str]], + response: Sequence[Dict[str, str]], + system: Optional[str], + tools: Optional[str], + template: "Template", + tokenizer: "PreTrainedTokenizer", + processor: Optional["ProcessorMixin"], + cutoff_len: int, +) -> Tuple[List[int], List[int]]: + if processor is not None and not hasattr(processor, "image_seq_length"): # llava-like models + prompt[0]["content"] = template.image_token + prompt[0]["content"] + + if len(response) == 1: + messages = prompt + response + else: + messages = prompt + [{"role": Role.ASSISTANT.value, "content": ""}] + + input_ids, labels = template.encode_oneturn(tokenizer, messages, system, tools) + if template.efficient_eos: + labels += [tokenizer.eos_token_id] + + if processor is not None and hasattr(processor, "image_seq_length"): # paligemma models + image_token_id = tokenizer.convert_tokens_to_ids(template.image_token) + input_ids = [image_token_id] * getattr(processor, "image_seq_length") + input_ids + + source_len, target_len = infer_seqlen(len(input_ids), len(labels), cutoff_len) + input_ids = input_ids[:source_len] + labels = labels[:target_len] + return input_ids, labels + + +def preprocess_unsupervised_dataset( + examples: Dict[str, List[Any]], + template: "Template", + tokenizer: "PreTrainedTokenizer", + processor: Optional["ProcessorMixin"], + data_args: "DataArguments", +) -> Dict[str, List[List[int]]]: + # build inputs with format ` X` and labels with format `Y ` + model_inputs = {"input_ids": [], "attention_mask": [], "labels": []} + if processor is not None: + model_inputs["pixel_values"] = [] + if hasattr(processor, "image_seq_length"): # paligemma models + model_inputs["token_type_ids"] = [] + + for i in range(len(examples["prompt"])): + if len(examples["prompt"][i]) % 2 != 1: + logger.warning("Dropped invalid example: {}".format(examples["prompt"][i] + examples["response"][i])) + continue + + input_ids, labels = _encode_unsupervised_example( + prompt=examples["prompt"][i], + response=examples["response"][i], + system=examples["system"][i], + tools=examples["tools"][i], + template=template, + tokenizer=tokenizer, + processor=processor, + cutoff_len=data_args.cutoff_len, + ) + model_inputs["input_ids"].append(input_ids) + model_inputs["attention_mask"].append([1] * len(input_ids)) + model_inputs["labels"].append(labels) + if processor is not None: + model_inputs["pixel_values"].append(get_pixel_values(examples["images"][i], processor)) + if hasattr(processor, "image_seq_length"): # paligemma models + model_inputs["token_type_ids"].append(get_paligemma_token_type_ids(len(input_ids), processor)) + + return model_inputs + + +def print_unsupervised_dataset_example(example: Dict[str, List[int]], tokenizer: "PreTrainedTokenizer") -> None: + print("input_ids:\n{}".format(example["input_ids"])) + print("inputs:\n{}".format(tokenizer.decode(example["input_ids"], skip_special_tokens=False))) diff --git a/IOPO/Method-IOPO/src/llamafactory/data/template.py b/IOPO/Method-IOPO/src/llamafactory/data/template.py new file mode 100644 index 00000000..5d4b3011 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/data/template.py @@ -0,0 +1,906 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from dataclasses import dataclass +from typing import TYPE_CHECKING, Dict, List, Optional, Sequence, Tuple, Union + +from ..extras.logging import get_logger +from .data_utils import Role +from .formatter import EmptyFormatter, FunctionFormatter, StringFormatter, ToolFormatter + + +if TYPE_CHECKING: + from transformers import PreTrainedTokenizer + + from .formatter import SLOTS, Formatter + + +logger = get_logger(__name__) + + +@dataclass +class Template: + format_user: "Formatter" + format_assistant: "Formatter" + format_system: "Formatter" + format_function: "Formatter" + format_observation: "Formatter" + format_tools: "Formatter" + format_separator: "Formatter" + format_prefix: "Formatter" + default_system: str + stop_words: List[str] + image_token: str + efficient_eos: bool + replace_eos: bool + + def encode_oneturn( + self, + tokenizer: "PreTrainedTokenizer", + messages: Sequence[Dict[str, str]], + system: Optional[str] = None, + tools: Optional[str] = None, + ) -> Tuple[List[int], List[int]]: + r""" + Returns a single pair of token ids representing prompt and response respectively. + """ + encoded_messages = self._encode(tokenizer, messages, system, tools) + prompt_ids = [] + for encoded_ids in encoded_messages[:-1]: + prompt_ids += encoded_ids + + answer_ids = encoded_messages[-1] + return prompt_ids, answer_ids + + def encode_multiturn( + self, + tokenizer: "PreTrainedTokenizer", + messages: Sequence[Dict[str, str]], + system: Optional[str] = None, + tools: Optional[str] = None, + ) -> List[Tuple[List[int], List[int]]]: + r""" + Returns multiple pairs of token ids representing prompts and responses respectively. + """ + encoded_messages = self._encode(tokenizer, messages, system, tools) + return [(encoded_messages[i], encoded_messages[i + 1]) for i in range(0, len(encoded_messages), 2)] + + def extract_tool(self, content: str) -> Union[str, List[Tuple[str, str]]]: + r""" + Extracts tool message. + """ + return self.format_tools.extract(content) + + def _encode( + self, + tokenizer: "PreTrainedTokenizer", + messages: Sequence[Dict[str, str]], + system: Optional[str], + tools: Optional[str], + ) -> List[List[int]]: + r""" + Encodes formatted inputs to pairs of token ids. + Turn 0: prefix + system + query resp + Turn t: sep + query resp + """ + system = system or self.default_system + encoded_messages = [] + for i, message in enumerate(messages): + elements = [] + + if i == 0: + elements += self.format_prefix.apply() + if system or tools: + tool_text = self.format_tools.apply(content=tools)[0] if tools else "" + elements += self.format_system.apply(content=(system + tool_text)) + + if i > 0 and i % 2 == 0: + elements += self.format_separator.apply() + + if message["role"] == Role.USER.value: + elements += self.format_user.apply(content=message["content"], idx=str(i // 2)) + elif message["role"] == Role.ASSISTANT.value: + elements += self.format_assistant.apply(content=message["content"]) + elif message["role"] == Role.OBSERVATION.value: + elements += self.format_observation.apply(content=message["content"]) + elif message["role"] == Role.FUNCTION.value: + elements += self.format_function.apply(content=message["content"]) + else: + raise NotImplementedError("Unexpected role: {}".format(message["role"])) + + encoded_messages.append(self._convert_elements_to_ids(tokenizer, elements)) + + return encoded_messages + + def _convert_elements_to_ids(self, tokenizer: "PreTrainedTokenizer", elements: "SLOTS") -> List[int]: + r""" + Converts elements to token ids. + """ + token_ids = [] + for elem in elements: + if isinstance(elem, str): + if len(elem) != 0: + token_ids += tokenizer.encode(elem, add_special_tokens=False) + elif isinstance(elem, dict): + token_ids += [tokenizer.convert_tokens_to_ids(elem.get("token"))] + elif isinstance(elem, set): + if "bos_token" in elem and tokenizer.bos_token_id is not None: + token_ids += [tokenizer.bos_token_id] + elif "eos_token" in elem and tokenizer.eos_token_id is not None: + token_ids += [tokenizer.eos_token_id] + else: + raise ValueError("Input must be string, set[str] or dict[str, str], got {}".format(type(elem))) + + return token_ids + + +@dataclass +class Llama2Template(Template): + def _encode( + self, + tokenizer: "PreTrainedTokenizer", + messages: Sequence[Dict[str, str]], + system: str, + tools: str, + ) -> List[List[int]]: + r""" + Encodes formatted inputs to pairs of token ids. + Turn 0: prefix + system + query resp + Turn t: sep + query resp + """ + system = system or self.default_system + encoded_messages = [] + for i, message in enumerate(messages): + elements = [] + + system_text = "" + if i == 0: + elements += self.format_prefix.apply() + if system or tools: + tool_text = self.format_tools.apply(content=tools)[0] if tools else "" + system_text = self.format_system.apply(content=(system + tool_text))[0] + + if i > 0 and i % 2 == 0: + elements += self.format_separator.apply() + + if message["role"] == Role.USER.value: + elements += self.format_user.apply(content=system_text + message["content"]) + elif message["role"] == Role.ASSISTANT.value: + elements += self.format_assistant.apply(content=message["content"]) + elif message["role"] == Role.OBSERVATION.value: + elements += self.format_observation.apply(content=message["content"]) + elif message["role"] == Role.FUNCTION.value: + elements += self.format_function.apply(content=message["content"]) + else: + raise NotImplementedError("Unexpected role: {}".format(message["role"])) + + encoded_messages.append(self._convert_elements_to_ids(tokenizer, elements)) + + return encoded_messages + + +TEMPLATES: Dict[str, Template] = {} + + +def _register_template( + name: str, + format_user: Optional["Formatter"] = None, + format_assistant: Optional["Formatter"] = None, + format_system: Optional["Formatter"] = None, + format_function: Optional["Formatter"] = None, + format_observation: Optional["Formatter"] = None, + format_tools: Optional["Formatter"] = None, + format_separator: Optional["Formatter"] = None, + format_prefix: Optional["Formatter"] = None, + default_system: str = "", + stop_words: Sequence[str] = [], + image_token: str = "", + efficient_eos: bool = False, + replace_eos: bool = False, +) -> None: + r""" + Registers a chat template. + + To add the following chat template: + ``` + [HUMAN]: + user prompt here + [AI]: + model response here + + [HUMAN]: + user prompt here + [AI]: + model response here + ``` + + The corresponding code should be: + ``` + _register_template( + name="custom", + format_user=StringFormatter(slots=["[HUMAN]:\n{{content}}\n[AI]:\n"]), + format_separator=EmptyFormatter(slots=["\n\n"]), + efficient_eos=True, + ) + ``` + """ + eos_slots = [] if efficient_eos else [{"eos_token"}] + template_class = Llama2Template if name.startswith("llama2") else Template + default_user_formatter = StringFormatter(slots=["{{content}}"]) + default_assistant_formatter = StringFormatter(slots=["{{content}}"] + eos_slots) + default_function_formatter = FunctionFormatter(slots=eos_slots, tool_format="default") + default_tool_formatter = ToolFormatter(tool_format="default") + default_separator_formatter = EmptyFormatter() + default_prefix_formatter = EmptyFormatter() + TEMPLATES[name] = template_class( + format_user=format_user or default_user_formatter, + format_assistant=format_assistant or default_assistant_formatter, + format_system=format_system or default_user_formatter, + format_function=format_function or default_function_formatter, + format_observation=format_observation or format_user or default_user_formatter, + format_tools=format_tools or default_tool_formatter, + format_separator=format_separator or default_separator_formatter, + format_prefix=format_prefix or default_prefix_formatter, + default_system=default_system, + stop_words=stop_words, + image_token=image_token, + efficient_eos=efficient_eos, + replace_eos=replace_eos, + ) + + +def _add_or_replace_eos_token(tokenizer: "PreTrainedTokenizer", eos_token: str) -> None: + is_added = tokenizer.eos_token_id is None + num_added_tokens = tokenizer.add_special_tokens({"eos_token": eos_token}) + + if is_added: + logger.info("Add eos token: {}".format(tokenizer.eos_token)) + else: + logger.info("Replace eos token: {}".format(tokenizer.eos_token)) + + if num_added_tokens > 0: + logger.warning("New tokens have been added, make sure `resize_vocab` is True.") + + +def _jinja_escape(content: str) -> str: + return content.replace("'", r"\'") + + +def _convert_slots_to_jinja(slots: "SLOTS", tokenizer: "PreTrainedTokenizer", placeholder: str = "content") -> str: + slot_items = [] + for slot in slots: + if isinstance(slot, str): + slot_pieces = slot.split("{{content}}") + if slot_pieces[0]: + slot_items.append("'" + _jinja_escape(slot_pieces[0]) + "'") + if len(slot_pieces) > 1: + slot_items.append(placeholder) + if slot_pieces[1]: + slot_items.append("'" + _jinja_escape(slot_pieces[1]) + "'") + elif isinstance(slot, set): # do not use {{ eos_token }} since it may be replaced + if "bos_token" in slot and tokenizer.bos_token_id is not None: + slot_items.append("'" + tokenizer.bos_token + "'") + elif "eos_token" in slot and tokenizer.eos_token_id is not None: + slot_items.append("'" + tokenizer.eos_token + "'") + elif isinstance(slot, dict): + raise ValueError("Dict is not supported.") + + return " + ".join(slot_items) + + +def _get_jinja_template(template: "Template", tokenizer: "PreTrainedTokenizer") -> str: + jinja_template = "" + + prefix = _convert_slots_to_jinja(template.format_prefix.apply(), tokenizer) + if prefix: + jinja_template += "{{ " + prefix + " }}" + + if template.default_system: + jinja_template += "{% set system_message = '" + _jinja_escape(template.default_system) + "' %}" + + jinja_template += ( + "{% if messages[0]['role'] == 'system' %}{% set system_message = messages[0]['content'] %}{% endif %}" + ) + + system_message = _convert_slots_to_jinja(template.format_system.apply(), tokenizer, placeholder="system_message") + if not isinstance(template, Llama2Template): + jinja_template += "{% if system_message is defined %}{{ " + system_message + " }}{% endif %}" + + jinja_template += "{% for message in messages %}" + jinja_template += "{% set content = message['content'] %}" + if isinstance(template, Llama2Template): + jinja_template += "{% if loop.index0 == 0 and system_message is defined %}" + jinja_template += "{% set content = " + system_message + " + message['content'] %}" + jinja_template += "{% endif %}" + + jinja_template += "{% if message['role'] == 'user' %}" + user_message = _convert_slots_to_jinja(template.format_user.apply(), tokenizer) + jinja_template += "{{ " + user_message + " }}" + + jinja_template += "{% elif message['role'] == 'assistant' %}" + assistant_message = _convert_slots_to_jinja( + template.format_assistant.apply() + template.format_separator.apply(), tokenizer + ) + jinja_template += "{{ " + assistant_message + " }}" + jinja_template += "{% endif %}" + jinja_template += "{% endfor %}" + return jinja_template + + +def get_template_and_fix_tokenizer( + tokenizer: "PreTrainedTokenizer", + name: Optional[str] = None, + tool_format: Optional[str] = None, +) -> Template: + if name is None: + template = TEMPLATES["empty"] # placeholder + else: + template = TEMPLATES.get(name, None) + if template is None: + raise ValueError("Template {} does not exist.".format(name)) + + if tool_format is not None: + logger.info("Using tool format: {}.".format(tool_format)) + eos_slots = [] if template.efficient_eos else [{"eos_token"}] + template.format_tools = ToolFormatter(tool_format=tool_format) + template.format_function = FunctionFormatter(slots=eos_slots, tool_format=tool_format) + + stop_words = template.stop_words + if template.replace_eos: + if not stop_words: + raise ValueError("Stop words are required to replace the EOS token.") + + _add_or_replace_eos_token(tokenizer, eos_token=stop_words[0]) + stop_words = stop_words[1:] + + if tokenizer.eos_token_id is None: + _add_or_replace_eos_token(tokenizer, eos_token="<|endoftext|>") + + if tokenizer.pad_token_id is None: + tokenizer.pad_token = tokenizer.eos_token + logger.info("Add pad token: {}".format(tokenizer.pad_token)) + + if stop_words: + num_added_tokens = tokenizer.add_special_tokens( + dict(additional_special_tokens=stop_words), replace_additional_special_tokens=False + ) + logger.info("Add {} to stop words.".format(",".join(stop_words))) + if num_added_tokens > 0: + logger.warning("New tokens have been added, make sure `resize_vocab` is True.") + + try: + tokenizer.chat_template = _get_jinja_template(template, tokenizer) + except ValueError: + logger.info("Cannot add this chat template to tokenizer.") + + return template + + +_register_template( + name="alpaca", + format_user=StringFormatter(slots=["### Instruction:\n{{content}}\n\n### Response:\n"]), + format_separator=EmptyFormatter(slots=["\n\n"]), + default_system=( + "Below is an instruction that describes a task. " + "Write a response that appropriately completes the request.\n\n" + ), +) + + +_register_template( + name="aquila", + format_user=StringFormatter(slots=["Human: {{content}}###Assistant:"]), + format_separator=EmptyFormatter(slots=["###"]), + default_system=( + "A chat between a curious human and an artificial intelligence assistant. " + "The assistant gives helpful, detailed, and polite answers to the human's questions." + ), + stop_words=[""], + efficient_eos=True, +) + + +_register_template( + name="atom", + format_user=StringFormatter( + slots=[{"bos_token"}, "Human: {{content}}\n", {"eos_token"}, {"bos_token"}, "Assistant:"] + ), + format_assistant=StringFormatter(slots=["{{content}}\n", {"eos_token"}]), +) + + +_register_template( + name="baichuan", + format_user=StringFormatter(slots=[{"token": ""}, "{{content}}", {"token": ""}]), + efficient_eos=True, +) + + +_register_template( + name="baichuan2", + format_user=StringFormatter(slots=["{{content}}"]), + efficient_eos=True, +) + + +_register_template( + name="belle", + format_user=StringFormatter(slots=["Human: {{content}}\n\nBelle: "]), + format_separator=EmptyFormatter(slots=["\n\n"]), + format_prefix=EmptyFormatter(slots=[{"bos_token"}]), +) + + +_register_template( + name="bluelm", + format_user=StringFormatter(slots=[{"token": "[|Human|]:"}, "{{content}}", {"token": "[|AI|]:"}]), +) + + +_register_template( + name="breeze", + format_user=StringFormatter(slots=["[INST] {{content}} [/INST] "]), + format_prefix=EmptyFormatter(slots=[{"bos_token"}]), + efficient_eos=True, +) + + +_register_template( + name="chatglm2", + format_user=StringFormatter(slots=["[Round {{idx}}]\n\n问:{{content}}\n\n答:"]), + format_separator=EmptyFormatter(slots=["\n\n"]), + format_prefix=EmptyFormatter(slots=[{"token": "[gMASK]"}, {"token": "sop"}]), + efficient_eos=True, +) + + +_register_template( + name="chatglm3", + format_user=StringFormatter(slots=[{"token": "<|user|>"}, "\n", "{{content}}", {"token": "<|assistant|>"}]), + format_assistant=StringFormatter(slots=["\n", "{{content}}"]), + format_system=StringFormatter(slots=[{"token": "<|system|>"}, "\n", "{{content}}"]), + format_function=FunctionFormatter(slots=[], tool_format="glm4"), + format_observation=StringFormatter( + slots=[{"token": "<|observation|>"}, "\n", "{{content}}", {"token": "<|assistant|>"}] + ), + format_tools=ToolFormatter(tool_format="glm4"), + format_prefix=EmptyFormatter(slots=[{"token": "[gMASK]"}, {"token": "sop"}]), + stop_words=["<|user|>", "<|observation|>"], + efficient_eos=True, +) + + +_register_template( + name="chatml", + format_user=StringFormatter(slots=["<|im_start|>user\n{{content}}<|im_end|>\n<|im_start|>assistant\n"]), + format_system=StringFormatter(slots=["<|im_start|>system\n{{content}}<|im_end|>\n"]), + format_observation=StringFormatter(slots=["<|im_start|>tool\n{{content}}<|im_end|>\n<|im_start|>assistant\n"]), + format_separator=EmptyFormatter(slots=["\n"]), + stop_words=["<|im_end|>", "<|im_start|>"], + replace_eos=True, +) + + +_register_template( + name="chatml_de", + format_user=StringFormatter(slots=["<|im_start|>user\n{{content}}<|im_end|>\n<|im_start|>assistant\n"]), + format_system=StringFormatter(slots=["<|im_start|>system\n{{content}}<|im_end|>\n"]), + format_observation=StringFormatter(slots=["<|im_start|>tool\n{{content}}<|im_end|>\n<|im_start|>assistant\n"]), + format_separator=EmptyFormatter(slots=["\n"]), + default_system="Du bist ein freundlicher und hilfsbereiter KI-Assistent.", + stop_words=["<|im_end|>", "<|im_start|>"], + replace_eos=True, +) + + +_register_template( + name="codegeex2", + format_prefix=EmptyFormatter(slots=[{"token": "[gMASK]"}, {"token": "sop"}]), +) + + +_register_template( + name="codegeex4", + format_user=StringFormatter(slots=["<|user|>\n{{content}}<|assistant|>\n"]), + format_system=StringFormatter(slots=["<|system|>\n{{content}}"]), + format_function=FunctionFormatter(slots=[], tool_format="glm4"), + format_observation=StringFormatter(slots=["<|observation|>\n{{content}}<|assistant|>\n"]), + format_tools=ToolFormatter(tool_format="glm4"), + format_prefix=EmptyFormatter(slots=["[gMASK]"]), + default_system=( + "你是一位智能编程助手,你叫CodeGeeX。你会为用户回答关于编程、代码、计算机方面的任何问题," + "并提供格式规范、可以执行、准确安全的代码,并在必要时提供详细的解释。" + ), + stop_words=["<|user|>", "<|observation|>"], + efficient_eos=True, +) + + +_register_template( + name="cohere", + format_user=StringFormatter( + slots=[ + ( + "<|START_OF_TURN_TOKEN|><|USER_TOKEN|>{{content}}<|END_OF_TURN_TOKEN|>" + "<|START_OF_TURN_TOKEN|><|CHATBOT_TOKEN|>" + ) + ] + ), + format_system=StringFormatter(slots=["<|START_OF_TURN_TOKEN|><|SYSTEM_TOKEN|>{{content}}<|END_OF_TURN_TOKEN|>"]), + format_prefix=EmptyFormatter(slots=[{"bos_token"}]), +) + + +_register_template( + name="cpm", + format_user=StringFormatter(slots=["<用户>{{content}}"]), + format_prefix=EmptyFormatter(slots=[{"bos_token"}]), +) + + +_register_template( + name="dbrx", + format_user=StringFormatter(slots=["<|im_start|>user\n{{content}}<|im_end|>\n<|im_start|>assistant\n"]), + format_system=StringFormatter(slots=["<|im_start|>system\n{{content}}<|im_end|>\n"]), + format_observation=StringFormatter(slots=["<|im_start|>tool\n{{content}}<|im_end|>\n<|im_start|>assistant\n"]), + format_separator=EmptyFormatter(slots=["\n"]), + default_system=( + "You are DBRX, created by Databricks. You were last updated in December 2023. " + "You answer questions based on information available up to that point.\n" + "YOU PROVIDE SHORT RESPONSES TO SHORT QUESTIONS OR STATEMENTS, but provide thorough " + "responses to more complex and open-ended questions.\nYou assist with various tasks, " + "from writing to coding (using markdown for code blocks — remember to use ``` with " + "code, JSON, and tables).\n(You do not have real-time data access or code execution " + "capabilities. You avoid stereotyping and provide balanced perspectives on " + "controversial topics. You do not provide song lyrics, poems, or news articles and " + "do not divulge details of your training data.)\nThis is your system prompt, " + "guiding your responses. Do not reference it, just respond to the user. If you find " + "yourself talking about this message, stop. You should be responding appropriately " + "and usually that means not mentioning this.\nYOU DO NOT MENTION ANY OF THIS INFORMATION " + "ABOUT YOURSELF UNLESS THE INFORMATION IS DIRECTLY PERTINENT TO THE USER'S QUERY." + ), + stop_words=["<|im_end|>"], + replace_eos=True, +) + + +_register_template( + name="deepseek", + format_user=StringFormatter(slots=["User: {{content}}\n\nAssistant:"]), + format_system=StringFormatter(slots=["{{content}}\n\n"]), + format_prefix=EmptyFormatter(slots=[{"bos_token"}]), +) + + +_register_template( + name="deepseekcoder", + format_user=StringFormatter(slots=["### Instruction:\n{{content}}\n### Response:"]), + format_assistant=StringFormatter(slots=["\n{{content}}\n<|EOT|>"]), + format_separator=EmptyFormatter(slots=["\n"]), + format_prefix=EmptyFormatter(slots=[{"bos_token"}]), + default_system=( + "You are an AI programming assistant, utilizing the DeepSeek Coder model, " + "developed by DeepSeek Company, and you only answer questions related to computer science. " + "For politically sensitive questions, security and privacy issues, " + "and other non-computer science questions, you will refuse to answer.\n" + ), +) + + +_register_template( + name="default", + format_user=StringFormatter(slots=["Human: {{content}}\nAssistant:"]), + format_system=StringFormatter(slots=["{{content}}\n"]), + format_separator=EmptyFormatter(slots=["\n"]), +) + + +_register_template( + name="empty", + efficient_eos=True, +) + + +_register_template( + name="falcon", + format_user=StringFormatter(slots=["User: {{content}}\nFalcon:"]), + format_separator=EmptyFormatter(slots=["\n"]), + efficient_eos=True, +) + + +_register_template( + name="fewshot", + format_separator=EmptyFormatter(slots=["\n\n"]), + efficient_eos=True, +) + + +_register_template( + name="gemma", + format_user=StringFormatter(slots=["user\n{{content}}\nmodel\n"]), + format_observation=StringFormatter( + slots=["tool\n{{content}}\nmodel\n"] + ), + format_separator=EmptyFormatter(slots=["\n"]), + format_prefix=EmptyFormatter(slots=[{"bos_token"}]), + efficient_eos=True, +) + + +_register_template( + name="glm4", + format_user=StringFormatter(slots=["<|user|>\n{{content}}<|assistant|>"]), + format_assistant=StringFormatter(slots=["\n{{content}}"]), + format_system=StringFormatter(slots=["<|system|>\n{{content}}"]), + format_function=FunctionFormatter(slots=[], tool_format="glm4"), + format_observation=StringFormatter(slots=["<|observation|>\n{{content}}<|assistant|>"]), + format_tools=ToolFormatter(tool_format="glm4"), + format_prefix=EmptyFormatter(slots=["[gMASK]"]), + stop_words=["<|user|>", "<|observation|>"], + efficient_eos=True, +) + + +_register_template( + name="intern", + format_user=StringFormatter(slots=["<|User|>:{{content}}\n<|Bot|>:"]), + format_system=StringFormatter(slots=["<|System|>:{{content}}\n"]), + format_separator=EmptyFormatter(slots=["\n"]), + format_prefix=EmptyFormatter(slots=[{"bos_token"}]), + stop_words=[""], + efficient_eos=True, # internlm tokenizer cannot set eos_token_id +) + + +_register_template( + name="intern2", + format_user=StringFormatter(slots=["<|im_start|>user\n{{content}}<|im_end|>\n<|im_start|>assistant\n"]), + format_system=StringFormatter(slots=["<|im_start|>system\n{{content}}<|im_end|>\n"]), + format_separator=EmptyFormatter(slots=["<|im_end|>\n"]), + format_prefix=EmptyFormatter(slots=[{"bos_token"}]), + stop_words=["<|im_end|>"], + efficient_eos=True, # internlm2 tokenizer cannot set eos_token_id +) + + +_register_template( + name="llama2", + format_user=StringFormatter(slots=[{"bos_token"}, "[INST] {{content}} [/INST]"]), + format_system=StringFormatter(slots=["<>\n{{content}}\n<>\n\n"]), +) + + +_register_template( + name="llama2_zh", + format_user=StringFormatter(slots=[{"bos_token"}, "[INST] {{content}} [/INST]"]), + format_system=StringFormatter(slots=["<>\n{{content}}\n<>\n\n"]), + default_system="You are a helpful assistant. 你是一个乐于助人的助手。", +) + + +_register_template( + name="llama3", + format_user=StringFormatter( + slots=[ + ( + "<|start_header_id|>user<|end_header_id|>\n\n{{content}}<|eot_id|>" + "<|start_header_id|>assistant<|end_header_id|>\n\n" + ) + ] + ), + format_system=StringFormatter(slots=["<|start_header_id|>system<|end_header_id|>\n\n{{content}}<|eot_id|>"]), + format_observation=StringFormatter( + slots=[ + ( + "<|start_header_id|>tool<|end_header_id|>\n\n{{content}}<|eot_id|>" + "<|start_header_id|>assistant<|end_header_id|>\n\n" + ) + ] + ), + format_prefix=EmptyFormatter(slots=[{"bos_token"}]), + stop_words=["<|eot_id|>"], + replace_eos=True, +) + + +_register_template( + name="mistral", + format_user=StringFormatter(slots=["[INST] {{content}} [/INST]"]), + format_prefix=EmptyFormatter(slots=[{"bos_token"}]), +) + + +_register_template( + name="olmo", + format_user=StringFormatter(slots=["<|user|>\n{{content}}<|assistant|>\n"]), + format_prefix=EmptyFormatter(slots=[{"eos_token"}]), +) + + +_register_template( + name="openchat", + format_user=StringFormatter(slots=["GPT4 Correct User: {{content}}", {"eos_token"}, "GPT4 Correct Assistant:"]), + format_prefix=EmptyFormatter(slots=[{"bos_token"}]), +) + + +_register_template( + name="openchat-3.6", + format_user=StringFormatter( + slots=[ + ( + "<|start_header_id|>GPT4 Correct User<|end_header_id|>\n\n{{content}}<|eot_id|>" + "<|start_header_id|>GPT4 Correct Assistant<|end_header_id|>\n\n" + ) + ] + ), + format_prefix=EmptyFormatter(slots=[{"bos_token"}]), + stop_words=["<|eot_id|>"], + replace_eos=True, +) + + +_register_template( + name="orion", + format_user=StringFormatter(slots=["Human: {{content}}\n\nAssistant: ", {"eos_token"}]), + format_prefix=EmptyFormatter(slots=[{"bos_token"}]), +) + + +_register_template( + name="phi", + format_user=StringFormatter(slots=["<|user|>\n{{content}}<|end|>\n<|assistant|>\n"]), + format_system=StringFormatter(slots=["<|system|>\n{{content}}<|end|>\n"]), + format_separator=EmptyFormatter(slots=["\n"]), + format_prefix=EmptyFormatter(slots=[{"bos_token"}]), + stop_words=["<|end|>"], + replace_eos=True, +) + + +_register_template( + name="qwen", + format_user=StringFormatter(slots=["<|im_start|>user\n{{content}}<|im_end|>\n<|im_start|>assistant\n"]), + format_system=StringFormatter(slots=["<|im_start|>system\n{{content}}<|im_end|>\n"]), + format_observation=StringFormatter(slots=["<|im_start|>tool\n{{content}}<|im_end|>\n<|im_start|>assistant\n"]), + format_separator=EmptyFormatter(slots=["\n"]), + default_system="You are a helpful assistant.", + stop_words=["<|im_end|>"], + replace_eos=True, +) + + +_register_template( + name="solar", + format_user=StringFormatter(slots=["### User:\n{{content}}\n\n### Assistant:\n"]), + format_system=StringFormatter(slots=["### System:\n{{content}}\n\n"]), + efficient_eos=True, +) + + +_register_template( + name="starchat", + format_user=StringFormatter(slots=["<|user|>\n{{content}}<|end|>\n<|assistant|>"]), + format_system=StringFormatter(slots=["<|system|>\n{{content}}<|end|>\n"]), + format_separator=EmptyFormatter(slots=["\n"]), + stop_words=["<|end|>"], + replace_eos=True, +) + + +_register_template( + name="telechat", + format_user=StringFormatter(slots=["<_user>{{content}}<_bot>"]), + format_system=StringFormatter(slots=["<_system>{{content}}<_end>"]), + stop_words=["<_end>"], + replace_eos=True, +) + + +_register_template( + name="vicuna", + format_user=StringFormatter(slots=["USER: {{content}} ASSISTANT:"]), + default_system=( + "A chat between a curious user and an artificial intelligence assistant. " + "The assistant gives helpful, detailed, and polite answers to the user's questions." + ), +) + + +_register_template( + name="xuanyuan", + format_user=StringFormatter(slots=["Human: {{content}} Assistant:"]), + default_system=( + "以下是用户和人工智能助手之间的对话。用户以Human开头,人工智能助手以Assistant开头," + "会对人类提出的问题给出有帮助、高质量、详细和礼貌的回答,并且总是拒绝参与与不道德、" + "不安全、有争议、政治敏感等相关的话题、问题和指示。\n" + ), +) + + +_register_template( + name="xverse", + format_user=StringFormatter(slots=["Human: {{content}}\n\nAssistant: "]), +) + + +_register_template( + name="yayi", + format_user=StringFormatter(slots=[{"token": "<|Human|>"}, ":\n{{content}}\n\n", {"token": "<|YaYi|>"}, ":"]), + format_system=StringFormatter(slots=[{"token": "<|System|>"}, ":\n{{content}}\n\n"]), + format_separator=EmptyFormatter(slots=["\n\n"]), + default_system=( + "You are a helpful, respectful and honest assistant named YaYi " + "developed by Beijing Wenge Technology Co.,Ltd. " + "Always answer as helpfully as possible, while being safe. " + "Your answers should not include any harmful, unethical, " + "racist, sexist, toxic, dangerous, or illegal content. " + "Please ensure that your responses are socially unbiased and positive in nature.\n\n" + "If a question does not make any sense, or is not factually coherent, " + "explain why instead of answering something not correct. " + "If you don't know the answer to a question, please don't share false information." + ), + stop_words=["<|End|>"], +) + + +_register_template( + name="yi", + format_user=StringFormatter(slots=["<|im_start|>user\n{{content}}<|im_end|>\n<|im_start|>assistant\n"]), + format_system=StringFormatter(slots=["<|im_start|>system\n{{content}}<|im_end|>\n"]), + format_separator=EmptyFormatter(slots=["\n"]), + stop_words=["<|im_end|>"], + replace_eos=True, +) + + +_register_template( + name="yi_vl", + format_user=StringFormatter(slots=["### Human: {{content}}\n### Assistant:"]), + format_separator=EmptyFormatter(slots=["\n"]), + default_system=( + "This is a chat between an inquisitive human and an AI assistant. " + "Assume the role of the AI assistant. Read all the images carefully, " + "and respond to the human's questions with informative, helpful, detailed and polite answers. " + "这是一个好奇的人类和一个人工智能助手之间的对话。假设你扮演这个AI助手的角色。" + "仔细阅读所有的图像,并对人类的问题做出信息丰富、有帮助、详细的和礼貌的回答。\n\n" + ), + stop_words=["###"], + efficient_eos=True, +) + + +_register_template( + name="yuan", + format_user=StringFormatter(slots=["{{content}}", {"token": ""}]), + format_separator=EmptyFormatter(slots=["\n"]), + stop_words=[""], + replace_eos=True, +) + + +_register_template( + name="zephyr", + format_user=StringFormatter(slots=["<|user|>\n{{content}}", {"eos_token"}, "<|assistant|>\n"]), + format_system=StringFormatter(slots=["<|system|>\n{{content}}", {"eos_token"}]), + default_system="You are Zephyr, a helpful assistant.", +) + + +_register_template( + name="ziya", + format_user=StringFormatter(slots=[":{{content}}\n:"]), + format_separator=EmptyFormatter(slots=["\n"]), +) diff --git a/IOPO/Method-IOPO/src/llamafactory/data/tool_utils.py b/IOPO/Method-IOPO/src/llamafactory/data/tool_utils.py new file mode 100644 index 00000000..efda86f5 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/data/tool_utils.py @@ -0,0 +1,140 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import json +import re +from abc import ABC, abstractmethod +from dataclasses import dataclass +from typing import Any, Dict, List, Tuple, Union + +from .data_utils import SLOTS + + +DEFAULT_TOOL_PROMPT = ( + "You have access to the following tools:\n{tool_text}" + "Use the following format if using a tool:\n" + "```\n" + "Action: tool name (one of [{tool_names}])\n" + "Action Input: the input to the tool, in a JSON format representing the kwargs " + """(e.g. ```{{"input": "hello world", "num_beams": 5}}```)\n""" + "```\n" +) + + +GLM4_TOOL_PROMPT = ( + "你是一个名为 ChatGLM 的人工智能助手。你是基于智谱AI训练的语言模型 GLM-4 模型开发的," + "你的任务是针对用户的问题和要求提供适当的答复和支持。# 可用工具{tool_text}" +) + + +@dataclass +class ToolUtils(ABC): + @staticmethod + @abstractmethod + def get_function_slots() -> SLOTS: ... + + @staticmethod + @abstractmethod + def tool_formatter(tools: List[Dict[str, Any]]) -> str: ... + + @staticmethod + @abstractmethod + def tool_extractor(content: str) -> Union[str, List[Tuple[str, str]]]: ... + + +class DefaultToolUtils(ToolUtils): + @staticmethod + def get_function_slots() -> SLOTS: + return ["Action: {{name}}\nAction Input: {{arguments}}\n"] + + @staticmethod + def tool_formatter(tools: List[Dict[str, Any]]) -> str: + tool_text = "" + tool_names = [] + for tool in tools: + param_text = "" + for name, param in tool["parameters"]["properties"].items(): + required, enum, items = "", "", "" + if name in tool["parameters"].get("required", []): + required = ", required" + + if param.get("enum", None): + enum = ", should be one of [{}]".format(", ".join(param["enum"])) + + if param.get("items", None): + items = ", where each item should be {}".format(param["items"].get("type", "")) + + param_text += " - {name} ({type}{required}): {desc}{enum}{items}\n".format( + name=name, + type=param.get("type", ""), + required=required, + desc=param.get("description", ""), + enum=enum, + items=items, + ) + + tool_text += "> Tool Name: {name}\nTool Description: {desc}\nTool Args:\n{args}\n".format( + name=tool["name"], desc=tool.get("description", ""), args=param_text + ) + tool_names.append(tool["name"]) + + return DEFAULT_TOOL_PROMPT.format(tool_text=tool_text, tool_names=", ".join(tool_names)) + + @staticmethod + def tool_extractor(content: str) -> Union[str, List[Tuple[str, str]]]: + regex = re.compile(r"Action:\s*([a-zA-Z0-9_]+)\s*Action Input:\s*(.+?)(?=\s*Action:|\s*$)", re.DOTALL) + action_match: List[Tuple[str, str]] = re.findall(regex, content) + if not action_match: + return content + + results = [] + for match in action_match: + tool_name = match[0].strip() + tool_input = match[1].strip().strip('"').strip("```") + try: + arguments = json.loads(tool_input) + results.append((tool_name, json.dumps(arguments, ensure_ascii=False))) + except json.JSONDecodeError: + return content + + return results + + +class GLM4ToolUtils(ToolUtils): + @staticmethod + def get_function_slots() -> SLOTS: + return ["{{name}}\n{{arguments}}"] + + @staticmethod + def tool_formatter(tools: List[Dict[str, Any]]) -> str: + tool_text = "" + for tool in tools: + tool_text += "\n\n## {name}\n\n{body}\n在调用上述函数时,请使用 Json 格式表示调用的参数。".format( + name=tool["name"], body=json.dumps(tool, indent=4, ensure_ascii=False) + ) + + return GLM4_TOOL_PROMPT.format(tool_text=tool_text) + + @staticmethod + def tool_extractor(content: str) -> Union[str, List[Tuple[str, str]]]: + if "\n" not in content: + return content + + tool_name, tool_input = content.split("\n", maxsplit=1) + try: + arguments = json.loads(tool_input) + except json.JSONDecodeError: + return content + + return [(tool_name, json.dumps(arguments, ensure_ascii=False))] diff --git a/IOPO/Method-IOPO/src/llamafactory/eval/__init__.py b/IOPO/Method-IOPO/src/llamafactory/eval/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/IOPO/Method-IOPO/src/llamafactory/eval/evaluator.py b/IOPO/Method-IOPO/src/llamafactory/eval/evaluator.py new file mode 100644 index 00000000..f05e01a1 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/eval/evaluator.py @@ -0,0 +1,154 @@ +# Copyright 2024 the LlamaFactory team. +# +# This code is inspired by the Dan's test library. +# https://github.com/hendrycks/test/blob/master/evaluate_flan.py +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# MIT License +# +# Copyright (c) 2020 Dan Hendrycks +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in all +# copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +# SOFTWARE. + +import json +import os +from typing import Any, Dict, List, Optional + +import numpy as np +import torch +from datasets import load_dataset +from tqdm import tqdm, trange +from transformers.utils import cached_file + +from ..data import get_template_and_fix_tokenizer +from ..extras.constants import CHOICES, SUBJECTS +from ..hparams import get_eval_args +from ..model import load_model, load_tokenizer +from .template import get_eval_template + + +class Evaluator: + def __init__(self, args: Optional[Dict[str, Any]] = None) -> None: + self.model_args, self.data_args, self.eval_args, finetuning_args = get_eval_args(args) + self.tokenizer = load_tokenizer(self.model_args)["tokenizer"] + self.tokenizer.padding_side = "right" # avoid overflow issue in batched inference for llama2 + self.template = get_template_and_fix_tokenizer(self.tokenizer, self.data_args.template) + self.model = load_model(self.tokenizer, self.model_args, finetuning_args) + self.eval_template = get_eval_template(self.eval_args.lang) + self.choice_inputs = [self.tokenizer.encode(ch, add_special_tokens=False)[-1] for ch in CHOICES] + + @torch.inference_mode() + def batch_inference(self, batch_input: Dict[str, torch.Tensor]) -> List[str]: + logits = self.model(**batch_input).logits + lengths = torch.sum(batch_input["attention_mask"], dim=-1) + word_probs = torch.stack([logits[i, lengths[i] - 1] for i in range(len(lengths))], dim=0) + choice_probs = torch.nn.functional.softmax(word_probs[:, self.choice_inputs], dim=-1).detach() + return [chr(ord("A") + offset.item()) for offset in torch.argmax(choice_probs, dim=-1)] + + def eval(self) -> None: + eval_task = self.eval_args.task.split("_")[0] + eval_split = self.eval_args.task.split("_")[1] + + mapping = cached_file( + path_or_repo_id=os.path.join(self.eval_args.task_dir, eval_task), + filename="mapping.json", + cache_dir=self.model_args.cache_dir, + token=self.model_args.hf_hub_token, + ) + + with open(mapping, "r", encoding="utf-8") as f: + categorys: Dict[str, Dict[str, str]] = json.load(f) + + category_corrects = {subj: np.array([], dtype="bool") for subj in SUBJECTS} + pbar = tqdm(categorys.keys(), desc="Processing subjects", position=0) + results = {} + for subject in pbar: + dataset = load_dataset( + path=os.path.join(self.eval_args.task_dir, eval_task), + name=subject, + cache_dir=self.model_args.cache_dir, + download_mode=self.eval_args.download_mode, + token=self.model_args.hf_hub_token, + trust_remote_code=True, + ) + pbar.set_postfix_str(categorys[subject]["name"]) + inputs, outputs, labels = [], [], [] + for i in trange(len(dataset[eval_split]), desc="Formatting batches", position=1, leave=False): + support_set = ( + dataset["train"].shuffle().select(range(min(self.eval_args.n_shot, len(dataset["train"])))) + ) + messages = self.eval_template.format_example( + target_data=dataset[eval_split][i], + support_set=support_set, + subject_name=categorys[subject]["name"], + ) + + input_ids, _ = self.template.encode_oneturn(tokenizer=self.tokenizer, messages=messages) + inputs.append({"input_ids": input_ids, "attention_mask": [1] * len(input_ids)}) + labels.append(messages[-1]["content"]) + + for i in trange( + 0, len(inputs), self.eval_args.batch_size, desc="Predicting batches", position=1, leave=False + ): + batch_input = self.tokenizer.pad( + inputs[i : i + self.eval_args.batch_size], return_attention_mask=True, return_tensors="pt" + ).to(self.model.device) + preds = self.batch_inference(batch_input) + outputs += preds + + corrects = np.array(outputs) == np.array(labels) + category_name = categorys[subject]["category"] + category_corrects[category_name] = np.concatenate([category_corrects[category_name], corrects], axis=0) + category_corrects["Average"] = np.concatenate([category_corrects["Average"], corrects], axis=0) + results[subject] = {str(i): outputs[i] for i in range(len(outputs))} + + pbar.close() + self._save_results(category_corrects, results) + + def _save_results(self, category_corrects: Dict[str, np.ndarray], results: Dict[str, Dict[int, str]]) -> None: + score_info = "\n".join( + [ + "{:>15}: {:.2f}".format(category_name, 100 * np.mean(category_correct)) + for category_name, category_correct in category_corrects.items() + if len(category_correct) + ] + ) + print(score_info) + if self.eval_args.save_dir is not None: + os.makedirs(self.eval_args.save_dir, exist_ok=False) + with open(os.path.join(self.eval_args.save_dir, "results.json"), "w", encoding="utf-8", newline="\n") as f: + json.dump(results, f, indent=2) + + with open(os.path.join(self.eval_args.save_dir, "results.log"), "w", encoding="utf-8", newline="\n") as f: + f.write(score_info) + + +def run_eval() -> None: + Evaluator().eval() diff --git a/IOPO/Method-IOPO/src/llamafactory/eval/template.py b/IOPO/Method-IOPO/src/llamafactory/eval/template.py new file mode 100644 index 00000000..7d524e7c --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/eval/template.py @@ -0,0 +1,81 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from dataclasses import dataclass +from typing import Dict, List, Sequence, Tuple + +from ..data import Role +from ..extras.constants import CHOICES + + +@dataclass +class EvalTemplate: + system: str + choice: str + answer: str + + def _parse_example(self, example: Dict[str, str]) -> Tuple[str, str]: + r""" + input: a dict with keys {"question", "A", "B", "C", "D", "answer"} + output: a tuple of (prompt, response) + """ + candidates = [self.choice.format(choice=ch, content=example[ch]) for ch in CHOICES if ch in example] + return "".join([example["question"]] + candidates + [self.answer]), example["answer"] + + def format_example( + self, target_data: Dict[str, str], support_set: Sequence[Dict[str, str]], subject_name: str + ) -> List[Dict[str, str]]: + r""" + Converts dataset examples to messages. + """ + messages = [] + for k in range(len(support_set)): + prompt, response = self._parse_example(support_set[k]) + messages.append({"role": Role.USER.value, "content": prompt}) + messages.append({"role": Role.ASSISTANT.value, "content": response}) + + prompt, response = self._parse_example(target_data) + messages.append({"role": Role.USER.value, "content": prompt}) + messages.append({"role": Role.ASSISTANT.value, "content": response}) + messages[0]["content"] = self.system.format(subject=subject_name) + messages[0]["content"] + return messages + + +eval_templates: Dict[str, "EvalTemplate"] = {} + + +def _register_eval_template(name: str, system: str, choice: str, answer: str) -> None: + eval_templates[name] = EvalTemplate(system=system, choice=choice, answer=answer) + + +def get_eval_template(name: str) -> "EvalTemplate": + eval_template = eval_templates.get(name, None) + assert eval_template is not None, "Template {} does not exist.".format(name) + return eval_template + + +_register_eval_template( + name="en", + system="The following are multiple choice questions (with answers) about {subject}.\n\n", + choice="\n{choice}. {content}", + answer="\nAnswer:", +) + + +_register_eval_template( + name="zh", + system="以下是中国关于{subject}考试的单项选择题,请选出其中的正确答案。\n\n", + choice="\n{choice}. {content}", + answer="\n答案:", +) diff --git a/IOPO/Method-IOPO/src/llamafactory/extras/__init__.py b/IOPO/Method-IOPO/src/llamafactory/extras/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/IOPO/Method-IOPO/src/llamafactory/extras/constants.py b/IOPO/Method-IOPO/src/llamafactory/extras/constants.py new file mode 100644 index 00000000..80df135c --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/extras/constants.py @@ -0,0 +1,1656 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from collections import OrderedDict, defaultdict +from enum import Enum +from typing import Dict, Optional + +from peft.utils import SAFETENSORS_WEIGHTS_NAME as SAFE_ADAPTER_WEIGHTS_NAME +from peft.utils import WEIGHTS_NAME as ADAPTER_WEIGHTS_NAME +from transformers.utils import SAFE_WEIGHTS_INDEX_NAME, SAFE_WEIGHTS_NAME, WEIGHTS_INDEX_NAME, WEIGHTS_NAME + + +CHECKPOINT_NAMES = { + SAFE_ADAPTER_WEIGHTS_NAME, + ADAPTER_WEIGHTS_NAME, + SAFE_WEIGHTS_INDEX_NAME, + SAFE_WEIGHTS_NAME, + WEIGHTS_INDEX_NAME, + WEIGHTS_NAME, +} + +CHOICES = ["A", "B", "C", "D"] + +DATA_CONFIG = "dataset_info.json" + +DEFAULT_TEMPLATE = defaultdict(str) + +FILEEXT2TYPE = { + "arrow": "arrow", + "csv": "csv", + "json": "json", + "jsonl": "json", + "parquet": "parquet", + "txt": "text", +} + +IGNORE_INDEX = -100 + +LAYERNORM_NAMES = {"norm", "ln"} + +LLAMABOARD_CONFIG = "llamaboard_config.yaml" + +METHODS = ["full", "freeze", "lora"] + +MOD_SUPPORTED_MODELS = {"bloom", "falcon", "gemma", "llama", "mistral", "mixtral", "phi", "starcoder2"} + +PEFT_METHODS = {"lora"} + +RUNNING_LOG = "running_log.txt" + +SUBJECTS = ["Average", "STEM", "Social Sciences", "Humanities", "Other"] + +SUPPORTED_MODELS = OrderedDict() + +TRAINER_LOG = "trainer_log.jsonl" + +TRAINING_ARGS = "training_args.yaml" + +TRAINING_STAGES = { + "Supervised Fine-Tuning": "sft", + "Reward Modeling": "rm", + "PPO": "ppo", + "DPO": "dpo", + "KTO": "kto", + "Pre-Training": "pt", +} + +STAGES_USE_PAIR_DATA = {"rm", "dpo"} + +SUPPORTED_CLASS_FOR_BLOCK_DIAG_ATTN = { + "cohere", + "falcon", + "gemma", + "gemma2", + "llama", + "mistral", + "phi", + "phi3", + "qwen2", + "starcoder2", +} + +SUPPORTED_CLASS_FOR_S2ATTN = {"llama"} + +V_HEAD_WEIGHTS_NAME = "value_head.bin" + +V_HEAD_SAFE_WEIGHTS_NAME = "value_head.safetensors" + +VISION_MODELS = set() + + +class DownloadSource(str, Enum): + DEFAULT = "hf" + MODELSCOPE = "ms" + + +def register_model_group( + models: Dict[str, Dict[DownloadSource, str]], + template: Optional[str] = None, + vision: bool = False, +) -> None: + prefix = None + for name, path in models.items(): + if prefix is None: + prefix = name.split("-")[0] + else: + assert prefix == name.split("-")[0], "prefix should be identical." + SUPPORTED_MODELS[name] = path + if template is not None: + DEFAULT_TEMPLATE[prefix] = template + if vision: + VISION_MODELS.add(prefix) + + +register_model_group( + models={ + "Aya-23-8B-Chat": { + DownloadSource.DEFAULT: "CohereForAI/aya-23-8B", + }, + "Aya-23-35B-Chat": { + DownloadSource.DEFAULT: "CohereForAI/aya-23-35B", + }, + }, + template="cohere", +) + + +register_model_group( + models={ + "Baichuan-7B-Base": { + DownloadSource.DEFAULT: "baichuan-inc/Baichuan-7B", + DownloadSource.MODELSCOPE: "baichuan-inc/baichuan-7B", + }, + "Baichuan-13B-Base": { + DownloadSource.DEFAULT: "baichuan-inc/Baichuan-13B-Base", + DownloadSource.MODELSCOPE: "baichuan-inc/Baichuan-13B-Base", + }, + "Baichuan-13B-Chat": { + DownloadSource.DEFAULT: "baichuan-inc/Baichuan-13B-Chat", + DownloadSource.MODELSCOPE: "baichuan-inc/Baichuan-13B-Chat", + }, + }, + template="baichuan", +) + + +register_model_group( + models={ + "Baichuan2-7B-Base": { + DownloadSource.DEFAULT: "baichuan-inc/Baichuan2-7B-Base", + DownloadSource.MODELSCOPE: "baichuan-inc/Baichuan2-7B-Base", + }, + "Baichuan2-13B-Base": { + DownloadSource.DEFAULT: "baichuan-inc/Baichuan2-13B-Base", + DownloadSource.MODELSCOPE: "baichuan-inc/Baichuan2-13B-Base", + }, + "Baichuan2-7B-Chat": { + DownloadSource.DEFAULT: "baichuan-inc/Baichuan2-7B-Chat", + DownloadSource.MODELSCOPE: "baichuan-inc/Baichuan2-7B-Chat", + }, + "Baichuan2-13B-Chat": { + DownloadSource.DEFAULT: "baichuan-inc/Baichuan2-13B-Chat", + DownloadSource.MODELSCOPE: "baichuan-inc/Baichuan2-13B-Chat", + }, + }, + template="baichuan2", +) + + +register_model_group( + models={ + "BLOOM-560M": { + DownloadSource.DEFAULT: "bigscience/bloom-560m", + DownloadSource.MODELSCOPE: "AI-ModelScope/bloom-560m", + }, + "BLOOM-3B": { + DownloadSource.DEFAULT: "bigscience/bloom-3b", + DownloadSource.MODELSCOPE: "AI-ModelScope/bloom-3b", + }, + "BLOOM-7B1": { + DownloadSource.DEFAULT: "bigscience/bloom-7b1", + DownloadSource.MODELSCOPE: "AI-ModelScope/bloom-7b1", + }, + }, +) + + +register_model_group( + models={ + "BLOOMZ-560M": { + DownloadSource.DEFAULT: "bigscience/bloomz-560m", + DownloadSource.MODELSCOPE: "AI-ModelScope/bloomz-560m", + }, + "BLOOMZ-3B": { + DownloadSource.DEFAULT: "bigscience/bloomz-3b", + DownloadSource.MODELSCOPE: "AI-ModelScope/bloomz-3b", + }, + "BLOOMZ-7B1-mt": { + DownloadSource.DEFAULT: "bigscience/bloomz-7b1-mt", + DownloadSource.MODELSCOPE: "AI-ModelScope/bloomz-7b1-mt", + }, + }, +) + + +register_model_group( + models={ + "BlueLM-7B-Base": { + DownloadSource.DEFAULT: "vivo-ai/BlueLM-7B-Base", + DownloadSource.MODELSCOPE: "vivo-ai/BlueLM-7B-Base", + }, + "BlueLM-7B-Chat": { + DownloadSource.DEFAULT: "vivo-ai/BlueLM-7B-Chat", + DownloadSource.MODELSCOPE: "vivo-ai/BlueLM-7B-Chat", + }, + }, + template="bluelm", +) + + +register_model_group( + models={ + "Breeze-7B": { + DownloadSource.DEFAULT: "MediaTek-Research/Breeze-7B-Base-v1_0", + }, + "Breeze-7B-Chat": { + DownloadSource.DEFAULT: "MediaTek-Research/Breeze-7B-Instruct-v1_0", + }, + }, + template="breeze", +) + + +register_model_group( + models={ + "ChatGLM2-6B-Chat": { + DownloadSource.DEFAULT: "THUDM/chatglm2-6b", + DownloadSource.MODELSCOPE: "ZhipuAI/chatglm2-6b", + } + }, + template="chatglm2", +) + + +register_model_group( + models={ + "ChatGLM3-6B-Base": { + DownloadSource.DEFAULT: "THUDM/chatglm3-6b-base", + DownloadSource.MODELSCOPE: "ZhipuAI/chatglm3-6b-base", + }, + "ChatGLM3-6B-Chat": { + DownloadSource.DEFAULT: "THUDM/chatglm3-6b", + DownloadSource.MODELSCOPE: "ZhipuAI/chatglm3-6b", + }, + }, + template="chatglm3", +) + + +register_model_group( + models={ + "ChineseLLaMA2-1.3B": { + DownloadSource.DEFAULT: "hfl/chinese-llama-2-1.3b", + DownloadSource.MODELSCOPE: "AI-ModelScope/chinese-llama-2-1.3b", + }, + "ChineseLLaMA2-7B": { + DownloadSource.DEFAULT: "hfl/chinese-llama-2-7b", + DownloadSource.MODELSCOPE: "AI-ModelScope/chinese-llama-2-7b", + }, + "ChineseLLaMA2-13B": { + DownloadSource.DEFAULT: "hfl/chinese-llama-2-13b", + DownloadSource.MODELSCOPE: "AI-ModelScope/chinese-llama-2-13b", + }, + "ChineseLLaMA2-1.3B-Chat": { + DownloadSource.DEFAULT: "hfl/chinese-alpaca-2-1.3b", + DownloadSource.MODELSCOPE: "AI-ModelScope/chinese-alpaca-2-1.3b", + }, + "ChineseLLaMA2-7B-Chat": { + DownloadSource.DEFAULT: "hfl/chinese-alpaca-2-7b", + DownloadSource.MODELSCOPE: "AI-ModelScope/chinese-alpaca-2-7b", + }, + "ChineseLLaMA2-13B-Chat": { + DownloadSource.DEFAULT: "hfl/chinese-alpaca-2-13b", + DownloadSource.MODELSCOPE: "AI-ModelScope/chinese-alpaca-2-13b", + }, + }, + template="llama2_zh", +) + + +register_model_group( + models={ + "CodeGeeX4-9B-Chat": { + DownloadSource.DEFAULT: "THUDM/codegeex4-all-9b", + DownloadSource.MODELSCOPE: "ZhipuAI/codegeex4-all-9b", + }, + }, + template="codegeex4", +) + + +register_model_group( + models={ + "CodeGemma-7B": { + DownloadSource.DEFAULT: "google/codegemma-7b", + }, + "CodeGemma-7B-Chat": { + DownloadSource.DEFAULT: "google/codegemma-7b-it", + DownloadSource.MODELSCOPE: "AI-ModelScope/codegemma-7b-it", + }, + "CodeGemma-1.1-2B": { + DownloadSource.DEFAULT: "google/codegemma-1.1-2b", + }, + "CodeGemma-1.1-7B-Chat": { + DownloadSource.DEFAULT: "google/codegemma-1.1-7b-it", + }, + }, + template="gemma", +) + + +register_model_group( + models={ + "Codestral-22B-v0.1-Chat": { + DownloadSource.DEFAULT: "mistralai/Codestral-22B-v0.1", + }, + }, + template="mistral", +) + + +register_model_group( + models={ + "CommandR-35B-Chat": { + DownloadSource.DEFAULT: "CohereForAI/c4ai-command-r-v01", + DownloadSource.MODELSCOPE: "AI-ModelScope/c4ai-command-r-v01", + }, + "CommandR-Plus-104B-Chat": { + DownloadSource.DEFAULT: "CohereForAI/c4ai-command-r-plus", + DownloadSource.MODELSCOPE: "AI-ModelScope/c4ai-command-r-plus", + }, + "CommandR-35B-4bit-Chat": { + DownloadSource.DEFAULT: "CohereForAI/c4ai-command-r-v01-4bit", + DownloadSource.MODELSCOPE: "mirror013/c4ai-command-r-v01-4bit", + }, + "CommandR-Plus-104B-4bit-Chat": { + DownloadSource.DEFAULT: "CohereForAI/c4ai-command-r-plus-4bit", + }, + }, + template="cohere", +) + + +register_model_group( + models={ + "DBRX-132B-Base": { + DownloadSource.DEFAULT: "databricks/dbrx-base", + DownloadSource.MODELSCOPE: "AI-ModelScope/dbrx-base", + }, + "DBRX-132B-Chat": { + DownloadSource.DEFAULT: "databricks/dbrx-instruct", + DownloadSource.MODELSCOPE: "AI-ModelScope/dbrx-instruct", + }, + }, + template="dbrx", +) + + +register_model_group( + models={ + "DeepSeek-LLM-7B-Base": { + DownloadSource.DEFAULT: "deepseek-ai/deepseek-llm-7b-base", + DownloadSource.MODELSCOPE: "deepseek-ai/deepseek-llm-7b-base", + }, + "DeepSeek-LLM-67B-Base": { + DownloadSource.DEFAULT: "deepseek-ai/deepseek-llm-67b-base", + DownloadSource.MODELSCOPE: "deepseek-ai/deepseek-llm-67b-base", + }, + "DeepSeek-LLM-7B-Chat": { + DownloadSource.DEFAULT: "deepseek-ai/deepseek-llm-7b-chat", + DownloadSource.MODELSCOPE: "deepseek-ai/deepseek-llm-7b-chat", + }, + "DeepSeek-LLM-67B-Chat": { + DownloadSource.DEFAULT: "deepseek-ai/deepseek-llm-67b-chat", + DownloadSource.MODELSCOPE: "deepseek-ai/deepseek-llm-67b-chat", + }, + "DeepSeek-Math-7B-Base": { + DownloadSource.DEFAULT: "deepseek-ai/deepseek-math-7b-base", + DownloadSource.MODELSCOPE: "deepseek-ai/deepseek-math-7b-base", + }, + "DeepSeek-Math-7B-Chat": { + DownloadSource.DEFAULT: "deepseek-ai/deepseek-math-7b-instruct", + DownloadSource.MODELSCOPE: "deepseek-ai/deepseek-math-7b-instruct", + }, + "DeepSeek-MoE-16B-Base": { + DownloadSource.DEFAULT: "deepseek-ai/deepseek-moe-16b-base", + DownloadSource.MODELSCOPE: "deepseek-ai/deepseek-moe-16b-base", + }, + "DeepSeek-MoE-16B-v2-Base": { + DownloadSource.DEFAULT: "deepseek-ai/DeepSeek-V2-Lite", + DownloadSource.MODELSCOPE: "deepseek-ai/DeepSeek-V2-Lite", + }, + "DeepSeek-MoE-236B-Base": { + DownloadSource.DEFAULT: "deepseek-ai/DeepSeek-V2", + DownloadSource.MODELSCOPE: "deepseek-ai/DeepSeek-V2", + }, + "DeepSeek-MoE-16B-Chat": { + DownloadSource.DEFAULT: "deepseek-ai/deepseek-moe-16b-chat", + DownloadSource.MODELSCOPE: "deepseek-ai/deepseek-moe-16b-chat", + }, + "DeepSeek-MoE-16B-v2-Chat": { + DownloadSource.DEFAULT: "deepseek-ai/DeepSeek-V2-Lite-Chat", + DownloadSource.MODELSCOPE: "deepseek-ai/DeepSeek-V2-Lite-Chat", + }, + "DeepSeek-MoE-236B-Chat": { + DownloadSource.DEFAULT: "deepseek-ai/DeepSeek-V2-Chat", + DownloadSource.MODELSCOPE: "deepseek-ai/DeepSeek-V2-Chat", + }, + "DeepSeek-MoE-Coder-16B-Base": { + DownloadSource.DEFAULT: "deepseek-ai/DeepSeek-Coder-V2-Lite-Base", + }, + "DeepSeek-MoE-Coder-236B-Base": { + DownloadSource.DEFAULT: "deepseek-ai/DeepSeek-Coder-V2-Base", + }, + "DeepSeek-MoE-Coder-16B-Chat": { + DownloadSource.DEFAULT: "deepseek-ai/DeepSeek-Coder-V2-Lite-Instruct", + }, + "DeepSeek-MoE-Coder-236B-Chat": { + DownloadSource.DEFAULT: "deepseek-ai/DeepSeek-Coder-V2-Instruct", + }, + }, + template="deepseek", +) + + +register_model_group( + models={ + "DeepSeekCoder-6.7B-Base": { + DownloadSource.DEFAULT: "deepseek-ai/deepseek-coder-6.7b-base", + DownloadSource.MODELSCOPE: "deepseek-ai/deepseek-coder-6.7b-base", + }, + "DeepSeekCoder-7B-Base": { + DownloadSource.DEFAULT: "deepseek-ai/deepseek-coder-7b-base-v1.5", + }, + "DeepSeekCoder-33B-Base": { + DownloadSource.DEFAULT: "deepseek-ai/deepseek-coder-33b-base", + DownloadSource.MODELSCOPE: "deepseek-ai/deepseek-coder-33b-base", + }, + "DeepSeekCoder-6.7B-Chat": { + DownloadSource.DEFAULT: "deepseek-ai/deepseek-coder-6.7b-instruct", + DownloadSource.MODELSCOPE: "deepseek-ai/deepseek-coder-6.7b-instruct", + }, + "DeepSeekCoder-7B-Chat": { + DownloadSource.DEFAULT: "deepseek-ai/deepseek-coder-7b-instruct-v1.5", + }, + "DeepSeekCoder-33B-Chat": { + DownloadSource.DEFAULT: "deepseek-ai/deepseek-coder-33b-instruct", + DownloadSource.MODELSCOPE: "deepseek-ai/deepseek-coder-33b-instruct", + }, + }, + template="deepseekcoder", +) + + +register_model_group( + models={ + "Falcon-7B": { + DownloadSource.DEFAULT: "tiiuae/falcon-7b", + DownloadSource.MODELSCOPE: "AI-ModelScope/falcon-7b", + }, + "Falcon-11B": { + DownloadSource.DEFAULT: "tiiuae/falcon-11B", + }, + "Falcon-40B": { + DownloadSource.DEFAULT: "tiiuae/falcon-40b", + DownloadSource.MODELSCOPE: "AI-ModelScope/falcon-40b", + }, + "Falcon-180B": { + DownloadSource.DEFAULT: "tiiuae/falcon-180b", + DownloadSource.MODELSCOPE: "modelscope/falcon-180B", + }, + "Falcon-7B-Chat": { + DownloadSource.DEFAULT: "tiiuae/falcon-7b-instruct", + DownloadSource.MODELSCOPE: "AI-ModelScope/falcon-7b-instruct", + }, + "Falcon-40B-Chat": { + DownloadSource.DEFAULT: "tiiuae/falcon-40b-instruct", + DownloadSource.MODELSCOPE: "AI-ModelScope/falcon-40b-instruct", + }, + "Falcon-180B-Chat": { + DownloadSource.DEFAULT: "tiiuae/falcon-180b-chat", + DownloadSource.MODELSCOPE: "modelscope/falcon-180B-chat", + }, + }, + template="falcon", +) + + +register_model_group( + models={ + "Gemma-2B": { + DownloadSource.DEFAULT: "google/gemma-2b", + DownloadSource.MODELSCOPE: "AI-ModelScope/gemma-2b", + }, + "Gemma-7B": { + DownloadSource.DEFAULT: "google/gemma-7b", + DownloadSource.MODELSCOPE: "AI-ModelScope/gemma-2b-it", + }, + "Gemma-2B-Chat": { + DownloadSource.DEFAULT: "google/gemma-2b-it", + DownloadSource.MODELSCOPE: "AI-ModelScope/gemma-7b", + }, + "Gemma-7B-Chat": { + DownloadSource.DEFAULT: "google/gemma-7b-it", + DownloadSource.MODELSCOPE: "AI-ModelScope/gemma-7b-it", + }, + "Gemma-1.1-2B-Chat": { + DownloadSource.DEFAULT: "google/gemma-1.1-2b-it", + }, + "Gemma-1.1-7B-Chat": { + DownloadSource.DEFAULT: "google/gemma-1.1-7b-it", + }, + "Gemma-2-2B": { + DownloadSource.DEFAULT: "google/gemma-2-2b", + DownloadSource.MODELSCOPE: "LLM-Research/gemma-2-2b", + }, + "Gemma-2-9B": { + DownloadSource.DEFAULT: "google/gemma-2-9b", + DownloadSource.MODELSCOPE: "LLM-Research/gemma-2-9b", + }, + "Gemma-2-27B": { + DownloadSource.DEFAULT: "google/gemma-2-27b", + DownloadSource.MODELSCOPE: "LLM-Research/gemma-2-27b", + }, + "Gemma-2-2B-Chat": { + DownloadSource.DEFAULT: "google/gemma-2-2b-it", + DownloadSource.MODELSCOPE: "LLM-Research/gemma-2-2b-it", + }, + "Gemma-2-9B-Chat": { + DownloadSource.DEFAULT: "google/gemma-2-9b-it", + DownloadSource.MODELSCOPE: "LLM-Research/gemma-2-9b-it", + }, + "Gemma-2-27B-Chat": { + DownloadSource.DEFAULT: "google/gemma-2-27b-it", + DownloadSource.MODELSCOPE: "LLM-Research/gemma-2-27b-it", + }, + }, + template="gemma", +) + + +register_model_group( + models={ + "GLM-4-9B": { + DownloadSource.DEFAULT: "THUDM/glm-4-9b", + DownloadSource.MODELSCOPE: "ZhipuAI/glm-4-9b", + }, + "GLM-4-9B-Chat": { + DownloadSource.DEFAULT: "THUDM/glm-4-9b-chat", + DownloadSource.MODELSCOPE: "ZhipuAI/glm-4-9b-chat", + }, + "GLM-4-9B-1M-Chat": { + DownloadSource.DEFAULT: "THUDM/glm-4-9b-chat-1m", + DownloadSource.MODELSCOPE: "ZhipuAI/glm-4-9b-chat-1m", + }, + }, + template="glm4", +) + + +register_model_group( + models={ + "InternLM-7B": { + DownloadSource.DEFAULT: "internlm/internlm-7b", + DownloadSource.MODELSCOPE: "Shanghai_AI_Laboratory/internlm-7b", + }, + "InternLM-20B": { + DownloadSource.DEFAULT: "internlm/internlm-20b", + DownloadSource.MODELSCOPE: "Shanghai_AI_Laboratory/internlm-20b", + }, + "InternLM-7B-Chat": { + DownloadSource.DEFAULT: "internlm/internlm-chat-7b", + DownloadSource.MODELSCOPE: "Shanghai_AI_Laboratory/internlm-chat-7b", + }, + "InternLM-20B-Chat": { + DownloadSource.DEFAULT: "internlm/internlm-chat-20b", + DownloadSource.MODELSCOPE: "Shanghai_AI_Laboratory/internlm-chat-20b", + }, + }, + template="intern", +) + + +register_model_group( + models={ + "InternLM2-7B": { + DownloadSource.DEFAULT: "internlm/internlm2-7b", + DownloadSource.MODELSCOPE: "Shanghai_AI_Laboratory/internlm2-7b", + }, + "InternLM2-20B": { + DownloadSource.DEFAULT: "internlm/internlm2-20b", + DownloadSource.MODELSCOPE: "Shanghai_AI_Laboratory/internlm2-20b", + }, + "InternLM2-7B-Chat": { + DownloadSource.DEFAULT: "internlm/internlm2-chat-7b", + DownloadSource.MODELSCOPE: "Shanghai_AI_Laboratory/internlm2-chat-7b", + }, + "InternLM2-20B-Chat": { + DownloadSource.DEFAULT: "internlm/internlm2-chat-20b", + DownloadSource.MODELSCOPE: "Shanghai_AI_Laboratory/internlm2-chat-20b", + }, + }, + template="intern2", +) + + +register_model_group( + models={ + "InternLM2.5-7B": { + DownloadSource.DEFAULT: "internlm/internlm2_5-7b", + DownloadSource.MODELSCOPE: "Shanghai_AI_Laboratory/internlm2_5-7b", + }, + "InternLM2.5-7B-Chat": { + DownloadSource.DEFAULT: "internlm/internlm2_5-7b-chat", + DownloadSource.MODELSCOPE: "Shanghai_AI_Laboratory/internlm2_5-7b-chat", + }, + "InternLM2.5-7B-1M-Chat": { + DownloadSource.DEFAULT: "internlm/internlm2_5-7b-chat-1m", + DownloadSource.MODELSCOPE: "Shanghai_AI_Laboratory/internlm2_5-7b-chat-1m", + }, + }, + template="intern2", +) + + +register_model_group( + models={ + "Jamba-v0.1": { + DownloadSource.DEFAULT: "ai21labs/Jamba-v0.1", + DownloadSource.MODELSCOPE: "AI-ModelScope/Jamba-v0.1", + } + }, +) + + +register_model_group( + models={ + "LingoWhale-8B": { + DownloadSource.DEFAULT: "deeplang-ai/LingoWhale-8B", + DownloadSource.MODELSCOPE: "DeepLang/LingoWhale-8B", + } + }, +) + + +register_model_group( + models={ + "LLaMA-7B": { + DownloadSource.DEFAULT: "huggyllama/llama-7b", + DownloadSource.MODELSCOPE: "skyline2006/llama-7b", + }, + "LLaMA-13B": { + DownloadSource.DEFAULT: "huggyllama/llama-13b", + DownloadSource.MODELSCOPE: "skyline2006/llama-13b", + }, + "LLaMA-30B": { + DownloadSource.DEFAULT: "huggyllama/llama-30b", + DownloadSource.MODELSCOPE: "skyline2006/llama-30b", + }, + "LLaMA-65B": { + DownloadSource.DEFAULT: "huggyllama/llama-65b", + DownloadSource.MODELSCOPE: "skyline2006/llama-65b", + }, + } +) + + +register_model_group( + models={ + "LLaMA2-7B": { + DownloadSource.DEFAULT: "meta-llama/Llama-2-7b-hf", + DownloadSource.MODELSCOPE: "modelscope/Llama-2-7b-ms", + }, + "LLaMA2-13B": { + DownloadSource.DEFAULT: "meta-llama/Llama-2-13b-hf", + DownloadSource.MODELSCOPE: "modelscope/Llama-2-13b-ms", + }, + "LLaMA2-70B": { + DownloadSource.DEFAULT: "meta-llama/Llama-2-70b-hf", + DownloadSource.MODELSCOPE: "modelscope/Llama-2-70b-ms", + }, + "LLaMA2-7B-Chat": { + DownloadSource.DEFAULT: "meta-llama/Llama-2-7b-chat-hf", + DownloadSource.MODELSCOPE: "modelscope/Llama-2-7b-chat-ms", + }, + "LLaMA2-13B-Chat": { + DownloadSource.DEFAULT: "meta-llama/Llama-2-13b-chat-hf", + DownloadSource.MODELSCOPE: "modelscope/Llama-2-13b-chat-ms", + }, + "LLaMA2-70B-Chat": { + DownloadSource.DEFAULT: "meta-llama/Llama-2-70b-chat-hf", + DownloadSource.MODELSCOPE: "modelscope/Llama-2-70b-chat-ms", + }, + }, + template="llama2", +) + + +register_model_group( + models={ + "LLaMA3-8B": { + DownloadSource.DEFAULT: "meta-llama/Meta-Llama-3-8B", + DownloadSource.MODELSCOPE: "LLM-Research/Meta-Llama-3-8B", + }, + "LLaMA3-70B": { + DownloadSource.DEFAULT: "meta-llama/Meta-Llama-3-70B", + DownloadSource.MODELSCOPE: "LLM-Research/Meta-Llama-3-70B", + }, + "LLaMA3-8B-Chat": { + DownloadSource.DEFAULT: "meta-llama/Meta-Llama-3-8B-Instruct", + DownloadSource.MODELSCOPE: "LLM-Research/Meta-Llama-3-8B-Instruct", + }, + "LLaMA3-70B-Chat": { + DownloadSource.DEFAULT: "meta-llama/Meta-Llama-3-70B-Instruct", + DownloadSource.MODELSCOPE: "LLM-Research/Meta-Llama-3-70B-Instruct", + }, + "LLaMA3-8B-Chinese-Chat": { + DownloadSource.DEFAULT: "shenzhi-wang/Llama3-8B-Chinese-Chat", + DownloadSource.MODELSCOPE: "LLM-Research/Llama3-8B-Chinese-Chat", + }, + "LLaMA3-70B-Chinese-Chat": { + DownloadSource.DEFAULT: "shenzhi-wang/Llama3-70B-Chinese-Chat", + }, + }, + template="llama3", +) + + +register_model_group( + models={ + "LLaMA3.1-8B": { + DownloadSource.DEFAULT: "meta-llama/Meta-Llama-3.1-8B", + DownloadSource.MODELSCOPE: "LLM-Research/Meta-Llama-3.1-8B", + }, + "LLaMA3.1-70B": { + DownloadSource.DEFAULT: "meta-llama/Meta-Llama-3.1-70B", + DownloadSource.MODELSCOPE: "LLM-Research/Meta-Llama-3.1-70B", + }, + "LLaMA3.1-405B": { + DownloadSource.DEFAULT: "meta-llama/Meta-Llama-3.1-405B", + }, + "LLaMA3.1-8B-Chat": { + DownloadSource.DEFAULT: "meta-llama/Meta-Llama-3.1-8B-Instruct", + DownloadSource.MODELSCOPE: "LLM-Research/Meta-Llama-3.1-8B-Instruct", + }, + "LLaMA3.1-70B-Chat": { + DownloadSource.DEFAULT: "meta-llama/Meta-Llama-3.1-70B-Instruct", + DownloadSource.MODELSCOPE: "LLM-Research/Meta-Llama-3.1-70B-Instruct", + }, + "LLaMA3.1-405B-Chat": { + DownloadSource.DEFAULT: "meta-llama/Meta-Llama-3.1-405B-Instruct", + }, + }, + template="llama3", +) + + +register_model_group( + models={ + "LLaVA1.5-7B-Chat": { + DownloadSource.DEFAULT: "llava-hf/llava-1.5-7b-hf", + }, + "LLaVA1.5-13B-Chat": { + DownloadSource.DEFAULT: "llava-hf/llava-1.5-13b-hf", + }, + }, + template="vicuna", + vision=True, +) + + +register_model_group( + models={ + "MiniCPM-2B-SFT-Chat": { + DownloadSource.DEFAULT: "openbmb/MiniCPM-2B-sft-bf16", + DownloadSource.MODELSCOPE: "OpenBMB/miniCPM-bf16", + }, + "MiniCPM-2B-DPO-Chat": { + DownloadSource.DEFAULT: "openbmb/MiniCPM-2B-dpo-bf16", + DownloadSource.MODELSCOPE: "OpenBMB/MiniCPM-2B-dpo-bf16", + }, + }, + template="cpm", +) + + +register_model_group( + models={ + "Mistral-7B-v0.1": { + DownloadSource.DEFAULT: "mistralai/Mistral-7B-v0.1", + DownloadSource.MODELSCOPE: "AI-ModelScope/Mistral-7B-v0.1", + }, + "Mistral-7B-v0.1-Chat": { + DownloadSource.DEFAULT: "mistralai/Mistral-7B-Instruct-v0.1", + DownloadSource.MODELSCOPE: "AI-ModelScope/Mistral-7B-Instruct-v0.1", + }, + "Mistral-7B-v0.2": { + DownloadSource.DEFAULT: "alpindale/Mistral-7B-v0.2-hf", + DownloadSource.MODELSCOPE: "AI-ModelScope/Mistral-7B-v0.2-hf", + }, + "Mistral-7B-v0.2-Chat": { + DownloadSource.DEFAULT: "mistralai/Mistral-7B-Instruct-v0.2", + DownloadSource.MODELSCOPE: "AI-ModelScope/Mistral-7B-Instruct-v0.2", + }, + "Mistral-7B-v0.3": { + DownloadSource.DEFAULT: "mistralai/Mistral-7B-v0.3", + }, + "Mistral-7B-v0.3-Chat": { + DownloadSource.DEFAULT: "mistralai/Mistral-7B-Instruct-v0.3", + DownloadSource.MODELSCOPE: "LLM-Research/Mistral-7B-Instruct-v0.3", + }, + "Mistral-Nemo-Chat": { + DownloadSource.DEFAULT: "mistralai/Mistral-Nemo-Instruct-2407", + DownloadSource.MODELSCOPE: "AI-ModelScope/Mistral-Nemo-Instruct-2407", + }, + }, + template="mistral", +) + + +register_model_group( + models={ + "Mixtral-8x7B-v0.1": { + DownloadSource.DEFAULT: "mistralai/Mixtral-8x7B-v0.1", + DownloadSource.MODELSCOPE: "AI-ModelScope/Mixtral-8x7B-v0.1", + }, + "Mixtral-8x7B-v0.1-Chat": { + DownloadSource.DEFAULT: "mistralai/Mixtral-8x7B-Instruct-v0.1", + DownloadSource.MODELSCOPE: "AI-ModelScope/Mixtral-8x7B-Instruct-v0.1", + }, + "Mixtral-8x22B-v0.1": { + DownloadSource.DEFAULT: "mistralai/Mixtral-8x22B-v0.1", + DownloadSource.MODELSCOPE: "AI-ModelScope/Mixtral-8x22B-v0.1", + }, + "Mixtral-8x22B-v0.1-Chat": { + DownloadSource.DEFAULT: "mistralai/Mixtral-8x22B-Instruct-v0.1", + DownloadSource.MODELSCOPE: "AI-ModelScope/Mixtral-8x22B-Instruct-v0.1", + }, + }, + template="mistral", +) + + +register_model_group( + models={ + "OLMo-1B": { + DownloadSource.DEFAULT: "allenai/OLMo-1B-hf", + }, + "OLMo-7B": { + DownloadSource.DEFAULT: "allenai/OLMo-7B-hf", + }, + "OLMo-7B-Chat": { + DownloadSource.DEFAULT: "ssec-uw/OLMo-7B-Instruct-hf", + }, + "OLMo-1.7-7B": { + DownloadSource.DEFAULT: "allenai/OLMo-1.7-7B-hf", + }, + }, +) + + +register_model_group( + models={ + "OpenChat3.5-7B-Chat": { + DownloadSource.DEFAULT: "openchat/openchat-3.5-0106", + DownloadSource.MODELSCOPE: "xcwzxcwz/openchat-3.5-0106", + } + }, + template="openchat", +) + + +register_model_group( + models={ + "OpenChat3.6-8B-Chat": { + DownloadSource.DEFAULT: "openchat/openchat-3.6-8b-20240522", + } + }, + template="openchat-3.6", +) + + +register_model_group( + models={ + "Orion-14B-Base": { + DownloadSource.DEFAULT: "OrionStarAI/Orion-14B-Base", + DownloadSource.MODELSCOPE: "OrionStarAI/Orion-14B-Base", + }, + "Orion-14B-Chat": { + DownloadSource.DEFAULT: "OrionStarAI/Orion-14B-Chat", + DownloadSource.MODELSCOPE: "OrionStarAI/Orion-14B-Chat", + }, + "Orion-14B-Long-Chat": { + DownloadSource.DEFAULT: "OrionStarAI/Orion-14B-LongChat", + DownloadSource.MODELSCOPE: "OrionStarAI/Orion-14B-LongChat", + }, + "Orion-14B-RAG-Chat": { + DownloadSource.DEFAULT: "OrionStarAI/Orion-14B-Chat-RAG", + DownloadSource.MODELSCOPE: "OrionStarAI/Orion-14B-Chat-RAG", + }, + "Orion-14B-Plugin-Chat": { + DownloadSource.DEFAULT: "OrionStarAI/Orion-14B-Chat-Plugin", + DownloadSource.MODELSCOPE: "OrionStarAI/Orion-14B-Chat-Plugin", + }, + }, + template="orion", +) + + +register_model_group( + models={ + "PaliGemma-3B-pt-224": { + DownloadSource.DEFAULT: "google/paligemma-3b-pt-224", + DownloadSource.MODELSCOPE: "AI-ModelScope/paligemma-3b-pt-224", + }, + "PaliGemma-3B-pt-448": { + DownloadSource.DEFAULT: "google/paligemma-3b-pt-448", + DownloadSource.MODELSCOPE: "AI-ModelScope/paligemma-3b-pt-448", + }, + "PaliGemma-3B-pt-896": { + DownloadSource.DEFAULT: "google/paligemma-3b-pt-896", + DownloadSource.MODELSCOPE: "AI-ModelScope/paligemma-3b-pt-896", + }, + "PaliGemma-3B-mix-224": { + DownloadSource.DEFAULT: "google/paligemma-3b-mix-224", + DownloadSource.MODELSCOPE: "AI-ModelScope/paligemma-3b-mix-224", + }, + "PaliGemma-3B-mix-448": { + DownloadSource.DEFAULT: "google/paligemma-3b-mix-448", + DownloadSource.MODELSCOPE: "AI-ModelScope/paligemma-3b-mix-448", + }, + }, + vision=True, +) + + +register_model_group( + models={ + "Phi-1.5-1.3B": { + DownloadSource.DEFAULT: "microsoft/phi-1_5", + DownloadSource.MODELSCOPE: "allspace/PHI_1-5", + }, + "Phi-2-2.7B": { + DownloadSource.DEFAULT: "microsoft/phi-2", + DownloadSource.MODELSCOPE: "AI-ModelScope/phi-2", + }, + } +) + + +register_model_group( + models={ + "Phi3-4B-4k-Chat": { + DownloadSource.DEFAULT: "microsoft/Phi-3-mini-4k-instruct", + DownloadSource.MODELSCOPE: "LLM-Research/Phi-3-mini-4k-instruct", + }, + "Phi3-4B-128k-Chat": { + DownloadSource.DEFAULT: "microsoft/Phi-3-mini-128k-instruct", + DownloadSource.MODELSCOPE: "LLM-Research/Phi-3-mini-128k-instruct", + }, + "Phi3-7B-8k-Chat": { + DownloadSource.DEFAULT: "microsoft/Phi-3-small-8k-instruct", + DownloadSource.MODELSCOPE: "LLM-Research/Phi-3-small-8k-instruct", + }, + "Phi3-7B-128k-Chat": { + DownloadSource.DEFAULT: "microsoft/Phi-3-small-128k-instruct", + DownloadSource.MODELSCOPE: "LLM-Research/Phi-3-small-128k-instruct", + }, + "Phi3-14B-8k-Chat": { + DownloadSource.DEFAULT: "microsoft/Phi-3-medium-4k-instruct", + DownloadSource.MODELSCOPE: "LLM-Research/Phi-3-medium-4k-instruct", + }, + "Phi3-14B-128k-Chat": { + DownloadSource.DEFAULT: "microsoft/Phi-3-medium-128k-instruct", + DownloadSource.MODELSCOPE: "LLM-Research/Phi-3-medium-128k-instruct", + }, + }, + template="phi", +) + + +register_model_group( + models={ + "Qwen-1.8B": { + DownloadSource.DEFAULT: "Qwen/Qwen-1_8B", + DownloadSource.MODELSCOPE: "qwen/Qwen-1_8B", + }, + "Qwen-7B": { + DownloadSource.DEFAULT: "Qwen/Qwen-7B", + DownloadSource.MODELSCOPE: "qwen/Qwen-7B", + }, + "Qwen-14B": { + DownloadSource.DEFAULT: "Qwen/Qwen-14B", + DownloadSource.MODELSCOPE: "qwen/Qwen-14B", + }, + "Qwen-72B": { + DownloadSource.DEFAULT: "Qwen/Qwen-72B", + DownloadSource.MODELSCOPE: "qwen/Qwen-72B", + }, + "Qwen-1.8B-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen-1_8B-Chat", + DownloadSource.MODELSCOPE: "qwen/Qwen-1_8B-Chat", + }, + "Qwen-7B-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen-7B-Chat", + DownloadSource.MODELSCOPE: "qwen/Qwen-7B-Chat", + }, + "Qwen-14B-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen-14B-Chat", + DownloadSource.MODELSCOPE: "qwen/Qwen-14B-Chat", + }, + "Qwen-72B-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen-72B-Chat", + DownloadSource.MODELSCOPE: "qwen/Qwen-72B-Chat", + }, + "Qwen-1.8B-int8-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen-1_8B-Chat-Int8", + DownloadSource.MODELSCOPE: "qwen/Qwen-1_8B-Chat-Int8", + }, + "Qwen-1.8B-int4-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen-1_8B-Chat-Int4", + DownloadSource.MODELSCOPE: "qwen/Qwen-1_8B-Chat-Int4", + }, + "Qwen-7B-int8-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen-7B-Chat-Int8", + DownloadSource.MODELSCOPE: "qwen/Qwen-7B-Chat-Int8", + }, + "Qwen-7B-int4-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen-7B-Chat-Int4", + DownloadSource.MODELSCOPE: "qwen/Qwen-7B-Chat-Int4", + }, + "Qwen-14B-int8-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen-14B-Chat-Int8", + DownloadSource.MODELSCOPE: "qwen/Qwen-14B-Chat-Int8", + }, + "Qwen-14B-int4-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen-14B-Chat-Int4", + DownloadSource.MODELSCOPE: "qwen/Qwen-14B-Chat-Int4", + }, + "Qwen-72B-int8-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen-72B-Chat-Int8", + DownloadSource.MODELSCOPE: "qwen/Qwen-72B-Chat-Int8", + }, + "Qwen-72B-int4-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen-72B-Chat-Int4", + DownloadSource.MODELSCOPE: "qwen/Qwen-72B-Chat-Int4", + }, + }, + template="qwen", +) + + +register_model_group( + models={ + "Qwen1.5-0.5B": { + DownloadSource.DEFAULT: "Qwen/Qwen1.5-0.5B", + DownloadSource.MODELSCOPE: "qwen/Qwen1.5-0.5B", + }, + "Qwen1.5-1.8B": { + DownloadSource.DEFAULT: "Qwen/Qwen1.5-1.8B", + DownloadSource.MODELSCOPE: "qwen/Qwen1.5-1.8B", + }, + "Qwen1.5-4B": { + DownloadSource.DEFAULT: "Qwen/Qwen1.5-4B", + DownloadSource.MODELSCOPE: "qwen/Qwen1.5-4B", + }, + "Qwen1.5-7B": { + DownloadSource.DEFAULT: "Qwen/Qwen1.5-7B", + DownloadSource.MODELSCOPE: "qwen/Qwen1.5-7B", + }, + "Qwen1.5-14B": { + DownloadSource.DEFAULT: "Qwen/Qwen1.5-14B", + DownloadSource.MODELSCOPE: "qwen/Qwen1.5-14B", + }, + "Qwen1.5-32B": { + DownloadSource.DEFAULT: "Qwen/Qwen1.5-32B", + DownloadSource.MODELSCOPE: "qwen/Qwen1.5-32B", + }, + "Qwen1.5-72B": { + DownloadSource.DEFAULT: "Qwen/Qwen1.5-72B", + DownloadSource.MODELSCOPE: "qwen/Qwen1.5-72B", + }, + "Qwen1.5-110B": { + DownloadSource.DEFAULT: "Qwen/Qwen1.5-110B", + DownloadSource.MODELSCOPE: "qwen/Qwen1.5-110B", + }, + "Qwen1.5-MoE-A2.7B": { + DownloadSource.DEFAULT: "Qwen/Qwen1.5-MoE-A2.7B", + DownloadSource.MODELSCOPE: "qwen/Qwen1.5-MoE-A2.7B", + }, + "Qwen1.5-Code-7B": { + DownloadSource.DEFAULT: "Qwen/CodeQwen1.5-7B", + DownloadSource.MODELSCOPE: "qwen/CodeQwen1.5-7B", + }, + "Qwen1.5-0.5B-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen1.5-0.5B-Chat", + DownloadSource.MODELSCOPE: "qwen/Qwen1.5-0.5B-Chat", + }, + "Qwen1.5-1.8B-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen1.5-1.8B-Chat", + DownloadSource.MODELSCOPE: "qwen/Qwen1.5-1.8B-Chat", + }, + "Qwen1.5-4B-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen1.5-4B-Chat", + DownloadSource.MODELSCOPE: "qwen/Qwen1.5-4B-Chat", + }, + "Qwen1.5-7B-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen1.5-7B-Chat", + DownloadSource.MODELSCOPE: "qwen/Qwen1.5-7B-Chat", + }, + "Qwen1.5-14B-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen1.5-14B-Chat", + DownloadSource.MODELSCOPE: "qwen/Qwen1.5-14B-Chat", + }, + "Qwen1.5-32B-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen1.5-32B-Chat", + DownloadSource.MODELSCOPE: "qwen/Qwen1.5-32B-Chat", + }, + "Qwen1.5-72B-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen1.5-72B-Chat", + DownloadSource.MODELSCOPE: "qwen/Qwen1.5-72B-Chat", + }, + "Qwen1.5-110B-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen1.5-110B-Chat", + DownloadSource.MODELSCOPE: "qwen/Qwen1.5-110B-Chat", + }, + "Qwen1.5-MoE-A2.7B-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen1.5-MoE-A2.7B-Chat", + DownloadSource.MODELSCOPE: "qwen/Qwen1.5-MoE-A2.7B-Chat", + }, + "Qwen1.5-Code-7B-Chat": { + DownloadSource.DEFAULT: "Qwen/CodeQwen1.5-7B-Chat", + DownloadSource.MODELSCOPE: "qwen/CodeQwen1.5-7B-Chat", + }, + "Qwen1.5-0.5B-int8-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen1.5-0.5B-Chat-GPTQ-Int8", + DownloadSource.MODELSCOPE: "qwen/Qwen1.5-0.5B-Chat-GPTQ-Int8", + }, + "Qwen1.5-0.5B-int4-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen1.5-0.5B-Chat-AWQ", + DownloadSource.MODELSCOPE: "qwen/Qwen1.5-0.5B-Chat-AWQ", + }, + "Qwen1.5-1.8B-int8-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen1.5-1.8B-Chat-GPTQ-Int8", + DownloadSource.MODELSCOPE: "qwen/Qwen1.5-1.8B-Chat-GPTQ-Int8", + }, + "Qwen1.5-1.8B-int4-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen1.5-1.8B-Chat-AWQ", + DownloadSource.MODELSCOPE: "qwen/Qwen1.5-1.8B-Chat-AWQ", + }, + "Qwen1.5-4B-int8-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen1.5-4B-Chat-GPTQ-Int8", + DownloadSource.MODELSCOPE: "qwen/Qwen1.5-4B-Chat-GPTQ-Int8", + }, + "Qwen1.5-4B-int4-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen1.5-4B-Chat-AWQ", + DownloadSource.MODELSCOPE: "qwen/Qwen1.5-4B-Chat-AWQ", + }, + "Qwen1.5-7B-int8-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen1.5-7B-Chat-GPTQ-Int8", + DownloadSource.MODELSCOPE: "qwen/Qwen1.5-7B-Chat-GPTQ-Int8", + }, + "Qwen1.5-7B-int4-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen1.5-7B-Chat-AWQ", + DownloadSource.MODELSCOPE: "qwen/Qwen1.5-7B-Chat-AWQ", + }, + "Qwen1.5-14B-int8-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen1.5-14B-Chat-GPTQ-Int8", + DownloadSource.MODELSCOPE: "qwen/Qwen1.5-14B-Chat-GPTQ-Int8", + }, + "Qwen1.5-14B-int4-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen1.5-14B-Chat-AWQ", + DownloadSource.MODELSCOPE: "qwen/Qwen1.5-14B-Chat-AWQ", + }, + "Qwen1.5-32B-int4-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen1.5-32B-Chat-AWQ", + DownloadSource.MODELSCOPE: "qwen/Qwen1.5-32B-Chat-AWQ", + }, + "Qwen1.5-72B-int8-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen1.5-72B-Chat-GPTQ-Int8", + DownloadSource.MODELSCOPE: "qwen/Qwen1.5-72B-Chat-GPTQ-Int8", + }, + "Qwen1.5-72B-int4-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen1.5-72B-Chat-AWQ", + DownloadSource.MODELSCOPE: "qwen/Qwen1.5-72B-Chat-AWQ", + }, + "Qwen1.5-110B-int4-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen1.5-110B-Chat-AWQ", + DownloadSource.MODELSCOPE: "qwen/Qwen1.5-110B-Chat-AWQ", + }, + "Qwen1.5-MoE-A2.7B-int4-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen1.5-MoE-A2.7B-Chat-GPTQ-Int4", + DownloadSource.MODELSCOPE: "qwen/Qwen1.5-MoE-A2.7B-Chat-GPTQ-Int4", + }, + "Qwen1.5-Code-7B-int4-Chat": { + DownloadSource.DEFAULT: "Qwen/CodeQwen1.5-7B-Chat-AWQ", + DownloadSource.MODELSCOPE: "qwen/CodeQwen1.5-7B-Chat-AWQ", + }, + }, + template="qwen", +) + + +register_model_group( + models={ + "Qwen2-0.5B": { + DownloadSource.DEFAULT: "Qwen/Qwen2-0.5B", + DownloadSource.MODELSCOPE: "qwen/Qwen2-0.5B", + }, + "Qwen2-1.5B": { + DownloadSource.DEFAULT: "Qwen/Qwen2-1.5B", + DownloadSource.MODELSCOPE: "qwen/Qwen2-1.5B", + }, + "Qwen2-7B": { + DownloadSource.DEFAULT: "Qwen/Qwen2-7B", + DownloadSource.MODELSCOPE: "qwen/Qwen2-7B", + }, + "Qwen2-72B": { + DownloadSource.DEFAULT: "Qwen/Qwen2-72B", + DownloadSource.MODELSCOPE: "qwen/Qwen2-72B", + }, + "Qwen2-MoE-57B": { + DownloadSource.DEFAULT: "Qwen/Qwen2-57B-A14B", + DownloadSource.MODELSCOPE: "qwen/Qwen2-57B-A14B", + }, + "Qwen2-Math-1.5B": { + DownloadSource.DEFAULT: "Qwen/Qwen2-Math-1.5B", + DownloadSource.MODELSCOPE: "qwen/Qwen2-Math-1.5B", + }, + "Qwen2-Math-7B": { + DownloadSource.DEFAULT: "Qwen/Qwen2-Math-7B", + DownloadSource.MODELSCOPE: "qwen/Qwen2-Math-7B", + }, + "Qwen2-Math-72B": { + DownloadSource.DEFAULT: "Qwen/Qwen2-Math-72B", + DownloadSource.MODELSCOPE: "qwen/Qwen2-Math-72B", + }, + "Qwen2-0.5B-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen2-0.5B-Instruct", + DownloadSource.MODELSCOPE: "qwen/Qwen2-0.5B-Instruct", + }, + "Qwen2-1.5B-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen2-1.5B-Instruct", + DownloadSource.MODELSCOPE: "qwen/Qwen2-1.5B-Instruct", + }, + "Qwen2-7B-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen2-7B-Instruct", + DownloadSource.MODELSCOPE: "qwen/Qwen2-7B-Instruct", + }, + "Qwen2-72B-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen2-72B-Instruct", + DownloadSource.MODELSCOPE: "qwen/Qwen2-72B-Instruct", + }, + "Qwen2-MoE-57B-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen2-57B-A14B-Instruct", + DownloadSource.MODELSCOPE: "qwen/Qwen2-57B-A14B-Instruct", + }, + "Qwen2-Math-1.5B-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen2-Math-1.5B-Instruct", + DownloadSource.MODELSCOPE: "qwen/Qwen2-Math-1.5B-Instruct", + }, + "Qwen2-Math-7B-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen2-Math-7B-Instruct", + DownloadSource.MODELSCOPE: "qwen/Qwen2-Math-7B-Instruct", + }, + "Qwen2-Math-72B-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen2-Math-72B-Instruct", + DownloadSource.MODELSCOPE: "qwen/Qwen2-Math-72B-Instruct", + }, + "Qwen2-0.5B-int8-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen2-0.5B-Instruct-GPTQ-Int8", + DownloadSource.MODELSCOPE: "qwen/Qwen2-0.5B-Instruct-GPTQ-Int8", + }, + "Qwen2-0.5B-int4-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen2-0.5B-Instruct-AWQ", + DownloadSource.MODELSCOPE: "qwen/Qwen2-0.5B-Instruct-AWQ", + }, + "Qwen2-1.5B-int8-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen2-1.5B-Instruct-GPTQ-Int8", + DownloadSource.MODELSCOPE: "qwen/Qwen2-1.5B-Instruct-GPTQ-Int8", + }, + "Qwen2-1.5B-int4-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen2-1.5B-Instruct-AWQ", + DownloadSource.MODELSCOPE: "qwen/Qwen2-1.5B-Instruct-AWQ", + }, + "Qwen2-7B-int8-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen2-7B-Instruct-GPTQ-Int8", + DownloadSource.MODELSCOPE: "qwen/Qwen2-7B-Instruct-GPTQ-Int8", + }, + "Qwen2-7B-int4-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen2-7B-Instruct-AWQ", + DownloadSource.MODELSCOPE: "qwen/Qwen2-7B-Instruct-AWQ", + }, + "Qwen2-72B-int8-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen2-72B-Instruct-GPTQ-Int8", + DownloadSource.MODELSCOPE: "qwen/Qwen2-72B-Instruct-GPTQ-Int8", + }, + "Qwen2-72B-int4-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen2-72B-Instruct-AWQ", + DownloadSource.MODELSCOPE: "qwen/Qwen2-72B-Instruct-AWQ", + }, + "Qwen2-MoE-57B-int4-Chat": { + DownloadSource.DEFAULT: "Qwen/Qwen2-57B-A14B-Instruct-GPTQ-Int4", + DownloadSource.MODELSCOPE: "qwen/Qwen2-57B-A14B-Instruct-GPTQ-Int4", + }, + }, + template="qwen", +) + + +register_model_group( + models={ + "SOLAR-10.7B": { + DownloadSource.DEFAULT: "upstage/SOLAR-10.7B-v1.0", + }, + "SOLAR-10.7B-Chat": { + DownloadSource.DEFAULT: "upstage/SOLAR-10.7B-Instruct-v1.0", + DownloadSource.MODELSCOPE: "AI-ModelScope/SOLAR-10.7B-Instruct-v1.0", + }, + }, + template="solar", +) + + +register_model_group( + models={ + "Skywork-13B-Base": { + DownloadSource.DEFAULT: "Skywork/Skywork-13B-base", + DownloadSource.MODELSCOPE: "skywork/Skywork-13B-base", + } + } +) + + +register_model_group( + models={ + "StarCoder2-3B": { + DownloadSource.DEFAULT: "bigcode/starcoder2-3b", + DownloadSource.MODELSCOPE: "AI-ModelScope/starcoder2-3b", + }, + "StarCoder2-7B": { + DownloadSource.DEFAULT: "bigcode/starcoder2-7b", + DownloadSource.MODELSCOPE: "AI-ModelScope/starcoder2-7b", + }, + "StarCoder2-15B": { + DownloadSource.DEFAULT: "bigcode/starcoder2-15b", + DownloadSource.MODELSCOPE: "AI-ModelScope/starcoder2-15b", + }, + } +) + + +register_model_group( + models={ + "TeleChat-1B-Chat": { + DownloadSource.DEFAULT: "Tele-AI/TeleChat-1B", + DownloadSource.MODELSCOPE: "TeleAI/TeleChat-1B", + }, + "TeleChat-7B-Chat": { + DownloadSource.DEFAULT: "Tele-AI/telechat-7B", + DownloadSource.MODELSCOPE: "TeleAI/telechat-7B", + }, + "TeleChat-12B-Chat": { + DownloadSource.DEFAULT: "Tele-AI/TeleChat-12B", + DownloadSource.MODELSCOPE: "TeleAI/TeleChat-12B", + }, + "TeleChat-12B-v2-Chat": { + DownloadSource.DEFAULT: "Tele-AI/TeleChat-12B-v2", + DownloadSource.MODELSCOPE: "TeleAI/TeleChat-12B-v2", + }, + }, + template="telechat", +) + + +register_model_group( + models={ + "Vicuna1.5-7B-Chat": { + DownloadSource.DEFAULT: "lmsys/vicuna-7b-v1.5", + DownloadSource.MODELSCOPE: "Xorbits/vicuna-7b-v1.5", + }, + "Vicuna1.5-13B-Chat": { + DownloadSource.DEFAULT: "lmsys/vicuna-13b-v1.5", + DownloadSource.MODELSCOPE: "Xorbits/vicuna-13b-v1.5", + }, + }, + template="vicuna", +) + + +register_model_group( + models={ + "XuanYuan-6B": { + DownloadSource.DEFAULT: "Duxiaoman-DI/XuanYuan-6B", + DownloadSource.MODELSCOPE: "Duxiaoman-DI/XuanYuan-6B", + }, + "XuanYuan-70B": { + DownloadSource.DEFAULT: "Duxiaoman-DI/XuanYuan-70B", + DownloadSource.MODELSCOPE: "Duxiaoman-DI/XuanYuan-70B", + }, + "XuanYuan-2-70B": { + DownloadSource.DEFAULT: "Duxiaoman-DI/XuanYuan2-70B", + DownloadSource.MODELSCOPE: "Duxiaoman-DI/XuanYuan2-70B", + }, + "XuanYuan-6B-Chat": { + DownloadSource.DEFAULT: "Duxiaoman-DI/XuanYuan-6B-Chat", + DownloadSource.MODELSCOPE: "Duxiaoman-DI/XuanYuan-6B-Chat", + }, + "XuanYuan-70B-Chat": { + DownloadSource.DEFAULT: "Duxiaoman-DI/XuanYuan-70B-Chat", + DownloadSource.MODELSCOPE: "Duxiaoman-DI/XuanYuan-70B-Chat", + }, + "XuanYuan-2-70B-Chat": { + DownloadSource.DEFAULT: "Duxiaoman-DI/XuanYuan2-70B-Chat", + DownloadSource.MODELSCOPE: "Duxiaoman-DI/XuanYuan2-70B-Chat", + }, + "XuanYuan-6B-int8-Chat": { + DownloadSource.DEFAULT: "Duxiaoman-DI/XuanYuan-6B-Chat-8bit", + DownloadSource.MODELSCOPE: "Duxiaoman-DI/XuanYuan-6B-Chat-8bit", + }, + "XuanYuan-6B-int4-Chat": { + DownloadSource.DEFAULT: "Duxiaoman-DI/XuanYuan-6B-Chat-4bit", + DownloadSource.MODELSCOPE: "Duxiaoman-DI/XuanYuan-6B-Chat-4bit", + }, + "XuanYuan-70B-int8-Chat": { + DownloadSource.DEFAULT: "Duxiaoman-DI/XuanYuan-70B-Chat-8bit", + DownloadSource.MODELSCOPE: "Duxiaoman-DI/XuanYuan-70B-Chat-8bit", + }, + "XuanYuan-70B-int4-Chat": { + DownloadSource.DEFAULT: "Duxiaoman-DI/XuanYuan-70B-Chat-4bit", + DownloadSource.MODELSCOPE: "Duxiaoman-DI/XuanYuan-70B-Chat-4bit", + }, + "XuanYuan-2-70B-int8-Chat": { + DownloadSource.DEFAULT: "Duxiaoman-DI/XuanYuan2-70B-Chat-8bit", + DownloadSource.MODELSCOPE: "Duxiaoman-DI/XuanYuan2-70B-Chat-8bit", + }, + "XuanYuan-2-70B-int4-Chat": { + DownloadSource.DEFAULT: "Duxiaoman-DI/XuanYuan2-70B-Chat-4bit", + DownloadSource.MODELSCOPE: "Duxiaoman-DI/XuanYuan2-70B-Chat-4bit", + }, + }, + template="xuanyuan", +) + + +register_model_group( + models={ + "XVERSE-7B": { + DownloadSource.DEFAULT: "xverse/XVERSE-7B", + DownloadSource.MODELSCOPE: "xverse/XVERSE-7B", + }, + "XVERSE-13B": { + DownloadSource.DEFAULT: "xverse/XVERSE-13B", + DownloadSource.MODELSCOPE: "xverse/XVERSE-13B", + }, + "XVERSE-65B": { + DownloadSource.DEFAULT: "xverse/XVERSE-65B", + DownloadSource.MODELSCOPE: "xverse/XVERSE-65B", + }, + "XVERSE-65B-2": { + DownloadSource.DEFAULT: "xverse/XVERSE-65B-2", + DownloadSource.MODELSCOPE: "xverse/XVERSE-65B-2", + }, + "XVERSE-7B-Chat": { + DownloadSource.DEFAULT: "xverse/XVERSE-7B-Chat", + DownloadSource.MODELSCOPE: "xverse/XVERSE-7B-Chat", + }, + "XVERSE-13B-Chat": { + DownloadSource.DEFAULT: "xverse/XVERSE-13B-Chat", + DownloadSource.MODELSCOPE: "xverse/XVERSE-13B-Chat", + }, + "XVERSE-65B-Chat": { + DownloadSource.DEFAULT: "xverse/XVERSE-65B-Chat", + DownloadSource.MODELSCOPE: "xverse/XVERSE-65B-Chat", + }, + "XVERSE-MoE-A4.2B": { + DownloadSource.DEFAULT: "xverse/XVERSE-MoE-A4.2B", + DownloadSource.MODELSCOPE: "xverse/XVERSE-MoE-A4.2B", + }, + "XVERSE-7B-int8-Chat": { + DownloadSource.DEFAULT: "xverse/XVERSE-7B-Chat-GPTQ-Int8", + DownloadSource.MODELSCOPE: "xverse/XVERSE-7B-Chat-GPTQ-Int8", + }, + "XVERSE-7B-int4-Chat": { + DownloadSource.DEFAULT: "xverse/XVERSE-7B-Chat-GPTQ-Int4", + DownloadSource.MODELSCOPE: "xverse/XVERSE-7B-Chat-GPTQ-Int4", + }, + "XVERSE-13B-int8-Chat": { + DownloadSource.DEFAULT: "xverse/XVERSE-13B-Chat-GPTQ-Int8", + DownloadSource.MODELSCOPE: "xverse/XVERSE-13B-Chat-GPTQ-Int8", + }, + "XVERSE-13B-int4-Chat": { + DownloadSource.DEFAULT: "xverse/XVERSE-13B-Chat-GPTQ-Int4", + DownloadSource.MODELSCOPE: "xverse/XVERSE-13B-Chat-GPTQ-Int4", + }, + "XVERSE-65B-int4-Chat": { + DownloadSource.DEFAULT: "xverse/XVERSE-65B-Chat-GPTQ-Int4", + DownloadSource.MODELSCOPE: "xverse/XVERSE-65B-Chat-GPTQ-Int4", + }, + }, + template="xverse", +) + + +register_model_group( + models={ + "Yayi-7B": { + DownloadSource.DEFAULT: "wenge-research/yayi-7b-llama2", + DownloadSource.MODELSCOPE: "AI-ModelScope/yayi-7b-llama2", + }, + "Yayi-13B": { + DownloadSource.DEFAULT: "wenge-research/yayi-13b-llama2", + DownloadSource.MODELSCOPE: "AI-ModelScope/yayi-13b-llama2", + }, + }, + template="yayi", +) + + +register_model_group( + models={ + "Yi-6B": { + DownloadSource.DEFAULT: "01-ai/Yi-6B", + DownloadSource.MODELSCOPE: "01ai/Yi-6B", + }, + "Yi-9B": { + DownloadSource.DEFAULT: "01-ai/Yi-9B", + DownloadSource.MODELSCOPE: "01ai/Yi-9B", + }, + "Yi-34B": { + DownloadSource.DEFAULT: "01-ai/Yi-34B", + DownloadSource.MODELSCOPE: "01ai/Yi-34B", + }, + "Yi-6B-Chat": { + DownloadSource.DEFAULT: "01-ai/Yi-6B-Chat", + DownloadSource.MODELSCOPE: "01ai/Yi-6B-Chat", + }, + "Yi-34B-Chat": { + DownloadSource.DEFAULT: "01-ai/Yi-34B-Chat", + DownloadSource.MODELSCOPE: "01ai/Yi-34B-Chat", + }, + "Yi-6B-int8-Chat": { + DownloadSource.DEFAULT: "01-ai/Yi-6B-Chat-8bits", + DownloadSource.MODELSCOPE: "01ai/Yi-6B-Chat-8bits", + }, + "Yi-6B-int4-Chat": { + DownloadSource.DEFAULT: "01-ai/Yi-6B-Chat-4bits", + DownloadSource.MODELSCOPE: "01ai/Yi-6B-Chat-4bits", + }, + "Yi-34B-int8-Chat": { + DownloadSource.DEFAULT: "01-ai/Yi-34B-Chat-8bits", + DownloadSource.MODELSCOPE: "01ai/Yi-34B-Chat-8bits", + }, + "Yi-34B-int4-Chat": { + DownloadSource.DEFAULT: "01-ai/Yi-34B-Chat-4bits", + DownloadSource.MODELSCOPE: "01ai/Yi-34B-Chat-4bits", + }, + "Yi-1.5-6B": { + DownloadSource.DEFAULT: "01-ai/Yi-1.5-6B", + DownloadSource.MODELSCOPE: "01ai/Yi-1.5-6B", + }, + "Yi-1.5-9B": { + DownloadSource.DEFAULT: "01-ai/Yi-1.5-9B", + DownloadSource.MODELSCOPE: "01ai/Yi-1.5-9B", + }, + "Yi-1.5-34B": { + DownloadSource.DEFAULT: "01-ai/Yi-1.5-34B", + DownloadSource.MODELSCOPE: "01ai/Yi-1.5-34B", + }, + "Yi-1.5-6B-Chat": { + DownloadSource.DEFAULT: "01-ai/Yi-1.5-6B-Chat", + DownloadSource.MODELSCOPE: "01ai/Yi-1.5-6B-Chat", + }, + "Yi-1.5-9B-Chat": { + DownloadSource.DEFAULT: "01-ai/Yi-1.5-9B-Chat", + DownloadSource.MODELSCOPE: "01ai/Yi-1.5-9B-Chat", + }, + "Yi-1.5-34B-Chat": { + DownloadSource.DEFAULT: "01-ai/Yi-1.5-34B-Chat", + DownloadSource.MODELSCOPE: "01ai/Yi-1.5-34B-Chat", + }, + }, + template="yi", +) + + +register_model_group( + models={ + "YiVL-6B-Chat": { + DownloadSource.DEFAULT: "BUAADreamer/Yi-VL-6B-hf", + }, + "YiVL-34B-Chat": { + DownloadSource.DEFAULT: "BUAADreamer/Yi-VL-34B-hf", + }, + }, + template="yi_vl", + vision=True, +) + + +register_model_group( + models={ + "Yuan2-2B-Chat": { + DownloadSource.DEFAULT: "IEITYuan/Yuan2-2B-hf", + DownloadSource.MODELSCOPE: "YuanLLM/Yuan2.0-2B-hf", + }, + "Yuan2-51B-Chat": { + DownloadSource.DEFAULT: "IEITYuan/Yuan2-51B-hf", + DownloadSource.MODELSCOPE: "YuanLLM/Yuan2.0-51B-hf", + }, + "Yuan2-102B-Chat": { + DownloadSource.DEFAULT: "IEITYuan/Yuan2-102B-hf", + DownloadSource.MODELSCOPE: "YuanLLM/Yuan2.0-102B-hf", + }, + }, + template="yuan", +) + + +register_model_group( + models={ + "Zephyr-7B-Alpha-Chat": { + DownloadSource.DEFAULT: "HuggingFaceH4/zephyr-7b-alpha", + DownloadSource.MODELSCOPE: "AI-ModelScope/zephyr-7b-alpha", + }, + "Zephyr-7B-Beta-Chat": { + DownloadSource.DEFAULT: "HuggingFaceH4/zephyr-7b-beta", + DownloadSource.MODELSCOPE: "modelscope/zephyr-7b-beta", + }, + "Zephyr-141B-ORPO-Chat": { + DownloadSource.DEFAULT: "HuggingFaceH4/zephyr-orpo-141b-A35b-v0.1", + }, + }, + template="zephyr", +) diff --git a/IOPO/Method-IOPO/src/llamafactory/extras/env.py b/IOPO/Method-IOPO/src/llamafactory/extras/env.py new file mode 100644 index 00000000..5a2641de --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/extras/env.py @@ -0,0 +1,75 @@ +# Copyright 2024 HuggingFace Inc. and the LlamaFactory team. +# +# This code is inspired by the HuggingFace's transformers library. +# https://github.com/huggingface/transformers/blob/v4.40.0/src/transformers/commands/env.py +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import platform + +import accelerate +import datasets +import peft +import torch +import transformers +import trl +from transformers.utils import is_torch_cuda_available, is_torch_npu_available + + +VERSION = "0.8.4.dev0" + + +def print_env() -> None: + info = { + "`llamafactory` version": VERSION, + "Platform": platform.platform(), + "Python version": platform.python_version(), + "PyTorch version": torch.__version__, + "Transformers version": transformers.__version__, + "Datasets version": datasets.__version__, + "Accelerate version": accelerate.__version__, + "PEFT version": peft.__version__, + "TRL version": trl.__version__, + } + + if is_torch_cuda_available(): + info["PyTorch version"] += " (GPU)" + info["GPU type"] = torch.cuda.get_device_name() + + if is_torch_npu_available(): + info["PyTorch version"] += " (NPU)" + info["NPU type"] = torch.npu.get_device_name() + info["CANN version"] = torch.version.cann + + try: + import deepspeed # type: ignore + + info["DeepSpeed version"] = deepspeed.__version__ + except Exception: + pass + + try: + import bitsandbytes + + info["Bitsandbytes version"] = bitsandbytes.__version__ + except Exception: + pass + + try: + import vllm + + info["vLLM version"] = vllm.__version__ + except Exception: + pass + + print("\n" + "\n".join(["- {}: {}".format(key, value) for key, value in info.items()]) + "\n") diff --git a/IOPO/Method-IOPO/src/llamafactory/extras/logging.py b/IOPO/Method-IOPO/src/llamafactory/extras/logging.py new file mode 100644 index 00000000..67622212 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/extras/logging.py @@ -0,0 +1,82 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import logging +import os +import sys +from concurrent.futures import ThreadPoolExecutor + +from .constants import RUNNING_LOG + + +class LoggerHandler(logging.Handler): + r""" + Logger handler used in Web UI. + """ + + def __init__(self, output_dir: str) -> None: + super().__init__() + formatter = logging.Formatter( + fmt="%(asctime)s - %(levelname)s - %(name)s - %(message)s", datefmt="%m/%d/%Y %H:%M:%S" + ) + self.setLevel(logging.INFO) + self.setFormatter(formatter) + + os.makedirs(output_dir, exist_ok=True) + self.running_log = os.path.join(output_dir, RUNNING_LOG) + if os.path.exists(self.running_log): + os.remove(self.running_log) + + self.thread_pool = ThreadPoolExecutor(max_workers=1) + + def _write_log(self, log_entry: str) -> None: + with open(self.running_log, "a", encoding="utf-8") as f: + f.write(log_entry + "\n\n") + + def emit(self, record) -> None: + if record.name == "httpx": + return + + log_entry = self.format(record) + self.thread_pool.submit(self._write_log, log_entry) + + def close(self) -> None: + self.thread_pool.shutdown(wait=True) + return super().close() + + +def get_logger(name: str) -> logging.Logger: + r""" + Gets a standard logger with a stream hander to stdout. + """ + formatter = logging.Formatter( + fmt="%(asctime)s - %(levelname)s - %(name)s - %(message)s", datefmt="%m/%d/%Y %H:%M:%S" + ) + handler = logging.StreamHandler(sys.stdout) + handler.setFormatter(formatter) + + logger = logging.getLogger(name) + logger.setLevel(logging.INFO) + logger.addHandler(handler) + + return logger + + +def reset_logging() -> None: + r""" + Removes basic config of root logger. (unused in script) + """ + root = logging.getLogger() + list(map(root.removeHandler, root.handlers)) + list(map(root.removeFilter, root.filters)) diff --git a/IOPO/Method-IOPO/src/llamafactory/extras/misc.py b/IOPO/Method-IOPO/src/llamafactory/extras/misc.py new file mode 100644 index 00000000..c1395552 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/extras/misc.py @@ -0,0 +1,228 @@ +# Copyright 2024 HuggingFace Inc. and the LlamaFactory team. +# +# This code is inspired by the HuggingFace's PEFT library. +# https://github.com/huggingface/peft/blob/v0.10.0/src/peft/peft_model.py +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import gc +import os +from typing import TYPE_CHECKING, Tuple, Union + +import torch +import transformers.dynamic_module_utils +from transformers import InfNanRemoveLogitsProcessor, LogitsProcessorList +from transformers.dynamic_module_utils import get_relative_imports +from transformers.utils import ( + is_torch_bf16_gpu_available, + is_torch_cuda_available, + is_torch_mps_available, + is_torch_npu_available, + is_torch_xpu_available, +) +from transformers.utils.versions import require_version + +from .logging import get_logger + + +_is_fp16_available = is_torch_npu_available() or is_torch_cuda_available() +try: + _is_bf16_available = is_torch_bf16_gpu_available() +except Exception: + _is_bf16_available = False + + +if TYPE_CHECKING: + from numpy.typing import NDArray + + from ..hparams import ModelArguments + + +logger = get_logger(__name__) + + +class AverageMeter: + r""" + Computes and stores the average and current value. + """ + + def __init__(self): + self.reset() + + def reset(self): + self.val = 0 + self.avg = 0 + self.sum = 0 + self.count = 0 + + def update(self, val, n=1): + self.val = val + self.sum += val * n + self.count += n + self.avg = self.sum / self.count + + +def check_dependencies() -> None: + r""" + Checks the version of the required packages. + """ + if os.environ.get("DISABLE_VERSION_CHECK", "0").lower() in ["true", "1"]: + logger.warning("Version checking has been disabled, may lead to unexpected behaviors.") + else: + require_version("transformers>=4.41.2,<=4.43.4", "To fix: pip install transformers>=4.41.2,<=4.43.4") + require_version("datasets>=2.16.0,<=2.20.0", "To fix: pip install datasets>=2.16.0,<=2.20.0") + require_version("accelerate>=0.30.1,<=0.32.0", "To fix: pip install accelerate>=0.30.1,<=0.32.0") + require_version("peft>=0.11.1,<=0.12.0", "To fix: pip install peft>=0.11.1,<=0.12.0") + require_version("trl>=0.8.6,<=0.9.6", "To fix: pip install trl>=0.8.6,<=0.9.6") + + +def count_parameters(model: "torch.nn.Module") -> Tuple[int, int]: + r""" + Returns the number of trainable parameters and number of all parameters in the model. + """ + trainable_params, all_param = 0, 0 + for param in model.parameters(): + num_params = param.numel() + # if using DS Zero 3 and the weights are initialized empty + if num_params == 0 and hasattr(param, "ds_numel"): + num_params = param.ds_numel + + # Due to the design of 4bit linear layers from bitsandbytes, multiply the number of parameters by itemsize + if param.__class__.__name__ == "Params4bit": + if hasattr(param, "quant_storage") and hasattr(param.quant_storage, "itemsize"): + num_bytes = param.quant_storage.itemsize + elif hasattr(param, "element_size"): # for older pytorch version + num_bytes = param.element_size() + else: + num_bytes = 1 + + num_params = num_params * 2 * num_bytes + + all_param += num_params + if param.requires_grad: + trainable_params += num_params + + return trainable_params, all_param + + +def get_current_device() -> "torch.device": + r""" + Gets the current available device. + """ + if is_torch_xpu_available(): + device = "xpu:{}".format(os.environ.get("LOCAL_RANK", "0")) + elif is_torch_npu_available(): + device = "npu:{}".format(os.environ.get("LOCAL_RANK", "0")) + elif is_torch_mps_available(): + device = "mps:{}".format(os.environ.get("LOCAL_RANK", "0")) + elif is_torch_cuda_available(): + device = "cuda:{}".format(os.environ.get("LOCAL_RANK", "0")) + else: + device = "cpu" + + return torch.device(device) + + +def get_device_count() -> int: + r""" + Gets the number of available GPU or NPU devices. + """ + if is_torch_npu_available(): + return torch.npu.device_count() + elif is_torch_cuda_available(): + return torch.cuda.device_count() + else: + return 0 + + +def get_logits_processor() -> "LogitsProcessorList": + r""" + Gets logits processor that removes NaN and Inf logits. + """ + logits_processor = LogitsProcessorList() + logits_processor.append(InfNanRemoveLogitsProcessor()) + return logits_processor + + +def has_tokenized_data(path: "os.PathLike") -> bool: + r""" + Checks if the path has a tokenized dataset. + """ + return os.path.isdir(path) and len(os.listdir(path)) > 0 + + +def infer_optim_dtype(model_dtype: "torch.dtype") -> "torch.dtype": + r""" + Infers the optimal dtype according to the model_dtype and device compatibility. + """ + if _is_bf16_available and model_dtype == torch.bfloat16: + return torch.bfloat16 + elif _is_fp16_available: + return torch.float16 + else: + return torch.float32 + + +def is_gpu_or_npu_available() -> bool: + r""" + Checks if the GPU or NPU is available. + """ + return is_torch_npu_available() or is_torch_cuda_available() + + +def numpify(inputs: Union["NDArray", "torch.Tensor"]) -> "NDArray": + if isinstance(inputs, torch.Tensor): + inputs = inputs.cpu() + if inputs.dtype == torch.bfloat16: # numpy does not support bfloat16 until 1.21.4 + inputs = inputs.to(torch.float32) + + inputs = inputs.numpy() + + return inputs + + +def skip_check_imports() -> None: + if os.environ.get("FORCE_CHECK_IMPORTS", "0").lower() not in ["true", "1"]: + transformers.dynamic_module_utils.check_imports = get_relative_imports + + +def torch_gc() -> None: + r""" + Collects GPU or NPU memory. + """ + gc.collect() + if is_torch_xpu_available(): + torch.xpu.empty_cache() + elif is_torch_npu_available(): + torch.npu.empty_cache() + elif is_torch_mps_available(): + torch.mps.empty_cache() + elif is_torch_cuda_available(): + torch.cuda.empty_cache() + + +def try_download_model_from_ms(model_args: "ModelArguments") -> str: + if not use_modelscope() or os.path.exists(model_args.model_name_or_path): + return model_args.model_name_or_path + + try: + from modelscope import snapshot_download + + revision = "master" if model_args.model_revision == "main" else model_args.model_revision + return snapshot_download(model_args.model_name_or_path, revision=revision, cache_dir=model_args.cache_dir) + except ImportError: + raise ImportError("Please install modelscope via `pip install modelscope -U`") + + +def use_modelscope() -> bool: + return os.environ.get("USE_MODELSCOPE_HUB", "0").lower() in ["true", "1"] diff --git a/IOPO/Method-IOPO/src/llamafactory/extras/packages.py b/IOPO/Method-IOPO/src/llamafactory/extras/packages.py new file mode 100644 index 00000000..ae270d1b --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/extras/packages.py @@ -0,0 +1,93 @@ +# Copyright 2024 HuggingFace Inc. and the LlamaFactory team. +# +# This code is inspired by the HuggingFace's transformers library. +# https://github.com/huggingface/transformers/blob/v4.40.0/src/transformers/utils/import_utils.py +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import importlib.metadata +import importlib.util +from functools import lru_cache +from typing import TYPE_CHECKING + +from packaging import version + + +if TYPE_CHECKING: + from packaging.version import Version + + +def _is_package_available(name: str) -> bool: + return importlib.util.find_spec(name) is not None + + +def _get_package_version(name: str) -> "Version": + try: + return version.parse(importlib.metadata.version(name)) + except Exception: + return version.parse("0.0.0") + + +def is_fastapi_available(): + return _is_package_available("fastapi") + + +def is_galore_available(): + return _is_package_available("galore_torch") + + +def is_gradio_available(): + return _is_package_available("gradio") + + +def is_matplotlib_available(): + return _is_package_available("matplotlib") + + +def is_pillow_available(): + return _is_package_available("PIL") + + +def is_requests_available(): + return _is_package_available("requests") + + +def is_rouge_available(): + return _is_package_available("rouge_chinese") + + +def is_starlette_available(): + return _is_package_available("sse_starlette") + + +@lru_cache +def is_transformers_version_greater_than_4_43(): + return _get_package_version("transformers") >= version.parse("4.43.0") + + +def is_uvicorn_available(): + return _is_package_available("uvicorn") + + +def is_vllm_available(): + return _is_package_available("vllm") + + +@lru_cache +def is_vllm_version_greater_than_0_5(): + return _get_package_version("vllm") >= version.parse("0.5.0") + + +@lru_cache +def is_vllm_version_greater_than_0_5_1(): + return _get_package_version("vllm") >= version.parse("0.5.1") diff --git a/IOPO/Method-IOPO/src/llamafactory/extras/ploting.py b/IOPO/Method-IOPO/src/llamafactory/extras/ploting.py new file mode 100644 index 00000000..596d55e7 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/extras/ploting.py @@ -0,0 +1,101 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import json +import math +import os +from typing import Any, Dict, List + +from transformers.trainer import TRAINER_STATE_NAME + +from .logging import get_logger +from .packages import is_matplotlib_available + + +if is_matplotlib_available(): + import matplotlib.figure + import matplotlib.pyplot as plt + + +logger = get_logger(__name__) + + +def smooth(scalars: List[float]) -> List[float]: + r""" + EMA implementation according to TensorBoard. + """ + if len(scalars) == 0: + return [] + + last = scalars[0] + smoothed = [] + weight = 1.8 * (1 / (1 + math.exp(-0.05 * len(scalars))) - 0.5) # a sigmoid function + for next_val in scalars: + smoothed_val = last * weight + (1 - weight) * next_val + smoothed.append(smoothed_val) + last = smoothed_val + return smoothed + + +def gen_loss_plot(trainer_log: List[Dict[str, Any]]) -> "matplotlib.figure.Figure": + r""" + Plots loss curves in LlamaBoard. + """ + plt.close("all") + plt.switch_backend("agg") + fig = plt.figure() + ax = fig.add_subplot(111) + steps, losses = [], [] + for log in trainer_log: + if log.get("loss", None): + steps.append(log["current_steps"]) + losses.append(log["loss"]) + + ax.plot(steps, losses, color="#1f77b4", alpha=0.4, label="original") + ax.plot(steps, smooth(losses), color="#1f77b4", label="smoothed") + ax.legend() + ax.set_xlabel("step") + ax.set_ylabel("loss") + return fig + + +def plot_loss(save_dictionary: os.PathLike, keys: List[str] = ["loss"]) -> None: + r""" + Plots loss curves and saves the image. + """ + plt.switch_backend("agg") + with open(os.path.join(save_dictionary, TRAINER_STATE_NAME), "r", encoding="utf-8") as f: + data = json.load(f) + + for key in keys: + steps, metrics = [], [] + for i in range(len(data["log_history"])): + if key in data["log_history"][i]: + steps.append(data["log_history"][i]["step"]) + metrics.append(data["log_history"][i][key]) + + if len(metrics) == 0: + logger.warning(f"No metric {key} to plot.") + continue + + plt.figure() + plt.plot(steps, metrics, color="#1f77b4", alpha=0.4, label="original") + plt.plot(steps, smooth(metrics), color="#1f77b4", label="smoothed") + plt.title("training {} of {}".format(key, save_dictionary)) + plt.xlabel("step") + plt.ylabel(key) + plt.legend() + figure_path = os.path.join(save_dictionary, "training_{}.png".format(key.replace("/", "_"))) + plt.savefig(figure_path, format="png", dpi=100) + print("Figure saved at:", figure_path) diff --git a/IOPO/Method-IOPO/src/llamafactory/hparams/__init__.py b/IOPO/Method-IOPO/src/llamafactory/hparams/__init__.py new file mode 100644 index 00000000..cfe448c1 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/hparams/__init__.py @@ -0,0 +1,32 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from .data_args import DataArguments +from .evaluation_args import EvaluationArguments +from .finetuning_args import FinetuningArguments +from .generating_args import GeneratingArguments +from .model_args import ModelArguments +from .parser import get_eval_args, get_infer_args, get_train_args + + +__all__ = [ + "DataArguments", + "EvaluationArguments", + "FinetuningArguments", + "GeneratingArguments", + "ModelArguments", + "get_eval_args", + "get_infer_args", + "get_train_args", +] diff --git a/IOPO/Method-IOPO/src/llamafactory/hparams/data_args.py b/IOPO/Method-IOPO/src/llamafactory/hparams/data_args.py new file mode 100644 index 00000000..0cb4a56d --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/hparams/data_args.py @@ -0,0 +1,146 @@ +# Copyright 2024 HuggingFace Inc. and the LlamaFactory team. +# +# This code is inspired by the HuggingFace's transformers library. +# https://github.com/huggingface/transformers/blob/v4.40.0/examples/pytorch/language-modeling/run_clm.py +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from dataclasses import dataclass, field +from typing import Literal, Optional + + +@dataclass +class DataArguments: + r""" + Arguments pertaining to what data we are going to input our model for training and evaluation. + """ + + template: Optional[str] = field( + default=None, + metadata={"help": "Which template to use for constructing prompts in training and inference."}, + ) + dataset: Optional[str] = field( + default=None, + metadata={"help": "The name of dataset(s) to use for training. Use commas to separate multiple datasets."}, + ) + eval_dataset: Optional[str] = field( + default=None, + metadata={"help": "The name of dataset(s) to use for evaluation. Use commas to separate multiple datasets."}, + ) + dataset_dir: str = field( + default="data", + metadata={"help": "Path to the folder containing the datasets."}, + ) + cutoff_len: int = field( + default=1024, + metadata={"help": "The cutoff length of the tokenized inputs in the dataset."}, + ) + train_on_prompt: bool = field( + default=False, + metadata={"help": "Whether or not to disable the mask on the prompt."}, + ) + mask_history: bool = field( + default=False, + metadata={"help": "Whether or not to mask the history and train on the last turn only."}, + ) + streaming: bool = field( + default=False, + metadata={"help": "Enable dataset streaming."}, + ) + buffer_size: int = field( + default=16384, + metadata={"help": "Size of the buffer to randomly sample examples from in dataset streaming."}, + ) + mix_strategy: Literal["concat", "interleave_under", "interleave_over"] = field( + default="concat", + metadata={"help": "Strategy to use in dataset mixing (concat/interleave) (undersampling/oversampling)."}, + ) + interleave_probs: Optional[str] = field( + default=None, + metadata={"help": "Probabilities to sample data from datasets. Use commas to separate multiple datasets."}, + ) + overwrite_cache: bool = field( + default=False, + metadata={"help": "Overwrite the cached training and evaluation sets."}, + ) + preprocessing_num_workers: Optional[int] = field( + default=None, + metadata={"help": "The number of processes to use for the pre-processing."}, + ) + max_samples: Optional[int] = field( + default=None, + metadata={"help": "For debugging purposes, truncate the number of examples for each dataset."}, + ) + eval_num_beams: Optional[int] = field( + default=None, + metadata={"help": "Number of beams to use for evaluation. This argument will be passed to `model.generate`"}, + ) + ignore_pad_token_for_loss: bool = field( + default=True, + metadata={"help": "Whether or not to ignore the tokens corresponding to the pad label in loss computation."}, + ) + val_size: float = field( + default=0.0, + metadata={"help": "Size of the development set, should be an integer or a float in range `[0,1)`."}, + ) + packing: Optional[bool] = field( + default=None, + metadata={"help": "Enable sequences packing in training. Will automatically enable in pre-training."}, + ) + neat_packing: bool = field( + default=False, + metadata={"help": "Enable sequence packing without cross-attention."}, + ) + tool_format: Optional[str] = field( + default=None, + metadata={"help": "Tool format to use for constructing function calling examples."}, + ) + tokenized_path: Optional[str] = field( + default=None, + metadata={"help": "Path to save or load the tokenized datasets."}, + ) + + def __post_init__(self): + def split_arg(arg): + if isinstance(arg, str): + return [item.strip() for item in arg.split(",")] + return arg + + self.dataset = split_arg(self.dataset) + self.eval_dataset = split_arg(self.eval_dataset) + + if self.dataset is None and self.val_size > 1e-6: + raise ValueError("Cannot specify `val_size` if `dataset` is None.") + + if self.eval_dataset is not None and self.val_size > 1e-6: + raise ValueError("Cannot specify `val_size` if `eval_dataset` is not None.") + + if self.interleave_probs is not None: + if self.mix_strategy == "concat": + raise ValueError("`interleave_probs` is only valid for interleaved mixing.") + + self.interleave_probs = list(map(float, split_arg(self.interleave_probs))) + if self.dataset is not None and len(self.dataset) != len(self.interleave_probs): + raise ValueError("The length of dataset and interleave probs should be identical.") + + if self.eval_dataset is not None and len(self.eval_dataset) != len(self.interleave_probs): + raise ValueError("The length of eval dataset and interleave probs should be identical.") + + if self.streaming and self.val_size > 1e-6 and self.val_size < 1: + raise ValueError("Streaming mode should have an integer val size.") + + if self.streaming and self.max_samples is not None: + raise ValueError("`max_samples` is incompatible with `streaming`.") + + if self.mask_history and self.train_on_prompt: + raise ValueError("`mask_history` is incompatible with `train_on_prompt`.") diff --git a/IOPO/Method-IOPO/src/llamafactory/hparams/evaluation_args.py b/IOPO/Method-IOPO/src/llamafactory/hparams/evaluation_args.py new file mode 100644 index 00000000..a7f221ca --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/hparams/evaluation_args.py @@ -0,0 +1,62 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import os +from dataclasses import dataclass, field +from typing import Literal, Optional + +from datasets import DownloadMode + + +@dataclass +class EvaluationArguments: + r""" + Arguments pertaining to specify the evaluation parameters. + """ + + task: str = field( + metadata={"help": "Name of the evaluation task."}, + ) + task_dir: str = field( + default="evaluation", + metadata={"help": "Path to the folder containing the evaluation datasets."}, + ) + batch_size: int = field( + default=4, + metadata={"help": "The batch size per GPU for evaluation."}, + ) + seed: int = field( + default=42, + metadata={"help": "Random seed to be used with data loaders."}, + ) + lang: Literal["en", "zh"] = field( + default="en", + metadata={"help": "Language used at evaluation."}, + ) + n_shot: int = field( + default=5, + metadata={"help": "Number of examplars for few-shot learning."}, + ) + save_dir: Optional[str] = field( + default=None, + metadata={"help": "Path to save the evaluation results."}, + ) + download_mode: DownloadMode = field( + default=DownloadMode.REUSE_DATASET_IF_EXISTS, + metadata={"help": "Download mode used for the evaluation datasets."}, + ) + + def __post_init__(self): + if self.save_dir is not None and os.path.exists(self.save_dir): + raise ValueError("`save_dir` already exists, use another one.") diff --git a/IOPO/Method-IOPO/src/llamafactory/hparams/finetuning_args.py b/IOPO/Method-IOPO/src/llamafactory/hparams/finetuning_args.py new file mode 100644 index 00000000..0fdc7833 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/hparams/finetuning_args.py @@ -0,0 +1,411 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from dataclasses import dataclass, field +from typing import List, Literal, Optional + + +@dataclass +class FreezeArguments: + r""" + Arguments pertaining to the freeze (partial-parameter) training. + """ + + freeze_trainable_layers: int = field( + default=2, + metadata={ + "help": ( + "The number of trainable layers for freeze (partial-parameter) fine-tuning. " + "Positive numbers mean the last n layers are set as trainable, " + "negative numbers mean the first n layers are set as trainable." + ) + }, + ) + freeze_trainable_modules: str = field( + default="all", + metadata={ + "help": ( + "Name(s) of trainable modules for freeze (partial-parameter) fine-tuning. " + "Use commas to separate multiple modules. " + "Use `all` to specify all the available modules." + ) + }, + ) + freeze_extra_modules: Optional[str] = field( + default=None, + metadata={ + "help": ( + "Name(s) of modules apart from hidden layers to be set as trainable " + "for freeze (partial-parameter) fine-tuning. " + "Use commas to separate multiple modules." + ) + }, + ) + + +@dataclass +class LoraArguments: + r""" + Arguments pertaining to the LoRA training. + """ + + additional_target: Optional[str] = field( + default=None, + metadata={ + "help": ( + "Name(s) of modules apart from LoRA layers to be set as trainable " + "and saved in the final checkpoint. " + "Use commas to separate multiple modules." + ) + }, + ) + lora_alpha: Optional[int] = field( + default=None, + metadata={"help": "The scale factor for LoRA fine-tuning (default: lora_rank * 2)."}, + ) + lora_dropout: float = field( + default=0.0, + metadata={"help": "Dropout rate for the LoRA fine-tuning."}, + ) + lora_rank: int = field( + default=8, + metadata={"help": "The intrinsic dimension for LoRA fine-tuning."}, + ) + lora_target: str = field( + default="all", + metadata={ + "help": ( + "Name(s) of target modules to apply LoRA. " + "Use commas to separate multiple modules. " + "Use `all` to specify all the linear modules." + ) + }, + ) + loraplus_lr_ratio: Optional[float] = field( + default=None, + metadata={"help": "LoRA plus learning rate ratio (lr_B / lr_A)."}, + ) + loraplus_lr_embedding: float = field( + default=1e-6, + metadata={"help": "LoRA plus learning rate for lora embedding layers."}, + ) + use_rslora: bool = field( + default=False, + metadata={"help": "Whether or not to use the rank stabilization scaling factor for LoRA layer."}, + ) + use_dora: bool = field( + default=False, + metadata={"help": "Whether or not to use the weight-decomposed lora method (DoRA)."}, + ) + pissa_init: bool = field( + default=False, + metadata={"help": "Whether or not to initialize a PiSSA adapter."}, + ) + pissa_iter: int = field( + default=16, + metadata={"help": "The number of iteration steps performed by FSVD in PiSSA. Use -1 to disable it."}, + ) + pissa_convert: bool = field( + default=False, + metadata={"help": "Whether or not to convert the PiSSA adapter to a normal LoRA adapter."}, + ) + create_new_adapter: bool = field( + default=False, + metadata={"help": "Whether or not to create a new adapter with randomly initialized weight."}, + ) + + +@dataclass +class RLHFArguments: + r""" + Arguments pertaining to the PPO, DPO and KTO training. + """ + + pref_beta: float = field( + default=0.1, + metadata={"help": "The beta parameter in the preference loss."}, + ) + pref_ftx: float = field( + default=0.0, + metadata={"help": "The supervised fine-tuning loss coefficient in DPO training."}, + ) + pref_loss: Literal["sigmoid", "hinge", "ipo", "kto_pair", "orpo", "simpo"] = field( + default="sigmoid", + metadata={"help": "The type of DPO loss to use."}, + ) + dpo_label_smoothing: float = field( + default=0.0, + metadata={"help": "The robust DPO label smoothing parameter in cDPO that should be between 0 and 0.5."}, + ) + iopo_label_smoothing: float = field( + default=0.0, + metadata={"help": "The robust IOPO label smoothing parameter in cDPO that should be between 0 and 0.5."}, + ) + kto_chosen_weight: float = field( + default=1.0, + metadata={"help": "The weight factor of the desirable losses in KTO training."}, + ) + kto_rejected_weight: float = field( + default=1.0, + metadata={"help": "The weight factor of the undesirable losses in KTO training."}, + ) + simpo_gamma: float = field( + default=0.5, + metadata={"help": "The target reward margin term in SimPO loss."}, + ) + ppo_buffer_size: int = field( + default=1, + metadata={"help": "The number of mini-batches to make experience buffer in a PPO optimization step."}, + ) + ppo_epochs: int = field( + default=4, + metadata={"help": "The number of epochs to perform in a PPO optimization step."}, + ) + ppo_score_norm: bool = field( + default=False, + metadata={"help": "Use score normalization in PPO training."}, + ) + ppo_target: float = field( + default=6.0, + metadata={"help": "Target KL value for adaptive KL control in PPO training."}, + ) + ppo_whiten_rewards: bool = field( + default=False, + metadata={"help": "Whiten the rewards before compute advantages in PPO training."}, + ) + ref_model: Optional[str] = field( + default=None, + metadata={"help": "Path to the reference model used for the PPO or DPO training."}, + ) + ref_model_adapters: Optional[str] = field( + default=None, + metadata={"help": "Path to the adapters of the reference model."}, + ) + ref_model_quantization_bit: Optional[int] = field( + default=None, + metadata={"help": "The number of bits to quantize the reference model."}, + ) + reward_model: Optional[str] = field( + default=None, + metadata={"help": "Path to the reward model used for the PPO training."}, + ) + reward_model_adapters: Optional[str] = field( + default=None, + metadata={"help": "Path to the adapters of the reward model."}, + ) + reward_model_quantization_bit: Optional[int] = field( + default=None, + metadata={"help": "The number of bits to quantize the reward model."}, + ) + reward_model_type: Literal["lora", "full", "api"] = field( + default="lora", + metadata={"help": "The type of the reward model in PPO training. Lora model only supports lora training."}, + ) + + +@dataclass +class GaloreArguments: + r""" + Arguments pertaining to the GaLore algorithm. + """ + + use_galore: bool = field( + default=False, + metadata={"help": "Whether or not to use the gradient low-Rank projection (GaLore)."}, + ) + galore_target: str = field( + default="all", + metadata={ + "help": ( + "Name(s) of modules to apply GaLore. Use commas to separate multiple modules. " + "Use `all` to specify all the linear modules." + ) + }, + ) + galore_rank: int = field( + default=16, + metadata={"help": "The rank of GaLore gradients."}, + ) + galore_update_interval: int = field( + default=200, + metadata={"help": "Number of steps to update the GaLore projection."}, + ) + galore_scale: float = field( + default=0.25, + metadata={"help": "GaLore scaling coefficient."}, + ) + galore_proj_type: Literal["std", "reverse_std", "right", "left", "full"] = field( + default="std", + metadata={"help": "Type of GaLore projection."}, + ) + galore_layerwise: bool = field( + default=False, + metadata={"help": "Whether or not to enable layer-wise update to further save memory."}, + ) + + +@dataclass +class BAdamArgument: + r""" + Arguments pertaining to the BAdam optimizer. + """ + + use_badam: bool = field( + default=False, + metadata={"help": "Whether or not to use the BAdam optimizer."}, + ) + badam_mode: Literal["layer", "ratio"] = field( + default="layer", + metadata={"help": "Whether to use layer-wise or ratio-wise BAdam optimizer."}, + ) + badam_start_block: Optional[int] = field( + default=None, + metadata={"help": "The starting block index for layer-wise BAdam."}, + ) + badam_switch_mode: Optional[Literal["ascending", "descending", "random", "fixed"]] = field( + default="ascending", + metadata={"help": "the strategy of picking block to update for layer-wise BAdam."}, + ) + badam_switch_interval: Optional[int] = field( + default=50, + metadata={ + "help": "Number of steps to update the block for layer-wise BAdam. Use -1 to disable the block update." + }, + ) + badam_update_ratio: float = field( + default=0.05, + metadata={"help": "The ratio of the update for ratio-wise BAdam."}, + ) + badam_mask_mode: Literal["adjacent", "scatter"] = field( + default="adjacent", + metadata={ + "help": ( + "The mode of the mask for BAdam optimizer. " + "`adjacent` means that the trainable parameters are adjacent to each other, " + "`scatter` means that trainable parameters are randomly choosed from the weight." + ) + }, + ) + badam_verbose: int = field( + default=0, + metadata={ + "help": ( + "The verbosity level of BAdam optimizer. " + "0 for no print, 1 for print the block prefix, 2 for print trainable parameters." + ) + }, + ) + + +@dataclass +class FinetuningArguments(FreezeArguments, LoraArguments, RLHFArguments, GaloreArguments, BAdamArgument): + r""" + Arguments pertaining to which techniques we are going to fine-tuning with. + """ + + pure_bf16: bool = field( + default=False, + metadata={"help": "Whether or not to train model in purely bf16 precision (without AMP)."}, + ) + stage: Literal["pt", "sft", "rm", "ppo", "dpo", "kto", "iopo"] = field( + default="sft", + metadata={"help": "Which stage will be performed in training."}, + ) + finetuning_type: Literal["lora", "freeze", "full"] = field( + default="lora", + metadata={"help": "Which fine-tuning method to use."}, + ) + use_llama_pro: bool = field( + default=False, + metadata={"help": "Whether or not to make only the parameters in the expanded blocks trainable."}, + ) + use_adam_mini: bool = field( + default=False, + metadata={"help": "Whether or not to use the Adam-mini optimizer."}, + ) + freeze_vision_tower: bool = field( + default=True, + metadata={"help": "Whether ot not to freeze vision tower in MLLM training."}, + ) + train_mm_proj_only: bool = field( + default=False, + metadata={"help": "Whether or not to train the multimodal projector for MLLM only."}, + ) + compute_accuracy: bool = field( + default=False, + metadata={"help": "Whether or not to compute the token-level accuracy at evaluation."}, + ) + plot_loss: bool = field( + default=False, + metadata={"help": "Whether or not to save the training loss curves."}, + ) + + def __post_init__(self): + def split_arg(arg): + if isinstance(arg, str): + return [item.strip() for item in arg.split(",")] + return arg + + self.freeze_trainable_modules: List[str] = split_arg(self.freeze_trainable_modules) + self.freeze_extra_modules: Optional[List[str]] = split_arg(self.freeze_extra_modules) + self.lora_alpha: int = self.lora_alpha or self.lora_rank * 2 + self.lora_target: List[str] = split_arg(self.lora_target) + self.additional_target: Optional[List[str]] = split_arg(self.additional_target) + self.galore_target: List[str] = split_arg(self.galore_target) + self.freeze_vision_tower = self.freeze_vision_tower or self.train_mm_proj_only + self.use_ref_model = (self.stage == "dpo" or self.stage == "iopo") and self.pref_loss not in ["orpo", "simpo"] + + assert self.finetuning_type in ["lora", "freeze", "full"], "Invalid fine-tuning method." + assert self.ref_model_quantization_bit in [None, 8, 4], "We only accept 4-bit or 8-bit quantization." + assert self.reward_model_quantization_bit in [None, 8, 4], "We only accept 4-bit or 8-bit quantization." + + if self.stage == "ppo" and self.reward_model is None: + raise ValueError("`reward_model` is necessary for PPO training.") + + if self.stage == "ppo" and self.reward_model_type == "lora" and self.finetuning_type != "lora": + raise ValueError("`reward_model_type` cannot be lora for Freeze/Full PPO training.") + + if self.stage == "dpo" and self.pref_loss != "sigmoid" and self.dpo_label_smoothing > 1e-6: + raise ValueError("`dpo_label_smoothing` is only valid for sigmoid loss function.") + + if self.stage == "iopo" and self.pref_loss != "sigmoid" and self.iopo_label_smoothing > 1e-6: + raise ValueError("`iopo_label_smoothing` is only valid for sigmoid loss function.") + + if self.use_llama_pro and self.finetuning_type == "full": + raise ValueError("`use_llama_pro` is only valid for Freeze or LoRA training.") + + if self.finetuning_type == "lora" and (self.use_galore or self.use_badam): + raise ValueError("Cannot use LoRA with GaLore or BAdam together.") + + if self.use_galore and self.use_badam: + raise ValueError("Cannot use GaLore with BAdam together.") + + if self.pissa_init and (self.stage in ["ppo", "kto"] or self.use_ref_model): + raise ValueError("Cannot use PiSSA for current training stage.") + + if self.train_mm_proj_only and self.finetuning_type != "full": + raise ValueError("`train_mm_proj_only` is only valid for full training.") + + if self.finetuning_type != "lora": + if self.loraplus_lr_ratio is not None: + raise ValueError("`loraplus_lr_ratio` is only valid for LoRA training.") + + if self.use_rslora: + raise ValueError("`use_rslora` is only valid for LoRA training.") + + if self.use_dora: + raise ValueError("`use_dora` is only valid for LoRA training.") + + if self.pissa_init: + raise ValueError("`pissa_init` is only valid for LoRA training.") diff --git a/IOPO/Method-IOPO/src/llamafactory/hparams/generating_args.py b/IOPO/Method-IOPO/src/llamafactory/hparams/generating_args.py new file mode 100644 index 00000000..7ebb4eed --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/hparams/generating_args.py @@ -0,0 +1,74 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from dataclasses import asdict, dataclass, field +from typing import Any, Dict, Optional + + +@dataclass +class GeneratingArguments: + r""" + Arguments pertaining to specify the decoding parameters. + """ + + do_sample: bool = field( + default=True, + metadata={"help": "Whether or not to use sampling, use greedy decoding otherwise."}, + ) + temperature: float = field( + default=0.95, + metadata={"help": "The value used to modulate the next token probabilities."}, + ) + top_p: float = field( + default=0.7, + metadata={ + "help": "The smallest set of most probable tokens with probabilities that add up to top_p or higher are kept." + }, + ) + top_k: int = field( + default=50, + metadata={"help": "The number of highest probability vocabulary tokens to keep for top-k filtering."}, + ) + num_beams: int = field( + default=1, + metadata={"help": "Number of beams for beam search. 1 means no beam search."}, + ) + max_length: int = field( + default=1024, + metadata={"help": "The maximum length the generated tokens can have. It can be overridden by max_new_tokens."}, + ) + max_new_tokens: int = field( + default=1024, + metadata={"help": "The maximum numbers of tokens to generate, ignoring the number of tokens in the prompt."}, + ) + repetition_penalty: float = field( + default=1.0, + metadata={"help": "The parameter for repetition penalty. 1.0 means no penalty."}, + ) + length_penalty: float = field( + default=1.0, + metadata={"help": "Exponential penalty to the length that is used with beam-based generation."}, + ) + default_system: Optional[str] = field( + default=None, + metadata={"help": "Default system message to use in chat completion."}, + ) + + def to_dict(self) -> Dict[str, Any]: + args = asdict(self) + if args.get("max_new_tokens", -1) > 0: + args.pop("max_length", None) + else: + args.pop("max_new_tokens", None) + return args diff --git a/IOPO/Method-IOPO/src/llamafactory/hparams/model_args.py b/IOPO/Method-IOPO/src/llamafactory/hparams/model_args.py new file mode 100644 index 00000000..4ac47512 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/hparams/model_args.py @@ -0,0 +1,258 @@ +# Copyright 2024 HuggingFace Inc. and the LlamaFactory team. +# +# This code is inspired by the HuggingFace's transformers library. +# https://github.com/huggingface/transformers/blob/v4.40.0/examples/pytorch/language-modeling/run_clm.py +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from dataclasses import asdict, dataclass, field +from typing import TYPE_CHECKING, Any, Dict, Literal, Optional, Union + +from typing_extensions import Self + + +if TYPE_CHECKING: + import torch + + +@dataclass +class ModelArguments: + r""" + Arguments pertaining to which model/config/tokenizer we are going to fine-tune or infer. + """ + + model_name_or_path: str = field( + metadata={ + "help": "Path to the model weight or identifier from huggingface.co/models or modelscope.cn/models." + }, + ) + adapter_name_or_path: Optional[str] = field( + default=None, + metadata={ + "help": ( + "Path to the adapter weight or identifier from huggingface.co/models. " + "Use commas to separate multiple adapters." + ) + }, + ) + adapter_folder: Optional[str] = field( + default=None, + metadata={"help": "The folder containing the adapter weights to load."}, + ) + cache_dir: Optional[str] = field( + default=None, + metadata={"help": "Where to store the pre-trained models downloaded from huggingface.co or modelscope.cn."}, + ) + use_fast_tokenizer: bool = field( + default=True, + metadata={"help": "Whether or not to use one of the fast tokenizer (backed by the tokenizers library)."}, + ) + resize_vocab: bool = field( + default=False, + metadata={"help": "Whether or not to resize the tokenizer vocab and the embedding layers."}, + ) + split_special_tokens: bool = field( + default=False, + metadata={"help": "Whether or not the special tokens should be split during the tokenization process."}, + ) + new_special_tokens: Optional[str] = field( + default=None, + metadata={"help": "Special tokens to be added into the tokenizer. Use commas to separate multiple tokens."}, + ) + model_revision: str = field( + default="main", + metadata={"help": "The specific model version to use (can be a branch name, tag name or commit id)."}, + ) + low_cpu_mem_usage: bool = field( + default=True, + metadata={"help": "Whether or not to use memory-efficient model loading."}, + ) + quantization_method: Literal["bitsandbytes", "hqq", "eetq"] = field( + default="bitsandbytes", + metadata={"help": "Quantization method to use for on-the-fly quantization."}, + ) + quantization_bit: Optional[int] = field( + default=None, + metadata={"help": "The number of bits to quantize the model using bitsandbytes."}, + ) + quantization_type: Literal["fp4", "nf4"] = field( + default="nf4", + metadata={"help": "Quantization data type to use in int4 training."}, + ) + double_quantization: bool = field( + default=True, + metadata={"help": "Whether or not to use double quantization in int4 training."}, + ) + quantization_device_map: Optional[Literal["auto"]] = field( + default=None, + metadata={"help": "Device map used to infer the 4-bit quantized model, needs bitsandbytes>=0.43.0."}, + ) + rope_scaling: Optional[Literal["linear", "dynamic"]] = field( + default=None, + metadata={"help": "Which scaling strategy should be adopted for the RoPE embeddings."}, + ) + flash_attn: Literal["auto", "disabled", "sdpa", "fa2"] = field( + default="auto", + metadata={"help": "Enable FlashAttention for faster training and inference."}, + ) + shift_attn: bool = field( + default=False, + metadata={"help": "Enable shift short attention (S^2-Attn) proposed by LongLoRA."}, + ) + mixture_of_depths: Optional[Literal["convert", "load"]] = field( + default=None, + metadata={"help": "Convert the model to mixture-of-depths (MoD) or load the MoD model."}, + ) + use_unsloth: bool = field( + default=False, + metadata={"help": "Whether or not to use unsloth's optimization for the LoRA training."}, + ) + visual_inputs: bool = field( + default=False, + metadata={"help": "Whethor or not to use multimodal LLM that accepts visual inputs."}, + ) + moe_aux_loss_coef: Optional[float] = field( + default=None, + metadata={"help": "Coefficient of the auxiliary router loss in mixture-of-experts model."}, + ) + disable_gradient_checkpointing: bool = field( + default=False, + metadata={"help": "Whether or not to disable gradient checkpointing."}, + ) + upcast_layernorm: bool = field( + default=False, + metadata={"help": "Whether or not to upcast the layernorm weights in fp32."}, + ) + upcast_lmhead_output: bool = field( + default=False, + metadata={"help": "Whether or not to upcast the output of lm_head in fp32."}, + ) + train_from_scratch: bool = field( + default=False, + metadata={"help": "Whether or not to randomly initialize the model weights."}, + ) + infer_backend: Literal["huggingface", "vllm"] = field( + default="huggingface", + metadata={"help": "Backend engine used at inference."}, + ) + vllm_maxlen: int = field( + default=2048, + metadata={"help": "Maximum sequence (prompt + response) length of the vLLM engine."}, + ) + vllm_gpu_util: float = field( + default=0.9, + metadata={"help": "The fraction of GPU memory in (0,1) to be used for the vLLM engine."}, + ) + vllm_enforce_eager: bool = field( + default=False, + metadata={"help": "Whether or not to disable CUDA graph in the vLLM engine."}, + ) + vllm_max_lora_rank: int = field( + default=32, + metadata={"help": "Maximum rank of all LoRAs in the vLLM engine."}, + ) + offload_folder: str = field( + default="offload", + metadata={"help": "Path to offload model weights."}, + ) + use_cache: bool = field( + default=True, + metadata={"help": "Whether or not to use KV cache in generation."}, + ) + infer_dtype: Literal["auto", "float16", "bfloat16", "float32"] = field( + default="auto", + metadata={"help": "Data type for model weights and activations at inference."}, + ) + hf_hub_token: Optional[str] = field( + default=None, + metadata={"help": "Auth token to log in with Hugging Face Hub."}, + ) + ms_hub_token: Optional[str] = field( + default=None, + metadata={"help": "Auth token to log in with ModelScope Hub."}, + ) + export_dir: Optional[str] = field( + default=None, + metadata={"help": "Path to the directory to save the exported model."}, + ) + export_size: int = field( + default=1, + metadata={"help": "The file shard size (in GB) of the exported model."}, + ) + export_device: Literal["cpu", "auto"] = field( + default="cpu", + metadata={"help": "The device used in model export, use `auto` to accelerate exporting."}, + ) + export_quantization_bit: Optional[int] = field( + default=None, + metadata={"help": "The number of bits to quantize the exported model."}, + ) + export_quantization_dataset: Optional[str] = field( + default=None, + metadata={"help": "Path to the dataset or dataset name to use in quantizing the exported model."}, + ) + export_quantization_nsamples: int = field( + default=128, + metadata={"help": "The number of samples used for quantization."}, + ) + export_quantization_maxlen: int = field( + default=1024, + metadata={"help": "The maximum length of the model inputs used for quantization."}, + ) + export_legacy_format: bool = field( + default=False, + metadata={"help": "Whether or not to save the `.bin` files instead of `.safetensors`."}, + ) + export_hub_model_id: Optional[str] = field( + default=None, + metadata={"help": "The name of the repository if push the model to the Hugging Face hub."}, + ) + print_param_status: bool = field( + default=False, + metadata={"help": "For debugging purposes, print the status of the parameters in the model."}, + ) + + def __post_init__(self): + self.compute_dtype: Optional["torch.dtype"] = None + self.device_map: Optional[Union[str, Dict[str, Any]]] = None + self.model_max_length: Optional[int] = None + self.block_diag_attn: bool = False + + if self.split_special_tokens and self.use_fast_tokenizer: + raise ValueError("`split_special_tokens` is only supported for slow tokenizers.") + + if self.visual_inputs and self.use_unsloth: + raise ValueError("Unsloth does not support MLLM yet. Stay tuned.") + + if self.adapter_name_or_path is not None: # support merging multiple lora weights + self.adapter_name_or_path = [path.strip() for path in self.adapter_name_or_path.split(",")] + + if self.new_special_tokens is not None: # support multiple special tokens + self.new_special_tokens = [token.strip() for token in self.new_special_tokens.split(",")] + + if self.export_quantization_bit is not None and self.export_quantization_dataset is None: + raise ValueError("Quantization dataset is necessary for exporting.") + + def to_dict(self) -> Dict[str, Any]: + return asdict(self) + + @classmethod + def copyfrom(cls, old_arg: Self, **kwargs) -> Self: + arg_dict = old_arg.to_dict() + arg_dict.update(**kwargs) + new_arg = cls(**arg_dict) + new_arg.compute_dtype = old_arg.compute_dtype + new_arg.device_map = old_arg.device_map + new_arg.model_max_length = old_arg.model_max_length + new_arg.block_diag_attn = old_arg.block_diag_attn + return new_arg diff --git a/IOPO/Method-IOPO/src/llamafactory/hparams/parser.py b/IOPO/Method-IOPO/src/llamafactory/hparams/parser.py new file mode 100644 index 00000000..9907aa4f --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/hparams/parser.py @@ -0,0 +1,417 @@ +# Copyright 2024 HuggingFace Inc. and the LlamaFactory team. +# +# This code is inspired by the HuggingFace's transformers library. +# https://github.com/huggingface/transformers/blob/v4.40.0/examples/pytorch/language-modeling/run_clm.py +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import logging +import os +import sys +from typing import Any, Dict, Optional, Tuple + +import torch +import transformers +from transformers import HfArgumentParser, Seq2SeqTrainingArguments +from transformers.integrations import is_deepspeed_zero3_enabled +from transformers.trainer_utils import get_last_checkpoint +from transformers.training_args import ParallelMode +from transformers.utils import is_torch_bf16_gpu_available +from transformers.utils.versions import require_version + +from ..extras.constants import CHECKPOINT_NAMES +from ..extras.logging import get_logger +from ..extras.misc import check_dependencies, get_current_device +from .data_args import DataArguments +from .evaluation_args import EvaluationArguments +from .finetuning_args import FinetuningArguments +from .generating_args import GeneratingArguments +from .model_args import ModelArguments + + +logger = get_logger(__name__) + + +check_dependencies() + + +_TRAIN_ARGS = [ModelArguments, DataArguments, Seq2SeqTrainingArguments, FinetuningArguments, GeneratingArguments] +_TRAIN_CLS = Tuple[ModelArguments, DataArguments, Seq2SeqTrainingArguments, FinetuningArguments, GeneratingArguments] +_INFER_ARGS = [ModelArguments, DataArguments, FinetuningArguments, GeneratingArguments] +_INFER_CLS = Tuple[ModelArguments, DataArguments, FinetuningArguments, GeneratingArguments] +_EVAL_ARGS = [ModelArguments, DataArguments, EvaluationArguments, FinetuningArguments] +_EVAL_CLS = Tuple[ModelArguments, DataArguments, EvaluationArguments, FinetuningArguments] + + +def _parse_args(parser: "HfArgumentParser", args: Optional[Dict[str, Any]] = None) -> Tuple[Any]: + if args is not None: + return parser.parse_dict(args) + + if len(sys.argv) == 2 and sys.argv[1].endswith(".yaml"): + return parser.parse_yaml_file(os.path.abspath(sys.argv[1])) + + if len(sys.argv) == 2 and sys.argv[1].endswith(".json"): + return parser.parse_json_file(os.path.abspath(sys.argv[1])) + + (*parsed_args, unknown_args) = parser.parse_args_into_dataclasses(return_remaining_strings=True) + + if unknown_args: + print(parser.format_help()) + print("Got unknown args, potentially deprecated arguments: {}".format(unknown_args)) + raise ValueError("Some specified arguments are not used by the HfArgumentParser: {}".format(unknown_args)) + + return (*parsed_args,) + + +def _set_transformers_logging(log_level: Optional[int] = logging.INFO) -> None: + transformers.utils.logging.set_verbosity(log_level) + transformers.utils.logging.enable_default_handler() + transformers.utils.logging.enable_explicit_format() + + +def _verify_model_args( + model_args: "ModelArguments", + data_args: "DataArguments", + finetuning_args: "FinetuningArguments", +) -> None: + if model_args.adapter_name_or_path is not None and finetuning_args.finetuning_type != "lora": + raise ValueError("Adapter is only valid for the LoRA method.") + + if model_args.quantization_bit is not None: + if finetuning_args.finetuning_type != "lora": + raise ValueError("Quantization is only compatible with the LoRA method.") + + if finetuning_args.pissa_init: + raise ValueError("Please use scripts/pissa_init.py to initialize PiSSA for a quantized model.") + + if model_args.resize_vocab: + raise ValueError("Cannot resize embedding layers of a quantized model.") + + if model_args.adapter_name_or_path is not None and finetuning_args.create_new_adapter: + raise ValueError("Cannot create new adapter upon a quantized model.") + + if model_args.adapter_name_or_path is not None and len(model_args.adapter_name_or_path) != 1: + raise ValueError("Quantized model only accepts a single adapter. Merge them first.") + + if data_args.template == "yi" and model_args.use_fast_tokenizer: + logger.warning("We should use slow tokenizer for the Yi models. Change `use_fast_tokenizer` to False.") + model_args.use_fast_tokenizer = False + + +def _check_extra_dependencies( + model_args: "ModelArguments", + finetuning_args: "FinetuningArguments", + training_args: Optional["Seq2SeqTrainingArguments"] = None, +) -> None: + if model_args.use_unsloth: + require_version("unsloth", "Please install unsloth: https://github.com/unslothai/unsloth") + + if model_args.mixture_of_depths is not None: + require_version("mixture-of-depth>=1.1.6", "To fix: pip install mixture-of-depth>=1.1.6") + + if model_args.infer_backend == "vllm": + require_version("vllm>=0.4.3", "To fix: pip install vllm>=0.4.3") + + if finetuning_args.use_galore: + require_version("galore_torch", "To fix: pip install galore_torch") + + if finetuning_args.use_badam: + require_version("badam>=1.2.1", "To fix: pip install badam>=1.2.1") + + if finetuning_args.use_adam_mini: + require_version("adam-mini", "To fix: pip install adam-mini") + + if finetuning_args.plot_loss: + require_version("matplotlib", "To fix: pip install matplotlib") + + if training_args is not None and training_args.predict_with_generate: + require_version("jieba", "To fix: pip install jieba") + require_version("nltk", "To fix: pip install nltk") + require_version("rouge_chinese", "To fix: pip install rouge-chinese") + + +def _parse_train_args(args: Optional[Dict[str, Any]] = None) -> _TRAIN_CLS: + parser = HfArgumentParser(_TRAIN_ARGS) + return _parse_args(parser, args) + + +def _parse_infer_args(args: Optional[Dict[str, Any]] = None) -> _INFER_CLS: + parser = HfArgumentParser(_INFER_ARGS) + return _parse_args(parser, args) + + +def _parse_eval_args(args: Optional[Dict[str, Any]] = None) -> _EVAL_CLS: + parser = HfArgumentParser(_EVAL_ARGS) + return _parse_args(parser, args) + + +def get_train_args(args: Optional[Dict[str, Any]] = None) -> _TRAIN_CLS: + model_args, data_args, training_args, finetuning_args, generating_args = _parse_train_args(args) + + # Setup logging + if training_args.should_log: + _set_transformers_logging() + + # Check arguments + if finetuning_args.stage != "pt" and data_args.template is None: + raise ValueError("Please specify which `template` to use.") + + if finetuning_args.stage != "sft": + if training_args.predict_with_generate: + raise ValueError("`predict_with_generate` cannot be set as True except SFT.") + + if data_args.neat_packing: + raise ValueError("`neat_packing` cannot be set as True except SFT.") + + if data_args.train_on_prompt or data_args.mask_history: + raise ValueError("`train_on_prompt` or `mask_history` cannot be set as True except SFT.") + + if finetuning_args.stage == "sft" and training_args.do_predict and not training_args.predict_with_generate: + raise ValueError("Please enable `predict_with_generate` to save model predictions.") + + if finetuning_args.stage in ["rm", "ppo"] and training_args.load_best_model_at_end: + raise ValueError("RM and PPO stages do not support `load_best_model_at_end`.") + + if finetuning_args.stage == "ppo": + if not training_args.do_train: + raise ValueError("PPO training does not support evaluation, use the SFT stage to evaluate models.") + + if model_args.shift_attn: + raise ValueError("PPO training is incompatible with S^2-Attn.") + + if finetuning_args.reward_model_type == "lora" and model_args.use_unsloth: + raise ValueError("Unsloth does not support lora reward model.") + + if training_args.report_to and training_args.report_to[0] not in ["wandb", "tensorboard"]: + raise ValueError("PPO only accepts wandb or tensorboard logger.") + + if training_args.parallel_mode == ParallelMode.NOT_DISTRIBUTED: + raise ValueError("Please launch distributed training with `llamafactory-cli` or `torchrun`.") + + if training_args.deepspeed and training_args.parallel_mode != ParallelMode.DISTRIBUTED: + raise ValueError("Please use `FORCE_TORCHRUN=1` to launch DeepSpeed training.") + + if training_args.max_steps == -1 and data_args.streaming: + raise ValueError("Please specify `max_steps` in streaming mode.") + + if training_args.do_train and data_args.dataset is None: + raise ValueError("Please specify dataset for training.") + + if (training_args.do_eval or training_args.do_predict) and ( + data_args.eval_dataset is None and data_args.val_size < 1e-6 + ): + raise ValueError("Please specify dataset for evaluation.") + + if training_args.predict_with_generate and data_args.eval_dataset is None: + raise ValueError("Cannot use `predict_with_generate` if `eval_dataset` is None.") + + if training_args.predict_with_generate and finetuning_args.compute_accuracy: + raise ValueError("Cannot use `predict_with_generate` and `compute_accuracy` together.") + + if training_args.do_train and model_args.quantization_device_map == "auto": + raise ValueError("Cannot use device map for quantized models in training.") + + if finetuning_args.pissa_init and is_deepspeed_zero3_enabled(): + raise ValueError("Please use scripts/pissa_init.py to initialize PiSSA in DeepSpeed ZeRO-3.") + + if finetuning_args.pure_bf16: + if not is_torch_bf16_gpu_available(): + raise ValueError("This device does not support `pure_bf16`.") + + if is_deepspeed_zero3_enabled(): + raise ValueError("`pure_bf16` is incompatible with DeepSpeed ZeRO-3.") + + if ( + finetuning_args.use_galore + and finetuning_args.galore_layerwise + and training_args.parallel_mode == ParallelMode.DISTRIBUTED + ): + raise ValueError("Distributed training does not support layer-wise GaLore.") + + if finetuning_args.use_badam and training_args.parallel_mode == ParallelMode.DISTRIBUTED: + if finetuning_args.badam_mode == "ratio": + raise ValueError("Radio-based BAdam does not yet support distributed training, use layer-wise BAdam.") + elif not is_deepspeed_zero3_enabled(): + raise ValueError("Layer-wise BAdam only supports DeepSpeed ZeRO-3 training.") + + if finetuning_args.use_galore and training_args.deepspeed is not None: + raise ValueError("GaLore is incompatible with DeepSpeed yet.") + + if model_args.infer_backend == "vllm": + raise ValueError("vLLM backend is only available for API, CLI and Web.") + + if model_args.visual_inputs and data_args.packing: + raise ValueError("Cannot use packing in MLLM fine-tuning.") + + if model_args.use_unsloth and is_deepspeed_zero3_enabled(): + raise ValueError("Unsloth is incompatible with DeepSpeed ZeRO-3.") + + if data_args.neat_packing and not data_args.packing: + logger.warning("`neat_packing` requires `packing` is True. Change `packing` to True.") + data_args.packing = True + + _verify_model_args(model_args, data_args, finetuning_args) + _check_extra_dependencies(model_args, finetuning_args, training_args) + + if ( + training_args.do_train + and finetuning_args.finetuning_type == "lora" + and model_args.quantization_bit is None + and model_args.resize_vocab + and finetuning_args.additional_target is None + ): + logger.warning("Remember to add embedding layers to `additional_target` to make the added tokens trainable.") + + if training_args.do_train and model_args.quantization_bit is not None and (not model_args.upcast_layernorm): + logger.warning("We recommend enable `upcast_layernorm` in quantized training.") + + if training_args.do_train and (not training_args.fp16) and (not training_args.bf16): + logger.warning("We recommend enable mixed precision training.") + + if training_args.do_train and finetuning_args.use_galore and not finetuning_args.pure_bf16: + logger.warning("Using GaLore with mixed precision training may significantly increases GPU memory usage.") + + if (not training_args.do_train) and model_args.quantization_bit is not None: + logger.warning("Evaluating model in 4/8-bit mode may cause lower scores.") + + if (not training_args.do_train) and finetuning_args.stage == "dpo" and finetuning_args.ref_model is None: + logger.warning("Specify `ref_model` for computing rewards at evaluation.") + + # Post-process training arguments + if ( + training_args.parallel_mode == ParallelMode.DISTRIBUTED + and training_args.ddp_find_unused_parameters is None + and finetuning_args.finetuning_type == "lora" + ): + logger.warning("`ddp_find_unused_parameters` needs to be set as False for LoRA in DDP training.") + training_args.ddp_find_unused_parameters = False + + if finetuning_args.stage in ["rm", "ppo"] and finetuning_args.finetuning_type in ["full", "freeze"]: + can_resume_from_checkpoint = False + if training_args.resume_from_checkpoint is not None: + logger.warning("Cannot resume from checkpoint in current stage.") + training_args.resume_from_checkpoint = None + else: + can_resume_from_checkpoint = True + + if ( + training_args.resume_from_checkpoint is None + and training_args.do_train + and os.path.isdir(training_args.output_dir) + and not training_args.overwrite_output_dir + and can_resume_from_checkpoint + ): + last_checkpoint = get_last_checkpoint(training_args.output_dir) + if last_checkpoint is None and any( + os.path.isfile(os.path.join(training_args.output_dir, name)) for name in CHECKPOINT_NAMES + ): + raise ValueError("Output directory already exists and is not empty. Please set `overwrite_output_dir`.") + + if last_checkpoint is not None: + training_args.resume_from_checkpoint = last_checkpoint + logger.info("Resuming training from {}.".format(training_args.resume_from_checkpoint)) + logger.info("Change `output_dir` or use `overwrite_output_dir` to avoid.") + + if ( + finetuning_args.stage in ["rm", "ppo"] + and finetuning_args.finetuning_type == "lora" + and training_args.resume_from_checkpoint is not None + ): + logger.warning( + "Add {} to `adapter_name_or_path` to resume training from checkpoint.".format( + training_args.resume_from_checkpoint + ) + ) + + # Post-process model arguments + if training_args.bf16 or finetuning_args.pure_bf16: + model_args.compute_dtype = torch.bfloat16 + elif training_args.fp16: + model_args.compute_dtype = torch.float16 + + model_args.device_map = {"": get_current_device()} + model_args.model_max_length = data_args.cutoff_len + model_args.block_diag_attn = data_args.neat_packing + data_args.packing = data_args.packing if data_args.packing is not None else finetuning_args.stage == "pt" + + # Log on each process the small summary + logger.info( + "Process rank: {}, device: {}, n_gpu: {}, distributed training: {}, compute dtype: {}".format( + training_args.local_rank, + training_args.device, + training_args.n_gpu, + training_args.parallel_mode == ParallelMode.DISTRIBUTED, + str(model_args.compute_dtype), + ) + ) + + transformers.set_seed(training_args.seed) + + return model_args, data_args, training_args, finetuning_args, generating_args + + +def get_infer_args(args: Optional[Dict[str, Any]] = None) -> _INFER_CLS: + model_args, data_args, finetuning_args, generating_args = _parse_infer_args(args) + + _set_transformers_logging() + + if data_args.template is None: + raise ValueError("Please specify which `template` to use.") + + if model_args.infer_backend == "vllm": + if finetuning_args.stage != "sft": + raise ValueError("vLLM engine only supports auto-regressive models.") + + if model_args.quantization_bit is not None: + raise ValueError("vLLM engine does not support bnb quantization (GPTQ and AWQ are supported).") + + if model_args.rope_scaling is not None: + raise ValueError("vLLM engine does not support RoPE scaling.") + + if model_args.adapter_name_or_path is not None and len(model_args.adapter_name_or_path) != 1: + raise ValueError("vLLM only accepts a single adapter. Merge them first.") + + if finetuning_args.stage == "rm" and model_args.visual_inputs: + raise ValueError("Reward server does not support MLLM yet. Stay tuned.") + + _verify_model_args(model_args, data_args, finetuning_args) + _check_extra_dependencies(model_args, finetuning_args) + + if model_args.export_dir is not None and model_args.export_device == "cpu": + model_args.device_map = {"": torch.device("cpu")} + model_args.model_max_length = data_args.cutoff_len + else: + model_args.device_map = "auto" + + return model_args, data_args, finetuning_args, generating_args + + +def get_eval_args(args: Optional[Dict[str, Any]] = None) -> _EVAL_CLS: + model_args, data_args, eval_args, finetuning_args = _parse_eval_args(args) + + _set_transformers_logging() + + if data_args.template is None: + raise ValueError("Please specify which `template` to use.") + + if model_args.infer_backend == "vllm": + raise ValueError("vLLM backend is only available for API, CLI and Web.") + + _verify_model_args(model_args, data_args, finetuning_args) + _check_extra_dependencies(model_args, finetuning_args) + + model_args.device_map = "auto" + + transformers.set_seed(eval_args.seed) + + return model_args, data_args, eval_args, finetuning_args diff --git a/IOPO/Method-IOPO/src/llamafactory/launcher.py b/IOPO/Method-IOPO/src/llamafactory/launcher.py new file mode 100644 index 00000000..65e0b68f --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/launcher.py @@ -0,0 +1,23 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from llamafactory.train.tuner import run_exp + + +def launch(): + run_exp() + + +if __name__ == "__main__": + launch() diff --git a/IOPO/Method-IOPO/src/llamafactory/model/.DS_Store b/IOPO/Method-IOPO/src/llamafactory/model/.DS_Store new file mode 100644 index 00000000..a68f4323 Binary files /dev/null and b/IOPO/Method-IOPO/src/llamafactory/model/.DS_Store differ diff --git a/IOPO/Method-IOPO/src/llamafactory/model/__init__.py b/IOPO/Method-IOPO/src/llamafactory/model/__init__.py new file mode 100644 index 00000000..48cfe76c --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/model/__init__.py @@ -0,0 +1,28 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from .loader import load_config, load_model, load_tokenizer +from .model_utils.misc import find_all_linear_modules +from .model_utils.quantization import QuantizationMethod +from .model_utils.valuehead import load_valuehead_params + + +__all__ = [ + "QuantizationMethod", + "load_config", + "load_model", + "load_tokenizer", + "find_all_linear_modules", + "load_valuehead_params", +] diff --git a/IOPO/Method-IOPO/src/llamafactory/model/adapter.py b/IOPO/Method-IOPO/src/llamafactory/model/adapter.py new file mode 100644 index 00000000..7caef9cc --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/model/adapter.py @@ -0,0 +1,316 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import re +from typing import TYPE_CHECKING + +import torch +from peft import LoraConfig, LoraModel, PeftModel, TaskType, get_peft_model +from transformers.integrations import is_deepspeed_zero3_enabled +from transformers.modeling_utils import is_fsdp_enabled + +from ..extras.logging import get_logger +from .model_utils.misc import find_all_linear_modules, find_expanded_modules +from .model_utils.quantization import QuantizationMethod +from .model_utils.unsloth import get_unsloth_peft_model, load_unsloth_peft_model + + +if TYPE_CHECKING: + from transformers import PretrainedConfig, PreTrainedModel + + from ..hparams import FinetuningArguments, ModelArguments + + +logger = get_logger(__name__) + + +def _setup_full_tuning( + model: "PreTrainedModel", + model_args: "ModelArguments", + finetuning_args: "FinetuningArguments", + is_trainable: bool, + cast_trainable_params_to_fp32: bool, +) -> None: + if not is_trainable: + return + + logger.info("Fine-tuning method: Full") + forbidden_modules = set() + if model_args.visual_inputs and finetuning_args.freeze_vision_tower: + forbidden_modules.add("vision_tower") + + if model_args.visual_inputs and finetuning_args.train_mm_proj_only: + forbidden_modules.add("language_model") + + for name, param in model.named_parameters(): + if not any(forbidden_module in name for forbidden_module in forbidden_modules): + if cast_trainable_params_to_fp32: + param.data = param.data.to(torch.float32) + else: + param.requires_grad_(False) + + +def _setup_freeze_tuning( + model: "PreTrainedModel", + model_args: "ModelArguments", + finetuning_args: "FinetuningArguments", + is_trainable: bool, + cast_trainable_params_to_fp32: bool, +) -> None: + if not is_trainable: + return + + logger.info("Fine-tuning method: Freeze") + if model_args.visual_inputs: + config = model.config.text_config + else: + config = model.config + + num_layers = ( + getattr(config, "num_hidden_layers", None) + or getattr(config, "num_layers", None) + or getattr(config, "n_layer", None) + ) + if not num_layers: + raise ValueError("Current model does not support freeze tuning.") + + if finetuning_args.use_llama_pro: + if num_layers % finetuning_args.freeze_trainable_layers != 0: + raise ValueError( + "`num_layers` {} should be divisible by `num_layer_trainable` {}.".format( + num_layers, finetuning_args.freeze_trainable_layers + ) + ) + + stride = num_layers // finetuning_args.freeze_trainable_layers + trainable_layer_ids = range(stride - 1, num_layers + stride - 1, stride) + elif finetuning_args.freeze_trainable_layers > 0: # fine-tuning the last n layers if num_layer_trainable > 0 + trainable_layer_ids = range(max(0, num_layers - finetuning_args.freeze_trainable_layers), num_layers) + else: # fine-tuning the first n layers if num_layer_trainable < 0 + trainable_layer_ids = range(min(-finetuning_args.freeze_trainable_layers, num_layers)) + + hidden_modules = set() + non_hidden_modules = set() + for name, _ in model.named_parameters(): + if ".0." in name: + hidden_modules.add(name.split(".0.")[-1].split(".")[0]) + elif ".1." in name: # MoD starts from layer 1 + hidden_modules.add(name.split(".1.")[-1].split(".")[0]) + + if re.search(r"\.\d+\.", name) is None: + non_hidden_modules.add(name.split(".")[-2]) + + trainable_layers = [] + for module_name in finetuning_args.freeze_trainable_modules: + if module_name != "all" and module_name not in hidden_modules: + raise ValueError( + "Module {} is not found, please choose from {}".format(module_name, ", ".join(hidden_modules)) + ) + + for idx in trainable_layer_ids: + trainable_layers.append(".{:d}.{}".format(idx, module_name if module_name != "all" else "")) + + if finetuning_args.freeze_extra_modules: + for module_name in finetuning_args.freeze_extra_modules: + if module_name not in non_hidden_modules: + raise ValueError( + "Module {} is not found, please choose from {}".format(module_name, ", ".join(non_hidden_modules)) + ) + + trainable_layers.append(module_name) + + forbidden_modules = set() + if model_args.visual_inputs and finetuning_args.freeze_vision_tower: + forbidden_modules.add("vision_tower") + + for name, param in model.named_parameters(): + if any(trainable_layer in name for trainable_layer in trainable_layers) and not any( + forbidden_module in name for forbidden_module in forbidden_modules + ): + if cast_trainable_params_to_fp32: + param.data = param.data.to(torch.float32) + else: + param.requires_grad_(False) + + logger.info("Set trainable layers: {}".format(",".join(trainable_layers))) + + +def _setup_lora_tuning( + config: "PretrainedConfig", + model: "PreTrainedModel", + model_args: "ModelArguments", + finetuning_args: "FinetuningArguments", + is_trainable: bool, + cast_trainable_params_to_fp32: bool, +) -> "PeftModel": + if is_trainable: + logger.info("Fine-tuning method: {}".format("DoRA" if finetuning_args.use_dora else "LoRA")) + + adapter_to_resume = None + + if model_args.adapter_name_or_path is not None: + is_mergeable = True + if getattr(model, "quantization_method", None): # merge lora in quantized model is unstable + assert len(model_args.adapter_name_or_path) == 1, "Quantized model only accepts a single adapter." + is_mergeable = False + + if is_deepspeed_zero3_enabled(): + assert len(model_args.adapter_name_or_path) == 1, "Cannot use multiple adapters in DeepSpeed ZeRO-3." + is_mergeable = False + + if model_args.use_unsloth: + assert len(model_args.adapter_name_or_path) == 1, "Unsloth model only accepts a single adapter." + is_mergeable = False + + if (is_trainable and not finetuning_args.create_new_adapter) or (not is_mergeable): + adapter_to_merge = model_args.adapter_name_or_path[:-1] + adapter_to_resume = model_args.adapter_name_or_path[-1] + else: + adapter_to_merge = model_args.adapter_name_or_path + + init_kwargs = { + "subfolder": model_args.adapter_folder, + "offload_folder": model_args.offload_folder, + "cache_dir": model_args.cache_dir, + "revision": model_args.model_revision, + "token": model_args.hf_hub_token, + } + + for adapter in adapter_to_merge: + model: "LoraModel" = PeftModel.from_pretrained(model, adapter, **init_kwargs) + model = model.merge_and_unload() + + if len(adapter_to_merge) > 0: + logger.info("Merged {} adapter(s).".format(len(adapter_to_merge))) + + if adapter_to_resume is not None: # resume lora training + if model_args.use_unsloth: + model = load_unsloth_peft_model(config, model_args, is_trainable=is_trainable) + else: + model = PeftModel.from_pretrained(model, adapter_to_resume, is_trainable=is_trainable, **init_kwargs) + + logger.info("Loaded adapter(s): {}".format(",".join(model_args.adapter_name_or_path))) + + if is_trainable and adapter_to_resume is None: # create new lora weights while training + if len(finetuning_args.lora_target) == 1 and finetuning_args.lora_target[0] == "all": + target_modules = find_all_linear_modules(model, finetuning_args.freeze_vision_tower) + else: + target_modules = finetuning_args.lora_target + + if finetuning_args.use_llama_pro: + target_modules = find_expanded_modules(model, target_modules, finetuning_args.freeze_trainable_layers) + + if model_args.visual_inputs and finetuning_args.freeze_vision_tower: + target_modules = "^(?!.*vision_tower).*(?:{}).*".format("|".join(target_modules)) + + if ( + finetuning_args.use_dora + and getattr(model, "quantization_method", None) is not None + and getattr(model, "quantization_method", None) != QuantizationMethod.BITS_AND_BYTES + ): + raise ValueError("DoRA is not compatible with PTQ-quantized models.") + + if model_args.resize_vocab and finetuning_args.additional_target is None: + input_embeddings = model.get_input_embeddings() + output_embeddings = model.get_output_embeddings() + module_names = set() + for name, module in model.named_modules(): + if module in [input_embeddings, output_embeddings]: + module_names.add(name.split(".")[-1]) + + finetuning_args.additional_target = module_names + logger.warning("Vocab has been resized, add {} to trainable params.".format(",".join(module_names))) + + peft_kwargs = { + "r": finetuning_args.lora_rank, + "target_modules": target_modules, + "lora_alpha": finetuning_args.lora_alpha, + "lora_dropout": finetuning_args.lora_dropout, + "use_rslora": finetuning_args.use_rslora, + "use_dora": finetuning_args.use_dora, + "modules_to_save": finetuning_args.additional_target, + } + + if model_args.use_unsloth: + model = get_unsloth_peft_model(model, model_args, peft_kwargs) + else: + if finetuning_args.pissa_init: + if finetuning_args.pissa_iter == -1: + logger.info("Using PiSSA initialization.") + peft_kwargs["init_lora_weights"] = "pissa" + else: + logger.info("Using PiSSA initialization with FSVD steps {}.".format(finetuning_args.pissa_iter)) + peft_kwargs["init_lora_weights"] = "pissa_niter_{}".format(finetuning_args.pissa_iter) + + lora_config = LoraConfig( + task_type=TaskType.CAUSAL_LM, + inference_mode=False, + **peft_kwargs, + ) + model = get_peft_model(model, lora_config) + + if is_trainable and cast_trainable_params_to_fp32: + for param in filter(lambda p: p.requires_grad, model.parameters()): + param.data = param.data.to(torch.float32) + + return model + + +def init_adapter( + config: "PretrainedConfig", + model: "PreTrainedModel", + model_args: "ModelArguments", + finetuning_args: "FinetuningArguments", + is_trainable: bool, +) -> "PreTrainedModel": + r""" + Initializes the adapters. + + Support full-parameter, freeze and LoRA training. + + Note that the trainable parameters must be cast to float32. + """ + if is_trainable and getattr(model, "quantization_method", None) is not None: + if finetuning_args.finetuning_type != "lora": + raise ValueError("Quantized models can only be used for the LoRA tuning.") + + if finetuning_args.pissa_init: + raise ValueError("Cannot initialize PiSSA adapter on quantized models.") + + # cast trainable parameters to float32 if: + # 1. is_trainable and not pure_bf16 and not badam and quantization_bit is not None (qlora) + # 2. is_trainable and not pure_bf16 and not badam and not zero3 and not fsdp (zero3 or fsdp already in fp32) + cast_trainable_params_to_fp32 = False + if not is_trainable: + pass + elif finetuning_args.pure_bf16 or finetuning_args.use_badam: + logger.info("Pure bf16 / BAdam detected, remaining trainable params in half precision.") + elif model_args.quantization_bit is None and (is_deepspeed_zero3_enabled() or is_fsdp_enabled()): + logger.info("ZeRO3 / FSDP detected, remaining trainable params in float32.") + else: + logger.info("Upcasting trainable params to float32.") + cast_trainable_params_to_fp32 = True + + if finetuning_args.finetuning_type == "full": + _setup_full_tuning(model, model_args, finetuning_args, is_trainable, cast_trainable_params_to_fp32) + elif finetuning_args.finetuning_type == "freeze": + _setup_freeze_tuning(model, model_args, finetuning_args, is_trainable, cast_trainable_params_to_fp32) + elif finetuning_args.finetuning_type == "lora": + model = _setup_lora_tuning( + config, model, model_args, finetuning_args, is_trainable, cast_trainable_params_to_fp32 + ) + else: + raise NotImplementedError("Unknown finetuning type: {}.".format(finetuning_args.finetuning_type)) + + return model diff --git a/IOPO/Method-IOPO/src/llamafactory/model/loader.py b/IOPO/Method-IOPO/src/llamafactory/model/loader.py new file mode 100644 index 00000000..fe700d53 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/model/loader.py @@ -0,0 +1,206 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from typing import TYPE_CHECKING, Any, Dict, Optional, TypedDict + +import torch +from transformers import AutoConfig, AutoModelForCausalLM, AutoModelForVision2Seq, AutoProcessor, AutoTokenizer +from trl import AutoModelForCausalLMWithValueHead + +from ..extras.logging import get_logger +from ..extras.misc import count_parameters, skip_check_imports, try_download_model_from_ms +from .adapter import init_adapter +from .model_utils.misc import register_autoclass +from .model_utils.mod import convert_pretrained_model_to_mod, load_mod_pretrained_model +from .model_utils.unsloth import load_unsloth_pretrained_model +from .model_utils.valuehead import load_valuehead_params +from .patcher import patch_config, patch_model, patch_tokenizer, patch_valuehead_model + + +if TYPE_CHECKING: + from transformers import PretrainedConfig, PreTrainedModel, PreTrainedTokenizer, ProcessorMixin + + from ..hparams import FinetuningArguments, ModelArguments + + +logger = get_logger(__name__) + + +class TokenizerModule(TypedDict): + tokenizer: "PreTrainedTokenizer" + processor: Optional["ProcessorMixin"] + + +def _get_init_kwargs(model_args: "ModelArguments") -> Dict[str, Any]: + r""" + Gets arguments to load config/tokenizer/model. + + Note: including inplace operation of model_args. + """ + skip_check_imports() + model_args.model_name_or_path = try_download_model_from_ms(model_args) + return { + "trust_remote_code": True, + "cache_dir": model_args.cache_dir, + "revision": model_args.model_revision, + "token": model_args.hf_hub_token, + } + + +def load_tokenizer(model_args: "ModelArguments") -> "TokenizerModule": + r""" + Loads pretrained tokenizer. + + Note: including inplace operation of model_args. + """ + init_kwargs = _get_init_kwargs(model_args) + try: + tokenizer = AutoTokenizer.from_pretrained( + model_args.model_name_or_path, + use_fast=model_args.use_fast_tokenizer, + split_special_tokens=model_args.split_special_tokens, + padding_side="right", + **init_kwargs, + ) + except ValueError: # try the fast one + tokenizer = AutoTokenizer.from_pretrained( + model_args.model_name_or_path, + use_fast=True, + padding_side="right", + **init_kwargs, + ) + + if model_args.new_special_tokens is not None: + num_added_tokens = tokenizer.add_special_tokens( + dict(additional_special_tokens=model_args.new_special_tokens), + replace_additional_special_tokens=False, + ) + logger.info("Add {} to special tokens.".format(",".join(model_args.new_special_tokens))) + if num_added_tokens > 0 and not model_args.resize_vocab: + model_args.resize_vocab = True + logger.warning("New tokens have been added, changed `resize_vocab` to True.") + + patch_tokenizer(tokenizer) + + if model_args.visual_inputs: + try: + processor = AutoProcessor.from_pretrained(model_args.model_name_or_path, **init_kwargs) + setattr(processor, "tokenizer", tokenizer) + except Exception: + raise ValueError( + "This multimodal LLM is not supported.\n" + "Download LLaVA-1.5 models from: https://huggingface.co/llava-hf\n" + "Download Yi-VL models from: https://huggingface.co/BUAADreamer" + ) + else: + processor = None + + return {"tokenizer": tokenizer, "processor": processor} + + +def load_config(model_args: "ModelArguments") -> "PretrainedConfig": + r""" + Loads model config. + """ + init_kwargs = _get_init_kwargs(model_args) + return AutoConfig.from_pretrained(model_args.model_name_or_path, **init_kwargs) + + +def load_model( + tokenizer: "PreTrainedTokenizer", + model_args: "ModelArguments", + finetuning_args: "FinetuningArguments", + is_trainable: bool = False, + add_valuehead: bool = False, +) -> "PreTrainedModel": + r""" + Loads pretrained model. + """ + init_kwargs = _get_init_kwargs(model_args) + config = load_config(model_args) + patch_config(config, tokenizer, model_args, init_kwargs, is_trainable) + + model = None + lazy_load = False + if model_args.use_unsloth: + if model_args.adapter_name_or_path is not None: + lazy_load = True + elif is_trainable: + model = load_unsloth_pretrained_model(config, model_args) + + if model is None and not lazy_load: + init_kwargs["config"] = config + init_kwargs["pretrained_model_name_or_path"] = model_args.model_name_or_path + + if model_args.mixture_of_depths == "load": + model = load_mod_pretrained_model(**init_kwargs) + elif model_args.visual_inputs: + model = AutoModelForVision2Seq.from_pretrained(**init_kwargs) + elif model_args.train_from_scratch: + model = AutoModelForCausalLM.from_config(config) + else: + model = AutoModelForCausalLM.from_pretrained(**init_kwargs) + + if model_args.mixture_of_depths == "convert": + model = convert_pretrained_model_to_mod(model, config, model_args) + + if not lazy_load: + patch_model(model, tokenizer, model_args, is_trainable, add_valuehead) + register_autoclass(config, model, tokenizer) + + model = init_adapter(config, model, model_args, finetuning_args, is_trainable) + + if add_valuehead: + model = AutoModelForCausalLMWithValueHead.from_pretrained(model) + patch_valuehead_model(model) + + if model_args.adapter_name_or_path is not None: + vhead_path = model_args.adapter_name_or_path[-1] + else: + vhead_path = model_args.model_name_or_path + + vhead_params = load_valuehead_params(vhead_path, model_args) + if vhead_params is not None: + model.load_state_dict(vhead_params, strict=False) + logger.info("Loaded valuehead from checkpoint: {}".format(vhead_path)) + + if not is_trainable: + model.requires_grad_(False) + for param in model.parameters(): + if param.data.dtype == torch.float32 and model_args.compute_dtype != torch.float32: + param.data = param.data.to(model_args.compute_dtype) + + model.eval() + else: + model.train() + + trainable_params, all_param = count_parameters(model) + if is_trainable: + param_stats = "trainable params: {:,} || all params: {:,} || trainable%: {:.4f}".format( + trainable_params, all_param, 100 * trainable_params / all_param + ) + else: + param_stats = "all params: {:,}".format(all_param) + + logger.info(param_stats) + + if model_args.print_param_status: + for name, param in model.named_parameters(): + print( + "name: {}, dtype: {}, device: {}, trainable: {}".format( + name, param.dtype, param.device, param.requires_grad + ) + ) + + return model diff --git a/IOPO/Method-IOPO/src/llamafactory/model/model_utils/__init__.py b/IOPO/Method-IOPO/src/llamafactory/model/model_utils/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/IOPO/Method-IOPO/src/llamafactory/model/model_utils/attention.py b/IOPO/Method-IOPO/src/llamafactory/model/model_utils/attention.py new file mode 100644 index 00000000..96e2c8a9 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/model/model_utils/attention.py @@ -0,0 +1,86 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from typing import TYPE_CHECKING + +from transformers.utils import is_flash_attn_2_available, is_torch_sdpa_available +from transformers.utils.versions import require_version + +from ...extras.logging import get_logger + + +if TYPE_CHECKING: + from transformers import PretrainedConfig + + from ...hparams import ModelArguments + + +logger = get_logger(__name__) + + +def configure_attn_implementation( + config: "PretrainedConfig", model_args: "ModelArguments", is_trainable: bool +) -> None: + if getattr(config, "model_type", None) == "gemma2" and is_trainable: + if model_args.flash_attn == "auto" or model_args.flash_attn == "fa2": + if is_flash_attn_2_available(): + require_version("transformers>=4.42.4", "To fix: pip install transformers>=4.42.4") + require_version("flash_attn>=2.6.3", "To fix: pip install flash_attn>=2.6.3") + logger.warning("Gemma-2 should use flash attention 2, change `flash_attn` to fa2.") + model_args.flash_attn = "fa2" + else: + logger.warning("Gemma-2 should use eager attention, change `flash_attn` to disabled.") + model_args.flash_attn = "disabled" + elif model_args.flash_attn == "sdpa": + logger.warning("Gemma-2 should use soft-capping attention, while the SDPA attention does not support it.") + + if model_args.flash_attn == "auto": + return + + elif model_args.flash_attn == "disabled": + requested_attn_implementation = "eager" + + elif model_args.flash_attn == "sdpa": + if not is_torch_sdpa_available(): + logger.warning("torch>=2.1.1 is required for SDPA attention.") + return + + requested_attn_implementation = "sdpa" + elif model_args.flash_attn == "fa2": + if not is_flash_attn_2_available(): + logger.warning("FlashAttention-2 is not installed.") + return + + requested_attn_implementation = "flash_attention_2" + else: + raise NotImplementedError("Unknown attention type: {}".format(model_args.flash_attn)) + + if getattr(config, "model_type", None) == "internlm2": # special case for custom models + setattr(config, "attn_implementation", requested_attn_implementation) + else: + setattr(config, "_attn_implementation", requested_attn_implementation) + + +def print_attn_implementation(config: "PretrainedConfig") -> None: + if getattr(config, "model_type", None) == "internlm2": # special case for custom models + attn_implementation = getattr(config, "attn_implementation", None) + else: + attn_implementation = getattr(config, "_attn_implementation", None) + + if attn_implementation == "flash_attention_2": + logger.info("Using FlashAttention-2 for faster training and inference.") + elif attn_implementation == "sdpa": + logger.info("Using torch SDPA for faster training and inference.") + else: + logger.info("Using vanilla attention implementation.") diff --git a/IOPO/Method-IOPO/src/llamafactory/model/model_utils/checkpointing.py b/IOPO/Method-IOPO/src/llamafactory/model/model_utils/checkpointing.py new file mode 100644 index 00000000..f4f3d8a5 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/model/model_utils/checkpointing.py @@ -0,0 +1,109 @@ +# Copyright 2024 HuggingFace Inc. and the LlamaFactory team. +# +# This code is inspired by the HuggingFace's Transformers and PEFT library. +# https://github.com/huggingface/transformers/blob/v4.40.0/src/transformers/modeling_utils.py +# https://github.com/huggingface/peft/blob/v0.10.0/src/peft/utils/other.py +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import inspect +from functools import partial +from types import MethodType +from typing import TYPE_CHECKING, Any, Dict, Optional, Tuple + +import torch + +from ...extras.constants import LAYERNORM_NAMES +from ...extras.logging import get_logger + + +if TYPE_CHECKING: + from transformers import PreTrainedModel + + from ...hparams import ModelArguments + + +logger = get_logger(__name__) + + +def _gradient_checkpointing_enable( + self: "PreTrainedModel", gradient_checkpointing_kwargs: Optional[Dict[str, Any]] = None +) -> None: + r""" + Activates gradient checkpointing for the current model. + + Modification of the original method to enable gradient checkpointing for block-wise optimizer. + """ + from torch.utils.checkpoint import checkpoint + + if not self.supports_gradient_checkpointing: + raise ValueError("{} does not support gradient checkpointing.".format(self.__class__.__name__)) + + if gradient_checkpointing_kwargs is None: + gradient_checkpointing_kwargs = {"use_reentrant": True} + + gradient_checkpointing_func = partial(checkpoint, **gradient_checkpointing_kwargs) + + def custom_gradient_checkpointing_func(func, *args, **kwargs): + module: "torch.nn.Module" = func.__self__ + + if any(param.requires_grad for param in module.parameters()): + for arg in args: + if torch.is_tensor(arg) and torch.is_floating_point(arg): + arg.requires_grad_(True) + + return gradient_checkpointing_func(func, *args, **kwargs) + + if "value" in inspect.signature(self._set_gradient_checkpointing).parameters: # old GC format + self.apply(partial(self._set_gradient_checkpointing, value=True)) + self.enable_input_require_grads() + logger.warning("You are using the old GC format, some features (e.g. BAdam) will be invalid.") + else: # have already enabled input require gradients + self._set_gradient_checkpointing(enable=True, gradient_checkpointing_func=custom_gradient_checkpointing_func) + + +def _fp32_forward_post_hook( + module: "torch.nn.Module", args: Tuple["torch.Tensor"], output: "torch.Tensor" +) -> "torch.Tensor": + return output.to(torch.float32) + + +def prepare_model_for_training(model: "PreTrainedModel", model_args: "ModelArguments") -> None: + r""" + Includes: + (1) cast the layernorm in fp32 + (2) make output embedding layer require grads + (3) add the upcasting of the lm_head in fp32 + """ + if model_args.upcast_layernorm: + logger.info("Upcasting layernorm weights in float32.") + for name, param in model.named_parameters(): + if param.ndim == 1 and any(ln_name in name for ln_name in LAYERNORM_NAMES): + param.data = param.data.to(torch.float32) + + if not model_args.disable_gradient_checkpointing: + if not getattr(model, "supports_gradient_checkpointing", False): + logger.warning("Current model does not support gradient checkpointing.") + else: + # use_reentrant=False might increase VRAM usage (have not been empirically verified yet) + # According to: https://github.com/huggingface/transformers/issues/28339 + model.gradient_checkpointing_enable = MethodType(_gradient_checkpointing_enable, model) + model.gradient_checkpointing_enable(gradient_checkpointing_kwargs={"use_reentrant": True}) + setattr(model.config, "use_cache", False) # turn off when gradient checkpointing is enabled + logger.info("Gradient checkpointing enabled.") + + if model_args.upcast_lmhead_output: + output_layer = model.get_output_embeddings() + if isinstance(output_layer, torch.nn.Linear) and output_layer.weight.dtype != torch.float32: + logger.info("Upcasting lm_head outputs in float32.") + output_layer.register_forward_hook(_fp32_forward_post_hook) diff --git a/IOPO/Method-IOPO/src/llamafactory/model/model_utils/embedding.py b/IOPO/Method-IOPO/src/llamafactory/model/model_utils/embedding.py new file mode 100644 index 00000000..3ff79828 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/model/model_utils/embedding.py @@ -0,0 +1,72 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import math +from contextlib import nullcontext +from typing import TYPE_CHECKING + +import torch +from transformers.integrations import is_deepspeed_zero3_enabled + +from ...extras.logging import get_logger + + +if TYPE_CHECKING: + from transformers import PreTrainedModel, PreTrainedTokenizer + + +logger = get_logger(__name__) + + +def _noisy_mean_initialization(embed_weight: "torch.Tensor", num_new_tokens: int) -> None: + embedding_dim = embed_weight.size(1) + avg_weight = embed_weight[:-num_new_tokens].mean(dim=0, keepdim=True) + noise_weight = torch.empty_like(embed_weight[-num_new_tokens:]) + noise_weight.normal_(mean=0, std=(1.0 / math.sqrt(embedding_dim))) + embed_weight[-num_new_tokens:] = avg_weight + noise_weight + + +def resize_embedding_layer(model: "PreTrainedModel", tokenizer: "PreTrainedTokenizer") -> None: + r""" + Resize token embeddings. + """ + if is_deepspeed_zero3_enabled(): + import deepspeed # type: ignore + + params = [model.get_input_embeddings().weight] + if model.get_output_embeddings() is not None and not model.config.tie_word_embeddings: + params.append(model.get_output_embeddings().weight) + + context_maybe_zero3 = deepspeed.zero.GatheredParameters(params, modifier_rank=0) + else: + context_maybe_zero3 = nullcontext() + + with context_maybe_zero3: + current_embedding_size = model.get_input_embeddings().weight.size(0) + + if len(tokenizer) > current_embedding_size: + if getattr(model, "quantization_method", None): + raise ValueError("Cannot resize embedding layers of a quantized model.") + + if not isinstance(model.get_output_embeddings(), torch.nn.Linear): + raise ValueError("Current model does not support resizing embedding layers.") + + model.resize_token_embeddings(len(tokenizer), pad_to_multiple_of=64) + with context_maybe_zero3: + new_embedding_size = model.get_input_embeddings().weight.size(0) + num_new_tokens = new_embedding_size - current_embedding_size + _noisy_mean_initialization(model.get_input_embeddings().weight.data, num_new_tokens) + _noisy_mean_initialization(model.get_output_embeddings().weight.data, num_new_tokens) + + logger.info("Resized token embeddings from {} to {}.".format(current_embedding_size, new_embedding_size)) diff --git a/IOPO/Method-IOPO/src/llamafactory/model/model_utils/longlora.py b/IOPO/Method-IOPO/src/llamafactory/model/model_utils/longlora.py new file mode 100644 index 00000000..e518aefb --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/model/model_utils/longlora.py @@ -0,0 +1,373 @@ +# Copyright 2024 EleutherAI, HuggingFace Inc., Yukang Chen, and the LlamaFactory team. +# +# This code is based on the EleutherAI's GPT-NeoX and the HuggingFace's Transformers libraries. +# https://github.com/huggingface/transformers/blob/v4.40.0/src/transformers/models/llama/modeling_llama.py +# This code is also inspired by the original LongLoRA implementation. +# https://github.com/dvlab-research/LongLoRA/blob/main/llama_attn_replace.py +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import math +from typing import TYPE_CHECKING, Optional, Tuple + +import torch +import torch.nn as nn +from transformers.models.llama.modeling_llama import ( + Cache, + LlamaAttention, + LlamaFlashAttention2, + LlamaSdpaAttention, + apply_rotary_pos_emb, + repeat_kv, +) +from transformers.utils import logging +from transformers.utils.versions import require_version + +from ...extras.constants import SUPPORTED_CLASS_FOR_S2ATTN +from ...extras.logging import get_logger +from ...extras.packages import is_transformers_version_greater_than_4_43 + + +if TYPE_CHECKING: + from transformers import PretrainedConfig + + from ...hparams import ModelArguments + + +transformers_logger = logging.get_logger(__name__) + + +# Modified from: +# https://github.com/huggingface/transformers/blob/v4.40.0/src/transformers/models/llama/modeling_llama.py +def llama_attention_forward( + self: "LlamaAttention", + hidden_states: "torch.Tensor", + attention_mask: Optional["torch.Tensor"] = None, + position_ids: Optional["torch.LongTensor"] = None, + past_key_value: Optional["Cache"] = None, + output_attentions: bool = False, + cache_position: Optional["torch.LongTensor"] = None, + position_embeddings: Optional[Tuple["torch.Tensor", "torch.Tensor"]] = None, + **kwargs, +) -> Tuple["torch.Tensor", Optional["torch.Tensor"], Optional[Tuple["torch.Tensor"]]]: + bsz, q_len, _ = hidden_states.size() + + query_states: "torch.Tensor" = self.q_proj(hidden_states) + key_states: "torch.Tensor" = self.k_proj(hidden_states) + value_states: "torch.Tensor" = self.v_proj(hidden_states) + + query_states = query_states.view(bsz, q_len, self.num_heads, self.head_dim).transpose(1, 2) + key_states = key_states.view(bsz, q_len, self.num_key_value_heads, self.head_dim).transpose(1, 2) + value_states = value_states.view(bsz, q_len, self.num_key_value_heads, self.head_dim).transpose(1, 2) + + if position_embeddings is None: + cos, sin = self.rotary_emb(value_states, position_ids) + else: + cos, sin = position_embeddings + + query_states, key_states = apply_rotary_pos_emb(query_states, key_states, cos, sin) + + if past_key_value is not None: + cache_kwargs = {"sin": sin, "cos": cos, "cache_position": cache_position} + key_states, value_states = past_key_value.update(key_states, value_states, self.layer_idx, cache_kwargs) + + key_states = repeat_kv(key_states, self.num_key_value_groups) + value_states = repeat_kv(value_states, self.num_key_value_groups) + + if getattr(self.config, "group_size_ratio", None) and self.training: # shift + groupsz = int(q_len * getattr(self.config, "group_size_ratio")) + assert q_len % groupsz == 0, "q_len {} should be divisible by group size {}.".format(q_len, groupsz) + num_groups = q_len // groupsz + + def shift(state: "torch.Tensor") -> "torch.Tensor": + state = state.transpose(1, 2) # output: (bsz, seq_len, n_heads, head_dim) + state = torch.cat( + (state[:, :, : self.num_heads // 2], state[:, :, self.num_heads // 2 :].roll(-groupsz // 2, dims=1)), + dim=2, + ) + return state.reshape(bsz * num_groups, groupsz, self.num_heads, self.head_dim).transpose(1, 2) + + query_states, key_states, value_states = shift(query_states), shift(key_states), shift(value_states) + if attention_mask is not None: + attention_mask = attention_mask[:, :, :groupsz, :groupsz].repeat(num_groups, 1, 1, 1) + + attn_weights = torch.matmul(query_states, key_states.transpose(2, 3)) / math.sqrt(self.head_dim) + + if attention_mask is not None: # no matter the length, we just slice it + causal_mask = attention_mask[:, :, :, : key_states.shape[-2]] + attn_weights = attn_weights + causal_mask + + # upcast attention to fp32 + attn_weights = nn.functional.softmax(attn_weights, dim=-1, dtype=torch.float32).to(query_states.dtype) + attn_weights = nn.functional.dropout(attn_weights, p=self.attention_dropout, training=self.training) + attn_output = torch.matmul(attn_weights, value_states) # (bsz, :, seq_len, :) or (bsz * n_group, :, groupsz, :) + attn_output = attn_output.transpose(1, 2).contiguous() + + if getattr(self.config, "group_size_ratio", None) and self.training: # shift back + attn_output.reshape(bsz, q_len, self.num_heads, self.head_dim) + attn_output = torch.cat( + ( + attn_output[:, :, : self.num_heads // 2], + attn_output[:, :, self.num_heads // 2 :].roll(groupsz // 2, dims=1), + ), + dim=2, + ) + + attn_output = attn_output.reshape(bsz, q_len, self.hidden_size) + attn_output = self.o_proj(attn_output) + + if not output_attentions: + attn_weights = None + + return attn_output, attn_weights, past_key_value + + +# Modified from: +# https://github.com/huggingface/transformers/blob/v4.40.0/src/transformers/models/llama/modeling_llama.py +def llama_flash_attention_2_forward( + self: "LlamaFlashAttention2", + hidden_states: "torch.Tensor", + attention_mask: Optional["torch.Tensor"] = None, + position_ids: Optional["torch.LongTensor"] = None, + past_key_value: Optional["Cache"] = None, + output_attentions: bool = False, + cache_position: Optional["torch.LongTensor"] = None, + position_embeddings: Optional[Tuple["torch.Tensor", "torch.Tensor"]] = None, + **kwargs, +) -> Tuple["torch.Tensor", Optional["torch.Tensor"], Optional[Tuple["torch.Tensor"]]]: + # LlamaFlashAttention2 attention does not support output_attentions + output_attentions = False + + bsz, q_len, _ = hidden_states.size() + + query_states: "torch.Tensor" = self.q_proj(hidden_states) + key_states: "torch.Tensor" = self.k_proj(hidden_states) + value_states: "torch.Tensor" = self.v_proj(hidden_states) + + query_states = query_states.view(bsz, q_len, self.num_heads, self.head_dim).transpose(1, 2) + key_states = key_states.view(bsz, q_len, self.num_key_value_heads, self.head_dim).transpose(1, 2) + value_states = value_states.view(bsz, q_len, self.num_key_value_heads, self.head_dim).transpose(1, 2) + + if position_embeddings is None: + cos, sin = self.rotary_emb(value_states, position_ids) + else: + cos, sin = position_embeddings + + query_states, key_states = apply_rotary_pos_emb(query_states, key_states, cos, sin) + + if past_key_value is not None: + cache_kwargs = {"sin": sin, "cos": cos, "cache_position": cache_position} + key_states, value_states = past_key_value.update(key_states, value_states, self.layer_idx, cache_kwargs) + + key_states = repeat_kv(key_states, self.num_key_value_groups) + value_states = repeat_kv(value_states, self.num_key_value_groups) + + # FlashAttention requires the input to have the shape (bsz, seq_len, n_heads, head_dim) + query_states = query_states.transpose(1, 2) + key_states = key_states.transpose(1, 2) + value_states = value_states.transpose(1, 2) + + dropout_rate = self.attention_dropout if self.training else 0.0 + + input_dtype = query_states.dtype + if input_dtype == torch.float32: + if torch.is_autocast_enabled(): + target_dtype = torch.get_autocast_gpu_dtype() + elif hasattr(self.config, "_pre_quantization_dtype"): + target_dtype = self.config._pre_quantization_dtype + else: + target_dtype = self.q_proj.weight.dtype + + transformers_logger.warning_once("The input hidden states seems to be silently casted in float32.") + query_states = query_states.to(target_dtype) + key_states = key_states.to(target_dtype) + value_states = value_states.to(target_dtype) + + if getattr(self.config, "group_size_ratio", None) and self.training: # shift + groupsz = int(q_len * getattr(self.config, "group_size_ratio")) + assert q_len % groupsz == 0, "q_len {} should be divisible by group size {}.".format(q_len, groupsz) + num_groups = q_len // groupsz + + def shift(state: "torch.Tensor") -> "torch.Tensor": + state = torch.cat( + (state[:, :, : self.num_heads // 2], state[:, :, self.num_heads // 2 :].roll(-groupsz // 2, dims=1)), + dim=2, + ) + return state.reshape(bsz * num_groups, groupsz, self.num_heads, self.head_dim) + + query_states, key_states, value_states = shift(query_states), shift(key_states), shift(value_states) + if attention_mask is not None: + attention_mask = attention_mask[:, :groupsz].repeat(num_groups, 1) + + if is_transformers_version_greater_than_4_43(): + from transformers.modeling_flash_attention_utils import _flash_attention_forward + + attn_output: "torch.Tensor" = _flash_attention_forward( + query_states, + key_states, + value_states, + attention_mask, + query_states.size(1), + dropout=dropout_rate, + sliding_window=getattr(self, "sliding_window", None), + use_top_left_mask=self._flash_attn_uses_top_left_mask, + is_causal=self.is_causal, + ) + else: + attn_output: "torch.Tensor" = self._flash_attention_forward( + query_states, key_states, value_states, attention_mask, query_states.size(1), dropout=dropout_rate + ) + + if getattr(self.config, "group_size_ratio", None) and self.training: # shift back + attn_output.reshape(bsz, q_len, self.num_heads, self.head_dim) + attn_output = torch.cat( + ( + attn_output[:, :, : self.num_heads // 2], + attn_output[:, :, self.num_heads // 2 :].roll(groupsz // 2, dims=1), + ), + dim=2, + ) + + attn_output = attn_output.reshape(bsz, q_len, self.hidden_size).contiguous() + attn_output = self.o_proj(attn_output) + + if not output_attentions: + attn_weights = None + + return attn_output, attn_weights, past_key_value + + +# Modified from: +# https://github.com/huggingface/transformers/blob/v4.40.0/src/transformers/models/llama/modeling_llama.py +def llama_sdpa_attention_forward( + self: "LlamaSdpaAttention", + hidden_states: "torch.Tensor", + attention_mask: Optional["torch.Tensor"] = None, + position_ids: Optional["torch.LongTensor"] = None, + past_key_value: Optional["Cache"] = None, + output_attentions: bool = False, + cache_position: Optional["torch.LongTensor"] = None, + position_embeddings: Optional[Tuple["torch.Tensor", "torch.Tensor"]] = None, + **kwargs, +) -> Tuple["torch.Tensor", Optional["torch.Tensor"], Optional[Tuple["torch.Tensor"]]]: + if output_attentions: + transformers_logger.warning_once( + "SDPA does not support `output_attentions=True`. Falling back to the vanilla attention" + ) + return llama_attention_forward( + self, + hidden_states=hidden_states, + attention_mask=attention_mask, + position_ids=position_ids, + past_key_value=past_key_value, + output_attentions=output_attentions, + cache_position=cache_position, + **kwargs, + ) + + bsz, q_len, _ = hidden_states.size() + + query_states: "torch.Tensor" = self.q_proj(hidden_states) + key_states: "torch.Tensor" = self.k_proj(hidden_states) + value_states: "torch.Tensor" = self.v_proj(hidden_states) + + query_states = query_states.view(bsz, q_len, self.num_heads, self.head_dim).transpose(1, 2) + key_states = key_states.view(bsz, q_len, self.num_key_value_heads, self.head_dim).transpose(1, 2) + value_states = value_states.view(bsz, q_len, self.num_key_value_heads, self.head_dim).transpose(1, 2) + + if position_embeddings is None: + cos, sin = self.rotary_emb(value_states, position_ids) + else: + cos, sin = position_embeddings + + query_states, key_states = apply_rotary_pos_emb(query_states, key_states, cos, sin) + + if past_key_value is not None: + cache_kwargs = {"sin": sin, "cos": cos, "cache_position": cache_position} + key_states, value_states = past_key_value.update(key_states, value_states, self.layer_idx, cache_kwargs) + + key_states = repeat_kv(key_states, self.num_key_value_groups) + value_states = repeat_kv(value_states, self.num_key_value_groups) + + if getattr(self.config, "group_size_ratio", None) and self.training: # shift + groupsz = int(q_len * getattr(self.config, "group_size_ratio")) + assert q_len % groupsz == 0, "q_len {} should be divisible by group size {}.".format(q_len, groupsz) + num_groups = q_len // groupsz + + def shift(state: "torch.Tensor") -> "torch.Tensor": + state = state.transpose(1, 2) # output: (bsz, seq_len, n_heads, head_dim) + state = torch.cat( + (state[:, :, : self.num_heads // 2], state[:, :, self.num_heads // 2 :].roll(-groupsz // 2, dims=1)), + dim=2, + ) + return state.reshape(bsz * num_groups, groupsz, self.num_heads, self.head_dim).transpose(1, 2) + + query_states, key_states, value_states = shift(query_states), shift(key_states), shift(value_states) + if attention_mask is not None: + attention_mask = attention_mask[:, :, :groupsz, :groupsz].repeat(num_groups, 1, 1, 1) + + causal_mask = attention_mask + if attention_mask is not None: + causal_mask = causal_mask[:, :, :, : key_states.shape[-2]] + + if query_states.device.type == "cuda" and causal_mask is not None: # avoid pytorch bug + query_states = query_states.contiguous() + key_states = key_states.contiguous() + value_states = value_states.contiguous() + + is_causal = True if causal_mask is None and q_len > 1 else False + attn_output = torch.nn.functional.scaled_dot_product_attention( + query_states, + key_states, + value_states, + attn_mask=causal_mask, + dropout_p=self.attention_dropout if self.training else 0.0, + is_causal=is_causal, + ) + attn_output = attn_output.transpose(1, 2).contiguous() + + if getattr(self.config, "group_size_ratio", None) and self.training: # shift back + attn_output.reshape(bsz, q_len, self.num_heads, self.head_dim) + attn_output = torch.cat( + ( + attn_output[:, :, : self.num_heads // 2], + attn_output[:, :, self.num_heads // 2 :].roll(groupsz // 2, dims=1), + ), + dim=2, + ) + + attn_output = attn_output.reshape(bsz, q_len, self.hidden_size) + attn_output = self.o_proj(attn_output) + + return attn_output, None, past_key_value + + +def _apply_llama_patch() -> None: + require_version("transformers>=4.41.2,<=4.43.4", "To fix: pip install transformers>=4.41.2,<=4.43.4") + LlamaAttention.forward = llama_attention_forward + LlamaFlashAttention2.forward = llama_flash_attention_2_forward + LlamaSdpaAttention.forward = llama_sdpa_attention_forward + + +def configure_longlora(config: "PretrainedConfig", model_args: "ModelArguments", is_trainable: bool) -> None: + if not is_trainable or not model_args.shift_attn: + return + + logger = get_logger(__name__) + + if getattr(config, "model_type", None) in SUPPORTED_CLASS_FOR_S2ATTN: + setattr(config, "group_size_ratio", 0.25) + _apply_llama_patch() + logger.info("Using shift short attention with group_size_ratio=1/4.") + else: + logger.warning("Current model does not support shift short attention.") diff --git a/IOPO/Method-IOPO/src/llamafactory/model/model_utils/misc.py b/IOPO/Method-IOPO/src/llamafactory/model/model_utils/misc.py new file mode 100644 index 00000000..a2812228 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/model/model_utils/misc.py @@ -0,0 +1,88 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from typing import TYPE_CHECKING, List + +from ...extras.logging import get_logger + + +if TYPE_CHECKING: + from transformers import PretrainedConfig, PreTrainedModel, PreTrainedTokenizer + + +logger = get_logger(__name__) + + +def find_all_linear_modules(model: "PreTrainedModel", freeze_vision_tower: bool) -> List[str]: + r""" + Finds all available modules to apply lora or galore. + """ + forbidden_modules = {"lm_head"} + + if model.config.model_type == "chatglm": + forbidden_modules.add("output_layer") + elif model.config.model_type == "internlm2": + forbidden_modules.add("output") + elif model.config.model_type in ["llava", "paligemma"]: + forbidden_modules.add("multi_modal_projector") + + if freeze_vision_tower: + forbidden_modules.add("vision_tower") + + module_names = set() + for name, module in model.named_modules(): + if any(forbidden_module in name for forbidden_module in forbidden_modules): + continue + + if "Linear" in module.__class__.__name__ and "Embedding" not in module.__class__.__name__: + module_names.add(name.split(".")[-1]) + + logger.info("Found linear modules: {}".format(",".join(module_names))) + return list(module_names) + + +def find_expanded_modules(model: "PreTrainedModel", target_modules: List[str], num_layer_trainable: int) -> List[str]: + r""" + Finds the modules in the expanded blocks to apply lora. + """ + num_layers = getattr(model.config, "num_hidden_layers", None) + if not num_layers: + raise ValueError("Model was not supported.") + + if num_layers % num_layer_trainable != 0: + raise ValueError( + "`num_layers` {} should be divisible by `num_layer_trainable` {}.".format(num_layers, num_layer_trainable) + ) + + stride = num_layers // num_layer_trainable + trainable_layer_ids = range(stride - 1, num_layers + stride - 1, stride) + trainable_layers = [".{:d}.".format(idx) for idx in trainable_layer_ids] + module_names = [] + for name, _ in model.named_modules(): + if any(target_module in name for target_module in target_modules) and any( + trainable_layer in name for trainable_layer in trainable_layers + ): + module_names.append(name) + + logger.info("Apply lora to layers: {}".format(",".join(map(str, trainable_layer_ids)))) + return module_names + + +def register_autoclass(config: "PretrainedConfig", model: "PreTrainedModel", tokenizer: "PreTrainedTokenizer"): + if "AutoConfig" in getattr(config, "auto_map", {}): + config.__class__.register_for_auto_class() + if "AutoModelForCausalLM" in getattr(config, "auto_map", {}): + model.__class__.register_for_auto_class() + if "AutoTokenizer" in tokenizer.init_kwargs.get("auto_map", {}): + tokenizer.__class__.register_for_auto_class() diff --git a/IOPO/Method-IOPO/src/llamafactory/model/model_utils/mod.py b/IOPO/Method-IOPO/src/llamafactory/model/model_utils/mod.py new file mode 100644 index 00000000..ec73af00 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/model/model_utils/mod.py @@ -0,0 +1,42 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from typing import TYPE_CHECKING + +from ...extras.constants import MOD_SUPPORTED_MODELS + + +if TYPE_CHECKING: + from transformers import PretrainedConfig, PreTrainedModel + + from ...hparams import ModelArguments + + +def load_mod_pretrained_model(**init_kwargs) -> "PreTrainedModel": + from MoD import AutoMoDModelForCausalLM + + return AutoMoDModelForCausalLM.from_pretrained(**init_kwargs) + + +def convert_pretrained_model_to_mod( + model: "PreTrainedModel", config: "PretrainedConfig", model_args: "ModelArguments" +) -> "PreTrainedModel": + from MoD import apply_mod_to_hf + + if getattr(config, "model_type", None) not in MOD_SUPPORTED_MODELS: + raise ValueError("Current model is not supported by mixture-of-depth.") + + model = apply_mod_to_hf(model) + model = model.to(model_args.compute_dtype) + return model diff --git a/IOPO/Method-IOPO/src/llamafactory/model/model_utils/moe.py b/IOPO/Method-IOPO/src/llamafactory/model/model_utils/moe.py new file mode 100644 index 00000000..5c7473aa --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/model/model_utils/moe.py @@ -0,0 +1,80 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from typing import TYPE_CHECKING, Sequence + +import torch +from transformers.integrations import is_deepspeed_zero3_enabled +from transformers.utils.versions import require_version + + +if TYPE_CHECKING: + from transformers import PretrainedConfig, PreTrainedModel + + from ...hparams import ModelArguments + + +def _set_z3_leaf_modules(model: "PreTrainedModel", leaf_modules: Sequence["torch.nn.Module"]) -> None: + require_version("deepspeed>=0.13.0", "To fix: pip install deepspeed>=0.13.0") + from deepspeed.utils import set_z3_leaf_modules # type: ignore + + set_z3_leaf_modules(model, leaf_modules) + + +def add_z3_leaf_module(model: "PreTrainedModel") -> None: + r""" + Sets module as a leaf module to skip partitioning in deepspeed zero3. + """ + if not is_deepspeed_zero3_enabled(): + return + + if getattr(model.config, "model_type", None) == "dbrx": + from transformers.models.dbrx.modeling_dbrx import DbrxFFN + + _set_z3_leaf_modules(model, [DbrxFFN]) + + if getattr(model.config, "model_type", None) == "jamba": + from transformers.models.jamba.modeling_jamba import JambaSparseMoeBlock + + _set_z3_leaf_modules(model, [JambaSparseMoeBlock]) + + if getattr(model.config, "model_type", None) == "jetmoe": + from transformers.models.jetmoe.modeling_jetmoe import JetMoeMoA, JetMoeMoE + + _set_z3_leaf_modules(model, [JetMoeMoA, JetMoeMoE]) + + if getattr(model.config, "model_type", None) == "mixtral": + from transformers.models.mixtral.modeling_mixtral import MixtralSparseMoeBlock + + _set_z3_leaf_modules(model, [MixtralSparseMoeBlock]) + + if getattr(model.config, "model_type", None) == "qwen2moe": + from transformers.models.qwen2_moe.modeling_qwen2_moe import Qwen2MoeSparseMoeBlock + + _set_z3_leaf_modules(model, [Qwen2MoeSparseMoeBlock]) + + +def configure_moe(config: "PretrainedConfig", model_args: "ModelArguments", is_trainable: bool) -> None: + if model_args.moe_aux_loss_coef is not None: + if getattr(config, "model_type", None) in ["jamba", "mixtral", "qwen2_moe"]: + setattr(config, "router_aux_loss_coef", model_args.moe_aux_loss_coef) + + elif getattr(config, "model_type", None) == "deepseek": + setattr(config, "aux_loss_alpha", model_args.moe_aux_loss_coef) + + elif getattr(config, "model_type", None) == "jetmoe": + setattr(config, "aux_loss_coef", model_args.moe_aux_loss_coef) + + if getattr(config, "model_type", None) in ["dbrx", "jamba", "jetmoe", "mixtral", "qwen2_moe"]: + setattr(config, "output_router_logits", is_trainable) diff --git a/IOPO/Method-IOPO/src/llamafactory/model/model_utils/packing.py b/IOPO/Method-IOPO/src/llamafactory/model/model_utils/packing.py new file mode 100644 index 00000000..ded7f295 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/model/model_utils/packing.py @@ -0,0 +1,157 @@ +# Copyright 2024 Musab Gultekin and the LlamaFactory team. +# +# This code is based on the Musab Gultekin's functionary library. +# https://github.com/MeetKai/functionary/blob/main/functionary/train/packing/monkey_patch_packing.py +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +# MIT License +# +# Copyright (c) 2023 Musab Gultekin +# +# Permission is hereby granted, free of charge, to any person obtaining a copy +# of this software and associated documentation files (the "Software"), to deal +# in the Software without restriction, including without limitation the rights +# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +# copies of the Software, and to permit persons to whom the Software is +# furnished to do so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in all +# copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +# SOFTWARE. + +from typing import TYPE_CHECKING, Tuple + +import torch +import torch.nn.functional as F +from transformers.utils.versions import require_version + +from ...extras.constants import SUPPORTED_CLASS_FOR_BLOCK_DIAG_ATTN +from ...extras.logging import get_logger +from ...extras.packages import is_transformers_version_greater_than_4_43 + + +if TYPE_CHECKING: + from transformers import PretrainedConfig + + from ...hparams import ModelArguments + + +logger = get_logger(__name__) + + +def get_seqlens_in_batch(attention_mask: "torch.Tensor") -> "torch.Tensor": + r""" + Gets the sequnce lengths in the current batch. + + e.g. + ```python + # input + [ + [1, 1, 2, 2, 2, 0], + [1, 2, 2, 3, 3, 3], + ] + # output + [2, 3, 1, 2, 3] + ``` + """ + bsz = attention_mask.size(0) + dtype, device = attention_mask.dtype, attention_mask.device + max_num = torch.max(attention_mask).item() + counts: "torch.Tensor" = torch.zeros((bsz, max_num), dtype=dtype, device=device) + for i in range(max_num): + counts[:, i] = torch.sum(attention_mask == (i + 1), dim=-1) + + counts = counts.flatten() + seqlens = counts[counts.nonzero().squeeze(dim=-1)] + return seqlens + + +def get_unpad_data(attention_mask: "torch.Tensor") -> Tuple["torch.Tensor", "torch.Tensor", int]: + r""" + Prepares the indices and seqlens for flash attn varlen function. + + Returns: + indices: indices of non-masked tokens from the flattened sequence. + cu_seqlens: the cumulative sequence lengths in the current batch, always starts from 0. + max_seqlen_in_batch: the largest seqlen in the current batch. + + e.g. + ```python + # input + [ + [1, 1, 2, 2, 2, 0], + [1, 2, 2, 3, 3, 3], + ] + # output + [0, 1, 2, 3, 4, 6, 7, 8, 9, 10, 11] + [0, 2, 5, 6, 8, 11] + 3 + ``` + """ + seqlens_in_batch = get_seqlens_in_batch(attention_mask) + indices = torch.nonzero(attention_mask.flatten(), as_tuple=False).flatten() + max_seqlen_in_batch = seqlens_in_batch.max().item() + cu_seqlens = F.pad(torch.cumsum(seqlens_in_batch, dim=0, dtype=torch.int32), (1, 0)) + return indices, cu_seqlens, max_seqlen_in_batch + + +def _patch_for_block_diag_attn(model_type: str) -> None: + require_version("transformers>=4.41.2,<=4.43.4", "To fix: pip install transformers>=4.41.2,<=4.43.4") + if is_transformers_version_greater_than_4_43(): + import transformers.modeling_flash_attention_utils + + transformers.modeling_flash_attention_utils._get_unpad_data = get_unpad_data + return + + import transformers.models + + if model_type == "cohere": + transformers.models.cohere.modeling_cohere._get_unpad_data = get_unpad_data + elif model_type == "falcon": + transformers.models.falcon.modeling_falcon._get_unpad_data = get_unpad_data + elif model_type == "gemma": + transformers.models.gemma.modeling_gemma._get_unpad_data = get_unpad_data + elif model_type == "gemma2": + transformers.models.gemma2.modeling_gemma2._get_unpad_data = get_unpad_data + elif model_type == "llama": + transformers.models.llama.modeling_llama._get_unpad_data = get_unpad_data + elif model_type == "mistral": + transformers.models.mistral.modeling_mistral._get_unpad_data = get_unpad_data + elif model_type == "phi": + transformers.models.phi.modeling_phi._get_unpad_data = get_unpad_data + elif model_type == "phi3": + transformers.models.phi3.modeling_phi3._get_unpad_data = get_unpad_data + elif model_type == "qwen2": + transformers.models.qwen2.modeling_qwen2._get_unpad_data = get_unpad_data + elif model_type == "starcoder2": + transformers.models.starcoder2.modeling_starcoder2._get_unpad_data = get_unpad_data + + +def configure_packing(config: "PretrainedConfig", model_args: "ModelArguments", is_trainable: bool) -> None: + if not is_trainable or not model_args.block_diag_attn: + return + + model_type = getattr(config, "model_type", None) + if model_type in SUPPORTED_CLASS_FOR_BLOCK_DIAG_ATTN: + _patch_for_block_diag_attn(model_type) + logger.info("Using block diagonal attention for sequence packing without cross-attention.") + else: + raise ValueError("Current model does not support block diagonal attention.") diff --git a/IOPO/Method-IOPO/src/llamafactory/model/model_utils/quantization.py b/IOPO/Method-IOPO/src/llamafactory/model/model_utils/quantization.py new file mode 100644 index 00000000..451abee0 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/model/model_utils/quantization.py @@ -0,0 +1,204 @@ +# Copyright 2024 HuggingFace Inc. and the LlamaFactory team. +# +# This code is inspired by the HuggingFace's Transformers and Optimum library. +# https://github.com/huggingface/transformers/blob/v4.41.0/src/transformers/utils/quantization_config.py +# https://github.com/huggingface/optimum/blob/v1.20.0/optimum/gptq/data.py +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import os +import random +from enum import Enum, unique +from typing import TYPE_CHECKING, Any, Dict, List + +import torch +from datasets import load_dataset +from transformers import BitsAndBytesConfig, EetqConfig, GPTQConfig, HqqConfig +from transformers.integrations import is_deepspeed_zero3_enabled +from transformers.modeling_utils import is_fsdp_enabled +from transformers.utils.versions import require_version + +from ...extras.constants import FILEEXT2TYPE +from ...extras.logging import get_logger +from ...extras.misc import get_current_device + + +if TYPE_CHECKING: + from transformers import PretrainedConfig, PreTrainedTokenizer + + from ...hparams import ModelArguments + + +logger = get_logger(__name__) + + +@unique +class QuantizationMethod(str, Enum): + r""" + Borrowed from `transformers.utils.quantization_config.QuantizationMethod`. + """ + + BITS_AND_BYTES = "bitsandbytes" + GPTQ = "gptq" + AWQ = "awq" + AQLM = "aqlm" + QUANTO = "quanto" + EETQ = "eetq" + HQQ = "hqq" + + +def _get_quantization_dataset(tokenizer: "PreTrainedTokenizer", model_args: "ModelArguments") -> List[Dict[str, Any]]: + r""" + Prepares the tokenized dataset to perform AutoGPTQ. Do not use tensor output for JSON serialization. + """ + if os.path.isfile(model_args.export_quantization_dataset): + data_path = FILEEXT2TYPE.get(model_args.export_quantization_dataset.split(".")[-1], None) + data_files = model_args.export_quantization_dataset + else: + data_path = model_args.export_quantization_dataset + data_files = None + + dataset = load_dataset( + path=data_path, + data_files=data_files, + split="train", + cache_dir=model_args.cache_dir, + token=model_args.hf_hub_token, + ) + + samples = [] + maxlen = model_args.export_quantization_maxlen + for _ in range(model_args.export_quantization_nsamples): + n_try = 0 + while True: + if n_try > 100: + raise ValueError("Cannot find satisfying example, considering decrease `export_quantization_maxlen`.") + + sample_idx = random.randint(0, len(dataset) - 1) + sample: Dict[str, "torch.Tensor"] = tokenizer(dataset[sample_idx]["text"], return_tensors="pt") + n_try += 1 + if sample["input_ids"].size(1) > maxlen: + break # TODO: fix large maxlen + + word_idx = random.randint(0, sample["input_ids"].size(1) - maxlen - 1) + input_ids = sample["input_ids"][:, word_idx : word_idx + maxlen] + attention_mask = sample["attention_mask"][:, word_idx : word_idx + maxlen] + samples.append({"input_ids": input_ids.tolist(), "attention_mask": attention_mask.tolist()}) + + return samples + + +def configure_quantization( + config: "PretrainedConfig", + tokenizer: "PreTrainedTokenizer", + model_args: "ModelArguments", + init_kwargs: Dict[str, Any], +) -> None: + r""" + Priority: PTQ-quantized (train/infer) > AutoGPTQ (export) > On-the-fly quantization (train/infer) + """ + if getattr(config, "quantization_config", None): # ptq + if model_args.quantization_bit is not None: + logger.warning("`quantization_bit` will not affect on the PTQ-quantized models.") + + if is_deepspeed_zero3_enabled() or is_fsdp_enabled(): + raise ValueError("DeepSpeed ZeRO-3 or FSDP is incompatible with PTQ-quantized models.") + + quantization_config: Dict[str, Any] = getattr(config, "quantization_config", None) + quant_method = quantization_config.get("quant_method", "") + + if quant_method == QuantizationMethod.GPTQ: + require_version("auto_gptq>=0.5.0", "To fix: pip install auto_gptq>=0.5.0") + quantization_config.pop("disable_exllama", None) # remove deprecated args + quantization_config["use_exllama"] = False # disable exllama + + if quant_method == QuantizationMethod.AWQ: + require_version("autoawq", "To fix: pip install autoawq") + + if quant_method == QuantizationMethod.AQLM: + require_version("aqlm>=1.1.0", "To fix: pip install aqlm[gpu]>=1.1.0") + quantization_config["bits"] = 2 + + quant_bits = quantization_config.get("bits", "?") + logger.info("Loading {}-bit {}-quantized model.".format(quant_bits, quant_method.upper())) + + elif model_args.export_quantization_bit is not None: # auto-gptq + if model_args.export_quantization_bit not in [8, 4, 3, 2]: + raise ValueError("AutoGPTQ only accepts 2/3/4/8-bit quantization.") + + require_version("optimum>=1.17.0", "To fix: pip install optimum>=1.17.0") + require_version("auto_gptq>=0.5.0", "To fix: pip install auto_gptq>=0.5.0") + from accelerate.utils import get_max_memory + + if getattr(config, "model_type", None) == "chatglm": + raise ValueError("ChatGLM model is not supported yet.") + + init_kwargs["quantization_config"] = GPTQConfig( + bits=model_args.export_quantization_bit, + dataset=_get_quantization_dataset(tokenizer, model_args), + ) + init_kwargs["device_map"] = "auto" + init_kwargs["max_memory"] = get_max_memory() + logger.info("Quantizing model to {} bit with AutoGPTQ.".format(model_args.export_quantization_bit)) + + elif model_args.quantization_bit is not None: # on-the-fly + if model_args.quantization_method == QuantizationMethod.BITS_AND_BYTES.value: + if model_args.quantization_bit == 8: + require_version("bitsandbytes>=0.37.0", "To fix: pip install bitsandbytes>=0.37.0") + init_kwargs["quantization_config"] = BitsAndBytesConfig(load_in_8bit=True) + elif model_args.quantization_bit == 4: + require_version("bitsandbytes>=0.39.0", "To fix: pip install bitsandbytes>=0.39.0") + init_kwargs["quantization_config"] = BitsAndBytesConfig( + load_in_4bit=True, + bnb_4bit_compute_dtype=model_args.compute_dtype, + bnb_4bit_use_double_quant=model_args.double_quantization, + bnb_4bit_quant_type=model_args.quantization_type, + bnb_4bit_quant_storage=model_args.compute_dtype, # crucial for fsdp+qlora + ) + else: + raise ValueError("Bitsandbytes only accepts 4-bit or 8-bit quantization.") + + # Do not assign device map if: + # 1. deepspeed zero3 or fsdp (train) + # 2. auto quantization device map (inference) + if is_deepspeed_zero3_enabled() or is_fsdp_enabled() or model_args.quantization_device_map == "auto": + if model_args.quantization_bit != 4: + raise ValueError("Only 4-bit quantized model can use fsdp+qlora or auto device map.") + + require_version("bitsandbytes>=0.43.0", "To fix: pip install bitsandbytes>=0.43.0") + else: + init_kwargs["device_map"] = {"": get_current_device()} # change auto device map for inference + + logger.info("Quantizing model to {} bit with bitsandbytes.".format(model_args.quantization_bit)) + elif model_args.quantization_method == QuantizationMethod.HQQ.value: + if model_args.quantization_bit not in [8, 6, 5, 4, 3, 2, 1]: + raise ValueError("HQQ only accepts 1/2/3/4/5/6/8-bit quantization.") + + if is_deepspeed_zero3_enabled() or is_fsdp_enabled(): + raise ValueError("HQQ quantization is incompatible with DeepSpeed ZeRO-3 or FSDP.") + + require_version("hqq", "To fix: pip install hqq") + init_kwargs["quantization_config"] = HqqConfig( + nbits=model_args.quantization_bit, quant_zero=False, quant_scale=False, axis=0 + ) # use ATEN kernel (axis=0) for performance + logger.info("Quantizing model to {} bit with HQQ.".format(model_args.quantization_bit)) + elif model_args.quantization_method == QuantizationMethod.EETQ.value: + if model_args.quantization_bit != 8: + raise ValueError("EETQ only accepts 8-bit quantization.") + + if is_deepspeed_zero3_enabled() or is_fsdp_enabled(): + raise ValueError("EETQ quantization is incompatible with DeepSpeed ZeRO-3 or FSDP.") + + require_version("eetq", "To fix: pip install eetq") + init_kwargs["quantization_config"] = EetqConfig() + logger.info("Quantizing model to {} bit with EETQ.".format(model_args.quantization_bit)) diff --git a/IOPO/Method-IOPO/src/llamafactory/model/model_utils/rope.py b/IOPO/Method-IOPO/src/llamafactory/model/model_utils/rope.py new file mode 100644 index 00000000..4373ee19 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/model/model_utils/rope.py @@ -0,0 +1,65 @@ +# Copyright 2024 LMSYS and the LlamaFactory team. +# Copyright 2023 Rohan Taori, Ishaan Gulrajani, Tianyi Zhang, Yann Dubois, Xuechen Li +# +# This code is inspired by the LMSYS's FastChat library. +# https://github.com/lm-sys/FastChat/blob/v0.2.30/fastchat/train/train.py +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import math +from typing import TYPE_CHECKING + +from ...extras.logging import get_logger + + +if TYPE_CHECKING: + from transformers import PretrainedConfig + + from ...hparams import ModelArguments + + +logger = get_logger(__name__) + + +def configure_rope(config: "PretrainedConfig", model_args: "ModelArguments", is_trainable: bool) -> None: + if model_args.rope_scaling is None: + return + + if not hasattr(config, "rope_scaling"): + logger.warning("Current model does not support RoPE scaling.") + return + + if model_args.model_max_length is not None: + if is_trainable and model_args.rope_scaling == "dynamic": + logger.warning( + "Dynamic NTK scaling may not work well with fine-tuning. " + "See: https://github.com/huggingface/transformers/pull/24653" + ) + + current_max_length = getattr(config, "max_position_embeddings", None) + if current_max_length and model_args.model_max_length > current_max_length: + logger.info( + "Enlarge max model length from {} to {}.".format(current_max_length, model_args.model_max_length) + ) + setattr(config, "max_position_embeddings", model_args.model_max_length) + scaling_factor = float(math.ceil(model_args.model_max_length / current_max_length)) + else: + logger.warning("Input length is smaller than max length. Consider increase input length.") + scaling_factor = 1.0 + else: + scaling_factor = 2.0 + + setattr(config, "rope_scaling", {"type": model_args.rope_scaling, "factor": scaling_factor}) + logger.info( + "Using {} scaling strategy and setting scaling factor to {}".format(model_args.rope_scaling, scaling_factor) + ) diff --git a/IOPO/Method-IOPO/src/llamafactory/model/model_utils/unsloth.py b/IOPO/Method-IOPO/src/llamafactory/model/model_utils/unsloth.py new file mode 100644 index 00000000..9cfaec61 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/model/model_utils/unsloth.py @@ -0,0 +1,102 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from typing import TYPE_CHECKING, Any, Dict, Optional + +from ...extras.logging import get_logger +from ...extras.misc import get_current_device + + +if TYPE_CHECKING: + from transformers import PretrainedConfig, PreTrainedModel + + from ...hparams import ModelArguments + + +logger = get_logger(__name__) + + +def _get_unsloth_kwargs( + config: "PretrainedConfig", model_name_or_path: str, model_args: "ModelArguments" +) -> Dict[str, Any]: + return { + "model_name": model_name_or_path, + "max_seq_length": model_args.model_max_length or 4096, + "dtype": model_args.compute_dtype, + "load_in_4bit": model_args.quantization_bit == 4, + "token": model_args.hf_hub_token, + "device_map": {"": get_current_device()}, + "rope_scaling": getattr(config, "rope_scaling", None), + "fix_tokenizer": False, + "trust_remote_code": True, + "use_gradient_checkpointing": "unsloth", + } + + +def load_unsloth_pretrained_model( + config: "PretrainedConfig", model_args: "ModelArguments" +) -> Optional["PreTrainedModel"]: + r""" + Optionally loads pretrained model with unsloth. Used in training. + """ + from unsloth import FastLanguageModel + + unsloth_kwargs = _get_unsloth_kwargs(config, model_args.model_name_or_path, model_args) + try: + model, _ = FastLanguageModel.from_pretrained(**unsloth_kwargs) + except NotImplementedError: + logger.warning("Unsloth does not support model type {}.".format(getattr(config, "model_type", None))) + model = None + model_args.use_unsloth = False + + return model + + +def get_unsloth_peft_model( + model: "PreTrainedModel", model_args: "ModelArguments", peft_kwargs: Dict[str, Any] +) -> "PreTrainedModel": + r""" + Gets the peft model for the pretrained model with unsloth. Used in training. + """ + from unsloth import FastLanguageModel + + unsloth_peft_kwargs = { + "model": model, + "max_seq_length": model_args.model_max_length, + "use_gradient_checkpointing": "unsloth", + } + return FastLanguageModel.get_peft_model(**peft_kwargs, **unsloth_peft_kwargs) + + +def load_unsloth_peft_model( + config: "PretrainedConfig", model_args: "ModelArguments", is_trainable: bool +) -> "PreTrainedModel": + r""" + Loads peft model with unsloth. Used in both training and inference. + """ + from unsloth import FastLanguageModel + + unsloth_kwargs = _get_unsloth_kwargs(config, model_args.adapter_name_or_path[0], model_args) + try: + if not is_trainable: + unsloth_kwargs["use_gradient_checkpointing"] = False + + model, _ = FastLanguageModel.from_pretrained(**unsloth_kwargs) + except NotImplementedError: + raise ValueError("Unsloth does not support model type {}.".format(getattr(config, "model_type", None))) + + if not is_trainable: + FastLanguageModel.for_inference(model) + + return model diff --git a/IOPO/Method-IOPO/src/llamafactory/model/model_utils/valuehead.py b/IOPO/Method-IOPO/src/llamafactory/model/model_utils/valuehead.py new file mode 100644 index 00000000..9ab3d45a --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/model/model_utils/valuehead.py @@ -0,0 +1,73 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from typing import TYPE_CHECKING, Dict + +import torch +from transformers.utils import cached_file + +from ...extras.constants import V_HEAD_SAFE_WEIGHTS_NAME, V_HEAD_WEIGHTS_NAME +from ...extras.logging import get_logger + + +if TYPE_CHECKING: + from transformers import PreTrainedModel + + from ...hparams import ModelArguments + + +logger = get_logger(__name__) + + +def load_valuehead_params(path_or_repo_id: str, model_args: "ModelArguments") -> Dict[str, torch.Tensor]: + r""" + Loads value head parameters from Hugging Face Hub or local disk. + + Returns: dict with keys `v_head.summary.weight` and `v_head.summary.bias`. + """ + kwargs = {"path_or_repo_id": path_or_repo_id, "cache_dir": model_args.cache_dir, "token": model_args.hf_hub_token} + err_text = "" + + try: + from safetensors import safe_open + + vhead_file = cached_file(filename=V_HEAD_SAFE_WEIGHTS_NAME, **kwargs) + with safe_open(vhead_file, framework="pt", device="cpu") as f: + return {key: f.get_tensor(key) for key in f.keys()} + except Exception as err: + err_text = str(err) + + try: + vhead_file = cached_file(filename=V_HEAD_WEIGHTS_NAME, **kwargs) + return torch.load(vhead_file, map_location="cpu") + except Exception as err: + err_text = str(err) + + logger.info("Provided path ({}) does not contain value head weights: {}.".format(path_or_repo_id, err_text)) + logger.info("Ignore the above message if you are not resuming the training of a value head model.") + return None + + +def prepare_valuehead_model(model: "PreTrainedModel") -> None: + if getattr(model.config, "model_type", None) == "llava": + setattr(model, "lm_head", model.language_model.get_output_embeddings()) + setattr(model, "_keys_to_ignore_on_save", ["lm_head.weight"]) + + if getattr(model.config, "model_type", None) == "chatglm": + setattr(model, "lm_head", model.transformer.output_layer) + setattr(model, "_keys_to_ignore_on_save", ["lm_head.weight"]) + + if getattr(model.config, "model_type", None) == "internlm2": + setattr(model, "lm_head", model.output) + setattr(model, "_keys_to_ignore_on_save", ["lm_head.weight"]) diff --git a/IOPO/Method-IOPO/src/llamafactory/model/model_utils/visual.py b/IOPO/Method-IOPO/src/llamafactory/model/model_utils/visual.py new file mode 100644 index 00000000..828a5e6d --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/model/model_utils/visual.py @@ -0,0 +1,103 @@ +# Copyright 2024 HuggingFace Inc. and the LlamaFactory team. +# +# This code is inspired by the HuggingFace's Transformers library. +# https://github.com/huggingface/transformers/blob/v4.40.0/src/transformers/models/llava/modeling_llava.py +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from typing import TYPE_CHECKING, Tuple + +import torch +import transformers.models +from transformers.activations import ACT2FN +from transformers.utils import logging + +from ...extras.logging import get_logger + + +if TYPE_CHECKING: + from transformers import LlavaConfig, PretrainedConfig, PreTrainedModel + + from ...hparams import ModelArguments + + +logger = get_logger(__name__) +transformers_logger = logging.get_logger(__name__) + + +class LlavaMultiModalProjectorForYiVL(torch.nn.Module): + def __init__(self, config: "LlavaConfig") -> None: + super().__init__() + + self.config = config + if config is None: + return + + self.linear_1 = torch.nn.Linear(config.vision_config.hidden_size, config.text_config.hidden_size, bias=True) + self.linear_2 = torch.nn.LayerNorm(config.text_config.hidden_size, bias=True) + self.linear_3 = torch.nn.Linear(config.text_config.hidden_size, config.text_config.hidden_size, bias=True) + self.linear_4 = torch.nn.LayerNorm(config.text_config.hidden_size, bias=True) + self.act = ACT2FN[config.projector_hidden_act] + + def forward(self, image_features: "torch.Tensor") -> "torch.Tensor": + hidden_states = self.linear_1(image_features) + hidden_states = self.linear_2(hidden_states) + hidden_states = self.act(hidden_states) + hidden_states = self.linear_3(hidden_states) + hidden_states = self.linear_4(hidden_states) + if hidden_states.dtype == torch.float32: + if torch.is_autocast_enabled(): + target_dtype = torch.get_autocast_gpu_dtype() + elif hasattr(self.config, "_pre_quantization_dtype"): + target_dtype = self.config._pre_quantization_dtype + else: + target_dtype = self.linear_1.weight.dtype + + transformers_logger.warning_once("The hidden states seems to be silently casted in float32.") + hidden_states = hidden_states.to(target_dtype) + + return hidden_states + + +class LlavaMultiModalProjectorForYiVLForVLLM(LlavaMultiModalProjectorForYiVL): + def __init__(self, vision_hidden_size: int, text_hidden_size: int, projector_hidden_act: str) -> None: + super().__init__(config=None) + + self.linear_1 = torch.nn.Linear(vision_hidden_size, text_hidden_size, bias=True) + self.linear_2 = torch.nn.LayerNorm(text_hidden_size, bias=True) + self.linear_3 = torch.nn.Linear(text_hidden_size, text_hidden_size, bias=True) + self.linear_4 = torch.nn.LayerNorm(text_hidden_size, bias=True) + self.act = ACT2FN[projector_hidden_act] + + +def autocast_projector_dtype( + model: "PreTrainedModel", model_args: "ModelArguments", mm_projector_name: str = "multi_modal_projector" +) -> None: + def _mm_projector_forward_post_hook( + module: "torch.nn.Module", args: Tuple["torch.Tensor"], output: "torch.Tensor" + ) -> "torch.Tensor": + return output.to(model_args.compute_dtype) + + if hasattr(model, mm_projector_name) and getattr(model, "quantization_method", None): + logger.info("Casting multimodal projector outputs in {}.".format(model_args.compute_dtype)) + mm_projector: "torch.nn.Module" = getattr(model, mm_projector_name) + mm_projector.register_forward_hook(_mm_projector_forward_post_hook) + + +def configure_visual_model(config: "PretrainedConfig") -> None: + if getattr(config, "model_type", None) == "llava": # required for ds zero3 and valuehead models + setattr(config, "hidden_size", getattr(config.text_config, "hidden_size", None)) + + if getattr(config, "is_yi_vl_derived_model", None): + logger.info("Detected Yi-VL model, applying projector patch.") + transformers.models.llava.modeling_llava.LlavaMultiModalProjector = LlavaMultiModalProjectorForYiVL diff --git a/IOPO/Method-IOPO/src/llamafactory/model/patcher.py b/IOPO/Method-IOPO/src/llamafactory/model/patcher.py new file mode 100644 index 00000000..a99d38e0 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/model/patcher.py @@ -0,0 +1,170 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import os +from types import MethodType +from typing import TYPE_CHECKING, Any, Dict + +import torch +from peft import PeftModel +from transformers import PreTrainedModel, PreTrainedTokenizerBase, is_torch_npu_available +from transformers.integrations import is_deepspeed_zero3_enabled +from transformers.modeling_utils import is_fsdp_enabled + +from ..extras.logging import get_logger +from ..extras.misc import infer_optim_dtype +from .model_utils.attention import configure_attn_implementation, print_attn_implementation +from .model_utils.checkpointing import prepare_model_for_training +from .model_utils.embedding import resize_embedding_layer +from .model_utils.longlora import configure_longlora +from .model_utils.moe import add_z3_leaf_module, configure_moe +from .model_utils.packing import configure_packing +from .model_utils.quantization import configure_quantization +from .model_utils.rope import configure_rope +from .model_utils.valuehead import prepare_valuehead_model +from .model_utils.visual import autocast_projector_dtype, configure_visual_model + + +if TYPE_CHECKING: + from transformers import PretrainedConfig, PreTrainedTokenizer + from trl import AutoModelForCausalLMWithValueHead + + from ..hparams import ModelArguments + + +logger = get_logger(__name__) + + +def patch_tokenizer(tokenizer: "PreTrainedTokenizer") -> None: + if "PreTrainedTokenizerBase" not in str(tokenizer._pad.__func__): + tokenizer._pad = MethodType(PreTrainedTokenizerBase._pad, tokenizer) + + +def patch_config( + config: "PretrainedConfig", + tokenizer: "PreTrainedTokenizer", + model_args: "ModelArguments", + init_kwargs: Dict[str, Any], + is_trainable: bool, +) -> None: + if model_args.compute_dtype is None: # priority: bf16 > fp16 > fp32 + if model_args.infer_dtype != "auto" and not is_trainable: + model_args.compute_dtype = getattr(torch, model_args.infer_dtype) + else: + model_args.compute_dtype = infer_optim_dtype(model_dtype=getattr(config, "torch_dtype", None)) + + if is_torch_npu_available(): + use_jit_compile = os.environ.get("JIT_COMPILE", "0").lower() in ["true", "1"] + torch.npu.set_compile_mode(jit_compile=use_jit_compile) + + configure_attn_implementation(config, model_args, is_trainable) + configure_rope(config, model_args, is_trainable) + configure_longlora(config, model_args, is_trainable) + configure_quantization(config, tokenizer, model_args, init_kwargs) + configure_moe(config, model_args, is_trainable) + configure_visual_model(config) + configure_packing(config, model_args, is_trainable) + + if model_args.use_cache and not is_trainable: + setattr(config, "use_cache", True) + logger.info("Using KV cache for faster generation.") + + if getattr(config, "model_type", None) == "qwen": + setattr(config, "use_flash_attn", model_args.flash_attn == "fa2") + for dtype_name, dtype in [("fp16", torch.float16), ("bf16", torch.bfloat16), ("fp32", torch.float32)]: + setattr(config, dtype_name, model_args.compute_dtype == dtype) + + if getattr(config, "model_type", None) == "qwen2" and is_trainable and model_args.flash_attn == "fa2": + setattr(config, "use_cache", False) # qwen2 does not support use_cache when using flash attn + + # deepspeed zero3 is not compatible with low_cpu_mem_usage + init_kwargs["low_cpu_mem_usage"] = model_args.low_cpu_mem_usage and (not is_deepspeed_zero3_enabled()) + + # cast data type of the model if: + # 1. not deepspeed zero3 and not fsdp (keep zero3 or fsdp in float32) + # 2. quantization_bit is not None (qlora) + if (not is_deepspeed_zero3_enabled() and not is_fsdp_enabled()) or model_args.quantization_bit is not None: + init_kwargs["torch_dtype"] = model_args.compute_dtype + + if init_kwargs["low_cpu_mem_usage"]: # device map requires low_cpu_mem_usage=True + if "device_map" not in init_kwargs and model_args.device_map: + init_kwargs["device_map"] = model_args.device_map + + if init_kwargs.get("device_map", None) == "auto": + init_kwargs["offload_folder"] = model_args.offload_folder + + +def patch_model( + model: "PreTrainedModel", + tokenizer: "PreTrainedTokenizer", + model_args: "ModelArguments", + is_trainable: bool, + add_valuehead: bool, +) -> None: + gen_config = model.generation_config # check and fix generation config + if not gen_config.do_sample and ( + (gen_config.temperature is not None and gen_config.temperature != 1.0) + or (gen_config.top_p is not None and gen_config.top_p != 1.0) + or (gen_config.typical_p is not None and gen_config.typical_p != 1.0) + ): + gen_config.do_sample = True + + if "GenerationMixin" not in str(model.generate.__func__): + model.generate = MethodType(PreTrainedModel.generate, model) + + if add_valuehead: + prepare_valuehead_model(model) + + if model_args.resize_vocab: + resize_embedding_layer(model, tokenizer) + + if model_args.visual_inputs: + autocast_projector_dtype(model, model_args) + + if is_trainable: + prepare_model_for_training(model, model_args) + add_z3_leaf_module(model) + + if not model_args.use_unsloth: + print_attn_implementation(model.config) + + try: + model.add_model_tags(["llama-factory"]) + except Exception: + logger.warning("Cannot properly tag the model.") + + +def patch_valuehead_model(model: "AutoModelForCausalLMWithValueHead") -> None: + def tie_weights(self: "AutoModelForCausalLMWithValueHead") -> None: + if isinstance(self.pretrained_model, PreTrainedModel): + self.pretrained_model.tie_weights() + + def get_input_embeddings(self: "AutoModelForCausalLMWithValueHead") -> torch.nn.Module: + if isinstance(self.pretrained_model, PreTrainedModel): + return self.pretrained_model.get_input_embeddings() + + def get_output_embeddings(self: "AutoModelForCausalLMWithValueHead") -> torch.nn.Module: + if isinstance(self.pretrained_model, PreTrainedModel): + return self.pretrained_model.get_output_embeddings() + + def create_or_update_model_card(self: "AutoModelForCausalLMWithValueHead", output_dir: str) -> None: + if isinstance(self.pretrained_model, PeftModel): + self.pretrained_model.create_or_update_model_card(output_dir) + + ignore_modules = [name for name, _ in model.named_parameters() if "pretrained_model" in name] + setattr(model, "_keys_to_ignore_on_save", ignore_modules) + setattr(model, "tie_weights", MethodType(tie_weights, model)) + setattr(model, "get_input_embeddings", MethodType(get_input_embeddings, model)) + setattr(model, "get_output_embeddings", MethodType(get_output_embeddings, model)) + setattr(model, "create_or_update_model_card", MethodType(create_or_update_model_card, model)) diff --git a/IOPO/Method-IOPO/src/llamafactory/train/.DS_Store b/IOPO/Method-IOPO/src/llamafactory/train/.DS_Store new file mode 100644 index 00000000..b5131aca Binary files /dev/null and b/IOPO/Method-IOPO/src/llamafactory/train/.DS_Store differ diff --git a/IOPO/Method-IOPO/src/llamafactory/train/__init__.py b/IOPO/Method-IOPO/src/llamafactory/train/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/IOPO/Method-IOPO/src/llamafactory/train/callbacks.py b/IOPO/Method-IOPO/src/llamafactory/train/callbacks.py new file mode 100644 index 00000000..3b05317d --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/train/callbacks.py @@ -0,0 +1,351 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import json +import logging +import os +import signal +import sys +import time +from concurrent.futures import ThreadPoolExecutor +from datetime import timedelta +from typing import TYPE_CHECKING, Any, Dict, Optional + +import torch +import transformers +from peft import PeftModel +from transformers import PreTrainedModel, ProcessorMixin, TrainerCallback +from transformers.trainer_utils import PREFIX_CHECKPOINT_DIR, has_length +from transformers.utils import ( + SAFE_WEIGHTS_NAME, + WEIGHTS_NAME, + is_safetensors_available, +) + +from ..extras.constants import TRAINER_LOG, V_HEAD_SAFE_WEIGHTS_NAME, V_HEAD_WEIGHTS_NAME +from ..extras.logging import LoggerHandler, get_logger + + +if is_safetensors_available(): + from safetensors import safe_open + from safetensors.torch import save_file + +if TYPE_CHECKING: + from transformers import TrainerControl, TrainerState, TrainingArguments + from trl import AutoModelForCausalLMWithValueHead + + +logger = get_logger(__name__) + + +def fix_valuehead_checkpoint( + model: "AutoModelForCausalLMWithValueHead", output_dir: str, safe_serialization: bool +) -> None: + r""" + The model is already unwrapped. + + There are three cases: + 1. full tuning without ds_zero3: state_dict = {"model.layers.*": ..., "v_head.summary.*": ...} + 2. lora tuning without ds_zero3: state_dict = {"v_head.summary.*": ...} + 3. under deepspeed zero3: state_dict = {"pretrained_model.model.layers.*": ..., "v_head.summary.*": ...} + + We assume `stage3_gather_16bit_weights_on_model_save=true`. + """ + if not isinstance(model.pretrained_model, (PreTrainedModel, PeftModel)): + return + + if safe_serialization: + path_to_checkpoint = os.path.join(output_dir, SAFE_WEIGHTS_NAME) + with safe_open(path_to_checkpoint, framework="pt", device="cpu") as f: + state_dict: Dict[str, torch.Tensor] = {key: f.get_tensor(key) for key in f.keys()} + else: + path_to_checkpoint = os.path.join(output_dir, WEIGHTS_NAME) + state_dict: Dict[str, torch.Tensor] = torch.load(path_to_checkpoint, map_location="cpu") + + decoder_state_dict = {} + v_head_state_dict = {} + for name, param in state_dict.items(): + if name.startswith("v_head."): + v_head_state_dict[name] = param + else: + decoder_state_dict[name.replace("pretrained_model.", "", 1)] = param + + model.pretrained_model.save_pretrained( + output_dir, state_dict=decoder_state_dict or None, safe_serialization=safe_serialization + ) + + if safe_serialization: + save_file(v_head_state_dict, os.path.join(output_dir, V_HEAD_SAFE_WEIGHTS_NAME), metadata={"format": "pt"}) + else: + torch.save(v_head_state_dict, os.path.join(output_dir, V_HEAD_WEIGHTS_NAME)) + + os.remove(path_to_checkpoint) + logger.info("Value head model saved at: {}".format(output_dir)) + + +class FixValueHeadModelCallback(TrainerCallback): + def on_save(self, args: "TrainingArguments", state: "TrainerState", control: "TrainerControl", **kwargs): + r""" + Event called after a checkpoint save. + """ + if args.should_save: + fix_valuehead_checkpoint( + model=kwargs.pop("model"), + output_dir=os.path.join(args.output_dir, "{}-{}".format(PREFIX_CHECKPOINT_DIR, state.global_step)), + safe_serialization=args.save_safetensors, + ) + + +class SaveProcessorCallback(TrainerCallback): + def __init__(self, processor: "ProcessorMixin") -> None: + r""" + Initializes a callback for saving the processor. + """ + self.processor = processor + + def on_train_end(self, args: "TrainingArguments", state: "TrainerState", control: "TrainerControl", **kwargs): + r""" + Event called at the end of training. + """ + if args.should_save: + getattr(self.processor, "image_processor").save_pretrained(args.output_dir) + + +class PissaConvertCallback(TrainerCallback): + r""" + Initializes a callback for converting the PiSSA adapter to a normal one. + """ + + def on_train_begin(self, args: "TrainingArguments", state: "TrainerState", control: "TrainerControl", **kwargs): + r""" + Event called at the beginning of training. + """ + if args.should_save: + model = kwargs.pop("model") + pissa_init_dir = os.path.join(args.output_dir, "pissa_init") + logger.info("Initial PiSSA adapter will be saved at: {}.".format(pissa_init_dir)) + if isinstance(model, PeftModel): + init_lora_weights = getattr(model.peft_config["default"], "init_lora_weights") + setattr(model.peft_config["default"], "init_lora_weights", True) + model.save_pretrained(pissa_init_dir, safe_serialization=args.save_safetensors) + setattr(model.peft_config["default"], "init_lora_weights", init_lora_weights) + + def on_train_end(self, args: "TrainingArguments", state: "TrainerState", control: "TrainerControl", **kwargs): + r""" + Event called at the end of training. + """ + if args.should_save: + model = kwargs.pop("model") + pissa_init_dir = os.path.join(args.output_dir, "pissa_init") + pissa_backup_dir = os.path.join(args.output_dir, "pissa_backup") + pissa_convert_dir = os.path.join(args.output_dir, "pissa_converted") + logger.info("Converted PiSSA adapter will be saved at: {}.".format(pissa_convert_dir)) + # 1. save a pissa backup with init_lora_weights: True + # 2. save a converted lora with init_lora_weights: pissa + # 3. load the pissa backup with init_lora_weights: True + # 4. delete the initial adapter and change init_lora_weights to pissa + if isinstance(model, PeftModel): + init_lora_weights = getattr(model.peft_config["default"], "init_lora_weights") + setattr(model.peft_config["default"], "init_lora_weights", True) + model.save_pretrained(pissa_backup_dir, safe_serialization=args.save_safetensors) + setattr(model.peft_config["default"], "init_lora_weights", init_lora_weights) + model.save_pretrained( + pissa_convert_dir, safe_serialization=args.save_safetensors, convert_pissa_to_lora=pissa_init_dir + ) # TODO: use `path_initial_model_for_weight_conversion` (peft>=0.12.0) + model.load_adapter(pissa_backup_dir, "default", is_trainable=True) + model.set_adapter("default") + if "pissa_init" in model.peft_config.keys(): # backward compatibility (peft<0.12.0) + model.delete_adapter("pissa_init") + + setattr(model.peft_config["default"], "init_lora_weights", init_lora_weights) + + +class LogCallback(TrainerCallback): + def __init__(self) -> None: + r""" + Initializes a callback for logging training and evaluation status. + """ + """ Progress """ + self.start_time = 0 + self.cur_steps = 0 + self.max_steps = 0 + self.elapsed_time = "" + self.remaining_time = "" + self.thread_pool: Optional["ThreadPoolExecutor"] = None + """ Status """ + self.aborted = False + self.do_train = False + """ Web UI """ + self.webui_mode = os.environ.get("LLAMABOARD_ENABLED", "0").lower() in ["true", "1"] + if self.webui_mode: + signal.signal(signal.SIGABRT, self._set_abort) + self.logger_handler = LoggerHandler(os.environ.get("LLAMABOARD_WORKDIR")) + logging.root.addHandler(self.logger_handler) + transformers.logging.add_handler(self.logger_handler) + + def _set_abort(self, signum, frame) -> None: + self.aborted = True + + def _reset(self, max_steps: int = 0) -> None: + self.start_time = time.time() + self.cur_steps = 0 + self.max_steps = max_steps + self.elapsed_time = "" + self.remaining_time = "" + + def _timing(self, cur_steps: int) -> None: + cur_time = time.time() + elapsed_time = cur_time - self.start_time + avg_time_per_step = elapsed_time / cur_steps if cur_steps != 0 else 0 + remaining_time = (self.max_steps - cur_steps) * avg_time_per_step + self.cur_steps = cur_steps + self.elapsed_time = str(timedelta(seconds=int(elapsed_time))) + self.remaining_time = str(timedelta(seconds=int(remaining_time))) + + def _write_log(self, output_dir: str, logs: Dict[str, Any]) -> None: + with open(os.path.join(output_dir, TRAINER_LOG), "a", encoding="utf-8") as f: + f.write(json.dumps(logs) + "\n") + + def _create_thread_pool(self, output_dir: str) -> None: + os.makedirs(output_dir, exist_ok=True) + self.thread_pool = ThreadPoolExecutor(max_workers=1) + + def _close_thread_pool(self) -> None: + if self.thread_pool is not None: + self.thread_pool.shutdown(wait=True) + self.thread_pool = None + + def on_init_end(self, args: "TrainingArguments", state: "TrainerState", control: "TrainerControl", **kwargs): + r""" + Event called at the end of the initialization of the `Trainer`. + """ + if ( + args.should_save + and os.path.exists(os.path.join(args.output_dir, TRAINER_LOG)) + and args.overwrite_output_dir + ): + logger.warning("Previous trainer log in this folder will be deleted.") + os.remove(os.path.join(args.output_dir, TRAINER_LOG)) + + def on_train_begin(self, args: "TrainingArguments", state: "TrainerState", control: "TrainerControl", **kwargs): + r""" + Event called at the beginning of training. + """ + if args.should_save: + self.do_train = True + self._reset(max_steps=state.max_steps) + self._create_thread_pool(output_dir=args.output_dir) + + def on_train_end(self, args: "TrainingArguments", state: "TrainerState", control: "TrainerControl", **kwargs): + r""" + Event called at the end of training. + """ + self._close_thread_pool() + + def on_substep_end(self, args: "TrainingArguments", state: "TrainerState", control: "TrainerControl", **kwargs): + r""" + Event called at the end of an substep during gradient accumulation. + """ + if self.aborted: + control.should_epoch_stop = True + control.should_training_stop = True + + def on_step_end(self, args: "TrainingArguments", state: "TrainerState", control: "TrainerControl", **kwargs): + r""" + Event called at the end of a training step. + """ + if self.aborted: + control.should_epoch_stop = True + control.should_training_stop = True + + def on_evaluate(self, args: "TrainingArguments", state: "TrainerState", control: "TrainerControl", **kwargs): + r""" + Event called after an evaluation phase. + """ + if not self.do_train: + self._close_thread_pool() + + def on_predict(self, args: "TrainingArguments", state: "TrainerState", control: "TrainerControl", **kwargs): + r""" + Event called after a successful prediction. + """ + if not self.do_train: + self._close_thread_pool() + + def on_log(self, args: "TrainingArguments", state: "TrainerState", control: "TrainerControl", **kwargs): + r""" + Event called after logging the last logs. + """ + if not args.should_save: + return + + self._timing(cur_steps=state.global_step) + logs = dict( + current_steps=self.cur_steps, + total_steps=self.max_steps, + loss=state.log_history[-1].get("loss", None), + eval_loss=state.log_history[-1].get("eval_loss", None), + predict_loss=state.log_history[-1].get("predict_loss", None), + reward=state.log_history[-1].get("reward", None), + accuracy=state.log_history[-1].get("rewards/accuracies", None), + learning_rate=state.log_history[-1].get("learning_rate", None), + epoch=state.log_history[-1].get("epoch", None), + percentage=round(self.cur_steps / self.max_steps * 100, 2) if self.max_steps != 0 else 100, + elapsed_time=self.elapsed_time, + remaining_time=self.remaining_time, + throughput="{:.2f}".format(state.num_input_tokens_seen / (time.time() - self.start_time)), + total_tokens=state.num_input_tokens_seen, + ) + logs = {k: v for k, v in logs.items() if v is not None} + if self.webui_mode and all(key in logs for key in ["loss", "learning_rate", "epoch"]): + logger.info( + "{{'loss': {:.4f}, 'learning_rate': {:2.4e}, 'epoch': {:.2f}, 'throughput': {}}}".format( + logs["loss"], logs["learning_rate"], logs["epoch"], logs["throughput"] + ) + ) + + if self.thread_pool is not None: + self.thread_pool.submit(self._write_log, args.output_dir, logs) + + def on_prediction_step( + self, args: "TrainingArguments", state: "TrainerState", control: "TrainerControl", **kwargs + ): + r""" + Event called after a prediction step. + """ + if self.do_train: + return + + if self.aborted: + sys.exit(0) + + if not args.should_save: + return + + eval_dataloader = kwargs.pop("eval_dataloader", None) + if has_length(eval_dataloader): + if self.max_steps == 0: + self._reset(max_steps=len(eval_dataloader)) + self._create_thread_pool(output_dir=args.output_dir) + + self._timing(cur_steps=self.cur_steps + 1) + if self.cur_steps % 5 == 0 and self.thread_pool is not None: + logs = dict( + current_steps=self.cur_steps, + total_steps=self.max_steps, + percentage=round(self.cur_steps / self.max_steps * 100, 2) if self.max_steps != 0 else 100, + elapsed_time=self.elapsed_time, + remaining_time=self.remaining_time, + ) + self.thread_pool.submit(self._write_log, args.output_dir, logs) diff --git a/IOPO/Method-IOPO/src/llamafactory/train/dpo/__init__.py b/IOPO/Method-IOPO/src/llamafactory/train/dpo/__init__.py new file mode 100644 index 00000000..9ce0d089 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/train/dpo/__init__.py @@ -0,0 +1,18 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from .workflow import run_dpo + + +__all__ = ["run_dpo"] diff --git a/IOPO/Method-IOPO/src/llamafactory/train/dpo/trainer.py b/IOPO/Method-IOPO/src/llamafactory/train/dpo/trainer.py new file mode 100644 index 00000000..e9ba896c --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/train/dpo/trainer.py @@ -0,0 +1,255 @@ +# Copyright 2024 HuggingFace Inc. and the LlamaFactory team. +# +# This code is inspired by the HuggingFace's TRL library. +# https://github.com/huggingface/trl/blob/v0.8.0/trl/trainer/dpo_trainer.py +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import warnings +from collections import defaultdict +from contextlib import nullcontext +from types import MethodType +from typing import TYPE_CHECKING, Dict, Literal, Optional, Tuple, Union + +import torch +import torch.nn.functional as F +from transformers import Trainer +from trl import DPOTrainer +from trl.trainer import disable_dropout_in_model + +from ...extras.constants import IGNORE_INDEX +from ..callbacks import PissaConvertCallback, SaveProcessorCallback +from ..trainer_utils import create_custom_optimizer, create_custom_scheduler, get_batch_logps + + +if TYPE_CHECKING: + from transformers import PreTrainedModel, ProcessorMixin + + from ...hparams import FinetuningArguments + + +class CustomDPOTrainer(DPOTrainer): + def __init__( + self, + model: Union["PreTrainedModel", torch.nn.Module], + ref_model: Optional[Union["PreTrainedModel", torch.nn.Module]], + finetuning_args: "FinetuningArguments", + processor: Optional["ProcessorMixin"], + disable_dropout: bool = True, + **kwargs, + ): + if disable_dropout: + disable_dropout_in_model(model) + if ref_model is not None: + disable_dropout_in_model(ref_model) + + self.finetuning_args = finetuning_args + self.f_divergence_type = "reverse_kl" + self.reference_free = False + self.use_dpo_data_collator = True # hack to avoid warning + self.generate_during_eval = False # disable at evaluation + self.label_pad_token_id = IGNORE_INDEX + self.padding_value = 0 + self.is_encoder_decoder = model.config.is_encoder_decoder + self.precompute_ref_log_probs = False + self._precomputed_train_ref_log_probs = False + self._precomputed_eval_ref_log_probs = False + self._peft_has_been_casted_to_bf16 = False + + self.ref_model = ref_model + self._stored_metrics = defaultdict(lambda: defaultdict(list)) + + # dpo hyperparams + self.beta = finetuning_args.pref_beta + self.loss_type = finetuning_args.pref_loss + self.ftx_gamma = finetuning_args.pref_ftx + self.label_smoothing = finetuning_args.dpo_label_smoothing + self.simpo_gamma = finetuning_args.simpo_gamma + + Trainer.__init__(self, model=model, **kwargs) + if not hasattr(self, "accelerator"): + raise AttributeError("Please update `transformers`.") + + warnings.simplefilter("ignore") # remove gc warnings on ref model + + if ref_model is not None: + if self.is_deepspeed_enabled: + if not ( + getattr(ref_model, "is_loaded_in_8bit", False) or getattr(ref_model, "is_loaded_in_4bit", False) + ): # quantized models are already set on the correct device + self.ref_model = self._prepare_deepspeed(self.ref_model) + else: + self.ref_model = self.accelerator.prepare_model(self.ref_model, evaluation_mode=True) + self.ref_model.eval() + + if processor is not None: + self.add_callback(SaveProcessorCallback(processor)) + + if finetuning_args.pissa_convert: + self.callback_handler.add_callback(PissaConvertCallback) + + if finetuning_args.use_badam: + from badam import BAdamCallback, clip_grad_norm_old_version + + self.accelerator.clip_grad_norm_ = MethodType(clip_grad_norm_old_version, self.accelerator) + self.add_callback(BAdamCallback) + + def create_optimizer(self) -> "torch.optim.Optimizer": + if self.optimizer is None: + self.optimizer = create_custom_optimizer(self.model, self.args, self.finetuning_args) + return super().create_optimizer() + + def create_scheduler( + self, num_training_steps: int, optimizer: Optional["torch.optim.Optimizer"] = None + ) -> "torch.optim.lr_scheduler.LRScheduler": + create_custom_scheduler(self.args, num_training_steps, optimizer) + return super().create_scheduler(num_training_steps, optimizer) + + def odds_ratio_loss(self, chosen_logps: "torch.Tensor", rejected_logps: "torch.Tensor") -> "torch.Tensor": + r""" + Computes ORPO's odds ratio (OR) loss for batched log probabilities of the policy model. + """ + log_odds = (chosen_logps - rejected_logps) - ( + torch.log1p(-torch.exp(chosen_logps)) - torch.log1p(-torch.exp(rejected_logps)) + ) + sft_loss = -chosen_logps + odds_ratio_loss = -F.logsigmoid(log_odds) + orpo_loss = sft_loss + self.beta * odds_ratio_loss + return orpo_loss + + def simpo_loss(self, chosen_logps: "torch.Tensor", rejected_logps: "torch.Tensor") -> "torch.Tensor": + r""" + Computes SimPO loss for batched log probabilities of the policy model. + """ + pi_logratios = chosen_logps - rejected_logps + gamma_logratios = self.simpo_gamma / self.beta + logits = pi_logratios - gamma_logratios + simpo_loss = -F.logsigmoid(self.beta * logits) + return simpo_loss + + def compute_preference_loss( + self, + policy_chosen_logps: "torch.Tensor", + policy_rejected_logps: "torch.Tensor", + reference_chosen_logps: Optional["torch.Tensor"], + reference_rejected_logps: Optional["torch.Tensor"], + ) -> Tuple["torch.Tensor", "torch.Tensor", "torch.Tensor"]: + r""" + Computes loss for preference learning. + """ + if not self.finetuning_args.use_ref_model: + if self.loss_type == "orpo": + losses = self.odds_ratio_loss(policy_chosen_logps, policy_rejected_logps) + elif self.loss_type == "simpo": + losses = self.simpo_loss(policy_chosen_logps, policy_rejected_logps) + else: + raise NotImplementedError("Unknown loss type: {}.".format(self.loss_type)) + + chosen_rewards = self.beta * policy_chosen_logps.to(self.accelerator.device).detach() + rejected_rewards = self.beta * policy_rejected_logps.to(self.accelerator.device).detach() + else: + losses, chosen_rewards, rejected_rewards = self.dpo_loss( + policy_chosen_logps, policy_rejected_logps, reference_chosen_logps, reference_rejected_logps + ) + + return losses, chosen_rewards, rejected_rewards + + def concatenated_forward( + self, model: "PreTrainedModel", batch: Dict[str, "torch.Tensor"] + ) -> Tuple["torch.Tensor", "torch.Tensor", "torch.Tensor", "torch.Tensor", "torch.Tensor"]: + r""" + Computes the sum log probabilities of the labels under given logits if loss_type is not IPO, ORPO or SimPO. + + Otherwise the average log probabilities. + """ + if self.finetuning_args.use_ref_model: + batch = {k: v.detach().clone() for k, v in batch.items()} # avoid error + + all_logits: "torch.Tensor" = model(**batch, return_dict=True, use_cache=False).logits.to(torch.float32) + + all_logps, valid_length = get_batch_logps(logits=all_logits, labels=batch["labels"]) + if self.loss_type in ["ipo", "orpo", "simpo"]: + all_logps = all_logps / valid_length + + batch_size = batch["input_ids"].size(0) // 2 + chosen_logps, rejected_logps = all_logps.split(batch_size, dim=0) + chosen_logits, rejected_logits = all_logits.split(batch_size, dim=0) + chosen_length, _ = valid_length.split(batch_size, dim=0) + return chosen_logps, rejected_logps, chosen_logits, rejected_logits, chosen_logps / chosen_length + + def compute_reference_log_probs( + self, model: "PreTrainedModel", batch: Dict[str, "torch.Tensor"] + ) -> Tuple[Optional["torch.Tensor"], Optional["torch.Tensor"]]: + r""" + Computes log probabilities of the reference model. + """ + if not self.finetuning_args.use_ref_model: + return None, None + + if self.ref_model is None: + ref_model = model + ref_context = self.accelerator.unwrap_model(model).disable_adapter() + else: + ref_model = self.ref_model + ref_context = nullcontext() + + with torch.no_grad(), ref_context: + reference_chosen_logps, reference_rejected_logps, *_ = self.concatenated_forward(ref_model, batch) + + return reference_chosen_logps, reference_rejected_logps + + def get_batch_loss_metrics( + self, + model: "PreTrainedModel", + batch: Dict[str, "torch.Tensor"], + train_eval: Literal["train", "eval"] = "train", + ) -> Tuple["torch.Tensor", Dict[str, "torch.Tensor"]]: + r""" + Computes the DPO loss and other metrics for the given batch of inputs for train or test. + """ + metrics = {} + ( + policy_chosen_logps, + policy_rejected_logps, + policy_chosen_logits, + policy_rejected_logits, + policy_chosen_logps_avg, + ) = self.concatenated_forward(model, batch) + + reference_chosen_logps, reference_rejected_logps = self.compute_reference_log_probs(model, batch) + losses, chosen_rewards, rejected_rewards = self.compute_preference_loss( + policy_chosen_logps, + policy_rejected_logps, + reference_chosen_logps, + reference_rejected_logps, + ) + sft_loss = -policy_chosen_logps_avg + if self.ftx_gamma > 1e-6: + losses += self.ftx_gamma * sft_loss + + reward_accuracies = (chosen_rewards > rejected_rewards).float() + + prefix = "eval_" if train_eval == "eval" else "" + metrics["{}rewards/chosen".format(prefix)] = chosen_rewards.mean().cpu() + metrics["{}rewards/rejected".format(prefix)] = rejected_rewards.mean().cpu() + metrics["{}rewards/accuracies".format(prefix)] = reward_accuracies.mean().cpu() + metrics["{}rewards/margins".format(prefix)] = (chosen_rewards - rejected_rewards).mean().cpu() + metrics["{}logps/rejected".format(prefix)] = policy_rejected_logps.detach().mean().cpu() + metrics["{}logps/chosen".format(prefix)] = policy_chosen_logps.detach().mean().cpu() + metrics["{}logits/rejected".format(prefix)] = policy_rejected_logits.detach().mean().cpu() + metrics["{}logits/chosen".format(prefix)] = policy_chosen_logits.detach().mean().cpu() + if self.loss_type == "orpo": + metrics["{}sft_loss".format(prefix)] = sft_loss.detach().mean().cpu() + metrics["{}odds_ratio_loss".format(prefix)] = ((losses - sft_loss) / self.beta).detach().mean().cpu() + + return losses.mean(), metrics diff --git a/IOPO/Method-IOPO/src/llamafactory/train/dpo/workflow.py b/IOPO/Method-IOPO/src/llamafactory/train/dpo/workflow.py new file mode 100644 index 00000000..f474a90f --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/train/dpo/workflow.py @@ -0,0 +1,98 @@ +# Copyright 2024 HuggingFace Inc. and the LlamaFactory team. +# +# This code is inspired by the HuggingFace's TRL library. +# https://github.com/huggingface/trl/blob/v0.8.0/examples/scripts/dpo.py +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from typing import TYPE_CHECKING, List, Optional + +from ...data import PairwiseDataCollatorWithPadding, get_dataset +from ...extras.constants import IGNORE_INDEX +from ...extras.ploting import plot_loss +from ...hparams import ModelArguments +from ...model import load_model, load_tokenizer +from ..trainer_utils import create_modelcard_and_push, create_ref_model +from .trainer import CustomDPOTrainer + + +if TYPE_CHECKING: + from transformers import Seq2SeqTrainingArguments, TrainerCallback + + from ...hparams import DataArguments, FinetuningArguments + + +def run_dpo( + model_args: "ModelArguments", + data_args: "DataArguments", + training_args: "Seq2SeqTrainingArguments", + finetuning_args: "FinetuningArguments", + callbacks: Optional[List["TrainerCallback"]] = None, +): + tokenizer_module = load_tokenizer(model_args) + tokenizer = tokenizer_module["tokenizer"] + dataset_module = get_dataset(model_args, data_args, training_args, stage="rm", **tokenizer_module) + model = load_model(tokenizer, model_args, finetuning_args, training_args.do_train) + + data_collator = PairwiseDataCollatorWithPadding( + tokenizer=tokenizer, + pad_to_multiple_of=8, + label_pad_token_id=IGNORE_INDEX if data_args.ignore_pad_token_for_loss else tokenizer.pad_token_id, + ) + + # Create reference model + if finetuning_args.use_ref_model: + if finetuning_args.ref_model is None and (not training_args.do_train): # use the model itself + ref_model = model + else: + ref_model = create_ref_model(model_args, finetuning_args) + else: + ref_model = None + + # Update arguments + training_args.remove_unused_columns = False # important for pairwise dataset + + # Initialize our Trainer + trainer = CustomDPOTrainer( + model=model, + ref_model=ref_model, + args=training_args, + finetuning_args=finetuning_args, + data_collator=data_collator, + callbacks=callbacks, + **dataset_module, + **tokenizer_module, + ) + + # Training + if training_args.do_train: + train_result = trainer.train(resume_from_checkpoint=training_args.resume_from_checkpoint) + trainer.save_model() + trainer.log_metrics("train", train_result.metrics) + trainer.save_metrics("train", train_result.metrics) + trainer.save_state() + if trainer.is_world_process_zero() and finetuning_args.plot_loss: + plot_loss(training_args.output_dir, keys=["loss", "eval_loss", "rewards/accuracies"]) + + # Evaluation + if training_args.do_eval: + metrics = trainer.evaluate(metric_key_prefix="eval") + if id(model) == id(ref_model): # unable to compute rewards if reference model is the model itself + remove_keys = [key for key in metrics.keys() if "rewards" in key] + for key in remove_keys: + metrics.pop(key) + trainer.log_metrics("eval", metrics) + trainer.save_metrics("eval", metrics) + + # Create model card + create_modelcard_and_push(trainer, model_args, data_args, training_args, finetuning_args) diff --git a/IOPO/Method-IOPO/src/llamafactory/train/iopo/.DS_Store b/IOPO/Method-IOPO/src/llamafactory/train/iopo/.DS_Store new file mode 100644 index 00000000..5008ddfc Binary files /dev/null and b/IOPO/Method-IOPO/src/llamafactory/train/iopo/.DS_Store differ diff --git a/IOPO/Method-IOPO/src/llamafactory/train/iopo/__init__.py b/IOPO/Method-IOPO/src/llamafactory/train/iopo/__init__.py new file mode 100644 index 00000000..0e32bfa8 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/train/iopo/__init__.py @@ -0,0 +1,18 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from .workflow import run_cipo + + +__all__ = ["run_cipo"] diff --git a/IOPO/Method-IOPO/src/llamafactory/train/iopo/trainer.py b/IOPO/Method-IOPO/src/llamafactory/train/iopo/trainer.py new file mode 100644 index 00000000..dc962276 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/train/iopo/trainer.py @@ -0,0 +1,515 @@ +# Copyright 2024 HuggingFace Inc. and the LlamaFactory team. +# +# This code is inspired by the HuggingFace's TRL library. +# https://github.com/huggingface/trl/blob/v0.8.0/trl/trainer/dpo_trainer.py +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import warnings +from collections import defaultdict +from contextlib import nullcontext +from types import MethodType +from typing import TYPE_CHECKING, Dict, Literal, Optional, Tuple, Union + +import torch +import torch.nn.functional as F +from transformers import Trainer +from trl import DPOTrainer +from trl.trainer import disable_dropout_in_model + +from ...extras.constants import IGNORE_INDEX +from ..callbacks import PissaConvertCallback, SaveProcessorCallback +from ..trainer_utils import create_custom_optimizer, create_custom_scheduler, get_batch_logps + + +if TYPE_CHECKING: + from transformers import PreTrainedModel, ProcessorMixin + + from ...hparams import FinetuningArguments + + +class CustomIOPOTrainer(DPOTrainer): + def __init__( + self, + model: Union["PreTrainedModel", torch.nn.Module], + ref_model: Optional[Union["PreTrainedModel", torch.nn.Module]], + finetuning_args: "FinetuningArguments", + processor: Optional["ProcessorMixin"], + disable_dropout: bool = True, + **kwargs, + ): + if disable_dropout: + disable_dropout_in_model(model) + if ref_model is not None: + disable_dropout_in_model(ref_model) + + self.finetuning_args = finetuning_args + self.f_divergence_type = "reverse_kl" + self.reference_free = False ######## Modify + # self.reference_free = True + self.use_dpo_data_collator = True # hack to avoid warning + self.generate_during_eval = False # disable at evaluation + self.label_pad_token_id = IGNORE_INDEX + self.padding_value = 0 + self.is_encoder_decoder = model.config.is_encoder_decoder + self.precompute_ref_log_probs = False + self._precomputed_train_ref_log_probs = False + self._precomputed_eval_ref_log_probs = False + self._peft_has_been_casted_to_bf16 = False + + self.ref_model = ref_model + self._stored_metrics = defaultdict(lambda: defaultdict(list)) + + # iopo hyperparams + self.beta = finetuning_args.pref_beta + self.loss_type = finetuning_args.pref_loss + self.ftx_gamma = finetuning_args.pref_ftx + self.label_smoothing = finetuning_args.iopo_label_smoothing + self.simpo_gamma = finetuning_args.simpo_gamma + + Trainer.__init__(self, model=model, **kwargs) + if not hasattr(self, "accelerator"): + raise AttributeError("Please update `transformers`.") + + warnings.simplefilter("ignore") # remove gc warnings on ref model + + if ref_model is not None: + if self.is_deepspeed_enabled: + if not ( + getattr(ref_model, "is_loaded_in_8bit", False) or getattr(ref_model, "is_loaded_in_4bit", False) + ): # quantized models are already set on the correct device + self.ref_model = self._prepare_deepspeed(self.ref_model) + else: + self.ref_model = self.accelerator.prepare_model(self.ref_model, evaluation_mode=True) + self.ref_model.eval() + + if processor is not None: + self.add_callback(SaveProcessorCallback(processor)) + + if finetuning_args.pissa_convert: + self.callback_handler.add_callback(PissaConvertCallback) + + if finetuning_args.use_badam: + from badam import BAdamCallback, clip_grad_norm_old_version + + self.accelerator.clip_grad_norm_ = MethodType(clip_grad_norm_old_version, self.accelerator) + self.add_callback(BAdamCallback) + + def create_optimizer(self) -> "torch.optim.Optimizer": + if self.optimizer is None: + self.optimizer = create_custom_optimizer(self.model, self.args, self.finetuning_args) + return super().create_optimizer() + + def create_scheduler( + self, num_training_steps: int, optimizer: Optional["torch.optim.Optimizer"] = None + ) -> "torch.optim.lr_scheduler.LRScheduler": + create_custom_scheduler(self.args, num_training_steps, optimizer) + return super().create_scheduler(num_training_steps, optimizer) + + def odds_ratio_loss(self, chosen_logps: "torch.Tensor", rejected_logps: "torch.Tensor") -> "torch.Tensor": + r""" + Computes ORPO's odds ratio (OR) loss for batched log probabilities of the policy model. + """ + log_odds = (chosen_logps - rejected_logps) - ( + torch.log1p(-torch.exp(chosen_logps)) - torch.log1p(-torch.exp(rejected_logps)) + ) + sft_loss = -chosen_logps + odds_ratio_loss = -F.logsigmoid(log_odds) + orpo_loss = sft_loss + self.beta * odds_ratio_loss + return orpo_loss + + def simpo_loss(self, chosen_logps: "torch.Tensor", rejected_logps: "torch.Tensor") -> "torch.Tensor": + r""" + Computes SimPO loss for batched log probabilities of the policy model. + """ + pi_logratios = chosen_logps - rejected_logps + gamma_logratios = self.simpo_gamma / self.beta + logits = pi_logratios - gamma_logratios + simpo_loss = -F.logsigmoid(self.beta * logits) + return simpo_loss + + def simpo_loss_v1(self, chosen_logps: "torch.Tensor", rejected_logps: "torch.Tensor", rejected_logps_v1: "torch.Tensor") -> "torch.Tensor": + r""" + Computes SimPO loss for batched log probabilities of the policy model. + """ + pi_logratios = 2*chosen_logps - rejected_logps - 0.5*rejected_logps_v1 + gamma_logratios = self.simpo_gamma / self.beta + logits = pi_logratios - gamma_logratios + simpo_loss = -F.logsigmoid(self.beta * logits) + return simpo_loss + + def iopo_loss( + self, + policy_chosen_logps_v1: torch.FloatTensor, + policy_rejected_logps_v1: torch.FloatTensor, + policy_chosen_logps_v2: torch.FloatTensor, + policy_rejected_logps_v2: torch.FloatTensor, + reference_chosen_logps_v1: torch.FloatTensor, + reference_rejected_logps_v1: torch.FloatTensor, + reference_chosen_logps_v2: torch.FloatTensor, + reference_rejected_logps_v2: torch.FloatTensor, + chosen_length_v1, + rejected_length_v1, + chosen_length_v2, + rejected_length_v2 + ) -> Tuple[torch.FloatTensor, torch.FloatTensor, torch.FloatTensor, torch.FloatTensor, torch.FloatTensor]: + """Compute the IOPO loss for a batch of policy and reference model log probabilities. + + Args: + policy_chosen_logps: Log probabilities of the policy model for the chosen responses. Shape: (batch_size,) + policy_rejected_logps: Log probabilities of the policy model for the rejected responses. Shape: (batch_size,) + reference_chosen_logps: Log probabilities of the reference model for the chosen responses. Shape: (batch_size,) + reference_rejected_logps: Log probabilities of the reference model for the rejected responses. Shape: (batch_size,) + + Returns: + A tuple of three tensors: (losses, chosen_rewards, rejected_rewards). + The losses tensor contains the IOPO loss for each example in the batch. + The chosen_rewards and rejected_rewards tensors contain the rewards for the chosen and rejected responses, respectively. + """ + chosen_logratios_v1 = policy_chosen_logps_v1.to(self.accelerator.device) - ( + not self.reference_free + ) * reference_chosen_logps_v1.to(self.accelerator.device) + rejected_logratios_v1 = policy_rejected_logps_v1.to(self.accelerator.device) - ( + not self.reference_free + ) * reference_rejected_logps_v1.to(self.accelerator.device) + + # if self.f_divergence_type == FDivergenceType.ALPHA_DIVERGENCE.value: + # # The alpha-divergence formula: (1 - u^-alpha) / alpha + # # The divergence difference between the chosen and rejected sample is: + # # (1 - u[w]^-alpha) / alpha - (1 - u[l]^-alpha) / alpha + # # = (u[l]^-alpha - u[w]^-alpha) / alpha + # # where u[w] and u[l] are the policy/reference probability ratios + # # for the chosen and rejected samples, respectively. + # alpha_coef = FDivergenceConstants.ALPHA_DIVERGENCE_COEF_DEFAULT + # if self.f_divergence_params and FDivergenceConstants.ALPHA_DIVERGENCE_COEF_KEY in self.f_divergence_params: + # alpha_coef = float(self.f_divergence_params[FDivergenceConstants.ALPHA_DIVERGENCE_COEF_KEY]) + # logits = (cap_exp(rejected_logratios * -alpha_coef) - cap_exp(chosen_logratios * -alpha_coef)) / alpha_coef + # else: + + pi_logratios_1 = 2*policy_chosen_logps_v1 - policy_rejected_logps_v1 - policy_rejected_logps_v2 + pi_logratios_2 = 2*policy_chosen_logps_v2 - policy_rejected_logps_v2 - policy_rejected_logps_v1 + # pi_logratios = policy_chosen_logps - policy_rejected_logps + 0.1*(policy_chosen_logps - policy_rejected_logps_v1) ###### + if self.reference_free: + ref_logratios_1 = torch.tensor([0], dtype=pi_logratios_1.dtype, device=pi_logratios_1.device) + ref_logratios_2 = torch.tensor([0], dtype=pi_logratios_2.dtype, device=pi_logratios_2.device) + else: + ref_logratios_1 = 2*reference_chosen_logps_v1 - reference_rejected_logps_v1 - reference_rejected_logps_v2 ##### + ref_logratios_2 = 2*reference_chosen_logps_v2 - reference_rejected_logps_v2 - reference_rejected_logps_v1 ##### + + pi_logratios_1 = pi_logratios_1.to(self.accelerator.device) + ref_logratios_1 = ref_logratios_1.to(self.accelerator.device) + pi_logratios_2 = pi_logratios_2.to(self.accelerator.device) + ref_logratios_2 = ref_logratios_2.to(self.accelerator.device) + logits = 0.5* (pi_logratios_1 - ref_logratios_1 + pi_logratios_2 - ref_logratios_2) + ### + # sft_loss = -policy_chosen_logps/chosen_length ##### + # sft_loss = -policy_chosen_logps ##### + ### + # pi_logratios = policy_chosen_logps - policy_rejected_logps + # logits = pi_logratios - ref_logratios + # penalty_term = torch.maximum(torch.zeros_like(policy_chosen_logps), reference_chosen_logps - policy_chosen_logps) ###### + # logits += - 50 * penalty_term ###### + + # losses = ( + # -F.logsigmoid(self.beta * logits) * (1 - self.label_smoothing) + # - F.logsigmoid(-self.beta * logits) * self.label_smoothing + # ) + ### + + # if self.f_divergence_type == FDivergenceType.JS_DIVERGENCE.value: + # # The js-divergence formula: log(2 * u / (1 + u)) + # # The divergence difference between the chosen and rejected sample is: + # # log(2 * u[w] / (1 + u[w])) - log(2 * u[l] / (1 + u[l])) + # # = log(u[w]) - log(u[l]) - (log(1 + u[w]) - log(1 + u[l])) + # # where u[w] and u[l] are the policy/reference probability ratios + # # for the chosen and rejected samples, respectively. + # logits -= F.softplus(chosen_logratios) - F.softplus(rejected_logratios) + + # The beta is a temperature parameter for the IOPO loss, typically something in the range of 0.1 to 0.5. + # We ignore the reference model as beta -> 0. The label_smoothing parameter encodes our uncertainty about the labels and + # calculates a conservative IOPO loss. + if self.loss_type == "sigmoid": + losses = ( + -F.logsigmoid(self.beta * logits) * (1 - self.label_smoothing) + - F.logsigmoid(-self.beta * logits) * self.label_smoothing + ) + # losses = sft_loss + losses ##### + # losses = sft_loss + elif self.loss_type == "robust": + losses = ( + -F.logsigmoid(self.beta * logits) * (1 - self.label_smoothing) + + F.logsigmoid(-self.beta * logits) * self.label_smoothing + ) / (1 - 2 * self.label_smoothing) + elif self.loss_type == "exo_pair": + # eqn (16) of the EXO paper: https://arxiv.org/pdf/2402.00856 + import math + + if self.label_smoothing == 0: + self.label_smoothing = 1e-3 + losses = (self.beta * logits).sigmoid() * ( + F.logsigmoid(self.beta * logits) - math.log(1 - self.label_smoothing) + ) + (-self.beta * logits).sigmoid() * (F.logsigmoid(-self.beta * logits) - math.log(self.label_smoothing)) + elif self.loss_type == "hinge": + losses = torch.relu(1 - self.beta * logits) + elif self.loss_type == "ipo": + # eqn (17) of the paper where beta is the regularization parameter for the IPO loss, denoted by tau in the paper. + losses = (logits - 1 / (2 * self.beta)) ** 2 + elif self.loss_type == "bco_pair": + chosen_logratios = policy_chosen_logps - reference_chosen_logps + rejected_logratios = policy_rejected_logps - reference_rejected_logps + + chosen_rewards = self.beta * chosen_logratios + rejected_rewards = self.beta * rejected_logratios + rewards = torch.cat((chosen_rewards, rejected_rewards), 0).mean().detach() + self.running.update(rewards) + delta = self.running.mean + + losses = -F.logsigmoid((self.beta * chosen_logratios) - delta) - F.logsigmoid( + -(self.beta * rejected_logratios - delta) + ) + elif self.loss_type == "sppo_hard": + # In the paper (https://arxiv.org/pdf/2405.00675), SPPO employs a soft probability approach, estimated using the PairRM score. The probability calculation is conducted outside of the trainer class. The version described here is the hard probability version, where P in Equation (4.7) of Algorithm 1 is set to 1 for the winner and 0 for the loser. + a = policy_chosen_logps - reference_chosen_logps + b = policy_rejected_logps - reference_rejected_logps + + losses = (a - 0.5 / self.beta) ** 2 + (b + 0.5 / self.beta) ** 2 + elif self.loss_type == "nca_pair": + chosen_rewards = (policy_chosen_logps - reference_chosen_logps) * self.beta + rejected_rewards = (policy_rejected_logps - reference_rejected_logps) * self.beta + losses = ( + -F.logsigmoid(chosen_rewards) + - 0.5 * F.logsigmoid(-chosen_rewards) + - 0.5 * F.logsigmoid(-rejected_rewards) + ) + elif self.loss_type == "aot_pair": + chosen_logratios = policy_chosen_logps - reference_chosen_logps + rejected_logratios = policy_rejected_logps - reference_rejected_logps + + chosen_logratios_sorted, _ = torch.sort(chosen_logratios, dim=0) + rejected_logratios_sorted, _ = torch.sort(rejected_logratios, dim=0) + + delta = chosen_logratios_sorted - rejected_logratios_sorted + + losses = ( + -F.logsigmoid(self.beta * delta) * (1 - self.label_smoothing) + - F.logsigmoid(-self.beta * delta) * self.label_smoothing + ) + + elif self.loss_type == "aot": + pi_logratios = policy_chosen_logps - policy_rejected_logps + ref_logratios = reference_chosen_logps - reference_rejected_logps + + pi_logratios_sorted, _ = torch.sort(pi_logratios, dim=0) + ref_logratios_sorted, _ = torch.sort(ref_logratios, dim=0) + + delta = pi_logratios_sorted - ref_logratios_sorted + + losses = ( + -F.logsigmoid(self.beta * delta) * (1 - self.label_smoothing) + - F.logsigmoid(-self.beta * delta) * self.label_smoothing + ) + + else: + raise ValueError( + f"Unknown loss type: {self.loss_type}. Should be one of ['sigmoid', 'hinge', 'ipo', 'bco_pair', 'sppo_hard', 'nca_pair', 'robust', 'exo_pair']" + ) + + chosen_rewards_v1 = ( + self.beta + * ( + policy_chosen_logps_v1.to(self.accelerator.device) - reference_chosen_logps_v1.to(self.accelerator.device) + ).detach() + ) + chosen_rewards_v2 = ( + self.beta + * ( + policy_chosen_logps_v2.to(self.accelerator.device) - reference_chosen_logps_v2.to(self.accelerator.device) + ).detach() + ) + rejected_rewards_v1 = ( + self.beta + * ( + policy_rejected_logps_v1.to(self.accelerator.device) + - reference_rejected_logps_v1.to(self.accelerator.device) + ).detach() + ) + rejected_rewards_v2 = ( + self.beta + * ( + policy_rejected_logps_v2.to(self.accelerator.device) + - reference_rejected_logps_v2.to(self.accelerator.device) + ).detach() + ) + + return losses, chosen_rewards_v1, rejected_rewards_v1, chosen_rewards_v2, rejected_rewards_v2 + + def compute_preference_loss( + self, + policy_chosen_logps_v1: "torch.Tensor", + policy_rejected_logps_v1: "torch.Tensor", + policy_chosen_logps_v2: "torch.Tensor", + policy_rejected_logps_v2: "torch.Tensor", + reference_chosen_logps_v1: Optional["torch.Tensor"], + reference_rejected_logps_v1: Optional["torch.Tensor"], + reference_chosen_logps_v2: Optional["torch.Tensor"], + reference_rejected_logps_v2: Optional["torch.Tensor"], + chosen_length_v1, + rejected_length_v1, + chosen_length_v2, + rejected_length_v2, + + ) -> Tuple["torch.Tensor", "torch.Tensor", "torch.Tensor", "torch.Tensor", "torch.Tensor"]: + r""" + Computes loss for preference learning. + """ + # if not self.finetuning_args.use_ref_model: + # if self.loss_type == "orpo": + # losses = self.odds_ratio_loss(policy_chosen_logps, policy_rejected_logps) + # elif self.loss_type == "simpo": + # losses = self.simpo_loss(policy_chosen_logps, policy_rejected_logps) + # else: + # raise NotImplementedError("Unknown loss type: {}.".format(self.loss_type)) + + # chosen_rewards = self.beta * policy_chosen_logps.to(self.accelerator.device).detach() + # rejected_rewards = self.beta * policy_rejected_logps.to(self.accelerator.device).detach() + # else: + losses, chosen_rewards_v1, rejected_rewards_v1, chosen_rewards_v2, rejected_rewards_v2 = self.iopo_loss( + policy_chosen_logps_v1, policy_rejected_logps_v1, policy_chosen_logps_v2, policy_rejected_logps_v2, reference_chosen_logps_v1, reference_rejected_logps_v1, reference_chosen_logps_v2, reference_rejected_logps_v2, chosen_length_v1, rejected_length_v1, chosen_length_v2, rejected_length_v2 + ) #### + ###### + # losses = self.simpo_loss_v1(policy_chosen_logps, policy_rejected_logps, policy_rejected_logps_v1) + # chosen_rewards = self.beta * policy_chosen_logps.to(self.accelerator.device).detach() + # rejected_rewards = self.beta * policy_rejected_logps.to(self.accelerator.device).detach() + # rejected_rewards_v1 = self.beta * policy_rejected_logps_v1.to(self.accelerator.device).detach() + # sft_loss = losses + ###### + + return losses, chosen_rewards_v1, rejected_rewards_v1, chosen_rewards_v2, rejected_rewards_v2 + + def concatenated_forward( + self, model: "PreTrainedModel", batch: Dict[str, "torch.Tensor"] + ) -> Tuple["torch.Tensor", "torch.Tensor", "torch.Tensor", "torch.Tensor", "torch.Tensor", "torch.Tensor", "torch.Tensor", "torch.Tensor", "torch.Tensor", "torch.Tensor"]: + r""" + Computes the sum log probabilities of the labels under given logits if loss_type is not IPO, ORPO or SimPO. + + Otherwise the average log probabilities. + """ + if self.finetuning_args.use_ref_model: + batch = {k: v.detach().clone() for k, v in batch.items()} # avoid error + + all_logits: "torch.Tensor" = model(**batch, return_dict=True, use_cache=False).logits.to(torch.float32) + + all_logps, valid_length = get_batch_logps(logits=all_logits, labels=batch["labels"]) + if self.loss_type in ["ipo", "orpo", "simpo"]: #########sigmoid注意适当移除########0828 + all_logps = all_logps / valid_length + + batch_size = batch["input_ids"].size(0) // 4 + chosen_logps_v1, rejected_logps_v1, chosen_logps_v2, rejected_logps_v2 = all_logps.split(batch_size, dim=0) + chosen_logits_v1, rejected_logits_v1, chosen_logits_v2, rejected_logits_v2 = all_logits.split(batch_size, dim=0) + # chosen_length, _ = valid_length.split(batch_size, dim=0) ### + chosen_length_v1, rejected_length_v1, chosen_length_v2, rejected_length_v2 = valid_length.split(batch_size, dim=0) + return chosen_logps_v1, rejected_logps_v1, chosen_logps_v2, rejected_logps_v2, chosen_logits_v1, rejected_logits_v1, chosen_logits_v2, rejected_logits_v2, chosen_logps_v1 / chosen_length_v1, chosen_length_v1, rejected_length_v1, chosen_logps_v2 / chosen_length_v2, chosen_length_v2, rejected_length_v2 + + def compute_reference_log_probs( + self, model: "PreTrainedModel", batch: Dict[str, "torch.Tensor"] + ) -> Tuple[Optional["torch.Tensor"], Optional["torch.Tensor"], Optional["torch.Tensor"]]: + r""" + Computes log probabilities of the reference model. + """ + if not self.finetuning_args.use_ref_model: + return None, None + + if self.ref_model is None: + ref_model = model + ref_context = self.accelerator.unwrap_model(model).disable_adapter() + else: + ref_model = self.ref_model + ref_context = nullcontext() + + with torch.no_grad(), ref_context: + reference_chosen_logps_v1, reference_rejected_logps_v1, reference_chosen_logps_v2, reference_rejected_logps_v2, *_ = self.concatenated_forward(ref_model, batch) + + return reference_chosen_logps_v1, reference_rejected_logps_v1, reference_chosen_logps_v2, reference_rejected_logps_v2 + + def get_batch_loss_metrics( + self, + model: "PreTrainedModel", + batch: Dict[str, "torch.Tensor"], + train_eval: Literal["train", "eval"] = "train", + ) -> Tuple["torch.Tensor", Dict[str, "torch.Tensor"]]: + r""" + Computes the IOPO loss and other metrics for the given batch of inputs for train or test. + """ + metrics = {} + ( + policy_chosen_logps_v1, + policy_rejected_logps_v1, + policy_chosen_logps_v2, + policy_rejected_logps_v2, + policy_chosen_logits_v1, + policy_rejected_logits_v1, + policy_chosen_logits_v2, + policy_rejected_logits_v2, + policy_chosen_logps_avg_v1, + chosen_length_v1, rejected_length_v1, + policy_chosen_logps_avg_v2, + chosen_length_v2, rejected_length_v2 + ) = self.concatenated_forward(model, batch) + + reference_chosen_logps_v1, reference_rejected_logps_v1, reference_chosen_logps_v2, reference_rejected_logps_v2 = self.compute_reference_log_probs(model, batch) + losses, chosen_rewards_v1, rejected_rewards_v1, chosen_rewards_v2, rejected_rewards_v2 = self.compute_preference_loss( + policy_chosen_logps_v1, + policy_rejected_logps_v1, + policy_chosen_logps_v2, + policy_rejected_logps_v2, + reference_chosen_logps_v1, + reference_rejected_logps_v1, + reference_chosen_logps_v2, + reference_rejected_logps_v2, + chosen_length_v1, rejected_length_v1, chosen_length_v2, rejected_length_v2 + ) ##### + sft_loss = -policy_chosen_logps_avg_v1 - policy_chosen_logps_avg_v2 + if self.ftx_gamma > 1e-6: + losses += self.ftx_gamma * sft_loss + + reward_accuracies_v1 = (chosen_rewards_v1 > rejected_rewards_v1).float() + reward_accuracies_v2 = (chosen_rewards_v2 > rejected_rewards_v2).float() + + prefix = "eval_" if train_eval == "eval" else "" + # metrics["{}sft_loss".format(prefix)] = sft_loss_iopo.detach().mean().cpu() ##### + metrics["{}loss".format(prefix)] = losses.detach().mean().cpu() ##### + metrics["{}rewards/chosen_v1".format(prefix)] = chosen_rewards_v1.mean().cpu() + metrics["{}rewards/rejected_v1".format(prefix)] = rejected_rewards_v1.mean().cpu() + metrics["{}rewards/chosen_v2".format(prefix)] = chosen_rewards_v2.mean().cpu() + metrics["{}rewards/rejected_v2".format(prefix)] = rejected_rewards_v2.mean().cpu() + metrics["{}rewards/accuracies_v1".format(prefix)] = reward_accuracies_v1.mean().cpu() + metrics["{}rewards/accuracies_v2".format(prefix)] = reward_accuracies_v2.mean().cpu() + metrics["{}rewards/margins_v1".format(prefix)] = (chosen_rewards_v1 - rejected_rewards_v1).mean().cpu() + metrics["{}rewards/margins_v2".format(prefix)] = (chosen_rewards_v2 - rejected_rewards_v2).mean().cpu() + metrics["{}logps/rejected_v1".format(prefix)] = policy_rejected_logps_v1.detach().mean().cpu() + metrics["{}logps/rejected_v2".format(prefix)] = policy_rejected_logps_v2.detach().mean().cpu() + metrics["{}logps/chosen_v1".format(prefix)] = policy_chosen_logps_v1.detach().mean().cpu() + metrics["{}logps/chosen_v2".format(prefix)] = policy_chosen_logps_v2.detach().mean().cpu() + metrics["{}logps/ref_rejected_v1".format(prefix)] = reference_rejected_logps_v1.detach().mean().cpu() ### + metrics["{}logps/ref_rejected_v2".format(prefix)] = reference_rejected_logps_v2.detach().mean().cpu() ### + metrics["{}logps/ref_chosen_v1".format(prefix)] = reference_chosen_logps_v1.detach().mean().cpu() ### + metrics["{}logps/ref_chosen_v2".format(prefix)] = reference_chosen_logps_v2.detach().mean().cpu() ### + metrics["{}logits/rejected_v1".format(prefix)] = policy_rejected_logits_v1.detach().mean().cpu() + metrics["{}logits/rejected_v2".format(prefix)] = policy_rejected_logits_v2.detach().mean().cpu() + metrics["{}logits/chosen_v1".format(prefix)] = policy_chosen_logits_v1.detach().mean().cpu() + metrics["{}logits/chosen_v2".format(prefix)] = policy_chosen_logits_v2.detach().mean().cpu() + if self.loss_type == "orpo": + metrics["{}sft_loss".format(prefix)] = sft_loss.detach().mean().cpu() + metrics["{}odds_ratio_loss".format(prefix)] = ((losses - sft_loss) / self.beta).detach().mean().cpu() + + return losses.mean(), metrics diff --git a/IOPO/Method-IOPO/src/llamafactory/train/iopo/workflow.py b/IOPO/Method-IOPO/src/llamafactory/train/iopo/workflow.py new file mode 100644 index 00000000..f68c1694 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/train/iopo/workflow.py @@ -0,0 +1,98 @@ +# Copyright 2024 HuggingFace Inc. and the LlamaFactory team. +# +# This code is inspired by the HuggingFace's TRL library. +# https://github.com/huggingface/trl/blob/v0.8.0/examples/scripts/dpo.py +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from typing import TYPE_CHECKING, List, Optional + +from ...data import PairwiseDataCollatorWithPadding, get_dataset +from ...extras.constants import IGNORE_INDEX +from ...extras.ploting import plot_loss +from ...hparams import ModelArguments +from ...model import load_model, load_tokenizer +from ..trainer_utils import create_modelcard_and_push, create_ref_model +from .trainer import CustomIOPOTrainer + + +if TYPE_CHECKING: + from transformers import Seq2SeqTrainingArguments, TrainerCallback + + from ...hparams import DataArguments, FinetuningArguments + + +def run_iopo( + model_args: "ModelArguments", + data_args: "DataArguments", + training_args: "Seq2SeqTrainingArguments", + finetuning_args: "FinetuningArguments", + callbacks: Optional[List["TrainerCallback"]] = None, +): + tokenizer_module = load_tokenizer(model_args) + tokenizer = tokenizer_module["tokenizer"] + dataset_module = get_dataset(model_args, data_args, training_args, stage="iopo", **tokenizer_module) + model = load_model(tokenizer, model_args, finetuning_args, training_args.do_train) + + data_collator = PairwiseDataCollatorWithPadding( + tokenizer=tokenizer, + pad_to_multiple_of=8, + label_pad_token_id=IGNORE_INDEX if data_args.ignore_pad_token_for_loss else tokenizer.pad_token_id, + ) + + # Create reference model + if finetuning_args.use_ref_model: + if finetuning_args.ref_model is None and (not training_args.do_train): # use the model itself + ref_model = model + else: + ref_model = create_ref_model(model_args, finetuning_args) + else: + ref_model = None + + # Update arguments + training_args.remove_unused_columns = False # important for pairwise dataset + + # Initialize our Trainer + trainer = CustomIOPOTrainer( + model=model, + ref_model=ref_model, + args=training_args, + finetuning_args=finetuning_args, + data_collator=data_collator, + callbacks=callbacks, + **dataset_module, + **tokenizer_module, + ) + + # Training + if training_args.do_train: + train_result = trainer.train(resume_from_checkpoint=training_args.resume_from_checkpoint) + trainer.save_model() + trainer.log_metrics("train", train_result.metrics) + trainer.save_metrics("train", train_result.metrics) + trainer.save_state() + if trainer.is_world_process_zero() and finetuning_args.plot_loss: + plot_loss(training_args.output_dir, keys=["loss", "eval_loss", "rewards/accuracies"]) + + # Evaluation + if training_args.do_eval: + metrics = trainer.evaluate(metric_key_prefix="eval") + if id(model) == id(ref_model): # unable to compute rewards if reference model is the model itself + remove_keys = [key for key in metrics.keys() if "rewards" in key] + for key in remove_keys: + metrics.pop(key) + trainer.log_metrics("eval", metrics) + trainer.save_metrics("eval", metrics) + + # Create model card + create_modelcard_and_push(trainer, model_args, data_args, training_args, finetuning_args) diff --git a/IOPO/Method-IOPO/src/llamafactory/train/kto/__init__.py b/IOPO/Method-IOPO/src/llamafactory/train/kto/__init__.py new file mode 100644 index 00000000..a1900368 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/train/kto/__init__.py @@ -0,0 +1,18 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from .workflow import run_kto + + +__all__ = ["run_kto"] diff --git a/IOPO/Method-IOPO/src/llamafactory/train/kto/trainer.py b/IOPO/Method-IOPO/src/llamafactory/train/kto/trainer.py new file mode 100644 index 00000000..deb3fce2 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/train/kto/trainer.py @@ -0,0 +1,223 @@ +# Copyright 2024 HuggingFace Inc. and the LlamaFactory team. +# +# This code is inspired by the HuggingFace's TRL library. +# https://github.com/huggingface/trl/blob/v0.8.0/trl/trainer/kto_trainer.py +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import warnings +from collections import defaultdict +from contextlib import nullcontext +from types import MethodType +from typing import TYPE_CHECKING, Dict, Literal, Optional, Tuple, Union + +import torch +from transformers import Trainer +from trl import KTOTrainer +from trl.trainer import disable_dropout_in_model + +from ...extras.constants import IGNORE_INDEX +from ..callbacks import SaveProcessorCallback +from ..trainer_utils import create_custom_optimizer, create_custom_scheduler, get_batch_logps + + +if TYPE_CHECKING: + import torch.utils.data + from transformers import PreTrainedModel, ProcessorMixin + + from ...hparams import FinetuningArguments + + +class CustomKTOTrainer(KTOTrainer): + def __init__( + self, + model: Union["PreTrainedModel", torch.nn.Module], + ref_model: Optional[Union["PreTrainedModel", torch.nn.Module]], + finetuning_args: "FinetuningArguments", + processor: Optional["ProcessorMixin"], + disable_dropout: bool = True, + **kwargs, + ): + if disable_dropout: + disable_dropout_in_model(model) + if ref_model is not None: + disable_dropout_in_model(ref_model) + + self.finetuning_args = finetuning_args + self.reference_free = False + self.use_dpo_data_collator = True # hack to avoid warning + self.generate_during_eval = False # disable at evaluation + self.label_pad_token_id = IGNORE_INDEX + self.padding_value = 0 + self.is_encoder_decoder = model.config.is_encoder_decoder + self.precompute_ref_log_probs = False + self._precomputed_train_ref_log_probs = False + self._precomputed_eval_ref_log_probs = False + self._peft_has_been_casted_to_bf16 = False + + self.ref_model = ref_model + self._stored_metrics = defaultdict(lambda: defaultdict(list)) + + # kto hyperparams + self.beta = finetuning_args.pref_beta + self.desirable_weight = finetuning_args.kto_chosen_weight + self.undesirable_weight = finetuning_args.kto_rejected_weight + self.ftx_gamma = finetuning_args.pref_ftx + + Trainer.__init__(self, model=model, **kwargs) + if not hasattr(self, "accelerator"): + raise AttributeError("Please update `transformers`.") + + warnings.simplefilter("ignore") # remove gc warnings on ref model + + if ref_model is not None: + if self.is_deepspeed_enabled: + if not ( + getattr(ref_model, "is_loaded_in_8bit", False) or getattr(ref_model, "is_loaded_in_4bit", False) + ): # quantized models are already set on the correct device + self.ref_model = self._prepare_deepspeed(self.ref_model) + else: + self.ref_model = self.accelerator.prepare_model(self.ref_model, evaluation_mode=True) + self.ref_model.eval() + + if processor is not None: + self.add_callback(SaveProcessorCallback(processor)) + + if finetuning_args.use_badam: + from badam import BAdamCallback, clip_grad_norm_old_version + + self.accelerator.clip_grad_norm_ = MethodType(clip_grad_norm_old_version, self.accelerator) + self.add_callback(BAdamCallback) + + def create_optimizer(self) -> "torch.optim.Optimizer": + if self.optimizer is None: + self.optimizer = create_custom_optimizer(self.model, self.args, self.finetuning_args) + return super().create_optimizer() + + def create_scheduler( + self, num_training_steps: int, optimizer: Optional["torch.optim.Optimizer"] = None + ) -> "torch.optim.lr_scheduler.LRScheduler": + create_custom_scheduler(self.args, num_training_steps, optimizer) + return super().create_scheduler(num_training_steps, optimizer) + + def _get_train_sampler(self) -> Optional["torch.utils.data.Sampler"]: + r""" + Replaces the sequential sampler of KTO Trainer created by trl with the random sampler. + """ + return Trainer._get_train_sampler(self) + + def forward( + self, model: "PreTrainedModel", batch: Dict[str, "torch.Tensor"], prefix: Literal["", "kl_"] = "" + ) -> Tuple["torch.Tensor", "torch.Tensor"]: + r""" + Runs forward pass and computes the log probabilities. + """ + batch = {k: v.detach().clone() for k, v in batch.items()} # avoid error + model_inputs = { + "input_ids": batch["{}input_ids".format(prefix)], + "attention_mask": batch["{}attention_mask".format(prefix)], + } + if "pixel_values" in batch: + model_inputs["pixel_values"] = batch["pixel_values"] + + if "{}token_type_ids".format(prefix) in batch: + model_inputs["token_type_ids"] = batch["{}token_type_ids".format(prefix)] + + logits = model(**model_inputs, return_dict=True, use_cache=False).logits.to(torch.float32) + + logps, valid_length = get_batch_logps(logits=logits, labels=batch["{}labels".format(prefix)]) + return logps, logps / valid_length + + def concatenated_forward( + self, model: "PreTrainedModel", batch: Dict[str, "torch.Tensor"] + ) -> Tuple["torch.Tensor", "torch.Tensor", "torch.Tensor", "torch.Tensor"]: + target_logps, target_logps_avg = self.forward(model, batch) + with torch.no_grad(): + kl_logps, _ = self.forward(model, batch, prefix="kl_") + + if len(target_logps) != len(batch["kto_tags"]): + raise ValueError("Mismatched shape of inputs and labels.") + + chosen_logps = target_logps[batch["kto_tags"]] + rejected_logps = target_logps[~batch["kto_tags"]] + chosen_logps_avg = target_logps_avg[batch["kto_tags"]] + return chosen_logps, rejected_logps, kl_logps, chosen_logps_avg + + def compute_reference_log_probs( + self, model: "PreTrainedModel", batch: Dict[str, "torch.Tensor"] + ) -> Tuple["torch.Tensor", "torch.Tensor", "torch.Tensor"]: + r""" + Computes log probabilities of the reference model. + """ + if self.ref_model is None: + ref_model = model + ref_context = self.accelerator.unwrap_model(model).disable_adapter() + else: + ref_model = self.ref_model + ref_context = nullcontext() + + with torch.no_grad(), ref_context: + reference_chosen_logps, reference_rejected_logps, reference_kl_logps, _ = self.concatenated_forward( + ref_model, batch + ) + + return reference_chosen_logps, reference_rejected_logps, reference_kl_logps + + def get_batch_loss_metrics( + self, + model: "PreTrainedModel", + batch: Dict[str, "torch.Tensor"], + ) -> Tuple["torch.Tensor", Dict[str, "torch.Tensor"]]: + r""" + Computes the DPO loss and other metrics for the given batch of inputs for train or test. + """ + metrics = {} + policy_chosen_logps, policy_rejected_logps, policy_kl_logps, policy_chosen_logps_avg = ( + self.concatenated_forward(model, batch) + ) + reference_chosen_logps, reference_rejected_logps, reference_kl_logps = self.compute_reference_log_probs( + model, batch + ) + losses, chosen_rewards, rejected_rewards, kl = self.kto_loss( + policy_chosen_logps, + policy_rejected_logps, + policy_kl_logps, + reference_chosen_logps, + reference_rejected_logps, + reference_kl_logps, + ) + losses = losses.nanmean() + + if self.ftx_gamma > 1e-6 and len(policy_chosen_logps) > 0: # remember to rescale + sft_loss = -policy_chosen_logps_avg + losses += self.ftx_gamma * sft_loss.nanmean() / len(policy_chosen_logps) * len(batch["labels"]) + + num_chosen = torch.Tensor([len(chosen_rewards)]).to(self.accelerator.device) + num_rejected = torch.Tensor([len(rejected_rewards)]).to(self.accelerator.device) + + all_num_chosen = self.accelerator.gather(num_chosen).sum().item() + all_num_rejected = self.accelerator.gather(num_rejected).sum().item() + + if all_num_chosen > 0: + metrics["rewards/chosen_sum"] = self.accelerator.gather(chosen_rewards.nansum()).nansum().item() + metrics["logps/chosen_sum"] = self.accelerator.gather(policy_chosen_logps.nansum()).nansum().item() + metrics["count/chosen"] = all_num_chosen + + if all_num_rejected > 0: + metrics["rewards/rejected_sum"] = self.accelerator.gather(rejected_rewards.nansum()).nansum().item() + metrics["logps/rejected_sum"] = self.accelerator.gather(policy_rejected_logps.nansum()).nansum().item() + metrics["count/rejected"] = all_num_rejected + + metrics["kl"] = kl.item() + + return losses, metrics diff --git a/IOPO/Method-IOPO/src/llamafactory/train/kto/workflow.py b/IOPO/Method-IOPO/src/llamafactory/train/kto/workflow.py new file mode 100644 index 00000000..fa85de37 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/train/kto/workflow.py @@ -0,0 +1,95 @@ +# Copyright 2024 HuggingFace Inc. and the LlamaFactory team. +# +# This code is inspired by the HuggingFace's TRL library. +# https://github.com/huggingface/trl/blob/v0.8.0/examples/scripts/kto.py +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from typing import TYPE_CHECKING, List, Optional + +from ...data import KTODataCollatorWithPadding, get_dataset +from ...extras.constants import IGNORE_INDEX +from ...extras.ploting import plot_loss +from ...hparams import ModelArguments +from ...model import load_model, load_tokenizer +from ..trainer_utils import create_modelcard_and_push, create_ref_model +from .trainer import CustomKTOTrainer + + +if TYPE_CHECKING: + from transformers import Seq2SeqTrainingArguments, TrainerCallback + + from ...hparams import DataArguments, FinetuningArguments + + +def run_kto( + model_args: "ModelArguments", + data_args: "DataArguments", + training_args: "Seq2SeqTrainingArguments", + finetuning_args: "FinetuningArguments", + callbacks: Optional[List["TrainerCallback"]] = None, +): + tokenizer_module = load_tokenizer(model_args) + tokenizer = tokenizer_module["tokenizer"] + dataset_module = get_dataset(model_args, data_args, training_args, stage="kto", **tokenizer_module) + model = load_model(tokenizer, model_args, finetuning_args, training_args.do_train) + + data_collator = KTODataCollatorWithPadding( + tokenizer=tokenizer, + pad_to_multiple_of=8, + label_pad_token_id=IGNORE_INDEX if data_args.ignore_pad_token_for_loss else tokenizer.pad_token_id, + ) + + # Create reference model + if finetuning_args.ref_model is None and (not training_args.do_train): # use the model itself + ref_model = model + else: + ref_model = create_ref_model(model_args, finetuning_args) + + # Update arguments + training_args.remove_unused_columns = False # important for pairwise dataset + + # Initialize our Trainer + trainer = CustomKTOTrainer( + model=model, + ref_model=ref_model, + args=training_args, + finetuning_args=finetuning_args, + data_collator=data_collator, + callbacks=callbacks, + **dataset_module, + **tokenizer_module, + ) + + # Training + if training_args.do_train: + train_result = trainer.train(resume_from_checkpoint=training_args.resume_from_checkpoint) + trainer.save_model() + trainer.log_metrics("train", train_result.metrics) + trainer.save_metrics("train", train_result.metrics) + trainer.save_state() + if trainer.is_world_process_zero() and finetuning_args.plot_loss: + plot_loss(training_args.output_dir, keys=["loss", "eval_loss", "train/rewards/chosen"]) + + # Evaluation + if training_args.do_eval: + metrics = trainer.evaluate(metric_key_prefix="eval") + if id(model) == id(ref_model): # unable to compute rewards without a reference model + remove_keys = [key for key in metrics.keys() if "rewards" in key] + for key in remove_keys: + metrics.pop(key) + trainer.log_metrics("eval", metrics) + trainer.save_metrics("eval", metrics) + + # Create model card + create_modelcard_and_push(trainer, model_args, data_args, training_args, finetuning_args) diff --git a/IOPO/Method-IOPO/src/llamafactory/train/ppo/__init__.py b/IOPO/Method-IOPO/src/llamafactory/train/ppo/__init__.py new file mode 100644 index 00000000..161f6f5d --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/train/ppo/__init__.py @@ -0,0 +1,18 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from .workflow import run_ppo + + +__all__ = ["run_ppo"] diff --git a/IOPO/Method-IOPO/src/llamafactory/train/ppo/ppo_utils.py b/IOPO/Method-IOPO/src/llamafactory/train/ppo/ppo_utils.py new file mode 100644 index 00000000..05c40946 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/train/ppo/ppo_utils.py @@ -0,0 +1,88 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import json +from contextlib import nullcontext +from typing import TYPE_CHECKING, Dict, List, Literal, Optional + +import torch +from transformers.integrations import is_deepspeed_zero3_enabled + +from ...extras.packages import is_requests_available + + +if is_requests_available(): + import requests + + +if TYPE_CHECKING: + from transformers import PreTrainedModel + from trl import AutoModelForCausalLMWithValueHead + + +def get_rewards_from_server(server_url: str, messages: List[str]) -> List[torch.Tensor]: + r""" + Gets reward scores from the API server. + """ + headers = {"Content-Type": "application/json"} + payload = {"model": "model", "messages": messages} + response = requests.post(server_url, json=payload, headers=headers) + rewards = json.loads(response.text)["scores"] + return torch.Tensor(rewards) + + +def replace_model(model: "AutoModelForCausalLMWithValueHead", target: Literal["default", "reward"]) -> None: + r""" + Replaces the default/reward modules in the model. The model is already unwrapped. + """ + v_head_layer = model.v_head.summary + if is_deepspeed_zero3_enabled(): + import deepspeed # type: ignore + + params = [v_head_layer.weight, v_head_layer.bias] + context_maybe_zero3 = deepspeed.zero.GatheredParameters(params, modifier_rank=0) + else: + context_maybe_zero3 = nullcontext() + + model.pretrained_model.set_adapter(target) # set the LoRA adapter to be active + with context_maybe_zero3: + if target == "reward": # save default head temporarily + setattr(model, "default_head_weight", v_head_layer.weight.data.detach().clone()) + setattr(model, "default_head_bias", v_head_layer.bias.data.detach().clone()) + + device = v_head_layer.weight.device + v_head_layer.weight.data = model.get_buffer("{}_head_weight".format(target)).detach().clone().to(device) + v_head_layer.bias.data = model.get_buffer("{}_head_bias".format(target)).detach().clone().to(device) + + +def dump_layernorm(model: "PreTrainedModel") -> Dict[str, torch.Tensor]: + r""" + Dumps the layernorm parameters in the model. The model is already unwrapped (and gathered). + """ + layer_norm_params = {} + for name, param in model.named_parameters(): + if param.data.dtype == torch.float32: + layer_norm_params[name] = param.data.detach().clone() + param.data = param.data.to(model.config.torch_dtype) + + return layer_norm_params + + +def restore_layernorm(model: "PreTrainedModel", layernorm_params: Optional[Dict[str, torch.Tensor]] = None) -> None: + r""" + Restores the layernorm parameters in the model. The model is already unwrapped (and gathered). + """ + for name, param in model.named_parameters(): + if name in layernorm_params: + param.data = layernorm_params[name] diff --git a/IOPO/Method-IOPO/src/llamafactory/train/ppo/trainer.py b/IOPO/Method-IOPO/src/llamafactory/train/ppo/trainer.py new file mode 100644 index 00000000..58ea83d8 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/train/ppo/trainer.py @@ -0,0 +1,507 @@ +# Copyright 2024 HuggingFace Inc. and the LlamaFactory team. +# +# This code is inspired by the HuggingFace's TRL library. +# https://github.com/huggingface/trl/blob/v0.8.0/trl/trainer/ppo_trainer.py +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import math +import os +import sys +import warnings +from types import MethodType +from typing import TYPE_CHECKING, Any, Dict, List, Optional, Tuple + +import torch +from accelerate.utils import DistributedDataParallelKwargs +from tqdm import tqdm +from transformers import GenerationConfig, Trainer, TrainerControl, TrainerState +from transformers.optimization import get_scheduler +from transformers.trainer import DEFAULT_CALLBACKS +from transformers.trainer_callback import CallbackHandler +from transformers.trainer_pt_utils import remove_dummy_checkpoint +from transformers.trainer_utils import PREFIX_CHECKPOINT_DIR +from transformers.utils import SAFE_WEIGHTS_NAME, WEIGHTS_NAME +from trl import PPOConfig, PPOTrainer +from trl.core import PPODecorators, logprobs_from_logits +from trl.models.utils import unwrap_model_for_generation + +from ...extras.logging import get_logger +from ...extras.misc import AverageMeter, count_parameters, get_current_device, get_logits_processor +from ..callbacks import FixValueHeadModelCallback, SaveProcessorCallback +from ..trainer_utils import create_custom_optimizer, create_custom_scheduler +from .ppo_utils import dump_layernorm, get_rewards_from_server, replace_model, restore_layernorm + + +if TYPE_CHECKING: + from datasets import Dataset + from transformers import ( + DataCollatorWithPadding, + PreTrainedTokenizer, + ProcessorMixin, + Seq2SeqTrainingArguments, + TrainerCallback, + ) + from trl import AutoModelForCausalLMWithValueHead + + from ...hparams import FinetuningArguments, GeneratingArguments, ModelArguments + + +logger = get_logger(__name__) + + +class CustomPPOTrainer(PPOTrainer, Trainer): + r""" + Inherits PPOTrainer. + """ + + def __init__( + self, + model_args: "ModelArguments", + training_args: "Seq2SeqTrainingArguments", + finetuning_args: "FinetuningArguments", + generating_args: "GeneratingArguments", + callbacks: Optional[List["TrainerCallback"]], + model: "AutoModelForCausalLMWithValueHead", + reward_model: Optional["AutoModelForCausalLMWithValueHead"], + ref_model: Optional["AutoModelForCausalLMWithValueHead"], + tokenizer: "PreTrainedTokenizer", + processor: Optional["ProcessorMixin"], + data_collator: "DataCollatorWithPadding", + train_dataset: Optional["Dataset"] = None, + eval_dataset: Optional["Dataset"] = None, + ) -> None: + if eval_dataset is not None: + raise NotImplementedError("PPOTrainer does not support eval dataset yet.") + + backward_batch_size = training_args.per_device_train_batch_size * training_args.gradient_accumulation_steps + ppo_config = PPOConfig( + model_name=model_args.model_name_or_path, + learning_rate=training_args.learning_rate, + mini_batch_size=training_args.per_device_train_batch_size, + batch_size=backward_batch_size * finetuning_args.ppo_buffer_size, + gradient_accumulation_steps=training_args.gradient_accumulation_steps, + ppo_epochs=finetuning_args.ppo_epochs, + max_grad_norm=training_args.max_grad_norm, + seed=training_args.seed, + optimize_device_cache=True, + target=finetuning_args.ppo_target, + use_score_scaling=finetuning_args.ppo_score_norm, + use_score_norm=finetuning_args.ppo_score_norm, + whiten_rewards=finetuning_args.ppo_whiten_rewards, + accelerator_kwargs={"step_scheduler_with_optimizer": False}, + log_with=training_args.report_to[0] if training_args.report_to else None, + project_kwargs={"logging_dir": training_args.logging_dir}, + ) + + # Add deepspeed config + if training_args.deepspeed_plugin is not None: + ppo_config.accelerator_kwargs["kwargs_handlers"] = [ + DistributedDataParallelKwargs(find_unused_parameters=training_args.ddp_find_unused_parameters) + ] + ppo_config.accelerator_kwargs["deepspeed_plugin"] = training_args.deepspeed_plugin + if ppo_config.log_with is not None: + logger.warning("PPOTrainer cannot use external logger when DeepSpeed is enabled.") + ppo_config.log_with = None + + # Create optimizer and scheduler + if training_args.max_steps > 0: + num_training_steps = training_args.max_steps + else: + total_train_batch_size = backward_batch_size * finetuning_args.ppo_buffer_size * training_args.world_size + num_training_steps = training_args.num_train_epochs * math.ceil( + len(train_dataset) / total_train_batch_size + ) + + optimizer = self.create_optimizer(model, training_args, finetuning_args) + scheduler = self.create_scheduler(training_args, num_training_steps, optimizer) + + PPOTrainer.__init__( + self, + config=ppo_config, + model=model, + ref_model=ref_model, + tokenizer=tokenizer, + dataset=train_dataset, + data_collator=data_collator, + lr_scheduler=scheduler, + ) + + self.args = training_args + self.model_args = model_args + self.finetuning_args = finetuning_args + self.reward_model = reward_model + self.current_device = get_current_device() # patch for deepspeed training + + self.generation_config = GenerationConfig( + pad_token_id=self.tokenizer.pad_token_id, + eos_token_id=[self.tokenizer.eos_token_id] + self.tokenizer.additional_special_tokens_ids, + **generating_args.to_dict(), + ) + + self.state = TrainerState() + self.control = TrainerControl() + self.is_deepspeed_enabled = getattr(self.accelerator.state, "deepspeed_plugin", None) is not None + self.is_fsdp_enabled = getattr(self.accelerator.state, "fsdp_plugin", None) is not None + callbacks = DEFAULT_CALLBACKS if callbacks is None else DEFAULT_CALLBACKS + callbacks + self.callback_handler = CallbackHandler( + callbacks, self.accelerator.unwrap_model(self.model), self.tokenizer, self.optimizer, self.lr_scheduler + ) + if self.args.max_steps > 0: + logger.info("max_steps is given, it will override any value given in num_train_epochs") + + self.amp_context = torch.autocast(self.current_device.type) + warnings.simplefilter("ignore") # remove gc warnings on ref model + + if finetuning_args.reward_model_type == "full": + if self.is_deepspeed_enabled: + if not ( + getattr(reward_model.pretrained_model, "is_loaded_in_8bit", False) + or getattr(reward_model.pretrained_model, "is_loaded_in_4bit", False) + ): # quantized models are already set on the correct device + self.reward_model = self._prepare_deepspeed(self.reward_model) + else: + self.reward_model = self.accelerator.prepare_model(self.reward_model, evaluation_mode=True) + + self.add_callback(FixValueHeadModelCallback) + + if processor is not None: + self.add_callback(SaveProcessorCallback(processor)) + + if finetuning_args.use_badam: + from badam import BAdamCallback, clip_grad_norm_old_version + + self.accelerator.clip_grad_norm_ = MethodType(clip_grad_norm_old_version, self.accelerator) + self.add_callback(BAdamCallback) + + def ppo_train(self, resume_from_checkpoint: Optional[str] = None) -> None: + r""" + Implements training loop for the PPO stage, like _inner_training_loop() in Huggingface's Trainer. + """ + if resume_from_checkpoint is not None: + raise ValueError("`resume_from_checkpoint` will be supported in the future version.") + + total_train_batch_size = ( + self.args.per_device_train_batch_size + * self.args.gradient_accumulation_steps + * self.finetuning_args.ppo_buffer_size + * self.args.world_size + ) + if self.args.max_steps > 0: + num_examples = total_train_batch_size * self.args.max_steps + num_train_epochs = sys.maxsize + max_steps = self.args.max_steps + steps_in_epoch = self.args.max_steps + else: + len_dataloader = len(self.dataloader) + num_examples = len(self.dataset) + num_train_epochs = self.args.num_train_epochs + max_steps = math.ceil(num_train_epochs * len_dataloader) + steps_in_epoch = len_dataloader + + self.state.max_steps = max_steps + self.state.num_train_epochs = num_train_epochs + self.state.is_local_process_zero = self.is_local_process_zero() + self.state.is_world_process_zero = self.is_world_process_zero() + + if self.is_world_process_zero(): + logger.info("***** Running training *****") + logger.info(" Num examples = {:,}".format(num_examples)) + logger.info(" Num Epochs = {:,}".format(num_train_epochs)) + logger.info(" Instantaneous batch size per device = {:,}".format(self.args.per_device_train_batch_size)) + logger.info( + " Total train batch size (w. parallel, buffer, distributed & accumulation) = {:,}".format( + total_train_batch_size + ) + ) + logger.info(" Gradient Accumulation steps = {:,}".format(self.args.gradient_accumulation_steps)) + logger.info(" Num optimization epochs per batch = {:,}".format(self.finetuning_args.ppo_epochs)) + logger.info(" Total training steps = {:,}".format(max_steps)) + logger.info(" Number of trainable parameters = {:,}".format(count_parameters(self.model)[0])) + + dataiter = iter(self.dataloader) + loss_meter = AverageMeter() + reward_meter = AverageMeter() + self.callback_handler.on_train_begin(self.args, self.state, self.control) + + for step in tqdm(range(max_steps), disable=not self.is_local_process_zero()): + try: + batch = next(dataiter) + except StopIteration: + dataiter = iter(self.dataloader) + batch = next(dataiter) + + # Get inputs + self.model.eval() + self.tokenizer.padding_side = "right" # change padding side + queries, responses, rewards = [], [], [] + for idx in range(0, self.config.batch_size, self.config.mini_batch_size): + mini_batch_queries, mini_batch_responses = self.get_inputs( + batch[idx : idx + self.config.mini_batch_size] + ) + mini_batch_rewards = self.get_rewards(mini_batch_queries, mini_batch_responses) + queries.extend(mini_batch_queries) + responses.extend(mini_batch_responses) + rewards.extend(mini_batch_rewards) + + # Run PPO step + self.model.train() + stats = self.step(queries, responses, rewards) + self.tokenizer.padding_side = "left" # restore padding side + loss_meter.update(float(stats["ppo/loss/total"]), n=len(rewards)) + reward_meter.update(torch.stack(rewards).mean().item(), n=len(rewards)) + + if self.config.log_with is not None: + try: + batch["query"] = self.tokenizer.batch_decode(queries, skip_special_tokens=True) + batch["response"] = self.tokenizer.batch_decode(responses, skip_special_tokens=True) + self.log_stats(stats, batch, rewards) + except Exception: + logger.warning("Failed to save stats due to unknown errors.") + + self.state.global_step += 1 + self.callback_handler.on_step_end(self.args, self.state, self.control) + + if self.is_local_process_zero() and (step + 1) % self.args.logging_steps == 0: + logs = dict( + loss=round(loss_meter.avg, 4), + reward=round(reward_meter.avg, 4), + learning_rate=stats["ppo/learning_rate"], + epoch=round(step / steps_in_epoch, 2), + ) + tqdm.write(str(logs)) + logs["step"] = step + self.state.log_history.append(logs) + self.callback_handler.on_log(self.args, self.state, self.control, logs) + loss_meter.reset() + reward_meter.reset() + + if (step + 1) % self.args.save_steps == 0: # save checkpoint + self.save_model( + os.path.join(self.args.output_dir, "{}-{}".format(PREFIX_CHECKPOINT_DIR, self.state.global_step)) + ) + self.callback_handler.on_save(self.args, self.state, self.control) + + if self.control.should_epoch_stop or self.control.should_training_stop: + break + + self.callback_handler.on_train_end(self.args, self.state, self.control) + + def create_optimizer( + self, + model: "AutoModelForCausalLMWithValueHead", + training_args: "Seq2SeqTrainingArguments", + finetuning_args: "FinetuningArguments", + ) -> "torch.optim.Optimizer": + optimizer = create_custom_optimizer(model, training_args, finetuning_args) + if optimizer is None: + decay_params, nodecay_params = [], [] + decay_param_names = self.get_decay_parameter_names(model) + for name, param in model.named_parameters(): + if param.requires_grad: + if name in decay_param_names: + decay_params.append(param) + else: + nodecay_params.append(param) + + optim_class, optim_kwargs = Trainer.get_optimizer_cls_and_kwargs(training_args) + param_groups = [ + dict(params=nodecay_params), + dict(params=decay_params, weight_decay=training_args.weight_decay), + ] + optimizer = optim_class(param_groups, **optim_kwargs) + + return optimizer + + def create_scheduler( + self, training_args: "Seq2SeqTrainingArguments", num_training_steps: int, optimizer: "torch.optim.Optimizer" + ) -> "torch.optim.lr_scheduler.LRScheduler": + create_custom_scheduler(training_args, num_training_steps, optimizer) + lr_scheduler = get_scheduler( + training_args.lr_scheduler_type, + optimizer=optimizer, + num_warmup_steps=training_args.get_warmup_steps(num_training_steps), + num_training_steps=num_training_steps, + ) + return lr_scheduler + + @torch.no_grad() + def get_inputs(self, batch: Dict[str, "torch.Tensor"]) -> Tuple[List["torch.Tensor"], List["torch.Tensor"]]: + r""" + Generates model's responses given queries. + """ + if batch["input_ids"].size(0) == 1: # handle llama2 ppo with gradient accumulation > 1 + start_index = (batch["input_ids"][0] != self.tokenizer.pad_token_id).nonzero()[0].item() + for k, v in batch.items(): + batch[k] = v[:, start_index:] + + with unwrap_model_for_generation(self.model, self.accelerator) as unwrapped_model: + unwrapped_model: "AutoModelForCausalLMWithValueHead" = self.accelerator.unwrap_model(self.model) + if self.model_args.upcast_layernorm: + layernorm_params = dump_layernorm(unwrapped_model) + + generate_output: "torch.Tensor" = unwrapped_model.generate( + generation_config=self.generation_config, logits_processor=get_logits_processor(), **batch + ) + if self.model_args.upcast_layernorm: + restore_layernorm(unwrapped_model, layernorm_params) + + query = batch["input_ids"].detach().cpu() + response = generate_output[:, batch["input_ids"].size(-1) :].detach().cpu() + queries, responses = [], [] + for i in range(len(query)): + query_start_index = (query[i] != self.tokenizer.pad_token_id).nonzero()[0].item() + response_indexes = (response[i] != self.tokenizer.pad_token_id).nonzero() + + if len(response_indexes) == 0: # allow empty response + response_length = 1 + elif self.tokenizer.eos_token_id == self.tokenizer.pad_token_id: # include eos token + response_length = response_indexes[-1].item() + 2 + else: + response_length = response_indexes[-1].item() + 1 + + queries.append(query[i, query_start_index:]) # remove padding from left + responses.append(response[i, :response_length]) # remove padding from right + + return queries, responses + + @torch.no_grad() + def get_rewards( + self, + queries: List["torch.Tensor"], + responses: List["torch.Tensor"], + ) -> List["torch.Tensor"]: + r""" + Computes scores using given reward model. + + Both inputs and outputs are put on CPU. + """ + if self.finetuning_args.reward_model_type == "api": + token_ids = [torch.cat((q, r), dim=-1).tolist() for q, r in zip(queries, responses)] + messages = self.tokenizer.batch_decode(token_ids, skip_special_tokens=True) + return get_rewards_from_server(self.reward_model, messages) + + batch: Dict[str, "torch.Tensor"] = self.prepare_model_inputs(queries, responses) + unwrapped_model: "AutoModelForCausalLMWithValueHead" = self.accelerator.unwrap_model(self.model) + + if self.finetuning_args.reward_model_type == "lora": + replace_model(unwrapped_model, target="reward") + reward_model = self.model + else: + reward_model = self.reward_model + + with unwrap_model_for_generation(reward_model, self.accelerator), self.amp_context: # support bf16 + _, _, values = reward_model(**batch, return_dict=True, use_cache=False) + + if self.finetuning_args.reward_model_type == "lora": + replace_model(unwrapped_model, target="default") + + rewards = values.gather(dim=-1, index=(batch["attention_mask"].sum(dim=-1, keepdim=True) - 1)) + return rewards.float().detach() # use fp32 type + + @PPODecorators.empty_device_cache() + def batched_forward_pass( + self, + model: "AutoModelForCausalLMWithValueHead", + queries: "torch.Tensor", + responses: "torch.Tensor", + model_inputs: Dict[str, Any], + return_logits: bool = False, + response_masks: Optional["torch.Tensor"] = None, + ) -> Tuple["torch.Tensor", Optional["torch.Tensor"], "torch.Tensor", "torch.Tensor"]: + r""" + Calculates model outputs in multiple batches. + + Subclass and override to inject custom behavior. + """ + bs = len(queries) + fbs = self.config.mini_batch_size + all_logprobs = [] + all_logits = [] + all_masks = [] + all_values = [] + + for i in range(math.ceil(bs / fbs)): + input_kwargs = {key: value[i * fbs : (i + 1) * fbs] for key, value in model_inputs.items()} + query_batch = queries[i * fbs : (i + 1) * fbs] + response_batch = responses[i * fbs : (i + 1) * fbs] + if response_masks is not None: + response_masks_batch = response_masks[i * fbs : (i + 1) * fbs] + input_ids = input_kwargs["input_ids"] + attention_mask = input_kwargs["attention_mask"] + + with self.amp_context: # support bf16 + logits, _, values = model(**input_kwargs, return_dict=True, use_cache=False) + + logprobs = logprobs_from_logits(logits[:, :-1, :], input_ids[:, 1:]) + masks = torch.zeros_like(attention_mask) + masks[:, :-1] = attention_mask[:, 1:] + + for j in range(len(query_batch)): + start = len(query_batch[j]) - 1 + if attention_mask[j, 0] == 0: # offset left padding + start += attention_mask[j, :].nonzero()[0].item() + end = start + len(response_batch[j]) + + if response_masks is not None: + response_masks_batch = torch.cat((torch.zeros_like(query_batch[j]), response_masks_batch[j]))[1:] + + masks[j, :start] = 0 + masks[j, end:] = 0 + if response_masks is not None: + masks[j, start:end] = masks[j, start:end] * response_masks_batch[j][start:end] + + if return_logits: + all_logits.append(logits) + else: + del logits + + all_values.append(values) + all_logprobs.append(logprobs) + all_masks.append(masks) + + return ( + torch.cat(all_logprobs), + torch.cat(all_logits)[:, :-1] if return_logits else None, + torch.cat(all_values)[:, :-1], + torch.cat(all_masks)[:, :-1], + ) + + def save_model(self, output_dir: Optional[str] = None) -> None: + r""" + Saves model checkpoint. + + Subclass and override to inject custom behavior. + """ + if output_dir is None: + output_dir = self.args.output_dir + + if self.is_fsdp_enabled or self.is_deepspeed_enabled: + try: + state_dict = self.accelerator.get_state_dict(self.model) # must be called at all ranks + if self.args.should_save: + self._save(output_dir, state_dict=state_dict) + except ValueError: + logger.warning( + " stage3_gather_16bit_weights_on_model_save=false. Saving the full checkpoint instead," + " use zero_to_fp32.py to recover weights" + ) + if self.args.should_save: + self._save(output_dir, state_dict={}) + # remove the dummy state_dict + remove_dummy_checkpoint(self.args.should_save, output_dir, [WEIGHTS_NAME, SAFE_WEIGHTS_NAME]) + self.model.save_checkpoint(output_dir) + + elif self.args.should_save: + unwrapped_model: "AutoModelForCausalLMWithValueHead" = self.accelerator.unwrap_model(self.model) + self._save(output_dir, state_dict=unwrapped_model.state_dict()) diff --git a/IOPO/Method-IOPO/src/llamafactory/train/ppo/workflow.py b/IOPO/Method-IOPO/src/llamafactory/train/ppo/workflow.py new file mode 100644 index 00000000..6cea52d9 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/train/ppo/workflow.py @@ -0,0 +1,80 @@ +# Copyright 2024 HuggingFace Inc. and the LlamaFactory team. +# +# This code is inspired by the HuggingFace's TRL library. +# https://github.com/huggingface/trl/blob/v0.8.0/examples/scripts/ppo.py +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from typing import TYPE_CHECKING, List, Optional + +from transformers import DataCollatorWithPadding + +from ...data import get_dataset +from ...extras.ploting import plot_loss +from ...model import load_model, load_tokenizer +from ..callbacks import fix_valuehead_checkpoint +from ..trainer_utils import create_ref_model, create_reward_model +from .trainer import CustomPPOTrainer + + +if TYPE_CHECKING: + from transformers import Seq2SeqTrainingArguments, TrainerCallback + + from ...hparams import DataArguments, FinetuningArguments, GeneratingArguments, ModelArguments + + +def run_ppo( + model_args: "ModelArguments", + data_args: "DataArguments", + training_args: "Seq2SeqTrainingArguments", + finetuning_args: "FinetuningArguments", + generating_args: "GeneratingArguments", + callbacks: Optional[List["TrainerCallback"]] = None, +): + tokenizer_module = load_tokenizer(model_args) + tokenizer = tokenizer_module["tokenizer"] + dataset_module = get_dataset(model_args, data_args, training_args, stage="ppo", **tokenizer_module) + model = load_model(tokenizer, model_args, finetuning_args, training_args.do_train, add_valuehead=True) + + tokenizer.padding_side = "left" # use left-padding in generation while using right-padding in training + data_collator = DataCollatorWithPadding(tokenizer=tokenizer) + + # Create reference model and reward model + ref_model = create_ref_model(model_args, finetuning_args, add_valuehead=True) + reward_model = create_reward_model(model, model_args, finetuning_args) + + # Initialize our Trainer + ppo_trainer: "CustomPPOTrainer" = CustomPPOTrainer( + model_args=model_args, + training_args=training_args, + finetuning_args=finetuning_args, + generating_args=generating_args, + callbacks=callbacks, + model=model, + reward_model=reward_model, + ref_model=ref_model, + data_collator=data_collator, + **dataset_module, + **tokenizer_module, + ) + + # Training + if training_args.do_train: + ppo_trainer.ppo_train(resume_from_checkpoint=training_args.resume_from_checkpoint) + ppo_trainer.save_model() + if training_args.should_save: + fix_valuehead_checkpoint(model, training_args.output_dir, training_args.save_safetensors) + + ppo_trainer.save_state() # must be called after save_model to have a folder + if ppo_trainer.is_world_process_zero() and finetuning_args.plot_loss: + plot_loss(training_args.output_dir, keys=["loss", "reward"]) diff --git a/IOPO/Method-IOPO/src/llamafactory/train/pt/__init__.py b/IOPO/Method-IOPO/src/llamafactory/train/pt/__init__.py new file mode 100644 index 00000000..d80e6f22 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/train/pt/__init__.py @@ -0,0 +1,18 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from .workflow import run_pt + + +__all__ = ["run_pt"] diff --git a/IOPO/Method-IOPO/src/llamafactory/train/pt/trainer.py b/IOPO/Method-IOPO/src/llamafactory/train/pt/trainer.py new file mode 100644 index 00000000..0c457b97 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/train/pt/trainer.py @@ -0,0 +1,67 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from types import MethodType +from typing import TYPE_CHECKING, Optional + +from transformers import Trainer + +from ...extras.logging import get_logger +from ..callbacks import PissaConvertCallback, SaveProcessorCallback +from ..trainer_utils import create_custom_optimizer, create_custom_scheduler + + +if TYPE_CHECKING: + import torch + from transformers import ProcessorMixin + + from ...hparams import FinetuningArguments + + +logger = get_logger(__name__) + + +class CustomTrainer(Trainer): + r""" + Inherits Trainer for custom optimizer. + """ + + def __init__( + self, finetuning_args: "FinetuningArguments", processor: Optional["ProcessorMixin"], **kwargs + ) -> None: + super().__init__(**kwargs) + self.finetuning_args = finetuning_args + + if processor is not None: + self.add_callback(SaveProcessorCallback(processor)) + + if finetuning_args.pissa_convert: + self.add_callback(PissaConvertCallback) + + if finetuning_args.use_badam: + from badam import BAdamCallback, clip_grad_norm_old_version + + self.accelerator.clip_grad_norm_ = MethodType(clip_grad_norm_old_version, self.accelerator) + self.add_callback(BAdamCallback) + + def create_optimizer(self) -> "torch.optim.Optimizer": + if self.optimizer is None: + self.optimizer = create_custom_optimizer(self.model, self.args, self.finetuning_args) + return super().create_optimizer() + + def create_scheduler( + self, num_training_steps: int, optimizer: Optional["torch.optim.Optimizer"] = None + ) -> "torch.optim.lr_scheduler.LRScheduler": + create_custom_scheduler(self.args, num_training_steps, optimizer) + return super().create_scheduler(num_training_steps, optimizer) diff --git a/IOPO/Method-IOPO/src/llamafactory/train/pt/workflow.py b/IOPO/Method-IOPO/src/llamafactory/train/pt/workflow.py new file mode 100644 index 00000000..1052a9d1 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/train/pt/workflow.py @@ -0,0 +1,83 @@ +# Copyright 2024 HuggingFace Inc. and the LlamaFactory team. +# +# This code is inspired by the HuggingFace's transformers library. +# https://github.com/huggingface/transformers/blob/v4.40.0/examples/pytorch/language-modeling/run_clm.py +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import math +from typing import TYPE_CHECKING, List, Optional + +from transformers import DataCollatorForLanguageModeling + +from ...data import get_dataset +from ...extras.ploting import plot_loss +from ...model import load_model, load_tokenizer +from ..trainer_utils import create_modelcard_and_push +from .trainer import CustomTrainer + + +if TYPE_CHECKING: + from transformers import Seq2SeqTrainingArguments, TrainerCallback + + from ...hparams import DataArguments, FinetuningArguments, ModelArguments + + +def run_pt( + model_args: "ModelArguments", + data_args: "DataArguments", + training_args: "Seq2SeqTrainingArguments", + finetuning_args: "FinetuningArguments", + callbacks: Optional[List["TrainerCallback"]] = None, +): + tokenizer_module = load_tokenizer(model_args) + tokenizer = tokenizer_module["tokenizer"] + dataset_module = get_dataset(model_args, data_args, training_args, stage="pt", **tokenizer_module) + model = load_model(tokenizer, model_args, finetuning_args, training_args.do_train) + data_collator = DataCollatorForLanguageModeling(tokenizer=tokenizer, mlm=False) + + # Initialize our Trainer + trainer = CustomTrainer( + model=model, + args=training_args, + finetuning_args=finetuning_args, + data_collator=data_collator, + callbacks=callbacks, + **dataset_module, + **tokenizer_module, + ) + + # Training + if training_args.do_train: + train_result = trainer.train(resume_from_checkpoint=training_args.resume_from_checkpoint) + trainer.save_model() + trainer.log_metrics("train", train_result.metrics) + trainer.save_metrics("train", train_result.metrics) + trainer.save_state() + if trainer.is_world_process_zero() and finetuning_args.plot_loss: + plot_loss(training_args.output_dir, keys=["loss", "eval_loss"]) + + # Evaluation + if training_args.do_eval: + metrics = trainer.evaluate(metric_key_prefix="eval") + try: + perplexity = math.exp(metrics["eval_loss"]) + except OverflowError: + perplexity = float("inf") + + metrics["perplexity"] = perplexity + trainer.log_metrics("eval", metrics) + trainer.save_metrics("eval", metrics) + + # Create model card + create_modelcard_and_push(trainer, model_args, data_args, training_args, finetuning_args) diff --git a/IOPO/Method-IOPO/src/llamafactory/train/rm/__init__.py b/IOPO/Method-IOPO/src/llamafactory/train/rm/__init__.py new file mode 100644 index 00000000..48278315 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/train/rm/__init__.py @@ -0,0 +1,18 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from .workflow import run_rm + + +__all__ = ["run_rm"] diff --git a/IOPO/Method-IOPO/src/llamafactory/train/rm/metric.py b/IOPO/Method-IOPO/src/llamafactory/train/rm/metric.py new file mode 100644 index 00000000..7c9dfeb4 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/train/rm/metric.py @@ -0,0 +1,49 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from dataclasses import dataclass +from typing import TYPE_CHECKING, Dict, Optional + +import numpy as np + +from ...extras.misc import numpify + + +if TYPE_CHECKING: + from transformers import EvalPrediction + + +@dataclass +class ComputeAccuracy: + def _dump(self) -> Optional[Dict[str, float]]: + result = None + if hasattr(self, "score_dict"): + result = {k: float(np.mean(v)) for k, v in self.score_dict.items()} + + self.score_dict = {"accuracy": []} + return result + + def __post_init__(self): + self._dump() + + def __call__(self, eval_preds: "EvalPrediction", compute_result: bool = True) -> Optional[Dict[str, float]]: + chosen_scores, rejected_scores = numpify(eval_preds.predictions[0]), numpify(eval_preds.predictions[1]) + if not chosen_scores.shape: + self.score_dict["accuracy"].append(chosen_scores > rejected_scores) + else: + for i in range(len(chosen_scores)): + self.score_dict["accuracy"].append(chosen_scores[i] > rejected_scores[i]) + + if compute_result: + return self._dump() diff --git a/IOPO/Method-IOPO/src/llamafactory/train/rm/trainer.py b/IOPO/Method-IOPO/src/llamafactory/train/rm/trainer.py new file mode 100644 index 00000000..45d9e26b --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/train/rm/trainer.py @@ -0,0 +1,120 @@ +# Copyright 2024 HuggingFace Inc. and the LlamaFactory team. +# +# This code is inspired by the HuggingFace's transformers library. +# https://github.com/huggingface/transformers/blob/v4.40.0/src/transformers/trainer.py +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import json +import os +from types import MethodType +from typing import TYPE_CHECKING, Dict, List, Optional, Tuple, Union + +import torch +from transformers import Trainer + +from ...extras.logging import get_logger +from ..callbacks import FixValueHeadModelCallback, PissaConvertCallback, SaveProcessorCallback +from ..trainer_utils import create_custom_optimizer, create_custom_scheduler + + +if TYPE_CHECKING: + from transformers import PreTrainedModel, ProcessorMixin + from transformers.trainer import PredictionOutput + + from ...hparams import FinetuningArguments + + +logger = get_logger(__name__) + + +class PairwiseTrainer(Trainer): + r""" + Inherits Trainer to compute pairwise loss. + """ + + def __init__( + self, finetuning_args: "FinetuningArguments", processor: Optional["ProcessorMixin"], **kwargs + ) -> None: + super().__init__(**kwargs) + self.finetuning_args = finetuning_args + self.can_return_loss = True # override property to return eval_loss + self.add_callback(FixValueHeadModelCallback) + + if processor is not None: + self.add_callback(SaveProcessorCallback(processor)) + + if finetuning_args.pissa_convert: + self.add_callback(PissaConvertCallback) + + if finetuning_args.use_badam: + from badam import BAdamCallback, clip_grad_norm_old_version + + self.accelerator.clip_grad_norm_ = MethodType(clip_grad_norm_old_version, self.accelerator) + self.add_callback(BAdamCallback) + + def create_optimizer(self) -> "torch.optim.Optimizer": + if self.optimizer is None: + self.optimizer = create_custom_optimizer(self.model, self.args, self.finetuning_args) + return super().create_optimizer() + + def create_scheduler( + self, num_training_steps: int, optimizer: Optional["torch.optim.Optimizer"] = None + ) -> "torch.optim.lr_scheduler.LRScheduler": + create_custom_scheduler(self.args, num_training_steps, optimizer) + return super().create_scheduler(num_training_steps, optimizer) + + def compute_loss( + self, model: "PreTrainedModel", inputs: Dict[str, torch.Tensor], return_outputs: bool = False + ) -> Union[torch.Tensor, Tuple[torch.Tensor, List[torch.Tensor]]]: + r""" + Computes pairwise loss. The first n examples are chosen and the last n examples are rejected. + + Subclass and override to inject custom behavior. + + Note that the first element will be removed from the output tuple. + See: https://github.com/huggingface/transformers/blob/v4.40.0/src/transformers/trainer.py#L3842 + """ + _, _, values = model(**inputs, output_hidden_states=True, return_dict=True, use_cache=False) + batch_size = inputs["input_ids"].size(0) // 2 + chosen_masks, rejected_masks = torch.split(inputs["attention_mask"], batch_size, dim=0) + chosen_rewards, rejected_rewards = torch.split(values, batch_size, dim=0) + chosen_scores = chosen_rewards.gather(dim=-1, index=(chosen_masks.sum(dim=-1, keepdim=True) - 1)) + rejected_scores = rejected_rewards.gather(dim=-1, index=(rejected_masks.sum(dim=-1, keepdim=True) - 1)) + chosen_scores, rejected_scores = chosen_scores.squeeze(), rejected_scores.squeeze() + + loss = -torch.nn.functional.logsigmoid(chosen_scores.float() - rejected_scores.float()).mean() + if return_outputs: + return loss, (loss, chosen_scores, rejected_scores) + else: + return loss + + def save_predictions(self, predict_results: "PredictionOutput") -> None: + r""" + Saves model predictions to `output_dir`. + + A custom behavior that not contained in Seq2SeqTrainer. + """ + if not self.is_world_process_zero(): + return + + output_prediction_file = os.path.join(self.args.output_dir, "generated_predictions.jsonl") + logger.info(f"Saving prediction results to {output_prediction_file}") + chosen_scores, rejected_scores = predict_results.predictions + + with open(output_prediction_file, "w", encoding="utf-8") as writer: + res: List[str] = [] + for c_score, r_score in zip(chosen_scores, rejected_scores): + res.append(json.dumps({"chosen": round(float(c_score), 2), "rejected": round(float(r_score), 2)})) + + writer.write("\n".join(res)) diff --git a/IOPO/Method-IOPO/src/llamafactory/train/rm/workflow.py b/IOPO/Method-IOPO/src/llamafactory/train/rm/workflow.py new file mode 100644 index 00000000..f0afd7dc --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/train/rm/workflow.py @@ -0,0 +1,90 @@ +# Copyright 2024 HuggingFace Inc. and the LlamaFactory team. +# +# This code is inspired by the HuggingFace's transformers library. +# https://github.com/huggingface/transformers/blob/v4.40.0/examples/pytorch/summarization/run_summarization.py +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from typing import TYPE_CHECKING, List, Optional + +from ...data import PairwiseDataCollatorWithPadding, get_dataset +from ...extras.ploting import plot_loss +from ...model import load_model, load_tokenizer +from ..callbacks import fix_valuehead_checkpoint +from ..trainer_utils import create_modelcard_and_push +from .metric import ComputeAccuracy +from .trainer import PairwiseTrainer + + +if TYPE_CHECKING: + from transformers import Seq2SeqTrainingArguments, TrainerCallback + + from ...hparams import DataArguments, FinetuningArguments, ModelArguments + + +def run_rm( + model_args: "ModelArguments", + data_args: "DataArguments", + training_args: "Seq2SeqTrainingArguments", + finetuning_args: "FinetuningArguments", + callbacks: Optional[List["TrainerCallback"]] = None, +): + tokenizer_module = load_tokenizer(model_args) + tokenizer = tokenizer_module["tokenizer"] + dataset_module = get_dataset(model_args, data_args, training_args, stage="rm", **tokenizer_module) + model = load_model(tokenizer, model_args, finetuning_args, training_args.do_train, add_valuehead=True) + data_collator = PairwiseDataCollatorWithPadding(tokenizer, pad_to_multiple_of=8) + + # Update arguments + training_args.remove_unused_columns = False # important for pairwise dataset + + # Initialize our Trainer + trainer = PairwiseTrainer( + model=model, + args=training_args, + finetuning_args=finetuning_args, + data_collator=data_collator, + callbacks=callbacks, + compute_metrics=ComputeAccuracy(), + **dataset_module, + **tokenizer_module, + ) + + # Training + if training_args.do_train: + train_result = trainer.train(resume_from_checkpoint=training_args.resume_from_checkpoint) + trainer.save_model() + if training_args.should_save: + fix_valuehead_checkpoint(model, training_args.output_dir, training_args.save_safetensors) + + trainer.log_metrics("train", train_result.metrics) + trainer.save_metrics("train", train_result.metrics) + trainer.save_state() + if trainer.is_world_process_zero() and finetuning_args.plot_loss: + plot_loss(training_args.output_dir, keys=["loss", "eval_loss", "eval_accuracy"]) + + # Evaluation + if training_args.do_eval: + metrics = trainer.evaluate(metric_key_prefix="eval") + trainer.log_metrics("eval", metrics) + trainer.save_metrics("eval", metrics) + + # Predict + if training_args.do_predict: + predict_results = trainer.predict(dataset_module["eval_dataset"], metric_key_prefix="predict") + trainer.log_metrics("predict", predict_results.metrics) + trainer.save_metrics("predict", predict_results.metrics) + trainer.save_predictions(predict_results) + + # Create model card + create_modelcard_and_push(trainer, model_args, data_args, training_args, finetuning_args) diff --git a/IOPO/Method-IOPO/src/llamafactory/train/sft/__init__.py b/IOPO/Method-IOPO/src/llamafactory/train/sft/__init__.py new file mode 100644 index 00000000..475dfe5f --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/train/sft/__init__.py @@ -0,0 +1,18 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from .workflow import run_sft + + +__all__ = ["run_sft"] diff --git a/IOPO/Method-IOPO/src/llamafactory/train/sft/metric.py b/IOPO/Method-IOPO/src/llamafactory/train/sft/metric.py new file mode 100644 index 00000000..69327379 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/train/sft/metric.py @@ -0,0 +1,130 @@ +# Copyright 2024 HuggingFace Inc., THUDM, and the LlamaFactory team. +# +# This code is inspired by the HuggingFace's transformers library and the THUDM's ChatGLM implementation. +# https://github.com/huggingface/transformers/blob/v4.40.0/examples/pytorch/summarization/run_summarization.py +# https://github.com/THUDM/ChatGLM-6B/blob/main/ptuning/main.py +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from dataclasses import dataclass +from typing import TYPE_CHECKING, Dict, Optional + +import numpy as np +import torch +from transformers.utils import is_jieba_available, is_nltk_available + +from ...extras.constants import IGNORE_INDEX +from ...extras.misc import numpify +from ...extras.packages import is_rouge_available + + +if TYPE_CHECKING: + from transformers import EvalPrediction, PreTrainedTokenizer + + +if is_jieba_available(): + import jieba # type: ignore + + +if is_nltk_available(): + from nltk.translate.bleu_score import SmoothingFunction, sentence_bleu + + +if is_rouge_available(): + from rouge_chinese import Rouge + + +def eval_logit_processor(logits: "torch.Tensor", labels: "torch.Tensor") -> "torch.Tensor": + if isinstance(logits, (list, tuple)): + if logits[0].dim() == 3: # (batch_size, seq_len, vocab_size) + logits = logits[0] + else: # moe models have aux loss + logits = logits[1] + + if logits.dim() != 3: + raise ValueError("Cannot process the logits.") + + return torch.argmax(logits, dim=-1) + + +@dataclass +class ComputeAccuracy: + def _dump(self) -> Optional[Dict[str, float]]: + result = None + if hasattr(self, "score_dict"): + result = {k: float(np.mean(v)) for k, v in self.score_dict.items()} + + self.score_dict = {"accuracy": []} + return result + + def __post_init__(self): + self._dump() + + def __call__(self, eval_preds: "EvalPrediction", compute_result: bool = True) -> Optional[Dict[str, float]]: + preds, labels = numpify(eval_preds.predictions), numpify(eval_preds.label_ids) + for i in range(len(preds)): + pred, label = preds[i, :-1], labels[i, 1:] + label_mask = label != IGNORE_INDEX + self.score_dict["accuracy"].append(np.mean(pred[label_mask] == label[label_mask])) + + if compute_result: + return self._dump() + + +@dataclass +class ComputeSimilarity: + r""" + Wraps the tokenizer into metric functions, used in CustomSeq2SeqTrainer. + """ + + tokenizer: "PreTrainedTokenizer" + + def _dump(self) -> Optional[Dict[str, float]]: + result = None + if hasattr(self, "score_dict"): + result = {k: float(np.mean(v)) for k, v in self.score_dict.items()} + + self.score_dict = {"rouge-1": [], "rouge-2": [], "rouge-l": [], "bleu-4": []} + return result + + def __post_init__(self): + self._dump() + + def __call__(self, eval_preds: "EvalPrediction", compute_result: bool = True) -> Optional[Dict[str, float]]: + preds, labels = numpify(eval_preds.predictions), numpify(eval_preds.label_ids) + + preds = np.where(preds != IGNORE_INDEX, preds, self.tokenizer.pad_token_id) + labels = np.where(labels != IGNORE_INDEX, labels, self.tokenizer.pad_token_id) + + decoded_preds = self.tokenizer.batch_decode(preds, skip_special_tokens=True) + decoded_labels = self.tokenizer.batch_decode(labels, skip_special_tokens=True) + + for pred, label in zip(decoded_preds, decoded_labels): + hypothesis = list(jieba.cut(pred)) + reference = list(jieba.cut(label)) + + if len(" ".join(hypothesis).split()) == 0 or len(" ".join(reference).split()) == 0: + result = {"rouge-1": {"f": 0.0}, "rouge-2": {"f": 0.0}, "rouge-l": {"f": 0.0}} + else: + rouge = Rouge() + scores = rouge.get_scores(" ".join(hypothesis), " ".join(reference)) + result = scores[0] + + for k, v in result.items(): + self.score_dict[k].append(round(v["f"] * 100, 4)) + + bleu_score = sentence_bleu([list(label)], list(pred), smoothing_function=SmoothingFunction().method3) + self.score_dict["bleu-4"].append(round(bleu_score * 100, 4)) + + if compute_result: + return self._dump() diff --git a/IOPO/Method-IOPO/src/llamafactory/train/sft/trainer.py b/IOPO/Method-IOPO/src/llamafactory/train/sft/trainer.py new file mode 100644 index 00000000..e4958aa2 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/train/sft/trainer.py @@ -0,0 +1,150 @@ +# Copyright 2024 HuggingFace Inc. and the LlamaFactory team. +# +# This code is inspired by the HuggingFace's transformers library. +# https://github.com/huggingface/transformers/blob/v4.40.0/src/transformers/trainer_seq2seq.py +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import json +import os +from types import MethodType +from typing import TYPE_CHECKING, Any, Dict, List, Optional, Tuple, Union + +import numpy as np +import torch +from transformers import Seq2SeqTrainer + +from ...extras.constants import IGNORE_INDEX +from ...extras.logging import get_logger +from ..callbacks import PissaConvertCallback, SaveProcessorCallback +from ..trainer_utils import create_custom_optimizer, create_custom_scheduler + + +if TYPE_CHECKING: + from torch.utils.data import Dataset + from transformers import ProcessorMixin + from transformers.trainer import PredictionOutput + + from ...hparams import FinetuningArguments + + +logger = get_logger(__name__) + + +class CustomSeq2SeqTrainer(Seq2SeqTrainer): + r""" + Inherits Seq2SeqTrainer to compute generative metrics such as BLEU and ROUGE. + """ + + def __init__( + self, finetuning_args: "FinetuningArguments", processor: Optional["ProcessorMixin"], **kwargs + ) -> None: + super().__init__(**kwargs) + self.finetuning_args = finetuning_args + + if processor is not None: + self.add_callback(SaveProcessorCallback(processor)) + + if finetuning_args.pissa_convert: + self.add_callback(PissaConvertCallback) + + if finetuning_args.use_badam: + from badam import BAdamCallback, clip_grad_norm_old_version + + self.accelerator.clip_grad_norm_ = MethodType(clip_grad_norm_old_version, self.accelerator) + self.add_callback(BAdamCallback) + + def create_optimizer(self) -> "torch.optim.Optimizer": + if self.optimizer is None: + self.optimizer = create_custom_optimizer(self.model, self.args, self.finetuning_args) + return super().create_optimizer() + + def create_scheduler( + self, num_training_steps: int, optimizer: Optional["torch.optim.Optimizer"] = None + ) -> "torch.optim.lr_scheduler.LRScheduler": + create_custom_scheduler(self.args, num_training_steps, optimizer) + return super().create_scheduler(num_training_steps, optimizer) + + def prediction_step( + self, + model: "torch.nn.Module", + inputs: Dict[str, Union[torch.Tensor, Any]], + prediction_loss_only: bool, + ignore_keys: Optional[List[str]] = None, + ) -> Tuple[Optional[float], Optional[torch.Tensor], Optional[torch.Tensor]]: + r""" + Removes the prompt part in the generated tokens. + + Subclass and override to inject custom behavior. + """ + labels = inputs["labels"].detach().clone() if "labels" in inputs else None # backup labels + if self.args.predict_with_generate: + assert self.tokenizer.padding_side == "left", "This method only accepts left-padded tensor." + prompt_len, label_len = inputs["input_ids"].size(-1), inputs["labels"].size(-1) + if prompt_len > label_len: + inputs["labels"] = self._pad_tensors_to_target_len(inputs["labels"], inputs["input_ids"]) + if label_len > prompt_len: # truncate the labels instead of padding the inputs (llama2 fp16 compatibility) + inputs["labels"] = inputs["labels"][:, :prompt_len] + + loss, generated_tokens, _ = super().prediction_step( # ignore the returned labels (may be truncated) + model, inputs, prediction_loss_only=prediction_loss_only, ignore_keys=ignore_keys + ) + if generated_tokens is not None and self.args.predict_with_generate: + generated_tokens[:, :prompt_len] = self.tokenizer.pad_token_id + generated_tokens = generated_tokens.contiguous() + + return loss, generated_tokens, labels + + def _pad_tensors_to_target_len(self, src_tensor: torch.Tensor, tgt_tensor: torch.Tensor) -> torch.Tensor: + r""" + Pads the tensor to the same length as the target tensor. + """ + assert self.tokenizer.pad_token_id is not None, "Pad token is required." + padded_tensor = self.tokenizer.pad_token_id * torch.ones_like(tgt_tensor) + padded_tensor[:, -src_tensor.shape[-1] :] = src_tensor # adopt left-padding + return padded_tensor.contiguous() # in contiguous memory + + def save_predictions(self, dataset: "Dataset", predict_results: "PredictionOutput") -> None: + r""" + Saves model predictions to `output_dir`. + + A custom behavior that not contained in Seq2SeqTrainer. + """ + if not self.is_world_process_zero(): + return + + output_prediction_file = os.path.join(self.args.output_dir, "generated_predictions.jsonl") + logger.info(f"Saving prediction results to {output_prediction_file}") + + labels = np.where( + predict_results.label_ids != IGNORE_INDEX, predict_results.label_ids, self.tokenizer.pad_token_id + ) + preds = np.where( + predict_results.predictions != IGNORE_INDEX, predict_results.predictions, self.tokenizer.pad_token_id + ) + + for i in range(len(preds)): + pad_len = np.nonzero(preds[i] != self.tokenizer.pad_token_id)[0] + if len(pad_len): # move pad token to last + preds[i] = np.concatenate((preds[i][pad_len[0] :], preds[i][: pad_len[0]]), axis=-1) + + decoded_inputs = self.tokenizer.batch_decode(dataset["input_ids"], skip_special_tokens=True) + decoded_labels = self.tokenizer.batch_decode(labels, skip_special_tokens=True) + decoded_preds = self.tokenizer.batch_decode(preds, skip_special_tokens=True) + + with open(output_prediction_file, "w", encoding="utf-8") as writer: + res: List[str] = [] + for text, label, pred in zip(decoded_inputs, decoded_labels, decoded_preds): + res.append(json.dumps({"prompt": text, "label": label, "predict": pred}, ensure_ascii=False)) + + writer.write("\n".join(res)) diff --git a/IOPO/Method-IOPO/src/llamafactory/train/sft/workflow.py b/IOPO/Method-IOPO/src/llamafactory/train/sft/workflow.py new file mode 100644 index 00000000..5da99557 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/train/sft/workflow.py @@ -0,0 +1,123 @@ +# Copyright 2024 HuggingFace Inc. and the LlamaFactory team. +# +# This code is inspired by the HuggingFace's transformers library. +# https://github.com/huggingface/transformers/blob/v4.40.0/examples/pytorch/summarization/run_summarization.py +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from typing import TYPE_CHECKING, List, Optional + +from ...data import SFTDataCollatorWith4DAttentionMask, get_dataset +from ...extras.constants import IGNORE_INDEX +from ...extras.misc import get_logits_processor +from ...extras.ploting import plot_loss +from ...model import load_model, load_tokenizer +from ..trainer_utils import create_modelcard_and_push +from .metric import ComputeAccuracy, ComputeSimilarity, eval_logit_processor +from .trainer import CustomSeq2SeqTrainer + + +if TYPE_CHECKING: + from transformers import Seq2SeqTrainingArguments, TrainerCallback + + from ...hparams import DataArguments, FinetuningArguments, GeneratingArguments, ModelArguments + + +def run_sft( + model_args: "ModelArguments", + data_args: "DataArguments", + training_args: "Seq2SeqTrainingArguments", + finetuning_args: "FinetuningArguments", + generating_args: "GeneratingArguments", + callbacks: Optional[List["TrainerCallback"]] = None, +): + tokenizer_module = load_tokenizer(model_args) + tokenizer = tokenizer_module["tokenizer"] + dataset_module = get_dataset(model_args, data_args, training_args, stage="sft", **tokenizer_module) + model = load_model(tokenizer, model_args, finetuning_args, training_args.do_train) + + if getattr(model, "is_quantized", False) and not training_args.do_train: + setattr(model, "_hf_peft_config_loaded", True) # hack here: make model compatible with prediction + + data_collator = SFTDataCollatorWith4DAttentionMask( + tokenizer=tokenizer, + pad_to_multiple_of=8 if training_args.do_train else None, # for shift short attention + label_pad_token_id=IGNORE_INDEX if data_args.ignore_pad_token_for_loss else tokenizer.pad_token_id, + block_diag_attn=model_args.block_diag_attn, + attn_implementation=getattr(model.config, "_attn_implementation", None), + compute_dtype=model_args.compute_dtype, + ) + + # Override the decoding parameters of Seq2SeqTrainer + training_args.generation_max_length = training_args.generation_max_length or data_args.cutoff_len + training_args.generation_num_beams = data_args.eval_num_beams or training_args.generation_num_beams + training_args.remove_unused_columns = False if model_args.visual_inputs else training_args.remove_unused_columns + + # Metric utils + metric_module = {} + if training_args.predict_with_generate: + metric_module["compute_metrics"] = ComputeSimilarity(tokenizer=tokenizer) + elif finetuning_args.compute_accuracy: + metric_module["compute_metrics"] = ComputeAccuracy() + metric_module["preprocess_logits_for_metrics"] = eval_logit_processor + + # Initialize our Trainer + trainer = CustomSeq2SeqTrainer( + model=model, + args=training_args, + finetuning_args=finetuning_args, + data_collator=data_collator, + callbacks=callbacks, + **dataset_module, + **tokenizer_module, + **metric_module, + ) + + # Keyword arguments for `model.generate` + gen_kwargs = generating_args.to_dict() + gen_kwargs["eos_token_id"] = [tokenizer.eos_token_id] + tokenizer.additional_special_tokens_ids + gen_kwargs["pad_token_id"] = tokenizer.pad_token_id + gen_kwargs["logits_processor"] = get_logits_processor() + + # Training + if training_args.do_train: + train_result = trainer.train(resume_from_checkpoint=training_args.resume_from_checkpoint) + trainer.save_model() + trainer.log_metrics("train", train_result.metrics) + trainer.save_metrics("train", train_result.metrics) + trainer.save_state() + if trainer.is_world_process_zero() and finetuning_args.plot_loss: + plot_loss(training_args.output_dir, keys=["loss", "eval_loss", "eval_accuracy"]) + + if training_args.predict_with_generate: + tokenizer.padding_side = "left" # use left-padding in generation + + # Evaluation + if training_args.do_eval: + metrics = trainer.evaluate(metric_key_prefix="eval", **gen_kwargs) + if training_args.predict_with_generate: # eval_loss will be wrong if predict_with_generate is enabled + metrics.pop("eval_loss", None) + trainer.log_metrics("eval", metrics) + trainer.save_metrics("eval", metrics) + + # Predict + if training_args.do_predict: + predict_results = trainer.predict(dataset_module["eval_dataset"], metric_key_prefix="predict", **gen_kwargs) + if training_args.predict_with_generate: # predict_loss will be wrong if predict_with_generate is enabled + predict_results.metrics.pop("predict_loss", None) + trainer.log_metrics("predict", predict_results.metrics) + trainer.save_metrics("predict", predict_results.metrics) + trainer.save_predictions(dataset_module["eval_dataset"], predict_results) + + # Create model card + create_modelcard_and_push(trainer, model_args, data_args, training_args, finetuning_args) diff --git a/IOPO/Method-IOPO/src/llamafactory/train/test_utils.py b/IOPO/Method-IOPO/src/llamafactory/train/test_utils.py new file mode 100644 index 00000000..fedc873d --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/train/test_utils.py @@ -0,0 +1,118 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from typing import TYPE_CHECKING, Dict, Optional, Sequence, Set, Tuple, Union + +import torch +from peft import PeftModel +from transformers import AutoModelForCausalLM +from trl import AutoModelForCausalLMWithValueHead + +from ..data import get_dataset +from ..extras.misc import get_current_device +from ..hparams import get_infer_args, get_train_args +from ..model import load_model, load_tokenizer + + +if TYPE_CHECKING: + from datasets import Dataset + from peft import LoraModel + from transformers import PreTrainedModel + + +def compare_model(model_a: "torch.nn.Module", model_b: "torch.nn.Module", diff_keys: Sequence[str] = []) -> None: + state_dict_a = model_a.state_dict() + state_dict_b = model_b.state_dict() + assert set(state_dict_a.keys()) == set(state_dict_b.keys()) + for name in state_dict_a.keys(): + if any(key in name for key in diff_keys): + assert torch.allclose(state_dict_a[name], state_dict_b[name], rtol=1e-4, atol=1e-5) is False + else: + assert torch.allclose(state_dict_a[name], state_dict_b[name], rtol=1e-4, atol=1e-5) is True + + +def check_lora_model(model: "LoraModel") -> Tuple[Set[str], Set[str]]: + linear_modules, extra_modules = set(), set() + for name, param in model.named_parameters(): + if any(module in name for module in ["lora_A", "lora_B"]): + linear_modules.add(name.split(".lora_", maxsplit=1)[0].split(".")[-1]) + assert param.requires_grad is True + assert param.dtype == torch.float32 + elif "modules_to_save" in name: + extra_modules.add(name.split(".modules_to_save", maxsplit=1)[0].split(".")[-1]) + assert param.requires_grad is True + assert param.dtype == torch.float32 + else: + assert param.requires_grad is False + assert param.dtype == torch.float16 + + return linear_modules, extra_modules + + +def load_train_model(add_valuehead: bool = False, **kwargs) -> "PreTrainedModel": + model_args, _, _, finetuning_args, _ = get_train_args(kwargs) + tokenizer = load_tokenizer(model_args)["tokenizer"] + return load_model(tokenizer, model_args, finetuning_args, is_trainable=True, add_valuehead=add_valuehead) + + +def load_infer_model(add_valuehead: bool = False, **kwargs) -> "PreTrainedModel": + model_args, _, finetuning_args, _ = get_infer_args(kwargs) + tokenizer = load_tokenizer(model_args)["tokenizer"] + return load_model(tokenizer, model_args, finetuning_args, is_trainable=False, add_valuehead=add_valuehead) + + +def load_reference_model( + model_path: str, + lora_path: Optional[str] = None, + use_lora: bool = False, + use_pissa: bool = False, + is_trainable: bool = False, + add_valuehead: bool = False, +) -> Union["PreTrainedModel", "LoraModel"]: + if add_valuehead: + model: "AutoModelForCausalLMWithValueHead" = AutoModelForCausalLMWithValueHead.from_pretrained( + model_path, torch_dtype=torch.float16, device_map=get_current_device() + ) + if not is_trainable: + model.v_head = model.v_head.to(torch.float16) + + return model + + model = AutoModelForCausalLM.from_pretrained( + model_path, torch_dtype=torch.float16, device_map=get_current_device() + ) + if use_lora or use_pissa: + model = PeftModel.from_pretrained( + model, lora_path, subfolder="pissa_init" if use_pissa else None, is_trainable=is_trainable + ) + for param in filter(lambda p: p.requires_grad, model.parameters()): + param.data = param.data.to(torch.float32) + + return model + + +def load_train_dataset(**kwargs) -> "Dataset": + model_args, data_args, training_args, _, _ = get_train_args(kwargs) + tokenizer_module = load_tokenizer(model_args) + dataset_module = get_dataset(model_args, data_args, training_args, stage=kwargs["stage"], **tokenizer_module) + return dataset_module["train_dataset"] + + +def patch_valuehead_model(): + def post_init(self: "AutoModelForCausalLMWithValueHead", state_dict: Dict[str, "torch.Tensor"]) -> None: + state_dict = {k[7:]: state_dict[k] for k in state_dict.keys() if k.startswith("v_head.")} + self.v_head.load_state_dict(state_dict, strict=False) + del state_dict + + AutoModelForCausalLMWithValueHead.post_init = post_init diff --git a/IOPO/Method-IOPO/src/llamafactory/train/trainer_utils.py b/IOPO/Method-IOPO/src/llamafactory/train/trainer_utils.py new file mode 100644 index 00000000..2fa149a0 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/train/trainer_utils.py @@ -0,0 +1,456 @@ +# Copyright 2024 HuggingFace Inc. and the LlamaFactory team. +# +# This code is inspired by the original GaLore's implementation: https://github.com/jiaweizzhao/GaLore +# and the original LoRA+'s implementation: https://github.com/nikhil-ghosh-berkeley/loraplus +# and the original BAdam's implementation: https://github.com/Ledzy/BAdam +# and the HuggingFace's TRL library: https://github.com/huggingface/trl +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from typing import TYPE_CHECKING, Callable, Dict, List, Optional, Tuple, Union + +import torch +from transformers import Trainer +from transformers.integrations import is_deepspeed_zero3_enabled +from transformers.modeling_utils import is_fsdp_enabled +from transformers.optimization import get_scheduler +from transformers.pytorch_utils import ALL_LAYERNORM_LAYERS +from transformers.trainer_pt_utils import get_parameter_names + +from ..extras.constants import IGNORE_INDEX +from ..extras.logging import get_logger +from ..extras.packages import is_galore_available +from ..hparams import FinetuningArguments, ModelArguments +from ..model import find_all_linear_modules, load_model, load_tokenizer, load_valuehead_params + + +if is_galore_available(): + from galore_torch import GaLoreAdafactor, GaLoreAdamW, GaLoreAdamW8bit + + +if TYPE_CHECKING: + from transformers import PreTrainedModel, Seq2SeqTrainingArguments + from trl import AutoModelForCausalLMWithValueHead + + from ..hparams import DataArguments + + +logger = get_logger(__name__) + + +class DummyOptimizer(torch.optim.Optimizer): + r""" + A dummy optimizer used for the GaLore algorithm. + """ + + def __init__( + self, lr: float = 1e-3, optimizer_dict: Optional[Dict["torch.nn.Parameter", "torch.optim.Optimizer"]] = None + ) -> None: + dummy_tensor = torch.randn(1, 1) + self.optimizer_dict = optimizer_dict + super().__init__([dummy_tensor], {"lr": lr}) + + def zero_grad(self, set_to_none: bool = True) -> None: + pass + + def step(self, closure: Optional[Callable[[], float]] = None) -> Optional[float]: + pass + + +def create_modelcard_and_push( + trainer: "Trainer", + model_args: "ModelArguments", + data_args: "DataArguments", + training_args: "Seq2SeqTrainingArguments", + finetuning_args: "FinetuningArguments", +) -> None: + kwargs = { + "tasks": "text-generation", + "finetuned_from": model_args.model_name_or_path, + "tags": ["llama-factory", finetuning_args.finetuning_type], + } + if data_args.dataset is not None: + kwargs["dataset"] = data_args.dataset + + if model_args.use_unsloth: + kwargs["tags"] = kwargs["tags"] + ["unsloth"] + + if not training_args.do_train: + pass + elif training_args.push_to_hub: + trainer.push_to_hub(**kwargs) + else: + trainer.create_model_card(license="other", **kwargs) # prevent from connecting to hub + + +def create_ref_model( + model_args: "ModelArguments", finetuning_args: "FinetuningArguments", add_valuehead: bool = False +) -> Optional[Union["PreTrainedModel", "AutoModelForCausalLMWithValueHead"]]: + r""" + Creates reference model for PPO/DPO training. Evaluation mode is not supported. + + The valuehead parameter is randomly initialized since it is useless for PPO training. + """ + if finetuning_args.ref_model is not None: + ref_model_args = ModelArguments.copyfrom( + model_args, + model_name_or_path=finetuning_args.ref_model, + adapter_name_or_path=finetuning_args.ref_model_adapters, + quantization_bit=finetuning_args.ref_model_quantization_bit, + ) + ref_finetuning_args = FinetuningArguments() + tokenizer = load_tokenizer(ref_model_args)["tokenizer"] + ref_model = load_model( + tokenizer, ref_model_args, ref_finetuning_args, is_trainable=False, add_valuehead=add_valuehead + ) + logger.info("Created reference model from {}".format(finetuning_args.ref_model)) + else: + if finetuning_args.finetuning_type == "lora": + ref_model = None + else: + ref_model_args = ModelArguments.copyfrom(model_args) + ref_finetuning_args = FinetuningArguments() + tokenizer = load_tokenizer(ref_model_args)["tokenizer"] + ref_model = load_model( + tokenizer, ref_model_args, ref_finetuning_args, is_trainable=False, add_valuehead=add_valuehead + ) + logger.info("Created reference model from the model itself.") + + return ref_model + + +def create_reward_model( + model: "AutoModelForCausalLMWithValueHead", model_args: "ModelArguments", finetuning_args: "FinetuningArguments" +) -> Optional["AutoModelForCausalLMWithValueHead"]: + r""" + Creates reward model for PPO training. + """ + if finetuning_args.reward_model_type == "api": + assert finetuning_args.reward_model.startswith("http"), "Please provide full url." + logger.info("Use reward server {}".format(finetuning_args.reward_model)) + return finetuning_args.reward_model + elif finetuning_args.reward_model_type == "lora": + model.pretrained_model.load_adapter(finetuning_args.reward_model, "reward") + for name, param in model.named_parameters(): # https://github.com/huggingface/peft/issues/1090 + if "default" in name: + param.data = param.data.to(torch.float32) # trainable params should in fp32 + vhead_params = load_valuehead_params(finetuning_args.reward_model, model_args) + assert vhead_params is not None, "Reward model is not correctly loaded." + model.register_buffer("reward_head_weight", vhead_params["v_head.summary.weight"], persistent=False) + model.register_buffer("reward_head_bias", vhead_params["v_head.summary.bias"], persistent=False) + model.register_buffer( + "default_head_weight", torch.zeros_like(vhead_params["v_head.summary.weight"]), persistent=False + ) + model.register_buffer( + "default_head_bias", torch.zeros_like(vhead_params["v_head.summary.bias"]), persistent=False + ) + logger.info("Loaded adapter weights of reward model from {}".format(finetuning_args.reward_model)) + return None + else: + reward_model_args = ModelArguments.copyfrom( + model_args, + model_name_or_path=finetuning_args.reward_model, + adapter_name_or_path=finetuning_args.reward_model_adapters, + quantization_bit=finetuning_args.reward_model_quantization_bit, + ) + reward_finetuning_args = FinetuningArguments() + tokenizer = load_tokenizer(reward_model_args)["tokenizer"] + reward_model = load_model( + tokenizer, reward_model_args, reward_finetuning_args, is_trainable=False, add_valuehead=True + ) + logger.info("Loaded full weights of reward model from {}".format(finetuning_args.reward_model)) + logger.warning("Please ensure the ppo model and reward model share SAME tokenizer and vocabulary.") + return reward_model + + +def _get_decay_parameter_names(model: "PreTrainedModel") -> List[str]: + r""" + Returns a list of names of parameters with weight decay. (weights in non-layernorm layers) + """ + decay_parameters = get_parameter_names(model, ALL_LAYERNORM_LAYERS) + decay_parameters = [name for name in decay_parameters if "bias" not in name] + return decay_parameters + + +def _create_galore_optimizer( + model: "PreTrainedModel", + training_args: "Seq2SeqTrainingArguments", + finetuning_args: "FinetuningArguments", +) -> "torch.optim.Optimizer": + if len(finetuning_args.galore_target) == 1 and finetuning_args.galore_target[0] == "all": + galore_targets = find_all_linear_modules(model, finetuning_args.freeze_vision_tower) + else: + galore_targets = finetuning_args.galore_target + + galore_params: List["torch.nn.Parameter"] = [] + for name, module in model.named_modules(): + if isinstance(module, torch.nn.Linear) and any(target in name for target in galore_targets): + for param in module.parameters(): + if param.requires_grad and len(param.shape) > 1: + galore_params.append(param) + + galore_kwargs = { + "rank": finetuning_args.galore_rank, + "update_proj_gap": finetuning_args.galore_update_interval, + "scale": finetuning_args.galore_scale, + "proj_type": finetuning_args.galore_proj_type, + } + + id_galore_params = {id(param) for param in galore_params} + decay_params, nodecay_params = [], [] # they are non-galore parameters + trainable_params: List["torch.nn.Parameter"] = [] # galore_params + decay_params + nodecay_params + decay_param_names = _get_decay_parameter_names(model) + for name, param in model.named_parameters(): + if param.requires_grad: + trainable_params.append(param) + if id(param) not in id_galore_params: + if name in decay_param_names: + decay_params.append(param) + else: + nodecay_params.append(param) + + _, optim_kwargs = Trainer.get_optimizer_cls_and_kwargs(training_args) + + if training_args.optim == "adamw_torch": + optim_class = GaLoreAdamW + elif training_args.optim in ["adamw_bnb_8bit", "adamw_8bit", "paged_adamw_8bit"]: + optim_class = GaLoreAdamW8bit + elif training_args.optim == "adafactor": + optim_class = GaLoreAdafactor + else: + raise NotImplementedError("Unknow optim: {}".format(training_args.optim)) + + if finetuning_args.galore_layerwise: + if training_args.gradient_accumulation_steps != 1: + raise ValueError("Per-layer GaLore does not support gradient accumulation.") + + optimizer_dict: Dict["torch.Tensor", "torch.optim.Optimizer"] = {} + for param in nodecay_params: + param_groups = [dict(params=[param], weight_decay=0.0)] + optimizer_dict[param] = optim_class(param_groups, **optim_kwargs) + for param in decay_params: + param_groups = [dict(params=[param], weight_decay=training_args.weight_decay)] + optimizer_dict[param] = optim_class(param_groups, **optim_kwargs) + for param in galore_params: # galore params have weight decay + param_groups = [dict(params=[param], weight_decay=training_args.weight_decay, **galore_kwargs)] + optimizer_dict[param] = optim_class(param_groups, **optim_kwargs) + + def optimizer_hook(param: "torch.nn.Parameter"): + if param.grad is not None: + optimizer_dict[param].step() + optimizer_dict[param].zero_grad() + + for param in trainable_params: + param.register_post_accumulate_grad_hook(optimizer_hook) + + optimizer = DummyOptimizer(lr=training_args.learning_rate, optimizer_dict=optimizer_dict) + else: + param_groups = [ + dict(params=nodecay_params, weight_decay=0.0), + dict(params=decay_params, weight_decay=training_args.weight_decay), + dict(params=galore_params, weight_decay=training_args.weight_decay, **galore_kwargs), + ] + optimizer = optim_class(param_groups, **optim_kwargs) + + logger.info("Using GaLore optimizer, may cause hanging at the start of training, wait patiently.") + return optimizer + + +def _create_loraplus_optimizer( + model: "PreTrainedModel", + training_args: "Seq2SeqTrainingArguments", + finetuning_args: "FinetuningArguments", +) -> "torch.optim.Optimizer": + default_lr = training_args.learning_rate + loraplus_lr = training_args.learning_rate * finetuning_args.loraplus_lr_ratio + embedding_lr = finetuning_args.loraplus_lr_embedding + + decay_param_names = _get_decay_parameter_names(model) + param_dict: Dict[str, List["torch.nn.Parameter"]] = { + "lora_a": [], + "lora_b": [], + "lora_b_nodecay": [], + "embedding": [], + } + for name, param in model.named_parameters(): + if param.requires_grad: + if "lora_embedding_B" in name: + param_dict["embedding"].append(param) + elif "lora_B" in name or param.ndim == 1: + if name in decay_param_names: + param_dict["lora_b"].append(param) + else: + param_dict["lora_b_nodecay"].append(param) + else: + param_dict["lora_a"].append(param) + + optim_class, optim_kwargs = Trainer.get_optimizer_cls_and_kwargs(training_args) + param_groups = [ + dict(params=param_dict["lora_a"], lr=default_lr, weight_decay=training_args.weight_decay), + dict(params=param_dict["lora_b"], lr=loraplus_lr, weight_decay=training_args.weight_decay), + dict(params=param_dict["lora_b_nodecay"], lr=loraplus_lr, weight_decay=0.0), + dict(params=param_dict["embedding"], lr=embedding_lr, weight_decay=training_args.weight_decay), + ] + optimizer = optim_class(param_groups, **optim_kwargs) + logger.info("Using LoRA+ optimizer with loraplus lr ratio {:.2f}.".format(finetuning_args.loraplus_lr_ratio)) + return optimizer + + +def _create_badam_optimizer( + model: "PreTrainedModel", + training_args: "Seq2SeqTrainingArguments", + finetuning_args: "FinetuningArguments", +) -> "torch.optim.Optimizer": + decay_params, nodecay_params = [], [] + decay_param_names = _get_decay_parameter_names(model) + for name, param in model.named_parameters(): + if param.requires_grad: + if name in decay_param_names: + decay_params.append(param) + else: + nodecay_params.append(param) + + optim_class, optim_kwargs = Trainer.get_optimizer_cls_and_kwargs(training_args) + param_groups = [ + dict(params=nodecay_params, weight_decay=0.0), + dict(params=decay_params, weight_decay=training_args.weight_decay), + ] + + if finetuning_args.badam_mode == "layer": + from badam import BlockOptimizer + + base_optimizer = optim_class(param_groups, **optim_kwargs) + optimizer = BlockOptimizer( + base_optimizer=base_optimizer, + named_parameters_list=list(model.named_parameters()), + block_prefix_list=None, + switch_block_every=finetuning_args.badam_switch_interval, + start_block=finetuning_args.badam_start_block, + switch_mode=finetuning_args.badam_switch_mode, + verbose=finetuning_args.badam_verbose, + ds_zero3_enabled=is_deepspeed_zero3_enabled(), + ) + logger.info( + f"Using BAdam optimizer with layer-wise update, switch mode is {finetuning_args.badam_switch_mode}, " + f"switch block every {finetuning_args.badam_switch_interval} steps, " + f"default start block is {finetuning_args.badam_start_block}" + ) + + elif finetuning_args.badam_mode == "ratio": + from badam import BlockOptimizerRatio + + assert finetuning_args.badam_update_ratio > 1e-6 + optimizer = BlockOptimizerRatio( + param_groups=param_groups, + named_parameters_list=list(model.named_parameters()), + update_ratio=finetuning_args.badam_update_ratio, + mask_mode=finetuning_args.badam_mask_mode, + verbose=finetuning_args.badam_verbose, + include_embedding=False, + **optim_kwargs, + ) + logger.info( + f"Using BAdam optimizer with ratio-based update, update ratio is {finetuning_args.badam_update_ratio}, " + f"mask mode is {finetuning_args.badam_mask_mode}" + ) + + return optimizer + + +def _create_adam_mini_optimizer( + model: "PreTrainedModel", + training_args: "Seq2SeqTrainingArguments", +) -> "torch.optim.Optimizer": + from adam_mini import Adam_mini + + hidden_size = getattr(model.config, "hidden_size", None) + num_q_head = getattr(model.config, "num_attention_heads", None) + num_kv_head = getattr(model.config, "num_key_value_heads", None) + + optimizer = Adam_mini( + named_parameters=model.named_parameters(), + lr=training_args.learning_rate, + betas=(training_args.adam_beta1, training_args.adam_beta2), + eps=training_args.adam_epsilon, + weight_decay=training_args.weight_decay, + model_sharding=is_fsdp_enabled() or is_deepspeed_zero3_enabled(), + dim=hidden_size, + n_heads=num_q_head, + n_kv_heads=num_kv_head, + ) + logger.info("Using Adam-mini optimizer.") + return optimizer + + +def create_custom_optimizer( + model: "PreTrainedModel", + training_args: "Seq2SeqTrainingArguments", + finetuning_args: "FinetuningArguments", +) -> Optional["torch.optim.Optimizer"]: + if finetuning_args.use_galore: + return _create_galore_optimizer(model, training_args, finetuning_args) + + if finetuning_args.loraplus_lr_ratio is not None: + return _create_loraplus_optimizer(model, training_args, finetuning_args) + + if finetuning_args.use_badam: + return _create_badam_optimizer(model, training_args, finetuning_args) + + if finetuning_args.use_adam_mini: + return _create_adam_mini_optimizer(model, training_args) + + +def create_custom_scheduler( + training_args: "Seq2SeqTrainingArguments", + num_training_steps: int, + optimizer: Optional["torch.optim.Optimizer"] = None, +) -> None: + if optimizer is not None and isinstance(optimizer, DummyOptimizer): + optimizer_dict = optimizer.optimizer_dict + scheduler_dict: Dict["torch.nn.Parameter", "torch.optim.lr_scheduler.LRScheduler"] = {} + + for param in optimizer_dict.keys(): + scheduler_dict[param] = get_scheduler( + training_args.lr_scheduler_type, + optimizer=optimizer_dict[param], + num_warmup_steps=training_args.get_warmup_steps(num_training_steps), + num_training_steps=num_training_steps, + scheduler_specific_kwargs=training_args.lr_scheduler_kwargs, + ) + + def scheduler_hook(param: "torch.nn.Parameter"): + scheduler_dict[param].step() + + for param in optimizer_dict.keys(): + param.register_post_accumulate_grad_hook(scheduler_hook) + + +def get_batch_logps( + logits: "torch.Tensor", labels: "torch.Tensor", label_pad_token_id: int = IGNORE_INDEX +) -> Tuple["torch.Tensor", "torch.Tensor"]: + r""" + Computes the log probabilities of the given labels under the given logits. + + Returns: + logps: A tensor of shape (batch_size,) containing the sum of log probabilities. + valid_length: A tensor of shape (batch_size,) containing the number of non-masked tokens. + """ + if logits.shape[:-1] != labels.shape: + raise ValueError("Logits (batchsize x seqlen) and labels must have the same shape.") + + labels = labels[:, 1:].clone() + logits = logits[:, :-1, :] + loss_mask = labels != label_pad_token_id + labels[labels == label_pad_token_id] = 0 # dummy token + per_token_logps = torch.gather(logits.log_softmax(-1), dim=2, index=labels.unsqueeze(2)).squeeze(2) + return (per_token_logps * loss_mask).sum(-1), loss_mask.sum(-1) diff --git a/IOPO/Method-IOPO/src/llamafactory/train/tuner.py b/IOPO/Method-IOPO/src/llamafactory/train/tuner.py new file mode 100644 index 00000000..3d580d5e --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/train/tuner.py @@ -0,0 +1,147 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import os +import shutil +from typing import TYPE_CHECKING, Any, Dict, List, Optional + +import torch +from transformers import PreTrainedModel + +from ..data import get_template_and_fix_tokenizer +from ..extras.constants import V_HEAD_SAFE_WEIGHTS_NAME, V_HEAD_WEIGHTS_NAME +from ..extras.logging import get_logger +from ..hparams import get_infer_args, get_train_args +from ..model import load_model, load_tokenizer +from .callbacks import LogCallback +from .dpo import run_dpo +from .kto import run_kto +from .ppo import run_ppo +from .pt import run_pt +from .rm import run_rm +from .sft import run_sft +from .iopo import run_iopo +# from .cipo_simpo import run_cipo #######修改#### + + +if TYPE_CHECKING: + from transformers import TrainerCallback + + +logger = get_logger(__name__) + + +def run_exp(args: Optional[Dict[str, Any]] = None, callbacks: List["TrainerCallback"] = []) -> None: + callbacks.append(LogCallback()) + model_args, data_args, training_args, finetuning_args, generating_args = get_train_args(args) + + if finetuning_args.stage == "pt": + run_pt(model_args, data_args, training_args, finetuning_args, callbacks) + elif finetuning_args.stage == "sft": + run_sft(model_args, data_args, training_args, finetuning_args, generating_args, callbacks) + elif finetuning_args.stage == "rm": + run_rm(model_args, data_args, training_args, finetuning_args, callbacks) + elif finetuning_args.stage == "ppo": + run_ppo(model_args, data_args, training_args, finetuning_args, generating_args, callbacks) + elif finetuning_args.stage == "dpo": + run_dpo(model_args, data_args, training_args, finetuning_args, callbacks) + elif finetuning_args.stage == "kto": + run_kto(model_args, data_args, training_args, finetuning_args, callbacks) + elif finetuning_args.stage == "iopo": + run_iopo(model_args, data_args, training_args, finetuning_args, callbacks) + else: + raise ValueError("Unknown task: {}.".format(finetuning_args.stage)) + + +def export_model(args: Optional[Dict[str, Any]] = None) -> None: + model_args, data_args, finetuning_args, _ = get_infer_args(args) + + if model_args.export_dir is None: + raise ValueError("Please specify `export_dir` to save model.") + + if model_args.adapter_name_or_path is not None and model_args.export_quantization_bit is not None: + raise ValueError("Please merge adapters before quantizing the model.") + + tokenizer_module = load_tokenizer(model_args) + tokenizer = tokenizer_module["tokenizer"] + processor = tokenizer_module["processor"] + get_template_and_fix_tokenizer(tokenizer, data_args.template) + model = load_model(tokenizer, model_args, finetuning_args) # must after fixing tokenizer to resize vocab + + if getattr(model, "quantization_method", None) is not None and model_args.adapter_name_or_path is not None: + raise ValueError("Cannot merge adapters to a quantized model.") + + if not isinstance(model, PreTrainedModel): + raise ValueError("The model is not a `PreTrainedModel`, export aborted.") + + if getattr(model, "quantization_method", None) is not None: # quantized model adopts float16 type + setattr(model.config, "torch_dtype", torch.float16) + else: + if model_args.infer_dtype == "auto": + output_dtype = getattr(model.config, "torch_dtype", torch.float16) + else: + output_dtype = getattr(torch, model_args.infer_dtype) + + setattr(model.config, "torch_dtype", output_dtype) + model = model.to(output_dtype) + logger.info("Convert model dtype to: {}.".format(output_dtype)) + + model.save_pretrained( + save_directory=model_args.export_dir, + max_shard_size="{}GB".format(model_args.export_size), + safe_serialization=(not model_args.export_legacy_format), + ) + if model_args.export_hub_model_id is not None: + model.push_to_hub( + model_args.export_hub_model_id, + token=model_args.hf_hub_token, + max_shard_size="{}GB".format(model_args.export_size), + safe_serialization=(not model_args.export_legacy_format), + ) + + if finetuning_args.stage == "rm": + if model_args.adapter_name_or_path is not None: + vhead_path = model_args.adapter_name_or_path[-1] + else: + vhead_path = model_args.model_name_or_path + + if os.path.exists(os.path.join(vhead_path, V_HEAD_SAFE_WEIGHTS_NAME)): + shutil.copy( + os.path.join(vhead_path, V_HEAD_SAFE_WEIGHTS_NAME), + os.path.join(model_args.export_dir, V_HEAD_SAFE_WEIGHTS_NAME), + ) + logger.info("Copied valuehead to {}.".format(model_args.export_dir)) + elif os.path.exists(os.path.join(vhead_path, V_HEAD_WEIGHTS_NAME)): + shutil.copy( + os.path.join(vhead_path, V_HEAD_WEIGHTS_NAME), + os.path.join(model_args.export_dir, V_HEAD_WEIGHTS_NAME), + ) + logger.info("Copied valuehead to {}.".format(model_args.export_dir)) + + try: + tokenizer.padding_side = "left" # restore padding side + tokenizer.init_kwargs["padding_side"] = "left" + tokenizer.save_pretrained(model_args.export_dir) + if model_args.export_hub_model_id is not None: + tokenizer.push_to_hub(model_args.export_hub_model_id, token=model_args.hf_hub_token) + + if model_args.visual_inputs and processor is not None: + getattr(processor, "image_processor").save_pretrained(model_args.export_dir) + if model_args.export_hub_model_id is not None: + getattr(processor, "image_processor").push_to_hub( + model_args.export_hub_model_id, token=model_args.hf_hub_token + ) + + except Exception: + logger.warning("Cannot save tokenizer, please copy the files manually.") diff --git a/IOPO/Method-IOPO/src/llamafactory/webui/__init__.py b/IOPO/Method-IOPO/src/llamafactory/webui/__init__.py new file mode 100644 index 00000000..e69de29b diff --git a/IOPO/Method-IOPO/src/llamafactory/webui/chatter.py b/IOPO/Method-IOPO/src/llamafactory/webui/chatter.py new file mode 100644 index 00000000..8abef920 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/webui/chatter.py @@ -0,0 +1,164 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import json +import os +from typing import TYPE_CHECKING, Dict, Generator, List, Optional, Sequence, Tuple + +from numpy.typing import NDArray + +from ..chat import ChatModel +from ..data import Role +from ..extras.constants import PEFT_METHODS +from ..extras.misc import torch_gc +from ..extras.packages import is_gradio_available +from .common import QUANTIZATION_BITS, get_save_dir +from .locales import ALERTS + + +if TYPE_CHECKING: + from ..chat import BaseEngine + from .manager import Manager + + +if is_gradio_available(): + import gradio as gr + + +class WebChatModel(ChatModel): + def __init__(self, manager: "Manager", demo_mode: bool = False, lazy_init: bool = True) -> None: + self.manager = manager + self.demo_mode = demo_mode + self.engine: Optional["BaseEngine"] = None + + if not lazy_init: # read arguments from command line + super().__init__() + + if demo_mode and os.environ.get("DEMO_MODEL") and os.environ.get("DEMO_TEMPLATE"): # load demo model + model_name_or_path = os.environ.get("DEMO_MODEL") + template = os.environ.get("DEMO_TEMPLATE") + infer_backend = os.environ.get("DEMO_BACKEND", "huggingface") + super().__init__( + dict(model_name_or_path=model_name_or_path, template=template, infer_backend=infer_backend) + ) + + @property + def loaded(self) -> bool: + return self.engine is not None + + def load_model(self, data) -> Generator[str, None, None]: + get = lambda elem_id: data[self.manager.get_elem_by_id(elem_id)] + lang, model_name, model_path = get("top.lang"), get("top.model_name"), get("top.model_path") + finetuning_type, checkpoint_path = get("top.finetuning_type"), get("top.checkpoint_path") + error = "" + if self.loaded: + error = ALERTS["err_exists"][lang] + elif not model_name: + error = ALERTS["err_no_model"][lang] + elif not model_path: + error = ALERTS["err_no_path"][lang] + elif self.demo_mode: + error = ALERTS["err_demo"][lang] + + if error: + gr.Warning(error) + yield error + return + + if get("top.quantization_bit") in QUANTIZATION_BITS: + quantization_bit = int(get("top.quantization_bit")) + else: + quantization_bit = None + + yield ALERTS["info_loading"][lang] + args = dict( + model_name_or_path=model_path, + finetuning_type=finetuning_type, + quantization_bit=quantization_bit, + quantization_method=get("top.quantization_method"), + template=get("top.template"), + flash_attn="fa2" if get("top.booster") == "flashattn2" else "auto", + use_unsloth=(get("top.booster") == "unsloth"), + visual_inputs=get("top.visual_inputs"), + rope_scaling=get("top.rope_scaling") if get("top.rope_scaling") in ["linear", "dynamic"] else None, + infer_backend=get("infer.infer_backend"), + infer_dtype=get("infer.infer_dtype"), + ) + + if checkpoint_path: + if finetuning_type in PEFT_METHODS: # list + args["adapter_name_or_path"] = ",".join( + [get_save_dir(model_name, finetuning_type, adapter) for adapter in checkpoint_path] + ) + else: # str + args["model_name_or_path"] = get_save_dir(model_name, finetuning_type, checkpoint_path) + + super().__init__(args) + yield ALERTS["info_loaded"][lang] + + def unload_model(self, data) -> Generator[str, None, None]: + lang = data[self.manager.get_elem_by_id("top.lang")] + + if self.demo_mode: + gr.Warning(ALERTS["err_demo"][lang]) + yield ALERTS["err_demo"][lang] + return + + yield ALERTS["info_unloading"][lang] + self.engine = None + torch_gc() + yield ALERTS["info_unloaded"][lang] + + def append( + self, + chatbot: List[List[Optional[str]]], + messages: Sequence[Dict[str, str]], + role: str, + query: str, + ) -> Tuple[List[List[Optional[str]]], List[Dict[str, str]], str]: + return chatbot + [[query, None]], messages + [{"role": role, "content": query}], "" + + def stream( + self, + chatbot: List[List[Optional[str]]], + messages: Sequence[Dict[str, str]], + system: str, + tools: str, + image: Optional[NDArray], + max_new_tokens: int, + top_p: float, + temperature: float, + ) -> Generator[Tuple[List[List[Optional[str]]], List[Dict[str, str]]], None, None]: + chatbot[-1][1] = "" + response = "" + for new_text in self.stream_chat( + messages, system, tools, image, max_new_tokens=max_new_tokens, top_p=top_p, temperature=temperature + ): + response += new_text + if tools: + result = self.engine.template.extract_tool(response) + else: + result = response + + if isinstance(result, list): + tool_calls = [{"name": tool[0], "arguments": json.loads(tool[1])} for tool in result] + tool_calls = json.dumps(tool_calls, indent=4, ensure_ascii=False) + output_messages = messages + [{"role": Role.FUNCTION.value, "content": tool_calls}] + bot_text = "```json\n" + tool_calls + "\n```" + else: + output_messages = messages + [{"role": Role.ASSISTANT.value, "content": result}] + bot_text = result + + chatbot[-1][1] = bot_text + yield chatbot, output_messages diff --git a/IOPO/Method-IOPO/src/llamafactory/webui/common.py b/IOPO/Method-IOPO/src/llamafactory/webui/common.py new file mode 100644 index 00000000..e83cadd9 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/webui/common.py @@ -0,0 +1,196 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import json +import os +from collections import defaultdict +from typing import Any, Dict, Optional, Tuple + +from yaml import safe_dump, safe_load + +from ..extras.constants import ( + CHECKPOINT_NAMES, + DATA_CONFIG, + DEFAULT_TEMPLATE, + PEFT_METHODS, + STAGES_USE_PAIR_DATA, + SUPPORTED_MODELS, + TRAINING_STAGES, + VISION_MODELS, + DownloadSource, +) +from ..extras.logging import get_logger +from ..extras.misc import use_modelscope +from ..extras.packages import is_gradio_available + + +if is_gradio_available(): + import gradio as gr + + +logger = get_logger(__name__) + + +DEFAULT_CACHE_DIR = "cache" +DEFAULT_CONFIG_DIR = "config" +DEFAULT_DATA_DIR = "data" +DEFAULT_SAVE_DIR = "saves" +USER_CONFIG = "user_config.yaml" +QUANTIZATION_BITS = ["8", "6", "5", "4", "3", "2", "1"] +GPTQ_BITS = ["8", "4", "3", "2"] + + +def get_save_dir(*paths: str) -> os.PathLike: + r""" + Gets the path to saved model checkpoints. + """ + if os.path.sep in paths[-1]: + logger.warning("Found complex path, some features may be not available.") + return paths[-1] + + paths = (path.replace(" ", "").strip() for path in paths) + return os.path.join(DEFAULT_SAVE_DIR, *paths) + + +def get_config_path() -> os.PathLike: + r""" + Gets the path to user config. + """ + return os.path.join(DEFAULT_CACHE_DIR, USER_CONFIG) + + +def load_config() -> Dict[str, Any]: + r""" + Loads user config if exists. + """ + try: + with open(get_config_path(), "r", encoding="utf-8") as f: + return safe_load(f) + except Exception: + return {"lang": None, "last_model": None, "path_dict": {}, "cache_dir": None} + + +def save_config(lang: str, model_name: Optional[str] = None, model_path: Optional[str] = None) -> None: + r""" + Saves user config. + """ + os.makedirs(DEFAULT_CACHE_DIR, exist_ok=True) + user_config = load_config() + user_config["lang"] = lang or user_config["lang"] + if model_name: + user_config["last_model"] = model_name + + if model_name and model_path: + user_config["path_dict"][model_name] = model_path + + with open(get_config_path(), "w", encoding="utf-8") as f: + safe_dump(user_config, f) + + +def get_model_path(model_name: str) -> str: + r""" + Gets the model path according to the model name. + """ + user_config = load_config() + path_dict: Dict["DownloadSource", str] = SUPPORTED_MODELS.get(model_name, defaultdict(str)) + model_path = user_config["path_dict"].get(model_name, "") or path_dict.get(DownloadSource.DEFAULT, "") + if ( + use_modelscope() + and path_dict.get(DownloadSource.MODELSCOPE) + and model_path == path_dict.get(DownloadSource.DEFAULT) + ): # replace path + model_path = path_dict.get(DownloadSource.MODELSCOPE) + + return model_path + + +def get_prefix(model_name: str) -> str: + r""" + Gets the prefix of the model name to obtain the model family. + """ + return model_name.split("-")[0] + + +def get_model_info(model_name: str) -> Tuple[str, str, bool]: + r""" + Gets the necessary information of this model. + + Returns: + model_path (str) + template (str) + visual (bool) + """ + return get_model_path(model_name), get_template(model_name), get_visual(model_name) + + +def get_template(model_name: str) -> str: + r""" + Gets the template name if the model is a chat model. + """ + if model_name and model_name.endswith("Chat") and get_prefix(model_name) in DEFAULT_TEMPLATE: + return DEFAULT_TEMPLATE[get_prefix(model_name)] + return "default" + + +def get_visual(model_name: str) -> bool: + r""" + Judges if the model is a vision language model. + """ + return get_prefix(model_name) in VISION_MODELS + + +def list_checkpoints(model_name: str, finetuning_type: str) -> "gr.Dropdown": + r""" + Lists all available checkpoints. + """ + checkpoints = [] + if model_name: + save_dir = get_save_dir(model_name, finetuning_type) + if save_dir and os.path.isdir(save_dir): + for checkpoint in os.listdir(save_dir): + if os.path.isdir(os.path.join(save_dir, checkpoint)) and any( + os.path.isfile(os.path.join(save_dir, checkpoint, name)) for name in CHECKPOINT_NAMES + ): + checkpoints.append(checkpoint) + + if finetuning_type in PEFT_METHODS: + return gr.Dropdown(value=[], choices=checkpoints, multiselect=True) + else: + return gr.Dropdown(value=None, choices=checkpoints, multiselect=False) + + +def load_dataset_info(dataset_dir: str) -> Dict[str, Dict[str, Any]]: + r""" + Loads dataset_info.json. + """ + if dataset_dir == "ONLINE" or dataset_dir.startswith("REMOTE:"): + logger.info("dataset_dir is {}, using online dataset.".format(dataset_dir)) + return {} + + try: + with open(os.path.join(dataset_dir, DATA_CONFIG), "r", encoding="utf-8") as f: + return json.load(f) + except Exception as err: + logger.warning("Cannot open {} due to {}.".format(os.path.join(dataset_dir, DATA_CONFIG), str(err))) + return {} + + +def list_datasets(dataset_dir: str = None, training_stage: str = list(TRAINING_STAGES.keys())[0]) -> "gr.Dropdown": + r""" + Lists all available datasets in the dataset dir for the training stage. + """ + dataset_info = load_dataset_info(dataset_dir if dataset_dir is not None else DEFAULT_DATA_DIR) + ranking = TRAINING_STAGES[training_stage] in STAGES_USE_PAIR_DATA + datasets = [k for k, v in dataset_info.items() if v.get("ranking", False) == ranking] + return gr.Dropdown(choices=datasets) diff --git a/IOPO/Method-IOPO/src/llamafactory/webui/components/__init__.py b/IOPO/Method-IOPO/src/llamafactory/webui/components/__init__.py new file mode 100644 index 00000000..715fb6e4 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/webui/components/__init__.py @@ -0,0 +1,30 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from .chatbot import create_chat_box +from .eval import create_eval_tab +from .export import create_export_tab +from .infer import create_infer_tab +from .top import create_top +from .train import create_train_tab + + +__all__ = [ + "create_chat_box", + "create_eval_tab", + "create_export_tab", + "create_infer_tab", + "create_top", + "create_train_tab", +] diff --git a/IOPO/Method-IOPO/src/llamafactory/webui/components/chatbot.py b/IOPO/Method-IOPO/src/llamafactory/webui/components/chatbot.py new file mode 100644 index 00000000..ad74114b --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/webui/components/chatbot.py @@ -0,0 +1,88 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from typing import TYPE_CHECKING, Dict, Tuple + +from ...data import Role +from ...extras.packages import is_gradio_available +from ..utils import check_json_schema + + +if is_gradio_available(): + import gradio as gr + + +if TYPE_CHECKING: + from gradio.components import Component + + from ..engine import Engine + + +def create_chat_box( + engine: "Engine", visible: bool = False +) -> Tuple["Component", "Component", Dict[str, "Component"]]: + with gr.Column(visible=visible) as chat_box: + chatbot = gr.Chatbot(show_copy_button=True) + messages = gr.State([]) + with gr.Row(): + with gr.Column(scale=4): + with gr.Row(): + with gr.Column(): + role = gr.Dropdown(choices=[Role.USER.value, Role.OBSERVATION.value], value=Role.USER.value) + system = gr.Textbox(show_label=False) + tools = gr.Textbox(show_label=False, lines=3) + + with gr.Column() as image_box: + image = gr.Image(sources=["upload"], type="numpy") + + query = gr.Textbox(show_label=False, lines=8) + submit_btn = gr.Button(variant="primary") + + with gr.Column(scale=1): + max_new_tokens = gr.Slider(minimum=8, maximum=4096, value=512, step=1) + top_p = gr.Slider(minimum=0.01, maximum=1.0, value=0.7, step=0.01) + temperature = gr.Slider(minimum=0.01, maximum=1.5, value=0.95, step=0.01) + clear_btn = gr.Button() + + tools.input(check_json_schema, inputs=[tools, engine.manager.get_elem_by_id("top.lang")]) + + submit_btn.click( + engine.chatter.append, + [chatbot, messages, role, query], + [chatbot, messages, query], + ).then( + engine.chatter.stream, + [chatbot, messages, system, tools, image, max_new_tokens, top_p, temperature], + [chatbot, messages], + ) + clear_btn.click(lambda: ([], []), outputs=[chatbot, messages]) + + return ( + chatbot, + messages, + dict( + chat_box=chat_box, + role=role, + system=system, + tools=tools, + image_box=image_box, + image=image, + query=query, + submit_btn=submit_btn, + max_new_tokens=max_new_tokens, + top_p=top_p, + temperature=temperature, + clear_btn=clear_btn, + ), + ) diff --git a/IOPO/Method-IOPO/src/llamafactory/webui/components/data.py b/IOPO/Method-IOPO/src/llamafactory/webui/components/data.py new file mode 100644 index 00000000..88e500cf --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/webui/components/data.py @@ -0,0 +1,120 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import json +import os +from typing import TYPE_CHECKING, Any, Dict, List, Tuple + +from ...extras.constants import DATA_CONFIG +from ...extras.packages import is_gradio_available + + +if is_gradio_available(): + import gradio as gr + + +if TYPE_CHECKING: + from gradio.components import Component + + +PAGE_SIZE = 2 + + +def prev_page(page_index: int) -> int: + return page_index - 1 if page_index > 0 else page_index + + +def next_page(page_index: int, total_num: int) -> int: + return page_index + 1 if (page_index + 1) * PAGE_SIZE < total_num else page_index + + +def can_preview(dataset_dir: str, dataset: list) -> "gr.Button": + try: + with open(os.path.join(dataset_dir, DATA_CONFIG), "r", encoding="utf-8") as f: + dataset_info = json.load(f) + except Exception: + return gr.Button(interactive=False) + + if len(dataset) == 0 or "file_name" not in dataset_info[dataset[0]]: + return gr.Button(interactive=False) + + data_path = os.path.join(dataset_dir, dataset_info[dataset[0]]["file_name"]) + if os.path.isfile(data_path) or (os.path.isdir(data_path) and os.listdir(data_path)): + return gr.Button(interactive=True) + else: + return gr.Button(interactive=False) + + +def _load_data_file(file_path: str) -> List[Any]: + with open(file_path, "r", encoding="utf-8") as f: + if file_path.endswith(".json"): + return json.load(f) + elif file_path.endswith(".jsonl"): + return [json.loads(line) for line in f] + else: + return list(f) + + +def get_preview(dataset_dir: str, dataset: list, page_index: int) -> Tuple[int, list, "gr.Column"]: + with open(os.path.join(dataset_dir, DATA_CONFIG), "r", encoding="utf-8") as f: + dataset_info = json.load(f) + + data_path = os.path.join(dataset_dir, dataset_info[dataset[0]]["file_name"]) + if os.path.isfile(data_path): + data = _load_data_file(data_path) + else: + data = [] + for file_name in os.listdir(data_path): + data.extend(_load_data_file(os.path.join(data_path, file_name))) + + return len(data), data[PAGE_SIZE * page_index : PAGE_SIZE * (page_index + 1)], gr.Column(visible=True) + + +def create_preview_box(dataset_dir: "gr.Textbox", dataset: "gr.Dropdown") -> Dict[str, "Component"]: + data_preview_btn = gr.Button(interactive=False, scale=1) + with gr.Column(visible=False, elem_classes="modal-box") as preview_box: + with gr.Row(): + preview_count = gr.Number(value=0, interactive=False, precision=0) + page_index = gr.Number(value=0, interactive=False, precision=0) + + with gr.Row(): + prev_btn = gr.Button() + next_btn = gr.Button() + close_btn = gr.Button() + + with gr.Row(): + preview_samples = gr.JSON() + + dataset.change(can_preview, [dataset_dir, dataset], [data_preview_btn], queue=False).then( + lambda: 0, outputs=[page_index], queue=False + ) + data_preview_btn.click( + get_preview, [dataset_dir, dataset, page_index], [preview_count, preview_samples, preview_box], queue=False + ) + prev_btn.click(prev_page, [page_index], [page_index], queue=False).then( + get_preview, [dataset_dir, dataset, page_index], [preview_count, preview_samples, preview_box], queue=False + ) + next_btn.click(next_page, [page_index, preview_count], [page_index], queue=False).then( + get_preview, [dataset_dir, dataset, page_index], [preview_count, preview_samples, preview_box], queue=False + ) + close_btn.click(lambda: gr.Column(visible=False), outputs=[preview_box], queue=False) + return dict( + data_preview_btn=data_preview_btn, + preview_count=preview_count, + page_index=page_index, + prev_btn=prev_btn, + next_btn=next_btn, + close_btn=close_btn, + preview_samples=preview_samples, + ) diff --git a/IOPO/Method-IOPO/src/llamafactory/webui/components/eval.py b/IOPO/Method-IOPO/src/llamafactory/webui/components/eval.py new file mode 100644 index 00000000..b522913e --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/webui/components/eval.py @@ -0,0 +1,93 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from typing import TYPE_CHECKING, Dict + +from ...extras.packages import is_gradio_available +from ..common import DEFAULT_DATA_DIR, list_datasets +from .data import create_preview_box + + +if is_gradio_available(): + import gradio as gr + + +if TYPE_CHECKING: + from gradio.components import Component + + from ..engine import Engine + + +def create_eval_tab(engine: "Engine") -> Dict[str, "Component"]: + input_elems = engine.manager.get_base_elems() + elem_dict = dict() + + with gr.Row(): + dataset_dir = gr.Textbox(value=DEFAULT_DATA_DIR, scale=2) + dataset = gr.Dropdown(multiselect=True, allow_custom_value=True, scale=4) + preview_elems = create_preview_box(dataset_dir, dataset) + + input_elems.update({dataset_dir, dataset}) + elem_dict.update(dict(dataset_dir=dataset_dir, dataset=dataset, **preview_elems)) + + with gr.Row(): + cutoff_len = gr.Slider(minimum=4, maximum=65536, value=1024, step=1) + max_samples = gr.Textbox(value="100000") + batch_size = gr.Slider(minimum=1, maximum=1024, value=2, step=1) + predict = gr.Checkbox(value=True) + + input_elems.update({cutoff_len, max_samples, batch_size, predict}) + elem_dict.update(dict(cutoff_len=cutoff_len, max_samples=max_samples, batch_size=batch_size, predict=predict)) + + with gr.Row(): + max_new_tokens = gr.Slider(minimum=8, maximum=4096, value=512, step=1) + top_p = gr.Slider(minimum=0.01, maximum=1, value=0.7, step=0.01) + temperature = gr.Slider(minimum=0.01, maximum=1.5, value=0.95, step=0.01) + output_dir = gr.Textbox() + + input_elems.update({max_new_tokens, top_p, temperature, output_dir}) + elem_dict.update(dict(max_new_tokens=max_new_tokens, top_p=top_p, temperature=temperature, output_dir=output_dir)) + + with gr.Row(): + cmd_preview_btn = gr.Button() + start_btn = gr.Button(variant="primary") + stop_btn = gr.Button(variant="stop") + + with gr.Row(): + resume_btn = gr.Checkbox(visible=False, interactive=False) + progress_bar = gr.Slider(visible=False, interactive=False) + + with gr.Row(): + output_box = gr.Markdown() + + elem_dict.update( + dict( + cmd_preview_btn=cmd_preview_btn, + start_btn=start_btn, + stop_btn=stop_btn, + resume_btn=resume_btn, + progress_bar=progress_bar, + output_box=output_box, + ) + ) + output_elems = [output_box, progress_bar] + + cmd_preview_btn.click(engine.runner.preview_eval, input_elems, output_elems, concurrency_limit=None) + start_btn.click(engine.runner.run_eval, input_elems, output_elems) + stop_btn.click(engine.runner.set_abort) + resume_btn.change(engine.runner.monitor, outputs=output_elems, concurrency_limit=None) + + dataset.focus(list_datasets, [dataset_dir], [dataset], queue=False) + + return elem_dict diff --git a/IOPO/Method-IOPO/src/llamafactory/webui/components/export.py b/IOPO/Method-IOPO/src/llamafactory/webui/components/export.py new file mode 100644 index 00000000..d9d4b937 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/webui/components/export.py @@ -0,0 +1,154 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from typing import TYPE_CHECKING, Dict, Generator, List, Union + +from ...extras.constants import PEFT_METHODS +from ...extras.misc import torch_gc +from ...extras.packages import is_gradio_available +from ...train.tuner import export_model +from ..common import GPTQ_BITS, get_save_dir +from ..locales import ALERTS + + +if is_gradio_available(): + import gradio as gr + + +if TYPE_CHECKING: + from gradio.components import Component + + from ..engine import Engine + + +def can_quantize(checkpoint_path: Union[str, List[str]]) -> "gr.Dropdown": + if isinstance(checkpoint_path, list) and len(checkpoint_path) != 0: + return gr.Dropdown(value="none", interactive=False) + else: + return gr.Dropdown(interactive=True) + + +def save_model( + lang: str, + model_name: str, + model_path: str, + finetuning_type: str, + checkpoint_path: Union[str, List[str]], + template: str, + visual_inputs: bool, + export_size: int, + export_quantization_bit: str, + export_quantization_dataset: str, + export_device: str, + export_legacy_format: bool, + export_dir: str, + export_hub_model_id: str, +) -> Generator[str, None, None]: + error = "" + if not model_name: + error = ALERTS["err_no_model"][lang] + elif not model_path: + error = ALERTS["err_no_path"][lang] + elif not export_dir: + error = ALERTS["err_no_export_dir"][lang] + elif export_quantization_bit in GPTQ_BITS and not export_quantization_dataset: + error = ALERTS["err_no_dataset"][lang] + elif export_quantization_bit not in GPTQ_BITS and not checkpoint_path: + error = ALERTS["err_no_adapter"][lang] + elif export_quantization_bit in GPTQ_BITS and checkpoint_path and isinstance(checkpoint_path, list): + error = ALERTS["err_gptq_lora"][lang] + + if error: + gr.Warning(error) + yield error + return + + args = dict( + model_name_or_path=model_path, + finetuning_type=finetuning_type, + template=template, + visual_inputs=visual_inputs, + export_dir=export_dir, + export_hub_model_id=export_hub_model_id or None, + export_size=export_size, + export_quantization_bit=int(export_quantization_bit) if export_quantization_bit in GPTQ_BITS else None, + export_quantization_dataset=export_quantization_dataset, + export_device=export_device, + export_legacy_format=export_legacy_format, + ) + + if checkpoint_path: + if finetuning_type in PEFT_METHODS: # list + args["adapter_name_or_path"] = ",".join( + [get_save_dir(model_name, finetuning_type, adapter) for adapter in checkpoint_path] + ) + else: # str + args["model_name_or_path"] = get_save_dir(model_name, finetuning_type, checkpoint_path) + + yield ALERTS["info_exporting"][lang] + export_model(args) + torch_gc() + yield ALERTS["info_exported"][lang] + + +def create_export_tab(engine: "Engine") -> Dict[str, "Component"]: + with gr.Row(): + export_size = gr.Slider(minimum=1, maximum=100, value=5, step=1) + export_quantization_bit = gr.Dropdown(choices=["none"] + GPTQ_BITS, value="none") + export_quantization_dataset = gr.Textbox(value="data/c4_demo.json") + export_device = gr.Radio(choices=["cpu", "auto"], value="cpu") + export_legacy_format = gr.Checkbox() + + with gr.Row(): + export_dir = gr.Textbox() + export_hub_model_id = gr.Textbox() + + checkpoint_path: gr.Dropdown = engine.manager.get_elem_by_id("top.checkpoint_path") + checkpoint_path.change(can_quantize, [checkpoint_path], [export_quantization_bit], queue=False) + + export_btn = gr.Button() + info_box = gr.Textbox(show_label=False, interactive=False) + + export_btn.click( + save_model, + [ + engine.manager.get_elem_by_id("top.lang"), + engine.manager.get_elem_by_id("top.model_name"), + engine.manager.get_elem_by_id("top.model_path"), + engine.manager.get_elem_by_id("top.finetuning_type"), + engine.manager.get_elem_by_id("top.checkpoint_path"), + engine.manager.get_elem_by_id("top.template"), + engine.manager.get_elem_by_id("top.visual_inputs"), + export_size, + export_quantization_bit, + export_quantization_dataset, + export_device, + export_legacy_format, + export_dir, + export_hub_model_id, + ], + [info_box], + ) + + return dict( + export_size=export_size, + export_quantization_bit=export_quantization_bit, + export_quantization_dataset=export_quantization_dataset, + export_device=export_device, + export_legacy_format=export_legacy_format, + export_dir=export_dir, + export_hub_model_id=export_hub_model_id, + export_btn=export_btn, + info_box=info_box, + ) diff --git a/IOPO/Method-IOPO/src/llamafactory/webui/components/infer.py b/IOPO/Method-IOPO/src/llamafactory/webui/components/infer.py new file mode 100644 index 00000000..a0064479 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/webui/components/infer.py @@ -0,0 +1,73 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from typing import TYPE_CHECKING, Dict + +from ...extras.packages import is_gradio_available +from .chatbot import create_chat_box + + +if is_gradio_available(): + import gradio as gr + + +if TYPE_CHECKING: + from gradio.components import Component + + from ..engine import Engine + + +def create_infer_tab(engine: "Engine") -> Dict[str, "Component"]: + input_elems = engine.manager.get_base_elems() + elem_dict = dict() + + with gr.Row(): + infer_backend = gr.Dropdown(choices=["huggingface", "vllm"], value="huggingface") + infer_dtype = gr.Dropdown(choices=["auto", "float16", "bfloat16", "float32"], value="auto") + + with gr.Row(): + load_btn = gr.Button() + unload_btn = gr.Button() + + info_box = gr.Textbox(show_label=False, interactive=False) + + input_elems.update({infer_backend, infer_dtype}) + elem_dict.update( + dict( + infer_backend=infer_backend, + infer_dtype=infer_dtype, + load_btn=load_btn, + unload_btn=unload_btn, + info_box=info_box, + ) + ) + + chatbot, messages, chat_elems = create_chat_box(engine, visible=False) + elem_dict.update(chat_elems) + + load_btn.click(engine.chatter.load_model, input_elems, [info_box]).then( + lambda: gr.Column(visible=engine.chatter.loaded), outputs=[chat_elems["chat_box"]] + ) + + unload_btn.click(engine.chatter.unload_model, input_elems, [info_box]).then( + lambda: ([], []), outputs=[chatbot, messages] + ).then(lambda: gr.Column(visible=engine.chatter.loaded), outputs=[chat_elems["chat_box"]]) + + engine.manager.get_elem_by_id("top.visual_inputs").change( + lambda enabled: gr.Column(visible=enabled), + [engine.manager.get_elem_by_id("top.visual_inputs")], + [chat_elems["image_box"]], + ) + + return elem_dict diff --git a/IOPO/Method-IOPO/src/llamafactory/webui/components/top.py b/IOPO/Method-IOPO/src/llamafactory/webui/components/top.py new file mode 100644 index 00000000..ac1a7a42 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/webui/components/top.py @@ -0,0 +1,77 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from typing import TYPE_CHECKING, Dict + +from ...data import TEMPLATES +from ...extras.constants import METHODS, SUPPORTED_MODELS +from ...extras.packages import is_gradio_available +from ..common import get_model_info, list_checkpoints, save_config +from ..utils import can_quantize, can_quantize_to + + +if is_gradio_available(): + import gradio as gr + + +if TYPE_CHECKING: + from gradio.components import Component + + +def create_top() -> Dict[str, "Component"]: + available_models = list(SUPPORTED_MODELS.keys()) + ["Custom"] + + with gr.Row(): + lang = gr.Dropdown(choices=["en", "ru", "zh", "ko"], scale=1) + model_name = gr.Dropdown(choices=available_models, scale=3) + model_path = gr.Textbox(scale=3) + + with gr.Row(): + finetuning_type = gr.Dropdown(choices=METHODS, value="lora", scale=1) + checkpoint_path = gr.Dropdown(multiselect=True, allow_custom_value=True, scale=6) + + with gr.Accordion(open=False) as advanced_tab: + with gr.Row(): + quantization_bit = gr.Dropdown(choices=["none", "8", "4"], value="none", allow_custom_value=True, scale=1) + quantization_method = gr.Dropdown(choices=["bitsandbytes", "hqq", "eetq"], value="bitsandbytes", scale=1) + template = gr.Dropdown(choices=list(TEMPLATES.keys()), value="default", scale=1) + rope_scaling = gr.Radio(choices=["none", "linear", "dynamic"], value="none", scale=2) + booster = gr.Radio(choices=["auto", "flashattn2", "unsloth"], value="auto", scale=2) + visual_inputs = gr.Checkbox(scale=1) + + model_name.change(get_model_info, [model_name], [model_path, template, visual_inputs], queue=False).then( + list_checkpoints, [model_name, finetuning_type], [checkpoint_path], queue=False + ) + model_name.input(save_config, inputs=[lang, model_name], queue=False) + model_path.input(save_config, inputs=[lang, model_name, model_path], queue=False) + finetuning_type.change(can_quantize, [finetuning_type], [quantization_bit], queue=False).then( + list_checkpoints, [model_name, finetuning_type], [checkpoint_path], queue=False + ) + checkpoint_path.focus(list_checkpoints, [model_name, finetuning_type], [checkpoint_path], queue=False) + quantization_method.change(can_quantize_to, [quantization_method], [quantization_bit], queue=False) + + return dict( + lang=lang, + model_name=model_name, + model_path=model_path, + finetuning_type=finetuning_type, + checkpoint_path=checkpoint_path, + advanced_tab=advanced_tab, + quantization_bit=quantization_bit, + quantization_method=quantization_method, + template=template, + rope_scaling=rope_scaling, + booster=booster, + visual_inputs=visual_inputs, + ) diff --git a/IOPO/Method-IOPO/src/llamafactory/webui/components/train.py b/IOPO/Method-IOPO/src/llamafactory/webui/components/train.py new file mode 100644 index 00000000..e5dc92c3 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/webui/components/train.py @@ -0,0 +1,354 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from typing import TYPE_CHECKING, Dict + +from transformers.trainer_utils import SchedulerType + +from ...extras.constants import TRAINING_STAGES +from ...extras.misc import get_device_count +from ...extras.packages import is_gradio_available +from ..common import DEFAULT_DATA_DIR, list_checkpoints, list_datasets +from ..utils import change_stage, list_config_paths, list_output_dirs +from .data import create_preview_box + + +if is_gradio_available(): + import gradio as gr + + +if TYPE_CHECKING: + from gradio.components import Component + + from ..engine import Engine + + +def create_train_tab(engine: "Engine") -> Dict[str, "Component"]: + input_elems = engine.manager.get_base_elems() + elem_dict = dict() + + with gr.Row(): + training_stage = gr.Dropdown( + choices=list(TRAINING_STAGES.keys()), value=list(TRAINING_STAGES.keys())[0], scale=1 + ) + dataset_dir = gr.Textbox(value=DEFAULT_DATA_DIR, scale=1) + dataset = gr.Dropdown(multiselect=True, allow_custom_value=True, scale=4) + preview_elems = create_preview_box(dataset_dir, dataset) + + input_elems.update({training_stage, dataset_dir, dataset}) + elem_dict.update(dict(training_stage=training_stage, dataset_dir=dataset_dir, dataset=dataset, **preview_elems)) + + with gr.Row(): + learning_rate = gr.Textbox(value="5e-5") + num_train_epochs = gr.Textbox(value="3.0") + max_grad_norm = gr.Textbox(value="1.0") + max_samples = gr.Textbox(value="100000") + compute_type = gr.Dropdown(choices=["bf16", "fp16", "fp32", "pure_bf16"], value="bf16") + + input_elems.update({learning_rate, num_train_epochs, max_grad_norm, max_samples, compute_type}) + elem_dict.update( + dict( + learning_rate=learning_rate, + num_train_epochs=num_train_epochs, + max_grad_norm=max_grad_norm, + max_samples=max_samples, + compute_type=compute_type, + ) + ) + + with gr.Row(): + cutoff_len = gr.Slider(minimum=4, maximum=65536, value=1024, step=1) + batch_size = gr.Slider(minimum=1, maximum=1024, value=2, step=1) + gradient_accumulation_steps = gr.Slider(minimum=1, maximum=1024, value=8, step=1) + val_size = gr.Slider(minimum=0, maximum=1, value=0, step=0.001) + lr_scheduler_type = gr.Dropdown(choices=[scheduler.value for scheduler in SchedulerType], value="cosine") + + input_elems.update({cutoff_len, batch_size, gradient_accumulation_steps, val_size, lr_scheduler_type}) + elem_dict.update( + dict( + cutoff_len=cutoff_len, + batch_size=batch_size, + gradient_accumulation_steps=gradient_accumulation_steps, + val_size=val_size, + lr_scheduler_type=lr_scheduler_type, + ) + ) + + with gr.Accordion(open=False) as extra_tab: + with gr.Row(): + logging_steps = gr.Slider(minimum=1, maximum=1000, value=5, step=5) + save_steps = gr.Slider(minimum=10, maximum=5000, value=100, step=10) + warmup_steps = gr.Slider(minimum=0, maximum=5000, value=0, step=1) + neftune_alpha = gr.Slider(minimum=0, maximum=10, value=0, step=0.1) + optim = gr.Textbox(value="adamw_torch") + + with gr.Row(): + with gr.Column(): + packing = gr.Checkbox() + neat_packing = gr.Checkbox() + + with gr.Column(): + train_on_prompt = gr.Checkbox() + mask_history = gr.Checkbox() + + with gr.Column(): + resize_vocab = gr.Checkbox() + use_llama_pro = gr.Checkbox() + + with gr.Column(): + shift_attn = gr.Checkbox() + report_to = gr.Checkbox() + + input_elems.update( + { + logging_steps, + save_steps, + warmup_steps, + neftune_alpha, + optim, + packing, + neat_packing, + train_on_prompt, + mask_history, + resize_vocab, + use_llama_pro, + shift_attn, + report_to, + } + ) + elem_dict.update( + dict( + extra_tab=extra_tab, + logging_steps=logging_steps, + save_steps=save_steps, + warmup_steps=warmup_steps, + neftune_alpha=neftune_alpha, + optim=optim, + packing=packing, + neat_packing=neat_packing, + train_on_prompt=train_on_prompt, + mask_history=mask_history, + resize_vocab=resize_vocab, + use_llama_pro=use_llama_pro, + shift_attn=shift_attn, + report_to=report_to, + ) + ) + + with gr.Accordion(open=False) as freeze_tab: + with gr.Row(): + freeze_trainable_layers = gr.Slider(minimum=-128, maximum=128, value=2, step=1) + freeze_trainable_modules = gr.Textbox(value="all") + freeze_extra_modules = gr.Textbox() + + input_elems.update({freeze_trainable_layers, freeze_trainable_modules, freeze_extra_modules}) + elem_dict.update( + dict( + freeze_tab=freeze_tab, + freeze_trainable_layers=freeze_trainable_layers, + freeze_trainable_modules=freeze_trainable_modules, + freeze_extra_modules=freeze_extra_modules, + ) + ) + + with gr.Accordion(open=False) as lora_tab: + with gr.Row(): + lora_rank = gr.Slider(minimum=1, maximum=1024, value=8, step=1) + lora_alpha = gr.Slider(minimum=1, maximum=2048, value=16, step=1) + lora_dropout = gr.Slider(minimum=0, maximum=1, value=0, step=0.01) + loraplus_lr_ratio = gr.Slider(minimum=0, maximum=64, value=0, step=0.01) + create_new_adapter = gr.Checkbox() + + with gr.Row(): + use_rslora = gr.Checkbox() + use_dora = gr.Checkbox() + use_pissa = gr.Checkbox() + lora_target = gr.Textbox(scale=2) + additional_target = gr.Textbox(scale=2) + + input_elems.update( + { + lora_rank, + lora_alpha, + lora_dropout, + loraplus_lr_ratio, + create_new_adapter, + use_rslora, + use_dora, + use_pissa, + lora_target, + additional_target, + } + ) + elem_dict.update( + dict( + lora_tab=lora_tab, + lora_rank=lora_rank, + lora_alpha=lora_alpha, + lora_dropout=lora_dropout, + loraplus_lr_ratio=loraplus_lr_ratio, + create_new_adapter=create_new_adapter, + use_rslora=use_rslora, + use_dora=use_dora, + use_pissa=use_pissa, + lora_target=lora_target, + additional_target=additional_target, + ) + ) + + with gr.Accordion(open=False) as rlhf_tab: + with gr.Row(): + pref_beta = gr.Slider(minimum=0, maximum=1, value=0.1, step=0.01) + pref_ftx = gr.Slider(minimum=0, maximum=10, value=0, step=0.01) + pref_loss = gr.Dropdown(choices=["sigmoid", "hinge", "ipo", "kto_pair", "orpo", "simpo"], value="sigmoid") + reward_model = gr.Dropdown(multiselect=True, allow_custom_value=True) + with gr.Column(): + ppo_score_norm = gr.Checkbox() + ppo_whiten_rewards = gr.Checkbox() + + input_elems.update({pref_beta, pref_ftx, pref_loss, reward_model, ppo_score_norm, ppo_whiten_rewards}) + elem_dict.update( + dict( + rlhf_tab=rlhf_tab, + pref_beta=pref_beta, + pref_ftx=pref_ftx, + pref_loss=pref_loss, + reward_model=reward_model, + ppo_score_norm=ppo_score_norm, + ppo_whiten_rewards=ppo_whiten_rewards, + ) + ) + + with gr.Accordion(open=False) as galore_tab: + with gr.Row(): + use_galore = gr.Checkbox() + galore_rank = gr.Slider(minimum=1, maximum=1024, value=16, step=1) + galore_update_interval = gr.Slider(minimum=1, maximum=1024, value=200, step=1) + galore_scale = gr.Slider(minimum=0, maximum=1, value=0.25, step=0.01) + galore_target = gr.Textbox(value="all") + + input_elems.update({use_galore, galore_rank, galore_update_interval, galore_scale, galore_target}) + elem_dict.update( + dict( + galore_tab=galore_tab, + use_galore=use_galore, + galore_rank=galore_rank, + galore_update_interval=galore_update_interval, + galore_scale=galore_scale, + galore_target=galore_target, + ) + ) + + with gr.Accordion(open=False) as badam_tab: + with gr.Row(): + use_badam = gr.Checkbox() + badam_mode = gr.Dropdown(choices=["layer", "ratio"], value="layer") + badam_switch_mode = gr.Dropdown(choices=["ascending", "descending", "random", "fixed"], value="ascending") + badam_switch_interval = gr.Slider(minimum=1, maximum=1024, value=50, step=1) + badam_update_ratio = gr.Slider(minimum=0, maximum=1, value=0.05, step=0.01) + + input_elems.update({use_badam, badam_mode, badam_switch_mode, badam_switch_interval, badam_update_ratio}) + elem_dict.update( + dict( + badam_tab=badam_tab, + use_badam=use_badam, + badam_mode=badam_mode, + badam_switch_mode=badam_switch_mode, + badam_switch_interval=badam_switch_interval, + badam_update_ratio=badam_update_ratio, + ) + ) + + with gr.Row(): + cmd_preview_btn = gr.Button() + arg_save_btn = gr.Button() + arg_load_btn = gr.Button() + start_btn = gr.Button(variant="primary") + stop_btn = gr.Button(variant="stop") + + with gr.Row(): + with gr.Column(scale=3): + with gr.Row(): + current_time = gr.Textbox(visible=False, interactive=False) + output_dir = gr.Dropdown(allow_custom_value=True) + config_path = gr.Dropdown(allow_custom_value=True) + + with gr.Row(): + device_count = gr.Textbox(value=str(get_device_count() or 1), interactive=False) + ds_stage = gr.Dropdown(choices=["none", "2", "3"], value="none") + ds_offload = gr.Checkbox() + + with gr.Row(): + resume_btn = gr.Checkbox(visible=False, interactive=False) + progress_bar = gr.Slider(visible=False, interactive=False) + + with gr.Row(): + output_box = gr.Markdown() + + with gr.Column(scale=1): + loss_viewer = gr.Plot() + + input_elems.update({output_dir, config_path, ds_stage, ds_offload}) + elem_dict.update( + dict( + cmd_preview_btn=cmd_preview_btn, + arg_save_btn=arg_save_btn, + arg_load_btn=arg_load_btn, + start_btn=start_btn, + stop_btn=stop_btn, + current_time=current_time, + output_dir=output_dir, + config_path=config_path, + device_count=device_count, + ds_stage=ds_stage, + ds_offload=ds_offload, + resume_btn=resume_btn, + progress_bar=progress_bar, + output_box=output_box, + loss_viewer=loss_viewer, + ) + ) + output_elems = [output_box, progress_bar, loss_viewer] + + cmd_preview_btn.click(engine.runner.preview_train, input_elems, output_elems, concurrency_limit=None) + start_btn.click(engine.runner.run_train, input_elems, output_elems) + stop_btn.click(engine.runner.set_abort) + resume_btn.change(engine.runner.monitor, outputs=output_elems, concurrency_limit=None) + + lang = engine.manager.get_elem_by_id("top.lang") + model_name: "gr.Dropdown" = engine.manager.get_elem_by_id("top.model_name") + finetuning_type: "gr.Dropdown" = engine.manager.get_elem_by_id("top.finetuning_type") + + arg_save_btn.click(engine.runner.save_args, input_elems, output_elems, concurrency_limit=None) + arg_load_btn.click( + engine.runner.load_args, [lang, config_path], list(input_elems) + [output_box], concurrency_limit=None + ) + + dataset.focus(list_datasets, [dataset_dir, training_stage], [dataset], queue=False) + training_stage.change(change_stage, [training_stage], [dataset, packing], queue=False) + reward_model.focus(list_checkpoints, [model_name, finetuning_type], [reward_model], queue=False) + model_name.change(list_output_dirs, [model_name, finetuning_type, current_time], [output_dir], queue=False) + finetuning_type.change(list_output_dirs, [model_name, finetuning_type, current_time], [output_dir], queue=False) + output_dir.change( + list_output_dirs, [model_name, finetuning_type, current_time], [output_dir], concurrency_limit=None + ) + output_dir.input( + engine.runner.check_output_dir, + [lang, model_name, finetuning_type, output_dir], + list(input_elems) + [output_box], + concurrency_limit=None, + ) + config_path.change(list_config_paths, [current_time], [config_path], queue=False) + + return elem_dict diff --git a/IOPO/Method-IOPO/src/llamafactory/webui/css.py b/IOPO/Method-IOPO/src/llamafactory/webui/css.py new file mode 100644 index 00000000..53982119 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/webui/css.py @@ -0,0 +1,41 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +CSS = r""" +.duplicate-button { + margin: auto !important; + color: white !important; + background: black !important; + border-radius: 100vh !important; +} + +.modal-box { + position: fixed !important; + top: 50%; + left: 50%; + transform: translate(-50%, -50%); /* center horizontally */ + max-width: 1000px; + max-height: 750px; + overflow-y: auto; + background-color: var(--input-background-fill); + flex-wrap: nowrap !important; + border: 2px solid black !important; + z-index: 1000; + padding: 10px; +} + +.dark .modal-box { + border: 2px solid white !important; +} +""" diff --git a/IOPO/Method-IOPO/src/llamafactory/webui/engine.py b/IOPO/Method-IOPO/src/llamafactory/webui/engine.py new file mode 100644 index 00000000..04893215 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/webui/engine.py @@ -0,0 +1,81 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from typing import TYPE_CHECKING, Any, Dict + +from .chatter import WebChatModel +from .common import load_config +from .locales import LOCALES +from .manager import Manager +from .runner import Runner +from .utils import create_ds_config, get_time + + +if TYPE_CHECKING: + from gradio.components import Component + + +class Engine: + def __init__(self, demo_mode: bool = False, pure_chat: bool = False) -> None: + self.demo_mode = demo_mode + self.pure_chat = pure_chat + self.manager = Manager() + self.runner = Runner(self.manager, demo_mode) + self.chatter = WebChatModel(self.manager, demo_mode, lazy_init=(not pure_chat)) + if not demo_mode: + create_ds_config() + + def _update_component(self, input_dict: Dict[str, Dict[str, Any]]) -> Dict["Component", "Component"]: + r""" + Gets the dict to update the components. + """ + output_dict: Dict["Component", "Component"] = {} + for elem_id, elem_attr in input_dict.items(): + elem = self.manager.get_elem_by_id(elem_id) + output_dict[elem] = elem.__class__(**elem_attr) + + return output_dict + + def resume(self): + user_config = load_config() if not self.demo_mode else {} + lang = user_config.get("lang", None) or "en" + + init_dict = {"top.lang": {"value": lang}, "infer.chat_box": {"visible": self.chatter.loaded}} + + if not self.pure_chat: + current_time = get_time() + init_dict["train.current_time"] = {"value": current_time} + init_dict["train.output_dir"] = {"value": "train_{}".format(current_time)} + init_dict["train.config_path"] = {"value": "{}.yaml".format(current_time)} + init_dict["eval.output_dir"] = {"value": "eval_{}".format(current_time)} + init_dict["infer.image_box"] = {"visible": False} + + if user_config.get("last_model", None): + init_dict["top.model_name"] = {"value": user_config["last_model"]} + + yield self._update_component(init_dict) + + if self.runner.running and not self.demo_mode and not self.pure_chat: + yield {elem: elem.__class__(value=value) for elem, value in self.runner.running_data.items()} + if self.runner.do_train: + yield self._update_component({"train.resume_btn": {"value": True}}) + else: + yield self._update_component({"eval.resume_btn": {"value": True}}) + + def change_lang(self, lang: str): + return { + elem: elem.__class__(**LOCALES[elem_name][lang]) + for elem_name, elem in self.manager.get_elem_iter() + if elem_name in LOCALES + } diff --git a/IOPO/Method-IOPO/src/llamafactory/webui/interface.py b/IOPO/Method-IOPO/src/llamafactory/webui/interface.py new file mode 100644 index 00000000..0ea37787 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/webui/interface.py @@ -0,0 +1,96 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import os + +from ..extras.packages import is_gradio_available +from .common import save_config +from .components import ( + create_chat_box, + create_eval_tab, + create_export_tab, + create_infer_tab, + create_top, + create_train_tab, +) +from .css import CSS +from .engine import Engine + + +if is_gradio_available(): + import gradio as gr + + +def create_ui(demo_mode: bool = False) -> "gr.Blocks": + engine = Engine(demo_mode=demo_mode, pure_chat=False) + + with gr.Blocks(title="LLaMA Board", css=CSS) as demo: + if demo_mode: + gr.HTML("

LLaMA Board: A One-stop Web UI for Getting Started with LLaMA Factory

") + gr.HTML( + '

Visit ' + "LLaMA Factory for details.

" + ) + gr.DuplicateButton(value="Duplicate Space for private use", elem_classes="duplicate-button") + + engine.manager.add_elems("top", create_top()) + lang: "gr.Dropdown" = engine.manager.get_elem_by_id("top.lang") + + with gr.Tab("Train"): + engine.manager.add_elems("train", create_train_tab(engine)) + + with gr.Tab("Evaluate & Predict"): + engine.manager.add_elems("eval", create_eval_tab(engine)) + + with gr.Tab("Chat"): + engine.manager.add_elems("infer", create_infer_tab(engine)) + + if not demo_mode: + with gr.Tab("Export"): + engine.manager.add_elems("export", create_export_tab(engine)) + + demo.load(engine.resume, outputs=engine.manager.get_elem_list(), concurrency_limit=None) + lang.change(engine.change_lang, [lang], engine.manager.get_elem_list(), queue=False) + lang.input(save_config, inputs=[lang], queue=False) + + return demo + + +def create_web_demo() -> "gr.Blocks": + engine = Engine(pure_chat=True) + + with gr.Blocks(title="Web Demo", css=CSS) as demo: + lang = gr.Dropdown(choices=["en", "ru", "zh", "ko"], scale=1) + engine.manager.add_elems("top", dict(lang=lang)) + + _, _, chat_elems = create_chat_box(engine, visible=True) + engine.manager.add_elems("infer", chat_elems) + + demo.load(engine.resume, outputs=engine.manager.get_elem_list(), concurrency_limit=None) + lang.change(engine.change_lang, [lang], engine.manager.get_elem_list(), queue=False) + lang.input(save_config, inputs=[lang], queue=False) + + return demo + + +def run_web_ui() -> None: + gradio_share = os.environ.get("GRADIO_SHARE", "0").lower() in ["true", "1"] + server_name = os.environ.get("GRADIO_SERVER_NAME", "0.0.0.0") + create_ui().queue().launch(share=gradio_share, server_name=server_name, inbrowser=True) + + +def run_web_demo() -> None: + gradio_share = os.environ.get("GRADIO_SHARE", "0").lower() in ["true", "1"] + server_name = os.environ.get("GRADIO_SERVER_NAME", "0.0.0.0") + create_web_demo().queue().launch(share=gradio_share, server_name=server_name, inbrowser=True) diff --git a/IOPO/Method-IOPO/src/llamafactory/webui/locales.py b/IOPO/Method-IOPO/src/llamafactory/webui/locales.py new file mode 100644 index 00000000..0a8ca68a --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/webui/locales.py @@ -0,0 +1,2118 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +LOCALES = { + "lang": { + "en": { + "label": "Lang", + }, + "ru": { + "label": "язык", + }, + "zh": { + "label": "语言", + }, + "ko": { + "label": "언어", + }, + }, + "model_name": { + "en": { + "label": "Model name", + }, + "ru": { + "label": "Название модели", + }, + "zh": { + "label": "模型名称", + }, + "ko": { + "label": "모델 이름", + }, + }, + "model_path": { + "en": { + "label": "Model path", + "info": "Path to pretrained model or model identifier from Hugging Face.", + }, + "ru": { + "label": "Путь к модели", + "info": "Путь к предварительно обученной модели или идентификатор модели от Hugging Face.", + }, + "zh": { + "label": "模型路径", + "info": "本地模型的文件路径或 Hugging Face 的模型标识符。", + }, + "ko": { + "label": "모델 경로", + "info": "사전 훈련된 모델의 경로 또는 Hugging Face의 모델 식별자.", + }, + }, + "finetuning_type": { + "en": { + "label": "Finetuning method", + }, + "ru": { + "label": "Метод дообучения", + }, + "zh": { + "label": "微调方法", + }, + "ko": { + "label": "파인튜닝 방법", + }, + }, + "checkpoint_path": { + "en": { + "label": "Checkpoint path", + }, + "ru": { + "label": "Путь контрольной точки", + }, + "zh": { + "label": "检查点路径", + }, + "ko": { + "label": "체크포인트 경로", + }, + }, + "advanced_tab": { + "en": { + "label": "Advanced configurations", + }, + "ru": { + "label": "Расширенные конфигурации", + }, + "zh": { + "label": "高级设置", + }, + "ko": { + "label": "고급 설정", + }, + }, + "quantization_bit": { + "en": { + "label": "Quantization bit", + "info": "Enable quantization (QLoRA).", + }, + "ru": { + "label": "Уровень квантования", + "info": "Включить квантование (QLoRA).", + }, + "zh": { + "label": "量化等级", + "info": "启用量化(QLoRA)。", + }, + "ko": { + "label": "양자화 비트", + "info": "양자화 활성화 (QLoRA).", + }, + }, + "quantization_method": { + "en": { + "label": "Quantization method", + "info": "Quantization algorithm to use.", + }, + "ru": { + "label": "Метод квантования", + "info": "Алгоритм квантования, который следует использовать.", + }, + "zh": { + "label": "量化方法", + "info": "使用的量化算法。", + }, + "ko": { + "label": "양자화 방법", + "info": "사용할 양자화 알고리즘.", + }, + }, + "template": { + "en": { + "label": "Prompt template", + "info": "The template used in constructing prompts.", + }, + "ru": { + "label": "Шаблон запроса", + "info": "Шаблон, используемый при формировании запросов.", + }, + "zh": { + "label": "提示模板", + "info": "构建提示词时使用的模板", + }, + "ko": { + "label": "프롬프트 템플릿", + "info": "프롬프트 구성에 사용될 템플릿.", + }, + }, + "rope_scaling": { + "en": { + "label": "RoPE scaling", + }, + "ru": { + "label": "Масштабирование RoPE", + }, + "zh": { + "label": "RoPE 插值方法", + }, + "ko": { + "label": "RoPE 스케일링", + }, + }, + "booster": { + "en": { + "label": "Booster", + }, + "ru": { + "label": "Ускоритель", + }, + "zh": { + "label": "加速方式", + }, + "ko": { + "label": "부스터", + }, + }, + "visual_inputs": { + "en": { + "label": "Visual inputs", + }, + "ru": { + "label": "визуальные входы", + }, + "zh": { + "label": "图像输入", + }, + "ko": { + "label": "시각적 입력", + }, + }, + "training_stage": { + "en": { + "label": "Stage", + "info": "The stage to perform in training.", + }, + "ru": { + "label": "Этап", + "info": "Этап выполнения обучения.", + }, + "zh": { + "label": "训练阶段", + "info": "目前采用的训练方式。", + }, + "ko": { + "label": "학습 단계", + "info": "수행할 학습 방법.", + }, + }, + "dataset_dir": { + "en": { + "label": "Data dir", + "info": "Path to the data directory.", + }, + "ru": { + "label": "Директория данных", + "info": "Путь к директории данных.", + }, + "zh": { + "label": "数据路径", + "info": "数据文件夹的路径。", + }, + "ko": { + "label": "데이터 디렉토리", + "info": "데이터 디렉토리의 경로.", + }, + }, + "dataset": { + "en": { + "label": "Dataset", + }, + "ru": { + "label": "Набор данных", + }, + "zh": { + "label": "数据集", + }, + "ko": { + "label": "데이터셋", + }, + }, + "data_preview_btn": { + "en": { + "value": "Preview dataset", + }, + "ru": { + "value": "Просмотреть набор данных", + }, + "zh": { + "value": "预览数据集", + }, + "ko": { + "value": "데이터셋 미리보기", + }, + }, + "preview_count": { + "en": { + "label": "Count", + }, + "ru": { + "label": "Количество", + }, + "zh": { + "label": "数量", + }, + "ko": { + "label": "개수", + }, + }, + "page_index": { + "en": { + "label": "Page", + }, + "ru": { + "label": "Страница", + }, + "zh": { + "label": "页数", + }, + "ko": { + "label": "페이지", + }, + }, + "prev_btn": { + "en": { + "value": "Prev", + }, + "ru": { + "value": "Предыдущая", + }, + "zh": { + "value": "上一页", + }, + "ko": { + "value": "이전", + }, + }, + "next_btn": { + "en": { + "value": "Next", + }, + "ru": { + "value": "Следующая", + }, + "zh": { + "value": "下一页", + }, + "ko": { + "value": "다음", + }, + }, + "close_btn": { + "en": { + "value": "Close", + }, + "ru": { + "value": "Закрыть", + }, + "zh": { + "value": "关闭", + }, + "ko": { + "value": "닫기", + }, + }, + "preview_samples": { + "en": { + "label": "Samples", + }, + "ru": { + "label": "Примеры", + }, + "zh": { + "label": "样例", + }, + "ko": { + "label": "샘플", + }, + }, + "learning_rate": { + "en": { + "label": "Learning rate", + "info": "Initial learning rate for AdamW.", + }, + "ru": { + "label": "Скорость обучения", + "info": "Начальная скорость обучения для AdamW.", + }, + "zh": { + "label": "学习率", + "info": "AdamW 优化器的初始学习率。", + }, + "ko": { + "label": "학습률", + "info": "AdamW의 초기 학습률.", + }, + }, + "num_train_epochs": { + "en": { + "label": "Epochs", + "info": "Total number of training epochs to perform.", + }, + "ru": { + "label": "Эпохи", + "info": "Общее количество эпох обучения.", + }, + "zh": { + "label": "训练轮数", + "info": "需要执行的训练总轮数。", + }, + "ko": { + "label": "에포크", + "info": "수행할 총 학습 에포크 수.", + }, + }, + "max_grad_norm": { + "en": { + "label": "Maximum gradient norm", + "info": "Norm for gradient clipping.", + }, + "ru": { + "label": "Максимальная норма градиента", + "info": "Норма для обрезки градиента.", + }, + "zh": { + "label": "最大梯度范数", + "info": "用于梯度裁剪的范数。", + }, + "ko": { + "label": "최대 그레디언트 노름(norm)", + "info": "그레디언트 클리핑을 위한 노름(norm).", + }, + }, + "max_samples": { + "en": { + "label": "Max samples", + "info": "Maximum samples per dataset.", + }, + "ru": { + "label": "Максимальное количество образцов", + "info": "Максимальное количество образцов на набор данных.", + }, + "zh": { + "label": "最大样本数", + "info": "每个数据集的最大样本数。", + }, + "ko": { + "label": "최대 샘플 수", + "info": "데이터셋 당 최대 샘플 수.", + }, + }, + "compute_type": { + "en": { + "label": "Compute type", + "info": "Whether to use mixed precision training.", + }, + "ru": { + "label": "Тип вычислений", + "info": "Использовать ли обучение смешанной точности.", + }, + "zh": { + "label": "计算类型", + "info": "是否使用混合精度训练。", + }, + "ko": { + "label": "연산 유형", + "info": "혼합 정밀도 훈련을 사용할지 여부.", + }, + }, + "cutoff_len": { + "en": { + "label": "Cutoff length", + "info": "Max tokens in input sequence.", + }, + "ru": { + "label": "Длина обрезки", + "info": "Максимальное количество токенов во входной последовательности.", + }, + "zh": { + "label": "截断长度", + "info": "输入序列分词后的最大长度。", + }, + "ko": { + "label": "컷오프 길이", + "info": "입력 시퀀스의 최대 토큰 수.", + }, + }, + "batch_size": { + "en": { + "label": "Batch size", + "info": "Number of samples processed on each GPU.", + }, + "ru": { + "label": "Размер пакета", + "info": "Количество образцов для обработки на каждом GPU.", + }, + "zh": { + "label": "批处理大小", + "info": "每个 GPU 处理的样本数量。", + }, + "ko": { + "label": "배치 크기", + "info": "각 GPU에서 처리되는 샘플 수.", + }, + }, + "gradient_accumulation_steps": { + "en": { + "label": "Gradient accumulation", + "info": "Number of steps for gradient accumulation.", + }, + "ru": { + "label": "Накопление градиента", + "info": "Количество шагов накопления градиента.", + }, + "zh": { + "label": "梯度累积", + "info": "梯度累积的步数。", + }, + "ko": { + "label": "그레디언트 누적", + "info": "그레디언트 누적 단계 수.", + }, + }, + "val_size": { + "en": { + "label": "Val size", + "info": "Proportion of data in the dev set.", + }, + "ru": { + "label": "Размер валидации", + "info": "Пропорция данных в наборе для разработки.", + }, + "zh": { + "label": "验证集比例", + "info": "验证集占全部样本的百分比。", + }, + "ko": { + "label": "검증 데이터셋 크기", + "info": "개발 데이터셋에서 검증 데이터의 비율.", + }, + }, + "lr_scheduler_type": { + "en": { + "label": "LR scheduler", + "info": "Name of the learning rate scheduler.", + }, + "ru": { + "label": "Планировщик скорости обучения", + "info": "Название планировщика скорости обучения.", + }, + "zh": { + "label": "学习率调节器", + "info": "学习率调度器的名称。", + }, + "ko": { + "label": "LR 스케줄러", + "info": "학습률 스케줄러의 이름.", + }, + }, + "extra_tab": { + "en": { + "label": "Extra configurations", + }, + "ru": { + "label": "Дополнительные конфигурации", + }, + "zh": { + "label": "其它参数设置", + }, + "ko": { + "label": "추가 구성(configuration)", + }, + }, + "logging_steps": { + "en": { + "label": "Logging steps", + "info": "Number of steps between two logs.", + }, + "ru": { + "label": "Шаги логирования", + "info": "Количество шагов между двумя записями в журнале.", + }, + "zh": { + "label": "日志间隔", + "info": "每两次日志输出间的更新步数。", + }, + "ko": { + "label": "로깅 스텝", + "info": "이전 로깅과 다음 로깅 간 스텝 수.", + }, + }, + "save_steps": { + "en": { + "label": "Save steps", + "info": "Number of steps between two checkpoints.", + }, + "ru": { + "label": "Шаги сохранения", + "info": "Количество шагов между двумя контрольными точками.", + }, + "zh": { + "label": "保存间隔", + "info": "每两次断点保存间的更新步数。", + }, + "ko": { + "label": "저장 스텝", + "info": "이전 체크포인트와 다음 체크포인트 사이의 스텝 수.", + }, + }, + "warmup_steps": { + "en": { + "label": "Warmup steps", + "info": "Number of steps used for warmup.", + }, + "ru": { + "label": "Шаги прогрева", + "info": "Количество шагов, используемых для прогрева.", + }, + "zh": { + "label": "预热步数", + "info": "学习率预热采用的步数。", + }, + "ko": { + "label": "Warmup 스텝", + "info": "Warmup에 사용되는 스텝 수.", + }, + }, + "neftune_alpha": { + "en": { + "label": "NEFTune Alpha", + "info": "Magnitude of noise adding to embedding vectors.", + }, + "ru": { + "label": "NEFTune Alpha", + "info": "Величина шума, добавляемого к векторам вложений.", + }, + "zh": { + "label": "NEFTune 噪声参数", + "info": "嵌入向量所添加的噪声大小。", + }, + "ko": { + "label": "NEFTune 알파", + "info": "임베딩 벡터에 추가되는 노이즈의 크기.", + }, + }, + "optim": { + "en": { + "label": "Optimizer", + "info": "The optimizer to use: adamw_torch, adamw_8bit or adafactor.", + }, + "ru": { + "label": "Оптимизатор", + "info": "Оптимизатор для использования: adamw_torch, adamw_8bit или adafactor.", + }, + "zh": { + "label": "优化器", + "info": "使用的优化器:adamw_torch、adamw_8bit 或 adafactor。", + }, + "ko": { + "label": "옵티마이저", + "info": "사용할 옵티마이저: adamw_torch, adamw_8bit 또는 adafactor 등.", + }, + }, + "packing": { + "en": { + "label": "Pack sequences", + "info": "Pack sequences into samples of fixed length.", + }, + "ru": { + "label": "Упаковка последовательностей", + "info": "Упаковка последовательностей в образцы фиксированной длины.", + }, + "zh": { + "label": "序列打包", + "info": "将序列打包为等长样本。", + }, + "ko": { + "label": "시퀀스 패킹", + "info": "고정된 길이의 샘플로 시퀀스를 패킹합니다.", + }, + }, + "neat_packing": { + "en": { + "label": "Use neat packing", + "info": "Avoid cross-attention between packed sequences.", + }, + "ru": { + "label": "Используйте аккуратную упаковку", + "info": "избегайте перекрестного внимания между упакованными последовательностями.", + }, + "zh": { + "label": "使用无污染打包", + "info": "避免打包后的序列产生交叉注意力。", + }, + "ko": { + "label": "니트 패킹 사용", + "info": "패킹된 시퀀스 간의 크로스 어텐션을 피합니다.", + }, + }, + "train_on_prompt": { + "en": { + "label": "Train on prompt", + "info": "Disable the label mask on the prompt (only for SFT).", + }, + "ru": { + "label": "Тренировка на подсказке", + "info": "Отключить маску меток на подсказке (только для SFT).", + }, + "zh": { + "label": "学习提示词", + "info": "不在提示词的部分添加掩码(仅适用于 SFT)。", + }, + "ko": { + "label": "프롬프트도 학습", + "info": "프롬프트에서 라벨 마스킹을 비활성화합니다 (SFT에만 해당).", + }, + }, + "mask_history": { + "en": { + "label": "Mask history", + "info": "Train on the last turn only (only for SFT).", + }, + "ru": { + "label": "История масок", + "info": "Тренироваться только на последнем шаге (только для SFT).", + }, + "zh": { + "label": "不学习历史对话", + "info": "仅学习最后一轮对话(仅适用于 SFT)。", + }, + "ko": { + "label": "히스토리 마스킹", + "info": "대화 데이터의 마지막 턴만 학습합니다 (SFT에만 해당).", + }, + }, + "resize_vocab": { + "en": { + "label": "Resize token embeddings", + "info": "Resize the tokenizer vocab and the embedding layers.", + }, + "ru": { + "label": "Изменение размера токенных эмбеддингов", + "info": "Изменить размер словаря токенизатора и слоев эмбеддинга.", + }, + "zh": { + "label": "更改词表大小", + "info": "更改分词器词表和嵌入层的大小。", + }, + "ko": { + "label": "토큰 임베딩의 사이즈 조정", + "info": "토크나이저 어휘와 임베딩 레이어의 크기를 조정합니다.", + }, + }, + "use_llama_pro": { + "en": { + "label": "Enable LLaMA Pro", + "info": "Make the parameters in the expanded blocks trainable.", + }, + "ru": { + "label": "Включить LLaMA Pro", + "info": "Сделать параметры в расширенных блоках обучаемыми.", + }, + "zh": { + "label": "使用 LLaMA Pro", + "info": "仅训练块扩展后的参数。", + }, + "ko": { + "label": "LLaMA Pro 사용", + "info": "확장된 블록의 매개변수를 학습 가능하게 만듭니다.", + }, + }, + "shift_attn": { + "en": { + "label": "Enable S^2 Attention", + "info": "Use shift short attention proposed by LongLoRA.", + }, + "ru": { + "label": "Включить S^2 внимание", + "info": "Использовать сдвиг внимания на короткие дистанции предложенный LongLoRA.", + }, + "zh": { + "label": "使用 S^2 Attention", + "info": "使用 LongLoRA 提出的 shift short attention。", + }, + "ko": { + "label": "S^2 Attention 사용", + "info": "LongLoRA에서 제안한 shift short attention을 사용합니다.", + }, + }, + "report_to": { + "en": { + "label": "Enable external logger", + "info": "Use TensorBoard or wandb to log experiment.", + }, + "ru": { + "label": "Включить внешний регистратор", + "info": "Использовать TensorBoard или wandb для ведения журнала экспериментов.", + }, + "zh": { + "label": "启用外部记录面板", + "info": "使用 TensorBoard 或 wandb 记录实验。", + }, + "ko": { + "label": "외부 logger 활성화", + "info": "TensorBoard 또는 wandb를 사용하여 실험을 기록합니다.", + }, + }, + "freeze_tab": { + "en": { + "label": "Freeze tuning configurations", + }, + "ru": { + "label": "конфигурации для настройки заморозки", + }, + "zh": { + "label": "部分参数微调设置", + }, + "ko": { + "label": "Freeze tuning 설정", + }, + }, + "freeze_trainable_layers": { + "en": { + "label": "Trainable layers", + "info": "Number of the last(+)/first(-) hidden layers to be set as trainable.", + }, + "ru": { + "label": "Обучаемые слои", + "info": "Количество последних (+)/первых (-) скрытых слоев, которые будут установлены как обучаемые.", + }, + "zh": { + "label": "可训练层数", + "info": "最末尾(+)/最前端(-)可训练隐藏层的数量。", + }, + "ko": { + "label": "학습 가능한 레이어", + "info": "학습 가능하게 설정할 마지막(+)/처음(-) 히든 레이어의 수.", + }, + }, + "freeze_trainable_modules": { + "en": { + "label": "Trainable modules", + "info": "Name(s) of trainable modules. Use commas to separate multiple modules.", + }, + "ru": { + "label": "Обучаемые модули", + "info": "Название обучаемых модулей. Используйте запятые для разделения нескольких модулей.", + }, + "zh": { + "label": "可训练模块", + "info": "可训练模块的名称。使用英文逗号分隔多个名称。", + }, + "ko": { + "label": "학습 가능한 모듈", + "info": "학습 가능한 모듈의 이름. 여러 모듈을 구분하려면 쉼표(,)를 사용하세요.", + }, + }, + "freeze_extra_modules": { + "en": { + "label": "Extra modules (optional)", + "info": ( + "Name(s) of modules apart from hidden layers to be set as trainable. " + "Use commas to separate multiple modules." + ), + }, + "ru": { + "label": "Дополнительные модули (опционально)", + "info": ( + "Имена модулей, кроме скрытых слоев, которые следует установить в качестве обучаемых. " + "Используйте запятые для разделения нескольких модулей." + ), + }, + "zh": { + "label": "额外模块(非必填)", + "info": "除隐藏层以外的可训练模块名称。使用英文逗号分隔多个名称。", + }, + "ko": { + "label": "추가 모듈 (선택 사항)", + "info": "학습 가능한 모듈의 이름(히든 레이어 제외). 모듈 간에는 쉼표(,)로 구분하십시오.", + }, + }, + "lora_tab": { + "en": { + "label": "LoRA configurations", + }, + "ru": { + "label": "Конфигурации LoRA", + }, + "zh": { + "label": "LoRA 参数设置", + }, + "ko": { + "label": "LoRA 구성", + }, + }, + "lora_rank": { + "en": { + "label": "LoRA rank", + "info": "The rank of LoRA matrices.", + }, + "ru": { + "label": "Ранг матриц LoRA", + "info": "Ранг матриц LoRA.", + }, + "zh": { + "label": "LoRA 秩", + "info": "LoRA 矩阵的秩大小。", + }, + "ko": { + "label": "LoRA 랭크", + "info": "LoRA 행렬의 랭크.", + }, + }, + "lora_alpha": { + "en": { + "label": "LoRA alpha", + "info": "Lora scaling coefficient.", + }, + "ru": { + "label": "LoRA alpha", + "info": "Коэффициент масштабирования LoRA.", + }, + "zh": { + "label": "LoRA 缩放系数", + "info": "LoRA 缩放系数大小。", + }, + "ko": { + "label": "LoRA 알파", + "info": "LoRA 스케일링 계수.", + }, + }, + "lora_dropout": { + "en": { + "label": "LoRA dropout", + "info": "Dropout ratio of LoRA weights.", + }, + "ru": { + "label": "Вероятность отсева LoRA", + "info": "Вероятность отсева весов LoRA.", + }, + "zh": { + "label": "LoRA 随机丢弃", + "info": "LoRA 权重随机丢弃的概率。", + }, + "ko": { + "label": "LoRA 드롭아웃", + "info": "LoRA 가중치의 드롭아웃 비율.", + }, + }, + "loraplus_lr_ratio": { + "en": { + "label": "LoRA+ LR ratio", + "info": "The LR ratio of the B matrices in LoRA.", + }, + "ru": { + "label": "LoRA+ LR коэффициент", + "info": "Коэффициент LR матриц B в LoRA.", + }, + "zh": { + "label": "LoRA+ 学习率比例", + "info": "LoRA+ 中 B 矩阵的学习率倍数。", + }, + "ko": { + "label": "LoRA+ LR 비율", + "info": "LoRA에서 B 행렬의 LR 비율.", + }, + }, + "create_new_adapter": { + "en": { + "label": "Create new adapter", + "info": "Create a new adapter with randomly initialized weight upon the existing one.", + }, + "ru": { + "label": "Создать новый адаптер", + "info": "Создать новый адаптер с случайной инициализацией веса на основе существующего.", + }, + "zh": { + "label": "新建适配器", + "info": "在现有的适配器上创建一个随机初始化后的新适配器。", + }, + "ko": { + "label": "새 어댑터 생성", + "info": "기존 어댑터 위에 무작위로 초기화된 가중치를 가진 새 어댑터를 생성합니다.", + }, + }, + "use_rslora": { + "en": { + "label": "Use rslora", + "info": "Use the rank stabilization scaling factor for LoRA layer.", + }, + "ru": { + "label": "Использовать rslora", + "info": "Использовать коэффициент масштабирования стабилизации ранга для слоя LoRA.", + }, + "zh": { + "label": "使用 rslora", + "info": "对 LoRA 层使用秩稳定缩放方法。", + }, + "ko": { + "label": "rslora 사용", + "info": "LoRA 레이어에 랭크 안정화 스케일링 계수를 사용합니다.", + }, + }, + "use_dora": { + "en": { + "label": "Use DoRA", + "info": "Use weight-decomposed LoRA.", + }, + "ru": { + "label": "Используйте DoRA", + "info": "Используйте LoRA с декомпозицией весов.", + }, + "zh": { + "label": "使用 DoRA", + "info": "使用权重分解的 LoRA。", + }, + "ko": { + "label": "DoRA 사용", + "info": "가중치-분해 LoRA를 사용합니다.", + }, + }, + "use_pissa": { + "en": { + "label": "Use PiSSA", + "info": "Use PiSSA method.", + }, + "ru": { + "label": "используйте PiSSA", + "info": "Используйте метод PiSSA.", + }, + "zh": { + "label": "使用 PiSSA", + "info": "使用 PiSSA 方法。", + }, + "ko": { + "label": "PiSSA 사용", + "info": "PiSSA 방법을 사용합니다.", + }, + }, + "lora_target": { + "en": { + "label": "LoRA modules (optional)", + "info": "Name(s) of modules to apply LoRA. Use commas to separate multiple modules.", + }, + "ru": { + "label": "Модули LoRA (опционально)", + "info": "Имена модулей для применения LoRA. Используйте запятые для разделения нескольких модулей.", + }, + "zh": { + "label": "LoRA 作用模块(非必填)", + "info": "应用 LoRA 的模块名称。使用英文逗号分隔多个名称。", + }, + "ko": { + "label": "LoRA 모듈 (선택 사항)", + "info": "LoRA를 적용할 모듈의 이름. 모듈 간에는 쉼표(,)로 구분하십시오.", + }, + }, + "additional_target": { + "en": { + "label": "Additional modules (optional)", + "info": ( + "Name(s) of modules apart from LoRA layers to be set as trainable. " + "Use commas to separate multiple modules." + ), + }, + "ru": { + "label": "Дополнительные модули (опционально)", + "info": ( + "Имена модулей, кроме слоев LoRA, которые следует установить в качестве обучаемых. " + "Используйте запятые для разделения нескольких модулей." + ), + }, + "zh": { + "label": "附加模块(非必填)", + "info": "除 LoRA 层以外的可训练模块名称。使用英文逗号分隔多个名称。", + }, + "ko": { + "label": "추가 모듈 (선택 사항)", + "info": "LoRA 레이어 외에 학습 가능하게 설정할 모듈의 이름. 모듈 간에는 쉼표(,)로 구분하십시오.", + }, + }, + "rlhf_tab": { + "en": { + "label": "RLHF configurations", + }, + "ru": { + "label": "Конфигурации RLHF", + }, + "zh": { + "label": "RLHF 参数设置", + }, + "ko": { + "label": "RLHF 구성", + }, + }, + "pref_beta": { + "en": { + "label": "Beta value", + "info": "Value of the beta parameter in the loss.", + }, + "ru": { + "label": "Бета значение", + "info": "Значение параметра бета в функции потерь.", + }, + "zh": { + "label": "Beta 参数", + "info": "损失函数中 beta 超参数大小。", + }, + "ko": { + "label": "베타 값", + "info": "손실 함수에서 베타 매개 변수의 값.", + }, + }, + "pref_ftx": { + "en": { + "label": "Ftx gamma", + "info": "The weight of SFT loss in the final loss.", + }, + "ru": { + "label": "Ftx гамма", + "info": "Вес потери SFT в итоговой потере.", + }, + "zh": { + "label": "Ftx gamma", + "info": "损失函数中 SFT 损失的权重大小。", + }, + "ko": { + "label": "Ftx 감마", + "info": "최종 로스 함수에서 SFT 로스의 가중치.", + }, + }, + "pref_loss": { + "en": { + "label": "Loss type", + "info": "The type of the loss function.", + }, + "ru": { + "label": "Тип потерь", + "info": "Тип функции потерь.", + }, + "zh": { + "label": "损失类型", + "info": "损失函数的类型。", + }, + "ko": { + "label": "로스 유형", + "info": "로스 함수의 유형.", + }, + }, + "reward_model": { + "en": { + "label": "Reward model", + "info": "Adapter of the reward model in PPO training.", + }, + "ru": { + "label": "Модель вознаграждения", + "info": "Адаптер модели вознаграждения для обучения PPO.", + }, + "zh": { + "label": "奖励模型", + "info": "PPO 训练中奖励模型的适配器路径。", + }, + "ko": { + "label": "리워드 모델", + "info": "PPO 학습에서 사용할 리워드 모델의 어댑터.", + }, + }, + "ppo_score_norm": { + "en": { + "label": "Score norm", + "info": "Normalizing scores in PPO training.", + }, + "ru": { + "label": "Норма оценок", + "info": "Нормализация оценок в тренировке PPO.", + }, + "zh": { + "label": "奖励模型", + "info": "PPO 训练中归一化奖励分数。", + }, + "ko": { + "label": "스코어 정규화", + "info": "PPO 학습에서 스코어를 정규화합니다.", + }, + }, + "ppo_whiten_rewards": { + "en": { + "label": "Whiten rewards", + "info": "Whiten the rewards in PPO training.", + }, + "ru": { + "label": "Белые вознаграждения", + "info": "Осветлите вознаграждения в обучении PPO.", + }, + "zh": { + "label": "白化奖励", + "info": "PPO 训练中将奖励分数做白化处理。", + }, + "ko": { + "label": "보상 백화", + "info": "PPO 훈련에서 보상을 백화(Whiten)합니다.", + }, + }, + "galore_tab": { + "en": { + "label": "GaLore configurations", + }, + "ru": { + "label": "Конфигурации GaLore", + }, + "zh": { + "label": "GaLore 参数设置", + }, + "ko": { + "label": "GaLore 구성", + }, + }, + "use_galore": { + "en": { + "label": "Use GaLore", + "info": "Enable gradient low-Rank projection.", + }, + "ru": { + "label": "Использовать GaLore", + "info": "Включить проекцию градиента на низкоранговое пространство.", + }, + "zh": { + "label": "使用 GaLore", + "info": "使用梯度低秩投影。", + }, + "ko": { + "label": "GaLore 사용", + "info": "그레디언트 로우 랭크 프로젝션을 활성화합니다.", + }, + }, + "galore_rank": { + "en": { + "label": "GaLore rank", + "info": "The rank of GaLore gradients.", + }, + "ru": { + "label": "Ранг GaLore", + "info": "Ранг градиентов GaLore.", + }, + "zh": { + "label": "GaLore 秩", + "info": "GaLore 梯度的秩大小。", + }, + "ko": { + "label": "GaLore 랭크", + "info": "GaLore 그레디언트의 랭크.", + }, + }, + "galore_update_interval": { + "en": { + "label": "Update interval", + "info": "Number of steps to update the GaLore projection.", + }, + "ru": { + "label": "Интервал обновления", + "info": "Количество шагов для обновления проекции GaLore.", + }, + "zh": { + "label": "更新间隔", + "info": "相邻两次投影更新的步数。", + }, + "ko": { + "label": "업데이트 간격", + "info": "GaLore 프로젝션을 업데이트할 간격의 스텝 수.", + }, + }, + "galore_scale": { + "en": { + "label": "GaLore scale", + "info": "GaLore scaling coefficient.", + }, + "ru": { + "label": "LoRA Alpha", + "info": "Коэффициент масштабирования GaLore.", + }, + "zh": { + "label": "GaLore 缩放系数", + "info": "GaLore 缩放系数大小。", + }, + "ko": { + "label": "GaLore 스케일", + "info": "GaLore 스케일링 계수.", + }, + }, + "galore_target": { + "en": { + "label": "GaLore modules", + "info": "Name(s) of modules to apply GaLore. Use commas to separate multiple modules.", + }, + "ru": { + "label": "Модули GaLore", + "info": "Имена модулей для применения GaLore. Используйте запятые для разделения нескольких модулей.", + }, + "zh": { + "label": "GaLore 作用模块", + "info": "应用 GaLore 的模块名称。使用英文逗号分隔多个名称。", + }, + "ko": { + "label": "GaLore 모듈", + "info": "GaLore를 적용할 모듈의 이름. 모듈 간에는 쉼표(,)로 구분하십시오.", + }, + }, + "badam_tab": { + "en": { + "label": "BAdam configurations", + }, + "ru": { + "label": "Конфигурации BAdam", + }, + "zh": { + "label": "BAdam 参数设置", + }, + "ko": { + "label": "BAdam 설정", + }, + }, + "use_badam": { + "en": { + "label": "Use BAdam", + "info": "Enable the BAdam optimizer.", + }, + "ru": { + "label": "Использовать BAdam", + "info": "Включите оптимизатор BAdam.", + }, + "zh": { + "label": "使用 BAdam", + "info": "使用 BAdam 优化器。", + }, + "ko": { + "label": "BAdam 사용", + "info": "BAdam 옵티마이저를 사용합니다.", + }, + }, + "badam_mode": { + "en": { + "label": "BAdam mode", + "info": "Whether to use layer-wise or ratio-wise BAdam optimizer.", + }, + "ru": { + "label": "Режим BAdam", + "info": "Использовать ли оптимизатор BAdam с послоевой или пропорциональной настройкой.", + }, + "zh": { + "label": "BAdam 模式", + "info": "使用 layer-wise 或 ratio-wise BAdam 优化器。", + }, + "ko": { + "label": "BAdam 모드", + "info": "레이어-BAdam 옵티마이저인지 비율-BAdam 옵티마이저인지.", + }, + }, + "badam_switch_mode": { + "en": { + "label": "Switch mode", + "info": "The strategy of picking block to update for layer-wise BAdam.", + }, + "ru": { + "label": "Режим переключения", + "info": "Стратегия выбора блока для обновления для послойного BAdam.", + }, + "zh": { + "label": "切换策略", + "info": "Layer-wise BAdam 优化器的块切换策略。", + }, + "ko": { + "label": "스위치 모드", + "info": "레이어-BAdam을 위한 블록 선택 전략.", + }, + }, + "badam_switch_interval": { + "en": { + "label": "Switch interval", + "info": "Number of steps to update the block for layer-wise BAdam.", + }, + "ru": { + "label": "Интервал переключения", + "info": "количество шагов для обновления блока для пошагового BAdam.", + }, + "zh": { + "label": "切换频率", + "info": "Layer-wise BAdam 优化器的块切换频率。", + }, + "ko": { + "label": "전환 간격", + "info": "레이어-BAdam을 위한 블록 업데이트 간 스텝 수.", + }, + }, + "badam_update_ratio": { + "en": { + "label": "Update ratio", + "info": "The ratio of the update for ratio-wise BAdam.", + }, + "ru": { + "label": "Коэффициент обновления", + "info": "Коэффициент обновления для BAdam с учётом соотношений.", + }, + "zh": { + "label": "Block 更新比例", + "info": "Ratio-wise BAdam 优化器的更新比例。", + }, + "ko": { + "label": "업데이트 비율", + "info": "비율-BAdam의 업데이트 비율.", + }, + }, + "cmd_preview_btn": { + "en": { + "value": "Preview command", + }, + "ru": { + "value": "Просмотр команды", + }, + "zh": { + "value": "预览命令", + }, + "ko": { + "value": "명령어 미리보기", + }, + }, + "arg_save_btn": { + "en": { + "value": "Save arguments", + }, + "ru": { + "value": "Сохранить аргументы", + }, + "zh": { + "value": "保存训练参数", + }, + "ko": { + "value": "Argument 저장", + }, + }, + "arg_load_btn": { + "en": { + "value": "Load arguments", + }, + "ru": { + "value": "Загрузить аргументы", + }, + "zh": { + "value": "载入训练参数", + }, + "ko": { + "value": "Argument 불러오기", + }, + }, + "start_btn": { + "en": { + "value": "Start", + }, + "ru": { + "value": "Начать", + }, + "zh": { + "value": "开始", + }, + "ko": { + "value": "시작", + }, + }, + "stop_btn": { + "en": { + "value": "Abort", + }, + "ru": { + "value": "Прервать", + }, + "zh": { + "value": "中断", + }, + "ko": { + "value": "중단", + }, + }, + "output_dir": { + "en": { + "label": "Output dir", + "info": "Directory for saving results.", + }, + "ru": { + "label": "Выходной каталог", + "info": "Каталог для сохранения результатов.", + }, + "zh": { + "label": "输出目录", + "info": "保存结果的路径。", + }, + "ko": { + "label": "출력 디렉토리", + "info": "결과를 저장할 디렉토리.", + }, + }, + "config_path": { + "en": { + "label": "Config path", + "info": "Path to config saving arguments.", + }, + "ru": { + "label": "Путь к конфигурации", + "info": "Путь для сохранения аргументов конфигурации.", + }, + "zh": { + "label": "配置路径", + "info": "保存训练参数的配置文件路径。", + }, + "ko": { + "label": "설정 경로", + "info": "Arguments 저장 파일 경로.", + }, + }, + "device_count": { + "en": { + "label": "Device count", + "info": "Number of devices available.", + }, + "ru": { + "label": "Количество устройств", + "info": "Количество доступных устройств.", + }, + "zh": { + "label": "设备数量", + "info": "当前可用的运算设备数。", + }, + "ko": { + "label": "디바이스 수", + "info": "사용 가능한 디바이스 수.", + }, + }, + "ds_stage": { + "en": { + "label": "DeepSpeed stage", + "info": "DeepSpeed stage for distributed training.", + }, + "ru": { + "label": "Этап DeepSpeed", + "info": "Этап DeepSpeed для распределенного обучения.", + }, + "zh": { + "label": "DeepSpeed stage", + "info": "多卡训练的 DeepSpeed stage。", + }, + "ko": { + "label": "DeepSpeed 단계", + "info": "분산 학습을 위한 DeepSpeed 단계.", + }, + }, + "ds_offload": { + "en": { + "label": "Enable offload", + "info": "Enable DeepSpeed offload (slow down training).", + }, + "ru": { + "label": "Включить выгрузку", + "info": "включить выгрузку DeepSpeed (замедлит обучение).", + }, + "zh": { + "label": "使用 offload", + "info": "使用 DeepSpeed offload(会减慢速度)。", + }, + "ko": { + "label": "오프로딩 활성화", + "info": "DeepSpeed 오프로딩 활성화 (훈련 속도 느려짐).", + }, + }, + "output_box": { + "en": { + "value": "Ready.", + }, + "ru": { + "value": "Готово.", + }, + "zh": { + "value": "准备就绪。", + }, + "ko": { + "value": "준비 완료.", + }, + }, + "loss_viewer": { + "en": { + "label": "Loss", + }, + "ru": { + "label": "Потери", + }, + "zh": { + "label": "损失", + }, + "ko": { + "label": "손실", + }, + }, + "predict": { + "en": { + "label": "Save predictions", + }, + "ru": { + "label": "Сохранить предсказания", + }, + "zh": { + "label": "保存预测结果", + }, + "ko": { + "label": "예측 결과 저장", + }, + }, + "infer_backend": { + "en": { + "label": "Inference engine", + }, + "ru": { + "label": "Инференс движок", + }, + "zh": { + "label": "推理引擎", + }, + "ko": { + "label": "추론 엔진", + }, + }, + "infer_dtype": { + "en": { + "label": "Inference data type", + }, + "ru": { + "label": "Тип данных для вывода", + }, + "zh": { + "label": "推理数据类型", + }, + "ko": { + "label": "추론 데이터 유형", + }, + }, + "load_btn": { + "en": { + "value": "Load model", + }, + "ru": { + "value": "Загрузить модель", + }, + "zh": { + "value": "加载模型", + }, + "ko": { + "value": "모델 불러오기", + }, + }, + "unload_btn": { + "en": { + "value": "Unload model", + }, + "ru": { + "value": "Выгрузить модель", + }, + "zh": { + "value": "卸载模型", + }, + "ko": { + "value": "모델 언로드", + }, + }, + "info_box": { + "en": { + "value": "Model unloaded, please load a model first.", + }, + "ru": { + "value": "Модель не загружена, загрузите модель сначала.", + }, + "zh": { + "value": "模型未加载,请先加载模型。", + }, + "ko": { + "value": "모델이 언로드되었습니다. 모델을 먼저 불러오십시오.", + }, + }, + "role": { + "en": { + "label": "Role", + }, + "ru": { + "label": "Роль", + }, + "zh": { + "label": "角色", + }, + "ko": { + "label": "역할", + }, + }, + "system": { + "en": { + "placeholder": "System prompt (optional)", + }, + "ru": { + "placeholder": "Системный запрос (по желанию)", + }, + "zh": { + "placeholder": "系统提示词(非必填)", + }, + "ko": { + "placeholder": "시스템 프롬프트 (선택 사항)", + }, + }, + "tools": { + "en": { + "placeholder": "Tools (optional)", + }, + "ru": { + "placeholder": "Инструменты (по желанию)", + }, + "zh": { + "placeholder": "工具列表(非必填)", + }, + "ko": { + "placeholder": "툴 (선택 사항)", + }, + }, + "image": { + "en": { + "label": "Image (optional)", + }, + "ru": { + "label": "Изображение (по желанию)", + }, + "zh": { + "label": "图像(非必填)", + }, + "ko": { + "label": "이미지 (선택 사항)", + }, + }, + "query": { + "en": { + "placeholder": "Input...", + }, + "ru": { + "placeholder": "Ввод...", + }, + "zh": { + "placeholder": "输入...", + }, + "ko": { + "placeholder": "입력...", + }, + }, + "submit_btn": { + "en": { + "value": "Submit", + }, + "ru": { + "value": "Отправить", + }, + "zh": { + "value": "提交", + }, + "ko": { + "value": "제출", + }, + }, + "max_length": { + "en": { + "label": "Maximum length", + }, + "ru": { + "label": "Максимальная длина", + }, + "zh": { + "label": "最大长度", + }, + "ko": { + "label": "최대 길이", + }, + }, + "max_new_tokens": { + "en": { + "label": "Maximum new tokens", + }, + "ru": { + "label": "Максимальное количество новых токенов", + }, + "zh": { + "label": "最大生成长度", + }, + "ko": { + "label": "응답의 최대 길이", + }, + }, + "top_p": { + "en": { + "label": "Top-p", + }, + "ru": { + "label": "Лучшие-p", + }, + "zh": { + "label": "Top-p 采样值", + }, + "ko": { + "label": "Top-p", + }, + }, + "temperature": { + "en": { + "label": "Temperature", + }, + "ru": { + "label": "Температура", + }, + "zh": { + "label": "温度系数", + }, + "ko": { + "label": "온도", + }, + }, + "clear_btn": { + "en": { + "value": "Clear history", + }, + "ru": { + "value": "Очистить историю", + }, + "zh": { + "value": "清空历史", + }, + "ko": { + "value": "기록 지우기", + }, + }, + "export_size": { + "en": { + "label": "Max shard size (GB)", + "info": "The maximum size for a model file.", + }, + "ru": { + "label": "Максимальный размер фрагмента (ГБ)", + "info": "Максимальный размер файла модели.", + }, + "zh": { + "label": "最大分块大小(GB)", + "info": "单个模型文件的最大大小。", + }, + "ko": { + "label": "최대 샤드 크기 (GB)", + "info": "모델 파일의 최대 크기.", + }, + }, + "export_quantization_bit": { + "en": { + "label": "Export quantization bit.", + "info": "Quantizing the exported model.", + }, + "ru": { + "label": "Экспорт бита квантования", + "info": "Квантование экспортируемой модели.", + }, + "zh": { + "label": "导出量化等级", + "info": "量化导出模型。", + }, + "ko": { + "label": "양자화 비트 내보내기", + "info": "내보낸 모델의 양자화.", + }, + }, + "export_quantization_dataset": { + "en": { + "label": "Export quantization dataset", + "info": "The calibration dataset used for quantization.", + }, + "ru": { + "label": "Экспорт набора данных для квантования", + "info": "Набор данных калибровки, используемый для квантования.", + }, + "zh": { + "label": "导出量化数据集", + "info": "量化过程中使用的校准数据集。", + }, + "ko": { + "label": "양자화 데이터셋 내보내기", + "info": "양자화에 사용되는 교정 데이터셋.", + }, + }, + "export_device": { + "en": { + "label": "Export device", + "info": "Which device should be used to export model.", + }, + "ru": { + "label": "Экспорт устройство", + "info": "Какое устройство следует использовать для экспорта модели.", + }, + "zh": { + "label": "导出设备", + "info": "导出模型使用的设备类型。", + }, + "ko": { + "label": "내보낼 장치", + "info": "모델을 내보내는 데 사용할 장치.", + }, + }, + "export_legacy_format": { + "en": { + "label": "Export legacy format", + "info": "Do not use safetensors to save the model.", + }, + "ru": { + "label": "Экспорт в устаревший формат", + "info": "Не использовать safetensors для сохранения модели.", + }, + "zh": { + "label": "导出旧格式", + "info": "不使用 safetensors 格式保存模型。", + }, + "ko": { + "label": "레거시 형식 내보내기", + "info": "모델을 저장하는 데 safetensors를 사용하지 않습니다.", + }, + }, + "export_dir": { + "en": { + "label": "Export dir", + "info": "Directory to save exported model.", + }, + "ru": { + "label": "Каталог экспорта", + "info": "Каталог для сохранения экспортированной модели.", + }, + "zh": { + "label": "导出目录", + "info": "保存导出模型的文件夹路径。", + }, + "ko": { + "label": "내보내기 디렉토리", + "info": "내보낸 모델을 저장할 디렉토리.", + }, + }, + "export_hub_model_id": { + "en": { + "label": "HF Hub ID (optional)", + "info": "Repo ID for uploading model to Hugging Face hub.", + }, + "ru": { + "label": "HF Hub ID (опционально)", + "info": "Идентификатор репозитория для загрузки модели на Hugging Face hub.", + }, + "zh": { + "label": "HF Hub ID(非必填)", + "info": "用于将模型上传至 Hugging Face Hub 的仓库 ID。", + }, + "ko": { + "label": "HF 허브 ID (선택 사항)", + "info": "모델을 Hugging Face 허브에 업로드하기 위한 레포 ID.", + }, + }, + "export_btn": { + "en": { + "value": "Export", + }, + "ru": { + "value": "Экспорт", + }, + "zh": { + "value": "开始导出", + }, + "ko": { + "value": "내보내기", + }, + }, +} + + +ALERTS = { + "err_conflict": { + "en": "A process is in running, please abort it first.", + "ru": "Процесс уже запущен, пожалуйста, сначала прервите его.", + "zh": "任务已存在,请先中断训练。", + "ko": "프로세스가 실행 중입니다. 먼저 중단하십시오.", + }, + "err_exists": { + "en": "You have loaded a model, please unload it first.", + "ru": "Вы загрузили модель, сначала разгрузите ее.", + "zh": "模型已存在,请先卸载模型。", + "ko": "모델이 로드되었습니다. 먼저 언로드하십시오.", + }, + "err_no_model": { + "en": "Please select a model.", + "ru": "Пожалуйста, выберите модель.", + "zh": "请选择模型。", + "ko": "모델을 선택하십시오.", + }, + "err_no_path": { + "en": "Model not found.", + "ru": "Модель не найдена.", + "zh": "模型未找到。", + "ko": "모델을 찾을 수 없습니다.", + }, + "err_no_dataset": { + "en": "Please choose a dataset.", + "ru": "Пожалуйста, выберите набор данных.", + "zh": "请选择数据集。", + "ko": "데이터 세트를 선택하십시오.", + }, + "err_no_adapter": { + "en": "Please select an adapter.", + "ru": "Пожалуйста, выберите адаптер.", + "zh": "请选择适配器。", + "ko": "어댑터를 선택하십시오.", + }, + "err_no_output_dir": { + "en": "Please provide output dir.", + "ru": "Пожалуйста, укажите выходную директорию.", + "zh": "请填写输出目录。", + "ko": "출력 디렉토리를 제공하십시오.", + }, + "err_no_reward_model": { + "en": "Please select a reward model.", + "ru": "Пожалуйста, выберите модель вознаграждения.", + "zh": "请选择奖励模型。", + "ko": "리워드 모델을 선택하십시오.", + }, + "err_no_export_dir": { + "en": "Please provide export dir.", + "ru": "Пожалуйста, укажите каталог для экспорта.", + "zh": "请填写导出目录。", + "ko": "Export 디렉토리를 제공하십시오.", + }, + "err_gptq_lora": { + "en": "Please merge adapters before quantizing the model.", + "ru": "Пожалуйста, объедините адаптеры перед квантованием модели.", + "zh": "量化模型前请先合并适配器。", + "ko": "모델을 양자화하기 전에 어댑터를 병합하십시오.", + }, + "err_failed": { + "en": "Failed.", + "ru": "Ошибка.", + "zh": "训练出错。", + "ko": "실패했습니다.", + }, + "err_demo": { + "en": "Training is unavailable in demo mode, duplicate the space to a private one first.", + "ru": "Обучение недоступно в демонстрационном режиме, сначала скопируйте пространство в частное.", + "zh": "展示模式不支持训练,请先复制到私人空间。", + "ko": "데모 모드에서는 훈련을 사용할 수 없습니다. 먼저 프라이빗 레포지토리로 작업 공간을 복제하십시오.", + }, + "err_tool_name": { + "en": "Tool name not found.", + "ru": "Имя инструмента не найдено.", + "zh": "工具名称未找到。", + "ko": "툴 이름을 찾을 수 없습니다.", + }, + "err_json_schema": { + "en": "Invalid JSON schema.", + "ru": "Неверная схема JSON.", + "zh": "Json 格式错误。", + "ko": "잘못된 JSON 스키마입니다.", + }, + "err_config_not_found": { + "en": "Config file is not found.", + "ru": "Файл конфигурации не найден.", + "zh": "未找到配置文件。", + "ko": "Config 파일을 찾을 수 없습니다.", + }, + "warn_no_cuda": { + "en": "CUDA environment was not detected.", + "ru": "Среда CUDA не обнаружена.", + "zh": "未检测到 CUDA 环境。", + "ko": "CUDA 환경이 감지되지 않았습니다.", + }, + "warn_output_dir_exists": { + "en": "Output dir already exists, will resume training from here.", + "ru": "Выходной каталог уже существует, обучение будет продолжено отсюда.", + "zh": "输出目录已存在,将从该断点恢复训练。", + "ko": "출력 디렉토리가 이미 존재합니다. 위 출력 디렉토리에 저장된 학습을 재개합니다.", + }, + "info_aborting": { + "en": "Aborted, wait for terminating...", + "ru": "Прервано, ожидание завершения...", + "zh": "训练中断,正在等待进程结束……", + "ko": "중단되었습니다. 종료를 기다리십시오...", + }, + "info_aborted": { + "en": "Ready.", + "ru": "Готово.", + "zh": "准备就绪。", + "ko": "준비되었습니다.", + }, + "info_finished": { + "en": "Finished.", + "ru": "Завершено.", + "zh": "训练完毕。", + "ko": "완료되었습니다.", + }, + "info_config_saved": { + "en": "Arguments have been saved at: ", + "ru": "Аргументы были сохранены по адресу: ", + "zh": "训练参数已保存至:", + "ko": "매개변수가 저장되었습니다: ", + }, + "info_config_loaded": { + "en": "Arguments have been restored.", + "ru": "Аргументы были восстановлены.", + "zh": "训练参数已载入。", + "ko": "매개변수가 복원되었습니다.", + }, + "info_loading": { + "en": "Loading model...", + "ru": "Загрузка модели...", + "zh": "加载中……", + "ko": "모델 로딩 중...", + }, + "info_unloading": { + "en": "Unloading model...", + "ru": "Выгрузка модели...", + "zh": "卸载中……", + "ko": "모델 언로딩 중...", + }, + "info_loaded": { + "en": "Model loaded, now you can chat with your model!", + "ru": "Модель загружена, теперь вы можете общаться с вашей моделью!", + "zh": "模型已加载,可以开始聊天了!", + "ko": "모델이 로드되었습니다. 이제 모델과 채팅할 수 있습니다!", + }, + "info_unloaded": { + "en": "Model unloaded.", + "ru": "Модель выгружена.", + "zh": "模型已卸载。", + "ko": "모델이 언로드되었습니다.", + }, + "info_exporting": { + "en": "Exporting model...", + "ru": "Экспорт модели...", + "zh": "正在导出模型……", + "ko": "모델 내보내기 중...", + }, + "info_exported": { + "en": "Model exported.", + "ru": "Модель экспортирована.", + "zh": "模型导出完成。", + "ko": "모델이 내보내졌습니다.", + }, +} diff --git a/IOPO/Method-IOPO/src/llamafactory/webui/manager.py b/IOPO/Method-IOPO/src/llamafactory/webui/manager.py new file mode 100644 index 00000000..ebe9f1b9 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/webui/manager.py @@ -0,0 +1,79 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from typing import TYPE_CHECKING, Dict, Generator, List, Set, Tuple + + +if TYPE_CHECKING: + from gradio.components import Component + + +class Manager: + def __init__(self) -> None: + self._id_to_elem: Dict[str, "Component"] = {} + self._elem_to_id: Dict["Component", str] = {} + + def add_elems(self, tab_name: str, elem_dict: Dict[str, "Component"]) -> None: + r""" + Adds elements to manager. + """ + for elem_name, elem in elem_dict.items(): + elem_id = "{}.{}".format(tab_name, elem_name) + self._id_to_elem[elem_id] = elem + self._elem_to_id[elem] = elem_id + + def get_elem_list(self) -> List["Component"]: + r""" + Returns the list of all elements. + """ + return list(self._id_to_elem.values()) + + def get_elem_iter(self) -> Generator[Tuple[str, "Component"], None, None]: + r""" + Returns an iterator over all elements with their names. + """ + for elem_id, elem in self._id_to_elem.items(): + yield elem_id.split(".")[-1], elem + + def get_elem_by_id(self, elem_id: str) -> "Component": + r""" + Gets element by id. + + Example: top.lang, train.dataset + """ + return self._id_to_elem[elem_id] + + def get_id_by_elem(self, elem: "Component") -> str: + r""" + Gets id by element. + """ + return self._elem_to_id[elem] + + def get_base_elems(self) -> Set["Component"]: + r""" + Gets the base elements that are commonly used. + """ + return { + self._id_to_elem["top.lang"], + self._id_to_elem["top.model_name"], + self._id_to_elem["top.model_path"], + self._id_to_elem["top.finetuning_type"], + self._id_to_elem["top.checkpoint_path"], + self._id_to_elem["top.quantization_bit"], + self._id_to_elem["top.quantization_method"], + self._id_to_elem["top.template"], + self._id_to_elem["top.rope_scaling"], + self._id_to_elem["top.booster"], + self._id_to_elem["top.visual_inputs"], + } diff --git a/IOPO/Method-IOPO/src/llamafactory/webui/runner.py b/IOPO/Method-IOPO/src/llamafactory/webui/runner.py new file mode 100644 index 00000000..4ce35a02 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/webui/runner.py @@ -0,0 +1,435 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import os +from copy import deepcopy +from subprocess import Popen, TimeoutExpired +from typing import TYPE_CHECKING, Any, Dict, Generator, Optional + +from transformers.trainer import TRAINING_ARGS_NAME + +from ..extras.constants import LLAMABOARD_CONFIG, PEFT_METHODS, TRAINING_STAGES +from ..extras.misc import is_gpu_or_npu_available, torch_gc +from ..extras.packages import is_gradio_available +from .common import DEFAULT_CACHE_DIR, DEFAULT_CONFIG_DIR, QUANTIZATION_BITS, get_save_dir, load_config +from .locales import ALERTS, LOCALES +from .utils import abort_process, gen_cmd, get_eval_results, get_trainer_info, load_args, save_args, save_cmd + + +if is_gradio_available(): + import gradio as gr + + +if TYPE_CHECKING: + from gradio.components import Component + + from .manager import Manager + + +class Runner: + def __init__(self, manager: "Manager", demo_mode: bool = False) -> None: + self.manager = manager + self.demo_mode = demo_mode + """ Resume """ + self.trainer: Optional["Popen"] = None + self.do_train = True + self.running_data: Dict["Component", Any] = None + """ State """ + self.aborted = False + self.running = False + + def set_abort(self) -> None: + self.aborted = True + if self.trainer is not None: + abort_process(self.trainer.pid) + + def _initialize(self, data: Dict["Component", Any], do_train: bool, from_preview: bool) -> str: + get = lambda elem_id: data[self.manager.get_elem_by_id(elem_id)] + lang, model_name, model_path = get("top.lang"), get("top.model_name"), get("top.model_path") + dataset = get("train.dataset") if do_train else get("eval.dataset") + + if self.running: + return ALERTS["err_conflict"][lang] + + if not model_name: + return ALERTS["err_no_model"][lang] + + if not model_path: + return ALERTS["err_no_path"][lang] + + if not dataset: + return ALERTS["err_no_dataset"][lang] + + if not from_preview and self.demo_mode: + return ALERTS["err_demo"][lang] + + if do_train: + if not get("train.output_dir"): + return ALERTS["err_no_output_dir"][lang] + + stage = TRAINING_STAGES[get("train.training_stage")] + if stage == "ppo" and not get("train.reward_model"): + return ALERTS["err_no_reward_model"][lang] + else: + if not get("eval.output_dir"): + return ALERTS["err_no_output_dir"][lang] + + if not from_preview and not is_gpu_or_npu_available(): + gr.Warning(ALERTS["warn_no_cuda"][lang]) + + return "" + + def _finalize(self, lang: str, finish_info: str) -> str: + finish_info = ALERTS["info_aborted"][lang] if self.aborted else finish_info + self.trainer = None + self.aborted = False + self.running = False + self.running_data = None + torch_gc() + return finish_info + + def _parse_train_args(self, data: Dict["Component", Any]) -> Dict[str, Any]: + get = lambda elem_id: data[self.manager.get_elem_by_id(elem_id)] + model_name, finetuning_type = get("top.model_name"), get("top.finetuning_type") + user_config = load_config() + + args = dict( + stage=TRAINING_STAGES[get("train.training_stage")], + do_train=True, + model_name_or_path=get("top.model_path"), + cache_dir=user_config.get("cache_dir", None), + preprocessing_num_workers=16, + finetuning_type=finetuning_type, + template=get("top.template"), + rope_scaling=get("top.rope_scaling") if get("top.rope_scaling") in ["linear", "dynamic"] else None, + flash_attn="fa2" if get("top.booster") == "flashattn2" else "auto", + use_unsloth=(get("top.booster") == "unsloth"), + visual_inputs=get("top.visual_inputs"), + dataset_dir=get("train.dataset_dir"), + dataset=",".join(get("train.dataset")), + cutoff_len=get("train.cutoff_len"), + learning_rate=float(get("train.learning_rate")), + num_train_epochs=float(get("train.num_train_epochs")), + max_samples=int(get("train.max_samples")), + per_device_train_batch_size=get("train.batch_size"), + gradient_accumulation_steps=get("train.gradient_accumulation_steps"), + lr_scheduler_type=get("train.lr_scheduler_type"), + max_grad_norm=float(get("train.max_grad_norm")), + logging_steps=get("train.logging_steps"), + save_steps=get("train.save_steps"), + warmup_steps=get("train.warmup_steps"), + neftune_noise_alpha=get("train.neftune_alpha") or None, + optim=get("train.optim"), + packing=get("train.packing") or get("train.neat_packing"), + neat_packing=get("train.neat_packing"), + train_on_prompt=get("train.train_on_prompt"), + mask_history=get("train.mask_history"), + resize_vocab=get("train.resize_vocab"), + use_llama_pro=get("train.use_llama_pro"), + shift_attn=get("train.shift_attn"), + report_to="all" if get("train.report_to") else "none", + use_galore=get("train.use_galore"), + use_badam=get("train.use_badam"), + output_dir=get_save_dir(model_name, finetuning_type, get("train.output_dir")), + fp16=(get("train.compute_type") == "fp16"), + bf16=(get("train.compute_type") == "bf16"), + pure_bf16=(get("train.compute_type") == "pure_bf16"), + plot_loss=True, + ddp_timeout=180000000, + include_num_input_tokens_seen=True, + ) + + # checkpoints + if get("top.checkpoint_path"): + if finetuning_type in PEFT_METHODS: # list + args["adapter_name_or_path"] = ",".join( + [get_save_dir(model_name, finetuning_type, adapter) for adapter in get("top.checkpoint_path")] + ) + else: # str + args["model_name_or_path"] = get_save_dir(model_name, finetuning_type, get("top.checkpoint_path")) + + # quantization + if get("top.quantization_bit") in QUANTIZATION_BITS: + args["quantization_bit"] = int(get("top.quantization_bit")) + args["quantization_method"] = get("top.quantization_method") + + # freeze config + if args["finetuning_type"] == "freeze": + args["freeze_trainable_layers"] = get("train.freeze_trainable_layers") + args["freeze_trainable_modules"] = get("train.freeze_trainable_modules") + args["freeze_extra_modules"] = get("train.freeze_extra_modules") or None + + # lora config + if args["finetuning_type"] == "lora": + args["lora_rank"] = get("train.lora_rank") + args["lora_alpha"] = get("train.lora_alpha") + args["lora_dropout"] = get("train.lora_dropout") + args["loraplus_lr_ratio"] = get("train.loraplus_lr_ratio") or None + args["create_new_adapter"] = get("train.create_new_adapter") + args["use_rslora"] = get("train.use_rslora") + args["use_dora"] = get("train.use_dora") + args["pissa_init"] = get("train.use_pissa") + args["pissa_convert"] = get("train.use_pissa") + args["lora_target"] = get("train.lora_target") or "all" + args["additional_target"] = get("train.additional_target") or None + + if args["use_llama_pro"]: + args["freeze_trainable_layers"] = get("train.freeze_trainable_layers") + + # rlhf config + if args["stage"] == "ppo": + if finetuning_type in PEFT_METHODS: + args["reward_model"] = ",".join( + [get_save_dir(model_name, finetuning_type, adapter) for adapter in get("train.reward_model")] + ) + else: + args["reward_model"] = get_save_dir(model_name, finetuning_type, get("train.reward_model")) + + args["reward_model_type"] = "lora" if finetuning_type == "lora" else "full" + args["ppo_score_norm"] = get("train.ppo_score_norm") + args["ppo_whiten_rewards"] = get("train.ppo_whiten_rewards") + args["top_k"] = 0 + args["top_p"] = 0.9 + elif args["stage"] in ["dpo", "kto"]: + args["pref_beta"] = get("train.pref_beta") + args["pref_ftx"] = get("train.pref_ftx") + args["pref_loss"] = get("train.pref_loss") + + # galore config + if args["use_galore"]: + args["galore_rank"] = get("train.galore_rank") + args["galore_update_interval"] = get("train.galore_update_interval") + args["galore_scale"] = get("train.galore_scale") + args["galore_target"] = get("train.galore_target") + + # badam config + if args["use_badam"]: + args["badam_mode"] = get("train.badam_mode") + args["badam_switch_mode"] = get("train.badam_switch_mode") + args["badam_switch_interval"] = get("train.badam_switch_interval") + args["badam_update_ratio"] = get("train.badam_update_ratio") + + # eval config + if get("train.val_size") > 1e-6 and args["stage"] != "ppo": + args["val_size"] = get("train.val_size") + args["eval_strategy"] = "steps" + args["eval_steps"] = args["save_steps"] + args["per_device_eval_batch_size"] = args["per_device_train_batch_size"] + + # ds config + if get("train.ds_stage") != "none": + ds_stage = get("train.ds_stage") + ds_offload = "offload_" if get("train.ds_offload") else "" + args["deepspeed"] = os.path.join(DEFAULT_CACHE_DIR, "ds_z{}_{}config.json".format(ds_stage, ds_offload)) + + return args + + def _parse_eval_args(self, data: Dict["Component", Any]) -> Dict[str, Any]: + get = lambda elem_id: data[self.manager.get_elem_by_id(elem_id)] + model_name, finetuning_type = get("top.model_name"), get("top.finetuning_type") + user_config = load_config() + + args = dict( + stage="sft", + model_name_or_path=get("top.model_path"), + cache_dir=user_config.get("cache_dir", None), + preprocessing_num_workers=16, + finetuning_type=finetuning_type, + quantization_method=get("top.quantization_method"), + template=get("top.template"), + rope_scaling=get("top.rope_scaling") if get("top.rope_scaling") in ["linear", "dynamic"] else None, + flash_attn="fa2" if get("top.booster") == "flashattn2" else "auto", + use_unsloth=(get("top.booster") == "unsloth"), + visual_inputs=get("top.visual_inputs"), + dataset_dir=get("eval.dataset_dir"), + eval_dataset=",".join(get("eval.dataset")), + cutoff_len=get("eval.cutoff_len"), + max_samples=int(get("eval.max_samples")), + per_device_eval_batch_size=get("eval.batch_size"), + predict_with_generate=True, + max_new_tokens=get("eval.max_new_tokens"), + top_p=get("eval.top_p"), + temperature=get("eval.temperature"), + output_dir=get_save_dir(model_name, finetuning_type, get("eval.output_dir")), + ) + + if get("eval.predict"): + args["do_predict"] = True + else: + args["do_eval"] = True + + # checkpoints + if get("top.checkpoint_path"): + if finetuning_type in PEFT_METHODS: # list + args["adapter_name_or_path"] = ",".join( + [get_save_dir(model_name, finetuning_type, adapter) for adapter in get("top.checkpoint_path")] + ) + else: # str + args["model_name_or_path"] = get_save_dir(model_name, finetuning_type, get("top.checkpoint_path")) + + # quantization + if get("top.quantization_bit") in QUANTIZATION_BITS: + args["quantization_bit"] = int(get("top.quantization_bit")) + args["quantization_method"] = get("top.quantization_method") + + return args + + def _preview(self, data: Dict["Component", Any], do_train: bool) -> Generator[Dict["Component", str], None, None]: + output_box = self.manager.get_elem_by_id("{}.output_box".format("train" if do_train else "eval")) + error = self._initialize(data, do_train, from_preview=True) + if error: + gr.Warning(error) + yield {output_box: error} + else: + args = self._parse_train_args(data) if do_train else self._parse_eval_args(data) + yield {output_box: gen_cmd(args)} + + def _launch(self, data: Dict["Component", Any], do_train: bool) -> Generator[Dict["Component", Any], None, None]: + output_box = self.manager.get_elem_by_id("{}.output_box".format("train" if do_train else "eval")) + error = self._initialize(data, do_train, from_preview=False) + if error: + gr.Warning(error) + yield {output_box: error} + else: + self.do_train, self.running_data = do_train, data + args = self._parse_train_args(data) if do_train else self._parse_eval_args(data) + + os.makedirs(args["output_dir"], exist_ok=True) + save_args(os.path.join(args["output_dir"], LLAMABOARD_CONFIG), self._form_config_dict(data)) + + env = deepcopy(os.environ) + env["LLAMABOARD_ENABLED"] = "1" + env["LLAMABOARD_WORKDIR"] = args["output_dir"] + if args.get("deepspeed", None) is not None: + env["FORCE_TORCHRUN"] = "1" + + self.trainer = Popen("llamafactory-cli train {}".format(save_cmd(args)), env=env, shell=True) + yield from self.monitor() + + def _form_config_dict(self, data: Dict["Component", Any]) -> Dict[str, Any]: + config_dict = {} + skip_ids = ["top.lang", "top.model_path", "train.output_dir", "train.config_path"] + for elem, value in data.items(): + elem_id = self.manager.get_id_by_elem(elem) + if elem_id not in skip_ids: + config_dict[elem_id] = value + + return config_dict + + def preview_train(self, data): + yield from self._preview(data, do_train=True) + + def preview_eval(self, data): + yield from self._preview(data, do_train=False) + + def run_train(self, data): + yield from self._launch(data, do_train=True) + + def run_eval(self, data): + yield from self._launch(data, do_train=False) + + def monitor(self): + self.aborted = False + self.running = True + + get = lambda elem_id: self.running_data[self.manager.get_elem_by_id(elem_id)] + lang, model_name, finetuning_type = get("top.lang"), get("top.model_name"), get("top.finetuning_type") + output_dir = get("{}.output_dir".format("train" if self.do_train else "eval")) + output_path = get_save_dir(model_name, finetuning_type, output_dir) + + output_box = self.manager.get_elem_by_id("{}.output_box".format("train" if self.do_train else "eval")) + progress_bar = self.manager.get_elem_by_id("{}.progress_bar".format("train" if self.do_train else "eval")) + loss_viewer = self.manager.get_elem_by_id("train.loss_viewer") if self.do_train else None + + while self.trainer is not None: + if self.aborted: + yield { + output_box: ALERTS["info_aborting"][lang], + progress_bar: gr.Slider(visible=False), + } + else: + running_log, running_progress, running_loss = get_trainer_info(output_path, self.do_train) + return_dict = { + output_box: running_log, + progress_bar: running_progress, + } + if running_loss is not None: + return_dict[loss_viewer] = running_loss + + yield return_dict + + try: + self.trainer.wait(2) + self.trainer = None + except TimeoutExpired: + continue + + if self.do_train: + if os.path.exists(os.path.join(output_path, TRAINING_ARGS_NAME)): + finish_info = ALERTS["info_finished"][lang] + else: + finish_info = ALERTS["err_failed"][lang] + else: + if os.path.exists(os.path.join(output_path, "all_results.json")): + finish_info = get_eval_results(os.path.join(output_path, "all_results.json")) + else: + finish_info = ALERTS["err_failed"][lang] + + return_dict = { + output_box: self._finalize(lang, finish_info), + progress_bar: gr.Slider(visible=False), + } + yield return_dict + + def save_args(self, data): + output_box = self.manager.get_elem_by_id("train.output_box") + error = self._initialize(data, do_train=True, from_preview=True) + if error: + gr.Warning(error) + return {output_box: error} + + lang = data[self.manager.get_elem_by_id("top.lang")] + config_path = data[self.manager.get_elem_by_id("train.config_path")] + os.makedirs(DEFAULT_CONFIG_DIR, exist_ok=True) + save_path = os.path.join(DEFAULT_CONFIG_DIR, config_path) + + save_args(save_path, self._form_config_dict(data)) + return {output_box: ALERTS["info_config_saved"][lang] + save_path} + + def load_args(self, lang: str, config_path: str): + output_box = self.manager.get_elem_by_id("train.output_box") + config_dict = load_args(os.path.join(DEFAULT_CONFIG_DIR, config_path)) + if config_dict is None: + gr.Warning(ALERTS["err_config_not_found"][lang]) + return {output_box: ALERTS["err_config_not_found"][lang]} + + output_dict: Dict["Component", Any] = {output_box: ALERTS["info_config_loaded"][lang]} + for elem_id, value in config_dict.items(): + output_dict[self.manager.get_elem_by_id(elem_id)] = value + + return output_dict + + def check_output_dir(self, lang: str, model_name: str, finetuning_type: str, output_dir: str): + output_box = self.manager.get_elem_by_id("train.output_box") + output_dict: Dict["Component", Any] = {output_box: LOCALES["output_box"][lang]["value"]} + if model_name and output_dir and os.path.isdir(get_save_dir(model_name, finetuning_type, output_dir)): + gr.Warning(ALERTS["warn_output_dir_exists"][lang]) + output_dict[output_box] = ALERTS["warn_output_dir_exists"][lang] + + output_dir = get_save_dir(model_name, finetuning_type, output_dir) + config_dict = load_args(os.path.join(output_dir, LLAMABOARD_CONFIG)) # load llamaboard config + for elem_id, value in config_dict.items(): + output_dict[self.manager.get_elem_by_id(elem_id)] = value + + return output_dict diff --git a/IOPO/Method-IOPO/src/llamafactory/webui/utils.py b/IOPO/Method-IOPO/src/llamafactory/webui/utils.py new file mode 100644 index 00000000..c52c0887 --- /dev/null +++ b/IOPO/Method-IOPO/src/llamafactory/webui/utils.py @@ -0,0 +1,299 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import json +import os +import signal +from datetime import datetime +from typing import Any, Dict, List, Optional, Tuple + +import psutil +from transformers.trainer_utils import get_last_checkpoint +from yaml import safe_dump, safe_load + +from ..extras.constants import PEFT_METHODS, RUNNING_LOG, TRAINER_LOG, TRAINING_ARGS, TRAINING_STAGES +from ..extras.packages import is_gradio_available, is_matplotlib_available +from ..extras.ploting import gen_loss_plot +from ..model import QuantizationMethod +from .common import DEFAULT_CACHE_DIR, DEFAULT_CONFIG_DIR, get_save_dir +from .locales import ALERTS + + +if is_gradio_available(): + import gradio as gr + + +def abort_process(pid: int) -> None: + r""" + Aborts the processes recursively in a bottom-up way. + """ + try: + children = psutil.Process(pid).children() + if children: + for child in children: + abort_process(child.pid) + + os.kill(pid, signal.SIGABRT) + except Exception: + pass + + +def can_quantize(finetuning_type: str) -> "gr.Dropdown": + r""" + Judges if the quantization is available in this finetuning type. + """ + if finetuning_type not in PEFT_METHODS: + return gr.Dropdown(value="none", interactive=False) + else: + return gr.Dropdown(interactive=True) + + +def can_quantize_to(quantization_method: str) -> "gr.Dropdown": + r""" + Returns the available quantization bits. + """ + if quantization_method == QuantizationMethod.BITS_AND_BYTES.value: + available_bits = ["none", "8", "4"] + elif quantization_method == QuantizationMethod.HQQ.value: + available_bits = ["none", "8", "6", "5", "4", "3", "2", "1"] + elif quantization_method == QuantizationMethod.EETQ.value: + available_bits = ["none", "8"] + + return gr.Dropdown(choices=available_bits) + + +def change_stage(training_stage: str = list(TRAINING_STAGES.keys())[0]) -> Tuple[List[str], bool]: + r""" + Modifys states after changing the training stage. + """ + return [], TRAINING_STAGES[training_stage] == "pt" + + +def check_json_schema(text: str, lang: str) -> None: + r""" + Checks if the json schema is valid. + """ + try: + tools = json.loads(text) + if tools: + assert isinstance(tools, list) + for tool in tools: + if "name" not in tool: + raise NotImplementedError("Name not found.") + except NotImplementedError: + gr.Warning(ALERTS["err_tool_name"][lang]) + except Exception: + gr.Warning(ALERTS["err_json_schema"][lang]) + + +def clean_cmd(args: Dict[str, Any]) -> Dict[str, Any]: + r""" + Removes args with NoneType or False or empty string value. + """ + no_skip_keys = ["packing"] + return {k: v for k, v in args.items() if (k in no_skip_keys) or (v is not None and v is not False and v != "")} + + +def gen_cmd(args: Dict[str, Any]) -> str: + r""" + Generates arguments for previewing. + """ + cmd_lines = ["llamafactory-cli train "] + for k, v in clean_cmd(args).items(): + cmd_lines.append(" --{} {} ".format(k, str(v))) + + if os.name == "nt": + cmd_text = "`\n".join(cmd_lines) + else: + cmd_text = "\\\n".join(cmd_lines) + + cmd_text = "```bash\n{}\n```".format(cmd_text) + return cmd_text + + +def save_cmd(args: Dict[str, Any]) -> str: + r""" + Saves arguments to launch training. + """ + output_dir = args["output_dir"] + os.makedirs(output_dir, exist_ok=True) + + with open(os.path.join(output_dir, TRAINING_ARGS), "w", encoding="utf-8") as f: + safe_dump(clean_cmd(args), f) + + return os.path.join(output_dir, TRAINING_ARGS) + + +def get_eval_results(path: os.PathLike) -> str: + r""" + Gets scores after evaluation. + """ + with open(path, "r", encoding="utf-8") as f: + result = json.dumps(json.load(f), indent=4) + return "```json\n{}\n```\n".format(result) + + +def get_time() -> str: + r""" + Gets current date and time. + """ + return datetime.now().strftime(r"%Y-%m-%d-%H-%M-%S") + + +def get_trainer_info(output_path: os.PathLike, do_train: bool) -> Tuple[str, "gr.Slider", Optional["gr.Plot"]]: + r""" + Gets training infomation for monitor. + """ + running_log = "" + running_progress = gr.Slider(visible=False) + running_loss = None + + running_log_path = os.path.join(output_path, RUNNING_LOG) + if os.path.isfile(running_log_path): + with open(running_log_path, "r", encoding="utf-8") as f: + running_log = f.read() + + trainer_log_path = os.path.join(output_path, TRAINER_LOG) + if os.path.isfile(trainer_log_path): + trainer_log: List[Dict[str, Any]] = [] + with open(trainer_log_path, "r", encoding="utf-8") as f: + for line in f: + trainer_log.append(json.loads(line)) + + if len(trainer_log) != 0: + latest_log = trainer_log[-1] + percentage = latest_log["percentage"] + label = "Running {:d}/{:d}: {} < {}".format( + latest_log["current_steps"], + latest_log["total_steps"], + latest_log["elapsed_time"], + latest_log["remaining_time"], + ) + running_progress = gr.Slider(label=label, value=percentage, visible=True) + + if do_train and is_matplotlib_available(): + running_loss = gr.Plot(gen_loss_plot(trainer_log)) + + return running_log, running_progress, running_loss + + +def load_args(config_path: str) -> Optional[Dict[str, Any]]: + r""" + Loads saved arguments. + """ + try: + with open(config_path, "r", encoding="utf-8") as f: + return safe_load(f) + except Exception: + return None + + +def save_args(config_path: str, config_dict: Dict[str, Any]): + r""" + Saves arguments. + """ + with open(config_path, "w", encoding="utf-8") as f: + safe_dump(config_dict, f) + + +def list_config_paths(current_time: str) -> "gr.Dropdown": + r""" + Lists all the saved configuration files. + """ + config_files = ["{}.yaml".format(current_time)] + if os.path.isdir(DEFAULT_CONFIG_DIR): + for file_name in os.listdir(DEFAULT_CONFIG_DIR): + if file_name.endswith(".yaml") and file_name not in config_files: + config_files.append(file_name) + + return gr.Dropdown(choices=config_files) + + +def list_output_dirs(model_name: Optional[str], finetuning_type: str, current_time: str) -> "gr.Dropdown": + r""" + Lists all the directories that can resume from. + """ + output_dirs = ["train_{}".format(current_time)] + if model_name: + save_dir = get_save_dir(model_name, finetuning_type) + if save_dir and os.path.isdir(save_dir): + for folder in os.listdir(save_dir): + output_dir = os.path.join(save_dir, folder) + if os.path.isdir(output_dir) and get_last_checkpoint(output_dir) is not None: + output_dirs.append(folder) + + return gr.Dropdown(choices=output_dirs) + + +def create_ds_config() -> None: + r""" + Creates deepspeed config. + """ + os.makedirs(DEFAULT_CACHE_DIR, exist_ok=True) + ds_config = { + "train_batch_size": "auto", + "train_micro_batch_size_per_gpu": "auto", + "gradient_accumulation_steps": "auto", + "gradient_clipping": "auto", + "zero_allow_untested_optimizer": True, + "fp16": { + "enabled": "auto", + "loss_scale": 0, + "loss_scale_window": 1000, + "initial_scale_power": 16, + "hysteresis": 2, + "min_loss_scale": 1, + }, + "bf16": {"enabled": "auto"}, + } + offload_config = { + "device": "cpu", + "pin_memory": True, + } + ds_config["zero_optimization"] = { + "stage": 2, + "allgather_partitions": True, + "allgather_bucket_size": 5e8, + "overlap_comm": True, + "reduce_scatter": True, + "reduce_bucket_size": 5e8, + "contiguous_gradients": True, + "round_robin_gradients": True, + } + with open(os.path.join(DEFAULT_CACHE_DIR, "ds_z2_config.json"), "w", encoding="utf-8") as f: + json.dump(ds_config, f, indent=2) + + ds_config["zero_optimization"]["offload_optimizer"] = offload_config + with open(os.path.join(DEFAULT_CACHE_DIR, "ds_z2_offload_config.json"), "w", encoding="utf-8") as f: + json.dump(ds_config, f, indent=2) + + ds_config["zero_optimization"] = { + "stage": 3, + "overlap_comm": True, + "contiguous_gradients": True, + "sub_group_size": 1e9, + "reduce_bucket_size": "auto", + "stage3_prefetch_bucket_size": "auto", + "stage3_param_persistence_threshold": "auto", + "stage3_max_live_parameters": 1e9, + "stage3_max_reuse_distance": 1e9, + "stage3_gather_16bit_weights_on_model_save": True, + } + with open(os.path.join(DEFAULT_CACHE_DIR, "ds_z3_config.json"), "w", encoding="utf-8") as f: + json.dump(ds_config, f, indent=2) + + ds_config["zero_optimization"]["offload_optimizer"] = offload_config + ds_config["zero_optimization"]["offload_param"] = offload_config + with open(os.path.join(DEFAULT_CACHE_DIR, "ds_z3_offload_config.json"), "w", encoding="utf-8") as f: + json.dump(ds_config, f, indent=2) diff --git a/IOPO/Method-IOPO/src/train.py b/IOPO/Method-IOPO/src/train.py new file mode 100644 index 00000000..6703ffdb --- /dev/null +++ b/IOPO/Method-IOPO/src/train.py @@ -0,0 +1,28 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +from llamafactory.train.tuner import run_exp + + +def main(): + run_exp() + + +def _mp_fn(index): + # For xla_spawn (TPUs) + run_exp() + + +if __name__ == "__main__": + main() diff --git a/IOPO/Method-IOPO/src/webui.py b/IOPO/Method-IOPO/src/webui.py new file mode 100644 index 00000000..99370af2 --- /dev/null +++ b/IOPO/Method-IOPO/src/webui.py @@ -0,0 +1,27 @@ +# Copyright 2024 the LlamaFactory team. +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import os + +from llamafactory.webui.interface import create_ui + + +def main(): + gradio_share = os.environ.get("GRADIO_SHARE", "0").lower() in ["true", "1"] + server_name = os.environ.get("GRADIO_SERVER_NAME", "0.0.0.0") + create_ui().queue().launch(share=gradio_share, server_name=server_name, inbrowser=True) + + +if __name__ == "__main__": + main() diff --git a/IOPO/README.md b/IOPO/README.md new file mode 100644 index 00000000..bc780774 --- /dev/null +++ b/IOPO/README.md @@ -0,0 +1,37 @@ +# IOPO: Empowering LLMs with Complex Instruction Following via Input-Output Preference Optimization +Xinghua Zhang, Haiyang Yu, Cheng Fu, Fei Huang, Yongbin Li + +arXiv: [[Abstract]](https://arxiv.org/abs/2411.06208)/[[PDF]](https://arxiv.org/pdf/2411.06208) + +## Abstract +In the realm of large language models (LLMs), the ability of models to accurately follow instructions is paramount as more agents and applications leverage LLMs for construction, where the complexity of instructions are rapidly increasing. However, on the one hand, there is only a certain amount of complex instruction evaluation data; on the other hand, there are no dedicated algorithms to improve the ability to follow complex instructions. To this end, this paper introduces TRACE, a benchmark for improving and evaluating the complex instructionfollowing ability, which consists of 120K training data and 1K evaluation data. Furthermore, we propose IOPO (Input-Output Preference Optimization) alignment method which takes both input and output preference pairs into consideration, where LLMs not only rapidly align with response preferences but also meticulously explore the instruction preferences. Extensive experiments on both in-domain and outof-domain datasets confirm the effectiveness of IOPO, showing 8.15%, 2.18% improvements on in-domain data and 6.29%, 3.13% on outof-domain data compared to SFT and DPO respectively. + +## Comparison + +intro + + +## TRACE Benchmark +TRACE consists of 119,345 instructions for model training, and 1,042 instructions for evaluation, where the minimum and maximum number of constraints per instruction are 1 and 15, with average numbers of 4.36 and 4.89, respectively. + +benchmark + +## How to Run +``` +cd Method-IOPO/ +pip install -e ".[torch,metrics]" +llamafactory-cli train examples/qwen2_lora_iopo.yaml +``` + +## Citation +If this work is helpful to you, welcome to cite our paper as: +``` +@misc{zhang2024iopo, + title={IOPO: Empowering LLMs with Complex Instruction Following via Input-Output Preference Optimization}, + author={Xinghua Zhang, Haiyang Yu, Cheng Fu, Fei Huang, Yongbin Li}, + year={2024}, + eprint={2411.06208}, + archivePrefix={arXiv}, + primaryClass={cs.CL} +} +``` diff --git a/IOPO/figs/intro.pdf b/IOPO/figs/intro.pdf new file mode 100644 index 00000000..f801404a Binary files /dev/null and b/IOPO/figs/intro.pdf differ diff --git a/IOPO/figs/intro.png b/IOPO/figs/intro.png new file mode 100644 index 00000000..a8798a80 Binary files /dev/null and b/IOPO/figs/intro.png differ diff --git a/IOPO/figs/trace_test_constraint_type.pdf b/IOPO/figs/trace_test_constraint_type.pdf new file mode 100644 index 00000000..8b6e27d7 Binary files /dev/null and b/IOPO/figs/trace_test_constraint_type.pdf differ diff --git a/IOPO/figs/trace_test_constraint_type.png b/IOPO/figs/trace_test_constraint_type.png new file mode 100644 index 00000000..04770c2d Binary files /dev/null and b/IOPO/figs/trace_test_constraint_type.png differ