- 文档
- 教程
- 知识库
- 人工智能
【免费下载链接】ai-guide
程序员鱼皮的 AI 资源大全 + Vibe Coding 零基础教程,分享 OpenClaw 保姆级教程、大模型玩法(DeepSeek / GPT / Gemini / Claude / GLM)、最新 AI 资讯、Prompt 提示词大全、AI 知识百科(Agent Skills / RAG / MCP / A2A)、AI 编程教程(Harness Engineering)、AI 工具用法(Cursor / Claude Code / TRAE / Codex / Copilot)、AI 开发框架教程(Spring AI / LangChain)、AI 产品变现指南,帮你快速掌握 AI 技术,走在时代前沿。本项目为开源文档 aiguide,已升级为鱼皮 AI 导航网站
本文是一份可直接落地的实操指南,讲解如何通过 WPS 的「开发工具 + VBA 宏」将 DeepSeek-R1 推理模型接入文档编辑器,实现选中文字即可调用 AI 生成内容、优化表达与逻辑分析。文章完整覆盖 API Key 获取、宏环境配置、VBA 代码逐段解析、功能区按钮定制、模板复用五大环节,并附上本仓库中同系列文档的扩展用法(Word 双模型版本、Excel 单元格调用),读完后你可以在自己的 WPS 中复刻出一个“文档级 AI 助手”。
为什么要把 DeepSeek-R1 装进 WPS?
在日常办公中,WPS 的角色通常是“敲字、插图、改排版”的编辑器,写完内容还要人工检查语法、优化表达,遇到需要构思文案或理清方案逻辑的环节更是耗时。而把 DeepSeek-R1 接入 WPS 后,相当于在文档里内置了一个 AI 小助手,可以做到三件事:
- 快速生成内容:给出大纲或一句提示,AI 自动扩展成流畅文本;
- 优化表达:对现有段落进行润色,让行文更自然、更有说服力;
- 逻辑推理:写方案、分析数据、整理报告时,借助模型把思路理顺。
从实现原理上看,这一方案并不复杂:WPS 支持 VBA(Visual Basic for Applications)宏,宏内部通过MSXML2.XMLHTTP对象向 DeepSeek 的 OpenAI 兼容接口发送 HTTP 请求,再把返回的 JSON 文本解析后写回文档。因此,接入的“核心动作”其实是两件事:拿到一个有效的 API Key,以及把一段调用代码粘贴进宏模块。
值得说明的是,本指南选择的是deepseek-reasoner(即 DeepSeek-R1)推理模型。与deepseek-chat这类指令模型不同,R1 在给出最终回答前会先生成大量思维链(Chain-of-Thought)token,先解释问题、分解问题再作答。在 WPS 场景下,这意味着你不仅能拿到结果,还能把模型的“推理过程”一并插入文档,让分析类内容更有依据——这正是本仓库《DeepSeek 的“服务器繁忙”让所有人抓狂》一文中提到的 R1 与 V3 的运作差异(详见 AI行业资讯/2025-02/DeepSeek的“服务器繁忙”让所有人抓狂,背后究竟是怎么回事.md)。
第一步:获取 DeepSeek API Key
API Key 相当于进入 AI 世界的“通行证”,WPS 宏将通过它完成身份鉴权。获取方式主要有两种:
方案一:DeepSeek 官方 API Key
前往 DeepSeek 官网(注册入口见 AI/DeepSeek资源汇总/DeepSeek 官方链接.md),登录后进入「API 开放平台」,在左侧「API keys」页面点击创建 API key,填写名称后自动生成 Key,复制保存备用。官方接口地址为https://api.deepseek.com/chat/completions(也兼容/v1/chat/completions前缀,本仓库 Excel 接入示例 即使用带/v1的地址)。
方案二:第三方云平台提供的 API Key
DeepSeek 官方服务高峰期频繁出现“服务器繁忙”,主要源于推理算力供不应求(详见 DeepSeek 的“服务器繁忙”让所有人抓狂)。腾讯云、阿里云、火山引擎、硅基流动等平台都已上线 DeepSeek 系列模型的 API 服务,可以按需选用。本仓库 2分钟学会 DeepSeek API 一文详细对比了各平台的价格、赠送额度与稳定性,满血版 DeepSeek 第三方使用渠道汇总 也收录了多家渠道,均可作为备选。
⚠️重要提醒:无论使用哪个平台的 API Key,都必须保证账户有余额,否则接口会返回鉴权或额度相关的错误,AI 不会正常工作。
第二步:配置 WPS 开发工具
要让 AI 跑起来,先要打开 WPS 的开发模式,流程分三步。
1. 启用「开发工具」功能区
打开 WPS,新建任意文档后:
- 点击文件 → 选项 → 自定义功能区;
- 在右侧功能区列表中勾选“工具”(其中包含开发工具入口);
- 点击确定保存设置。
2. 配置信任中心(宏安全性)
- 进入文件 → 选项 → 信任中心;
- 选择“信任中心设置” → “宏安全性”;
- 将安全性设置为“低”,这样才能允许运行 VBA 宏。
3. 添加宏模块
- 在 WPS 顶部菜单栏点击工具 → 开发工具 → 切换到 VB 环境,随后重启 WPS;
- 重启后点击VB 编辑器,在弹出的窗口中点击插入 → 模块;
- 将 VBA 代码粘贴到编辑区,保存后关闭 VB 编辑器。
第三步:核心 VBA 宏代码逐段解析
以下代码来自本指南关联文档,实现了两个部分:CallDeepSeekAPI函数负责发送 HTTP 请求并接收响应,DeepSeekR1子程序负责读取选中文本、调用 API、解析 JSON 并写回文档。请将代码中的api_key替换为你申请到的真实 Key。
Function CallDeepSeekAPI(api_key As String, inputText As String) As String Dim API As String Dim SendTxt As String Dim Http As Object Dim status_code As Integer Dim response As String API = "https://api.deepseek.com/chat/completions" SendTxt = "{""model"": ""deepseek-reasoner"", ""messages"": [{""role"":""system"", ""content"":""You are a Word assistant""}, {""role"":""user"", ""content"":""" & inputText & """}], ""stream"": false}" Set Http = CreateObject("MSXML2.XMLHTTP") With Http .Open "POST", API, False .setRequestHeader "Content-Type", "application/json" .setRequestHeader "Authorization", "Bearer " & api_key .send SendTxt status_code = .Status response = .responseText End With ' 弹出窗口显示 API 响应(调试用) ' MsgBox "API Response: " & response, vbInformation, "Debug Info" If status_code = 200 Then CallDeepSeekAPI = response Else CallDeepSeekAPI = "Error: " & status_code & " - " & response End If Set Http = Nothing End Function Sub DeepSeekR1() Dim api_key As String Dim inputText As String Dim response As String Dim regex As Object Dim reasoningRegex As Object Dim contentRegex As Object Dim matches As Object Dim reasoningMatches As Object Dim originalSelection As Object Dim reasoningContent As String Dim finalContent As String api_key = "替换为你的api key" If api_key = "" Then MsgBox "Please enter the API key." Exit Sub ElseIf Selection.Type <> wdSelectionNormal Then MsgBox "Please select text." Exit Sub End If ' 保存原始选中的文本 Set originalSelection = Selection.Range.Duplicate inputText = Replace(Replace(Replace(Replace(Replace(Selection.text, "\", "\\"), vbCrLf, ""), vbCr, ""), vbLf, ""), Chr(34), "\""") response = CallDeepSeekAPI(api_key, inputText) If Left(response, 5) <> "Error" Then ' 创建正则表达式对象来分别匹配推理内容和最终回答 Set reasoningRegex = CreateObject("VBScript.RegExp") With reasoningRegex .Global = True .MultiLine = True .IgnoreCase = False .Pattern = """reasoning_content"":""(.*?)""" End With Set contentRegex = CreateObject("VBScript.RegExp") With contentRegex .Global = True .MultiLine = True .IgnoreCase = False .Pattern = """content"":""(.*?)""" End With ' 提取推理内容 Set reasoningMatches = reasoningRegex.Execute(response) If reasoningMatches.Count > 0 Then reasoningContent = reasoningMatches(0).SubMatches(0) reasoningContent = Replace(reasoningContent, "\n\n", vbNewLine) reasoningContent = Replace(reasoningContent, "\n", vbNewLine) reasoningContent = Replace(Replace(reasoningContent, """", Chr(34)), """", Chr(34)) End If ' 提取最终回答 Set matches = contentRegex.Execute(response) If matches.Count > 0 Then finalContent = matches(0).SubMatches(0) finalContent = Replace(finalContent, "\n\n", vbNewLine) finalContent = Replace(finalContent, "\n", vbNewLine) finalContent = Replace(Replace(finalContent, """", Chr(34)), """", Chr(34)) ' 取消选中原始文本 Selection.Collapse Direction:=wdCollapseEnd ' 插入推理过程(如果存在) If Len(reasoningContent) > 0 Then Selection.TypeParagraph Selection.TypeText "推理过程:" Selection.TypeParagraph Selection.TypeText reasoningContent Selection.TypeParagraph Selection.TypeText "最终回答:" Selection.TypeParagraph End If ' 插入最终回答 Selection.TypeText finalContent ' 将光标移回原来选中文本的末尾 originalSelection.Select Else MsgBox "Failed to parse API response.", vbExclamation End If Else MsgBox response, vbCritical End If End Sub请求构造:JSON 与鉴权头
SendTxt是发送给接口的 JSON 请求体,关键字段如下:
model:模型名称,这里固定为deepseek-reasoner(即 R1)。若改用deepseek-chat,则走 V3 指令模型,响应中不会携带reasoning_content字段;messages:对话消息数组,包含一条 system 指令(You are a Word assistant)和一条携带用户选中文本的 user 消息;stream:设为false,让接口一次性返回完整结果,便于宏同步处理。
鉴权则通过请求头完成:Authorization: Bearer <api_key>与Content-Type: application/json。MSXML2.XMLHTTP是 Windows 系统内置组件,因此无需额外安装依赖库。
入参清洗:为什么选中文本要经过 5 次 Replace
宏读取选中文本后,用Replace连续处理了 5 类字符,这是保证 JSON 合法性的关键:
- 反斜杠
\→\\(JSON 转义); vbCrLf、vbCr、vbLf三种换行符统一移除,避免 JSON 字符串被硬回车截断;- 双引号
Chr(34)→\""(在 VBA 字符串字面量中写作\""""),防止选中文本中的引号破坏 JSON 结构。
响应解析:两条正则分别抓“推理”与“回答”
R1 的响应 JSON 中,reasoning_content字段是思维链内容,content字段是最终回答。代码用两个VBScript.RegExp对象分别匹配这两个字段,再用SubMatches(0)取出捕获组文本,最后把 JSON 中的\n/\n\n转义还原为vbNewLine,把\"还原为真实双引号。
回写策略:推理过程与最终回答分块插入
拿到内容后,宏先把光标折叠到选中文本末尾(Selection.Collapse Direction:=wdCollapseEnd),若存在推理内容则依次插入「推理过程:」「推理内容」「最终回答:」三段,再插入最终回答,最后通过originalSelection.Select把光标移回原选中文本末尾,方便继续编辑。若响应以Error开头,或正则匹配失败,则弹出对应的错误对话框。
双模型扩展版:deepseek-chat 与 deepseek-reasoner 同屏切换
本仓库同系列的 Word 接入 DeepSeek 手把手教程 提供了更完整的双模型版本:定义CallDeepSeekAPI(V3)与CallDeepSeekRAPI(R1)两个函数,并分别配套DeepSeekV3、DeepSeekR两个子程序,system 指令改为中文“你是word文案助手”。其解析逻辑与本文基本一致,但额外做了两点处理:把\n还原为vbCrLf,并移除回答中的*、#等 Markdown 符号,更适合直接在文档中呈现。日常续写可优先使用deepseek-chat(更快、更省 token),需要深度推理时再切换到 R1 版本。
第四步:自定义功能区,加一个 AI 按钮
代码就位后,给它一个入口:
- 回到 WPS 主界面,点击文件 → 选项 → 自定义功能区;
- 在右侧列表新建一个组,命名为DeepSeek;
- 在左侧命令列表中找到宏,选中刚刚创建的
DeepSeekR1宏; - 点击添加,右键重命名为生成;
- 点击确定保存设置。
这样 WPS 功能区里就多了一个「生成」按钮,选中文本后点击即可调用 AI。
第五步:实战测试
- 新建 WPS 文档,输入一句话,例如“请对 AI 的未来发展做简短分析”;
- 选中这句话;
- 点击刚刚创建的生成按钮;
- 等待几秒,AI 会自动生成完整分析,并连同推理过程一起插入到文档中。
体验与“在文档里请了个贴身秘书”一致:续写文案、润色表达、分析问题都在同一界面内完成,无需切换应用。若遇到报错,可先检查 API Key 是否填写正确、账户是否有余额,再确认宏安全性是否已设为“低”。
第六步:保存为 WPS 模板,一劳永逸
每次重新配置宏太麻烦,可以把它固化下来:
- 点击文件 → 另存为;
- 文件类型选择“Microsoft Word 带宏的模板文件(*.dotm)”;
- 保存到 WPS 的模板文件夹,通常是
C:\Users\用户名\AppData\Roaming\kingsoft\wps\startup。
下次需要使用时,直接打开这个模板文件即可,宏和按钮都会随之加载。
扩展与注意事项
从 WPS 延伸到 Word 与 Excel
这套“VBA + DeepSeek API”的组合并不局限于 WPS。同类实现可以直接平移到 Microsoft Word(开发工具与 VBA 机制一致),本仓库 Word 接入教程 即为完整参考。表格场景也有现成方案:DeepSeek 嵌入 Excel 教程 通过Alt+F11打开 VBA 编辑器、插入模块后粘贴CallDeepSeekAPI宏,即可实现“A1 输入问题、点击按钮、A2 输出回答”的单元格级 AI 助手,其请求体结构与本文完全同源。
使用与安全建议
- Key 与成本:API Key 等同于账户凭证,请妥善保管,不要随文档随意传播;DeepSeek 按 token 计费,调用前确认余额充足(各平台价格与赠送额度对比见 2分钟学会 DeepSeek API)。
- 数据边界:宏会把选中的文本发送至所配置的 API 服务端,涉及机密内容时请谨慎选择调用渠道,并留意第三方平台的数据政策。
- 宏安全:本文要求将宏安全性设为“低”以运行代码,仅在个人可控环境中使用,不要随意运行来源不明的宏文件。
- 兼容性:代码基于 Windows 环境的
MSXML2.XMLHTTP组件与 WPS 的 VBA 运行时,Mac 版或部分 Linux 环境下的 WPS 不支持该调用方式,适用前提以你的客户端版本为准。
小结
从 API Key 申请、宏环境开启、VBA 代码粘贴,到功能区按钮定制与模板保存,这套流程完整复刻了“文档编辑器 + 推理模型”的集成路径。其核心价值在于:让 AI 能力以“选中即生成”的方式无缝嵌入写作流程,续写、润色、推理分析均可在文档内一次完成。如果你想进一步深挖 API 调用原理或多模型切换,可继续阅读仓库中的 2分钟学会 DeepSeek API、Word 接入教程 与 Excel 接入教程,把这套 VBA 集成思路扩展到更多办公场景。
- 文档
- 教程
- 知识库
- 人工智能
【免费下载链接】ai-guide
程序员鱼皮的 AI 资源大全 + Vibe Coding 零基础教程,分享 OpenClaw 保姆级教程、大模型玩法(DeepSeek / GPT / Gemini / Claude / GLM)、最新 AI 资讯、Prompt 提示词大全、AI 知识百科(Agent Skills / RAG / MCP / A2A)、AI 编程教程(Harness Engineering)、AI 工具用法(Cursor / Claude Code / TRAE / Codex / Copilot)、AI 开发框架教程(Spring AI / LangChain)、AI 产品变现指南,帮你快速掌握 AI 技术,走在时代前沿。本项目为开源文档 aiguide,已升级为鱼皮 AI 导航网站
相关推荐
2025终极指南:如何快速集成DeepSeek R1大模型到Plandex实现AI编码引擎升级
2025终极指南:如何快速集成DeepSeek R1大模型到Plandex实现AI编码引擎升级 Plandex作为一款强大的AI编码引擎,能够帮助开发者高效处理
人工智能AI Agent代码智能体CLI开发工具3步搞定:国家中小学智慧教育平台电子课本批量下载终极方案
3步搞定:国家中小学智慧教育平台电子课本批量下载终极方案 还在为无法下载智慧教育平台的电子课本而烦恼吗? 电子课本下载工具 让您轻松获取PDF教材,告别在线学习
网页爬虫教育DeepSeek-R1成本优化:推理费用控制实战指南
DeepSeek R1成本优化:推理费用控制实战指南 痛点:大模型推理成本居高不下,如何破局? 还在为大语言模型推理的高昂成本而头疼吗?DeepSeek R1作
基础模型大模型人工智能DeepSeek
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考