lyceum-cli 1.0.31__tar.gz → 1.0.32__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. {lyceum_cli-1.0.31 → lyceum_cli-1.0.32}/PKG-INFO +1 -1
  2. {lyceum_cli-1.0.31 → lyceum_cli-1.0.32}/lyceum/external/compute/execution/gpu_selection.py +19 -0
  3. {lyceum_cli-1.0.31 → lyceum_cli-1.0.32}/lyceum/shared/config.py +1 -1
  4. {lyceum_cli-1.0.31 → lyceum_cli-1.0.32}/lyceum_cli.egg-info/PKG-INFO +1 -1
  5. {lyceum_cli-1.0.31 → lyceum_cli-1.0.32}/setup.py +1 -1
  6. {lyceum_cli-1.0.31 → lyceum_cli-1.0.32}/lyceum/__init__.py +0 -0
  7. {lyceum_cli-1.0.31 → lyceum_cli-1.0.32}/lyceum/external/__init__.py +0 -0
  8. {lyceum_cli-1.0.31 → lyceum_cli-1.0.32}/lyceum/external/auth/__init__.py +0 -0
  9. {lyceum_cli-1.0.31 → lyceum_cli-1.0.32}/lyceum/external/auth/login.py +0 -0
  10. {lyceum_cli-1.0.31 → lyceum_cli-1.0.32}/lyceum/external/compute/__init__.py +0 -0
  11. {lyceum_cli-1.0.31 → lyceum_cli-1.0.32}/lyceum/external/compute/execution/__init__.py +0 -0
  12. {lyceum_cli-1.0.31 → lyceum_cli-1.0.32}/lyceum/external/compute/execution/config.py +0 -0
  13. {lyceum_cli-1.0.31 → lyceum_cli-1.0.32}/lyceum/external/compute/execution/docker.py +0 -0
  14. {lyceum_cli-1.0.31 → lyceum_cli-1.0.32}/lyceum/external/compute/execution/docker_compose.py +0 -0
  15. {lyceum_cli-1.0.31 → lyceum_cli-1.0.32}/lyceum/external/compute/execution/notebook.py +0 -0
  16. {lyceum_cli-1.0.31 → lyceum_cli-1.0.32}/lyceum/external/compute/execution/python.py +0 -0
  17. {lyceum_cli-1.0.31 → lyceum_cli-1.0.32}/lyceum/external/compute/execution/workloads.py +0 -0
  18. {lyceum_cli-1.0.31 → lyceum_cli-1.0.32}/lyceum/external/compute/inference/__init__.py +0 -0
  19. {lyceum_cli-1.0.31 → lyceum_cli-1.0.32}/lyceum/external/compute/inference/batch.py +0 -0
  20. {lyceum_cli-1.0.31 → lyceum_cli-1.0.32}/lyceum/external/compute/inference/chat.py +0 -0
  21. {lyceum_cli-1.0.31 → lyceum_cli-1.0.32}/lyceum/external/compute/inference/infer.py +0 -0
  22. {lyceum_cli-1.0.31 → lyceum_cli-1.0.32}/lyceum/external/compute/inference/models.py +0 -0
  23. {lyceum_cli-1.0.31 → lyceum_cli-1.0.32}/lyceum/external/general/__init__.py +0 -0
  24. {lyceum_cli-1.0.31 → lyceum_cli-1.0.32}/lyceum/external/vms/__init__.py +0 -0
  25. {lyceum_cli-1.0.31 → lyceum_cli-1.0.32}/lyceum/external/vms/instances.py +0 -0
  26. {lyceum_cli-1.0.31 → lyceum_cli-1.0.32}/lyceum/external/vms/management.py +0 -0
  27. {lyceum_cli-1.0.31 → lyceum_cli-1.0.32}/lyceum/main.py +0 -0
  28. {lyceum_cli-1.0.31 → lyceum_cli-1.0.32}/lyceum/shared/__init__.py +0 -0
  29. {lyceum_cli-1.0.31 → lyceum_cli-1.0.32}/lyceum/shared/display.py +0 -0
  30. {lyceum_cli-1.0.31 → lyceum_cli-1.0.32}/lyceum/shared/imports.py +0 -0
  31. {lyceum_cli-1.0.31 → lyceum_cli-1.0.32}/lyceum/shared/streaming.py +0 -0
  32. {lyceum_cli-1.0.31 → lyceum_cli-1.0.32}/lyceum_cli.egg-info/SOURCES.txt +0 -0
  33. {lyceum_cli-1.0.31 → lyceum_cli-1.0.32}/lyceum_cli.egg-info/dependency_links.txt +0 -0
  34. {lyceum_cli-1.0.31 → lyceum_cli-1.0.32}/lyceum_cli.egg-info/entry_points.txt +0 -0
  35. {lyceum_cli-1.0.31 → lyceum_cli-1.0.32}/lyceum_cli.egg-info/requires.txt +0 -0
  36. {lyceum_cli-1.0.31 → lyceum_cli-1.0.32}/lyceum_cli.egg-info/top_level.txt +0 -0
  37. {lyceum_cli-1.0.31 → lyceum_cli-1.0.32}/lyceum_cloud_execution_api_client/__init__.py +0 -0
  38. {lyceum_cli-1.0.31 → lyceum_cli-1.0.32}/lyceum_cloud_execution_api_client/api/__init__.py +0 -0
  39. {lyceum_cli-1.0.31 → lyceum_cli-1.0.32}/lyceum_cloud_execution_api_client/models/__init__.py +0 -0
  40. {lyceum_cli-1.0.31 → lyceum_cli-1.0.32}/setup.cfg +0 -0
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: lyceum-cli
3
- Version: 1.0.31
3
+ Version: 1.0.32
4
4
  Summary: Command-line interface for Lyceum Cloud Execution API
5
5
  Home-page: https://lyceum.technology
6
6
  Author: Lyceum Team
@@ -59,6 +59,22 @@ GPU_VRAM_GB = {
59
59
  "gpu.rtx6000pro": 48,
60
60
  }
61
61
 
62
+ # Fallback pricing per hour (used when API doesn't return prices)
63
+ GPU_PRICE_PER_HOUR = {
64
+ "cpu": 0.20,
65
+ "gpu": 0.39,
66
+ "gpu.t4": 0.39,
67
+ "gpu.t4.64gb": 1.50,
68
+ "gpu.a100": 2.00,
69
+ "gpu.a100.40gb": 1.95,
70
+ "gpu.a100.80gb": 1.99,
71
+ "gpu.h100": 3.29,
72
+ "gpu.h200": 3.69,
73
+ "gpu.l40s": 1.49,
74
+ "gpu.b200": 5.69,
75
+ "gpu.rtx6000pro": 1.95,
76
+ }
77
+
62
78
 
63
79
  def format_gpu_name(profile: str) -> str:
64
80
  """Format GPU profile name for display."""
@@ -95,6 +111,9 @@ def fetch_gpu_pricing() -> dict[str, float]:
95
111
  def calculate_cost(execution_time_s: float, hardware_profile: str, pricing: dict[str, float]) -> float | None:
96
112
  """Calculate cost based on execution time and GPU pricing."""
97
113
  price_per_hour = pricing.get(hardware_profile)
114
+ # Fallback to hardcoded pricing if API doesn't have this profile
115
+ if price_per_hour is None or price_per_hour == 0:
116
+ price_per_hour = GPU_PRICE_PER_HOUR.get(hardware_profile)
98
117
  if price_per_hour is None or price_per_hour == 0:
99
118
  return None
100
119
  return execution_time_s * (price_per_hour / 3600)
@@ -129,7 +129,7 @@ class _Config:
129
129
  if self.is_token_expired():
130
130
  console.print("[dim]Token expired, attempting refresh...[/dim]")
131
131
  if not self.refresh_access_token():
132
- console.print("[red]Token refresh failed. Please run 'lyceum login' again.[/red]")
132
+ console.print("[red]Token refresh failed. Please run 'lyceum auth login' again.[/red]")
133
133
  raise typer.Exit(1)
134
134
 
135
135
  # Return config instance - commands use httpx directly
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: lyceum-cli
3
- Version: 1.0.31
3
+ Version: 1.0.32
4
4
  Summary: Command-line interface for Lyceum Cloud Execution API
5
5
  Home-page: https://lyceum.technology
6
6
  Author: Lyceum Team
@@ -13,7 +13,7 @@ if readme_file.exists():
13
13
 
14
14
  setup(
15
15
  name="lyceum-cli",
16
- version="1.0.31",
16
+ version="1.0.32",
17
17
  description="Command-line interface for Lyceum Cloud Execution API",
18
18
  long_description=long_description,
19
19
  long_description_content_type="text/markdown",
File without changes
File without changes