Spaces:
Sleeping
Sleeping
| # 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. | |
| """ | |
| Data models for the SQL/Data Cleaning Sandbox Environment. | |
| Agents interact by sending SQL queries or Python snippets to clean | |
| messy databases and generate reports. | |
| """ | |
| from typing import Literal, Optional | |
| from openenv.core.env_server.types import Action, Observation | |
| from pydantic import Field | |
| class SqlSandboxAction(Action): | |
| """Action for the SQL Sandbox run a SQL query or Python snippet.""" | |
| tool: Literal["sql", "python"] = Field( | |
| ..., description="Tool to use: 'sql' for SQLite queries, 'python' for Python scripts" | |
| ) | |
| command: str = Field( | |
| ..., description="The SQL query or Python code to execute" | |
| ) | |
| class SqlSandboxObservation(Observation): | |
| """Observation returned after each step.""" | |
| output: str = Field(default="", description="stdout / query result") | |
| error: Optional[str] = Field(default=None, description="stderr or error message") | |
| current_step: int = Field(default=0, description="Current step number") | |
| max_steps: int = Field(default=20, description="Maximum allowed steps") | |
| task_description: str = Field(default="", description="Current task description") | |