[AI線上應用實戰] Bubble.io Plugin製作: Element

閱讀時間約 5 分鐘

系列文章傳送門:[AI線上應用實戰] 如何快速建立你的AI線上應用 使用Bubble.io #Bubble.io教學


[AI線上應用實戰] Bubble.io Plugin製作: 基礎篇我們介紹了Plugin的三種功能。然而實際製作上有很多細節要注意,在這篇文章中,將更詳細介紹如何使用Plugin建立Element元件


實際案例

Fields

這個部分最簡單,會作為update(每次元件的field或元件內容有任何更新就會call)、preview(editor中預覽)這兩個函數的input,並可以使用properties.field_name來存取。要注意,你沒辦法透過設定properties.field_name回傳值(需透過state)

raw-image



State

任何想在bubble workflow存取的plugin回傳或狀態,都可以透過此來創建。以下圖來說,你就可以在workflow中使用plugin_element.export_root這個資料

raw-image


Actions

如果想要在workflow觸發此元件的某個客製化動作,就可以設定Action,以下圖為例。你可以在workflow加入一個Action動作: plugin_element->Start (max=.., bitrate=..., ..),要注意此時properties會是action的fields,不會是上面Fields所設定的(存取上面設定的field會undefined)

raw-image


Element Code: Header

如果有使用CSS或JS套件,請在header指名

raw-image

Element Code: Initialize

每次元件被載入,此處的函數會執行一次。任何想要顯示在頁面上的物件,需要加到instance.canvas裡,任何想在Update使用的,都可以放到instance.data

function(instance, context) {

const id = "class_A"+Math.round(Math.random()*1000000) + 1;
$(instance.canvas).append(`<div id="${id}" class="class_A"></div>`);
element = document.getElementById(id);
element.style.height = "100%";
instance.data.classA_element = new ...;
}

Element Code: Update

每次元件被更新,此處的函數會執行一次。

function(instance, properties, context) {
instance.data.classA_element.classA_element = ...
...
instance.publishState('export_data', new_value);
}

Element Code: Preview

Editior Preview用,基本上與initialize八成像即可

function(instance, context) {
const id = "class_A"+Math.round(Math.random()*1000000) + 1;
$(instance.canvas).append(`<div id="${id}" class="class_A"></div>`);
element = document.getElementById(id);
element.style.height = "100%";
}

Action Code

基本上很好理解,與Update差不多,只是要注意properties會與Update的properties不同

function(instance, properties, context) {

//Load any data

...

//Do the operation

...

}


想要更有系統的學習嗎?

歡迎至Google BooksReadmoo購買《零基礎開發AI應用: Bubble實戰指南》。在本書中我們深入淺出的教您使用Bubble平台,並結合最新最潮的AI技術,讓你輕鬆完成你的創業夢。

raw-image













    1會員
    18內容數
    留言0
    查看全部
    發表第一個留言支持創作者!
    ECOE的沙龍 的其他內容
    如果自行撰寫應用後端,光是使用者管理就是挺麻煩的一件事。筆者之前撰寫Fastapi+OAuth+database就花上不少時間。Bubble.io可以則可以快速完成登入機制 此外,我們也可以搭配OAuth,允許使用者使用第三方登入,這樣甚至可以不用在Bubble應用中,處理reset passwo
    Bubble簡單歸簡單,但遇到想要更大的自由度的時候,處理起來的複雜度可不比自架來的好處理,雖然Bubble有強大的Plugin支援,但如果你很窮、沒有免費好用的Plugin,或是功能太冷門,只好自己寫囉。
    AWS Lambda是? AWS Lambda 就像是開發者的救星,因為它是一種 Serverless 服務,意思是你不用再為架設和維護伺服器煩惱了。對於每天都忙得焦頭爛額的開發者來說,產品開發已經夠讓人抓狂了,還要處理伺服器的設定和維運(e.g. OS、Network、機器管理、防火牆),想想就
    在這系列文章中,將會深入淺出介紹,如何整合下列工具,快速建立你的AI線上應用 Bubble.io 主網站及伺服器 AWS - Lambda: 快速架設簡單邏輯的API,寫個小小的python function立刻就上線,不需要大費周章額外架backend - S3: 提供檔案存取,可透過Pr
    隨著科技的發展,程式代寫已成為一個快速增長的市場。從簡單的程式到複雜的專案開發,程式代寫的範圍極為廣泛。這篇文章討論了選擇代寫服務的原因以及一元賣場詐騙的相關議題。
    當提到程式和代寫,多數人可能會立刻想到學生尋找代寫作業的情境,或者是專業人士為某一專案尋找代寫程式的服務。不過,當你真正涉入這個領域,你會驚訝地發現:程式代寫的價格範圍實在是天差地遠,從幾百到數十萬都有。但是,為什麼會有如此大的價差呢?
    如果自行撰寫應用後端,光是使用者管理就是挺麻煩的一件事。筆者之前撰寫Fastapi+OAuth+database就花上不少時間。Bubble.io可以則可以快速完成登入機制 此外,我們也可以搭配OAuth,允許使用者使用第三方登入,這樣甚至可以不用在Bubble應用中,處理reset passwo
    Bubble簡單歸簡單,但遇到想要更大的自由度的時候,處理起來的複雜度可不比自架來的好處理,雖然Bubble有強大的Plugin支援,但如果你很窮、沒有免費好用的Plugin,或是功能太冷門,只好自己寫囉。
    AWS Lambda是? AWS Lambda 就像是開發者的救星,因為它是一種 Serverless 服務,意思是你不用再為架設和維護伺服器煩惱了。對於每天都忙得焦頭爛額的開發者來說,產品開發已經夠讓人抓狂了,還要處理伺服器的設定和維運(e.g. OS、Network、機器管理、防火牆),想想就
    在這系列文章中,將會深入淺出介紹,如何整合下列工具,快速建立你的AI線上應用 Bubble.io 主網站及伺服器 AWS - Lambda: 快速架設簡單邏輯的API,寫個小小的python function立刻就上線,不需要大費周章額外架backend - S3: 提供檔案存取,可透過Pr
    隨著科技的發展,程式代寫已成為一個快速增長的市場。從簡單的程式到複雜的專案開發,程式代寫的範圍極為廣泛。這篇文章討論了選擇代寫服務的原因以及一元賣場詐騙的相關議題。
    當提到程式和代寫,多數人可能會立刻想到學生尋找代寫作業的情境,或者是專業人士為某一專案尋找代寫程式的服務。不過,當你真正涉入這個領域,你會驚訝地發現:程式代寫的價格範圍實在是天差地遠,從幾百到數十萬都有。但是,為什麼會有如此大的價差呢?
    你可能也想看
    Google News 追蹤
    Thumbnail
    這個秋,Chill 嗨嗨!穿搭美美去賞楓,裝備款款去露營⋯⋯你的秋天怎麼過?秋日 To Do List 等你分享! 秋季全站徵文,我們準備了五個創作主題,參賽還有機會獲得「火烤兩用鍋」,一起來看看如何參加吧~
    Thumbnail
    美國總統大選只剩下三天, 我們觀察一整週民調與金融市場的變化(包含賭局), 到本週五下午3:00前為止, 誰是美國總統幾乎大概可以猜到60-70%的機率, 本篇文章就是以大選結局為主軸來討論近期甚至到未來四年美股可能的改變
    Thumbnail
    Faker昨天真的太扯了,中國主播王多多點評的話更是精妙,分享給各位 王多多的點評 「Faker是我們的處境,他是LPL永遠繞不開的一個人和話題,所以我們特別渴望在決賽跟他相遇,去直面我們的處境。 我們曾經稱他為最高的山,最長的河,以為山海就是盡頭,可是Faker用他28歲的年齡...
    Thumbnail
    我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 以下提供範例說明 BLEU 怎麼使用: #Example 1 reference = [['the', 'cat', 'likes', 'milk'], ['cat
    我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 總結一下目前有的素材: AI說書 - 從0開始 - 103:資料集載入 AI說書 - 從0開始 - 104:定義資料清洗的函數 AI說書 - 從0開始 - 105
    Thumbnail
    我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 以下陳述任務 (Task)、模型 (Model)、微調 (Fine-Tuning)、GLUE (General Language Understanding Evalu
    Thumbnail
    我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 延續 AI說書 - 從0開始 - 86 提及 SuperGLUE 任務清單,當中會包含以下欄位: 名稱 (Name):經過微調的預訓練模型的下游任務的名稱 標識符
    Thumbnail
    我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 延續xxxx,ChatGPT 產生的程式,我們將它匯入 Colab 執行看看 ( Colab 使用教學見 使用Meta釋出的模型,實作Chat GPT - Part 0
    Thumbnail
    我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 先做個總回顧: Transformer 架構總覽:AI說書 - 從0開始 - 39 Attention 意圖說明:AI說書 - 從0開始 - 40 Transfo
    我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 這裡做 Embedding 與 Postional Encoding 的邏輯梳理與結論: Embedding 訓練方式:AI說書 - 從0開始 - 43 Embed
    Thumbnail
    我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 延續AI說書 - 從0開始 - 44說完 Embedding ,下一步就是闡述 Positional Embedding,其於原始 Transformer 架構中的角色
    Thumbnail
    創作邦創作邦精選工具資源-第 31 期,我們每週分享創作邦精選的工具資源合集,從設計資源、AI 工具、生產力工具、影像後製等等內容都涵蓋,如果你想找好用資源或工具,追蹤我們的內容準沒錯。
    Thumbnail
    這個秋,Chill 嗨嗨!穿搭美美去賞楓,裝備款款去露營⋯⋯你的秋天怎麼過?秋日 To Do List 等你分享! 秋季全站徵文,我們準備了五個創作主題,參賽還有機會獲得「火烤兩用鍋」,一起來看看如何參加吧~
    Thumbnail
    美國總統大選只剩下三天, 我們觀察一整週民調與金融市場的變化(包含賭局), 到本週五下午3:00前為止, 誰是美國總統幾乎大概可以猜到60-70%的機率, 本篇文章就是以大選結局為主軸來討論近期甚至到未來四年美股可能的改變
    Thumbnail
    Faker昨天真的太扯了,中國主播王多多點評的話更是精妙,分享給各位 王多多的點評 「Faker是我們的處境,他是LPL永遠繞不開的一個人和話題,所以我們特別渴望在決賽跟他相遇,去直面我們的處境。 我們曾經稱他為最高的山,最長的河,以為山海就是盡頭,可是Faker用他28歲的年齡...
    Thumbnail
    我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 以下提供範例說明 BLEU 怎麼使用: #Example 1 reference = [['the', 'cat', 'likes', 'milk'], ['cat
    我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 總結一下目前有的素材: AI說書 - 從0開始 - 103:資料集載入 AI說書 - 從0開始 - 104:定義資料清洗的函數 AI說書 - 從0開始 - 105
    Thumbnail
    我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 以下陳述任務 (Task)、模型 (Model)、微調 (Fine-Tuning)、GLUE (General Language Understanding Evalu
    Thumbnail
    我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 延續 AI說書 - 從0開始 - 86 提及 SuperGLUE 任務清單,當中會包含以下欄位: 名稱 (Name):經過微調的預訓練模型的下游任務的名稱 標識符
    Thumbnail
    我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 延續xxxx,ChatGPT 產生的程式,我們將它匯入 Colab 執行看看 ( Colab 使用教學見 使用Meta釋出的模型,實作Chat GPT - Part 0
    Thumbnail
    我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 先做個總回顧: Transformer 架構總覽:AI說書 - 從0開始 - 39 Attention 意圖說明:AI說書 - 從0開始 - 40 Transfo
    我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 這裡做 Embedding 與 Postional Encoding 的邏輯梳理與結論: Embedding 訓練方式:AI說書 - 從0開始 - 43 Embed
    Thumbnail
    我想要一天分享一點「LLM從底層堆疊的技術」,並且每篇文章長度控制在三分鐘以內,讓大家不會壓力太大,但是又能夠每天成長一點。 延續AI說書 - 從0開始 - 44說完 Embedding ,下一步就是闡述 Positional Embedding,其於原始 Transformer 架構中的角色
    Thumbnail
    創作邦創作邦精選工具資源-第 31 期,我們每週分享創作邦精選的工具資源合集,從設計資源、AI 工具、生產力工具、影像後製等等內容都涵蓋,如果你想找好用資源或工具,追蹤我們的內容準沒錯。