diff --git a/.github/workflows/testing.yml b/.github/workflows/testing.yml
index ca8892eb..d8f46301 100644
--- a/.github/workflows/testing.yml
+++ b/.github/workflows/testing.yml
@@ -23,7 +23,7 @@ jobs:
runs-on: ubuntu-latest
strategy:
matrix:
- python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
+ python-version: ["3.10", "3.11", "3.12", "3.13"]
steps:
- uses: actions/checkout@v4
diff --git a/README.md b/README.md
index 703e3c10..85383631 100644
--- a/README.md
+++ b/README.md
@@ -1,5 +1,5 @@
[](https://pepy.tech/projects/keybert)
-[](https://pypi.org/project/keybert/)
+[](https://pypi.org/project/keybert/)
[](https://github.com/MaartenGr/keybert/blob/master/LICENSE)
[](https://pypi.org/project/keybert/)
[](https://pypi.org/keybert/)
@@ -15,17 +15,17 @@ create keywords and keyphrases that are most similar to a document.
Corresponding medium post can be found [here](https://towardsdatascience.com/keyword-extraction-with-bert-724efca412ea).
-## Table of Contents
-
- 1. [About the Project](#about)
- 2. [Getting Started](#gettingstarted)
- 2.1. [Installation](#installation)
- 2.2. [Basic Usage](#usage)
- 2.3. [Max Sum Distance](#maxsum)
- 2.4. [Maximal Marginal Relevance](#maximal)
- 2.5. [Embedding Models](#embeddings)
- 3. [Large Language Models](#llms)
-
+## Table of Contents
+
+ 1. [About the Project](#about)
+ 2. [Getting Started](#gettingstarted)
+ 2.1. [Installation](#installation)
+ 2.2. [Basic Usage](#usage)
+ 2.3. [Max Sum Distance](#maxsum)
+ 2.4. [Maximal Marginal Relevance](#maximal)
+ 2.5. [Embedding Models](#embeddings)
+ 3. [Large Language Models](#llms)
+
@@ -203,7 +203,7 @@ KeyBERT supports many embedding models that can be used to embed the documents a
Click [here](https://maartengr.github.io/KeyBERT/guides/embeddings.html) for a full overview of all supported embedding models.
-**Sentence-Transformers**
+**Sentence-Transformers**
You can select any model from `sentence-transformers` [here](https://www.sbert.net/docs/pretrained_models.html)
and pass it through KeyBERT with `model`:
@@ -222,7 +222,7 @@ sentence_model = SentenceTransformer("all-MiniLM-L6-v2")
kw_model = KeyBERT(model=sentence_model)
```
-**Flair**
+**Flair**
[Flair](https://github.com/flairNLP/flair) allows you to choose almost any embedding model that
is publicly available. Flair can be used as follows:
@@ -259,8 +259,8 @@ kw_model = KeyLLM(llm)
This will query any ChatGPT model and ask it to extract keywords from text.
-Second, we can find documents that are likely to have the same keywords and only extract keywords for those.
-This is much more efficient then asking the keywords for every single documents. There are likely documents that
+Second, we can find documents that are likely to have the same keywords and only extract keywords for those.
+This is much more efficient then asking the keywords for every single documents. There are likely documents that
have the exact same keywords. Doing so is straightforward:
```python
diff --git a/pyproject.toml b/pyproject.toml
index db5f9b43..2cae4902 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -8,7 +8,7 @@ version = "0.9.0"
description = "KeyBERT performs keyword extraction with state-of-the-art transformer models."
readme = "README.md"
license = {file = "LICENSE"}
-requires-python = ">=3.9"
+requires-python = ">=3.10"
authors = [
{ name = "Maarten Grootendorst", email = "maartengrootendorst@gmail.com" },
]
@@ -28,7 +28,6 @@ classifiers = [
"Operating System :: POSIX",
"Operating System :: Unix",
"Programming Language :: Python",
- "Programming Language :: Python :: 3.9",
"Programming Language :: Python :: 3.10",
"Programming Language :: Python :: 3.11",
"Programming Language :: Python :: 3.12",