namespace StabilityMatrix.Core.Inference; public abstract class InferenceClientBase : IDisposable { /// /// Start the connection /// public virtual Task ConnectAsync(CancellationToken cancellationToken = default) { return Task.CompletedTask; } /// /// Close the connection to remote resources /// public virtual Task CloseAsync(CancellationToken cancellationToken = default) { return Task.CompletedTask; } protected virtual void Dispose(bool disposing) { } public void Dispose() { Dispose(true); GC.SuppressFinalize(this); } }