terradev-cli 3.7.1__tar.gz → 3.7.3__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.
- {terradev_cli-3.7.1 → terradev_cli-3.7.3}/PKG-INFO +285 -86
- {terradev_cli-3.7.1/terradev_cli → terradev_cli-3.7.3}/README.md +262 -28
- terradev_cli-3.7.3/core/async_config.py +268 -0
- {terradev_cli-3.7.1/terradev_cli → terradev_cli-3.7.3}/core/dag_executor.py +33 -24
- {terradev_cli-3.7.1/terradev_cli → terradev_cli-3.7.3}/core/model_orchestrator.py +19 -9
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/core/parallel_provisioner.py +6 -1
- {terradev_cli-3.7.1/terradev_cli → terradev_cli-3.7.3}/core/rate_limiter.py +11 -2
- {terradev_cli-3.7.1/terradev_cli → terradev_cli-3.7.3}/core/semantic_router.py +16 -2
- terradev_cli-3.7.3/core/session_manager.py +179 -0
- {terradev_cli-3.7.1/terradev_cli → terradev_cli-3.7.3}/core/warm_pool_manager.py +1 -1
- {terradev_cli-3.7.1/terradev_cli → terradev_cli-3.7.3}/setup.py +2 -2
- {terradev_cli-3.7.1 → terradev_cli-3.7.3}/terradev_cli.egg-info/PKG-INFO +285 -86
- terradev_cli-3.7.3/terradev_cli.egg-info/SOURCES.txt +121 -0
- terradev_cli-3.7.3/terradev_cli.egg-info/not-zip-safe +1 -0
- terradev_cli-3.7.3/terradev_cli.egg-info/requires.txt +29 -0
- terradev_cli-3.7.3/terradev_cli.egg-info/top_level.txt +7 -0
- terradev_cli-3.7.1/.clawhubignore +0 -5
- terradev_cli-3.7.1/.ebextensions/python.config +0 -6
- terradev_cli-3.7.1/.env.example +0 -84
- terradev_cli-3.7.1/.env.template +0 -164
- terradev_cli-3.7.1/.github/workflows/ci.yml +0 -105
- terradev_cli-3.7.1/.github/workflows/deploy.yml +0 -30
- terradev_cli-3.7.1/.github/workflows/release.yml +0 -50
- terradev_cli-3.7.1/.github/workflows/static.yml +0 -42
- terradev_cli-3.7.1/BingSiteAuth.xml +0 -4
- terradev_cli-3.7.1/Dockerfile +0 -55
- terradev_cli-3.7.1/Dockerfile.hub +0 -70
- terradev_cli-3.7.1/LICENSE +0 -114
- terradev_cli-3.7.1/MANIFEST.in +0 -33
- terradev_cli-3.7.1/PAGES_README.md +0 -45
- terradev_cli-3.7.1/PROGRESS_UPDATE_JUPYTER.ipynb +0 -445
- terradev_cli-3.7.1/README.md +0 -384
- terradev_cli-3.7.1/README_ACTION.md +0 -200
- terradev_cli-3.7.1/README_DOCKER.md +0 -287
- terradev_cli-3.7.1/README_JUPYTER.md +0 -382
- terradev_cli-3.7.1/README_long.md +0 -478
- terradev_cli-3.7.1/SKILL.md +0 -241
- terradev_cli-3.7.1/USER_GUIDE.md +0 -601
- terradev_cli-3.7.1/VLLM_AUTO_OPTIMIZATION_GUIDE.md +0 -294
- terradev_cli-3.7.1/VLLM_OPTIMIZATION_GUIDE.md +0 -220
- terradev_cli-3.7.1/VLLM_OPTIMIZATION_SUMMARY.md +0 -155
- terradev_cli-3.7.1/action.py +0 -106
- terradev_cli-3.7.1/action.yml +0 -50
- terradev_cli-3.7.1/activations/973dfe463ec85785f5f95af5ba3906eedb2d931c24e69824a89ea65dba4e813b.json +0 -1
- terradev_cli-3.7.1/ai-discovery.json +0 -114
- terradev_cli-3.7.1/analysis/api-differences-comparison.tf +0 -311
- terradev_cli-3.7.1/analysis/cost-structure-differences.tf +0 -198
- terradev_cli-3.7.1/analysis/inference-arbitrage-pivot.tf +0 -322
- terradev_cli-3.7.1/apis/free-apis-latency-arbitrage.tf +0 -504
- terradev_cli-3.7.1/b2b_roi_analysis.json +0 -142
- terradev_cli-3.7.1/bucket-policy.json +0 -12
- terradev_cli-3.7.1/business/compute-arbitrage-business.md +0 -383
- terradev_cli-3.7.1/byoapi_real_snapshot.json +0 -107
- terradev_cli-3.7.1/clusters/glm-5/README.md +0 -73
- terradev_cli-3.7.1/clusters/glm-5/helm/values-glm5.yaml +0 -152
- terradev_cli-3.7.1/clusters/glm-5/k8s/hpa.yaml +0 -55
- terradev_cli-3.7.1/clusters/glm-5/k8s/model-cache-pvc.yaml +0 -35
- terradev_cli-3.7.1/clusters/glm-5/k8s/namespace.yaml +0 -8
- terradev_cli-3.7.1/clusters/glm-5/k8s/pdb.yaml +0 -14
- terradev_cli-3.7.1/clusters/glm-5/k8s/service.yaml +0 -49
- terradev_cli-3.7.1/clusters/glm-5/k8s/sglang-deployment.yaml +0 -176
- terradev_cli-3.7.1/clusters/glm-5/k8s/vllm-deployment.yaml +0 -215
- terradev_cli-3.7.1/clusters/glm-5/task.yaml +0 -81
- terradev_cli-3.7.1/clusters/glm-5/terraform/main.tf +0 -190
- terradev_cli-3.7.1/clusters/glm-5/terraform/outputs.tf +0 -60
- terradev_cli-3.7.1/clusters/glm-5/terraform/variables.tf +0 -108
- terradev_cli-3.7.1/clusters/moe-template/README.md +0 -141
- terradev_cli-3.7.1/clusters/moe-template/helm/values-moe.yaml +0 -231
- terradev_cli-3.7.1/clusters/moe-template/k8s/deployment.yaml +0 -358
- terradev_cli-3.7.1/clusters/moe-template/k8s/hpa.yaml +0 -51
- terradev_cli-3.7.1/clusters/moe-template/k8s/model-cache-pvc.yaml +0 -19
- terradev_cli-3.7.1/clusters/moe-template/k8s/namespace.yaml +0 -9
- terradev_cli-3.7.1/clusters/moe-template/k8s/pdb.yaml +0 -14
- terradev_cli-3.7.1/clusters/moe-template/k8s/service.yaml +0 -47
- terradev_cli-3.7.1/clusters/moe-template/task.yaml +0 -159
- terradev_cli-3.7.1/clusters/moe-template/terraform/main.tf +0 -213
- terradev_cli-3.7.1/clusters/moe-template/terraform/outputs.tf +0 -60
- terradev_cli-3.7.1/clusters/moe-template/terraform/variables.tf +0 -170
- terradev_cli-3.7.1/clusters/rag-template/README.md +0 -60
- terradev_cli-3.7.1/clusters/rag-template/helm/values-rag.yaml +0 -106
- terradev_cli-3.7.1/clusters/rag-template/k8s/deployment.yaml +0 -290
- terradev_cli-3.7.1/clusters/rag-template/terraform/main.tf +0 -84
- terradev_cli-3.7.1/complete_weakness_resolution_report.json +0 -1336
- terradev_cli-3.7.1/config.json +0 -1
- terradev_cli-3.7.1/demo/RECORDING_GUIDE.md +0 -80
- terradev_cli-3.7.1/demo/generate_gif.py +0 -339
- terradev_cli-3.7.1/demo/terradev-demo.gif +0 -0
- terradev_cli-3.7.1/demo_k8s_config.yaml +0 -35
- terradev_cli-3.7.1/docker-compose.yml +0 -101
- terradev_cli-3.7.1/docs/ADVANCED_FINANCIAL_INNOVATIONS.md +0 -173
- terradev_cli-3.7.1/docs/API_DOCUMENTATION.md +0 -901
- terradev_cli-3.7.1/docs/BingSiteAuth.xml +0 -4
- terradev_cli-3.7.1/docs/FINOPS_ATTRIBUTION_SYSTEM.md +0 -286
- terradev_cli-3.7.1/docs/USER_GUIDE.md +0 -952
- terradev_cli-3.7.1/docs/architecture.md +0 -228
- terradev_cli-3.7.1/docs/index.html +0 -167
- terradev_cli-3.7.1/docs/robots.txt +0 -28
- terradev_cli-3.7.1/docs/sitemap.xml +0 -45
- terradev_cli-3.7.1/eb_deploy.zip +0 -1
- terradev_cli-3.7.1/genius_data_storage/data_compressor.py +0 -377
- terradev_cli-3.7.1/genius_data_storage/genius_data_demo.py +0 -357
- terradev_cli-3.7.1/genius_data_storage/integrity_verifier.py +0 -582
- terradev_cli-3.7.1/genius_data_storage/main.tf +0 -682
- terradev_cli-3.7.1/genius_data_storage/zero_egress_accessor.py +0 -524
- terradev_cli-3.7.1/gpu-check.sh +0 -84
- terradev_cli-3.7.1/grafana_training_dashboard.json +0 -385
- terradev_cli-3.7.1/helm/terradev/Chart.yaml +0 -38
- terradev_cli-3.7.1/helm/terradev/templates/_helpers.tpl +0 -127
- terradev_cli-3.7.1/helm/terradev/templates/deployment.yaml +0 -176
- terradev_cli-3.7.1/helm/terradev/values.yaml +0 -423
- terradev_cli-3.7.1/high_throughput_workload.json +0 -5
- terradev_cli-3.7.1/index.html +0 -167
- terradev_cli-3.7.1/infrastructure/kubernetes/microservices.yaml +0 -633
- terradev_cli-3.7.1/infrastructure/terraform/main.tf +0 -1304
- terradev_cli-3.7.1/infrastructure/terraform/parallelism.tf +0 -86
- terradev_cli-3.7.1/integrations/cli-tool.tf +0 -606
- terradev_cli-3.7.1/integrations/cloud-management-widgets.tf +0 -131
- terradev_cli-3.7.1/integrations/cloud-provider-apis.py +0 -602
- terradev_cli-3.7.1/integrations/critical-widgets.tf +0 -933
- terradev_cli-3.7.1/integrations/devops-cicd-widgets.tf +0 -243
- terradev_cli-3.7.1/integrations/devops-essential-tools.tf +0 -314
- terradev_cli-3.7.1/integrations/docker-integration.tf +0 -423
- terradev_cli-3.7.1/integrations/kubernetes-operator.tf +0 -276
- terradev_cli-3.7.1/integrations/mlflow-integration.tf +0 -366
- terradev_cli-3.7.1/kaggle_notebooks/01_hf_spaces_cost_optimization.ipynb +0 -456
- terradev_cli-3.7.1/kubernetes_training_deployment.yaml +0 -253
- terradev_cli-3.7.1/llms.txt +0 -209
- terradev_cli-3.7.1/modules/datadog/README.md +0 -59
- terradev_cli-3.7.1/modules/datadog/dashboard.tf +0 -237
- terradev_cli-3.7.1/modules/datadog/monitors.tf +0 -203
- terradev_cli-3.7.1/modules/datadog/outputs.tf +0 -21
- terradev_cli-3.7.1/modules/datadog/provider.tf +0 -5
- terradev_cli-3.7.1/modules/datadog/variables.tf +0 -77
- terradev_cli-3.7.1/modules/datadog/versions.tf +0 -10
- terradev_cli-3.7.1/nginx.conf +0 -30
- terradev_cli-3.7.1/openclaw-skill/terradev-gpu-cloud/.clawhubignore +0 -5
- terradev_cli-3.7.1/openclaw-skill/terradev-gpu-cloud/LICENSE +0 -21
- terradev_cli-3.7.1/openclaw-skill/terradev-gpu-cloud/README.md +0 -106
- terradev_cli-3.7.1/openclaw-skill/terradev-gpu-cloud/SKILL.md +0 -314
- terradev_cli-3.7.1/openclaw-skill/terradev-gpu-cloud/gpu-check.sh +0 -84
- terradev_cli-3.7.1/parallel_provisioning.tf +0 -338
- terradev_cli-3.7.1/partnerships/brand-partnerships.tf +0 -523
- terradev_cli-3.7.1/partnerships/partnership-roadmap.tf +0 -232
- terradev_cli-3.7.1/pricing_analysis_report.json +0 -164
- terradev_cli-3.7.1/prometheus_training_config.yml +0 -185
- terradev_cli-3.7.1/provision_based_pricing_analysis.json +0 -111
- terradev_cli-3.7.1/pypi_traffic_report.json +0 -84
- terradev_cli-3.7.1/pyproject.toml +0 -184
- terradev_cli-3.7.1/pyproject_v2.toml +0 -119
- terradev_cli-3.7.1/real_day_one_snapshot.json +0 -52
- terradev_cli-3.7.1/remaining_25_analysis_report.json +0 -722
- terradev_cli-3.7.1/render.yaml +0 -18
- terradev_cli-3.7.1/requirements-render.txt +0 -1
- terradev_cli-3.7.1/requirements.txt +0 -56
- terradev_cli-3.7.1/requirements_api.txt +0 -8
- terradev_cli-3.7.1/requirements_eb.txt +0 -4
- terradev_cli-3.7.1/requirements_stripe.txt +0 -5
- terradev_cli-3.7.1/robots.txt +0 -28
- terradev_cli-3.7.1/sample_workload.json +0 -7
- terradev_cli-3.7.1/setup/Lambda Cloud API spec 1.8.3.json +0 -4816
- terradev_cli-3.7.1/setup/account-setup-guide.tf +0 -393
- terradev_cli-3.7.1/setup/setup.sh +0 -411
- terradev_cli-3.7.1/sitemap.xml +0 -45
- terradev_cli-3.7.1/telemetry_production.db-shm +0 -0
- terradev_cli-3.7.1/telemetry_production.db-wal +0 -0
- terradev_cli-3.7.1/terradev_cli/CHANGELOG.md +0 -163
- terradev_cli-3.7.1/terradev_cli/README_old.md +0 -492
- terradev_cli-3.7.1/terradev_cli/README_with_emojis.md +0 -356
- terradev_cli-3.7.1/terradev_cli/__init__.py +0 -11
- terradev_cli-3.7.1/terradev_cli/__main__.py +0 -31
- terradev_cli-3.7.1/terradev_cli/bandit-report.json +0 -388
- terradev_cli-3.7.1/terradev_cli/build/lib/core/__init__.py +0 -1
- terradev_cli-3.7.1/terradev_cli/build/lib/core/dag_executor.py +0 -636
- terradev_cli-3.7.1/terradev_cli/build/lib/core/model_orchestrator.py +0 -740
- terradev_cli-3.7.1/terradev_cli/build/lib/core/rate_limiter.py +0 -428
- terradev_cli-3.7.1/terradev_cli/build/lib/core/semantic_router.py +0 -1105
- terradev_cli-3.7.1/terradev_cli/build/lib/core/warm_pool_manager.py +0 -496
- terradev_cli-3.7.1/terradev_cli/cli.py +0 -8542
- terradev_cli-3.7.1/terradev_cli/cli_clean.py +0 -35
- terradev_cli-3.7.1/terradev_cli/cli_enhanced.py +0 -577
- terradev_cli-3.7.1/terradev_cli/cli_final.py +0 -823
- terradev_cli-3.7.1/terradev_cli/cli_optimization.py +0 -479
- terradev_cli-3.7.1/terradev_cli/cli_optimization_fixed.py +0 -875
- terradev_cli-3.7.1/terradev_cli/cli_optimization_simple.py +0 -850
- terradev_cli-3.7.1/terradev_cli/cli_simple.py +0 -249
- terradev_cli-3.7.1/terradev_cli/cli_tiered.py +0 -372
- terradev_cli-3.7.1/terradev_cli/core/auth.py +0 -293
- terradev_cli-3.7.1/terradev_cli/core/checkpoint_manager.py +0 -570
- terradev_cli-3.7.1/terradev_cli/core/config.py +0 -274
- terradev_cli-3.7.1/terradev_cli/core/cost_scaler.py +0 -474
- terradev_cli-3.7.1/terradev_cli/core/cost_tracker.py +0 -341
- terradev_cli-3.7.1/terradev_cli/core/data_governance.py +0 -796
- terradev_cli-3.7.1/terradev_cli/core/dataset_stager.py +0 -519
- terradev_cli-3.7.1/terradev_cli/core/deployment_router.py +0 -412
- terradev_cli-3.7.1/terradev_cli/core/drift_detector.py +0 -243
- terradev_cli-3.7.1/terradev_cli/core/egress_optimizer.py +0 -743
- terradev_cli-3.7.1/terradev_cli/core/gitops_manager.py +0 -745
- terradev_cli-3.7.1/terradev_cli/core/gpu_topology.py +0 -1213
- terradev_cli-3.7.1/terradev_cli/core/helm_generator.py +0 -923
- terradev_cli-3.7.1/terradev_cli/core/helm_generator_old.py +0 -771
- terradev_cli-3.7.1/terradev_cli/core/hf_cli_integration.py +0 -439
- terradev_cli-3.7.1/terradev_cli/core/hf_smart_templates.py +0 -996
- terradev_cli-3.7.1/terradev_cli/core/hf_spaces.py +0 -348
- terradev_cli-3.7.1/terradev_cli/core/inference_router.py +0 -1312
- terradev_cli-3.7.1/terradev_cli/core/job_state_manager.py +0 -420
- terradev_cli-3.7.1/terradev_cli/core/manifest_cache.py +0 -114
- terradev_cli-3.7.1/terradev_cli/core/manifest_example.json +0 -1
- terradev_cli-3.7.1/terradev_cli/core/parallel_provisioner.py +0 -194
- terradev_cli-3.7.1/terradev_cli/core/preflight_validator.py +0 -820
- terradev_cli-3.7.1/terradev_cli/core/price_discovery.py +0 -385
- terradev_cli-3.7.1/terradev_cli/core/price_discovery_mock.py +0 -407
- terradev_cli-3.7.1/terradev_cli/core/price_intelligence.py +0 -897
- terradev_cli-3.7.1/terradev_cli/core/quick_start.py +0 -307
- terradev_cli-3.7.1/terradev_cli/core/semantic_signals/__init__.py +0 -35
- terradev_cli-3.7.1/terradev_cli/core/semantic_signals/base_signal.py +0 -121
- terradev_cli-3.7.1/terradev_cli/core/semantic_signals/complexity_signal.py +0 -184
- terradev_cli-3.7.1/terradev_cli/core/semantic_signals/domain_signal.py +0 -144
- terradev_cli-3.7.1/terradev_cli/core/semantic_signals/keyword_signal.py +0 -139
- terradev_cli-3.7.1/terradev_cli/core/semantic_signals/language_signal.py +0 -164
- terradev_cli-3.7.1/terradev_cli/core/semantic_signals/modality_signal.py +0 -150
- terradev_cli-3.7.1/terradev_cli/core/semantic_signals/orchestrator.py +0 -341
- terradev_cli-3.7.1/terradev_cli/core/semantic_signals/routing_policy.yaml +0 -135
- terradev_cli-3.7.1/terradev_cli/core/semantic_signals/safety_signal.py +0 -164
- terradev_cli-3.7.1/terradev_cli/core/ssh_key_manager.py +0 -182
- terradev_cli-3.7.1/terradev_cli/core/stripe_manager.py +0 -563
- terradev_cli-3.7.1/terradev_cli/core/telemetry.py +0 -463
- terradev_cli-3.7.1/terradev_cli/core/telemetry_backup.py +0 -490
- terradev_cli-3.7.1/terradev_cli/core/terradev_engine.py +0 -530
- terradev_cli-3.7.1/terradev_cli/core/tier_manager.py +0 -330
- terradev_cli-3.7.1/terradev_cli/core/trace_viewer.py +0 -157
- terradev_cli-3.7.1/terradev_cli/core/training_monitor.py +0 -546
- terradev_cli-3.7.1/terradev_cli/core/training_orchestrator.py +0 -692
- terradev_cli-3.7.1/terradev_cli/cost_optimizer.py +0 -518
- terradev_cli-3.7.1/terradev_cli/credential_prompt.py +0 -164
- terradev_cli-3.7.1/terradev_cli/demo.py +0 -375
- terradev_cli-3.7.1/terradev_cli/entry_point.py +0 -210
- terradev_cli-3.7.1/terradev_cli/integrations/Terradev LOGO BLACK.png +0 -0
- terradev_cli-3.7.1/terradev_cli/integrations/Terradev LOGO WHITEW.png +0 -0
- terradev_cli-3.7.1/terradev_cli/integrations/__init__.py +0 -1
- terradev_cli-3.7.1/terradev_cli/integrations/datadog_integration.py +0 -688
- terradev_cli-3.7.1/terradev_cli/integrations/prometheus_integration.py +0 -302
- terradev_cli-3.7.1/terradev_cli/integrations/wandb_integration.py +0 -134
- terradev_cli-3.7.1/terradev_cli/k8s/terraform_wrapper.py +0 -425
- terradev_cli-3.7.1/terradev_cli/kubernetes/inferx-cost-optimized.yaml +0 -630
- terradev_cli-3.7.1/terradev_cli/kubernetes/inferx-infrastructure.yaml +0 -404
- terradev_cli-3.7.1/terradev_cli/kubernetes/inferx-models.yaml +0 -531
- terradev_cli-3.7.1/terradev_cli/kubernetes/inferx-platform.yaml +0 -619
- terradev_cli-3.7.1/terradev_cli/kubernetes/inferx_setup.py +0 -550
- terradev_cli-3.7.1/terradev_cli/ml_services/__init__.py +0 -41
- terradev_cli-3.7.1/terradev_cli/ml_services/dvc_service.py +0 -561
- terradev_cli-3.7.1/terradev_cli/ml_services/guardrails_service.py +0 -395
- terradev_cli-3.7.1/terradev_cli/ml_services/huggingface_service.py +0 -483
- terradev_cli-3.7.1/terradev_cli/ml_services/kserve_service.py +0 -584
- terradev_cli-3.7.1/terradev_cli/ml_services/kubernetes_enhanced.py +0 -960
- terradev_cli-3.7.1/terradev_cli/ml_services/kubernetes_enhanced_fixed.py +0 -408
- terradev_cli-3.7.1/terradev_cli/ml_services/kubernetes_service.py +0 -572
- terradev_cli-3.7.1/terradev_cli/ml_services/langchain_service.py +0 -560
- terradev_cli-3.7.1/terradev_cli/ml_services/langgraph_service.py +0 -615
- terradev_cli-3.7.1/terradev_cli/ml_services/langsmith_service.py +0 -481
- terradev_cli-3.7.1/terradev_cli/ml_services/lmcache_service.py +0 -457
- terradev_cli-3.7.1/terradev_cli/ml_services/mlflow_service.py +0 -585
- terradev_cli-3.7.1/terradev_cli/ml_services/ollama_service.py +0 -492
- terradev_cli-3.7.1/terradev_cli/ml_services/phoenix_service.py +0 -301
- terradev_cli-3.7.1/terradev_cli/ml_services/qdrant_service.py +0 -253
- terradev_cli-3.7.1/terradev_cli/ml_services/ray_enhanced.py +0 -1100
- terradev_cli-3.7.1/terradev_cli/ml_services/ray_service.py +0 -555
- terradev_cli-3.7.1/terradev_cli/ml_services/sglang_service.py +0 -526
- terradev_cli-3.7.1/terradev_cli/ml_services/vllm_service.py +0 -1180
- terradev_cli-3.7.1/terradev_cli/ml_services/wandb_enhanced.py +0 -788
- terradev_cli-3.7.1/terradev_cli/ml_services/wandb_service.py +0 -426
- terradev_cli-3.7.1/terradev_cli/providers/__init__.py +0 -1
- terradev_cli-3.7.1/terradev_cli/providers/alibaba_provider.py +0 -492
- terradev_cli-3.7.1/terradev_cli/providers/aws_provider.py +0 -540
- terradev_cli-3.7.1/terradev_cli/providers/azure_provider.py +0 -303
- terradev_cli-3.7.1/terradev_cli/providers/base_provider.py +0 -194
- terradev_cli-3.7.1/terradev_cli/providers/baseten_provider.py +0 -193
- terradev_cli-3.7.1/terradev_cli/providers/coreweave_provider.py +0 -226
- terradev_cli-3.7.1/terradev_cli/providers/crusoe_provider.py +0 -463
- terradev_cli-3.7.1/terradev_cli/providers/demo_mode.py +0 -123
- terradev_cli-3.7.1/terradev_cli/providers/digitalocean_provider.py +0 -310
- terradev_cli-3.7.1/terradev_cli/providers/fluidstack_provider.py +0 -359
- terradev_cli-3.7.1/terradev_cli/providers/gcp_provider.py +0 -362
- terradev_cli-3.7.1/terradev_cli/providers/hetzner_provider.py +0 -469
- terradev_cli-3.7.1/terradev_cli/providers/huggingface_provider.py +0 -244
- terradev_cli-3.7.1/terradev_cli/providers/hyperstack_provider.py +0 -353
- terradev_cli-3.7.1/terradev_cli/providers/inferx_provider.py +0 -374
- terradev_cli-3.7.1/terradev_cli/providers/lambda_labs_provider.py +0 -215
- terradev_cli-3.7.1/terradev_cli/providers/oracle_provider.py +0 -254
- terradev_cli-3.7.1/terradev_cli/providers/ovhcloud_provider.py +0 -429
- terradev_cli-3.7.1/terradev_cli/providers/provider_factory.py +0 -107
- terradev_cli-3.7.1/terradev_cli/providers/real_pricing.py +0 -293
- terradev_cli-3.7.1/terradev_cli/providers/runpod_provider.py +0 -258
- terradev_cli-3.7.1/terradev_cli/providers/siliconflow_provider.py +0 -454
- terradev_cli-3.7.1/terradev_cli/providers/tensordock_provider.py +0 -237
- terradev_cli-3.7.1/terradev_cli/providers/vastai_provider.py +0 -197
- terradev_cli-3.7.1/terradev_cli/requirements.txt +0 -3
- terradev_cli-3.7.1/terradev_cli/requirements_minimal.txt +0 -3
- terradev_cli-3.7.1/terradev_cli/safety-report.json +0 -18554
- terradev_cli-3.7.1/terradev_cli/telemetry_protection.py +0 -180
- terradev_cli-3.7.1/terradev_cli/terradev_cli/__init__.py +0 -1
- terradev_cli-3.7.1/terradev_cli/terradev_cli/cli.py +0 -8366
- terradev_cli-3.7.1/terradev_cli/terraform/main.tf +0 -139
- terradev_cli-3.7.1/terradev_cli/terraform/modules/__init__.py +0 -19
- terradev_cli-3.7.1/terradev_cli/terraform/modules/gpu-node-aws/bootstrap.sh +0 -271
- terradev_cli-3.7.1/terradev_cli/terraform/modules/gpu-node-aws/main.tf +0 -143
- terradev_cli-3.7.1/terradev_cli/terraform/modules/gpu-node-aws/outputs.tf +0 -69
- terradev_cli-3.7.1/terradev_cli/terraform/modules/gpu-node-aws/variables.tf +0 -83
- terradev_cli-3.7.1/terradev_cli/terraform/modules/gpu-node-aws/versions.tf +0 -12
- terradev_cli-3.7.1/terradev_cli/terraform/modules/gpu-node-hyperstack/bootstrap.sh +0 -231
- terradev_cli-3.7.1/terradev_cli/terraform/modules/gpu-node-hyperstack/main.tf +0 -107
- terradev_cli-3.7.1/terradev_cli/terraform/modules/gpu-node-hyperstack/outputs.tf +0 -59
- terradev_cli-3.7.1/terradev_cli/terraform/modules/gpu-node-hyperstack/variables.tf +0 -63
- terradev_cli-3.7.1/terradev_cli/terraform/modules/gpu-node-hyperstack/versions.tf +0 -12
- terradev_cli-3.7.1/terradev_cli/terraform/modules/gpu-node-lambda/bootstrap.sh +0 -231
- terradev_cli-3.7.1/terradev_cli/terraform/modules/gpu-node-lambda/main.tf +0 -107
- terradev_cli-3.7.1/terradev_cli/terraform/modules/gpu-node-lambda/outputs.tf +0 -59
- terradev_cli-3.7.1/terradev_cli/terraform/modules/gpu-node-lambda/variables.tf +0 -63
- terradev_cli-3.7.1/terradev_cli/terraform/modules/gpu-node-lambda/versions.tf +0 -12
- terradev_cli-3.7.1/terradev_cli/terraform/modules/gpu-node-vastai/bootstrap.sh +0 -231
- terradev_cli-3.7.1/terradev_cli/terraform/modules/gpu-node-vastai/main.tf +0 -107
- terradev_cli-3.7.1/terradev_cli/terraform/modules/gpu-node-vastai/outputs.tf +0 -59
- terradev_cli-3.7.1/terradev_cli/terraform/modules/gpu-node-vastai/variables.tf +0 -63
- terradev_cli-3.7.1/terradev_cli/terraform/modules/gpu-node-vastai/versions.tf +0 -12
- terradev_cli-3.7.1/terradev_cli/terraform/modules/k8s-control-plane/join-script.tpl +0 -95
- terradev_cli-3.7.1/terradev_cli/terraform/modules/k8s-control-plane/kubeconfig.tpl +0 -29
- terradev_cli-3.7.1/terradev_cli/terraform/modules/k8s-control-plane/main.tf +0 -183
- terradev_cli-3.7.1/terradev_cli/terraform/modules/k8s-control-plane/outputs.tf +0 -50
- terradev_cli-3.7.1/terradev_cli/terraform/modules/k8s-control-plane/variables.tf +0 -59
- terradev_cli-3.7.1/terradev_cli/terraform/modules/k8s-control-plane/versions.tf +0 -16
- terradev_cli-3.7.1/terradev_cli/terraform/modules/networking/main.tf +0 -193
- terradev_cli-3.7.1/terradev_cli/terraform/modules/networking/outputs.tf +0 -50
- terradev_cli-3.7.1/terradev_cli/terraform/modules/networking/variables.tf +0 -52
- terradev_cli-3.7.1/terradev_cli/terraform/modules/networking/versions.tf +0 -12
- terradev_cli-3.7.1/terradev_cli/terraform/outputs.tf +0 -118
- terradev_cli-3.7.1/terradev_cli/terraform/price-optimizer/optimal-allocation.py +0 -188
- terradev_cli-3.7.1/terradev_cli/terraform/providers.tf +0 -22
- terradev_cli-3.7.1/terradev_cli/terraform/variables.tf +0 -95
- terradev_cli-3.7.1/terradev_cli/utils/__init__.py +0 -1
- terradev_cli-3.7.1/terradev_cli/utils/formatters.py +0 -235
- terradev_cli-3.7.1/terradev_cli.egg-info/SOURCES.txt +0 -481
- terradev_cli-3.7.1/terradev_cli.egg-info/requires.txt +0 -59
- terradev_cli-3.7.1/terradev_cli.egg-info/top_level.txt +0 -1
- terradev_cli-3.7.1/terraform.tfvars.example +0 -50
- terradev_cli-3.7.1/terraform_cli/README.md +0 -471
- terradev_cli-3.7.1/terraform_cli/demo_usage.py +0 -152
- terradev_cli-3.7.1/terraform_cli/install.sh +0 -346
- terradev_cli-3.7.1/terraform_cli/terradev_cli.py +0 -717
- terradev_cli-3.7.1/terraform_optimization/backend.tf +0 -606
- terradev_cli-3.7.1/terraform_optimization/error_handling.py +0 -742
- terradev_cli-3.7.1/terraform_optimization/storage_choice_matrix.py +0 -681
- terradev_cli-3.7.1/terraform_optimization/test_error_handler.py +0 -83
- terradev_cli-3.7.1/terraform_optimization/versions.tf +0 -668
- terradev_cli-3.7.1/terraform_transparency/audit_demo/trail_3caed73ad5bf.json +0 -428
- terradev_cli-3.7.1/terraform_transparency/audit_trail.py +0 -610
- terradev_cli-3.7.1/terraform_transparency/audit_trails.json +0 -430
- terradev_cli-3.7.1/terraform_transparency/decision_engine.py +0 -671
- terradev_cli-3.7.1/terraform_transparency/decision_logs.json +0 -192
- terradev_cli-3.7.1/terraform_transparency/operations.json +0 -45
- terradev_cli-3.7.1/terraform_transparency/terraform_manager.py +0 -627
- terradev_cli-3.7.1/terraform_transparency/terraform_plans.json +0 -1
- terradev_cli-3.7.1/terraform_transparency/transparency_demo.py +0 -417
- terradev_cli-3.7.1/terraform_transparency/transparency_report.json +0 -33
- terradev_cli-3.7.1/test_vllm_optimization.py +0 -182
- terradev_cli-3.7.1/tests/INTEGRATION_STRATEGY.md +0 -337
- terradev_cli-3.7.1/tests/Makefile +0 -201
- terradev_cli-3.7.1/tests/ci_pipeline.py +0 -480
- terradev_cli-3.7.1/tests/conftest.py +0 -10
- terradev_cli-3.7.1/tests/simple_test.py +0 -181
- terradev_cli-3.7.1/tests/test_checkpoint_manager.py +0 -198
- terradev_cli-3.7.1/tests/test_cli_smoke.py +0 -200
- terradev_cli-3.7.1/tests/test_dag_executor.py +0 -400
- terradev_cli-3.7.1/tests/test_integration.py +0 -577
- terradev_cli-3.7.1/tests/test_job_state_manager.py +0 -307
- terradev_cli-3.7.1/tests/test_providers.py +0 -264
- terradev_cli-3.7.1/tests/test_semantic_router.py +0 -1474
- terradev_cli-3.7.1/tests/test_ssh_key_manager.py +0 -154
- terradev_cli-3.7.1/tests/test_training_monitor.py +0 -237
- terradev_cli-3.7.1/tests/test_training_orchestrator.py +0 -321
- terradev_cli-3.7.1/volatility_charts/aws_a100_volatility.png +0 -0
- terradev_cli-3.7.1/volatility_charts/aws_v100_volatility.png +0 -0
- terradev_cli-3.7.1/volatility_charts/runpod_a100_volatility.png +0 -0
- terradev_cli-3.7.1/volatility_charts/runpod_v100_volatility.png +0 -0
- {terradev_cli-3.7.1/terradev_cli → terradev_cli-3.7.3}/core/__init__.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/core/auth.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/core/checkpoint_manager.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/core/config.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/core/cost_scaler.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/core/cost_tracker.py +0 -0
- {terradev_cli-3.7.1/terradev_cli → terradev_cli-3.7.3}/core/cuda_graph_integrator.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/core/data_governance.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/core/dataset_stager.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/core/deployment_router.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/core/drift_detector.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/core/egress_optimizer.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/core/gitops_manager.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/core/gpu_topology.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/core/helm_generator.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/core/helm_generator_old.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/core/hf_cli_integration.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/core/hf_smart_templates.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/core/hf_spaces.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/core/inference_router.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/core/job_state_manager.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/core/manifest_cache.py +0 -0
- {terradev_cli-3.7.1/terradev_cli → terradev_cli-3.7.3}/core/optimization_config.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/core/preflight_validator.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/core/price_discovery.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/core/price_discovery_mock.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/core/price_intelligence.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/core/quick_start.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/core/semantic_signals/__init__.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/core/semantic_signals/base_signal.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/core/semantic_signals/complexity_signal.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/core/semantic_signals/domain_signal.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/core/semantic_signals/keyword_signal.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/core/semantic_signals/language_signal.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/core/semantic_signals/modality_signal.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/core/semantic_signals/orchestrator.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/core/semantic_signals/safety_signal.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/core/ssh_key_manager.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/core/stripe_manager.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/core/telemetry.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/core/telemetry_backup.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/core/terradev_engine.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/core/tier_manager.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/core/trace_viewer.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/core/training_monitor.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/core/training_orchestrator.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/integrations/__init__.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/integrations/datadog_integration.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/integrations/prometheus_integration.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/integrations/wandb_integration.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/ml_services/__init__.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/ml_services/dvc_service.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/ml_services/guardrails_service.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/ml_services/huggingface_service.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/ml_services/kserve_service.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/ml_services/kubernetes_enhanced.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/ml_services/kubernetes_enhanced_fixed.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/ml_services/kubernetes_service.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/ml_services/langchain_service.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/ml_services/langgraph_service.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/ml_services/langsmith_service.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/ml_services/lmcache_service.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/ml_services/mlflow_service.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/ml_services/ollama_service.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/ml_services/phoenix_service.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/ml_services/qdrant_service.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/ml_services/ray_enhanced.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/ml_services/ray_service.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/ml_services/sglang_service.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/ml_services/vllm_service.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/ml_services/wandb_enhanced.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/ml_services/wandb_service.py +0 -0
- {terradev_cli-3.7.1/terradev_cli → terradev_cli-3.7.3}/optimization/__init__.py +0 -0
- {terradev_cli-3.7.1/terradev_cli → terradev_cli-3.7.3}/optimization/auto_optimizer.py +0 -0
- {terradev_cli-3.7.1/terradev_cli → terradev_cli-3.7.3}/optimization/cuco_optimizer.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/providers/__init__.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/providers/alibaba_provider.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/providers/aws_provider.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/providers/azure_provider.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/providers/base_provider.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/providers/baseten_provider.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/providers/coreweave_provider.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/providers/crusoe_provider.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/providers/demo_mode.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/providers/digitalocean_provider.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/providers/fluidstack_provider.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/providers/gcp_provider.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/providers/hetzner_provider.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/providers/huggingface_provider.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/providers/hyperstack_provider.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/providers/inferx_provider.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/providers/lambda_labs_provider.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/providers/oracle_provider.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/providers/ovhcloud_provider.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/providers/provider_factory.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/providers/real_pricing.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/providers/runpod_provider.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/providers/siliconflow_provider.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/providers/tensordock_provider.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/providers/vastai_provider.py +0 -0
- {terradev_cli-3.7.1 → terradev_cli-3.7.3}/setup.cfg +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/terradev_cli/__init__.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/terradev_cli/cli.py +0 -0
- {terradev_cli-3.7.1 → terradev_cli-3.7.3}/terradev_cli.egg-info/dependency_links.txt +0 -0
- {terradev_cli-3.7.1 → terradev_cli-3.7.3}/terradev_cli.egg-info/entry_points.txt +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/utils/__init__.py +0 -0
- {terradev_cli-3.7.1/terradev_cli/build/lib → terradev_cli-3.7.3}/utils/formatters.py +0 -0
|
@@ -1,49 +1,24 @@
|
|
|
1
1
|
Metadata-Version: 2.4
|
|
2
2
|
Name: terradev-cli
|
|
3
|
-
Version: 3.7.
|
|
4
|
-
Summary:
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
Project-URL: Documentation, https://docs.terradev.com
|
|
10
|
-
Project-URL: Repository, https://github.com/theoddden/Terradev
|
|
11
|
-
Project-URL: Bug Tracker, https://github.com/theoddden/Terradev/issues
|
|
12
|
-
Project-URL: Changelog, https://github.com/theoddden/Terradev/blob/main/CHANGELOG.md
|
|
13
|
-
Project-URL: Analytics, https://api.terradev.cloud/dashboard
|
|
14
|
-
Keywords: cloud,provisioning,gpu,multi-cloud,arbitrage,aws,gcp,azure,runpod,vastai,machine-learning,cost-optimization,parallel,gitops,argocd,flux,kubernetes,infrastructure-as-code,langchain,langgraph,sglang,wandb,mlflow,analytics,setup,conversion,telemetry,real-time,monitoring,dashboard,huggingface,huggingface-spaces,gradio,streamlit,llm,transformers,pytorch,sentence-transformers,smart-templates,hardware-optimization,model-deployment,inference,training,byoapi,terraform,kubernetes,helm,karpenter,opa,prometheus,grafana,ray,vllm,ollama,dvc,data-version-control,numa,disaggregated-inference,moe,mixture-of-experts,qwen,distserve,xcd,mi300x,h200,prefill-decode,cuda-graph,cuda-graphs,numa-topology,gpu-optimization,passive-optimization,warm-pool,endpoint-scoring
|
|
15
|
-
Classifier: Development Status :: 5 - Production/Stable
|
|
3
|
+
Version: 3.7.3
|
|
4
|
+
Summary: NUMA-aware GPU provisioning and orchestration for stateless MoE workloads of all sizes
|
|
5
|
+
Home-page: https://github.com/theoddden/terradev
|
|
6
|
+
Author: Terradev Team
|
|
7
|
+
Author-email: team@terradev.com
|
|
8
|
+
Classifier: Development Status :: 4 - Beta
|
|
16
9
|
Classifier: Intended Audience :: Developers
|
|
17
|
-
Classifier:
|
|
18
|
-
Classifier: Topic :: Software Development :: Libraries :: Python Modules
|
|
19
|
-
Classifier: Topic :: System :: Systems Administration
|
|
20
|
-
Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content
|
|
21
|
-
Classifier: License :: Other/Proprietary License
|
|
10
|
+
Classifier: License :: OSI Approved :: MIT License
|
|
22
11
|
Classifier: Programming Language :: Python :: 3
|
|
23
12
|
Classifier: Programming Language :: Python :: 3.8
|
|
24
13
|
Classifier: Programming Language :: Python :: 3.9
|
|
25
14
|
Classifier: Programming Language :: Python :: 3.10
|
|
26
15
|
Classifier: Programming Language :: Python :: 3.11
|
|
27
|
-
|
|
28
|
-
Classifier: Environment :: Console
|
|
29
|
-
Classifier: Natural Language :: English
|
|
30
|
-
Requires-Python: >=3.9
|
|
16
|
+
Requires-Python: >=3.8
|
|
31
17
|
Description-Content-Type: text/markdown
|
|
32
|
-
License-File: LICENSE
|
|
33
18
|
Requires-Dist: click>=8.0.0
|
|
34
19
|
Requires-Dist: aiohttp>=3.9.0
|
|
35
20
|
Requires-Dist: pyyaml>=6.0
|
|
36
|
-
Requires-Dist: cryptography>=41.0.0
|
|
37
21
|
Requires-Dist: requests>=2.31.0
|
|
38
|
-
Requires-Dist: gradio>=4.0.0
|
|
39
|
-
Requires-Dist: streamlit>=1.28.0
|
|
40
|
-
Requires-Dist: transformers>=4.0.0
|
|
41
|
-
Requires-Dist: torch>=2.0.0
|
|
42
|
-
Requires-Dist: sentence-transformers>=2.0.0
|
|
43
|
-
Requires-Dist: plotly>=5.0.0
|
|
44
|
-
Requires-Dist: pandas>=1.0.0
|
|
45
|
-
Requires-Dist: numpy>=1.0.0
|
|
46
|
-
Requires-Dist: huggingface-hub>=0.19.0
|
|
47
22
|
Requires-Dist: stripe>=7.0.0
|
|
48
23
|
Provides-Extra: aws
|
|
49
24
|
Requires-Dist: boto3>=1.34.0; extra == "aws"
|
|
@@ -52,49 +27,65 @@ Requires-Dist: google-cloud-compute>=1.8.0; extra == "gcp"
|
|
|
52
27
|
Provides-Extra: azure
|
|
53
28
|
Requires-Dist: azure-mgmt-compute>=29.0.0; extra == "azure"
|
|
54
29
|
Requires-Dist: azure-identity>=1.12.0; extra == "azure"
|
|
55
|
-
Provides-Extra:
|
|
56
|
-
Requires-Dist:
|
|
57
|
-
|
|
30
|
+
Provides-Extra: oracle
|
|
31
|
+
Requires-Dist: oci>=2.118.0; extra == "oracle"
|
|
32
|
+
Provides-Extra: hf
|
|
33
|
+
Requires-Dist: huggingface-hub>=0.19.0; extra == "hf"
|
|
58
34
|
Provides-Extra: all
|
|
59
35
|
Requires-Dist: boto3>=1.34.0; extra == "all"
|
|
60
36
|
Requires-Dist: google-cloud-compute>=1.8.0; extra == "all"
|
|
61
37
|
Requires-Dist: azure-mgmt-compute>=29.0.0; extra == "all"
|
|
62
38
|
Requires-Dist: azure-identity>=1.12.0; extra == "all"
|
|
63
|
-
Requires-Dist:
|
|
64
|
-
Requires-Dist: langgraph>=0.0.20; extra == "all"
|
|
65
|
-
Requires-Dist: sglang>=0.3.0; extra == "all"
|
|
66
|
-
Requires-Dist: wandb>=0.16.0; extra == "all"
|
|
67
|
-
Requires-Dist: mlflow>=2.8.0; extra == "all"
|
|
39
|
+
Requires-Dist: oci>=2.118.0; extra == "all"
|
|
68
40
|
Requires-Dist: huggingface-hub>=0.19.0; extra == "all"
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
Dynamic: license-file
|
|
41
|
+
Dynamic: author
|
|
42
|
+
Dynamic: author-email
|
|
43
|
+
Dynamic: classifier
|
|
44
|
+
Dynamic: description
|
|
45
|
+
Dynamic: description-content-type
|
|
46
|
+
Dynamic: home-page
|
|
47
|
+
Dynamic: provides-extra
|
|
48
|
+
Dynamic: requires-dist
|
|
49
|
+
Dynamic: requires-python
|
|
50
|
+
Dynamic: summary
|
|
51
|
+
|
|
52
|
+
# Terradev CLI v3.7.3 - Enterprise GPU Infrastructure
|
|
53
|
+
|
|
54
|
+
**Enterprise-grade GPU provisioning and orchestration with adaptive scaling for 500+ concurrent users**
|
|
55
|
+
|
|
56
|
+
Terradev is a cross-cloud compute-provisioning CLI that compresses + stages datasets, provisions optimal instances + nodes, and deploys **3-5x faster** than sequential provisioning with enterprise-grade scalability.
|
|
86
57
|
|
|
87
|
-
|
|
58
|
+
## What's New in v3.7.3
|
|
88
59
|
|
|
89
|
-
|
|
60
|
+
### 🚀 Enterprise Scaling Features
|
|
90
61
|
|
|
91
|
-
|
|
92
|
-
<img src="https://raw.githubusercontent.com/theoddden/Terradev/main/demo/terradev-demo.gif" alt="Terradev CLI Demo" width="800">
|
|
93
|
-
</p>
|
|
62
|
+
**Adaptive Concurrency Control**: Automatically scales from 6 to 50 concurrent provisions based on load, supporting 500+ concurrent users with 10x throughput improvement.
|
|
94
63
|
|
|
95
|
-
|
|
64
|
+
**Priority-Based Model Queuing**: Heap-based priority queues replace linear lists, enabling O(log n) operations for 1000+ models with 100x faster queue processing.
|
|
65
|
+
|
|
66
|
+
**Connection Pooling**: Reused HTTP connections across provider APIs reduce overhead by 80% for high-frequency operations.
|
|
67
|
+
|
|
68
|
+
**Lazy Tool Loading**: MCP server loads tools on-demand, reducing memory footprint by 50% for enterprise deployments.
|
|
69
|
+
|
|
70
|
+
**Async Configuration I/O**: Non-blocking configuration operations with TTL-based caching eliminate file I/O bottlenecks.
|
|
71
|
+
|
|
72
|
+
**Performance Improvements**:
|
|
73
|
+
- **10x** concurrent user capacity (50 → 500+ users)
|
|
74
|
+
- **8x** parallel provisioning throughput
|
|
75
|
+
- **50%** memory usage reduction
|
|
76
|
+
- **100x** model queue performance at scale
|
|
77
|
+
- **Non-blocking** configuration operations
|
|
78
|
+
|
|
79
|
+
```bash
|
|
80
|
+
# Enterprise-scale provisioning with adaptive concurrency
|
|
81
|
+
terradev provision -g H100 -n 50 --parallel 25 # Automatically scales to 25 concurrent
|
|
82
|
+
|
|
83
|
+
# Priority-based model management
|
|
84
|
+
terradev ml warm-pool --configure --strategy priority_based --max-warm-models 100
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
### CUDA Graph Optimization with NUMA Awareness
|
|
96
88
|
|
|
97
|
-
### 🧠 CUDA Graph Optimization with NUMA Awareness
|
|
98
89
|
Revolutionary passive CUDA Graph optimization that automatically analyzes and optimizes GPU topology for maximum graph performance:
|
|
99
90
|
|
|
100
91
|
```bash
|
|
@@ -106,31 +97,31 @@ terradev provision -g H100 -n 4
|
|
|
106
97
|
# Warm pool prioritizes graph-compatible models
|
|
107
98
|
```
|
|
108
99
|
|
|
109
|
-
|
|
110
|
-
-
|
|
111
|
-
-
|
|
112
|
-
-
|
|
113
|
-
-
|
|
100
|
+
#### Performance Gains:
|
|
101
|
+
- 2-5x speedup for CUDA Graph workloads with optimal NUMA topology
|
|
102
|
+
- 30-50% bandwidth penalty eliminated through automatic GPU/NIC alignment
|
|
103
|
+
- Zero configuration - everything runs passively in the background
|
|
104
|
+
- Model-aware optimization - different strategies for transformers vs MoE models
|
|
114
105
|
|
|
115
|
-
|
|
106
|
+
#### NUMA Topology Intelligence
|
|
116
107
|
- **PIX (Same PCIe Switch)**: Optimal for CUDA Graphs (1.0 score)
|
|
117
|
-
- **PXB (Same Root Complex)**: Very good (0.8 score)
|
|
108
|
+
- **PXB (Same Root Complex)**: Very good (0.8 score)
|
|
118
109
|
- **PHB (Same NUMA Node)**: Good (0.6 score)
|
|
119
110
|
- **SYS (Cross-Socket)**: Poor for graphs (0.3 score)
|
|
120
111
|
|
|
121
|
-
|
|
112
|
+
#### Model-Specific Optimization
|
|
122
113
|
- **Transformers**: Highest priority (0.9 base score) - benefit most from graphs
|
|
123
114
|
- **CNNs**: Moderate priority (0.7 base score) - benefit moderately
|
|
124
115
|
- **MoE Models**: Lower priority (0.4 base score) - dynamic routing challenges
|
|
125
116
|
- **Auto-detection**: Model types identified automatically from model IDs
|
|
126
117
|
|
|
127
|
-
|
|
118
|
+
#### Background Optimization
|
|
128
119
|
- **Passive Analysis**: Runs automatically every 5 minutes
|
|
129
120
|
- **Warm Pool Enhancement**: CUDA Graph models get higher priority
|
|
130
121
|
- **Endpoint Selection**: Routes to NUMA-optimal endpoints automatically
|
|
131
122
|
- **Performance Tracking**: Monitors graph capture time and replay speedup
|
|
132
123
|
|
|
133
|
-
##
|
|
124
|
+
## Complete Tutorial
|
|
134
125
|
|
|
135
126
|
### Step 1: Install Terradev
|
|
136
127
|
```bash
|
|
@@ -160,7 +151,7 @@ This shows you where to get your API key. Then configure it:
|
|
|
160
151
|
terradev configure --provider runpod
|
|
161
152
|
```
|
|
162
153
|
|
|
163
|
-
Paste your API key when prompted. It's stored locally at
|
|
154
|
+
Paste your API key when prompted. It's stored locally at ~/.terradev/credentials.json, never sent to a Terradev server. Add more providers later:
|
|
164
155
|
|
|
165
156
|
```bash
|
|
166
157
|
terradev configure --provider vastai
|
|
@@ -271,7 +262,7 @@ terradev monitor --job my-job
|
|
|
271
262
|
# Check status
|
|
272
263
|
terradev train-status
|
|
273
264
|
|
|
274
|
-
#
|
|
265
|
+
# 6. List checkpoints when done
|
|
275
266
|
terradev checkpoint list --job my-job
|
|
276
267
|
```
|
|
277
268
|
|
|
@@ -374,6 +365,214 @@ If the provisioning layer is wrong, every optimization above it underperforms. A
|
|
|
374
365
|
|
|
375
366
|
Terradev handles the foundation automatically so the rest of the stack works the way it's supposed to.
|
|
376
367
|
|
|
368
|
+
## Complete Workflow Examples
|
|
369
|
+
|
|
370
|
+
### Example 1: LLM Inference Service
|
|
371
|
+
```bash
|
|
372
|
+
#!/bin/bash
|
|
373
|
+
|
|
374
|
+
# Complete LLM deployment workflow
|
|
375
|
+
|
|
376
|
+
# 1. Find cheapest GPU
|
|
377
|
+
terradev quote -g A100 --quick
|
|
378
|
+
# 2. Provision with auto-optimization
|
|
379
|
+
terradev provision -g A100 -n 2 --parallel 4
|
|
380
|
+
# 3. Deploy optimized vLLM
|
|
381
|
+
terradev ml vllm --start --instance-ip $(terradev status --json | jq -r '.[0].ip') --model meta-llama/Llama-2-7b-hf --tp-size 2
|
|
382
|
+
# 4. Set up monitoring
|
|
383
|
+
terradev monitor --endpoint llama-api --live
|
|
384
|
+
# 5. Add customer adapter
|
|
385
|
+
terradev lora add -e http://$(terradev status --json | jq -r '.[0].ip'):8000 -n customer-a -p ./adapters/customer-a
|
|
386
|
+
```
|
|
387
|
+
|
|
388
|
+
### Example 2: MoE Model Production Deployment
|
|
389
|
+
```bash
|
|
390
|
+
#!/bin/bash
|
|
391
|
+
|
|
392
|
+
# GLM-5 production deployment
|
|
393
|
+
|
|
394
|
+
# 1. Deploy MoE cluster
|
|
395
|
+
terradev provision --task clusters/moe-template/task.yaml --set model_id=zai-org/GLM-5-FP8 --set tp_size=8
|
|
396
|
+
# 2. Deploy monitoring
|
|
397
|
+
terradev k8s monitoring-stack --cluster glm-5-cluster
|
|
398
|
+
# 3. Set up warm pool for bursty traffic
|
|
399
|
+
terradev ml warm-pool --configure --strategy traffic_based --max-warm-models 5 --endpoint glm-5-api
|
|
400
|
+
# 4. Test failover
|
|
401
|
+
terradev inferx failover --endpoint glm-5-api --test-load 5000
|
|
402
|
+
```
|
|
403
|
+
|
|
404
|
+
### Example 3: InferX + LoRA Hybrid Deployment (Production Multi-Tenant)
|
|
405
|
+
```bash
|
|
406
|
+
#!/bin/bash
|
|
407
|
+
|
|
408
|
+
# Production deployment with cold start failover and multi-tenant LoRA adapters
|
|
409
|
+
|
|
410
|
+
echo "🚀 Deploying InferX + LoRA Hybrid Inference Service"
|
|
411
|
+
|
|
412
|
+
# 1. Deploy baseline reserved GPUs for steady traffic
|
|
413
|
+
echo "📍 Step 1: Provision reserved baseline capacity"
|
|
414
|
+
terradev provision -g H100 -n 2 --parallel 4 \
|
|
415
|
+
--tag baseline-llm \
|
|
416
|
+
--max-price 2.50
|
|
417
|
+
|
|
418
|
+
BASELINE_IP=$(terradev status --json | jq -r '.[] | select(.tags[] | contains("baseline-llm")) | .ip' | head -1)
|
|
419
|
+
|
|
420
|
+
# 2. Deploy optimized vLLM with LoRA support on baseline
|
|
421
|
+
echo "📍 Step 2: Deploy vLLM with LoRA adapter support"
|
|
422
|
+
terradev ml vllm --start \
|
|
423
|
+
--instance-ip $BASELINE_IP \
|
|
424
|
+
--model meta-llama/Llama-2-7b-hf \
|
|
425
|
+
--tp-size 2 \
|
|
426
|
+
--enable-lora \
|
|
427
|
+
--enable-kv-offloading \
|
|
428
|
+
--enable-sleep-mode \
|
|
429
|
+
--port 8000
|
|
430
|
+
|
|
431
|
+
# 3. Load customer-specific LoRA adapters
|
|
432
|
+
echo "📍 Step 3: Load multi-tenant LoRA adapters"
|
|
433
|
+
terradev lora add -e http://$BASELINE_IP:8000 \
|
|
434
|
+
-n customer-enterprise-a \
|
|
435
|
+
-p ./adapters/customer-enterprise-a
|
|
436
|
+
|
|
437
|
+
terradev lora add -e http://$BASELINE_IP:8000 \
|
|
438
|
+
-n customer-startup-b \
|
|
439
|
+
-p ./adapters/customer-startup-b
|
|
440
|
+
|
|
441
|
+
terradev lora add -e http://$BASELINE_IP:8000 \
|
|
442
|
+
-n customer-internal \
|
|
443
|
+
-p ./adapters/customer-internal
|
|
444
|
+
|
|
445
|
+
# 4. Configure InferX for cold start and burst handling
|
|
446
|
+
echo "📍 Step 4: Configure InferX for serverless burst capacity"
|
|
447
|
+
terradev inferx deploy \
|
|
448
|
+
--endpoint burst-llm-api \
|
|
449
|
+
--model-id meta-llama/Llama-2-7b-hf \
|
|
450
|
+
--baseline-endpoint http://$BASELINE_IP:8000 \
|
|
451
|
+
--cold-start-threshold 100 \
|
|
452
|
+
--burst-capacity 10 \
|
|
453
|
+
--failover-strategy active-passive
|
|
454
|
+
|
|
455
|
+
# 5. Set up intelligent routing with semantic awareness
|
|
456
|
+
echo "📍 Step 5: Configure semantic routing for multi-tenant requests"
|
|
457
|
+
cat > routing-config.yaml << EOF
|
|
458
|
+
rules:
|
|
459
|
+
- name: "enterprise_customers"
|
|
460
|
+
condition: "header:x-customer-id == 'enterprise-a'"
|
|
461
|
+
route_to: "baseline"
|
|
462
|
+
lora_adapter: "customer-enterprise-a"
|
|
463
|
+
strategy: "latency"
|
|
464
|
+
|
|
465
|
+
- name: "startup_customers"
|
|
466
|
+
condition: "header:x-customer-id == 'startup-b'"
|
|
467
|
+
route_to: "baseline"
|
|
468
|
+
lora_adapter: "customer-startup-b"
|
|
469
|
+
strategy: "cost"
|
|
470
|
+
|
|
471
|
+
- name: "internal_workloads"
|
|
472
|
+
condition: "header:x-api-key starts_with 'internal_'"
|
|
473
|
+
route_to: "baseline"
|
|
474
|
+
lora_adapter: "customer-internal"
|
|
475
|
+
strategy: "throughput"
|
|
476
|
+
|
|
477
|
+
- name: "burst_traffic"
|
|
478
|
+
condition: "request_rate > 50"
|
|
479
|
+
route_to: "inferx"
|
|
480
|
+
strategy: "auto-scale"
|
|
481
|
+
|
|
482
|
+
- name: "fallback"
|
|
483
|
+
condition: "default"
|
|
484
|
+
route_to: "baseline"
|
|
485
|
+
lora_adapter: "customer-internal"
|
|
486
|
+
strategy: "round-robin"
|
|
487
|
+
EOF
|
|
488
|
+
|
|
489
|
+
terradev semantic-router --deploy --config routing-config.yaml
|
|
490
|
+
|
|
491
|
+
# 6. Configure warm pool for frequently used adapters
|
|
492
|
+
echo "📍 Step 6: Configure warm pool for LoRA adapters"
|
|
493
|
+
terradev ml warm-pool --configure \
|
|
494
|
+
--strategy adapter_based \
|
|
495
|
+
--max-warm-models 5 \
|
|
496
|
+
--warm-adapters customer-enterprise-a,customer-internal \
|
|
497
|
+
--idle-eviction-minutes 10 \
|
|
498
|
+
--enable-predictive-warming
|
|
499
|
+
|
|
500
|
+
# 7. Set up comprehensive monitoring and alerting
|
|
501
|
+
echo "📍 Step 7: Deploy monitoring stack"
|
|
502
|
+
terradev k8s monitoring-stack --cluster production
|
|
503
|
+
|
|
504
|
+
# Configure W&B for ML observability
|
|
505
|
+
terradev ml wandb --setup-alerts \
|
|
506
|
+
--endpoint http://$BASELINE_IP:8000 \
|
|
507
|
+
--metric-thresholds "latency_p95<2000,throughput>100,gpu_utilization>80" \
|
|
508
|
+
--alert-channels slack,email
|
|
509
|
+
|
|
510
|
+
# Configure InferX-specific monitoring
|
|
511
|
+
terradev inferx status --endpoint burst-llm-api --detailed
|
|
512
|
+
terradev inferx failover --endpoint burst-llm-api --test-load 1000
|
|
513
|
+
|
|
514
|
+
# 8. Test the complete setup
|
|
515
|
+
echo "📍 Step 8: Testing complete deployment"
|
|
516
|
+
echo "Testing baseline endpoint with LoRA..."
|
|
517
|
+
curl -X POST http://$BASELINE_IP:8000/v1/chat/completions \
|
|
518
|
+
-H "Content-Type: application/json" \
|
|
519
|
+
-H "x-customer-id: enterprise-a" \
|
|
520
|
+
-d '{
|
|
521
|
+
"model": "meta-llama/Llama-2-7b-hf",
|
|
522
|
+
"messages": [{"role": "user", "content": "Hello from enterprise customer!"}],
|
|
523
|
+
"max_tokens": 100
|
|
524
|
+
}'
|
|
525
|
+
|
|
526
|
+
echo "Testing InferX burst endpoint..."
|
|
527
|
+
curl -X POST https://inferx.terradev.cloud/burst-llm-api/v1/chat/completions \
|
|
528
|
+
-H "Content-Type: application/json" \
|
|
529
|
+
-H "Authorization: Bearer $INFERX_API_KEY" \
|
|
530
|
+
-d '{
|
|
531
|
+
"model": "meta-llama/Llama-2-7b-hf",
|
|
532
|
+
"messages": [{"role": "user", "content": "Hello from burst traffic!"}],
|
|
533
|
+
"max_tokens": 100
|
|
534
|
+
}'
|
|
535
|
+
|
|
536
|
+
echo "📍 Step 9: Deployment summary"
|
|
537
|
+
echo "✅ Baseline endpoint: http://$BASELINE_IP:8000"
|
|
538
|
+
echo "✅ InferX endpoint: https://inferx.terradev.cloud/burst-llm-api"
|
|
539
|
+
echo "✅ LoRA adapters loaded: $(terradev lora list -e http://$BASELINE_IP:8000 --count)"
|
|
540
|
+
echo "✅ Semantic routing: Active"
|
|
541
|
+
echo "✅ Warm pool: Configured for top adapters"
|
|
542
|
+
echo "✅ Monitoring: W&B + Prometheus + Grafana"
|
|
543
|
+
|
|
544
|
+
# 10. Set up automated LoRA updates
|
|
545
|
+
echo "📍 Step 10: Configure automated LoRA adapter updates"
|
|
546
|
+
cat > lora-update-config.yaml << EOF
|
|
547
|
+
adapters:
|
|
548
|
+
- name: "customer-enterprise-a"
|
|
549
|
+
path: "./adapters/customer-enterprise-a"
|
|
550
|
+
update_strategy: "rolling"
|
|
551
|
+
health_check: true
|
|
552
|
+
rollback_on_failure: true
|
|
553
|
+
|
|
554
|
+
- name: "customer-startup-b"
|
|
555
|
+
path: "./adapters/customer-startup-b"
|
|
556
|
+
update_strategy: "blue_green"
|
|
557
|
+
health_check: true
|
|
558
|
+
rollback_on_failure: true
|
|
559
|
+
|
|
560
|
+
monitoring:
|
|
561
|
+
update_frequency: "hourly"
|
|
562
|
+
health_check_timeout: "30s"
|
|
563
|
+
rollback_threshold: "error_rate > 0.05"
|
|
564
|
+
EOF
|
|
565
|
+
|
|
566
|
+
terradev lora auto-update --config lora-update-config.yaml
|
|
567
|
+
|
|
568
|
+
echo "🎉 InferX + LoRA Hybrid Deployment Complete!"
|
|
569
|
+
echo ""
|
|
570
|
+
echo "📊 Next Steps:"
|
|
571
|
+
echo "1. Monitor performance: terradev monitor --endpoint hybrid-llm --live"
|
|
572
|
+
echo "2. Check LoRA performance: terradev lora metrics --endpoint http://$BASELINE_IP:8000"
|
|
573
|
+
echo "3. Test failover: terradev inferx failover --endpoint burst-llm-api --test-load 5000"
|
|
574
|
+
echo "4. Update adapters: terradev lora update -n customer-enterprise-a -p ./new-adapters/"
|
|
575
|
+
|
|
377
576
|
## Quick Reference
|
|
378
577
|
```bash
|
|
379
578
|
# Set up cloud provider credentials
|
|
@@ -407,7 +606,7 @@ terradev analytics --days 30
|
|
|
407
606
|
terradev optimize
|
|
408
607
|
```
|
|
409
608
|
|
|
410
|
-
##
|
|
609
|
+
## Features
|
|
411
610
|
|
|
412
611
|
- **19 Cloud Providers**: RunPod, VastAI, Lambda Labs, AWS, GCP, Azure, Oracle, and more
|
|
413
612
|
- **Automatic Topology Optimization**: NUMA alignment, RDMA, CPU pinning
|
|
@@ -419,7 +618,7 @@ terradev optimize
|
|
|
419
618
|
- **GitOps Automation**: Production-ready workflows with ArgoCD/Flux
|
|
420
619
|
- **CUDA Graph Optimization**: Passive NUMA-aware graph performance optimization
|
|
421
620
|
|
|
422
|
-
##
|
|
621
|
+
## Installation
|
|
423
622
|
|
|
424
623
|
```bash
|
|
425
624
|
# Basic installation
|
|
@@ -435,9 +634,9 @@ pip install terradev-cli[azure] # Azure
|
|
|
435
634
|
pip install terradev-cli[hf] # HuggingFace Spaces
|
|
436
635
|
```
|
|
437
636
|
|
|
438
|
-
##
|
|
637
|
+
## Configuration
|
|
439
638
|
|
|
440
|
-
Your API keys are stored locally at
|
|
639
|
+
Your API keys are stored locally at ~/.terradev/credentials.json and never sent to Terradev servers.
|
|
441
640
|
|
|
442
641
|
```bash
|
|
443
642
|
# Configure multiple providers
|
|
@@ -447,22 +646,22 @@ terradev configure --provider aws
|
|
|
447
646
|
terradev configure --provider gcp
|
|
448
647
|
```
|
|
449
648
|
|
|
450
|
-
##
|
|
649
|
+
## Performance
|
|
451
650
|
|
|
452
651
|
- **2-8x throughput improvements** with vLLM optimization
|
|
453
652
|
- **30-50% bandwidth penalty eliminated** with NUMA topology
|
|
454
653
|
- **2-5x CUDA Graph speedup** with optimal topology
|
|
455
654
|
- **Up to 90% cost savings** with automatic provider switching
|
|
456
655
|
|
|
457
|
-
##
|
|
656
|
+
## Contributing
|
|
458
657
|
|
|
459
658
|
We welcome contributions! Please see our [Contributing Guide](CONTRIBUTING.md) for details.
|
|
460
659
|
|
|
461
|
-
##
|
|
660
|
+
## License
|
|
462
661
|
|
|
463
|
-
|
|
662
|
+
BUSL 1.1 License - see [LICENSE](LICENSE) file for details.
|
|
464
663
|
|
|
465
|
-
##
|
|
664
|
+
## Support
|
|
466
665
|
|
|
467
666
|
- **Documentation**: [Full User Guide](USER_GUIDE.md)
|
|
468
667
|
- **Issues**: [GitHub Issues](https://github.com/theoddden/Terradev/issues)
|