Show HN: AI エージェントのトレース用 RL 基盤型ローカルデバッガー

2026/06/24 3:21

Show HN: AI エージェントのトレース用 RL 基盤型ローカルデバッガー

RSS: https://news.ycombinator.com/rss

要約

Japanese Translation:

HALO メソッド論は、高バラつきを生じるプロダクション環境向けに自己改善型ハーネスを構築することを目的とした、相互接続された AI エージェントである再帰的にリンクされたモデル(RLM)を導入します。汎用ツールが孤立した誤りに過適合しやすいためと対照的に、HALO ループの核心は OpenTelemetry を通じて実行トレースを取得し、それらを RLM エンジンで分析して、想像的なツールの呼び出し、拒否ループ、意味的整合性問題といった体系的な失敗を特定し、その診断レポートをコーディングエージェント(例:Cursor または Claude Code)に直接入力して包括的な修正を行います。システムは

halo
という柔軟な CLI を通じて管理され、トレースファイルとユーザープロンプトを受け付けます。デフォルト設定では gpt-5.4-mini がルート/サブエージェントの呼び出しに使用され、合成には smaller モデルが利用され、再帰深度、ターン制限、並列性を制御するための主要なフラグにより推論が最適化されます。HALO は環境変数およびオプションのテレメトリ統合を通じて、各種の OpenAI 互換プロバイダーをサポートします。ベンチマークによれば、このアプローチは AppWorld などのプラットフォームにおいて、Gemini 3 Flash や Sonnet 4.6 といった高度なモデルでパフォーマンスを大幅に向上させ、データ過適合ではなく真の能力を反映することを保証するためテストセット上で改善が検証されています。開発環境では
uv
を用いて依存関係を管理し、
go-task
を用いてタスク管理を行います。

本文

✨ RLM ベースのエージェント最適化手法「HALO」:実稼動ログを活用

📑 目次


迅速始め方

HALO デスクトップアプリをインストールするには、以下のコマンドを実行してください。

curl -fsSL https://inference.net/halo/install.sh | sh
  • インストール内容: プラットフォームに最適な最新版ファイルをダウンロードし、設定を行います。
    • macOS 版は署名済み且不具合対応済みの DMG ファイルとして提供されます。
    • GitHub Releases ページから直接インストールすることも可能です。
  • ホストド版の利用:
    inference.net
    にアカウントを作成し、こちらの説明に従ってホスティングされたバージョンを利用できます。

概要と仕組み

これは何ですか?

HALO は、RLM(Reflective Language Model:反射的言語モデル) を活用し、自己改善型のエージェントシステムを構築するための手法です。

このリポジトリには以下の内容が含まれます:

  • HALO デスクトップアプリ(自機上で実行用)
  • ハローコアエンジンを実装する Python パッケージ
  • エージェント向けの HALO ループ構築デモプロジェクト
  • AppWorld 等、一般的なエージェントベンチマークへの適用評価例

HALO ループ

コアとなるプロセスは非常にシンプルで、以下のサイクルを繰り返します:

  1. ログ収集: エージェント稼働から実行ログを収集(OpenTelemetry 互換)。
  2. 分析処理: ログを HALO-RLM エンジンに投入し、失敗パターンを把握。
  3. レポート生成: システム全体の課題を含むレポートを生成します。
  4. 修正適用: レポートを Cursor や Claude Code 等へ渡し、システム修正パッチを生成・適用します。
  5. 再デプロイ: システムを再デプロイし、サイクルを繰り返します。

💡 実稼動環境の強み: HALO は実際のトラフィック下でのバリエーション豊かなデータから、汎用モデルが見過ごすタイプの不具合を効果的に特定できます。

なぜ RLM(反射的言語モデル)なのか?

汎用システム(例:Claude Code)はログ分析に不向きです。ログデータが長大になり、体系的な洞察を得るための専用ツールが必要だからです。

  • 既存システムの課題: 特定の少数のログエラーに過学習し、システム全体の課題へ一般化する能力が不足しています。
  • RLM の採用理由: これらの知見から開発された専用モデル(RLM)は、より深く正確な分析を可能にします。

本格的に始める

インストール

HALO エンジンと CLI を PyPI からインストールします。

pip install halo-engine

インストール確認:

halo --help

使用方法

エージェントを実行してログを収集した後、

halo
コマンドで追跡機能を統合します。

環境変数

  • OPENAI_API_KEY
    : 認証用
  • OPENAI_BASE_URL
    : OpenAI 互換プロバイダーへの接続先(未設定時は
    https://api.openai.com/v1

基本コマンド

halo path_to_your_traces.jsonl -p "Diagnose errors you find and suggest fixes"

CLI オプション一覧

オプションデフォルト値説明
--trace-path, -t
必須JSONL フォーマットのログファイルパス
--prompt, -p
必須ルートエージェントへのプロンプト文字列
--model, -m
gpt-5.4-mini親・子エージェントおよびフォールバック用のモデル
--synthesis-model
--modelログサマライゼーション用(軽量・低コスト推奨)
--compaction-model
--modelコンテキストサマライゼーション用(主要なトークン消費源のため軽量推奨)
--max-depth
2子エージェントの再帰深度上限
--max-turns
20各エージェントへの最大ターン数
--max-parallel
10同時動作可能な子エージェント数の上限
--base-url
OPENAI_BASE_URLOpenAI 互換 API のベース URL
--api-key
OPENAI_API_KEYプロバイダーの API キー
--header, -H
未設定カスタムヘッダー(複数可)
--temperature
プロバイダーデフォルトサンプリング温度
--max-output-tokens
プロバイダーデフォルト最大出力トークン数
--parallel-tool-calls
有効モデルによる並列ツール呼び出しの有無
--refusal-retries
0モデル拒否時の再試行回数
--reasoning-effort
デフォルト推論努力のレベル
--telemetry
offOpenInference フォーマットのログ発行情報の有無

カスタムヘッダーを含む例:

halo path_to_your_traces.jsonl \
  -p "Diagnose errors you find and suggest fixes" \
  --base-url https://openrouter.ai/api/v1 \
  -H "HTTP-Referer: https://example.com"

テレメトリ(ログ出力)

HALO は自身の LLM、ツール、エージェンシー活動に関する OpenInference フォーマットのログを発行します。デフォルトは無効です。

halo TRACE_PATH --prompt "..." --telemetry

有効化時の挙動:

  • CATALYST_OTLP_TOKEN
    が設定されている場合:OTLP を介して Catalyst へスパンアップロード。
  • 未設定の場合:作業ディレクトリに
    ./halo-telemetry-{run_id}.jsonl
    を作成。

テレメトリ環境変数

変数デフォルト目的
CATALYST_OTLP_TOKEN
未設定トークンあり:Catalyst へアップロード / なし:ローカル JSONL 出力
CATALYST_OTLP_ENDPOINT
Catalyst デフォルトOTLP エンドポイント URL (例:
https://telemetry.inference.net
)
CATALYST_DEBUG
未設定
1
に設定すると OTLP エクスポートエラーを表示
CATALYST_TRACING_RUN_ID
未設定ハロー実行 ID(生成された UUID を上書き)
HALO_TELEMETRY_PATH
./halo-telemetry-{run_id}.jsonlローカルフォールバックファイルパス

Python API

エンジンから 4 つのEntryPoint が提供され、可視化とコードシンプルさのトレードオフに合わせて使い分けます。

定義済み型:

engine/models/engine_output.py

  • AgentOutputItem
    : ステップ完了データ
  • AgentTextDelta
    : トークンごとの差分データ
関数タイプリターン値使用タイミング
stream_engine_async
async
AsyncIterator[AgentOutputItem | AgentTextDelta]
ストリーミングデルタが必要な場合(ライブ UI など)
stream_engine_output_async
async
AsyncIterator[AgentOutputItem]
各ステップの完了事項を逐次記録・永続化する場合
run_engine_async
async
list[AgentOutputItem]
最終結果のみを取得する簡易ケース
stream_engine
sync
Iterator[...]
同期ジェネレーターで全イベント生成
stream_engine_output
sync
Iterator[AgentOutputItem]
同期ジェネレーターで完了アイテムのみ生成
run_engine
sync
list[AgentOutputItem]
同期リクエストの簡易代替手段

使用例:

from engine.main import stream_engine_output_async

async for item in stream_engine_output_async(messages, cfg, trace_path):
    logger.info("step", extra={"sequence": item.sequence, "agent": item.agent_name})
    # item.item は AgentMessage(アシスタント/ツール等)

ベンチマーク結果

HALO はシステム最適化により、ベンチマークにおける改善を常に実現しています。

AppWorld ベンチマーク

Spotify、Venmo、ファイルシステムなど多様なサービスを用いた LLM エージェントタスクです。

  • 検証方法: 開発用データセットで HALO を反復して改善し、テスト用ノーマルデータセットで過学習の有無を確認。

検出された主な不具合:

  • 虚構のツール呼び出し
  • ツール内の冗長な引数
  • 拒否ループ
  • セマンティック正確性の問題

ベースラインに対する最大改善率:

モデル開発セット (SGC)テストセット (Normal SGC)
Gemini 3 Flash36.8% → 52.6% (+15.8 ポイント)37.5% → 48.2% (+10.7 ポイント)
Sonnet 4.673.7% → 89.5% (+15.8 ポイント)62.5% → 73.2% (+10.7 ポイント)

開発

ローカル開発には

uv
(依存関係管理)と
go-task
(タスクランナー)を使用します。

セットアップ

git clone https://github.com/context-labs/HALO
cd HALO
task env:setup
  • セットアップ内容:
    uv
    不足時はインストール、
    uv.lock
    で仮想環境同期、Gitフック設定。
  • 実行方法:
    uv run halo ...
    または
    .venv/
    アクティベーション後使用。

一般的なタスク

タスク実装内容
task check
プリコミットチェック(固定版、リンティング、フォーマット、型チェック、単体テスト)
task check:fix
リンティング・フォーマット問題の自動修正付きチェック
task test:unit
tests/unit/
以下の単体テスト実行
task test:integration
tests/integration/
以下の結合テスト実行

ライセンス

MIT License


コントリビューション

コントリビュートをご歓迎します!プルリクエストの提出も大歓迎です。

同じ日のほかのニュース

一覧に戻る →

2026/06/24 3:40

ジェリーの地図

## Japanese Translation: 「ジェリーのワールド」は、1963 年夏にニューヨーク・コールドスプリングに住むアーティスト・ジェリーによって開始された、架空の都市を巨大な円形地図として機能させる、独自性の高い二次元アートプロジェクトである。4,000 点以上の個々のパネル(8x10 インチ)が N、S、E、W の座標を用いて配置されており、本作は二つの明確な時代へと発展してきた。時代 1(1963–1983)では軽量なタイプライター用紙が使われ、パネルは時系列順に積み重ねられていたが、時代 2(2003–現在)では再生された重紙を用い、座標順でパネルを配置し、自動化されたシステムを採用している。創作プロセスは、約 100 枚のユニークなカードからなる専用デッキによって厳密に管理されており、これらカードには描画サイズ、絵混ぜの色調調整、アーカイブ作業、ブログ投稿などの管理業務などランダム化された指示が含まれている。各カードサイクルは数分から数日続き、巨大な黒または赤の数字に基づいて作業ユニット(1 インチ正方形)を指し示す。実行にはアクリル絵具、マーカー、コラージュ、インクジェット印刷などのメディアが用いられる。プロジェクトはベースレイヤー、ザ・バッド、ザ・レッドディメンション、ブラックネッズ、ザ・ジグurat フェーズ、ザ・フロード、そしてリ・バーストといった段階的な概念層を通じて進行する。元々屋根裏部屋に保管され、アーティストの息子であるヘンリーによって数十年後に再発見された本作は、現在では公的展覧会やデジタルアーカイブとの統合を達成しており、環境に優しい素材の使用と創造的かつ管理業務を含む意思決定を導く厳格なルールベースのワークフローを通じて、現代アートの持続可能性への転換を浮き彫りにしている。 ## サマリー: 「ジェリーのワールド」は 1963 年に開始され、現在も継続中の二次元アートプロジェクトであり、架空の都市を巨大な円形地図として機能させる独自性の高いものである。その最も顕著な特徴は、約 100 枚のユニークなカードからなる専用デッキによって駆動される厳格でランダム化されたシステムである。これらのカードには実行とアーカイブ作業に関する独自の指示が含まれており、描画サイズから絵混ぜの色調調整に至るまで、各工程を決定する。このシステムにより、作品は純粋な直感に頼らずルールに基づくガイダンスによって発展する。プロセスは特定のルールに従い、カードの色に基づいて方向が変化し、その結果としてザ・バッドやザ・レッドディメンションといった段階的な層が構築される。元々はニューヨークのコールドスプリングで制作された物理的な作品は、アーティストの息子によって数十年後に再発見された。第一世代では軽量な紙が使われたが、現在のフェーズでは再生素材と自動化されたシステムを採用しており、デジタルアーカイブで引退した作品を保存しながらも新たなパネルを生成したり既存のセクションを完了させることができる。この堅固なワークフローは、一貫した管理ルーチンを強制することで協力者に影響を与え、環境に優しい素材の使用や展覧会における公的関与を通じて現代アートにおける持続可能性への転換を強調している。 ## キーポイント一覧 - 1963 年夏、アーティスト・ジェリーはニューヨーク・コールドスプリングで架空の都市の地図を描き始めたが、それは彼の屋根裏部屋に保管されており、後に息子であるヘンリーによって再発見された。 - プロジェクトは現在、4,000 点以上の個々の 8 インチ x10 インチのパネルからなる二次元的な「バーチャルワールド」アートプロジェクトであり、中央を起点として N、S、E、W の座標を用いて近似円形に配置されている。 - 実行にはアクリル絵具、マーカー、彩色鉛筆、インク、コラージュ、そしてインクジェット印刷が重紙上に用いられ、これは規則および約 100 枚のユニークなカードからなる専用デッキからのランダム生成された指示によって決定される。 - 各カードサイクルは前回の作業が完了するまで開始されず、数分から数日かかる;タスクとは、カード上の巨大な黒または赤の数字で指定された作業ユニット(1 ユニット=1 インチ正方形)をカバーすることを指す。 - カード指示は次の 5 つのカテゴリーに分類される:上位次元への進歩(バッド、レッド、ブラック、ジグurat)、隣接する 4 パネルのスプラッター塗装、新しいシードパネルの作成、新しい色調の混合、および連続する 9 パネルのスクリーン印刷。 - アドдиショナルなアーティスト指示には、マスターの更新/複製、ファイルからのパッチワークまたは写真の使用、数字の追加/削除、デッキからのカードの除去/追加、ブログ投稿や販売価値の計算などの管理業務が含まれる。 - ヘルパー指示には、デジタルライブラリー用のパネルのスキャン、引退したパネルのソート/アーカイブ、現在のパネルのコピー作成、アーカイブインベントリを更新する作業が含まれる。 - 作業方向はカードの色によって決定される:黒は地図 perimeter 周りの時計回りの進行を示し、赤は反時計回りの進行を示す。 - 新しいパネルは「新しいパネル」カードを描画するか、アートのセクションを完了するために生成され、常に親ページと同じ「中心」点を保ち、「その日の色」を使用する。 - プロセスは次の層で表現される:ベースレイヤー(パッチ、塗られたバンド、コラージュ、シティスクエア)、ザ・バッド(白/黑白/グレー/黒のコラージュ)、ザ・レッドディメンション(ソリッドレッドのコラージュ)、ブラックネッズ、ザ・ジグurat フェーズ、ザ・フロード(ブルーのコラージュ)、そしてリ・バースト(クラフト紙)。 - プロセスは二つの明確な時代へと発展した:時代 1(1963–1983)では軽量なタイプライター用紙が使われ、ゲストアーティストはいなかった、パネルは時系列順に積み重ねられた;時代 2(2003–現在)では再生された紙が使われ、デッキ駆動の自動化システムを採用し、展覧会が開催され、パネルは座標順に積み重ねられている。

2026/06/24 3:00

Swift パッケージインデックス、Apple に加入

## Japanese Translation: ## 日本語翻訳: 元のサマリーは明確で、正確かつ完全です。変更する必要はありません。 ## 翻訳対象のテキスト: (必要であればここに貼り付け;なければそのまま元の文章を繰り返す):元のサマリーは明確で、正確かつ完全です。変更する必要はありません。

2026/06/24 2:50

FUTO スワイプ:新たなスワイプタイピングモデル

## Japanese Translation: 主なイノベーションは「FUTO Keyboard」というプライバシーを最優先とした Android アプリであり、クラウドサーバーの必要性なくデバイス上で迅速かつ正確なスワイプタイピングを可能にします。データをローカルに保持することで、キーストロークを外部ネットワークへ送る際に生じる一般的なセキュリティリスクを排除します。推論はオンデバイスで実装されており、サーバーサイドデモと比べてはるかに低いレイテンシを実現しています。ミリ秒単位で入力を処理し、エラーレートは 1% を下回ります(具体的には、ビーム幅 300 を使用したテストセットにおいて、トップ 4 の失敗率は約 4%、エラー率は 1% 未満です)。 技術の基盤となるのはオープンなモデルファミリ(Encoder、ContextLM、Decoder)で、総パラメータ数 2,494,767 のうち有効パラメータは 1,364,271 です。低性能向けスマートフォンを最適化しています。「swipe-library」という C++ ライブラリが推論とビームサーチを担当し、スワイプパスから単語予測への変換を行います。学習は効率的で、ワークステーション用 GPU 1 台のみで完了しました。開発者は 2024 年 8 月にデータセット収集を開始し(100 万件以上のユーザーのスワイプデータを収集)、2025 年 3 月に MIT ライセンスの下で HuggingFace にフィルタリングされた 100 万件のスワイプデータをリリースしました。モデルは FUTO モデルライセンス、推論ライブラリは GPL の下に利用可能です。エンドユーザーへの謝示は長期投資合意の一部として必須であり、速度とプライバシーを最優先とするオフラインモバイル入力の持続可能なエコシステムを支えています。