lora训练之偷师

自stable diffusion开源之后AIGC绘画方向定制化百花齐放百家争鸣。

而c站 https://civitai.com/

也聚集了全球爱好者的各种微调训练模型分享。

其中以lora为首,应用最广泛。

而这些模型是怎么训练出来的,细节到底是什么样的,没有多少人能说得清楚。

而就博主知道的,

使用最广泛的训练代码是这份 https://github.com/bmaltais/kohya_ss

它流行的原因主要是在其做了个GUI界面,便于很多不懂代码的人也能使用。

这里博主没打算讲解kohya_ss下具体训练方法和其参数。

想知道具体训练参数和细节,可以移步其wiki

https://github.com/bmaltais/kohya_ss/wiki/LoRA-training-parameters

还是不懂,也可以问各种gpt或者直接翻译成中文阅读即可。

现在主流最广泛使用的模型存储格式为 huggingface的safetensors

https://github.com/huggingface/safetensors

kohya_ss里默认会把训练参数填到safetensors的metadata里。

说到这里,lora训练之偷师 答案呼之欲出。

假设我们从c站上把safetensors模型下载下来,

然后读出来它的metadata信息,

那不就能知道这个模型具体的训练参数吗?

而在博主实操读出来好几个主流模型的参数之后,很感慨:

c站上的模型真的很demo,训练的数据集大多都不大,分辨率也不高,有的也就百来张图。

训练参数也可以大概评估出来,每个模型作者的用心程度,

当然也可以作为评价模型的一种标准,

例如:看过了多少张图,什么样的分辨率训练的,训练了多久之类的。

也就对这个微调的模型能有个大概认知。

多看几个模型之后,

新手也可以快速上手训练自己的lora,定制自己的AI女友之类的。

你说你想直接抄他们的参数训练,当然也是可以的,偷师不可耻很光荣。

为了方便读取模型的模型的训练信息,博主写了个小工具。

开源地址为:

https://github.com/cpuimage/st_metadata_parser

使用也非常简单:

python st_metadata_parser.py input_file.safetensors

输出的参数具体含义可以参考:

https://github.com/bmaltais/kohya_ss/wiki/LoRA-training-parameters

附一份C站上某个lora模型文件的训练参数供一览:

复制代码
[('ss_cache_latents', 'True'),
 ('ss_caption_dropout_every_n_epochs', '0'),
 ('ss_caption_dropout_rate', '0.0'),
 ('ss_caption_tag_dropout_rate', '0.0'),
 ('ss_clip_skip', '2'),
 ('ss_dataset_dirs', '{"rapunzel": {"n_repeats": 5, "img_count": 40}}'),
 ('ss_datasets',
  '[{"is_dreambooth": true, "batch_size_per_device": 2, "num_train_images": '
  '200, "num_reg_images": 0, "resolution": [512, 512], "enable_bucket": true, '
  '"min_bucket_reso": 256, "max_bucket_reso": 1024, "tag_frequency": '
  '{"rapunzel": {"rapunzel 1girl": 40, "solo": 39, "long hair": 37, "smile": '
  '26, "blonde hair": 38, "dress": 21, "very long hair": 18, "green eyes": 30, '
  '"crossed arms": 3, "corset": 5, "purple dress": 12, "breasts": 13, "open '
  'mouth": 7, "medium breasts": 5, "nipples": 7, "swimsuit": 2, "bikini": 1, '
  '"tongue": 2, "striped": 1, "lips": 7, "micro bikini": 1, "freckles": 5, '
  '"looking at viewer": 10, "long sleeves": 7, "cleavage": 3, "multiple boys": '
  '1, "puffy sleeves": 7, "2boys": 1, "full body": 4, "absurdly long hair": 2, '
  '"grin": 2, "hand on hip": 3, "juliet sleeves": 1, "blush": 3, "large '
  'breasts": 4, "hair ornament": 5, "standing": 2, "flower": 7, "cowboy shot": '
  '1, "teeth": 5, "indoors": 1, "hair flower": 5, "one-piece swimsuit": 1, '
  '"covered navel": 1, "makeup": 2, "cameltoe": 1, "highleg": 1, "lamp": 1, '
  '"braid": 4, "blurry": 2, "arm up": 1, "depth of field": 1, "blurry '
  'background": 2, "looking up": 3, "bokeh": 1, "upper body": 4, "short '
  'sleeves": 3, "closed eyes": 1, "small breasts": 1, "lying": 3, "signature": '
  '1, "on back": 1, "arms up": 2, "eyelashes": 1, "from above": 1, "happy": 1, '
  '"grass": 1, "cross-laced clothes": 1, "hair spread out": 1, "sitting": 4, '
  '"outdoors": 2, "barefoot": 7, "water": 1, "tree": 2, "pink dress": 1, '
  '"holding flower": 1, "lily pad": 1, "simple background": 5, "white '
  'background": 3, "frog": 4, "black background": 2, "child": 1, "star print": '
  '1, "lantern": 1, "blue eyes": 2, "navel": 5, "underwear": 2, "panties": 2, '
  '"thigh gap": 1, "bound": 2, "bdsm": 2, "bondage": 2, "gag": 1, "gagged": 1, '
  '"improvised gag": 1, "cloth gag": 1, "nude": 5, "tongue out": 1, "saliva": '
  '1, "arms behind back": 1, "seiza": 1, "bound arms": 1, "on head": 1, '
  '"animal on head": 1, "holding hair": 1, "tiara": 1, "crown": 1, "princess": '
  '1, "hands on own head": 1, "mirror": 2, "frying pan": 2, "nature": 1, '
  '"parted lips": 1, "blue background": 1, "shirt": 1, "choker": 2, "huge '
  'breasts": 1, "colored skin": 1, "bursting breasts": 1, "thighhighs": 2, '
  '"jewelry": 1, "thighs": 1, "earrings": 1, "pussy": 3, "spread legs": 2, '
  '"cum": 1, "high heels": 1, "kneeling": 1, "uncensored": 3, "cum in pussy": '
  '1, "phone": 1, "cellphone": 1, "smartphone": 1, "after sex": 1, "holding '
  'phone": 1, "cumdrip": 1, "brown thighhighs": 1, "gloves": 1, "multicolored '
  'hair": 1, "white gloves": 1, "topless": 1, "pink panties": 1, "fishnet '
  'thighhighs": 1, "ass": 1, "feet": 1, "soles": 1, "on stomach": 1, "the '
  'pose": 1, "nail polish": 1, "tan": 1, "personification": 1, "tanlines": 1, '
  '"detached sleeves": 1, "armpits": 1, "pillow": 1}}, "bucket_info": '
  '{"buckets": {"0": {"resolution": [320, 704], "count": 30}, "1": '
  '{"resolution": [384, 640], "count": 95}, "2": {"resolution": [448, 576], '
  '"count": 50}, "3": {"resolution": [512, 512], "count": 20}, "4": '
  '{"resolution": [576, 448], "count": 5}}, "mean_img_ar_error": '
  '0.042025975009129204}, "subsets": [{"img_count": 40, "num_repeats": 5, '
  '"color_aug": false, "flip_aug": false, "random_crop": false, '
  '"shuffle_caption": true, "keep_tokens": 1, "image_dir": "rapunzel", '
  '"class_tokens": null, "is_reg": false}]}]'),
 ('ss_epoch', '10'),
 ('ss_face_crop_aug_range', 'None'),
 ('ss_full_fp16', 'False'),
 ('ss_gradient_accumulation_steps', '1'),
 ('ss_gradient_checkpointing', 'False'),
 ('ss_learning_rate', '0.0005'),
 ('ss_lowram', 'True'),
 ('ss_lr_scheduler', 'cosine_with_restarts'),
 ('ss_lr_warmup_steps', '50'),
 ('ss_max_grad_norm', '1.0'),
 ('ss_max_token_length', '225'),
 ('ss_max_train_steps', '1010'),
 ('ss_min_snr_gamma', '5.0'),
 ('ss_mixed_precision', 'fp16'),
 ('ss_multires_noise_discount', '0.3'),
 ('ss_multires_noise_iterations', 'None'),
 ('ss_network_alpha', '16'),
 ('ss_network_dim', '32'),
 ('ss_network_module', 'networks.lora'),
 ('ss_new_sd_model_hash',
  'b0c91a8a93ab63b8b513046c2e2181a4ce78b83367ee7e26354ba9e018ea102f'),
 ('ss_noise_offset', 'None'),
 ('ss_num_batches_per_epoch', '101'),
 ('ss_num_epochs', '10'),
 ('ss_num_reg_images', '0'),
 ('ss_num_train_images', '200'),
 ('ss_optimizer', 'bitsandbytes.optim.adamw.AdamW8bit'),
 ('ss_output_name', 'rapunzel'),
 ('ss_prior_loss_weight', '1.0'),
 ('ss_sd_model_hash', '66f58dbb'),
 ('ss_sd_model_name', 'fp16-pruned.ckpt'),
 ('ss_sd_scripts_commit_hash', 'e6ad3cbc66130fdc3bf9ecd1e0272969b1d613f7'),
 ('ss_seed', '42'),
 ('ss_session_id', '1637709685'),
 ('ss_steps', '1010'),
 ('ss_tag_frequency',
  '{"rapunzel": {"rapunzel 1girl": 40, "solo": 39, "long hair": 37, "smile": '
  '26, "blonde hair": 38, "dress": 21, "very long hair": 18, "green eyes": 30, '
  '"crossed arms": 3, "corset": 5, "purple dress": 12, "breasts": 13, "open '
  'mouth": 7, "medium breasts": 5, "nipples": 7, "swimsuit": 2, "bikini": 1, '
  '"tongue": 2, "striped": 1, "lips": 7, "micro bikini": 1, "freckles": 5, '
  '"looking at viewer": 10, "long sleeves": 7, "cleavage": 3, "multiple boys": '
  '1, "puffy sleeves": 7, "2boys": 1, "full body": 4, "absurdly long hair": 2, '
  '"grin": 2, "hand on hip": 3, "juliet sleeves": 1, "blush": 3, "large '
  'breasts": 4, "hair ornament": 5, "standing": 2, "flower": 7, "cowboy shot": '
  '1, "teeth": 5, "indoors": 1, "hair flower": 5, "one-piece swimsuit": 1, '
  '"covered navel": 1, "makeup": 2, "cameltoe": 1, "highleg": 1, "lamp": 1, '
  '"braid": 4, "blurry": 2, "arm up": 1, "depth of field": 1, "blurry '
  'background": 2, "looking up": 3, "bokeh": 1, "upper body": 4, "short '
  'sleeves": 3, "closed eyes": 1, "small breasts": 1, "lying": 3, "signature": '
  '1, "on back": 1, "arms up": 2, "eyelashes": 1, "from above": 1, "happy": 1, '
  '"grass": 1, "cross-laced clothes": 1, "hair spread out": 1, "sitting": 4, '
  '"outdoors": 2, "barefoot": 7, "water": 1, "tree": 2, "pink dress": 1, '
  '"holding flower": 1, "lily pad": 1, "simple background": 5, "white '
  'background": 3, "frog": 4, "black background": 2, "child": 1, "star print": '
  '1, "lantern": 1, "blue eyes": 2, "navel": 5, "underwear": 2, "panties": 2, '
  '"thigh gap": 1, "bound": 2, "bdsm": 2, "bondage": 2, "gag": 1, "gagged": 1, '
  '"improvised gag": 1, "cloth gag": 1, "nude": 5, "tongue out": 1, "saliva": '
  '1, "arms behind back": 1, "seiza": 1, "bound arms": 1, "on head": 1, '
  '"animal on head": 1, "holding hair": 1, "tiara": 1, "crown": 1, "princess": '
  '1, "hands on own head": 1, "mirror": 2, "frying pan": 2, "nature": 1, '
  '"parted lips": 1, "blue background": 1, "shirt": 1, "choker": 2, "huge '
  'breasts": 1, "colored skin": 1, "bursting breasts": 1, "thighhighs": 2, '
  '"jewelry": 1, "thighs": 1, "earrings": 1, "pussy": 3, "spread legs": 2, '
  '"cum": 1, "high heels": 1, "kneeling": 1, "uncensored": 3, "cum in pussy": '
  '1, "phone": 1, "cellphone": 1, "smartphone": 1, "after sex": 1, "holding '
  'phone": 1, "cumdrip": 1, "brown thighhighs": 1, "gloves": 1, "multicolored '
  'hair": 1, "white gloves": 1, "topless": 1, "pink panties": 1, "fishnet '
  'thighhighs": 1, "ass": 1, "feet": 1, "soles": 1, "on stomach": 1, "the '
  'pose": 1, "nail polish": 1, "tan": 1, "personification": 1, "tanlines": 1, '
  '"detached sleeves": 1, "armpits": 1, "pillow": 1}}'),
 ('ss_text_encoder_lr', '0.0001'),
 ('ss_training_comment', 'None'),
 ('ss_training_finished_at', '1694906008.5775223'),
 ('ss_training_started_at', '1694905352.3001792'),
 ('ss_unet_lr', '0.0005'),
 ('ss_v2', 'False'),
 ('sshs_legacy_hash', 'fd5d0c6f'),
 ('sshs_model_hash',
  '0f9a9c96e707b34f1591ed9d24e788769cb72e2040f380aa7c31b6a49ca783b2')]

有数据就比较直观,不然这篇博文,就显得干巴巴的。

也算为业界做了一点点贡献。

提一个额外的话题,

由于diffusers和stable-diffusion-webui的实现十分臃肿,

并且屎山越来越大,非常不便于研发以及学习。

为了远离那堆玩意,博主化身屎壳郎,花了不少精力对stable diffusion进行了整理和重写。

开源了sd 1.5和 sdxl 1.0 两个仓库,主要以keras/TensorFlow为主,兼容pytroch的模型权重。

项目地址为:

sd1.5:

https://github.com/cpuimage/minSDTF

sdxl 1.0:

https://github.com/cpuimage/minSDXLTF

目前有空会持续更新,目标是把webui的主要功能以比较简洁优雅的方式实现,路漫漫其修远兮。

如果有小伙伴有能力也想加入,欢迎联系博主,一起摇摆。

也有业内好友期望博主写一份keras/tensorflow版本的lora训练框架,只能说有时间的话,会写的。

最后唠叨几句,kohya_ss训练框架的作者,其代码好几个地方逻辑写错了,小伙伴们要注意了。

最后的最后,

有stable diffusion相关的训练或者开发定制,不论是需求还是各种问题都可以通过以下方式联系博主,

微信: Dbgmonks

QQ: 200759103

邮箱: gaozhihan@vip.qq.com

注: 博主提供有偿服务, 不注明来意者一律拒绝。
TRANSLATE with x
English

|------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| [Arabic](#Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Traditional Indonesian Slovak Czech Italian Slovenian Danish Japanese Spanish Dutch Klingon Swedish English Korean Thai Estonian Latvian Turkish Finnish Lithuanian Ukrainian French Malay Urdu German Maltese Vietnamese Greek Norwegian Welsh Haitian Creole Persian) | [Hebrew](#Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Traditional Indonesian Slovak Czech Italian Slovenian Danish Japanese Spanish Dutch Klingon Swedish English Korean Thai Estonian Latvian Turkish Finnish Lithuanian Ukrainian French Malay Urdu German Maltese Vietnamese Greek Norwegian Welsh Haitian Creole Persian) | [Polish](#Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Traditional Indonesian Slovak Czech Italian Slovenian Danish Japanese Spanish Dutch Klingon Swedish English Korean Thai Estonian Latvian Turkish Finnish Lithuanian Ukrainian French Malay Urdu German Maltese Vietnamese Greek Norwegian Welsh Haitian Creole Persian) |
| [Bulgarian](#Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Traditional Indonesian Slovak Czech Italian Slovenian Danish Japanese Spanish Dutch Klingon Swedish English Korean Thai Estonian Latvian Turkish Finnish Lithuanian Ukrainian French Malay Urdu German Maltese Vietnamese Greek Norwegian Welsh Haitian Creole Persian) | [Hindi](#Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Traditional Indonesian Slovak Czech Italian Slovenian Danish Japanese Spanish Dutch Klingon Swedish English Korean Thai Estonian Latvian Turkish Finnish Lithuanian Ukrainian French Malay Urdu German Maltese Vietnamese Greek Norwegian Welsh Haitian Creole Persian) | [Portuguese](#Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Traditional Indonesian Slovak Czech Italian Slovenian Danish Japanese Spanish Dutch Klingon Swedish English Korean Thai Estonian Latvian Turkish Finnish Lithuanian Ukrainian French Malay Urdu German Maltese Vietnamese Greek Norwegian Welsh Haitian Creole Persian) |
| [Catalan](#Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Traditional Indonesian Slovak Czech Italian Slovenian Danish Japanese Spanish Dutch Klingon Swedish English Korean Thai Estonian Latvian Turkish Finnish Lithuanian Ukrainian French Malay Urdu German Maltese Vietnamese Greek Norwegian Welsh Haitian Creole Persian) | [Hmong Daw](#Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Traditional Indonesian Slovak Czech Italian Slovenian Danish Japanese Spanish Dutch Klingon Swedish English Korean Thai Estonian Latvian Turkish Finnish Lithuanian Ukrainian French Malay Urdu German Maltese Vietnamese Greek Norwegian Welsh Haitian Creole Persian) | [Romanian](#Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Traditional Indonesian Slovak Czech Italian Slovenian Danish Japanese Spanish Dutch Klingon Swedish English Korean Thai Estonian Latvian Turkish Finnish Lithuanian Ukrainian French Malay Urdu German Maltese Vietnamese Greek Norwegian Welsh Haitian Creole Persian) |
| [Chinese Simplified](#Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Traditional Indonesian Slovak Czech Italian Slovenian Danish Japanese Spanish Dutch Klingon Swedish English Korean Thai Estonian Latvian Turkish Finnish Lithuanian Ukrainian French Malay Urdu German Maltese Vietnamese Greek Norwegian Welsh Haitian Creole Persian) | [Hungarian](#Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Traditional Indonesian Slovak Czech Italian Slovenian Danish Japanese Spanish Dutch Klingon Swedish English Korean Thai Estonian Latvian Turkish Finnish Lithuanian Ukrainian French Malay Urdu German Maltese Vietnamese Greek Norwegian Welsh Haitian Creole Persian) | [Russian](#Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Traditional Indonesian Slovak Czech Italian Slovenian Danish Japanese Spanish Dutch Klingon Swedish English Korean Thai Estonian Latvian Turkish Finnish Lithuanian Ukrainian French Malay Urdu German Maltese Vietnamese Greek Norwegian Welsh Haitian Creole Persian) |
| [Chinese Traditional](#Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Traditional Indonesian Slovak Czech Italian Slovenian Danish Japanese Spanish Dutch Klingon Swedish English Korean Thai Estonian Latvian Turkish Finnish Lithuanian Ukrainian French Malay Urdu German Maltese Vietnamese Greek Norwegian Welsh Haitian Creole Persian) | [Indonesian](#Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Traditional Indonesian Slovak Czech Italian Slovenian Danish Japanese Spanish Dutch Klingon Swedish English Korean Thai Estonian Latvian Turkish Finnish Lithuanian Ukrainian French Malay Urdu German Maltese Vietnamese Greek Norwegian Welsh Haitian Creole Persian) | [Slovak](#Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Traditional Indonesian Slovak Czech Italian Slovenian Danish Japanese Spanish Dutch Klingon Swedish English Korean Thai Estonian Latvian Turkish Finnish Lithuanian Ukrainian French Malay Urdu German Maltese Vietnamese Greek Norwegian Welsh Haitian Creole Persian) |
| [Czech](#Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Traditional Indonesian Slovak Czech Italian Slovenian Danish Japanese Spanish Dutch Klingon Swedish English Korean Thai Estonian Latvian Turkish Finnish Lithuanian Ukrainian French Malay Urdu German Maltese Vietnamese Greek Norwegian Welsh Haitian Creole Persian) | [Italian](#Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Traditional Indonesian Slovak Czech Italian Slovenian Danish Japanese Spanish Dutch Klingon Swedish English Korean Thai Estonian Latvian Turkish Finnish Lithuanian Ukrainian French Malay Urdu German Maltese Vietnamese Greek Norwegian Welsh Haitian Creole Persian) | [Slovenian](#Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Traditional Indonesian Slovak Czech Italian Slovenian Danish Japanese Spanish Dutch Klingon Swedish English Korean Thai Estonian Latvian Turkish Finnish Lithuanian Ukrainian French Malay Urdu German Maltese Vietnamese Greek Norwegian Welsh Haitian Creole Persian) |
| [Danish](#Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Traditional Indonesian Slovak Czech Italian Slovenian Danish Japanese Spanish Dutch Klingon Swedish English Korean Thai Estonian Latvian Turkish Finnish Lithuanian Ukrainian French Malay Urdu German Maltese Vietnamese Greek Norwegian Welsh Haitian Creole Persian) | [Japanese](#Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Traditional Indonesian Slovak Czech Italian Slovenian Danish Japanese Spanish Dutch Klingon Swedish English Korean Thai Estonian Latvian Turkish Finnish Lithuanian Ukrainian French Malay Urdu German Maltese Vietnamese Greek Norwegian Welsh Haitian Creole Persian) | [Spanish](#Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Traditional Indonesian Slovak Czech Italian Slovenian Danish Japanese Spanish Dutch Klingon Swedish English Korean Thai Estonian Latvian Turkish Finnish Lithuanian Ukrainian French Malay Urdu German Maltese Vietnamese Greek Norwegian Welsh Haitian Creole Persian) |
| [Dutch](#Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Traditional Indonesian Slovak Czech Italian Slovenian Danish Japanese Spanish Dutch Klingon Swedish English Korean Thai Estonian Latvian Turkish Finnish Lithuanian Ukrainian French Malay Urdu German Maltese Vietnamese Greek Norwegian Welsh Haitian Creole Persian) | [Klingon](#Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Traditional Indonesian Slovak Czech Italian Slovenian Danish Japanese Spanish Dutch Klingon Swedish English Korean Thai Estonian Latvian Turkish Finnish Lithuanian Ukrainian French Malay Urdu German Maltese Vietnamese Greek Norwegian Welsh Haitian Creole Persian) | [Swedish](#Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Traditional Indonesian Slovak Czech Italian Slovenian Danish Japanese Spanish Dutch Klingon Swedish English Korean Thai Estonian Latvian Turkish Finnish Lithuanian Ukrainian French Malay Urdu German Maltese Vietnamese Greek Norwegian Welsh Haitian Creole Persian) |
| [English](#Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Traditional Indonesian Slovak Czech Italian Slovenian Danish Japanese Spanish Dutch Klingon Swedish English Korean Thai Estonian Latvian Turkish Finnish Lithuanian Ukrainian French Malay Urdu German Maltese Vietnamese Greek Norwegian Welsh Haitian Creole Persian) | [Korean](#Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Traditional Indonesian Slovak Czech Italian Slovenian Danish Japanese Spanish Dutch Klingon Swedish English Korean Thai Estonian Latvian Turkish Finnish Lithuanian Ukrainian French Malay Urdu German Maltese Vietnamese Greek Norwegian Welsh Haitian Creole Persian) | [Thai](#Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Traditional Indonesian Slovak Czech Italian Slovenian Danish Japanese Spanish Dutch Klingon Swedish English Korean Thai Estonian Latvian Turkish Finnish Lithuanian Ukrainian French Malay Urdu German Maltese Vietnamese Greek Norwegian Welsh Haitian Creole Persian) |
| [Estonian](#Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Traditional Indonesian Slovak Czech Italian Slovenian Danish Japanese Spanish Dutch Klingon Swedish English Korean Thai Estonian Latvian Turkish Finnish Lithuanian Ukrainian French Malay Urdu German Maltese Vietnamese Greek Norwegian Welsh Haitian Creole Persian) | [Latvian](#Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Traditional Indonesian Slovak Czech Italian Slovenian Danish Japanese Spanish Dutch Klingon Swedish English Korean Thai Estonian Latvian Turkish Finnish Lithuanian Ukrainian French Malay Urdu German Maltese Vietnamese Greek Norwegian Welsh Haitian Creole Persian) | [Turkish](#Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Traditional Indonesian Slovak Czech Italian Slovenian Danish Japanese Spanish Dutch Klingon Swedish English Korean Thai Estonian Latvian Turkish Finnish Lithuanian Ukrainian French Malay Urdu German Maltese Vietnamese Greek Norwegian Welsh Haitian Creole Persian) |
| [Finnish](#Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Traditional Indonesian Slovak Czech Italian Slovenian Danish Japanese Spanish Dutch Klingon Swedish English Korean Thai Estonian Latvian Turkish Finnish Lithuanian Ukrainian French Malay Urdu German Maltese Vietnamese Greek Norwegian Welsh Haitian Creole Persian) | [Lithuanian](#Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Traditional Indonesian Slovak Czech Italian Slovenian Danish Japanese Spanish Dutch Klingon Swedish English Korean Thai Estonian Latvian Turkish Finnish Lithuanian Ukrainian French Malay Urdu German Maltese Vietnamese Greek Norwegian Welsh Haitian Creole Persian) | [Ukrainian](#Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Traditional Indonesian Slovak Czech Italian Slovenian Danish Japanese Spanish Dutch Klingon Swedish English Korean Thai Estonian Latvian Turkish Finnish Lithuanian Ukrainian French Malay Urdu German Maltese Vietnamese Greek Norwegian Welsh Haitian Creole Persian) |
| [French](#Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Traditional Indonesian Slovak Czech Italian Slovenian Danish Japanese Spanish Dutch Klingon Swedish English Korean Thai Estonian Latvian Turkish Finnish Lithuanian Ukrainian French Malay Urdu German Maltese Vietnamese Greek Norwegian Welsh Haitian Creole Persian) | [Malay](#Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Traditional Indonesian Slovak Czech Italian Slovenian Danish Japanese Spanish Dutch Klingon Swedish English Korean Thai Estonian Latvian Turkish Finnish Lithuanian Ukrainian French Malay Urdu German Maltese Vietnamese Greek Norwegian Welsh Haitian Creole Persian) | [Urdu](#Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Traditional Indonesian Slovak Czech Italian Slovenian Danish Japanese Spanish Dutch Klingon Swedish English Korean Thai Estonian Latvian Turkish Finnish Lithuanian Ukrainian French Malay Urdu German Maltese Vietnamese Greek Norwegian Welsh Haitian Creole Persian) |
| [German](#Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Traditional Indonesian Slovak Czech Italian Slovenian Danish Japanese Spanish Dutch Klingon Swedish English Korean Thai Estonian Latvian Turkish Finnish Lithuanian Ukrainian French Malay Urdu German Maltese Vietnamese Greek Norwegian Welsh Haitian Creole Persian) | [Maltese](#Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Traditional Indonesian Slovak Czech Italian Slovenian Danish Japanese Spanish Dutch Klingon Swedish English Korean Thai Estonian Latvian Turkish Finnish Lithuanian Ukrainian French Malay Urdu German Maltese Vietnamese Greek Norwegian Welsh Haitian Creole Persian) | [Vietnamese](#Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Traditional Indonesian Slovak Czech Italian Slovenian Danish Japanese Spanish Dutch Klingon Swedish English Korean Thai Estonian Latvian Turkish Finnish Lithuanian Ukrainian French Malay Urdu German Maltese Vietnamese Greek Norwegian Welsh Haitian Creole Persian) |
| [Greek](#Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Traditional Indonesian Slovak Czech Italian Slovenian Danish Japanese Spanish Dutch Klingon Swedish English Korean Thai Estonian Latvian Turkish Finnish Lithuanian Ukrainian French Malay Urdu German Maltese Vietnamese Greek Norwegian Welsh Haitian Creole Persian) | [Norwegian](#Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Traditional Indonesian Slovak Czech Italian Slovenian Danish Japanese Spanish Dutch Klingon Swedish English Korean Thai Estonian Latvian Turkish Finnish Lithuanian Ukrainian French Malay Urdu German Maltese Vietnamese Greek Norwegian Welsh Haitian Creole Persian) | [Welsh](#Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Traditional Indonesian Slovak Czech Italian Slovenian Danish Japanese Spanish Dutch Klingon Swedish English Korean Thai Estonian Latvian Turkish Finnish Lithuanian Ukrainian French Malay Urdu German Maltese Vietnamese Greek Norwegian Welsh Haitian Creole Persian) |
| [Haitian Creole](#Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Traditional Indonesian Slovak Czech Italian Slovenian Danish Japanese Spanish Dutch Klingon Swedish English Korean Thai Estonian Latvian Turkish Finnish Lithuanian Ukrainian French Malay Urdu German Maltese Vietnamese Greek Norwegian Welsh Haitian Creole Persian) | [Persian](#Arabic Hebrew Polish Bulgarian Hindi Portuguese Catalan Hmong Daw Romanian Chinese Simplified Hungarian Russian Chinese Traditional Indonesian Slovak Czech Italian Slovenian Danish Japanese Spanish Dutch Klingon Swedish English Korean Thai Estonian Latvian Turkish Finnish Lithuanian Ukrainian French Malay Urdu German Maltese Vietnamese Greek Norwegian Welsh Haitian Creole Persian) | |


TRANSLATE with
COPY THE URL BELOW
Back
EMBED THE SNIPPET BELOW IN YOUR SITE
Enable collaborative features and customize widget: Bing Webmaster Portal
Back
This page is in English
Translate to Simplified Chinese

  • Afrikaans
  • Albanian
  • Amharic
  • Arabic
  • Armenian
  • Azerbaijani
  • Bengali
  • Bulgarian
  • Catalan
  • Croatian
  • Czech
  • Danish
  • Dutch
  • English
  • Estonian
  • Finnish
  • French
  • German
  • Greek
  • Gujarati
  • Haitian Creole
  • Hebrew
  • Hindi
  • Hungarian
  • Icelandic
  • Indonesian
  • Italian
  • Japanese
  • Kannada
  • Kazakh
  • Khmer
  • Korean
  • Kurdish (Kurmanji)
  • Lao
  • Latvian
  • Lithuanian
  • Malagasy
  • Malay
  • Malayalam
  • Maltese
  • Maori
  • Marathi
  • Myanmar (Burmese)
  • Nepali
  • Norwegian
  • Pashto
  • Persian
  • Polish
  • Portuguese
  • Punjabi
  • Romanian
  • Russian
  • Samoan
  • Simplified Chinese
  • Slovak
  • Slovenian
  • Spanish
  • Swedish
  • Tamil
  • Telugu
  • Thai
  • Traditional Chinese
  • Turkish
  • Ukrainian
  • Urdu
  • Vietnamese
  • Welsh
    Always translate English to Simplified ChinesePRO
    Never translate English
    Never translate i.cnblogs.com
相关推荐
AI极客菌8 小时前
Controlnet作者新作IC-light V2:基于FLUX训练,支持处理风格化图像,细节远高于SD1.5。
人工智能·计算机视觉·ai作画·stable diffusion·aigc·flux·人工智能作画
水豚AI课代表15 小时前
分析报告、调研报告、工作方案等的提示词
大数据·人工智能·学习·chatgpt·aigc
程序员X小鹿17 小时前
全部免费!6款AI对口型神器,让照片开口说话唱歌,早晚用得上,建议收藏!(附保姆级教程)
aigc
真忒修斯之船17 小时前
大模型分布式训练并行技术(三)流水线并行
面试·llm·aigc
学习前端的小z18 小时前
【AIGC】如何通过ChatGPT轻松制作个性化GPTs应用
人工智能·chatgpt·aigc
zzZ_CMing20 小时前
大语言模型训练的全过程:预训练、微调、RLHF
人工智能·自然语言处理·aigc
杰说新技术1 天前
Meta AI最新推出的长视频语言理解多模态模型LongVU分享
人工智能·aigc
热爱跑步的恒川1 天前
【论文复现】基于图卷积网络的轻量化推荐模型
网络·人工智能·开源·aigc·ai编程
火山引擎边缘云2 天前
创新实践:基于边缘智能+扣子的智慧婴儿监控解决方案
物联网·aigc·边缘计算
算家云2 天前
如何在算家云搭建Aatrox-Bert-VITS2(音频生成)
人工智能·深度学习·aigc·模型搭建·音频生成·算家云