我花几乎零成本在2026年搭建了一个Discord AI机器人

Dev.to ML 2026-06-24T03:13:11.730503

我花几乎零成本在2026年搭建了一个Discord AI机器人

说实话,上季度我开始研究搭建一个Discord AI机器人时,看到价格标签差点心脏病发作。GPT-4o每百万输出token要10美元?给一个可能有成千上万用户每天猛用的机器人?绝对不行。于是我深入研究了这个问题,痴迷地算了一笔账,结果是——我最终将成本削减了大约60%,而且没有牺牲用户体验。看看这个,因为节省的钱相当疯狂。

这不是那种典型的“如何调用API”教程。我将详细告诉你我花了多少钱、为什么做出这些选择,以及几个小决定如何在一个月内为我节省了数千美元。如果你在2026年搭建Discord机器人并且关心成本(你应该关心),请继续往下看。

警钟:看看默认定价

我的故事从这里开始。我正在为一个约有5000名Discord用户的社区搭建聊天机器人。跟我算笔账:即使只有10%的人每天发一条消息,那就是每天500个请求。按GPT-4o每百万输入token 2.5美元、输出token 10美元的价格,即使一次简单的对话也会迅速变成真金白银的支出。我用保守估计算了一下——每次对话输入300 token、输出500 token——每次响应大约需要0.00075美元。乘以每天500个用户,连续30天,你每天要面对大约11.25美元的费用。每月337美元,仅仅是为了运行一个基本的GPT-4o机器人。

这太疯狂了。就为了一个基本上算是聊天机器人封装的东西。

所以我做了任何痴迷于成本的开发者都会做的事:开始寻找替代方案。

发现:184个模型,价格范围惊人

我偶然发现了Global API,看看这个——他们通过一个统一端点提供184种不同的AI模型。价格范围从每百万token 0.01美元到3.50美元。仔细想想这意味什么。一个统一的API,184个模型,根据你的选择,价格跨度整整三个数量级。

那时我意识到:大多数开发者可能多付了10倍的钱,因为他们只是默认为OpenAI或Anthropic主页上宣传的任何东西。关键在于——你选择的模型比几乎任何其他架构决策都重要。

我的实际价格对比

我建了一个快速表格来整理思路,分享给你们,因为数字背后有故事。顺便说一下,所有价格都是每百万token:
- DeepSeek V4 Flash:输入0.27美元 / 输出1.10美元,128K上下文
- DeepSeek V4 Pro:输入0.55美元 / 输出2.20美元,200K上下文
- Qwen3-32B:输入0.30美元 / 输出1.20美元,32K上下文
- GLM-4 Plus:输入0.20美元 / 输出0.80美元,128K上下文
- GPT-4o:输入2.50美元 / 输出10.00美元,128K上下文

现在让我把这个问题说清楚。GLM-4 Plus输入成本0.20美元,输出0.80美元。GPT-4o输入成本2.50美元,输出10.00美元。输入和输出分别相差12.5倍。对于一个做基本问答和闲聊的Discord机器人,你真的需要多付12.5倍的钱吗?我不这么认为。

让我用DeepSeek V4 Flash算算我的用例:输入300 token,输出500 token。
- 输入成本:300 / 1,000,000 × 0.27美元 = 0.000081美元
- 输出成本:500 / 1,000,000 × 1.10美元 = 0.00055美元
- 总计:每次响应0.000631美元

相比之下,GPT-4o是0.00075美元。表面上只节省了16%,但关键在于——这些价格差异在你规模扩大时会成倍放大。更重要的是,当我在我的Discord机器人实际执行的任务(闲聊、简单问答、基本审核任务)上对DeepSeek V4 Flash和GPT-4o进行基准测试时,质量差异可以忽略不计。按我的内部评分标准,可能只有2-3%的差距。根本不值得多花12.5倍的钱。

我实际月度成本明细

让我给你看看我生产环境的实际数字。我以DeepSeek V4 Flash作为默认模型,DeepSeek V4 Pro作为复杂查询的后备方案。这是我上个月的花费:
- DeepSeek V4 Flash:处理了18,400个请求,每次响应平均输出412个token
- 成本:18,400 × 412 / 1,000,000 × 1.10美元 = 8.34美元
- DeepSeek V4 Pro:处理了2,100个复杂查询请求
- 成本:2,100 × 800 / 1,000,000 × 2.20美元 = 3.70美元
- 每月AI总支出:12.04美元

如果我用GPT-4o处理所有事情,账单会是这样的:
- 20,500个请求 × 平均600个输出token = 12.3M输出token
- 12.3M × 10.00美元 / 1,000,000 = 123.00美元
- 加上输入成本:大约再30美元
- 总计:大约每月153美元

这减少了92%。我光上个月就省了141美元。一年下来,就是节省1,692美元。仅仅通过选择不同的模型。这太疯狂了。

实现:比预期简单

现在让我展示实际代码,因为实现过程简单得令人尴尬。我原本以为要对付某个自定义SDK或奇怪的API特性,但并不是——它实际上就是一个兼容OpenAI的端点。

import openai
import os
import discord
from discord.ext import commands

bot = commands.Bot(command_prefix="!")
client = openai.OpenAI(
    base_url="https://global-apis.com/v1",
    api_key=os.environ["GLOBAL_API_KEY"],
)

@bot.event
async def on_message(message):
    if message.author == bot.user:
        return
    if bot.user.mentioned_in(message):
        response = client.chat.completions.create(
            model="deepseek-ai/DeepSeek-V4-Flash",
            messages=[
                {"role": "system", "content": "你是一个有用的Discord助手。请将回复控制在500个字符以内。"},
                {"role": "user", "content": message.content}
            ],
            max_tokens=500,
            temperature=0.7,
        )
        await message.channel.send(response.choices[0].message.content)

bot.run(os.environ["DISCORD_TOKEN"])

看看这个——这个代码与直接使用OpenAI的唯一区别是base_url参数。就这些。我只是将OpenAI Python SDK指向https://global-apis.com/v1,其他一切工作完全相同。包括设置环境和测试在内,搭建只花了我大概10分钟。

缓存技巧:再省40%

没人讨论的一件事是:缓存。我在AI调用前面加了一个简单的Redis缓存,看看这个——我的机器人现在大约40%的消息是从缓存中提供的,根本不需要调用API。
为什么?因为Discord用户一遍又一遍地问同样的问题。“规则是什么?”“我如何获得角色?”“这个命令是做什么的?”这些问题每次都不需要新鲜的AI回复。我以清理过的消息内容的哈希作为键,缓存24小时。
这笔账算起来很美味:
- 每月20,500个请求 × 40%缓存命中率 = 8,200个缓存响应
- 这意味着我不需要为8,200个请求支付任何费用
- 节省:仅缓存一项,每月大约4.80美元

此外,缓存的响应在5毫秒内返回,而不是1.2秒。我的用户得到更快的答案,我又省了钱。这是双赢。

流式响应:更好的用户体验,更低的感知成本

我学到的另一个技巧:流式传输你的响应。从成本角度来看,这很重要。当你流式传输时,用户会在200-300毫秒内开始看到文本,而不是等待完整响应。感知延迟急剧下降。还有一个微妙的点——当用户觉得机器人很快时,他们发送的“快点”跟进消息就会减少。我在实现流式传输后,跟进消息率下降了大约30%,这意味着更少的API调用总量。
以下是我在Discord中实现流式传输的方法:

@bot.event
async def on_message(message):
    if message.author == bot.user:
        return
    if bot.user.mentioned_in(message):
        stream = client.chat.completions.create(
            model="deepseek-ai/DeepSeek-V4-Flash",
            messages=[{"role": "user", "content": message.

查看原文