Skip to content

Commit 8aec565

Browse files
authored
Merge pull request #1001 from weaviate/support-reranker-voyageai
Add staticmethods to configure voyageai reranker module
2 parents c1b9b9c + c9cb7df commit 8aec565

File tree

2 files changed

+26
-2
lines changed

2 files changed

+26
-2
lines changed

.github/workflows/main.yaml

+2-2
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,8 @@ on:
1414
pull_request:
1515

1616
env:
17-
OLD_WEAVIATE_VERSION: 1.23.13
18-
NEW_WEAVIATE_VERSION: 1.24.5
17+
OLD_WEAVIATE_VERSION: 1.23.14
18+
NEW_WEAVIATE_VERSION: 1.24.8
1919

2020
jobs:
2121
lint-and-format:

weaviate/collections/classes/config.py

+24
Original file line numberDiff line numberDiff line change
@@ -185,6 +185,7 @@ class Rerankers(str, Enum):
185185
NONE = "none"
186186
COHERE = "reranker-cohere"
187187
TRANSFORMERS = "reranker-transformers"
188+
VOYAGEAI = "reranker-voyageai"
188189

189190

190191
class StopwordsPreset(str, Enum):
@@ -460,6 +461,14 @@ class _RerankerTransformersConfig(_RerankerConfigCreate):
460461
reranker: Rerankers = Field(default=Rerankers.TRANSFORMERS, frozen=True, exclude=True)
461462

462463

464+
RerankerVoyageAIModel = Literal["rerank-lite-1"]
465+
466+
467+
class _RerankerVoyageAIConfig(_RerankerConfigCreate):
468+
reranker: Rerankers = Field(default=Rerankers.VOYAGEAI, frozen=True, exclude=True)
469+
model: Optional[Union[RerankerVoyageAIModel, str]] = Field(default=None)
470+
471+
463472
class _Generative:
464473
"""Use this factory class to create the correct object for the `generative_config` argument in the `collections.create()` method.
465474
@@ -703,6 +712,21 @@ def cohere(
703712
"""
704713
return _RerankerCohereConfig(model=model)
705714

715+
@staticmethod
716+
def voyageai(
717+
model: Optional[Union[RerankerVoyageAIModel, str]] = None,
718+
) -> _RerankerConfigCreate:
719+
"""Create a `_RerankerVoyageAIConfig` object for use when reranking using the `reranker-voyageai` module.
720+
721+
See the [documentation](https://weaviate.io/developers/weaviate/modules/retriever-vectorizer-modules/reranker-voyageai)
722+
for detailed usage.
723+
724+
Arguments:
725+
`model`
726+
The model to use. Defaults to `None`, which uses the server-defined default
727+
"""
728+
return _RerankerVoyageAIConfig(model=model)
729+
706730

707731
class _CollectionConfigCreateBase(_ConfigCreateModel):
708732
description: Optional[str] = Field(default=None)

0 commit comments

Comments
 (0)