前段时间,飞书多维表格接入了 Deepseek,很多人用它批量生成文案、批量处理信息之类。
其实 Google Sheets 也可以做到。方法也很简单,只需要按照下面步骤做:
准备工作
首先需要自己准备 API Key。可以是 OpenAI、Deepseek、Grok 或者所有兼容 OpenAI API 的 Key。
申请地址:
供应商 | 申请地址 |
---|---|
OpenAI | 这里 |
Deepseek | 这里 |
Grok | 这里 |
在示例中,我用的 Grok,在 X.AI 可以申请。
让 Google Sheets 启用 AI
打开想要用 AI 的 Google Sheets,选择菜单 Extensions > Apps Script
.
复制这段 Apps Script 代码 的内容,然后粘贴到编辑器
点击编辑器的保存按钮,回到 Google Sheet,准备四个单元格,分别输入 API Base
,API Key
,Model
和 System Prompt
。在我的示例中,他们的位置在 $C$2
、$C$3
、$C$4
、$C$5
,然后输入对应的值。
我用的 grok,所以他们的值分别是:
变量 | 值 |
---|---|
API BASE | https://api.x.ai/v1 |
API KEY | 申请的 API KEY |
Model | 模型的名字 |
System Prompt | 输入系统提示语 |
其中
API BASE
需要根据选择的 AI 供应商换成对应的地址。例如 OpenAI 换成https://api.openai.com/v1
,Deepseek 换成https://api.deepseek.com
,Grok 可以是https://api.x.ai/v1
Model
需要根据选择的 AI 供应商换成对应的模型名字。例如 OpenAI 可以换成4o-mini
,Deepseek 可以换成deepseek-chat
,Grok 可以是grok-2-latest
System Prompt
就是自己编写的任务 prompt 了
然后直接在 Google Sheet 里像调用普通函数一样调用 AskLLM 就行。
调用方法是
=AskLLM($C$2, $C$3, $C$4, $C$5, B12)
其中,$C$2
、$C$3
、$C$4
、$C$5
是上文提到的四个固定变量,B12 是需要问 AI 的内容
最终效果如下:
可能的问题和优化
- 由于请求是从 Google 服务器所在的 IP 发出去的,不确定是不是会被供应商 ban 掉。一个可能比较好的做法是在自己的服务器上进行转发,让 Google 请求自己的服务器。这样从供应商的视角看上去就是从自己的服务器调用 API。
- 使用时需要在 Google Sheets 里输入 API Key,而 Google Sheets 经常分享给其他人,如果保管不慎可能泄漏私钥。解决的方法要么用完就删除 API Key,要么就在自己的服务器上做一下鉴权。
如果 Google 官方一直没做,那么做成解决方案的话也许能卖 😋。
Google Workspace Marketplace 里面已经有很多了。