Instructions to use ItsJTA/editorai-jtafull with libraries, inference providers, notebooks, and local apps. Follow these links to get started.
- Notebooks
- Google Colab
- Kaggle
- Local Apps Settings
- llama.cpp
How to use ItsJTA/editorai-jtafull 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 ItsJTA/editorai-jtafull # Run inference directly in the terminal: llama cli -hf ItsJTA/editorai-jtafull
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama serve -hf ItsJTA/editorai-jtafull # Run inference directly in the terminal: llama cli -hf ItsJTA/editorai-jtafull
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 ItsJTA/editorai-jtafull # Run inference directly in the terminal: ./llama-cli -hf ItsJTA/editorai-jtafull
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 ItsJTA/editorai-jtafull # Run inference directly in the terminal: ./build/bin/llama-cli -hf ItsJTA/editorai-jtafull
Use Docker
docker model run hf.co/ItsJTA/editorai-jtafull
- LM Studio
- Jan
- Ollama
How to use ItsJTA/editorai-jtafull with Ollama:
ollama run hf.co/ItsJTA/editorai-jtafull
- Unsloth Studio
How to use ItsJTA/editorai-jtafull 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 ItsJTA/editorai-jtafull 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 ItsJTA/editorai-jtafull to start chatting
Using HuggingFace Spaces for Unsloth
# No setup required # Open https://huggingface.co/spaces/unsloth/studio in your browser # Search for ItsJTA/editorai-jtafull to start chatting
- Pi
How to use ItsJTA/editorai-jtafull with Pi:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf ItsJTA/editorai-jtafull
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": "ItsJTA/editorai-jtafull" } ] } } }Run Pi
# Start Pi in your project directory: pi
- Docker Model Runner
How to use ItsJTA/editorai-jtafull with Docker Model Runner:
docker model run hf.co/ItsJTA/editorai-jtafull
- Lemonade
How to use ItsJTA/editorai-jtafull with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull ItsJTA/editorai-jtafull
Run and chat with the model
lemonade run user.editorai-jtafull-{{QUANT_TAG}}List all available models
lemonade list
- Hermes Agent
How to use ItsJTA/editorai-jtafull with Hermes Agent:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf ItsJTA/editorai-jtafull
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 ItsJTA/editorai-jtafull
Run Hermes
hermes
- Atomic Chat
- OpenClaw
How to use ItsJTA/editorai-jtafull with OpenClaw:
Start the llama.cpp server
# Install llama.cpp: brew install llama.cpp # Start a local OpenAI-compatible server: llama serve -hf ItsJTA/editorai-jtafull
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 "ItsJTA/editorai-jtafull" \ --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"
File size: 3,016 Bytes
67045e9 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 | #!/usr/bin/env python3
"""
LoRA fine-tuning for editorai:jtafull using Unsloth + TRL SFTTrainer.
Base model: Qwen/Qwen3-8B (fallback: Qwen/Qwen2.5-7B-Instruct)
"""
import json
import torch
from datasets import Dataset
from trl import SFTTrainer, SFTConfig
from unsloth import FastLanguageModel
from unsloth.chat_templates import get_chat_template
BASE_MODEL = "Qwen/Qwen3-8B"
MAX_SEQ_LENGTH = 4096
LORA_R = 16
LORA_ALPHA = 32
LORA_TARGETS = ["q_proj", "k_proj", "v_proj", "o_proj", "gate_proj", "up_proj", "down_proj"]
TRAIN_DATA = "data/train.jsonl"
OUTPUT_ADAPTER = "./lora-adapter"
OUTPUT_MERGED = "./merged-model"
def load_dataset(path: str) -> Dataset:
examples = []
with open(path) as f:
for line in f:
line = line.strip()
if line:
examples.append(json.loads(line))
print(f"Loaded {len(examples)} training examples")
return Dataset.from_list(examples)
def format_example(example, tokenizer):
return tokenizer.apply_chat_template(
example["messages"],
tokenize=False,
add_generation_prompt=False,
)
def main():
print(f"Loading base model: {BASE_MODEL}")
model, tokenizer = FastLanguageModel.from_pretrained(
model_name=BASE_MODEL,
max_seq_length=MAX_SEQ_LENGTH,
dtype=None,
load_in_4bit=True,
)
tokenizer = get_chat_template(tokenizer, chat_template="chatml")
model = FastLanguageModel.get_peft_model(
model,
r=LORA_R,
lora_alpha=LORA_ALPHA,
target_modules=LORA_TARGETS,
lora_dropout=0.05,
bias="none",
use_gradient_checkpointing="unsloth",
random_state=42,
)
dataset = load_dataset(TRAIN_DATA)
dataset = dataset.map(
lambda ex: {"text": format_example(ex, tokenizer)},
remove_columns=dataset.column_names,
)
trainer = SFTTrainer(
model=model,
tokenizer=tokenizer,
train_dataset=dataset,
args=SFTConfig(
dataset_text_field="text",
max_seq_length=MAX_SEQ_LENGTH,
per_device_train_batch_size=4,
gradient_accumulation_steps=4,
num_train_epochs=3,
learning_rate=2e-4,
lr_scheduler_type="cosine",
warmup_ratio=0.05,
fp16=not torch.cuda.is_bf16_supported(),
bf16=torch.cuda.is_bf16_supported(),
logging_steps=10,
save_steps=100,
output_dir=OUTPUT_ADAPTER,
report_to="none",
),
)
print("Starting training...")
trainer.train()
print(f"Saving LoRA adapter to {OUTPUT_ADAPTER}")
model.save_pretrained(OUTPUT_ADAPTER)
tokenizer.save_pretrained(OUTPUT_ADAPTER)
print(f"Merging LoRA into full model → {OUTPUT_MERGED}")
model.save_pretrained_merged(OUTPUT_MERGED, tokenizer, save_method="merged_16bit")
print("Done. Run convert_and_push.sh to build GGUF and push to Ollama.")
if __name__ == "__main__":
main()
|