/// <summary> Submit a Personalizer rank request. Receives a context and a list of actions. Returns which of the provided actions should be used by your application, in rewardActionId. </summary> /// <param name="options"> A Personalizer Rank request. </param> /// <param name="cancellationToken"> The cancellation token to use. </param> public virtual async Task <Response <PersonalizerRankResult> > RankAsync(PersonalizerRankOptions options, CancellationToken cancellationToken = default) { using var scope = _clientDiagnostics.CreateScope("PersonalizerClient.Rank"); scope.Start(); try { return(await RankRestClient.RankAsync(options, cancellationToken).ConfigureAwait(false)); } catch (Exception e) { scope.Failed(e); throw; } }
/// <summary> Submit a Personalizer rank request. Receives a context and a list of actions. Returns which of the provided actions should be used by your application, in rewardActionId. </summary> /// <param name="options"> A Personalizer Rank request. </param> /// <param name="cancellationToken"> The cancellation token to use. </param> public virtual async Task <Response <PersonalizerRankResult> > RankAsync(PersonalizerRankOptions options, CancellationToken cancellationToken = default) { using var scope = clientDiagnostics.CreateScope("PersonalizerClient.Rank"); scope.Start(); try { if (useLocalInference) { validateAndUpdateLiveModelConfig(); return(rlNetProcessor.Value.Rank(options)); } else { return(await RankRestClient.RankAsync(options, cancellationToken).ConfigureAwait(false)); } } catch (Exception e) { scope.Failed(e); throw; } }