Devi Sri Bandaru commited on
Commit
a41cb90
·
1 Parent(s): ee3f4ca

Update README

Browse files

Removed outdated architecture diagram and tech stack details from README.

Files changed (1) hide show
  1. README.md +34 -81
README.md CHANGED
@@ -17,22 +17,7 @@ The system includes a custom LLM-as-a-Judge Evaluation Pipeline to continuously
17
  ## System Architecture
18
 
19
  The system follows a Hybrid RAG architecture. The Agent acts as the central brain, routing user queries to the appropriate tool.
20
-
21
- graph TD
22
- User[User API Request] --> API[FastAPI Gateway]
23
- API --> Agent[LangGraph Agent Router]
24
-
25
- Agent -->|Policy Question?| RAG[Internal RAG Tool]
26
- Agent -->|General Question?| Web[Web Search Tool]
27
-
28
- RAG -->|Vector Search| FAISS[(FAISS Vector DB)]
29
- Web -->|Live Search| DDG[DuckDuckGo]
30
-
31
- FAISS --> LLM[Google Gemini 2.5]
32
- DDG --> LLM
33
-
34
- LLM --> Response[Final Answer]
35
-
36
 
37
  ## Key Features
38
 
@@ -64,38 +49,6 @@ The Agent correctly identifies when to look inside the PDF versus when to search
64
  A generated CSV report scoring the agent's performance against ground truth data.
65
  ![Evaluation Score](assets/evaluation_score.png)
66
 
67
- ## Tech Stack
68
-
69
- Component | Technology | Reason for Choice | LLM | Google Gemini 2.5 Flash | High speed, massive context window, and generous free tier | Orchestration
70
-
71
- LangGraph
72
-
73
- State-of-the-art framework for building stateful, loop-based agents.
74
-
75
- Backend
76
-
77
- FastAPI
78
-
79
- Async-native performance, standard for modern ML microservices.
80
-
81
- Vector DB
82
-
83
- FAISS (CPU)
84
-
85
- Lightweight, local, and efficient for document-scale retrieval.
86
-
87
- Embeddings
88
-
89
- HuggingFace (MiniLM)
90
-
91
- Runs locally on CPU, ensuring data privacy and zero API costs.
92
-
93
- Evaluation
94
-
95
- Custom LLM-as-a-Judge
96
-
97
- Removes dependency on bloated libraries; provides transparent scoring.
98
-
99
  ## Setup & Installation
100
 
101
  - Prerequisites
@@ -108,43 +61,43 @@ Removes dependency on bloated libraries; provides transparent scoring.
108
 
109
  1. Clone the Repository
110
 
111
- git clone [https://github.com/Devisri-B/Agentic_RAG_Knowledge_Search.git](https://github.com/Devisri-B/Agentic_RAG_Knowledge_Search.git)
112
 
113
 
114
  2. Configure Environment
115
 
116
- Create a .env file in the root directory:
117
-
118
- ```GOOGLE_API_KEY=your_actual_api_key_here```
119
 
120
 
121
  3. Option A: Run Locally (Python)
122
 
123
- Install Dependencies:
124
-
125
- ```pip install -r requirements.txt```
126
-
127
-
128
- Run the Application:
129
-
130
- ```python -m src.main```
131
-
132
-
133
- The API will be available at http://localhost:8000/docs.
134
 
135
  4. Option B: Run with Docker
136
 
137
- Build the Image:
138
-
139
- ```docker build -t agentic-rag-app .```
140
-
141
-
142
- Run the Container:
143
-
144
- ```docker run -p 8000:8000 --env-file .env agentic-rag-app```
145
-
146
-
147
- This isolates the application and ensures it runs consistently on any machine.
148
 
149
  ## Running Evaluations
150
 
@@ -165,17 +118,17 @@ This will:
165
 
166
  ## API Reference
167
 
168
- Endpoint: ```POST /chat```
169
 
170
  Request:
171
 
172
- ```{
173
- "query": "What are the termination conditions in the policy?"
174
- }```
175
 
176
 
177
  Response:
178
 
179
- ```{
180
- "response": "According to the internal policy document, termination requires a 30-day notice..."
181
- }```
 
17
  ## System Architecture
18
 
19
  The system follows a Hybrid RAG architecture. The Agent acts as the central brain, routing user queries to the appropriate tool.
20
+ ![Architecture](assets/Architecture.png)
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
21
 
22
  ## Key Features
23
 
 
49
  A generated CSV report scoring the agent's performance against ground truth data.
50
  ![Evaluation Score](assets/evaluation_score.png)
51
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
52
  ## Setup & Installation
53
 
54
  - Prerequisites
 
61
 
62
  1. Clone the Repository
63
 
64
+ git clone [https://github.com/Devisri-B/Agentic_RAG_Knowledge_Search.git](https://github.com/Devisri-B/Agentic_RAG_Knowledge_Search.git)
65
 
66
 
67
  2. Configure Environment
68
 
69
+ Create a .env file in the root directory:
70
+
71
+ ```GOOGLE_API_KEY=your_actual_api_key_here```
72
 
73
 
74
  3. Option A: Run Locally (Python)
75
 
76
+ Install Dependencies:
77
+
78
+ ```pip install -r requirements.txt```
79
+
80
+
81
+ Run the Application:
82
+
83
+ ```python -m src.main```
84
+
85
+
86
+ The API will be available at http://localhost:8000/docs.
87
 
88
  4. Option B: Run with Docker
89
 
90
+ Build the Image:
91
+
92
+ ```docker build -t agentic-rag-app .```
93
+
94
+
95
+ Run the Container:
96
+
97
+ ```docker run -p 8000:8000 --env-file .env agentic-rag-app```
98
+
99
+
100
+ This isolates the application and ensures it runs consistently on any machine.
101
 
102
  ## Running Evaluations
103
 
 
118
 
119
  ## API Reference
120
 
121
+ Endpoint: ```POST /chat``` click on Try it out button. In the Request body enter your query and click on Execute.
122
 
123
  Request:
124
 
125
+ ```{```
126
+ ``` "query": "What are the termination conditions in the policy?"```
127
+ ```}```
128
 
129
 
130
  Response:
131
 
132
+ ```{```
133
+ ```"response": "The termination conditions vary depending on the type of treaty or function.\n\nFor provisional application of a multilateral treaty, termination can occur:\n* By reasonable notice from the newly independent State, party, or contracting State, followed by the expiration of the notice.\n* For treaties mentioned in Article 17, paragraph 3, by reasonable notice from the newly independent State or all parties/contracting States, followed by the expiration of the notice.\n\nFor provisional application of a bilateral treaty, termination can occur by reasonable notice of termination.\n\nThe functions of a head of delegation or other diplomatic staff can end upon notification of their termination by the sending State to the Organization or conference.\n\nA treaty can become void and terminate under Article 64 if it conflicts with a peremptory norm of general international law. In such cases, parties are released from further obligations, but rights, obligations, or legal situations created prior to termination may be maintained if they don't conflict with the new peremptory norm.\n\nRegarding the general termination of or withdrawal from a treaty:\n* It can happen in conformity with the treaty's provisions.\n* It can happen at any time by consent of all parties after consultation with other contracting States.\n\nA multilateral treaty does not terminate solely because the number of parties falls below the number necessary for its entry into force, unless the treaty specifies otherwise."```
134
+ ```}```