跳转到主要内容

Struct2Tensor是一个用于解析和操作TensorFlow结构化数据的软件包

项目描述

Struct2Tensor

Python PyPI

简介

struct2tensor是TensorFlow内部解析结构化数据的库。特别是,它使得在TensorFlow模型图中操作结构化数据变得容易,例如切片、展平、复制子结构等。'examples/prensor_playground.ipynb'中的笔记本提供了一些struct2tensor的示例和主要概念介绍。您可以通过Google的colab环境在浏览器中运行笔记本,或者下载文件在自己的Jupyter环境中运行。

本存储库有两个主要用途

  1. 创建一个PIP包。该PIP包包含现有tensorflow安装的插件(OpKernels)。
  2. 与tensorflow-serving进行静态链接。

由于这些过程是独立的,可以选择以下任一组的指令。

使用预构建的 Linux PIP 包。

从虚拟环境运行

pip install struct2tensor

夜间包

Struct2Tensor 还在 Google Cloud 上托管夜间包,地址为 https://pypi-nightly.tensorflow.org。要安装最新的夜间包,请使用以下命令

pip install --extra-index-url https://pypi-nightly.tensorflow.org/simple struct2tensor

这将安装 struct2tensor 的主要依赖项的夜间包,例如 TensorFlow Metadata (TFMD)。

创建 PIP 包。

struct2tensor PIP 包对于创建模型很有用。它与 tensorflow 2.x 兼容。

为了统一过程,我们建议在 Docker 容器中编译 struct2tensor。

下载代码

进入您的家目录。

下载源代码。

git clone https://github.com/google/struct2tensor.git
cd ~/struct2tensor

使用 docker-compose

安装 docker-compose

使用它构建 Python 3.8 的 tensorflow 版本 2 的 pip 轮子

docker-compose build --build-arg PYTHON_VERSION=3.8 manylinux2014
docker-compose run -e TF_VERSION=RELEASED_TF_2 manylinux2014

这将创建一个 ~/struct2tensor/dist 目录中的 manylinux 包。

创建静态库

为了构建 tensorflow-serving 的静态库,我们运行

bazel build -c opt struct2tensor:struct2tensor_kernels_and_ops

这也可以链接到另一个库。

TensorFlow Serving Docker 镜像

struct2tensor 需要几个自定义 TensorFlow 操作才能运行。如果您使用 struct2tensor 训练模型并希望使用 TensorFlow Serving 提供服务,TensorFlow Serving 二进制文件需要链接到这些自定义操作。我们有一个预构建的 Docker 镜像,其中包含这样的二进制文件。Dockerfile 可在 tools/tf_serving_docker/Dockerfile 中找到。镜像在 gcr.io/tfx-oss-public/s2t_tf_serving 上可用。

请参阅 Dockerfile 以获取详细信息。但简而言之,该镜像公开端口 8500 作为 gRPC 端点,端口 8501 作为 REST 端点。您可以设置两个环境变量 MODEL_BASE_PATHMODEL_NAME 以指向您的模型(无论是将其挂载到容器中还是将模型放在 GCS 上)。它将在 ${MODEL_BASE_PATH}/${MODEL_NAME}/${VERSION_NUMBER} 处查找保存的模型,其中 VERSION_NUMBER 是一个整数。

兼容性

struct2tensor tensorflow
0.46.0 2.15.0
0.45.0 2.13.0
0.44.0 2.12.0
0.43.0 2.11.0
0.42.0 2.10.0
0.41.0 2.9.0
0.40.0 2.9.0
0.39.0 2.8.0
0.38.0 2.8.0
0.37.0 2.7.0
0.36.0 2.7.0
0.35.0 2.6.0
0.34.0 2.6.0
0.33.0 2.5.0
0.32.0 2.5.0
0.31.0 2.5.0
0.30.0 2.4.0
0.29.0 2.4.0
0.28.0 2.4.0
0.27.0 2.4.0
0.26.0 2.3.0
0.25.0 2.3.0
0.24.0 2.3.0
0.23.0 2.3.0
0.22.0 2.2.0
0.21.1 2.1.0
0.21.0 2.1.0
0.0.1.dev* 1.15

项目详情


下载文件

下载适用于您平台的电影。如果您不确定选择哪个,请了解有关 安装包 的更多信息。

源分发

此版本没有可用的源分发文件。请参阅生成分发存档的教程

构建的分发

struct2tensor-0.46.0-cp311-cp311-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (3.0 MB 查看哈希值)

上传时间 CPython 3.11 manylinux: glibc 2.17+ x86-64

struct2tensor-0.46.0-cp311-cp311-macosx_12_0_x86_64.whl (1.9 MB 查看哈希值)

上传时间 CPython 3.11 macOS 12.0+ x86-64

struct2tensor-0.46.0-cp310-cp310-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (3.0 MB 查看哈希值)

上传时间 CPython 3.10 manylinux: glibc 2.17+ x86-64

struct2tensor-0.46.0-cp310-cp310-macosx_12_0_x86_64.whl (1.9 MB 查看哈希值)

上传时间 CPython 3.10 macOS 12.0+ x86-64

struct2tensor-0.46.0-cp39-cp39-manylinux2014_x86_64.manylinux_2_17_x86_64.whl (3.0 MB 查看哈希值)

上传时间 CPython 3.9 manylinux: glibc 2.17+ x86-64

struct2tensor-0.46.0-cp39-cp39-macosx_12_0_x86_64.whl (1.9 MB 查看哈希值)

上传时间 CPython 3.9 macOS 12.0+ x86-64

支持者