

'''simple docstring'''

from typing import TYPE_CHECKING

from ...utils import OptionalDependencyNotAvailable, _LazyModule, is_torch_available


a       :      int  	=			{
    "configuration_decision_transformer": [
        "DECISION_TRANSFORMER_PRETRAINED_CONFIG_ARCHIVE_MAP",
        "DecisionTransformerConfig",
    ],
}

try:
				if not is_torch_available():
								raise OptionalDependencyNotAvailable()
except OptionalDependencyNotAvailable:
				pass
else:
				a       :      Union[str, Any]  	=			[
				    "DECISION_TRANSFORMER_PRETRAINED_MODEL_ARCHIVE_LIST",
				    "DecisionTransformerGPT2Model",
				    "DecisionTransformerGPT2PreTrainedModel",
				    "DecisionTransformerModel",
				    "DecisionTransformerPreTrainedModel",
				]


if TYPE_CHECKING:
				from .configuration_decision_transformer import (
				    DECISION_TRANSFORMER_PRETRAINED_CONFIG_ARCHIVE_MAP,
				    DecisionTransformerConfig,
				)

				try:
								if not is_torch_available():
												raise OptionalDependencyNotAvailable()
				except OptionalDependencyNotAvailable:
								pass
				else:
								from .modeling_decision_transformer import (
								    DECISION_TRANSFORMER_PRETRAINED_MODEL_ARCHIVE_LIST,
								    DecisionTransformerGPTaModel,
								    DecisionTransformerGPTaPreTrainedModel,
								    DecisionTransformerModel,
								    DecisionTransformerPreTrainedModel,
								)


else:
				import sys

				a       :      Dict  	=			_LazyModule(__name__, globals()["__file__"], _import_structure, module_spec=__spec__)



'''simple docstring'''

from sklearn.datasets import load_iris
from sklearn.model_selection import train_test_split
from sklearn.neighbors import KNeighborsClassifier

# Load iris file
a       :      List[Any]  	=			load_iris()
iris.keys()


print(F'Target names: \n {iris.target_names} ')
print(F'\n Features: \n {iris.feature_names}')

# Train set e Test set
a	,						a	,						a	,						a       :      List[Any]  	=			train_test_split(
    iris["data"], iris["target"], random_state=4
)

# KNN

a       :      Tuple  	=			KNeighborsClassifier(n_neighbors=1)
knn.fit(X_train, y_train)

# new array to test
a       :      Optional[int]  	=			[[1, 2, 1, 4], [2, 3, 4, 5]]

a       :      Tuple  	=			knn.predict(X_new)

print(
    F'\nNew array: \n {X_new}\n\nTarget Names Prediction: \n'
    F' {iris["target_names"][prediction]}'
)
