diff --git a/docs/Unity-Inference-Engine.md b/docs/Unity-Inference-Engine.md index 213136d1a5..a4adfee9a0 100644 --- a/docs/Unity-Inference-Engine.md +++ b/docs/Unity-Inference-Engine.md @@ -7,9 +7,6 @@ your Unity games. This support is possible thanks to the [compute shaders](https://docs.unity3d.com/Manual/class-ComputeShader.html) to run the neural network within Unity. -**Note**: The ML-Agents Toolkit only supports the models created with our -trainers. - ## Supported devices See the Unity Inference Engine documentation for a list of the @@ -45,3 +42,22 @@ use for Inference. **Note:** For most of the models generated with the ML-Agents Toolkit, CPU will be faster than GPU. You should use the GPU only if you use the ResNet visual encoder or have a large number of agents with visual observations. + +# Unsupported use cases +## Externally trained models +The ML-Agents Toolkit only supports the models created with our trainers. Model +loading expects certain conventions for constants and tensor names. While it is +possible to construct a model that follows these conventions, we don't provide +any additional help for this. More details can be found in +[TensorNames.cs](https://github.com/Unity-Technologies/ml-agents/blob/release_4_docs/com.unity.ml-agents/Runtime/Inference/TensorNames.cs) +and +[BarracudaModelParamLoader.cs](https://github.com/Unity-Technologies/ml-agents/blob/release_4_docs/com.unity.ml-agents/Runtime/Inference/BarracudaModelParamLoader.cs). + +If you wish to run inference on an externally trained model, you should use +Barracuda directly, instead of trying to run it through ML-Agents. + +## Model inference outside of Unity +We do not provide support for inference anywhere outside of Unity. The +`frozen_graph_def.pb` and `.onnx` files produced by training are open formats +for TensorFlow and ONNX respectively; if you wish to convert these to another +format or run inference with them, refer to their documentation.