Skip to content

Commit 75ba968

Browse files
ankursharmascopybara-github
authored andcommitted
fix: Update routes for list_eval_sets, add_session_to_eval_set, get_eval, update_eval and delete_eval
PiperOrigin-RevId: 798241789
1 parent 2c088ac commit 75ba968

File tree

1 file changed

+42
-4
lines changed

1 file changed

+42
-4
lines changed

src/google/adk/cli/adk_web_server.py

Lines changed: 42 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -203,6 +203,10 @@ class CreateEvalSetRequest(common.BaseModel):
203203
eval_set: EvalSet
204204

205205

206+
class ListEvalSetsResponse(common.BaseModel):
207+
eval_set_ids: list[str]
208+
209+
206210
class AdkWebServer:
207211
"""Helper class for setting up and running the ADK web server on FastAPI.
208212
@@ -512,18 +516,38 @@ async def create_eval_set_legacy(
512516
)
513517

514518
@app.get(
515-
"/apps/{app_name}/eval_sets",
519+
"/apps/{app_name}/eval-sets",
516520
response_model_exclude_none=True,
517521
tags=[TAG_EVALUATION],
518522
)
519-
async def list_eval_sets(app_name: str) -> list[str]:
523+
async def list_eval_sets(app_name: str) -> ListEvalSetsResponse:
520524
"""Lists all eval sets for the given app."""
525+
eval_sets = []
521526
try:
522-
return self.eval_sets_manager.list_eval_sets(app_name)
527+
eval_sets = self.eval_sets_manager.list_eval_sets(app_name)
523528
except NotFoundError as e:
524529
logger.warning(e)
525-
return []
530+
531+
return ListEvalSetsResponse(eval_set_ids=eval_sets)
532+
533+
@deprecated(
534+
"Please use list_eval_sets instead. This will be removed in future"
535+
" releases."
536+
)
537+
@app.get(
538+
"/apps/{app_name}/eval_sets",
539+
response_model_exclude_none=True,
540+
tags=[TAG_EVALUATION],
541+
)
542+
async def list_eval_sets_legacy(app_name: str) -> list[str]:
543+
list_eval_sets_response = await list_eval_sets(app_name)
544+
return list_eval_sets_response.eval_set_ids
526545

546+
@app.post(
547+
"/apps/{app_name}/eval-sets/{eval_set_id}/add-session",
548+
response_model_exclude_none=True,
549+
tags=[TAG_EVALUATION],
550+
)
527551
@app.post(
528552
"/apps/{app_name}/eval_sets/{eval_set_id}/add_session",
529553
response_model_exclude_none=True,
@@ -583,6 +607,11 @@ async def list_evals_in_eval_set(
583607

584608
return sorted([x.eval_id for x in eval_set_data.eval_cases])
585609

610+
@app.get(
611+
"/apps/{app_name}/eval-sets/{eval_set_id}/eval-cases/{eval_case_id}",
612+
response_model_exclude_none=True,
613+
tags=[TAG_EVALUATION],
614+
)
586615
@app.get(
587616
"/apps/{app_name}/eval_sets/{eval_set_id}/evals/{eval_case_id}",
588617
response_model_exclude_none=True,
@@ -606,6 +635,11 @@ async def get_eval(
606635
),
607636
)
608637

638+
@app.put(
639+
"/apps/{app_name}/eval-sets/{eval_set_id}/eval-cases/{eval_case_id}",
640+
response_model_exclude_none=True,
641+
tags=[TAG_EVALUATION],
642+
)
609643
@app.put(
610644
"/apps/{app_name}/eval_sets/{eval_set_id}/evals/{eval_case_id}",
611645
response_model_exclude_none=True,
@@ -638,6 +672,10 @@ async def update_eval(
638672
except NotFoundError as nfe:
639673
raise HTTPException(status_code=404, detail=str(nfe)) from nfe
640674

675+
@app.delete(
676+
"/apps/{app_name}/eval-sets/{eval_set_id}/eval-cases/{eval_case_id}",
677+
tags=[TAG_EVALUATION],
678+
)
641679
@app.delete(
642680
"/apps/{app_name}/eval_sets/{eval_set_id}/evals/{eval_case_id}",
643681
tags=[TAG_EVALUATION],

0 commit comments

Comments
 (0)