def get_ground_truth(
        self,
        dataset_name: Optional[str] = None,
        user_table_name: Optional[str] = None,
        user_schema_mapping: Optional[Dict[str, str]] = None,
        user_schema_name: Optional[str] = None,
    ) -> pandas.DataFrame:
        """Get ground truth data from the dataset. If `user_table_name` and `user_schema_mapping` are provided,
        load a virtual dataset from the user's table using the schema mapping. If `dataset_name` is provided,
        load ground truth data from the dataset by name.
        dataset_name: Name of the dataset.
        user_table_name: Name of the user's table to load ground truth data from.
        user_schema_mapping: Mapping of user table columns to internal `GroundTruth` schema fields.
        user_schema_name: Name of the user's schema to load ground truth data from.
        """
        if user_table_name and user_schema_mapping:
            return self.connector.db.get_virtual_ground_truth(
                user_table_name, user_schema_mapping, user_schema_name
            )
        elif dataset_name:
            return self.connector.db.get_ground_truths_by_dataset(dataset_name)
        else:
            raise ValueError(
                "Either `dataset_name` or `user_table_name` and `user_schema_mapping` must be provided."
            )
Get ground truth data from the dataset. If `user_table_name` and `user_schema_mapping` are provided,
        load a virtual dataset from the user's table using the schema mapping. If `dataset_name` is provided,
        load ground truth data from the dataset by name.
        dataset_name: Name of the dataset.
        user_table_name: Name of the user's table to load ground truth data from.
        user_schema_mapping: Mapping of user table columns to internal `GroundTruth` schema fields.
        user_schema_name: Name of the user's schema to load ground truth data from.
        
src/core/trulens/core/session.py