prabalGaur commited on
Commit
9ace23a
Β·
verified Β·
1 Parent(s): c2193d1

Upload community_contributions/damola-adewunmi/README.md with huggingface_hub

Browse files
community_contributions/damola-adewunmi/README.md ADDED
@@ -0,0 +1,51 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Deal Hunter β€” PlayStation UK Gift Cards
2
+
3
+ Multi-agent **Deal Hunter** for PlayStation UK gift card prices, built with **LangGraph**. No local fine-tuned model; **GPT-4o** is used for all reasoning, with a specialist system prompt in the Valuer to simulate pricing expertise.
4
+
5
+ ## Workflow
6
+
7
+ 1. **Searcher Agent** β€” Finds current UK gift card prices via **Tavily** (CDKeys, ShopTo, Eneba, GAME, etc.).
8
+ 2. **Valuer Agent** β€” **GPT-4o** with a specialist system prompt:
9
+ - PlayStation UK cards usually retail at **5–10%** discount.
10
+ - **Strong Buy** = discount **>12%**.
11
+ 3. **Strategist Agent** β€” Summarizes findings into a **Gradio** table.
12
+
13
+ ## Setup
14
+
15
+ From the **repo root** (so `langgraph`, `langchain-openai`, etc. are available):
16
+
17
+ ```bash
18
+ # Optional: add Tavily for live search (otherwise placeholder results)
19
+ export TAVILY_API_KEY=your_key
20
+ export OPENAI_API_KEY=your_key
21
+
22
+ cd week8/community_contributions/damola-adewunmi
23
+ uv run app.py
24
+ ```
25
+
26
+ Or install deps in this folder and run:
27
+
28
+ ```bash
29
+ pip install -r requirements.txt
30
+ python app.py
31
+ ```
32
+
33
+ ## Project layout
34
+
35
+ - `state.py` β€” LangGraph shared state (`DealHunterState`).
36
+ - `graph.py` β€” Builds the graph: **searcher β†’ valuer β†’ strategist**.
37
+ - `prompts.py` β€” **Valuer specialist system prompt** (expertise rules, JSON output).
38
+ - `agents/searcher.py` β€” Tavily search node.
39
+ - `agents/valuer.py` β€” GPT-4o + specialist prompt; parses JSON deals.
40
+ - `agents/strategist.py` β€” Builds table rows for the UI.
41
+ - `app.py` β€” Gradio UI and pipeline entrypoint.
42
+
43
+ ## Valuer prompt (expertise)
44
+
45
+ The Valuer uses a detailed system prompt in `prompts.py` that:
46
+
47
+ - Defines **Strong Buy** (>12% discount), **Good/Fair** (5–10%), **Weak/Avoid** (<5% or above face).
48
+ - Requires **JSON** output with `retailer`, `denomination_gbp`, `price_gbp`, `discount_pct`, `verdict`, `url`.
49
+ - Instructs the model to use **only** information from the provided search results (no hallucination).
50
+
51
+ This mimics the behaviour of a fine-tuned pricing specialist without training a custom model.