Skip to content

ClassCat® AI Research

クラスキャット – Hermes Agent, assistant-ui, AG-UI, Agno, LangChain/LangGraph

Menu
  • ホーム
    • ClassCat® AI Research ホーム
    • クラスキャット・ホーム
  • OpenAI API
    • OpenAI Python ライブラリ 1.x : 概要
    • OpenAI ブログ
      • GPT の紹介
      • GPT ストアの紹介
      • ChatGPT Team の紹介
    • OpenAI platform 1.x
      • Get Started : イントロダクション
      • Get Started : クイックスタート (Python)
      • Get Started : クイックスタート (Node.js)
      • Get Started : モデル
      • 機能 : 埋め込み
      • 機能 : 埋め込み (ユースケース)
      • ChatGPT : アクション – イントロダクション
      • ChatGPT : アクション – Getting started
      • ChatGPT : アクション – アクション認証
    • OpenAI ヘルプ : ChatGPT
      • ChatGPTとは何ですか?
      • ChatGPT は真実を語っていますか?
      • GPT の作成
      • GPT FAQ
      • GPT vs アシスタント
      • GPT ビルダー
    • OpenAI ヘルプ : ChatGPT > メモリ
      • FAQ
    • OpenAI ヘルプ : GPT ストア
      • 貴方の GPT をフィーチャーする
    • OpenAI Python ライブラリ 0.27 : 概要
    • OpenAI platform
      • Get Started : イントロダクション
      • Get Started : クイックスタート
      • Get Started : モデル
      • ガイド : GPT モデル
      • ガイド : 画像生成 (DALL·E)
      • ガイド : GPT-3.5 Turbo 対応 微調整
      • ガイド : 微調整 1.イントロダクション
      • ガイド : 微調整 2. データセットの準備 / ケーススタディ
      • ガイド : 埋め込み
      • ガイド : 音声テキスト変換
      • ガイド : モデレーション
      • ChatGPT プラグイン : イントロダクション
    • OpenAI Cookbook
      • 概要
      • API 使用方法 : レート制限の操作
      • API 使用方法 : tiktoken でトークンを数える方法
      • GPT : ChatGPT モデルへの入力をフォーマットする方法
      • GPT : 補完をストリームする方法
      • GPT : 大規模言語モデルを扱う方法
      • 埋め込み : 埋め込みの取得
      • GPT-3 の微調整 : 分類サンプルの微調整
      • DALL-E : DALL·E で 画像を生成して編集する方法
      • DALL·E と Segment Anything で動的マスクを作成する方法
      • Whisper プロンプティング・ガイド
  • Gemini API
    • Tutorials : クイックスタート with Python (1) テキスト-to-テキスト生成
    • (2) マルチモーダル入力 / 日本語チャット
    • (3) 埋め込みの使用
    • (4) 高度なユースケース
    • クイックスタート with Node.js
    • クイックスタート with Dart or Flutter (1) 日本語動作確認
    • Gemma
      • 概要 (README)
      • Tutorials : サンプリング
      • Tutorials : KerasNLP による Getting Started
  • Keras 3
    • 新しいマルチバックエンド Keras
    • Keras 3 について
    • Getting Started : エンジニアのための Keras 入門
    • Google Colab 上のインストールと Stable Diffusion デモ
    • コンピュータビジョン – ゼロからの画像分類
    • コンピュータビジョン – 単純な MNIST convnet
    • コンピュータビジョン – EfficientNet を使用した微調整による画像分類
    • コンピュータビジョン – Vision Transformer による画像分類
    • コンピュータビジョン – 最新の MLPモデルによる画像分類
    • コンピュータビジョン – コンパクトな畳込み Transformer
    • Keras Core
      • Keras Core 0.1
        • 新しいマルチバックエンド Keras (README)
        • Keras for TensorFlow, JAX, & PyTorch
        • 開発者ガイド : Getting started with Keras Core
        • 開発者ガイド : 関数型 API
        • 開発者ガイド : シーケンシャル・モデル
        • 開発者ガイド : サブクラス化で新しい層とモデルを作成する
        • 開発者ガイド : 独自のコールバックを書く
      • Keras Core 0.1.1 & 0.1.2 : リリースノート
      • 開発者ガイド
      • Code examples
      • Keras Stable Diffusion
        • 概要
        • 基本的な使い方 (テキスト-to-画像 / 画像-to-画像変換)
        • 混合精度のパフォーマンス
        • インペインティングの簡易アプリケーション
        • (参考) KerasCV – Stable Diffusion を使用した高性能画像生成
  • TensorFlow
    • TF 2 : 初級チュートリアル
    • TF 2 : 上級チュートリアル
    • TF 2 : ガイド
    • TF 1 : チュートリアル
    • TF 1 : ガイド
  • その他
    • 🦜️🔗 LangChain ドキュメント / ユースケース
    • Stable Diffusion WebUI
      • Google Colab で Stable Diffusion WebUI 入門
      • HuggingFace モデル / VAE の導入
      • LoRA の利用
    • Diffusion Models / 拡散モデル
  • クラスキャット
    • 会社案内
    • お問合せ
    • Facebook
    • ClassCat® Blog
Menu

Hermes エージェント入門 : Web 検索 & 抽出

Posted on 09/12/2026 by Masashi Okumura

Hermes エージェントにはモデルが呼び出し可能な2つの Web ツールが含まれています: 1) web_search — Web を検索し、ランキング付けされた結果を返します。2) web_extract — 1つまたはそれ以上の URL から読み取り可能なコンテンツを取得して抽出します。

Hermes エージェント☤ 入門 : 機能 – メディア & Web : Web 検索 & 抽出

作成 : Masashi Okumura (@classcat.com)
作成日時 : 09/11/2026
バージョン : Hermes Agent v0.21.1 (v2026.9.7)

* 本記事は hermes-agent.nousresearch.com/docs の以下のページを参考にしています :

  • Features – Media & Web : Web Search & Extract

* サンプルコードの動作確認はしておりますが、必要な場合には適宜、追加改変しています。

 

 

Hermes エージェント☤ 入門 : 機能 – メディア & Web : Web 検索 & 抽出

Hermes エージェントには、複数のプロバイダーによって支援される、モデルが呼び出し可能な2つの Web ツールが含まれています :

  • web_search — Web を検索し、ランキング付けされた結果を返します。

  • web_extract — 1つまたはそれ以上の URL から読み取り可能なコンテンツを取得して抽出します。

どちらも単一のバックエンド選択によって設定されます。プロバイダーは `hermes tools` で選択するか、config.yamlで直接設定します。

 

バックエンド

プロバイダー 環境変数 検索 抽出 無料枠
Firecrawl (デフォルト) FIRECRAWL_API_KEY (オプション — 選択時はキーレス) ✔ ✔ 500クレジット/月(選択時はキーレスクラウド対応)
SearXNG SEARXNG_URL ✔ – Free (self-hosted)
Brave Search (無料枠) BRAVE_SEARCH_API_KEY ✔ – 2 000 クエリー/月
DDGS (DuckDuckGo) — (no key) ✔ – 無料
Exa EXA_API_KEY (オプション) ✔ ✔ ✔ キーレス ring メンバー・1000 検索/月 with キー
Parallel PARALLEL_API_KEY (オプション) ✔ ✔ ✔ キーレス ring メンバー・キーによる有料利用
Tavily TAVILY_API_KEY (オプション) ✔ ✔ ✔ 選択時オプトイン・キーレス
Perplexity PERPLEXITY_API_KEY ✔ ✔ (query-relevant snippets) 有料 (リクエスト毎の検索API料金)
Keenable KEENABLE_API_KEY (オプション) ✔ ✔ ✔ キーレス ring メンバー・キーによる有料利用
xAI (Grok) XAI_API_KEY or `hermes auth add xai-oauth` ✔ – 有料 (SuperGrok or トークン単位)

Brave Search、DDGS、xAIは 検索専用 ツールです – web_extract も必要な場合は、Firecrawl/Tavily/Perplexity/Keenable/Exa/Parallel のいずれかと組み合わせて使用​​してください。DDGS は内部で ddgs Python パッケージを使用しています; まだインストールされていない場合は、`pip install ddgs` を実行してください (または、Hermes が初回使用時に遅延インストールします)。xAI は Responses API 上で Grok のサーバーサイド web_search ツールを実行します – 結果はインデックスベースではなく LLM によって生成されるため、タイトル、説明、URL の選択はすべてモデルの出力となります (see the trust-model caveat below)。

 

web_extract が長文ページを処理する方法

バックエンドは未加工のページ・マークダウンを返しますが、これは非常に大きくなる可能性があります (フォーラムのスレッド、ドキュメントサイト、コメントが埋め込まれたニュース記事)。コンテキストウィンドウを使いやすくするために、web_extract は決定論的な文字数制限 (deterministic character budget) を設けています – LLM による要約は行われません :

  • (ページサイズ (文字数) – 何が起きるか)

  • バジェット内 or バジェット以下 (デフォルト 15,000) – そのまま返します – マークダウン全体がエージェントに到達します

  • バジェット超過 – 先頭 (head) と末尾 (tail) のウィンドウ (先頭約75% / 末尾約25%、マークダウン行境界でカット) に加えて、明示的な [TRUNCATED] フッター。完全なクリーンテキストはディスクに保存され、フッターはエージェントにファイルパスと、省略された中間部分をページングするための正確な read_file 呼び出しを知らせます。

  • 2,000,000 超過 – 保存できるテキストのサイズは 2MB に制限されています。

ページごとの文字数制限 (budget) は、config.yaml の web.extract_char_limit で設定可能 (デフォルトは 15000、2,000~500,000 に制限) で、エージェントはツールの char_limit 引数を使用して呼び出しごとに制限を増やすことができます。

 

結果のキャッシュ処理

短時間内に繰り返し発生する Web 呼び出しは、有料バックエンドではなくキャッシュから処理されます – これにより、重複処理が一般的である2つのパターン: サブエージェントのファンアウト(複数の委任エージェントが同じトピックを調査する場合)と、エージェントが数分前に読み込んだページを再確認する場合において、クレジットとレイテンシを削減できます。

  • (呼び出し – キャッシュ – スコープ)

  • web_search: 同じクエリ (大文字小文字/空白文字を区別しない)、同じプロバイダー – インメモリのメモ – プロセス毎

  • web_extract: 同じURL、同じフォーマット、同じプロバイダー – ~/.hermes/cache/web/ 下に保存される完全なテキスト – CLI、ゲートウェイ、cron、およびサブエージェントプロセス間で共有されます。

同時実行される同一検索(並列サブエージェントが同時に同じクエリを実行する場合)は、単一のバックエンドリクエストに統合されます – 最初の呼び出し元が料金を支払います; 残りの呼び出し元はレスポンスを共有します。リクエストされた検索制限は10/20/50/100にバケット化されるため、ほぼ同じリクエスト(limit=5 vs limit=8)は1つのエントリを共有し、各呼び出し元はリクエストした件数を受け取ります。

キャッシュされるのは、成功した応答のみです。失敗した場合は必ずバックエンドを再試行し、ワンショットのキーレス・レスキューによって提供される応答はキャッシュされません (次の呼び出しで選択したバックエンドを再度試行します)、そして security.website_blocklist に一致する URL はキャッシュから決して提供されません。キャッシュされた抽出では通常の切り捨てパイプラインが再実行されるため、2回目の呼び出しで異なる char_limit を指定しても、同じ保存済みのスクレイピングデータが使用されます。

パブリック・インターネット上でテストしていますか? ステージング配備とトンネル URL はパブリック DNS なので、local-dev ルールでは捕捉できません – web.cache_exempt_hosts にリストアップすれば、ライブでも常に取得されます。エントリは完全に一致するか、*.ワイルドカードとして、またはドメインサフィックスとして一致します (mysite.dev はまた preview.mysite.dev もカバーします) :

# ~/.hermes/config.yaml
web:
  cache_exempt_hosts:
    - mysite.vercel.app
    - "*.ngrok-free.app"
# ~/.hermes/config.yaml
web:
  cache_enabled: true      # default; set false to disable both caches
  cache_ttl_minutes: 20    # freshness window, clamped 1–1440

 

セットアップ

`hermes tools` を使ったクイックセットアップ

`hermes tools` を実行し、Web Search & Scraping に移動してプロバイダーを選択します。ウィザードが必須の URL や API キーの入力を求め、config ファイルに書き込みます。

hermes tools

 

Firecrawl (デフォルト)

フル機能の検索と抽出機能。ほとんどのユーザーにおすすめです。

# ~/.hermes/.env
FIRECRAWL_API_KEY=fc-your-key-here

Get a key at firecrawl.dev. The free tier includes 500 credits/month.

 

Tavily

AI 最適化された検索・抽出です。`hermes tools` で Tavily を選択して (または `web.backend: tavily` を設定)、アカウント不要でキーレスで利用できます (レート制限あり)。より高い制限が必要な場合は、APIキーを設定してください。

# optional — skip this for keyless access after selecting Tavily
# ~/.hermes/.env
TAVILY_API_KEY=tvly-your-key-here

Get a key at app.tavily.com. See Tavily keyless.

 

Perplexity

Perplexity の検索APIは、Perplexity 独自のインデックスから、ランク付けされた日付付き検索結果を返します(web_search)。web_extractでは、公式の pplx CLI と同じクエリ関連スニペットの方法を使用します: ページ全体をそのままダンプするのではなく、各ページから重要な箇所を、省略記号(…)付きで取得できます – ページ全体が必要な場合は、web.extract_backend としてFirecrawl / Exa / Parallelを選択してください。キー指定のみです; 匿名枠はありません。

# ~/.hermes/.env
PERPLEXITY_API_KEY=pplx-your-key-here

Get a key at perplexity.ai/account/api. Set PERPLEXITY_BASE_URL to route through a proxy.

 

設定

単一バックエンド

すべての Web 機能に1つのプロバイダーを設定します :

# ~/.hermes/config.yaml
web:
  backend: "searxng"   # firecrawl | searxng | brave-free | ddgs | tavily | perplexity | keenable | exa | parallel | xai

 

機能ごとの設定

検索 vs 抽出に異なるプロバイダーを使用します。これにより、無料の検索(SearXNG)と有料の抽出プロバイダーを組み合わせたり、その逆も可能です :

# ~/.hermes/config.yaml
web:
  search_backend: "searxng"     # used by web_search
  extract_backend: "firecrawl"  # used by web_extract

機能ごとのキーが空の場合、両方とも web.backend にフォールバックします。Web 選択が一度も書き込まれたことがない場合にのみ、存在する API キー/URL からバックエンドが自動的に検出されます – 選択が存在する場合は、ランタイムは常にそれを使用し、.env にキーを追加しても Web トラフィックはリダイレクトされません。

 
優先順位 (機能毎)

  1. web.search_backend / web.extract_backend(機能ごとに明示)

  2. web.backend (共有フォールバック; nous = マネージド・ツール・ゲートウェイ)

  3. 環境変数からの自動検出 (未設定環境のみ)

 

以上





クラスキャット

最近の投稿

  • Hermes エージェント入門 : Web 検索 & 抽出
  • Hermes エージェント入門 : パーソナリティ & SOUL.md
  • Hermes エージェント入門 : 複数エージェントの混合 (Mixture of Agents, MoA)
  • Hermes エージェント入門 : コンテキストファイル (AGENTS.md, SOUL.md, .cursorrules)
  • Hermes エージェント☤ 入門 : Honcho メモリ

タグ

AG2 (14) Agno (46) Agno 2.x (22) assistant-ui (19) AutoGen (13) ClassCat Press Release (20) ClassCat TF/ONNX Hub (11) Cursor (20) DGL 0.5 (14) Edward (17) FLUX.1 (16) Gemini (20) Hermes Agent (18) HuggingFace Transformers 4.5 (10) HuggingFace Transformers 4.29 (9) Keras 2 Examples (98) Keras 2 Guide (16) Keras 3 (10) Keras Release Note (17) Kubeflow 1.0 (10) LangChain (45) LangChain v1.0 (10) LangGraph (24) MediaPipe 0.8 (11) Model Context Protocol (16) NNI 1.5 (16) OpenAI Cookbook (13) OpenAI platform (10) OpenAI platform 1.x (10) TensorFlow 2.0 Advanced Tutorials (33) TensorFlow 2.0 Advanced Tutorials (Alpha) (15) TensorFlow 2.0 Advanced Tutorials (Beta) (16) TensorFlow 2.0 Guide (10) TensorFlow 2.0 Guide (Alpha) (16) TensorFlow 2.0 Guide (Beta) (9) TensorFlow 2.0 Release Note (12) TensorFlow 2.0 Tutorials (20) TensorFlow 2.0 Tutorials (Alpha) (14) TensorFlow 2.0 Tutorials (Beta) (12) TensorFlow 2.4 Guide (24) TensorFlow Probability (9) TensorFlow Programmer's Guide (22) TensorFlow Release Note (18) TensorFlow Tutorials (33) TF-Agents 0.4 (11)
2026年9月
月 火 水 木 金 土 日
 123456
78910111213
14151617181920
21222324252627
282930  
« 8月    
© 2026 ClassCat® AI Research | Powered by Minimalist Blog WordPress Theme