我希望我打開 LINE 看到新聞之後,就算我對某些新聞沒興趣、不想點進去看,也可以透過 AI 幫我摘要的內容,讓我大致了解世界正在發生的事。
如此一來,就算我沒有閱讀那則新聞的詳細內容,也不致於完全不知道有那件事的發生。
一種「有總比沒有好」的想法 (?
我有想過用 OpenAI 的 ChatGPT,或是透過 OpenRouter 使用裡面的 AI 模型,想了很多種方法後,
最後選擇 Google 的 Gemini 作為我此次新聞摘要的工具。
下面來分享一下我在抉擇其他 AI 工具時的想法:
每個 AI 模型在使用上各有利弊,取決於你要拿來做什麼事情,不同領域的工作有不同的需求。
綜合下來,我最後選擇使用「Gemini 1.5 Flash 免費版」作為我此次的摘要工具!
選好工具後,就要開始動手啦~ 接下來會一步步帶你申請 Gemini 的 API Key,並說明怎麼在 n8n 裡完成認證設定。
(記得要先登入你自己的 Google 帳號)
AIza...
)(不要給別人知道喔!)x-goog-api-key
(HTTP 協定中,伺服器用來識別和驗證身份的指定鍵)你複製的那串key
回到主頁看到有這樣一條憑證就代表你設定成功了!
在 Code
後面新增一個節點 HTTP Request
Post
https://generativelanguage.googleapis.com/v1beta/models/gemini-1.5-flash:generateContent
(Google Gemini API 的官方端點)Generic Credential Type
Header Auth
(我們剛剛設定的憑證)Header Auth account
(你可以點進欄位右邊筆的圖示,看看裡面是不是你剛剛創的憑證)Using Fields Below
Content-Type
application/json
JSON
Using JSON
{
"contents": [
{
"parts": [
{
"text": "你是一位新聞編輯,請用不超過40字的中文摘要下面的新聞內容,簡潔、口語化,適合用在 LINE 推播。\n {{ $json.fullContent }}"
}
]
}
]
}
上面的程式碼符合 Gemini API 的 JSON 格式要求(下圖)
此時你如果按下執行鍵,會看到右邊的 output 寫著與下圖類似的內容,這是正常的!因為現在程式碼裡面的 {{ $json.fullContent }}
是空的,我們還沒抓新聞全文,所以它沒辦法做摘要。
順便提醒一下,{{ $json.fullContent }}
要記得寫在 " "
內,我一開始沒注意到,所以後面在跑的時候出現錯誤,沒有抓到文章。
今天你成功做到與 Gemini 連結了,之後我們會再增加其他節點,讓 AI 能真正取得新聞全文做摘要。
明天(Day 6) 我會先介紹 HTML的格式,因為我們需要將新聞以 HTML 的樣子抓下來,下一步我們就要來取得新聞網頁的「完整 HTML 內容」,接著讓 AI 真正看懂一篇新聞,期待一下吧!