Hebbian Robotics (YC S26) のスケーラブルなロボティクスデータパイプライン構築へ

2026/09/01 0:02

Hebbian Robotics (YC S26) のスケーラブルなロボティクスデータパイプライン構築へ

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

要約

Japanese Translation:

Hebbian Robotics は、多様なシステムからの同期された動画、状態、行動記録を含む大規模なデータセットの管理というロボティクスにおける重要なボトルネックを解決することを目的としたオープンソース SDK「HFlow」を発表しました。このツールは、これらの時系列ストリームに対して MCAP を標準的な規範フォーマットとして確立することで、物理 AI および自律ポリシーに不可欠なスケーラブルなマルチモーダルパイプラインを可能にします。特に重要なのは、開発者が独自のプロパリエートフレームワークの中核ロジックを書き換えるのではなく、自分のデータ要件に応じたシンプルな Python アダプターを書くことができる点です。この柔軟性により、処理された各エピソードは直接の provenance メタデータを保持し、スキーマ、パイプラインバージョン、ソースの起源に対する完全なトレーサビリティを実現します。ユーザーは重い動画ファイルをロードせずに DuckDB SQL を使用してこの豊富なデータを検査でき、システムは複雑な処理ステップを視覚グラフとしてレンダリングすることでデバッグを容易にしています。4 つの段階からなるライフサイクルは、収集・取り込み、Python 変換を用いた Airflow DAG ベースの処理、エピソードカタログに対する SQL ベースのカリキュレーション、カリキュレーテッドな MCAP アウプットの配信をサポートします。現在では単一テナントワークスペース(Docker Compose を通じて、または既存の Airflow 3 環境へのデプロイを通じて)でホストされていますが、今後のアップデートではマルチテナント制御平面的を導入することを目指しています。システム要件には Python ≥ 3.11、Docker、Linux 用のネイティブ ffmpeg/ffprobe、クラウドルート用のオプションバックエンドバケット(Windows は WSL2 を通じてサポートされます)が含まれます。PyPI で利用可能なバージョン 0.2.0 から、HFlow は既存の環境を用いて高度なロボティックエージェントの学習および評価のために堅牢で透明性の高いインフラストラクチャを求めるチームにとって、大きな一歩を進めることを意味します。

本文

Hebbian Robotics (YC S26):オープンソース SDK「HFlow」

ロボティクスおよびフィジカル AI における、スケーラブルなマルチモーダルデータパイプラインのためのオープンソース SDK です。

本プロジェクトは Hebbian Robotics (YC S26) が開発しており、大規模チームで用いられるデータツールやプラクティスを、あらゆるサイズのチームが利用できるようにすることを目指しています。

背景と課題:なぜ HFlow か?

我々は、データの処理がロボティクスにおける主要なボトルネックだと考えています。コーパス(データ集)には、ビデオ、状態、アクション、タイムスタンプ、メタデータを組み合わせた多数の記録システムが含まれます。これにより以下の問題が発生します。

  • 品質管理の難しさ
    • カメラが停止していないか確認する必要がある。
    • ストリームが同期外れていないかチェックする必要がある。
    • 必要なトピックが存在するか、重複した録画が混入していないかを検証する必要がある。
  • 大規模データへの対応
    • コーパスが大きくなると、断片的なスクリプトで何が実行されたかの追跡や、結果の検証、データの再現実成が困難になる。

HFlow の概要と機能

HFlow は、オーケストレーション、保存、バージョン管理、そしてキュレーション(品質管理)を一元的に担当するプラットフォームです。

  • 柔軟な拡張性
    • チームは内蔵チェックに加え、新しいトランスフォーム、チェック、ラベル、および拡張機能を容易に記述できます。
    • 既存の処理コードを接続することも可能です。
  • トレーサビリティと可視化
    • 各処理されたエピソードにその源流(プロヴェナンス)を付与します。
    • パイプラインをグラフとして可視化し、カタログ上にメタデータと品質証拠を記録・検索可能です。
    • 出力の生成経路を追跡したり、各段階を監視したり、基となる録画をロードせずにコーパスを検証できます。

境界規格:MCAP

  • MCAP は HFlow v1 の入力・出力の境界規格です。
  • 同期されたビデオ、状態、アクション、その他時系列ストリームを効率的に保存・提供します。
  • データの源(人間装着カメラ、遠隔操作ロボット、自律ポリシー等)によって形式が変わるわけではなく、どのソースからも MCAP エピソードとして表現すればパイプラインへ供給できます。

⚠️ 現状:コアのリファインサイクル機能はエンドツーエンド動作する pre-v1 段階です。HFlow をローカルで試用可能です。詳細は実装済み項目およびオープンされたイシューを参照してください。

オープンロボティクスコミュニティへの協力

  • リポジトリにスターをつけて、ネットワークを通じて共有し、コントリビューションを行ってください。
  • ロボットハードウェアの所有は不要です。誰でもロボティクスの未来の構築に参加できます。

HFlow の境界(スコープ)

カテゴリ説明
入力サポートされた標準 MCAP エピソード、および
hflow import lerobot
コマンドでの LeRobot Dataset v3 リポジトリからの読み込み。
処理ユーザーによる Python トランスフォーム、チェック、ラベル、および拡張機能。
実行開発段階はインプロセス(単一プロセス)。スケジュールされたランには生成された Airflow 3 DAG を使用。
永続的出力キャンオニカルな MCAP エピソード、プロヴェナンス、アーティファクト、および Parquet カタログ。
キュレーションバージョン固定化されたマニフェストを DuckDB SQL コードで書き込む。

得られる成果:4 つのリライフサイクル段階

人間とロボットのデータは以下のフローを通過します:

収集 (collection)
-->
取り込み (ingestion)
--------------->
キュレーション (curation)
------>
配信 (delivery)
(ランディングバケット)
(トランスフォーム -> QC ゲート -> Airflow DAG)
(エピソードカタログに対する SQL)
(キュレテッドな MCAP + マニフェスト;学習用への変換)

主要な利点

  1. あなたの処理コードはあなたのものであります
    • トランスフォーム、品質チェック、ラベル、拡張機能は独自の環境におけるプレーンな Python 関数です。
    • プロプライエタリなフレームワークに書き直す必要はなく、既存のコードも小さなアダプターで接続されます。
  2. エピソードは MCAP 形式です
    • ROS 2 がネイティブに記録するコンテナであり、Foxglove や Rerun で直接開けます。
    • Dyna の論文で説明されているチューニング(バンド内 H.264 ゴップレンガの最適化)に対応します。これによりトレーニングサンプルのコスト削減が図れます。
  3. 処理されたエピソードはその源流を持ちます
    • ファイル自体にスキーマ、パイプライン、生成ツールのバージョン、およびソース URI を記録します。
    • カタログレコードは測定値と結果をステップのバージョンに接続し、悪い結果の起源を追跡しやすくします。
  4. パイプラインはグラフとして可視化されます
    • HFlow は Airflow DAG をレンダリングするため、各段階の接続関係やタスクの状態、ログ、再試行状況を監視可能です。
  5. 品質チェックは再利用可能な証拠を生み出します
    • アクセサは既存コードから入力(numpy 配列など)を抽出し、結果をハードコーディングされた判定ではなく、検索可能な測定値として出力します。
    • データセットごとに異なる閾値を設定しても、メディアの再処理は不要です。
  6. 録画をロードせずにコーパスを検査できます
    • メタデータ、品質測定値、タグ、バージョンスタンプ、アーティファクト所在地は Parquet カタログ内に存在します。
    • DuckDB は基となる MCAP ファイルを開かずに、コーパス全体に関する質問に答えることができます。

ホスティングとスケーラビリティ

オープンソースデプロイメントは、所有しやすく設計されています。

  • デプロイオプション
    • 付属の Docker Compose ランタイムで単一テナントワークスペースを動作させます。
    • 生成された DAG バンドルを既存の Airflow 3 環境にデプロイします。
  • 制御平面とデータプレーンの分離
    • ユーザーアカウント、RBAC、マルチテナント制御平面は含まれていません。
    • データプレーン(処理部分)は制御平面と分離され、複数の孤立したワークスペース(チームごとや顧客ごと)としてスケーリングできます。
  • ドキュメント
    • データプレーンコントラクトの詳細は
      docs/HOSTING.md
      を参照してください。

コミュニティとホスティングに関する関心

  • ホスト版プラットフォームのウェイトリスト:ワークフローについてのお問い合わせは可能です。
  • コミュニティ Discord:ご質問、フィードバック、議論のために参加してください。
  • 行動規範:コミュニティ標準を確認し、懸念を私的に報告してください。
  • Issue 管理:再現可能なバグとスコープされた機能リクエストについては GitHub Issues を使用します。

インストールと試行

uv
を使用して PyPI から SDK をインストールします。

注意: Hebbian Robotics プロジェクトはバージョン

0.2.0
から開始されます。以前
0.1.x
で存在したリリースは別の無関係なプロジェクトのものです。

クイックスタート

リポジトリをクローンし、ローカルで実行します:

git clone https://github.com/Hebbian-Robotics/hflow.git
cd hflow
uv sync --locked
uv run python examples/quickstart.py
  • このコマンドは入力ファイルを指定しない場合、カメラと状態ストリームを持つ小さなマルチモーダルエピソードをシミュレートし、インプロセスでパイプラインを実行します。
  • 自前の録画を使用するには:
    uv run python examples/quickstart.py path/to/episode.mcap
    

CLI ヘルプを表示するには:

uv run hflow --help

スケジュール動作や詳細な手順については、ランタイムガイドと

CONTRIBUTING.md
を参照してください。

LeRobot データセットからのインポート

LeRobot Dataset v3 エピソードを標準 MCAP 境界にインポートします:

uv run hflow import lerobot \
  --repo lerobot/pusht --revision main \
  --camera observation.image --episode-index 0 \
  --output-dir ./data/lerobot_pusht

インポーターは

main
を不変なソースコミットに解決し、それをエピソードのプロヴェナンスとして記録します。詳細は LeRobot インポートガイドを参照してください。

外観(使い方)

6 行のコードで始められます。以下の例ではロボット遠隔操作エピソードを使用していますが、同様のステップインターフェースはエゴセントリックビデオやその他のフィジカル AI 録画にも適用されます。

import hflow
from hflow.checks import camera_frame_stats
from your_existing_qc import check_joint_smoothness  # 既存のチェックを使用

app = hflow.App("kitchen-pipeline")  # データルート:$HFLOW_DATA_ROOT, hflow.toml, ./data


@app.check(version="1")
def joint_smoothness(ep: hflow.Episode) -> hflow.CheckResult:
    joints = ep.channel("/joint_states").to_numpy()  # 私たちの行:抽出
    result = check_joint_smoothness(joints, rate_hz=100)  # あなたの行:変更なし
    return hflow.CheckResult(measurements=result)  # 私たちの行:記録


@app.check(version="1", critical=True)
def camera_blackout(ep: hflow.Episode) -> hflow.CheckResult:
    camera_topic = next(topic for topic in ep.cameras if "wrist_cam" in topic)
    evidence = camera_frame_stats(ep, cameras=[camera_topic])
    black_frame_percent = evidence.measurements[f"{camera_topic}/black_frame_pct"]
    assert isinstance(black_frame_percent, float)
    return hflow.CheckResult(
        measurements={"black_pct": black_frame_percent},
        verdict=black_frame_percent < 50.0,  # パーセント;あなたの閾値
    )


if __name__ == "__main__":
    app.test("episode_0001.mcap")  # 全体のパイプライン、インプロセス、インフラなし
    # または app.run() を呼び出して Compose ランタイムを起動し、hflow ingest を使用。
  • 各チェックや拡張機能はバージョン宣言を持ちます。HFlow はその値をそのまま保存するため、リファクタリング時に動作を保ち、結果比較が必要な場合にバージョンアップ(bump)を行います。
  • キュレーションはその後に行われ、
    hflow.curate(data_root / "catalog", sql, output="manifest.parquet")
    またはコマンドラインの
    hflow curate "<sql>"
    で実行します。

カタログへの DuckDB ブラウザはいつでもアクセス可能です:

SELECT episode_id, uri FROM episodes
WHERE task = 'fold_napkin'
  AND status = 'ok'
  AND black_pct < 1.0                      -- パーセント;ユーザー所有の閾値
  AND pipeline_version = 'a41c9f27b3d8'    -- リプロセッシング世代の一つをピン止め

デザインの原則

  • アーキテクチャを民主化し、最適化は後回しにする
    • 小規模で有用なワークフローと標準インターフェースを維持します。
    • スケーリングメカニズムは実装済み、簡素化済み、後回し、または範囲外であることを正直にラベル付けします。
  • 証拠ではなく判定
    • チェックはカバレッジ付きで測定値を記録し、パス/失敗のポリシーは消費者がキュレーション時に所有します。
    • 品質タグはエピソードをルーティングしますが、データを決して削除しません。
  • すべての境界で標準形式
    • MCAP エピソード、Parquet カタログ、Airflow DAG を採用します。コードは必要最小限(形式によるブリッジや明確でない陥穽の場合)のみが存在します。
  • あなたのコードはあなたのものであります
    • 既存のトランスフォームなどをプロプライエタリフレームワーク用に書き直すことなく、小さなアダプターで接続します。

要件

  • Python: ≥ 3.11
  • ランタイム: Docker(パイプライン用)、または独自 Airflow デプロイメント(Astronomer, MWAA, Cloud Composer, self-managed)。
    • 最初の
      hflow up
      は約 2 GB のコンテナイメージとタスク venv をダウンロード/ビルドします(一度きり)。
  • ストレージ: ネイティブな
    s3://
    ,
    gs://
    , Azure データルートにはオプションのバケットバックエンドが必要です。ローカルパスのみをサポート。
  • OS: Linux x86_64/aarch64 対応(WSL2 で Windows サポートあり)。Airflow はネイティブに Windows で動作しないため、WSL2 経由となります。

ドキュメントとリソース

ドキュメントホーム:

  • タスクから始め、その後チュートリアル、ハウツーガイド、参照、説明へ進む。
  • よくある質問(FAQ):形式、インフラ、スケーラビリティ、プロジェクトスコープ、リリースステータス。
  • HFlow とロボティクスデータスタックの適合性(MCAP, Airflow, Foxglove, Rerun, DuckDB など)。
  • 動作可能な例:正確なコマンド、前提条件、期待される出力。
  • アーキテクチャと実装ステータスマトリックス。
  • OpenAI vision パスとの連携方法。

リンクと参考

  • Dyna Robotics: Million-hour scale で Training Dyna-2 を行うこと。
  • MCAP 仕様 と Python ライブラリ (Foxglove)。
  • Foxglove CompressedVideo スキーマ:MCAP 内のバンド内 H.264/H.265/VP9/AV1 ビデオ。
  • Apache Airflow
  • DuckDB
  • Pareto: Hebbian Robotics のロボティクスデータキュレーションプラットフォーム。

コントリビューションとライセンス

すべてのコントリビューターに感謝します!HFlow を素晴らしいものにするために、コミュニティに参加するには

CONTRIBUTING.md
を参照してください。

  • ライセンス: Apache-2.0
    • ライセンスはコードをカバーし、名称はカバーしません:商標ポリシーを参照してください。

同じ日のほかのニュース

一覧に戻る →

2026/09/01 6:10

Google はChrome ウェブストアから MV2 拡張機能を削除し、UBO も含まれます。

## Japanese Translation: Google は、Chrome ウェブストアからすべての Manifest V2 拡張機能の削除を公式に完了し、Manifest V3 への業界全体での大きな移行の最終段階となりました。この決定的な動きは、Google が旧形式と比較してより優れたセキュリティ、プライバシー、パフォーマンスを提供すると主張していることを背景に、Manifest V3 を新基準として確立しています。Chrome バージョン 138 以前のバージョンを使用するユーザーは既存の拡張機能を利用し続けることができますが、ストアから更新を受け取ったり再インストールしたりすることは事実上不可能になっています。この移行は既に uBlock Origin などの人気ツールに影響を及ぼしており、中央集権的なストアからの配布に依存している開発者も影響を受けています。Chrome ウェブストアは Chromium ベースのブラウザの主要なマーケットプレイスであるため、この変更は Brave などの他のプラットフォームにも影響を与えています。Chromium を使用しないブラウザは現在、Google の一元化されたストアではなく独自のバックエンドで特定の拡張機能ホストしなくてはならないため、Brave は Chrome ウェブストアからの削除にもかかわらず、AdGuard、uBlock Origin、uMatrix、NoScript の 4 つの Manifest V2 拡張機能を独自のバックエンド上で引き続きホスティングすることで機能を維持する決断をしました。これらの拡張機能は Brave 内で簡単に有効化できるよう残っていますが、Chromium ベースのブラウザ向けに Chrome ウェブストアで発見可能でもインストール可能でもありません。さらに、Google は影響を受けた拡張機能開発者に対してこれらの削除について通知を行いました。最終的に、デジタル広告とツール分野の景観は、エコシステム全体のユーザーにとって一部の拡張機能の機能を制限する必要があるとしても、より厳格なセキュリティ制御を優先する新しいモデルへと進化しています。

2026/09/01 1:47

セキュリティカメラを自動的な鳥類識別システムに変えました

## Japanese Translation: BirdNet-Go は、既存のセキュリティカメラや RTSP ストリームからのローカル音声分析により、鳥、コウモリ、カエルその他の野生生物を特定するためのセルフホスト型リアルタイム AI システムです。クラウドへの依存なしに動作し、Docker で実行され、Raspberry Pi ハードウェアとも互換性があります。该系统はマルチモデルのローカル推論を活用しており、Google Perch v2(最大 14,795 の種を検出可能)を含むものであり、前世代のモデルに比べて大幅に能力が拡張されています。利用者は標的動物に対して特定のアラートルールを構成でき、新規種の個体が行き来した際に MQTT を経由して Discord または Home Assistant に即時通知を受け取ることができ、これにより庭の生物多様性を効果的に追跡できます。ソリューションにはオプションの iOS 準拠アプリ("BirdNET-Go Companion")が含まれており、リモート視聴に対応し、BirdWeather と連携してコミュニティでのデータ共有が可能となっています。また、カメラ配置を最適化するための視覚的音声レベル分析機能も備えています。プライバシー保護策として、検出された話声中はマイクロフォン入力自動的に遮断され、RTSP フィードを提供するドアベルカメラへの対応も可能ですが、スタンドアロンのビデオドアベルとしては利用できません。コウモリの検出は専用のマイクロフォンを使用することでより高精度となりますが、该系统単独でも南カリフォルニアだけで 418,000 以上の検出イベントと 270 種を超える独特な種の記録に成功しており、平均的な信頼度は約 61% です。GitHub 上にオープンソースプロジェクトとして公開されており、安価な機器を利用した住宅所有者や研究者が生態モニタリングを行うことを民主化しています。

2026/08/28 18:17

動悸を止めてしまうような「狂った蜂蜜」がネット上で販売されています。

## Japanese Translation: 最も重大な危険は、ヒマラヤの崖蜂(*Apis laboriosa*)から採取される「狂ったハチミツ」を、その伝統的な聖なる文脈の外で摂取することにあります。それはグラニートキシンを含んでおり、これは心筋の電気信号への干渉を引き起こし、30〜60 分のうちに危険なほど心拍数と血圧が低下させる自然毒です。かつてネパールガンダキ州の先住民族であるグルング族は特定の儀式のために安全に収穫を行ってきましたが、この専門知識は薄れつつあり、ハチミツは世界的にオンラインで販売されながら、医薬的用量と毒性用量の間にある狭い限界についての十分な警告がないままです。研究者は 1976 年から 2026 年の記録を調査し、2009 年以降の事例を文書化した 27 つの公開論文を特定しました。中毒者の約 72% は中高年の男性で、高血圧や性功能障害への家庭療法として意図的にハチミツを摂取しました。中毒症例はロドデンドロンの花が咲く春に鋭く集中し、年間を通じて最も高い毒素濃度を示します。2013 年以降、韓国やフランスなど国外で発生した事例は診断上のギャップを浮き彫りにしており、患者が摂取を明かさない場合、医師が毒物に不慣れなために治療が遅れることが多くあります。ほとんどの患者は、静脈内補液とアトロピン薬物療法後に 1〜2 日以内に回復しますが、ネパールにおいてこのハチミツを摂取した死者の報告はありません。即時の健康上の脅威に加え、業界は国際プラットフォームにおける安全面の欠陥に苦しんでおり、「狂ったハチミツ」はキロ当たり数百米ドルで販売されています。また、これを産出する蜂は過剰収穫、生息地の破壊、気候変動の影響を受け、個体数が減少しており、人間の安全と種の保全という二重の危機を生み出しています。