Snowflakeは12月19日、StreamlitのCo-Founder & COO Amanda Kelly氏による技術説明会を開催した。Streamlitは、PythonでWebアプリを作成できるオープンソースのフレームワーク。

  • StreamlitのCo-Founder & COO Amanda Kelly氏

SnowflakeはStreamlit社を2022年3月に買収。その後、Snowflakeのデータクラウド上でStreamlitを用いてアプリを構築することが可能になる「Streamlit in Snowflake」を発表した。「Streamlit in Snowflake」は2週間ほど前に一般提供が開始された。

Streamlitの始まりはデータチームの課題解決

Kelly氏はStreamlitを開発した経緯から説明を始めた。2013年、Google Xプロジェクトで、同氏が共同創始者であるAdrien Treuille氏とThiago Teixeira氏と出会ったことに端を発する。

Kelly氏は、「当時、機械学習や自然言語に関わるプロジェクトに携わっていたが、毎回同じ課題にぶつかっていた」と語った。さらに、同氏とAdrienは自動走行車のスタートアップであるZookで働いたが、そこでも同じ問題が発生していたという。

問題とは、新しいことにチャレンジしたいデータチームが必要なツールを整えることが難しいということだ。この問題を解消するため、同氏らは2019年にデータサイエンティスト向けのオープンソースのデータアプリケーションフレームワークとして、Streamlitをリリースした。

  • Streamlitの歴史

そして、Kelly氏は「Streamlitがこれほどまで使われるようになるとは思わなかった」と語った。Streamlitが人気を博した理由について、「データを使うすべての人たちが同じ問題を抱えており、それを解決してくれるツールが登場したから」と同氏は説明した。

Streamlitをオープンソースとして開発した理由

オープンソースソフト(OSS)として開発が進められているStreamlitだが、当初は、そのつもりではなかったという。「ローンチ後に議論した」とKelly氏は語った。

Streamlitは大手企業の機械学習エンジニアに使ってもらうことを目的としていた。そこで彼らに聞いたところ、「オープンソースでなければ使い始められないと言われたそうだ。

さらに、StreamlitをOSSとして提供することの長所と短所を検討し、同社のエンジニアにヒヤリングした結果、「オープンソースでなければダメだと思った」とKelly氏は話した。

「Pythonを使うなら、オープンソースの一部になっていく必要がある。あの時の判断は賢明だった」と、Kelly氏は同社の決定が正しかったことを示した。

データプラットフォームSnowflakeとの統合で迅速なアプリ開発を実現

Streamlitをリリースしてから機能拡張を進める中、2022年3月にSnowflakeから買収の提案が行われた。Kelly氏はこの提案を受けた理由について、以下のように述べた。

「Streamlitのユーザーから問題の9割がデータにあるという意見を聞いた。そうした中、最善のデータプラットフォームであるSnowflakeを乗せることで、パワフルになると考えた」

Kelly氏は、「企業はビジネスの問題を解決するデータを必要としているが、データを意思決定につながるものに変えることが難しかった」として、この課題をStreamlitによって解決したかったと話した。

しかし、目的に応じてデータを扱うにはアプリを開発する必要があったが、時間がかかるというさらなる問題があった。Kelly氏が自動走行車の開発において必要なアプリを開発するには6カ月かかると言われたが、「そんなに待てない。アプリの構築に時間がかかると、得られるものも少なくなる。これはビジネスにとってよくないこと」と同氏。

そこで、Kelly氏は使いたいツールを作れるようにすることこそが唯一の解決策と考えた。「StreamlitとSnowflakeを使うことで、アプリの開発に時間がかるという状態を変える」と同氏は述べた。

Kelly氏は「Streamlitで重視することを3つ挙げよと聞かれたら、すべてスピードと答える」と話したように、スピードの重要性を訴えた。

「簡単かつ早く、容易にアプリが作れるようになると、たくさんのアプリを作れるようになる。その結果、すべてのチームがデータ思考型で働けるようになる。また、データチームが答えられることが少ないと、ユーザーは疑問を出すことさえしなくなり、その結果、データが活用されなくなる。StreamlitとSnowflakeにより、この問題を解消する」

  • Streamlitはデータとチームのインタラクションを変革する

生成AI、LLMにおけるStreamlitの活用

Kelly氏は、生成AIやLLMにおけるStreamlitの活用についても説明した。Snowflakeは、生成AIやLLMを活用するためのプラットフォームとして、AIの利用を支援する「Snowflake Copilot」、AI/LLM関連のフルマネージドサービス「Snowflake Cortex」などの提供を予定している。

  • 生成AI/LLMのためのSnowflakeプラットフォーム

StreamlitはAIアプリの生成を容易にするという役割を果たす。Kelly氏によると、Microsoft Copilotの開発にもStreamlitが使われたという。

Kelly氏はAI関連の取り組みとして、Snowflake Cortexにおいて、ベクトル検索機能を開発していることを紹介した。Snowflake Cortexではサーバーレス関数を用いて、LLMを活用したアプリを簡単に開発できる。

Kelly氏は「Streamlitを魔法のようなものにすることが目標」として、来年も積極的に機能拡張に取り組むことを表明した。オープンソースコミュニティに対してもこれまでの姿勢を継続し、新機能も無償で提供するという。

  • Streamlitで進められている機能拡張

Streamlitのトレーニングプログラム

続いて、Snowflake 執行役員 プロフェッショナルサービス&トレーニング本部長 並木知己氏が、Streamlitのトレーニングプログラムを紹介した。

  • Snowflake 執行役員 プロフェッショナルサービス&トレーニング本部長 並木知己氏

同社は、オンラインで学習できるコンテンツ「SNOWFLAKE UNIVERSITY」を無償で公開している。「SNOWFLAKE UNIVERSITY」は、Snowflakeの初心者またはデータ作業全般の初心者がインタラクティブに自分のペースで学習を進められる。

並木氏は、「SNOWFLAKE UNIVERSITY」を提供している背景について、「データアナリストにとどまらず、ビジネスユーザーも含めて、顧客企業のすべての人がSnowflakeを使えるようになることが重要」と説明した。