AI 指南阅读约 12 分钟

DeepSeek V4.1 Flash 1017:先完成第一个项目,再接入 API

从可运行的浏览器项目开始,在 Windows、Mac 或 Linux 上接入 DeepSeek Flash,并了解 10 月 17 日更新、思考模式、视觉、成本与限制。

K
Ken Jo

只有它写出的东西真的能运行,编程模型才有用。就从这里开始:做一个你能打开、检查和改进的小应用,而不是用一条巨型提示词要求它写完一整门生意。

DeepSeek 于 2026 年 9 月 10 日发布 V4.1 Flash;10 月 17 日推出的是 1017 更新,并不是首次发布 V4.1。更新已经上线 DeepSeek 网站、应用和 API,API 模型 ID 仍为 deepseek-flash。DeepSeek 按日期排列的更新日志

本指南会带你从第一个浏览器项目走向可重复的开发工作流,再介绍如何在 Windows、macOS 和 Linux 上配置 API。之后还会讲清架构、供应商公布的基准测试、token 成本,以及在把更大的任务交给智能体之前需要了解的实际边界。

头图:原创说明图,展示需求说明、构建、检查和修改的流程。它说明的是一种工作流,并非 DeepSeek 产品截图。

先获得第一次成功,再考虑安装

打开 DeepSeek 网页聊天或官方应用,新建对话。第一次练习请使用虚构信息。公共 AI 服务不是用来测试示例文件里是否包含客户名单或访问令牌的地方。

我们的第一个项目是待读队列:一个列出待读文章的小页面。它不需要账户、云数据库或 API 密钥。下面是示例练习,不是对模型实际运行结果的报告。

  1. 用这段提示词要求生成最小但完整的成品:

    纯文本
    Build a reading queue as one self-contained index.html file.
    Use plain HTML, CSS and JavaScript, with no libraries or network calls.
    Include three fictional example articles, a title filter, and a
    read/unread toggle. Keep state in memory; reloading should reset it.
    Use accessible labels and make the layout work at 360px wide.
    Return the complete file, followed by five manual acceptance checks.
    Do not add login, analytics, remote fonts or a backend.
    

  2. 把生成的文件放进一个全新的空文件夹,再用浏览器打开 index.html。打开不熟悉的生成代码之前,先检查有无意外的网络请求或脚本。这个练习不应要求运行终端命令、下载依赖或授予权限。

  3. 自己检查行为:按标题片段筛选、切换一篇文章的已读状态、移除筛选条件、缩窄窗口,然后重新加载。按要求,切换状态应能经筛选继续保留,但重新加载后应重置。

  4. 针对一个具体问题提出修改:“筛选词末尾带空格时会隐藏全部行。请清理筛选词两端空格,同时保持其他行为不变,并返回修改后的文件。”然后重复原有检查。

这样你就能判断第一次是否成功了。“看起来不错”很主观;“筛选之后切换状态仍然正常”才是验收条件。让第一个项目刻意保持小巧,也更容易判断某次修改究竟修好了问题,还是只改变了外观。

十月更新关注的是完成项目,而非只写代码片段

DeepSeek 表示,1017 使用带自我反馈的强化学习来改进端到端项目开发。公告展示了四个例子:紫禁城 3D 建模、网页赛车游戏、受《传送门 2》启发的 Godot 重制项目,以及跨越历史时期的 3D 场景 Valley of Ages。可以查看官方项目演示;这些是供应商演示,不是任何提示词都能保证得到的结果。

这里的关键区别是:利用自我反馈进行训练属于模型开发方面的说法,而你项目的反馈来自运行软件。模型在训练期间从反馈中学习,并不代表一次聊天回复就能执行你的浏览器、查看代码仓库或验证游戏构建。这些操作需要环境和工具。

把这一过程想成一个项目循环:明确要求、实现、检查、修改。我们的看法是,这个循环比第一次生成的答案有多长更重要。一项通过验收检查的小改动,比一个从未启动过的庞大仓库更有用。

项目循环从规划、实现和检查推进到人工批准。

原创示意图:验收检查和发布批准不属于模型回答本身。真正能够验证什么,取决于工具和执行环境。

给待读队列设定清晰的项目终点

设想第二版待读队列要供一个小型学习小组使用。成员需要添加链接、标记已读并导出队列。先保持单用户、仅在浏览器中运行;协作和同步属于另外的项目。

  1. 写清契约。 要求记录标题、URL 和已读状态;拒绝无效链接;重新加载后保留条目;支持导出 JSON 文件。说明队列为空、标题很长和导入文件格式错误时应如何处理。暂不加入身份验证和服务器存储。
  2. 先要计划,再动文件。 让模型列出需要修改的文件、存储方式和建议测试。提供干净文件夹或隔离工作树。不要一开始就交出整个主目录、生产凭据或安装任意软件的权限。
  3. 一次实现一条纵向切片。 先添加一篇文章、保存状态并重新加载;再加筛选,然后依次加入导出和导入。每一步都应能运行,这样导出功能故障就不会和存储迁移、无关改版搅在一起。
  4. 提供证据作为反馈。 给出准确错误、输入和预期行为。若是布局问题,附上一张已去除隐私信息的裁剪截图。要求窄范围修复,并重复同一组检查,而不是每次都接受整个项目重写。
  5. 批准候选版本。 测试键盘导航、空队列、重复链接和长标题。导出、清空测试队列,再导入并确认字段经过往返后仍然保留。接受下一轮修改前,保存一份已知可用的副本。

模型也可以在实现之前协助撰写测试计划。例如,请它描述预期 JSON 结构,并列出导入器必须校验哪些字段。然后把实现与计划对照。这能区分承诺和代码,让分歧清晰可见。

项目工具框架会在模型周围提供文件编辑、命令执行等工具。DeepSeek 在发布公告中建议 1017 使用 Harness v0.2.1-rc.1 或更高版本。安装请按官方 Harness 指南操作,不要假设只调用聊天 API 就创建了编程智能体。

接入 API,但别把密钥放进网页

当你自己的程序需要模型回复时,再使用 API。待读队列可以继续作为本地浏览器应用;下面的脚本只是独立的终端开发辅助工具。绝不要把 DeepSeek 密钥嵌入 index.html、浏览器 JavaScript 或公开仓库。

1. 创建 API 密钥,选择一个小任务

在 DeepSeek API 平台创建密钥并检查账户余额。DeepSeek 的首次调用指南列出了兼容 OpenAI 的基础 URL https://api.deepseek.com 和模型 deepseek-flash。网页聊天账户并不意味着 API 付费使用不受限制。

第一次请求请模型给出验收检查,而不是生成整个仓库。这样输出更容易检查;如果配置有误,生成内容也不会太多。

2. 根据操作系统准备 Python

如果尚未安装,请安装 Python 3。在新的项目文件夹中创建隔离环境并安装 SDK。这些命令直接调用解释器,因此不需要激活脚本,也不用更改 PowerShell 执行策略。可参阅 Python 虚拟环境文档。

Windows,PowerShell:

PowerShell在PowerShell中运行
py -m venv .venv
.\.venv\Scripts\python.exe -m pip install --upgrade openai

如果没有 py,但 python --version 确认已安装 Python 3,则第一条命令可以改用 python -m venv .venv。

macOS,终端:

Bash在终端中运行
python3 -m venv .venv
./.venv/bin/python -m pip install --upgrade openai

Linux,终端:

Bash在终端中运行
python3 -m venv .venv
./.venv/bin/python -m pip install --upgrade openai

某些 Linux 发行版会单独打包 venv。如果创建环境时报缺少该模块,请安装发行版文档所述的 Python 虚拟环境软件包,再重新创建。不要为了解决隔离环境问题而使用系统级 sudo pip install。

3. 创建终端辅助脚本

在 .venv 同级目录创建 first_request.py,内容如下。它通过 Python 的 getpass 模块隐藏输入密钥,避免把密钥写进源代码或 Shell 历史命令。在支持隐藏输入的常规终端中运行。

Python
from getpass import getpass

from openai import OpenAI

client = OpenAI(
    api_key=getpass("DeepSeek API key: "),
    base_url="https://api.deepseek.com",
    timeout=120.0,
    max_retries=0,
)

reply = client.chat.completions.create(
    model="deepseek-flash",
    messages=[{
        "role": "user",
        "content": (
            "Propose five manual acceptance checks for a browser-only "
            "reading queue with filtering, read status and JSON export. "
            "Return checks only; do not claim to have executed them."
        ),
    }],
    max_tokens=2048,
    stream=False,
    extra_body={"thinking": {"type": "disabled"}},
)

print(reply.choices[0].message.content)
print("Finish reason:", reply.choices[0].finish_reason)
print("Usage:", reply.usage)

4. 运行并检查响应

Windows 下运行 \.venv\Scripts\python.exe first_request.py;macOS 或 Linux 下运行 ./.venv/bin/python first_request.py。按提示粘贴密钥;预期结果是检查清单、结束原因和用量信息,而不是自动创建项目文件。

如果请求失败,先检查状态再重试。401 表示身份验证问题,402 表示余额不足,429 表示触发限制;DeepSeek 在错误代码指南中有说明。结束原因是 length 表示回答达到长度上限,不能据此认为内容完整。刚开始使用时,应谨慎重试。

思考、视觉和网页工具各有不同用途

思考模式默认开启,思考强度为 high。遇到复杂调试问题时,可以将示例中的 extra_body 换成 {"thinking": {"type": "enabled"}},再加入 reasoning_effort="high"。文档列出的强度为 low、high 和 max;思考模式会忽略 temperature,因此降低温度并不能让推理更可靠。思考模式指南,核对于 10 月 18 日

思考过程也会消耗生成预算。从简短的非思考回答转向复杂推理时,应有意识地提高较小的输出上限。若要实现思考模式下的工具调用,后续携带工具的请求必须保留 assistant 的 reasoning_content,这是指南要求的。构造工具对话时,不要只保留可见的最终回答。

视觉能力可以接收图像和文本,但它不是图像生成端点。在 Chat Completions 中,应在 user 消息里使用 image_url 内容块、base64 data URL,或文档所述 Files API 格式。支持 JPEG、PNG、GIF 和 WebP。内联请求体上限是 48 MiB,单张内联或外链图片上限为 32 MiB。视觉指南

对于待读队列,可以发送一张去除隐私信息的截图,询问窄屏时哪些标签相互重叠。把它当作待浏览器验证的诊断,而不是布局已修好的证明。图像理解也不会赋予 API 移动鼠标或修改文件的权限。

Search 用于查找页面;Fetch 用于以 Markdown 获取页面。它们的独立端点是 POST /v1/tools/search 和 POST /v1/tools/fetch,使用相同的 bearer 密钥验证。Search 请求可以是 {"query":"browser storage documentation","count":3};Fetch 请求可以是 {"url":"https://developer.mozilla.org/en-US/docs/Web/API/Storage"}。你的应用必须显式调用这些端点,或使用能提供这些功能的集成。在普通聊天请求中提到一个 URL,不等于执行了相同工作流。Search 与 Fetch 指南

将获取到的网页内容与指令分开。检索页面是证据,不是授权你运行命令、泄露密钥或修改项目要求的指令。Fetch 同样受目标网站访问政策约束,不会赋予访问私人内容或付费墙内容的权限。

大型骨干网络可以少量激活参数,但不代表能装进笔记本

9 月发布的 V4.1 模型卡描述了一个 5520 亿参数的 MoE 骨干网络:prefill 时每个输入 token 约激活 80 亿参数,decode 时每个输出 token 约激活 160 亿参数。其因果编码器—解码器由 20 层因果编码器和 20 层解码器组成。这些架构信息属于基础版 V4.1,并不是 10 月 17 日新公布的架构。基础模型架构和技术报告链接

简单来说,prefill 处理已有提示词,decode 则生成答案。混合专家路由只选择部分专家,而不是每个 token 都激活整个骨干网络。模型的压缩注意力和共享缓存设计旨在降低长提示词的内存成本。但激活参数更少描述的是计算量,不是托管检查点所需的全部存储和内存。

宣传的上下文容量为 100 万 token。这是容量,不代表每次请求都要粘贴整个代码仓库,也不保证完美回忆。先提供任务、相关文件和具体错误;只有在缺少依赖或契约信息时,再扩大上下文。

若要自托管,请使用官方 1017 推理说明,其中介绍了检查点转换和张量并行执行。Hugging Face 页面上的通用 vLLM 启动命令并非这个模型专用的部署方案。下载权重前,应检查硬件、支持的内核和服务兼容性。deepseek-recipe负责提示词/协议转换,不提供推理,也不执行工具。普通笔记本用户最好先从托管服务开始。

估算整个任务,而不只盯着最便宜的 token

截至 2026 年 10 月 18 日,DeepSeek 公布的 Flash 价格以每百万 token 的美元价格计。官方价格

Token 类别高峰非高峰
输入,缓存未命中$0.30$0.15
输入,缓存命中$0.006$0.003
输出$1.20$0.60

高峰时段为周一至周五 UTC 时间 01:00–04:00 和 06:00–10:00,中国法定节假日除外;其余时间均为非高峰。按此时段,周末全部属于非高峰。安排请求时请使用 UTC,不要想当然地认为本地白天就属于高价时段。

假设某项示例任务有 100,000 个缓存未命中输入 token、200,000 个缓存命中输入 token 和 20,000 个输出 token,高峰费用计算如下:

纯文本
(0.1 x $0.30) + (0.2 x $0.006) + (0.02 x $1.20)
= $0.0300 + $0.0012 + $0.0240
= $0.0552

在非高峰价格下,这些假设用量为 $0.0276。这是算术示例,不是某个项目的实测账单。应使用实际缓存命中和未命中用量,不要假定重复上下文每次都能享受低价。

每 1,000 次成功且产生结果的请求,Search 和 Fetch 各收费 $0.75。因此,40 次计费搜索加 60 次计费抓取会产生 $0.075 费用,不含模型读取结果所用的 token。临时免费期只适用于通过指定 DeepSeek API 集成进行的服务器端调用;这些调用将于 2026 年 10 月 31 日 16:00 UTC 开始计费。它并不让直接调用端点一律免费。工具计费规则

任务成本由输入、输出、工具请求和运营成本构成。

原创核算图:预算时应计入思考输出、重试、工具调用和审核工作。这里不暗示项目平均成本。

结合测试框架理解基准提升

DeepSeek 报告了基础 V4.1 Flash 到 1017 版本的以下变化。这些是供应商报告的分数,不是本文独立测得的结果。1017 模型卡对比

基准测试V4.1 Flash1017变化
DeepSWE v1.174.277.0+2.8 分
Terminal-Bench 4.031.242.3+11.1 分
ProgramBench20.329.1+8.8 分

1017 模型卡注明,Terminal-Bench 4.0 使用 Claude Code,DeepSWE v1.1 使用 Mini-SWE-V2。测试框架会提供工具、上下文管理和执行策略;更换框架就改变了实验。不要把不同设置下的分数差异当成模型能力的纯粹对比。

要自行比较,就固定仓库、验收检查、权限和预算。记录项目是否能运行、需要多少次修正、总用量和耗时。公开分数高可以帮助筛选候选模型;它是否能胜任工作,最终取决于它在你环境中的可重复表现。

把更大的任务交给它之前,先明确这些问题

1017 是单独的 API 模型名称吗?

不是。使用 deepseek-flash。带日期的检查点名称用于标明更新,而 DeepSeek 托管 API 保持原有标识符。需要可重复性时,请记录日期和返回的模型信息。首次调用文档

MIT 权重意味着 API 免费吗?

不意味着。1017 模型卡使用 MIT 许可授权仓库和权重。托管 API 另行收费。权重许可也不授予私人输入、第三方素材或演示媒体的权利。

一条提示词就能做出完整游戏吗?

把官方演示视为发布方成果示例,而不是交付保证。在要求视觉润色之前,先定义移动、碰撞、重新开始行为和结束条件。能检查、能重新游玩的游戏,比庞大的生成代码库更适合作为里程碑。

应该始终使用最高思考强度和完整上下文吗?

不应该。从范围明确的请求开始,遇到具体失败时再增加思考强度或上下文。更多推理输出和更大的提示词都会消耗资源;两者都不能替代验收检查或谨慎的工具权限管理。

可以立刻发布生成的作品吗?

先检查功能、安全性、依赖许可和素材来源。删除示例凭据,并检查远程请求。部署批准应独立于本地项目编辑权限。

总结:有人检查了结果,才算完成

1017 有价值的承诺是更好地完成项目,而不是让人停止审核项目。给模型一个小目标、受限环境和可观察的检查。只有当前行为通过你的批准后,再扩展项目范围。

来源

产品文档和价格核对于 2026 年 10 月 18 日。基准和训练方面的说法均归于 DeepSeek;练习是教学示例,并非声称已实际运行。三张图均为原创说明图。链接展示供应商演示,未转载演示媒体。

让下一个项目更容易接续

把源链接、项目简报、提示词和审核笔记放在一起,让下次开始时能接续已做的决定,而非从头猜起。Telli.sh 可以整理这类项目知识;它不是 DeepSeek 编程智能体集成。创建 Telli.sh 账户


← 返回博客