コンテンツにスキップ

2026年のコードファースト AI エージェント:エージェントがコードを書く学習理由

· 13 min read · default
aiagentsllmcode-agentspythonframeworks

ここ数年、「エージェントがツールを使う」は1つの特定のメカニズムを意味していました:モデルが構造化ブロブ — 通常 JSON — を放出し、機能名と引数をネーム、ランタイムがそれを解析し、機能を呼び出し、結果をモデルのコンテキストに戻します。このツール呼び出しパターンは最初のエージェントフレームワーク世代を動かし、機能します。しかし、見始めると明らかな静かな非効率性を持っています:すべてのアクションはモデルを通じたセパレート往復です。3つのツールを呼び出し、結果を組み合わせたいですか?それは少なくとも3つのモデル呼び出しであり、各が累積コンテキストを再読-しなければなりません。モデルは1つの JSON ツール呼び出しのみを発行でき、各結果を見る前に待つ必要があるため。2026年の成長中の思想の学校は、より良い方法があり、それは平明に隠されていると主張しています:エージェントにコードを書かせます。

これはコードファースト AI エージェントパラダイムであり、より効率的なエージェントフレームワークがどのように機能するかを再構成しています。JSON を放出する代わりに、エージェントは Python のスニペット — 複数のツールを呼び出し、ループを使用し、変数を使用し、結果を組み合わせることができる — を書き、ランタイムはそれを実行します。このガイドはそのシフトが重要である理由、エージェントのパフォーマンスとコストをどのように変更するか、および、主導フレームワークが smolagents (最も純粋な形式でのコードファースト アプローチ) および Pydantic AI (Pydantic チームからの型安全エージェント) を通じてそれをどのように実装するかを説明します。また、本質的な反面のカバレッジ:モデル生成コードを安全に実行することです。

JSON ツール呼び出しの問題

コードファーストが重要である理由を確認するには、JSON ツール呼び出しのコスト見てください。API からデータを取得し、フィルター、および合計を計算する必要があるタスクを検討します。ツール呼び出しで、モデルは取得ツールの呼び出しを発行し、結果を待ち、フィルタツールの呼び出しを発行し、待ち、次に計算ツールの呼び出しを発行し、待ち、最後に回答を構成します。4つのモデル呼び出し、各は累積コンテキスト全体を再処理します — 元のタスク、さらに今までに累積されたすべての中間結果。トークンコストとレイテンシースケールはステップ数と共に、複雑なタスクは多くのステップを持ちます。

さらに微妙な問題があります:JSON ツール呼び出しはアクション組成方法を制約します。各ステップは単一関数呼び出し、リテラル引数です。モデルは簡単に「そのリストの各アイテムのために このツールを呼び出す」、または「結果が空の場合、別のクエリを試す」、または「これら2つの結果を計算と組み合わせる」を表現できず、各をセパレート往復に分割しないで、ステップ全体で中間状態について理由を述べ。普通のプログラミング — ループ、条件、変数、組み合わせ — の表現性は正確に欠落しており、それらはマルチステップ ロジックをなじみぐらいにする構造です。ツール呼び出しは、モデルをプログラムカウンター発信するよう求めます。一度に1つの命令を、あたかもタスクが必要なことはプログラムです。

コードファースト洞察

コードファースト アプローチは両方の問題を一度に解決します。単一の JSON ツール呼び出しを発行する代わりに、エージェントは複数のツールを呼び出し、制御フロー、ホールド中間値を変数で、結果を返すことができる Python コードブロックを書きます。ランタイムはそのコードを実行し、エージェントが呼び出すことができるツールは、その実行環境で利用可能な単に Python 関数です。前の例から取得、フィルター、および計算は1つのコードブロックになり、3つの関数呼び出しと少しのロジック — 単一ステップで実行、単一のモデル呼び出しから。

効率性の利得はリアルであり測定可能です。1つのコード ブロックは、以前に複数の ツール呼び出し往復を取得するため、コードファースト エージェント は意味のあるほど少ないLLM呼び出しを作成します — 約30%削減が報告されます — コストとレイテンシーの両方を削減します。またそれは、エージェントが実際のプログラミング言語でアクションを表現するため、それは組成タスク (反復結果、条件分岐、計算組み合わせ) は、孤立した JSON 呼び出しのシーケンスがコストなしで自然にサポートするよりもはるかに自然に処理します。また、トレーニング データ引数があります:モデルは膨大な量のコードを見て、本当にそれを書くのに上手です、おそらく彼らは新規スキーマの完全に、形式化されたツール呼び出し JSON を生成するより上手です。モデルにそのインテント をコードとして表現するよう求めることは、強みを演じます。

smolagents:最も純粋な形式でのパラダイム

smolagents、Hugging Face から、コードファースト考えの明確な表現です。故意に最小限のライブラリは CodeAgent 周りに構築:アクション Python コードであるエージェント。ツール(普通の Python 関数) およびモデルのセットを付与、タスクを手渡し、それはツール呼び出し、ループ、計算するコード を書き実行することで機能します。図書館は目的に小さく、ハッカブルなままです — その哲学はエージェントループが読んで修正するのに十分にシンプルである必要があり、知性はモデルとコード実行アプローチから来ており、重いフレームワークからではありません。

smolagents が効率を超えて何を引き出すかは、それが実際のタスクを自然にどのように処理するかです。リサーチ タスクが検索、解析結果、フィルター、および JSON 往復なしで、1つの首尾一貫した ステップで計算することができるため;データ タスク が読み込み、変換、分析でき、操作ごとに往復なしで。モデル不可知論 —Hugging Face モデル、ローカルモデル、またはLiteLLM 経由の任意のプロバイダーで動作するため、1つのバックエンドにロックされず、コードファースト基本が必要とするサンドボックス実行をサポート(以下に詳細)。シングル エージェント コード ループが必要なチームでは、smolagents はリファレンス実装であり、smolagents チートシートは、そのエージェント、ツール、およびサンドボックスをカバーします。

smolagents の最小限のトレードオフは、複雑な マルチエージェント オーケストレーション、耐久的な状態、または精密制御フロー用の重いフレームワークより少なく足場を提供しません。シングル エージェント コードループでは、機能ではなく制限です;広がったステートフルシステムについてはより重いものに到達するかもしれません。しかし、コードファースト エージェントの最も純粋、最も効率的な表現として、それを殴ることは難しいです。

Pydantic AI:型安全がエージェントに出会う

Pydantic AI、Pydantic (FastAPI 基礎となり Python AI エコシステムの多くをサポートするバリデーション ライブラリ) の背後のチームから、別の角度からエージェント近く:型安全性と開発者経験。その賭けは、Pydantic がデータバリデーション — Python 型ヒント付きでデータの形を宣言し自動バリデーション取得 — に持ってきたのと同じ厳密さをエージェント適用すべきということです。すべてのエージェント入力、出力、およびツール呼び出しがタイプされ、フレームワークはモデル出力が期待された構造にマッチしたことを検証し、出力に準拠しない場合、自動的にモデルに修正を求めることができます。結果は FastAPI スタイル開発者エージェンスの経験:馴染み、タイプチェック、本番指向。

タイプ安全はエージェント上でそれが思わしいより重要です。LLM アプリケーションの定期的な痛みは、モデル出力が構造化されていないテキストであり、それを信頼してプログラムが必要とする構造化データに変えることです — 正しいフィールド、正しいタイプ、有効な値 — は手こずったエラープローンです。Pydantic AI は構造化出力を第一級保証にします:出力タイプを宣言し、フレームワークは必要な場合、モデルで再試行し、それを強制します。それは「モデルのテキストを解析してそれが有効であることを願う」を「バリデートされ、タイプ化されたオブジェクトを受け取る」に変える、本番コードが正確に望むこれです。その V2 再設計で2026年はハーネス ファースト モデルさらに押し出します。ツール、命令、設定をバンドル可能機能に。Pydantic AI チートシートは、タイプ化されたエージェントおよびツールをカバーします。

Pydantic AI および smolagents は、本当に競争者というより、異なる優先度の表現です。smolagents はコードアクション効率および表現性を最適化;Pydantic AI は型安全、バリデート構造化出力、本番人間工学最適化。より少ないLLM呼び出しおよび自然マルチステップロジックを値する チームは smolagents へ傾け;型チェック、検証、FastAPI スタイルエージェント コードを値する チームは Pydantic AI へ傾け。両方は最初世代、JSON のみフレームワークから遠く2026年のうちに何かより プログラマ ネイティブ表現を指します。

安全問題:モデル生成コード実行

コードファースト エージェント明白で深刻なキャッチを持ちます:それは言語モデルによって書かれたコード実行し、モデル生成 コードは定義により信頼できません。コード書き実行任意 Python でき、プロンプト インジェクション により損なわれたり、単に間違ったない場合、ファイル削除、データ流出、制限 なしのネットワーク呼び出し、またはリソース消費。これは仮想ではありません懸念 — エージェント パラダイム全体の中央オペレーショナル リスクであり、それが真面目に取る非交渉可能です。

答えはサンドボックスです:分離環境、限定能力でモデル生成コード実行。フレームワーク直接サポート — smolagents はE2B、Docker または Modal コンテナ のようなリモート サンドボックス、またはホスト プロセスで実行でき、生成されたコードさえ許可される モジュールを制限できます。原則は最小特権です:サンドボックスはタスク本当に必要な アクセスのみ すべき — ファイル システム アクセスまたは不要、必要を超えるネットワーク出力なし、ホストに影響能力なし。本番環境に接近,またはタスク タッチ信頼できないを実行したり、著者コードファースト エージェント の効率とパワーは実,彼らはJSON ツール呼び出し (デザイン によってより制約) が鋭く 課さなかった責任を伴っています。その責任を受け入れサンドボックス 適切に,そして パラダイム両方強力と安全です。

JSON ツール呼び出しがまだ正しい選択である場合

コードファースト エージェント より効率的で表現的で,JSON ツール呼び出しが廃止されたと結論 誤りの ある本物状況でコンストレイン、ワン呼び出し per-time モデルがより良いフィット,その選択を理性的なままにして理解それら。明確最も処置がぴったり制御および監査される場合です。JSON ツール呼び出しは個別で,検査可能,簡単にバリデーション イベント:エージェント この 機能 これら 引数を呼び出すしたい,何かが実行 許可,ログ,または拒否できます。その 監査性は高ステークス ドメイン — 金融アクション,インフラストラクチャ変更,何か取り返し側の影響があるので価値的です — ここ あなた が望む人または何か ポリシー チェック エージェント の意図およびその 実行間。ブロック で実行 されるコードはそれより細粒度にゲート 難しいです。

二番目 ケースは シンプリシティ です。多くエージェント 本当に 一度に一つ ツール呼び出し 前方 ストレートフォード ループ 専用要求 — 検索ツール呼び出し質問,何かを見ますアップ,一つ アクション実行。ため,コード アクション表現性 は 無しタスクで使い切れない機能であり,コード サンドボックス の追加機械は 充当なしオーバーヘッドです。シンプル ツール呼び出し エージェント が簡単に推論して配置することが ため タスク がコード アクション不要何かです。3番目ケースはセーフティ姿勢です:JSON ツール呼び出し のみ使い切ることができるのでしか エージェント定義済み 機能を呼び出すか,構造化引数として,のは 本質的に任意より 制約 コード実行,および何か脅威モデル のための何か そのより小さい爆破半径は価値的たとえ タスク コード アクションから利益などを費用でおり。

成熟したビュー は これら 同種ツール 異なるジョブのため,勝者や敗者。タスク 本物マルチステップ 組成,反復,または計算 中間 結果であり,適切にサンドボックス できるいつ,コードファースト へ到達;アクション ファイン粒度制御および監査が必要,タスク が シンプル十分 コード アクション オーバーキル,または TIGHTER 制約 定義済み 機能 のみ フィット あなた の セーフティ 要件,JSON ツール呼び出し へ到達。いくつかフレームワーク,smolagents 含む,CodeAgent および ツール呼び出し エージェント の両方サポート 正確こころ — パラダイム あなた作る選択は使用ケース あたり,あなた 採用ドクトリン 完全にではなく。

結論

JSON ツール呼び出しから コードファースト エージェント への 転換 は2026年でエージェント 構築方法 の 意味ある シフト の1つであり,シンプル観察により駆動:エージェント コード書く許す,それぞれ一度に 1つツール呼び出し発出ためより効率的で表現的。より少ないLLM 呼び出し,自然マルチステップ ロジック,およびコード書き強さをプレイするモデル は ペイオフ,約30%コール削減 コードファースト フレームワーク報告における見える。smolagentsパラダイム 最も純粋,最小 形式で表現;Pydantic AIエージェント 構築に型安全性およびバリデート構造化出力を連れてくる。両方第一世代 JSON のみ フレームワーク から遠く何か より プログラマ ネイティブ 指します。1つルール あなた スキップ できないこと:モデル生成 コード は 信頼できません,以上の それ をサンドボックス 最小特権で。その場合,コードファースト エージェント より迅速,より機能的な ビルド 方法です。

参考資料とリソース

フレームワーク

背景および分析

関連1337skills チートシート