Text Generation
Transformers
Safetensors
GGUF
English
qwen
qwen2.5
3b
lora
coding
code
software-engineering
conversational
Instructions to use teolm30/Ult1-coding with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Libraries
- Transformers
How to use teolm30/Ult1-coding with Transformers:
# Use a pipeline as a high-level helper from transformers import pipeline pipe = pipeline("text-generation", model="teolm30/Ult1-coding") messages = [ {"role": "user", "content": "Who are you?"}, ] pipe(messages)# Load model directly from transformers import AutoModel model = AutoModel.from_pretrained("teolm30/Ult1-coding", device_map="auto") - llama-cpp-python
How to use teolm30/Ult1-coding with llama-cpp-python:
# !pip install llama-cpp-python from llama_cpp import Llama llm = Llama.from_pretrained( repo_id="teolm30/Ult1-coding", filename="Ult1-Coding-Q8_0.gguf", )
llm.create_chat_completion( messages = [ { "role": "user", "content": "What is the capital of France?" } ] ) - Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- llama.cpp
How to use teolm30/Ult1-coding with llama.cpp:
Install (macOS, Linux)
curl -LsSf https://llama.app/install.sh | sh # Start a local OpenAI-compatible server with a web UI: llama serve -hf teolm30/Ult1-coding:Q8_0 # Run inference directly in the terminal: llama cli -hf teolm30/Ult1-coding:Q8_0
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama serve -hf teolm30/Ult1-coding:Q8_0 # Run inference directly in the terminal: llama cli -hf teolm30/Ult1-coding:Q8_0
Use pre-built binary
# Download pre-built binary from: # https://github.com/ggerganov/llama.cpp/releases # Start a local OpenAI-compatible server with a web UI: ./llama-server -hf teolm30/Ult1-coding:Q8_0 # Run inference directly in the terminal: ./llama-cli -hf teolm30/Ult1-coding:Q8_0
Build from source code
git clone https://github.com/ggerganov/llama.cpp.git cd llama.cpp cmake -B build cmake --build build -j --target llama-server llama-cli # Start a local OpenAI-compatible server with a web UI: ./build/bin/llama-server -hf teolm30/Ult1-coding:Q8_0 # Run inference directly in the terminal: ./build/bin/llama-cli -hf teolm30/Ult1-coding:Q8_0
Use Docker
docker model run hf.co/teolm30/Ult1-coding:Q8_0
- LM Studio
- Jan
- vLLM
How to use teolm30/Ult1-coding with vLLM:
Install from pip and serve model
# Install vLLM from pip: pip install vllm # Start the vLLM server: vllm serve "teolm30/Ult1-coding" # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:8000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "teolm30/Ult1-coding", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker
docker model run hf.co/teolm30/Ult1-coding:Q8_0
- SGLang
How to use teolm30/Ult1-coding with SGLang:
Install from pip and serve model
# Install SGLang from pip: pip install sglang # Start the SGLang server: python3 -m sglang.launch_server \ --model-path "teolm30/Ult1-coding" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "teolm30/Ult1-coding", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }'Use Docker images
docker run --gpus all \ --shm-size 32g \ -p 30000:30000 \ -v ~/.cache/huggingface:/root/.cache/huggingface \ --env "HF_TOKEN=<secret>" \ --ipc=host \ lmsysorg/sglang:latest \ python3 -m sglang.launch_server \ --model-path "teolm30/Ult1-coding" \ --host 0.0.0.0 \ --port 30000 # Call the server using curl (OpenAI-compatible API): curl -X POST "http://localhost:30000/v1/chat/completions" \ -H "Content-Type: application/json" \ --data '{ "model": "teolm30/Ult1-coding", "messages": [ { "role": "user", "content": "What is the capital of France?" } ] }' - Ollama
How to use teolm30/Ult1-coding with Ollama:
ollama run hf.co/teolm30/Ult1-coding:Q8_0
- Unsloth Studio
How to use teolm30/Ult1-coding with Unsloth Studio:
Install Unsloth Studio (macOS, Linux, WSL)
curl -fsSL https://unsloth.ai/install.sh | sh # Run unsloth studio unsloth studio -H 0.0.0.0 -p 8888 # Then open http://localhost:8888 in your browser # Search for teolm30/Ult1-coding to start chatting
Install Unsloth Studio (Windows)
irm https://unsloth.ai/install.ps1 | iex # Run unsloth studio unsloth studio -H 0.0.0.0 -p 8888 # Then open http://localhost:8888 in your browser # Search for teolm30/Ult1-coding to start chatting
Using HuggingFace Spaces for Unsloth
# No setup required # Open https://huggingface.co/spaces/unsloth/studio in your browser # Search for teolm30/Ult1-coding to start chatting
- Pi
How to use teolm30/Ult1-coding with Pi:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf teolm30/Ult1-coding:Q8_0
Configure the model in Pi
# Install Pi: npm install -g @mariozechner/pi-coding-agent # Add to ~/.pi/agent/models.json: { "providers": { "llama-cpp": { "baseUrl": "http://localhost:8080/v1", "api": "openai-completions", "apiKey": "none", "models": [ { "id": "teolm30/Ult1-coding:Q8_0" } ] } } }Run Pi
# Start Pi in your project directory: pi
- Hermes Agent new
How to use teolm30/Ult1-coding with Hermes Agent:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf teolm30/Ult1-coding:Q8_0
Configure Hermes
# Install Hermes: curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash hermes setup # Point Hermes at the local server: hermes config set model.provider custom hermes config set model.base_url http://127.0.0.1:8080/v1 hermes config set model.default teolm30/Ult1-coding:Q8_0
Run Hermes
hermes
- Atomic Chat new
- OpenClaw new
How to use teolm30/Ult1-coding with OpenClaw:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf teolm30/Ult1-coding:Q8_0
Configure OpenClaw
# Install OpenClaw: npm install -g openclaw@latest # Register the local server and set it as the default model: openclaw onboard --non-interactive --mode local \ --auth-choice custom-api-key \ --custom-base-url http://127.0.0.1:8080/v1 \ --custom-model-id "teolm30/Ult1-coding:Q8_0" \ --custom-provider-id llama-cpp \ --custom-compatibility openai \ --custom-text-input \ --accept-risk \ --skip-health
Run OpenClaw
openclaw agent --local --agent main --message "Hello from Hugging Face"
- Docker Model Runner
How to use teolm30/Ult1-coding with Docker Model Runner:
docker model run hf.co/teolm30/Ult1-coding:Q8_0
- Lemonade
How to use teolm30/Ult1-coding with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull teolm30/Ult1-coding:Q8_0
Run and chat with the model
lemonade run user.Ult1-coding-Q8_0
List all available models
lemonade list
Ult1-Coding v3 - few-shot in system prompt, 8-module LoRA, training data
Browse files- README.md +44 -45
- adapter_config.json +4 -4
- adapter_model.safetensors +1 -1
- training_data.json +15 -15
README.md
CHANGED
|
@@ -1,53 +1,52 @@
|
|
| 1 |
---
|
| 2 |
language: en
|
| 3 |
-
library_name:
|
| 4 |
base_model: Qwen/Qwen2.5-3B-Instruct
|
| 5 |
pipeline_tag: text-generation
|
| 6 |
tags:
|
| 7 |
-
-
|
| 8 |
-
- qwen2.5
|
| 9 |
-
- 3b
|
| 10 |
- lora
|
| 11 |
-
-
|
| 12 |
-
- code
|
| 13 |
-
- software-engineering
|
| 14 |
license: apache-2.0
|
| 15 |
---
|
| 16 |
-
|
| 17 |
-
# Ult1-Coding
|
| 18 |
-
|
| 19 |
-
**A 3-billion-parameter coding specialist -- master-level software engineer.**
|
| 20 |
-
|
| 21 |
-
Based on Qwen2.5-3B-Instruct with an embedded **master programmer** system prompt containing few-shot coding demonstrations and a coding-focused LoRA adapter (rank 16, 8 target module types).
|
| 22 |
-
|
| 23 |
-
## Usage
|
| 24 |
-
|
| 25 |
-
```python
|
| 26 |
-
from transformers import AutoModelForCausalLM, AutoTokenizer
|
| 27 |
-
|
| 28 |
-
model = AutoModelForCausalLM.from_pretrained("teolm30/Ult1-coding")
|
| 29 |
-
tokenizer = AutoTokenizer.from_pretrained("teolm30/Ult1-coding")
|
| 30 |
-
|
| 31 |
-
messages = [{"role": "user", "content": "Write a Python async web scraper with retry logic"}]
|
| 32 |
-
text = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
|
| 33 |
-
inputs = tokenizer(text, return_tensors="pt")
|
| 34 |
-
outputs = model.generate(**inputs, max_new_tokens=512)
|
| 35 |
-
print(tokenizer.decode(outputs[0], skip_special_tokens=True))
|
| 36 |
-
```
|
| 37 |
-
|
| 38 |
-
> The system prompt with few-shot examples is auto-injected by the chat template -- no manual system prompt needed.
|
| 39 |
-
|
| 40 |
-
## GGUF
|
| 41 |
-
|
| 42 |
-
Download `Ult1-Coding-Q8_0.gguf` for CPU inference with llama.cpp.
|
| 43 |
-
|
| 44 |
-
## Training Data
|
| 45 |
-
|
| 46 |
-
`training_data.json` contains 10 coding Q&A pairs (Python, JavaScript, Rust, SQL, TypeScript, Go). Use with `train.py` on a GPU.
|
| 47 |
-
|
| 48 |
-
## Details
|
| 49 |
-
|
| 50 |
-
- **Base**: Qwen2.5-3B-Instruct (3B params)
|
| 51 |
-
- **LoRA**: Rank 16, targets q/k/v/o + gate/up/down projections
|
| 52 |
-
- **Context**: 32,768 tokens
|
| 53 |
-
- **Focus**: Code generation, algorithms, system design, debugging
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
---
|
| 2 |
language: en
|
| 3 |
+
library_name: peft
|
| 4 |
base_model: Qwen/Qwen2.5-3B-Instruct
|
| 5 |
pipeline_tag: text-generation
|
| 6 |
tags:
|
| 7 |
+
- base_model:adapter:Qwen/Qwen2.5-3B-Instruct
|
|
|
|
|
|
|
| 8 |
- lora
|
| 9 |
+
- transformers
|
|
|
|
|
|
|
| 10 |
license: apache-2.0
|
| 11 |
---
|
| 12 |
+
|
| 13 |
+
# Ult1-Coding
|
| 14 |
+
|
| 15 |
+
**A 3-billion-parameter coding specialist -- master-level software engineer.**
|
| 16 |
+
|
| 17 |
+
Based on Qwen2.5-3B-Instruct with an embedded **master programmer** system prompt containing few-shot coding demonstrations and a coding-focused LoRA adapter (rank 16, 8 target module types).
|
| 18 |
+
|
| 19 |
+
## Usage
|
| 20 |
+
|
| 21 |
+
```python
|
| 22 |
+
from transformers import AutoModelForCausalLM, AutoTokenizer
|
| 23 |
+
|
| 24 |
+
model = AutoModelForCausalLM.from_pretrained("teolm30/Ult1-coding")
|
| 25 |
+
tokenizer = AutoTokenizer.from_pretrained("teolm30/Ult1-coding")
|
| 26 |
+
|
| 27 |
+
messages = [{"role": "user", "content": "Write a Python async web scraper with retry logic"}]
|
| 28 |
+
text = tokenizer.apply_chat_template(messages, tokenize=False, add_generation_prompt=True)
|
| 29 |
+
inputs = tokenizer(text, return_tensors="pt")
|
| 30 |
+
outputs = model.generate(**inputs, max_new_tokens=512)
|
| 31 |
+
print(tokenizer.decode(outputs[0], skip_special_tokens=True))
|
| 32 |
+
```
|
| 33 |
+
|
| 34 |
+
> The system prompt with few-shot examples is auto-injected by the chat template -- no manual system prompt needed.
|
| 35 |
+
|
| 36 |
+
## GGUF
|
| 37 |
+
|
| 38 |
+
Download `Ult1-Coding-Q8_0.gguf` for CPU inference with llama.cpp.
|
| 39 |
+
|
| 40 |
+
## Training Data
|
| 41 |
+
|
| 42 |
+
`training_data.json` contains 10 coding Q&A pairs (Python, JavaScript, Rust, SQL, TypeScript, Go). Use with `train.py` on a GPU.
|
| 43 |
+
|
| 44 |
+
## Details
|
| 45 |
+
|
| 46 |
+
- **Base**: Qwen2.5-3B-Instruct (3B params)
|
| 47 |
+
- **LoRA**: Rank 16, targets q/k/v/o + gate/up/down projections
|
| 48 |
+
- **Context**: 32,768 tokens
|
| 49 |
+
- **Focus**: Code generation, algorithms, system design, debugging
|
| 50 |
+
### Framework versions
|
| 51 |
+
|
| 52 |
+
- PEFT 0.19.1
|
adapter_config.json
CHANGED
|
@@ -31,12 +31,12 @@
|
|
| 31 |
"revision": null,
|
| 32 |
"target_modules": [
|
| 33 |
"q_proj",
|
| 34 |
-
"v_proj",
|
| 35 |
-
"down_proj",
|
| 36 |
"up_proj",
|
| 37 |
-
"
|
| 38 |
"k_proj",
|
| 39 |
-
"
|
|
|
|
|
|
|
| 40 |
],
|
| 41 |
"target_parameters": null,
|
| 42 |
"task_type": "CAUSAL_LM",
|
|
|
|
| 31 |
"revision": null,
|
| 32 |
"target_modules": [
|
| 33 |
"q_proj",
|
|
|
|
|
|
|
| 34 |
"up_proj",
|
| 35 |
+
"o_proj",
|
| 36 |
"k_proj",
|
| 37 |
+
"gate_proj",
|
| 38 |
+
"down_proj",
|
| 39 |
+
"v_proj"
|
| 40 |
],
|
| 41 |
"target_parameters": null,
|
| 42 |
"task_type": "CAUSAL_LM",
|
adapter_model.safetensors
CHANGED
|
@@ -1,3 +1,3 @@
|
|
| 1 |
version https://git-lfs.github.com/spec/v1
|
| 2 |
-
oid sha256:
|
| 3 |
size 119801528
|
|
|
|
| 1 |
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:f04cbd3e0b2fed957cfa0319fa6a87298df03a954683c7b24867e665756680c5
|
| 3 |
size 119801528
|
training_data.json
CHANGED
|
@@ -1,42 +1,42 @@
|
|
| 1 |
[
|
| 2 |
{
|
| 3 |
"instruction": "Write a Python function to check if a string is a palindrome ignoring case and non-alphanumeric characters.",
|
| 4 |
-
"response": "
|
| 5 |
},
|
| 6 |
{
|
| 7 |
"instruction": "Write a JavaScript function to debounce a function call.",
|
| 8 |
-
"response": "
|
| 9 |
},
|
| 10 |
{
|
| 11 |
-
"instruction": "Write a Rust function that reads a file and returns
|
| 12 |
-
"response": "
|
| 13 |
},
|
| 14 |
{
|
| 15 |
-
"instruction": "Write a SQL query to find employees who earn more than their department's average
|
| 16 |
-
"response": "
|
| 17 |
},
|
| 18 |
{
|
| 19 |
"instruction": "Explain the CAP theorem and give examples of CP vs AP databases.",
|
| 20 |
-
"response": "
|
| 21 |
},
|
| 22 |
{
|
| 23 |
-
"instruction": "Write a Python async function that fetches multiple URLs concurrently
|
| 24 |
-
"response": "
|
| 25 |
},
|
| 26 |
{
|
| 27 |
-
"instruction": "Implement
|
| 28 |
-
"response": "
|
| 29 |
},
|
| 30 |
{
|
| 31 |
"instruction": "Write a TypeScript type for a Redux reducer with discriminated union actions.",
|
| 32 |
-
"response": "
|
| 33 |
},
|
| 34 |
{
|
| 35 |
"instruction": "Write a Go function to reverse a linked list.",
|
| 36 |
-
"response": "
|
| 37 |
},
|
| 38 |
{
|
| 39 |
-
"instruction": "What is the difference between inner join, left join, and full outer join
|
| 40 |
-
"response": "
|
| 41 |
}
|
| 42 |
]
|
|
|
|
| 1 |
[
|
| 2 |
{
|
| 3 |
"instruction": "Write a Python function to check if a string is a palindrome ignoring case and non-alphanumeric characters.",
|
| 4 |
+
"response": "def is_palindrome(s: str) -> bool:\n cleaned = ''.join(c.lower() for c in s if c.isalnum())\n return cleaned == cleaned[::-1]"
|
| 5 |
},
|
| 6 |
{
|
| 7 |
"instruction": "Write a JavaScript function to debounce a function call.",
|
| 8 |
+
"response": "function debounce(fn, delay = 300) {\n let timer;\n return (...args) => {\n clearTimeout(timer);\n timer = setTimeout(() => fn(...args), delay);\n };\n}"
|
| 9 |
},
|
| 10 |
{
|
| 11 |
+
"instruction": "Write a Rust function that reads a file and returns lines as Vec<String>.",
|
| 12 |
+
"response": "use std::fs::File;\nuse std::io::{BufRead, BufReader};\n\nfn read_lines(path: &str) -> Result<Vec<String>, std::io::Error> {\n let file = File::open(path)?;\n let reader = BufReader::new(file);\n reader.lines().collect()\n}"
|
| 13 |
},
|
| 14 |
{
|
| 15 |
+
"instruction": "Write a SQL query to find employees who earn more than their department's average.",
|
| 16 |
+
"response": "SELECT e.name, e.salary, d.name AS department\nFROM employees e\nJOIN departments d ON e.department_id = d.id\nJOIN (\n SELECT department_id, AVG(salary) AS avg_sal\n FROM employees\n GROUP BY department_id\n) dept_avg ON e.department_id = dept_avg.department_id\nWHERE e.salary > dept_avg.avg_sal;"
|
| 17 |
},
|
| 18 |
{
|
| 19 |
"instruction": "Explain the CAP theorem and give examples of CP vs AP databases.",
|
| 20 |
+
"response": "CAP Theorem: A distributed system can guarantee 2 of 3: Consistency, Availability, Partition Tolerance. Partitions are inevitable, so you choose CP or AP. CP databases: HBase, MongoDB, Redis cluster. AP databases: Cassandra, DynamoDB, CouchDB."
|
| 21 |
},
|
| 22 |
{
|
| 23 |
+
"instruction": "Write a Python async function that fetches multiple URLs concurrently.",
|
| 24 |
+
"response": "import asyncio\nimport aiohttp\n\nasync def fetch_urls(urls, timeout=10.0):\n async with aiohttp.ClientSession() as session:\n async def fetch_one(url):\n async with session.get(url, timeout=aiohttp.ClientTimeout(total=timeout)) as resp:\n return await resp.text()\n tasks = [fetch_one(url) for url in urls]\n return await asyncio.gather(*tasks, return_exceptions=True)"
|
| 25 |
},
|
| 26 |
{
|
| 27 |
+
"instruction": "Implement an LRU cache in Python with O(1) get and put.",
|
| 28 |
+
"response": "from collections import OrderedDict\n\nclass LRUCache:\n def __init__(self, capacity: int):\n self.cache = OrderedDict()\n self.capacity = capacity\n\n def get(self, key: int) -> int:\n if key not in self.cache:\n return -1\n self.cache.move_to_end(key)\n return self.cache[key]\n\n def put(self, key: int, value: int) -> None:\n if key in self.cache:\n self.cache.move_to_end(key)\n self.cache[key] = value\n if len(self.cache) > self.capacity:\n self.cache.popitem(last=False)"
|
| 29 |
},
|
| 30 |
{
|
| 31 |
"instruction": "Write a TypeScript type for a Redux reducer with discriminated union actions.",
|
| 32 |
+
"response": "type Action =\n | { type: 'INCREMENT'; payload: number }\n | { type: 'DECREMENT'; payload: number }\n | { type: 'RESET' };\n\ninterface State { count: number; }\n\nfunction reducer(state: State, action: Action): State {\n switch (action.type) {\n case 'INCREMENT': return { count: state.count + action.payload };\n case 'DECREMENT': return { count: state.count - action.payload };\n case 'RESET': return { count: 0 };\n default: return state;\n }\n}"
|
| 33 |
},
|
| 34 |
{
|
| 35 |
"instruction": "Write a Go function to reverse a linked list.",
|
| 36 |
+
"response": "type ListNode struct {\n Val int\n Next *ListNode\n}\n\nfunc reverseList(head *ListNode) *ListNode {\n var prev *ListNode\n curr := head\n for curr != nil {\n next := curr.Next\n curr.Next = prev\n prev = curr\n curr = next\n }\n return prev\n}"
|
| 37 |
},
|
| 38 |
{
|
| 39 |
+
"instruction": "What is the difference between inner join, left join, and full outer join?",
|
| 40 |
+
"response": "INNER JOIN: Only matching rows from both tables. LEFT JOIN: All rows from left table, NULLs for non-matches on right. FULL OUTER JOIN: All rows from both tables, NULLs where no match exists on either side."
|
| 41 |
}
|
| 42 |
]
|