当前位置: 首页 > news >正文

免费deepseek的API获取教程及将API接入word或WPS中

免费deepseek的API获取教程:

1 https://cloud.siliconflow.cn/中注册时填写邀请码:GAejkK6X即可获取2000 万 Tokens;
2 按照图中步骤进行操作
在这里插入图片描述

将API接入word或WPS中

1 打开一个word,文件-选项-自定义功能区-勾选开发工具-左侧的信任中心-信任中心设置-宏设置-启用所有宏-确定
在这里插入图片描述
2
2 开发工具-VB-插入-模块
在这里插入图片描述
在这里插入图片描述

3 在调出的窗口中输入如下代码

Function CallDeepSeekAPI(api_key As String, inputText As String) As StringDim API As StringDim SendTxt As StringDim Http As ObjectDim status_code As IntegerDim response As StringAPI = "https://api.siliconflow.cn/v1/chat/completions"SendTxt = "{""model"": ""deepseek-ai/DeepSeek-V3"", ""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 SendTxtstatus_code = .Statusresponse = .responseTextEnd With' 弹出窗口显示 API 响应(调试用)' MsgBox "API Response: " & response, vbInformation, "Debug Info"If status_code = 200 ThenCallDeepSeekAPI = responseElseCallDeepSeekAPI = "Error: " & status_code & " - " & responseEnd IfSet Http = Nothing
End FunctionSub DeepSeekV3()Dim api_key As StringDim inputText As StringDim response As StringDim regex As ObjectDim matches As ObjectDim originalSelection As Objectapi_key = "替换为你的api key"If api_key = "" ThenMsgBox "Please enter the API key."Exit SubElseIf Selection.Type <> wdSelectionNormal ThenMsgBox "Please select text."Exit SubEnd If' 保存原始选中的文本Set originalSelection = Selection.Range.DuplicateinputText = Replace(Replace(Replace(Replace(Replace(Selection.text, "\", "\\"), vbCrLf, ""), vbCr, ""), vbLf, ""), Chr(34), "\""")response = CallDeepSeekAPI(api_key, inputText)If Left(response, 5) <> "Error" ThenSet regex = CreateObject("VBScript.RegExp")With regex.Global = True.MultiLine = True.IgnoreCase = False.Pattern = """content"":""(.*?)"""End WithSet matches = regex.Execute(response)If matches.Count > 0 Thenresponse = matches(0).SubMatches(0)response = Replace(Replace(response, """", Chr(34)), """", Chr(34))' 取消选中原始文本Selection.Collapse Direction:=wdCollapseEnd' 将内容插入到选中文字的下一行Selection.TypeParagraph ' 插入新行Selection.TypeText text:=response' 将光标移回原来选中文本的末尾originalSelection.SelectElseMsgBox "Failed to parse API response.", vbExclamationEnd IfElseMsgBox response, vbCriticalEnd If
End Sub

4 文件-选项-自定义功能区-选中开发工具-新建组(命名为deepseek)
在这里插入图片描述
5 中间框中依次选中“宏”-deepseek模型-(选中刚创建的deepseek组)添加
6 文件-另存为带宏的模板-放入C:\Users<YourUsername>\AppData\Roaming\Microsoft\Word\STARTUP中,完成

7上述代码为v3模型,r1模型代码如下:

Function CallDeepSeekAPI(api_key As String, inputText As String) As StringDim API As StringDim SendTxt As StringDim Http As ObjectDim status_code As IntegerDim response As StringAPI = "https://api.siliconflow.cn/v1/chat/completions"SendTxt = "{""model"": ""deepseek-ai/DeepSeek-R1"", ""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 SendTxtstatus_code = .Statusresponse = .responseTextEnd With' 弹出窗口显示 API 响应(调试用)' MsgBox "API Response: " & response, vbInformation, "Debug Info"If status_code = 200 ThenCallDeepSeekAPI = responseElseCallDeepSeekAPI = "Error: " & status_code & " - " & responseEnd IfSet Http = Nothing
End FunctionSub DeepSeekR1()Dim api_key As StringDim inputText As StringDim response As StringDim regex As ObjectDim matches As ObjectDim originalSelection As Objectapi_key = "替换为你的api key"If api_key = "" ThenMsgBox "Please enter the API key."Exit SubElseIf Selection.Type <> wdSelectionNormal ThenMsgBox "Please select text."Exit SubEnd If' 保存原始选中的文本Set originalSelection = Selection.Range.DuplicateinputText = Replace(Replace(Replace(Replace(Replace(Selection.text, "\", "\\"), vbCrLf, ""), vbCr, ""), vbLf, ""), Chr(34), "\""")response = CallDeepSeekAPI(api_key, inputText)If Left(response, 5) <> "Error" ThenSet regex = CreateObject("VBScript.RegExp")With regex.Global = True.MultiLine = True.IgnoreCase = False.Pattern = """content"":""(.*?)"""End WithSet matches = regex.Execute(response)If matches.Count > 0 Thenresponse = matches(0).SubMatches(0)response = Replace(Replace(response, """", Chr(34)), """", Chr(34))' 取消选中原始文本Selection.Collapse Direction:=wdCollapseEnd' 将内容插入到选中文字的下一行Selection.TypeParagraph ' 插入新行Selection.TypeText text:=response' 将光标移回原来选中文本的末尾originalSelection.SelectElseMsgBox "Failed to parse API response.", vbExclamationEnd IfElseMsgBox response, vbCriticalEnd If
End Sub

完整版见链接:https://rvq2yh94tm.feishu.cn/docx/HXLDdLmZcoE7hGxS1RqcomEanSd

http://www.lryc.cn/news/537297.html

相关文章:

  • langchain学习笔记之小样本提示词Few-shot Prompt Template
  • 【CS.SE】优化 Redis 商户号池分配设计:高并发与内存管理
  • 5、《Spring Boot自动配置黑魔法:原理深度剖析》
  • 稀土抑烟剂——为纺织品安全加持,保护您的每一寸触感
  • 如何使用CSS画一个三角形,原理是什么?
  • Docker拉不下来镜像问题解决法案
  • DeepSeek 多模态大模型Janus-Pro本地部署教程
  • 笔记8——模式匹配 match语句(仅在Python 3.10及以上版本中可用)
  • maven-antrun-plugin插件的用法
  • iOS主要知识点梳理回顾-4-运行时类和实例的操作
  • vue2和vue3生命周期的区别通俗易懂
  • 使用 meshgrid函数绘制网格点坐标的原理与代码实现
  • postgresql源码学习(59)—— 磁盘管理器 SMGR
  • Spring Boot(8)深入理解 @Autowired 注解:使用场景与实战示例
  • UE_C++ —— Structs
  • ArcGISPro 新建shp+数据结构
  • DeepSeek教unity------MessagePack-06
  • 2.【BUUCTF】bestphp‘s revenge
  • 《刚刚问世》系列初窥篇-Java+Playwright自动化测试-23- 操作鼠标拖拽 - 番外篇(详细教程)
  • Netty源码解析之异步处理(二):盛赞Promise中的集合设计
  • NetworkX布局算法:nx.spring_layout
  • Navicat导入海量Excel数据到数据库(简易介绍)
  • LeetCodehot100 力扣热题100 二叉树展开为链表
  • 2.14学习总结
  • 在WPS中通过JavaScript宏(JSA)调用本地DeepSeek API优化文档教程
  • zola + github page,用 workflows 部署
  • 【科技革命】颠覆性力量与社会伦理的再平衡
  • UIView 与 CALayer 的联系和区别
  • Jenkins 新建配置 Freestyle project 任务 六
  • 深入解析A2DP v1.4协议:蓝牙高质量音频传输的技术与实现