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

Synapse Notebook如何接收Pipeline变量?新手技术求助

处理Synapse Notebook接收Pipeline变量的实现方案

一、无需额外安装包

Synapse本身内置了Pipeline变量传递到Notebook的能力,不需要额外安装任何包,直接用内置语法即可实现。

二、两种核心实现方式

方式1:使用Synapse魔法命令读取

通过%synapse getVariable命令直接获取Pipeline传递的变量,代码示例:

# 读取字符串类型变量
api_url = %synapse getVariable "API_URL"

# 读取复杂类型(如数组、字典),需转成对应格式
import json
api_headers = json.loads(%synapse getVariable "API_HEADERS")

注意:命令里的变量名要和Pipeline中定义的名称完全一致,必须加引号包裹。

方式2:通过Spark配置读取

Pipeline传递的变量会自动注入到Spark配置中,前缀为spark.yarn.appConfigurationProperties.,可以通过spark.conf.get()获取:

# 读取字符串变量
api_key = spark.conf.get("spark.yarn.appConfigurationProperties.API_KEY")

# 复杂类型转JSON处理
import json
request_params = json.loads(spark.conf.get("spark.yarn.appConfigurationProperties.REQUEST_PARAMS"))

三、Pipeline侧的配置步骤

  1. 在Pipeline的Notebook活动中,切换到参数标签页
  2. 点击「添加参数」,输入参数名称(要和Notebook里读取的变量名完全匹配)
  3. 参数值选择「管道变量」,从下拉列表中选中你要传递的Pipeline变量
  4. 保存配置后运行Pipeline,Notebook即可获取到对应变量值

四、调试建议

  • 拿到变量后先打印确认:print(api_url)
  • 复杂变量打印前转成格式化字符串:print(json.dumps(api_headers, indent=2))

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.18 20:04:56