input: Write a function to train an AI model that classifies emails from the Enron Spam Dataset as either spam or non-spam using Python. The function should load the dataset, split it into training and testing sets, use a bag of words model, train an SVM classifier, and print the precision score of the model. The function should be named `train_spam_classifier`.
  assert train_spam_classifier("spam.csv") == "Precision score of the model"
  assert train_spam_classifier("spam_empty.csv") == "Precision score of the model"
output: def train_spam_classifier(file_path):
      import pandas as pd
      from sklearn.model_selection import train_test_split
      from sklearn.feature_extraction.text import CountVectorizer
      from sklearn.svm import SVC
      from sklearn.metrics import precision_score
      
      # Load the dataset
      df = pd.read_csv(file_path)
      
      # Split the dataset into training and testing sets
      X_train, X_test, y_train, y_test = train_test_split(df['text'], df['label'], test_size=0.2, random_state=42)
      
      # Use a bag of words model
      vectorizer = CountVectorizer()
      X_train_vec = vectorizer.fit_transform(X_train)
      X_test_vec = vectorizer.transform(X_test)
      
      # Train an SVM classifier
      svm = SVC()
      svm.fit(X_train_vec, y_train)
      
      # Predict on the test set
      y_pred = svm.predict(X_test_vec)
      
      # Print the precision score of the model
      precision = precision_score(y_test, y_pred, average='binary')
      return f"Precision score of the model: {precision}"