public override async Task <ImagePredictionResultModel> PredictWithImageAsync(ImageInfo image, Guid projectId, Guid?iterationId = null) { return(await RetryHelper.RetryFuncAsync( async() => await Predictor.PredictWithImageAsync(image, projectId, iterationId), new[] { typeof(HttpOperationException), typeof(TaskCanceledException) }, RetryTimes, GapTimeBetweenRetry)); }
protected override async Task <ImageCreateSummary> UploadImagesByTagsAsync(IEnumerable <ImageInfo> images, Guid projectId, ICollection <Guid> tagIds) { var imageArray = images.ToList(); Func <Task <ImageCreateSummary> > createImagesFromUrls = async() => await TrainingApi.CreateImagesFromUrlsAsync( projectId, new ImageUrlCreateBatch(tagIds : tagIds.ToList(), images : imageArray.Select(x => new ImageUrlCreateEntry(x.Path)).ToList())); return(await RetryHelper.RetryFuncAsync( createImagesFromUrls, new[] { typeof(HttpOperationException), typeof(TaskCanceledException) }, RetryTimes)); }