引子

最近想做一个答题类的网站,核心需求很简单:用户丢一道题进来,系统给出答案和解析。这种「一问一答」的场景,用大语言模型再合适不过——不用自己维护题库,模型现学现答,还能顺手把思路讲清楚。

模型选型我几乎没犹豫,直接选了 DeepSeek。理由就一个字:省。下面是真金白银跑出来的数据,不是 PPT 上的定价表。

成本实测:10 块钱能跑多久?

我在 DeepSeek 平台充值了 ¥10.00,实际跑了 33 次 调用,结果如下:

指标 数值
充值金额 ¥10.00
调用次数 33 次
消费金额 ¥0.14
消耗 Tokens 146,785
账户余额 ¥9.86

把这几个数字拆开看更有意思:

  • 单次平均消耗:146,785 ÷ 33 ≈ 4,448 Tokens/次。一道题 + 系统提示词 + 答案解析,平均四千多 token,符合预期。
  • 单次平均成本:¥0.14 ÷ 33 ≈ ¥0.0042,也就是 4 厘多一次。
  • 每千 Token 成本:¥0.14 ÷ 146.785 ≈ ¥0.00095,不到 1 厘

换句话说,这 10 块钱按目前的用法,至少还能再答两千多道题。对一个小项目、个人玩具、或者给朋友演示用的网站来说,这个成本基本可以忽略不计。

技术实现:DeepSeek API 怎么接

DeepSeek 的接口和 OpenAI 高度兼容,迁移成本几乎为零。核心就是往 https://api.deepseek.com/v1/chat/completions 发一个 POST,带上 API Key 和对话消息。

1. 获取 API Key

在 DeepSeek 开放平台(platform.deepseek.com)注册后,到「API Keys」页面生成一个 Key,形如 sk-xxxx千万别把 Key 写死在前端,否则被人刷一下你的 10 块钱瞬间就没了。正确做法是用一个后端服务转发请求。

2. 后端调用示例(Python)

import requests

API_KEY = "sk-你的密钥"          # 放在服务端环境变量里
API_URL = "https://api.deepseek.com/v1/chat/completions"

def ask_deepseek(question: str, options: list[str] | None = None) -> dict:
    # 系统提示词:定义模型扮演的角色和输出格式
    system_prompt = (
        "你是一个严谨的答题助手。"
        "请基于题目给出正确答案,并附上简明解析。"
        "如果题目是选择题,请明确指出正确选项。"
    )

    # 把题目和选项拼成用户消息
    user_content = f"题目:{question}\n"
    if options:
        user_content += "选项:\n" + "\n".join(
            f"{chr(65+i)}. {opt}" for i, opt in enumerate(options)
        ) + "\n"
    user_content += "请给出答案与解析。"

    payload = {
        "model": "deepseek-chat",     # 通用对话模型
        "messages": [
            {"role": "system", "content": system_prompt},
            {"role": "user",   "content": user_content},
        ],
        "temperature": 0.3,           # 答题要稳,温度调低
        "max_tokens": 1024,
    }

    resp = requests.post(
        API_URL,
        headers={"Authorization": f"Bearer {API_KEY}"},
        json=payload,
        timeout=30,
    )
    return resp.json()

3. 前端怎么用

前端只负责把题目发给你的后端,后端再调 DeepSeek。一个简单的流程:

用户出题 → 前端 POST /api/answer → 你的后端 → DeepSeek API → 返回答案 → 前端渲染

这样 Key 永远不暴露,你还能在中间加一层限流(比如每人每天 50 题),防止被滥用把余额薅光。

使用 DeepSeek 的几个方法(踩坑心得)

实际跑下来,几点经验值得记一下:

1. 模型要选对 DeepSeek 目前主要有 deepseek-chat(通用对话)和 deepseek-reasoner(深度推理)。普通答题用 deepseek-chat 就够了,又快又便宜;遇到数学、逻辑、竞赛类难题,再切 deepseek-reasoner 让模型先推理再答。

2. 系统提示词决定下限 答题场景里,给模型一个明确的「角色 + 输出格式」能显著稳定输出。比如要求它「先给答案,再给解析」「选择题必须指明选项字母」,比让它自由发挥靠谱得多。

3. 温度(temperature)调低 答题要的是准确,不是创意。我把 temperature 设到 0.3 左右,避免模型「脑洞大开」给你编一个听起来很对的错误答案。

4. 控制 max_tokens 解析写太长既拖慢响应又烧 token。设个合理的 max_tokens(比如 1024),既能讲清楚又不会无限发散。

5. 加一层缓存 如果同一道题高频被问(比如热门考题),后端可以把「题目 → 答案」缓存起来,第二次直接返回,连 API 都不用调,成本还能再砍一刀。

小结

DeepSeek 这波体验总结成一句话:个人开发者做 AI 应用,现在真的到了「成本不是问题」的阶段。充值 10 块钱,33 次调用只花 1 毛 4,14 万 token 跑完还有 9 块 8 余额。接口又和 OpenAI 兼容,半小时就能把答题网站跑起来。

如果你也在琢磨用大模型做个小东西,我的建议是:别犹豫,先充 10 块钱跑通再说。


本文数据为作者真实使用记录,价格随官方政策可能变动,请以 DeepSeek 开放平台实时定价为准。