/// <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;
     }
 }