Do not run coverage on download-models & code that requires integration tests
This commit is contained in:
parent
36a675e1bb
commit
ce95dc47a5
3 changed files with 25 additions and 3 deletions
|
|
@ -1681,7 +1681,9 @@ class HaikuRAG:
|
|||
yield DownloadProgress(model=tokenizer_name, status="done")
|
||||
|
||||
# Sentence-transformers embedder
|
||||
if self._config.embeddings.model.provider == "sentence-transformers":
|
||||
if (
|
||||
self._config.embeddings.model.provider == "sentence-transformers"
|
||||
): # pragma: no cover
|
||||
try:
|
||||
from sentence_transformers import ( # type: ignore[import-not-found]
|
||||
SentenceTransformer,
|
||||
|
|
@ -1695,7 +1697,7 @@ class HaikuRAG:
|
|||
pass
|
||||
|
||||
# HuggingFace reranker models
|
||||
if self._config.reranking.model:
|
||||
if self._config.reranking.model: # pragma: no cover
|
||||
provider = self._config.reranking.model.provider
|
||||
model_name = self._config.reranking.model.name
|
||||
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@ from haiku.rag.reranking.base import RerankerBase
|
|||
from haiku.rag.store.models.chunk import Chunk
|
||||
|
||||
|
||||
class JinaLocalReranker(RerankerBase):
|
||||
class JinaLocalReranker(RerankerBase): # pragma: no cover
|
||||
"""Jina reranker using local model inference via transformers.
|
||||
|
||||
Note: The Jina Reranker v3 model is licensed under CC BY-NC 4.0,
|
||||
|
|
|
|||
|
|
@ -235,6 +235,26 @@ class TestGetReranker:
|
|||
pytest.skip("Jina local dependencies not installed")
|
||||
|
||||
|
||||
def test_jina_reranker_missing_api_key(monkeypatch):
|
||||
monkeypatch.delenv("JINA_API_KEY", raising=False)
|
||||
|
||||
from haiku.rag.reranking.jina import JinaReranker
|
||||
|
||||
with pytest.raises(ValueError, match="JINA_API_KEY environment variable required"):
|
||||
JinaReranker("jina-reranker-v3")
|
||||
|
||||
|
||||
@pytest.mark.asyncio
|
||||
async def test_jina_reranker_empty_chunks(monkeypatch):
|
||||
monkeypatch.setenv("JINA_API_KEY", "test-api-key")
|
||||
|
||||
from haiku.rag.reranking.jina import JinaReranker
|
||||
|
||||
reranker = JinaReranker("jina-reranker-v3")
|
||||
result = await reranker.rerank("query", [], top_n=2)
|
||||
assert result == []
|
||||
|
||||
|
||||
@pytest.mark.asyncio
|
||||
@pytest.mark.vcr()
|
||||
async def test_jina_reranker(monkeypatch):
|
||||
|
|
|
|||
Loading…
Reference in a new issue