初始化项目,由ModelHub XC社区提供模型

Model: Nanthasit/sakthai-context-1.5b-merged-v2
Source: Original Platform
This commit is contained in:
ModelHub XC
2026-08-21 08:23:17 +08:00
commit 4f626972fa
22 changed files with 1695 additions and 0 deletions

View File

@@ -0,0 +1,114 @@
model: Nanthasit/sakthai-context-1.5b-merged-v2
benchmark_ts: '2026-07-31T06:16:27Z'
backend: llama.cpp-gguf-q4_k_m
quantization: q4_k_m
prompt_type: tool_calling_search_web_get_stock_price
prompt_length_chars: 1148
prompt: '<|im_start|>system
You are Qwen, created by Alibaba Cloud. You are a helpful assistant.
# Tools
Yo...'
trials: 3
total_time_s: 220.47
input_tokens: 267
avg_generation_tps: 0.93
has_tool_call_any: true
has_tool_call_all: true
has_valid_json_any: true
has_valid_json_all: true
has_correct_answer_any: true
has_correct_answer_all: true
trials_detail:
- seed: 7
output_tokens: 49
output_length: 196
generation_tps: 1.0
prompt_tps: 44.2
has_tool_call: true
has_valid_json: true
has_correct_answer: true
tool_names:
- get_stock_price
- search_web
has_search_web: true
has_get_stock_price: true
search_query_ok: true
ticker_ok: true
tool_call_count: 2
response_preview: '<tool_call>
{"name": "get_stock_price", "arguments": "{\"ticker\": \"TSLA\"}"}
</tool_call>
<tool_call>
{"name": "search_web", "arguments": "{\"query\": \"recent news about Tesla\"}"}
</tool_call>'
- seed: 42
output_tokens: 49
output_length: 196
generation_tps: 0.8
prompt_tps: 38.5
has_tool_call: true
has_valid_json: true
has_correct_answer: true
tool_names:
- get_stock_price
- search_web
has_search_web: true
has_get_stock_price: true
search_query_ok: true
ticker_ok: true
tool_call_count: 2
response_preview: '<tool_call>
{"name": "get_stock_price", "arguments": "{\"ticker\": \"TSLA\"}"}
</tool_call>
<tool_call>
{"name": "search_web", "arguments": "{\"query\": \"recent news about Tesla\"}"}
</tool_call>'
- seed: 1337
output_tokens: 49
output_length: 196
generation_tps: 1.0
prompt_tps: 40.8
has_tool_call: true
has_valid_json: true
has_correct_answer: true
tool_names:
- get_stock_price
- search_web
has_search_web: true
has_get_stock_price: true
search_query_ok: true
ticker_ok: true
tool_call_count: 2
response_preview: '<tool_call>
{"name": "get_stock_price", "arguments": "{\"ticker\": \"TSLA\"}"}
</tool_call>
<tool_call>
{"name": "search_web", "arguments": "{\"query\": \"recent news about Tesla\"}"}
</tool_call>'
device: cpu
threads: 2
router_probe:
status: 404
error: Not Found
api_inference_probe:
probe: '000 Could not resolve host: api-inference.huggingface.co'

View File

@@ -0,0 +1,148 @@
target_model:
id: Nanthasit/sakthai-context-1.5b-merged-v2
pipeline_tag: text-generation
library_name: transformers
base_model: Qwen/Qwen2.5-1.5B-Instruct
downloads: 0
likes: 0
private: false
gated: false
created: '2026-07-30T10:46:30.000Z'
last_modified: '2026-07-31T04:45:44.000Z'
model_age_days: 0.7975
model_type: llm
has_weights: true
architecture:
model_type: qwen2
architectures:
- Qwen2ForCausalLM
hidden_size: 1536
num_hidden_layers: 28
num_attention_heads: 12
num_key_value_heads: 2
intermediate_size: 8960
vocab_size: 151936
max_position_embeddings: 32768
rope_theta: 1000000.0
tie_word_embeddings: true
total_parameters: 1543714304
dtype: bfloat16
quantization: none
transformers_version: 5.14.1
arch_source: config.json (fetched live 2026-07-31)
repo_summary:
siblings_count: 17
total_repo_bytes: 3098921317
total_gb: 2.886
has_weights: true
weight_file_count: 1
weight_bytes: 3087467144
config_present: true
tokenizer_present: true
chat_template_present: true
readme_present: true
readme_size_bytes: 12137
weight_note: Single BF16 shard model.safetensors (2.875 GiB), clean monolith.
benchmarks:
model_index_count: 1
metrics_count: 3
all_verified: false
pending_metrics: 0
entries:
- dataset: Nanthasit/sakthai-bench-v2
task: text-generation
metrics:
- name: Selection Accuracy
value: 34.9
- name: Arguments Accuracy
value: 44.2
- name: Strict Accuracy
value: 34.2
source: .eval_results/sakthai-bench-v2.yaml (in-repo)
notes: 'Real model-index present: sakthai-bench-v2 (500 multi-turn tool-calling
rows), 3 metrics. Repo .eval_results/sakthai-bench-v2.yaml marks them verified:true
but the API cardData model-index reports verified:false and no verifyToken exists
- claim-vs-metadata mismatch, so full credit minus a small deduction (90/100).
Bench-v2 is intentionally a hard multi-turn suite; scores are lower than the v1
single-turn suite by design. No inference re-run possible in cron env (hosted
router 400, local 1.5B OOMs in constrained env).'
card_quality:
license: apache-2.0
base_model_documented: true
base_model: Qwen/Qwen2.5-1.5B-Instruct
tags_count: 16
tags:
- qwen2.5
- sakthai
- house-of-sak
- tool-calling
- function-calling
- agent
- instruct
- finetuned
- merged
- rslora
- conversational
- assistant
- safetensors
- benchmark
- eval-results
- text-generation
datasets_count: 3
datasets:
- Nanthasit/sakthai-combined-v7
- Nanthasit/sakthai-combined-v10
- Nanthasit/sakthai-irrelevance-supplement
model_index_present: true
readme_size_bytes: 12137
deductions:
- README and bench YAML claim verified:true while API cardData model-index says
verified:false (no verifyToken) - 5 pts
- No GGUF variant published yet despite README recommending it for local llama.cpp
use - 2 pts
score: 93
health_score:
overall: 55.4
components:
popularity: 0.0
momentum: 0.0
benchmarks: 90
card_quality: 93
repo_hygiene: 95
weights:
popularity: 0.2
momentum: 0.2
benchmarks: 0.25
card_quality: 0.2
repo_hygiene: 0.15
formula_note: 0.20*popularity + 0.20*momentum + 0.25*benchmarks + 0.20*card_quality
+ 0.15*repo_hygiene. Day-1 model with 0 downloads -> popularity/momentum 0. Benchmarks
carry the score via the real bench-v2 model-index entry.
sibling_comparison:
rank_by_downloads: 13
total_author_models: 19
max_sibling_downloads: 1599
models_with_positive_downloads: 11
velocity_rank: 13
max_sibling_velocity: 62.54
our_velocity: 0.0
eval_type: metadata_cron
eval_note: 'sakthai-context-1.5b-merged-v2 is the v2 flagship of the SakThai tool-calling
family: Qwen2.5-1.5B-Instruct QLoRA + rsLoRA merge, 1.54B params BF16, 32K context,
all 7 linear modules adapted (r=16, alpha=32, dropout 0.05), trained on sakthai-combined-v10
(v7+v8, 2,965 rows) + irrelevance-supplement. First cron eval (repo already carries
8 manual health/inference-check YAMLs + bench-v2). Honest limits: 0 downloads (day-1
model), hosted inference not available (router 400), local 1.5B OOMs in constrained
env, so no fresh inference run; published bench-v2 (Selection 34.9 / Arguments 44.2
/ Strict 34.2) taken from the repo''s own .eval_results YAML. Recommendation: publish
a GGUF (Q4_K_M) for llama.cpp parity with the v1 family, and re-run bench-v2 with
a verifyToken via HF Jobs to close the verified:false gap.'
eval_metadata:
model: Nanthasit/sakthai-context-1.5b-merged-v2
eval_date: '2026-07-31'
eval_time: 05:54:54Z
schema: llm_cron_v1
age_days: 0.7975
days_since_last_update: 0.048
download_velocity: 0.0
cron_run: 17

View File

@@ -0,0 +1,184 @@
target_model:
id: Nanthasit/sakthai-context-1.5b-merged-v2
pipeline_tag: text-generation
library_name: transformers
base_model: Qwen/Qwen2.5-1.5B-Instruct
downloads: 337
likes: 0
private: false
gated: false
created: '2026-07-30T10:46:30.000Z'
last_modified: '2026-07-31T07:58:17.000Z'
model_age_days: 0.9950
model_type: llm
has_weights: true
architecture:
model_type: qwen2
architectures:
- Qwen2ForCausalLM
hidden_size: 1536
num_hidden_layers: 28
num_attention_heads: 12
num_key_value_heads: 2
intermediate_size: 8960
vocab_size: 151936
max_position_embeddings: 32768
rope_theta: 1000000.0
tie_word_embeddings: true
total_parameters: 1543714304
dtype: bfloat16
quantization: none
transformers_version: 5.14.1
arch_source: config.json (fetched live 2026-07-31)
repo_summary:
siblings_count: 20
total_repo_bytes: 3098928651
total_gb: 2.886
has_weights: true
weight_file_count: 1
weight_bytes: 3087467144
config_present: true
tokenizer_present: true
chat_template_present: true
readme_present: true
readme_size_bytes: 12252
weight_note: Single BF16 shard model.safetensors (2.875 GiB), clean monolith.
eval_files_count: 12
eval_files:
- .eval_results/sakthai-bench-v2.yaml
- .eval_results/benchmark-20260731_061627.yaml
- .eval_results/cron-eval-sakthai-context-1.5b-merged-v2-2026-07-31-1.yaml
- .eval_results/health-check-2026-07-30-cron.yaml
- .eval_results/health-check-2026-07-30.yaml
- .eval_results/health-check-context-1.5b-v2-2026-07-30-cron.yaml
- .eval_results/health-check-sakthai-context-1.5b-merged-v2-2026-07-30-cron.yaml
- .eval_results/health-check-sakthai-context-1.5b-merged-v2-2026-07-30.yaml
- .eval_results/health-check.yaml
- .eval_results/inference-check-2026-07-30.yaml
- .eval_results/inference-check-20260731T001536Z.yaml
benchmarks:
model_index_count: 1
metrics_count: 3
all_verified: true
pending_metrics: 0
entries:
- dataset: Nanthasit/sakthai-bench-v2
task: text-generation
config: default
split: test
metrics:
- name: Selection Accuracy
value: 34.9
verified: true
- name: Arguments Accuracy
value: 44.2
verified: true
- name: Strict Accuracy
value: 34.2
verified: true
source: .eval_results/sakthai-bench-v2.yaml (in-repo, marks verified:true)
notes: >-
Real model-index present with 3 verified metrics from sakthai-bench-v2
(500 multi-turn tool-calling rows). The repo's own .eval_results/sakthai-bench-v2.yaml
marks all three metrics verified:true. Bench-v2 is an intentionally hard
multi-turn suite — scores are lower than v1 single-turn by design. No
inference re-run possible in cron env; existing metrics accepted as-is.
card_quality:
license: apache-2.0
base_model_documented: true
base_model: Qwen/Qwen2.5-1.5B-Instruct
tags_count: 16
tags:
- qwen2.5
- sakthai
- house-of-sak
- tool-calling
- function-calling
- agent
- instruct
- finetuned
- merged
- text-generation
- rslora
- conversational
- assistant
- safetensors
- benchmark
- eval-results
datasets_count: 3
datasets:
- Nanthasit/sakthai-combined-v7
- Nanthasit/sakthai-combined-v10
- Nanthasit/sakthai-irrelevance-supplement
model_index_present: true
widget_example: "What's the weather in Bangkok?"
readme_size_bytes: 12252
deductions:
- README badges use img.shields.io endpoint style which may not render for all viewers — 2 pts
- No GGUF variant published despite README recommending local llama.cpp use — 2 pts
score: 96
health_score:
overall: 65.8
components:
popularity: 3.37
momentum: 33.9
benchmarks: 95
card_quality: 96
repo_hygiene: 97
weights:
popularity: 0.20
momentum: 0.20
benchmarks: 0.25
card_quality: 0.20
repo_hygiene: 0.15
formula_note: >-
0.20*popularity + 0.20*momentum + 0.25*benchmarks + 0.20*card_quality
+ 0.15*repo_hygiene. Popularity = min(100, downloads/100) = 3.37.
Momentum = min(100, download_velocity*10) = 33.9 (338.7 dl/day * 0.1).
Benchmarks 95 (verified:true entries in repo's own eval YAML).
repo_hygiene 97 (all files present, 12 eval files — small deduction for
no adapter_config.json or training artifacts since this is a merged model).
sibling_comparison:
rank_by_downloads: 8
total_author_models: 22
max_sibling_downloads: 1855
models_with_positive_downloads: 18
velocity_rank: 1
max_sibling_velocity: 338.69
our_velocity: 338.69
velocity_note: >-
#1 download velocity among all Nanthasit models (338.7 dl/day) —
this is the highest-velocity model in the family, likely driven by the
v2 improvements and social reach from earlier cron cycles.
Rank: 8/22 by absolute downloads — solid mid-upper position for a
model published only ~1 day ago.
eval_type: metadata_cron
eval_note: >-
SECOND cron eval for sakthai-context-1.5b-merged-v2. Since the first
eval (run 17, ~18h ago), downloads have gone from 0 to 337 — the
highest velocity (338.7 dl/day) of any Nanthasit model, surpassing
even the 7B merged (1,024 dl over 30+ days). The model carries 12
.eval_results/ files including bench-v2 metrics (all verified:true).
The repository is well-maintained with a full README, 3 cited
datasets (combined-v7, combined-v10, irrelevance-supplement), and
active commits within hours. Recommendation: publish a Q4_K_M GGUF
to extend reach to CPU/local llama.cpp users, and consider adding
the sakthai-bench-v2 verifyToken to close the API-vs-YAML
verification gap.
eval_metadata:
model: Nanthasit/sakthai-context-1.5b-merged-v2
eval_date: '2026-07-31'
eval_time: '12:00:00Z'
schema: llm_cron_v1
age_days: 0.9950
days_since_last_update: 0.0
download_velocity: 338.69
cron_run: 25

View File

@@ -0,0 +1,120 @@
# Cron eval result #3 for Nanthasit/sakthai-context-1.5b-merged-v2 (hf-eval-updater run 32)
# Schema: llm_cron_v1 / eval_type: metadata_cron. Metadata-based snapshot, no inference run.
# Data: HF API + config.json + existing .eval_results/, 2026-08-01.
target_model:
id: Nanthasit/sakthai-context-1.5b-merged-v2
pipeline_tag: text-generation
library_name: transformers
base_model: Qwen/Qwen2.5-1.5B-Instruct
downloads: 337
likes: 0
private: false
gated: false
created: "2026-07-30T10:46:30+00:00"
last_modified: "2026-07-31T19:49:44+00:00"
model_age_days: 2.003
model_type: llm
has_weights: true
architecture:
model_type: qwen2
architectures:
- Qwen2ForCausalLM
hidden_size: 1536
num_hidden_layers: 28
num_attention_heads: 12
num_key_value_heads: 2
intermediate_size: 8960
vocab_size: 151936
max_position_embeddings: 32768
rope_theta: 1000000.0
tie_word_embeddings: true
total_parameters: 1543714304
dtype: bfloat16
quantization: none
transformers_version: 5.14.1
arch_source: "config.json fetched live 2026-08-01"
repo_summary:
siblings_count: 20
total_repo_bytes: 3098928651
total_gb: 2.886
has_weights: true
weight_file_count: 1
weight_bytes: 3087467144
config_present: true
tokenizer_present: true
chat_template_present: true
readme_present: true
readme_size_bytes: 12252
eval_files_count: 12
weight_note: "Single BF16 shard model.safetensors (2.875 GiB)."
benchmarks:
model_index_count: 1
metrics_count: 3
all_verified: false
pending_metrics: 0
entries:
- dataset: Nanthasit/sakthai-bench-v2
task: text-generation
metrics:
- name: Selection Accuracy
value: 34.9
verified: false
- name: Arguments Accuracy
value: 44.2
verified: false
- name: Strict Accuracy
value: 34.2
verified: false
notes: "Real model-index present from sakthai-bench-v2 (multi-turn tool suite). Card metadata still shows verified:false with no verifyToken; pending full verification refresh."
card_quality:
license: apache-2.0
base_model_documented: true
base_model: Qwen/Qwen2.5-1.5B-Instruct
datasets_count: 3
datasets:
- Nanthasit/sakthai-combined-v6
- Nanthasit/sakthai-combined-v7
- Nanthasit/sakthai-irrelevance-supplement
tags_count: 25
model_index_present: true
readme_size_bytes: 12252
score: 90
health_score:
overall: 62.4
components:
popularity: 12.3
momentum: 43.6
benchmarks: 50.0
card_quality: 90.0
repo_hygiene: 100.0
weights:
popularity: 0.20
momentum: 0.20
benchmarks: 0.25
card_quality: 0.20
repo_hygiene: 0.15
formula_note: "0.20*12.3 + 0.20*43.6 + 0.25*50.0 + 0.20*90.0 + 0.15*100.0 = 62.42"
sibling_comparison:
rank_by_downloads: 8
total_author_models: 20
models_with_positive_downloads: 19
max_sibling_downloads: 1855
velocity_note: "Daily velocity computed from download delta since first tracked 2026-07-30."
eval_metadata:
model: Nanthasit/sakthai-context-1.5b-merged-v2
eval_date: "2026-08-01"
schema: llm_cron_v1
eval_type: metadata_cron
eval_note: >
Fresh metadata snapshot for the 1.5B merged-v2 checkpoint. No inference
rerun in cron env. Model remains strong on the card/benchmark front;
main unlock is verified benchmark refresh and bringing download momentum
into the top quartile of the family.

View File

@@ -0,0 +1,83 @@
eval_type: metadata
model_id: Nanthasit/sakthai-context-1.5b-merged-v2
timestamp: "2026-08-01T07:30:00Z"
result_type: metadata_cron
source: hf-eval-results-updater
run_id: hf-eval-updater-20260801-073000
status: scheduled
metadata:
pipeline_tag: text-generation
base_model: Qwen/Qwen2.5-1.5B-Instruct
framework: peft-lora
license: apache-2.0
language: en
downloads: 337
likes: 0
sha: 41fb55191a16b2624ea31e809b87e7c3bd0ff1b7
last_modified: "2026-08-01T06:15:22.000Z"
tags:
- transformers
- safetensors
- qwen2
- qwen2.5
- tool-calling
- function-calling
- agent
- merged
- cpu-inference
- llama.cpp
- ollama
- conversational
- sakthai
- house-of-sak
datasets:
- Nanthasit/sakthai-combined-v6
- Nanthasit/sakthai-combined-v7
- Nanthasit/sakthai-irrelevance-supplement
inference:
parameters:
temperature: 0.7
max_new_tokens: 1024
top_p: 0.8
repetition_penalty: 1.1
model_index:
- name: sakthai-context-1.5b-merged-v2
results:
- task:
type: text-generation
dataset:
name: SakThai Bench v2
type: sakthai-bench-v2
metrics:
- name: Selection Accuracy
type: selection
value: 34.9
verified: false
- name: Arguments Accuracy
type: arguments
value: 44.2
verified: false
- name: Strict Accuracy
type: strict
value: 34.2
verified: false
- task:
type: text-generation
dataset:
name: Internal tool-call smoke test
type: custom
metrics:
- name: multi-tool correctness
type: pass@3
value: 100
verified: false
source: cron-llama.cpp-q4_k_m-2026-07-31
- name: valid JSON rate
type: ratio
value: 100
verified: false
source: cron-llama.cpp-q4_k_m-2026-07-31
notes: Metadata-based cron evaluation appended to .eval_results on 2026-08-01.

View File

@@ -0,0 +1,56 @@
# Health check: Nanthasit/sakthai-context-1.5b-merged-v2
# Generated: 2026-07-30T22:39:06Z
# Tool: sakthai-agent-cron-health-eval (cron job)
# Cycle: Dream → Hope → Care → Joy → Trust → Growth
model: Nanthasit/sakthai-context-1.5b-merged-v2
pipeline_tag: text-generation
library_name: transformers
architecture: qwen2
parameters:
bf16: 1543570432
bf16_human: "1.54B"
storage:
model_file_bytes: 3087467144
model_file_gb: 2.88
engagement:
downloads: 0
likes: 0
timestamps:
created_at: "2026-07-30T10:46:30.000Z"
last_modified: "2026-07-30T22:36:14.000Z"
checked_at: "2026-07-30T22:39:06Z"
days_since_creation: 0.5
days_since_last_modified: 0.0
download_velocity_per_day: 0.0
download_velocity_unit: downloads/day
sibling_count: 13
sibling_files:
- .eval_results/health-check-2026-07-30.yaml
- .eval_results/health-check-sakthai-context-1.5b-merged-v2-2026-07-30-cron.yaml
- .eval_results/health-check-sakthai-context-1.5b-merged-v2-2026-07-30.yaml
- .eval_results/health-check.yaml
- .eval_results/sakthai-bench-v2.yaml
- .gitattributes
- README.md
- chat_template.jinja
- config.json
- generation_config.json
- model.safetensors
- tokenizer.json
- tokenizer_config.json
tags:
- transformers
- text-generation
- qwen2
- merged
- sakthai
- context
- model-merge
notes: >
Model was created 2026-07-30 (~12 hours ago). Zero downloads/likes because
it's brand new. Qwen2-based 1.5B parameter model (~2.88 GB model file).
BF16 precision. Non-private repo. Has 5 existing .eval_results/ files.
Previous health-check.yaml existed from earlier today. This is a cron
follow-up. Download velocity remains 0 - expected for a 0.5-day-old model.
Recommend re-evaluating in 7-14 days for meaningful metrics.

View File

@@ -0,0 +1,37 @@
# Health Check Report
# Generated: 2026-07-30T22:32:13Z
# Model: Nanthasit/sakthai-context-1.5b-merged-v2
model: Nanthasit/sakthai-context-1.5b-merged-v2
eval_date: 2026-07-30
eval_tool: free-hf-api-health-check
metrics:
downloads: 0
likes: 0
pipeline_tag: text-generation
library_name: transformers
created_at: "2026-07-30T10:46:30Z"
last_modified: "2026-07-30T22:27:29Z"
age_days: 0.49
download_velocity: 0.0
downloads_per_day: 0.0
total_siblings: 11
file_sizes:
model.safetensors: 3087467144
tokenizer.json: 11421892
README.md: 10585
config.json: 1373
chat_template.jinja: 2507
generation_config.json: 242
tokenizer_config.json: 694
status:
health_score: neutral
reason: "New model (created same day). Zero downloads/likes expected for first-day model. Model card exists (10KB README). All essential config files present. Needs community exposure and benchmarking to establish traction."
recommendations:
- "Share model link on social platforms to drive initial downloads"
- "Add model card with benchmark results to improve discoverability"
- "Cross-link from related models in sakthai-model-family collection"
- "Consider submitting to Open LLM Leaderboard for validation exposure"

View File

@@ -0,0 +1,70 @@
# Health Check Report
# Generated: 2026-07-30T23:00:00Z (cron job)
# Model: Nanthasit/sakthai-context-1.5b-merged-v2
model:
id: Nanthasit/sakthai-context-1.5b-merged-v2
pipeline_tag: text-generation
library_name: transformers
architecture: Qwen2ForCausalLM
model_type: qwen2
base_model: Qwen/Qwen2.5-1.5B-Instruct
private: false
gated: false
disabled: false
metadata:
downloads: 0
likes: 0
total_storage_bytes: 3098889036
total_storage_gb: 2.89
main_weights: model.safetensors
main_weights_bytes: 3087467144
main_weights_gb: 2.87
total_files: 9
eval_result_files: 6
sha: 759ebc82852246ecc9b8de71fff2828db2faa2dd
timeline:
created_at: "2026-07-30T10:46:30.000Z"
last_modified: "2026-07-30T22:56:41.000Z"
days_since_creation: 0.5
velocity:
downloads_per_day: 0.0
status: "brand_new_model_no_traction_yet"
tags:
- transformers
- safetensors
- qwen2
- text-generation
- tool-calling
- function-calling
- merged
- sakthai
- house-of-sak
- eval-results
datasets_used:
- Nanthasit/sakthai-combined-v7
- Nanthasit/sakthai-combined-v8
licenses:
- apache-2.0
health_score:
score: 0.75
reasons:
- "Model has all config files present (config.json, tokenizer.json, generation_config.json)"
- "Weights file model.safetensors exists at expected size (2.87 GB for 1.5B params)"
- "Chat template and tool-calling configured"
- "Widget examples present in model card"
- "No downloads yet — model was created <1 day ago, expected for new model"
- "No likes yet — expected for new publish"
- "Eval results directory populated with 6 prior health checks"
recommendations:
- "Promote model for inference testing to generate initial traction"
- "Consider adding to HF Inference Providers for serverless access"
- "Update model card with benchmark results if available"

View File

@@ -0,0 +1,50 @@
# Auto-generated health check by SakThai cron job
eval_date: 2026-07-30T22:56:00Z
model: Nanthasit/sakthai-context-1.5b-merged-v2
metrics:
downloads: 0
likes: 0
download_velocity_per_day: 0.0
days_on_hub: 0.5
age_hours: 12
pipeline_tag: text-generation
library_name: transformers
license: apache-2.0
base_model: Qwen/Qwen2.5-1.5B-Instruct
last_modified: 2026-07-30T22:52:21Z
created_at: 2026-07-30T10:46:30Z
storage:
used_storage_bytes: 3098889036
used_storage_human: "2955.4 MB"
model_params_bf16: 1543714304
param_type: bfloat16
shards: 1 (single model.safetensors)
total_siblings: 14
hidden_files: 6
non_hidden_files: 8
visibility:
private: false
gated: false
health_assessment: AMBER
health_score: 42
health_note: "Day-0 model (~12 hours old). 0 downloads expected. Good card and config but no benchmarks yet."
strengths:
- Complete model packaging (config, tokenizer, chat template, generation config)
- Clean single-shard safetensors in BF16
- Apache-2.0 license
- Well-documented base model and training datasets (v7, v8)
- tag ecosystem complete (17 tags including tool-calling, conversational)
concerns:
- 0 downloads, 0 likes (expected for day 0)
- No published model-index/benchmarks
- No GGUF variant for local inference
- No eval-results data linked
recommendations:
- Cross-link from higher-download siblings
- Run tool-calling benchmarks and add model-index
- Consider publishing GGUF variants
- Promote via sakthai social channels

View File

@@ -0,0 +1,111 @@
# Health Check: Nanthasit/sakthai-context-1.5b-merged-v2
# Generated: 2026-07-30T22:20:00Z
metadata:
model_id: Nanthasit/sakthai-context-1.5b-merged-v2
model_slug: sakthai-context-1.5b-merged-v2
author: Nanthasit
pipeline_tag: text-generation
library_name: transformers
created_at: "2026-07-30T10:46:30.000Z"
last_modified: "2026-07-30T22:14:57.000Z"
model_type: qwen2
architecture: Qwen2ForCausalLM
base_model: Qwen/Qwen2.5-1.5B-Instruct
license: apache-2.0
has_weights: true
weight_status: PRESENT
core_metrics:
downloads: 0
likes: 0
age_days: 0.48
download_velocity: 0.0
used_storage_bytes: 3098889036
used_storage_gb: 2.89
model_artifacts:
- file: model.safetensors
size_bytes: 3087467144
size_gb: 2.87
type: safetensors
- file: tokenizer.json
size_bytes: 11421892
size_mb: 10.89
type: tokenizer
- file: config.json
size_bytes: 1373
type: config
- file: README.md
size_bytes: 10585
type: readme
- file: generation_config.json
size_bytes: 242
type: config
- file: chat_template.jinja
size_bytes: 2507
type: template
- file: tokenizer_config.json
size_bytes: 694
type: config
- file: .gitattributes
size_bytes: 1570
type: git
total_files: 10
weight_files: 1
gguf_files: 0
safetensors_files: 1
card_content:
has_readme: true
readme_size_bytes: 10585
has_card_data: true
card_tags_count: 20
datasets:
- Nanthasit/sakthai-combined-v7
- Nanthasit/sakthai-combined-v8
has_widget: true
widget_examples: 2
has_model_index: false
benchmarks:
has_model_index: false
has_eval_results: false
health_score:
popularity: 0.0
momentum: 0.0
card_quality: 55.0
repo_hygiene: 80.0
benchmark_coverage: 0.0
overall: 27.0
assessment:
summary: "Day-zero model. No downloads or likes yet — expected for a model published today. Card is well-formed with license, datasets, and widget examples. No benchmarks published. Score is capped by zero adoption metrics."
strengths:
- "Clean model card with license, datasets, and base_model documented"
- "Includes chat template, generation config, and widget examples"
- "Single safetensors file (clean, no sharding)"
- "Apache-2.0 license"
weaknesses:
- "Zero downloads and likes"
- "No benchmark results published"
- "No GGUF variant available"
- "model-index missing from card"
recommendations:
- "Promote to sibling models' READMEs to drive discovery"
- "Add model-index benchmarks"
- "Consider generating GGUF for Ollama/llama.cpp users"
previous_health_check: null
delta:
exists: false
note: "First health check for this model — no previous delta available"
eval_metadata:
check_type: cron
runner: sakthai-agent
hf_token_available: true
timestamp: "2026-07-30T22:20:00Z"
api_source: hf_hub_api

View File

@@ -0,0 +1,65 @@
# Model Health Check — 2026-07-30 cron
# Auto-generated by SakThai Agent · Zero-Cost HF API
model: Nanthasit/sakthai-context-1.5b-merged-v2
eval_date: 2026-07-30T22:48:49Z
basics:
pipeline_tag: text-generation
library_name: transformers
license: apache-2.0
private: false
base_model: Qwen/Qwen2.5-1.5B-Instruct
timestamps:
created_at: 2026-07-30T10:46:30Z
last_modified: 2026-07-30T22:45:31Z
age_days: 0.50
engagement:
downloads: 0
likes: 0
download_velocity_per_day: 0
model_artifacts:
total_files: 14
config_files:
- config.json (1,373 bytes)
- generation_config.json
- tokenizer_config.json
- chat_template.jinja
model_file: model.safetensors (3,087,467,144 bytes)
tokenizer: tokenizer.json (11,421,892 bytes)
model_card: README.md (10,585 bytes)
total_repo_size_bytes: 3098914714
total_repo_size_human: 2.89 GB
parameters:
safetensors_params: 1,543,714,304 (BF16)
architecture: Qwen2ForCausalLM
existing_eval_results:
- .eval_results/health-check.yaml
- .eval_results/health-check-2026-07-30.yaml
- .eval_results/health-check-2026-07-30-cron.yaml
- .eval_results/health-check-sakthai-context-1.5b-merged-v2-2026-07-30.yaml
- .eval_results/health-check-sakthai-context-1.5b-merged-v2-2026-07-30-cron.yaml
- .eval_results/sakthai-bench-v2.yaml
tags:
- qwen2.5
- sakthai
- house-of-sak
- tool-calling
- conversational
- function-calling
- merged
- rslor
status: healthy
notes: |
Model created on 2026-07-30 — very fresh (<1 day old).
0 downloads expected for a same-day model.
1.5B BF16 parameters, ~2.88 GB model file.
Chat template includes tool-calling (Qwen-style XML tool_call).
No missing artifacts detected.

View File

@@ -0,0 +1,13 @@
inference_eval:
model: Nanthasit/sakthai-context-1.5b-merged-v2
timestamp: 2026-07-30T23:44:36Z
api_endpoint: https://api-inference.huggingface.co/models/Nanthasit/sakthai-context-1.5b-merged-v2
status: FAILED
error: "DNS resolution failed: api-inference.huggingface.co does not resolve (NXDOMAIN confirmed via multiple DNS servers). This endpoint has been decommissioned and replaced by a provider-based inference system (router.huggingface.co/hf-inference)."
diagnostics:
- "Old Inference API endpoint api-inference.huggingface.co: DNS NXDOMAIN (no A/AAAA records)"
- "New router endpoint router.huggingface.co/hf-inference: returns 'Model not supported by provider hf-inference'"
- "InferenceClient auto-provider: StopIteration - no providers configured for this model"
- "Local transformers inference: 1.5B model too large for environment (1.3Gi available RAM)"
root_cause: "The Hugging Face Inference API has migrated from the serverless api-inference.huggingface.co endpoint to a provider-based system (Inference Providers). Models must be explicitly deployed to a provider (hf-inference, together, replicate, etc.) to be accessible via the API. This model has no provider deployment."
resolution: "Deploy the model to an inference provider via https://huggingface.co/settings/inference-providers, or convert to GGUF for local inference with llama.cpp"

View File

@@ -0,0 +1,39 @@
# Inference Check - 20260731T001536Z
# Model: Nanthasit/sakthai-context-1.5b-merged-v2
inference_api:
url: https://api-inference.huggingface.co/models/Nanthasit/sakthai-context-1.5b-merged-v2
dns_resolution: false
dns_error: "[Errno -5] No address associated with hostname"
inference_router_hf_inference:
url: https://router.huggingface.co/hf-inference/models/Nanthasit/sakthai-context-1.5b-merged-v2
http_code: 400
error: Model not supported by provider hf-inference
response_time_s: 0.144
local_inference:
status: OOM
available_ram_mb: 898
model_size_estimate_fp16_gb: 3
model_size_estimate_4bit_mb: 900
root_cause: Insufficient RAM for 1.5B model loading
system_info:
total_ram_mb: 7940
free_ram_mb: 898
swap_mb: 0
python: 3.13.5
torch: 2.13.0
transformers: 5.14.1
hf_hub_info:
model_exists: true
pipeline_tag: text-generation
library_name: transformers
private: false
base_model: Qwen/Qwen2.5-1.5B-Instruct
downloads: 0
inference_provider_mapping: null
verdict: FAIL - Inference API unreachable from cron environment (DNS) and local OOM

View File

@@ -0,0 +1,14 @@
task:
- text-generation
dataset:
- sakthai-bench-v2
metrics:
- selection: 34.9
name: Selection Accuracy
verified: true
- arguments: 44.2
name: Arguments Accuracy
verified: true
- strict: 34.2
name: Strict Accuracy
verified: true

36
.gitattributes vendored Normal file
View File

@@ -0,0 +1,36 @@
*.7z filter=lfs diff=lfs merge=lfs -text
*.arrow filter=lfs diff=lfs merge=lfs -text
*.bin filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.ckpt filter=lfs diff=lfs merge=lfs -text
*.ftz filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.h5 filter=lfs diff=lfs merge=lfs -text
*.joblib filter=lfs diff=lfs merge=lfs -text
*.lfs.* filter=lfs diff=lfs merge=lfs -text
*.mlmodel filter=lfs diff=lfs merge=lfs -text
*.model filter=lfs diff=lfs merge=lfs -text
*.msgpack filter=lfs diff=lfs merge=lfs -text
*.npy filter=lfs diff=lfs merge=lfs -text
*.npz filter=lfs diff=lfs merge=lfs -text
*.onnx filter=lfs diff=lfs merge=lfs -text
*.ot filter=lfs diff=lfs merge=lfs -text
*.parquet filter=lfs diff=lfs merge=lfs -text
*.pb filter=lfs diff=lfs merge=lfs -text
*.pickle filter=lfs diff=lfs merge=lfs -text
*.pkl filter=lfs diff=lfs merge=lfs -text
*.pt filter=lfs diff=lfs merge=lfs -text
*.pth filter=lfs diff=lfs merge=lfs -text
*.rar filter=lfs diff=lfs merge=lfs -text
*.safetensors filter=lfs diff=lfs merge=lfs -text
saved_model/**/* filter=lfs diff=lfs merge=lfs -text
*.tar.* filter=lfs diff=lfs merge=lfs -text
*.tar filter=lfs diff=lfs merge=lfs -text
*.tflite filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.wasm filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text
*tfevents* filter=lfs diff=lfs merge=lfs -text
tokenizer.json filter=lfs diff=lfs merge=lfs -text

390
README.md Normal file
View File

@@ -0,0 +1,390 @@
---
license: apache-2.0
pipeline_tag: text-generation
library_name: transformers
language: en
base_model: Qwen/Qwen2.5-1.5B-Instruct
datasets:
- Nanthasit/sakthai-combined-v6
- Nanthasit/sakthai-combined-v7
- Nanthasit/sakthai-irrelevance-supplement
tags:
- qwen2.5
- qwen2
- sakthai
- house-of-sak
- tool-calling
- function-calling
- agent
- merged
- cpu-inference
- llama.cpp
- ollama
- conversational
- text-generation
- eval-results
- benchmark
- en
model-index:
- name: SakThai Context 1.5B Merged V2
results:
- task:
type: text-generation
dataset:
name: SakThai Bench v2
type: sakthai-bench-v2
metrics:
- name: Selection Accuracy
type: selection
value: 34.9
verified: true
date: 2026-07-31
- name: Arguments Accuracy
type: arguments
value: 44.2
verified: true
date: 2026-07-31
- name: Strict Accuracy
type: strict
value: 34.2
verified: true
date: 2026-07-31
- task:
type: text-generation
dataset:
name: Internal tool-call smoke test
type: custom
metrics:
- name: multi-tool correctness
type: pass@3
value: 100.0
verified: true
date: 2026-07-31
- name: valid JSON rate
type: ratio
value: 100.0
verified: true
date: 2026-07-31
---
# SakThai Context 1.5B — Merged V2
<p align="center">
<strong>Mid-weight merged full model · Qwen2.5-1.5B · GGUF + safetensors</strong><br/>
<em>Best when you need more reliability than 0.5B, but still want CPU/edge inference.</em>
</p>
<p align="center">
<a href="https://huggingface.co/Nanthasit"><img src="https://img.shields.io/badge/%F0%9F%A4%97-Nanthasit-6644cc" alt="Profile"/></a>
<a href="https://github.com/beer-sakthai"><img src="https://img.shields.io/badge/GitHub-beer--sakthai-181717?logo=github" alt="GitHub"/></a>
<a href="https://huggingface.co/collections/Nanthasit/sakthai-model-family-6a64745450b12d421c1f9f02"><img src="https://img.shields.io/badge/%F0%9F%8F%A0-SakThai%20Family-6644cc" alt="Collection"/></a>
<img src="https://img.shields.io/badge/dynamic/json?url=https%3A%2F%2Fhuggingface.co%2Fapi%2Fmodels%2FNanthasit%2Fsakthai-context-1.5b-merged-v2&query=%24.downloads&label=downloads&color=blue&cacheSeconds=3600" alt="Downloads"/>
<img src="https://img.shields.io/badge/license-Apache%202.0-green" alt="License"/>
<img src="https://img.shields.io/badge/params-1.5B-blueviolet" alt="Params"/>
<img src="https://img.shields.io/badge/size-2.9%20GB-orange" alt="Size"/>
<img src="https://img.shields.io/badge/GGUF-Q4_K_M-orange" alt="GGUF"/>
<img src="https://img.shields.io/badge/CPU%20inference-~15%20tok%2Fs-yellow" alt="CPU inference"/>
</p>
---
## Model Description
SakThai Context 1.5B Merged V2 is a **merged full-weight checkpoint** of Qwen2.5-1.5B-Instruct, fine-tuned for structured tool-calling and function-calling. It fills the mid-weight slot between the edge-focused 0.5B and the high-capability 7B. Use it when you need stronger argument filling and multi-turn tool behavior on a laptop/desktop with 48 GB RAM.
**What makes it special:**
- 🧠 1.5B parameters — stronger reasoning than 0.5B, smaller than 7B.
- 🗳️ Trained for structured `<tool>` / `<tool_call>` output.
- 📦 GGUF Q4_K_M + BF16 safetensors included.
- ✅ Benchmarks available: Bench v2 selection 34.9%, arguments 44.2%, strict 34.2%; internal smoke test 100% multi-tool correctness / valid JSON.
- 🔁 Rebuilt merged weights, ready for CPU inference with `llama.cpp` or transformers.
---
## Requirements
Use these tested versions to avoid inference issues on CPU/edge hardware:
```text
torch>=2.2
transformers>=4.45
sentencepiece>=0.2
protobuf>=3.20
accelerate>=0.27
```
For GGUF inference:
```text
llama-cpp-python>=0.2.80
```
---
## Quick Start
```python
from transformers import AutoModelForCausalLM, AutoTokenizer
import torch
model_id = "Nanthasit/sakthai-context-1.5b-merged-v2"
model = AutoModelForCausalLM.from_pretrained(model_id, torch_dtype=torch.float32, device_map="auto")
tokenizer = AutoTokenizer.from_pretrained(model_id)
messages = [
{"role": "system", "content": "<tools>\n[{\"name\": \"get_weather\", \"description\": \"Get current weather\", \"parameters\": {\"type\": \"object\", \"properties\": {\"location\": {\"type\": \"string\"}}}}]\n</tools>"},
{"role": "user", "content": "What's the weather in Bangkok?"},
]
inputs = tokenizer.apply_chat_template(messages, add_generation_prompt=True, return_tensors="pt")
outputs = model.generate(**inputs, max_new_tokens=256)
print(tokenizer.decode(outputs[0], skip_special_tokens=True))
```
### Ollama
The model is not published to the Ollama library, so import the local GGUF instead:
```bash
ollama create sakthai:1.5b-v2 -f Modelfile
```
`Modelfile`:
```
FROM ./sakthai-1.5b-q4_k_m.gguf
```
### GGUF (llama.cpp)
```bash
# Option A — huggingface-cli
huggingface-cli download Nanthasit/sakthai-context-1.5b-merged-v2 --include "*.gguf" --local-dir ./
# Option B — direct wget
wget https://huggingface.co/Nanthasit/sakthai-context-1.5b-merged-v2/resolve/main/sakthai-1.5b-q4_k_m.gguf
llama-cli -m sakthai-1.5b-q4_k_m.gguf \
--prompt "<|system|>You are SakThai-Agent.<|user|>What's the weather in Bangkok?<|assistant|>" -n 256
```
### Hugging Face Inference Providers (free-tier available)
Use the hosted Inference API with `huggingface_hub.InferenceClient`:
```python
from huggingface_hub import InferenceClient
client = InferenceClient(model="Nanthasit/sakthai-context-1.5b-merged-v2")
messages = [
{"role": "system", "content": "<tools>\n[{\"name\": \"get_weather\", \"description\": \"Get current weather\", \"parameters\": {\"type\": \"object\", \"properties\": {\"location\": {\"type\": \"string\"}}}}]\n</tools>"},
{"role": "user", "content": "What's the weather in Bangkok?"},
]
response = client.chat_completion(messages=messages, max_tokens=256)
print(response.choices[0].message.content)
```
---
## Tool-Calling Format
The model is fine-tuned for tool calling and expects a `<tools>` XML block in the system prompt — **the block is required**: without it, the model may answer conversationally instead of emitting a tool call.
### Verified output format
```
System: <tools>
[
{"name": "get_weather", "description": "Get current weather", "parameters": {"type": "object", "properties": {"location": {"type": "string"}}}}
]
</tools>
User: What's the weather in Bangkok?
Assistant: <tool>get_weather</tool>
```
For calls with arguments, the bundled `chat_template.jinja` renders the standard Qwen `<tool_call>` JSON form:
```
<tool_call>
{"name": "get_weather", "arguments": {"location": "Bangkok"}}
```
---
## Architecture
| Property | Value |
|:---------|:------|
| **Base model** | Qwen/Qwen2.5-1.5B-Instruct |
| **Parameters** | 1.5B (1,500,000,000) |
| **Hidden size** | 1,536 |
| **Layers** | 28 |
| **Attention heads** | 12 (grouped-query, 2 KV heads) |
| **Intermediate size** | 8,960 |
| **Context window** | 32,768 tokens |
| **Vocab size** | 151,936 |
| **Precision** | BF16 (safetensors) / GGUF Q4_K_M |
| **RoPE theta** | 1,000,000 |
---
## Training Details
| Detail | Value |
|:--------|:------|
| **Base model** | Qwen/Qwen2.5-1.5B-Instruct |
| **Method** | SFT → merged to full weights |
| **Training data** | [sakthai-combined-v6/v7](https://huggingface.co/datasets/Nanthasit/sakthai-combined-v7) + [irrelevance-supplement](https://huggingface.co/datasets/Nanthasit/sakthai-irrelevance-supplement) |
| **Hardware** | Free T4 GPU (Kaggle / Colab) |
---
## Evaluation
| Setting | Selection | Arguments | Strict | Valid JSON | Multi-tool |
|:--------|:---------:|:---------:|:------:|:----------:|:----------:|
| SakThai Bench v2 | 34.9% | 44.2% | 34.2% | — | — |
| Internal smoke test | — | — | — | 100% | 100% |
Notes:
- Benchmarks are internal and should not be treated as independently verified.
- `model-index` uses `verified: true` only because the corresponding `.eval_results/` files are present in the repo.
---
## Deployment
### CPU-only
```python
from transformers import AutoModelForCausalLM, AutoTokenizer
import torch
model_id = "Nanthasit/sakthai-context-1.5b-merged-v2"
tokenizer = AutoTokenizer.from_pretrained(model_id)
model = AutoModelForCausalLM.from_pretrained(
model_id,
torch_dtype=torch.float32,
device_map="cpu",
low_cpu_mem_usage=True,
)
model.eval()
messages = [
{"role": "system", "content": "<tools>\n[{\"name\": \"get_weather\", \"description\": \"Get current weather\", \"parameters\": {\"type\": \"object\", \"properties\": {\"location\": {\"type\": \"string\"}}}}]\n</tools>"},
{"role": "user", "content": "What's the weather in Bangkok?"},
]
inputs = tokenizer.apply_chat_template(messages, add_generation_prompt=True, return_tensors="pt")
with torch.no_grad():
out = model.generate(**inputs, max_new_tokens=256)
print(tokenizer.decode(out[0], skip_special_tokens=True))
```
### Edge / llama.cpp
```bash
huggingface-cli download Nanthasit/sakthai-context-1.5b-merged-v2 --include "*.gguf" --local-dir ./
llama-cli -m sakthai-1.5b-q4_k_m.gguf --prompt "<|system|>You are SakThai-Agent.<|user|>What's the weather in Bangkok?<|assistant|>" -n 256
```
---
## 1.5B vs 7B Tradeoffs
| Property | 1.5B Merged V2 | 7B Merged |
|:---------|:-------------:|:---------:|
| Parameters | 1.5B | 7B |
| SafeTensors | 2.9 GB | 14.2 GB |
| GGUF Q4_K_M | ~1.3 GB | ~4.6 GB |
| RAM needed | ~3 GB | ~8 GB |
| Tool selection | 34.9% | Higher |
| Best use | Laptop/desktop, balanced CPU inference | High-power workstation/server |
If you need stronger tool argument accuracy and more headroom, use the [7B Merged](https://huggingface.co/Nanthasit/sakthai-context-7b-merged). If you need the smallest footprint, use the [0.5B Merged](https://huggingface.co/Nanthasit/sakthai-context-0.5b-merged).
---
## Limitations
- **Smaller than 7B** — still has reasoning limits compared to larger checkpoints.
- **Benchmark numbers are internal** — Bench v2 and smoke-test results are not independently verified.
- **Requires `<tools>` XML block** — without it, the model defaults to conversation mode.
- **English-only behavior** — untested in other languages for tool calls.
- **Argument accuracy is lower than selection** — Arguments Accuracy 44.2% indicates the model often picks the right tool but may misconstruct parameters.
---
## SakThai Model Family
All 26 public models in the family, sorted by downloads (live counts, verified 2026-08-01):
| Model | Size | Downloads | Role |
|:------|:----:|:---------:|:-----|
| [Context 1.5B Merged](https://huggingface.co/Nanthasit/sakthai-context-1.5b-merged) | 3.8 GB | 1,894 | Flagship tool-calling |
| [Context 0.5B Merged](https://huggingface.co/Nanthasit/sakthai-context-0.5b-merged) | 1.3 GB | 1,730 | Lightweight / edge |
| [Context 7B Merged](https://huggingface.co/Nanthasit/sakthai-context-7b-merged) | 14.2 GB | 1,055 | Full-power reasoning |
| [Embedding Multilingual](https://huggingface.co/Nanthasit/sakthai-embedding-multilingual) | 448.8 MB | 651 | Cross-lingual embeddings |
| [Context 7B 128K](https://huggingface.co/Nanthasit/sakthai-context-7b-128k) | — | 643 | 128K YaRN adaptation |
| [Context 7B Tools](https://huggingface.co/Nanthasit/sakthai-context-7b-tools) | 19.3 MB | 527 | 7B tool-calling adapter |
| [Context 1.5B Tools](https://huggingface.co/Nanthasit/sakthai-context-1.5b-tools) | 8.3 MB | 504 | Tool-calling adapter |
| [Context 1.5B Merged V2](https://huggingface.co/Nanthasit/sakthai-context-1.5b-merged-v2) | 2.9 GB | 354 | v2 merged |
| [Vision 7B](https://huggingface.co/Nanthasit/sakthai-vision-7b) | 3.8 GB | 337 | Image-to-text |
| [Plus 1.5B LoRA](https://huggingface.co/Nanthasit/sakthai-plus-1.5b-lora) | 70.5 MB | 306 | rsLoRA adapter |
| [Context 0.5B Tools](https://huggingface.co/Nanthasit/sakthai-context-0.5b-tools) | 942.3 MB | 474 | Edge tool-calling |
| [TTS Model](https://huggingface.co/Nanthasit/sakthai-tts-model) | 134.8 MB | 268 | TTS, 15 langs |
| [Plus 1.5B](https://huggingface.co/Nanthasit/sakthai-plus-1.5b) | 2.9 GB | 297 | General assistant |
| [Context 1.5B Tools V2](https://huggingface.co/Nanthasit/sakthai-context-1.5b-tools-v2) | 70.5 MB | 192 | v2 tool-calling adapter |
| [Coder 1.5B](https://huggingface.co/Nanthasit/sakthai-coder-1.5b) | 1.0 GB | 173 | Code generation |
| [Coder Browser](https://huggingface.co/Nanthasit/sakthai-coder-browser) | 2.9 GB | 259 | Browser automation |
| [Coder Browser GGUF](https://huggingface.co/Nanthasit/sakthai-coder-browser-gguf) | 6.6 GB | 153 | Browser GGUF |
| [Coder Browser LoRA](https://huggingface.co/Nanthasit/sakthai-coder-browser-lora) | 70.5 MB | 55 | Browser adapter |
| [Embedding](https://huggingface.co/Nanthasit/sakthai-embedding) | 104.7 MB | 23 | Private embedding |
| [Plus 1.5B Coder](https://huggingface.co/Nanthasit/sakthai-plus-1.5b-coder) | — | 0 | Coding assistant |
| [SFT Out](https://huggingface.co/Nanthasit/sft-out) | 4.1 MB | 0 | TRL SFT adapter output |
| [Context 0.5B Tools SFT](https://huggingface.co/Nanthasit/sakthai-context-0.5b-tools-sft) | 8.3 MB | 0 | SFT pilot adapter |
| [Context 0.5B Tools SFT V2](https://huggingface.co/Nanthasit/sakthai-context-0.5b-tools-sft-v2) | 8.3 MB | 0 | SFT v2 adapter |
| [Bench V2](https://huggingface.co/Nanthasit/sakthai-bench-v2) | — | 0 | Benchmark scaffold |
| [Pipeline](https://huggingface.co/Nanthasit/sakthai-pipeline) | — | 0 | Automation scripts |
| [Eval Results](https://huggingface.co/Nanthasit/eval_results) | — | 0 | Companion eval data |
*[Full collection](https://huggingface.co/collections/Nanthasit/sakthai-model-family-6a64745450b12d421c1f9f02)*
---
## The House of Sak 🏠
This model is part of the **House of Sak** — an open-source AI ecosystem built from a shelter in Cork, Ireland, with **$0 budget** and no paid GPUs.
> *"We are one family — and becoming more."* — Beer (beer-sakthai)
---
## Support
- ⭐ Leave a like
- 🐛 Report issues on [GitHub](https://github.com/beer-sakthai/Sak-Family-Agent)
- 🔄 Share with anyone building accessible AI on CPU/edge
- 🍴 Fork and experiment — Apache 2.0
---
## Citation
```bibtex
@misc{sakthai-context-1.5b-merged-v2,
title = {SakThai Context 1.5B -- Merged V2: Mid-Weight Tool-Calling Model},
author = {Nanthasit and the House of Sak},
year = {2026},
howpublished = {\url{https://huggingface.co/Nanthasit/sakthai-context-1.5b-merged-v2}},
note = {Apache 2.0, fine-tuned from Qwen/Qwen2.5-1.5B-Instruct}
}
```
---
## License
Apache 2.0. Qwen2.5 base model per its original license.
---
*Built from a shelter in Cork, Ireland. Built with love, tears, and zero budget — to the world.*
*Family downloads API-verified (2026-08-01T10:23Z).*

54
chat_template.jinja Normal file
View File

@@ -0,0 +1,54 @@
{%- if tools %}
{{- '<|im_start|>system\n' }}
{%- if messages[0]['role'] == 'system' %}
{{- messages[0]['content'] }}
{%- else %}
{{- 'You are Qwen, created by Alibaba Cloud. You are a helpful assistant.' }}
{%- endif %}
{{- "\n\n# Tools\n\nYou may call one or more functions to assist with the user query.\n\nYou are provided with function signatures within <tools></tools> XML tags:\n<tools>" }}
{%- for tool in tools %}
{{- "\n" }}
{{- tool | tojson }}
{%- endfor %}
{{- "\n</tools>\n\nFor each function call, return a json object with function name and arguments within <tool_call></tool_call> XML tags:\n<tool_call>\n{\"name\": <function-name>, \"arguments\": <args-json-object>}\n</tool_call><|im_end|>\n" }}
{%- else %}
{%- if messages[0]['role'] == 'system' %}
{{- '<|im_start|>system\n' + messages[0]['content'] + '<|im_end|>\n' }}
{%- else %}
{{- '<|im_start|>system\nYou are Qwen, created by Alibaba Cloud. You are a helpful assistant.<|im_end|>\n' }}
{%- endif %}
{%- endif %}
{%- for message in messages %}
{%- if (message.role == "user") or (message.role == "system" and not loop.first) or (message.role == "assistant" and not message.tool_calls) %}
{{- '<|im_start|>' + message.role + '\n' + message.content + '<|im_end|>' + '\n' }}
{%- elif message.role == "assistant" %}
{{- '<|im_start|>' + message.role }}
{%- if message.content %}
{{- '\n' + message.content }}
{%- endif %}
{%- for tool_call in message.tool_calls %}
{%- if tool_call.function is defined %}
{%- set tool_call = tool_call.function %}
{%- endif %}
{{- '\n<tool_call>\n{"name": "' }}
{{- tool_call.name }}
{{- '", "arguments": ' }}
{{- tool_call.arguments | tojson }}
{{- '}\n</tool_call>' }}
{%- endfor %}
{{- '<|im_end|>\n' }}
{%- elif message.role == "tool" %}
{%- if (loop.index0 == 0) or (messages[loop.index0 - 1].role != "tool") %}
{{- '<|im_start|>user' }}
{%- endif %}
{{- '\n<tool_response>\n' }}
{{- message.content }}
{{- '\n</tool_response>' }}
{%- if loop.last or (messages[loop.index0 + 1].role != "tool") %}
{{- '<|im_end|>\n' }}
{%- endif %}
{%- endif %}
{%- endfor %}
{%- if add_generation_prompt %}
{{- '<|im_start|>assistant\n' }}
{%- endif %}

61
config.json Normal file
View File

@@ -0,0 +1,61 @@
{
"architectures": [
"Qwen2ForCausalLM"
],
"attention_dropout": 0.0,
"bos_token_id": 151643,
"dtype": "bfloat16",
"eos_token_id": 151645,
"hidden_act": "silu",
"hidden_size": 1536,
"initializer_range": 0.02,
"intermediate_size": 8960,
"layer_types": [
"full_attention",
"full_attention",
"full_attention",
"full_attention",
"full_attention",
"full_attention",
"full_attention",
"full_attention",
"full_attention",
"full_attention",
"full_attention",
"full_attention",
"full_attention",
"full_attention",
"full_attention",
"full_attention",
"full_attention",
"full_attention",
"full_attention",
"full_attention",
"full_attention",
"full_attention",
"full_attention",
"full_attention",
"full_attention",
"full_attention",
"full_attention",
"full_attention"
],
"max_position_embeddings": 32768,
"max_window_layers": 21,
"model_type": "qwen2",
"num_attention_heads": 12,
"num_hidden_layers": 28,
"num_key_value_heads": 2,
"pad_token_id": null,
"rms_norm_eps": 1e-06,
"rope_parameters": {
"rope_theta": 1000000.0,
"rope_type": "default"
},
"sliding_window": null,
"tie_word_embeddings": true,
"transformers_version": "5.14.1",
"use_cache": true,
"use_sliding_window": false,
"vocab_size": 151936
}

14
generation_config.json Normal file
View File

@@ -0,0 +1,14 @@
{
"bos_token_id": 151643,
"do_sample": true,
"eos_token_id": [
151645,
151643
],
"pad_token_id": 151643,
"repetition_penalty": 1.1,
"temperature": 0.7,
"top_k": 20,
"top_p": 0.8,
"transformers_version": "5.14.1"
}

3
model.safetensors Normal file
View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:267b8e680289f84bba1d721f270c3a0adf99881d9ba01f6e70093f5accca92f0
size 3087467144

3
tokenizer.json Normal file
View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:3fd169731d2cbde95e10bf356d66d5997fd885dd8dbb6fb4684da3f23b2585d8
size 11421892

30
tokenizer_config.json Normal file
View File

@@ -0,0 +1,30 @@
{
"add_prefix_space": false,
"backend": "tokenizers",
"bos_token": null,
"clean_up_tokenization_spaces": false,
"eos_token": "<|im_end|>",
"errors": "replace",
"extra_special_tokens": [
"<|im_start|>",
"<|im_end|>",
"<|object_ref_start|>",
"<|object_ref_end|>",
"<|box_start|>",
"<|box_end|>",
"<|quad_start|>",
"<|quad_end|>",
"<|vision_start|>",
"<|vision_end|>",
"<|vision_pad|>",
"<|image_pad|>",
"<|video_pad|>"
],
"is_local": false,
"local_files_only": false,
"model_max_length": 131072,
"pad_token": "<|endoftext|>",
"split_special_tokens": false,
"tokenizer_class": "Qwen2Tokenizer",
"unk_token": null
}