Replaces the three older Qwen3 variants with a four-tier ladder spanning a wider hardware range: - Qwen3_5_2B_Q4 (Minimal, 8 GB RAM, ~1.3 GB download) - Qwen3_5_4B_Q4 (Standard, 16 GB RAM / 6 GB VRAM, ~2.7 GB) — DEFAULT - Qwen3_5_9B_Q4 (High, 32 GB RAM / 12 GB VRAM, ~5.7 GB) - Qwen3_6_27B_Q4 (Maximum, 64 GB RAM / 24 GB VRAM, ~17 GB) All four GGUFs sourced from unsloth's HF org with pinned commit SHAs. Sizes and SHA256 hashes verified against the live X-Linked-Etag / X-Linked-Size headers on the LFS CDN. Q4_K_M quantisation throughout (common sweet-spot for cleanup + task extraction). recommend_tier rewritten to span four bands; default_tier moves from the old 4B-Instruct-2507 to Qwen3.5 4B. The 27B Maximum tier honestly needs 64 GB RAM to run without partial offload — surfaced in the description string so the Settings UI can warn realistically. In-tree smoke tests (smoke.rs, content_tags_smoke.rs) updated to reference the new smallest tier so a developer's MAGNOTIA_LLM_TEST_MODEL points at the cheapest GGUF to download. Crate description in crates/llm/Cargo.toml refreshed to mention the new family. NOTE (out of scope; not fixed): the size_bytes / sha256 / hf_url methods could collapse into a single LlmModelMetadata table to remove four parallel match arms. Layer 2 cleanup, separate session. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
34 lines
1.2 KiB
TOML
34 lines
1.2 KiB
TOML
[package]
|
|
name = "magnotia-llm"
|
|
version = "0.1.0"
|
|
edition = "2021"
|
|
description = "Local LLM engine for Magnotia (Qwen3.5 / Qwen3.6 via llama-cpp-2): transcript cleanup, task extraction, micro-step decomposition"
|
|
|
|
[features]
|
|
# Default desktop build keeps the existing openmp + vulkan acceleration.
|
|
# Mobile / CPU-only targets can drop one or both via:
|
|
# cargo build -p magnotia-llm --no-default-features
|
|
# These are independent so an Android Vulkan build can opt into vulkan
|
|
# without openmp (the NDK ships OpenMP libs but the toolchain configuration
|
|
# is fragile across NDK versions).
|
|
default = ["gpu-vulkan", "openmp"]
|
|
gpu-vulkan = ["llama-cpp-2/vulkan"]
|
|
openmp = ["llama-cpp-2/openmp"]
|
|
|
|
[dependencies]
|
|
magnotia-core = { path = "../core" }
|
|
encoding_rs = "0.8"
|
|
futures-util = "0.3"
|
|
llama-cpp-2 = { version = "0.1.144", default-features = false }
|
|
num_cpus = "1"
|
|
reqwest = { version = "0.12", default-features = false, features = ["rustls-tls", "stream"] }
|
|
serde = { version = "1", features = ["derive"] }
|
|
serde_json = "1"
|
|
sha2 = "0.10"
|
|
thiserror = "2"
|
|
tokio = { version = "1", features = ["fs", "io-util", "macros", "net", "rt-multi-thread", "sync", "time"] }
|
|
tracing = "0.1"
|
|
|
|
[dev-dependencies]
|
|
tempfile = "3"
|