OpenCV 5.0.0
Open Source Computer Vision
読み込み中...
検索中...
見つかりません
🤖 AIによる機械翻訳(非公式) — これは OpenCV 5.0.0 公式リファレンス(英語)を AI (Claude) で自動翻訳したものです。訳に誤りを含む場合があります。正確な情報は 公式英語版(原文) を参照してください。

DNN 用途向けの高レベルなトークナイザラッパー。続き...

#include <opencv2/dnn/dnn.hpp>

Collaboration diagram for cv::dnn::Tokenizer:

公開メンバ関数

 Tokenizer ()
 指定したメソッド(デフォルトは BPE)でトークナイザを構築する。BPE メソッドでは、通常 Tokenizer::load() を呼び出してモデルデータを初期化する。
 
std::string decode (const std::vector< int > &tokens)
 
std::vector< int > encode (const std::string &text)
 UTF-8 テキストをトークン ID にエンコードする(特殊トークンは現在無効)。
 

静的公開メンバ関数

static Tokenizer load (CV_WRAP_FILE_PATH const std::string &model_config)
 モデルディレクトリからトークナイザを読み込む。
 

詳細説明

DNN 用途向けの高レベルなトークナイザラッパー。

LLM 向けにトークンをエンコード・デコードするシンプルな API を提供する。モデルは Tokenizer::load() で読み込む。

using namespace cv::dnn;
Tokenizer tok = Tokenizer::load("/path/to/model/");
std::vector<int> ids = tok.encode("hello world");
std::string text = tok.decode(ids);
High-level tokenizer wrapper for DNN usage.
Definition dnn.hpp:2076
std::string decode(const std::vector< int > &tokens)
static Tokenizer load(CV_WRAP_FILE_PATH const std::string &model_config)
Load a tokenizer from a model directory.
std::vector< int > encode(const std::string &text)
Encode UTF-8 text to token ids (special tokens currently disabled).
Definition all_layers.hpp:47

構築子と解体子の詳解

◆ Tokenizer()

cv::dnn::Tokenizer::Tokenizer ( )

指定したメソッド(デフォルトは BPE)でトークナイザを構築する。BPE メソッドでは、通常 Tokenizer::load() を呼び出してモデルデータを初期化する。

メンバ関数詳解

◆ decode()

std::string cv::dnn::Tokenizer::decode ( const std::vector< int > & tokens)
Python:
cv.dnn.Tokenizer.decode(tokens) -> retval

◆ encode()

std::vector< int > cv::dnn::Tokenizer::encode ( const std::string & text)
Python:
cv.dnn.Tokenizer.encode(text) -> retval

UTF-8 テキストをトークン ID にエンコードする(特殊トークンは現在無効)。

空の許可特殊トークン集合を指定して、内部の CoreBPE::encode を呼び出す。

引数
textUTF-8 の入力文字列。
戻り値
トークン ID のベクトル(利便性のため 32 ビット ID を int に縮小している)。

◆ load()

static Tokenizer cv::dnn::Tokenizer::load ( CV_WRAP_FILE_PATH const std::string & model_config)
static
Python:
cv.dnn.Tokenizer.load(model_config) -> retval
cv.dnn.Tokenizer_load(model_config) -> retval

モデルディレクトリからトークナイザを読み込む。

ディレクトリに次のものが含まれていることを想定している:

  • 値が "gpt2" または "gpt4" の model_type フィールドを持つ config.json
  • 対応するモデルファミリで生成された tokenizer.json

この引数はパスのプレフィックスである。この関数はファイル名を直接連結する(例: model_dir + "config.json")ため、model_dir は適切なパス区切り文字で終わっていなければならない。

引数
model_configモデルの config.json へのパス。
戻り値
使用可能な状態の Tokenizer。ファイルが見つからない場合や model_type がサポートされていない場合は cv::Exception をスローする。

このクラス詳解は次のファイルから抽出されました: