Skip to content

Commit

Permalink
README.md: add new example with the ranker and fix the old ones (#1198)
Browse files Browse the repository at this point in the history
ranker_example.py: fix the example
  • Loading branch information
paulmartrencharpro authored Nov 18, 2024
1 parent 4114411 commit 180dd3b
Show file tree
Hide file tree
Showing 2 changed files with 33 additions and 6 deletions.
37 changes: 32 additions & 5 deletions integrations/fastembed/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@
**Table of Contents**

- [Installation](#installation)
- [Usage](#Usage)
- [License](#license)

## Installation
Expand All @@ -33,7 +34,7 @@ embedding = text_embedder.run(text)["embedding"]

```python
from haystack_integrations.components.embedders.fastembed import FastembedDocumentEmbedder
from haystack.dataclasses import Document
from haystack import Document

embedder = FastembedDocumentEmbedder(
model="BAAI/bge-small-en-v1.5",
Expand All @@ -50,24 +51,50 @@ from haystack_integrations.components.embedders.fastembed import FastembedSparse

text = "fastembed is supported by and maintained by Qdrant."
text_embedder = FastembedSparseTextEmbedder(
model="prithvida/Splade_PP_en_v1"
model="prithivida/Splade_PP_en_v1"
)
text_embedder.warm_up()
embedding = text_embedder.run(text)["embedding"]
embedding = text_embedder.run(text)["sparse_embedding"]
```

```python
from haystack_integrations.components.embedders.fastembed import FastembedSparseDocumentEmbedder
from haystack.dataclasses import Document
from haystack import Document

embedder = FastembedSparseDocumentEmbedder(
model="prithvida/Splade_PP_en_v1",
model="prithivida/Splade_PP_en_v1",
)
embedder.warm_up()
doc = Document(content="fastembed is supported by and maintained by Qdrant.", meta={"long_answer": "no",})
result = embedder.run(documents=[doc])
```

You can use `FastembedRanker` by importing as:

```python
from haystack import Document

from haystack_integrations.components.rankers.fastembed import FastembedRanker

query = "Who is maintaining Qdrant?"
documents = [
Document(
content="This is built to be faster and lighter than other embedding libraries e.g. Transformers, Sentence-Transformers, etc."
),
Document(content="fastembed is supported by and maintained by Qdrant."),
]

ranker = FastembedRanker(model_name="Xenova/ms-marco-MiniLM-L-6-v2")
ranker.warm_up()
reranked_documents = ranker.run(query=query, documents=documents)["documents"]

print(reranked_documents[0])

# Document(id=...,
# content: 'fastembed is supported by and maintained by Qdrant.',
# score: 5.472434997558594..)
```

## License

`fastembed-haystack` is distributed under the terms of the [Apache-2.0](https://spdx.org/licenses/Apache-2.0.html) license.
2 changes: 1 addition & 1 deletion integrations/fastembed/examples/ranker_example.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,7 @@
reranked_documents = ranker.run(query=query, documents=documents)["documents"]


print(reranked_documents["documents"][0])
print(reranked_documents[0])

# Document(id=...,
# content: 'fastembed is supported by and maintained by Qdrant.',
Expand Down

0 comments on commit 180dd3b

Please sign in to comment.