liugz18
2024-07-18 d80ac2fd2df4e7fb8a28acfa512bb11472b5cc99
runtime/onnxruntime/src/vocab.h
@@ -6,6 +6,7 @@
#include <string>
#include <vector>
#include <map>
#include "nlohmann/json.hpp"
using namespace std;
namespace funasr {
@@ -13,11 +14,15 @@
  private:
    vector<string> vocab;
    std::map<string, int> token_id;
    std::map<string, string> lex_map;
    bool IsEnglish(string ch);
    void LoadVocabFromYaml(const char* filename);
    void LoadVocabFromJson(const char* filename);
    void LoadLex(const char* filename);
  public:
    Vocab(const char *filename);
    Vocab(const char *filename, const char *lex_file);
    ~Vocab();
    int Size() const;
    bool IsChinese(string ch);
@@ -26,7 +31,8 @@
    string Vector2StringV2(vector<int> in, std::string language="");
    string Id2String(int id) const;
    string WordFormat(std::string word);
    int GetIdByToken(const std::string &token);
    int GetIdByToken(const std::string &token) const;
    string Word2Lex(const std::string &word) const;
};
} // namespace funasr