marvy-1-14B-GGUF / USAGE.md
tgetsov's picture
Upload USAGE.md with huggingface_hub
9b991d4 verified

Using marvy-1-14B

marvy-1-14B is a ServiceNow delivery specialist. This guide covers every common way to run it — cloud or fully local — plus how to wire it into OpenCode.


Choosing a format

You want… Use Repo
Max quality, GPU/server Merged FP16 MainStack/marvy-1-14B
Apple Silicon, native speed Merged (MLX) MainStack/marvy-1-14B
Laptop / CPU / Ollama / LM Studio GGUF (Q4_K_M or Q8_0) MainStack/marvy-1-14B-GGUF
Smallest download, compose yourself LoRA adapter (~175 MB) MainStack/marvy-1-14B-lora

Recommended system prompt & settings

Always lead with the delivery-consultant system prompt — marvy was trained with it:

You are a senior ServiceNow delivery consultant. You produce precise, implementation-grade
artifacts: business analyses, requirements, solution design documents, user stories with
acceptance criteria, test cases, and validation reviews. You favor out-of-the-box
capabilities, cite concrete tables/plugins/sys_ids when relevant, and write in clear
professional English.
Use case temperature top_p max_tokens
Structured artifacts (SDD, stories, test cases) 0.3 – 0.5 0.9 1024 – 4096
Exploratory brainstorming 0.7 – 0.9 0.95 1024
Validation / critique 0.2 – 0.4 0.9 1024 – 2048

Transformers (PyTorch)

from transformers import AutoTokenizer, AutoModelForCausalLM

model_id = "MainStack/marvy-1-14B"
tok = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(model_id, torch_dtype="auto", device_map="auto")

SYSTEM = "You are a senior ServiceNow delivery consultant. ..."  # full prompt above
messages = [
    {"role": "system", "content": SYSTEM},
    {"role": "user", "content": "Write a user story with acceptance criteria for P1 SLA escalation."},
]
inputs = tok.apply_chat_template(messages, add_generation_prompt=True, return_tensors="pt").to(model.device)
out = model.generate(inputs, max_new_tokens=1024, temperature=0.4, top_p=0.9)
print(tok.decode(out[0][inputs.shape[-1]:], skip_special_tokens=True))

vLLM (OpenAI-compatible server)

pip install vllm
vllm serve MainStack/marvy-1-14B --served-model-name marvy-1-14B
curl -s http://localhost:8000/v1/chat/completions -H "Content-Type: application/json" -d '{
  "model": "marvy-1-14B", "temperature": 0.4,
  "messages": [
    {"role":"system","content":"You are a senior ServiceNow delivery consultant. ..."},
    {"role":"user","content":"Draft the Incident Management section of an SDD."}
  ]}'

MLX (Apple Silicon, native)

pip install mlx-lm

# one-off
python -m mlx_lm generate --model MainStack/marvy-1-14B \
  --system-prompt "You are a senior ServiceNow delivery consultant. ..." \
  --prompt "Write test cases for a Major Incident workflow." --max-tokens 1024 --temp 0.4

# OpenAI-compatible server
python -m mlx_lm server --model MainStack/marvy-1-14B --port 8080

LM Studio (GUI + local server)

  1. Install the model — either search MainStack/marvy-1-14B-GGUF in the in-app model browser, or place a local copy under ~/.lmstudio/models/MainStack/marvy-1-14B/ (MLX or GGUF layout).
  2. Load it from the GUI, or:
    lms load MainStack/marvy-1-14B
    lms server start          # OpenAI-compatible on http://localhost:1234/v1
    
  3. In the Chat tab, set the system prompt (above) and temperature ~0.4.

Ollama / llama.cpp (GGUF)

# Ollama — pull straight from the Hub
ollama run hf.co/MainStack/marvy-1-14B-GGUF:Q4_K_M

# llama.cpp
llama-cli -hf MainStack/marvy-1-14B-GGUF:Q4_K_M \
  -p "Write a user story with acceptance criteria for P1 SLA escalation." --temp 0.4
Quant Size Use when
Q4_K_M ~9 GB Default — best size/quality balance
Q8_0 ~16 GB Highest fidelity, near-FP16

LoRA adapter (apply on the base)

# MLX
python -m mlx_lm generate --model Qwen/Qwen2.5-14B-Instruct \
  --adapter-path .  --system-prompt "You are a senior ServiceNow delivery consultant. ..." \
  --prompt "Validate this requirement and list follow-up questions: ..." --max-tokens 1024
# PEFT
from peft import PeftModel
from transformers import AutoModelForCausalLM, AutoTokenizer
base = "Qwen/Qwen2.5-14B-Instruct"
model = AutoModelForCausalLM.from_pretrained(base, torch_dtype="auto", device_map="auto")
model = PeftModel.from_pretrained(model, "MainStack/marvy-1-14B-lora")

Use marvy-1-14B in OpenCode

marvy runs behind any OpenAI-compatible endpoint (LM Studio, mlx_lm server, vLLM). Register it as a custom provider in opencode.json.

  1. Start a local server (LM Studio shown; adjust port for others):
    lms load MainStack/marvy-1-14B && lms server start   # http://localhost:1234/v1
    
  2. Add the provider to your project opencode.json (or global ~/.config/opencode/opencode.json):
    {
      "provider": {
        "lmstudio": {
          "npm": "@ai-sdk/openai-compatible",
          "name": "LM Studio (local)",
          "options": { "baseURL": "http://localhost:1234/v1" },
          "models": {
            "marvy-1-14B": { "name": "marvy-1-14B (ServiceNow delivery)" }
          }
        }
      }
    }
    
  3. Select lmstudio/marvy-1-14B in the OpenCode model picker.

marvy-1-14B is a drafting specialist, not a tool-use/agentic fine-tune. It excels at producing delivery artifacts inside chat; for MCP tool-calling agent loops, keep a frontier model as the orchestrator and switch to marvy for drafting.


Prompt recipes per task

Task Prompt skeleton
Business analysis "Produce a Business Analysis for the following engagement: . Cover organization, IT landscape, scope, and risks."
Requirements "Extract structured requirements (id, category, requirement, priority, target_phase, success_metric) from: ."
Stakeholders "Build a stakeholder register (role, name, interest, influence, RACI) for: ."
SDD section "Write the
section of a Solution Design Document for a ServiceNow implementation. Include design decisions and concrete tables/plugins."
User story "Write a ServiceNow user story with acceptance criteria for: ."
Implementation plan "Given this story, describe the implementation: tables, plugins, configuration, records touched, manual follow-ups. Story: ."
Test case "Write a test case (pre-conditions, steps, expected results, pass/fail) for the story: ."
Validation "Validate this artifact against ServiceNow best practice and the SOW. List gaps, risks, and follow-up questions. Artifact: ."