「ハーネス」って結局、何? みんな使い方が違うAIエージェント用語をHugging Faceが整理:Deep Insider Brief ― 技術の“今”にひと言コメント
AIエージェント分野で人によって意味が揺れる「ハーネス」「スキャフォールド」などの用語を、Hugging Faceが整理した。AIエージェントを正しく理解し議論するために押さえておきたい基本用語を初心者向けに解説する。
生成AIの主役は、単に質問に答えるチャット型AIから、外部ツールを使ってタスクを進めるAIエージェント(自律的に行動するAIシステム)へと移りつつある。Claude Code(クロードコード)やCodex(コーデックス)といったコーディング支援ツールをはじめ、その応用範囲は急速に広がってきている。だが、こうしたエージェントを理解しようとすると、すぐに「ハーネス」「スキャフォールド」「コンテキストエンジニアリング」といった聞き慣れない言葉にぶつかる。
特に分かりにくいのがハーネス(Harness)だ。広い意味では、モデル以外の仕組み全体を指す。狭い意味では、モデルを呼び出し、ツール実行を処理し、いつ止めるかを決める実行レイヤー(実際の処理を行う部分)だけを指す。AIコミュニティーのHugging Face(ハギングフェイス)の記事によれば、AI分野の主要学会「ICLR 2026」でさえ、関係者の間で説明が一致しなかったという。
AIエージェントを構成する「モデル」「スキャフォールド」「ハーネス」
Hugging Faceの記事では、文脈によって「ハーネス」がモデル以外の全体を指す場合と、実行レイヤーを指す場合があると整理されている。
重要なポイントは、AIエージェントをモデル単体と見なさないことだ。モデルは、ClaudeやGPTのようなLLM(大規模言語モデル)本体であり、基本的には入力されたテキストに対して出力テキストを返す。一方、スキャフォールドは、モデルに渡す指示やツール説明、文脈管理などを含む「足場」に当たる。そしてハーネスは、モデルを呼び出し、ツール実行を処理し、エージェントの動きを制御する「実行装置」に近い。
ただし、ここで注意したいのは、ハーネスという言葉が常にこの狭い意味で使われるわけではないという点だ。文脈によっては、スキャフォールドを含む「モデル以外の仕組み全体」をハーネスと呼ぶこともある。つまり、AIエージェントを理解するには、「モデル」「スキャフォールド」「ハーネス」を分けて考えるだけでなく、その人がどの範囲をハーネスと呼んでいるのかを見極める必要がある。
今回紹介するHugging Faceの記事では、こうした用語の混乱を整理するため、ここまで触れたModel(モデル)、Scaffolding(スキャフォールド)、Harness(ハーネス)に加え、Agent(エージェント)、Context Engineering(コンテキストエンジニアリング)、Tool Use(ツール利用)、Skills(スキル)、Sub-agents(サブエージェント)など、AIエージェントを理解する上で重要な13の用語が分かりやすく整理されている。
――特に「ハーネス」という用語の混乱について、『Deep Insider Brief』恒例の“ひと言コメント”として筆者なりの見解を述べてみたい。その後で、Hugging Faceの記事で取り上げられた用語の中から、AIエージェントを使う際や議論する際に押さえておきたいものを初心者向けに紹介する。
Deep Insider編集長の一色です。こんにちは。
「ハーネス」や「ハーネスエンジニアリング」という言葉は、AIエージェント関連の話題でかなり見かけるようになりました。ただ、この言葉はコミュニティー内でも文脈によって使われ方が違うため、少しバズワードのように受け止めている人もいるのではないかと思います。
私自身も、最初は「AIコーディングエージェントを一定の枠内で安全に動かす仕組み」くらいの意味で捉えていました。英語のharnessには「馬具」「手綱」「安全ベルト」のような意味があるため、モデルを制御したり、暴走しないように固定したりするイメージで理解していたわけです。
この捉え方は大きく外れているわけではないと思います。ただ、それだけだと、人によって思い浮かべる範囲がかなり変わります。モデルの外側にある仕組み全体をハーネスと呼ぶ人もいれば、ツール実行や停止判断などの実行レイヤーだけをハーネスと呼ぶ人もいる。ここが、AIエージェントの議論を分かりにくくしているポイントだと感じます。
その意味で、今回のHugging Faceによる用語整理はかなり参考になります。Hugging FaceはAI研究や言語モデルの分野で広く使われているコミュニティーおよびプラットフォームであり、そこで示された整理は、少なくとも今後の議論を追うための共通の地図として使いやすいものです。
もちろん、これが唯一絶対の定義というわけではありません。それでも、「この人は広い意味でハーネスと言っているのか、それとも狭い意味で言っているのか」を意識できるだけで、AIエージェント関連の記事や論文、開発ツールの説明はかなり読みやすくなるはずです。
まずはこの記事で、Hugging Faceの整理を手掛かりに、AIエージェントを理解するための基本用語を順番に確認していきましょう。
それでは、Hugging Faceが整理した主要な用語とその中身を見ていこう。
Hugging Faceが整理した用語の全体像
| 用語名 | 英語名 | 1行説明 | カテゴリ |
|---|---|---|---|
| モデル | Model | LLM(大規模言語モデル)本体。記憶や実行ループは持たない | 基本要素 |
| スキャフォールド | Scaffolding | システムプロンプトやツール説明など、モデルの振る舞いを形作る足場 | 基本要素 |
| ハーネス | Harness | モデルの呼び出しやツール実行、停止判断を行う実行レイヤー | 基本要素 |
| エージェント | Agent | モデルにハーネス(およびスキャフォールド)を組み合わせたシステム全体 | 基本要素 |
| ツール利用 | Tool Use | APIやコードインタプリタなど、外部環境に働きかける仕組み | 応用・機能 |
| スキル | Skills | 複数ステップのタスクを遂行するための構造化された知識パッケージ | 応用・機能 |
| サブエージェント | Sub-agents | 特定のサブタスクを処理するために呼び出される独立したエージェント | 応用・機能 |
| コンテキストエンジニアリング | Context Engineering | モデルの入力枠(文脈)に何を投入するかを設計し管理する技術 | 文脈・記憶・振る舞い |
| ポリシー | Policy | 特定の状況においてエージェントが取る行動のルールや確率 | 文脈・記憶・振る舞い |
| RL(強化学習)環境 | RL Environment | エージェントが行動を入力し、観察を受け取る相互作用の対象 | モデル開発者向け |
| トレーナー | Trainer | エージェントの実行データを基に、内部モデルの重みを更新する仕組み | モデル開発者向け |
| ロールアウト | Rollout | タスクの開始から終了までの一連の実行軌跡(軌道) | モデル開発者向け |
| 報酬 | Reward | モデルが改善しているかどうかを評価して与えるスコア | モデル開発者向け |
| Hugging Faceのブログで整理された13の重要用語一覧 | |||
まずは「3要素」を押さえる
モデル(Model)
全ての土台となるLLM(大規模言語モデル)そのものを指す。テキストを入力として受け取り、テキストを出力するだけで、単体ではステップ間の記憶(メモリ)も実行ループも持たない。ツールを使いたいという「意図」を表現することはできるが、実際にそのツールを実行するには外部の仕組みが必要となる。
スキャフォールド(Scaffolding)
モデルの振る舞いを定義するレイヤー(層)である。システムプロンプト、ツールの説明、モデルの応答をどのようにパース(解析)するか、ステップをまたいで何を記憶するかといったコンテキスト(文脈)の管理方法が含まれる。モデルが世界をどのように認識し、どう行動するかを規定する設計図や足場のような役割を果たす。
ハーネス(Harness)
エージェントを実際に動かす実行レイヤーである。モデルを呼び出し、モデルから返ってきたツールの実行要求を処理し、いつ全体の処理を終了するかを判断する実行ループを管理する。Claude CodeやCodexなどの製品ではモデル以外の構造全てを「ハーネス」と呼ぶ広義の使われ方もあるが、Hugging Faceでは「実行を管理する仕組み」を狭義のハーネスとして区別している。なお、このハーネス層をどう設計するかという技術領域は「ハーネスエンジニアリング(Harness engineering)」と呼ばれ、最近注目を集めている。
なぜ製品ごとに「体感」がこれほど違うのか
同じLLMを裏側で使っていても、ツールによって使い勝手や賢さが全く異なることがある。それは、モデルの周りを取り囲むスキャフォールドの設計や、ハーネスによる実行制御、エラーハンドリング(エラー時の処理)の作り込みが製品ごとに異なるためだ。エージェントの品質は、モデル単体ではなくシステム全体の設計で決まる。
エージェントの「手足」を理解する
ツール利用(Tool Use)
エージェントが自身の外部にある世界に働きかけるための手段である。API(アプリケーション連携口)、コードインタプリタ(プログラム実行環境)、データベース、Web検索、ファイルシステムなどがこれに該当する。モデルが出力したツール利用の意図をハーネスが受け取り、実際の関数(プログラム)にルーティング(割り当て)して実行する。
スキル(Skills)
複数ステップにわたる複雑なタスクを遂行するための、再利用可能で構造化された知識のパッケージ(まとまり)である。単一のアクションを実行する「ツール」とは異なり、「バグを調査し、仮説を立て、修正案を書く」といった一連のゴール達成に必要な手順やノウハウがカプセル化(一体化)されている。
サブエージェント(Sub-agents)
特定の部分タスクを処理するために、メインのエージェントから呼び出される独立したエージェントである。サブエージェント自身が独自のモデルやスキャフォールドを持ち、自律的に推論やツール利用、さらなるサブエージェントの呼び出しを行う。
実務で差が付く「文脈・記憶・振る舞い」
コンテキストエンジニアリング(Context Engineering)
エージェントの動作中に、モデルのコンテキストウィンドウ(一度に処理できる入力枠)に何を投入するかを動的に設計し管理する技術である。単なる事前のプロンプト作成にとどまらず、実行中の会話履歴やツールの実行結果をどのように取捨選択してモデルに渡すかをハーネスが制御する。
短期記憶と長期記憶
コンテキストエンジニアリングの中で管理される記憶には2種類ある。短期記憶は、現在の実行セッション(一連の処理の流れ)の中でコンテキストウィンドウに保持される会話履歴、ツールの実行結果、過去のリーズニング(それまでの判断や作業ステップ)などを指す。長期記憶は、過去のセッションをまたいで外部に保存される情報であり、必要に応じて検索され、関連する場合に現在のコンテキストへ注入される。
ポリシー(Policy)
特定の状況(状態)に対して、エージェントがどの行動をどの程度取りやすいかを定める確率やルールのことである。LLMのモデルの重み(学習されたパラメーター)の中に組み込まれている部分もあるが、周囲のスキャフォールドやハーネスの制約によっても、エージェントの最終的なポリシー(行動方針)は大きく変化する。
さらに先: モデルを開発(訓練)する人向けの4語
ここまでに紹介した用語は、エージェントを構築、展開、利用する場面に広く関係する。一方、Hugging Faceの記事ではさらに、モデルそのものをファインチューニング(追加学習)や強化学習によって訓練する人向けの重要用語として、以下の4つも挙げている。
- RL(強化学習)環境(Reinforcement Learning Environment): エージェントが相互作用する対象。行動を入力として受け取り、内部状態を更新し、観察結果を返す、状態を持つ仕組み。ファイルシステムはその一例
- トレーナー(Trainer): エージェントの実行データを基に、モデルの重みを更新する仕組み。例として、TRL(言語モデル訓練用ライブラリ)のGRPOTrainerが挙げられている
- ロールアウト(Rollout): エージェントがタスクの開始から終了まで行動した一連の軌跡や履歴(トラジェクトリー《trajectory》、トレースとも呼ばれる)
- 報酬(Reward): モデルの行動が改善しているかどうかを評価するためのスコア(テストの合否やLLMによる判定など)
モデルを自ら訓練するプロセスや、最新のRL(強化学習)環境の具体的な動向についてさらに深く知りたい場合は、ぜひHugging Faceの元記事をチェックしてほしい。
Copyright© Digital Advantage Corp. All Rights Reserved.