人工智能, 生活

AI模型输入文本的长度测试

目前 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 个数字
7 次浏览

【说明:本站主要是个人的一些笔记和代码分享,内容可能会不定期修改。为了使全网显示的始终是最新版本,这里的文章未经同意请勿转载。引用请注明出处:https://www.guanjihuan.com

发表评论

您的邮箱地址不会被公开。 必填项已用 * 标注

Captcha Code