| using UnityEngine; |
| using Unity.InferenceEngine; |
|
|
| public class RunQuantizedModel : MonoBehaviour |
| { |
| |
| |
| |
|
|
| |
| [SerializeField] |
| ModelAsset modelAsset; |
| Worker m_Worker; |
| Tensor m_Input; |
|
|
| const int maxTokens = 100; |
|
|
| void OnEnable() |
| { |
| |
| var model = ModelLoader.Load(modelAsset); |
| m_Worker = new Worker(model, BackendType.GPUCompute); |
|
|
| |
| m_Input = new Tensor<int>(new TensorShape(1, maxTokens)); |
| } |
|
|
| void Update() |
| { |
| |
| m_Worker.Schedule(m_Input); |
| var output = m_Worker.PeekOutput() as Tensor<float>; |
| } |
|
|
| void OnDisable() |
| { |
| |
| m_Worker.Dispose(); |
| m_Input.Dispose(); |
| } |
| } |
|
|