refactor: 🔨 Mostly working Ollama migration, few tweaks left

This commit is contained in:
2026-05-16 09:11:21 +01:00
parent 968b98f6a2
commit fc08f1a814
6 changed files with 43 additions and 37 deletions
+10 -12
View File
@@ -18,7 +18,7 @@ EXPANSION_CONFIG = CFG["expansion_agent"]
def retrieve_from_turso(embedded_question, k=5):
query = f"""
SELECT file_path, synopsis, tags, entities, chunk_data,
SELECT file_path, synopsis, tags, chunk_data,
vector_distance_cos(embedding, vector32('{embedded_question}')) AS distance
FROM notes
ORDER BY distance ASC
@@ -55,9 +55,7 @@ class DnDRAG(dspy.Module):
base_url=API_BASE,
# batch_size=1,
)
self.retrieval_lm = dspy.LM(
model=CFG["models"]["retrieval"], api_base=API_BASE + CFG["api"]["api_version"]
)
self.retrieval_lm = dspy.LM(model=CFG["models"]["retrieval"], api_base=API_BASE)
with dspy.context(lm=self.retrieval_lm, signature=ExpansionSignature):
self.query_expander = dspy.Predict("question -> queries:list[str]")
@@ -68,9 +66,9 @@ class DnDRAG(dspy.Module):
print("Enhancing Question")
with dspy.context(lm=self.retrieval_lm):
expanded_queries = self.query_expander(question=question).queries
print("Enhanced Queries:")
for q in expanded_queries:
print(" ", q)
# print("Enhanced Queries:")
# for q in expanded_queries:
# print(" ", q)
all_embeddings = self.embeddings_model.embed_documents([question] + expanded_queries)
# print(all_embeddings)
all_results = []
@@ -81,7 +79,7 @@ class DnDRAG(dspy.Module):
seen = set()
unique_results = []
for row in all_results:
key = (row[0], row[4])
key = (row[0], row[3])
if key not in seen:
seen.add(key)
unique_results.append(row)
@@ -91,18 +89,18 @@ class DnDRAG(dspy.Module):
source = row[0]
synopsis = row[1]
tags = row[2]
entities = row[3]
content = row[4]
closeness = row[5]
# entities = row[3]
content = row[3]
closeness = row[4]
context_parts.append(f"""
--- Chunk {i + 1} from {source} ---
synopsis: {synopsis},
tags: {tags},
entities: {entities},
closeness: {closeness},
{content}
""")
# entities: {entities},
context = "\n\n".join(context_parts)