Streamlit:用 Python 輕鬆快速打造與共享 Data App


情境:

大 AI 時代已經到來,我們面臨著快速變化的環境和技術挑戰。

對於企業以及使用者們,資料科學的創新和應用正快速發展,尤其是近期 AI 的興起更是加速了資訊的傳播量與流通。

因此,在後續的 10 年內,我們傳統資料分析的速度該如何跟上時代趨勢的變化?

本文將介紹如何利用 Streamlit 這個易於使用的 Python 套件,讓您成為「Low-Code」數據分析的先行者,輕鬆快速地創建和共享數據應用程序。


Streamlit 的優勢和應用

美國有超過 50% 的 Fortune 50 企業都在使用 Streamlit。
▲圖 1. 開發儀表板 / 資料分析 Web App 工具 Github 知名度比較圖 (star-history.com)
讀者們曾否想過以下 3 個現有難題?
  1. 我們可以將資料更直觀、快速地視覺化呈現嗎?

2. 你們是否困擾於目前市面上現有的儀表板工具無法客製化分析需求?

3. 我們有沒有能更簡易開發網頁儀表板的低程式碼開發工具?


解決方法:

如果我們以傳統的角度切入,儘管市面上已有許多 BI 工具能快速製作漂亮的視覺儀表板,但缺乏程式開發的客製化分析,使這些儀表板用途有所限制。

另一方面,現今一些 Python 的網頁建構框架,雖然可以部署較複雜的機器學習 AI 模型以及高客製化的視覺化繪圖,然而其要求較高的程式碼能力,且開發時間與成本高、學習曲線陡峭(如下圖)。

▲圖 2. 資料視覺化工具定位圖

因此我們將使用 Streamlit 這項工具協助我們解決我們的所有難題。

所以什麼是 Streamlit ?
▲圖 3. Streamlit 網頁圖

Streamlit 是一個能用 Python 程式語言簡單製作、快速分享資料分析的 Open-Source 框架。其應用範圍非常寬廣,從機器學習模型部署到客製化的視覺化儀表板,甚至能應用在軟體設計的原型 Demo。

歡迎參觀我們做的簡單 Web App,同圖4。

▲圖 4. Streamlit 機器模型儀表板 Demo

我們可以將各種常見透過 Streamlit 開發的 Web App 歸納成兩大類別:

  1. AI 模型部署
  2. 視覺化儀表板

後續系列文章將會帶領讀者們實戰演練上述兩大類別的 Web App!

讓您無需在 HTML、CSS 和Javascript 中摸爬滾打,透過短短幾行 Python 程式碼便能打造專屬您的資料科學 Web App!


成果與應用

第一次學 Streamlit 時,被自己嚇了一大跳,沒想到自己能在短短一兩天的時間,就學會做資料分析 Web App 呢!

App 部署與維護比你想像中的簡單
圖 5. Streamlit Web App 部署

我們可以部署我們自身製作的互動儀表板到網頁上(如圖 5),邀請您的使用者觀看 Web App 成品。

更多結合 Streamlit 的應用模式

此外,有別於單純使用 Streamlit, Streamlit 也能與時下最夯的 ChatGPT 串接 !

▲圖 9. Streamlit X ChatGPT 應用

此三大優勢包括:

  • 開發 AI 程式更彈性:Streamlit 框架具有快速建構和部署應用程式的強大功能,通過串接 ChatGPT,我們可以根據自己的需求客製化開發 ChatGPT 的應用程式。
  • 更高效產出文字內容: 我們可善用 Streamlit 的圖形用戶界面 (GUI) ,事先在 Streamlit 程式碼中定義要提供給 ChatGPT 的提示(Prompt)字詞,讓使用者不用在一直重複輸入相關的提示來產出 AI 文字內容,只要下關鍵字與點擊的方式,即可給出預想的文字內容!
  • 自動化與改善用戶體驗: 善用所蒐集到的資料自動化串接 ChatGPT 與 Streamlit,自動化產出顧客體驗回覆。例如:可善用 Python 爬蟲外部顧客輿情資料來自動化串接 ChatGPT,並在 Streamlit 中自動產出用戶體驗的文案回覆,讓使用者可以快速確認回覆訊息,加速回饋使用者的效率、準確度與速度。

綜上所述,串接 ChatGPT 和 Streamlit 框架可以快速提升應用程式的開發速度、提高效率、自動化、以及改善用戶體驗等。


看完本篇文章之後,

讀者們是不是更想認識資料科學的 Web APP 與 AI 應用呢?

沒有比學會展示資料分析成果更快的方式了,您還在等什麼呢?

開始著手你的第一個 Web APP 應用吧!


作者:黃榮晟(臺灣行銷研究資料科學家)、劉加德(臺灣行銷研究特邀編審)、鍾皓軒(臺灣行銷研究有限公司創辦人)


作者加碼: 填問卷,購課程,送 500 元好禮!

Streamlit:用 Python 輕鬆快速打造與共享 Data App — 填問卷,購課程,送等值500元好禮!

▲圖 10. 「 Streamlit x ChatGPT 快速打造資料分析網頁 」課程封面

更多實戰案例及情境好文推薦

回到頂端