BT

最新技術を追い求めるデベロッパのための情報コミュニティ

寄稿

Topics

地域を選ぶ

InfoQ ホームページ ニュース PyodideがWebAssemblyを使ってPythonとその科学スタックをブラウザに提供

PyodideがWebAssemblyを使ってPythonとその科学スタックをブラウザに提供

原文(投稿日:2021/05/31)へのリンク

Mozillaは、Pyodideが、独立したコミュニティ主導のプロジェクトになったことを発表した。Pyodideは、その全てがブラウザで実行される完全なPythonデータサイエンススタックを提供することを目的としたプロジェクトである。Pyodideは WebAssemblyにコンパイルされたCPython 3.8インタープリターを活用しているため、IodideでPython、NumPy、Pandas、Matplotlib、SciPyなどを使用できる。IodideはWeb用の実験的なインタラクティブな科学計算環境である。

Pyodideチームは当初、Pyodideの背後にある理論的根拠を次のように説明した

科学者のためにWebを改善することを考え始めたとき、Javascriptと共によりよく機能させる方法に焦点を当てました。例えば、既存の科学ライブラリをWebAssemblyにコンパイルしたり、使いやすいJS APIでラップするなどです。[…]MozillaのWebAssemblyウィザードは、より意欲的なアイデアを提供した。多くの科学者がPythonを好む場合、PythonサイエンススタックをコンパイルしてWebAssemblyで実行することで、彼らに応えます。

Iodideプレイグラウンドでは、JavaScript環境でPythonとPythonパッケージを使用するノートブックを紹介している。その逆も同様である。

Iodide showcase

Pyodideは、Web APIへのフルアクセスを備えたWebブラウザ内でPythonを実行する必要があるあらゆるコンテキストで使用できる。最新のリリースノートでは、PyodideがPython 3.8ランタイムを、NumPy(科学計算)、Pandas(データ分析)、Matplotlib(プロットライブラリ)、SciPy(科学および技術計算)、scikit-learn(機械学習)を含む Python科学スタックと共にWebAssemblyに変換したと述べられている。リリース時点で75個のパッケージが利用可能である。ピュアなPython wheelsは、PyPi Pythonパッケージマネージャーからインストールすることもできる。Python 0.17はさらに、JavaScriptとPythonの間でオブジェクトの透過的な変換を提供する。

Iodideは2018年に、Jupyterと同様の方法で科学的調査と視覚化のためのイン・ブラウザのノートブックを作成するために開発された

Editing a Markdown code chunk in Iodide's Explore View

Iodideは、もはや積極的にメンテナンスされていない。ただし、Pyodideは、他のインタラクティブなクライアント側ノートブック環境 (interactive client-side notebook environments (e.g., StarboardBasthonJupyterLiteなど) で使用できる。

リリースノートと発表の全文はオンラインで入手できる。そこには、追加でイラストや説明がたくさん含まれている。Pyodideは現在、Mozilla Public License Version 2.0の下で配布されている、コミュニティ主導の独立したオープンソースプロジェクトである。

この記事に星をつける

おすすめ度
スタイル

BT