#ifndef TOKEN_H #define TOKEN_H #include #include #include class Tokenizer { public: std::map wordToId; std::map idToWord; Tokenizer() { add(""); add("[SYS]"); add("[USER]"); add("[AI]"); add(" "); add("\n"); add("."); add(","); add("!"); add("?"); add(":"); add(";"); add("-"); add("\""); add("("); add(")"); add("а"); add("б"); add("в"); add("г"); add("д"); add("е"); add("ё"); add("ж"); add("з"); add("и"); add("й"); add("к"); add("л"); add("м"); add("н"); add("о"); add("п"); add("р"); add("с"); add("т"); add("у"); add("ф"); add("х"); add("ц"); add("ч"); add("ш"); add("щ"); add("ъ"); add("ы"); add("ь"); add("э"); add("ю"); add("я"); add("и"); add("в"); add("не"); add("на"); add("я"); add("что"); add("тот"); add("быть"); add("с"); add("а"); add("весь"); add("это"); add("как"); add("она"); add("по"); add("но"); add("они"); add("к"); add("у"); add("ты"); add("из"); add("мы"); add("за"); add("вы"); add("привет"); add("дела"); add("робот"); add("хорошо"); add("спасибо"); add("да"); add("нет"); add("могу"); add("помочь"); add("знаю"); add("кто"); add("где"); add("когда"); add("почему"); add("хочу"); add("очень"); add("тебя"); add("зовут"); add("BiPy"); } void add(std::string word); int getID(std::string word); std::string getWord(int id); std::vector textToTokens(const std::string& text); }; class Embedder { public: std::vector> matrix; Embedder(int vSize, int dim); std::vector get(int id); }; #endif