世界を動かす技術を、日本語で。

OpenAI ハーモニー

2025年8月6日原文(github.com)

概要

OpenAI Harmony は、gpt-ossモデルシリーズのための 統一レスポンスフォーマットPythonRust 両方の実装を提供し、高速で一貫したフォーマット処理を実現。 API利用時は 自動でフォーマット されるが、独自推論実装時は harmony形式必須開発・テスト環境 のセットアップ方法やコントリビュート手順も網羅。 機能拡張性構造化出力 を重視した設計。

OpenAI Harmony概要

  • gpt-ossモデル 専用のレスポンスフォーマット
  • 会話構造・推論出力・関数呼び出し を一貫して管理
  • OpenAI Responses API 互換設計
  • 複数チャンネル出力 (chain of thought、tool calling、通常応答)対応
  • 命令階層ツールネームスペース 指定機能

利用時のポイント

  • API経由 (HuggingFace、Ollama、vLLMなど)では フォーマット自動管理
  • 独自推論環境 構築時は harmony形式 の厳守が必要
  • harmony形式未使用 ではgpt-ossは 正常動作不可

Pythonでの利用方法

  • PyPI からインストール:
    • pip install openai-harmony
  • 主要クラス/関数
    • load_harmony_encoding, HarmonyEncodingName, Role, Message, Conversation
  • 会話レンダリング例
    • 会話履歴をトークン列に変換し、モデル応答後に パース 可能
  • ドキュメント型ヒント も充実

Rustでの利用方法

  • Cargo.toml に依存追加:
    • openai-harmony = { git = "https://github.com/openai/harmony" }
  • 主要構造体/関数
    • Message, Role, Conversation, load_harmony_encoding
  • 会話レンダリングパース をRustコードで実装可能

開発・コントリビュートガイド

  • RustコアPythonラッパー の二層構造
    • Rust: チャット/エンコーディングロジック、トークナイザー
    • Python: dataclasses、ラッパーAPI
  • ローカル開発手順
    • Rustツールチェーン・Python3.8以上・maturinの準備
    • 仮想環境作成、依存インストール、maturinでビルド
    • RustとPython両方の テストスイート で動作検証
  • 型チェック・フォーマット
    • Python:mypyruff
    • Rust:cargo fmt

ディレクトリ構成

  • src/:Rustクレート本体
    • chat.rs:会話データ構造
    • encoding.rs:レンダリング・パース実装
    • tests.rs:Rustテスト
    • py_module.rs:PyO3バインディング
  • harmony/:Pythonラッパー
    • __init__.py:dataclassesとAPI
    • tests/:Pythonテスト
  • ルート:Cargo.tomlpyproject.tomlREADME.md

まとめ

  • OpenAI Harmony はgpt-ossモデルのための 高速・一貫フォーマット基盤
  • Python/Rust両対応 で幅広い開発スタイルに最適
  • 独自推論実装時は必須技術、API経由では自動化
  • 開発・テスト・型チェック のガイドも明快

Hackerたちの意見

どのリンクも機能してない? - https://gpt-oss.com/ 認証が必要? - https://openai.com/open-models/ なんか空っぽじゃない? - https://cookbook.openai.com/topic/gpt-oss 404 - https://openai.com/index/gpt-oss-model-card/ 空のページ?俺、インターネットの使い方間違ってる?

今日はオープンウェイトモデルが出そうだね。

今、リリース作業中なんじゃないかな。すぐにオンラインになると思うよ。

あと、https://cookbook.openai.com/articles/openai-harmony がREADMEに3回も参照されてるけど、404になってるね。

おそらくGitHubを使ってて、今のGitHubの障害でリリースが遅れてるんだろうね。

俺、インターネットの使い方間違ってる? GitHubの障害がリリースを遅らせてるよ。

新しいtransformersのリリースがモデルについて説明してるよ: https://github.com/huggingface/transformers/releases/tag/v4.... > GPT OSSは、強力な推論、エージェントタスク、そして多様な開発者ユースケースのために設計された、OpenAIによる非常に期待されているオープンウェイトリリースだよ。117Bパラメータの大きなモデル(gpt-oss-120b)と、21Bパラメータの小さなモデル(gpt-oss-20b)の2つのモデルが含まれてる。どちらも専門家の混合(MoE)で、4ビット量子化スキーム(MXFP4)を使っていて、アクティブなパラメータが少ないおかげで高速推論が可能(詳細は下に)で、リソース使用も低く抑えられてる。大きなモデルは単一のH100 GPUに収まるし、小さい方は16GBのメモリ内で動作して、消費者向けハードウェアやデバイス上のアプリケーションにぴったりだよ。

誰かがGitHubのリポジトリを早く公開しちゃったんじゃないかな。

https://ollama.com/library/gpt-oss

OpenAIの発表には、リンクがまだ動かないって文句言ってるスレッドが必ずあるよね。まるで、10個の相互に関連したウェブサイトを瞬時に展開できるかのように。

インターネットの使い方間違ってる?多分そうだね、だって俺には全部すぐ開くから。

ペリカンはいつ?

Hacker Newsで議論の続きを見る