You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+56-7Lines changed: 56 additions & 7 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -7,18 +7,20 @@
7
7
8
8
TensorFlow Recommenders Addons(TFRA) are a collection of projects related to large-scale recommendation systems
9
9
built upon TensorFlow by introducing the **Dynamic Embedding Technology** to TensorFlow
10
-
that makes TensorFlow more suitable for trainning models of **Search, Recommendations and Advertising** and
10
+
that makes TensorFlow more suitable for training models of **Search, Recommendations, and Advertising** and
11
11
makes building, evaluating, and serving sophisticated recommenders models easy.
12
12
See approved TensorFlow RFC #[313](https://github.com/tensorflow/community/pull/313).
13
13
Those contributions will be complementary to TensorFlow Core and TensorFlow Recommenders etc.
14
14
15
+
For Apple silicon(M1), please refer to [Apple Silicon Support](#apple-silicon-support-beta-release).
16
+
15
17
## Main Features
16
18
17
19
- Make key-value data structure (dynamic embedding) trainable in TensorFlow
18
20
- Get better recommendation effect compared to static embedding mechanism with no hash conflicts
19
21
- Compatible with all native TensorFlow optimizers and initializers
20
22
- Compatible with native TensorFlow CheckPoint and SavedModel format
21
-
- Fully support train and inference recommeneders models on GPUs
23
+
- Fully support train and inference recommenders models on GPUs
22
24
- Support [TF serving](https://github.com/tensorflow/serving) and [Triton Inference Server](https://github.com/triton-inference-server/server) as inference framework
23
25
- Support variant Key-Value implements as dynamic embedding storage and easy to extend
24
26
-[cuckoohash_map](https://github.com/efficient/libcuckoo) (from Efficient Computing at Carnegie Mellon, on CPU)
@@ -114,7 +116,8 @@ is compiled differently. A typical example of this would be `conda`-installed Te
114
116
Check [nvidia-support-matrix](https://docs.nvidia.com/deeplearning/cudnn/support-matrix/index.html) for more details.
115
117
116
118
**NOTICE**
117
-
- The release packages have strict version binding relationship with TensorFlow.
119
+
120
+
- The release packages have a strict version binding relationship with TensorFlow.
118
121
- Due to the significant changes in the Tensorflow API, we can only ensure version 0.2.0 compatibility with TF1.15.2 on CPU & GPU,
119
122
but **there are no official releases**, you can only get it through compiling by the following:
120
123
```shell
@@ -127,7 +130,7 @@ sh .github/workflows/make_wheel_Linux_x86.sh
127
130
```
128
131
129
132
- If you need to work with TensorFlow 1.14.x or older version, we suggest you give up,
130
-
but maybe this doc can help you : [Extract headers from TensorFlow compiling dirctory](./build_deps/tf_header/README.md).
133
+
but maybe this doc can help you : [Extract headers from TensorFlow compiling directory](./build_deps/tf_header/README.md).
131
134
At the same time, we find some OPs used by TRFA have better performance, so we highly recommend you update TensorFlow to 2.x.
132
135
133
136
#### Installing from Source
@@ -136,7 +139,7 @@ You can also install from source. This requires the [Bazel](https://bazel.build/
136
139
Please install a TensorFlow on your compiling machine, The compiler needs to know the version of Tensorflow and
137
140
its headers according to the installed TensorFlow.
138
141
139
-
```
142
+
```shell
140
143
export TF_VERSION="2.5.1"# "2.7.0", "2.5.1" are well tested.
Before installing **TFRA** from source, you need to install tensorflow-macos from Apple. To install the natively supported version of tensorflow-macos, it's required to install the [Conda environment](https://github.com/conda-forge/miniforge).
184
+
185
+
After installing conda environment, run the following commands in the terminal.
There is a difference between the [tensorflow-macos installation instruction](https://developer.apple.com/metal/tensorflow-plugin/) and our instruction because this build requires Python 3.8 or 3.9 and tensorflow-macos 2.5.0.
205
+
206
+
The building script has been tested on macOS Monterey, If you are using macOS Big Sur, you may need to customize the building script.
207
+
208
+
```shell
209
+
# Build arm64 wheel from source
210
+
PY_VERSION=$PYTHON_VERSION TF_VERSION="2.5.0" TF_NEED_CUDA="0" sh .github/workflows/make_wheel_macOS_arm64.sh
211
+
212
+
# Install
213
+
python -m pip install --no-deps ./artifacts/*.whl
214
+
```
215
+
216
+
**NOTICE:**
217
+
218
+
- The Apple silicon version TFRA doesn't support data type **float16**, the issue may be fixed in the future release.
172
219
173
220
##### Data Type Matrix for `tfra.dynamic_embedding.Variable`
We are very grateful to the maintainers of [tensorflow/addons](https://github.com/tensorflow/addons) for borrowing a lot of code from [tensorflow/addons](https://github.com/tensorflow/addons) to build our workflow and documentation system.
247
296
We also want to extend a thank you to the Google team members who have helped with CI setup and reviews!
0 commit comments