About Workshop
Aim
Structure
-
Environment & Dependencies Setup
Ensure the environment is properly configured for the project by following these steps:
-
Spin up a Python virtual environment (venv) for isolation.
-
Install necessary dependencies using pip:
-
Create a .env file to store your API key for OpenAI integration.
Document Ingestion & Embedding
Integrate document ingestion and text embedding with the following process:
-
Write a script to load sample text/PDFs from the
./docs/directory. -
Chunk the texts into manageable segments (e.g., 500 tokens per chunk).
-
Use OpenAIEmbeddings to generate embeddings and store them in FAISS for efficient retrieval.
Vector Store & Retrieval Function
Set up the vector store and implement a retrieval function:
-
Initialize the FAISS index in your code for storing and searching vectors.
-
Implement the
retrieve(query):function usingindex.similarity_search. -
Perform quick tests by printing out retrieved chunks for sample queries.
QA Chain Implementation
Define a QA chain that utilizes the retrieved context for answering questions:
-
Create a prompt template that dynamically injects the retrieved context into the model.
-
Integrate the LLMChain (or RetrievalQA from LangChain) to process the query.
Example code: -
Test the system by asking 2â3 different questions to check if it retrieves accurate answers.
API Endpoint / Minimal Interface
Expose the solution via an API:
-
Scaffold a FastAPI app with a
/qaPOST endpoint. -
Integrate the
retrieveandllm_chaininside this endpoint for real-time querying. -
Test the API via curl or Postman to ensure functionality.
Testing, Debugging & Extensions
Ensure the system is robust and extendable:
-
Handle cases where no results are found: return a message like "No context found."
-
Experiment with different chunk sizes and k-values in retrieval for performance tuning.
-
Conduct a performance check: Measure latency for sample queries and optimize as necessary.
-
Important Dates
Workshop Dates
What You Will Gain

Outcomes
-
Gain practical experience in building a RAG-powered Q&A bot using Python, LangChain, and FAISS.
-
Learn how to ingest, process, and embed documents for retrieval-based systems.
-
Understand how to implement vector retrieval functions and integrate them with language models.
-
Gain hands-on experience in deploying a Q&A bot via FastAPI.
-
Acquire skills in debugging, performance optimization, and handling edge cases in real-world applications.
-
Develop the ability to create and deploy intelligent Q&A systems for various use cases.
