Retrieval-Augmented Generation system for intelligent document Q&A
from fastapi import FastAPI
from sentence_transformers import SentenceTransformer
import numpy as np
app = FastAPI()
embedder = SentenceTransformer("all-MiniLM-L6-v2")
@app.post("/query")
async def query_documents(question: str):
query_embedding = embedder.encode(question)
context = vector_store.similar_search(query_embedding, k=5)
response = await llm.generate(
prompt=f"Answer based on context: {context}",
question=question
)
return {"answer": response, "sources": context}