Spaces:
Sleeping
Sleeping
| # app.py | |
| # Copyright (c) Meta Platforms, Inc. and affiliates. | |
| # All rights reserved. | |
| # | |
| # This source code is licensed under the BSD-style license found in the | |
| # LICENSE file in the root directory of this source tree. | |
| try: | |
| from openenv.core.env_server.http_server import create_app | |
| except Exception as e: # pragma: no cover | |
| raise ImportError( | |
| "openenv is required for the web interface. Install dependencies with '\n uv sync\n'" | |
| ) from e | |
| from fastapi.responses import RedirectResponse, JSONResponse | |
| try: | |
| from ..models import ArchitectureAction, ArchitectureObservation | |
| from .architecture_env_environment import ArchitectureEnvironment | |
| except ImportError: | |
| from models import ArchitectureAction, ArchitectureObservation | |
| from server.architecture_env_environment import ArchitectureEnvironment | |
| app = create_app( | |
| ArchitectureEnvironment, | |
| ArchitectureAction, | |
| ArchitectureObservation, | |
| env_name="architecture_env", | |
| max_concurrent_envs=1, | |
| ) | |
| async def root(): | |
| return JSONResponse({"status": "ok", "app": "architecture_env"}) | |
| async def web_alias(path: str = ""): | |
| target = "/" if not path else f"/{path}" | |
| return RedirectResponse(url=target) | |
| def main(): | |
| import uvicorn | |
| uvicorn.run(app, host="0.0.0.0", port=8000) | |
| if __name__ == "__main__": | |
| main() |