File size: 841 Bytes
b7bec01
43435c0
1a74e1c
 
 
 
b7bec01
1a74e1c
 
43435c0
1a74e1c
43435c0
 
 
1a74e1c
43435c0
b7bec01
1a74e1c
b7bec01
1a74e1c
 
 
 
b7bec01
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
import os, sys, functools
from openenv.core.env_server.http_server import create_app
from models import FitcoachAction, FitcoachObservation
from server.FitCoach_environment import FitcoachEnvironment

FITCOACH_TASK = os.environ.get("FITCOACH_TASK", "week1_plan")
VALID_TASKS   = {"week1_plan", "plateau_adaptation", "conflict_resolution", "curriculum"}

if FITCOACH_TASK not in VALID_TASKS:
    raise ValueError(f"Invalid FITCOACH_TASK='{FITCOACH_TASK}'")

# Use a lambda instead of functools.partial
def env_factory():
    return FitcoachEnvironment(task_id=FITCOACH_TASK)

app = create_app(env_factory, FitcoachAction, FitcoachObservation,
                 env_name="FitCoach", max_concurrent_envs=4)

def main(host="0.0.0.0", port=8000):
    import uvicorn
    uvicorn.run(app, host=host, port=port)

if __name__ == "__main__":
    main()