现在AI的快速发展如火如荼,各AI大模型日趋成熟,在软件定制开发的过程中,越来越多的功能需求需要接入AI实现AI应用。那么如何接入AI接口,实现AI功能的调用,以及在接入AI接口,实现AI功能的过程中,有哪些注意事项呢?今天丁老师就这个问题做一下讲解。
有哪些大模型提供AI接口?
目前所有合规AI大模型,国外如Gemini、ChatGPT、Claude,国内如千问、豆包、Kimi、DeepSeek、智谱等,都提供有API接口开放服务。除了直接在这些AI平台(网页版/客户端)直接使用AI服务外,还可以调用这些AI大模型的API接口以实现AI功能,如内容生成、视频创作、文档解析等,都可以通过调用API接口的方式完成。
如何实现调用AI的API接口?
使用AI大模型的API接口服务,需要进行账号注册、认证、创建项目/应用、生成API Key、HTTP调用等方式来实现。
具体流程为:
1.注册账号,无论是国外还是国内的AI大模型,都需要先注册账号,然后才能创建应用。
2.账号认证,区分个人和企业两种,这两种账号类型,涉及AI大模型平台提供的能力不同、定价不同,以及财务信息不同(如涉及打款、发票等)。
3.创建应用,在账号认证后,需要进入AI大模型平台的开发者中心,创建项目/应用。
4.生成调用凭证,有两种方式,一种是直接传API Key调用接口(如DeepSeek、前文、豆包),一种是通过双密钥来换取Token进行调用,通过APPID+APIKey+Secret鉴权,获取临时access_token,然后获取Token调用接口(如千帆、星火)。
举例说明:
我们以调用DeepSeek的API接口为例,具体方法为:
1.访问https://platform.deepseek.com/,进入DeepSeek开放平台。

2.注册登录,然后实名认证。

3.根据提示信息完成认证。
4.认证成功后,点击左侧API Keys,创建应用。

5.点击创建API Key,填入名称,我们填入test。

6.点击创建,然后会得到一个API Key。注意,此处获得的API Key,需要点击复制,妥善保存,后期需要利用此Key进行API接口调用,如图。

7.点击关闭,即完成API Key创建。
8.进入DeepSeek接口文档,按照接口文档提供的方式,进行接口调用。

通用HTTP调用规范:
我们以curl的方式进行http调用,此方式可以兼容90%的AI大模型API接口调用。
curl https://api.deepseek.com/v1/chat/completions \-H "Authorization: Bearer sk-你的APIKEY" \-H "Content-Type: application/json" \-d '{
"model": "deepseek-chat",
"messages": [
{"role":"system","content":"你是专业助理"},
{"role":"user","content":"介绍API调用注意事项"}
],
"temperature": 0.7,
"max_tokens": 1024,
"stream": false
}'除了Curl调用的方式外,还可以python和nodejs进行调用,代码如下:
Python调用方式:
#python
import os
from openai import OpenAI
client = OpenAI(
api_key=os.environ.get('DEEPSEEK_API_KEY'),
base_url="https://api.deepseek.com")
response = client.chat.completions.create(
model="deepseek-v4-pro",
messages=[
{"role": "system", "content": "You are a helpful assistant"},
{"role": "user", "content": "Hello"},
],
stream=False,
reasoning_effort="high",
extra_body={"thinking": {"type": "enabled"}}
)
print(response.choices[0].message.content)Nodejs调用方式:
import OpenAI from "openai";
const openai = new OpenAI({
baseURL: 'https://api.deepseek.com',
apiKey: process.env.DEEPSEEK_API_KEY,
});
async function main() {
const completion = await openai.chat.completions.create({
messages: [{ role: "system", content: "You are a helpful assistant." }],
model: "deepseek-v4-pro",
thinking: {"type": "enabled"},
reasoning_effort: "high",
stream: false,
});
console.log(completion.choices[0].message.content);
}
main();注意事项有哪些
虽然每个AI大模型都提供了API接口调用的方式,可以通过接口调用使用AI的各种能力,但从法律法规的角度上讲,也不是每一个AI都能随意调用使用的。
1.年龄限制
根据相关法律法规的要求,AI大模型不对未满14周岁的个人开放线上实名认证服务。
2.算法备案强制要求
所有面向C端的应用,如包含提供AI服务,如小程序、APP、网站AI对话等,必须使用已在工信部完成备案的大模型API,不能使用境外未备案模型(GPT/Claude 等)。即中国境内的所有应用,如涉及提供AI服务,则必须使用中国国内正规合规的大模型API,不能使用国外的AI大模型,不然就是违法。
3.数据合规
在调用AI大模型API接口的过程中,不能上传身份证、手机号、用户资金数据等个人隐私信息,如需进行AI数据分析,则需要在调用AI接口前对敏感数据做数据脱敏。
4.内容安全过滤
所有AI平台都有安全拦截,凡是涉及政治、色情、暴恐、虚假信息的输入和输出内容,AI会直接返回报错,并且不要想通过任何方式去绕过平台过滤。
5.API Key绝对不放前端
在软件开发的过程中,无论是开发各种应用,API Key都不要放在前端写死,最好是通过配置文件或数据库的方式进行动态保存管理。放在前端的API Key有被暴露的风险,会被匿名者用来盗用API接口,造成巨大的金额损失和法律风险。
6.限制API的请求频率
每个AI平台都会限制RPM(每分钟请求)和TPM(每分钟Token),高并发请求会被AI接口拒绝。可通过指数退避重试、队列、批量任务错峰执行、多平台多Key负载均衡等方式来调用API接口。
7.超时及异常处理
设置三级超时(连接超时5s,读取超时30s,总超时60s),使用stream流式输出,做好断线重连、分段缓存,如是长文本内容则需要进行拆分,然后多轮调用,避免单次请求过大超时。
8.成本控制
API接口的调用是双向收费,输入和输出都会计费,软件业务模式的不合理、调用API接口的程序代码执行逻辑错误,都会引起API接口使用费用的增加。可以通过对每个功能业务模式设置日/周/月Token预算上限、高频重复问题本地缓存、区分场景自动切换高低配AI模型、监控预警的方式来控制API接口的使用成本。
全文总结
本文介绍了AI大模型API接口,账号注册、创建API Key、调用方式、注意事项等4大知识点。通过本文可以了解到,目前所有国内外AI大模型都有提供API接口调用服务,但是在中国境内开发的软件,凡是提供AI应用的,只能使用国产大模型,不能使用国外AI大模型(容易造成数据违规出境)。在调用AI的过程中,调用方式和注意事项也都做了介绍,特别是合规性检查和API接口使用的成本控制,在使用AI模型API接口时都需要进行注意。
丁老师认为,从长期发展来看,国内AI大模型不再是单纯的API调通接口,而是合规、安全、稳定、成本、业务风控五位一体的系统化工作。作为开发者,在我们通过调用AI API接口,使用AI能力的过程中,相较于软件开发过程中的技术难度,更需要考虑的是合规风险,包括数据脱敏、算法备案、内容审核,这些都是应用的上线前提,而密钥安全、限流降级、预算管控是则系统稳定的核心保障。
在开发微信支付,和微信统一下单接口对接时,发现传递的fee_type参数只能设置为'CNY',无法设置为'USD'、'HKD'等其他货币。官方文档上对fee_type参数的描述,可以支持多...
在使用idea系列的配套软件时,如intellij idea、Php Storm、Web Strom时,在搜索文件时,右上角的file mask可以筛选指定类型的文件。但是有时候可能会输入错误,产生多个记录,而且没办法删除,在以后的开发...
最近经常配置OJS系统的(Open Journal Systems期刊管理系统 )发信功能,客户使用的是网易企业邮箱,根据网易企业邮箱帮助中心的文档显示,smtp服务加密ssl的端口是994,如图:结果设置了以后,怎么也发不了邮件,就在...
百度ueditor在使用附件上传时,会自动在附件链接前边添加一个图标,这个图标不仅不美观,而且会暴露出ueditor的真实地址,给不法分子可乘之机,所以研究了下直接去掉。解决方法:ueditor.all.js里搜索dialogs/att...
这个问题,用普通sql语句查询,好解决,把表的字符编码改为对应的就可以了。 但在使用视图查询时,比如select 'aaa' as type from xxx; select * from view where type=...
在用photoshop设计时,有的同学会发现,在网页中设置的宽度1000px,截屏后,再用photoshop打开后测量同样图像的宽度时,这个宽度就不是1000像素,而是1200多甚至1300多,是个很奇怪的问题,丁老师检查了photosho...
在php代码中,遇到复杂的sql语句,需要拼装sql语句,如:$sql='id 10;' $sql=' and( status in(1,2,3,4,5) and id not in (select id from ...
安装fastadmin,打开后提示"你所浏览的页面暂时无法访问",无法安装,是因为程序的runtime没有写权限,需要对runtime目录,添加写权限。解决方法:windows:右键目录,写入按钮打勾。如果不行,在“安全...