如何使用WPS多维表格的JS开发功能,接入Deepseek呢?

场景举例

📢

如何使用WPS多维表格的JS开发功能,接入Deepseek呢?

💻 教程视频:https://www.bilibili.com/video/BV1WfNheaEgU/?spm_id_from=333.1387.homepage.video_card.click&vd_source=af3e54e523b1d1e3825e2e85e66dc40b

例如:某学校老师在课堂上给学生做单词测试,在多维表格里录入10个英文单词,然后点击“翻译”按钮调用Deepseek的接口将10个单词翻译。那么如何实现呢?

效果图:因为deepseek服务原因,请求时长稍微有点慢

代码

// 获取按多维表格“按钮”字段触发的参数,拿到记录ID
const text_id = Context.argv.id[0]

//在表名为“调用DeepSeek”的记录ID里获取“问题”文本里的单词
const text1 = Application.Sheets('调用DeepSeek').RecordRange(text_id,"@问题").Text

//text内容为:提示Deepseek翻译
const text = "请翻译单词:" + text1

//请求Deepseek API
const url = 'https://api.deepseek.com/chat/completions'
const apiKey = "你的API key"
const data = {
    model:"deepseek-chat",
    messages:[
        {"role": "user", "content": text},
    ],
  };
  const resp = HTTP.fetch(url, {
    method: 'POST',
    body: JSON.stringify(data),
    headers: {
      'Authorization': `Bearer ${apiKey}`,
      'Content-Type': 'application/json'
    }
  })


// 获取json里的choices里的内容
  const resptext= resp.json().choices[0].message.content
  console.log(resptext)

//写入多维表格中
Application.Sheets('调用DeepSeek').RecordRange(text_id,"@DeepSeek回复").Value = resptext


function main(){
  console.log(Application.Selection.GetSelectionRecords())
}
main()

步骤

  1. 第1步,新建多维表格,表名、字段名如图 (包括按钮字段)

第1步,新建多维表格

新建按钮字段,命名为AI按钮

  1. 第2步,进入“脚本-Airscript脚本”编辑器,新建脚本并在脚本里粘贴代码,替换成自己的API key(登录Deepseek开放平台,获取API key:https://www.deepseek.com/

第2步,进入JS脚本编辑器

新建脚本并粘贴代码

  1. 第3步,添加网络API,请求Deepseek接口需要联网

第4步,添加网络API

  1. 第4步,新建自动化流程,并配置“点击按钮时”触发“airscript脚本”,注意填入脚本入参

{
  "id":记录ID
}

第4步,自动化配置“点击按钮时”触发

执行airscript脚本,填入脚本入参

  1. 在多维表格里点击按钮,运行测试并查看效果。注意:Deepseek返回的内容为Markdown格式,在多维表格中没有对Markdown做处理。

运行效果

广东省
浏览 1247
2
2
分享
2 +1
2
2 +1
全部评论 2
 
AQUA
· 广东省
回复
 
江浩
· 浙江省
回复