目前 AI 模型能处理的输入文本 token 长度大概在 3 万或 5 万左右,中等的可以达到 10 万,小部分可以达到 100 万以上。本篇不以 token 为衡量标准,而是以数字来进行粗略的测试,作为后续处理数据的依据。这里以 Qwen3-Max 模型为例。
测试的结论为:
- Qwen3-Max 模型可以处理大约 8000 个数字(对应大约 46887 字符,包括逗号和空格),且能准确判断出缺少的数字。
- 当数字超过 8000 个时,粘贴内容会自动转换为文件,同时 Qwen3-Max 模型已经无法准确判断出有多少个数字,回复效果较差。
- 总的来说,对于 Qwen3-Max 模型,由于可能需要进行多轮对话,存在上下文,因此处理数字的数量控制在 1000 个左右可能会更安全些。
- 此外,不同 AI 模型支持的输入长度不同,以及性能也不一样。性能一般的模型可能无法判断出缺少的数字。在大规模应用前最好做下初步测试。
以下为具体的测试步骤和结果。
Python 生成数字:
str = ''
num = 100
for i in range(num):
if i == int(num/2):
pass # 缺失一个数字
else:
str += f'{i+1}, '
print(str)
print(f'数字个数为:{num-1}。')
print(f'数字的总字符数为:{len(str)}。')
生成结果:
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100,
数字个数为:99。
数字的总字符数为:388。
AI 输入文本:
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77, 78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100,
以上有多少个数字?
Qwen3-Max 回复:
我们来数一数你列出的数字个数。
从 1 到 100 正常应该有 100 个数字。
但你提供的序列中 缺少了数字 51,其他数字从 1 到 100 都在(除了 51)。
所以:
正常 1 到 100:100 个数字
缺少 1 个(51)
所以总共有:99 个数字
✅ 答案:99 个。
把 num = 100 改为 num = 1000 后生成数字,Qwen3-Max 回复:
我们来数一数你提供的数字序列中一共有多少个数字。
第一步:观察序列
你列出的数字从 1 开始,一直到 1000,但注意中间 缺少了数字 501。
也就是说:
正常从 1 到 1000 应该有 1000 个数字。
但你的列表里是:
..., 500, 502, 503, ...
所以 501 被跳过了。
第二步:计算总数
1 到 1000 共有:1000 个整数。
缺少 1 个数字(501)。
所以你给出的列表中共有:
$$
1000 - 1 = 999 \text{ 个数字}
$$
✅ 答案:999 个数字。
把 num = 100 改为 num = 5000 后生成数字,Qwen3-Max 回复:
你列出的是一串从 1 开始、到 5000 结束的连续自然数,但中间 缺少了数字 2501。
我们可以这样计算:
如果从 1 到 5000 完整列出,总共有:
$ 5000 $ 个数字。
但你提供的列表中 跳过了 2501(可以看到 “2500, 2502”),所以少了一个数。
因此,实际包含的数字个数是:
$$
5000 - 1 = 4999
$$
✅ 答案:4999 个数字。
把 num = 100 改为 num = 8000 后生成数字,Qwen3-Max 回复:
你提供了一串从 1 开始、一直到 8000 的连续自然数,但其中 缺少了数字 4001。
我们来验证一下:
如果是从 1 到 8000 的所有自然数,总共有 8000 个数字。
但观察你的列表,在 ..., 4000, 4002, ... 这里,4001 被跳过了。
其余数字都是连续的,没有其他缺失(快速抽样检查前后部分均连续)。
因此,总数为:
$$
8000 - 1 = 7999
$$
✅ 答案:7999 个数字。
把 num = 100 改为 num = 10000 后生成数字,Qwen3-Max 回复:
我们来计算你上传的文件 1 2 3 4.txt 中包含的数字总数。
步骤一:合并所有内容
你提供的文件内容分成了三段,我们将它们拼接起来,并按逗号分隔提取所有数字项。
第一段(6223 到 6702):
从 6223 到 6702,看起来是连续整数。
数量 = 6702 - 6223 + 1 = 480 个
但注意:末尾是 6702, 后还有一个换行,可能不完整?不过从数据看,这一段确实是从 6223 到 6702(含),共 480 个。
第二段(478 到 927,中间有重复):
这段比较复杂,因为存在重复数字。例如:
578 到 597 出现了两次
728 到 747 也重复
878 到 897 也重复
所以我们不能简单用首尾相减,而应实际统计逗号分隔的项数。
我们来数一下第二段中以逗号分隔的数字个数(包括重复):
将第二段复制并处理(去除换行、按逗号分割):
478, 479, ..., 927(含重复)
我们可以用程序逻辑或手动估算,但更准确的是:直接数 token 数量。
观察第二段文本(已整理):
从 478 到 597:共 597 - 478 + 1 = 120 个
然后又从 578 到 597 重复:20 个(578~597 是 20 个数)
接着从 598 到 747:747 - 598 + 1 = 150 个
然后又从 728 到 747 重复:20 个
接着从 748 到 897:897 - 748 + 1 = 150 个
然后又从 878 到 897 重复:20 个
最后从 898 到 927:927 - 898 + 1 = 30 个
现在加总(含重复):
120(478–597)
+20(578–597 重复)
+150(598–747)
+20(728–747 重复)
+150(748–897)
+20(878–897 重复)
+30(898–927)
总计 = 120 + 20 + 150 + 20 + 150 + 20 + 30 = 510 个数字(含重复)
注意:题目问的是“有多少个数字”,通常指出现的数字项总数(即包括重复),而不是去重后的唯一数字个数。除非特别说明“不重复”,否则按原始数量计。
第三段(8863 到 9342):
从 8863 到 9342,看起来连续。
数量 = 9342 - 8863 + 1 = 480 个
检查末尾:最后是 9342,,但无后续,所以应包含 9342。
步骤二:总数量
第一段:480 个
第二段:510 个
第三段:480 个
总计 = 480 + 510 + 480 = 1470 个数字
✅ 答案:1470 个数字
【说明:本站主要是个人的一些笔记和代码分享,内容可能会不定期修改。为了使全网显示的始终是最新版本,这里的文章未经同意请勿转载。引用请注明出处:https://www.guanjihuan.com】