§
    ­˜ºhØj  ã            	       óv	  — U d Z ddlZddlZddlZddlZddlmZmZ ddlm	Z	m
Z
mZmZmZmZ ddlmZ ddlmZmZmZ dZee         ed<   ej                             dd	¦  «        d
k    ZdZdZdZdZdZdZ dZ! ed¬¦  «        Z"e#ed<    ed¬¦  «        Z$e#ed<    ed¬¦  «        Z%e&ed<    ed¬¦  «        Z'e&ed<   dZ(dZ)dZ*ej                             dd
¦  «        d
k    Z+dZ,dZ-dZ.ed         ed<   dZ/dZ0dZ1dZ2dZ3ej                             dd	¦  «        d
k    Z4 e5¦   «         Z6e5e7e	                  ed<    e5¦   «         Z8e5e7e	                  ed<    e&ej                             d d¦  «        ¦  «        Z9ej                             d!d	¦  «        d
k    Z:dZ;ej                             d"d	¦  «        d
k    Z<ej                             d#d¦  «        Z=i Z>e?e	e	f         ed$<   h d%£Z@ej                             d&d¦  «        ZA e#ej                             d'd(¦  «        ¦  «        ZBej                             d)¦  «        d
k    ZCd*ZDej                             d+¦  «        d
k    ZEdZFej                             d,¦  «        d
k    ZGej                             d-d	¦  «        d
k    ZHdZIdZJdZKdZLdZMee&ed.         f         ed/<   ej                             d0d	¦  «        d
k    ZNe&ed1<   dZOdZPdZQdZRdZSdZTdZUdZVdZWdZXdZYdZZdZ[ e¦   «         rdndZ\dZ]dZ^ e e e ee_¦  «        ¦  «        ¦  «        ¦  «        Z`dZad2Zbd3Zcd4ZddZedZfdZgdZhdZidZj edd5¬6¦  «        ZkdZldZmdZndZodZpdZqdZrdZsd7„ Zt et¦   «         Zuh d8£ZvdZwdZxdZydZzdZ{dZ| e5¦   «         Z}e5e
e	gdf                  ed9<    e5¦   «         Z~e5e
d:e	f                  ed;<   dZg d<¢Z€g d=¢Z�ej                             d>d
¦  «        d
k    Z‚ej                             d?d	¦  «        d
k    ZƒdZ„dZ…i Z†e?ee	f         ed@<   ej                             dAd	¦  «        d
k    Z‡ edBdCd¬D¦  «        Zˆe&edE<    edF¦  «        Z‰ee&         edG<   ej                             dHd	¦  «        d
k    ZŠ eddIdJ¬K¦  «        Z‹dZŒdZ�dZŽee	         edL<   erddMl�T dN„ Z� eej‘        e’         ¦  «         dS )Oaq  
Configuration module for TorchDynamo compiler and optimization settings.

This module contains various configuration flags and settings that control TorchDynamo's
behavior, including:
- Runtime behavior flags (e.g., guard settings, specialization options)
- Debugging and development options
- Performance tuning parameters
- Feature toggles for experimental features
é    N)ÚabspathÚdirname)ÚAnyÚCallableÚLiteralÚOptionalÚTYPE_CHECKINGÚUnion)Ú	is_fbcode)ÚConfigÚget_tristate_envÚinstall_config_moduleÚlog_file_nameÚTORCHDYNAMO_VERBOSEÚ0Ú1Fé   Té   é   z$torch._dynamo.config.recompile_limit)ÚaliasÚcache_size_limitz0torch._dynamo.config.accumulated_recompile_limitÚaccumulated_cache_size_limitz?torch._dynamo.config.skip_code_recursive_on_recompile_limit_hitÚ&skip_code_recursive_on_cache_limit_hitz0torch._dynamo.config.fail_on_recompile_limit_hitÚfail_on_cache_limit_hitÚ#TORCH_COMPILE_USE_LAZY_GRAPH_MODULEÚdynamic)r   ÚunbackedÚ automatic_dynamic_shapes_mark_asÚTORCHDYNAMO_PREPARE_FREEZINGÚtraceable_tensor_subclassesÚnontraceable_tensor_subclassesÚTORCHDYNAMO_SUPPRESS_ERRORSÚTORCH_COMPILE_REPLAY_RECORDÚTORCH_COMPILE_DISABLEÚTORCH_COMPILE_CPROFILEÚ!skipfiles_inline_module_allowlist>   útorch._refsútorch._primsútorch._decompútorch.testingútorch.distributionsÚTORCHDYNAMO_REPRO_AFTERÚTORCHDYNAMO_REPRO_LEVELé   ÚTORCHDYNAMO_REPRO_FORWARD_ONLYgü©ñÒMbP?ÚTORCHDYNAMO_REPRO_IGNORE_NON_FPÚ"TORCHDYNAMO_CAPTURE_SCALAR_OUTPUTSÚ,TORCHDYNAMO_CAPTURE_DYNAMIC_OUTPUT_SHAPE_OPS)Úddp_optimizerÚpython_reducerÚ'python_reducer_without_compiled_forwardÚno_optimizationÚoptimize_ddpÚ(TORCH_DYNAMO_DO_NOT_EMIT_RUNTIME_ASSERTSÚdo_not_emit_runtime_assertsÚfloat64Ú
complex128Úint64z*pytorch/compiler:inline_inbuilt_nn_modules)ÚdefaultÚjustknobc                  ó†  — d} | t           j        v r0t           j                             t           j        |          d¦  «        S t	          ¦   «         rCt           j                             t          j        ¦   «         t          j        ¦   «         d¦  «        S t           j                             t          j	        ¦   «         d¦  «        S )NÚTORCH_COMPILE_DEBUG_DIRÚtorch_compile_debug)
ÚosÚenvironÚpathÚjoinr   ÚtempfileÚ
gettempdirÚgetpassÚgetuserÚgetcwd)ÚDEBUG_DIR_VAR_NAMEs    ú\/var/www/html/services/rag-service/venv/lib/python3.11/site-packages/torch/_dynamo/config.pyÚdefault_debug_dir_rootrM   Å  s‘   € à2ÐØ�RœZÐ'Ð'ÝŒw�|Š|�BœJÐ'9Ô:Ð<QÑRÔRÐRÝ	‰Œð @ÝŒw�|Š|ÝÔÑ!Ô!¥7¤?Ñ#4Ô#4Ð6Kñ
ô 
ð 	
õ Œw�|Š|�BœI™KœKÐ)>Ñ?Ô?Ð?ó    >   Úrepro_afterÚrepro_levelÚconstant_functionsr&   Úreorderable_logging_functions.Úignore_logger_methods)ÚlayoutÚis_negÚis_conjÚ	is_pinned)ÚstrideÚstorage_offsetÚis_contiguousÚ TORCH_FAKE_TENSOR_DISPATCH_CACHEÚ+TORCH_FAKE_TENSOR_DISPATCH_CACHE_CROSSCHECKÚ!compiled_autograd_kwargs_overrideÚTORCH_COMPILER_COLLECTIVESz7pytorch/remote_cache:enable_local_automatic_dynamic_pgoÚ(TORCH_DYNAMO_AUTOMATIC_DYNAMIC_LOCAL_PGO)r>   Úenv_name_forcer=   Úautomatic_dynamic_local_pgoÚ)TORCH_DYNAMO_AUTOMATIC_DYNAMIC_REMOTE_PGOÚautomatic_dynamic_remote_pgoÚUNSAFE_SKIP_FSDP_MODULE_GUARDSz,pytorch/compiler:enable_run_gc_after_compileÚ!TORCH_DYNAMO_RUN_GC_AFTER_COMPILE)r=   r>   Úenv_name_defaultÚ_custom_ops_profile)Ú*c                  ó   — d S )N© )Úchangess    rL   Ú_make_closure_patcherrl   t  s   € € € rN   )“Ú__doc__rH   rB   ÚsysrF   Úos.pathr   r   Útypingr   r   r   r   r	   r
   Útorch._environmentr   Útorch.utils._config_moduler   r   r   r   ÚstrÚ__annotations__rC   ÚgetÚverboseÚverify_correctnessÚminimum_call_countÚdead_code_eliminationÚrecompile_limitÚaccumulated_recompile_limitÚ*skip_code_recursive_on_recompile_limit_hitÚfail_on_recompile_limit_hitr   Úintr   r   Úboolr   Úspecialize_intÚspecialize_floatÚdynamic_shapesÚuse_lazy_graph_moduleÚassume_static_by_defaultÚautomatic_dynamic_shapesr   Úforce_parameter_static_shapesÚ&force_nn_module_property_static_shapesÚallow_ignore_mark_dynamicÚguard_nn_modulesÚ guard_nn_modules_using_dict_tagsÚprepare_freezingÚsetr    Útyper!   Úsuppress_errorsÚreplay_record_enabledÚ rewrite_assert_with_torch_assertÚdisableÚcprofiler&   ÚdictÚ*allowed_functions_module_string_ignorelistrO   rP   Úrepro_forward_onlyÚrepro_toleranceÚrepro_ignore_non_fpÚsame_two_models_use_fp64Úcapture_scalar_outputsÚ capture_dynamic_output_shape_opsÚ+prefer_deferred_runtime_asserts_over_guardsÚ'allow_complex_guards_as_runtime_assertsÚ3force_unspec_int_unbacked_size_like_on_torchrec_kjtÚallow_unspec_int_on_nn_moduler7   r9   Úskip_torchrecÚdont_skip_tracingÚoptimize_ddp_lazy_compileÚskip_fsdp_guardsÚskip_fsdp_hooksÚskip_nnmodule_hook_guardsÚ,skip_no_tensor_aliasing_guards_on_parametersÚ*skip_tensor_guards_with_matching_dict_tagsÚraise_on_ctx_manager_usageÚraise_on_unsafe_aot_autogradÚerror_on_nested_jit_traceÚerror_on_nested_fx_traceÚ	allow_rnnÚcapture_sparse_computeÚerror_on_recompileÚreport_guard_failuresÚ__file__Úbase_dirÚtrace_numpyÚnumpy_default_floatÚnumpy_default_complexÚnumpy_default_intÚuse_numpy_random_streamÚenable_cpp_guard_managerÚ enable_cpp_symbolic_shape_guardsÚenable_trace_contextlibÚenable_trace_unittestÚ"enable_faithful_generator_behaviorÚinline_inbuilt_nn_modulesÚinstall_free_tensorsÚ!enable_cpp_framelocals_guard_evalÚuse_graph_deduplicationÚtrack_nodes_for_deduplicationÚgraph_deduplication_lintÚissue_3_13_0_warningÚallow_empty_graphsÚ%record_compile_time_instruction_countrM   Údebug_dir_rootÚ_save_config_ignoreÚ%cudagraph_backend_keep_input_mutationÚ(cudagraph_backend_support_input_mutationÚonly_allow_pt2_compliant_opsÚcapture_autograd_functionÚcapture_func_transformsÚlog_compilation_metricsrR   rS   Ú+inject_BUILD_SET_unimplemented_TESTING_ONLYÚ)_autograd_backward_strict_mode_banned_opsÚ5_autograd_backward_strict_mode_conditional_banned_opsÚfake_tensor_cache_enabledÚ$fake_tensor_cache_crosscheck_enabledÚ"fake_tensor_disable_inference_modeÚcompiled_autogradr]   Úenable_compiler_collectivesra   rc   Ú_unsafe_skip_fsdp_module_guardsÚrun_gc_after_compileÚwrap_top_frameÚrecord_runtime_overheadrg   Útorch.utils._config_typingrl   ÚmodulesÚ__name__rj   rN   rL   ú<module>rÛ      sm  ðð	ð 	ð 	ð €€€Ø 	€	€	€	Ø 
€
€
€
Ø €€€Ø $Ð $Ð $Ð $Ð $Ð $Ð $Ð $Ø IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ IÐ Ià (Ð (Ð (Ð (Ð (Ð (Ø VÐ VÐ VÐ VÐ VÐ VÐ VÐ VÐ VÐ Vð  $€ˆx˜Œ}Ð #Ð #Ñ #ð Œ*�.Š.Ð.°Ñ
4Ô
4¸Ò
;€ð Ð ð Ð ð Ð ð €ð "Ð ð .2Ð *ð $Ð à˜Ð%KÐLÑLÔLÐ �#Ð LÐ LÑ LØ$* FØ
<ð%ñ %ô %Ð ˜cð ð ñ ð
 06¨vØ
Kð0ñ 0ô 0Ð &¨ð ð ñ ð !' Ø
<ð!ñ !ô !Ð ˜ð ð ñ ð €ð
 Ð ð €ð „J‡N‚NÐ8¸#Ñ>Ô>À#ÒEð ð  Ð ð  Ð ð DMÐ   'Ð*?Ô"@Ð LÐ LÑ Lð !%Ð ð
 *.Ð &ð "Ð ð Ð ð $(Ð  ð
 ”:—>’>Ð"@À#ÑFÔFÈ#ÒMÐ ð /2¨c©e¬eÐ ˜S  c¤œ^Ð 3Ð 3Ñ 3ð 25°±´Ð   D¨¤I¤Ð 6Ð 6Ñ 6ð �$�r”z—~’~Ð&CÀUÑKÔKÑLÔL€ð
 œ
ŸšÐ'DÀcÑJÔJÈcÒQÐ ð $(Ð  ð Œ*�.Š.Ð0°#Ñ
6Ô
6¸#Ò
=€ð Œ:�>Š>Ð2°EÑ:Ô:€ð 57Ð ! 4¨¨S¨¤>Ð 6Ð 6Ñ 6ð.ð .ð .Ð *ð Œj�nŠnÐ6¸Ñ=Ô=€ð ˆc�"”*—.’.Ð!:¸AÑ>Ô>Ñ?Ô?€ð ”Z—^’^Ð$DÑEÔEÈÒLÐ ð
 €ð ”j—n’nÐ%FÑGÔGÈ3ÒNÐ ð  Ð ð
 œŸšÐ(LÑMÔMÐQTÒTÐ ð „J‡N‚NÐAÀ3ÑGÔGÈ3ÒNð !ð
 /4Ð +ð +0Ð 'ð 7<Ð 3ð !&Ð ð4 	ð ˆeØØð	ôðôð 	ð 	ñ 	ð  „J‡N‚NÐ=¸sÑCÔCÀsÒJð ˜Tð ð ñ ð
 €ð Ð ð "Ð ð Ð ð €ð
 !Ð ð 04Ð ,ð .2Ð *ð "Ð ð  %Ð ð !Ð ð  Ð ð €	ð #, )¡+¤+Ð7˜˜°4Ð ð
 Ð ð Ð ð ˆ7�7�7˜7˜7 7 7¨8Ñ#4Ô#4Ñ5Ô5Ñ6Ô6Ñ7Ô7€ð €ð  Ð Ø$Ð ØÐ ð  Ð ð  Ð ð $)Ð  ð Ð ð Ð ð &*Ð "ð #˜FØØ9ðñ ô Ð ð Ð ð %)Ð !ð  Ð ð !&Ð ð !Ð ð
 Ð ð Ð ð ).Ð %ð
@ð 
@ð 
@ð (Ð'Ñ)Ô)€ðð ð Ð ð ).Ð %ð ,1Ð (ð  %Ð ð !Ð ð Ð ð Ð ð =@¸C¹E¼EÐ ˜s 8¨S¨E°4¨KÔ#8Ô9Ð AÐ AÑ Að 25°±´Ð �s˜8 C¨ HÔ-Ô.Ð 6Ð 6Ñ 6ð /4Ð +ð-ð -ð -Ð )ð9ð 9ð 9Ð 5ð „J‡N‚NÐ5°sÑ;Ô;¸sÒBð ð „J‡N‚NÐ@À#ÑFÔFÈ#ÒMð %ð &*Ð "ð Ð ð 57Ð ! 4¨¨S¨¤>Ð 6Ð 6Ñ 6ð !œjŸnšnÐ-IÈ3ÑOÔOÐSVÒVÐ ð. %+ FØFØ=Øð%ñ %ô %Ð ˜Tð ð ñ ð 0@Ð/?Ø/ñ0ô 0Ð ˜h tœnð ð ñ ð „J‡N‚NÐ3°SÑ9Ô9¸SÒ@ð  ð
 �vØØ;Ø8ðñ ô Ð ð €ð Ð ð &*Ð �X˜c”]Ð )Ð )Ñ )àð .Ø,Ð,Ð,Ð,à-Ð-Ð-ð Ð �c”k (Ô+Ñ ,Ô ,Ð ,Ð ,Ð ,rN   