How to CrossEncoderReranker with HuggingFaceEndpoint instead of local HuggingFaceCrossEncoder?
index = self.pc.Index(self.index_name)
embeddings = OpenAIEmbeddings(model="text-embedding-3-large")
vector_store = PineconeVectorStore(index=index, embedding=embeddings)
dense_retriever = vector_store.as_retriever(
search_type="similarity", search_kwargs={"k": 5}
)
cross_encoder_model = HuggingFaceEndpoint(
endpoint_url=";,
max_new_tokens=512,
top_k=10,
top_p=0.95,
typical_p=0.95,
temperature=0.01,
repetition_penalty=1.03,
huggingfacehub_api_token="XXX"
)
# cross_encoder_model = HuggingFaceCrossEncoder(
# model_name="BAAI/bge-reranker-base"
# )
reranker = CrossEncoderReranker(model=cross_encoder_model, top_n=3)
retriever = ContextualCompressionRetriever(
base_compressor=reranker, base_retriever=dense_retriever
)
return retriever