ailia_tokenizer
1.4.0.0
|
公開メンバ関数 | |
static int | ailiaTokenizerCreate (ref IntPtr net, int type, int flags) |
トークナイズオブジェクトを作成します。 [詳解] | |
static int | ailiaTokenizerOpenModelFile (IntPtr net, string ath) |
モデルファイルを読み込みます。 [詳解] | |
static int | ailiaTokenizerOpenDictionaryFile (IntPtr net, string path) |
辞書ファイルを読み込みます。 [詳解] | |
static int | ailiaTokenizerOpenVocabFile (IntPtr net, string path) |
単語ファイルを読み込みます。 [詳解] | |
static int | ailiaTokenizerOpenMergeFile (IntPtr net, string path) |
マージファイルを読み込みます。 [詳解] | |
static int | ailiaTokenizerOpenAddedTokensFile (IntPtr net, string path) |
追加トークンファイルを読み込みます。 [詳解] | |
static int | ailiaTokenizerOpenTokenizerConfigFile (IntPtr net, string path) |
コンフィグファイルを読み込みます。 [詳解] | |
static int | ailiaTokenizerEncode (IntPtr net, IntPtr utf8) |
エンコードを行います。 [詳解] | |
static int | ailiaTokenizerEncodeWithSpecialTokens (IntPtr net, IntPtr utf8) |
スペシャルトークンを含んだエンコードを行います。 [詳解] | |
static int | ailiaTokenizerGetTokenCount (IntPtr net, ref uint count) |
トークンの数を取得します。 [詳解] | |
static int | ailiaTokenizerGetTokens (IntPtr net, IntPtr tokens, uint count) |
トークンを取得します。 [詳解] | |
static int | ailiaTokenizerGetWordIDs (IntPtr net, IntPtr tokens, uint count) |
ワードIDを取得します。 [詳解] | |
static int | ailiaTokenizerGetCharStarts (IntPtr net, IntPtr tokens, uint count) |
開始文字位置を取得します。 [詳解] | |
static int | ailiaTokenizerGetCharEnds (IntPtr net, IntPtr tokens, uint count) |
終了文字位置を取得します。 [詳解] | |
static int | ailiaTokenizerDecode (IntPtr net, IntPtr tokens, uint token_count) |
デコードを行います。 [詳解] | |
static int | ailiaTokenizerDecodeWithSpecialTokens (IntPtr net, IntPtr tokens, uint token_count) |
スペシャルトークンを含んだデコードを行います。 [詳解] | |
static int | ailiaTokenizerGetTextLength (IntPtr net, ref uint len) |
テキストの長さを取得します。(NULL文字含む) [詳解] | |
static int | ailiaTokenizerGetText (IntPtr net, IntPtr text, uint len) |
テキストを取得します。 [詳解] | |
static int | ailiaTokenizerGetVocabSize (IntPtr net, ref uint size) |
Vocabの数を取得します。 [詳解] | |
static int | ailiaTokenizerGetVocab (IntPtr net, int token, ref IntPtr vocab) |
Vocabの取得を行います。 [詳解] | |
static int | ailiaTokenizerAddSpecialTokens (IntPtr net, IntPtr tokens, uint count) |
SpecialTokenの追加を行います。 [詳解] | |
static void | ailiaTokenizerDestroy (IntPtr net) |
トークナイズオブジェクトを破棄します。 [詳解] | |
static int | ailiaTokenizerUtf8ToUtf32 (ref uint utf32, ref uint processed_byte, IntPtr utf8, uint utf8_len) |
UTF8の文字をUTF32の文字に変換します。 [詳解] | |
static int | ailiaTokenizerUtf32ToUtf8 (IntPtr utf8, ref uint processed_byte, uint utf32) |
UTF32の文字をUTF8の文字に変換します。 [詳解] | |
静的公開変数類 | |
const String | LIBRARY_NAME ="ailia_tokenizer" |
const Int32 | AILIA_TOKENIZER_TYPE_WHISPER = (0) |
const Int32 | AILIA_TOKENIZER_TYPE_CLIP = (1) |
const Int32 | AILIA_TOKENIZER_TYPE_XLM_ROBERTA = (2) |
const Int32 | AILIA_TOKENIZER_TYPE_MARIAN = (3) |
const Int32 | AILIA_TOKENIZER_TYPE_BERT_JAPANESE_WORDPIECE = (4) |
const Int32 | AILIA_TOKENIZER_TYPE_BERT_JAPANESE_CHARACTER = (5) |
const Int32 | AILIA_TOKENIZER_TYPE_T5 = (6) |
const Int32 | AILIA_TOKENIZER_TYPE_ROBERTA = (7) |
const Int32 | AILIA_TOKENIZER_TYPE_BERT = (8) |
const Int32 | AILIA_TOKENIZER_TYPE_GPT2 = (9) |
const Int32 | AILIA_TOKENIZER_TYPE_LLAMA = (10) |
const Int32 | AILIA_TOKENIZER_FLAG_NONE = (0) |
const Int32 | AILIA_TOKENIZER_FLAG_UTF8_SAFE = (1) |
static int ailiaTokenizer.AiliaTokenizer.ailiaTokenizerAddSpecialTokens | ( | IntPtr | net, |
IntPtr | tokens, | ||
uint | count | ||
) |
SpecialTokenの追加を行います。
net | トークナイザオブジェクトポインタ |
tokens | トークン(UTF8) |
count | 追加する個数 |
AILIA_TOKENIZER_TYPE_ROBERTAの場合のみ有効です。
static int ailiaTokenizer.AiliaTokenizer.ailiaTokenizerCreate | ( | ref IntPtr | net, |
int | type, | ||
int | flags | ||
) |
トークナイズオブジェクトを作成します。
net | トークナイザオブジェクトポインタへのポインタ |
type | AILIA_TOKENIZER_TYPE_* |
flag | AILIA_TOKENIZER_FLAG_*の論理和 |
トークナイズオブジェクトを作成します。
static int ailiaTokenizer.AiliaTokenizer.ailiaTokenizerDecode | ( | IntPtr | net, |
IntPtr | tokens, | ||
uint | token_count | ||
) |
デコードを行います。
net | トークナイザオブジェクトポインタ |
tokens | デコードするトークン |
token_count | トークンの数 |
認識した結果はailiaTokenizerGetText APIで取得します。
static int ailiaTokenizer.AiliaTokenizer.ailiaTokenizerDecodeWithSpecialTokens | ( | IntPtr | net, |
IntPtr | tokens, | ||
uint | token_count | ||
) |
スペシャルトークンを含んだデコードを行います。
net | トークナイザオブジェクトポインタ |
tokens | デコードするトークン |
token_count | トークンの数 |
デコードした結果はailiaTokenizerGetText APIで取得します。 skip_special_tokens=Falseと同様に、Special Tokenを出力します。
static void ailiaTokenizer.AiliaTokenizer.ailiaTokenizerDestroy | ( | IntPtr | net | ) |
トークナイズオブジェクトを破棄します。
net | トークナイザオブジェクトポインタ |
static int ailiaTokenizer.AiliaTokenizer.ailiaTokenizerEncode | ( | IntPtr | net, |
IntPtr | utf8 | ||
) |
エンコードを行います。
net | トークナイザオブジェクトポインタ |
text | エンコードするテキスト(UTF8) |
認識した結果はailiaTokenizerGetTokens APIで取得します。
static int ailiaTokenizer.AiliaTokenizer.ailiaTokenizerEncodeWithSpecialTokens | ( | IntPtr | net, |
IntPtr | utf8 | ||
) |
スペシャルトークンを含んだエンコードを行います。
net | トークナイザオブジェクトポインタ |
text | エンコードするテキスト(UTF8) |
認識した結果はailiaTokenizerGetTokens APIで取得します。 split_special_tokens=Falseと同様に、Special Tokenを出力します。
static int ailiaTokenizer.AiliaTokenizer.ailiaTokenizerGetCharEnds | ( | IntPtr | net, |
IntPtr | tokens, | ||
uint | count | ||
) |
終了文字位置を取得します。
net | トークナイザオブジェクトポインタ |
char_ends | 終了文字位置 |
count | 格納先トークン数 |
static int ailiaTokenizer.AiliaTokenizer.ailiaTokenizerGetCharStarts | ( | IntPtr | net, |
IntPtr | tokens, | ||
uint | count | ||
) |
開始文字位置を取得します。
net | トークナイザオブジェクトポインタ |
char_starts | 開始文字位置 |
count | 格納先トークン数 |
static int ailiaTokenizer.AiliaTokenizer.ailiaTokenizerGetText | ( | IntPtr | net, |
IntPtr | text, | ||
uint | len | ||
) |
テキストを取得します。
net | トークナイザオブジェクトポインタ |
text | テキスト(UTF8) |
len | バッファサイズ |
ailiaTokenizerDecode() を一度も実行していない場合は AILIA_STATUS_INVALID_STATE が返ります。
static int ailiaTokenizer.AiliaTokenizer.ailiaTokenizerGetTextLength | ( | IntPtr | net, |
ref uint | len | ||
) |
テキストの長さを取得します。(NULL文字含む)
net | トークナイザオブジェクトポインタ |
len | テキストの長さ |
static int ailiaTokenizer.AiliaTokenizer.ailiaTokenizerGetTokenCount | ( | IntPtr | net, |
ref uint | count | ||
) |
トークンの数を取得します。
net | トークナイザオブジェクトポインタ |
count | オブジェクト数 |
static int ailiaTokenizer.AiliaTokenizer.ailiaTokenizerGetTokens | ( | IntPtr | net, |
IntPtr | tokens, | ||
uint | count | ||
) |
トークンを取得します。
net | トークナイザオブジェクトポインタ |
tokens | トークン |
count | 格納先トークン数 |
static int ailiaTokenizer.AiliaTokenizer.ailiaTokenizerGetVocab | ( | IntPtr | net, |
int | token, | ||
ref IntPtr | vocab | ||
) |
Vocabの取得を行います。
net | トークナイザオブジェクトポインタ |
token | トークン |
vocab | Vocabのテキスト(UTF8) |
vocabを解放する必要はありません。 vocabの有効期間は次にailiaTokenizer APIを呼び出すまでになります。
static int ailiaTokenizer.AiliaTokenizer.ailiaTokenizerGetVocabSize | ( | IntPtr | net, |
ref uint | size | ||
) |
Vocabの数を取得します。
net | トークナイザオブジェクトポインタ |
size | Vocabの要素数 |
static int ailiaTokenizer.AiliaTokenizer.ailiaTokenizerGetWordIDs | ( | IntPtr | net, |
IntPtr | tokens, | ||
uint | count | ||
) |
ワードIDを取得します。
net | トークナイザオブジェクトポインタ |
word_ids | ワードID |
count | 格納先トークン数 |
static int ailiaTokenizer.AiliaTokenizer.ailiaTokenizerOpenAddedTokensFile | ( | IntPtr | net, |
string | path | ||
) |
追加トークンファイルを読み込みます。
net | トークナイザオブジェクトポインタへのポインタ |
path | スペシャルトークンファイルのパス |
追加トークンファイル (json) を読み込みます。AILIA_TOKENIZER_TYPE_WHISPERの場合のみ有効です。
static int ailiaTokenizer.AiliaTokenizer.ailiaTokenizerOpenDictionaryFile | ( | IntPtr | net, |
string | path | ||
) |
辞書ファイルを読み込みます。
net | トークナイザオブジェクトポインタへのポインタ |
path | Mecabの辞書ファイルのパス |
Mecabの辞書ファイルを読み込みます。AILIA_TOKENIZER_TYPE_BERT_JAPANESE_XXXの場合のみ必要です。
static int ailiaTokenizer.AiliaTokenizer.ailiaTokenizerOpenMergeFile | ( | IntPtr | net, |
string | path | ||
) |
マージファイルを読み込みます。
net | トークナイザオブジェクトポインタへのポインタ |
path | マージファイルのパス |
マージファイル (txt) を読み込みます。AILIA_TOKENIZER_TYPE_ROBERTAもしくはAILIA_TOKENIZER_TYPE_WHISPERもしくはAILIA_TOKENIZER_TYPE_GPT2の場合のみ有効です。
static int ailiaTokenizer.AiliaTokenizer.ailiaTokenizerOpenModelFile | ( | IntPtr | net, |
string | ath | ||
) |
モデルファイルを読み込みます。
net | トークナイザオブジェクトポインタへのポインタ |
path | SentencePieceのモデルファイルのパス |
SentencePieceのモデルファイルを読み込みます。AILIA_TOKENIZER_TYPE_XLM_ROBERTAもしくはAILIA_TOKENIZER_TYPE_MARIANの場合のみ必要です。
static int ailiaTokenizer.AiliaTokenizer.ailiaTokenizerOpenTokenizerConfigFile | ( | IntPtr | net, |
string | path | ||
) |
コンフィグファイルを読み込みます。
net | トークナイザオブジェクトポインタへのポインタ |
path | コンフィグファイルのパス |
トークナイザコンフィグファイル (json) を読み込みます。AILIA_TOKENIZER_TYPE_BERTの場合のみ有効です。
static int ailiaTokenizer.AiliaTokenizer.ailiaTokenizerOpenVocabFile | ( | IntPtr | net, |
string | path | ||
) |
単語ファイルを読み込みます。
net | トークナイザオブジェクトポインタへのポインタ |
path | 単語ファイルのパス |
単語ファイル (ROBERTAとWHISPERとGPT2はjson、それ以外はtxt) を読み込みます。
static int ailiaTokenizer.AiliaTokenizer.ailiaTokenizerUtf32ToUtf8 | ( | IntPtr | utf8, |
ref uint | processed_byte, | ||
uint | utf32 | ||
) |
UTF32の文字をUTF8の文字に変換します。
utf8 | UTF8の文字(4byte以上必要) |
processed_byte | 書き込んだ文字数(UTF8) |
utf32 | UTF32の文字 |
static int ailiaTokenizer.AiliaTokenizer.ailiaTokenizerUtf8ToUtf32 | ( | ref uint | utf32, |
ref uint | processed_byte, | ||
IntPtr | utf8, | ||
uint | utf8_len | ||
) |
UTF8の文字をUTF32の文字に変換します。
utf32 | UTF32の文字 |
processed_byte | 消費したバイト数(UTF8) |
utf8 | UTF8の文字 |
utf8_len | バッファサイズ |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |