Esempio n. 1
0
 public string Summarize(ITextRequest Request)
 {
     if (Request.NumberOfSentences == 0 &&
         Request.StopWords == null)
     {
         return(_summarizer.Summarize(Request.Content));
     }
     else if (Request.NumberOfSentences == 0)
     {
         return(_summarizer.Summarize(Request.Content, 5, Request.StopWords));
     }
     else
     {
         return(_summarizer.Summarize(Request.Content, Request.NumberOfSentences, Request.StopWords));
     }
 }
Esempio n. 2
0
        public IEnumerable <IStemmedWord> Stem(ITextRequest Request)
        {
            var sw    = new Stopwatch();
            var stems = new List <IStemmedWord>();

            sw.Start();
            Request.Content.Split(_models.DefaultDelimiters)
            .Where(x => !_models.DefaultStopWords.Contains(x) && !string.IsNullOrEmpty(x))
            .ToList()
            .ForEach(x =>
            {
                var stemmed = _stemmer.Stem(x);
                if (!stems.Contains(stemmed))
                {
                    stems.Add(stemmed);
                }
            });
            sw.Stop();

            _logger.LogInformation($"stemming algorithm took {sw.Elapsed.TotalMilliseconds * 1000} µs (microseconds)");

            return(stems.AsEnumerable());
        }