You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

在PySpark中调用SageMaker预测报错:TypeError: 'JavaPackage' object is not callable

解决Spark作业调用SageMaker预测时的TypeError: 'JavaPackage' object is not callable错误

这个错误的核心原因是Spark环境未正确加载sagemaker-pyspark对应的Java依赖组件,导致Python层无法找到可调用的Java类,只能拿到JavaPackage对象。以下是具体解决步骤:

  • 提交Spark作业时指定正确的Maven依赖
    运行Spark作业时,必须通过--packages参数引入与Python版本匹配的sagemaker-spark JAR包。例如,针对Scala 2.12(适配Spark 3.x)的命令:

    spark-submit --packages com.amazonaws:sagemaker-spark_2.12:2.4.3 your_job.py
    

    注意:JAR包的版本必须和你安装的Python sagemaker-pyspark 版本完全一致,可以通过pip show sagemaker-pyspark查看当前Python包版本。

  • 验证Python与Java依赖版本兼容性
    确保sagemaker-pyspark的Python包版本和Spark作业加载的Java JAR版本严格匹配。版本不兼容会导致跨语言调用时出现类找不到的问题。比如如果Python包是2.4.3,JAR也必须用2.4.3。

  • 检查代码中的拼写错误(非当前错误,但需注意)
    你的代码里ouput_schema存在拼写错误,应该是output_schema,这个问题虽然不会触发当前的JavaPackage错误,但会在后续执行transform时引发异常,建议提前修正。

内容的提问来源于stack exchange,提问作者Exorcismus

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 06:37:05