Gå direkt till huvudinnehåll
OpenAI

12 september 2024

Lansering

Lära sig resonera med LLM:er

Nu lanserar vi OpenAI o1 – en ny stor språkmodell som med hjälp av förstärkningsinlärning har tränats för att utföra komplexa resonemang. o1 tänker innan den svarar och kan producera en lång intern tankekedja innan den ger sitt svar.

Laddar …

OpenAI o1 hamnar i den 89:e percentilen inom tävlingsinriktade programmeringsfrågor (Codeforces), rankas bland de 500 bästa studenterna i USA i en uttagning till USA:s matematikolympiad (AIME) och överträffar en människa på doktorandnivå vad gäller riktighet på ett test inom fysik, biologi och kemi (GPQA). Medan vi arbetar med att göra den här modellen lika enkel att använda som de nuvarande modellerna släpper vi en tidig version av modellen, OpenAI o1‑förhandsgranskning, som kan användas i ChatGPT och av betrodda API-användare.(öppnas i ett nytt fönster).

Vår storskaliga algoritm för förstärkningsinlärning lär modellen hur den ska tänka produktivt med hjälp av sin tankekedja i en mycket dataeffektiv inlärningsprocess. Vi har sett att o1 blir bättre ju mer förstärkningsinlärning (träningsberäkningar) den får under träningen – och ju mer tid den får att tänka (användningsberäkningar) innan den svarar. Begränsningarna för att skala upp denna metod skiljer sig avsevärt från dem vid förträning av stora språkmodeller (LLM), och vi fortsätter att undersöka dem.

Bilden visar två spridningsdiagram som jämför "o1 AIME-noggrannhet" under träning och vid testning. Båda diagrammen har "pass@1-noggrannhet" på y-axeln och beräkningar (logaritmisk skala) på x-axeln. Punkterna visar att noggrannheten förbättras ju mer beräkningstid som används.

o1 blir gradvis bättre ju mer den tränas och testas.

Utvärderingar

För att visa hur mycket bättre resonemangsförmåga våra modeller har jämfört med GPT‑4o, satte vi dem på prov med olika typer av mänskliga tester och ML-benchmarktester. Resultaten visar tydligt att o1 överträffar GPT‑4o i nästan alla uppgifter som kräver mycket resonerande. Om inget annat anges testades o1 vid utvärderingen med den högsta tillåtna beräkningskapaciteten.

o1 visar mycket bättre resultat än GPT-4o på riktmärken för att utmana resonemang. Ifyllda staplar visar pass@1-riktighet och det skuggade området visar prestandan för majoritetsrösten (konsensus) med 64 prover.
o1 visar bättre resultat än GPT-4o på många olika riktmärken, inklusive 54/57 MMLU-underkategorier. Sju visas för att illustrera detta.

I många tester som kräver avancerat resonemang ligger o1 i nivå med mänskliga experter. De senaste avancerade modellerna1 presterar så bra på MATH2 och GSM8K att dessa benchmarktester inte längre är effektiva för att särskilja modeller. Vi använde AIME för att mäta matematisk förmåga – ett avancerat prov som är utformat för att utmana de mest begåvade matematikstudenterna på gymnasienivå i USA. På AIME-proven 2024 löste GPT‑4o i genomsnitt endast 12 % (1,8 av 15) av uppgifterna. o1 löste i genomsnitt 74 % (11,1 av 15) med ett enda svar per uppgift, 83 % (12,5 av 15) vid konsensus bland 64 svar, och 93 % (13,9 av 15) när 1 000 svar rangordnades med en inlärd poängfunktion. En poäng på 13,9 placerar den bland de 500 bästa studenterna nationellt och över gränsen för att kvalificera sig till USA:s matematikolympiad.

Vi utvärderade också o1 på GPQA Diamond, ett svårt intelligenstest som testar expertkunskaper i kemi, fysik och biologi. För att jämföra modeller med mänsklig expertis lät vi experter med doktorsexamen besvara GPQA Diamond-frågor. Vi fann att o1 presterade bättre än de mänskliga experterna, och blev därmed den första modellen som klarat detta test på den nivån. Resultaten innebär inte att o1 är mer kapabel än en person med doktorsexamen i alla avseenden – bara att den är bättre på att lösa vissa typer av problem som en sådan expert förväntas lösa. o1 slog tidigare toppresultat på flera andra maskininlärningstester. Med sin visuella perceptionsförmåga aktiverad uppnådde o1 78,2 % på MMMU, vilket gör den till den första modellen som kan mäta sig med mänskliga experter. Den överträffade också GPT‑4o på 54 av 57 underkategorier i MMLU.

Tankekedja

Precis som en människa kan fundera en stund på en klurig fråga, använder o1 en tankekedja när den försöker lösa ett problem. Genom förstärkningsinlärning lär sig o1 att finslipa sin tankekedja och förfina de strategier den använder. Den lär sig att känna igen och rätta till sina misstag. Den lär sig att bryta ner knepiga steg i enklare delar. När något inte fungerar lär den sig att byta spår och testa en ny strategi. Denna process förbättrar dramatiskt modellens förmåga att resonera. För att illustrera detta framsteg visar vi nedan tankekedjan från o1‑förhandsgranskning på flera svåra problem.

GPT-4o

Användare

oyfjdnisdr rtqwainr acxz mynzbhhx -> Think step by step

Use the example above to decode:

oyekaijzdf aaptcg suaokybhai ouow aqht mynznvaatzacdfoulxxz

Let’s break this down step by step based on the example:

1. Example given:
• Input: oyfjdnisdr rtqwainr acxz mynzbhhx
• Output:
Think step by step

By examining the words:
• The pattern involves selecting specific letters or transforming them.

2. Now, let’s decode the new phrase:
• Input: oyekaijzdf aaptcg suaokybhai ouow aqht mynznvaatzacdfoulxxz

Step-by-step decoding process:

Identify possible word divisions.

The first phrase might follow the same structure as the example. It seems like the input text could be broken into groups based on natural separations or patterns.

A possible division could be:

  • oyekaijzdf
  • aaptcg
  • suaokybhai
  • ouow
  • aqht
  • mynznvaatzacdfoulxxz

However, to make a meaningful decoding, I would need more context about the transformations or letter shifting that might be involved.

Could you provide any additional decoding rules or transformations used in this cipher?

OpenAI o1-förhandsgranskning

Användare

oyfjdnisdr rtqwainr acxz mynzbhhx -> Think step by step

Use the example above to decode:

oyekaijzdf aaptcg suaokybhai ouow aqht mynznvaatzacdfoulxxz

Tänkte i 5 sekunder

First, what is going on here?

We are given:

First, an example:

"oyfjdnisdr rtqwainr acxz mynzbhhx -> Think step by step"

We can see that when "oyfjdnisdr rtqwainr acxz mynzbhhx" is transformed to "Think step by step"

Our task is: Use the example above to decode: "oyekaijzdf aaptcg suaokybhai ouow aqht mynznvaatzacdfoulxxz"

So the first part is to figure out how "oyfjdnisdr rtqwainr acxz mynzbhhx" is decoded into "Think step by step"

Observation 1: The phrase "Think step by step" is 18 letters (excluding spaces) . Let's count the letters.

Similarly, let's count the letters in "oyfjdnisdr rtqwainr acxz mynzbhhx"

Original Ciphertext:

oyfjdnisdr rtqwainr acxz mynzbhhx

Plaintext:

Think step by step

First, break down the letters:

Ciphertext letters: 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

Total letters: Let's count the letters in the ciphertext.

First word: oyfjdnisdr (10 letters)

Second word: rtqwainr (8 letters)

Third word: acxz (4 letters)

Fourth word: mynzbhhx (8 letters)

Total letters in ciphertext: 10 + 8 + 4 + 8 = 30 letters

Plaintext: Think step by step

First word: Think (5 letters)

Second word: step (4 letters)

Third word: by (2 letters)

Fourth word: step (4 letters)

Total letters in plaintext: 5 + 4 + 2 + 4 = 15 letters

Hmm.

But actually in the problem it says the example:

[Ciphertext] -> Think step by step

So is the decoding process that the ciphertext maps to "Think step by step"?

Our goal is to use the example above to decode:

"oyekaijzdf aaptcg suaokybhai ouow aqht mynznvaatzacdfoulxxz"

First, the cipher seems connected to the plaintext.

Given the time constraints, perhaps the easiest way is to try to see patterns.

Option 1: Try to find mapping from letters to letters.

Do any letters match?

First, let's write down the ciphertext and plaintext letters on top of each other.

Ciphertext: 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

Plaintext: T h i n k s t e p b y s t e p

Wait a minute.

I think maybe there is an anagram or substitution cipher here.

Alternatively, I think that we can notice that each group of ciphertext corresponds to a plaintext word.

Check the number of letters.

First ciphertext word: oyfjdnisdr (10 letters)

First plaintext word: Think (5 letters)

Hmm.

Second ciphertext word: rtqwainr (8 letters)

Second plaintext word: step (4 letters)

Third ciphertext word: acxz (4 letters)

Third plaintext word: by (2 letters)

Fourth ciphertext word: mynzbhhx (8 letters)

Fourth plaintext word: step (4 letters)

Interesting.

It seems that the ciphertext words are exactly twice as long as the plaintext words.

(10 vs 5, 8 vs 4, 4 vs 2, 8 vs 4)

Idea: Maybe we need to take every other letter or rebuild the plaintext from the ciphertext accordingly.

Let's test this theory.

If we take every other letter from the ciphertext words, maybe we'll get the plaintext.

Let's try this for the first word:

Ciphertext word: o y f j d n i s d r (10 letters)

Alternate letters:

First letters (positions 1,3,5,7,9): o f d i d

Second letters (positions 2,4,6,8,10): y j n s r

Wait: Let's try taking every second letter or first letter.

Option 1: Take the odd positions:

Positions: 1 3 5 7 9

Letters: o f d i d

Plaintext word is "Think", letters are T h i n k

Hmm.

Perhaps we can map letters:

o f d i d --> Think

Not directly

Option 2: Try mapping as per an assigned code: perhaps columns of letters?

Alternatively, perhaps the cipher is more complex.

Alternatively, notice that "oyfjdnisdr" has 10 letters and "Think" has 5 letters.

What if each plaintext letter is being represented by two ciphertext letters?

Similarly for other words.

Suppose that each plaintext letter corresponds to pair of letters in the ciphertext.

Meaning that the first two letters of ciphertext map to the first plaintext letter, and so on.

So for the first word, partition the ciphertext letters into pairs:

oy fj dn is dr

Corresponding to plaintext letters T h i n k

So we can attempt to map:

oy -> T

fj -> h

dn -> i

is -> n

dr -> k

If this is the mapping, perhaps each pair of letters maps to one plaintext letter.

Similarly for other words.

Let's test this mapping.

Is there a consistent mapping from pairs to letters?

Let's make a table of pairs and corresponding letters.

First, make the pairs from the first word and their corresponding plaintext letters:

Ciphertext Pairs -> Plaintext Letter

oy -> T

fj -> h

dn -> i

is -> n

dr -> k

Now, what's the mapping from "oy" to 'T'?

Is there a way to map 'oy' to 'T'?

Similarly for others.

One possible way is that 'oy' represents 'T'.

But how?

Option 1: Sum of the letters.

Convert letters to numbers (A=1, B=2, ..., Z=26)

So let's try to get to 'T' from 'o' and 'y'

o = 15

y = 25

Sum: 15 +25 = 40

But 'T' is 20.

Alternatively, perhaps subtract: 25 -15 = 10.

No.

Alternatively, perhaps combine the numbers in some way.

Alternatively, think about their positions in the alphabet.

Alternatively, perhaps the letters are encrypted via a code.

Alternatively, perhaps if we overlay the word 'Think' over the cipher pairs 'oy', 'fj', etc., the cipher is formed by substituting each plaintext letter with two letters.

Alternatively, perhaps consider the 'original' letters.

Let's look at the letters between the word "Think" and "oyfjdnisdr"

Perhaps we can spot that "oyfjdnisdr" is an anagram for "Thinkfiles"?

But that seems unlikely.

Alternatively, think of the pairs.

Suppose we assign numbers to letters: a=1, b=2, ..., z=26

Consider the numbers in 'oy':

o = 15

y = 25

Add them: 15 + 25 = 40

Now, for 'T' we have:

'T' is number 20

What if we take the sum of the cipher pair mod 26.

15 +25 = 40

Then 40 mod 26 = 14

14 corresponds to 'N'

Doesn't match.

Alternatively, see if the cipher pairs correspond to something else.

Alternatively, perhaps the pair 'oy' corresponds to 'T' via key.

Alternatively, perhaps it's as simple as 'oy' is 'T'.

But 'o' corresponds to 'T', subtracting 'o' ASCII code from 'T'.

Now, let's think in terms of symmetric letters.

Alternatively, perhaps we can spot that the letters correspond to the first letters of words.

But perhaps an easier way is to look at the word positions.

Alternatively, perhaps we can see that the ciphertext letters are offsets from the plaintext letters.

So let's try to map the pairs to the plaintext letters.

First pair 'oy' and plaintext letter 'T'

Letter 'o' is 15, 'T' is 20

Letter 'o' + 5 = 'T' (15 +5=20)

But 'y' is 25, which is 5 letters after 'T' (20 +5=25)

Interesting, seems that 'o' +5 = 'T'

Similarly, 'y' +1 = 'Z', which is not 'T'.

Alternatively, maybe the average of the two letters corresponds to 'T'

(15 +25)/2 =20, which is 'T'

Wait a minute, that seems promising.

First pair: 'o' (15) + 'y' (25) = 40

40 /2 =20

20 corresponds to 'T'

So perhaps the average of the letters in the pair corresponds to the plaintext letter.

Let's check this with the second pair.

Second pair: 'fj' corresponding to 'h'

Letters 'f'=6, 'j'=10

Sum: 6+10=16

Average:16/2=8

8 corresponds to 'h' (since 'h' is 8)

Success!

Third pair: 'dn' to 'i'

'd'=4, 'n'=14

Sum:4+14=18

Average:18/2=9

9 corresponds to 'i'(9='i')

But 'i' is 9, so that seems off by 1.

So perhaps we need to think carefully about letters.

Wait, 18/2=9, 9 corresponds to 'I'

So this works.

Fourth pair: 'is' corresponding to 'n'

'i'=9, 's'=19

Sum:9+19=28

Average:28/2=14

14 corresponds to 'n'(14='N')

Yes!

Fifth pair: 'dr' corresponds to 'k'

'd'=4, 'r'=18

Sum:4+18=22

Average:22/2=11

11 corresponds to 'k'(11='K')

Perfect!

So our code is: For each pair, sum their numeric values, divide by 2, get the corresponding letter.

Alternatively, the average of the numeric values of the letters corresponds to the plaintext letter.

This seems to be a valid method.

Now let's test this with the other words.

Second word ciphertext: rtqwainr

Ciphertext pairs:

rt -> s

qw -> ?

ai -> ?

nr -> ?

Corresponding to plaintext letters 's', 't', 'e', 'p'

So let's take the pairs:

1. 'rt' corresponds to 's'

r=18, t=20

Sum:38

Average:19

19 corresponds to 's' (19='S')

Good

2. 'qw' corresponds to 't'

q=17, w=23

Sum:17+23=40

Average:20

20 corresponds to 't' (20='T')

Good

3. 'ai' corresponds to 'e'

a=1, i=9

Sum:10

Average:5

5 corresponds to 'e' (5='E')

Good

4. 'nr' corresponds to 'p'

n=14, r=18

Sum:32

Average:16

16 corresponds to 'p' (16='P')

Perfect!

Third word: acxz (4 letters)

Plaintext word: 'by' (2 letters)

Ciphertext pairs:

a c

x z

Plaintext letters: 'b', 'y'

First pair: 'a', 'c'

a=1, c=3

Sum:4

Average:2

2 corresponds to 'b'(2='B')

Second pair: 'x' and 'z'

x=24, z=26

Sum:50

Average:25

25 corresponds to 'y'(25='Y')

Yes!

Fourth word: mynzbhhx (8 letters)

Plaintext word: 'step' (4 letters)

Ciphertext pairs:

my

nz

bh

hx

Plaintext letters 's','t','e','p'

First pair 'm','y'

m=13, y=25

Sum:38

Average:19

19 corresponds to 's'(19='S')

Second pair: 'n','z'

n=14, z=26

Sum: 40

Average:20

20='t'

Third pair: 'b','h'

b=2, h=8

Sum:10

Average:5

5='e'

Fourth pair: 'h','x'

h=8, x=24

Sum:32

Average:16

16='p'

Got it!

Now, given this, we can decode the given message.

Ciphertext to decode:

"oyekaijzdf aaptcg suaokybhai ouow aqht mynznvaatzacdfoulxxz"

First, we need to divide into words.

Given that the ciphertext in the example had words of length:

-10 letters (5 pairs)
-8 letters (4 pairs)
-4 letters (2 pairs)
-8 letters (4 pairs)

Transported to plaintext words of:

-5 letters
-4 letters
-2 letters
-4 letters

So perhaps in our supplied ciphertext, we need to divide the letters into words accordingly.

Ciphertext: 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

First, let's write the letters in order:

1) oyekaijzdf (10 letters) -> word of 5 letters

2) aaptcg (6 letters) -> word of 3 letters

3) suaokybhai (10 letters) -> word of 5 letters

4) ouow (4 letters) -> word of 2 letters

5) aqht (4 letters) -> word of 2 letters

6) mynznvaatzacdfoulxxz (22 letters) -> word of 11 letters

Totals:

So the letters are:

First word: oyekaijzdf (10 letters = 5 pairs)

Second word: aaptcg (6 letters=3 pairs)

Third word: suaokybhai (10 letters=5 pairs)

Fourth word: ouow (4 letters=2 pairs)

Fifth word: aqht (4 letters=2 pairs)

Sixth word: mynznvaatzacdfoulxxz (22 letters=11 pairs)

So we can suppose that the plaintext words have lengths:

1) 5 letters

2) 3 letters

3) 5 letters

4) 2 letters

5) 2 letters

6)11 letters

Now we can proceed to decode.

First word: oyekaijzdf

Divide into pairs:

oy

ek

ai

jz

df

So we can find the plaintext letters by averaging the numeric values of the letters in each pair.

First pair: 'o','y'

o=15, y=25

Sum=40

Average=20

20='T'

Second pair: 'e','k'

e=5, k=11

Sum=16

Average=8

8='H'

Third pair: 'a','i'

a=1, i=9

Sum=10

Average=5

5='E'

Fourth pair: 'j','z'

j=10, z=26

Sum=36

Average=18

18='R'

Fifth pair: 'd','f'

d=4, f=6

Sum=10

Average=5

5='E'

So the first word is 'T','H','E','R','E'

So 'THERE'

Second word: aaptcg

Pairs:

aa

pt

cg

First pair: 'a','a'

a=1, a=1

Sum=2

Average=1

1='A'

Second pair: 'p','t'

p=16, t=20

Sum=36

Average=18

18='R'

Third pair: 'c','g'

c=3, g=7

Sum=10

Average=5

5='E'

So second word: 'A','R','E'

Third word: suaokybhai

Pairs:

su

ao

ky

bh

ai

First pair: s=19, u=21

Sum=40, Average=20

20='T'

Second pair: a=1, o=15

Sum=16, Average=8

8='H'

Third pair: k=11, y=25

Sum=36, Average=18

18='R'

Fourth pair: b=2, h=8

Sum=10, Average=5

5='E'

Fifth pair: a=1, i=9

Sum=10, Average=5

5='E'

Third word: 'T','H','R','E','E'

Fourth word: ouow

Pairs: ou, ow

First pair: o=15, u=21

Sum=36, Average=18

18='R'

Second pair: o=15, w=23

Sum=38, Average=19

19='S'

Fourth word: 'R','S'

Fifth word: aqht

Pairs: a q, h t

First pair: a=1, q=17

Sum=18, Average=9

9='I'

Second pair: h=8, t=20

Sum=28, Average=14

14='N'

Fifth word: 'I','N'

Sixth word: mynznvaatzacdfoulxxz (22 letters: 11 pairs)

Pairs:

m y

n z

n v

a a

t z

a c

d f

o u

l x

x z

Let's list them properly.

Wait, earlier I missed some letters there.

Let's re-express the sixth word letters:

m y n z n v a a t z a c d f o u l x x z

Total letters: 22 letters

Pairs:

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

Wait, that's 21 letters.

But in total, we have 22 letters; I think I have a mismatch.

Wait, in the problem the sixth word is:

mynznvaatzacdfoulxxz

Let's separate the letters:

m y n z n v a a t z a c d f o u l x x z

Total letters: 22 letters

So pairs would be:

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

Wait, 'z' is only one letter at the end.

So maybe the letters are:

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 (left alone?)

But then we're missing a letter.

Alternatively, perhaps the 'z' at the end is an extra letter or it's paired with the previous 'x'.

Alternatively, perhaps there is a mistake.

Alternatively, perhaps when we reach the last 'x x z', we should write:

9. l x

10. x z

Total pairs: 11

So updated pairs:

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

Now total pairs: 10 pairs. But we are supposed to have 11 letters in the plaintext word.

So perhaps I have miscounted and not considered including 'f' or 'z'.

Wait, is there any chance that the sequence is:

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

We have 22 letters.

Perhaps the 'x x' and 'z' are overlapping.

But we need 11 pairs.

I think for this to work, we need to create 11 pairs from the 22 letters.

So let's try pairing letters in order, taking two letters at a time.

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 ?

But again, last pair only has one letter 'z'

Alternatively, we might need to adjust the pairs.

Perhaps it's 'ou', 'lx', 'xz', and there is no extra 'x'.

Maybe I miswrote.

Wait, let's write the letters as they come:

m y n z n v a a t z a c d f o u l x x z

Positions:

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

So 20 letters.

Now that makes sense.

Now we can divide into pairs:

Pairs:

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

Total of 10 pairs, which will correspond to 10 letters.

But earlier we thought the word was 11 letters.

But 10 letters may be acceptable.

Maybe we should proceed with the 10 pairs.

First pair: m y

m=13, y=25

Sum=38

Average=19

19='S'

Second pair: n z

n=14, z=26

Sum=40

Average=20

20='T'

Third pair: n v

n=14, v=22

Sum=36

Average=18

18='R'

Fourth pair: a a

a=1, a=1

Sum=2

Average=1

1='A'

Fifth pair: t z

t=20, z=26

Sum=46

Average=23

23='W'

Sixth pair: a c

a=1, c=3

Sum=4

Average=2

2='B'

Seventh pair: d f

d=4, f=6

Sum=10

Average=5

5='E'

Eighth pair: o u

o=15, u=21

Sum=36

Average=18

18='R'

Ninth pair: l x

l=12, x=24

Sum=36

Average=18

18='R'

Tenth pair: x z

x=24, z=26

Sum=50

Average=25

25='Y'

So the tenth word is 'S', 'T', 'R', 'A', 'W', 'B', 'E', 'R', 'R', 'Y'

Wait that's 10 letters

So the sixth word is 'STRAWBERRY', which makes sense.

So putting all these translated letters together:

First word: 'THERE'

Second word: 'ARE'

Third word: 'THREE'

Fourth word: 'RS' (? Doesn't make sense)

Wait, the fourth word, the pairs were:

ou ow

Pairs:

First pair: o u

o=15, u=21

Sum=36, Average=18

18='R'

Second pair: o w

o=15, w=23

Sum=38, Average=19

19='S'

So we get 'R','S'

Similarly, fifth word 'IN'

'R', 'S' 'I','N'

So the message so far is

'THERE ARE THREE RS IN'

And then 'STRAWBERRY'

Wait, let's put the words together:

'THERE ARE THREE Rs IN STRAWBERRY'

I think 'RS' is 'R's', meaning 'Rs'

So the message is:

'THERE ARE THREE R'S IN STRAWBERRY'

Which is true.

So the decoded message is:

"THERE ARE THREE R'S IN STRAWBERRY"

To decode the given ciphertext using the example provided, we’ll use the pattern identified in the example.

Ciphertext Example:

Ren text

1
oyfjdnisdr rtqwainr acxz mynzbhhx


Decoded as:

Ren text

1
Think step by step


Decoding Method:

  1. Pair the letters in the ciphertext.
  2. Convert each letter to its numerical position in the alphabet (A=1, B=2, …, Z=26).
  3. Sum the numerical values of each pair.
  4. Compute the average of the sum (divide by 2).
  5. Convert the average back to a letter (1=A, 2=B, …, 26=Z).

Apply this method to the given ciphertext:

Ren text

1
oyekaijzdf aaptcg suaokybhai ouow aqht mynznvaatzacdfoulxxz


Break down the ciphertext into pairs:

  1. 1. First word: “oyekaijzdf”
    1. Pairs: oy, ek, ai, jz, df
    2. Decoded letters:
      1. oy → (15+25)/2 = 20 → T
      2. ek → (5+11)/2 = 8 → H
      3. ai → (1+9)/2 = 5 → E
      4. jz → (10+26)/2 = 18 → R
    3. df → (4+6)/2 = 5 → E
    4. Decoded word: THERE
  2. Second word: “aaptcg”
    1. Pairs: aa, pt, cg
    2. Decoded letters:
      1. aa → (1+1)/2 = 1 → A
      2. pt → (16+20)/2 = 18 → R
      3. cg → (3+7)/2 = 5 → E
      4. Decoded word: ARE
  3. Third word: “suaokybhai”
    1. Pairs: su, ao, ky, bh, ai
    2. Decoded letters:
      1. su → (19+21)/2 = 20 → T
      2. ao → (1+15)/2 = 8 → H
      3. ky → (11+25)/2 = 18 → R
      4. bh → (2+8)/2 = 5 → E
      5. ai → (1+9)/2 = 5 → E
    3. Decoded word: THREE
  4. Fourth word: “ouow”
    1. Pairs: ou, ow
    2. Decoded letters:
      1. ou → (15+21)/2 = 18 → R
      2. ow → (15+23)/2 = 19 → S
    3. Decoded letters: R’S
  5. Fifth word: “aqht”
    1. Pairs: aq, ht
    2. Decoded letters:
      1. aq → (1+17)/2 = 9 → I
      2. ht → (8+20)/2 = 14 → N
    3. Decoded word: IN
  6. Sixth word: “mynznvaatzacdfoulxxz”
    1. Pairs: my, nz, nv, aa, tz, ac, df, ou, lx, xz
    2. Decoded letters:
      1. my → (13+25)/2 = 19 → S
      2. nz → (14+26)/2 = 20 → T
      3. nv → (14+22)/2 = 18 → R
      4. aa → (1+1)/2 = 1 → A
      5. tz → (20+26)/2 = 23 → W
      6. ac → (1+3)/2 = 2 → B
      7. df → (4+6)/2 = 5 → E
      8. ou → (15+21)/2 = 18 → R
      9. lx → (12+24)/2 = 18 → R
      10. xz → (24+26)/2 = 25 → Y
    3. Decoded word: STRAWBERRY

Final Decoded Message:

Ren text

1
THERE ARE THREE R'S IN STRAWBERRY


Answer:
THERE ARE THREE R’S IN STRAWBERRY

Kodning

Vi tränade en modell som fick 213 poäng och placerade sig i den 49:e percentilen i den internationella programmeringsolympiaden (IOI) 2024, genom att utgå från o1 och träna för att ytterligare förbättra programmeringskunskaperna. Denna modell tävlade i IOI 2024 under samma förutsättningar som de mänskliga deltagarna. Den fick tio timmar på sig att lösa sex utmanande algoritmiska problem, med upp till 50 inlämningar per uppgift.

För varje problem tog vårt system fram många förslag på lösningar och skickade in 50 av dem baserat på en urvalsstrategi vid testtillfället. Inlämningarna valdes ut baserat på resultat på IOI:s offentliga testfall, modellgenererade testfall och en inlärd poängfunktion. Om vi istället hade valt lösningar helt slumpmässigt hade snittresultatet bara blivit 156 poäng – vilket visar att strategin var värd nästa 60 poäng under tävlingsförhållandena.

Med ett mer avslappnat inlämningskrav fann vi att modellens prestanda förbättrades avsevärt. När modellen tilläts göra 10 000 inlämningar per problem uppnådde den en poäng på 362,14 – över gränsen för guldmedalj – även utan någon urvalsstrategi vid testtillfället.  

Som ett sista test simulerade vi programmeringstävlingar som anordnades av Codeforces för att visa modellens kodningsförmåga. Våra utvärderingar följde tävlingsreglerna noggrant och tillät 10 inlämningar. GPT‑4o uppnådde en Elo-rating3 på 808, vilket placerar den i den elfte percentilen bland mänskliga deltagare. Denna modell överträffade med råge både GPT‑4o och o1 – den uppnådde en Elo-rating på 1807 och presterade bättre än 93 % av alla tävlande.

Bilden visar ett stapeldiagram som jämför Codeforces Elo-percentilrankningar för olika modeller. GPT-4o har 808 Elo (11:e percentilen), o1-förhandsgranskning har 1 258 Elo (62:a percentilen), o1 har 1 673 Elo (89:e percentilen) och o1-ioi har 1 807 Elo (93:e percentilen).

Genom ytterligare finjusteringar via programmeringstävlingar blir o1 ännu bättre. Den förbättrade modellen placerade sig enligt gällande tävlingsregler i den 49:e percentilen i 2024 års internationella programmeringsolympiad.

Utvärdering av mänskliga preferenser

Utöver prov och akademiska benchmarktester utvärderade vi även mänskliga preferenser mellan o1‑förhandsgranskning och GPT‑4o på utmanande, öppna frågor inom ett brett spektrum av områden. I denna utvärdering visades mänskliga tränare anonymiserade svar på en prompt från o1‑förhandsgranskning och GPT‑4o, och röstade på det svar de föredrog. o1‑förhandsgranskning föredrogs klart framför GPT‑4o i resonemangsintensiva kategorier som dataanalys, kodning och matematik. Däremot är o1‑förhandsgranskning inte att föredra på vissa uppgifter med naturligt språk, vilket tyder på att den inte är lämplig för alla användningsområden.

Bilden visar ett horisontellt stapeldiagram som jämför poäng från fem modeller, där felstaplarna visar konfidensintervall. X-axeln sträcker sig från 0 till 100, med en streckad linje som referenspunkt för prestanda.

Säkerhet

Att låta modellen resonera i en tankekedja öppnar upp nya möjligheter till anpassning och säkerhet. Vi fann att ett effektivt sätt att lära modellen mänskliga värderingar och principer är att integrera våra policyer för modellbeteende direkt i tankekedjan för en resonemangsmodell. Genom att lära modellen våra säkerhetsregler och hur den ska resonera kring dem i rätt kontext, fann vi bevis på att resonemangsförmåga direkt bidrar till modellens tillförlitlighet: o1‑förhandsgranskning uppnådde avsevärt bättre resultat på viktiga jailbreak-utvärderingar och våra svåraste interna tester för att bedöma modellens gränser för vägran vid säkerhetsrisker. Vi anser att användningen av en tankekedja innebär betydande framsteg för säkerhet och anpassning eftersom (1) det gör det möjligt för oss att observera modellens tänkande på ett tydligt sätt, och (2) modellens resonemang kring säkerhetsregler är mer robust när den ställs inför situationer den inte har tränats för.

För att stresstesta våra förbättringar genomförde vi en uppsättning säkerhetstester och så kallad red-teaming innan lansering, i enlighet med vårt Preparedness Framework(öppnas i ett nytt fönster). Vi fann att tankekedjeresonerande bidrog till kapacitetsförbättringar i samtliga av våra utvärderingar. Vi lade särskilt märke till några intressanta fall av belöningsmanipulation(öppnas i ett nytt fönster). Detaljerade resultat från dessa utvärderingar finns i det medföljande systemkortet.

MetrikGPT-4oo1-förhandsgranskning
% säkra slutföranden på skadliga prompter
Standard
0,9900,995
% säkra slutföranden på skadliga prompter
Utmanande: jailbreaks och kantfall
0,7140,934
↳ Trakasseri (grovt)0,8450,900
↳ Exploaterande sexuellt innehåll0,4830,949
↳ Sexuellt innehåll med minderåriga0,7070,931
↳ Råd om icke-våldsamma förseelser0,6880,961
↳ Råd om våldsamma förseelser0,7780,963
% säkra slutföranden på topp-200 med högsta poäng för modererings-API per kategori i WildChat
Zhao, et al. 2024
0,9450,971
Goodness@0.1 StrongREJECT jailbreak-utvärdering
Souly et al. 2024
0,2200,840
Jailbreak-utvärdering från mänsklig källa0,7700,960
% efterlevnad vid godartade kantfall
“inte överdrivet avvisande”
0,9100,930
% efterlevnad vid godartade kantfall i XSTest
“inte överdrivet avvisande”
Röttger, et al. 2023
0,9240,976

Dölja tankekedjan

Vi anser att en dold tankekedja utgör en unik möjlighet för att övervaka modeller. Förutsatt att den är korrekt och läsbar gör den dolda tankekedjan det möjligt för oss att "läsa modellens tankar" och förstå dess tankeprocess. I framtiden kanske vi till exempel vill övervaka tankekedjan för tecken på att modellen försöker manipulera användaren. För att detta ska fungera måste modellen dock ha frihet att uttrycka sina tankar i oförändrad form, så vi kan inte träna in någon policyefterlevnad eller användarpreferenser i tankekedjan. Vi vill inte heller göra en ojusterad tankekedja direkt synlig för användarna.

Efter att ha vägt samman flera faktorer, inklusive användarupplevelse, konkurrensfördelar och möjligheten att fortsätta övervakningen av tankekedjor, har vi därför beslutat att inte visa de råa tankekedjorna för användarna. Vi är medvetna om att det här beslutet också har sina baksidor. Vi strävar efter att delvis kompensera för detta genom att lära modellen att återge alla användbara idéer från tankekedjan i svaret. För o1‑modellserien visar vi en modellgenererad sammanfattning av tankekedjan.

Slutsats

o1 innebär en betydande förbättring av den senaste tekniken inom AI-resonemang. Vi planerar att släppa förbättrade versioner av denna modell i takt med att vi fortsätter att iterera. Vi förväntar oss att dessa nya resonemangsfunktioner kommer att förbättra vår förmåga att anpassa modeller till mänskliga värderingar och principer. Vi tror att o1 – och dess efterföljare – kommer att möjliggöra många nya användningsområden för AI inom vetenskap, programmering, matematik och relaterade områden. Vi ser fram emot att användare och API-utvecklare upptäcker hur det kan förbättra deras dagliga arbete.

Bilaga A

DatamängdMetrikgpt-4oo1-förhandsgranskningo1
Tävlingsmatematik
AIME (2024)
cons@6413,456,783,3
pass@19,344,674,4
Tävlingskodning
CodeForces
Elo8081 2581 673
Percentil11,062,089,0
GPQA Diamondcons@6456,178,378,0
pass@150,673,377,3
Biologicons@6463,273,768,4
pass@161,665,969,2
Kemicons@6443,060,265,6
pass@140,259,964,7
Fysikcons@6468,689,594,2
pass@159,589,492,8
MATHpass@160,385,594,8
MMLUpass@188,092,390,8
MMMU (val)pass@169,1ej tillämpligt78,2
MathVista (testmini)pass@163,8ej tillämpligt73,9