我想在 python 中运行 sparknlp,我使用的是 apache-spark 3.2.1,spark-nlp==3.4.1 pyspark==3.1.2。我正在遵循本指南。我可以使用以下代码获得火花会话:
sc = pyspark.SparkContext().getOrCreate()
import sparknlp
sparknlp.start()
每当我尝试使用代码下载任何预训练模型时:
pipeline = PretrainedPipeline('explain_document_dl', lang='en')
我遇到了一些错误,我通过在 apache-spark jar 中添加该错误的 jar 来一一解决了一些错误。例如:错误之一是:
java.lang.NoClassDefFoundError: org/tensorflow/ndarray/NdArray
我通过添加 NdArray Jar 解决了
像这样我根据错误添加了 6-7 个罐子。
我遇到的错误是:
Py4JJavaError: An error occurred while calling z:com.johnsnowlabs.nlp.pretrained.PythonResourceDownloader.downloadPipeline.
: java.lang.VerifyError: Bad return type
Exception Details:
Location:
com/johnsnowlabs/ml/tensorflow/TensorResources.createTensor(Ljava/lang/Object;)Lorg/tensorflow/Tensor; @370: areturn
Reason:
Type 'java/lang/Object' (current frame, stack[0]) is not assignable to 'org/tensorflow/Tensor' (from method signature)
PS我正在使用java 8