





'''simple docstring'''





from ...configuration_utils import PretrainedConfig
from ...utils import logging


A_												=     logging.get_logger(__name__)

A_												=     {
    "tiiuae/falcon-40b": "https://huggingface.co/tiiuae/falcon-40b/resolve/main/config.json",
    "tiiuae/falcon-7b": "https://huggingface.co/tiiuae/falcon-7b/resolve/main/config.json",
}

class SCREAMING_SNAKE_CASE_ (					lowercase_   ):





					"""simple docstring"""


					A__				 =    "falcon"
					A__				 =    ["past_key_values"]





					def __init__( self	,  _lowerCAmelCase=6_5024	,  _lowerCAmelCase=4544	,  _lowerCAmelCase=32	,  _lowerCAmelCase=71	,  _lowerCAmelCase=1E-5	,  _lowerCAmelCase=0.02	,  _lowerCAmelCase=True	,  _lowerCAmelCase=0.0	,  _lowerCAmelCase=0.0	,  _lowerCAmelCase=None	,  _lowerCAmelCase=False	,  _lowerCAmelCase=False	,  _lowerCAmelCase=True	,  _lowerCAmelCase=True	,  _lowerCAmelCase=False	,  _lowerCAmelCase=11	,  _lowerCAmelCase=11	,  **_lowerCAmelCase	,  ):
										lowerCamelCase__       =       vocab_size
										# Backward compatibility with n_embed kwarg
										lowerCamelCase__       =       kwargs.pop("n_embed"	,  _lowerCAmelCase	)
										lowerCamelCase__       =       hidden_size if n_embed is None else n_embed
										lowerCamelCase__       =       num_hidden_layers
										lowerCamelCase__       =       num_attention_heads
										lowerCamelCase__       =       layer_norm_epsilon
										lowerCamelCase__       =       initializer_range
										lowerCamelCase__       =       use_cache
										lowerCamelCase__       =       hidden_dropout
										lowerCamelCase__       =       attention_dropout

										lowerCamelCase__       =       bos_token_id
										lowerCamelCase__       =       eos_token_id
										lowerCamelCase__       =       num_attention_heads if num_kv_heads is None else num_kv_heads
										lowerCamelCase__       =       alibi
										lowerCamelCase__       =       new_decoder_architecture
										lowerCamelCase__       =       multi_query  # Ignored when new_decoder_architecture is True
										lowerCamelCase__       =       parallel_attn
										lowerCamelCase__       =       bias

										super().__init__(bos_token_id=_lowerCAmelCase	,  eos_token_id=_lowerCAmelCase	,  **_lowerCAmelCase	)





					@property
					def 					__magic_name__ ( self	):
										return self.hidden_size // self.num_attention_heads






					@property
					def 					__magic_name__ ( self	):
										return not self.alibi








def    __UpperCamelCase      (    a) ->float:
					return 10 - x * x





def    __UpperCamelCase      (    a,     a) ->float:
					# Bolzano theory in order to find if there is a root between a and b
					if equation(a) * equation(a) >= 0:
										raise ValueError("Wrong space!")

					lowerCamelCase__       =       a
					while (b - a) >= 0.0_1:
										# Find middle point
										lowerCamelCase__       =       (a + b) / 2
										# Check if middle point is root
										if equation(a) == 0.0:
															break
										# Decide the side to repeat the steps
										if equation(a) * equation(a) < 0:
															lowerCamelCase__       =       c
										else:
															lowerCamelCase__       =       c
					return c


if __name__ == "__main__":
						import doctest

						doctest.testmod()

						print(bisection(-2, 5))
						print(bisection(0, 6))

