from ragrails import RagRails, ChatRetrievalQualityConfig, QueryRewriteConfig
rag = RagRails()
rag.setup_url()
# Build the support knowledge base
rag.ingest(
urls="https://help.example.com", # scrape the help center
docs={"folder": "files/policies/"}, # parse policy PDFs
embedding={"provider": "voyage", "model": "voyage-3"},
storage={"vector_db": "qdrant", "collection": "support", "url": "http://localhost:6333"},
)
# Answer a ticket, refusing rather than guessing on weak matches
llm = rag.llm(provider="openai", model="gpt-4o-mini")
embedder = rag.embedder(provider="voyage", model="voyage-3", input_type="query")
result = rag.chat(
"Can I get a refund after 30 days?",
llm=llm, embedder=embedder,
vector_db="qdrant", collection="support", url="http://localhost:6333",
history=[],
query_rewrite=QueryRewriteConfig(enabled=True),
retrieval_quality=ChatRetrievalQualityConfig(low_confidence_mode="refuse_grounded_answer"),
)
print(result.answer, result.answer_confidence)