Save local untracked files before merge
This commit is contained in:
@@ -0,0 +1,53 @@
|
||||
import os
|
||||
import sys
|
||||
import time
|
||||
from lightning_sdk import Studio, Machine
|
||||
|
||||
def main():
|
||||
print("Starting Orchestrator for Hardware Experiment...")
|
||||
|
||||
user_id = os.environ.get("LIGHTNING_USER_ID")
|
||||
api_key = os.environ.get("LIGHTNING_API_KEY")
|
||||
if not user_id or not api_key:
|
||||
print("Error: Missing Lightning credentials in environment.")
|
||||
sys.exit(1)
|
||||
|
||||
try:
|
||||
# 1. Initialize a new Studio
|
||||
studio_name = "becomingone-experiment"
|
||||
print(f"Creating Lightning Studio: {studio_name}")
|
||||
studio = Studio(name=studio_name)
|
||||
|
||||
print("Starting Studio on L4 GPU instance...")
|
||||
studio.start(machine=Machine.L4)
|
||||
|
||||
# 2. Upload the codebase
|
||||
print("Uploading becomingone package...")
|
||||
studio.upload_folder("/tmp/becomingone", "/teamspace/studios/this_studio/becomingone")
|
||||
|
||||
# 3. Run the payload
|
||||
print("Executing Experiment Payload...")
|
||||
# Note: pip install -e .[ml] installs transformers, torch, etc.
|
||||
cmd = "cd /teamspace/studios/this_studio/becomingone && pip install -e .[ml] && pip install pandas transformers torch && python experiments/experiment_payload.py"
|
||||
studio.run(cmd)
|
||||
|
||||
# 4. Download results
|
||||
print("Downloading Results...")
|
||||
studio.download_file("/teamspace/studios/this_studio/becomingone/experiment_results.csv", "/tmp/becomingone/experiments/experiment_results.csv")
|
||||
|
||||
print("Experiment completed successfully.")
|
||||
|
||||
except Exception as e:
|
||||
print(f"Error during orchestration: {e}")
|
||||
|
||||
finally:
|
||||
print("Cleaning up Studio...")
|
||||
try:
|
||||
studio.stop()
|
||||
studio.delete()
|
||||
print("Studio deleted.")
|
||||
except Exception as e:
|
||||
print(f"Warning: Failed to delete studio: {e}")
|
||||
|
||||
if __name__ == "__main__":
|
||||
main()
|
||||
Reference in New Issue
Block a user