運用 Azure OpenAI 服務打造聰明的 LINE 聊天機器人—實作教學
Cute Tiny Hyperrealistic Anime Cat
厭煩聊天機器人刻板的回答了嗎? 透過 ChatGPT,我們能夠輕易地打造出非常擬人的聊天機器人,陪伴你聊天討論各種話題!
與以往不同的是,我們這次要使用 Microsoft Azure 平台的 Azure OpenAI Service (AOAI),利用雲端平台便利性,讓企業能更方便地結合其他服務,建立出更安全、更穩定的聊天機器人。
要在LINE上部署一個聊天機器人,大致上可以分為三個階段:資料準備階段、部署階段以及測試階段。
接下來,我會為各個階段做更詳細的解說,如同拼圖一般,我們將一步步將各個片段拼湊出完整的作品!
本次示範的程式碼可以在下列網址中取得:
資料準備階段
要建立 LINE 的聊天機器人我們需要準備幾項材料,包括:
- Azure OpenAI Service
- 金鑰(Key)
- 服務端點 (Endpoint)
- 金鑰(Key)
- GitHub 帳號
- 建立一個新的專案庫(Repository)
- LINE Developer 帳號
- 頻道密鑰(Channel secret)
- 頻道存取令牌(Channel access token)
- Vercel 帳號
- 建立一個新的專案(project)
Azure OpenAI Service (AOAI)
在 Azure 帳號中建立 AOAI 服務,並在 AOAI Studio 中部署 gpt-35-turbo
模型 ( 建議部署名稱與模型名稱設為相同)。
建立完成後回到該服務,點選左側的 “Keys and Endpoint”。
將 KEY 值及 Endpoint 值複製下來,並暫存至一個文件檔中,以便後續使用。
GitHub 帳號
至 https://github.com/ 建立自己的帳號。
設定好專案庫名稱後,點擊 “Create New Repository”。
然後將本地的 “index.py” 及 “vercel.json” 兩個文件提交到新建立的專案庫中。
git remote add origin <https://github.com/jazzpujols34/Weblink-line-chatbot.git
>
確保所有文件已成功推送到你剛建立的專案庫。
LINE Developer 帳號
在 https://developers.line.biz/en/ 建立新帳號,或是將平時所使用的 LINE 帳號與此平台連結。
建立一個新的供應者(Provider),並設立一個新的 Messaging API 頻道。設定完成基本資料後,點擊 “Create”。
建立一個新的 Messaging API Channel,設定完基本資料後按下建立
在新建的頻道 > Basic Settings 處獲取 Channel Secret。
同樣地,也在新建的頻道 > Messaging API 處獲取 Channel Access Token。
將剛取得的 Channel Secret 和 Channel Access Token 存放在與 AOAI 資料相同的文件檔中,方便後續使用。
Vercel 帳號
在 https://vercel.com/dashboard 建立新帳號。
部署階段
Vercel
建立一個新的 Project,並將 Github 上的新建專案庫導入。將先前保存的資料輸入至環境變數中,然後點擊 “Deploy”。
Import 在Github上新建立的 Repository
將文件檔中的資料輸入到環境變數中,完成後按下 Deploy
如果部署成功,Status 將會顯示為 “Ready”。你可以點擊頁面並複製該網址。
LINE Developer
回到 LINE Developer,點選 Channel > Messaging API,將剛取得的網址粘貼到 Webhook URL,並在網址後方加上 /callback。
按下Verify 並取得 「Success」的字樣確認部署成功,打開 Use webhook 的選項
至此,LINE聊天機器人的部署基本上就完成了。
測試階段
掃描位於 Channel > Messaging API 的 QR code 加好友,然後就可以加他為好友並開始與他聊天!
背景圖片、加好友按鍵顏色都可以在 LINE Official Account Manager 做變更。
由於我們設置了 max_token
的數量,如果回答太長,可以輸入「繼續」讓他接續前面的回答。
額外加碼
在這次的示範中,我將聊天機器人設定為「說中文的貓咪專家」,但只要透過更改程式碼中的「角色」設定,就可以將聊天機器人變成你所希望的任何角色!
很厲害
版主好,之前按照本篇步驟,有成功打造出GPT的line bot應用。近期重新佈署時,採用完全一樣的步驟,發現在vercel 那端,輸入4筆參數後,驗證時出現500: INTERNAL_SERVER_ERROR,請教解法 (或有否有電子郵件可以交流討論),謝謝
Hi gu,
歡迎寫信至: kuanchieh.lien@weblink.com.tw
希望能為您解決問題。