using System; using TorchSharp; public class ClipEncoder : IDisposable { private torch.jit.ScriptModule _model; public torch.Device Device {get;} public ClipEncoder(string modelPath, torch.Device device) { _model = TorchSharp.torch.jit.load(modelPath); Device = device; _model.to(Device); _model.eval(); } public torch.Tensor Forward(torch.Tensor tokenTensor) { return (torch.Tensor)_model.forward(tokenTensor); } public void Dispose() { _model.Dispose(); _model = null; } }