Upload folder using huggingface_hub
Browse files- inference.py +16 -25
inference.py
CHANGED
|
@@ -99,6 +99,9 @@ def run_task(client: OpenAI, env: GridOpsEnvironment, task_id: str, seed: int =
|
|
| 99 |
obs = env.reset(seed=seed, task_id=task_id)
|
| 100 |
obs_dict = obs.model_dump()
|
| 101 |
|
|
|
|
|
|
|
|
|
|
| 102 |
messages = [{"role": "system", "content": SYSTEM_PROMPT}]
|
| 103 |
|
| 104 |
for step_idx in range(MAX_STEPS):
|
|
@@ -118,7 +121,6 @@ def run_task(client: OpenAI, env: GridOpsEnvironment, task_id: str, seed: int =
|
|
| 118 |
)
|
| 119 |
reply = completion.choices[0].message.content or ""
|
| 120 |
except Exception as e:
|
| 121 |
-
print(f" LLM error at step {step_idx}: {e}")
|
| 122 |
reply = "{}"
|
| 123 |
|
| 124 |
messages.append({"role": "assistant", "content": reply})
|
|
@@ -132,47 +134,36 @@ def run_task(client: OpenAI, env: GridOpsEnvironment, task_id: str, seed: int =
|
|
| 132 |
obs = env.step(action)
|
| 133 |
obs_dict = obs.model_dump()
|
| 134 |
|
| 135 |
-
|
| 136 |
-
|
| 137 |
-
|
| 138 |
-
f"blackout={obs_dict['cumulative_blackout_kwh']:.1f}")
|
| 139 |
|
| 140 |
if obs_dict.get("done", False):
|
| 141 |
break
|
| 142 |
|
| 143 |
grade = env.state.grade
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 144 |
return grade
|
| 145 |
|
| 146 |
|
| 147 |
def main():
|
| 148 |
-
print("=" * 60)
|
| 149 |
-
print(" GridOps — LLM Baseline Inference")
|
| 150 |
-
print(f" Model: {MODEL_NAME}")
|
| 151 |
-
print(f" API: {API_BASE_URL}")
|
| 152 |
-
print("=" * 60)
|
| 153 |
-
|
| 154 |
client = OpenAI(base_url=API_BASE_URL, api_key=API_KEY)
|
| 155 |
env = GridOpsEnvironment()
|
| 156 |
|
| 157 |
results = {}
|
| 158 |
for task_id in TASKS:
|
| 159 |
-
print(f"\n--- {task_id} ---")
|
| 160 |
grade = run_task(client, env, task_id)
|
| 161 |
results[task_id] = grade
|
| 162 |
-
|
| 163 |
-
|
| 164 |
-
print(f" Reliability: {grade['reliability']}")
|
| 165 |
-
print(f" Cost Eff: {grade['cost_efficiency']}")
|
| 166 |
-
print(f" Green: {grade['green_score']}")
|
| 167 |
-
print(f" Cost: Rs {grade['actual_cost']:.0f} (baseline Rs {grade['baseline_cost']:.0f})")
|
| 168 |
-
|
| 169 |
-
print("\n" + "=" * 60)
|
| 170 |
-
print(" SUMMARY")
|
| 171 |
-
print("=" * 60)
|
| 172 |
for task_id, grade in results.items():
|
| 173 |
-
score = grade["score"] if grade else
|
| 174 |
-
print(f"
|
| 175 |
-
print("=" * 60)
|
| 176 |
|
| 177 |
|
| 178 |
if __name__ == "__main__":
|
|
|
|
| 99 |
obs = env.reset(seed=seed, task_id=task_id)
|
| 100 |
obs_dict = obs.model_dump()
|
| 101 |
|
| 102 |
+
# ── [START] structured output ──
|
| 103 |
+
print(f"[START] task={task_id}", flush=True)
|
| 104 |
+
|
| 105 |
messages = [{"role": "system", "content": SYSTEM_PROMPT}]
|
| 106 |
|
| 107 |
for step_idx in range(MAX_STEPS):
|
|
|
|
| 121 |
)
|
| 122 |
reply = completion.choices[0].message.content or ""
|
| 123 |
except Exception as e:
|
|
|
|
| 124 |
reply = "{}"
|
| 125 |
|
| 126 |
messages.append({"role": "assistant", "content": reply})
|
|
|
|
| 134 |
obs = env.step(action)
|
| 135 |
obs_dict = obs.model_dump()
|
| 136 |
|
| 137 |
+
# ── [STEP] structured output ──
|
| 138 |
+
reward = obs_dict.get("reward", 0.0)
|
| 139 |
+
print(f"[STEP] step={step_idx + 1} reward={reward:.4f}", flush=True)
|
|
|
|
| 140 |
|
| 141 |
if obs_dict.get("done", False):
|
| 142 |
break
|
| 143 |
|
| 144 |
grade = env.state.grade
|
| 145 |
+
score = grade["score"] if grade else 0.0
|
| 146 |
+
steps = step_idx + 1
|
| 147 |
+
|
| 148 |
+
# ── [END] structured output ──
|
| 149 |
+
print(f"[END] task={task_id} score={score:.4f} steps={steps}", flush=True)
|
| 150 |
+
|
| 151 |
return grade
|
| 152 |
|
| 153 |
|
| 154 |
def main():
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 155 |
client = OpenAI(base_url=API_BASE_URL, api_key=API_KEY)
|
| 156 |
env = GridOpsEnvironment()
|
| 157 |
|
| 158 |
results = {}
|
| 159 |
for task_id in TASKS:
|
|
|
|
| 160 |
grade = run_task(client, env, task_id)
|
| 161 |
results[task_id] = grade
|
| 162 |
+
|
| 163 |
+
# Summary
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 164 |
for task_id, grade in results.items():
|
| 165 |
+
score = grade["score"] if grade else 0.0
|
| 166 |
+
print(f"[SUMMARY] task={task_id} score={score:.4f}", flush=True)
|
|
|
|
| 167 |
|
| 168 |
|
| 169 |
if __name__ == "__main__":
|