private Classifier CreateClassifier() { Classifier classifier = null; try { using (FileStream positiveExamplesStream = File.OpenRead(_localGiraffePositiveExamplesFilePath), negativeExamplesStream = File.OpenRead(_localNegativeExamplesFilePath)) { Dictionary <string, Stream> positiveExamples = new Dictionary <string, Stream>(); positiveExamples.Add(_giraffeClassname, positiveExamplesStream); CreateClassifier createClassifier = new CreateClassifier(_createdClassifierName, positiveExamples, negativeExamplesStream); classifier = _service.CreateClassifier(createClassifier); } } catch (Exception e) { if (_trainRetries > 0) { _trainRetries--; CreateClassifier(); } else { throw e; } } return(classifier); }
private Classifier CreateClassifier(CreateClassifier createClassifier, Dictionary <string, object> customData = null) { Console.WriteLine("\nAttempting to CreateClassifier()"); var result = _service.CreateClassifier(createClassifier: createClassifier, customData: customData); if (result != null) { Console.WriteLine("CreateClassifier() succeeded:\n{0}", JsonConvert.SerializeObject(result, Formatting.Indented)); } else { Console.WriteLine("Failed to CreateClassifier()"); } return(result); }
public async Task <Classifier> Create(CreateClassifier request) { request.UserUid = _currentUserProvider.GetUserUid(); return(await _mediator.Send(request)); }
public void TestClassifiers_Success() { var listClassifiersResult = ListClassifiers(); Classifier createClassifierResult = null; using (FileStream positiveExamplesStream = File.OpenRead(_localGiraffePositiveExamplesFilePath), negativeExamplesStream = File.OpenRead(_localNegativeExamplesFilePath)) { Dictionary <string, Stream> positiveExamples = new Dictionary <string, Stream>(); positiveExamples.Add(_giraffeClassname, positiveExamplesStream); CreateClassifier createClassifier = new CreateClassifier(_createdClassifierName, positiveExamples, negativeExamplesStream); createClassifierResult = _service.CreateClassifier(createClassifier); } string createdClassifierId = createClassifierResult.ClassifierId; var getClassifierResult = GetClassifier(createdClassifierId); try { IsClassifierReady(createdClassifierId); } catch (Exception e) { Console.WriteLine("Failed to get classifier..."); } autoEvent.WaitOne(); Classifier updateClassifierResult = null; var retrainRetries = 0; try { using (FileStream positiveExamplesStream = File.OpenRead(_localTurtlePositiveExamplesFilePath)) { Dictionary <string, Stream> positiveExamples = new Dictionary <string, Stream>(); positiveExamples.Add(_turtleClassname, positiveExamplesStream); UpdateClassifier updateClassifier = new UpdateClassifier(createdClassifierId, positiveExamples); updateClassifierResult = _service.UpdateClassifier(updateClassifier); } } catch (Exception e) { retrainRetries++; if (retrainRetries < 3) { Console.WriteLine("Retraining failed. Retrying..."); using (FileStream positiveExamplesStream = File.OpenRead(_localTurtlePositiveExamplesFilePath)) { Dictionary <string, Stream> positiveExamples = new Dictionary <string, Stream>(); positiveExamples.Add(_turtleClassname, positiveExamplesStream); UpdateClassifier updateClassifier = new UpdateClassifier(createdClassifierId, positiveExamples); updateClassifierResult = _service.UpdateClassifier(updateClassifier); } } else { Console.WriteLine("Retraining failed. Out of retries..."); } } try { IsClassifierReady(createdClassifierId); } catch (Exception e) { Console.WriteLine("Failed to get classifier..."); } autoEvent.WaitOne(); var deleteClassifierResult = DeleteClassifier(createdClassifierId); Assert.IsNotNull(deleteClassifierResult); Assert.IsNotNull(updateClassifierResult); Assert.IsTrue(updateClassifierResult.ClassifierId == createdClassifierId); Assert.IsNotNull(getClassifierResult); Assert.IsTrue(getClassifierResult.ClassifierId == createdClassifierId); Assert.IsNotNull(createClassifierResult); Assert.IsTrue(createClassifierResult.Name == _createdClassifierName); Assert.IsNotNull(listClassifiersResult); }