diff --git a/debiai_data_provider/controller/routes.py b/debiai_data_provider/controller/routes.py index 5745e31..346ce6a 100644 --- a/debiai_data_provider/controller/routes.py +++ b/debiai_data_provider/controller/routes.py @@ -104,6 +104,9 @@ async def get_data_id_list( ) def get_data( projectId: str = Path(..., min_length=1, example="Project 1"), + analysisId: Optional[str] = Query(None), + analysisStart: Optional[bool] = Query(None), + analysisEnd: Optional[bool] = Query(None), sampleIds: List[Union[str, int, float]] = Body(..., embed=True), data_provider: DataProvider = Depends(get_data_provider), ): diff --git a/debiai_data_provider/models/project.py b/debiai_data_provider/models/project.py index da04d0a..f138fb1 100644 --- a/debiai_data_provider/models/project.py +++ b/debiai_data_provider/models/project.py @@ -33,7 +33,7 @@ def get_nb_samples(self) -> Union[int, None]: def get_samples_ids(self) -> List[str]: raise NotImplementedError - def get_data(self, samples_ids: List[str]) -> pd.DataFrame: + def get_data(self, samples_ids: List[Union[str, int, float]]) -> pd.DataFrame: raise NotImplementedError # Project models @@ -43,7 +43,9 @@ def get_models(self) -> List[ModelDetail]: def get_model_evaluated_data_id_list(self, model_id: str) -> List[str]: raise NotImplementedError - def get_model_results(self, model_id: str, sample_ids: List[str]) -> pd.DataFrame: + def get_model_results( + self, model_id: str, sample_ids: List[Union[str, int, float]] + ) -> pd.DataFrame: raise NotImplementedError @@ -64,6 +66,7 @@ def get_columns(self) -> Union[List[Column], None]: structure = structure.copy() + # Validate structure for key, value in structure.items(): if not isinstance(value, dict): raise ValueError( @@ -115,6 +118,7 @@ def get_columns(self) -> Union[List[Column], None]: # "type": "text", # "category": "context", # "group": "context", + # "metrics": {}, # }, # ... # } @@ -132,7 +136,7 @@ def get_columns(self) -> Union[List[Column], None]: "category": value["category"], "group": value.get("group", ""), }, - metrics={}, + metrics=value.get("metrics", {}), tags=[], type=value["type"], ) @@ -321,7 +325,7 @@ def get_data_id_list( return samples_ids - def get_data_from_ids(self, samples_ids: List[str]) -> dict: + def get_data_from_ids(self, samples_ids: List[Union[str, int, float]]) -> dict: from debiai_data_provider.utils.parser import dataframe_to_debiai_data_array # Get the data from the project diff --git a/debiai_data_provider/version.py b/debiai_data_provider/version.py index 6886913..7a20704 100644 --- a/debiai_data_provider/version.py +++ b/debiai_data_provider/version.py @@ -1 +1 @@ -VERSION = "1.1.4" +VERSION = "1.1.6"