2026 年免费 AI Discord 机器人

Jakub Swistak
发布日期 更新日期 阅读时间约 11 分钟
免费 AI Discord 机器人:免费计划、消息限制、模型控制和自托管

如果搜索“免费 AI Discord bot”,你会找到几十个选项。有些确实免费。大多数并不是,至少不是你可能预期的那种免费。本文会拆解实际可用的方案、它们的取舍,以及当涉及 AI 推理时,“免费”真正意味着什么成本。

为什么“免费 AI”很复杂

运行 LLM 需要成本。每当用户发送一条消息并获得回复时,都有人在为计算付费。对于 OpenAI 或 Anthropic 这样的托管 API,你按 token 付费。对于自托管模型,你以硬件、电力和维护时间的形式付费。这个事实无法绕过:推理存在非零边际成本。

当某项服务提供“免费 AI 机器人”时,通常符合以下情况之一:

  1. 你直接支付推理成本(例如,提供自己的 API key)。
  2. 服务商承担成本,并通过付费层级、广告或数据收集收回成本。
  3. 你在自己的硬件上运行推理,使用开源模型。
  4. 免费层级受到低用量限制,以限制提供商面对的计算成本敞口。

理解某个机器人属于哪一种情况,是评估它是否真正适合你的用例的关键。

免费 AI Discord 机器人的三类方案

1. 自托管开源机器人(真正免费,但你提供硬件)

这是唯一一种没有第三方控制你用量限制的选项。你在本地(或 VPS 上)运行开源 LLM,通过自己编写或 fork 的机器人连接到 Discord,并自行处理所有事项。

典型技术栈:

  • Ollama 用于本地模型服务
  • discord.py 或 discord.js 用于 Discord 机器人
  • Llama 3.1 8B、Mistral 7B 或 Gemma 2 9B 等模型

你得到的内容:

  • 除电费外没有按消息计费的成本
  • 完全控制模型、system prompt 和数据
  • 没有第三方施加的速率限制(只适用 Discord 自身的 API 限制)
  • 本地模型处理:推理保留在你的机器上,而 Discord 仍然传输并存储消息

你放弃的内容:

  • 你需要硬件。以合理速度运行 7B 参数模型需要至少 8 GB VRAM 的 GPU,或配备统一内存的现代 Mac。CPU 推理可以运行,但速度较慢(7B 模型每次回复需要数秒)。
  • 你需要维护基础设施。更新、重启、监控以及模型权重占用的磁盘空间都由你负责。
  • 模型质量低于前沿模型。Llama 3.1 8B 有一定能力,但不是 GPT-4o 或 Claude Sonnet。用于简单问答和闲聊时表现可以。用于细致推理或复杂多轮对话时会不足。
  • 没有内置知识库、分析或转人工功能。你需要自行构建所需功能。

常见模型的最低硬件要求:

模型参数所需 VRAMCPU RAM(仅 CPU)响应速度(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 和机器人基础设施。你通过 Web 控制台配置机器人。免费层级提供有限用量,更多用量需要付费。

示例:

服务免费层级消息限制模型控制Discord 支持需要信用卡
Quickchat AIFree plan包含用量因计划而异提供商管理(前沿模型)是(所有层级)否
MEE6Free planAI 功能仅限 premium提供商管理是否(免费层级)
BotpressFree tier2,000 条传入消息/月可配置通过集成否

Quickchat AI 的 Free plan 允许你在无需信用卡的情况下测试。Discord 集成在每个层级都可用,因此你可以连接机器人,并在正式投入前用真实用户测试。连接只需一次点击:在 External Apps 中打开 Discord,点击 Add to your Discord server,然后选择要添加到的服务器。付费计划从 Starter 开始,价格为 $9/mo,或按年计费 $8/mo。

托管服务的关键优势是,你获得的不只是原始 LLM 推理:从你的文档和网站构建的知识库、对话分析(情感分析、主题检测)、多渠道部署(同一个 agent 可用于你的网站、WhatsApp、Slack 和 Discord),以及在 AI 无法解决时进行人工转接。在自托管模型基础上从零构建这些能力,是一个相当大的工程项目。

MEE6 主要是一个审核和互动机器人。它的 AI 聊天功能被锁定在 premium 订阅之后(截至 2026 年初为 $11.99/mo)。免费层级覆盖等级系统、基础审核命令和欢迎消息,但不包含 AI 驱动的对话。

Botpress 提供免费层级,每月在所有渠道合计 2,000 条传入消息。它提供可视化流程构建器,并支持自定义 LLM 配置。不过,对于一个简单的 Discord 机器人而言,它的设置比 Quickchat 更复杂,因为 Botpress 主要面向结构化对话流程,而不是开放式聊天。

3. BYO API key 机器人(你向 LLM 提供商付费)

第三类:在服务器上运行、但调用商业 API(OpenAI、Anthropic、Google 等)进行推理的开源机器人。你提供自己的 API key。机器人代码本身免费,但你需要按 token 向模型提供商付费。

GitHub 上的示例:

  • GPT Discord Bot(OpenAI 的官方示例)
  • 使用 discord.py + OpenAI Python SDK 构建的各种社区机器人

使用商业 API 的每条消息成本(近似值,截至 2026 年初):

模型输入成本(每 1M tokens)输出成本(每 1M tokens)~每条消息成本*
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,不包含对话历史。如果包含对话历史,输入成本会随上下文长度线性增长。

使用 GPT-4o mini 时,每月 1,000 条消息大约花费 $0.30。每月 10,000 条消息大约花费 $3.00。这些数字看起来很小,直到你把对话历史算进去:如果每条消息都包含完整对话上下文(例如前 10 轮对话),每条消息的输入 token 数会从 ~500 膨胀到 ~5,000,因此输入成本上升 10 倍,总成本也会增加。

各类方案的成本对比

下表估算了不同消息量下的月成本。“Self-hosted”假设使用小型 VPS 或现有硬件。“BYO API Key”使用 GPT-4o mini 定价。“Managed”使用 Quickchat AI 的定价作为参考。

每月消息数Self-Hosted (Ollama + VPS)BYO API Key (GPT-4o mini)Managed (Quickchat AI)
100~$5-20(VPS 成本)~$0.03Free plan 或 $9/mo 的 Starter
1,000~$5-20(VPS 成本)~$0.30-3.00$9/mo 的 Starter 或 $29/mo 的 Basic
5,000~$15-40(VPS 成本)~$1.50-15.00$99/mo 的 Essential 或 $299/mo 的 Professional
10,000~$30-80(VPS 成本)~$3.00-30.00$299/mo 的 Professional 或 $999/mo 的 Business
35,000~$60-150(VPS 成本)~$10.50-105.00$999/mo 的 Business 或 Enterprise,起价 $0.50/resolution

关于 self-hosted 列的说明:范围取决于你使用仅 CPU 的 VPS(更便宜但回复更慢)还是 GPU 实例。Hetzner 提供约 $5-10/mo 的 CPU VPS 实例,可运行量化的 7B 模型,不过响应时间会是 5-15 秒。GPU 云实例(例如来自 Lambda、RunPod 或 Vast.ai)单 GPU 起价约 $0.20-0.50/hr,如果 24/7 运行,折合 $150-360/mo。对于间歇性使用,spot 实例或 serverless GPU 提供商可以降低成本。

BYO API key 列显示的是一个范围,因为成本在很大程度上取决于你是否在每个请求中包含对话历史。下限是单轮(无历史),上限是包含约 10 条上下文消息的多轮。

托管服务列反映的是 Quickchat 截至 2026 年 6 月的定价。这些计划包含知识库管理、分析和多渠道支持等功能,而在另外两种方案中,如果没有额外工程工作,这些功能并不存在。

快速自托管设置:Python + discord.py + Ollama

下面是一个最小可运行示例,展示了使用 Ollama 进行本地推理的 Discord 机器人。这要求已安装并运行 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. 机器人已添加到你的服务器,并具备 Send Messages 和 Read Message History 权限

安装依赖

pip install discord.py aiohttp

机器人代码

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 服务器中的 helpful assistant。回复保持简洁。"

# 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 机器人,在被提及时回复。它在内存中维护按频道划分的对话历史(重启后丢失),并处理 Discord 每条消息 2,000 字符的限制。

这个最小机器人缺少什么

上面的代码适合测试和小型服务器。对于更进一步的使用,你会遇到多个生产机器人需要处理的问题:

  • 持久化对话历史。 内存中的 dict 会在进程重启时丢失。生产机器人会把对话存储在 Redis 或数据库中。
  • 速率限制。 Discord 允许每个频道每 5 秒发送 5 条消息。如果你的机器人很受欢迎,你需要队列。
  • 并发请求。 Ollama 默认一次处理一个请求。多个用户同时发消息时会排队。你可以在负载均衡器后运行多个 Ollama 实例,或使用 Ollama 的 OLLAMA_NUM_PARALLEL 选项(自 v0.1.33 起可用)。
  • 错误处理和重试。 Ollama 可能崩溃、内存不足,或返回格式错误的响应。机器人应能优雅处理所有这些情况。
  • 上下文窗口管理。 MAX_HISTORY = 10 设置很粗糙。更好的方法是计算 token,并裁剪到模型上下文窗口内(Llama 3.1 8B 默认 8,192 token,可配置到 128K,但长上下文会降低质量)。
  • 线程支持。 在 Discord 中,机器人对话常发生在线程里。处理线程创建和按线程维护历史需要额外逻辑。
  • 知识库 / RAG。 如果你希望机器人回答有关项目文档的问题,需要检索增强生成设置:对文档进行 embedding,将 embedding 存入向量数据库,并在发送给 LLM 前检索相关片段。

技术注意事项

Discord API 速率限制

Discord 在多个层级施加速率限制:

  • 按路由限制: 每个 API endpoint 都有自己的速率限制,会在响应头中返回(X-RateLimit-Limit、X-RateLimit-Remaining、X-RateLimit-Reset)。
  • 全局限制: 所有 endpoint 合计每秒 50 个请求。
  • 按频道消息限制: 每个频道每 5 秒 5 条消息。
  • Gateway 限制: 每 60 秒 120 个 gateway 事件。

discord.py 库会在你达到限制时通过排队请求来自动处理其中大多数限制。不过,如果你的机器人同时位于许多服务器或频道中,仍然可能触及全局限制。此时,你需要考虑 sharding(将机器人的服务器连接拆分到多个 gateway 连接中)。

对于使用 MESSAGE_CONTENT intent(读取消息文本所需)的机器人,如果机器人位于超过 100 个服务器中,Discord 要求你验证机器人。这需要提交机器人用途说明,并获得 Discord 批准。

模型质量取舍

小型开源模型与前沿商业模型之间的差距比两年前更小,但仍然存在。下面是常见 Discord 机器人任务的粗略对比:

任务7-8B 本地模型GPT-4o miniGPT-4o / Claude Sonnet
闲聊良好良好良好
事实问答中等(更多幻觉)良好很好
代码生成基础良好很好
多语言有限良好很好
指令遵循中等良好很好
保持角色中等良好良好

如果你的 Discord 机器人面向游戏社区,主要处理闲聊和简单查询,本地 8B 模型效果不错。如果它用于客服且准确性重要,质量差距会变成实际问题。保持角色也不仅取决于模型,更取决于设置:如何构建一个能保持角色设定的角色扮演 AI 聊天机器人 展示了角色 prompt 和 canon 知识库即使搭配标准模型也能走多远。

上下文窗口管理

这是 Discord 机器人中最被低估的技术挑战。Discord 对话天然是多轮的:用户会发送许多短消息,机器人需要记住对话早些时候说过什么。

每次机器人回复时,都需要在 prompt 中包含此前的对话历史。这意味着:

  • 输入 token 数会随对话长度线性增长。
  • 对于基于 API 的机器人,成本也会线性增长。
  • 对于本地模型,推理时间会随上下文长度增长(在注意力计算中为二次增长,不过 Flash Attention 等优化会有帮助)。
  • 到某个时点,对话会超过模型的上下文窗口,你需要策略:从开头截断、总结旧消息,或开启新对话。

一种实用方法是保留最近 N 条消息的滚动窗口,如果对话已经很长,则在前面添加一段较早上下文的简短摘要。这需要额外一次 LLM 调用来生成摘要,但可以把每条消息的成本控制在有界范围内。

隐私影响

这会因方案而有显著差异:

  • 自托管: AI 推理保留在你的硬件上,因此你控制模型处理日志和留存。Discord 仍然传输并存储消息,本地推理并不会让整个对话都变成本地的。
  • BYO API Key: 消息会发送给 API 提供商(OpenAI、Anthropic 等)。请查看他们的数据留存政策。截至 2026 年初,OpenAI 表示默认不会用 API 数据进行训练,Anthropic 也有类似政策。不过,消息仍然会经过他们的服务器。
  • 托管服务: 消息由服务提供商处理。请查看其隐私政策和数据处理协议。对于在欧盟处理用户数据的企业,GDPR 合规在这里很重要。例如,Quickchat AI 在欧盟处理数据,并为企业客户提供 DPA。

对于休闲 Discord 服务器,隐私通常不是首要问题。对于使用 Discord 机器人做客服的企业,值得准确了解对话数据存储在哪里,以及谁有权访问。

自托管与托管:总拥有成本

上表中的原始计算成本对比只说明了一部分情况。总拥有成本还包括工程时间。

使用自托管机器人时需要自己构建的内容:

  • 机器人代码和部署
  • 对话历史存储
  • 上下文窗口管理
  • 错误处理和监控
  • 知识库 / RAG pipeline(如需要)
  • 分析和日志
  • 多渠道支持(如需要)

保守估计,对于经验丰富的开发者,构建一个具备对话历史、知识库和基础分析的生产级自托管 AI Discord 机器人需要 40-80 小时工程时间。维护它(模型更新、依赖更新、调试、监控)还会增加持续投入。

使用托管服务时开箱即用的内容:

  • 机器人托管和正常运行时间管理
  • 从你的网站、文档和文件构建的知识库
  • 对话分析(情感、主题、评分)
  • 多渠道部署(同一个 agent 用于 Discord、网站、WhatsApp、Slack 等)
  • 当 AI 无法提供帮助时转人工
  • AI Actions(由对话上下文触发的自定义 API 调用),包括超时、踢出和封禁等审核操作

问题在于,托管服务的月费是否低于你的工程时间机会成本。对于运行兴趣型 Discord 服务器的独立开发者,使用 Ollama 自托管可能是正确选择。对于将 Discord 用作面向客户支持渠道的企业,通常托管服务在成本上更合理,因为核心 LLM 周边的功能(分析、知识库、转人工)才是让机器人真正有用的部分。AI 工单机器人指南 在 Free plan 上从头到尾构建的正是这种组合,因此你可以用一个具体方案来对比替代方案成本。

总结

不存在普遍意义上“最好”的免费 AI Discord 机器人。正确选择取决于“免费”对你意味着什么:

  • 如果你想要零持续成本,并且有可用硬件,就使用 Ollama 和开源模型自托管。你控制本地模型处理及其数据留存,而 Discord 仍然传输并存储消息。你会放弃相对于前沿模型的模型质量,并承担所有工程工作。
  • 如果你想在付费前用真实用户测试,Quickchat AI 的 Free plan 允许你在无需信用卡的情况下开始。Discord 集成可在 Free plan 上使用,付费计划从 $9/mo 开始。
  • 如果你想要前沿模型质量,并且愿意管理 API key,BYO API key 机器人可以用较低的按消息成本提供这种能力(尤其是使用 GPT-4o mini 或 Gemini Flash 时)。你仍然需要托管机器人代码,并构建原始聊天之外的任何功能。
  • 如果你需要生产功能(知识库、分析、转人工、多渠道),托管服务是最快路径。根据你预期的消息量和实际需要的功能进行评估。

“免费 AI Discord 机器人”中的“免费”承担了很多含义。计算总是有成本的。问题在于谁为它付费,以及你获得了什么(或放弃了什么)作为交换。

如需更广泛地比较所有 AI Discord 机器人(不仅是免费机器人),请参阅我们的 2026 年最佳 AI Discord 机器人 汇总。如果你的服务器专门用作支持渠道,AI Discord 工单机器人 会演示如何根据你的文档回答问题,并将其余问题升级到私有工单线程。