mirror of
https://github.com/QuantumNous/new-api.git
synced 2026-04-18 08:07:27 +00:00
* fix: test using the correct path for rerank. * fix: The `input` parameter for testing responses uses an array to accommodate certain channels, such as Codex, which are incompatible with single strings.
34 lines
1.4 KiB
Go
34 lines
1.4 KiB
Go
package common
|
||
|
||
import "github.com/QuantumNous/new-api/constant"
|
||
|
||
// EndpointInfo 描述单个端点的默认请求信息
|
||
// path: 上游路径
|
||
// method: HTTP 请求方式,例如 POST/GET
|
||
// 目前均为 POST,后续可扩展
|
||
//
|
||
// json 标签用于直接序列化到 API 输出
|
||
// 例如:{"path":"/v1/chat/completions","method":"POST"}
|
||
|
||
type EndpointInfo struct {
|
||
Path string `json:"path"`
|
||
Method string `json:"method"`
|
||
}
|
||
|
||
// defaultEndpointInfoMap 保存内置端点的默认 Path 与 Method
|
||
var defaultEndpointInfoMap = map[constant.EndpointType]EndpointInfo{
|
||
constant.EndpointTypeOpenAI: {Path: "/v1/chat/completions", Method: "POST"},
|
||
constant.EndpointTypeOpenAIResponse: {Path: "/v1/responses", Method: "POST"},
|
||
constant.EndpointTypeAnthropic: {Path: "/v1/messages", Method: "POST"},
|
||
constant.EndpointTypeGemini: {Path: "/v1beta/models/{model}:generateContent", Method: "POST"},
|
||
constant.EndpointTypeJinaRerank: {Path: "/v1/rerank", Method: "POST"},
|
||
constant.EndpointTypeImageGeneration: {Path: "/v1/images/generations", Method: "POST"},
|
||
constant.EndpointTypeEmbeddings: {Path: "/v1/embeddings", Method: "POST"},
|
||
}
|
||
|
||
// GetDefaultEndpointInfo 返回指定端点类型的默认信息以及是否存在
|
||
func GetDefaultEndpointInfo(et constant.EndpointType) (EndpointInfo, bool) {
|
||
info, ok := defaultEndpointInfoMap[et]
|
||
return info, ok
|
||
}
|