Vasanth6 commited on
Commit
54fccd4
·
1 Parent(s): 6bac071

Robust Judge API parsing and schemas validation default values for 0.5B model support

Browse files
backend/models/schemas.py CHANGED
@@ -167,12 +167,12 @@ class JudgeResponse(BaseModel):
167
  chunk_a_score: ChunkScore
168
  chunk_b_score: ChunkScore
169
 
170
- winner_reason: str
171
- chunk_a_strengths: List[str]
172
- chunk_b_strengths: List[str]
173
- chunk_a_weaknesses: List[str]
174
- chunk_b_weaknesses: List[str]
175
- deciding_dimension: str
176
 
177
  @model_validator(mode="after")
178
  def check_winner_consistency(self) -> "JudgeResponse":
 
167
  chunk_a_score: ChunkScore
168
  chunk_b_score: ChunkScore
169
 
170
+ winner_reason: str = "No reason provided."
171
+ chunk_a_strengths: List[str] = []
172
+ chunk_b_strengths: List[str] = []
173
+ chunk_a_weaknesses: List[str] = []
174
+ chunk_b_weaknesses: List[str] = []
175
+ deciding_dimension: str = "query_relevance"
176
 
177
  @model_validator(mode="after")
178
  def check_winner_consistency(self) -> "JudgeResponse":
backend/routers/retrieval_router.py CHANGED
@@ -34,13 +34,12 @@ async def retrieve(request: QueryRequest, http_request: Request):
34
  if not limiter.allow(client_ip):
35
  raise HTTPException(
36
  status_code=429,
37
- detail="Rate limit exceeded. You can only make 2 LLM requests per minute."
38
  )
39
  search_text = await get_hyde_text(request.search_text)
40
  else:
41
  search_text = request.search_text
42
 
43
-
44
  limit = request.top_k * 4 if request.use_reranking else request.top_k
45
 
46
  retrieved_chunks, embeddings = await process_retrieval(
@@ -83,7 +82,7 @@ async def compare(request: CompareRequest, http_request: Request):
83
  if not limiter.allow(client_ip):
84
  raise HTTPException(
85
  status_code=429,
86
- detail="Rate limit exceeded. You can only make 2 LLM requests per minute."
87
  )
88
  retrieval_text = await get_hyde_text(request.search_text)
89
  else:
@@ -144,10 +143,9 @@ async def judge(request: JudgeRequest, http_request: Request):
144
  if not limiter.allow(client_ip):
145
  raise HTTPException(
146
  status_code=429,
147
- detail="Rate limit exceeded. You can only make 2 LLM requests per minute."
148
  )
149
  prompt = system_instructions.format(
150
-
151
  search_query=request.search_query,
152
  chunk_a=request.chunk_a,
153
  chunk_b=request.chunk_b,
 
34
  if not limiter.allow(client_ip):
35
  raise HTTPException(
36
  status_code=429,
37
+ detail="Rate limit exceeded. You can only make 2 LLM requests per minute.",
38
  )
39
  search_text = await get_hyde_text(request.search_text)
40
  else:
41
  search_text = request.search_text
42
 
 
43
  limit = request.top_k * 4 if request.use_reranking else request.top_k
44
 
45
  retrieved_chunks, embeddings = await process_retrieval(
 
82
  if not limiter.allow(client_ip):
83
  raise HTTPException(
84
  status_code=429,
85
+ detail="Rate limit exceeded. You can only make 2 LLM requests per minute.",
86
  )
87
  retrieval_text = await get_hyde_text(request.search_text)
88
  else:
 
143
  if not limiter.allow(client_ip):
144
  raise HTTPException(
145
  status_code=429,
146
+ detail="Rate limit exceeded. You can only make 2 LLM requests per minute.",
147
  )
148
  prompt = system_instructions.format(
 
149
  search_query=request.search_query,
150
  chunk_a=request.chunk_a,
151
  chunk_b=request.chunk_b,