Project Exam
Assignment Details
Assignment 1: RAG Agent System for FPT Policy
Description
Build an automated question-answering system about FPT's internal regulations and policies. This system will serve as an internal tool to help employees quickly find information regarding company policies.
Objectives
- Implement a ReAct (Reason + Act) Agent using LangChain.
- Build a Retrieval-Augmented Generation (RAG) pipeline.
- Integrate a Vector Database for semantic search and retrieval.
- Create a user-friendly interface for querying FPT policies.
Problem Description
Develop a "RAG Agent System for FPT Policy" that takes user questions as input, searches through a provided set of FPT policy documents (converted to embeddings in a VectorDB), and uses a ReAct Agent to synthesize and provide an accurate answer based on the retrieved context.
Assumptions
- The necessary FPT policy documents and internal guides are provided in text format.
- You have access to an embedding model and a standard Vector Database (e.g., Chroma, FAISS).
- You have a valid API key for the LLM (e.g., OpenAI, Anthropic).
- The environment is set up with Python and necessary libraries.
Technical Requirements
- Must use Python (version 3.8 or higher)
- Must use LangChain library
- Must use a Vector Database for document storage and retrieval
- Must implement the ReAct Agent pattern (Reason -> Action -> Observation)
- Must ensure the agent uses a "retriever" tool to access the VectorDB
Questions to Answer
- Explain the "Operating Mechanism" of the ReAct Agent implemented in this project (Reasoning -> Action -> Observation).
- How does the Retrieval System ensure it fetches the most relevant text segments?
- Describe the complete processing flow (pipeline) from raw text data to the final user answer.
Estimated Time
Estimated Time to complete: 180 mins