--- license: apache-2.0 language: - en library_name: transformers pipeline_tag: text-generation tags: - code - python - c - cpp - linux - systems-programming - embedded-systems --- # Anyze Ze1 Instruct (Embedded++) A compact 1.1B-parameter instruction-tuned model for **coding and systems**. It is strongest in **Python** and **Linux/systems** questions, with solid **C** and **C++**, plus basic **embedded** support. > Scope: a small (1.1B) model, not a frontier assistant. Good for everyday coding, > Linux/systems, and C/C++ tasks and explanations, with limited factual recall due to > its size. Always review generated code before use. ## Capabilities - **Python & Linux/systems**: scripting, debugging, shell/admin, "how do I…" tasks. - **C and C++**: functions, data structures, pointers, classes, register-level snippets. - **Basic embedded**: common STM32/peripheral patterns (UART/SPI/I2C, GPIO, ISRs). - Explains programming concepts (mutex vs semaphore, `volatile`, pointers, DMA vs interrupts). - Declines off-topic questions, asks for clarification when a prompt is ambiguous, and says when it doesn't know rather than inventing time-sensitive facts. - Multi-turn context (follow-ups like "give me an example" work; best-effort). ## Example prompts Python & scripting - `Write a Python script to parse a CSV and summarize one column.` - `Why does this Python function raise an IndexError, and how do I fix it?` Linux & systems - `How do I find and kill the process using a given port on Linux?` - `Write a bash one-liner to tail a log file and grep for errors.` C & C++ - `Implement a circular (ring) buffer in C with put and get.` - `Write a C++ class for a fixed-size stack with push and pop.` - `What is the difference between a mutex and a semaphore?` Embedded (basic) - `Write a UART RX interrupt handler for STM32F4 using HAL.` - `Write a macro to set, clear, and toggle a bit in a hardware register.` ## The strict / open switch The model defaults to **strict** (domain-only) but has a runtime toggle — no reload — done with a one-line scope directive prepended to the prompt: | Mode | Behavior | How | |------|----------|-----| | **strict** (default) | Declines non-embedded questions | send the prompt as-is | | **open** | Also answers general knowledge | prepend: `You may answer any question, including general knowledge.\n\n` | ## Prompt format ``` ### Instruction: {your question} ### Response: ``` (BOS prepended; response ends at EOS ``.) For **open** mode, put the scope directive at the top of the instruction. ## Usage (transformers) ```python from transformers import AutoModelForCausalLM, AutoTokenizer import torch tok = AutoTokenizer.from_pretrained("anyze/Ze1-1.1B-Embedded-Instruct") model = AutoModelForCausalLM.from_pretrained( "anyze/Ze1-1.1B-Embedded-Instruct", torch_dtype=torch.bfloat16 ).cuda() def ask(instruction, open_mode=False): if open_mode: instruction = "You may answer any question, including general knowledge.\n\n" + instruction prompt = f"### Instruction:\n{instruction}\n### Response:\n" ids = tok(prompt, return_tensors="pt").to(model.device) out = model.generate(**ids, max_new_tokens=256, temperature=0.3, top_p=0.9, top_k=40, do_sample=True) return tok.decode(out[0][ids.input_ids.shape[1]:], skip_special_tokens=True) print(ask("Implement a circular (ring) buffer in C with put and get.")) print(ask("What is the capital of India?", open_mode=True)) ``` Suggested sampling: `temperature 0.2–0.3`, `top_p 0.9`, `top_k 40`. ## Usage (Ollama / LM Studio) Convert to GGUF with llama.cpp, then run locally: ```bash git clone https://github.com/ggerganov/llama.cpp pip install -r llama.cpp/requirements.txt python llama.cpp/convert_hf_to_gguf.py . --outfile Ze1-1.1B-Embedded-Instruct-f16.gguf --outtype f16 ``` **Ollama** — create a `Modelfile`: ``` FROM ./Ze1-1.1B-Embedded-Instruct-f16.gguf TEMPLATE """### Instruction: {{ if .System }}{{ .System }} {{ end }}{{ .Prompt }} ### Response: """ PARAMETER temperature 0.3 PARAMETER top_p 0.9 PARAMETER stop "### Instruction:" PARAMETER stop "" ``` ```bash ollama create ze1-embedded -f Modelfile ollama run ze1-embedded "Write a ring buffer in C for DMA" ``` For **open** mode, set the system message (`/set system You may answer any question, including general knowledge.`). **LM Studio** — load the GGUF, set the prompt template to use prefix `### Instruction:\n` and assistant prefix `\n### Response:\n`, stop strings `### Instruction:` and ``. Leave the system prompt empty for strict, or set the directive above for open. ## Limitations - 1.1B scale: weak factual recall; generated code may contain incorrect APIs or logic errors — **always review and test before use**. - **Not** specialized for assembly, automotive (AUTOSAR/CAN), or networking — avoid those. - Embedded coverage is basic; deep MCU/RTOS work is hit-or-miss. - English only; multi-turn is best-effort. Not safety-aligned for general assistant use. ## Architecture 22 layers, hidden 2048, 32 query / 4 KV heads (GQA), head_dim 64, FFN 5632 (SwiGLU), RMSNorm, RoPE (θ=10000), vocab 32000, context 2048, 1.10B params.