見出し画像

OpenAI o1, Advanced Voiceモード, Llama 3.2, etc - Generative AI 情報共有会 #21

今週、10月1日(火)にZENKIGEN社内で実施の「Generative AI最新情報共有会」でピックアップした生成AI関連の情報を共有します。

この連載の背景や方向性に関しては、以下第一回の記事をご覧ください。


OpenAI o1発表(2024/09/12)

https://openai.com/index/introducing-openai-o1-preview/

回答生成する前に多くの時間をかけて考えるように設計されたOpenAIの新たなフラグシップモデル「OpenAI o1」発表。
(“o1” の ”o” は OpenAI の “o” らしい。)(GPT-4o の “o” は “omni” の “o”)

性能

数学、プログラミング、科学領域の高度な問題に対する成績でgpt4oを圧倒。

数学、プログラミング、科学領域の高度な問題に対するgpt4oとの性能比較(こちらから引用)

技術

技術の詳細は明らかにされていないが、Chain-of-Thought(思考の連鎖)を駆使していることが述べられている。

Chain-of-Thought
人間が難しい質問に答える前に長い時間考えるのと同様に、”思考を巡らして”最終回答を生成する。
- 方向性に間違いを認識したら修正したり、別のアプローチを試したり。
- 難しいステップを単純なステップに分解したり。

こちら にOpenAI o1がどのように "思考を巡らせているか" の例が紹介されている。
ここでは一例として、暗号解読の例を取り上げる。

与えられた暗号解読問題はこちら。

oyfjdnisdr rtqwainr acxz mynzbhhx -> Think step by step

上の例を使って解読してください:

oyekaijzdf aaptcg suaokybhai ouow aqht mynznvaatzacdfoulxxz

OpenAIブログから引用(DeepL日本語訳)

【GPT-4o】
GPT-4oでは以下の出力となり正解に辿り着けなかった。

例に基づいて、ステップ・バイ・ステップで説明していきます:

1. 例が与えられた:
- 入力: oyfjdnisdr rtqwainr acxz mynzbhhx
- 出力: Think step by step

単語を調べてみます:
- パターンには、特定の文字を選択したり、変換したりすることが含まれます

2. では、新しいフレーズを解読してみます:
- 入力:oyekaijzdf aaptcg suaokybhai ouow aqht mynznvaatzacdfoulxxz

ステップ・バイ・ステップの解読プロセス:

可能性のある単語分割を特定します。

最初のフレーズは、例と同じ構造に従うかもしれません。入力されたテキストは、自然な区切りやパターンに基づいてグループに分けられそうです。

可能性のある分割は次の通りです:
- oyekaijzdf
- aaptcg
- suaokybhai
- ouow
- aqht
- mynznvaatzacdfoulxxz

しかし、意味のある解読を行うには、関与している可能性のある変換や文字の移動について、より多くの文脈が必要です。
この暗号で使用されている追加の解読ルールや変換を教えてください。

OpenAIブログから引用(DeepL日本語訳)

【OpenAI o1-preview】
o1では、回答をする前に「思考」の過程が入る。
ブログ記事中ではその「思考」内容が共有されている(非常に長いので端折りながら掲載)。

まず、ここで何が起こっているのか?

与えられたものは以下の通り:

最初に、例:

「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文字)

2番目の単語:rtqwainr(8文字)

3番目の単語:acxz(4文字)

4番目の単語:mynzbhhx(8文字)

暗号文の合計文字数:10 + 8 + 4 + 8 = 30文字

平文:Think step by step

最初の単語:Think(5文字)

2番目の単語:step(4文字)

3番目の単語:by(2文字)

4番目の単語:step(4文字)

平文の合計文字数:5 + 4 + 2 + 4 = 15文字

うーん。

(中略)

オプション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

ちょっと待ってください。

ここにはアナグラムまたは置換暗号があるかもしれません。

(中略)

オプション2:特定のコードに従って対応させることを試みる。おそらく列ごとの文字か?

または、暗号がもっと複雑であるかもしれません。

または、「oyfjdnisdr」は10文字で「Think」は5文字です。

もしも各平文の文字が2つの暗号文の文字で表されているとしたら?

(中略)
1つの可能性は、「oy」が「T」を表しているということです。

しかし、どうやって?

選択肢1:文字の合計を使う。

文字を数字に変換します(A=1, B=2, ..., Z=26)。

「o」と「y」で「T」に到達する方法を試してみましょう。

o = 15

y = 25

合計:15 + 25 = 40

しかし「T」は20です。

あるいは、引き算を試す:25 - 15 = 10。

だめです。

他に数字を組み合わせる方法はあるでしょうか。

(中略)

ペアの数字の平均が「T」に対応するのかもしれません。

(15 + 25)/2 = 20、これは「T」に対応します。

ちょっと待って、これは有望そうです。

最初のペア:「o」(15) +「y」(25) = 40

40 / 2 = 20

20は「T」に対応します。

ですから、ペア内の文字の平均が平文の文字に対応するのかもしれません。

次のペアでこれを確認しましょう。

2番目のペア:「fj」は「h」に対応しています。

「f」=6、「j」=10

合計:6+10=16

平均:16/2=8

8は「h」に対応します(「h」は8です)。

成功です!

(中略)

解読されたメッセージは:

「THERE ARE THREE R'S IN STRAWBERRY」

OpenAIブログから引用(DeepL日本語訳)

この思考により最終回答に辿り着いている。
回答としては、この思考内容を要約したものとして、以下の内容がユーザーに提示される。

以下の暗号文を、例に基づいて解読します。例で示されたパターンを使用します。

暗号文の例:

1 oyfjdnisdr rtqwainr acxz mynzbhhx

解読結果:

1 Think step by step

解読方法:

暗号文の文字をペアにする。
各文字をアルファベットの位置に変換する (A=1, B=2, …, Z=26)。
各ペアの数値を足す。
合計を2で割った平均を求める。
平均を文字に変換する (1=A, 2=B, …, 26=Z)。
この方法を使って、与えられた暗号文を解読します。

1 oyekaijzdf aaptcg suaokybhai ouow aqht mynznvaatzacdfoulxxz

まず暗号文をペアに分けます。

最初の単語: “oyekaijzdf”
ペア: oy, ek, ai, jz, df

解読された文字:

oy → (15+25)/2 = 20 → T

ek → (5+11)/2 = 8 → H

ai → (1+9)/2 = 5 → E

jz → (10+26)/2 = 18 → R

df → (4+6)/2 = 5 → E

解読された単語: THERE

第二の単語: “aaptcg”
ペア: aa, pt, cg

解読された文字:

aa → (1+1)/2 = 1 → A

pt → (16+20)/2 = 18 → R

cg → (3+7)/2 = 5 → E

解読された単語: ARE

第三の単語: “suaokybhai”
ペア: su, ao, ky, bh, ai

解読された文字:

su → (19+21)/2 = 20 → T

ao → (1+15)/2 = 8 → H

ky → (11+25)/2 = 18 → R

bh → (2+8)/2 = 5 → E

ai → (1+9)/2 = 5 → E

解読された単語: THREE

第四の単語: “ouow”
ペア: ou, ow

解読された文字:

ou → (15+21)/2 = 18 → R

ow → (15+23)/2 = 19 → S

解読された単語: R’S

第五の単語: “aqht”
ペア: aq, ht

解読された文字:

aq → (1+17)/2 = 9 → I

ht → (8+20)/2 = 14 → N

解読された単語: IN

第六の単語: “mynznvaatzacdfoulxxz”
ペア: my, nz, nv, aa, tz, ac, df, ou, lx, xz

解読された文字:

my → (13+25)/2 = 19 → S

nz → (14+26)/2 = 20 → T

nv → (14+22)/2 = 18 → R

aa → (1+1)/2 = 1 → A

tz → (20+26)/2 = 23 → W

ac → (1+3)/2 = 2 → B

df → (4+6)/2 = 5 → E

ou → (15+21)/2 = 18 → R

lx → (12+24)/2 = 18 → R

xz → (24+26)/2 = 25 → Y

解読された単語: STRAWBERRY

最終的な解読結果:

1 THERE ARE THREE R'S IN STRAWBERRY

答え: THERE ARE THREE R’S IN STRAWBERRY

OpenAIブログから引用(DeepL日本語訳)

(この推論時にコストをかけることで回答性能を上げる推論計算量のスケーリングの話はホットな話題の一つで、関連する論文の紹介をした記事を以前あげているのでこちらもよろしければご覧ください。)

GPT-4oとOpenAI o1の使い分け

o1は複雑な推論が必要なタスクに秀でている。
一方、ライティング(Personal Writing, Editing Text)に関してはGPT-4oの方がo1-previewより人間に好まれる結果が報告されている。

o1-previewとGPT-4oの出力のどちらが好ましいか人間に評価させた結果(o1-previewのGPT-4oに対する勝率)。OpenAIブログから引用。

ライティングなど身近な話題に対しては、GPT-4oの方が使い勝手が良い(レスポンスも早いし、安い)。

OpenAI、Advanced Voiceモードが利用可能に(2024/09/25)

今年5月にGPT-4oが発表された際にデモとして公開されていた音声機能の一部(以下記事で紹介)が一般に利用可能になった。

日本語でも対話可能。
面接練習をしてみた感想↓

  • 返答までの間をほとんど感じずかなり自然。

  • 最初にさまざまな指示(「”深掘り”をするように」, 「圧迫面接のような形で」など…)を与えればその形式で行なってくれる。

  • 回答に詰まった際などはフォローに入ってくれる。こちらが遮ると発話をやめてくれる。

(社内共有会時点では発表されていなかったが、)Advanced Voiceモードと同様に低遅延な音声対話用API「Realtime API」が発表された。

https://openai.com/index/introducing-the-realtime-api/

Meta、Llama 3.2公開(2024/09/25)

画像処理を行うvision LLM(11Bと90B)と、エッジやモバイルデバイス上で動作させることを想定した軽量なLLM(1Bと3B)を公開。
Llama 3.1は、8B, 70B, 405BのLLM(テキストのみ)として公開されていた。

Llama 3.2 Vision(11B, 90B)

チャートやグラフを含む文書レベルの理解、画像のキャプション付け、自然言語記述に基づく画像内のオブジェクトをピンポイントで特定するようなビジュアルグラウンディングタスクなど、画像推論のユースケースをサポート。

Claude 3 Haiku や GPT-4o-mini のようなクローズドモデルと比較して画像理解、テキストの両ベンチマークで競合することを報告。

インストラクションチューニングを行ったvisionモデルでのベンチマーク(ブログから引用)

Llama 3.2(1B, 3B)

エッジデバイス、モバイルデバイス上で動作させることを想定した軽量なLLM。
処理がローカルで行われるため、レスポンスが早い。メッセージやカレンダー情報などのデータをクラウドに送信しないため、プライバシーが維持される。
同程度サイズの軽量モデルと競合する性能。

インストラクションチューニングを行った軽量モデルでのベンチマーク(ブログから引用)

Slackで生成AI機能(Cohere AI App)が利用可能に(2024/09/16)

CohereのLLM「Command-R」シリーズ(RAG(検索拡張生成)に強いとされるモデルシリーズ)を利用し、ウェブ検索や社内情報の収集(Notionなどと接続)をしてタスクをサポート。日本語も対応。

https://cohere-ai.ghost.io/content/media/2024/09/Cohere_Slack_R2--1---1-.mp4

実際に社内slackで利用するにあたっては、プライバシーポリシーの確認(社内データがどのように扱われるか)が必要。

お知らせ

少しでも弊社にご興味を持っていただけた方は、お気軽にご連絡頂けますと幸いです。まずはカジュアルにお話を、という形でも、副業を検討したいという形でも歓迎しています。


この記事が気に入ったらサポートをしてみませんか?