diff --git a/deeplake/core/dataset/deeplake_query_tensor.py b/deeplake/core/dataset/deeplake_query_tensor.py index 3a369a57e5..2ec182793d 100644 --- a/deeplake/core/dataset/deeplake_query_tensor.py +++ b/deeplake/core/dataset/deeplake_query_tensor.py @@ -78,20 +78,21 @@ def numpy( def text(self, fetch_chunks: bool = False): """Return text data. Only applicable for tensors with 'text' base htype.""" + bs = self.indra_tensor.bytes() if self.ndim == 1: - return self.indra_tensor.bytes().decode() - return list( - self.indra_tensor[i].bytes().decode() for i in range(len(self.indra_tensor)) - ) + return bs.decode() + if isinstance(bs, bytes): + return [bs.decode()] + return list(b.decode() for b in bs) def dict(self, fetch_chunks: bool = False): """Return json data. Only applicable for tensors with 'json' base htype.""" + bs = self.indra_tensor.bytes() if self.ndim == 1: - return json.loads(self.indra_tensor.bytes().decode()) - return list( - json.loads(self.indra_tensor[i].bytes().decode()) - for i in range(len(self.indra_tensor)) - ) + return json.loads(bs.decode()) + if isinstance(bs, bytes): + return [json.loads(bs.decode())] + return list(json.loads(b.decode()) for b in self.indra_tensor.bytes()) @property def dtype(self): diff --git a/setup.py b/setup.py index 30be2e8b52..9e706957bd 100644 --- a/setup.py +++ b/setup.py @@ -70,7 +70,7 @@ def libdeeplake_available(): extras_require["all"] = [req_map[r] for r in all_extras] if libdeeplake_available(): - libdeeplake = "libdeeplake==0.0.101" + libdeeplake = "libdeeplake==0.0.104" extras_require["enterprise"] = [libdeeplake, "pyjwt"] extras_require["all"].append(libdeeplake) install_requires.append(libdeeplake)