При запуске следующего фрагмента кода PySpark:
nlp = NLPFunctions()
def parse_ingredients(ingredient_lines):
parsed_ingredients = nlp.getingredients_bulk(ingredient_lines)[0]
return list(chain.from_iterable(parsed_ingredients))
udf_parse_ingredients = UserDefinedFunction(parse_ingredients, ArrayType(StringType()))
Я получаю следующую ошибку: _pickle.PicklingError: Could not serialize object: TypeError: can't pickle _thread.lock objects
Я предполагаю, что это связано с тем, что PySpark не может сериализовать этот пользовательский класс. Но как мне избежать накладных расходов на создание экземпляра этого дорогостоящего объекта при каждом запуске функции parse_ingredients_line
?