Skip to content

添加空间模型配置

接口信息

接口地址:/api/v1/space/{spaceId}/model/add

请求方式:POST

请求数据类型:application/json

响应数据类型:*/*

接口描述:

在指定空间中添加模型配置

请求示例:

javascript
{
  "name": "空间测试模型",
  "model": "gpt-3.5-turbo-space",
  "type": "Chat",
  "apiProtocol": "OpenAI",
  "strategy": "RoundRobin",
  "apiInfoList": [
    {"url": "https://api.openai.com/v1", "key": "sk-space-test", "weight": 1}
  ],
  "enabled": 1
}

请求参数

请求头

参数名类型必填描述示例值
AuthorizationstringAPI KeyBearer ak-xxxxeyJhbGciOiJIUzI1NiJ9

路径参数:

参数名称参数说明是否必须数据类型
spaceId空间IDinteger(int64)

请求体参数:

参数名称参数说明是否必须数据类型
name模型名称string
description模型描述string
model模型标识string
type模型类型,可用值: Completions, Chat, Multi, Edits, Images, Embeddings, Audio, Otherstring
maxTokens最大输出token数integer(int32)
maxContextTokens上下文最大输出token数integer(int32)
apiProtocol模型接口协议,可用值: OpenAI, Ollama, Zhipu, Anthropicstring
apiInfoListAPI列表array
  url接口地址string
  key接口密钥string
  weight权重integer(int32)
strategy接口调用策略,可用值: RoundRobin, WeightedRoundRobin, LeastConnections, WeightedLeastConnections, Random, ResponseTimestring
dimension向量维度integer(int32)
functionCall函数调用支持,可用值: Unsupported, CallSupported, StreamCallSupportedstring
isReasonModel是否为推理模型,0 否;1 是integer(int32)
enabled是否启用,1-启用,0-禁用integer(int32)
accessControl访问控制,0-不管控,1-管控integer(int32)
usageScenarios可使用的业务场景,可用值: PageApp, TaskAgent, ChatBot, Workflow, OpenApiarray

响应参数:

参数名称参数说明类型schema
code业务状态码,0000 表示成功,其余失败string
displayCode源系统状态码,用于问题跟踪string
message错误描述信息string
data新增的模型IDinteger(int64)
tid跟踪唯一标识string
successboolean

响应示例:

javascript
{
	"code": "0000",
	"displayCode": "0000",
	"message": "success",
	"data": 100000006,
	"tid": "2743851776083420640",
	"success": true
}

CURL示例

shell
curl 'http://127.0.0.1:8081/api/v1/space/1071/model/add' \
  -X POST \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer ak-d1f2129c4ba24629b8448af3354f9dd0' \
  --data-raw '{
  "name": "空间测试模型",
  "model": "gpt-3.5-turbo-space",
  "type": "Chat",
  "apiProtocol": "OpenAI",
  "strategy": "RoundRobin",
  "apiInfoList": [
    {"url": "https://api.openai.com/v1", "key": "sk-space-test", "weight": 1}
  ],
  "enabled": 1
}'

{"code":"0000","displayCode":"0000","message":"success","data":100000006,"tid":"2743851776083420640","success":true}

测试用例

#场景状态码结果
1在空间中新增模型0000成功,返回模型ID

TS模板示例

ts
// API信息
export interface ApiInfo {
  /* 接口地址 */
  url?: string;
  /* 接口密钥 */
  key?: string;
  /* 权重 */
  weight?: number;
}

// 参数接口
export interface SpaceModelAddDto {
  /* 模型名称 */
  name: string;
  /* 模型描述 */
  description?: string;
  /* 模型标识 */
  model: string;
  /* 模型类型 */
  type: 'Completions' | 'Chat' | 'Multi' | 'Edits' | 'Images' | 'Embeddings' | 'Audio' | 'Other';
  /* 最大输出token数 */
  maxTokens?: number;
  /* 上下文最大输出token数 */
  maxContextTokens?: number;
  /* 接口协议 */
  apiProtocol: 'OpenAI' | 'Ollama' | 'Zhipu' | 'Anthropic';
  /* API列表 */
  apiInfoList: ApiInfo[];
  /* 调用策略 */
  strategy: 'RoundRobin' | 'WeightedRoundRobin' | 'LeastConnections' | 'WeightedLeastConnections' | 'Random' | 'ResponseTime';
  /* 向量维度 */
  dimension?: number;
  /* 函数调用支持 */
  functionCall?: 'Unsupported' | 'CallSupported' | 'StreamCallSupported';
  /* 是否为推理模型 */
  isReasonModel?: number;
  /* 是否启用 */
  enabled?: number;
  /* 访问控制 */
  accessControl?: number;
  /* 使用场景 */
  usageScenarios?: ('PageApp' | 'TaskAgent' | 'ChatBot' | 'Workflow' | 'OpenApi')[];
}

// 响应接口
export interface AddSpaceModelRes {
  code: string;
  displayCode: string;
  message: string;
  data: number;
  tid: string;
  success: boolean;
}

/** 
 * 添加空间模型配置
 * @param {number} spaceId - 空间ID
 * @param {SpaceModelAddDto} params 
 * @returns
 */
export function addSpaceModel(spaceId: number, params: SpaceModelAddDto): Promise<AddSpaceModelRes> {
  return request.post(`/api/v1/space/${spaceId}/model/add`, params);
}