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
用于保存生成任务配置的类。
Kind: 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 : number
生成 token 可以具有的最大长度。对应于输入提示的长度 + max_new_tokens
。如果也设置了 max_new_tokens
,则其效果将被覆盖。
Kind: GenerationConfig
的实例属性
Default: 20
generationConfig.max_new_tokens : number
要生成的最大 token 数,忽略提示中的 token 数。
Kind: GenerationConfig
的实例属性
Default: null
generationConfig.min_length : number
要生成的序列的最小长度。对应于输入提示的长度 + min_new_tokens
。如果也设置了 min_new_tokens
,则其效果将被覆盖。
Kind: GenerationConfig
的实例属性
Default: 0
generationConfig.min_new_tokens : number
要生成的最小 token 数,忽略提示中的 token 数。
Kind: GenerationConfig
的实例属性
Default: null
generationConfig.early_stopping : boolean
| ” never ”
控制基于 beam 的方法(如 beam 搜索)的停止条件。它接受以下值
true
,其中生成在有num_beams
个完整候选对象时立即停止;false
,其中应用启发式方法,并且当找到更好候选对象的可能性非常低时,生成停止;"never"
,其中 beam 搜索过程仅在无法找到更好的候选对象时停止(规范 beam 搜索算法)。
Kind: GenerationConfig
的实例属性
Default: false
generationConfig.max_time : number
您允许计算运行的最长时间(以秒为单位)。生成将在分配的时间过后仍然完成当前的传递。
Kind: GenerationConfig
的实例属性
Default: null
generationConfig.do_sample : boolean
是否使用采样;否则使用贪婪解码。
Kind: GenerationConfig
的实例属性
Default: false
generationConfig.num_beams : number
beam 搜索的 beam 数量。1 表示不进行 beam 搜索。
Kind: GenerationConfig
的实例属性
Default: 1
generationConfig.num_beam_groups : number
将 num_beams
分成组的数量,以确保不同 beam 组之间的多样性。有关更多详细信息,请参阅 本文。
Kind: GenerationConfig
的实例属性
Default: 1
generationConfig.penalty_alpha : number
这些值平衡了对比搜索解码中的模型置信度和退化惩罚。
Kind: GenerationConfig
的实例属性
Default: null
generationConfig.use_cache : boolean
模型是否应使用过去最后的键/值注意力(如果适用于模型)来加速解码。
Kind: GenerationConfig
的实例属性
Default: true
generationConfig.temperature : number
用于调节下一个 token 概率的值。
Kind: GenerationConfig
的实例属性
Default: 1.0
generationConfig.top_k : number
要为 top-k 过滤保留的最高概率词汇 token 的数量。
Kind: GenerationConfig
的实例属性
Default: 50
generationConfig.top_p : number
如果设置为小于 1 的浮点数,则仅保留概率总和达到 top_p
或更高的最小概率 token 集用于生成。
Kind: GenerationConfig
的实例属性
Default: 1.0
generationConfig.typical_p : number
局部典型性衡量标准是,在给定已生成的部分文本的情况下,预测目标 token 的条件概率与预测下一个随机 token 的预期条件概率有多相似。 如果设置为小于 1 的浮点数,则仅保留概率总和达到 typical_p
或更高的局部最典型 token 的最小集合用于生成。 有关更多详细信息,请参阅 本文。
Kind: GenerationConfig
的实例属性
Default: 1.0
generationConfig.epsilon_cutoff : <code> number </code>
如果设置为严格介于 0 和 1 之间的浮点数,则只会对条件概率大于 epsilon_cutoff
的 tokens 进行采样。在论文中,建议值范围为 3e-4 到 9e-4,具体取决于模型的大小。 有关更多详细信息,请参阅 Truncation Sampling as Language Model Desmoothing。
Kind: 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,具体取决于模型的大小。 有关更多详细信息,请参阅 Truncation Sampling as Language Model Desmoothing。
Kind: GenerationConfig
的实例属性
默认值: 0.0
generationConfig.diversity_penalty : <code> number </code>
如果一个 beam 生成的 token 与特定时间来自其他组的任何 beam 生成的 token 相同,则此值将从该 beam 的分数中减去。 请注意,diversity_penalty
仅在启用 group beam search
时有效。
Kind: GenerationConfig
的实例属性
默认值: 0.0
generationConfig.repetition_penalty : <code> number </code>
重复惩罚的参数。 1.0 表示没有惩罚。 有关更多详细信息,请参阅本文。
Kind: GenerationConfig
的实例属性
Default: 1.0
generationConfig.encoder_repetition_penalty : <code> number </code>
encoder_repetition_penalty 的参数。 对不在原始输入中的序列进行指数惩罚。 1.0 表示没有惩罚。
Kind: GenerationConfig
的实例属性
Default: 1.0
generationConfig.length_penalty : <code> number </code>
用于基于 beam 生成的长度的指数惩罚。 它作为序列长度的指数应用,而序列长度又用于除以序列的分数。 由于分数是序列的对数似然(即负数),因此 length_penalty
> 0.0 鼓励更长的序列,而 length_penalty
< 0.0 鼓励更短的序列。
Kind: GenerationConfig
的实例属性
Default: 1.0
generationConfig.no_repeat_ngram_size : <code> number </code>
如果设置为 int > 0,则该大小的所有 n-gram 只能出现一次。
Kind: GenerationConfig
的实例属性
Default: 0
generationConfig.bad_words_ids : <code> Array. < Array < number > > </code>
不允许生成的 token ids 列表。 为了获得不应出现在生成的文本中的单词的 token ids,请使用 tokenizer(bad_words, { add_prefix_space: true, add_special_tokens: false }).input_ids
。
Kind: GenerationConfig
的实例属性
Default: null
generationConfig.force_words_ids : <code> Array < Array < number > > </code> | <code> Array < Array < Array < number > > > </code>
必须生成的 token ids 列表。 如果给定 number[][]
,则将其视为必须包含的简单单词列表,与 bad_words_ids
相反。 如果给定 number[][][]
,则会触发析取约束,在这种约束中,可以允许每个单词的不同形式。
Kind: GenerationConfig
的实例属性
Default: null
generationConfig.renormalize_logits : <code> boolean </code>
是否在应用所有 logits 处理器或 warpers(包括自定义的处理器或 warpers)后重新归一化 logits。 强烈建议将此标志设置为 true
,因为搜索算法假设分数 logits 已归一化,但某些 logit 处理器或 warpers 会破坏归一化。
Kind: GenerationConfig
的实例属性
Default: false
generationConfig.constraints : <code> Array. < Object > </code>
可以添加到生成中的自定义约束,以确保输出将包含 Constraint
对象定义的某些 tokens 的使用,以最合理的方式实现。
Kind: GenerationConfig
的实例属性
Default: null
generationConfig.forced_bos_token_id : <code> number </code>
强制作为 decoder_start_token_id
之后生成的第一个 token 的 token 的 id。 对于像 mBART 这样的多语言模型很有用,其中生成的第一个 token 需要是目标语言 token。
Kind: GenerationConfig
的实例属性
Default: null
generationConfig.forced_eos_token_id : <code> number </code> | <code> Array < number > </code>
当达到 max_length
时,强制作为最后一个生成的 token 的 token 的 id。 或者,使用列表来设置多个序列结束 token。
Kind: GenerationConfig
的实例属性
Default: null
generationConfig.remove_invalid_values : <code> boolean </code>
是否删除模型可能出现的 nan 和 inf 输出,以防止生成方法崩溃。 请注意,使用 remove_invalid_values
可能会减慢生成速度。
Kind: GenerationConfig
的实例属性
generationConfig.exponential_decay_length_penalty : <code> * </code>
此 Tuple 添加指数增长的长度惩罚,在生成一定数量的 tokens 后生效。 该元组应包含:(start_index, decay_factor)
,其中 start_index
指示惩罚开始的位置,decay_factor
表示指数衰减的因子。
Kind: GenerationConfig
的实例属性
Default: null
generationConfig.suppress_tokens : <code> Array. < number > </code>
将在生成时被抑制的 tokens 列表。 SuppressTokens
logit 处理器将它们的 log probs 设置为 -inf
,以便不采样它们。
Kind: GenerationConfig
的实例属性
Default: null
generationConfig.streamer : <code> * </code>
将用于流式传输生成的 streamer。
Kind: GenerationConfig
的实例属性
Default: null
generationConfig.begin_suppress_tokens : <code> Array. < number > </code>
将在生成开始时被抑制的 tokens 列表。 SuppressBeginTokens
logit 处理器将它们的 log probs 设置为 -inf
,以便不采样它们。
Kind: GenerationConfig
的实例属性
Default: null
generationConfig.forced_decoder_ids : <code> * </code>
一对整数的列表,指示从生成索引到 token 索引的映射,这些映射将在采样之前强制执行。 例如,[[1, 123]]
表示第二个生成的 token 将始终是索引为 123 的 token。
Kind: GenerationConfig
的实例属性
Default: null
generationConfig.guidance_scale : <code> number </code>
分类器自由引导 (CFG) 的引导比例。 CFG 通过设置 guidance_scale > 1
启用。 较高的引导比例鼓励模型生成与输入提示更紧密相关的样本,通常以牺牲较差的质量为代价。
Kind: GenerationConfig
的实例属性
Default: null
generationConfig.num_return_sequences : <code> number </code>
批次中每个元素独立计算的返回序列数。
Kind: GenerationConfig
的实例属性
Default: 1
generationConfig.output_attentions : <code> boolean </code>
是否返回所有 attention 层的 attention tensors。 有关更多详细信息,请参阅返回的 tensors 下的 attentions
。
Kind: GenerationConfig
的实例属性
Default: false
generationConfig.output_hidden_states : <code> boolean </code>
是否返回所有层的 hidden states。 有关更多详细信息,请参阅返回的 tensors 下的 hidden_states
。
Kind: GenerationConfig
的实例属性
Default: false
generationConfig.output_scores : <code> boolean </code>
是否返回预测分数。 有关更多详细信息,请参阅返回的 tensors 下的 scores
。
Kind: GenerationConfig
的实例属性
Default: false
generationConfig.return_dict_in_generate : <code> boolean </code>
是否返回 ModelOutput
而不是普通元组。
Kind: GenerationConfig
的实例属性
Default: false
generationConfig.pad_token_id : <code> number </code>
padding token 的 id。
Kind: GenerationConfig
的实例属性
Default: null
generationConfig.bos_token_id : <code> number </code>
beginning-of-sequence token 的 id。
Kind: GenerationConfig
的实例属性
Default: null
generationConfig.eos_token_id : <code> number </code> | <code> Array < number > </code>
end-of-sequence token 的 id。 或者,使用列表来设置多个序列结束 token。
Kind: GenerationConfig
的实例属性
Default: null
generationConfig.encoder_no_repeat_ngram_size : <code> number </code>
如果设置为 int > 0,则出现在 encoder_input_ids
中的该大小的所有 n-gram 都不能出现在 decoder_input_ids
中。
Kind: GenerationConfig
的实例属性
Default: 0
generationConfig.decoder_start_token_id : <code> number </code>
如果 encoder-decoder 模型以与 bos 不同的 token 开始解码,则为该 token 的 id。
Kind: GenerationConfig
的实例属性
Default: null
generationConfig.generation_kwargs : <code> Object </code>
额外的 generation kwargs 将会转发到模型的 generate
函数中。generate
函数签名中不存在的 kwargs 将会在模型前向传播中使用。
Kind: GenerationConfig
的实例属性
默认值: {}
< > 在 GitHub 上更新