Spaces:
Sleeping
Sleeping
chore: switch default model to MiniCPM5-1B and update README for STEM user
Browse files
README.md
CHANGED
|
@@ -16,19 +16,19 @@ license: mit
|
|
| 16 |
|
| 17 |
**参赛赛道**:Backyard AI @ Build Small Hackathon
|
| 18 |
**提交三件套**:Space 链接 · Demo 视频 · 社交媒体 Post(见底部链接区)
|
| 19 |
-
**总参数规模**:≤ 32B(默认 `
|
| 20 |
|
| 21 |
---
|
| 22 |
|
| 23 |
## 🧑🎓 真实用户与真实痛点
|
| 24 |
|
| 25 |
-
**目标用户**:本科
|
| 26 |
|
| 27 |
**真实痛点一句话**:
|
| 28 |
-
> “我
|
| 29 |
|
| 30 |
-
**对方真的用过**(待补充):
|
| 31 |
-
- 使用者:___(
|
| 32 |
- 使用场景:把草稿里的公式描述复制进 TeXada,直接拿到可粘贴到 Overleaf / Markdown 的 LaTeX。
|
| 33 |
- 反馈:
|
| 34 |
1. “___”
|
|
@@ -44,10 +44,10 @@ LaTeX 生成是一个**结构化、语法严格**的任务,不需要大模型
|
|
| 44 |
|
| 45 |
| 约束优势 | 说明 |
|
| 46 |
|---|---|
|
| 47 |
-
| **速度** | 1.
|
| 48 |
| **隐私** | 作业/论文草稿不上传给闭源大模型,全部在 Space 容器内推理。 |
|
| 49 |
-
| **低成本** |
|
| 50 |
-
| **诚实匹配** | 任务边界清晰(NL → LaTeX + 校验 + 修复),
|
| 51 |
|
| 52 |
---
|
| 53 |
|
|
@@ -100,10 +100,10 @@ pip install -r requirements.txt
|
|
| 100 |
python app.py
|
| 101 |
```
|
| 102 |
|
| 103 |
-
默认模型可
|
| 104 |
|
| 105 |
```bash
|
| 106 |
-
MODEL_NAME="
|
| 107 |
```
|
| 108 |
|
| 109 |
---
|
|
@@ -112,7 +112,7 @@ MODEL_NAME="openbmb/MiniCPM5-1B" python app.py
|
|
| 112 |
|
| 113 |
- **UI**: Gradio 4.x
|
| 114 |
- **推理**: Hugging Face `transformers`
|
| 115 |
-
- **默认模型**: `
|
| 116 |
- **校验**: 括号/环境平衡、命令白名单
|
| 117 |
- **修复**: 自动补全缺失的 `}` 和 `\end{...}`
|
| 118 |
|
|
|
|
| 16 |
|
| 17 |
**参赛赛道**:Backyard AI @ Build Small Hackathon
|
| 18 |
**提交三件套**:Space 链接 · Demo 视频 · 社交媒体 Post(见底部链接区)
|
| 19 |
+
**总参数规模**:≤ 32B(默认 `openbmb/MiniCPM5-1B`,约 1.08B)
|
| 20 |
|
| 21 |
---
|
| 22 |
|
| 23 |
## 🧑🎓 真实用户与真实痛点
|
| 24 |
|
| 25 |
+
**目标用户**:本科 STEM 同学(物理 / 数学 / 工程 / 计算机专业),在写实验报告、作业、论文、笔记时需要把公式转成 LaTeX。
|
| 26 |
|
| 27 |
**真实痛点一句话**:
|
| 28 |
+
> “我室友写物理实验报告时,草稿上已经写好了公式,却要花十几分钟去查 `amsmath` 宏包语法、调括号层级、修 KaTeX 报错——明明只是把纸上的公式敲进电脑。”
|
| 29 |
|
| 30 |
+
**对方真的用过**(待补充真实姓名与截图):
|
| 31 |
+
- 使用者:___(例如:某大学大三物理专业同学)
|
| 32 |
- 使用场景:把草稿里的公式描述复制进 TeXada,直接拿到可粘贴到 Overleaf / Markdown 的 LaTeX。
|
| 33 |
- 反馈:
|
| 34 |
1. “___”
|
|
|
|
| 44 |
|
| 45 |
| 约束优势 | 说明 |
|
| 46 |
|---|---|
|
| 47 |
+
| **速度** | MiniCPM5-1B 仅约 1.08B 参数,CPU Space 上 5–15s 可出结果,适合“边写边查”。 |
|
| 48 |
| **隐私** | 作业/论文草稿不上传给闭源大模型,全部在 Space 容器内推理。 |
|
| 49 |
+
| **低成本** | 1B 级模型可在免费 CPU Space 上稳定运行,零 API 调用费用。 |
|
| 50 |
+
| **诚实匹配** | 任务边界清晰(NL → LaTeX + 校验 + 修复),1B 端侧模型足够覆盖。 |
|
| 51 |
|
| 52 |
---
|
| 53 |
|
|
|
|
| 100 |
python app.py
|
| 101 |
```
|
| 102 |
|
| 103 |
+
默认模型为 `openbmb/MiniCPM5-1B`,也可替换为任意 ≤32B 的 Hugging Face 模型:
|
| 104 |
|
| 105 |
```bash
|
| 106 |
+
MODEL_NAME="Qwen/Qwen2.5-1.5B-Instruct" python app.py
|
| 107 |
```
|
| 108 |
|
| 109 |
---
|
|
|
|
| 112 |
|
| 113 |
- **UI**: Gradio 4.x
|
| 114 |
- **推理**: Hugging Face `transformers`
|
| 115 |
+
- **默认模型**: `openbmb/MiniCPM5-1B`(约 1.08B 参数,≤ 32B)
|
| 116 |
- **校验**: 括号/环境平衡、命令白名单
|
| 117 |
- **修复**: 自动补全缺失的 `}` 和 `\end{...}`
|
| 118 |
|
app.py
CHANGED
|
@@ -22,13 +22,15 @@ import torch
|
|
| 22 |
from transformers import AutoModelForCausalLM, AutoTokenizer
|
| 23 |
|
| 24 |
# ── Config ──────────────────────────────────────────────────────────────
|
| 25 |
-
MODEL_NAME = os.getenv("MODEL_NAME", "
|
| 26 |
-
MAX_TOKENS = int(os.getenv("MAX_TOKENS", "
|
| 27 |
-
TEMPERATURE = float(os.getenv("TEMPERATURE", "0.
|
| 28 |
|
| 29 |
PARAM_COUNTS_GB = {
|
|
|
|
|
|
|
|
|
|
| 30 |
"Qwen/Qwen2.5-1.5B-Instruct": 1.5,
|
| 31 |
-
"openbmb/MiniCPM5-1B": 1.0,
|
| 32 |
"openbmb/MiniCPM3-4B": 4.0,
|
| 33 |
}
|
| 34 |
|
|
@@ -472,7 +474,7 @@ with gr.Blocks(css=CSS, title="TeXada — Math Formula Agent") as demo:
|
|
| 472 |
"""
|
| 473 |
# TeXada — Math Formula Agent
|
| 474 |
### Backyard AI Build Small Hackathon Entry
|
| 475 |
-
把自然语言或 LaTeX 片段变成可渲染、可复制的 LaTeX。模型 ≤ 32B,默认 **
|
| 476 |
"""
|
| 477 |
)
|
| 478 |
|
|
@@ -480,8 +482,8 @@ with gr.Blocks(css=CSS, title="TeXada — Math Formula Agent") as demo:
|
|
| 480 |
model_info = gr.Markdown(
|
| 481 |
f"""
|
| 482 |
**当前模型**: `{MODEL_NAME}`
|
| 483 |
-
**参数规模**: {PARAM_COUNTS_GB.get(MODEL_NAME, '≤ 32')}B
|
| 484 |
-
**状态**: 首次启动需要 1–
|
| 485 |
"""
|
| 486 |
)
|
| 487 |
|
|
|
|
| 22 |
from transformers import AutoModelForCausalLM, AutoTokenizer
|
| 23 |
|
| 24 |
# ── Config ──────────────────────────────────────────────────────────────
|
| 25 |
+
MODEL_NAME = os.getenv("MODEL_NAME", "openbmb/MiniCPM5-1B")
|
| 26 |
+
MAX_TOKENS = int(os.getenv("MAX_TOKENS", "1024"))
|
| 27 |
+
TEMPERATURE = float(os.getenv("TEMPERATURE", "0.7"))
|
| 28 |
|
| 29 |
PARAM_COUNTS_GB = {
|
| 30 |
+
"openbmb/MiniCPM5-1B": 1.08,
|
| 31 |
+
"openbmb/MiniCPM5-1B-SFT": 1.08,
|
| 32 |
+
"openbmb/MiniCPM5-1B-Base": 1.08,
|
| 33 |
"Qwen/Qwen2.5-1.5B-Instruct": 1.5,
|
|
|
|
| 34 |
"openbmb/MiniCPM3-4B": 4.0,
|
| 35 |
}
|
| 36 |
|
|
|
|
| 474 |
"""
|
| 475 |
# TeXada — Math Formula Agent
|
| 476 |
### Backyard AI Build Small Hackathon Entry
|
| 477 |
+
把自然语言或 LaTeX 片段变成可渲染、可复制的 LaTeX。模型 ≤ 32B,默认 **MiniCPM5-1B**。
|
| 478 |
"""
|
| 479 |
)
|
| 480 |
|
|
|
|
| 482 |
model_info = gr.Markdown(
|
| 483 |
f"""
|
| 484 |
**当前模型**: `{MODEL_NAME}`
|
| 485 |
+
**参数规模**: {PARAM_COUNTS_GB.get(MODEL_NAME, '≤ 32')}B(≤ 32B 合规)
|
| 486 |
+
**状态**: 首次启动需要 1–3 分钟加载模型,请稍候。首次推理会下载模型权重(约 2–3 GB)。
|
| 487 |
"""
|
| 488 |
)
|
| 489 |
|