summaryrefslogtreecommitdiff
path: root/snippets/hyperstack
diff options
context:
space:
mode:
Diffstat (limited to 'snippets/hyperstack')
-rw-r--r--snippets/hyperstack/hyperstack-vm.toml4
-rw-r--r--snippets/hyperstack/hyperstack.rb6
2 files changed, 7 insertions, 3 deletions
diff --git a/snippets/hyperstack/hyperstack-vm.toml b/snippets/hyperstack/hyperstack-vm.toml
index f1c80a7..4ec6879 100644
--- a/snippets/hyperstack/hyperstack-vm.toml
+++ b/snippets/hyperstack/hyperstack-vm.toml
@@ -100,7 +100,9 @@ container_name = "vllm_nemotron_super"
max_model_len = 65536
gpu_memory_utilization = 0.92
tensor_parallel_size = 1
-tool_call_parser = ""
+# llama3_json lets vLLM accept tool_choice requests (required by opencode).
+# Nemotron won't spontaneously call tools, so the vLLM 0.17.1 token_ids bug won't trigger.
+tool_call_parser = "llama3_json"
trust_remote_code = true
# OpenAI GPT-OSS 20B — ultra-fast MoE (3.6B active / 20B total, MXFP4), ~14 GB on A100.
diff --git a/snippets/hyperstack/hyperstack.rb b/snippets/hyperstack/hyperstack.rb
index 2ab53c9..f46ce6b 100644
--- a/snippets/hyperstack/hyperstack.rb
+++ b/snippets/hyperstack/hyperstack.rb
@@ -1106,9 +1106,11 @@ module HyperstackVM
end
def wait_for_ssh(host)
- # Remove stale host key for this IP — VMs frequently reuse IPs after
- # delete/recreate, causing StrictHostKeyChecking to reject the new key
+ # Remove stale host keys for both the IP and the WireGuard hostname — VMs
+ # frequently reuse IPs and the same WireGuard alias after delete/recreate,
+ # causing StrictHostKeyChecking to reject the new host key.
remove_stale_host_key(host)
+ remove_stale_host_key(@config.wireguard_gateway_hostname)
info "Waiting for SSH on #{host}:#{@config.ssh_port}..."
with_polling("SSH on #{host}:#{@config.ssh_port}") do
next nil unless tcp_open?(host, @config.ssh_port)