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

SageMaker端点预测遇SSLError:前10条正常后续SSL验证失败求助

SageMaker端点预测出现SSLError:EOF违反协议

问题描述

使用SageMaker训练并部署深度神经网络端点后,前10条测试数据可正常获取预测结果,但后续请求触发如下错误:

SSLError: SSL validation failed for https://runtime.s3.amazonaws.com/endpoints/[endpointName]/invocations EOF occurred in violation of protocol (_ssl.c:2396)

使用的核心代码片段:

from sagemaker.tensorflow import TensorFlowPredictor
predictor = TensorFlowPredictor(endpoint_name)

# 调用端点进行推理
pred = predictor.predict(input_vals)
    
# 存储预测结果
y_pred.extend([i[0] for i in pred['predictions']])

解决方案

  • 拆分批量请求:如果input_vals是大批次数据,尝试拆分成多个小批次逐个请求。大批次数据传输时间过长可能导致SSL连接提前中断。
  • 设置更长的超时时间:初始化Predictor时显式配置连接和读取超时,避免因超时触发EOF错误:
    predictor = TensorFlowPredictor(
        endpoint_name,
        client_config={"connect_timeout": 60, "read_timeout": 60}  # 根据实际场景调整超时秒数
    )
    
  • 升级依赖包:本地环境的requests、urllib3等网络依赖包过旧可能存在SSL协议兼容问题,执行升级:
    pip install --upgrade requests urllib3
    
  • 添加重试机制:针对SSL类错误添加自动重试逻辑,临时规避偶发的连接中断:
    from tenacity import retry, stop_after_attempt, retry_if_exception_type
    import ssl
    
    @retry(stop=stop_after_attempt(3), retry=retry_if_exception_type(ssl.SSLError))
    def safe_predict(predictor, input_data):
        return predictor.predict(input_data)
    
    # 使用重试函数替代直接调用
    pred = safe_predict(predictor, input_vals)
    
  • 检查端点服务日志:登录AWS控制台查看SageMaker端点的CloudWatch日志,确认服务端是否存在内存不足、进程崩溃等异常,这类问题也会导致连接提前终止。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.23 15:45:03