分詞器

[原始碼]

Tokenizer 類別

keras_hub.tokenizers.Tokenizer()

分詞器層的基本類別。

KerasHub 庫中的分詞器都應該繼承這個層。此類別提供了兩個核心方法 tokenize()detokenize(),用於在純文字和序列之間來回轉換。分詞器是 `keras.layers.Layer` 的子類別,並且可以組合成 `keras.Model`

子類別化者應始終實作 `tokenize()` 方法,這也會是在直接對輸入調用層時的預設行為。

如果分詞是可逆的,子類別化者可以選擇性地實作 `detokenize()` 方法。否則,可以跳過此步驟。

如果適用,子類別化者應實作 `get_vocabulary()`、`vocabulary_size()`、`token_to_id()` 和 `id_to_token()`。對於某些簡單的「無詞彙表」分詞器(例如下面顯示的空白字元分割器),這些方法不適用,可以跳過。

範例

class WhitespaceSplitterTokenizer(keras_hub.tokenizers.Tokenizer):
    def tokenize(self, inputs):
        return tf.strings.split(inputs)

    def detokenize(self, inputs):
        return tf.strings.reduce_join(inputs, separator=" ", axis=-1)

tokenizer = WhitespaceSplitterTokenizer()

# Tokenize some inputs.
tokenizer.tokenize("This is a test")

# Shorthard for `tokenize()`.
tokenizer("This is a test")

# Detokenize some outputs.
tokenizer.detokenize(["This", "is", "a", "test"])

[原始碼]

from_preset 方法

Tokenizer.from_preset(preset, config_file="tokenizer.json", **kwargs)

從模型預設配置實例化 `keras_hub.models.Tokenizer`。

預設配置是一個目錄,其中包含用於儲存和載入預訓練模型的配置、權重和其他檔案資產。`preset` 可以作為以下其中一種傳遞:

  1. 內建預設配置識別符,例如 'bert_base_en'
  2. Kaggle Models handle,例如 'kaggle://user/bert/keras/bert_base_en'
  3. Hugging Face handle,例如 'hf://user/bert_base_en'
  4. 本地預設配置目錄的路徑,例如 './bert_base_en'

對於任何 Tokenizer 子類別,您可以執行 cls.presets.keys() 以列出該類別上所有可用的內建預設配置。

此建構子可以透過兩種方式調用。可以從基底類別調用,例如 `keras_hub.models.Tokenizer.from_preset()`,或者從模型類別調用,例如 `keras_hub.models.GemmaTokenizer.from_preset()`。如果從基底類別調用,則返回物件的子類別將從預設配置目錄中的配置推斷出來。

參數

  • preset: 字串。內建預設配置識別符、Kaggle Models handle、Hugging Face handle 或本地目錄的路徑。
  • load_weights: 布林值。如果為 `True`,權重將被載入到模型架構中。如果為 `False`,權重將被隨機初始化。

範例

# Load a preset tokenizer.
tokenizer = keras_hub.tokenizer.Tokenizer.from_preset("bert_base_en")

# Tokenize some input.
tokenizer("The quick brown fox tripped.")

# Detokenize some input.
tokenizer.detokenize([5, 6, 7, 8, 9])

[原始碼]

save_to_preset 方法

Tokenizer.save_to_preset(preset_dir)

將分詞器儲存到預設配置目錄。

參數

  • preset_dir: 本地模型預設配置目錄的路徑。