Refactor LLM configuration to remove llamacpp support
- Removed references to llamacpp from configuration files, scripts, and documentation, streamlining the LLM setup process to focus solely on Ollama. - Updated environment variables and paths to eliminate llamacpp-related entries, ensuring clarity in the configuration. - Adjusted CLI commands and help messages to reflect the removal of llamacpp, enhancing user experience and reducing confusion. - Revised documentation to provide clear guidance on using Ollama exclusively, including updates to setup instructions and runtime options.
This commit is contained in:
@@ -31,19 +31,6 @@ DATA = "/mnt/swarm_data"
|
||||
|
||||
# Forwarded to remote install_*.sh (from .env / gpu-rent.vars → os.environ).
|
||||
_OLLAMA_INSTALL_ENV = ("OLLAMA_VERSION", "OLLAMA_SHA256")
|
||||
_LLAMACPP_INSTALL_ENV = (
|
||||
"LLAMACPP_TAG",
|
||||
"LLAMACPP_ASSET_URL",
|
||||
"LLAMACPP_SHA256",
|
||||
"LLAMACPP_BUILD_CUDA",
|
||||
"LLAMACPP_BACKEND",
|
||||
"LLAMACPP_FORCE_REINSTALL",
|
||||
"LLAMACPP_NGL",
|
||||
"LLAMACPP_CTX",
|
||||
"LLAMACPP_HOST",
|
||||
"LLAMACPP_PORT",
|
||||
"LLAMACPP_EXTRA_ARGS",
|
||||
)
|
||||
|
||||
|
||||
def _remote_llm_env(cfg: Config, *keys: str) -> dict[str, str]:
|
||||
@@ -450,7 +437,7 @@ def provision_llm(cfg: Config, host: str, log: Log) -> None:
|
||||
check=False,
|
||||
)
|
||||
|
||||
# Always drop the other runtime so VRAM is not held by a leftover unit.
|
||||
# Drop LLM units that should not hold VRAM for this runtime.
|
||||
if runtime == "none":
|
||||
log("LLM: none — останавливаю gpu-rent-ollama / gpu-rent-llamacpp если были")
|
||||
_stop_units("gpu-rent-ollama", "gpu-rent-llamacpp")
|
||||
@@ -490,71 +477,8 @@ def provision_llm(cfg: Config, host: str, log: Log) -> None:
|
||||
timeout=7200,
|
||||
log=log,
|
||||
)
|
||||
elif runtime == "llamacpp":
|
||||
_stop_units("gpu-rent-ollama")
|
||||
from gpu_rent.llm_runtime import (
|
||||
gguf_filename_from_url,
|
||||
parse_llamacpp_models,
|
||||
)
|
||||
|
||||
entries = parse_llamacpp_models(cfg.llamacpp_models_manifest)
|
||||
defaults = [e for e in entries if e.default]
|
||||
if defaults:
|
||||
log(
|
||||
"llama.cpp preferred: "
|
||||
f"{defaults[0].filename or gguf_filename_from_url(defaults[0].url)}"
|
||||
)
|
||||
if entries:
|
||||
jobs = []
|
||||
for e in entries:
|
||||
jobs.append(
|
||||
{
|
||||
"url": e.url,
|
||||
"filename": e.filename or gguf_filename_from_url(e.url),
|
||||
}
|
||||
)
|
||||
if e.mmproj_url:
|
||||
jobs.append(
|
||||
{
|
||||
"url": e.mmproj_url,
|
||||
"filename": gguf_filename_from_url(e.mmproj_url),
|
||||
}
|
||||
)
|
||||
put_text(
|
||||
cfg, host, "/tmp/gpu-rent-llamacpp-models.json", json.dumps(jobs, indent=2)
|
||||
)
|
||||
hf = (cfg.hf_token or "").strip()
|
||||
if hf:
|
||||
put_text(cfg, host, "/tmp/gpu-rent-hf.token", hf + "\n", mode=0o600)
|
||||
else:
|
||||
log(
|
||||
"⚠ HF_TOKEN не задан — gated GGUF (abliterated и др.) часто дают 401. "
|
||||
"Добавь HF_TOKEN=hf_… в .env → https://huggingface.co/settings/tokens"
|
||||
)
|
||||
log(f"llama.cpp: скачиваю {len(jobs)} GGUF из манифеста")
|
||||
run_python(
|
||||
cfg,
|
||||
host,
|
||||
_pkg_text("llamacpp_fetch.py"),
|
||||
remote_path="/tmp/gpu-rent-llamacpp_fetch.py",
|
||||
timeout=7200,
|
||||
log=log,
|
||||
)
|
||||
else:
|
||||
log("llamacpp-models.yaml пуст — GGUF skip (положи вручную)")
|
||||
log("LLM: ставим/запускаем llama.cpp server")
|
||||
import os
|
||||
|
||||
# Vulkan finishes in seconds; CUDA compile needs up to ~15–20 min.
|
||||
run_script_sudo(
|
||||
cfg,
|
||||
host,
|
||||
_pkg_text("install_llamacpp.sh"),
|
||||
remote_path="/tmp/gpu-rent-install_llamacpp.sh",
|
||||
timeout=3600,
|
||||
env=_remote_llm_env(cfg, *_LLAMACPP_INSTALL_ENV),
|
||||
log=log,
|
||||
)
|
||||
else:
|
||||
raise CloudError(f"неизвестный LLM_RUNTIME={runtime!r}")
|
||||
st = load_state()
|
||||
st.notes = dict(st.notes or {})
|
||||
st.notes["llm_runtime"] = runtime
|
||||
@@ -614,7 +538,7 @@ def provision_vm(
|
||||
rt = normalize_runtime(cfg.llm_runtime)
|
||||
if not swarm and rt == "none":
|
||||
raise CloudError(
|
||||
"llm-only: нужен LLM_RUNTIME=ollama|llamacpp (или --ollama / --llamacpp)"
|
||||
"llm-only: нужен LLM_RUNTIME=ollama (или --ollama / --llm ollama)"
|
||||
)
|
||||
|
||||
# Arm ASAP so mid-provision failures still leave auto-stop on the VM.
|
||||
@@ -692,6 +616,4 @@ def provision_vm(
|
||||
log("SwarmUI слушает 127.0.0.1:7801 — gpu-rent tunnel")
|
||||
if rt == "ollama":
|
||||
log(f"Ollama API → localhost:{cfg.ollama_local_port} (туннель)")
|
||||
elif rt == "llamacpp":
|
||||
log(f"llama.cpp → localhost:{cfg.llamacpp_local_port} (туннель)")
|
||||
log("Hold killer: gpu-rent hold | Стоп GPU: gpu-rent stop")
|
||||
|
||||
Reference in New Issue
Block a user