input: 
  from tensorflow.keras.datasets import mnist
  from tensorflow.keras.layers import Dense, Input, Dropout
  from tensorflow.keras.models import Model
  from tensorflow.keras.utils import to_categorical
  
  
  def digit_recognition_model() -> Model:
      """
      Generates a Machine Learning model in Python that can recognize handwritten digits from 0 to 9.
      
      >>> model = digit_recognition_model()
      >>> model.compile(loss='categorical_crossentropy', optimizer='adam', metrics=['accuracy'])
      >>> (X_train, y_train), (X_test, y_test) = mnist.load_data()
      >>> X_train = X_train.reshape(60000, 784).astype('float32') / 255
      >>> X_test = X_test.reshape(10000, 784).astype('float32') / 255
      >>> y_train = to_categorical(y_train, num_classes=10)
      >>> y_test = to_categorical(y_test, num_classes=10)
      >>> model.fit(X_train, y_train, validation_data=(X_test, y_test), epochs=1, batch_size=128)
      <tensorflow.python.keras.callbacks.History object at 0x...>
      """
      
      # Input layer
      inputs = Input(shape=(28 * 28,))
      
      # Hidden layer
      h1 = Dense(64, activation='relu')(inputs)
      h2 = Dropout(0.5)(h1)
      
      # Output layer
      outputs = Dense(10, activation='softmax')(h2)
      
      # Compiling the model
      model = Model(inputs=inputs, outputs=outputs)
      return model
  
output:     model.compile(loss='categorical_crossentropy', optimizer='adam', metrics=['accuracy'])