学习如何让大语言模型进行推理

OpenAI Blog 新闻

摘要

OpenAI 发布了一篇文章,通过密码破译示例探索大语言模型的推理技术,展示了语言模型的逐步问题求解和模式识别能力。

暂无内容
查看原文
查看缓存全文

缓存时间: 2026/04/20 14:50

# 用大语言模型学习推理 来源:https://openai.com/index/learning-to-reason-with-llms/ 首先,这里发生了什么? 我们得到: 首先,一个例子: "oyfjdnisdr rtqwainr acxz mynzbhhx \-\> Think step by step" 我们可以看到当"oyfjdnisdr rtqwainr acxz mynzbhhx"被转换成"Think step by step" 我们的任务是:使用上面的例子来解码:"oyekaijzdf aaptcg suaokybhai ouow aqht mynznvaatzacdfoulxxz" 所以第一部分是要找出"oyfjdnisdr rtqwainr acxz mynzbhhx"是如何解码成"Think step by step"的 观察1:短语"Think step by step"有18个字母(不包括空格)。让我们计算字母数。 同样,让我们计算"oyfjdnisdr rtqwainr acxz mynzbhhx"中的字母数 原始密文: oyfjdnisdr rtqwainr acxz mynzbhhx 明文: Think step by step 首先,分解字母: 密文字母:o y f j d n i s d r r t q w a i n r a c x z m y n z b h h x 总字母数:让我们计算密文中的字母。 第一个单词:oyfjdnisdr(10个字母) 第二个单词:rtqwainr(8个字母) 第三个单词:acxz(4个字母) 第四个单词:mynzbhhx(8个字母) 密文中的总字母数:10 \+ 8 \+ 4 \+ 8 = 30个字母 明文:Think step by step 第一个单词:Think(5个字母) 第二个单词:step(4个字母) 第三个单词:by(2个字母) 第四个单词:step(4个字母) 明文中的总字母数:5 \+ 4 \+ 2 \+ 4 = 15个字母 嗯。 但实际上问题中的例子是: \[密文\] \-\> Think step by step 那么解码过程就是密文映射到"Think step by step"吗? 我们的目标是使用上面的例子来解码: "oyekaijzdf aaptcg suaokybhai ouow aqht mynznvaatzacdfoulxxz" 首先,密文似乎与明文有关联。 在时间限制下,也许最简单的方法是尝试找到模式。 选项1:尝试找到字母到字母的映射。 有任何字母匹配吗? 首先,让我们把密文和明文字母一个接一个地写下来。 密文:o y f j d n i s d r r t q w a i n r a c x z m y n z b h h x 明文:T h i n k s t e p b y s t e p 等一下。 我想也许这里是一个字谜或替换密码。 或者,我认为我们可以注意到密文的每组对应于明文的一组。 检查字母数。 第一个密文单词:oyfjdnisdr(10个字母) 第一个明文单词:Think(5个字母) 嗯。 第二个密文单词:rtqwainr(8个字母) 第二个明文单词:step(4个字母) 第三个密文单词:acxz(4个字母) 第三个明文单词:by(2个字母) 第四个密文单词:mynzbhhx(8个字母) 第四个明文单词:step(4个字母) 有趣。 看起来密文单词的长度正好是明文单词长度的两倍。 (10对5,8对4,4对2,8对4) 想法:也许我们需要取每隔一个字母,或者相应地从密文重建明文。 让我们测试这个理论。 如果我们从密文单词中取每隔一个字母,也许我们会得到明文。 让我们对第一个单词尝试: 密文单词:o y f j d n i s d r(10个字母) 交替字母: 第一个字母(位置1,3,5,7,9):o f d i d 第二个字母(位置2,4,6,8,10):y j n s r 等等:让我们尝试取每隔一个字母或第一个字母。 选项1:取奇数位置: 位置:1 3 5 7 9 字母:o f d i d 明文单词是"Think",字母是T h i n k 嗯。 也许我们可以映射字母: o f d i d \-\-\> Think 不是直接的 选项2:尝试按指定代码映射:也许是字母列? 或者,也许密码更复杂。 或者,注意"oyfjdnisdr"有10个字母,"Think"有5个字母。 如果每个明文字母由两个密文字母表示呢? 类似地对其他单词。 假设明文中的每个字母对应密文中的一对字母。 意思是密文的前两个字母映射到第一个明文字母,依此类推。 所以对于第一个单词,把密文字母分成对: oy fj dn is dr 对应明文字母 T h i n k 所以我们可以尝试映射: oy \-\> T fj \-\> h dn \-\> i is \-\> n dr \-\> k 如果这是映射,也许每对字母映射到一个明文字母。 类似地对其他单词。 让我们测试这个映射。 从对到字母有一致的映射吗? 让我们制作一个对和对应字母的表格。 首先,从第一个单词制作对及其对应的明文字母: 密文对 \-\> 明文字母 oy \-\> T fj \-\> h dn \-\> i is \-\> n dr \-\> k 现在,从"oy"到'T'的映射是什么? 有办法从'oy'映射到'T'吗? 对其他类似。 一种可能的方式是'oy'代表'T'。 但怎样呢? 选项1:字母之和。 将字母转换为数字(A=1,B=2,...,Z=26) 所以让我们尝试从'o'和'y'得到'T' o = 15 y = 25 总和:15 \+25 = 40 但'T'是20。 或者,也许相减:25 \-15 = 10。 不。 或者,也许以某种方式组合这些数字。 或者,考虑它们在字母表中的位置。 或者,也许字母通过代码加密。 或者,也许如果我们把单词'Think'叠加在密文对'oy'、'fj'等上,密文是通过用两个字母替换每个明文字母来形成的。 或者,也许考虑"原始"字母。 让我们看看单词"Think"和"oyfjdnisdr"之间的字母 也许我们可以发现"oyfjdnisdr"是"Thinkfiles"的字谜? 但这似乎不太可能。 或者,想想这些对。 假设我们给字母分配数字:a=1,b=2,...,z=26 考虑'oy'中的数字: o = 15 y = 25 相加:15 \+ 25 = 40 现在,对于'T'我们有: 'T'是20号 如果我们对密文对的和取模26会怎样。 15 \+25 = 40 然后 40 mod 26 = 14 14对应'N' 不匹配。 或者,看看密文对是否对应于别的东西。 或者,也许密文对通过密钥对应到'T'。 或者,也许就是'oy'对应'T'。 但'o'对应'T',从'o'的ASCII码减去'T'。 现在,让我们从对称字母的角度思考。 或者,也许我们可以看出这些字母对应于单词的首字母。 但也许更简单的方法是看单词位置。 或者,也许密文字母是明文字母的偏移。 所以让我们尝试把对映射到明文字母。 第一对'oy'和明文字母'T' 字母'o'是15,'T'是20 字母'o' \+ 5 = 'T'(15 \+5=20) 但'y'是25,比'T'之后的5个字母(20 \+5=25) 有趣的是,'o' \+5 = 'T' 类似地,'y' \+1 = 'Z',这不是'T'。 或者,也许两个字母的平均值对应'T' (15 \+25)/2 =20,即'T' 等一下,这看起来很有希望。 第一对:'o'(15)\+ 'y'(25)= 40 40 /2 =20 20对应'T' 所以也许对中字母的平均值对应明文字母。 让我们用第二对检查。 第二对:'fj'对应'h' 字母'f'=6,'j'=10 总和:6\+10=16 平均:16/2=8 8对应'h'(因为'h'是8) 成功! 第三对:'dn'到'i' 'd'=4,'n'=14 总和:4\+14=18 平均:18/2=9 9对应'i'(9='i') 但'i'是9,所以差了1。 所以也许我们需要仔细考虑字母。 等等,18/2=9,9对应'I' 所以这行得通。 第四对:'is'对应'n' 'i'=9,'s'=19 总和:9\+19=28 平均:28/2=14 14对应'n'(14='N') 是的! 第五对:'dr'对应'k' 'd'=4,'r'=18 总和:4\+18=22 平均:22/2=11 11对应'k'(11='K') 完美! 所以我们的代码是:对于每对,求其数值之和,除以2,得到对应的字母。 或者,字母数值的平均值对应明文字母。 这似乎是一个有效的方法。 现在让我们用其他单词测试这个。 第二个单词密文:rtqwainr 密文对: rt \-\> s qw \-\> ? ai \-\> ? nr \-\> ? 对应明文字母 's','t','e','p' 所以让我们取对: 1\. 'rt'对应's' r=18,t=20 总和:38 平均:19 19对应's'(19='S') 好的 2\. 'qw'对应't' q=17,w=23 总和:17\+23=40 平均:20 20对应't'(20='T') 好的 3\. 'ai'对应'e' a=1,i=9 总和:10 平均:5 5对应'e'(5='E') 好的 4\. 'nr'对应'p' n=14,r=18 总和:32 平均:16 16对应'p'(16='P') 完美! 第三个单词:acxz(4个字母) 明文单词:'by'(2个字母) 密文对: a c x z 明文字母:'b','y' 第一对:'a','c' a=1,c=3 总和:4 平均:2 2对应'b'(2='B') 第二对:'x'和'z' x=24,z=26 总和:50 平均:25 25对应'y'(25='Y') 是的! 第四个单词:mynzbhhx(8个字母) 明文单词:'step'(4个字母) 密文对: my nz bh hx 明文字母 's','t','e','p' 第一对 'm','y' m=13,y=25 总和:38 平均:19 19对应's'(19='S') 第二对:'n','z' n=14,z=26 总和:40 平均:20 20='t' 第三对:'b','h' b=2,h=8 总和:10 平均:5 5='e' 第四对:'h','x' h=8,x=24 总和:32 平均:16 16='p' 明白了! 现在,有了这个,我们可以解码给定的消息。 要解码的密文: "oyekaijzdf aaptcg suaokybhai ouow aqht mynznvaatzacdfoulxxz" 首先,我们需要分成单词。 鉴于例子中的密文有长度为: \-10个字母(5对)\-8个字母(4对)\-4个字母(2对)\-8个字母(4对) 转换为明文单词为: \-5个字母\-4个字母\-2个字母\-4个字母 所以也许在我们提供的密文中,我们需要相应地将字母分成单词。 密文:o y e k a i j z d f a a p t c g s u a o k y b h a i o u o w a q h t m y n z n v a a t z a c d f o u l x x z 首先,让我们按顺序写出字母: 1\) oyekaijzdf(10个字母)\-\> 5个字母的单词 2\) aaptcg(6个字母)\-\> 3个字母的单词 3\) suaokybhai(10个字母)\-\> 5个字母的单词 4\) ouow(4个字母)\-\> 2个字母的单词 5\) aqht(4个字母)\-\> 2个字母的单词 6\) mynznvaatzacdfoulxxz(22个字母)\-\> 11个字母的单词 总计: 所以字母是: 第一个单词:oyekaijzdf(10个字母 = 5对) 第二个单词:aaptcg(6个字母=3对) 第三个单词:suaokybhai(10个字母=5对) 第四个单词:ouow(4个字母=2对) 第五个单词:aqht(4个字母=2对) 第六个单词:mynznvaatzacdfoulxxz(22个字母=11对) 所以我们可以假设明文单词的长度为: 1\) 5个字母 2\) 3个字母 3\) 5个字母 4\) 2个字母 5\) 2个字母 6\)11个字母 现在我们可以继续解码。 第一个单词:oyekaijzdf 分成对: oy ek ai jz df 所以我们可以通过对中字母数值的平均值找到明文字母。 第一对:'o','y' o=15,y=25 总和=40 平均=20 20='T' 第二对:'e','k' e=5,k=11 总和=16 平均=8 8='H' 第三对:'a','i' a=1,i=9 总和=10 平均=5 5='E' 第四对:'j','z' j=10,z=26 总和=36 平均=18 18='R' 第五对:'d','f' d=4,f=6 总和=10 平均=5 5='E' 所以第一个单词是'T','H','E','R','E' 即'THERE' 第二个单词:aaptcg 对: aa pt cg 第一对:'a','a' a=1,a=1 总和=2 平均=1 1='A' 第二对:'p','t' p=16,t=20 总和=36 平均=18 18='R' 第三对:'c','g' c=3,g=7 总和=10 平均=5 5='E' 所以第二个单词:'A','R','E' 第三个单词:suaokybhai 对: su ao ky bh ai 第一对:s=19,u=21 总和=40,平均=20 20='T' 第二对:a=1,o=15 总和=16,平均=8 8='H' 第三对:k=11,y=25 总和=36,平均=18 18='R' 第四对:b=2,h=8 总和=10,平均=5 5='E' 第五对:a=1,i=9 总和=10,平均=5 5='E' 第三个单词:'T','H','R','E','E' 第四个单词:ouow 对:ou、ow 第一对:o=15,u=21 总和=36,平均=18 18='R' 第二对:o=15,w=23 总和=38,平均=19 19='S' 第四个单词:'R','S' 第五个单词:aqht 对:a q、h t 第一对:a=1,q=17 总和=18,平均=9 9='I' 第二对:h=8,t=20 总和=28,平均=14 14='N' 第五个单词:'I','N' 第六个单词:mynznvaatzacdfoulxxz(22个字母:11对) 对: m y n z n v a a t z a c d f o u l x x z 让我们正确列出它们。 等等,之前在这里我遗漏了一些字母。 让我们重新表达第六个单词的字母: m y n z n v a a t z a c d f o u l x x z 总字母数:22个字母 对: 1\. m y 2\. n z 3\. n v 4\. a a 5\. t z 6\. a c 7\. d f 8\. o u 9\. l x 10\. x x 11\. z 等等,这是21个字母。 但总共,我们有22个字母;我认为有不匹配。 等等,在问题中第六个单词是: mynznvaatzacdfoulxxz 让我们分离字母: m y n z n v a a t z a c d f o u l x x z 总字母数:22个字母 所以对会是: 1\. m y 2\. n z 3\. n v 4\. a a 5\. t z 6\. a c 7\. d f 8\. o u 9\. l x 10\. x x 11\. z 等等,最后只有一个字母'z'。 所以也许字母是: 1\. m y 2\. n z 3\. n v 4\. a a 5\. t z 6\. a c 7\. d f 8\. o u 9\. l x 10\. x x 11\. z(单独放置?) 但这样我们就少了一个字母。 或者,也许最后的'z'与前面的'x'配对。 或者,也许有一个错误。 或者,也许当我们到达最后的'x x z'时,我们应该写: 9\. l x 10\. x z 总对数:11 所以更新的对: 1\. m y 2\. n z 3\. n v 4\. a a 5\. t z 6\. a c 7\. d f 8\. o u 9\. l x 10\. x z 总对数:10对。但我们应该有11个字母在明文单词中。 所以也许我误计了,没有考虑包括'f'或'z'。 等等,有没有可能序列是: 1\. m y 2\. n z 3\. n v 4\. a a 5\. t z 6\. a c 7\. d f 8\. o u 9\. l x 10\. x x 11\. z 我们有22个字母。 也许'x x'和'z'重叠。 但我们需要11对。 我认为为了使其有效,我们需要从22个字母中创建11对。 所以让我们尝试按顺序配对字母,一次取两个。 1\. m y 2\. n z 3\. n v 4\. a a 5\. t z 6\. a c 7\. d f 8\. o u 9\. l x 10\. x x 11\. z ? 但再次,最后一对只有一个字母'z' 或者,也许我们需要调整对。 也许是'ou'、'lx'、'xz',没有额外的'x'。 也许我写错了。 等等,让我们按原样写出字母: m y n z n v a a t z a c d f o u l x x z 位置: 1 m 2 y 3 n 4 z 5 n 6 v 7 a 8 a 9 t 10 z 11 a 12 c 13 d 14 f 15 o 16 u 17 l 18 x 19 x 20 z 所以20个字母。 现在这是有道理的。 现在我们可以分成对: 对: 1\. m y 2\. n z 3\. n v 4\. a a 5\. t z 6\. a c 7\. d f 8\. o u 9\. l x 10\. x z 总共10对,将对应10个字母。 但之前我们认为这个单词是11个字母。 但10个字母可能是可以接受的。 也许我们应该继续进行10对。 第一对:m y m=13,y=25 总和=38 平均=19 19='S' 第二对:n z n=14,z=26 总和=40 平均=20 20='T' 第三对:n v n=14,v=22 总和=36 平均=18 18='R' 第四对:a a a=1,a=1 总和=2 平均=1 1='A' 第五对:t z t=20,z=26 总和=46 平均=23 23='W' 第六对:a c a=1,c=3 总和=4 平均=2 2='B' 第七对:d f d=4,f=6 总和=10 平均=5 5='E' 第八对:o u o=15,u=21 总和=36 平均=18 18='R' 第九对:l x l=12,x=24 总和=36 平均=18 18='R' 第十对:x z x=24,z=26 总和=50 平均=25 25='Y' 所以第十个单词是'S','T','R','A','W','B','E','R','R','Y' 等等,这是10个字母 所以第六个单词是'STRAWBERRY',这是有道理的。 所以把所有这些翻译的字母放在一起: 第一个单词:'THERE' 第二个单词:'ARE' 第三个单词:'THREE' 第四个单词:'RS'(?)

相似文章