Пример #1
0
    def get_save_model_task_and_dataset(self):
        if not self._pending_save_model_task:
            return None, None

        task = self._pending_save_model_task
        self._pending_save_model_task = None
        return task, create_dataset_from_tasks([task], self.data_reader)
Пример #2
0
 def get_validation_dataset(self, eval_task):
     """
     If an evaluation task exists, this creates a `tf.data.Dataset`
     object as well as its corresponding model version and task_id.
     Otherwise, this returns `None`.
     """
     if not eval_task:
         return None
     return (
         create_dataset_from_tasks([eval_task], self.data_reader),
         eval_task.model_version,
         eval_task.task_id,
     )
Пример #3
0
 def get_evaluation_dataset(self):
     """
     If there are _pending_eval_tasks, return a RecordIO dataset for
     an evaluation task and its corresponding model version, task_id.
     Return None if no _pending_eval_tasks.
     """
     if not self._pending_eval_tasks:
         return None
     shards = []
     task = None
     with self._lock:
         if self._pending_eval_tasks:
             task = self._pending_eval_tasks.pop(0)
             shards.append(task)
     if shards and task:
         return (
             create_dataset_from_tasks(shards, self.data_reader),
             task.model_version,
             task.task_id,
         )
     else:
         return None