使用方法
- 「生成数量」默认 12,可填 1 到 50 的整数,决定这一批出多少个名字;超过 50 会给出提示。
- 「随机种子」默认 20261017,可填 1 到 99999999。同一个种子必然得到同一批名字,换个数字整批重排。
- 「编号位数」默认 2 位,可选 1 到 4。填 2 及以上时编号统一补零到该宽度,KR-03-S 与 KR-3-S 的取舍就在这里;填 1 位时编号只取 0 到 9。
- 在数量或种子输入框里直接按回车即开始生成,不必点按钮。改动任何一个控件都会立刻重算,过程不需要等待。
- 结果区先给出名字清单,下方对照表逐条列出序号、种子、名字、系列前缀、编号与后缀;默认展开六行,点「加载更多」看全。
- 「复制结果」把清单放进剪贴板,「复制对照表」复制制表符表格,「导出 CSV」带 UTF-8 字节序标记,表格软件里不会乱码。
这个机器人名字生成器能解决什么问题
本页解决的是「给一批机器人起成体系的代号」。自动化测试里的虚拟设备、产线上的工装工位、演示环境的假机器、小说设定里的机型序列,需要的都是一串既能看出同族关系、又能彼此区分的名字:同族才像一条产品线,能区分才好在日志与台账里检索。
它的结构和站内其它名字类工具走的不是一条路。「星球名字生成器」「外星人名字生成器」「城市名字生成器」偏向场景叙事,靠词根与音节拼出画面感;「字符名字生成器」「用户名字生成器」关心的是可读性与账号可用性。本页面向的是工业编号:两个字母的系列前缀加数字编号,再挂一个型号后缀,形态接近真实设备铭牌上的那一串型号。
固定种子带来的复现能力是它最实用的地方。给几十台虚拟设备编号时,想到哪写到哪的结果是下一次跑不起来:设备列表变了,日志就对不上。把种子记进文档,任何人在任何设备上都能还原出同一批编号,回归用例才站得住。
机器人名字生成器还把命名空间摆在最前面。16 个前缀、100 个编号、7 种后缀相乘只有 11200 种组合,批量抽到一两百个就有超过一半的概率撞名。页面先把这个数字摊开,是为了让你在按下生成之前就知道:这批名字要不要去重。
三个维度、种子与命名空间
名字由三个维度相乘得到:
- 系列前缀 16 个:
KR XR QT ZT NV AX MK GR TX ZR OV IX QL BR SK DV - 编号 00 到 99,共 100 个取值,按「编号位数」补零显示
- 型号后缀 7 种:
(无) -X -II -7 -A -S -V,第一项是空串,表示不挂后缀
命名空间按乘法原理是 16 × 100 × 7 = 11200 种。把「编号位数」填成 1 位时,编号的取值被压到 0 到 9,空间缩到 16 × 10 × 7 = 1120 种——这是唯一会缩小空间的设置。
随机序列怎么来。本页用一个线性同余发生器:从种子出发,每一步把当前值乘以 1103515245、加 12345,再截取低 31 位,即 s = (s × 1103515245 + 12345) & 0x7fffffff。乘法必须是 32 位有符号整数乘法(代码里写作 Math.imul),直接写普通乘法会因为超出双精度整数范围而丢位,序列就不再闭环。
取词映射。三个维度共用同一条映射:把当前值除以 2147483647 再乘表长,向下取整。第 k 条名字使用种子 seed + k − 1,也就是说每条名字都从各自的新起点出发,依次走过前缀、编号、后缀三步。所以改数量不影响前几条,改种子则整批换掉。
为什么坚持用固定种子而不是系统随机源。两者的语义正好相反:固定种子的序列要「每次都一样」,系统随机源要「每次都不同」。本页是前者——把种子发给同事,对方输入同一个数字就能拿到同一批编号,这在写测试用例与设备台账时是刚需。
为什么前缀取这些辅音丛。KR、XR、QT、ZT 这类以低频辅音开头的二合字母,在自然语言里极少作为词首出现,扫一眼就能和真词区分开,适合当作型号里的系列代号。编号用两位数字而不是更长的串,是为了让整条名字保持在六个字符上下,塞进表格列宽也不换行。
为什么后缀是字母与罗马数字混排。-X、-A、-S、-V 对应「变体」这一级,通常表示同一系列的不同配置;-II 这类罗马数字在真实产品里常被读成「二代机型」,层级比字母后缀高一档。-7 这类数字后缀既可能是版本号也可能是定位等级,取决于你怎么定义。
完整示例(数值仅作演示)
示例条件:数量 12、编号 2 位、起始种子 20261017。第 k 条名字用种子 20261017 加 k 减 1,结果由上面的三级命名空间与线性同余算法复算得到,与页面输出逐条一致:
- 种子 20261017 → SK-87-S
- 种子 20261018 → MK-39-S
- 种子 20261019 → DV-91-S
- 种子 20261020 → GR-43-S
- 种子 20261021 → DV-95-S
- 种子 20261022 → GR-47-S
- 种子 20261023 → DV-99-S
- 种子 20261024 → TX-51-S
- 种子 20261025 → KR-03-S
- 种子 20261026 → TX-55-S
- 种子 20261027 → KR-08-S
- 种子 20261028 → ZR-60-S
换种子看复现性:种子 1 的头两条是 TX-17-II 与 KR-69-II;种子 42 的头两条是 ZR-51-7 与 XR-04-7;种子 2026 的头两条是 XR-36 与 ZR-88,这两条恰好抽到「无后缀」,名字短一截。改编号位数则只改写法:同样的种子 20261017,位数填 3 时第一条是 SK-087-S,填 4 时是 SK-0087-S,填 1 时变成 SK-8-S。
再看编号的写法:本批里有 87、39、03、08、60 这些编号,其中 03 与 08 的补零是位数为 2 带来的,编号本身仍是 3 和 8,写进命名空间时按数值算。上述数值均为演示,不代表任何真实在售型号。
命名空间与撞名概率对照表
下表列出命名空间的构成。编号位数为 2 及以上时三个维度的取值都不变,总数是 11200;填 1 位才把编号压到 10 个取值。
| 维度 | 取值个数 | 取值示例 | 说明 |
|---|---|---|---|
| 系列前缀 | 16 | KR / ZR / SK | 两段辅音,定系列 |
| 编号 | 100 | 03 / 60 / 99 | 位数 1 时只剩 10 个 |
| 型号后缀 | 7 | -X / -II / 空 | 空串表示不挂后缀 |
下表按命名空间 N = 11200,用生日问题的近似式「1 减去 e 的负 n(n−1)/(2N) 次方」算出「随机抽 n 个名字,至少出现一对重复」的概率。它衡量的是两两配对的次数随数量平方增长这件事。
| 抽取数量 n | 至少一对重名 | 直观判断 |
|---|---|---|
| 10 | 0.4011% | 千分之四,偶发 |
| 50 | 10.3751% | 一成左右 |
| 100 | 35.8072% | 超过三分之一 |
| 200 | 83.261% | 大概率已重名 |
| 500 | 99.9988% | 几乎必然 |
| 1000 | 100% | 抽完近十分之一空间 |
读表的要点:空间看着一万多很宽裕,实际抽到 100 个就有 35.8072% 的概率出现重复,抽到 500 个几乎必然重复。本页单次最多 50 个,对应的概率是 10.3751%——十次里有一次会碰到重名,这也解释了为什么页面不去强行去重。
结果边界、舍入与适用说明
- 生成数量范围 1 到 50,步长 1;超过 50 会给出「一次可生成 1~50 个名字」的提示,一次铺开太多行的意义本来也不大。
- 随机种子范围 1 到 99999999,步长 1;小于 1 会给出「随机种子请填 1 以上的整数」,空着或填 0 都不会用上一次的结果冒充本次输出。
- 编号位数只接受 1 到 4,其它取值会给出「编号位数请填 1~4」。填 1 位时空间缩到 1120 种,撞名会明显提前。
- 本页不做去重。重复是独立抽取的正常表现,若要「保证不重名」,请把生成结果取出去重后再补抽,或改用洗牌后切片的做法。
- 名称只含大写字母、数字、连字符,不含空格与标点,可直接用作机器名、环境变量名或数据库主键。
- 同一种子在任何设备上都复现同一批名字,算法只依赖种子与固定的三级表。
- 名字的词形是刻意构造的代号,不承诺在任何语言里有含义;用于对外产品命名时请先核对外语读音与商标情况。
- 页面不联网、不写本地存储,刷新后回到默认数量、默认种子与默认编号位数。
常见问题
同一个种子为什么每次生成的结果都一样?
因为整条随机序列由种子加线性同余递推式推出,没有引入时间或系统随机源。起点相同,序列就相同,结果自然一致。想要每批都换,把种子改成另一个数字,或者按批次递增种子。
才生成 100 个,为什么就有三成概率重名?
因为命名空间只有 11200 个,而重名看的是名字两两配对的次数:100 个名字有 4950 对,配对数随数量按平方增长。这是生日问题,直觉几乎总会低估,按 35.8072% 这条实际数字来理解更稳妥。
把编号位数从 2 改成 3,能减少重名吗?
不能。2 位以上时编号的取值始终是 0 到 99,位数决定的只是显示宽度,SK-03-S 与 SK-003-S 是同一个名字的两种写法。想真正降低撞名,要扩大维度本身(更多前缀或更多后缀),或是生成后去重。
能不能保证这一批名字互不重复?
页面不提供这个开关,因为 16 × 100 × 7 的空间决定了独立抽取无法承诺不重名。要拿互不重复的一批,请把结果导出后去重,不足的部分换种子再补;真正需要严格不重名时应改用「洗牌后切片」的思路。
编号位数填 1 位会有什么不同?
编号的取值会从 0 到 99 压到 0 到 9,命名空间由 11200 缩到 1120,撞名概率相应升高,名字整体也会短一个字符。这是四种位数设定里唯一会改变取值空间的选项,请按需填写。
后缀 -II 看起来像真实机型的二代标识,能直接用吗?
不建议直接用于对外发布的产品名。后置的罗马数字常被读成「二代」,容易与他人的在售型号混淆;内部代号、测试设备与演示环境可以随意使用,用于产品命名前请先核对外语读音与商标情况。
这个工具免费吗?
免费,无需注册即可使用。
输入的数据安全吗?
安全。计算在当前浏览器本地完成,不会上传输入内容。