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

使用Synapse ML调用Azure认知服务情感分析报错求助

Azure认知文本服务情感分析调用错误排查方案

核心问题分析与修复步骤

1. 参数配置冲突

Synapse ML的TextSentiment组件中,setLocation与setUrl无需同时配置,二者选其一即可:

  • 若使用完整服务端点,直接用setUrl传入,删除setLocation配置;
  • 若使用区域标识,保留setLocation,删除setUrl配置。

以下是两种正确配置的代码示例:

示例1:使用完整端点

from synapse.ml.cognitive import *

input_df = spark.createDataFrame([
  ("I am so happy today, its sunny!", "en-US"),
  ("I am frustrated by this rush hour traffic", "en-US"),
  ("The cognitive services on spark aint bad", "en-US"),
], ["text", "language"])

sentiment_df = (TextSentiment()
    .setTextCol("text")
    .setUrl(end_point)  # 确保为文本分析服务的完整端点,格式如https://eastus.cognitiveservices.azure.com/
    .setSubscriptionKey(service_key)
    .setOutputCol("sentiment")
    .setErrorCol("error")
    .setLanguageCol("language")
    .transform(input_df))

示例2:使用区域标识

from synapse.ml.cognitive import *

input_df = spark.createDataFrame([
  ("I am so happy today, its sunny!", "en-US"),
  ("I am frustrated by this rush hour traffic", "en-US"),
  ("The cognitive services on spark aint bad", "en-US"),
], ["text", "language"])

sentiment_df = (TextSentiment()
    .setTextCol("text")
    .setLocation("eastus")  # 需与Azure文本分析服务所在区域完全一致
    .setSubscriptionKey(service_key)
    .setOutputCol("sentiment")
    .setErrorCol("error")
    .setLanguageCol("language")
    .transform(input_df))

2. 端点与密钥有效性校验

  • 确认end_point是Azure**文本分析(Text Analytics)**服务的官方端点,而非其他认知服务端点;
  • 检查service_key是否为该文本分析服务的有效密钥(可在Azure门户的服务“密钥和端点”页面获取);
  • 确保端点格式正确,结尾需带有斜杠,例如https://eastus.cognitiveservices.azure.com/。

3. 网络与权限检查

  • 若运行环境为Synapse工作区,确认文本分析服务的网络规则允许该工作区访问(如未设置防火墙限制,或已将Synapse工作区加入允许列表);
  • 检查运行环境是否能正常访问Azure认知服务的公网端点。

4. 版本兼容性验证

确保Synapse ML版本与当前环境的Spark版本兼容,建议升级至最新稳定版:

pip install --upgrade synapseml

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.25 18:27:29