在文档处理中引入AI能力可以大幅提升工作效率。本文将详细介绍使用自定义宏调用DeepSeek API。
实现步骤:
一、获取API Key
1 访问DeepSeek官网:DeepSeek
2 注册或登录您的账号
3 在控制台中生成API Key,并妥善保存。
4 目前DeepSeek官网已支持充值,需充值后方可使用API Key,选择最小充值金额即可。
二、启用开发者工具
-
打开Microsoft Word。
-
点击文件 > 选项 > 自定义功能区。
-
在右侧勾选开发者工具,点击确定。
三、配置信任中心
-
点击文件 > 选项 > 信任中心 > 信任中心设置。
-
选择宏设置,勾选启用所有宏和信任对VBA工程对象模型的访问。
-
点击确定,保存设置。
四、添加模块
1.点击开发者工具 > Visual Basic,打开VBA编辑器。
2.在左侧项目窗口中,右键点击Normal,选择插入 > 模块。
3. 将以下代码粘贴到编辑区中,注意替换为您自己的DeepSeek API Key:
Sub DeepSeekPolish()
Dim selectedText As String
Dim apiKey As String
Dim response As Object, re As String
Dim midString As String
Dim ans As String
Dim polishPrompt As String
Dim url As String
Dim jsonResponse As Object
' 检查是否有正常选中的文本
If Selection.Type = wdSelectionNormal Then
' 获取选中文本并去除不需要的字符
selectedText = Selection.Text
selectedText = Replace(selectedText, ChrW$(13), "")
' 定义API密钥和请求URL
apiKey = "sk-****"
url = "https://api.deepseek.com/v1/chat/completions"
' 设置润色提示词
polishPrompt = "请润色以上文字,要求语句通顺,条理清晰,专业而合理。"
' 创建HTTP请求对象并设置参数
Set response = CreateObject("MSXML2.XMLHTTP")
response.Open "POST", url, False
' 添加必要的头部信息
response.setRequestHeader "Content-Type", "application/json"
response.setRequestHeader "Authorization", "Bearer " + apiKey
' 构建请求体
Dim requestBody As String
requestBody = "{""model"":""deepseek-chat"", ""messages"":[{""role"":""user"",""content"":""" & selectedText & " " & polishPrompt & """}], ""temperature"":0.7}"
' 发送请求
response.send requestBody
' 检查请求是否成功
If response.Status = 200 Then
' 处理响应数据
re = response.responseText
midString = Mid(re, InStr(re, """content"":""") + 11)
ans = Split(midString, """")(0)
ans = Replace(ans, "\n", "")
' 将原选中文本与润色后的文本一起插入文档中
Selection.Text = selectedText & vbNewLine & ans
Else
MsgBox "API请求失败,状态码:" & response.Status & ",响应:" & response.responseText
End If
Else
MsgBox "请先选中一段文本。"
End If
End Sub
五、自定义功能区
-
点击文件 > 选项 > 自定义功能区。
-
在右侧右键点击开发者工具,选择添加新组。
-
右键点击新建的组,选择重命名,将其命名为“DeepSeek”,并选择一个图标。
-
在左侧命令列表中选择宏,找到并选中
DeepSeekPolish
,点击添加。 -
右键点击添加的命令,选择重命名,将其命名为“**”,并选择一个图标。
六、使用方法
-
选中文本:在Word文档中选中需要处理的文本。
-
点击生成:点击功能区中的“生成”按钮。
-
等待响应:稍等片刻,AI处理后的文本将插入到文档中。