graphstrike / openenv.yaml
Pandago's picture
Upload folder using huggingface_hub
e2bc016 verified
Raw History Blame Contribute Delete
3.17 kB
name: graphstrike
version: "1.0.0"
description: >
RL environment for detecting coordinated fake account rings in social networks.
An AI detective agent must identify all 10 members of a coordinated fake
account gang before they evade detection. Three difficulty levels with
increasing network size, decoys, and real-time evasion events.
author: OpenENV Hackathon
tags:
- social-network
- fraud-detection
- graph
- rl
- fake-account-detection
# ── Server configuration ──────────────────────────────────────────────────────
server:
dockerfile: Dockerfile
port: 7860
environment_variables:
PORT: "7860"
HOST: "0.0.0.0"
WORKERS: "1"
# ── Task definitions (each has a grader) ─────────────────────────────────────
tasks:
- name: easy
description: "50 accounts, 10 fakes, no evasion, 30 steps"
max_steps: 30
grader:
endpoint: /grader
score_range: [0.0, 1.0]
win_threshold: 0.815
win_conditions:
recall: 0.8
precision: 0.7
formula: >
if recall >= 0.8 and precision >= 0.7:
score = 0.55 + 0.20*recall + 0.15*precision + 0.10*efficiency
else:
score = 0.30*recall + 0.10*precision
- name: medium
description: "200 accounts, 10 fakes + 20 decoys, 1 evasion event, 50 steps"
max_steps: 50
grader:
endpoint: /grader
score_range: [0.0, 1.0]
win_threshold: 0.815
win_conditions:
recall: 0.8
precision: 0.7
formula: >
if recall >= 0.8 and precision >= 0.7:
score = 0.55 + 0.20*recall + 0.15*precision + 0.10*efficiency
else:
score = 0.30*recall + 0.10*precision
- name: hard
description: "1000 accounts, 10 fakes + 50 decoys, 4 evasion events, 80 steps"
max_steps: 80
grader:
endpoint: /grader
score_range: [0.0, 1.0]
win_threshold: 0.868
win_conditions:
recall: 0.9
precision: 0.8
formula: >
if recall >= 0.9 and precision >= 0.8:
score = 0.55 + 0.20*recall + 0.15*precision + 0.10*efficiency
else:
score = 0.30*recall + 0.10*precision
# ── Action schema ─────────────────────────────────────────────────────────────
action_schema:
action_type:
type: string
enum: [inspect, investigate_network, flag, unflag, submit]
account_id:
type: string
description: "Required for all actions except submit"
# ── Score range ───────────────────────────────────────────────────────────────
score_range: [0.0, 1.0]
grader_formula: >
if recall >= win_recall and precision >= win_precision:
score = 0.55 + 0.20*recall + 0.15*precision + 0.10*efficiency
else:
score = 0.30*recall + 0.10*precision