tgetsov commited on
Commit
c4f7b10
·
verified ·
1 Parent(s): 8cbeed7

Upload USAGE.md with huggingface_hub

Browse files
Files changed (1) hide show
  1. USAGE.md +191 -0
USAGE.md ADDED
@@ -0,0 +1,191 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ # Using marvy-14B
2
+
3
+ marvy-14B is a ServiceNow delivery specialist. This guide covers every common
4
+ way to run it — cloud or fully local — plus how to wire it into OpenCode.
5
+
6
+ - [Choosing a format](#choosing-a-format)
7
+ - [Recommended system prompt & settings](#recommended-system-prompt--settings)
8
+ - [Transformers (PyTorch)](#transformers-pytorch)
9
+ - [vLLM (OpenAI-compatible server)](#vllm-openai-compatible-server)
10
+ - [MLX (Apple Silicon, native)](#mlx-apple-silicon-native)
11
+ - [LM Studio (GUI + local server)](#lm-studio-gui--local-server)
12
+ - [Ollama / llama.cpp (GGUF)](#ollama--llamacpp-gguf)
13
+ - [LoRA adapter (apply on the base)](#lora-adapter-apply-on-the-base)
14
+ - [Use marvy-14B in OpenCode](#use-marvy-14b-in-opencode)
15
+ - [Prompt recipes per task](#prompt-recipes-per-task)
16
+
17
+ ---
18
+
19
+ ## Choosing a format
20
+
21
+ | You want… | Use | Repo |
22
+ |---|---|---|
23
+ | Max quality, GPU/server | Merged FP16 | `MainStack/marvy-14B` |
24
+ | Apple Silicon, native speed | Merged (MLX) | `MainStack/marvy-14B` |
25
+ | Laptop / CPU / Ollama / LM Studio | GGUF (Q4_K_M or Q8_0) | `MainStack/marvy-14B-GGUF` |
26
+ | Smallest download, compose yourself | LoRA adapter (~175 MB) | `MainStack/marvy-14B-lora` |
27
+
28
+ ---
29
+
30
+ ## Recommended system prompt & settings
31
+
32
+ Always lead with the delivery-consultant system prompt — marvy was trained with it:
33
+
34
+ ```
35
+ You are a senior ServiceNow delivery consultant. You produce precise, implementation-grade
36
+ artifacts: business analyses, requirements, solution design documents, user stories with
37
+ acceptance criteria, test cases, and validation reviews. You favor out-of-the-box
38
+ capabilities, cite concrete tables/plugins/sys_ids when relevant, and write in clear
39
+ professional English.
40
+ ```
41
+
42
+ | Use case | temperature | top_p | max_tokens |
43
+ |---|---|---|---|
44
+ | Structured artifacts (SDD, stories, test cases) | 0.3 – 0.5 | 0.9 | 1024 – 4096 |
45
+ | Exploratory brainstorming | 0.7 – 0.9 | 0.95 | 1024 |
46
+ | Validation / critique | 0.2 – 0.4 | 0.9 | 1024 – 2048 |
47
+
48
+ ---
49
+
50
+ ## Transformers (PyTorch)
51
+
52
+ ```python
53
+ from transformers import AutoTokenizer, AutoModelForCausalLM
54
+
55
+ model_id = "MainStack/marvy-14B"
56
+ tok = AutoTokenizer.from_pretrained(model_id)
57
+ model = AutoModelForCausalLM.from_pretrained(model_id, torch_dtype="auto", device_map="auto")
58
+
59
+ SYSTEM = "You are a senior ServiceNow delivery consultant. ..." # full prompt above
60
+ messages = [
61
+ {"role": "system", "content": SYSTEM},
62
+ {"role": "user", "content": "Write a user story with acceptance criteria for P1 SLA escalation."},
63
+ ]
64
+ inputs = tok.apply_chat_template(messages, add_generation_prompt=True, return_tensors="pt").to(model.device)
65
+ out = model.generate(inputs, max_new_tokens=1024, temperature=0.4, top_p=0.9)
66
+ print(tok.decode(out[0][inputs.shape[-1]:], skip_special_tokens=True))
67
+ ```
68
+
69
+ ## vLLM (OpenAI-compatible server)
70
+
71
+ ```bash
72
+ pip install vllm
73
+ vllm serve MainStack/marvy-14B --served-model-name marvy-14B
74
+ ```
75
+
76
+ ```bash
77
+ curl -s http://localhost:8000/v1/chat/completions -H "Content-Type: application/json" -d '{
78
+ "model": "marvy-14B", "temperature": 0.4,
79
+ "messages": [
80
+ {"role":"system","content":"You are a senior ServiceNow delivery consultant. ..."},
81
+ {"role":"user","content":"Draft the Incident Management section of an SDD."}
82
+ ]}'
83
+ ```
84
+
85
+ ## MLX (Apple Silicon, native)
86
+
87
+ ```bash
88
+ pip install mlx-lm
89
+
90
+ # one-off
91
+ python -m mlx_lm generate --model MainStack/marvy-14B \
92
+ --system-prompt "You are a senior ServiceNow delivery consultant. ..." \
93
+ --prompt "Write test cases for a Major Incident workflow." --max-tokens 1024 --temp 0.4
94
+
95
+ # OpenAI-compatible server
96
+ python -m mlx_lm server --model MainStack/marvy-14B --port 8080
97
+ ```
98
+
99
+ ## LM Studio (GUI + local server)
100
+
101
+ 1. **Install the model** — either search `MainStack/marvy-14B-GGUF` in the
102
+ in-app model browser, or place a local copy under
103
+ `~/.lmstudio/models/MainStack/marvy-14B/` (MLX or GGUF layout).
104
+ 2. **Load** it from the GUI, or:
105
+ ```bash
106
+ lms load MainStack/marvy-14B
107
+ lms server start # OpenAI-compatible on http://localhost:1234/v1
108
+ ```
109
+ 3. In the Chat tab, set the system prompt (above) and temperature ~0.4.
110
+
111
+ ## Ollama / llama.cpp (GGUF)
112
+
113
+ ```bash
114
+ # Ollama — pull straight from the Hub
115
+ ollama run hf.co/MainStack/marvy-14B-GGUF:Q4_K_M
116
+
117
+ # llama.cpp
118
+ llama-cli -hf MainStack/marvy-14B-GGUF:Q4_K_M \
119
+ -p "Write a user story with acceptance criteria for P1 SLA escalation." --temp 0.4
120
+ ```
121
+
122
+ | Quant | Size | Use when |
123
+ |---|---|---|
124
+ | `Q4_K_M` | ~9 GB | Default — best size/quality balance |
125
+ | `Q8_0` | ~16 GB | Highest fidelity, near-FP16 |
126
+
127
+ ## LoRA adapter (apply on the base)
128
+
129
+ ```bash
130
+ # MLX
131
+ python -m mlx_lm generate --model Qwen/Qwen2.5-14B-Instruct \
132
+ --adapter-path . --system-prompt "You are a senior ServiceNow delivery consultant. ..." \
133
+ --prompt "Validate this requirement and list follow-up questions: ..." --max-tokens 1024
134
+ ```
135
+
136
+ ```python
137
+ # PEFT
138
+ from peft import PeftModel
139
+ from transformers import AutoModelForCausalLM, AutoTokenizer
140
+ base = "Qwen/Qwen2.5-14B-Instruct"
141
+ model = AutoModelForCausalLM.from_pretrained(base, torch_dtype="auto", device_map="auto")
142
+ model = PeftModel.from_pretrained(model, "MainStack/marvy-14B-lora")
143
+ ```
144
+
145
+ ---
146
+
147
+ ## Use marvy-14B in OpenCode
148
+
149
+ marvy runs behind any OpenAI-compatible endpoint (LM Studio, mlx_lm server,
150
+ vLLM). Register it as a custom provider in `opencode.json`.
151
+
152
+ 1. **Start a local server** (LM Studio shown; adjust port for others):
153
+ ```bash
154
+ lms load MainStack/marvy-14B && lms server start # http://localhost:1234/v1
155
+ ```
156
+ 2. **Add the provider** to your project `opencode.json` (or global
157
+ `~/.config/opencode/opencode.json`):
158
+ ```jsonc
159
+ {
160
+ "provider": {
161
+ "lmstudio": {
162
+ "npm": "@ai-sdk/openai-compatible",
163
+ "name": "LM Studio (local)",
164
+ "options": { "baseURL": "http://localhost:1234/v1" },
165
+ "models": {
166
+ "marvy-14B": { "name": "marvy-14B (ServiceNow delivery)" }
167
+ }
168
+ }
169
+ }
170
+ }
171
+ ```
172
+ 3. **Select** `lmstudio/marvy-14B` in the OpenCode model picker.
173
+
174
+ > marvy-14B is a drafting specialist, not a tool-use/agentic fine-tune. It excels
175
+ > at producing delivery artifacts inside chat; for MCP tool-calling agent loops,
176
+ > keep a frontier model as the orchestrator and switch to marvy for drafting.
177
+
178
+ ---
179
+
180
+ ## Prompt recipes per task
181
+
182
+ | Task | Prompt skeleton |
183
+ |---|---|
184
+ | Business analysis | "Produce a Business Analysis for the following engagement: <context>. Cover organization, IT landscape, scope, and risks." |
185
+ | Requirements | "Extract structured requirements (id, category, requirement, priority, target_phase, success_metric) from: <notes>." |
186
+ | Stakeholders | "Build a stakeholder register (role, name, interest, influence, RACI) for: <context>." |
187
+ | SDD section | "Write the <section> section of a Solution Design Document for a ServiceNow <module> implementation. Include design decisions and concrete tables/plugins." |
188
+ | User story | "Write a ServiceNow user story with acceptance criteria for: <capability>." |
189
+ | Implementation plan | "Given this story, describe the implementation: tables, plugins, configuration, records touched, manual follow-ups. Story: <story>." |
190
+ | Test case | "Write a test case (pre-conditions, steps, expected results, pass/fail) for the story: <story>." |
191
+ | Validation | "Validate this artifact against ServiceNow best practice and the SOW. List gaps, risks, and follow-up questions. Artifact: <artifact>." |