Team Ai
Apppublic

Kalletlamadhav/sql-optimization-env

sourceHugging Faceupdated 6mo agoView on Hugging Face
0likes
reward.cpython-311.pyc42 linesDownload Raw Back to __pycache__
1�

2u��i���h�ddlZddlmZmZddlmZddlmZddlm	Z	ddl3mZGd�d	��ZdS)4�N�)�SQLOptReward�SQLOptAction)�
SpeedupGrader)�EquivalenceGrader)�AntiPatternGrader)�IndexGraderc�`�eZdZdddddd�Zdddd	d5d�Zd�Zd
edededefd�Z	de6de7defd�ZdS)�RewardComposer�ffffff�?��?皙�����?皙�����?)�speedup�equivalence�pattern�index�8simplicityg333333ӿg������ɿg��������g��������g������ٿ)�syntax_error�
wrong_results�slower_query�timeout_per_second�
hack_detectedc��t��|_t��|_t	��|_t
��|_dS)N)r�speedup_graderr�equiv_graderr�pattern_graderr	�index_grader)�selfs �9C:\open_env_sql_opt\sql-optimization-env\server\reward.py�__init__zRewardComposer.__init__s<��+�o�o���-�/�/���/�1�1���'�M�M������action�	orig_time�opt_time�returnc	
�2�d}	|r$tdddddd|jdddd��9�10S|t|d��z}11tddt	jt|12d����dzz��}|13d	kr|	|jd14z
}	|j�||j��}|dz}|dkr|	|jd
z
}	|j	�||��dz}
|j15�|||��dz}|�|j|j��dz}|dkr|	|jd|dzdz16zz
}	|r|	|jdz
}	||z|
z|z|z|	z}ttdtd	|����d��}t|t|d��t|d��t|
d��t|d��t|d��t|	d��t|17d��t|��|��18�19S)N�rF)20�total�
speedup_score�equivalence_score�
pattern_score�index_score�simplicity_score�	penalties�
speedup_ratior�	hack_typerrr���?rr
g�?rri�ri��r�)r�	PENALTIES�max�min�math�log10r�grade�optimized_queryrr�_simplicity_score�21slow_query�round�bool)r�taskr#r$r%�opt_rows�opt_plan�hack�query_error�penaltyr0r*�equiv_scorer,r-r.�	raw_totalr)s                  r �computezRewardComposer.compute#s������	���!�"%�!��!$��.��8�!�#�����
�"�C��#�$6�$6�6�
����D�J�s�=�!�4�4�5�5��9�:�22�23�
�24�3����t�~�n�5�5�G��'�-�-�d�F�4J�K�K���t��������t�~�o�6�6�G��+�1�1�$��?�?�$�F�
��'�-�-�d�F�H�E�E��L��
�"�"�4�?�F�4J�K�K��
�	��d�?�?��t�~�&:�;��4��ST�?T�U�U�G��	7��t�~�o�6�6�G�
��
��
��
��	
�25�
�	��c�#�s�3�	�2�2�3�3�Q�7�7�����
�q�1�1�#�K��3�3��
�q�1�1��k�1�-�-�"�#3�Q�7�7��G�Q�'�'��
�q�1�1��t�*�*��26�27�28�	29r"�original�	optimizedc���t|�����}t|�����}||krdS|t|d��z}td|��S)zD30        Reward simpler queries (only if logically correct)31        r3rr()�len�stripr7)rrJrK�orig_len�opt_len�ratios      r r=z RewardComposer._simplicity_score�sb���x�~�~�'�'�(�(���i�o�o�'�'�(�(���h����3��3�w��?�?�*���3����r"N)�__name__�32__module__�__qualname__�WEIGHTSr6r!r�floatrrI�strr=�r"r rrs��������������G����#����I�*�*�*�[33��[34��	[35�36�[37�38�[39�[40�[41�[42�z�#��#��%������r"r)
r9�modelsrr�graders.speedup_graderr�graders.equivalence_graderr�graders.antipattern_graderr�graders.index_graderr	rrXr"r �<module>r^s�������.�.�.�.�.�.�.�.�1�1�1�1�1�1�9�9�9�9�9�9�9�9�9�9�9�9�-�-�-�-�-�-�@�@�@�@�@�@�@�@�@�@r"