初始化项目,由ModelHub XC社区提供模型
Model: Smith-3/simon-fcyt-umss Source: Original Platform
This commit is contained in:
43
.gitattributes
vendored
Normal file
43
.gitattributes
vendored
Normal file
@@ -0,0 +1,43 @@
|
|||||||
|
*.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
|
||||||
|
LFM2-350M.Q4_K_M.gguf filter=lfs diff=lfs merge=lfs -text
|
||||||
|
LFM2-350M.Q5_K_M.gguf filter=lfs diff=lfs merge=lfs -text
|
||||||
|
LFM2-350M.Q8_0.gguf filter=lfs diff=lfs merge=lfs -text
|
||||||
|
LFM2-350M-chatml.q8_0.gguf filter=lfs diff=lfs merge=lfs -text
|
||||||
|
gguf/model-f16.gguf filter=lfs diff=lfs merge=lfs -text
|
||||||
|
gguf/model-q4_k_m.gguf filter=lfs diff=lfs merge=lfs -text
|
||||||
|
gguf/model-q5_k_m.gguf filter=lfs diff=lfs merge=lfs -text
|
||||||
|
gguf/model-q8_0.gguf filter=lfs diff=lfs merge=lfs -text
|
||||||
3
LFM2-350M-chatml.q8_0.gguf
Normal file
3
LFM2-350M-chatml.q8_0.gguf
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:54a2a4849419b4bf7e032d8b54a555e3d3fad283266b695cc574c3e21599a58d
|
||||||
|
size 2374528
|
||||||
3
LFM2-350M.Q4_K_M.gguf
Normal file
3
LFM2-350M.Q4_K_M.gguf
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:8dbb5c8068738a022ecdff76ac122a0a2bffd9e0d8fa80f9cc8913bc52c6600e
|
||||||
|
size 229309152
|
||||||
3
LFM2-350M.Q5_K_M.gguf
Normal file
3
LFM2-350M.Q5_K_M.gguf
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:1c14b0e04f39efc4519e2bd646d0d3856bc4d1055f49ec89472a11f2c268999c
|
||||||
|
size 260373216
|
||||||
3
LFM2-350M.Q8_0.gguf
Normal file
3
LFM2-350M.Q8_0.gguf
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:83e6660983881d16d018db131c7fe035923114681f77395f47250a2d2aba56c0
|
||||||
|
size 379214560
|
||||||
138
README.md
Normal file
138
README.md
Normal file
@@ -0,0 +1,138 @@
|
|||||||
|
---
|
||||||
|
license: other
|
||||||
|
tags:
|
||||||
|
- gguf
|
||||||
|
- llama.cpp
|
||||||
|
- unsloth
|
||||||
|
- lfm2
|
||||||
|
- structured-output
|
||||||
|
- notification-ai
|
||||||
|
- spanish
|
||||||
|
- education
|
||||||
|
datasets:
|
||||||
|
- Smith-3/simon-fcyt-umss
|
||||||
|
language:
|
||||||
|
- es
|
||||||
|
- en
|
||||||
|
base_model: LiquidAI/LFM2-350M
|
||||||
|
pipeline_tag: text-generation
|
||||||
|
---
|
||||||
|
|
||||||
|
# simon-fcyt-umss (GGUF) 🎓✨
|
||||||
|
Modelo de IA ajustado para la **Facultad de Ciencias y Tecnología – Universidad Mayor de San Simón (UMSS)**,
|
||||||
|
diseñado para la aplicación **TecnoTime**, la cual ayuda a estudiantes a mantenerse organizados, motivados y conectados con sus actividades académicas.
|
||||||
|
|
||||||
|
Este modelo es un **fine-tuning** de `LiquidAI/LFM2-350M` orientado a producir respuestas **consistentes, validadas y parseables**, siguiendo la clase `SimonResponse` del sistema Android.
|
||||||
|
|
||||||
|
La conversión a **GGUF** se realizó usando **Unsloth**, optimizando su uso en:
|
||||||
|
- `llama.cpp`
|
||||||
|
- `text-generation-webui`
|
||||||
|
- dispositivos con recursos limitados (laptops modestos, labs universitarios, teléfonos con inferencia local)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🎯 Propósito Académico
|
||||||
|
Este modelo está orientado a:
|
||||||
|
- Recordatorios de clases y horarios
|
||||||
|
- Mensajes motivacionales para mejorar continuidad académica
|
||||||
|
- Check-ins cortos para acompañamiento del progreso diario
|
||||||
|
- Estímulo positivo en momentos clave del semestre
|
||||||
|
|
||||||
|
Está pensado para reforzar:
|
||||||
|
> Hábitos, constancia, asistencia, estado de ánimo y autocuidado académico.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🧱 Formato Estructurado de Respuesta (JSON Obligatorio)
|
||||||
|
|
||||||
|
La salida del modelo **no es texto libre**.
|
||||||
|
Siempre debe generar **un único objeto JSON** con los campos requeridos:
|
||||||
|
|
||||||
|
{
|
||||||
|
"why": "...",
|
||||||
|
"opening_tag": "...",
|
||||||
|
"icon_tag": "...",
|
||||||
|
// Campos adicionales según tipo de notificación
|
||||||
|
}
|
||||||
|
|
||||||
|
### Campos según tipo de template:
|
||||||
|
|
||||||
|
Tipo de Notificación | Requiere | Opcional | Sin
|
||||||
|
---------------------|----------|----------|-----
|
||||||
|
MOTIVATIONAL_CHECK_IN | question, choices (2) | — | —
|
||||||
|
CLASS_REMINDER | question, choices (2) | — | —
|
||||||
|
CHECK_IN_CLOSURE | message o reminder_copy | — | choices
|
||||||
|
REMINDER_CLOSURE | reminder_copy | — | choices
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## ✅ Ejemplos Reales Usados en TecnoTime
|
||||||
|
|
||||||
|
### Recordatorio de Clase
|
||||||
|
{
|
||||||
|
"why": "Para que no pierdas tu ritmo académico",
|
||||||
|
"opening_tag": "¡Atención, estudiante FCyT!",
|
||||||
|
"question": "¿Listo para tu clase de hoy?",
|
||||||
|
"icon_tag": "info",
|
||||||
|
"choices": [
|
||||||
|
{"id": "yes", "label": "Llego en un momento"},
|
||||||
|
{"id": "no", "label": "Estoy terminando algo"}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
||||||
|
### Check-in Motivacional
|
||||||
|
{
|
||||||
|
"why": "Para reforzar tu constancia",
|
||||||
|
"opening_tag": "¡Vamos con toda, ingeniería!",
|
||||||
|
"question": "¿Cómo te sientes con lo que has avanzado hoy?",
|
||||||
|
"icon_tag": "focus",
|
||||||
|
"choices": [
|
||||||
|
{"id": "yes", "label": "Bien, sigo avanzando"},
|
||||||
|
{"id": "no", "label": "Hoy fue complicado"}
|
||||||
|
]
|
||||||
|
}
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 📦 Archivos GGUF Disponibles
|
||||||
|
|
||||||
|
Archivo | Uso recomendado
|
||||||
|
--------|----------------
|
||||||
|
LFM2-350M.Q5_K_M.gguf | Mejor equilibrio calidad / rendimiento
|
||||||
|
LFM2-350M.Q8_0.gguf | Máxima calidad (requiere más RAM)
|
||||||
|
LFM2-350M.Q4_K_M.gguf | Equipos de bajos recursos / labs
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🚀 Uso con `llama.cpp`
|
||||||
|
|
||||||
|
llama-cli -m LFM2-350M.Q5_K_M.gguf -p "GENERAR: CLASS_REMINDER para clase de Física"
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 🐍 Uso con `transformers`
|
||||||
|
|
||||||
|
from transformers import AutoTokenizer, AutoModelForCausalLM
|
||||||
|
|
||||||
|
tokenizer = AutoTokenizer.from_pretrained("tuUsuario/simon-fcyt-umss")
|
||||||
|
model = AutoModelForCausalLM.from_pretrained("tuUsuario/simon-fcyt-umss")
|
||||||
|
|
||||||
|
prompt = "GENERAR: MOTIVATIONAL_CHECK_IN"
|
||||||
|
inp = tokenizer(prompt, return_tensors="pt")
|
||||||
|
out = model.generate(**inp, max_new_tokens=160)
|
||||||
|
print(tokenizer.decode(out[0], skip_special_tokens=True))
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## ⚖️ Licencia
|
||||||
|
Este modelo deriva de `LiquidAI/LFM2-350M`, bajo:
|
||||||
|
|
||||||
|
LFM Open License v1.0
|
||||||
|
https://huggingface.co/LiquidAI/LFM2-350M/blob/main/LICENSE
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 📌 Estado
|
||||||
|
✅ Listo para uso en TecnoTime
|
||||||
|
⏳ Próxima etapa: Publicación en Play Store
|
||||||
|
🔗 Enlace será añadido próximamente.
|
||||||
37
chat_template.jinja
Normal file
37
chat_template.jinja
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
{{- bos_token -}}
|
||||||
|
{%- set system_prompt = "" -%}
|
||||||
|
{%- set ns = namespace(system_prompt="") -%}
|
||||||
|
{%- if messages[0]["role"] == "system" -%}
|
||||||
|
{%- set ns.system_prompt = messages[0]["content"] -%}
|
||||||
|
{%- set messages = messages[1:] -%}
|
||||||
|
{%- endif -%}
|
||||||
|
{%- if tools -%}
|
||||||
|
{%- set ns.system_prompt = ns.system_prompt + ("\n" if ns.system_prompt else "") + "List of tools: <|tool_list_start|>[" -%}
|
||||||
|
{%- for tool in tools -%}
|
||||||
|
{%- if tool is not string -%}
|
||||||
|
{%- set tool = tool | tojson -%}
|
||||||
|
{%- endif -%}
|
||||||
|
{%- set ns.system_prompt = ns.system_prompt + tool -%}
|
||||||
|
{%- if not loop.last -%}
|
||||||
|
{%- set ns.system_prompt = ns.system_prompt + ", " -%}
|
||||||
|
{%- endif -%}
|
||||||
|
{%- endfor -%}
|
||||||
|
{%- set ns.system_prompt = ns.system_prompt + "]<|tool_list_end|>" -%}
|
||||||
|
{%- endif -%}
|
||||||
|
{%- if ns.system_prompt -%}
|
||||||
|
{{- "<|im_start|>system\n" + ns.system_prompt + "<|im_end|>\n" -}}
|
||||||
|
{%- endif -%}
|
||||||
|
{%- for message in messages -%}
|
||||||
|
{{- "<|im_start|>" + message["role"] + "\n" -}}
|
||||||
|
{%- set content = message["content"] -%}
|
||||||
|
{%- if content is not string -%}
|
||||||
|
{%- set content = content | tojson -%}
|
||||||
|
{%- endif -%}
|
||||||
|
{%- if message["role"] == "tool" -%}
|
||||||
|
{%- set content = "<|tool_response_start|>" + content + "<|tool_response_end|>" -%}
|
||||||
|
{%- endif -%}
|
||||||
|
{{- content + "<|im_end|>\n" -}}
|
||||||
|
{%- endfor -%}
|
||||||
|
{%- if add_generation_prompt -%}
|
||||||
|
{{- "<|im_start|>assistant\n" -}}
|
||||||
|
{%- endif -%}
|
||||||
57
config.json
Normal file
57
config.json
Normal file
@@ -0,0 +1,57 @@
|
|||||||
|
{
|
||||||
|
"architectures": [
|
||||||
|
"Lfm2ForCausalLM"
|
||||||
|
],
|
||||||
|
"block_auto_adjust_ff_dim": true,
|
||||||
|
"block_dim": 1024,
|
||||||
|
"block_ff_dim": 6656,
|
||||||
|
"block_ffn_dim_multiplier": 1.0,
|
||||||
|
"block_mlp_init_scale": 1.0,
|
||||||
|
"block_multiple_of": 256,
|
||||||
|
"block_norm_eps": 1e-05,
|
||||||
|
"block_out_init_scale": 1.0,
|
||||||
|
"block_use_swiglu": true,
|
||||||
|
"block_use_xavier_init": true,
|
||||||
|
"bos_token_id": 1,
|
||||||
|
"conv_L_cache": 3,
|
||||||
|
"conv_bias": false,
|
||||||
|
"conv_dim": 1024,
|
||||||
|
"conv_dim_out": 1024,
|
||||||
|
"conv_use_xavier_init": true,
|
||||||
|
"eos_token_id": 7,
|
||||||
|
"hidden_size": 1024,
|
||||||
|
"initializer_range": 0.02,
|
||||||
|
"intermediate_size": 6656,
|
||||||
|
"layer_types": [
|
||||||
|
"conv",
|
||||||
|
"conv",
|
||||||
|
"full_attention",
|
||||||
|
"conv",
|
||||||
|
"conv",
|
||||||
|
"full_attention",
|
||||||
|
"conv",
|
||||||
|
"conv",
|
||||||
|
"full_attention",
|
||||||
|
"conv",
|
||||||
|
"full_attention",
|
||||||
|
"conv",
|
||||||
|
"full_attention",
|
||||||
|
"conv",
|
||||||
|
"full_attention",
|
||||||
|
"conv"
|
||||||
|
],
|
||||||
|
"max_position_embeddings": 128000,
|
||||||
|
"model_type": "lfm2",
|
||||||
|
"norm_eps": 1e-05,
|
||||||
|
"num_attention_heads": 16,
|
||||||
|
"num_heads": 16,
|
||||||
|
"num_hidden_layers": 16,
|
||||||
|
"num_key_value_heads": 8,
|
||||||
|
"pad_token_id": 0,
|
||||||
|
"rope_theta": 1000000.0,
|
||||||
|
"torch_dtype": "bfloat16",
|
||||||
|
"transformers_version": "4.54.0",
|
||||||
|
"use_cache": true,
|
||||||
|
"use_pos_enc": true,
|
||||||
|
"vocab_size": 65536
|
||||||
|
}
|
||||||
7
generation_config.json
Normal file
7
generation_config.json
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
{
|
||||||
|
"_from_model_config": true,
|
||||||
|
"bos_token_id": 1,
|
||||||
|
"eos_token_id": 7,
|
||||||
|
"pad_token_id": 0,
|
||||||
|
"transformers_version": "4.54.0"
|
||||||
|
}
|
||||||
3
gguf/model-f16.gguf
Normal file
3
gguf/model-f16.gguf
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:204830b956d35e8fbd21ecab9576ac0641a3248f845f1cdeb7c5d620bfbcb706
|
||||||
|
size 711483168
|
||||||
3
gguf/model-q4_k_m.gguf
Normal file
3
gguf/model-q4_k_m.gguf
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:239531ef4cfa20dcf8414b23a2dafb34ff295ec19c90f39745a84e2683385e1e
|
||||||
|
size 229310240
|
||||||
3
gguf/model-q5_k_m.gguf
Normal file
3
gguf/model-q5_k_m.gguf
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:0a8b341e467f82ad9a6d729f7f89faecddd1f29f2af7a78e67b302e48421843b
|
||||||
|
size 260374304
|
||||||
3
gguf/model-q8_0.gguf
Normal file
3
gguf/model-q8_0.gguf
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:9ed2f4b6da0d9227f1b62d9827ef0ec3673dda4a86d8584e59afafdfd6cf7250
|
||||||
|
size 379215648
|
||||||
3
model.safetensors
Normal file
3
model.safetensors
Normal file
@@ -0,0 +1,3 @@
|
|||||||
|
version https://git-lfs.github.com/spec/v1
|
||||||
|
oid sha256:1a5154a32a341b2c2c5b2e90b1e8f61349ea009c147f9fc992b62e6966cdad4a
|
||||||
|
size 708984464
|
||||||
23
special_tokens_map.json
Normal file
23
special_tokens_map.json
Normal file
@@ -0,0 +1,23 @@
|
|||||||
|
{
|
||||||
|
"bos_token": {
|
||||||
|
"content": "<|startoftext|>",
|
||||||
|
"lstrip": false,
|
||||||
|
"normalized": false,
|
||||||
|
"rstrip": false,
|
||||||
|
"single_word": false
|
||||||
|
},
|
||||||
|
"eos_token": {
|
||||||
|
"content": "<|im_end|>",
|
||||||
|
"lstrip": false,
|
||||||
|
"normalized": false,
|
||||||
|
"rstrip": false,
|
||||||
|
"single_word": false
|
||||||
|
},
|
||||||
|
"pad_token": {
|
||||||
|
"content": "<|pad|>",
|
||||||
|
"lstrip": false,
|
||||||
|
"normalized": false,
|
||||||
|
"rstrip": false,
|
||||||
|
"single_word": false
|
||||||
|
}
|
||||||
|
}
|
||||||
323812
tokenizer.json
Normal file
323812
tokenizer.json
Normal file
File diff suppressed because it is too large
Load Diff
4078
tokenizer_config.json
Normal file
4078
tokenizer_config.json
Normal file
File diff suppressed because it is too large
Load Diff
Reference in New Issue
Block a user