计划执行与检查节点
executing-plans
按既定实施计划完成工作,保持过程检查和反馈。
serving【效率与协作】Configure and operate SkyPilot SkyServe services, replicas, readiness probes, updates, logs, and LLM serving recipes.
独立 GitHub 快照 · 自动分类 · 以原作者文档为准
Use this sub-skill when the user wants to deploy, update, inspect, debug, or tear down a SkyPilot SkyServe service. It owns service YAML structure, readiness probes, exposed service ports, replica and autoscaling policy, load balancing policy, rolling and blue-green updates, service status/log/down commands, and LLM-serving adaptations for vLLM, SGLang, TGI, FastChat, Ray Serve, or generic HTTP servers.
Do not use this sub-skill for generic task YAML details, cloud credentials, Kubernetes/Slurm/SSH setup, storage/file-mount troubleshooting, interactive cluster operations, managed jobs, or API server mechanics. Route those to sibling sub-skills.
resources, setup, run, envs, secrets, workdir, file_mounts, and volumes, use ../task-yaml/SKILL.md.service: section; first ensure the replica process starts an HTTP endpoint on 0.0.0.0 and that the declared resources.ports exposes the same ingress port.sky serve up --service-name <name> service.yaml for first deployment, sky serve update <name> service.yaml --mode rolling for compatible changes, and --mode blue_green when traffic should switch only after enough new replicas become ready.sky serve status <name> -v and sky serve logs before changing YAML when replicas are stuck; status states distinguish controller initialization, provisioning, startup, readiness, preemption, cleanup, and no-replica autoscale-to-zero states.sky serve down <name> for one service, sky serve down <name> --replica-id <id> for a single bad replica, or sky serve down <name> --purge only for failed services where resource leaks have been considered.python scripts/validate_service_yaml.py service.yaml --summary, then plan sky serve up --service-name <name> service.yaml./v1/models for OpenAI-compatible vLLM, /health for SGLang/TGI), align resources.ports with the server --port, add model download/GPU notes, and pass tokens through secrets or CLI --secret rather than inline plaintext.service.replicas for fixed count, or service.replica_policy with min_replicas, max_replicas, and target_qps_per_replica for autoscaling.resources.ports to the list and set service.ports to the single ingress port for the load balancer.sky serve update <name> <new.yaml> --mode rolling or --mode blue_green, and roll back by updating the service with the previous YAML.sky serve status <name> -v, sky serve logs <name> <replica-id> --tail 200 --no-follow, sky serve logs --controller <name> --tail 200 --no-follow, and sky serve logs --load-balancer <name> --tail 200 --no-follow.Before suggesting a command that mutates cloud resources, confirm:
sky serve up, update, and down can create, replace, or delete cloud/Kubernetes resources.service: section and a replica HTTP endpoint reachable on the exposed port./, uses the correct HTTP method expectation, and allows enough initial_delay_seconds for model download and warmup.service.ports is set when multiple resources.ports are exposed, and it matches the application ingress port.secrets/--secret, not hard-coded into shared YAML.From this sub-skill directory, run:
python scripts/validate_service_yaml.py path/to/service.yaml --summary
The helper loads the YAML, validates the top-level service: block with SkyServe's parser, validates the surrounding Task when possible, checks common service/replica port pitfalls, and prints a concise summary. It is not a launch dry run and does not require cloud credentials.