Text Classification
Safetensors
GGUF
English
custom
modernbert
browser-agent
decision-making
agentgo
full-fine-tuning
development-checkpoint
decision-model
feature-extraction
Instructions to use Mhmadhassnz/GoMini 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 Mhmadhassnz/GoMini 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 Mhmadhassnz/GoMini:Q8_0 # Run inference directly in the terminal: llama cli -hf Mhmadhassnz/GoMini:Q8_0
Install from WinGet (Windows)
winget install llama.cpp # Start a local OpenAI-compatible server with a web UI: llama serve -hf Mhmadhassnz/GoMini:Q8_0 # Run inference directly in the terminal: llama cli -hf Mhmadhassnz/GoMini:Q8_0
Build from source code
git clone https://github.com/ggml-org/llama.cpp.git cd llama.cpp cmake -B build cmake --build build -j --target llama-app # Start a local OpenAI-compatible server with a web UI: ./build/bin/llama serve -hf Mhmadhassnz/GoMini:Q8_0 # Run inference directly in the terminal: ./build/bin/llama cli -hf Mhmadhassnz/GoMini:Q8_0
Use Docker
docker model run hf.co/Mhmadhassnz/GoMini:Q8_0
- Llama new
- LM Studio
- Jan
- Ollama
How to use Mhmadhassnz/GoMini with Ollama:
ollama run hf.co/Mhmadhassnz/GoMini:Q8_0
- Unsloth Desktop
- Docker Model Runner
How to use Mhmadhassnz/GoMini with Docker Model Runner:
docker model run hf.co/Mhmadhassnz/GoMini:Q8_0
- Lemonade
How to use Mhmadhassnz/GoMini with Lemonade:
Pull the model
# Download Lemonade from https://lemonade-server.ai/ lemonade pull Mhmadhassnz/GoMini:Q8_0
Run and chat with the model
lemonade run user.GoMini-Q8_0
List all available models
lemonade list
- Atomic Chat
|
Download README.md from Mhmadhassnz/GoMini: direct link, hf CLI and curl.
- Browser
- Download file 16.9 kB
-
https://huggingface.co/Mhmadhassnz/GoMini/resolve/main/README.md
- Command line
-
hf download hf://Mhmadhassnz/GoMini/README.md
-
curl -L -o README.md https://huggingface.co/Mhmadhassnz/GoMini/resolve/main/README.md
16.9 kB
| license: apache-2.0 | |
| language: | |
| - en | |
| base_model: doofz/THX-01 | |
| base_model_relation: finetune | |
| datasets: | |
| - osunlp/Mind2Web | |
| library_name: custom | |
| pipeline_tag: text-classification | |
| inference: false | |
| tags: | |
| - modernbert | |
| - browser-agent | |
| - decision-making | |
| - agentgo | |
| - full-fine-tuning | |
| - safetensors | |
| - gguf | |
| - development-checkpoint | |
|  | |
| # GoMini v6 | |
| **A small, local decision model for a bounded browser loop.** | |
| GoMini is a full fine-tune of [THX-01](https://huggingface.co/doofz/THX-01) | |
| for selecting the next action from an explicit set of valid candidates. It is | |
| designed for **AgentGo browser** workflows: a larger model supplies a bounded | |
| subgoal; GoMini chooses among prepared actions; AgentGo executes permitted | |
| actions and checks their effects. Ordinary verified steps can stay local, with | |
| the larger model called when the subgoal finishes or needs help. | |
| Created by [Mhmadhassnz](https://huggingface.co/Mhmadhassnz). | |
| > **Development release, not a passed production gate.** V6 continues v5 on | |
| > 29,000 decisions: v5's set plus 12,000 new ones recorded in AgentGo 0.1.6 on | |
| > new practice families (rows of identical buttons, scroll until found, retry | |
| > after an error, covering dialogs, wait until enabled, "the 3rd option", | |
| > focus a box, collapsed sections) and 577 steps of a large model on MiniWoB++ | |
| > pages it solved. On held-out practice pages it picks the right step | |
| > **96.6%** of the time (v5 on the same pages: 76.6%). Through AgentGo 0.1.6's | |
| > delegate loop, on BrowserGym MiniWoB++ pages it never saw, it finishes | |
| > **53 of 65** subgoals (v5 on 0.1.6: 42; v5 on 0.1.5: 39). Calibrated | |
| > fallback reliability and an independent final audit remain pending. | |
| | Model | GoMini v6 (continues v5) | | |
| | --- | --- | | |
| | Foundation | `doofz/THX-01` · ModernBERT decision architecture | | |
| | Parameters | 321.9M total; 321.7M optimized | | |
| | Fine-tuning | Full encoder, embeddings and decision head; no LoRA | | |
| | Validated task | One bounded `choice` question named `next` | | |
| | Input contract | 1,024 packed tokens; 2–24 explicit choices | | |
| | Formats | Complete native Safetensors checkpoint + Q8_0 GGUF | | |
| | Training hardware | AMD Radeon RX 7800 XT · 16 GB | | |
| | License | Apache 2.0; dataset attribution retained separately | | |
| ## What GoMini does | |
| GoMini scores supplied candidates in a non-autoregressive forward pass. Choices | |
| can represent a click, a supplied field/value pair, a prepared read method, or | |
| explicit `wait`, `done`, `escalate` and `stop` controls. It does not generate an | |
| arbitrary plan, new selector, tool argument, value or chat response. | |
| ```text | |
| Large model: bounded goal + completion condition + permissions | |
| | | |
| AgentGo: observe -> prepare valid choices -> GoMini selects | |
| ^ | | |
| | independent permission checks | |
| | | | |
| +----- verify actual effects <- execute allowed choice | |
| | | |
| verified done / needs_help / stopped | |
| | | |
| return to planner | |
| ``` | |
| The release contains reference selection clients, not a complete production | |
| AgentGo integration or permission system. Every client response carries | |
| `execution_authorized: false`; the supervisor remains responsible for execution. | |
| ## Results at a glance | |
| ### v6 | |
|  | |
| | Evaluation | v5 | v6 | Scope | | |
| | --- | ---: | ---: | --- | | |
| | Held-out practice pages (769 decisions, v5 and v6 families) | 76.6% | **96.6%** | Whole pages never trained on | | |
| | ↳ retry after an error | 33.3% | **100%** | an optimistic toggle the server rejects once | | |
| | ↳ rows of identical buttons | 58.8% | **100%** | "Dismiss" for the named notification | | |
| | ↳ wait until enabled | 58.6% | **100%** | a button enabled after a moment | | |
| | ↳ focus a box | 59.1% | **100%** | put the cursor in a named field | | |
| | ↳ covering dialog | 66.7% | **100%** | close "What's new" first | | |
| | ↳ collapsed sections | 78.6% | **100%** | open the right section, then click | | |
| | ↳ scroll until found | 60.0% | 91.7% | a link further down a long page | | |
| | ↳ "the Nth option" | 58.3% | 75.0% | unlabelled radio buttons | | |
| | ↳ tabs | 80.6% | 75.0% | | | |
| | ↳ tree | 73.5% | 85.7% | | | |
| | MiniWoB++ subgoals through AgentGo 0.1.6 (13 task types x 5 seeds) | 42 / 65 | **53 / 65** | Held-out benchmark pages, Q8_0 on Vulkan, one delegation per task | | |
| | False "done" in those 65 | 3 | 4 | GoMini said done but the page did not count the task | | |
| Per task (v5 -> v6): focus-text 0 -> 4/5, click-collapsible 0 -> 4/5, | |
| social-media 0 -> 3/5; click-tab-2 2/5 and form-sequence-2 0/5 for both (the | |
| latter's instruction never says to submit). | |
| ### Inside AgentGo, driven by a large model | |
| One model (gpt-6-luna) drives AgentGo on 38 tasks (24 BrowserGym MiniWoB++ | |
| tasks and 14 single-page-app tasks), a fresh session per task, both setups | |
| running at the same time, twice (76 runs each). AgentGo 0.1.6 with GoMini v6 | |
| solves 94.7% of the runs with no wrong action, against 86.8% and 6 wrong | |
| actions for AgentGo 0.1.5 with GoMini v5. The planner did not delegate to | |
| GoMini in these runs, so they measure the browser with GoMini installed; what | |
| GoMini does on its own is the sweep above. Details: | |
| [AgentGo 0.1.6 benchmarks](https://github.com/Moha2005269/agentgo/blob/main/docs/benchmarks/agentgo-0.1.6.md). | |
|  | |
| ### v5 (kept for reference) | |
| | Evaluation | v4 | v5 | Scope | | |
| | --- | ---: | ---: | --- | | |
| | Held-out practice pages (794 decisions) | 48.7% | **96.0%** | Whole pages never trained on; forms, trees, check lists, tabs, icons, menus, sign-ins, payment buttons | | |
| | MiniWoB++ subgoals through AgentGo (13 task types x 5 seeds) | 15 / 65 (AgentGo 0.1.4) | **39 / 65** (AgentGo 0.1.5) | Held-out benchmark pages, Q8_0 on Vulkan, one delegation per task | | |
| | False "done" in those 65 | 26 | **3** | GoMini said done but the page did not count the task | | |
| | AgentGo 24-form benchmark | 24 / 24 | **24 / 24** | One delegation per form | | |
| | AgentGo install self-test | pass | **pass** | `example_request.json` | | |
| Per-family and per-task numbers are in [EVALUATION.md](EVALUATION.md). | |
| ### v4 (kept for reference) | |
| These are **native v4 development results**. Local suites used actual model | |
| selections and AgentGo execution/readback on owned procedural pages. They are | |
| not public-web accuracy, independent test scores or Q8 browser scores. | |
| | Development evaluation | Result | Scope | | |
| | --- | ---: | --- | | |
| | Single-action episodes | 400 / 400 · 100% | Local click/fill/select/check and control scenarios | | |
| | Multi-step form episodes | 133 / 133 · 100% | 471 decisions; local draft and completion checks | | |
| | Reveal-only viewport episodes | 200 / 200 · 100% | 352 decisions; reveal without activation | | |
| | Strict-navigation episodes | 300 / 300 · 100% | 650 decisions; prescribed scroll/back/wait policy | | |
| | Prepared read-method episodes | 377 / 380 · 99.21% | 19 canonical read methods, prepared arguments | | |
| | ↳ Element geometry subgroup | **17 / 20 · 85%** | Confusion with viewport/HTML reads | | |
| | Mixed offline accepted decisions | 17,502 / 17,590 · 99.50% | Mostly procedural/synthetic examples | | |
| | ↳ Adapted human snapshots, accepted | **365 / 441 · 82.77%** | Mind2Web-derived, target included in shortlist | | |
| | ↳ Adapted human snapshots, all raw inputs | **365 / 504 · 72.42%** | 63 packing rejections counted as failures | | |
| Zero false-done predictions were observed in the listed native action, form, | |
| viewport and navigation suites. These include scenarios where a correct stop or | |
| escalation is success; they do not prove universal task completion or reliable | |
| failure detection. Navigation's oracle requires explicit scrolling even when a | |
| browser click could auto-reveal its target. | |
| **Q8_0 delivery smoke:** 64 attempted synthetic/TRAIN-derived inputs; **56 | |
| supported inputs matched both exact token IDs and native top choices**. Eight | |
| inputs were rejected before Q8 decision inference by the packing guard. Maximum | |
| absolute probability drift on compared inputs was 0.0008011311. This checks | |
| conversion and interfaces, not browser success. | |
| Read [EVALUATION.md](EVALUATION.md) for every native episode subgroup, all 19 read | |
| methods, offline source breakdowns, rejection counts, methodology and remaining | |
| evaluation. Machine-readable summaries and the original packing failure are in | |
| [reports/](reports/). | |
| ## Download | |
| | Artifact | Size | Use | | |
| | --- | ---: | --- | | |
| | [native/model.safetensors](native/model.safetensors) | 643,835,524 bytes | Full native checkpoint; download its configs/tokenizer/runtime too | | |
| | [gguf/GoMini-v6-Q8_0.gguf](gguf/GoMini-v6-Q8_0.gguf) | 356,866,560 bytes | Decision-capable GGUF runtime only (SHA-256 `b90ce841…5a49bb6`) | | |
| | [adapter/](adapter/) | Python helpers | Shared packing and resident selection clients; no learned adapters | | |
| | [runtime/thx01/](runtime/thx01/) | Python implementation | Bundled upstream native inference code | | |
| Use revision **`v6`** for the tagged release (`v5` and `v4` stay available). Checksums are in | |
| [SHA256SUMS.txt](SHA256SUMS.txt), with conversion identities and status in | |
| [PROVENANCE.json](PROVENANCE.json). No Q4 or intermediate F16 GGUF is distributed. | |
| ## Quickstart | |
| Use a compatible **GPU PyTorch** environment with Transformers, Safetensors and | |
| NumPy. The recorded environment and Q8 server requirements are in | |
| [ENVIRONMENT.md](ENVIRONMENT.md). CPU portability and other GPU stacks have not | |
| been validated by this release. It is a custom decision checkpoint; loading it | |
| as `AutoModelForCausalLM` or sending chat-completion messages is not supported. | |
| Download and run the included single-request example with that environment: | |
| ```python | |
| import subprocess | |
| import sys | |
| from pathlib import Path | |
| from huggingface_hub import snapshot_download | |
| root = Path(snapshot_download("Mhmadhassnz/GoMini", revision="v6")) | |
| subprocess.run([sys.executable, str(root / "examples" / "choose.py")], check=True) | |
| ``` | |
| The example reads [example_request.json](example_request.json), serializes it to | |
| one line and asks the native chooser to select a candidate. It does not execute | |
| browser actions. For an integration, keep `adapter/choose_native.py` resident: | |
| write one compact JSON object per line to stdin and read one JSON result per line | |
| from stdout. Diagnostic messages use stderr. | |
| For Q8_0, first start a compatible **ModernBERT decision-capable llama.cpp | |
| server** with `/tokenize` and `/v1/systemone`, following | |
| [ENVIRONMENT.md](ENVIRONMENT.md). Its binary is not included. Then run: | |
| ```python | |
| subprocess.run([ | |
| sys.executable, str(root / "examples" / "choose.py"), | |
| "--q8", "--url", "http://127.0.0.1:8765", | |
| ], check=True) | |
| ``` | |
| Use `adapter/q8_client.py` for a resident guarded Q8 client. Keep its packing and | |
| runtime token checks: some literal-special-token/trailing-whitespace inputs do | |
| not match native per-piece packing and must escalate. Native/Q8 agreement on the | |
| limited smoke suite does not establish equivalence for every possible input. | |
| ## Integrating with AgentGo | |
| The recommended loop and implementation details are in | |
| [LIMITATIONS_AND_AGENTGO_INTEGRATION.md](LIMITATIONS_AND_AGENTGO_INTEGRATION.md). | |
| 1. Have the large model specify the subgoal, completion predicate, permitted tab | |
| and origin, exact supplied values, effect permissions, deadline and step budget. | |
| 2. Build a fresh compact observation and bind valid candidate keys to prepared | |
| browser operations. Include explicit wait, stop, done and escalation controls. | |
| 3. Use the shared `gomini.agentgo/1` packer. Keep the 512-token instruction/options | |
| head budget, 1,024-token total, maximum 24 choices and 48 tokens per rendered | |
| option. Reject oversize input rather than silently truncating it. | |
| 4. Independently check permissions, tab/origin/revision, candidate membership, | |
| exact field/value binding and attempt limits before executing any selection. | |
| 5. Verify effects from browser evidence. Stop on cancellation; return compact | |
| evidence to the larger model on verified completion, ambiguity, missing | |
| information, repeated failure or exhausted budget. | |
| For a known fixed request such as an element rectangle, deterministic dispatch | |
| to the correct prepared method can be better than asking a model to rediscover | |
| the mapping. A successful command or HTTP 200 does not prove goal completion. | |
| ## Limitations | |
| - **General browsing is unproven.** Local fixtures share families and some markup; | |
| split-separated local labels are not independent real websites or accounts. | |
| - **Human transfer is weaker than the procedural average.** The adapted dataset | |
| includes the annotated target in each shortlist. Its scores are not official | |
| Mind2Web benchmark results or full browser trajectories. | |
| - **1,088 registry names are not 1,088 verified tools.** Training includes synthetic | |
| description routing, including aliases; actual read-method checks cover 19 | |
| canonical methods, with prepared arguments and no write-operation coverage. | |
| - **Confidence is uncalibrated.** V4 uses temperature 1.0; confident mistakes | |
| occurred. Probability, margin and entropy must not grant permission. The unused | |
| auxiliary action head was not supervised and must not gate safety. | |
| - **Fallback is an unmeasured property.** Do not assume every failed action will | |
| request help. Validate independent checks and larger-model handoffs separately. | |
| - **Q8 browser evaluation and final audit remain pending.** Packing guards reject | |
| some inputs; reference clients are not a hardened supervisor. No general >90% | |
| success, latency, multilingual retention or production-readiness claim is made. | |
| ## Training and provenance | |
| V6 is a full fine-tune of the v5 checkpoint on 28,317 decisions (v5's | |
| 14,902-record set plus 12,049 new teacher records on 0.1.6's practice pages | |
| and 577 agent-labelled steps; the best of 2 epochs by held-out pages, batch | |
| 8 x 4 accumulation, AdamW 3e-6, same objective). The agent-labelled steps are | |
| the actions of gpt-6-luna on MiniWoB++ pages outside every evaluation set, | |
| taken only from runs the page scored as solved; held-out records are whole | |
| pages (seeds 39001-39300). No evaluation page (the 24 agent-benchmark tasks, | |
| the 13 GoMini sweep task types, the 14 SPA tasks) was used. | |
| V5 is a full fine-tune of the v4 checkpoint on 14,902 new decisions (2 epochs, | |
| AdamW 3e-6, same objective), recorded by a teacher on 6,000 procedurally | |
| generated practice pages served to AgentGo 0.1.5 and packed with AgentGo's | |
| own packer; held-out records are whole pages. No MiniWoB++ or other benchmark | |
| page was used. The recipe and per-family counts are in [TRAINING.md](TRAINING.md). | |
| V4 continues the prior native checkpoint with **53,146 accepted unique training | |
| records**, combining procedural examples, synthetic registry routing, adapted | |
| Mind2Web snapshots and verified decisions on owned local AgentGo fixtures. It | |
| reached epoch 2 / step 5,660 using AdamW, BF16 autocast, FP32 optimization and a | |
| stable log-score plus spherical-score objective. Embeddings and all encoder | |
| blocks were trainable; this was full fine-tuning. | |
| See [TRAINING.md](TRAINING.md) for the recipe and source counts, and | |
| [native/training-settings.json](native/training-settings.json) for exact data | |
| file hashes and settings. No raw website corpus or complete collection harness | |
| is hosted here. Development influenced selection; frozen calibration/final-test | |
| records were not consumed for this handoff. | |
| ## Credits and license | |
| GoMini builds on **THX-01 by HAL-X AI**, with its mmBERT encoder attribution | |
| preserved in [NOTICE](NOTICE). Upstream weights and bundled runtime retain their | |
| [Apache 2.0 license](LICENSE). The pinned foundation revision is | |
| `b323afcef149f9288a9d0daef4badd67b9b87c61`. | |
| **Mind2Web** is credited to Xiang Deng, Yu Gu, Boyuan Zheng, Shijie Chen, Samuel | |
| Stevens, Boshi Wang, Huan Sun and Yu Su (2023). Its dataset is CC BY 4.0; the local | |
| adaptation changes representation, packing and split assignment. See | |
| [THIRD_PARTY_DATA.md](THIRD_PARTY_DATA.md) and the | |
| [official Mind2Web project](https://github.com/OSU-NLP-Group/Mind2Web). | |
| AgentGo is the browser integration target and execution environment for the | |
| reported local fixture checks. AgentGo browser software is not distributed in | |
| this model repository. | |