input: Write a function to create a simple linear regression model in Python. Import the necessary libraries, read data from a CSV file, set X and Y variables, train the model, make predictions, and visualize the results. The function should return the trained model and the plot of the regression line.
  def linear_regression_model():
      import pandas as pd
      import matplotlib.pyplot as plt
      from sklearn import linear_model
  
      # Read data from CSV
      data = pd.read_csv('data.csv')
  
      # Set X and Y
      X = data[['X']]
      Y = data['Y']
  
      # Create linear regression model
      model = linear_model.LinearRegression()
  
      # Train the model
      model.fit(X, Y)
  
      # Make predictions
      Y_pred = model.predict(X)
  
      # Visualize the results
      plt.scatter(X, Y)
      plt.plot(X, Y_pred, color='red')
      plt.show()
  
      return model
  
  assert linear_regression_model()
  assert linear_regression_model()
output: def linear_regression_model():
      import pandas as pd
      import matplotlib.pyplot as plt
      from sklearn import linear_model
  
      data = pd.read_csv('data.csv')
      X = data[['X']]
      Y = data['Y']
      model = linear_model.LinearRegression()
      model.fit(X, Y)
      Y_pred = model.predict(X)
      plt.scatter(X, Y)
      plt.plot(X, Y_pred, color='red')
      plt.show()
      return model