从零接入 AI 办公 API:调用流程、参数说明与完整命令示例
AI办公 API接口调用教程|附完整命令
在企业数字化办公场景中,AI 已经不再只是“聊天机器人”,而是可以嵌入到文档处理、数据分析、邮件生成、客服回复、会议纪要、知识库问答、流程审批等多个环节中的自动化能力。对于开发者、运营人员、产品经理或企业信息化负责人来说,掌握 AI API 接口调用方法,能够快速把 AI 能力接入到现有办公系统中,例如 OA、CRM、ERP、企业微信、钉钉、飞书、内部知识库和自研后台。
本文将以通用 AI 办公 API 的调用方式为例,系统讲解 API 接口的基本概念、调用流程、鉴权方式、请求参数、返回结果解析,并提供 curl、Python、Node.js 等完整命令示例,帮助你快速完成从“能调用”到“能落地”的过程。
一、什么是 AI办公 API?
AI办公 API,简单来说,就是通过 HTTP 接口调用大模型或 AI 服务,让程序能够自动完成办公相关任务。例如:
- 自动生成日报、周报、月报;
- 根据会议录音或会议文本生成会议纪要;
- 根据用户问题查询企业知识库并生成回答;
- 对 Excel 数据进行分析并输出结论;
- 自动润色邮件、通知、公告、合同文本;
- 批量总结文档内容;
- 自动生成 PPT 大纲;
- 将自然语言转为 SQL 查询语句;
- 对客服会话进行分类、质检和总结。
API 的优势在于它可以和业务系统深度集成。相比手动在网页端输入问题,API 调用更适合自动化、批量化和系统化处理。
举个简单例子:
如果你希望每天上午 9 点自动读取销售数据,并生成一份销售日报发送到企业微信群,那么就可以通过程序调用 AI API,把销售数据作为输入,让 AI 生成分析结果,再通过企业微信机器人推送出去。
二、调用 AI API 前需要准备什么?
在正式调用接口之前,一般需要准备以下内容:
1. API Key
API Key 是接口调用的身份凭证,相当于“密码”或“令牌”。服务商会根据 API Key 判断请求来自哪个账号,并进行权限校验、计费统计和限流控制。
通常你需要在 AI 服务平台的控制台中创建 API Key。创建后请妥善保存,不要直接写入公开代码仓库,也不要暴露在前端页面中。
推荐做法是把 API Key 存放在环境变量中,例如:
export AI_API_KEY="你的API_KEY"
在 Windows PowerShell 中可以使用:
$env:AI_API_KEY="你的API_KEY"
2. API 请求地址
不同平台的接口地址不同,常见格式如下:
https://api.example.com/v1/chat/completions
如果是知识库问答、文本生成、图片识别、文档解析等能力,接口路径可能不同,例如:
https://api.example.com/v1/knowledge/query
https://api.example.com/v1/document/summary
https://api.example.com/v1/embeddings
本文以聊天补全类接口为例,因为它是 AI 办公场景中最常用、最通用的接口形式。
3. 模型名称
调用 API 时通常需要指定模型,例如:
"model": "office-ai-chat"
不同模型能力、速度、上下文长度和价格可能不同。办公场景中一般可以按需求选择:
| 场景 | 推荐模型类型 |
|---|---|
| 日常文本生成 | 通用对话模型 |
| 长文档总结 | 长上下文模型 |
| 数据分析 | 推理能力较强的模型 |
| 企业知识库问答 | 支持 RAG 的模型 |
| 邮件和公文润色 | 写作增强模型 |
| 批量自动化任务 | 成本较低、速度较快的模型 |
三、AI办公 API 的基本调用流程
一次标准的 AI API 调用通常包括以下步骤:
- 准备 API Key;
- 组织请求参数;
- 发送 HTTP 请求;
- 接收接口响应;
- 解析 AI 返回内容;
- 写入业务系统或继续执行后续流程。
整体流程可以理解为:
业务系统/脚本
↓
构造 Prompt 和参数
↓
调用 AI API
↓
获取模型返回结果
↓
解析并应用到办公场景
例如,调用 AI 生成周报时,可以将本周完成事项、关键指标、风险问题等作为输入,让模型输出规范格式的周报内容。
四、接口请求结构说明
下面是一个常见的 AI 对话接口请求示例:
{
"model": "office-ai-chat",
"messages": [
{
"role": "system",
"content": "你是一个专业的企业办公助手,擅长撰写正式、清晰、结构化的办公文档。"
},
{
"role": "user",
"content": "请根据以下信息生成一份销售周报:本周销售额120万元,环比增长15%,新增客户23家,重点问题是华东区回款延迟。"
}
],
"temperature": 0.7,
"max_tokens": 1000
}
1. model
指定使用哪个 AI 模型。
"model": "office-ai-chat"
2. messages
messages 是对话上下文数组,通常包含不同角色:
| role | 含义 |
|---|---|
| system | 系统指令,用于设定模型身份、语气、规则 |
| user | 用户输入的问题或任务 |
| assistant | 模型历史回复,可用于多轮对话 |
例如:
{
"role": "system",
"content": "你是一个严谨的行政办公助手。"
}
3. temperature
控制输出的随机性。数值越高,内容越发散;数值越低,内容越稳定。
办公场景推荐:
| 任务类型 | temperature 建议 |
|---|---|
| 合同、制度、公告 | 0.2 - 0.4 |
| 周报、邮件、总结 | 0.5 - 0.7 |
| 创意文案、活动方案 | 0.7 - 0.9 |
4. max_tokens
限制模型输出长度。对于较长的会议纪要、报告总结,可以适当提高。
五、使用 curl 调用 AI办公 API
curl 是最常用的命令行 HTTP 请求工具,适合测试 API 是否可用。
下面是完整命令示例:
curl -X POST "https://api.example.com/v1/chat/completions" \
-H "Authorization: Bearer $AI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "office-ai-chat",
"messages": [
{
"role": "system",
"content": "你是一个专业的企业办公助手,擅长输出结构清晰、语言正式的中文办公文档。"
},
{
"role": "user",
"content": "请根据以下信息生成一份销售周报:本周销售额120万元,环比增长15%;新增客户23家;华东区回款延迟;下周计划推进重点客户拜访。"
}
],
"temperature": 0.6,
"max_tokens": 1200
}'
如果你的 API Key 没有设置为环境变量,也可以直接写入命令中,但不推荐:
curl -X POST "https://api.example.com/v1/chat/completions" \
-H "Authorization: Bearer sk-xxxxxxxxxxxxxxxx" \
-H "Content-Type: application/json" \
-d '{
"model": "office-ai-chat",
"messages": [
{
"role": "user",
"content": "请生成一封通知员工参加季度会议的邮件。"
}
]
}'
接口返回结果通常类似:
{
"id": "chatcmpl_123456",
"object": "chat.completion",
"created": 1710000000,
"model": "office-ai-chat",
"choices": [
{
"index": 0,
"message": {
"role": "assistant",
"content": "销售周报\n\n一、本周销售概况..."
},
"finish_reason": "stop"
}
],
"usage": {
"prompt_tokens": 120,
"completion_tokens": 430,
"total_tokens": 550
}
}
你真正需要的 AI 输出内容一般在:
choices[0].message.content
六、使用 Python 调用 AI办公 API
Python 非常适合办公自动化,例如处理 Excel、读取 Word、连接数据库、生成报表、发送邮件等。下面示例使用 requests 库调用 AI API。
1. 安装依赖
pip install requests
2. Python 完整示例
import os
import requests
import json
API_KEY = os.getenv("AI_API_KEY")
API_URL = "https://api.example.com/v1/chat/completions"
headers = {
"Authorization": f"Bearer {API_KEY}",
"Content-Type": "application/json"
}
payload = {
"model": "office-ai-chat",
"messages": [
{
"role": "system",
"content": "你是一个专业的企业办公助手,擅长撰写正式、清晰、结构化的中文文档。"
},
{
"role": "user",
"content": """
请根据以下信息生成一份项目周报:
项目名称:CRM系统升级项目
本周进展:
1. 完成客户资料模块接口联调
2. 修复登录权限异常问题
3. 完成销售线索导入功能测试
风险问题:
1. 数据迁移方案仍需 DBA 确认
2. 部分历史客户字段不一致
下周计划:
1. 完成数据迁移演练
2. 启动 UAT 测试
3. 输出上线检查清单
"""
}
],
"temperature": 0.5,
"max_tokens": 1500
}
response = requests.post(API_URL, headers=headers, json=payload)
if response.status_code == 200:
result = response.json()
content = result["choices"][0]["message"]["content"]
print(content)
else:
print("请求失败")
print("状态码:", response.status_code)
print("返回内容:", response.text)
3. 运行命令
python ai_office_demo.py
七、使用 Node.js 调用 AI办公 API
如果你的办公系统是 Web 后台、企业应用或中台系统,Node.js 也很常见。
1. 初始化项目
mkdir ai-office-demo
cd ai-office-demo
npm init -y
2. 安装依赖
npm install axios dotenv
3. 创建 .env 文件
AI_API_KEY=你的API_KEY
4. 创建 index.js
require("dotenv").config();
const axios = require("axios");
const API_URL = "https://api.example.com/v1/chat/completions";
const API_KEY = process.env.AI_API_KEY;
async function main() {
try {
const response = await axios.post(
API_URL,
{
model: "office-ai-chat",
messages: [
{
role: "system",
content: "你是一个专业的企业办公助手,擅长生成邮件、周报、会议纪要和公告。"
},
{
role: "user",
content: "请帮我生成一封邮件,通知全体员工本周五下午3点参加季度经营分析会,地点为第一会议室。"
}
],
temperature: 0.6,
max_tokens: 800
},
{
headers: {
Authorization: `Bearer ${API_KEY}`,
"Content-Type": "application/json"
}
}
);
const content = response.data.choices[0].message.content;
console.log(content);
} catch (error) {
if (error.response) {
console.error("请求失败:", error.response.status);
console.error(error.response.data);
} else {
console.error("发生错误:", error.message);
}
}
}
main();
5. 运行命令
node index.js
八、典型 AI 办公场景示例
场景一:自动生成会议纪要
你可以将会议录音转写后的文本传给 AI,让它自动提取重点。
示例 Prompt:
请根据以下会议内容生成会议纪要,要求包含:
1. 会议主题
2. 参会人员
3. 讨论要点
4. 已确定事项
5. 待跟进事项
6. 责任人与截止时间
会议内容如下:
……
curl 命令:
curl -X POST "https://api.example.com/v1/chat/completions" \
-H "Authorization: Bearer $AI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "office-ai-chat",
"messages": [
{
"role": "user",
"content": "请根据以下会议内容生成会议纪要,要求包含会议主题、讨论要点、已确定事项、待跟进事项。会议内容:销售部提出华东区客户回款周期延长,财务部建议建立重点客户回款预警机制,运营部将在下周输出预警规则。"
}
],
"temperature": 0.4,
"max_tokens": 1200
}'
场景二:自动润色邮件
示例输入:
帮我把下面这段话润色成正式邮件:
大家下午三点来会议室开会,主要说一下季度业绩情况,不要迟到。
模型可以输出更加正式的版本:
各位同事:
大家好!请各位于今天下午3点准时前往会议室参加季度业绩分析会议。本次会议将重点围绕本季度经营业绩、重点问题及后续工作安排进行沟通,请大家提前安排好工作,准时参会。
谢谢配合!
场景三:自动生成日报
可以将用户填写的简单工作事项转换成结构化日报:
请根据以下工作内容生成一份正式日报:
今天完成客户合同审核3份,跟进A公司报价,处理B客户售后问题,明天准备销售方案。
推荐输出格式:
一、今日工作完成情况
二、重点事项说明
三、存在问题与风险
四、明日工作计划
场景四:Excel 数据分析
如果你已经通过 Python 读取 Excel 数据,可以将关键指标传给 AI,让其生成分析结论。
Python 读取 Excel 示例:
pip install pandas openpyxl
import pandas as pd
df = pd.read_excel("sales.xlsx")
summary = df.describe().to_string()
prompt = f"""
以下是销售数据的统计摘要,请帮我生成一份管理层可读的数据分析报告:
{summary}
要求:
1. 总结关键趋势
2. 指出异常数据
3. 给出经营建议
"""
然后将 prompt 放入 API 请求的 messages 中即可。
九、如何设计高质量 Prompt?
API 调用是否好用,很大程度取决于 Prompt 设计。办公场景中建议遵循以下原则:
1. 明确角色
例如:
你是一个专业的企业行政办公助手。
或:
你是一个资深销售运营分析师。
2. 明确任务
不要只写“帮我写一下”,而要明确说明生成什么内容。
较差示例:
帮我写个总结。
较好示例:
请根据以下项目进展,生成一份面向管理层汇报的项目周报。
3. 明确输出结构
例如:
请按照以下格式输出:
1. 本周进展
2. 关键成果
3. 风险问题
4. 下周计划
4. 明确语气和风格
例如:
要求语言正式、简洁、适合企业内部邮件发送。
5. 提供足够上下文
AI 不是读心工具。如果需要高质量输出,应尽量提供背景信息、目标读者、使用场景和约束条件。
十、接口错误排查方法
调用 API 时,常见错误包括鉴权失败、参数错误、额度不足、模型不存在、请求超时等。
1. 401 Unauthorized
通常表示 API Key 错误或没有传入。
检查:
echo $AI_API_KEY
确认请求头格式:
Authorization: Bearer 你的API_KEY
2. 400 Bad Request
通常是请求参数格式错误,例如 JSON 写错、字段缺失、model 名称错误。
可以使用 JSON 校验工具检查请求体,或者先用最简单的请求测试。
3. 429 Too Many Requests
表示请求过于频繁或触发限流。解决方法:
- 降低并发;
- 增加重试间隔;
- 使用队列削峰;
- 联系服务商提高限额。
4. 500 / 502 / 503
一般是服务端异常或网络问题。建议增加重试机制。
Python 重试示例:
import time
import requests
def call_with_retry(url, headers, payload, retries=3):
for i in range(retries):
try:
response = requests.post(url, headers=headers, json=payload, timeout=30)
if response.status_code == 200:
return response.json()
print(f"第{i+1}次请求失败:{response.status_code}")
except Exception as e:
print(f"第{i+1}次请求异常:{e}")
time.sleep(2 ** i)
raise Exception("多次重试后仍然失败")
十一、生产环境调用建议
如果要把 AI API 真正接入办公系统,建议关注以下几点。
1. 不要在前端暴露 API Key
API Key 应放在后端服务中,由后端统一调用 AI API。前端只请求你的后端接口。
错误做法:
// 不推荐:在浏览器代码中直接写 API Key
const API_KEY = "sk-xxxx";
正确做法:
前端 → 你的后端服务 → AI API
2. 增加日志记录
建议记录:
- 请求时间;
- 用户 ID;
- 业务场景;
- 模型名称;
- token 使用量;
- 响应状态;
- 错误信息。
但注意不要记录敏感内容,例如客户身份证号、银行卡号、合同核心条款等。
3. 增加人工审核
对于公告、合同、财务报告、对外邮件等重要内容,AI 输出应经过人工确认后再发布。
4. 控制成本
可以通过以下方式降低成本:
- 设置合理的
max_tokens; - 对重复问题做缓存;
- 简单任务使用轻量模型;
- 长文档先分段摘要再汇总;
- 对批量任务设置队列和限流。
5. 做好敏感信息保护
在调用接口前,可以对敏感字段做脱敏处理。例如:
客户姓名:张三 → 客户姓名:客户A
手机号:13812345678 → 手机号:138****5678
十二、完整办公自动化示例:生成销售日报并保存为文件
下面给出一个完整 Python 示例:调用 AI API 生成销售日报,并保存到本地 Markdown 文件。
import os
import requests
from datetime import datetime
API_KEY = os.getenv("AI_API_KEY")
API_URL = "https://api.example.com/v1/chat/completions"
sales_data = """
今日销售数据:
1. 总销售额:38.6万元
2. 新增客户:8家
3. 成交订单:15单
4. 重点客户:A公司完成合同签署,金额12万元
5. 风险问题:B客户付款时间推迟,预计延迟3天
6. 明日计划:继续跟进C公司采购审批流程
"""
payload = {
"model": "office-ai-chat",
"messages": [
{
"role": "system",
"content": "你是一个专业的销售运营助手,擅长生成结构化销售日报。"
},
{
"role": "user",
"content": f"""
请根据以下销售数据生成一份销售日报。
要求:
1. 使用中文;
2. 结构清晰;
3. 包含今日概况、重点成果、风险问题、明日计划;
4. 语言正式,适合发送给销售经理。
{sales_data}
"""
}
],
"temperature": 0.5,
"max_tokens": 1200
}
headers = {
"Authorization": f"Bearer {API_KEY}",
"Content-Type": "application/json"
}
response = requests.post(API_URL, headers=headers, json=payload, timeout=30)
response.raise_for_status()
result = response.json()
report = result["choices"][0]["message"]["content"]
filename = f"sales_report_{datetime.now().strftime('%Y%m%d')}.md"
with open(filename, "w", encoding="utf-8") as f:
f.write(report)
print(f"销售日报已生成:{filename}")
运行命令:
python generate_sales_report.py
十三、总结
AI办公 API 的核心价值在于把大模型能力嵌入到实际业务流程中,让重复性、结构化、文字处理类工作变得更加自动化。无论是生成周报、会议纪要、邮件通知,还是进行数据分析、知识库问答、文档摘要,API 都可以让 AI 从“单次对话工具”升级为“企业自动化能力”。
对于初学者来说,建议先从 curl 命令开始测试接口,再使用 Python 或 Node.js 编写脚本,最后逐步接入企业内部系统。在生产环境中,需要重点关注 API Key 安全、错误重试、日志审计、成本控制和人工审核。
只要掌握基本调用方法,并结合清晰的 Prompt 设计,AI办公 API 就能成为企业提升效率、降低重复劳动、优化办公流程的重要工具。