geqintan commited on
Commit
b34d3d1
·
1 Parent(s): 258ebf4
Files changed (1) hide show
  1. app.py +11 -7
app.py CHANGED
@@ -22,17 +22,21 @@ app = FastAPI()
22
 
23
  # 加载重排序模型(初始化时加载,避免每次请求重复加载)
24
  try:
25
- model = CrossEncoder("BAAI/bge-reranker-large") # 关键修改:使用 CrossEncoder 而非 SentenceTransformer
26
- logger.info("Reranker model loaded successfully")
 
 
 
 
27
  except Exception as e:
28
- logger.critical(f"Model loading failed: {e}")
29
- raise RuntimeError("Failed to initialize model")
30
 
31
  # 请求体模型
32
  class RerankRequest(BaseModel):
33
- query: str = Field(..., min_length=1, max_length=8192, description="搜索query文本")
34
- documents: List[str] = Field(..., min_items=1, description="待排序的文档列表")
35
- top_k: int = Field(None, ge=1, le=100, description="返回前K个结果(默认返回全部)")
36
 
37
  # 响应模型
38
  class RerankResult(BaseModel):
 
22
 
23
  # 加载重排序模型(初始化时加载,避免每次请求重复加载)
24
  try:
25
+ model = CrossEncoder(
26
+ "BAAI/bge-reranker-large",
27
+ tokenizer_args={"truncation": True}, # 在初始化时设置截断
28
+ max_length=512 # 可选:限制最大长度
29
+ )
30
+ logger.info("Model loaded with truncation support")
31
  except Exception as e:
32
+ logger.critical(f"Model load failed: {str(e)}")
33
+ raise RuntimeError("Model initialization error")
34
 
35
  # 请求体模型
36
  class RerankRequest(BaseModel):
37
+ query: str = Field(..., min_length=1, max_length=8192)
38
+ documents: List[str] = Field(..., min_items=1)
39
+ top_k: int = Field(None, ge=1, le=100)
40
 
41
  # 响应模型
42
  class RerankResult(BaseModel):