Download tests/quality/think_loss_cases.json from Sariel00/Ling-3.0-tiny-RKNN: direct link, hf CLI and curl.
- Browser
- Download file 13.1 kB
-
https://huggingface.co/Sariel00/Ling-3.0-tiny-RKNN/resolve/main/tests/quality/think_loss_cases.json
- Command line
-
hf download hf://Sariel00/Ling-3.0-tiny-RKNN/tests/quality/think_loss_cases.json
-
curl -L -o think_loss_cases.json https://huggingface.co/Sariel00/Ling-3.0-tiny-RKNN/resolve/main/tests/quality/think_loss_cases.json
13.1 kB
| [ | |
| { | |
| "id": "office_zh", | |
| "domain": "中文办公与事实约束", | |
| "prompt": "请根据以下记录编写一份可直接发给项目组的中文部署说明,覆盖结论、职责、验收、异常处理和限制。不要补造事实。记录:公司部署一台本地推理设备,管理员陈敏负责模型更新,李舟负责知识库整理,周宁负责验收。第一阶段只处理内部制度与会议记录,不允许访问公网。周一整理资料,周二建立知识库,周三执行验收;周三未通过则顺延,不承诺周四上线。检索结果必须带出处;证据不足时明确说明,不猜测。允许更换模型,但需先保存旧版本和配置,故障时恢复。访问分为管理员和普通员工;员工只使用对话页面。会议纪要有草稿与已确认两种状态,草稿不能作为制度依据。验收问题覆盖检索、引用、权限与重启恢复;具体响应时间暂未设定。", | |
| "reasoning": "我需要把记录中的明确事实转换为一份部署说明,并保留所有尚未确定的事项。人员职责已经指定,不能交换姓名或额外增加负责人。时间表只约定周一至周三的工作,没有给出周四一定上线的承诺,因此应采用条件式表述。第一阶段资料类型有限,不能扩大到客户数据、互联网资料或外部工具。权限只有管理员和普通员工两类,不能自行增加第三类角色或编造审批步骤。检索必须给出处,证据不足时承认不足;草稿会议纪要虽然可以保存,却不能作为有效制度依据。模型可以更新,但是必须保存旧版本和配置,并提供恢复路径。验收范围包括检索、引用、权限与重启恢复,不应自行写入毫秒数、吞吐量或准确率。说明可以分为目的、职责、日程、使用规则、验收与回退几个部分。各段可以解释操作意义,但不能把建议写成已经实施的事实。尤其要区分访问公网的禁止条件与本地知识库的可用范围,也要区分已确认纪要和制度文件的效力。最后应明确上线以周三验收结果为依据,未通过时顺延,响应时间指标仍待确定。\n", | |
| "answer": "本地推理设备第一阶段部署说明\n\n一、范围与结论\n本阶段使用一台本地推理设备处理公司内部制度与会议记录,不访问公网。系统的回答应以已经整理并允许使用的资料为依据。当前安排包括资料整理、知识库建立和验收,上线时间以验收结果为准,不承诺周四上线。\n\n二、人员职责\n陈敏负责模型更新,更新前保存旧版本和相关配置。李舟负责知识库资料整理,区分制度文件、已确认会议纪要和草稿会议纪要。周宁负责验收,检查检索、引用、权限以及重启恢复情况。各项问题应记录对应现象和检查结果,避免只凭一次成功回答判断整个流程已经通过。\n\n三、实施日程\n周一整理资料,检查资料类别与确认状态;周二建立知识库;周三执行验收。如果周三验收未通过,后续安排顺延。不能把预定验收日期等同于实际通过日期,也不能向使用人员保证尚未确认的上线时间。\n\n四、访问与回答规则\n系统区分管理员和普通员工。普通员工只使用对话页面,后台管理由管理员处理。检索结果必须附带出处,便于使用人员核对原文。遇到证据不足、资料冲突或无法确定的问题,应明确说明已有证据的范围,不通过猜测补齐答案。草稿会议纪要不能作为制度依据;引用会议内容时,应先确认其状态,不能将未确认内容当作正式规定。\n\n五、验收内容\n验收应覆盖资料能否被正确检索、引用能否对应原文、普通员工能否按规定使用对话页面,以及设备重启后能否恢复预期功能。响应时间指标目前尚未设定,应如实记录实际情况,不自行认定已有具体时限。单个问题回答正确不能替代对其他验收项目的检查。发现问题时,应保留输入、输出及相关出处,方便区分资料问题与系统问题。\n\n六、异常与恢复\n更换模型前保存旧版本和配置,发生故障时恢复旧版本。恢复后仍需核对检索、引用、权限与重启恢复功能,不能仅凭进程启动就认定恢复完成。模型更新、资料整理和业务验收是不同环节,应按各自职责跟进。对于尚未设定的响应时间和未确认的上线日期,本说明保持未定状态,不补造承诺。" | |
| }, | |
| { | |
| "id": "math_probability", | |
| "domain": "数学与多步推理", | |
| "prompt": "袋中有5个红球、4个蓝球和3个绿球,球除颜色外没有区别。等概率不放回抽取4个球。求恰好抽到两种颜色的概率,以及在恰好抽到两种颜色的条件下至少有一个红球的概率。请给出组合计数、避免重复的方法、约分结果,并解释为什么不是把各颜色独立抽取概率直接相乘。", | |
| "reasoning": "总数是十二个球,抽四个球且不放回,所以等可能样本空间可以用十二选四计数,总计四百九十五种。恰好两种颜色可以按照红蓝、红绿、蓝绿三个互斥事件分别计算。每组先从这两色的全部球中抽四个,再减去仅有单色的情况。红蓝共有九个球,九选四是一百二十六,减去五红选四的五种和四蓝选四的一种,得到一百二十。红绿共有八个球,八选四是七十,减去五红选四的五种,三个绿球不足以单独抽四个,因此得到六十五。蓝绿共有七个球,七选四是三十五,减去四蓝选四的一种,得到三十四。这三组相加是二百一十九,除以四百九十五,可以同时除以三,得到一百六十五分之七十三,即73/165。条件事件至少有一个红球,只包含红蓝和红绿两组,一共一百八十五种。条件概率分母应使用恰好两色的二百一十九,而不是全部四百九十五。185与219的最大公约数是1,所以185/219已经最简。为避免分数语言颠倒,最后直接用数学符号表示。也可以做补集检查:恰好两色但没有红球只有蓝绿三十四种,因此一减去34/219等于185/219。抽样不放回会改变后续的球数和颜色比例,不满足独立条件。\n", | |
| "answer": "设A表示抽到的4个球恰好有两种颜色,R表示至少抽到1个红球。\n\n一、等可能样本空间\n袋中共有12个球。将每个实体球作为一个可区分的抽样对象,所有4球组合等可能,因此总组合数为C(12,4)=495。颜色相同不影响使用组合计数,因为最后只按颜色条件筛选这些等可能组合。\n\n二、计算恰好两种颜色\n把A分成红蓝、红绿、蓝绿三个互斥情况。各情况要求两种颜色都出现,而且不能出现第三种颜色。先选取该颜色对所包含的球,再扣除只有一种颜色的组合,可以避免把单色情况误算进去。\n\n红蓝:C(9,4)-C(5,4)-C(4,4)=126-5-1=120。\n红绿:C(8,4)-C(5,4)-C(3,4)=70-5-0=65。\n蓝绿:C(7,4)-C(4,4)-C(3,4)=35-1-0=34。这里C(3,4)=0,因为3个球无法组成4球组合。\n\n上述三个事件没有交集:一个恰好两色的组合具有唯一的颜色对。因此不需要再做交集修正,直接相加得到120+65+34=219。于是P(A)=219/495=73/165,约为0.4424。\n\n三、条件概率\n在已经知道恰好抽到两种颜色的条件下,样本空间应缩小为这219个符合条件的组合。至少有一个红球,意味着颜色对只能是红蓝或红绿,符合条件的组合数为120+65=185。因此P(R|A)=185/219,约为0.8447。这个分数已经不能继续约分。\n\n可以用补集核对结果:在A成立时,没有红球的情况只有蓝绿,对应34个组合。因此P(R|A)=1-34/219=185/219,与直接计数相同。\n\n四、为什么不能直接相乘\n不放回抽样不是独立抽样。每抽走一个球,袋中总球数会减少,相关颜色的球数也可能减少,后续抽取的概率随前面的结果变化。如果按抽取顺序计算,需要使用条件概率连乘,并把符合要求的颜色排列全部计入;不能把始终不变的初始颜色比例直接相乘。组合方法一次性计算无序抽样结果,避免了枚举所有排列,但仍然正确体现不放回条件。\n\n答案:恰好两种颜色的概率为73/165;在此条件下至少有一个红球的概率为185/219。" | |
| }, | |
| { | |
| "id": "code_python", | |
| "domain": "代码与边界条件", | |
| "prompt": "用Python编写一个函数merge_intervals,输入为整数闭区间的列表,输出合并重叠区间后的列表。不得修改输入,负数合法,空列表返回空列表;端点相等算重叠,例如[1,3]与[3,5]合并,但[1,3]与[4,5]不合并。每个区间必须恰有两个整数且起点不大于终点,布尔值不当作整数,非法数据抛出ValueError。请给出实现、边界测试,并解释排序与时间空间复杂度。", | |
| "reasoning": "需要先确定输入验证和合并语义。Python中bool是int的子类,所以isinstance(value,int)会误收True或False,可以使用type(value) is int进行严格判断。输入要求列表,我会检查外层是list,并允许每个区间使用list或tuple,长度必须为2。端点必须是严格整数,且start不能大于end。先验证全部区间并复制到新的二元组列表,再排序,因此即使遇到非法输入,也不会改动原来的列表或内部区间。排序以起点为第一关键字、终点为第二关键字,默认元组排序即可满足。合并时维护输出列表最后一个区间。当前起点小于等于最后区间终点就重叠,应把终点更新为两者最大值;否则创建新输出区间。输入已经排序后,尚未处理区间的起点不会小于当前起点,所以只需与输出中最后一个区间比较。闭区间端点相同应合并,但相差1并不代表实数区间重叠,不能用end+1作为判断条件。负数和单点区间不需要特殊分支。复杂度方面,验证与复制是线性,排序为O(n log n),扫描为O(n),额外保存副本和输出最多O(n)。测试应包含空输入、无序重叠、共享端点、不相交相邻整数、包含关系、负数、单点以及非法布尔值和反向区间。还需要保存一份输入快照,验证调用后没有改变原始嵌套列表。\n", | |
| "answer": "下面的实现会先验证并复制数据,再排序和合并,不修改输入。\n\n```python\ndef merge_intervals(intervals):\n if not isinstance(intervals, list):\n raise ValueError('intervals must be a list')\n\n copied = []\n for interval in intervals:\n if not isinstance(interval, (list, tuple)) or len(interval) != 2:\n raise ValueError('each interval must have two endpoints')\n start, end = interval\n if type(start) is not int or type(end) is not int:\n raise ValueError('endpoints must be integers, excluding bool')\n if start > end:\n raise ValueError('start must not exceed end')\n copied.append((start, end))\n\n copied.sort()\n merged = []\n for start, end in copied:\n if not merged or start > merged[-1][1]:\n merged.append([start, end])\n else:\n merged[-1][1] = max(merged[-1][1], end)\n return merged\n```\n\n边界测试:\n\n```python\nassert merge_intervals([]) == []\nassert merge_intervals([[3, 5], [1, 3]]) == [[1, 5]]\nassert merge_intervals([[1, 3], [4, 5]]) == [[1, 3], [4, 5]]\nassert merge_intervals([[1, 10], [2, 3]]) == [[1, 10]]\nassert merge_intervals([[-4, -1], [-2, 2]]) == [[-4, 2]]\nassert merge_intervals([[2, 2], [2, 4]]) == [[2, 4]]\n\nsource = [[5, 8], [1, 3], [3, 6]]\nsnapshot = [interval[:] for interval in source]\nassert merge_intervals(source) == [[1, 8]]\nassert source == snapshot\n\nfor bad in ([[True, 2]], [[1, False]], [[3, 1]],\n [[1, 2, 3]], [[1.0, 2]], [None]):\n try:\n merge_intervals(bad)\n except ValueError:\n pass\n else:\n raise AssertionError('invalid input was accepted')\n```\n\n排序使区间按起点递增排列。扫描时,已经输出的区间彼此不重叠;当前区间只可能与最后一个输出区间发生新的合并。如果当前起点大于最后终点,两者不相交,可以直接追加。否则它们存在公共点,合并后的终点取较大值。\n\n判断使用start <= end的重叠语义,而不是把终点加一,因此[1,3]与[3,5]会合并,[1,3]与[4,5]保持分离。每个输出区间都是新建列表,后续修改返回结果也不会改变原输入。\n\n设输入有n个区间。验证和复制耗时O(n),排序耗时O(n log n),扫描耗时O(n),总体时间复杂度为O(n log n)。副本、排序辅助空间和输出都至多为O(n),额外空间复杂度为O(n)。" | |
| } | |
| ] | |