mirror of
https://github.com/infiniflow/ragflow.git
synced 2026-05-23 17:38:04 +08:00
### What problem does this PR solve? Adds the Go model provider driver for CometAPI, which is listed as unchecked in the Go provider tracking issue #14736 and requested in #14804. Without this, the Go layer falls back to the dummy driver for the `cometapi` provider. Fixes #14804 ### What this PR includes - New `internal/entity/models/cometapi.go` implementing `ModelDriver` for CometAPI. - New `conf/models/cometapi.json` with CometAPI base URLs and representative chat / embedding models from the public catalog. - `factory.go`: route `"cometapi"` to `NewCometAPIModel`. - Unit tests in `internal/entity/models/cometapi_test.go`. ### Method coverage - `ChatWithMessages`: `POST /v1/chat/completions`. - `ChatStreamlyWithSender`: SSE streaming on the same endpoint. - `Embed`: `POST /v1/embeddings`, including optional `dimensions`. - `ListModels`: `GET /api/models` public catalog. - `Balance`: `GET https://query.cometapi.com/user/quota?key=...`. - `CheckConnection`: delegates to the quota query to verify the key. - `Rerank`, ASR, TTS, OCR: return `no such method` for now. No ModelDriver interface change. No new dependencies. ### How was this tested? ```bash go test -vet=off -run TestCometAPI -count=1 ./internal/entity/models/... go test -vet=off -count=1 ./internal/entity/models/... ``` --------- Signed-off-by: dependabot[bot] <support@github.com> Signed-off-by: Jin Hai <haijin.chn@gmail.com> Signed-off-by: majiayu000 <1835304752@qq.com> Co-authored-by: 加帆 <Jiafan@users.noreply.github.com> Co-authored-by: Kevin Hu <kevinhu.sh@gmail.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: bulexu <baiheng527@gmail.com> Co-authored-by: xubh <xubh@wikiflyer.cn> Co-authored-by: Jin Hai <haijin.chn@gmail.com> Co-authored-by: Carve_ <75568342+Rynzie02@users.noreply.github.com> Co-authored-by: Paul Y Hui <paulhui@seismic.com> Co-authored-by: LIRUI YU <128563231+LiruiYu33@users.noreply.github.com> Co-authored-by: yun.kou <koopking@gmail.com> Co-authored-by: Yun.kou <yunkou@deepglint.com> Co-authored-by: Ahmad Intisar <168020872+ahmadintisar@users.noreply.github.com> Co-authored-by: Ahmad Intisar <ahmadintisar@Ahmads-MacBook-M4-Pro.local> Co-authored-by: chanx <1243304602@qq.com> Co-authored-by: Syed Shahmeer Ali <syedshahmeerali196@gmail.com> Co-authored-by: Octopus <liyuan851277048@icloud.com> Co-authored-by: lif <1835304752@qq.com>
111 lines
2.0 KiB
JSON
111 lines
2.0 KiB
JSON
{
|
|
"name": "CometAPI",
|
|
"url": {
|
|
"default": "https://api.cometapi.com"
|
|
},
|
|
"url_suffix": {
|
|
"chat": "v1/chat/completions",
|
|
"models": "api/models",
|
|
"embedding": "v1/embeddings",
|
|
"balance": "https://query.cometapi.com/user/quota"
|
|
},
|
|
"class": "cometapi",
|
|
"models": [
|
|
{
|
|
"name": "gpt-5.5",
|
|
"max_tokens": 400000,
|
|
"model_types": [
|
|
"chat",
|
|
"vision"
|
|
],
|
|
"thinking": {
|
|
"default_value": true,
|
|
"clear_thinking": true
|
|
}
|
|
},
|
|
{
|
|
"name": "gpt-5.4-mini",
|
|
"max_tokens": 400000,
|
|
"model_types": [
|
|
"chat",
|
|
"vision"
|
|
],
|
|
"thinking": {
|
|
"default_value": true,
|
|
"clear_thinking": true
|
|
}
|
|
},
|
|
{
|
|
"name": "gpt-5",
|
|
"max_tokens": 400000,
|
|
"model_types": [
|
|
"chat",
|
|
"vision"
|
|
],
|
|
"thinking": {
|
|
"default_value": true,
|
|
"clear_thinking": true
|
|
}
|
|
},
|
|
{
|
|
"name": "gpt-4o",
|
|
"max_tokens": 128000,
|
|
"model_types": [
|
|
"chat",
|
|
"vision"
|
|
]
|
|
},
|
|
{
|
|
"name": "claude-sonnet-4-6",
|
|
"max_tokens": 200000,
|
|
"model_types": [
|
|
"chat",
|
|
"vision"
|
|
]
|
|
},
|
|
{
|
|
"name": "gemini-3-pro-preview",
|
|
"max_tokens": 1048576,
|
|
"model_types": [
|
|
"chat",
|
|
"vision"
|
|
]
|
|
},
|
|
{
|
|
"name": "deepseek-v3.2",
|
|
"max_tokens": 128000,
|
|
"model_types": [
|
|
"chat"
|
|
]
|
|
},
|
|
{
|
|
"name": "qwen3-235b-a22b",
|
|
"max_tokens": 128000,
|
|
"model_types": [
|
|
"chat"
|
|
]
|
|
},
|
|
{
|
|
"name": "text-embedding-3-small",
|
|
"max_tokens": 8191,
|
|
"model_types": [
|
|
"embedding"
|
|
]
|
|
},
|
|
{
|
|
"name": "text-embedding-3-large",
|
|
"max_tokens": 8191,
|
|
"model_types": [
|
|
"embedding"
|
|
]
|
|
},
|
|
{
|
|
"name": "text-embedding-ada-002",
|
|
"max_tokens": 8191,
|
|
"model_types": [
|
|
"embedding"
|
|
]
|
|
}
|
|
]
|
|
}
|