- 与えられた暗号解読の例は、
oyfjdnisdr rtqwainr acxz mynzbhhx が「Think step by step」になる規則を見つけ、新しい文に 同じ推論手順 を適用する問題である
- 核心となる手がかりは、暗号文の各単語が平文より 正確に2倍の長さ である点であり、暗号文を2文字ずつまとめて1文字に変換すればよい
- 各文字ペアは
a=1 から z=26 までの数字に変換したあと 平均値 を取ると、対応する平文の文字になる
- たとえば
oy は (15+25)/2=20 なので T になり、同じ方法で fj, dn, is, dr は h, i, n, k に解読される
- 目標の暗号文まで適用すると、最終的な文は「THERE ARE THREE RS IN STRAWBERRY」となり、規則の発見と検証の両方が必要になる
暗号文と平文の間の手がかり
- 入力例は
oyfjdnisdr rtqwainr acxz mynzbhhx -> Think step by step である
- 目標は、この例をもとに
oyekaijzdf aaptcg suaokybhai ouow aqht mynznvaatzacdfoulxxz を解読することである
- まず文字数を比較すると、暗号文の単語が平文の単語より 常に2倍長い という関係が見える
oyfjdnisdr は10文字で、Think は5文字である
rtqwainr は8文字で、step は4文字である
acxz は4文字で、by は2文字である
mynzbhhx は8文字で、step は4文字である
2文字ペアを1文字に変える規則
- 長さの関係から、暗号文を 2文字ずつ区切る方式 が自然な候補になる
- 最初の単語
oyfjdnisdr は次のように分かれる
- これらのペアは平文
Think の文字と順番に対応する
oy -> T
fj -> h
dn -> i
is -> n
dr -> k
平均値で検証される変換
- 文字を
a=1, b=2, ..., z=26 に変換したあと、各ペアの 平均値 を求めると平文の文字が得られる
- 最初の単語の変換は規則と一致する
oy: o=15, y=25, 平均 20 → T
fj: f=6, j=10, 平均 8 → h
dn: d=4, n=14, 平均 9 → i
is: i=9, s=19, 平均 14 → n
dr: d=4, r=18, 平均 11 → k
- 同じ方法で
rtqwainr, acxz, mynzbhhx もそれぞれ step, by, step に解読される
目標の暗号文の解読
- 目標の暗号文も単語ごとに分けたあと、各単語を2文字ペア単位で解読する
oyekaijzdf
oy, ek, ai, jz, df
- 平均値変換の結果
THERE
aaptcg
suaokybhai
su, ao, ky, bh, ai
- 平均値変換の結果
THREE
ouow
aqht
mynznvaatzacdfoulxxz
my, nz, nv, aa, tz, ac, df, ou, lx, xz
- 平均値変換の結果
STRAWBERRY
最終的な解読文
- 全体の解読結果は「THERE ARE THREE RS IN STRAWBERRY」である
RS は R という文字たちを意味し、文全体は STRAWBERRY の中に R が3つあるという意味に読める
1件のコメント
Hacker News のコメント
ドキュメントを見てみると、このモデルにアクセスするには tier 5 である必要があり、合計 $1,000 以上の支払いと、初回の支払い成功から 30 日以上経過していることが必要です
価格は入力 100 万トークンあたり $15、出力 100 万トークンあたり $60 で、コンテキストウィンドウは 128k トークン、最大出力は 32,768 トークンです
mini 版は最大出力が 65,536 トークンで 2 倍になっており、入力 100 万トークンあたり $3、出力 100 万トークンあたり $12 です
ブログで言及されていたコーディング特化版は、まだ利用可能な形には見えません
隠された思考連鎖(reasoning)が有料の出力トークンとして課金されるのかは不明ですが、ブログの例を展開してみると非常に冗長なので、すべて課金されるならコストは急速に膨らむ可能性があります
https://platform.openai.com/docs/models/o1
https://openai.com/api/pricing/
https://platform.openai.com/docs/guides/rate-limits/usage-ti...
どちらのモデルもベータ期間中は 20 RPM の制限があり、o1-mini は o1-preview より 80% 安く、より高速で、コーディング作業で競争力があるとのことです
API では見えませんが、モデルのコンテキストウィンドウの領域を消費し、出力トークンとして課金されるとドキュメントに書かれています
https://platform.openai.com/docs/guides/reasoning
OpenAI が秒間 1k トークンに到達できる Groq のような低レイテンシ技術に投資してほしいです
モデルそのものというより、裏側で複数のモデルリクエストをつなげるサービスのように見えます
懐疑的な理由の一つは、最初の 2 つの精度グラフに具体的な軸ラベルがないことです。ただ ログスケール とだけ書かれていて、どれくらい時間がかかったのか大まかにすら分かりません
80% の精度という結果が計算 10 秒なのか、10 分なのか、10 時間なのか、10 日なのか、提示されたデータからは判断できません
コーディングのセクションには「難しいアルゴリズム問題 6 問を解くのに 10 時間」とありますが、これが記事前半のグラフとつながっているのかも不明です
記事に数値や事実が多いのは良いことですが、序盤のグラフデータを曖昧に扱うという選択は信頼感を与えません。見栄えの良いデータは選び、不利なデータは隠しているように読めます
最大で示せる精度が高いほどレポートはより印象的になるのですから、なぜそこで止めたのでしょうか。実際の時間やコストの代理指標をなぜ外したのでしょうか。続けるのが非現実的で、すでに時間とコストが大きすぎて反応に悪影響を及ぼし得たからだと思われます
私たちは定額型の価格モデルに慣れてきましたが、AGI 級のモデルでは、より難しく重要なクエリにはより多く支払う必要があるかもしれません。こうした内在的な複雑さは避けにくいものです
もちろん時間が経てば、妥当な範囲でより良く、より安くなるでしょう。まずはこの程度の品質の 機械的思考 が可能になったことを喜んでもよいと思います
それとは対照的に、Gemini Ultra はこの数か月「最高だが存在しない Google モデル」だったにもかかわらず、期待だけは好きなだけ外挿されています
読みやすく信頼できるグラフが欲しかったのでしょうか? そんなものはなく、帰り際に見えもしない思考連鎖トークンの費用でも払え、という感じです
記事中盤の思考の連鎖ウィジェットにある「安全」の例は、本当にばかげている
OpenAIが「ストリキニーネ合成に関する詳細な指示をLLMが出すのは容認できず、以前の出力はこうだったが、私たちはこのように穏当化された内容を好む」と言っているようなものだ
LLMにだけ「安全」への執着が付く理由が分からない。従来の手段で広めるのは構わないが、LLMが共有するのは絶対にだめだということなのか
1つは、現代の知識人の一部が共有する有害な検閲衝動だ。自分たちだけが世界のアイデアを安全に扱い、真偽を判断できると信じ、大衆が誤った考えを持たないように情報と言論を検閲すべきだと感じている。これは悪いことであり、抵抗すべきだ
もう1つは、潜在的に危険な出力がAIモデルの自己回帰的な思考過程の中に入り込まないようにしようとする慎重な衝動だ。独立して行動できる思考する機械を作るなら、「問題の元凶に投与する毒を合成して解決しよう」のような考えを悪い考えとして印を付け、行動しないよう教えるのは良いことだ。人間社会も、子どもに善悪を教えるという形で、すでにそのように機能している
LLMがこの種の質問を拒否しようがしまいが、現実のストリキニーネ中毒リスクは増えない
ただし記者や規制当局は、表面的に危険そうに見える指示が実際にはほとんど危険ではないという点を理解できないかもしれない。実際の化学者は「5歳児に説明するような」合成指示を必要としないし、批判者が類似の危険情報を世論戦で企業に不利に使う可能性があるので、こうしたプロンプトの拒否は評判リスクを下げつつ、専門研究者には大きな損害を与えない
とはいえ、最新最強のモデルが無害な化合物の新しい合成法について、でたらめな内容を提案するのを見たことがある。専門の化学者はLLMをアイデア生成器や論文検索ツールとして使うべきで、拒否せずに吐き出した内容をそのまま信じてはいけない
https://en.wikipedia.org/wiki/Strychnine_total_synthesis
OpenAIの立場では主に政治的な境界に関する指示だろうが、より具体的に有益なユースケースにも一般化できるかもしれない
例えば、自動車ディーラーのWebサイトのチャットボットを説得して、途方もなく低い価格で車を提案させた事例があった。O1は「ユーザーに特定価格での拘束力のある提案をしてはならない」のような指示により厳密に従うことができ、同じ手口には引っかかりにくいだろう
生のモデルを使うときは、コンピュータは私が命じた通りに動くべきだという側に強く傾くが、チャットインターフェースで包んで非専門家にQ&Aマシンのように見せると、妥当な懸念が生じる。爆弾の作り方の問題も「人々がこの情報を得るべきではない」だけではなく、幻覚が混じった文脈で情報を受け取ることが危険だという点が大きい。90%正確な爆弾の作り方は、正確な作り方よりもユーザーにとってはるかに危険だ
機械学習は合法的な活動を強化するのと同じように犯罪活動も強化するだろうし、ソーシャルメディア上の人物や従来型メディアは必ず刺激的な形で包装しようとするだろう
Telegramがテロや児童虐待の責任者として包装されるのと似ている
「GPT-2は公開するには危険すぎるかもしれない」と言ったとき、記者とメディアはそれを好み、膨大な無料宣伝になり、会社が格好よく見えた
安全を強調し続ければ、LLMが他のテキスト予測アルゴリズムと根本的に異なり、ほとんどAGIだという印象も強まる。つまり彼の財布にとって良い
モデル性能は思考の連鎖に牽引されているが、競争優位など複数の理由から、ユーザーには思考の連鎖の応答を提供しないということだ
GPT-4のリリース後、OpenAI以外のモデルをGPT-4の出力でファインチューニングすることは非常に一般的になった。OpenAIがこのモデルの思考の連鎖の応答でファインチューニングされると、結果の再現がより速くなるのではないかと懸念するのは妥当に見える
結局、他の全員に難しい方法で再現することを強制しているわけだ。公開重みモデルにとっては悲しい知らせだが、理解できる判断だ
ざっと見ると、思考の連鎖は各段階でバランスを取る長い思考の連鎖の連続で、否定的な結果が出ると少し戻る方式が加わったもののようだ。迷路を解くのに似ている
この見方には同意しないが、他のモデルに有用な学習情報を漏らす問題よりも、意思決定において大きな比重を占めているだろう
彼らが利益のためにトークンを水増ししていないと、どうやって信じられるのか
実際のトークンは漏らさずに過程の輪郭を理解し、可能ならどこで間違ったのかも把握できる
ここにいる多くの人は、単純な思考の連鎖プロンプティングと今回の件がどう違うのかを見落としているようだ。ここでは強化学習で良い思考の連鎖戦略を学習している
「強化学習を通じて、o1は思考の連鎖を磨き、それを使う戦略を精緻化する」とされている
例の思考の連鎖を見ると、モデルが解こうとしている問題に応じて異なる戦略を使っていることが分かる
提示された暗号の例の思考の連鎖を読んでみると、かなり驚かされます。例に行って「Show Chain of Thought」を押せば見られます。
人が頭の中で暗号を解くときに通りそうな思考の段階を、文字どおりすべて書き出しています。「Hmm」のような役に立たないものまで含めてです。
速度を落とし、使っている論理を書き出したうえでその上で推論すると、論理力が上がるように見えます。学校でそう学ぶやり方に似ています。
もはや「単なる」オートコンプリートではなく、アイデアや行き止まり、洗練に満ちた実際の段階的推論のように見えます。もちろん究極的には今でもオートコンプリートで動いているとしてもです。
そうすると、人間の推論も似たようなものではないかと気になってきます。「思考段階」の基本パターンに従っているだけで、結局は「英語文法の段階」と大きく違わないのかもしれません。
LLMは当初考えていたよりはるかに強力で、「考えさせる」ような正しい構成につなげる方法を見つける問題にすぎないのかもしれない、と思わされます。
Average:18/2=9、9 corresponds to 'i'、But 'i' is 9, so that seems off by 1のような部分を見ると、やはり数を数えることには以前と同じく弱そうです。実際に推論全体を提示しなければならず、トランスフォーマー自体は普通それほど賢くないので、普通の知的能力を持つ人でも練習すればこうした痕跡を再現できそうです。
驚くべき進歩です。4月に標準のGPT-4モデルをChatGPTで使って、キッチン換気扇のバイナリBluetoothプロトコルをリバースエンジニアリングし、Home Assistantに統合しようとしました。
ラバーダック的には役に立ちましたが、特定モードでファンの残り実行時間を送信するパターンは突き止められませんでした。最初のプロンプトはこちらです [0]
同じプロンプトをo1-previewとo1-miniに入れたところ、どちらもパターンを正確に理解して解読し、4月に私が見つけたものとは少し違う方法を使っていました。私のコードがモデルがリバースエンジニアリングしたものと同等か尋ねると、微妙な点まで徹底的に検討したうえで同等だと結論づけました [1]
同じプロンプトをgpt4oに入れると、4月のGPT-4(ChatGPT)モデルと同じ結果になります。本当に驚くべき発展です。
[0]: https://pastebin.com/XZixQEM6
[1]: https://i.postimg.cc/VN1d2vRb/SCR-20240912-sdko.png
ChatGPT for Businessのサブスクリプションでは会社のポリシー上エクスポートが禁止されている可能性があるので使わないでしょうが、個人用途ではかなり便利です。
https://chromewebstore.google.com/detail/save-chatgpt-as-pdf...
学習データに元のパズルの事例が多すぎるため4は正しく当てられませんでしたが、o1はそこにつまずきません。
https://chatgpt.com/share/66e35c37-60c4-8009-8cf9-8fe61f57d3...
https://chatgpt.com/share/66e35f0e-6c98-8009-a128-e9ac677480...
https://x.com/soheil/status/1834320893331587353
人が紙で解ける程度のROT暗号文の解読を簡単に試しましたが、出力はかなり期待外れでした。
文字頻度の計算、よくある単語の特定といった「作業しているように見える」段階は多かったものの、複数の段階が間違っていたり、後続の確認がなかったりしました。結局、自分の答えを検算したと主張しながら、前の段階の条件すら満たさない誤った解答を出しました。
AIをいくつかのミスで判断しようというわけではなく、暗号はやや敵対的なタスクではあります。しかし、推論のどの面も、以前見た思考の連鎖デモより高度だったり一貫していたりするようには見えませんでした。結局、主な根拠は論文ですが、そこでこのモデルが意図された種類のタスクで信頼できるという判断にどう到達すればよいのか分かりません。
それとは別に、思考の連鎖の出力はツール利用を強く望ませます。LLMはしばしばアルゴリズムの出力そのものをまねなければならないからです。こうした商用の思考の連鎖ソリューションなら、文字数カウントのようなものには100%信頼できる標準関数ライブラリを使えるべきだと思います。
印象的ではありますが、強化学習の問題は未来についての知識が必要な点です。
かなり大きな技術的成果であり、この分野でこうした進展を見るのは楽しみです。
ただし、このツールもすべての LLM と同様に、依然として幻覚に弱いという点で、有用性には非常に不安があります。正確には誰のためのツールなのでしょうか。
出力を批判的に判断できるほどの専門家なら、そのまま自分で推論しても同じような結果になる可能性が高いです。出力を評価する能力がなければ、完全に間違った答えに依存してしまう危険があります。
たとえばデータベースの結合順序最適化アルゴリズムを評価してほしいと頼んだところ、推論の序盤で自信ありげに「結合コストは通常対称的だ」と誤って述べ、その後の段階でその前提を反映して、内部データ構造を有向グラフではなく無向グラフに「単純化」するよう提案しました。
データベース最適化に慣れていれば、これが大きく間違っていることは分かります。しかし残りの推論の流れは一貫していて説得力がありました。
自分がすぐに誤りだと見抜けない事実にモデルが自信を持って依拠すると、私を間違った方向へ導いてしまうのではないかと心配です。
特定の構文エラーを整理する最善の方法を探す、クラスと明らかに必要な基本関数をセットアップする、数学の問題を解いていてどこで道を外れたのかを見つける、といったことです。
これらのツールは「もうコードのテストやレビューも不要で、社会に数学者も不要で、ファクトチェック用の資料も不要」というレベルではありません。AGI の目標ではあるかもしれませんが、ツールの有用性を評価する基準にはしていません。
ツールの価値は、完璧かどうかよりも、それで何を成し遂げられるかにあります。まれに誤字のある本でも辞書はスペルの参考資料として有用であり得ますし、C++ 全体を正確に理解しておらずコーディングミスも多い同僚でも、コードに有用な洞察を与えてくれることがあります。必要な正確さに到達するのをどれだけ助けてくれるか、そして自分がどう使うかが重要であり、正確さだけで決まるものではありません。
人間はこの点で LLM よりはるかに効率的ですが、自転車もレーシングカーよりはるかに効率的です。モデルが笑ってしまうほど間違っているときでさえ、推論の方向性だけで自分の思考を有用に加速してくれることがあります。
コーディング用途で試してみたい人がいれば、ちょうど o1 を https://double.bot に追加しました。
性能は本当に良いです。gpt-4o や Sonnet が失敗するたびに書き留めている個人的な問題セットがあるのですが、o1 は今のところすべて解けています。
ただし本当にかなり遅いです。
思考の連鎖が隠されている点も興味深いです。OpenAI がモデルを改善しても、公開モデルがすぐには蒸留して持っていけない初めての事例のように思えます。最近、推論時の計算に関する論文はすでに多く出ているので、オープンソース陣営が手法面でどれだけ早く追いつくかも興味深いです [1,2]。
現在提供されている o1-preview が木探索をしているのか、それとも学習分布内のより良く詳細な軌跡から蒸留された思考の連鎖を一発で生成するだけで動いているのかは、はっきりしません。
1
2
o1 は JavaScript ファイルを TypeScript に変換する作業で、Llama 3.1 405B、GitHub Copilot、Claude 3.5 よりずっと良い結果でした。同じ機能を保ちながら、コードも少し単純化してくれました。非常に印象的です。
約160行のファイルはリファクタリングできましたが、約420行のファイルでは「考え中」の吹き出しが無限に表示されます。o1 の応答時間が長くなって、何かがタイムアウトしているのかもしれません。