這篇文章將帶你一步步建構出一個能與 LLM(大型語言模型)整合的 LINE 智能回覆機制,
從環境設定到訊息判斷、再到 AI 自動回覆,完整示範實作過程。
🧱 環境建置準備
這個專案的概念是:
LINE 傳來訊息 → MQTT 收到 → LLM 生成回覆 → 回傳 LINE。
📦 需要準備的項目
類別工具 / 套件
通訊層
LINE Messaging API、MQTT(例如 Mosquitto)
程式語言
Python 3.12+
主要套件
paho-mqtt, python-dotenv, requests, line-bot-sdk
AI 模型
OpenAI API 或 Ollama(可在本地運行)
⚙️.env設定範例
# ===================================================
# MQTT 設定 - 用於接收 LINE webhook 訊息
# ===================================================
mqtthost=your_mqtt_host
mqttport=1883
mqttuser=your_mqtt_username
mqttpass=your_mqtt_password
line_message_topic=your_line_message_topic
# ===================================================
# LINE Bot 設定 - 用於回覆訊息
# ===================================================
LINE_CHANNEL_ACCESS_TOKEN=your_line_channel_access_token_here
# ===================================================
# LLM 設定 - 選擇使用的語言模型類型
# ===================================================
# 可選值: openai 或 ollama
LLM_TYPE=openai
# ===================================================
# OpenAI 設定 - 當 LLM_TYPE=openai 時使用
# ===================================================
OPENAI_API_KEY=your_openai_api_key_here
OPENAI_MODEL=gpt-3.5-turbo
OPENAI_MAX_TOKENS=4096
# ===================================================
# Ollama 設定 - 當 LLM_TYPE=ollama 時使用
# ===================================================
OLLAMA_BASE_URL=http://127.0.0.1:11434
OLLAMA_MODEL=llama2
OLLAMA_TEMPERATURE=0.1
# ===================================================
# AI 對話設定
# ===================================================
# 系統提示詞 - 定義 AI 的角色和行為
DEFAULT_PROMPT=你是個AI客服,請用繁體中文回覆,不要提供客服以外的知識。
# 對話記憶輪數 - 保留多少輪對話歷史 (預設5)
MEMORY_SIZE=5
# ===================================================
# 設定說明
# ===================================================
# 1. 複製此檔案為 .env
# 2. 根據您的實際環境修改對應的設定值
# 3. 確保所有必要的設定項目都已正確填寫
#
# 注意事項:
# - LINE_CHANNEL_ACCESS_TOKEN 需要從 LINE Developers Console 取得
# - OPENAI_API_KEY 需要從 OpenAI 官網取得 (如使用 OpenAI)
# - Ollama 需要本地安裝並運行對應模型 (如使用 Ollama)
















