Transformers.js 文件
generation/configuration_utils
並獲得增強的文件體驗
開始使用
generation/configuration_utils
- generation/configuration_utils
- .GenerationConfig
new GenerationConfig(config)
.max_length
:number
.max_new_tokens
:number
.min_length
:number
.min_new_tokens
:number
.early_stopping
:boolean
|”never”
.max_time
:number
.do_sample
:boolean
.num_beams
:number
.num_beam_groups
:number
.penalty_alpha
:number
.use_cache
:boolean
.temperature
:number
.top_k
:number
.top_p
:number
.typical_p
:number
.epsilon_cutoff
:number
.eta_cutoff
:number
.diversity_penalty
:number
.repetition_penalty
:number
.encoder_repetition_penalty
:number
.length_penalty
:number
.no_repeat_ngram_size
:number
.bad_words_ids
:Array.<Array<number>>
.force_words_ids
:Array<Array<number>>
|Array<Array<Array<number>>>
.renormalize_logits
:boolean
.constraints
:Array.<Object>
.forced_bos_token_id
:number
.forced_eos_token_id
:number
|Array<number>
.remove_invalid_values
:boolean
.exponential_decay_length_penalty
:*
.suppress_tokens
:Array.<number>
.streamer
:*
.begin_suppress_tokens
:Array.<number>
.forced_decoder_ids
:*
.guidance_scale
:number
.num_return_sequences
:number
.output_attentions
:boolean
.output_hidden_states
:boolean
.output_scores
:boolean
.return_dict_in_generate
:boolean
.pad_token_id
:number
.bos_token_id
:number
.eos_token_id
:number
|Array<number>
.encoder_no_repeat_ngram_size
:number
.decoder_start_token_id
:number
.generation_kwargs
:Object
- .GenerationConfig
generation/configuration_utils.GenerationConfig
儲存生成任務配置的類。
型別:generation/configuration_utils
的靜態類
- .GenerationConfig
new GenerationConfig(config)
.max_length
:number
.max_new_tokens
:number
.min_length
:number
.min_new_tokens
:number
.early_stopping
:boolean
|”never”
.max_time
:number
.do_sample
:boolean
.num_beams
:number
.num_beam_groups
:number
.penalty_alpha
:number
.use_cache
:boolean
.temperature
:number
.top_k
:number
.top_p
:number
.typical_p
:number
.epsilon_cutoff
:number
.eta_cutoff
:number
.diversity_penalty
:number
.repetition_penalty
:number
.encoder_repetition_penalty
:number
.length_penalty
:number
.no_repeat_ngram_size
:number
.bad_words_ids
:Array.<Array<number>>
.force_words_ids
:Array<Array<number>>
|Array<Array<Array<number>>>
.renormalize_logits
:boolean
.constraints
:Array.<Object>
.forced_bos_token_id
:number
.forced_eos_token_id
:number
|Array<number>
.remove_invalid_values
:boolean
.exponential_decay_length_penalty
:*
.suppress_tokens
:Array.<number>
.streamer
:*
.begin_suppress_tokens
:Array.<number>
.forced_decoder_ids
:*
.guidance_scale
:number
.num_return_sequences
:number
.output_attentions
:boolean
.output_hidden_states
:boolean
.output_scores
:boolean
.return_dict_in_generate
:boolean
.pad_token_id
:number
.bos_token_id
:number
.eos_token_id
:number
|Array<number>
.encoder_no_repeat_ngram_size
:number
.decoder_start_token_id
:number
.generation_kwargs
:Object
new GenerationConfig(config)
引數量 | 型別 |
---|---|
config | * |
generationConfig.max_length : <code> number </code>
生成的 token 的最大長度。對應於輸入提示的長度 + max_new_tokens
。如果同時設定了 max_new_tokens
,則此設定的效果會被覆蓋。
型別:GenerationConfig
的例項屬性
預設值:20
generationConfig.max_new_tokens : <code> number </code>
要生成的最大 token 數量,忽略提示中的 token 數量。
型別:GenerationConfig
的例項屬性
預設值:null
generationConfig.min_length : <code> number </code>
要生成的序列的最小長度。對應於輸入提示的長度 + min_new_tokens
。如果同時設定了 min_new_tokens
,則此設定的效果會被覆蓋。
型別:GenerationConfig
的例項屬性
預設值:0
generationConfig.min_new_tokens : <code> number </code>
要生成的最小 token 數量,忽略提示中的 token 數量。
型別:GenerationConfig
的例項屬性
預設值:null
generationConfig.early_stopping : <code> boolean </code> | <code> ” never ” </code>
控制基於束的方法(如束搜尋)的停止條件。它接受以下值:
true
,一旦有num_beams
個完整候選,生成就會停止;false
,應用啟發式方法,當找到更好候選的可能性極低時,生成停止;"never"
,束搜尋過程僅在無法找到更好候選時停止(規範束搜尋演算法)。
型別:GenerationConfig
的例項屬性
預設值:false
generationConfig.max_time : <code> number </code>
允許計算執行的最大時間(秒)。分配時間結束後,生成仍將完成當前傳遞。
型別:GenerationConfig
的例項屬性
預設值:null
generationConfig.do_sample : <code> boolean </code>
是否使用取樣;否則使用貪婪解碼。
型別:GenerationConfig
的例項屬性
預設值:false
generationConfig.num_beams : <code> number </code>
束搜尋的束數量。1 表示沒有束搜尋。
型別:GenerationConfig
的例項屬性
預設值:1
generationConfig.num_beam_groups : <code> number </code>
將 num_beams
分成組的數量,以確保不同束組之間的多樣性。更多詳細資訊請參閱這篇論文。
型別:GenerationConfig
的例項屬性
預設值:1
generationConfig.penalty_alpha : <code> number </code>
這些值平衡了模型置信度和對比搜尋解碼中的退化懲罰。
型別:GenerationConfig
的例項屬性
預設值:null
generationConfig.use_cache : <code> boolean </code>
模型是否應使用過去的鍵/值注意力(如果適用於模型)來加快解碼速度。
型別:GenerationConfig
的例項屬性
預設值:true
generationConfig.temperature : <code> number </code>
用於調節下一個 token 機率的值。
型別:GenerationConfig
的例項屬性
預設值:1.0
generationConfig.top_k : <code> number </code>
保留用於 top-k 過濾的最高機率詞彙 token 數量。
型別:GenerationConfig
的例項屬性
預設值:50
generationConfig.top_p : <code> number </code>
如果設定為小於 1 的浮點數,則僅保留機率總和等於或大於 top_p
的最小機率最高的 token 集合用於生成。
型別:GenerationConfig
的例項屬性
預設值:1.0
generationConfig.typical_p : <code> number </code>
區域性典型性衡量預測下一個目標 token 的條件機率與給定已生成部分文字的預測下一個隨機 token 的預期條件機率之間的相似程度。如果設定為小於 1 的浮點數,則保留機率總和等於或大於 typical_p
的最小區域性典型 token 集合用於生成。更多詳細資訊請參閱這篇論文。
型別:GenerationConfig
的例項屬性
預設值:1.0
generationConfig.epsilon_cutoff : <code> number </code>
如果設定為嚴格介於 0 和 1 之間的浮點數,則僅對條件機率大於 epsilon_cutoff
的 token 進行取樣。在論文中,建議值為 3e-4 到 9e-4,具體取決於模型的大小。更多詳細資訊請參閱《截斷取樣作為語言模型去平滑》。
型別:GenerationConfig
的例項屬性
預設值:0.0
generationConfig.eta_cutoff : <code> number </code>
Eta 取樣是區域性典型取樣和 epsilon 取樣的混合。如果設定為嚴格介於 0 和 1 之間的浮點數,則僅當 token 大於 eta_cutoff
或 sqrt(eta_cutoff) * exp(-entropy(softmax(next_token_logits)))
時才考慮該 token。後一個術語直觀地說是預期的下一個 token 機率,由 sqrt(eta_cutoff)
縮放。在論文中,建議值為 3e-4 到 2e-3,具體取決於模型的大小。更多詳細資訊請參閱《截斷取樣作為語言模型去平滑》。
型別:GenerationConfig
的例項屬性
預設值:0.0
generationConfig.diversity_penalty : <code> number </code>
如果生成的 token 與其他組的任何束相同,則從束的分數中減去此值。請注意,diversity_penalty
僅在啟用 group beam search
時有效。
型別:GenerationConfig
的例項屬性
預設值:0.0
generationConfig.repetition_penalty : <code> number </code>
重複懲罰的引數。1.0 表示沒有懲罰。更多詳細資訊請參閱這篇論文。
型別:GenerationConfig
的例項屬性
預設值:1.0
generationConfig.encoder_repetition_penalty : <code> number </code>
encoder_repetition_penalty 的引數。對不在原始輸入中的序列進行指數懲罰。1.0 表示沒有懲罰。
型別:GenerationConfig
的例項屬性
預設值:1.0
generationConfig.length_penalty : <code> number </code>
用於基於束的生成中對長度的指數懲罰。它以序列長度的指數形式應用,然後用於除以序列的分數。由於分數為序列的對數似然(即負值),因此 length_penalty
> 0.0 促進更長的序列,而 length_penalty
< 0.0 鼓勵更短的序列。
型別:GenerationConfig
的例項屬性
預設值:1.0
generationConfig.no_repeat_ngram_size : <code> number </code>
如果設定為大於 0 的整數,則該大小的所有 n-gram 只能出現一次。
型別:GenerationConfig
的例項屬性
預設值:0
generationConfig.bad_words_ids : <code> Array. < Array < number > > </code>
不允許生成的 token ID 列表。要獲取不應出現在生成文字中的詞語的 token ID,請使用 tokenizer(bad_words, { add_prefix_space: true, add_special_tokens: false }).input_ids
。
型別:GenerationConfig
的例項屬性
預設值:null
generationConfig.force_words_ids : <code> Array < Array < number > > </code> | <code> Array < Array < Array < number > > > </code>
必須生成的 token ID 列表。如果給定 number[][]
,則將其視為必須包含的簡單詞語列表,與 bad_words_ids
相反。如果給定 number[][][]
,則會觸發不連貫約束,允許每個詞語的不同形式。
型別:GenerationConfig
的例項屬性
預設值:null
generationConfig.renormalize_logits : <code> boolean </code>
是否在應用所有 logits 處理器或 warp 器(包括自定義的)之後重新規範化 logits。強烈建議將此標誌設定為 true
,因為搜尋演算法假設分數 logits 已規範化,但某些 logits 處理器或 warp 器會破壞規範化。
型別:GenerationConfig
的例項屬性
預設值:false
generationConfig.constraints : <code> Array. < Object > </code>
可新增到生成中的自定義約束,以儘可能合理地確保輸出包含由 Constraint
物件定義的某些 token。
型別:GenerationConfig
的例項屬性
預設值:null
generationConfig.forced_bos_token_id : <code> number </code>
在 decoder_start_token_id
之後強制作為第一個生成 token 的 token ID。對於像 mBART 這樣的多語言模型很有用,因為第一個生成的 token 需要是目標語言 token。
型別:GenerationConfig
的例項屬性
預設值:null
generationConfig.forced_eos_token_id : <code> number </code> | <code> Array < number > </code>
當達到 max_length
時強制作為最後一個生成 token 的 token ID。可選地,使用列表設定多個*序列結束* token。
型別:GenerationConfig
的例項屬性
預設值:null
generationConfig.remove_invalid_values : <code> boolean </code>
是否移除模型中可能的*nan*和*inf*輸出,以防止生成方法崩潰。請注意,使用 remove_invalid_values
可能會減慢生成速度。
型別:GenerationConfig
的例項屬性
generationConfig.exponential_decay_length_penalty : <code> * </code>
此元組在生成一定數量的 token 後新增指數級增長的長度懲罰。元組應包含:(start_index, decay_factor)
,其中 start_index
表示懲罰開始的位置,decay_factor
表示指數衰減的因子。
型別:GenerationConfig
的例項屬性
預設值:null
generationConfig.suppress_tokens : <code> Array. < number > </code>
生成時將被抑制的 token 列表。SuppressTokens
logits 處理器會將其 log 機率設定為 -inf
,以便不對其進行取樣。
型別:GenerationConfig
的例項屬性
預設值:null
generationConfig.streamer : <code> * </code>
將用於流式生成資料的 Streamer。
型別:GenerationConfig
的例項屬性
預設值:null
generationConfig.begin_suppress_tokens : <code> Array. < number > </code>
生成開始時將被抑制的 token 列表。SuppressBeginTokens
logits 處理器會將其 log 機率設定為 -inf
,以便不對其進行取樣。
型別:GenerationConfig
的例項屬性
預設值:null
generationConfig.forced_decoder_ids : <code> * </code>
一個整數對列表,表示從生成索引到在取樣之前將被強制使用的 token 索引的對映。例如,[[1, 123]]
表示第二個生成的 token 將始終是索引為 123 的 token。
型別:GenerationConfig
的例項屬性
預設值:null
generationConfig.guidance_scale : <code> number </code>
無分類器引導(CFG)的引導比例。透過設定 guidance_scale > 1
啟用 CFG。更高的引導比例會鼓勵模型生成與輸入提示更緊密相關的樣本,通常以犧牲質量為代價。
型別:GenerationConfig
的例項屬性
預設值:null
generationConfig.num_return_sequences : <code> number </code>
批次中每個元素獨立計算的返回序列數。
型別:GenerationConfig
的例項屬性
預設值:1
generationConfig.output_attentions : <code> boolean </code>
是否返回所有注意力層的注意力張量。更多詳細資訊請參閱返回張量下的 attentions
。
型別:GenerationConfig
的例項屬性
預設值:false
generationConfig.output_hidden_states : <code> boolean </code>
是否返回所有層的隱藏狀態。更多詳細資訊請參閱返回張量下的 hidden_states
。
型別:GenerationConfig
的例項屬性
預設值:false
generationConfig.output_scores : <code> boolean </code>
是否返回預測分數。更多詳細資訊請參閱返回張量下的 scores
。
型別:GenerationConfig
的例項屬性
預設值:false
generationConfig.return_dict_in_generate : <code> boolean </code>
是否返回 ModelOutput
而不是普通的元組。
型別:GenerationConfig
的例項屬性
預設值:false
generationConfig.pad_token_id : <code> number </code>
*填充* token 的 ID。
型別:GenerationConfig
的例項屬性
預設值:null
generationConfig.bos_token_id : <code> number </code>
*序列開始* token 的 ID。
型別:GenerationConfig
的例項屬性
預設值:null
generationConfig.eos_token_id : <code> number </code> | <code> Array < number > </code>
“序列結束”標記的 ID。可選地,使用列表來設定多個“序列結束”標記。
型別:GenerationConfig
的例項屬性
預設值:null
generationConfig.encoder_no_repeat_ngram_size : <code> number </code>
如果設定為大於 0 的整數,則在 encoder_input_ids
中出現的所有該大小的 n-gram 都不能在 decoder_input_ids
中出現。
型別:GenerationConfig
的例項屬性
預設值:0
generationConfig.decoder_start_token_id : <code> number </code>
如果編碼器-解碼器模型以與*bos*不同的 token 開始解碼,則該 token 的 ID。
型別:GenerationConfig
的例項屬性
預設值:null
generationConfig.generation_kwargs : Object
額外的生成 kwargs 將轉發到模型的 generate
函式。不在 generate
簽名中的 kwargs 將在模型前向傳遞中使用。
型別:GenerationConfig
的例項屬性
預設: {}
< > 在 GitHub 上更新