使用 watsonx.ai 笔记本
适用于:火花机 面筋加速火花机
IBM® watsonx.data 与 watsonx.ai 集成,允许使用 Jupyter Notebook 获得基于网络的工作体验。 你可以使用 watsonx.ai 接口在 Jupyter Notebook 中构建自己的代码,并使用 watsonx.data Spark 作为运行环境来运行它。
有关 Jupyter Notebook 的更多信息,请参阅 笔记本。
先决条件
订阅 IBM Cloud 上的 watsonx.ai。
过程
要在 watsonx.data spark 引擎上运行 Jupyter Notebook,请执行以下操作:
-
创建 watsonx.ai 项目。 要创建 watsonx.ai 项目,请参阅 创建项目。
-
创建 Spark 引擎环境。 要运行 Jupyter Notebook,必须创建运行时环境模板。
为此,请从用户界面访问 watsonx. 转到“管理”选项卡。 创建模板。 有关创建环境模板的更多信息,请参阅 创建环境模板。 创建模板时,选择类型为 Spark,然后从 Spark 引擎列表中选择在 watsonx.data 实例中配置的本地 Spark 引擎。
-
创建 Jupyter Notebook 资产,并通过 Jupyter Notebook 编辑工具访问该资产。 要在笔记本编辑器中创建笔记本文件,请参阅 在笔记本编辑器中创建笔记本文件。
创建笔记本时,请指定为 watsonx.data spark 引擎创建的运行时环境。
该笔记本将以编辑方式打开。 你可以开始努力了。 更多信息,请参阅 在笔记本编辑器中创建笔记本文件。
访问 watsonx.data 目录
在笔记本单元格中添加以下代码片段并运行。 代码片段包括连接到相关 watsonx.data 目录所需的配置。
conf=spark.sparkContext.getConf()
spark.stop()
from pyspark.sql import SparkSession
from pyspark.sql.functions import col, to_utc_timestamp
import base64,getpass
wxd_username=getpass.getpass("Please enter your username with hms access:").strip() #Prompt for username
wxd_hms_username="ibmlhapikey_"+wxd_username
wxd_hms_password=getpass.getpass("Please enter your api key with hms access:").strip() #Prompt for api key
string_to_encode= wxd_hms_username+":"+wxd_hms_password
wxd_encoded_apikey="Basic " + base64.b64encode(string_to_encode.encode("utf-8")).decode("utf-8")
conf.setAll([("spark.hive.metastore.client.plain.username", wxd_hms_username), \
("spark.hive.metastore.client.plain.password", wxd_hms_password), \
("spark.hadoop.wxd.apikey", wxd_encoded_apikey)
])
spark = SparkSession.builder.config(conf=conf).enableHiveSupport().getOrCreate()
您可以选择 " Shift-Enter ",逐步浏览笔记本执行单元,也可以运行整个笔记本。 系统会提示输入用户名和密码。 用户名是用户的 IBM Cloud ID,其 api 密钥用于访问数据桶。 这里的 API 密钥是访问对象存储空间的用户的 API 密钥。 要生成 API 密钥,请登录 watsonx.data 控制台并导航至“配置文件”>“配置文件和设置”>“API 密钥”,然后生成一个新的 API 密钥。
您可以根据自己的使用情况添加更多代码片段,然后继续。 更多信息,请参阅 在笔记本编辑器中创建笔记本文件。