示例#1
0
        public static Output ExtractSweepResult(IHostEnvironment env, ResultInput input)
        {
            var autoMlState = input.State as AutoInference.AutoMlMlState;

            if (autoMlState == null)
            {
                throw env.Except("The state must be a valid AutoMlState.");
            }
            // Create results output dataview
            var       rows = autoMlState.GetAllEvaluatedPipelines().Select(p => p.ToResultRow()).ToList();
            IDataView outputView;
            var       col1 = new KeyValuePair <string, ColumnType>("Graph", TextType.Instance);
            var       col2 = new KeyValuePair <string, ColumnType>("MetricValue", PrimitiveType.FromKind(DataKind.R8));
            var       col3 = new KeyValuePair <string, ColumnType>("PipelineId", TextType.Instance);

            if (rows.Count == 0)
            {
                var host = env.Register("ExtractSweepResult");
                outputView = new EmptyDataView(host, new SimpleSchema(host, col1, col2, col3));
            }
            else
            {
                var builder = new ArrayDataViewBuilder(env);
                builder.AddColumn(col1.Key, (PrimitiveType)col1.Value, rows.Select(r => new DvText(r.GraphJson)).ToArray());
                builder.AddColumn(col2.Key, (PrimitiveType)col2.Value, rows.Select(r => r.MetricValue).ToArray());
                builder.AddColumn(col3.Key, (PrimitiveType)col3.Value, rows.Select(r => new DvText(r.PipelineId)).ToArray());
                outputView = builder.GetDataView();
            }
            return(new Output {
                Results = outputView, State = autoMlState
            });
        }
示例#2
0
        public async Task <IActionResult> VerifyResults(ResultInput input)
        {
            if (input == null || !input.Validate())
            {
                return(Conflict(new B2CErrorResponseContent("Cannot deserialize input claims")));
            }

            var response = await httpService.GetAsync <CheckObject>($"{onfidoSettings.BaseUrl}{input.href}");

            if (!response.Status)
            {
                return(Conflict(new B2CErrorResponseContent(response.Message)));
            }

            return(Ok(response.Data));
        }
示例#3
0
        public async Task <IActionResult> PollCheck(ResultInput input)
        {
            if (input == null || !input.Validate())
            {
                return(Conflict("An error has occured. Please retry."));
            }

            var response = await httpService.GetAsync <CheckObject>($"{onfidoSettings.BaseUrl}{input.href}");

            if (!response.Status)
            {
                return(Conflict(response.Message));
            }

            var output = new {
                response.Data.status
            };

            return(Ok(output));
        }
示例#4
0
        public async Task <Result> CreateResultAsync([Service] IResultService resultService,
                                                     [Service] IHttpContextAccessor httpContextAccessor, ResultInput resultInput)
        {
            var user = httpContextAccessor.HttpContext.User;

            var model = new ResultCreateModel
            {
                WinnerId = resultInput.WinnerId,
                LoserId  = resultInput.LoserId
            };

            return(await resultService.SaveResultAsync(model, user.Identity.Name));
        }