# 通用模型
模型能力须知:该通用接口调用的是微软或OPENAI相关ai能力。
调用申请:需申请开通「调用微软相关模型」权限,同时需要发起审批(Boss Hi工作台-流程中心-大模型资源申请), 审批通过后才能进行模型调用。点击申请 (opens new window)
调用量限制:为了防止您的代码在异常情况多次调用,每个应用将会有默认的使用额度。如果您的业务调用量较大,请在发起审批时进行调整
基础数据安全策略:为了保证数据安全,我们做了如下基础策略限制,如果您想要进行更多策略限制,建议在您的服务端处理完成后再调用该接口
- (1)用户个人信息:身份证号、护照号、银行卡号、支付宝账户、GPS信息(正则匹配处理)
- (2)个人联系方式:手机号、邮箱等
- (3)公司业务信息:蓝领、牛炸、首善、达成、机构号、pv等
- (4)公司组织架构信息:产品*组,研发*组,算法*组
- (5)其他:如boss直聘+股票
# 请求
基本 | |
---|---|
HTTP URL | https://hi-qa.weizhipin.com/open-apis/ai/open/api/send |
HTTP Method | POST |
支持的应用类型 | 自建应用 |
权限要求 开启任一权限即可 | 调用微软相关模型 |
# 请求头
名称 | 类型 | 必填 | 描述 |
---|---|---|---|
Authorization | string | 是 | tenant_access_token 值格式:"Bearer access_token "示例值:"Bearer t-7f1bcd13fc57d46bac21793a18e560" |
Content-Type | string | 是 | 固定值:"application/json; charset=utf-8" |
# 查询参数
名称 | 类型 | 描述 |
---|---|---|
model | string | 调用模型类型 2:GPT3.5; 4、5、6:GPT-4-turbo(微软); 7:GPT-4-turbo(openai); 8:GPT4-8k; 10:GPT-4V(openai); 14:(openai gpt-4-0409); 15:(claude claude-3-opus-20240229); 16:(claude claude-3-sonnet-20240229); 17:gpt4-4o(openai)(复用10额度); 18:gpt4-4o(微软) ; 19:gpt-4o-mini(openai)(复用7、17额度) ; 20:gpt-4o-mini-2024-07-18(openai)(复用7、17额度) ; 22:gpt-4o-mini-2024-0718(微软)(复用4、5、6、18额度) |
# 请求体示例
# openai gpt-4v
建议不要传payload的model, 后端会根据params['model']转换出真实可用的model覆盖payload['model']. 请求参数内一定要加入"max_tokens"参数. 经测试不传该字段会出现http code 429.
# 调用方式1-传入图片url
{
"model": "gpt-4-vision-preview",
"max_tokens": 300,
"messages": [
{
"role": "user",
"content": [
{
"type": "text",
"text": "这张图说了什么内容?"
},
{
"type": "image_url",
"image_url": {
"url": 'https://inews.gtimg.com/newsapp_bt/0/13150670966/1000.jpg'
}
}
]
}
]
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# 调用方式2-传入图片base64
{
"model": "gpt-4-vision-preview",
"max_tokens": 300,
"messages": [
{
"role": "user",
"content": [
{
"type": "text",
"text": "这张图说了什么内容?"
},
{
"type": "image_url",
"image_url": {
"url": "data:image/jpeg;base64,{b64_image}"
}
}
]
}
]
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# 响应体
名称 | 类型 | 描述 |
---|---|---|
code | int | 错误码,非 0 表示失败 |
msg | string | 错误描述 |
data | data | - |
# 响应体示例
{
"code": 0,
"msg": "",
"gpt_data": {
"usage": {
"completion_tokens": 272,
"prompt_tokens": 43,
"total_tokens": 315
},
"forbbiden":{//code == 80008, 敏感信息的拦截详情
}
},
"trace_id": "45ed534a1bf5446b95d76c6fa5c40034"
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
2
3
4
5
6
7
8
9
10
11
12
13
14
15
# 额外说明:因不同模型返回接口不一致,gpt_data中模型返回数据没有一一列举,详情数据可以参考官方文档
# forbbiden拦截示例
# forbbiden解析规则
- 一级字段
- person 个人信息(包含word/type/position二级字段)
- contact 联系方式(包含word/type/position二级字段)
- sensitive 敏感词(包含word/position二级字段)
- hit_xxx 是否命中对应检测能力
- 二级/三级字段
- position
- index 命中内容的层级位置(下标), 只有像chat接口提交内容在list结构里才有意义.
- start 命中内容的起始位置(包含)
- end 命中内容的结束位置(不包含)
- word 命中的词条
- type 词条类型
- 其他不认识的字段查case用
"forbbiden": {
"hit_person": true,
"hit_contact": true,
"hit_sensitive": true,
"person": [
{
"word": "17610677733",
"type": "aliPayNo",
"typeCode": 5,
"position": {
"index": 1,
"start": 6,
"end": 16
}
}
],
"contact": [
{
"word": "533224599",
"type": "QQ",
"position": {
"index": 1,
"start": 22,
"end": 31
}
},
{
"word": "17610677733",
"type": "Phone",
"position": {
"index": 1,
"start": 6,
"end": 17
}
}
],
"sensitive": [
{
"word": "股票",
"strategy": "公司状况-方案词-拦截",
"tag": "公司经营-B",
"risk": "NO_SUBMIT",
"position": {
"index": 1,
"start": 43,
"end": 45
}
},
{
"word": "boss直聘",
"strategy": "公司状况-方案词-拦截",
"tag": "公司经营-A",
"risk": "NO_SUBMIT",
"position": {
"index": 1,
"start": 36,
"end": 42
}
}
]
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62