44from tqdm .autonotebook import tqdm
55from importlib .util import find_spec
66import numbers
7+ import numpy as np
78
89from collections .abc import Iterable , Mapping
910from typing import Union , List , Tuple , Optional , Dict , Any
@@ -184,6 +185,11 @@ def _dict_to_vector(item):
184185 f"Column `sparse_values` is expected to be a dictionary, found { type (item ['sparse_values' ])} " )
185186 indices = item ['sparse_values' ].get ('indices' , None )
186187 values = item ['sparse_values' ].get ('values' , None )
188+
189+ if isinstance (values , np .ndarray ):
190+ values = values .tolist ()
191+ if isinstance (indices , np .ndarray ):
192+ indices = indices .tolist ()
187193 try :
188194 sparse_values = SparseValues (indices = indices , values = values )
189195 except TypeError as e :
@@ -195,8 +201,11 @@ def _dict_to_vector(item):
195201 if not isinstance (metadata , Mapping ):
196202 raise TypeError (f"Column `metadata` is expected to be a dictionary, found { type (metadata )} " )
197203
204+ if isinstance (item ['values' ], np .ndarray ):
205+ item ['values' ] = item ['values' ].tolist ()
206+
198207 try :
199- return Vector (id = item ['id' ], values = item ['values' ], sparse_values = sparse_values , metadata = metadata )
208+ return Vector (id = item ['id' ],values = item ['values' ], sparse_values = sparse_values , metadata = metadata )
200209
201210 except TypeError as e :
202211 # if not isinstance(item['values'], Iterable) or not isinstance(item['values'][0], numbers.Real):
0 commit comments