optimum-rbln 0.8.1a6__tar.gz → 0.8.1rc0__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- optimum_rbln-0.8.1rc0/.github/scripts/validate_docstrings.py +161 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/.github/workflows/check_code_quality.yml +1 -13
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/.github/workflows/rbln_scheduled_test.yaml +8 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/.github/workflows/rbln_trigger_on_pr.yaml +15 -5
- optimum_rbln-0.8.1rc0/.github/workflows/test-docstrings.yml +137 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/PKG-INFO +1 -1
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/__version__.py +2 -2
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/configurations/pipelines/configuration_controlnet.py +0 -4
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/configurations/pipelines/configuration_kandinsky2_2.py +0 -2
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/configurations/pipelines/configuration_stable_diffusion.py +0 -4
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/configurations/pipelines/configuration_stable_diffusion_3.py +0 -4
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/configurations/pipelines/configuration_stable_diffusion_xl.py +0 -4
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/modeling_diffusers.py +16 -18
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/models/autoencoders/autoencoder_kl.py +6 -1
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/models/autoencoders/autoencoder_kl_cosmos.py +13 -3
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/models/autoencoders/vq_model.py +6 -1
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/pipelines/cosmos/cosmos_guardrail.py +70 -14
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/pipelines/cosmos/pipeline_cosmos_video2world.py +1 -1
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/modeling.py +38 -2
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/modeling_base.py +18 -2
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/modeling_generic.py +3 -3
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/bart/configuration_bart.py +12 -2
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/bart/modeling_bart.py +16 -7
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/bert/configuration_bert.py +18 -3
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/bert/modeling_bert.py +24 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/blip_2/configuration_blip_2.py +13 -1
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/blip_2/modeling_blip_2.py +15 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/clip/configuration_clip.py +12 -2
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/clip/modeling_clip.py +27 -1
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/decoderonly/modeling_decoderonly.py +22 -20
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/distilbert/configuration_distilbert.py +6 -1
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/distilbert/modeling_distilbert.py +8 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/dpt/configuration_dpt.py +6 -1
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/dpt/modeling_dpt.py +6 -1
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/gemma3/modeling_gemma3.py +5 -3
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/llava_next/configuration_llava_next.py +8 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/qwen2_5_vl/configuration_qwen2_5_vl.py +16 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/qwen2_5_vl/modeling_qwen2_5_vl.py +8 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/resnet/configuration_resnet.py +6 -1
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/resnet/modeling_resnet.py +5 -1
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/roberta/configuration_roberta.py +12 -2
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/roberta/modeling_roberta.py +16 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/seq2seq/modeling_seq2seq.py +6 -2
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/siglip/configuration_siglip.py +7 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/siglip/modeling_siglip.py +7 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/t5/configuration_t5.py +12 -2
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/time_series_transformer/configuration_time_series_transformer.py +7 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/time_series_transformer/modeling_time_series_transformer.py +6 -2
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/vit/configuration_vit.py +6 -1
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/vit/modeling_vit.py +7 -1
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/wav2vec2/configuration_wav2vec2.py +7 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/whisper/configuration_whisper.py +7 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/whisper/modeling_whisper.py +6 -2
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/utils/runtime_utils.py +46 -1
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/tests/test_config.py +3 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/tests/test_transformers.py +11 -1
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/.github/ISSUE_TEMPLATE/bug_report.md +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/.github/ISSUE_TEMPLATE/config.yml +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/.github/ISSUE_TEMPLATE/feature_request.md +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/.github/ISSUE_TEMPLATE/model_request.md +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/.github/pull_request_template.md +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/.github/scripts/auto_code_review.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/.github/scripts/validate_pr_checklist.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/.github/version.yaml +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/.github/workflows/auto_code_review.yml +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/.github/workflows/deploy-on-tag.yaml +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/.github/workflows/deploy.yaml +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/.github/workflows/pr-title-check.yaml +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/.github/workflows/pr_checklist_validator.yml +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/.github/workflows/rbln_check_compiler.yaml +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/.github/workflows/rbln_dispatch_pytest.yaml +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/.github/workflows/rbln_optimum_inference_test.yaml +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/.github/workflows/rbln_optimum_pytest.yaml +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/.gitignore +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/CODE_OF_CONDUCT.md +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/CONTRIBUTING.md +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/LICENSE +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/README.md +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/assets/rbln_logo.png +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/examples/advanced/custom_class.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/examples/audio-classification/run_ast_audio_classification.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/examples/cosmos/run_cosmos_text2world.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/examples/depth-estimation/run_dpt.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/examples/image-classification/run_image_classification.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/examples/image-classification/run_vit_image_classification.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/examples/image-to-text/run_idefics3.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/examples/image-to-text/run_llava_next_image_to_text.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/examples/kandinsky2_2/run_kandinsky2_2.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/examples/kandinsky2_2/run_kandinsky2_2_combined.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/examples/kandinsky2_2/run_kandinsky2_2_img2img.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/examples/kandinsky2_2/run_kandinsky2_2_img2img_combined.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/examples/kandinsky2_2/run_kandinsky2_2_inpaint.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/examples/kandinsky2_2/run_kandinsky2_2_inpaint_combined.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/examples/kandinsky2_2/run_kandinsky2_2_prior_interpolate.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/examples/question-answering/run_question_answering.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/examples/speech-recognition/run_wav2vec2.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/examples/speech-recognition/run_whisper.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/examples/stable-diffusion/run_stable_diffusion.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/examples/stable-diffusion/run_stable_diffusion_controlnet.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/examples/stable-diffusion/run_stable_diffusion_img2img.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/examples/stable-diffusion/run_stable_diffusion_img2img_controlnet.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/examples/stable-diffusion/run_stable_diffusion_inpaint.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/examples/stable-diffusion/run_stable_diffusion_lora.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/examples/stable-diffusion/run_stable_diffusion_multicontrolnet.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/examples/text-classification/run_bge_m3_text_classification.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/examples/text-classification/run_bge_reranker_v2_m3_text_classification.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/examples/text-classification/run_secureBERT.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/examples/text-classification/run_t5_classification.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/examples/text-classification/run_twitter_roberta_text_classification.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/examples/text2text-generation/run_bart_text2text_generation.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/examples/text2text-generation/run_llama_peft.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/examples/text2text-generation/run_llama_text2text_generation.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/examples/time-series-forecasting/run_time_series_forecasting.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/pyproject.toml +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/scripts/uv-lock.sh +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/scripts/uv-sync.sh +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/configuration_utils.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/configurations/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/configurations/models/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/configurations/models/configuration_autoencoder_kl.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/configurations/models/configuration_autoencoder_kl_cosmos.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/configurations/models/configuration_controlnet.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/configurations/models/configuration_cosmos_transformer.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/configurations/models/configuration_prior_transformer.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/configurations/models/configuration_transformer_sd3.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/configurations/models/configuration_unet_2d_condition.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/configurations/models/configuration_vq_model.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/configurations/pipelines/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/configurations/pipelines/configuration_cosmos.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/models/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/models/autoencoders/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/models/autoencoders/vae.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/models/controlnet.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/models/transformers/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/models/transformers/prior_transformer.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/models/transformers/transformer_cosmos.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/models/transformers/transformer_sd3.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/models/unets/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/models/unets/unet_2d_condition.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/pipelines/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/pipelines/controlnet/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/pipelines/controlnet/multicontrolnet.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/pipelines/controlnet/pipeline_controlnet.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/pipelines/controlnet/pipeline_controlnet_img2img.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/pipelines/controlnet/pipeline_controlnet_sd_xl.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/pipelines/controlnet/pipeline_controlnet_sd_xl_img2img.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/pipelines/cosmos/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/pipelines/cosmos/configuration_cosmos_guardrail.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/pipelines/cosmos/pipeline_cosmos_text2world.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/pipelines/kandinsky2_2/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/pipelines/kandinsky2_2/pipeline_kandinsky2_2.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/pipelines/kandinsky2_2/pipeline_kandinsky2_2_combined.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/pipelines/kandinsky2_2/pipeline_kandinsky2_2_img2img.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/pipelines/kandinsky2_2/pipeline_kandinsky2_2_inpaint.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/pipelines/kandinsky2_2/pipeline_kandinsky2_2_prior.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/pipelines/stable_diffusion/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/pipelines/stable_diffusion/pipeline_stable_diffusion.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/pipelines/stable_diffusion/pipeline_stable_diffusion_img2img.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/pipelines/stable_diffusion/pipeline_stable_diffusion_inpaint.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/pipelines/stable_diffusion_3/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/pipelines/stable_diffusion_3/pipeline_stable_diffusion_3.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/pipelines/stable_diffusion_3/pipeline_stable_diffusion_3_img2img.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/pipelines/stable_diffusion_3/pipeline_stable_diffusion_3_inpaint.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/pipelines/stable_diffusion_xl/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/pipelines/stable_diffusion_xl/pipeline_stable_diffusion_xl.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/pipelines/stable_diffusion_xl/pipeline_stable_diffusion_xl_img2img.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/pipelines/stable_diffusion_xl/pipeline_stable_diffusion_xl_inpaint.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/ops/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/ops/attn.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/ops/flash_attn.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/ops/kv_cache_update.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/ops/linear.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/ops/sliding_window_attn.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/configuration_generic.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/modeling_rope_utils.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/audio_spectrogram_transformer/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/audio_spectrogram_transformer/configuration_audio_spectrogram_transformer.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/audio_spectrogram_transformer/modeling_audio_spectrogram_transformer.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/auto/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/auto/auto_factory.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/auto/modeling_auto.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/bart/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/bart/bart_architecture.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/bert/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/blip_2/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/clip/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/colpali/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/colpali/colpali_architecture.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/colpali/configuration_colpali.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/colpali/modeling_colpali.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/decoderonly/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/decoderonly/configuration_decoderonly.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/decoderonly/decoderonly_architecture.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/distilbert/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/dpt/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/exaone/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/exaone/configuration_exaone.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/exaone/exaone_architecture.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/exaone/modeling_exaone.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/gemma/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/gemma/configuration_gemma.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/gemma/gemma_architecture.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/gemma/modeling_gemma.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/gemma3/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/gemma3/configuration_gemma3.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/gemma3/gemma3_architecture.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/gpt2/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/gpt2/configuration_gpt2.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/gpt2/gpt2_architecture.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/gpt2/modeling_gpt2.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/idefics3/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/idefics3/configuration_idefics3.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/idefics3/modeling_idefics3.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/llama/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/llama/configuration_llama.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/llama/llama_architecture.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/llama/modeling_llama.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/llava_next/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/llava_next/modeling_llava_next.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/midm/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/midm/configuration_midm.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/midm/midm_architecture.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/midm/modeling_midm.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/mistral/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/mistral/configuration_mistral.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/mistral/mistral_architecture.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/mistral/modeling_mistral.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/opt/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/opt/configuration_opt.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/opt/modeling_opt.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/opt/opt_architecture.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/phi/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/phi/configuration_phi.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/phi/modeling_phi.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/phi/phi_architecture.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/qwen2/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/qwen2/configuration_qwen2.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/qwen2/modeling_qwen2.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/qwen2/qwen2_architecture.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/qwen2_5_vl/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/qwen2_5_vl/qwen2_5_vl_architecture.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/resnet/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/roberta/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/seq2seq/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/seq2seq/configuration_seq2seq.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/seq2seq/seq2seq_architecture.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/siglip/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/t5/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/t5/modeling_t5.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/t5/t5_architecture.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/time_series_transformer/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/time_series_transformer/time_series_transformers_architecture.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/vit/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/wav2vec2/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/wav2vec2/modeling_wav2vec2.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/whisper/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/whisper/generation_whisper.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/whisper/whisper_architecture.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/xlm_roberta/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/xlm_roberta/configuration_xlm_roberta.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/models/xlm_roberta/modeling_xlm_roberta.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/utils/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/transformers/utils/rbln_quantization.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/utils/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/utils/decorator_utils.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/utils/hub.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/utils/import_utils.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/utils/logging.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/utils/model_utils.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/utils/save_utils.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/utils/submodule.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/tests/__init__.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/tests/psnr.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/tests/requirements_sdxl.txt +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/tests/run_stable_diffusion_xl_base.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/tests/test_base.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/tests/test_diffusers.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/tests/test_llm.py +0 -0
- {optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/uv.lock +0 -0
@@ -0,0 +1,161 @@
|
|
1
|
+
#!/usr/bin/env python3
|
2
|
+
"""
|
3
|
+
Simple and reliable docstring validator for CI/CD.
|
4
|
+
Focuses on catching issues that would break mkdocstrings parsing.
|
5
|
+
"""
|
6
|
+
|
7
|
+
import subprocess
|
8
|
+
import sys
|
9
|
+
import tempfile
|
10
|
+
from pathlib import Path
|
11
|
+
|
12
|
+
|
13
|
+
def infer_module_name(file_path: Path) -> str:
|
14
|
+
"""
|
15
|
+
Infer module name from file path.
|
16
|
+
|
17
|
+
Example:
|
18
|
+
src/optimum/rbln/transformers/models/decoderonly/modeling_decoderonly.py
|
19
|
+
-> optimum.rbln.transformers.models.decoderonly.modeling_decoderonly
|
20
|
+
"""
|
21
|
+
if not any(keyword in file_path.name for keyword in ["configuration", "modeling"]):
|
22
|
+
return None
|
23
|
+
|
24
|
+
parts = file_path.parts
|
25
|
+
|
26
|
+
# Find 'src' directory index
|
27
|
+
try:
|
28
|
+
src_index = parts.index("src")
|
29
|
+
except ValueError:
|
30
|
+
# If no 'src' directory found, try common patterns
|
31
|
+
for common_src in ["lib", "package", file_path.parts[0]]:
|
32
|
+
if common_src in parts:
|
33
|
+
src_index = parts.index(common_src)
|
34
|
+
break
|
35
|
+
else:
|
36
|
+
# Fallback: use the first directory
|
37
|
+
src_index = 0
|
38
|
+
|
39
|
+
# Extract module path parts (everything after src, excluding .py)
|
40
|
+
module_parts = parts[src_index + 1 :]
|
41
|
+
|
42
|
+
# Remove .py extension from the last part
|
43
|
+
if module_parts and module_parts[-1].endswith(".py"):
|
44
|
+
module_parts = module_parts[:-1] + (module_parts[-1][:-3],)
|
45
|
+
|
46
|
+
# Join with dots
|
47
|
+
module_name = ".".join(module_parts)
|
48
|
+
return module_name
|
49
|
+
|
50
|
+
|
51
|
+
def test_mkdocstrings_parsing(file_path: Path, module_name: str = None) -> bool:
|
52
|
+
"""Test if mkdocstrings can parse the module documentation."""
|
53
|
+
try:
|
54
|
+
if module_name:
|
55
|
+
# Test with specific module name
|
56
|
+
test_content = f"""# Test Documentation
|
57
|
+
|
58
|
+
:::{module_name}
|
59
|
+
options:
|
60
|
+
show_source: false
|
61
|
+
filters: ["!^_"]
|
62
|
+
"""
|
63
|
+
else:
|
64
|
+
# Auto-infer module name from file path
|
65
|
+
inferred_module = infer_module_name(file_path)
|
66
|
+
if inferred_module is None:
|
67
|
+
print(
|
68
|
+
"⚠️ No module name provided, and the file is not a configuration or modeling file, skipping mkdocstrings test"
|
69
|
+
)
|
70
|
+
return True
|
71
|
+
print(f"ℹ️ Auto-inferred module name: {inferred_module}")
|
72
|
+
test_content = f"""# Test Documentation
|
73
|
+
|
74
|
+
:::{inferred_module}
|
75
|
+
options:
|
76
|
+
show_source: false
|
77
|
+
filters: ["!^_"]
|
78
|
+
"""
|
79
|
+
module_name = inferred_module
|
80
|
+
|
81
|
+
config = f"""site_name: Test
|
82
|
+
plugins:
|
83
|
+
- mkdocstrings:
|
84
|
+
handlers:
|
85
|
+
python:
|
86
|
+
paths: ["{Path(__file__).parent.parent.parent / "src"}"]
|
87
|
+
options:
|
88
|
+
show_source: false
|
89
|
+
filters: ["!^_"]
|
90
|
+
"""
|
91
|
+
|
92
|
+
with tempfile.TemporaryDirectory() as tmp_dir:
|
93
|
+
tmp_path = Path(tmp_dir)
|
94
|
+
(tmp_path / "mkdocs.yml").write_text(config)
|
95
|
+
docs_dir = tmp_path / "docs"
|
96
|
+
docs_dir.mkdir()
|
97
|
+
(docs_dir / "index.md").write_text(test_content)
|
98
|
+
|
99
|
+
result = subprocess.run(
|
100
|
+
["mkdocs", "build", "--strict"], cwd=tmp_path, capture_output=True, text=True, timeout=10
|
101
|
+
)
|
102
|
+
|
103
|
+
if result.returncode != 0:
|
104
|
+
print(f"❌ mkdocstrings parsing failed for {file_path}:")
|
105
|
+
print(f" Module: {module_name}")
|
106
|
+
# Show relevant errors and warnings
|
107
|
+
lines = result.stderr.split("\n")
|
108
|
+
relevant = [
|
109
|
+
l for l in lines if any(keyword in l for keyword in ["griffe", "WARNING", "ERROR", "CRITICAL"])
|
110
|
+
]
|
111
|
+
for line in relevant[:5]: # Show first 5 relevant lines
|
112
|
+
if line.strip():
|
113
|
+
print(f" {line.strip()}")
|
114
|
+
return False
|
115
|
+
|
116
|
+
return True
|
117
|
+
|
118
|
+
except subprocess.TimeoutExpired:
|
119
|
+
print(f"⚠️ Timeout testing {file_path} (non-fatal)")
|
120
|
+
return True # Don't fail on timeout
|
121
|
+
except Exception as e:
|
122
|
+
print(f"⚠️ Could not test mkdocstrings for {file_path}: {e} (non-fatal)")
|
123
|
+
return True # Don't fail on test errors
|
124
|
+
|
125
|
+
|
126
|
+
def main():
|
127
|
+
"""Main entry point."""
|
128
|
+
if len(sys.argv) < 2:
|
129
|
+
print("Usage: python validate_docstrings.py <python_file> [module_name]")
|
130
|
+
print()
|
131
|
+
print("Examples:")
|
132
|
+
print(" python validate_docstrings.py src/my_module.py")
|
133
|
+
print(" python validate_docstrings.py src/my_module.py my.module.name")
|
134
|
+
print()
|
135
|
+
print("Note: If module_name is not provided, it will be auto-inferred from file path")
|
136
|
+
sys.exit(1)
|
137
|
+
|
138
|
+
file_path = Path(sys.argv[1])
|
139
|
+
module_name = sys.argv[2] if len(sys.argv) > 2 else None
|
140
|
+
|
141
|
+
if not file_path.exists():
|
142
|
+
print(f"❌ File not found: {file_path}")
|
143
|
+
sys.exit(1)
|
144
|
+
|
145
|
+
print(f"🔍 Testing mkdocstrings parsing: {file_path}")
|
146
|
+
if module_name:
|
147
|
+
print(f"📦 Module: {module_name}")
|
148
|
+
|
149
|
+
# Test mkdocstrings compatibility
|
150
|
+
mkdocs_ok = test_mkdocstrings_parsing(file_path, module_name)
|
151
|
+
|
152
|
+
if mkdocs_ok:
|
153
|
+
print("✅ mkdocstrings parsing test passed!")
|
154
|
+
sys.exit(0)
|
155
|
+
else:
|
156
|
+
print("❌ mkdocstrings parsing test failed!")
|
157
|
+
sys.exit(1)
|
158
|
+
|
159
|
+
|
160
|
+
if __name__ == "__main__":
|
161
|
+
main()
|
@@ -1,19 +1,7 @@
|
|
1
1
|
name: check_code_quality
|
2
2
|
|
3
3
|
on:
|
4
|
-
|
5
|
-
branches: [main]
|
6
|
-
paths:
|
7
|
-
- "src/**/*.py"
|
8
|
-
- "tests/**/*.py"
|
9
|
-
- "examples/**/*.py"
|
10
|
-
|
11
|
-
pull_request:
|
12
|
-
branches: [main]
|
13
|
-
paths:
|
14
|
-
- "src/**/*.py"
|
15
|
-
- "tests/**/*.py"
|
16
|
-
- "examples/**/*.py"
|
4
|
+
workflow_call:
|
17
5
|
|
18
6
|
concurrency:
|
19
7
|
group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
|
@@ -10,6 +10,14 @@ env:
|
|
10
10
|
HF_AUTH_TOKEN: ${{ secrets.HF_AUTH_TOKEN }}
|
11
11
|
|
12
12
|
jobs:
|
13
|
+
check-code-quality:
|
14
|
+
uses: ./.github/workflows/check_code_quality.yml
|
15
|
+
|
16
|
+
test-docstrings:
|
17
|
+
uses: ./.github/workflows/test-docstrings.yml
|
18
|
+
with:
|
19
|
+
test_all_files: true
|
20
|
+
|
13
21
|
load-version:
|
14
22
|
runs-on: rebel-k8s-runner
|
15
23
|
outputs:
|
@@ -24,9 +24,19 @@ jobs:
|
|
24
24
|
echo "No [skip ci] found, continuing with CI"
|
25
25
|
fi
|
26
26
|
|
27
|
+
check-code-quality:
|
28
|
+
needs: check-skip-ci
|
29
|
+
if: ${{ needs.check-skip-ci.outputs.should_skip != 'true' }}
|
30
|
+
uses: ./.github/workflows/check_code_quality.yml
|
31
|
+
|
32
|
+
test-docstrings:
|
33
|
+
needs: check-skip-ci
|
34
|
+
if: ${{ needs.check-skip-ci.outputs.should_skip != 'true' }}
|
35
|
+
uses: ./.github/workflows/test-docstrings.yml
|
36
|
+
|
27
37
|
load-version:
|
28
38
|
runs-on: rebel-k8s-runner
|
29
|
-
needs: check-skip-ci
|
39
|
+
needs: [check-skip-ci, check-code-quality, test-docstrings]
|
30
40
|
if: ${{ needs.check-skip-ci.outputs.should_skip != 'true' }}
|
31
41
|
outputs:
|
32
42
|
compiler_version: ${{ steps.get_version.outputs.compiler_version }}
|
@@ -41,7 +51,7 @@ jobs:
|
|
41
51
|
echo "compiler_version=$VERSION" >> $GITHUB_OUTPUT
|
42
52
|
|
43
53
|
check-compiler:
|
44
|
-
needs: [check-skip-ci, load-version]
|
54
|
+
needs: [check-skip-ci, check-code-quality, test-docstrings, load-version]
|
45
55
|
if: ${{ needs.check-skip-ci.outputs.should_skip != 'true' }}
|
46
56
|
uses: ./.github/workflows/rbln_check_compiler.yaml
|
47
57
|
with:
|
@@ -50,7 +60,7 @@ jobs:
|
|
50
60
|
|
51
61
|
check-team-member:
|
52
62
|
runs-on: rebel-k8s-runner
|
53
|
-
needs: [check-skip-ci, check-compiler]
|
63
|
+
needs: [check-skip-ci, check-code-quality, test-docstrings, check-compiler]
|
54
64
|
if: ${{ needs.check-skip-ci.outputs.should_skip != 'true' && needs.check-compiler.outputs.is_deploy_version == 'true' }}
|
55
65
|
outputs:
|
56
66
|
is_team_member: ${{ steps.check_member.outputs.IS_TEAM_MEMBER }}
|
@@ -75,7 +85,7 @@ jobs:
|
|
75
85
|
fi
|
76
86
|
|
77
87
|
optimum-rbln-pytest:
|
78
|
-
needs: [check-skip-ci, check-compiler, check-team-member]
|
88
|
+
needs: [check-skip-ci, check-code-quality, test-docstrings, check-compiler, check-team-member]
|
79
89
|
if: ${{ needs.check-skip-ci.outputs.should_skip != 'true' && needs.check-team-member.outputs.is_team_member == 'true' }}
|
80
90
|
uses: ./.github/workflows/rbln_optimum_pytest.yaml
|
81
91
|
with:
|
@@ -85,7 +95,7 @@ jobs:
|
|
85
95
|
secrets: inherit
|
86
96
|
|
87
97
|
optimum-rbln-inference-test:
|
88
|
-
needs: [check-skip-ci, check-compiler, check-team-member]
|
98
|
+
needs: [check-skip-ci, check-code-quality, test-docstrings, check-compiler, check-team-member]
|
89
99
|
if: ${{ needs.check-skip-ci.outputs.should_skip != 'true' && needs.check-team-member.outputs.is_team_member == 'true' }}
|
90
100
|
uses: ./.github/workflows/rbln_optimum_inference_test.yaml
|
91
101
|
with:
|
@@ -0,0 +1,137 @@
|
|
1
|
+
name: Test Docstring Parsing
|
2
|
+
|
3
|
+
on:
|
4
|
+
workflow_call:
|
5
|
+
inputs:
|
6
|
+
test_all_files:
|
7
|
+
description: "Test all files in src/ instead of just changed files"
|
8
|
+
required: false
|
9
|
+
type: boolean
|
10
|
+
default: false
|
11
|
+
|
12
|
+
jobs:
|
13
|
+
test-docstrings:
|
14
|
+
runs-on: ubuntu-latest-rbln
|
15
|
+
|
16
|
+
steps:
|
17
|
+
- uses: actions/checkout@v4
|
18
|
+
with:
|
19
|
+
fetch-depth: 0 # Get full git history for file diff
|
20
|
+
|
21
|
+
- name: Set up Python
|
22
|
+
uses: actions/setup-python@v4
|
23
|
+
with:
|
24
|
+
python-version: '3.9'
|
25
|
+
|
26
|
+
- name: Install dependencies
|
27
|
+
run: |
|
28
|
+
pip install mkdocs mkdocs-material mkdocstrings mkdocstrings-python
|
29
|
+
|
30
|
+
- name: Get Python files to test
|
31
|
+
id: changed-files
|
32
|
+
run: |
|
33
|
+
if [ "${{ inputs.test_all_files }}" = "true" ]; then
|
34
|
+
# For scheduled test, get all Python files in src/
|
35
|
+
ALL_FILES=$(find src/ -name '*.py' -type f || true)
|
36
|
+
echo "Testing all Python files in src/:"
|
37
|
+
echo "$ALL_FILES"
|
38
|
+
|
39
|
+
if [ -n "$ALL_FILES" ]; then
|
40
|
+
FILES_JSON=$(echo "$ALL_FILES" | jq -R -s -c 'split("\n")[:-1]')
|
41
|
+
echo "files=$FILES_JSON" >> $GITHUB_OUTPUT
|
42
|
+
echo "has_changes=true" >> $GITHUB_OUTPUT
|
43
|
+
else
|
44
|
+
echo "has_changes=false" >> $GITHUB_OUTPUT
|
45
|
+
fi
|
46
|
+
else
|
47
|
+
# For PR, compare with base branch
|
48
|
+
if [ "${{ github.event_name }}" = "pull_request" ]; then
|
49
|
+
CHANGED_FILES=$(git diff --name-only origin/${{ github.base_ref }}...HEAD | grep '\.py$' | grep 'src/' || true)
|
50
|
+
else
|
51
|
+
# For push, compare with previous commit
|
52
|
+
CHANGED_FILES=$(git diff --name-only HEAD~1 HEAD | grep '\.py$' | grep 'src/' || true)
|
53
|
+
fi
|
54
|
+
|
55
|
+
echo "Changed Python files:"
|
56
|
+
echo "$CHANGED_FILES"
|
57
|
+
|
58
|
+
# Convert to JSON array for matrix
|
59
|
+
if [ -n "$CHANGED_FILES" ]; then
|
60
|
+
FILES_JSON=$(echo "$CHANGED_FILES" | jq -R -s -c 'split("\n")[:-1]')
|
61
|
+
echo "files=$FILES_JSON" >> $GITHUB_OUTPUT
|
62
|
+
echo "has_changes=true" >> $GITHUB_OUTPUT
|
63
|
+
else
|
64
|
+
echo "has_changes=false" >> $GITHUB_OUTPUT
|
65
|
+
fi
|
66
|
+
fi
|
67
|
+
|
68
|
+
- name: Test docstring parsing
|
69
|
+
if: steps.changed-files.outputs.has_changes == 'true'
|
70
|
+
run: |
|
71
|
+
FILES='${{ steps.changed-files.outputs.files }}'
|
72
|
+
|
73
|
+
# Exclude files (hardcoded)
|
74
|
+
EXCLUDE_FILES=(
|
75
|
+
"src/optimum/rbln/transformers/models/llava_next/modeling_llava_next.py"
|
76
|
+
"src/optimum/rbln/transformers/models/t5/modeling_t5.py"
|
77
|
+
)
|
78
|
+
|
79
|
+
# Filter out excluded files
|
80
|
+
FILTERED_FILES=""
|
81
|
+
echo "$FILES" | jq -r '.[]' | while read -r file; do
|
82
|
+
should_exclude=false
|
83
|
+
for exclude_file in "${EXCLUDE_FILES[@]}"; do
|
84
|
+
if [[ "$file" == "$exclude_file" ]]; then
|
85
|
+
echo "⏭️ Skipping excluded file: $file"
|
86
|
+
should_exclude=true
|
87
|
+
break
|
88
|
+
fi
|
89
|
+
done
|
90
|
+
|
91
|
+
if [[ "$should_exclude" == "false" ]]; then
|
92
|
+
echo "$file" >> /tmp/filtered_files.txt
|
93
|
+
fi
|
94
|
+
done
|
95
|
+
|
96
|
+
# Check if we have files to process
|
97
|
+
if [[ ! -f /tmp/filtered_files.txt ]] || [[ ! -s /tmp/filtered_files.txt ]]; then
|
98
|
+
echo "No files to process after excluding files"
|
99
|
+
exit 0
|
100
|
+
fi
|
101
|
+
|
102
|
+
TOTAL_FILES=$(wc -l < /tmp/filtered_files.txt)
|
103
|
+
echo "Processing $TOTAL_FILES files with 16 parallel processes..."
|
104
|
+
|
105
|
+
# Function to validate a single file
|
106
|
+
validate_file() {
|
107
|
+
local file=$1
|
108
|
+
echo "Testing: $file"
|
109
|
+
python .github/scripts/validate_docstrings.py "$file"
|
110
|
+
if [ $? -ne 0 ]; then
|
111
|
+
echo "❌ Docstring test failed for $file"
|
112
|
+
return 1
|
113
|
+
fi
|
114
|
+
echo "✅ Docstring test passed for $file"
|
115
|
+
return 0
|
116
|
+
}
|
117
|
+
|
118
|
+
# Export function for use with xargs
|
119
|
+
export -f validate_file
|
120
|
+
|
121
|
+
# Process files in parallel with 16 processes
|
122
|
+
cat /tmp/filtered_files.txt | xargs -I {} -P 16 -n 1 bash -c 'validate_file "$@"' _ {}
|
123
|
+
|
124
|
+
# Check if any process failed
|
125
|
+
if [ $? -ne 0 ]; then
|
126
|
+
echo "❌ Some docstring tests failed"
|
127
|
+
exit 1
|
128
|
+
fi
|
129
|
+
|
130
|
+
echo "🎉 All docstring tests passed!"
|
131
|
+
|
132
|
+
# Clean up
|
133
|
+
rm -f /tmp/filtered_files.txt
|
134
|
+
|
135
|
+
- name: No changes detected
|
136
|
+
if: steps.changed-files.outputs.has_changes == 'false'
|
137
|
+
run: echo "No Python files to test"
|
@@ -1,6 +1,6 @@
|
|
1
1
|
Metadata-Version: 2.4
|
2
2
|
Name: optimum-rbln
|
3
|
-
Version: 0.8.
|
3
|
+
Version: 0.8.1rc0
|
4
4
|
Summary: Optimum RBLN is the interface between the HuggingFace Transformers and Diffusers libraries and RBLN accelerators. It provides a set of tools enabling easy model loading and inference on single and multiple rbln device settings for different downstream tasks.
|
5
5
|
Project-URL: Homepage, https://rebellions.ai
|
6
6
|
Project-URL: Documentation, https://docs.rbln.ai
|
@@ -17,5 +17,5 @@ __version__: str
|
|
17
17
|
__version_tuple__: VERSION_TUPLE
|
18
18
|
version_tuple: VERSION_TUPLE
|
19
19
|
|
20
|
-
__version__ = version = '0.8.
|
21
|
-
__version_tuple__ = version_tuple = (0, 8, 1, '
|
20
|
+
__version__ = version = '0.8.1rc0'
|
21
|
+
__version_tuple__ = version_tuple = (0, 8, 1, 'rc0')
|
@@ -20,10 +20,6 @@ from ..models import RBLNAutoencoderKLConfig, RBLNControlNetModelConfig, RBLNUNe
|
|
20
20
|
|
21
21
|
|
22
22
|
class RBLNStableDiffusionControlNetPipelineBaseConfig(RBLNModelConfig):
|
23
|
-
"""
|
24
|
-
Base configuration for Stable Diffusion ControlNet pipelines.
|
25
|
-
"""
|
26
|
-
|
27
23
|
submodules = ["text_encoder", "unet", "vae", "controlnet"]
|
28
24
|
_vae_uses_encoder = False
|
29
25
|
|
@@ -21,8 +21,6 @@ from ..models.configuration_prior_transformer import RBLNPriorTransformerConfig
|
|
21
21
|
|
22
22
|
|
23
23
|
class RBLNKandinskyV22PipelineBaseConfig(RBLNModelConfig):
|
24
|
-
"""Base configuration class for Kandinsky V2.2 decoder pipelines."""
|
25
|
-
|
26
24
|
submodules = ["unet", "movq"]
|
27
25
|
_movq_uses_encoder = False
|
28
26
|
|
@@ -20,10 +20,6 @@ from ..models import RBLNAutoencoderKLConfig, RBLNUNet2DConditionModelConfig
|
|
20
20
|
|
21
21
|
|
22
22
|
class RBLNStableDiffusionPipelineBaseConfig(RBLNModelConfig):
|
23
|
-
"""
|
24
|
-
Base configuration for Stable Diffusion pipelines.
|
25
|
-
"""
|
26
|
-
|
27
23
|
submodules = ["text_encoder", "unet", "vae"]
|
28
24
|
_vae_uses_encoder = False
|
29
25
|
|
@@ -20,10 +20,6 @@ from ..models import RBLNAutoencoderKLConfig, RBLNSD3Transformer2DModelConfig
|
|
20
20
|
|
21
21
|
|
22
22
|
class RBLNStableDiffusion3PipelineBaseConfig(RBLNModelConfig):
|
23
|
-
"""
|
24
|
-
Base configuration for Stable Diffusion 3 pipelines.
|
25
|
-
"""
|
26
|
-
|
27
23
|
submodules = ["transformer", "text_encoder", "text_encoder_2", "text_encoder_3", "vae"]
|
28
24
|
_vae_uses_encoder = False
|
29
25
|
|
@@ -20,10 +20,6 @@ from ..models import RBLNAutoencoderKLConfig, RBLNUNet2DConditionModelConfig
|
|
20
20
|
|
21
21
|
|
22
22
|
class RBLNStableDiffusionXLPipelineBaseConfig(RBLNModelConfig):
|
23
|
-
"""
|
24
|
-
Base configuration for Stable Diffusion XL pipelines.
|
25
|
-
"""
|
26
|
-
|
27
23
|
submodules = ["text_encoder", "text_encoder_2", "unet", "vae"]
|
28
24
|
_vae_uses_encoder = False
|
29
25
|
|
{optimum_rbln-0.8.1a6 → optimum_rbln-0.8.1rc0}/src/optimum/rbln/diffusers/modeling_diffusers.py
RENAMED
@@ -412,24 +412,22 @@ class RBLNDiffusionMixin:
|
|
412
412
|
return compiled_image_size
|
413
413
|
|
414
414
|
def handle_additional_kwargs(self, **kwargs):
|
415
|
-
|
416
|
-
|
417
|
-
|
418
|
-
|
419
|
-
|
420
|
-
|
421
|
-
|
422
|
-
|
423
|
-
|
424
|
-
|
425
|
-
|
426
|
-
|
427
|
-
|
428
|
-
|
429
|
-
|
430
|
-
|
431
|
-
```
|
432
|
-
"""
|
415
|
+
# Function to handle additional compile-time parameters during inference.
|
416
|
+
|
417
|
+
# If the additional variable is determined by another module, this method should be overrided.
|
418
|
+
|
419
|
+
# Example:
|
420
|
+
# ```python
|
421
|
+
# if hasattr(self, "movq"):
|
422
|
+
# compiled_image_size = self.movq.image_size
|
423
|
+
# kwargs["height"] = compiled_image_size[0]
|
424
|
+
# kwargs["width"] = compiled_image_size[1]
|
425
|
+
|
426
|
+
# compiled_num_frames = self.unet.rbln_config.num_frames
|
427
|
+
# if compiled_num_frames is not None:
|
428
|
+
# kwargs["num_frames"] = compiled_num_frames
|
429
|
+
# return kwargs
|
430
|
+
# ```
|
433
431
|
return kwargs
|
434
432
|
|
435
433
|
@remove_compile_time_kwargs
|
@@ -80,7 +80,12 @@ class RBLNAutoencoderKL(RBLNModel):
|
|
80
80
|
|
81
81
|
wrapped_model.eval()
|
82
82
|
|
83
|
-
compiled_models[model_name] = cls.compile(
|
83
|
+
compiled_models[model_name] = cls.compile(
|
84
|
+
wrapped_model,
|
85
|
+
rbln_compile_config=rbln_config.compile_cfgs[i],
|
86
|
+
create_runtimes=rbln_config.create_runtimes,
|
87
|
+
device=rbln_config.device_map[model_name],
|
88
|
+
)
|
84
89
|
|
85
90
|
return compiled_models
|
86
91
|
|
@@ -99,11 +99,21 @@ class RBLNAutoencoderKLCosmos(RBLNModel):
|
|
99
99
|
compiled_models = {}
|
100
100
|
if rbln_config.uses_encoder:
|
101
101
|
encoder_model, decoder_model = cls.wrap_model_if_needed(model, rbln_config)
|
102
|
-
enc_compiled_model = cls.compile(
|
102
|
+
enc_compiled_model = cls.compile(
|
103
|
+
encoder_model,
|
104
|
+
rbln_compile_config=rbln_config.compile_cfgs[0],
|
105
|
+
create_runtimes=rbln_config.create_runtimes,
|
106
|
+
device=rbln_config.device_map["encoder"],
|
107
|
+
)
|
103
108
|
compiled_models["encoder"] = enc_compiled_model
|
104
109
|
else:
|
105
110
|
decoder_model = cls.wrap_model_if_needed(model, rbln_config)
|
106
|
-
dec_compiled_model = cls.compile(
|
111
|
+
dec_compiled_model = cls.compile(
|
112
|
+
decoder_model,
|
113
|
+
rbln_compile_config=rbln_config.compile_cfgs[-1],
|
114
|
+
create_runtimes=rbln_config.create_runtimes,
|
115
|
+
device=rbln_config.device_map["decoder"],
|
116
|
+
)
|
107
117
|
compiled_models["decoder"] = dec_compiled_model
|
108
118
|
|
109
119
|
finally:
|
@@ -115,7 +125,7 @@ class RBLNAutoencoderKLCosmos(RBLNModel):
|
|
115
125
|
def update_rbln_config_using_pipe(
|
116
126
|
cls, pipe: "RBLNDiffusionMixin", rbln_config: "RBLNDiffusionMixinConfig", submodule_name: str
|
117
127
|
) -> "RBLNDiffusionMixinConfig":
|
118
|
-
rbln_config.vae.num_channels_latents = pipe.transformer.config.
|
128
|
+
rbln_config.vae.num_channels_latents = pipe.transformer.config.out_channels
|
119
129
|
rbln_config.vae.vae_scale_factor_temporal = pipe.vae_scale_factor_temporal
|
120
130
|
rbln_config.vae.vae_scale_factor_spatial = pipe.vae_scale_factor_spatial
|
121
131
|
return rbln_config
|
@@ -78,7 +78,12 @@ class RBLNVQModel(RBLNModel):
|
|
78
78
|
|
79
79
|
wrapped_model.eval()
|
80
80
|
|
81
|
-
compiled_models[model_name] = cls.compile(
|
81
|
+
compiled_models[model_name] = cls.compile(
|
82
|
+
wrapped_model,
|
83
|
+
rbln_compile_config=rbln_config.compile_cfgs[i],
|
84
|
+
create_runtimes=rbln_config.create_runtimes,
|
85
|
+
device=rbln_config.device_map[model_name],
|
86
|
+
)
|
82
87
|
|
83
88
|
return compiled_models
|
84
89
|
|