input: Write a function to develop a machine learning model in Python to identify the author of a given article. The function should use a TfidfVectorizer for text feature extraction and a Gaussian Naive Bayes classifier for classification. The function should return the accuracy score of the model on the test dataset. If the input samples or labels are empty, the function should return 0.
  assert identify_author(["sample 1 from AuthorA", "sample 2 from AuthorA", "sample 1 from AuthorB", "sample 2 from AuthorB"], ["AuthorA", "AuthorA", "AuthorB", "AuthorB"]) > 0.5
  assert identify_author([], [])==0
  assert identify_author(["sample from AuthorA"], ["AuthorA"])==1.0
output: def identify_author(samples, labels):
      if not samples or not labels:
          return 0
      
      from sklearn.feature_extraction.text import TfidfVectorizer
      from sklearn.naive_bayes import GaussianNB
      from sklearn.model_selection import train_test_split
      from sklearn.metrics import accuracy_score
      
      vectorizer = TfidfVectorizer()
      X = vectorizer.fit_transform(samples).toarray()
      y = labels
      
      X_train, X_test, y_train, y_test = train_test_split(X, y, test_size=0.2, random_state=42)
      
      model = GaussianNB()
      model.fit(X_train, y_train)
      
      y_pred = model.predict(X_test)
      return accuracy_score(y_test, y_pred)