Jina v3.5 排序服务 · Cohere/Jina 兼容
/v1/rerank· 端口6006· 镜像wkao/jina-reranker-v3.5:latest· 固定 CPU 推理
docker run# 拉取镜像
docker pull wkao/jina-reranker-v3.5:latest
# 运行(未传 API_KEYS 时使用镜像内置默认 Key: sk-aaabbbcccdddeeefffggghhhiiijjjkkk)
docker run -d --name jina-reranker-v3.5 -p 6006:6006 wkao/jina-reranker-v3.5:latest
# 指定自有 API Key(多个用逗号分隔,便于按客户端发放/吊销)
docker run -d --name jina-reranker-v3.5 -p 6006:6006 \
-e API_KEYS="sk-your-key-1,sk-your-key-2" \
wkao/jina-reranker-v3.5:latest
模型在后台加载,/health 就绪前返回 503,请耐心等待。
docker compose(推荐)docker-compose.yml
services:
jina-reranker-v3.5:
image: wkao/jina-reranker-v3.5:latest
container_name: jina-reranker-v3.5
restart: unless-stopped
ports:
- "6006:6006"
environment:
# ---- 认证 ----(多个 Key 用逗号分隔;留空则用 model_config.yaml 默认值)
API_KEYS: "${API_KEYS:-sk-aaabbbcccdddeeefffggghhhiiijjjkkk}"
AUTH_ENABLED: "${AUTH_ENABLED:-true}"
# ---- 模型 ----
# MODEL_TYPE: jina_reranker_v3_5_hf (HF 原生,默认) / jina_reranker_v3_5 (GGUF)
MODEL_NAME: "${MODEL_NAME:-jina-reranker-v3.5}"
MODEL_TYPE: "${MODEL_TYPE:-jina_reranker_v3_5_hf}"
MODEL_PATH: "${MODEL_PATH:-./jina-reranker-v3.5}"
MODEL_SCORE_NORMALIZATION: "${MODEL_SCORE_NORMALIZATION:-cosine}"
MODEL_INFERENCE_THREADS: "${MODEL_INFERENCE_THREADS:-0}"
# ---- 服务 ----
SERVER_PORT: "6006"
SERVER_WORKERS: "${SERVER_WORKERS:-1}"
SERVER_MAX_REQUEST_SIZE_MB: "${SERVER_MAX_REQUEST_SIZE_MB:-50}"
LOG_LEVEL: "${LOG_LEVEL:-INFO}"
LOG_FORMAT: "${LOG_FORMAT:-json}" # json / text
# ---- 限流 ----
RATE_LIMIT_ENABLED: "${RATE_LIMIT_ENABLED:-true}"
RATE_LIMIT_RPM: "${RATE_LIMIT_RPM:-60}"
RATE_LIMIT_TPM: "${RATE_LIMIT_TPM:-1000000}"
# ---- 运行时 ----
PYTHONUNBUFFERED: "1"
PYTHONDONTWRITEBYTECODE: "1"
OMP_NUM_THREADS: "${OMP_NUM_THREADS:-4}"
TZ: "${TZ:-Asia/Shanghai}"
# 如需在宿主机覆盖模型文件或配置,取消以下注释
# volumes:
# - ./llm/jina-reranker-v3.5:/app/jina-reranker-v3.5:ro
# - ./app/config/model_config.yaml:/app/config/model_config.yaml:ro
healthcheck:
test:
- CMD
- python
- -c
- "import urllib.request,sys; sys.exit(0 if urllib.request.urlopen('http://localhost:6006/health', timeout=5).status==200 else 1)"
interval: 30s
timeout: 10s
retries: 5
start_period: 300s # 模型后台加载 + 预热,需覆盖最坏耗时
logging:
driver: json-file
options:
max-size: "20m"
max-file: "5"
# HF bfloat16 模型加载约 6-8GB 内存
deploy:
resources:
limits:
memory: 10g
reservations:
memory: 4g
networks:
default:
name: jina-rerank-net
启动与常用命令:
docker compose up -d # 启动
docker compose logs -f jina-reranker-v3.5 # 实时日志
curl http://localhost:6006/health # 健康检查
docker compose down # 停止并清理
Compose 中的环境变量默认值与镜像内
app/config/model_config.yaml保持一致;若两处都设置,环境变量优先级更高。完整变量清单见下方 环境变量 章节。
.env 覆盖配置(推荐至少把密钥换掉)在 docker-compose.yml 同目录创建 .env,docker compose 自动读取:
API_KEYS=sk-your-key-1,sk-your-key-2
AUTH_ENABLED=true
LOG_LEVEL=INFO
LOG_FORMAT=json
RATE_LIMIT_RPM=120
RATE_LIMIT_TPM=200000
OMP_NUM_THREADS=4
TZ=Asia/Shanghai
不重建镜像即可替换权重或调配置,取消 compose 里 volumes 段注释:
volumes:
- ./llm/jina-reranker-v3.5:/app/jina-reranker-v3.5:ro
- ./app/config/model_config.yaml:/app/config/model_config.yaml:ro
Windows 写成
D:/models/jina-reranker-v3.5:/app/jina-reranker-v3.5:ro形式;挂载后直接docker compose up -d生效。
Content type
Image
Digest
sha256:72e1c4923…
Size
1.2 GB
Last updated
18 days ago
docker pull wkao/jina-reranker-v3.5