この内容は古いバージョンです。最新バージョンを表示するには、戻るボタンを押してください。
バージョン:1
ページ更新者:atom
更新日時:2026-06-29 12:05:01

タイトル: Speckleとは
SEOタイトル: Speckleとは|OSSのAECデータプラットフォームをRevit/SE向けに解説

この記事の要点
  • Speckle は AEC(建築・土木・建設)向けのオープンソースなデータプラットフォームで、ツール間のデータ連携とバージョン管理を担う
  • Revit・Rhino・Grasshopper など複数のオーサリングツールを、共通のデータモデルで橋渡しする
  • API(GraphQL)と SDK(Python / .NET)を備え、プログラマブルである点が SE に向く
  • 商用のクラウド(app.speckle.systems)と、自前サーバへのセルフホスティングの両方が選べる
  • 用語は旧版(v2)と新世代で変化しており、本カテゴリでは新世代の用語を主に用いる

本記事は Speckle カテゴリの入口として、「Speckle とは何か」を Revit / Speckle に関わる SE 向けに整理します。続けて内部構造を知りたい場合は アーキテクチャ(Server/Project/Model/Version) へ進んでください。

Speckle とは何か

Speckle は、建築・土木・建設(AEC: Architecture, Engineering, Construction)の領域で使われるオープンソースのデータプラットフォームです。Revit、Rhino、Grasshopper、Blender、AutoCAD などのオーサリングツールが扱う 3D モデルや属性データを、ツールに依存しない共通のデータモデルへ変換し、サーバ上で保存・共有・バージョン管理できるようにします。

従来、AEC のデータ交換は IFC ファイルや独自フォーマットの「ファイル受け渡し」が中心でした。Speckle はファイルではなく「オブジェクト単位のデータ」をネットワーク越しにやり取りする発想に立っており、Git がソースコードに対して行っていることを、建築モデルのデータに対して行うイメージに近いプラットフォームです。

何を解決するのか(ツール間連携とバージョン管理)

Speckle が主に解決するのは次の2点です。

  • ツール間のデータ連携:あるツール(例: Revit)で作ったモデルを、別のツール(例: Rhino や Blender、あるいは Web ブラウザ)で開けるようにする。各ツール用の「コネクタ」が変換を担います。詳細は コネクタ を参照してください。
  • バージョン管理:モデルを送るたびに新しい版が記録され、いつ・誰が・どんな状態を送ったかの履歴が残ります。差分や履歴をたどれる点が、単なるファイル共有との違いです。

これにより、関係者がそれぞれ得意なツールを使いながら、データの一貫性と来歴(だれがいつ何を更新したか)を保てます。send/receive の基本ワークフロー でその流れを具体的に扱います。

なぜ SE に向くのか

Speckle は、いわゆる BIM ツールというより「AEC データのためのプラットフォーム/開発基盤」です。SE にとって扱いやすい理由がいくつかあります。

  • プログラマブル:データはオブジェクトの集合として構造化されており、コードから生成・読み取り・加工できます。
  • API がある:サーバは GraphQL API を公開しており、プロジェクトやモデル、バージョンの情報をプログラムから操作できます。API概要 も合わせて参照してください。
  • SDK がある:Python 向けの specklepy、.NET 向けの SDK が用意され、自動化やカスタム連携を書けます。詳しくは specklepy.NET SDK を参照してください。
  • OSS である:コードが公開されており、内部の挙動を確認したり、独自に拡張・自前運用したりできます。

つまり、GUI で図面を操作する世界というより、データとAPIを軸にした世界であり、Web/バックエンド開発の経験がそのまま活きやすい領域です。

商用クラウドと自前ホスティング

Speckle のサーバは、利用形態を2通りから選べます。

形態概要向く場面
商用クラウド運営側が提供するホスト型サービス(app.speckle.systems など)を利用するすぐ試したい/自前運用の負担を避けたい
セルフホスティングOSS のサーバを自社インフラに構築して運用するデータを社内に閉じたい/要件に合わせて運用したい

セルフホスティングはコンテナなどで構築でき、データの所在を自社管理下に置けるのが利点です。運用上の具体的な検討は ホスティング で扱います。

用語の世代差に注意

Speckle を学ぶうえで最初に押さえるべき注意点が、用語の世代差です。旧版(v2 系)では Stream/Branch/Commit という用語が使われていましたが、新世代では Project/Model/Version に置き換わりました。古い記事やドキュメントを読むときに混乱しやすいので、本カテゴリでは新世代の用語を主としつつ「旧 Stream に相当」のように対応を併記します。用語の対応関係は アーキテクチャ の記事で対応表として整理します。

このカテゴリで扱う範囲

本カテゴリでは、Speckle の内部構造(アーキテクチャオブジェクトモデル)、各ツールとの接続(コネクタRevit ⇄ Speckle)、基本操作(send/receive)、開発(specklepy.NET SDKAutomate)、表示(Viewer)、運用(ホスティング)、そして IFC との違いデータ連携実務 までを順に解説していきます。まずは次の アーキテクチャ で全体像をつかむのがおすすめです。