这可能看起来很愚蠢,但这是我在这里发表的第一篇文章。抱歉做错了什么。
我目前正在使用 python2.7 使用 TFX 0.11(即 tfdv-tft-tfserving)和tensorflow 1.11 构建一个简单的 ML 管道。我目前有一个 apache-flink 集群,我想将其用于 TFX。我知道 TFX 背后的框架是 apache-beams 2.8,它(apache-beams)目前通过便携式运行器层支持带有 python SDK 的 flink。
但问题是我如何通过这个便携式运行器概念使用 apache-beams 和 flink 运行器在 TFX (tfdv-tft) 中进行编码,因为 TFX 目前似乎只支持 DirectRunner 和 DataFlowRunner (Google Cloud)。
我在网上搜索了一段时间,在TFX网站上看到最后一行,
“请使用 tensorflow-transform 标签将有关使用 tf.Transform 的任何问题直接提交至 Stack Overflow。”
这就是我在这里的原因。任何想法或解决方法都非常感激。谢谢你!
谢谢你的提问。
免责声明:Portable Flink Runner 仍处于实验阶段,仅适用于少量的输入数据。
以下是如何通过 Beam 在 Flink 上运行 TFX。
先决条件
- Linux
- Docker
- 光束回购:https://github.com/apache/beam https://github.com/apache/beam
- 用于输入和输出的分布式文件系统。
运行 python 管道的说明:https://beam.apache.org/roadmap/portability/#python-on-flink https://beam.apache.org/roadmap/portability/#python-on-flink
注意:我们目前仅支持 Flink 1.5.5
指示
1)构建Worker容器:
- 转到 Beam 结账目录
- 运行 gradle 命令: ./gradlew :beam-sdks-python-container:docker
2) 运行 Flink 的 Beam JobServer:
- 转到 Beam 结账目录
- 运行 gradle 命令:./gradlew beam-runners-flink_2.11-job-server:runShadow
注意:此命令不会完成,因为它会启动作业服务器并保持其运行。
3)提交管道
- 请参阅https://github.com/angoenka/model-analysis/blob/hack_1/examples/chicago_taxi/preprocess_flink.sh https://github.com/angoenka/model-analysis/blob/hack_1/examples/chicago_taxi/preprocess_flink.sh
- 注意:确保将以下标志传递到您的管道
--experiments=beam_fn_api
--runner PortableRunner
--job_endpoint=localhost:8099
--experiments=worker_threads=100
--execution_mode_for_batch=BATCH_FORCED
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)