haiku.rag 0.3.1__tar.gz → 0.3.2__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of haiku.rag might be problematic. Click here for more details.
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/PKG-INFO +1 -1
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/pyproject.toml +1 -1
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/src/haiku/rag/qa/__init__.py +2 -5
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/tests/generate_benchmark_db.py +2 -2
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/uv.lock +1 -1
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/.github/FUNDING.yml +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/.github/workflows/build-docs.yml +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/.github/workflows/build-publish.yml +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/.gitignore +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/.pre-commit-config.yaml +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/.python-version +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/BENCHMARKS.md +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/LICENSE +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/README.md +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/docs/cli.md +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/docs/configuration.md +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/docs/index.md +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/docs/installation.md +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/docs/mcp.md +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/docs/python.md +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/docs/server.md +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/mkdocs.yml +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/src/haiku/rag/__init__.py +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/src/haiku/rag/app.py +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/src/haiku/rag/chunker.py +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/src/haiku/rag/cli.py +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/src/haiku/rag/client.py +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/src/haiku/rag/config.py +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/src/haiku/rag/embeddings/__init__.py +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/src/haiku/rag/embeddings/base.py +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/src/haiku/rag/embeddings/ollama.py +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/src/haiku/rag/embeddings/openai.py +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/src/haiku/rag/embeddings/voyageai.py +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/src/haiku/rag/logging.py +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/src/haiku/rag/mcp.py +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/src/haiku/rag/monitor.py +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/src/haiku/rag/qa/anthropic.py +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/src/haiku/rag/qa/base.py +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/src/haiku/rag/qa/ollama.py +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/src/haiku/rag/qa/openai.py +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/src/haiku/rag/qa/prompts.py +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/src/haiku/rag/reader.py +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/src/haiku/rag/store/__init__.py +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/src/haiku/rag/store/engine.py +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/src/haiku/rag/store/models/__init__.py +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/src/haiku/rag/store/models/chunk.py +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/src/haiku/rag/store/models/document.py +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/src/haiku/rag/store/repositories/__init__.py +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/src/haiku/rag/store/repositories/base.py +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/src/haiku/rag/store/repositories/chunk.py +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/src/haiku/rag/store/repositories/document.py +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/src/haiku/rag/utils.py +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/tests/__init__.py +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/tests/conftest.py +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/tests/llm_judge.py +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/tests/test_app.py +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/tests/test_chunk.py +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/tests/test_chunker.py +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/tests/test_cli.py +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/tests/test_client.py +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/tests/test_document.py +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/tests/test_embedder.py +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/tests/test_monitor.py +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/tests/test_qa.py +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/tests/test_rebuild.py +0 -0
- {haiku_rag-0.3.1 → haiku_rag-0.3.2}/tests/test_search.py +0 -0
|
@@ -8,7 +8,6 @@ def get_qa_agent(client: HaikuRAG, model: str = "") -> QuestionAnswerAgentBase:
|
|
|
8
8
|
"""
|
|
9
9
|
Factory function to get the appropriate QA agent based on the configuration.
|
|
10
10
|
"""
|
|
11
|
-
|
|
12
11
|
if Config.QA_PROVIDER == "ollama":
|
|
13
12
|
return QuestionAnswerOllamaAgent(client, model or Config.QA_MODEL)
|
|
14
13
|
|
|
@@ -21,7 +20,7 @@ def get_qa_agent(client: HaikuRAG, model: str = "") -> QuestionAnswerAgentBase:
|
|
|
21
20
|
"Please install haiku.rag with the 'openai' extra:"
|
|
22
21
|
"uv pip install haiku.rag --extra openai"
|
|
23
22
|
)
|
|
24
|
-
return QuestionAnswerOpenAIAgent(client, model or
|
|
23
|
+
return QuestionAnswerOpenAIAgent(client, model or Config.QA_MODEL)
|
|
25
24
|
|
|
26
25
|
if Config.QA_PROVIDER == "anthropic":
|
|
27
26
|
try:
|
|
@@ -32,8 +31,6 @@ def get_qa_agent(client: HaikuRAG, model: str = "") -> QuestionAnswerAgentBase:
|
|
|
32
31
|
"Please install haiku.rag with the 'anthropic' extra:"
|
|
33
32
|
"uv pip install haiku.rag --extra anthropic"
|
|
34
33
|
)
|
|
35
|
-
return QuestionAnswerAnthropicAgent(
|
|
36
|
-
client, model or "claude-3-5-haiku-20241022"
|
|
37
|
-
)
|
|
34
|
+
return QuestionAnswerAnthropicAgent(client, model or Config.QA_MODEL)
|
|
38
35
|
|
|
39
36
|
raise ValueError(f"Unsupported QA provider: {Config.QA_PROVIDER}")
|
|
@@ -6,7 +6,7 @@ from llm_judge import LLMJudge
|
|
|
6
6
|
from tqdm import tqdm
|
|
7
7
|
|
|
8
8
|
from haiku.rag.client import HaikuRAG
|
|
9
|
-
from haiku.rag.qa
|
|
9
|
+
from haiku.rag.qa import get_qa_agent
|
|
10
10
|
|
|
11
11
|
db_path = Path(__file__).parent / "data" / "benchmark.sqlite"
|
|
12
12
|
|
|
@@ -88,7 +88,7 @@ async def run_qa_benchmark(k: int | None = None):
|
|
|
88
88
|
total_questions = 0
|
|
89
89
|
|
|
90
90
|
async with HaikuRAG(db_path) as rag:
|
|
91
|
-
qa =
|
|
91
|
+
qa = get_qa_agent(rag)
|
|
92
92
|
|
|
93
93
|
for i, doc in enumerate(tqdm(corpus, desc="QA Benchmarking")):
|
|
94
94
|
question = doc["question"] # type: ignore
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|