Skip to content

Commit f00a995

Browse files
authored
Fix typos in strings and comments (#11407)
1 parent e8312e7 commit f00a995

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

43 files changed

+76
-76
lines changed

docs/source/en/api/pipelines/wan.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@
2424

2525
## Generating Videos with Wan 2.1
2626

27-
We will first need to install some addtional dependencies.
27+
We will first need to install some additional dependencies.
2828

2929
```shell
3030
pip install -u ftfy imageio-ffmpeg imageio

docs/source/en/training/cogvideox.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -216,7 +216,7 @@ Setting the `<ID_TOKEN>` is not necessary. From some limited experimentation, we
216216
> - The original repository uses a `lora_alpha` of `1`. We found this not suitable in many runs, possibly due to difference in modeling backends and training settings. Our recommendation is to set to the `lora_alpha` to either `rank` or `rank // 2`.
217217
> - If you're training on data whose captions generate bad results with the original model, a `rank` of 64 and above is good and also the recommendation by the team behind CogVideoX. If the generations are already moderately good on your training captions, a `rank` of 16/32 should work. We found that setting the rank too low, say `4`, is not ideal and doesn't produce promising results.
218218
> - The authors of CogVideoX recommend 4000 training steps and 100 training videos overall to achieve the best result. While that might yield the best results, we found from our limited experimentation that 2000 steps and 25 videos could also be sufficient.
219-
> - When using the Prodigy opitimizer for training, one can follow the recommendations from [this](https://huggingface.co/blog/sdxl_lora_advanced_script) blog. Prodigy tends to overfit quickly. From my very limited testing, I found a learning rate of `0.5` to be suitable in addition to `--prodigy_use_bias_correction`, `prodigy_safeguard_warmup` and `--prodigy_decouple`.
219+
> - When using the Prodigy optimizer for training, one can follow the recommendations from [this](https://huggingface.co/blog/sdxl_lora_advanced_script) blog. Prodigy tends to overfit quickly. From my very limited testing, I found a learning rate of `0.5` to be suitable in addition to `--prodigy_use_bias_correction`, `prodigy_safeguard_warmup` and `--prodigy_decouple`.
220220
> - The recommended learning rate by the CogVideoX authors and from our experimentation with Adam/AdamW is between `1e-3` and `1e-4` for a dataset of 25+ videos.
221221
>
222222
> Note that our testing is not exhaustive due to limited time for exploration. Our recommendation would be to play around with the different knobs and dials to find the best settings for your data.

docs/source/en/training/dreambooth.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -589,7 +589,7 @@ For stage 2 of DeepFloyd IF with DreamBooth, pay attention to these parameters:
589589

590590
* `--learning_rate=5e-6`, use a lower learning rate with a smaller effective batch size
591591
* `--resolution=256`, the expected resolution for the upscaler
592-
* `--train_batch_size=2` and `--gradient_accumulation_steps=6`, to effectively train on images wiht faces requires larger batch sizes
592+
* `--train_batch_size=2` and `--gradient_accumulation_steps=6`, to effectively train on images with faces requires larger batch sizes
593593

594594
```bash
595595
export MODEL_NAME="DeepFloyd/IF-II-L-v1.0"

docs/source/en/training/t2i_adapters.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ Many of the basic and important parameters are described in the [Text-to-image](
8989

9090
As with the script parameters, a walkthrough of the training script is provided in the [Text-to-image](text2image#training-script) training guide. Instead, this guide takes a look at the T2I-Adapter relevant parts of the script.
9191

92-
The training script begins by preparing the dataset. This incudes [tokenizing](https://github.com/huggingface/diffusers/blob/aab6de22c33cc01fb7bc81c0807d6109e2c998c9/examples/t2i_adapter/train_t2i_adapter_sdxl.py#L674) the prompt and [applying transforms](https://github.com/huggingface/diffusers/blob/aab6de22c33cc01fb7bc81c0807d6109e2c998c9/examples/t2i_adapter/train_t2i_adapter_sdxl.py#L714) to the images and conditioning images.
92+
The training script begins by preparing the dataset. This includes [tokenizing](https://github.com/huggingface/diffusers/blob/aab6de22c33cc01fb7bc81c0807d6109e2c998c9/examples/t2i_adapter/train_t2i_adapter_sdxl.py#L674) the prompt and [applying transforms](https://github.com/huggingface/diffusers/blob/aab6de22c33cc01fb7bc81c0807d6109e2c998c9/examples/t2i_adapter/train_t2i_adapter_sdxl.py#L714) to the images and conditioning images.
9393

9494
```py
9595
conditioning_image_transforms = transforms.Compose(

examples/advanced_diffusion_training/train_dreambooth_lora_flux_advanced.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -2181,7 +2181,7 @@ def get_sigmas(timesteps, n_dim=4, dtype=torch.float32):
21812181
# Predict the noise residual
21822182
model_pred = transformer(
21832183
hidden_states=packed_noisy_model_input,
2184-
# YiYi notes: divide it by 1000 for now because we scale it by 1000 in the transforme rmodel (we should not keep it but I want to keep the inputs same for the model for testing)
2184+
# YiYi notes: divide it by 1000 for now because we scale it by 1000 in the transformer model (we should not keep it but I want to keep the inputs same for the model for testing)
21852185
timestep=timesteps / 1000,
21862186
guidance=guidance,
21872187
pooled_projections=pooled_prompt_embeds,

examples/community/README.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -5381,7 +5381,7 @@ pipe = DiffusionPipeline.from_pretrained(
53815381
# Here we need use pipeline internal unet model
53825382
pipe.unet = pipe.unet_model.from_pretrained(model_id, subfolder="unet", variant="fp16", use_safetensors=True)
53835383

5384-
# Load aditional layers to the model
5384+
# Load additional layers to the model
53855385
pipe.unet.load_additional_layers(weight_path="proc_data/faithdiff/FaithDiff.bin", dtype=dtype)
53865386

53875387
# Enable vae tiling

examples/community/dps_pipeline.py

+3-3
Original file line numberDiff line numberDiff line change
@@ -312,9 +312,9 @@ def contributions(self, in_length, out_length, scale, kernel, kernel_width, anti
312312
# These are the coordinates of the output image
313313
out_coordinates = np.arange(1, out_length + 1)
314314

315-
# since both scale-factor and output size can be provided simulatneously, perserving the center of the image requires shifting
316-
# the output coordinates. the deviation is because out_length doesn't necesary equal in_length*scale.
317-
# to keep the center we need to subtract half of this deivation so that we get equal margins for boths sides and center is preserved.
315+
# since both scale-factor and output size can be provided simultaneously, preserving the center of the image requires shifting
316+
# the output coordinates. the deviation is because out_length doesn't necessary equal in_length*scale.
317+
# to keep the center we need to subtract half of this deviation so that we get equal margins for both sides and center is preserved.
318318
shifted_out_coordinates = out_coordinates - (out_length - in_length * scale) / 2
319319

320320
# These are the matching positions of the output-coordinates on the input image coordinates.

examples/community/fresco_v2v.py

+4-4
Original file line numberDiff line numberDiff line change
@@ -351,7 +351,7 @@ def forward(
351351
cross_attention_kwargs (`dict`, *optional*):
352352
A kwargs dictionary that if specified is passed along to the [`AttnProcessor`].
353353
added_cond_kwargs: (`dict`, *optional*):
354-
A kwargs dictionary containin additional embeddings that if specified are added to the embeddings that
354+
A kwargs dictionary containing additional embeddings that if specified are added to the embeddings that
355355
are passed along to the UNet blocks.
356356
357357
Returns:
@@ -864,9 +864,9 @@ def get_flow_and_interframe_paras(flow_model, imgs):
864864
class AttentionControl:
865865
"""
866866
Control FRESCO-based attention
867-
* enable/diable spatial-guided attention
868-
* enable/diable temporal-guided attention
869-
* enable/diable cross-frame attention
867+
* enable/disable spatial-guided attention
868+
* enable/disable temporal-guided attention
869+
* enable/disable cross-frame attention
870870
* collect intermediate attention feature (for spatial-guided attention)
871871
"""
872872

examples/community/hd_painter.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ def __call__(
3434
temb: Optional[torch.Tensor] = None,
3535
scale: float = 1.0,
3636
) -> torch.Tensor:
37-
# Same as the default AttnProcessor up untill the part where similarity matrix gets saved
37+
# Same as the default AttnProcessor up until the part where similarity matrix gets saved
3838
downscale_factor = self.mask_resoltuion // hidden_states.shape[1]
3939
residual = hidden_states
4040

examples/consistency_distillation/train_lcm_distill_lora_sd_wds.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -889,7 +889,7 @@ def main(args):
889889
mixed_precision=args.mixed_precision,
890890
log_with=args.report_to,
891891
project_config=accelerator_project_config,
892-
split_batches=True, # It's important to set this to True when using webdataset to get the right number of steps for lr scheduling. If set to False, the number of steps will be devide by the number of processes assuming batches are multiplied by the number of processes
892+
split_batches=True, # It's important to set this to True when using webdataset to get the right number of steps for lr scheduling. If set to False, the number of steps will be divided by the number of processes assuming batches are multiplied by the number of processes
893893
)
894894

895895
# Make one log on every process with the configuration for debugging.

examples/consistency_distillation/train_lcm_distill_lora_sdxl.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -721,7 +721,7 @@ def main(args):
721721
mixed_precision=args.mixed_precision,
722722
log_with=args.report_to,
723723
project_config=accelerator_project_config,
724-
split_batches=True, # It's important to set this to True when using webdataset to get the right number of steps for lr scheduling. If set to False, the number of steps will be devide by the number of processes assuming batches are multiplied by the number of processes
724+
split_batches=True, # It's important to set this to True when using webdataset to get the right number of steps for lr scheduling. If set to False, the number of steps will be divided by the number of processes assuming batches are multiplied by the number of processes
725725
)
726726

727727
# Make one log on every process with the configuration for debugging.

examples/consistency_distillation/train_lcm_distill_lora_sdxl_wds.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -884,7 +884,7 @@ def main(args):
884884
mixed_precision=args.mixed_precision,
885885
log_with=args.report_to,
886886
project_config=accelerator_project_config,
887-
split_batches=True, # It's important to set this to True when using webdataset to get the right number of steps for lr scheduling. If set to False, the number of steps will be devide by the number of processes assuming batches are multiplied by the number of processes
887+
split_batches=True, # It's important to set this to True when using webdataset to get the right number of steps for lr scheduling. If set to False, the number of steps will be divided by the number of processes assuming batches are multiplied by the number of processes
888888
)
889889

890890
# Make one log on every process with the configuration for debugging.

examples/consistency_distillation/train_lcm_distill_sd_wds.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -854,7 +854,7 @@ def main(args):
854854
mixed_precision=args.mixed_precision,
855855
log_with=args.report_to,
856856
project_config=accelerator_project_config,
857-
split_batches=True, # It's important to set this to True when using webdataset to get the right number of steps for lr scheduling. If set to False, the number of steps will be devide by the number of processes assuming batches are multiplied by the number of processes
857+
split_batches=True, # It's important to set this to True when using webdataset to get the right number of steps for lr scheduling. If set to False, the number of steps will be divided by the number of processes assuming batches are multiplied by the number of processes
858858
)
859859

860860
# Make one log on every process with the configuration for debugging.

examples/consistency_distillation/train_lcm_distill_sdxl_wds.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -894,7 +894,7 @@ def main(args):
894894
mixed_precision=args.mixed_precision,
895895
log_with=args.report_to,
896896
project_config=accelerator_project_config,
897-
split_batches=True, # It's important to set this to True when using webdataset to get the right number of steps for lr scheduling. If set to False, the number of steps will be devide by the number of processes assuming batches are multiplied by the number of processes
897+
split_batches=True, # It's important to set this to True when using webdataset to get the right number of steps for lr scheduling. If set to False, the number of steps will be divided by the number of processes assuming batches are multiplied by the number of processes
898898
)
899899

900900
# Make one log on every process with the configuration for debugging.

examples/dreambooth/train_dreambooth_flux.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -1634,7 +1634,7 @@ def get_sigmas(timesteps, n_dim=4, dtype=torch.float32):
16341634
# Predict the noise residual
16351635
model_pred = transformer(
16361636
hidden_states=packed_noisy_model_input,
1637-
# YiYi notes: divide it by 1000 for now because we scale it by 1000 in the transforme rmodel (we should not keep it but I want to keep the inputs same for the model for testing)
1637+
# YiYi notes: divide it by 1000 for now because we scale it by 1000 in the transformer model (we should not keep it but I want to keep the inputs same for the model for testing)
16381638
timestep=timesteps / 1000,
16391639
guidance=guidance,
16401640
pooled_projections=pooled_prompt_embeds,

examples/dreambooth/train_dreambooth_lora_flux.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -1749,7 +1749,7 @@ def get_sigmas(timesteps, n_dim=4, dtype=torch.float32):
17491749
# Predict the noise residual
17501750
model_pred = transformer(
17511751
hidden_states=packed_noisy_model_input,
1752-
# YiYi notes: divide it by 1000 for now because we scale it by 1000 in the transforme rmodel (we should not keep it but I want to keep the inputs same for the model for testing)
1752+
# YiYi notes: divide it by 1000 for now because we scale it by 1000 in the transformer model (we should not keep it but I want to keep the inputs same for the model for testing)
17531753
timestep=timesteps / 1000,
17541754
guidance=guidance,
17551755
pooled_projections=pooled_prompt_embeds,

examples/research_projects/flux_lora_quantization/train_dreambooth_lora_flux_miniature.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -1088,7 +1088,7 @@ def get_sigmas(timesteps, n_dim=4, dtype=torch.float32):
10881088
text_ids = batch["text_ids"].to(device=accelerator.device, dtype=weight_dtype)
10891089
model_pred = transformer(
10901090
hidden_states=packed_noisy_model_input,
1091-
# YiYi notes: divide it by 1000 for now because we scale it by 1000 in the transforme rmodel (we should not keep it but I want to keep the inputs same for the model for testing)
1091+
# YiYi notes: divide it by 1000 for now because we scale it by 1000 in the transformer model (we should not keep it but I want to keep the inputs same for the model for testing)
10921092
timestep=timesteps / 1000,
10931093
guidance=guidance,
10941094
pooled_projections=pooled_prompt_embeds,

src/diffusers/models/downsampling.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -286,7 +286,7 @@ def forward(self, inputs: torch.Tensor) -> torch.Tensor:
286286

287287

288288
class CogVideoXDownsample3D(nn.Module):
289-
# Todo: Wait for paper relase.
289+
# Todo: Wait for paper release.
290290
r"""
291291
A 3D Downsampling layer using in [CogVideoX]() by Tsinghua University & ZhipuAI
292292

src/diffusers/models/upsampling.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -358,7 +358,7 @@ def forward(self, inputs: torch.Tensor) -> torch.Tensor:
358358

359359
class CogVideoXUpsample3D(nn.Module):
360360
r"""
361-
A 3D Upsample layer using in CogVideoX by Tsinghua University & ZhipuAI # Todo: Wait for paper relase.
361+
A 3D Upsample layer using in CogVideoX by Tsinghua University & ZhipuAI # Todo: Wait for paper release.
362362
363363
Args:
364364
in_channels (`int`):

src/diffusers/pipelines/allegro/pipeline_allegro.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -514,7 +514,7 @@ def _clean_caption(self, caption):
514514
# &amp
515515
caption = re.sub(r"&amp", "", caption)
516516

517-
# ip adresses:
517+
# ip addresses:
518518
caption = re.sub(r"\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}", " ", caption)
519519

520520
# article ids:

src/diffusers/pipelines/deepfloyd_if/pipeline_if.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -484,7 +484,7 @@ def _clean_caption(self, caption):
484484
# &amp
485485
caption = re.sub(r"&amp", "", caption)
486486

487-
# ip adresses:
487+
# ip addresses:
488488
caption = re.sub(r"\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}", " ", caption)
489489

490490
# article ids:

src/diffusers/pipelines/deepfloyd_if/pipeline_if_img2img.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -528,7 +528,7 @@ def _clean_caption(self, caption):
528528
# &amp
529529
caption = re.sub(r"&amp", "", caption)
530530

531-
# ip adresses:
531+
# ip addresses:
532532
caption = re.sub(r"\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}", " ", caption)
533533

534534
# article ids:

src/diffusers/pipelines/deepfloyd_if/pipeline_if_img2img_superresolution.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -281,7 +281,7 @@ def _clean_caption(self, caption):
281281
# &amp
282282
caption = re.sub(r"&amp", "", caption)
283283

284-
# ip adresses:
284+
# ip addresses:
285285
caption = re.sub(r"\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}", " ", caption)
286286

287287
# article ids:

src/diffusers/pipelines/deepfloyd_if/pipeline_if_inpainting.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -568,7 +568,7 @@ def _clean_caption(self, caption):
568568
# &amp
569569
caption = re.sub(r"&amp", "", caption)
570570

571-
# ip adresses:
571+
# ip addresses:
572572
caption = re.sub(r"\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}", " ", caption)
573573

574574
# article ids:

src/diffusers/pipelines/deepfloyd_if/pipeline_if_inpainting_superresolution.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -283,7 +283,7 @@ def _clean_caption(self, caption):
283283
# &amp
284284
caption = re.sub(r"&amp", "", caption)
285285

286-
# ip adresses:
286+
# ip addresses:
287287
caption = re.sub(r"\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}", " ", caption)
288288

289289
# article ids:

src/diffusers/pipelines/deepfloyd_if/pipeline_if_superresolution.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -239,7 +239,7 @@ def _clean_caption(self, caption):
239239
# &amp
240240
caption = re.sub(r"&amp", "", caption)
241241

242-
# ip adresses:
242+
# ip addresses:
243243
caption = re.sub(r"\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}", " ", caption)
244244

245245
# article ids:

src/diffusers/pipelines/deprecated/stable_diffusion_variants/pipeline_stable_diffusion_model_editing.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -574,7 +574,7 @@ def edit_model(
574574
idxs_replace.append(76)
575575
idxs_replaces.append(idxs_replace)
576576

577-
# prepare batch: for each pair of setences, old context and new values
577+
# prepare batch: for each pair of sentences, old context and new values
578578
contexts, valuess = [], []
579579
for old_emb, new_emb, idxs_replace in zip(old_embs, new_embs, idxs_replaces):
580580
context = old_emb.detach()

src/diffusers/pipelines/latte/pipeline_latte.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -501,7 +501,7 @@ def _clean_caption(self, caption):
501501
# &amp
502502
caption = re.sub(r"&amp", "", caption)
503503

504-
# ip adresses:
504+
# ip addresses:
505505
caption = re.sub(r"\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}", " ", caption)
506506

507507
# article ids:

src/diffusers/pipelines/lumina/pipeline_lumina.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -534,7 +534,7 @@ def _clean_caption(self, caption):
534534
# &amp
535535
caption = re.sub(r"&amp", "", caption)
536536

537-
# ip adresses:
537+
# ip addresses:
538538
caption = re.sub(r"\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}", " ", caption)
539539

540540
# article ids:

src/diffusers/pipelines/pag/pipeline_pag_pixart_sigma.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -488,7 +488,7 @@ def _clean_caption(self, caption):
488488
# &amp
489489
caption = re.sub(r"&amp", "", caption)
490490

491-
# ip adresses:
491+
# ip addresses:
492492
caption = re.sub(r"\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}", " ", caption)
493493

494494
# article ids:

src/diffusers/pipelines/pag/pipeline_pag_sana.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -524,7 +524,7 @@ def _clean_caption(self, caption):
524524
# &amp
525525
caption = re.sub(r"&amp", "", caption)
526526

527-
# ip adresses:
527+
# ip addresses:
528528
caption = re.sub(r"\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}", " ", caption)
529529

530530
# article ids:

src/diffusers/pipelines/pixart_alpha/pipeline_pixart_alpha.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -598,7 +598,7 @@ def _clean_caption(self, caption):
598598
# &amp
599599
caption = re.sub(r"&amp", "", caption)
600600

601-
# ip adresses:
601+
# ip addresses:
602602
caption = re.sub(r"\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}", " ", caption)
603603

604604
# article ids:

src/diffusers/pipelines/pixart_alpha/pipeline_pixart_sigma.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -525,7 +525,7 @@ def _clean_caption(self, caption):
525525
# &amp
526526
caption = re.sub(r"&amp", "", caption)
527527

528-
# ip adresses:
528+
# ip addresses:
529529
caption = re.sub(r"\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}", " ", caption)
530530

531531
# article ids:

src/diffusers/pipelines/sana/pipeline_sana.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -600,7 +600,7 @@ def _clean_caption(self, caption):
600600
# &amp
601601
caption = re.sub(r"&amp", "", caption)
602602

603-
# ip adresses:
603+
# ip addresses:
604604
caption = re.sub(r"\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}", " ", caption)
605605

606606
# article ids:

src/diffusers/pipelines/sana/pipeline_sana_controlnet.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -615,7 +615,7 @@ def _clean_caption(self, caption):
615615
# &amp
616616
caption = re.sub(r"&amp", "", caption)
617617

618-
# ip adresses:
618+
# ip addresses:
619619
caption = re.sub(r"\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}", " ", caption)
620620

621621
# article ids:

src/diffusers/pipelines/sana/pipeline_sana_sprint.py

+1-1
Original file line numberDiff line numberDiff line change
@@ -491,7 +491,7 @@ def _clean_caption(self, caption):
491491
# &amp
492492
caption = re.sub(r"&amp", "", caption)
493493

494-
# ip adresses:
494+
# ip addresses:
495495
caption = re.sub(r"\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}", " ", caption)
496496

497497
# article ids:

0 commit comments

Comments
 (0)