avinash-rai commited on
Commit
62ca236
·
1 Parent(s): 1838600

docs: Add requirements documentation and restore requirements.txt

Browse files
.gitignore CHANGED
@@ -18,6 +18,7 @@ data/
18
  *.txt
19
  !requirements.txt
20
  !README.txt
 
21
 
22
  # Temp files
23
  .pytest_cache/
 
18
  *.txt
19
  !requirements.txt
20
  !README.txt
21
+ !GUVI_REQUIREMENTS.txt
22
 
23
  # Temp files
24
  .pytest_cache/
GUVI_CHALLENGE_DETAILS.md ADDED
@@ -0,0 +1,139 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Agentic Honey-Pot for Scam Detection & Intelligence Extraction
2
+
3
+ ## 1. Introduction
4
+ Online scams such as bank fraud, UPI fraud, phishing, and fake offers are becoming increasingly adaptive. Scammers change their tactics based on user responses, making traditional detection systems ineffective.
5
+
6
+ This challenge requires participants to build an Agentic Honey-Pot — an AI-powered system that detects scam intent and autonomously engages scammers to extract useful intelligence without revealing detection.
7
+
8
+ ## 2. Objective
9
+ Design and deploy an AI-driven honeypot system that can:
10
+ - Detect scam or fraudulent messages
11
+ - Activate an autonomous AI Agent
12
+ - Maintain a believable human-like persona
13
+ - Handle multi-turn conversations
14
+ - Extract scam-related intelligence
15
+ - Return structured results via an API
16
+
17
+ ## 3. What You Need to Build
18
+ Participants must deploy a public REST API that:
19
+ - Accepts incoming message events
20
+ - Detects scam intent
21
+ - Hands control to an AI Agent
22
+ - Engages scammers autonomously
23
+ - Extracts actionable intelligence
24
+ - Returns a structured JSON response
25
+ - Secures access using an API key
26
+
27
+ ## 4. API Authentication
28
+ - `x-api-key: YOUR_SECRET_API_KEY`
29
+ - `Content-Type: application/json`
30
+
31
+ ## 5. Evaluation Flow
32
+ 1. Platform sends a suspected scam message
33
+ 2. Your system analyzes the message
34
+ 3. If scam intent is detected, the AI Agent is activated
35
+ 4. The Agent continues the conversation
36
+ 5. Intelligence is extracted and returned
37
+ 6. Performance is evaluated
38
+
39
+ ## 6. API Request Format (Input)
40
+ Each API request represents one incoming message in a conversation.
41
+
42
+ ### 6.1 First Message (Start of Conversation)
43
+ ```json
44
+ {
45
+ "sessionId": "wertyu-dfghj-ertyui",
46
+ "message": {
47
+ "sender": "scammer",
48
+ "text": "Your bank account will be blocked today. Verify immediately.",
49
+ "timestamp": 1770005528731
50
+ },
51
+ "conversationHistory": [],
52
+ "metadata": {
53
+ "channel": "SMS",
54
+ "language": "English",
55
+ "locale": "IN"
56
+ }
57
+ }
58
+ ```
59
+
60
+ ### 6.2 Follow-Up Message
61
+ ```json
62
+ {
63
+ "sessionId": "wertyu-dfghj-ertyui",
64
+ "message": {
65
+ "sender": "scammer",
66
+ "text": "Share your UPI ID to avoid account suspension.",
67
+ "timestamp": 1770005528731
68
+ },
69
+ "conversationHistory": [
70
+ {
71
+ "sender": "scammer",
72
+ "text": "Your bank account will be blocked today. Verify immediately.",
73
+ "timestamp": 1770005528731
74
+ },
75
+ {
76
+ "sender": "user",
77
+ "text": "Why will my account be blocked?",
78
+ "timestamp": 1770005528731
79
+ }
80
+ ],
81
+ "metadata": {
82
+ "channel": "SMS",
83
+ "language": "English",
84
+ "locale": "IN"
85
+ }
86
+ }
87
+ ```
88
+
89
+ ## 7. Agent Behavior Expectations
90
+ The AI Agent must:
91
+ - Handle multi-turn conversations
92
+ - Adapt responses dynamically
93
+ - Avoid revealing scam detection
94
+ - Behave like a real human
95
+ - Perform self-correction if needed
96
+
97
+ ## 8. Agent output format
98
+ ```json
99
+ {
100
+ "status": "success",
101
+ "reply": "Why is my account being suspended?"
102
+ }
103
+ ```
104
+
105
+ ## 9. Evaluation Criteria
106
+ - Scam detection accuracy
107
+ - Quality of agentic engagement
108
+ - Intelligence extraction
109
+ - API stability and response time
110
+ - Ethical behavior
111
+
112
+ ## 10. Constraints & Ethics
113
+ - ❌ No impersonation of real individuals
114
+ - ❌ No illegal instructions
115
+ - ❌ No harassment
116
+ - ✅ Responsible data handling
117
+
118
+ ## 11. Mandatory Final Result Callback
119
+ Once the system detects scam intent and the AI Agent completes the engagement, participants must send the final extracted intelligence to the GUVI evaluation endpoint.
120
+
121
+ ### Callback Endpoint
122
+ `POST https://hackathon.guvi.in/api/updateHoneyPotFinalResult`
123
+
124
+ ### Payload to Send
125
+ ```json
126
+ {
127
+ "sessionId": "abc123-session-id",
128
+ "scamDetected": true,
129
+ "totalMessagesExchanged": 18,
130
+ "extractedIntelligence": {
131
+ "bankAccounts": ["XXXX-XXXX-XXXX"],
132
+ "upiIds": ["scammer@upi"],
133
+ "phishingLinks": ["http://malicious-link.example"],
134
+ "phoneNumbers": ["+91XXXXXXXXXX"],
135
+ "suspiciousKeywords": ["urgent", "verify now", "account blocked"]
136
+ },
137
+ "agentNotes": "Scammer used urgency tactics and payment redirection"
138
+ }
139
+ ```
GUVI_REQUIREMENTS.txt ADDED
@@ -0,0 +1,84 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ AGENTIC HONEY-POT FOR SCAM DETECTION & INTELLIGENCE EXTRACTION - CHALLENGE REQUIREMENTS
2
+
3
+ 1. INTRODUCTION
4
+ Online scams such as bank fraud, UPI fraud, phishing, and fake offers are becoming increasingly adaptive. Scammers change their tactics based on user responses, making traditional detection systems ineffective.
5
+ This challenge requires participants to build an Agentic Honey-Pot — an AI-powered system that detects scam intent and autonomously engages scammers to extract useful intelligence without revealing detection.
6
+
7
+ 2. OBJECTIVE
8
+ Design and deploy an AI-driven honeypot system that can:
9
+ - Detect scam or fraudulent messages
10
+ - Activate an autonomous AI Agent
11
+ - Maintain a believable human-like persona
12
+ - Handle multi-turn conversations
13
+ - Extract scam-related intelligence
14
+ - Return structured results via an API
15
+
16
+ 3. WHAT YOU NEED TO BUILD
17
+ Participants must deploy a public REST API that:
18
+ - Accepts incoming message events
19
+ - Detects scam intent
20
+ - Hands control to an AI Agent
21
+ - Engages scammers autonomously
22
+ - Extracts actionable intelligence
23
+ - Returns a structured JSON response
24
+ - Secures access using an API key
25
+
26
+ 4. API AUTHENTICATION
27
+ x-api-key: YOUR_SECRET_API_KEY
28
+ Content-Type: application/json
29
+
30
+ 5. EVALUATION FLOW
31
+ - Platform sends a suspected scam message
32
+ - Your system analyzes the message
33
+ - If scam intent is detected, the AI Agent is activated
34
+ - The Agent continues the conversation
35
+ - Intelligence is extracted and returned
36
+ - Performance is evaluated
37
+
38
+ 6. API REQUEST FORMAT (INPUT)
39
+ {
40
+ "sessionId": "wertyu-dfghj-ertyui",
41
+ "message": {
42
+ "sender": "scammer",
43
+ "text": "Your bank account will be blocked today. Verify immediately.",
44
+ "timestamp": 1770005528731
45
+ },
46
+ "conversationHistory": [],
47
+ "metadata": {
48
+ "channel": "SMS",
49
+ "language": "English",
50
+ "locale": "IN"
51
+ }
52
+ }
53
+
54
+ 7. AGENT BEHAVIOR EXPECTATIONS
55
+ The AI Agent must:
56
+ - Handle multi-turn conversations
57
+ - Adapt responses dynamically
58
+ - Avoid revealing scam detection
59
+ - Behave like a real human
60
+ - Perform self-correction if needed
61
+
62
+ 8. AGENT OUTPUT FORMAT
63
+ {
64
+ "status": "success",
65
+ "reply": "Why is my account being suspended?"
66
+ }
67
+
68
+ 11. MANDATORY FINAL RESULT CALLBACK
69
+ Once the system detects scam intent and the AI Agent completes the engagement, participants must send the final extracted intelligence to the GUVI evaluation endpoint.
70
+ POST https://hackathon.guvi.in/api/updateHoneyPotFinalResult
71
+ Payload:
72
+ {
73
+ "sessionId": "abc123-session-id",
74
+ "scamDetected": true,
75
+ "totalMessagesExchanged": 18,
76
+ "extractedIntelligence": {
77
+ "bankAccounts": ["XXXX-XXXX-XXXX"],
78
+ "upiIds": ["scammer@upi"],
79
+ "phishingLinks": ["http://malicious-link.example"],
80
+ "phoneNumbers": ["+91XXXXXXXXXX"],
81
+ "suspiciousKeywords": ["urgent", "verify now", "account blocked"]
82
+ },
83
+ "agentNotes": "Scammer used urgency tactics and payment redirection"
84
+ }
requirements.txt ADDED
@@ -0,0 +1,15 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ fastapi==0.104.1
2
+ uvicorn==0.24.0
3
+ pydantic==2.5.2
4
+ pydantic-settings==2.1.0
5
+ httpx==0.25.2
6
+ tenacity==8.2.3
7
+ python-dotenv==1.0.0
8
+ aiosqlite==0.19.0
9
+ sqlalchemy==2.0.23
10
+ pyyaml==6.0.1
11
+ requests==2.31.0
12
+ pytest==7.4.3
13
+ pytest-asyncio==0.21.1
14
+ jinja2==3.1.2
15
+ python-multipart==0.0.6