public void Initialize()
 {
     NBFactory    = new NaiveBayesLanguageIdentifierFactory();
     RLFactory    = new RankedLanguageIdentifierFactory();
     NBIdentifier = NBFactory.Load(Path.Combine(ModelFolder, SelectedModel));
     RLIdentifier = RLFactory.Load(Path.Combine(ModelFolder, SelectedModel));
 }
示例#2
0
        private async Task MainAsync()
        {
            var credentials = JsonConvert.DeserializeObject <Credentials>(File.ReadAllText("Keys/Credentials.json"));

            if (credentials.BotToken == null)
            {
                throw new NullReferenceException("Invalid Credentials file");
            }

            var factory = new RankedLanguageIdentifierFactory();

            _identifier = factory.Load("Keys/Core14.profile.xml");

            foreach (var file in Directory.GetFiles("Dictionaries"))
            {
                FileInfo fi = new FileInfo(file);
                if (fi.Name.Split('.')[1] == "dic")
                {
                    _dictionaries.Add(fi.Name.Split('.')[0], WordList.CreateFromFiles(file));
                }
            }

            await _commands.AddModuleAsync <Communication>(null);

            Client.MessageReceived += HandleCommandAsync;

            StartTime = DateTime.Now;
            await Client.LoginAsync(TokenType.Bot, credentials.BotToken);

            await Client.StartAsync();

            await Task.Delay(-1);
        }
示例#3
0
        static LanguageDetector()
        {
            var factory          = new RankedLanguageIdentifierFactory();
            var currentDirectory = AppDomain.CurrentDomain.BaseDirectory;
            var coreProfileFile  = Path.Combine(currentDirectory, "Core14.profile.xml");

            _identifier = factory.Load(coreProfileFile);
        }
        public NoticeParserFactory()
        {
            _tedLabelDictionary = new TedLabelDictionary();

            var factory = new RankedLanguageIdentifierFactory();

            _rankedLanguageIdentifier = factory.Load("Core14.profile.xml");
        }
示例#5
0
        public static void DetectLanguage(RankedLanguageIdentifier identifier, string sequence, int index)
        {
            var languages           = identifier.Identify(sequence.ToLower());
            var mostCertainLanguage = languages.FirstOrDefault();

            if (mostCertainLanguage != null && mostCertainLanguage.Item1.Iso639_3 == "eng" && mostCertainLanguage.Item2 <= CONFIDENCE_THRESHOLD)
            {
                SaveToFile(sequence, mostCertainLanguage.Item2, index);
            }
        }
示例#6
0
        string getLanguage(string text)
        {
            if (isEnglishCharacters(text))
            {
                return("eng");
            }
            if (isJapaneseCharacters(text))
            {
                return("jpn");
            }

            if (ncIdentifier_ == null)
            {
                var file = Path.Combine(Path.GetDirectoryName(Application.ExecutablePath),
                                        @"Core14.profile.xml");
                if (!File.Exists(file))
                {
                    MessageBox.Show("Profile file of NTextCat not found.");
                    return(string.Empty);
                }
                var fac = new RankedLanguageIdentifierFactory();
                ncIdentifier_ = fac.Load(file);
            }

            var languages           = ncIdentifier_.Identify(text);
            var mostCertainLanguage = languages.FirstOrDefault();

            string lang;

            if (mostCertainLanguage == null)
            {
                lang = string.Empty;
            }
            else
            {
                lang = mostCertainLanguage.Item1.Iso639_3;
            }

            //if (string.IsNullOrEmpty(lang) ||
            //    (lang != "eng" && lang != "jpn"))
            //{
            //    if (isEnglish_obsolete(text))
            //        lang = "eng";
            //    else if (isJapanese_obsolete(text))
            //        lang = "jpn";
            //}

            return(lang);
        }
        public async Task Initialize(Configuration configuration)
        {
            this.configuration = configuration;
            minDate            = configuration.MediaMinDate;
            dateLimitReached   = false;

            var factory = new RankedLanguageIdentifierFactory();

            languageIdentifier = factory.Load(Utils.GetPath(@"packages\NTextCat.0.2.1.30\Core14.profile.xml"));

            instaApi = InstaApiBuilder.CreateBuilder()
                       .SetUser(new UserSessionData()
            {
                UserName  = configuration.InstagramUserName,
                Password  = configuration.InstagramPassword,
                CsrfToken = configuration.InstagramCsrfToken
            })
                       .SetRequestDelay(RequestDelay.FromSeconds(0, 0))
                       .Build();


            await instaApi.LoginAsync();
        }
示例#8
0
        private static string PrepareWord(RankedLanguageIdentifier identifier, string or)
        {
            var languages   = identifier.Identify(or).ToArray();
            var myLanguages = languages.Where(x => x.Item1.Iso639_3 == "eng" || x.Item1.Iso639_3 == "rus").ToArray();

            if (!myLanguages.Any())
            {
                throw new NotSupportedException();
            }

            var      max      = myLanguages.Min(x => x.Item2);
            var      lang     = myLanguages.First(x => x.Item2 == max);
            var      langCode = lang?.Item1.Iso639_3;
            IStemmer stemmer  = langCode switch
            {
                "eng" => new EnglishStemmer(),
                "rus" => new RussianStemmer(),
                _ => throw new Exception()
            };
            var stemmed = stemmer.Stem(or);

            return(stemmed);
        }
    }
示例#9
0
        public LanguageDetection()
        {
            string basepath = Path.GetDirectoryName(System.Reflection.Assembly.GetEntryAssembly().Location);

            identifier = factory.Load(basepath + "\\LanguageModels\\Core14.profile.xml");
        }
        static LanguageDetector()
        {
            var factory = new RankedLanguageIdentifierFactory();

            _identifier = factory.Load("Core14.profile.xml");
        }
 static LanguageDetector()
 {
     var factory = new RankedLanguageIdentifierFactory();
     _identifier = factory.Load("Core14.profile.xml");
 }
示例#12
0
 public LanguageDetector(INTextCatMatchingProfileLoader profileLoader, DetectedLanguageBuilder builder)
 {
     _profileLoader = profileLoader;
     _builder = builder;
     _identifier = new RankedLanguageIdentifierFactory().Load(_profileLoader.MatchingProfileFile);
 }
示例#13
0
        public LanguageIdentifier()
        {
            var stream = Assembly.GetExecutingAssembly().GetManifestResourceStream(LanguageModelProfile);

            _identifier = new RankedLanguageIdentifierFactory().Load(stream);
        }