Files
projectAIpopular/gateway/sense/__init__.py
tzt f783878c02 feat(sense): T-G1 Embedder(int8 量化/降级 fail-closed + /v1/embeddings 透传)
- embedder.py:embed() 调 llama-server /v1/embeddings -> 对称 per-vector
  int8 量化(scale=127/max|v|,1024 维余弦扰动 ~1e-4 << 1e-2 验收);
  超时/连接/非200/空形状 -> EmbedderDown(D-G4 fail-closed);
  quantize_int8/cosine_int8 辅助(int8 直接点积,scale 正标量不改方向)
- routes.py 拆双路由组:/sense 前缀组 + /v1 无前缀组(/v1/embeddings
  OpenAI 兼容透传,embedder 不可用 503);build_sense_routers 返回列表,
  api.py 逐个 include;build_sense_router 保留向后兼容
- 测试 +6:量化余弦误差 200 组 <1e-2/范围/零向量/int8 余弦/
  正常量化/三种 fail-closed/透传端点(503+形状+400),全量 381 passed
- 待真机项:llama-server embedder 端点冒烟(需用户配置 embedder.base_url)
2026-09-05 13:33:58 +08:00

24 lines
830 B
Python
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
"""语义分析器与三级任务分级(T-G0…T-G8):/v1/route + /v1/embeddings + /sense/admin/*。
组装唯一入口:build_sense_routers(cfg) -> [APIRouter, APIRouter]
/sense 前缀组 + /v1 无前缀组);由 gateway.api 在 sense.enabled 时逐个 include
D-G7 关闭时不注册任何路由)。
"""
from __future__ import annotations
from typing import List
from fastapi import APIRouter
from gateway.sense.config import SenseConfig, build_sense_config # noqa: F401
def build_sense_routers(cfg: SenseConfig) -> List[APIRouter]:
from gateway.sense.routes import build_sense_routers as _build
return _build(cfg)
def build_sense_router(cfg: SenseConfig) -> APIRouter:
"""向后兼容:仅 /sense 前缀组(/v1 组见 build_sense_routers)。"""
return build_sense_routers(cfg)[0]