使用 MakerSuite 利用 PaLM(Bard) API 整理氣象open data (JSON格式) 成為一則預報
既 MakerSuite & PaLM API 開箱
眾所周知 Bard 就是 Google 所推出為了力抗 ChatGPT 的 LLMs , 隨著產品線不斷地補上,之余 ChatGPT API , 日前也推出了 PaLM API ,雖然大部份申請者只能在 waitlist 中等待,但筆者因為 GDE 的身份,也是首波開放名單之內,所以實作一個簡單的應用,讓大家可以體驗看看和 ChatGPT API 有什麼不同。
演練目標
利用 PaLM(Bard) API 整理氣象 open data (JSON格式) 成為一則氣象預報
- say hello to MakerSuite & PaLM (Bard) API
- call weather API 獲得天氣 json 後 送至 PaLM API 整理成氣象報告
教學步驟
事前準備
- 有 PaLM API and MakerSuite 的權限,未有權限只先加入 waitlist。
- 氣象 open data 存取
say hello to MakerSuite
為什麼是 say hello 目前還只能支援英文(2023.08.30)
2. 如果有權限的話會看到這個畫面, 分成三個部分, 點旁邊的鑰匙圖示,拿 API KEY
API KEY
2. 點 Create API key in new project
3. 複製好 API key
Text prompt
- 從 Text prompt (A freeform way to experiment with language modelsCreate) 開始
- 點 Create
3. MakerSuite 有提供一些 sample prompts ,但我直接輸入 hello 按 Run
4. 他就自動幫你生成出 world! , 可以感覺的出來,被餵了很多的程式碼。
PaLM (Bard) API
1. 直接點 右上 的 Get Code 就可以獲得程式碼。
2. 直接點 Copy 就能複製程式碼。
3. 依照你自己的習慣在本地端開啟一個程式專案, 記得替換成你的API Key。
4. 呼叫 API 後, 可以看到吐回來的 “output” 參數為 “to everyone” 。 也就是PaLM API 接續這 “hello”
call weather API 獲得天氣 json 後 送至 PaLM API 整理成 氣象報告
呼叫 weather API 會獲得天氣 json。
{
"lat": 52.2297,
"lon": 21.0122,
"timezone": "Europe/Warsaw",
"timezone_offset": 3600,
"data": [
{
"dt": 1645888976,
"sunrise": 1645853361,
"sunset": 1645891727,
"temp": 279.13,
"feels_like": 276.44,
"pressure": 1029,
"humidity": 64,
"dew_point": 272.88,
"uvi": 0.06,
"clouds": 0,
"visibility": 10000,
"wind_speed": 3.6,
"wind_deg": 340,
"weather": [
{
"id": 800,
"main": "Clear",
"description": "clear sky",
"icon": "01d"
}
]
}
]
}
Bard 是可以直接讀懂
這裡我們就可以直接將 JSON 到給 PaLM API 就能獲得一篇氣象預報, 省去自己整理的功夫。
- 將 promptString 參數改為:
# input
{
"lat": 52.2297,
"lon": 21.0122,
"timezone": "Europe/Warsaw",
"timezone_offset": 3600,
"data": [
{
"dt": 1645888976,
"sunrise": 1645853361,
"sunset": 1645891727,
"temp": 279.13,
"feels_like": 276.44,
"pressure": 1029,
"humidity": 64,
"dew_point": 272.88,
"uvi": 0.06,
"clouds": 0,
"visibility": 10000,
"wind_speed": 3.6,
"wind_deg": 340,
"weather": [
{
"id": 800,
"main": "Clear",
"description": "clear sky",
"icon": "01d"
}
]
}
]
}
# output
- make a forecast article
2. 呼叫後得到氣象預報。
結語
- PaLM API 目前免費(2023.08.30)
- 筆者有試著用中央氣象局的opendata ,但可能太多無用 data , Bard 雖然可以正確輸出,但 PaLM API 無法。
在剛推出免費的優勢之下, 如果能夠掌握到和 Bard 互動 Prompt 的技巧的話,應該是可以吸引到開發者去開發, 因為 ChatGPT API Tokens 真的很花錢。
最後📅,有本📖 關於和 LLMs 互動 (prompt)🤖的新書熱銷中🔥。
剛提到如何掌握到 prompt 技巧是和 LLMs 互動之中, 相當重要的。
這裡有本以 prompt 📜 + 運算思維🧠 為角度的書推薦給你~
本書📖 3 個重點:
- ✔ 專注於 問題/需求 💭 的確認
- ✔ 利用運算思維💡拆解問題及需求🧩
- ✔ 藉由詠唱🎤 prompt 進行 AI🤖 人機協作🤝
Google Devfest 季 來臨,我們一起探索🔍與學習📚
Google DevFest,即Google開發者節,是由Google開發者群體主辦的全球性技術會議,旨在分享最新的Google技術和開源技術知識,並提供開發者交流合作的機會。2023 講座 紀錄
我將參加以下活動🎉,期待與你🙋見面🤝,聊聊 GenAI 與聊天機器人的架構。
與 Bard AI 協作教學
- 11/18 Devfest Hongkong 香港專業教育學院(李惠利)線上出席
如何使用 MarkerSuite & PaLM API 搭配 Cloud Function 建置 Generative AI 聊天機器人 (LINE Bot) 和 Bard 協作程式碼,並使用 IDX 開發
比較 Vertex AI 的 Generation Studio 裡的 Language Model 與 Vertex AI Search & Conversation (前身 App Builder) 連動 Dialogflow CX 及 PaLM API 和 C 牌 API
- 11/19 DevFest Taoyuan 2023 中壢青創指揮部
- 11/25 DevFest Kaohsiung 2023 DAKUO高雄市數位內容創意中心
- 12/2 DevFest Changhua 2023 彰化鐵路醫院(高賓閣)
在離開之前,記得給本📰Medium點讚👍、訂閱📩,並分享給您的朋友!