從零打造屬於自己的 RAG-based LLM Line Bot 系列(五):將 Line Bot 發佈到 Heroku

Kaishen Tseng
Feb 17, 2024

--

在這個系列文章中(預計會有五篇),我會分享如何從頭開始開發一個 RAG-based 的 Line Bot,包含

  1. 介紹與規格
  2. 系統架構與事前準備
  3. 用於 RAG 的資料準備與處理
  4. RAG-based LLM Line Bot 開發
  5. 將 Line Bot 發佈到 Heroku(此篇)

目錄

前言

在上一篇文章 RAG-based LLM Line Bot 開發,分享了兩個選項來開發聊天機器人的介面,一個 Streamlit,另一個是 Line。

由於 Streamlit 官方已經有提供教學文件,基本上就是程式放到 Github 上,然後在官網點幾下,選擇進入點,就會進入發布程序。

而 Line Bot 的部分,過程也很容易,網路上也很多資源,不過為求整個系列的完整性,所以還是特此開一篇來記錄。

大部分的資源都是從Python + Line bot 從頭開始建立一個 Line 機器人,部署到 Heroku!而來,我幾乎就只是照著做然後順手把截圖截一截。

完整程式碼

ask-me-parenting-app

Heroku 設定

建立一個新的 App

取個名字

Deployment method

選擇和 GitHub 連接發布

連接後的結果

Enable Automatic Deploys

選了比較方便,只要 push code 就會自動部署

因為程式碼都已經在 GitHub 上,所以第一次先選擇手動部署。

設定環境變數

以下是附上 repo 中會用到的 env vars

Webhook 設定

找到在 Settings → Domains 中的 URL

回到 Line Developer 把 URL 加上 callback 並貼上(Messaging API → Webhook settings → Webhook URL)

這樣應該就可以順利和 Line Bot 溝通了!

範例影片

以下利用一段影片來呈現如何和 App 互動。

Demo

小結

此篇為這個系列的最後一篇,介紹如何使用 Heroku 發布屬於自己的 Line Bot,除此之外也附上了完整的程式碼以供參考。

總結

終於迎來完結!這次的文章,不僅是我初次嘗試開發自己應用程式,更是將這段過程整理成文章分享的首次嘗試。透過這個過程,我以解決問題的方式學習了 LLM 的應用,這不僅提供我動力來完成專案,也讓我的學習更為豐富了一些。

我盡量將每一個開發的階段、遭遇的挑戰,以及最後的成果都呈現在這一系列的文章。希望這個分享能讓大家對 LLM 開發有出淺的了解,或者給有相似興趣的讀者一些啟發。

總之,這篇文章是我在學習過程中的一個重要階段,把我自己摸索的點點滴滴都分享出來。希望這些經驗能對讀者在程式開發的路上有所幫助,感謝你花時間讀我分享的內容!

我們下次見!

--

--