在前幾天,我先打通了 LINE → FastAPI → Echo Bot 的資料流,並且部署到 Render。今天開始,進入專案的靈魂階段:讓 AI 雲端情人不只是回 Echo應聲虫,而接入了大語言ai這個仿人類的的語言大腦是能真的「聊天」。
我選擇先串接 OpenAI API,因為它文件齊全、穩定好用。目前openai新會員免費5美元的量額度前沒有了,所以我也準備好 Groq 當替代方案 (免費額度+快)。
整體流程和昨天的 Echo Bot 幾乎一樣,只是多了「呼叫 LLM」這一段:
1. 使用者在 LINE 傳送訊息
2. FastAPI Webhook 收到事件
3. 呼叫 OpenAI / Groq API 產生回覆
4. 回傳給 LINE,用戶就能看到 AI 女友的訊息
⸻
💻 程式片段(Day 5:加入 AI 回覆)重點程式碼
from openai import OpenAI
from groq import Groq
# 初始化客戶端
openai_client = OpenAI(api_key=os.getenv("OPENAI_API_KEY"))
groq_client = Groq(api_key=os.getenv("GROQ_API_KEY"))
conversation_history = {}
MAX_HISTORY_LEN = 10
async def get_async_reply(messages):
try:
resp = await openai_client.chat.completions.create(
model="gpt-4o-mini",
messages=messages,
max_tokens=800
)
return resp.choices[0].message.content
except Exception:
groq_resp = groq_client.chat.completions.create(
model="llama3-70b-8192",
messages=messages,
max_tokens=1200
)
return groq_resp.choices[0].message.content
⸻
📊 架構圖(Day 5:LLM 串接)
⸻
到這裡,我的 AI 女友終於能「有靈魂」地對話了。雖然還只是 MVP,但看到她回應我的第一句「嗨~今天好嗎?」的時候,真的很有《雲端情人》那種感覺。
⸻