2026 年免費 AI Discord Bot

Jakub Swistak
發布日期 更新日期 閱讀時間約 11 分鐘
免費 AI Discord bot:免費方案、訊息限制、模型控制與自架

如果你搜尋「free AI Discord bot」,會找到數十種選項。有些確實免費。多數不是,至少不是你可能預期的那種免費。本文拆解實際上有哪些可用選項、取捨是什麼,以及在涉及 AI 推論時,「免費」真正的成本是什麼。

為什麼「免費 AI」很複雜

執行 LLM 需要成本。每次使用者傳送訊息並取得回覆時,都有人在支付運算費用。對 OpenAI 或 Anthropic 這類託管 API 來說,你按 token 付費。對自架模型來說,你支付的是硬體、電力與維護時間。這一點無法規避:推論有非零的邊際成本。

當一項服務提供「免費 AI bot」時,以下其中一種情況成立:

  1. 你直接支付推論成本,例如提供自己的 API 金鑰。
  2. 服務吸收成本,並透過付費級距、廣告或資料收集回收成本。
  3. 你在自己的硬體上自行執行推論,使用開源模型。
  4. 免費級距受到限制,用低用量上限限制供應商暴露在運算成本下的風險。

理解任一 bot 屬於哪一種情況,是評估它是否真的適合你的使用情境的關鍵。

免費 AI Discord bot 的三種類型

1. 自架開源 bot(真正免費,你提供硬體)

這是唯一沒有第三方控制你使用量上限的選項。你在本機(或 VPS)執行開源 LLM,透過你自己撰寫或 fork 的 bot 連接 Discord,並自行處理所有事情。

典型技術堆疊:

  • Ollama 用於本機模型服務
  • discord.py 或 discord.js 用於 Discord bot
  • Llama 3.1 8B、Mistral 7B 或 Gemma 2 9B 這類模型

你會得到:

  • 除電力外,沒有逐訊息成本
  • 完全控制模型、系統 prompt 與資料
  • 沒有第三方施加的速率限制(僅適用 Discord 自身的 API 限制)
  • 本機模型處理:推論留在你的機器上,而 Discord 仍會傳輸並儲存訊息

你會放棄:

  • 你需要硬體。要以合理速度執行 7B 參數模型,需要至少 8 GB VRAM 的 GPU,或具備統一記憶體的現代 Mac。CPU 推論可行但速度慢(7B 模型每次回覆需要數秒)。
  • 你要維護基礎架構。更新、重新啟動、監控,以及模型權重所需的磁碟空間都由你負責。
  • 模型品質低於前沿模型。Llama 3.1 8B 有一定能力,但不是 GPT-4o 或 Claude Sonnet。對簡單問答與閒聊來說表現可以。對細緻推理或複雜多輪對話來說則不足。
  • 沒有內建知識庫、分析或轉接功能。你需要什麼就要自己建置。

常見模型的最低硬體需求:

ModelParametersVRAM RequiredCPU RAM (CPU-only)Response Speed (GPU)
Gemma 2 2B2B~2 GB~4 GB~60 tokens/sec
Llama 3.1 8B8B~6 GB~10 GB~40 tokens/sec
Mistral 7B7B~6 GB~10 GB~40 tokens/sec
Llama 3.1 70B (Q4)70B~40 GB~48 GB~15 tokens/sec

(速度為約略值,使用 RTX 4090 測得。量化版本使用較少記憶體,但會有小幅品質成本。)

2. 免費增值的託管服務(有上限的免費級距)

這類產品由其他人託管 AI 與 bot 基礎架構。你透過網頁儀表板設定 bot。免費級距提供有限用量;更多用量需要付費。

範例:

ServiceFree TierMessage LimitModel ControlDiscord SupportCredit Card Required
Quickchat AIFree planIncluded usage varies by planProvider-managed (frontier models)Yes (all tiers)No
MEE6Free planAI features in premium onlyProvider-managedYesNo (for free tier)
BotpressFree tier2,000 incoming messages/moConfigurableVia integrationNo

Quickchat AI 的 Free plan 可讓你在不需要信用卡的情況下測試。Discord 整合在每個級距都可用,因此你可以連接 bot,並在承諾付費前讓真實使用者測試。連接只需按一下:在 External Apps 中開啟 Discord,點選 Add to your Discord server,然後選擇要新增的伺服器。付費方案從 Starter 的 $9/mo 起,或年繳 $8/mo。

託管服務的主要優勢是,你取得的不只是原始 LLM 推論:由你的文件與網站建立的知識庫、對話分析(情緒分析、主題偵測)、多通道部署(同一個 agent 可在你的網站、WhatsApp、Slack 與 Discord 上運作),以及 AI 無法解決案例時的人員轉接。若在自架模型上從零建置這些功能,會是一項相當大的工程專案。

MEE6 主要是管理與互動 bot。它的 AI chat 功能鎖在 premium 訂閱後方(截至 2026 年初為 $11.99/mo)。免費級距涵蓋等級、基本管理指令與歡迎訊息,但不包含 AI 驅動的對話。

Botpress 有免費級距,每月可在所有通道合計接收 2,000 則 incoming messages。它提供視覺化流程建構器,並支援自訂 LLM 設定。不過,若只是建立簡單 Discord bot,設定會比 Quickchat 更複雜,因為 Botpress 主要設計目標是結構化對話流程,而不是開放式聊天。

3. BYO API key bot(你支付 LLM 供應商費用)

第三種類型:在伺服器上執行的開源 bot,但會呼叫商業 API(OpenAI、Anthropic、Google 等)進行推論。你提供自己的 API 金鑰。bot 程式碼本身免費,但你按 token 向模型供應商付費。

GitHub 上的範例:

  • GPT Discord Bot(OpenAI 官方範例)
  • 使用 discord.py + OpenAI Python SDK 建置的各種社群 bot

使用商業 API 的每則訊息成本(約略值,截至 2026 年初):

ModelInput Cost (per 1M tokens)Output Cost (per 1M tokens)~Cost per Message*
GPT-4o mini$0.15$0.60~$0.0003
GPT-4o$2.50$10.00~$0.005
Claude 3.5 Haiku$0.80$4.00~$0.002
Claude Sonnet 4$3.00$15.00~$0.007
Gemini 2.0 Flash$0.10$0.40~$0.0002

*假設每次訊息交換約有 ~500 個輸入 token 與 ~200 個輸出 token,且不包含對話歷史。若包含對話歷史,輸入成本會隨 context 長度線性增加。

使用 GPT-4o mini 時,每月 1,000 則訊息約花費 $0.30。每月 10,000 則訊息約花費 $3.00。這些數字看起來很小,直到你把對話歷史納入考量:如果每則訊息都包含完整對話 context(例如前 10 輪),每則訊息的輸入 token 數會從 ~500 膨脹到 ~5,000,因此輸入成本上升 10 倍,總成本也會增加。

各方法的成本比較

下表估算不同訊息量下的每月成本。「Self-hosted」假設使用小型 VPS 或既有硬體。「BYO API Key」使用 GPT-4o mini 定價。「Managed」以 Quickchat AI 的定價作為參考。

Monthly MessagesSelf-Hosted (Ollama + VPS)BYO API Key (GPT-4o mini)Managed (Quickchat AI)
100~$5-20 (VPS cost)~$0.03Free plan or Starter at $9/mo
1,000~$5-20 (VPS cost)~$0.30-3.00Starter at $9/mo or Basic at $29/mo
5,000~$15-40 (VPS cost)~$1.50-15.00Essential at $99/mo or Professional at $299/mo
10,000~$30-80 (VPS cost)~$3.00-30.00Professional at $299/mo or Business at $999/mo
35,000~$60-150 (VPS cost)~$10.50-105.00Business at $999/mo or Enterprise from $0.50/resolution

關於 self-hosted 欄位的說明:範圍取決於你使用的是僅 CPU 的 VPS(較便宜但回覆較慢),還是 GPU instance。Hetzner 提供約 $5-10/mo 的 CPU VPS instance,可執行量化 7B 模型,但回覆時間會是 5-15 秒。GPU 雲端 instance(例如 Lambda、RunPod 或 Vast.ai)單 GPU 起價約 $0.20-0.50/hr,若 24/7 執行,相當於 $150-360/mo。若是間歇使用,spot instance 或 serverless GPU 供應商可以降低成本。

BYO API key 欄位顯示範圍,因為成本高度取決於你是否在每次請求中包含對話歷史。下限是單輪(無歷史),上限是包含約 10 則訊息 context 的多輪。

託管服務欄位反映 Quickchat 截至 2026 年 6 月的定價。這些方案包含知識庫管理、分析與多通道支援等功能,而另外兩種方法若不投入額外工程工作,並不具備這些功能。

快速自架設定:Python + discord.py + Ollama

以下是一個最小可運作的 Discord bot 範例,使用 Ollama 進行本機推論。這需要先安裝並執行 Ollama,並拉取模型(例如 ollama pull llama3.1:8b)。

先決條件

  1. Python 3.10+
  2. 已安裝並執行 Ollama(curl -fsSL https://ollama.com/install.sh | sh)
  3. 已拉取模型:ollama pull llama3.1:8b
  4. Discord bot token(在 Discord Developer Portal 建立)
  5. bot 已加入你的伺服器,並具備 Send Messages 與 Read Message History 權限

安裝相依套件

pip install discord.py aiohttp

Bot 程式碼

import discord
import aiohttp
import json

DISCORD_TOKEN = "your-bot-token-here"
OLLAMA_URL = "http://localhost:11434/api/chat"
MODEL = "llama3.1:8b"
SYSTEM_PROMPT = "你是 Discord 伺服器中的實用助理。回覆請保持精簡。"

# Store conversation history per channel (in-memory, resets on restart)
conversations: dict[int, list[dict]] = {}
MAX_HISTORY = 10  # Keep last 10 messages per channel

intents = discord.Intents.default()
intents.message_content = True
client = discord.Client(intents=intents)


async def query_ollama(channel_id: int, user_message: str) -> str:
    """Send a message to Ollama and return the response."""
    if channel_id not in conversations:
        conversations[channel_id] = []

    conversations[channel_id].append({"role": "user", "content": user_message})

    # Trim history to avoid unbounded memory growth
    if len(conversations[channel_id]) > MAX_HISTORY:
        conversations[channel_id] = conversations[channel_id][-MAX_HISTORY:]

    messages = [{"role": "system", "content": SYSTEM_PROMPT}] + conversations[channel_id]

    payload = {
        "model": MODEL,
        "messages": messages,
        "stream": False,
    }

    async with aiohttp.ClientSession() as session:
        async with session.post(OLLAMA_URL, json=payload) as resp:
            if resp.status != 200:
                return f"Ollama returned status {resp.status}"
            data = await resp.json()
            reply = data["message"]["content"]

    conversations[channel_id].append({"role": "assistant", "content": reply})
    return reply


@client.event
async def on_ready():
    print(f"Logged in as {client.user}")


@client.event
async def on_message(message: discord.Message):
    # Ignore own messages
    if message.author == client.user:
        return

    # Only respond when mentioned
    if client.user not in message.mentions:
        return

    # Strip the mention from the message
    content = message.content.replace(f"<@{client.user.id}>", "").strip()
    if not content:
        return

    async with message.channel.typing():
        reply = await query_ollama(message.channel.id, content)

    # Discord has a 2000-character limit per message
    if len(reply) > 2000:
        for i in range(0, len(reply), 2000):
            await message.reply(reply[i:i+2000])
    else:
        await message.reply(reply)


client.run(DISCORD_TOKEN)

這大約是 60 行程式碼,會給你一個可運作的 AI bot,在被提及時回覆。它在記憶體中維護每個頻道的對話歷史(重新啟動時遺失),並處理 Discord 每則訊息 2,000 字元的限制。

這個最小 bot 缺少什麼

以上程式碼適合測試與小型伺服器。若超出這個範圍,你會遇到幾個正式環境 bot 需要處理的問題:

  • 持久化對話歷史。 記憶體中的 dict 會在程序重新啟動時遺失。正式環境 bot 會把對話儲存在 Redis 或資料庫中。
  • 速率限制。 Discord 允許每個頻道每 5 秒 5 則訊息。如果你的 bot 很受歡迎,就需要佇列。
  • 並行請求。 Ollama 預設一次處理一個請求。多位使用者同時傳訊時會排隊。你可以在負載平衡器後方執行多個 Ollama instance,或使用 Ollama 的 OLLAMA_NUM_PARALLEL 選項(自 v0.1.33 起可用)。
  • 錯誤處理與重試。 Ollama 可能當機、記憶體不足,或回傳格式錯誤的回覆。bot 應該能優雅地處理這些情況。
  • Context window 管理。 MAX_HISTORY = 10 設定過於天真。較好的方法是計算 token,並裁切到符合模型 context window(Llama 3.1 8B 預設為 8,192 tokens,可設定到 128K,但較長 context 會造成品質下降)。
  • Thread 支援。 在 Discord 上,bot 對話常發生在 threads 中。處理 thread 建立與每個 thread 的歷史需要額外邏輯。
  • 知識庫 / RAG。 如果你希望 bot 回答關於專案文件的問題,你需要一套 retrieval-augmented generation 設定:嵌入你的文件、將 embeddings 儲存在向量資料庫中,並在傳送給 LLM 前取回相關片段。

技術注意事項

Discord API 速率限制

Discord 在多個層級施加速率限制:

  • Per-route limits: 每個 API endpoint 都有自己的速率限制,會在回應 headers 中回傳(X-RateLimit-Limit、X-RateLimit-Remaining、X-RateLimit-Reset)。
  • Global limit: 所有 endpoints 合計每秒 50 個請求。
  • Per-channel message limit: 每個頻道每 5 秒 5 則訊息。
  • Gateway limits: 每 60 秒 120 個 gateway events。

discord.py 函式庫會在你達到限制時透過佇列請求,自動處理多數情況。不過,如果你的 bot 同時位於許多伺服器或頻道中,仍可能達到 global limit。到那時,你需要研究 sharding(將 bot 的伺服器連線拆分到多個 gateway 連線)。

對於使用 MESSAGE_CONTENT intent(讀取訊息文字所需)的 bot,如果它位於超過 100 個伺服器中,Discord 會要求你驗證 bot。這需要提交 bot 功能描述,並取得 Discord 核准。

模型品質取捨

小型開源模型與前沿商業模型之間的差距,比兩年前小,但仍然存在。以下是常見 Discord bot 任務的粗略比較:

Task7-8B Local ModelGPT-4o miniGPT-4o / Claude Sonnet
Casual conversationGoodGoodGood
Factual Q&AModerate (more hallucinations)GoodVery good
Code generationBasicGoodVery good
MultilingualLimitedGoodVery good
Instruction followingModerateGoodVery good
Staying in characterModerateGoodGood

如果你的 Discord bot 是用於遊戲社群,主要處理閒聊與簡單查詢,本機 8B 模型表現不錯。如果它是用於需要準確性的客戶支援,品質差距就會成為實際問題。維持角色一致性也不只取決於模型,更取決於設定:如何建立能維持角色設定的角色扮演 AI chatbot 展示 persona prompt 與 canon 知識庫即使搭配標準模型,也能帶來多大效果。

Context window 管理

這是 Discord bot 中最容易被低估的技術挑戰。Discord 對話本質上是多輪的:使用者會傳送許多短訊息,bot 需要記得對話中先前說過的內容。

每次 bot 回覆時,都需要在 prompt 中包含先前的對話歷史。這代表:

  • 輸入 token 數會隨對話長度線性增加。
  • 對 API 型 bot 來說,成本也會線性增加。
  • 對本機模型來說,推論時間會隨 context 長度增加(attention 計算為二次方,雖然 Flash Attention 這類最佳化有所幫助)。
  • 到某個時間點,對話會超出模型的 context window,你就需要策略:從開頭截斷、摘要較舊訊息,或開始新對話。

實務做法是保留最近 N 則訊息的滾動視窗,若對話已經很長,則在前方加入較早 context 的短摘要。這需要額外一次 LLM 呼叫來產生摘要,但能讓每則訊息成本維持在有界範圍內。

隱私影響

這會依方法而有顯著差異:

  • Self-hosted: AI 推論留在你的硬體上,因此你控制模型處理日誌與保留政策。Discord 仍會傳輸並儲存訊息;本機推論不會讓整段對話都變成本機。
  • BYO API Key: 訊息會傳送給 API 供應商(OpenAI、Anthropic 等)。請檢查他們的資料保留政策。截至 2026 年初,OpenAI 表示預設不會使用 API 資料訓練,Anthropic 也有類似政策。不過,訊息仍會經過他們的伺服器。
  • Managed services: 訊息由服務供應商處理。請檢查其隱私權政策與資料處理協議。對於在歐盟處理使用者資料的企業而言,GDPR 合規在這裡很重要。例如 Quickchat AI 會在歐盟處理資料,並為企業客戶提供 DPA。

對休閒用途的 Discord 伺服器而言,隱私通常不是主要考量。對使用 Discord bot 作為客戶支援的企業而言,值得清楚了解對話資料究竟儲存在哪裡,以及誰可以存取。

自架與託管:總持有成本

上表中的原始運算成本比較只呈現部分情況。總持有成本包含工程時間。

使用自架 bot 時你要自己建置的項目:

  • Bot 程式碼與部署
  • 對話歷史儲存
  • Context window 管理
  • 錯誤處理與監控
  • 知識庫 / RAG pipeline(如需要)
  • 分析與記錄
  • 多通道支援(如需要)

保守估計,對有經驗的開發者來說,建立具備對話歷史、知識庫與基本分析的正式環境品質自架 AI Discord bot,需要 40-80 小時工程時間。維護它(模型更新、相依套件更新、除錯、監控)還會增加持續時間成本。

使用託管服務時可直接取得的項目:

  • Bot 託管與正常運作時間管理
  • 由你的網站、文件與檔案建立的知識庫
  • 對話分析(情緒、主題、評分)
  • 多通道部署(同一個 agent 在 Discord、網站、WhatsApp、Slack 等上運作)
  • AI 無法協助時的人員轉接
  • AI Actions(由對話 context 觸發的自訂 API 呼叫),包含timeout、kick 與 ban 等管理動作

問題在於託管服務的每月成本是否低於你的工程時間機會成本。對經營興趣型 Discord 伺服器的獨立開發者來說,使用 Ollama 自架可能是正確選擇。對使用 Discord 作為面向客戶支援通道的企業來說,通常託管服務在成本上更合理,因為核心 LLM 周邊的功能(分析、知識庫、轉接)才是讓 bot 真正有用的部分。AI ticket bot 指南 正是在 Free plan 上端到端建置這種組合,因此你可以用具體方案來比較替代成本。

摘要

沒有一個放諸四海皆準的「最佳」免費 AI Discord bot。正確選擇取決於「免費」對你代表什麼:

  • 如果你想要零持續成本,且有可用硬體,請使用 Ollama 與開源模型自架。你控制本機模型處理與其資料保留,而 Discord 仍會傳輸並儲存訊息。你會放棄相對於前沿模型的模型品質,並承擔所有工程工作。
  • 如果你想在付費前先用真實使用者測試,Quickchat AI 的 Free plan 可讓你在沒有信用卡的情況下開始。Discord 整合可在 Free plan 使用,付費方案從 $9/mo 起。
  • 如果你想要前沿模型品質,且可以自行管理 API 金鑰,BYO API key bot 能以低逐訊息成本提供這一點(特別是使用 GPT-4o mini 或 Gemini Flash)。你仍需要託管 bot 程式碼,並建置任何超出原始聊天的功能。
  • 如果你需要正式環境功能(知識庫、分析、轉接、多通道),託管服務是最快路徑。請根據你預期的訊息量與實際需要的功能評估。

「free AI Discord bot」中的「free」承擔了很多含義。運算永遠有成本。問題是由誰支付,以及你因此得到(或放棄)什麼。

若要更廣泛比較所有 AI Discord bot(不只免費選項),請參閱我們的 2026 年最佳 AI Discord Bot 彙整。如果你的伺服器特別是支援通道,AI Discord Ticket Bot 會逐步說明如何從你的文件回答問題,並將其餘問題升級為私人 ticket threads。