input: from typing import List, Dict
  
  def predict_author(articles: List[str], model_pipeline: Pipeline) -> Dict[str, str]:
      """ Given a list of articles, predict the author for each article using the provided model pipeline.
      Return the predictions as a dictionary where the keys are the article texts and the values are the predicted authors.
      >>> article_texts = [
      ...     "This is an article sample 1 from AuthorA",
      ...     "This is an article sample 2 from AuthorB",
      ... ]
      >>> model = Pipeline([
      ...     ('tfidf', TfidfVectorizer()),
      ...     ('clf', GaussianNB())
      ... ])
      >>> X_train, y_train = [
      ...     "sample 1 from AuthorA",
      ...     "sample 2 from AuthorA",
      ...     "sample 1 from AuthorB",
      ...     "sample 2 from AuthorB"
      ... ], [
      ...     "AuthorA",
      ...     "AuthorA",
      ...     "AuthorB",
      ...     "AuthorB"
      ... ]
      >>> model.fit(X_train, y_train)
      >>> predictions = predict_author(article_texts, model)
      >>> predictions == {
      ...     "This is an article sample 1 from AuthorA": "AuthorA",
      ...     "This is an article sample 2 from AuthorB": "AuthorB"
      ... }
      True
      """
output:     predictions = model_pipeline.predict(articles)
      return {article: author for article, author in zip(articles, predictions)}