jampuramprem commited on
Commit
c372ed2
·
1 Parent(s): 0e31d8c

added openenv such that validation get's passed

Browse files
Files changed (2) hide show
  1. Dockerfile +1 -1
  2. openenv.yaml +84 -0
Dockerfile CHANGED
@@ -2,7 +2,7 @@ FROM python:3.11-slim
2
 
3
  WORKDIR /app
4
 
5
- COPY requirements.txt
6
  RUN pip install --no-cache-dir -r requirements.txt
7
  RUN python -c "import nltk; nltk.download('vader_lexicon', quiet=True); nltk.download('punkt_tab', quiet=True)"
8
 
 
2
 
3
  WORKDIR /app
4
 
5
+ COPY requirements.txt .
6
  RUN pip install --no-cache-dir -r requirements.txt
7
  RUN python -c "import nltk; nltk.download('vader_lexicon', quiet=True); nltk.download('punkt_tab', quiet=True)"
8
 
openenv.yaml ADDED
@@ -0,0 +1,84 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ name: sieve
2
+ version: "1.0.0"
3
+ description: >
4
+ A customer support reinforcement learning environment where an agent triages,
5
+ classifies, drafts responses to, and prioritizes real-world support emails.
6
+ tags:
7
+ - openenv
8
+ - customer-support
9
+ - email-triage
10
+ - nlp
11
+
12
+ api:
13
+ base_url: http://localhost:7860
14
+ reset: POST /reset
15
+ step: POST /step
16
+ state: GET /state
17
+ tasks: GET /tasks
18
+
19
+ tasks:
20
+ - id: email_classification
21
+ name: Email Classification
22
+ difficulty: easy
23
+ description: >
24
+ Classify each incoming customer support email by category
25
+ (billing/technical/general/spam/account/feature_request)
26
+ and urgency (high/medium/low) using action_type='classify'.
27
+ max_steps: 15
28
+ score_range: [0.0, 1.0]
29
+
30
+ - id: response_drafting
31
+ name: Response Drafting
32
+ difficulty: medium
33
+ description: >
34
+ Draft professional, empathetic responses to customer support emails.
35
+ Each response must cover required keywords, exceed 50 characters,
36
+ and maintain a professional tone. Use action_type='respond'.
37
+ max_steps: 10
38
+ score_range: [0.0, 1.0]
39
+
40
+ - id: support_session
41
+ name: Full Support Session
42
+ difficulty: hard
43
+ description: >
44
+ Manage a queue of 15 mixed emails. Prioritize VIP customers first,
45
+ then high-urgency emails. Choose the correct action (respond/escalate/archive)
46
+ per email, provide category and urgency, and use email_id to select
47
+ which email to process each step.
48
+ max_steps: 40
49
+ score_range: [0.0, 1.0]
50
+
51
+ observation_space:
52
+ current_email:
53
+ id: string
54
+ subject: string
55
+ body: string
56
+ sender: string
57
+ sender_tier: "standard | vip"
58
+ received_minutes_ago: integer
59
+ email_queue: "array of Email objects (populated in support_session only)"
60
+ processed_count: integer
61
+ step_count: integer
62
+ task_id: string
63
+ task_description: string
64
+ available_actions: "array of strings"
65
+ context:
66
+ max_steps: integer
67
+ remaining_steps: integer
68
+ queue_size: integer
69
+
70
+ action_space:
71
+ action_type: "classify | respond | escalate | archive | skip"
72
+ category: "billing | technical | general | spam | account | feature_request"
73
+ urgency: "high | medium | low"
74
+ response_text: "string — required for respond"
75
+ escalation_reason: "string — required for escalate"
76
+ email_id: "string — used in support_session to select target email"
77
+
78
+ baseline:
79
+ agent: gpt-4o-mini
80
+ scores:
81
+ email_classification: 0.860
82
+ response_drafting: 0.956
83
+ support_session: 0.850
84
+ average: 0.889