
インターネットにない専門的知識の膨大な量があります。 任意の本やデータベースにはありません。 人間の脳全体に分散され、実行中のシステムにエンコードされ、誰も完全に理解していないプロセスに埋め込まれています。
Friedrich Hayekは、1945年より、誰よりも優れていました。
「一般的なルールの知識の感覚で科学と呼ぶことができない、非常に重要で組織されていない知識の体を疑問に思います。時間と場所の特定の状況の知識」 [1]
経済について書いていましたが、観察はもっと一般的です。 ローカル、タシット、分散知識で世界が走っています。 トラック車線に一時的に設置されていないバックホール容量を知ることで生活を生み出す物流コーディネーターを考えましょう。 誰よりもチャンスを占拠する不動産業者。 ローカル価格の差から利益を得る仲裁人は、誰もまだ気づいていません. ヘイクは「自然が統計に入らないため、統計的な形で任意の中央機関に伝えられないので、それを置くように、各知識を持っています。」
これは知識の問題です。 情報不足ではなく、最も重要な情報は集中化に抵抗するという認識。
また、世界最大級のソフトウェアシステムの中で何が起こったのか、ほとんど完全に説明しています。
実行中のコードでロックされた知識
メインフレームCOBOLシステムは、毎日取引におけるドルの兆しを処理する。 彼らは数千人の開発者によって10年以上にわたり構築され、それぞれ独自の特定の状況に反応しました。規制変更、火曜日の夜に生産インシデント、顧客は四半期の利益で丸みのあるエラーを訴えています。
誰もがこれらのシステム全体を設計しました。 彼らは成長しました。 レイヤーによるレイヤー、パッチによるパッチ、各開発者は、ローカルナレッジを共有コードベースに寄付しました。 取引承認、利息計算、例外処理、およびアカウントの状態遷移に関するビジネスルールは、きれいに書かれていませんでした。 それらはコード、データレイアウト、呼ばれる慣習、操作上の習慣および生産の修正で埋め込まれました。 元の著者が退職したように、その知識の多くは彼らと退職しました。
これはヘイクの知識の問題です, 実行可能になりました.
知識は、プログラムのやりとりにあまりにも暗黙し、特定のデータや状態に依存して、任意の人や文書によってきれいにキャプチャされます。 誰もそれを完全に理解していません。 システムが行います。 そして、それは実行します。 適切な取引を処理し、正しいルールを適用し、正しい結果を生成します。
標準的なアプローチが失敗する理由
メインフレームの近代化への従来のアプローチは、ヘイキアンの言葉で、中央計画の形態です。 大規模なコンサルティングチームを雇います。 コードを読みます。 ビジネスルールの文書化 ドキュメントからシステムを書き換えます。
これは、中央計画が失敗するのと同じ理由で失敗します。 抽象化は、問題の非常に詳細を失う.
コンサルタントが読むIF WS-FICO-SCORE < 300「300未満のFICOスコアは拒否されます」 しかし、実際の知識は、その文にはない。 実際の条件下にあるシステムの動作です。 トランザクションを介して途中でチェックが失敗したときにどうなりますか? 通信エリアに特定の状態が含まれているときはどうなりますか? カーソルが特定のレコードに配置され、例外パスが2つのプログラムを後でトリガーしたときにどうなりますか? 本当のルールが生きているところです。
知識は、コードの一部に住んでいますが、制約下で実行中のシステムの動作において、より重要になります。
一般的なが、ネクティブな反応は:COBOLでフロンティアLMを指すだけで、何をすべきか尋ねることができますか? COBOLファイルで示されているフロンティアLMは、多くの場合、隔離で行なうために段落が表示されることを伝えることができます。 共有バイトバッファ、インタープログラム間の通信領域、トランザクション境界、および生産型データによって、プログラムが7つのプログラムが相互作用するときに確実に何が起こるかを伝えることはできません。 読書は十分ではありません。 重要な知識は、実行を通じて表現されます。
環境の構築、AIの探索
そのため、知識が表現される環境を再現する代替手段です。
人間にコードを読み、ルールを再構築するために求めるよりも、レガシーシステムの忠実でインストゥルメントされたレプリカをビルドします。元のように振る舞うが、すべてのブランチ、すべてのミューテーション、すべての中間状態、およびすべての相互作用が観察される環境で実行されます。 その後、AIがその環境の中で動作させ、仮説、実験の実行、結果の観察、そして理解を再考することを可能にします。
これは根本的に異なる方向です。 読書タスクとして理解を処理を停止します。 代わりに、対話を通じて理解が発見できる世界を構築します。
お問い合わせ前のエッセイ, 私はリッチ・ストンのビター・レッスン[6]がコード理解に適用されると主張しました. 計算を活用する一般的な方法は、人間工学に基づいた抽象化の周りに構築された方法が不足する傾向にあります。 Summarization、RAG、手動で設計されたオントロジー、ナレッジグラフ:これらはすべて、ポイントまで動作し、十分なスケールと複雑さで分解するヒューリスティックスを通して理解を圧縮しようとしています。 近代化に応用したビターレッスンです。
tacit の知識のための永久的な圧縮方式を造らないで下さい。 知識が表現される環境を構築し、検索や学習などの一般的な方法を使用して調査してみましょう。
実際には、それは、従来のシステムの行動ツインを構築し、AIエージェントにそれと相互作用するためのツールを与えることを意味します。画面を移動し、入力を送信し、データを検査し、実行の痕跡を観察し、結果を比較し、実際のシステム動作に対するビジネスロジックに関するテストの結束。
これはファンシーアの服でテストするだけですか? お問い合わせ 試験は仕様で始まり、システムが満足しているかどうかを確認します。 仕様なしで始まり、発見しようとします。 方向は逆転します。 QAよりも科学的な方法に近いです。
なぜコードを読むのではなくツインを構築しますか?
一見すると、忠実なレプリカを作ることは、コードを直接理解するよりも難しく聞こえます。 1つの意味ではあります。 しかし、それは別の種類の硬いです。
大規模なレガシーシステムを読み、真の行動を再構築することは判断問題です。 解釈、引用文、および英雄的な人間の努力に依存します。 忠実なツインを構築することは、エンジニアリング上の問題です。 目標は、誰かの直感の副産物ではなく、構築するシステムの忠実性を作ることです。
つまり、レガシーシステムをシステム的にチェックし、正式な方法と継続的な差分検証による平衡を締める表現に翻訳することを意味します。 元のシステムとツインで同じ入力を実行します。 出力、トレース、副作用を比較します。 彼らが掘り下げる場所、ギャップを閉じます。 時間が経つにつれて、あなたは信じられない何かに忠実に変わります。
インフラが存在すると、それぞれの新しいシステムが構造で探索可能になるため、この問題は起こります。 私たちは、反復可能なエンジニアリングに1つの基づいたために脆弱、マニュアル、誤ったコンテキストプロセスを取引します。
AIラボは既にパターンを理解しています
現代のAIから最も明確なレッスンの1つは、環境が静的なデータセットを打つことです。
DeepMindはスーパーマンを達成しなかった 専門家の解説の巨大なデータベースを構築することによって行く. ゲームエンジンを構築し、その中の行動によってエージェントを学習させます。 AlphaGo Zero [2] は、人間のゲームデータを完全に削除し、自己プレイを通して学習すると、以前のシステムが上回りました。 環境はカリキュラムでした。
同じパターンは他の場所で表示されます。 SWE-bench [4] は、コードを調べ、編集を行い、テストを実行できる、実際のリポジトリ内のコーディングエージェントを評価します。 WebArena [5] は、ブラウザのトレースの静的データセットではなく、Web アプリケーションを機能させる内部の Web エージェントを評価します。 ビッグラボは、モデルがスクリーンショット、マウスの動き、キーボード操作で実際のインターフェイスを操作するコンピュータ使用システムにすべて移動しました。 それぞれのケースでは、より多くのデータだけでなく、フィードバックを生成する構造化された世界の中で機能する機能から機能します。
パターンは既に表示されています。ドメインをマスターするシステムが必要な場合は、ドメイン自体の代替が悪いことが多いです。
これは、ゲーム、コードリポジトリ、またはブラウザに関係する企業ソフトウェアにのみ適用されます。
AIが40年以上の銀行システムを理解したい場合は、ソースファイルを手渡しし、要約を依頼してください。 操作する環境を与えます。
忠実度はゲーム全体です
もちろん、レプリカが忠実である場合にのみ機能します。 実際のシステムから双眼鏡を掘ると、抽出された理解が間違っています。
だからこそ、検証はただ素敵なものではなく、ゲーム全体がうまくいかないのです。
ツインは、並列実行を通じて、元のシステムに対して継続的に検証する必要があります。 同じ入力は同じ出力、同じキーの状態遷移、および同じ観察可能な動作を生成する必要があります。 あらゆる矛盾が有用です。 システムのモデルが不完全で、環境がより正確になる場所を明らかにします。
適切に行うと、環境は、理解を抽出するための積極的な鋭利な機器になります。
これは、Hypercubic: ドキュメントツールではなく、静的なコード解析プラットフォームではなく、忠実でありながら、AIが書いたことがない知識を発見できる環境です。
近日、具体的についてより詳しくお伝えします。
参考文献
- ヘイク, F.A. (1945).社会における知識の活用. アメリカ経済レビュー、35(4)、519-530.
- シルバー, D. ら. (2017).人間知識のないGoのゲームを習得する。ネイチャーズ、550、354-359。
- エンド・ラーニング・チーム、DeepMind. (2021) を開きます。オープンエンドの学習は、一般的に利用可能なエージェントにつながりますお問い合わせ
- Jimenez, C.E. ら. (2023).SWE-bench:現実世界GitHubの問題を解決できる言語モデル?
- Zhou, S. ら. (2023).WebArena: 自動エージェントの構築のための現実的なWeb環境お問い合わせ
- ストン、R.(2019)。ビターレッスンお問い合わせ