Transformers.js 文件
utils/generation
並獲得增強的文件體驗
開始使用
utils/generation
用於生成任務的類、函式和實用工具。
待辦
- 描述如何建立自定義
GenerationConfig。
- utils/generation
- 靜態
- .LogitsProcessorList ⇐
Callable - .LogitsProcessor ⇐
Callable - .ForceTokensLogitsProcessor ⇐
LogitsProcessor - .ForcedBOSTokenLogitsProcessor ⇐
LogitsProcessor - .ForcedEOSTokenLogitsProcessor ⇐
LogitsProcessor - .SuppressTokensAtBeginLogitsProcessor ⇐
LogitsProcessor - .WhisperTimeStampLogitsProcessor ⇐
LogitsProcessor - .NoRepeatNGramLogitsProcessor ⇐
LogitsProcessornew NoRepeatNGramLogitsProcessor(no_repeat_ngram_size).getNgrams(prevInputIds)⇒Map.<string, Array<number>>.getGeneratedNgrams(bannedNgrams, prevInputIds)⇒Array.<number>.calcBannedNgramTokens(prevInputIds)⇒Array.<number>._call(input_ids, logits)⇒Object
- .RepetitionPenaltyLogitsProcessor ⇐
LogitsProcessor - .MinLengthLogitsProcessor ⇐
LogitsProcessor - .MinNewTokensLengthLogitsProcessor ⇐
LogitsProcessor - .NoBadWordsLogitsProcessor
- .Sampler
new Sampler(generation_config)- 例項
._call(logits, index)⇒void.sample(logits, index).getLogits(logits, index)⇒Float32Array.randomSelect(probabilities)⇒number
- 靜態
.getSampler(generation_config)⇒Sampler
.GenerationConfig:*
- .LogitsProcessorList ⇐
- 內部
- ~GenerationConfig
- ~GreedySampler ⇐
Sampler.sample(logits, [index])⇒Array
- ~MultinomialSampler ⇐
Sampler.sample(logits, index)⇒Array
- ~BeamSearchSampler ⇐
Sampler.sample(logits, index)⇒Array
~GenerationConfigType:Object
- 靜態
utils/generation.LogitsProcessorList ⇐ <code> Callable </code>
一個表示 logits 處理器列表的類。logits 處理器是修改語言模型輸出 logits 的函式。該類提供了新增新處理器並將所有處理器應用於一批 logits 的方法。
型別:utils/generation 的靜態類
繼承:Callable
- .LogitsProcessorList ⇐
Callable
new LogitsProcessorList()
構造 LogitsProcessorList 的新例項。
logitsProcessorList.push(item)
向列表新增新的 logits 處理器。
型別:LogitsProcessorList 的例項方法
| 引數量 | 型別 | 描述 |
|---|---|---|
| item | LogitsProcessor | 要新增的 logits 處理器函式。 |
logitsProcessorList.extend(items)
向列表新增多個 logits 處理器。
型別:LogitsProcessorList 的例項方法
| 引數量 | 型別 | 描述 |
|---|---|---|
| items | Array.<LogitsProcessor> | 要新增的 logits 處理器函式。 |
logitsProcessorList._call(input_ids, batchedLogits)
將列表中所有的 logits 處理器應用於一批 logits,並就地修改它們。
型別:LogitsProcessorList 的例項方法
| 引數量 | 型別 | 描述 |
|---|---|---|
| input_ids | Array.<number> | 語言模型的輸入 ID。 |
| batchedLogits | Array.<Array<number>> | 一個二維 logits 陣列,其中每行對應於批處理中的單個輸入序列。 |
utils/generation.LogitsProcessor ⇐ <code> Callable </code>
logits 處理器的基類。
型別:utils/generation 的靜態類
繼承:Callable
logitsProcessor._call(input_ids, logits)
將處理器應用於輸入 logits。
型別:LogitsProcessor 的例項抽象方法
丟擲:
Error如果子類未實現 `_call`,則丟擲錯誤。
| 引數量 | 型別 | 描述 |
|---|---|---|
| input_ids | 陣列 | 輸入 ID。 |
| logits | 張量 | 要處理的 logits。 |
utils/generation.ForceTokensLogitsProcessor ⇐ <code> LogitsProcessor </code>
一個強制解碼器生成特定 token 的 logits 處理器。
型別:utils/generation 的靜態類
繼承:LogitsProcessor
- .ForceTokensLogitsProcessor ⇐
LogitsProcessor
new ForceTokensLogitsProcessor(forced_decoder_ids)
構造 ForceTokensLogitsProcessor 的新例項。
| 引數量 | 型別 | 描述 |
|---|---|---|
| forced_decoder_ids | 陣列 | 要強制生成的 token ID。 |
forceTokensLogitsProcessor._call(input_ids, logits) ⇒ <code> Tensor </code>
將處理器應用於輸入 logits。
型別:ForceTokensLogitsProcessor 的例項方法
返回:Tensor - 處理後的 logits。
| 引數量 | 型別 | 描述 |
|---|---|---|
| input_ids | 陣列 | 輸入 ID。 |
| logits | 張量 | 要處理的 logits。 |
utils/generation.ForcedBOSTokenLogitsProcessor ⇐ <code> LogitsProcessor </code>
一個 LogitsProcessor,它強制在生成的序列開頭新增 BOS token。
型別:utils/generation 的靜態類
繼承:LogitsProcessor
- .ForcedBOSTokenLogitsProcessor ⇐
LogitsProcessor
new ForcedBOSTokenLogitsProcessor(bos_token_id)
建立一個 ForcedBOSTokenLogitsProcessor。
| 引數量 | 型別 | 描述 |
|---|---|---|
| bos_token_id | 數字 | 要強制使用的序列開始 token 的 ID。 |
forcedBOSTokenLogitsProcessor._call(input_ids, logits) ⇒ <code> Object </code>
將 BOS token 強制應用於 logits。
型別:ForcedBOSTokenLogitsProcessor 的例項方法
返回:Object - 強制使用 BOS token 的 logits。
| 引數量 | 型別 | 描述 |
|---|---|---|
| input_ids | 陣列 | 輸入 ID。 |
| logits | Object | logits。 |
utils/generation.ForcedEOSTokenLogitsProcessor ⇐ <code> LogitsProcessor </code>
一個 logits 處理器,它將序列結束 token 的機率強制設定為 1。
型別:utils/generation 的靜態類
繼承:LogitsProcessor
- .ForcedEOSTokenLogitsProcessor ⇐
LogitsProcessor
new ForcedEOSTokenLogitsProcessor(max_length, forced_eos_token_id)
建立一個 ForcedEOSTokenLogitsProcessor。
| 引數量 | 型別 | 描述 |
|---|---|---|
| max_length | 數字 | 序列的最大長度。 |
| forced_eos_token_id | number | Array<number> | 要強制使用的序列結束 token 的 ID。 |
forcedEOSTokenLogitsProcessor._call(input_ids, logits)
將處理器應用於 input_ids 和 logits。
型別:ForcedEOSTokenLogitsProcessor 的例項方法
| 引數量 | 型別 | 描述 |
|---|---|---|
| input_ids | Array.<number> | 輸入 ID。 |
| logits | 張量 | logits 張量。 |
utils/generation.SuppressTokensAtBeginLogitsProcessor ⇐ <code> LogitsProcessor </code>
一個 LogitsProcessor,它在 generate 函式開始使用 begin_index 個 token 生成時立即抑制 token 列表。這應確保在生成開始時不會取樣由 begin_suppress_tokens 定義的 token。
型別:utils/generation 的靜態類
繼承:LogitsProcessor
- .SuppressTokensAtBeginLogitsProcessor ⇐
LogitsProcessor
new SuppressTokensAtBeginLogitsProcessor(begin_suppress_tokens, begin_index)
建立一個 SuppressTokensAtBeginLogitsProcessor。
| 引數量 | 型別 | 描述 |
|---|---|---|
| begin_suppress_tokens | Array.<number> | 要抑制的 token ID。 |
| begin_index | 數字 | 在抑制 token 之前要生成的 token 數量。 |
suppressTokensAtBeginLogitsProcessor._call(input_ids, logits) ⇒ <code> Object </code>
將 BOS token 強制應用於 logits。
型別:SuppressTokensAtBeginLogitsProcessor 的例項方法
返回:Object - 強制使用 BOS token 的 logits。
| 引數量 | 型別 | 描述 |
|---|---|---|
| input_ids | 陣列 | 輸入 ID。 |
| logits | Object | logits。 |
utils/generation.WhisperTimeStampLogitsProcessor ⇐ <code> LogitsProcessor </code>
一個 LogitsProcessor,用於處理向生成的文字新增時間戳。
型別:utils/generation 的靜態類
繼承:LogitsProcessor
- .WhisperTimeStampLogitsProcessor ⇐
LogitsProcessor
new WhisperTimeStampLogitsProcessor(generate_config)
構造一個新的 WhisperTimeStampLogitsProcessor。
| 引數量 | 型別 | 描述 |
|---|---|---|
| generate_config | Object | 傳遞給 transformer 模型 |
| generate_config.eos_token_id | 數字 | 序列結束 token 的 ID。 |
| generate_config.no_timestamps_token_id | 數字 | 用於指示 token 不應包含時間戳的 token ID。 |
| [generate_config.forced_decoder_ids] | Array.<Array<number>> | 一個由兩個元素組成的陣列,表示強制出現在輸出中的解碼器 ID。每個陣列的第二個元素指示該 token 是否為時間戳。 |
| [generate_config.max_initial_timestamp_index] | 數字 | 初始時間戳可以出現的最大索引。 |
whisperTimeStampLogitsProcessor._call(input_ids, logits) ⇒ <code> Tensor </code>
修改 logits 以處理時間戳 token。
型別:WhisperTimeStampLogitsProcessor 的例項方法
返回:Tensor - 修改後的 logits。
| 引數量 | 型別 | 描述 |
|---|---|---|
| input_ids | 陣列 | 輸入 token 序列。 |
| logits | 張量 | 模型輸出的 logits。 |
utils/generation.NoRepeatNGramLogitsProcessor ⇐ <code> LogitsProcessor </code>
一個 logits 處理器,它不允許重複一定大小的 n-gram。
型別:utils/generation 的靜態類
繼承:LogitsProcessor
- .NoRepeatNGramLogitsProcessor ⇐
LogitsProcessornew NoRepeatNGramLogitsProcessor(no_repeat_ngram_size).getNgrams(prevInputIds)⇒Map.<string, Array<number>>.getGeneratedNgrams(bannedNgrams, prevInputIds)⇒Array.<number>.calcBannedNgramTokens(prevInputIds)⇒Array.<number>._call(input_ids, logits)⇒Object
new NoRepeatNGramLogitsProcessor(no_repeat_ngram_size)
建立一個 NoRepeatNGramLogitsProcessor。
| 引數量 | 型別 | 描述 |
|---|---|---|
| no_repeat_ngram_size | 數字 | 不重複 n-gram 的大小。所有此大小的 n-gram 只能出現一次。 |
noRepeatNGramLogitsProcessor.getNgrams(prevInputIds) ⇒ <code> Map. < string, Array < number > > </code>
從 token ID 序列生成 n-gram。
型別:NoRepeatNGramLogitsProcessor 的例項方法
返回:Map.<string, Array<number>> - 生成的 n-gram 的對映
| 引數量 | 型別 | 描述 |
|---|---|---|
| prevInputIds | Array.<number> | 上一個輸入 ID 列表 |
noRepeatNGramLogitsProcessor.getGeneratedNgrams(bannedNgrams, prevInputIds) ⇒ <code> Array. < number > </code>
從 token ID 序列生成 n-gram。
型別:NoRepeatNGramLogitsProcessor 的例項方法
返回:Array.<number> - 生成的 n-gram 的對映
| 引數量 | 型別 | 描述 |
|---|---|---|
| bannedNgrams | Map.<string, Array<number>> | 停用 n-gram 的對映 |
| prevInputIds | Array.<number> | 上一個輸入 ID 列表 |
noRepeatNGramLogitsProcessor.calcBannedNgramTokens(prevInputIds) ⇒ <code> Array. < number > </code>
計算禁止的 n-gram token
型別:NoRepeatNGramLogitsProcessor 的例項方法
返回:Array.<number> - 生成的 n-gram 的對映
| 引數量 | 型別 | 描述 |
|---|---|---|
| prevInputIds | Array.<number> | 上一個輸入 ID 列表 |
noRepeatNGramLogitsProcessor._call(input_ids, logits) ⇒ <code> Object </code>
將不重複 n-gram 處理器應用於 logits。
型別:NoRepeatNGramLogitsProcessor 的例項方法
返回:Object - 經過不重複 n-gram 處理的 logits。
| 引數量 | 型別 | 描述 |
|---|---|---|
| input_ids | 陣列 | 輸入 ID。 |
| logits | Object | logits。 |
utils/generation.RepetitionPenaltyLogitsProcessor ⇐ <code> LogitsProcessor </code>
一個對重複輸出 token 進行懲罰的 logits 處理器。
型別:utils/generation 的靜態類
繼承:LogitsProcessor
- .RepetitionPenaltyLogitsProcessor ⇐
LogitsProcessor
new RepetitionPenaltyLogitsProcessor(penalty)
建立一個 RepetitionPenaltyLogitsProcessor。
| 引數量 | 型別 | 描述 |
|---|---|---|
| penalty | 數字 | 對重複 token 應用的懲罰。 |
repetitionPenaltyLogitsProcessor._call(input_ids, logits) ⇒ <code> Object </code>
將重複懲罰應用於 logits。
型別:RepetitionPenaltyLogitsProcessor 的例項方法
返回:Object - 經過重複懲罰處理的 logits。
| 引數量 | 型別 | 描述 |
|---|---|---|
| input_ids | 陣列 | 輸入 ID。 |
| logits | Object | logits。 |
utils/generation.MinLengthLogitsProcessor ⇐ <code> LogitsProcessor </code>
一個強制最小 token 數量的 logits 處理器。
型別:utils/generation 的靜態類
繼承:LogitsProcessor
- .MinLengthLogitsProcessor ⇐
LogitsProcessor
new MinLengthLogitsProcessor(min_length, eos_token_id)
建立一個 MinLengthLogitsProcessor。
| 引數量 | 型別 | 描述 |
|---|---|---|
| min_length | 數字 | 當長度低於此值時, |
| eos_token_id | number | Array<number> | 序列結束 token 的 ID。 |
minLengthLogitsProcessor._call(input_ids, logits) ⇒ <code> Object </code>
應用 logits 處理器。
型別:MinLengthLogitsProcessor 的例項方法
返回:Object - 處理後的 logits。
| 引數量 | 型別 | 描述 |
|---|---|---|
| input_ids | 陣列 | 輸入 ID。 |
| logits | Object | logits。 |
utils/generation.MinNewTokensLengthLogitsProcessor ⇐ <code> LogitsProcessor </code>
一個強制最小新 token 數量的 logits 處理器。
型別:utils/generation 的靜態類
繼承:LogitsProcessor
- .MinNewTokensLengthLogitsProcessor ⇐
LogitsProcessor
new MinNewTokensLengthLogitsProcessor(prompt_length_to_skip, min_new_tokens, eos_token_id)
建立一個 MinNewTokensLengthLogitsProcessor。
| 引數量 | 型別 | 描述 |
|---|---|---|
| prompt_length_to_skip | 數字 | 輸入 token 長度。 |
| min_new_tokens | 數字 | 當新 token 長度低於此值時, |
| eos_token_id | number | Array<number> | 序列結束 token 的 ID。 |
minNewTokensLengthLogitsProcessor._call(input_ids, logits) ⇒ <code> Object </code>
應用 logits 處理器。
型別:MinNewTokensLengthLogitsProcessor 的例項方法
返回:Object - 處理後的 logits。
| 引數量 | 型別 | 描述 |
|---|---|---|
| input_ids | 陣列 | 輸入 ID。 |
| logits | Object | logits。 |
utils/generation.NoBadWordsLogitsProcessor
型別:utils/generation 的靜態類
new NoBadWordsLogitsProcessor(bad_words_ids, eos_token_id)
建立一個 NoBadWordsLogitsProcessor。
| 引數量 | 型別 | 描述 |
|---|---|---|
| bad_words_ids | Array.<Array<number>> | 不允許生成的 token ID 列表的列表。 |
| eos_token_id | number | Array<number> | “序列結束”標記的 ID。可選地,使用列表來設定多個“序列結束”標記。 |
noBadWordsLogitsProcessor._call(input_ids, logits) ⇒ <code> Object </code>
應用 logits 處理器。
型別:NoBadWordsLogitsProcessor 的例項方法
返回:Object - 處理後的 logits。
| 引數量 | 型別 | 描述 |
|---|---|---|
| input_ids | 陣列 | 輸入 ID。 |
| logits | Object | logits。 |
utils/generation.Sampler
Sampler 是所有用於文字生成的取樣方法的基類。
型別:utils/generation 的靜態類
- .Sampler
new Sampler(generation_config)- 例項
._call(logits, index)⇒void.sample(logits, index).getLogits(logits, index)⇒Float32Array.randomSelect(probabilities)⇒number
- 靜態
.getSampler(generation_config)⇒Sampler
new Sampler(generation_config)
建立具有指定生成配置的新 Sampler 物件。
| 引數量 | 型別 | 描述 |
|---|---|---|
| generation_config | GenerationConfigType | 生成配置。 |
sampler._call(logits, index) ⇒ <code> void </code>
執行取樣器,使用指定的 logits。
型別:Sampler 的例項方法
| 引數量 | 型別 |
|---|---|
| logits | 張量 |
| 索引 | 數字 |
sampler.sample(logits, index)
用於取樣 logits 的抽象方法。
型別:Sampler 的例項方法
丟擲:
錯誤
| 引數量 | 型別 |
|---|---|
| logits | 張量 |
| 索引 | 數字 |
sampler.getLogits(logits, index) ⇒ <code> Float32Array </code>
將指定的 logits 作為陣列返回,並應用了溫度。
型別:Sampler 的例項方法
| 引數量 | 型別 |
|---|---|
| logits | 張量 |
| 索引 | 數字 |
sampler.randomSelect(probabilities) ⇒ <code> number </code>
根據指定的機率隨機選擇一個專案。
型別:Sampler 的例項方法
返回:number - 所選專案的索引。
| 引數量 | 型別 | 描述 |
|---|---|---|
| probabilities | 陣列 | 用於選擇的機率陣列。 |
Sampler.getSampler(generation_config) ⇒ <code> Sampler </code>
根據指定選項返回一個 Sampler 物件。
型別:Sampler 的靜態方法Sampler
返回:Sampler - 一個 Sampler 物件。
| 引數量 | 型別 | 描述 |
|---|---|---|
| generation_config | GenerationConfigType | 包含取樣器選項的物件。 |
utils/generation.GenerationConfig : <code> * </code>
儲存生成任務配置的類。
型別:utils/generation 的靜態常量utils/generation
utils/generation~GenerationConfig
型別:utils/generation 的內部類utils/generation
new GenerationConfig(kwargs)
建立一個新的 GenerationConfig 物件。
| 引數量 | 型別 |
|---|---|
| kwargs | GenerationConfigType |
utils/generation~GreedySampler ⇐ <code> Sampler </code>
表示貪婪取樣器的類。
型別:utils/generation 的內部類utils/generation
繼承:Sampler
greedySampler.sample(logits, [index]) ⇒ <code> Array </code>
對給定 logits 張量的最大機率進行取樣。
型別:GreedySampler 的例項方法GreedySampler
返回:Array - 包含一個元組的陣列,該元組包含最大值的索引和無意義的分數(因為這是貪婪搜尋)。
| 引數量 | 型別 | 預設 |
|---|---|---|
| logits | 張量 | |
| [index] | 數字 | -1 |
utils/generation~MultinomialSampler ⇐ <code> Sampler </code>
表示多項式取樣器的類。
型別:utils/generation 的內部類utils/generation
繼承:Sampler
multinomialSampler.sample(logits, index) ⇒ <code> Array </code>
從 logits 中取樣。
型別:MultinomialSampler 的例項方法MultinomialSampler
| 引數量 | 型別 |
|---|---|
| logits | 張量 |
| 索引 | 數字 |
utils/generation~BeamSearchSampler ⇐ <code> Sampler </code>
表示 BeamSearchSampler 的類。
型別:utils/generation 的內部類utils/generation
繼承:Sampler
beamSearchSampler.sample(logits, index) ⇒ <code> Array </code>
從 logits 中取樣。
型別:BeamSearchSampler 的例項方法BeamSearchSampler
| 引數量 | 型別 |
|---|---|
| logits | 張量 |
| 索引 | 數字 |
utils/generation~GenerationConfigType : <code> Object </code>
預設配置引數。
型別:utils/generation 的內部型別定義utils/generation
屬性
| 名稱 | 型別 | 預設 | 描述 |
|---|---|---|---|
| [max_length] | 數字 | 20 | 生成的令牌可以具有的最大長度。對應於輸入提示的長度 + |
| [max_new_tokens] | 數字 | | 要生成的最大令牌數,忽略提示中的令牌數。 |
| [min_length] | 數字 | 0 | 要生成的序列的最小長度。對應於輸入提示的長度 + |
| [min_new_tokens] | 數字 | | 要生成的最小令牌數,忽略提示中的令牌數。 |
| [early_stopping] | boolean | "never" | false | 控制基於束的方法(如束搜尋)的停止條件。它接受以下值
|
| [max_time] | 數字 | | 允許計算執行的最大時間(秒)。生成將在分配時間過後完成當前輪次。 |
| [do_sample] | boolean | false | 是否使用取樣;否則使用貪婪解碼。 |
| [num_beams] | 數字 | 1 | 束搜尋的束數。1 表示沒有束搜尋。 |
| [num_beam_groups] | 數字 | 1 | 將 |
| [penalty_alpha] | 數字 | | 這些值平衡了模型置信度和對比搜尋解碼中的退化懲罰。 |
| [use_cache] | boolean | true | 模型是否應使用過去的最後鍵/值注意力(如果適用於模型)以加快解碼速度。 |
| [temperature] | 數字 | 1.0 | 用於調節下一個 token 機率的值。 |
| [top_k] | 數字 | 50 | 保留用於 top-k 過濾的最高機率詞彙 token 數量。 |
| [top_p] | 數字 | 1.0 | 如果設定為小於 1 的浮點數,則僅保留機率總和達到 |
| [typical_p] | 數字 | 1.0 | 區域性典型性衡量預測下一個目標令牌的條件機率與預測下一個隨機令牌的預期條件機率的相似程度,給定已生成的文字片段。如果設定為小於 1 的浮點數,則保留區域性典型性最高且機率總和達到 |
| [epsilon_cutoff] | 數字 | 0.0 | 如果設定為嚴格介於 0 和 1 之間的浮點數,則只採樣條件機率大於 |
| [eta_cutoff] | 數字 | 0.0 | Eta 取樣是區域性典型性取樣和 epsilon 取樣的混合。如果設定為嚴格介於 0 和 1 之間的浮點數,只有當令牌大於 |
| [diversity_penalty] | 數字 | 0.0 | 如果一個束在某個特定時間生成的令牌與來自其他組的任何束相同,則從該束的分數中減去此值。請注意, |
| [repetition_penalty] | 數字 | 1.0 | 重複懲罰的引數。1.0 表示沒有懲罰。有關更多詳細資訊,請參閱本文。 |
| [encoder_repetition_penalty] | 數字 | 1.0 | encoder_repetition_penalty 的引數。對原始輸入中不存在的序列施加指數懲罰。1.0 表示沒有懲罰。 |
| [length_penalty] | 數字 | 1.0 | 對基於束的生成中使用的長度施加指數懲罰。它作為序列長度的指數應用,然後用於除以序列的分數。由於分數是序列的對數似然(即負數), |
| [no_repeat_ngram_size] | 數字 | 0 | 如果設定為大於 0 的整數,則該大小的所有 ngrams 只能出現一次。 |
| [bad_words_ids] | Array.<Array<number>> | | 不允許生成的令牌 ID 列表。要獲取不應出現在生成文字中的單詞的令牌 ID,請使用 |
| [force_words_ids] | Array<Array<number>> | Array<Array<Array<number>>> | | 必須生成的令牌 ID 列表。如果給定 |
| [renormalize_logits] | boolean | false | 在應用所有 logits 處理器或扭曲器(包括自定義的)之後是否重新歸一化 logits。強烈建議將此標誌設定為 |
| [constraints] | Array.<Object> | | 可以新增到生成中的自定義約束,以確保輸出將以最合理的方式包含由 |
| [forced_bos_token_id] | 數字 | | 在 |
| [forced_eos_token_id] | number | Array<number> | | 當達到 |
| [remove_invalid_values] | boolean | false | 是否刪除模型可能產生的*NaN*和*inf*輸出,以防止生成方法崩潰。請注意,使用 |
| [exponential_decay_length_penalty] | Array.<number> | | 此元組在生成一定數量的令牌後新增一個指數增長的長度懲罰。該元組應包含: |
| [suppress_tokens] | Array.<number> | | 在生成時將被抑制的令牌列表。 |
| [begin_suppress_tokens] | Array.<number> | | 在生成開始時將被抑制的令牌列表。 |
| [forced_decoder_ids] | Array.<Array<number>> | | 整數對的列表,表示在取樣之前將被強制的生成索引到令牌索引的對映。例如, |
| [num_return_sequences] | 數字 | 1 | 批處理中每個元素獨立計算的返回序列數。 |
| [output_attentions] | boolean | false | 是否返回所有注意力層的注意力張量。有關更多詳細資訊,請參閱返回張量下的 |
| [output_hidden_states] | boolean | false | 是否返回所有層的隱藏狀態。有關更多詳細資訊,請參閱返回張量下的 |
| [output_scores] | boolean | false | 是否返回預測分數。有關更多詳細資訊,請參閱返回張量下的 |
| [return_dict_in_generate] | boolean | false | 是否返回 |
| [pad_token_id] | 數字 | | *填充*令牌的 ID。 |
| [bos_token_id] | 數字 | | *序列開始*令牌的 ID。 |
| [eos_token_id] | number | Array<number> | | “序列結束”標記的 ID。可選地,使用列表來設定多個“序列結束”標記。 |
| [encoder_no_repeat_ngram_size] | 數字 | 0 | 如果設定為大於 0 的整數,則 |
| [decoder_start_token_id] | 數字 | | 如果編碼器-解碼器模型使用與*bos*不同的令牌開始解碼,則該令牌的 ID。 |
| [generation_kwargs] | Object | {} | 額外的生成 kwargs 將轉發到模型的 |
< > 在 GitHub 上更新