🚀 🌟 Gemma-3-12B 印度语系语言模型 🌟
这可不是普通的语言模型,而是经过全面监督微调(SFT)的 谷歌 Gemma-3-12B 模型,专门针对印度语系语言进行优化,首先支持的就是泰卢固语!该模型在包含泰卢固语问答的自定义数据集上进行训练,能够像母语者一样理解、对话和生成文本。
我们正在逐步支持所有主要的印度语系语言,以打造一个全面的多语言印度语系助手。
🔍 印度语系语言支持路线图
语言 |
状态 |
ISO 代码 |
泰卢固语 (తెలుగు) |
✅ 已完成 |
te |
印地语 (हिंदी) |
🔄 即将推出 |
hi |
泰米尔语 (தமிழ்) |
🔄 即将推出 |
ta |
马拉雅拉姆语 (മലയാളം) |
🔄 即将推出 |
ml |
卡纳达语 (ಕನ್ನಡ) |
🔄 即将推出 |
kn |
孟加拉语 (বাংলা) |
🔄 即将推出 |
bn |
马拉地语 (मराठी) |
🔄 即将推出 |
mr |
旁遮普语 (ਪੰਜਾਬੀ) |
🔄 即将推出 |
pa |
古吉拉特语 (ગુજરાતી) |
🔄 即将推出 |
gu |
奥里亚语 (ଓଡ଼ିଆ) |
🔄 即将推出 |
or |
阿萨姆语 (অসমীয়া) |
🔄 即将推出 |
as |
✨ 示例交互 ✨
想知道它能做什么吗?以下是一个简单的示例:
用户 ( ప్రశ్న ): ఇండియాలో గ్రోసరీస్ మీద డబ్బులు సేవ్ చేయడానికి బెస్ట్ వేస్ ఏంటి?
(在印度,节省杂货开支的最佳方法是什么?)
模型 ( జవాబు ): ఇండియాలో కిరాణా సామాన్ల మీద డబ్బులు సేవ్ చేయడానికి కొన్ని బెస్ట్ వేస్ ఇక్కడ ఉన్నాయి, చూడు:
- 制定预算:首先,为杂货购物设定一个固定的预算。提前确定每月的开支,这样就不会超支。
- 按计划购物:在购物前,准备一份购物清单,明确要买什么和买多少。没有清单的话,可能会买很多不必要的东西,导致超出预算。
- 寻找折扣:超市里经常有折扣和优惠活动,要留意这些信息。有时候还有捆绑销售,这可以节省不少开支。
- 批量购买更划算:一些商品批量购买时价格会更便宜。特别是豆类、油类等可以保存较长时间的商品,可以考虑批量购买。
- 季节性购买很明智:了解每个季节哪些商品价格较低很重要。夏季的水果、冬季的蔬菜价格通常较低,可以充分利用这一点。
🚀 模型与训练详情
这个模型可不是自己训练出来的!以下是幕后的详细信息:
- 基础模型:
google/gemma-3-12b-pt
- 微调方法:全面监督微调(Full SFT)
- 当前支持语言:泰卢固语 (te) - 印度语系系列的首个语言
- 硬件:🔥 8 x NVIDIA H100 GPUs 🔥(由 Modal 提供支持)
- 训练时间:约 3 小时(9744 秒)
- 数据集:自定义泰卢固语问答数据集(40k 样本)
- 验证集划分:10%(36k 训练样本 / 4k 验证样本)
- 使用框架:LLaMA Factory、
transformers
、accelerate
、DeepSpeed(ZeRO Stage 2 并开启 CPU 卸载)
- 精度:BF16
关键超参数:
- 每设备批量大小:2
- 梯度累积:32(有效批量大小:512)
- 学习率:2e-5(余弦调度器)
- 训练轮数:约 2.97
- 最大序列长度:4096
训练指标:
- 最终训练损失:0.7232
- 每秒训练样本数:11.083
- 总浮点运算次数:约 7.88e18(这可是大量的计算!🤓)
🔮 即将推出
令人期待的新功能即将上线:
- 印度语系文本转语音(TTS) - 我们正在开发一个配套的 TTS 模型,它将通过自然的印度语系语音合成,让模型的回答更加生动!
- 以印地语为主的大语言模型 - 我们正在进行一项专门的微调工作,以印地语为主要语言,同时保持多语言印度语系的支持能力。
- 支持更多印度语系语言 - 我们正在有条不紊地支持所有主要的印度语系语言,以打造最全面的印度语系语言助手。
💻 使用示例
基础用法
可以使用 transformers
库来开始使用这个模型:
from transformers import AutoModelForCausalLM, AutoTokenizer
import torch
model_name = "bharathkumar1922001/Gemma3-12b-Indic"
tokenizer = AutoTokenizer.from_pretrained(model_name)
model = AutoModelForCausalLM.from_pretrained(
model_name,
torch_dtype=torch.bfloat16,
device_map="auto",
attn_implementation="eager"
)
model.eval()
question = "ఆర్థిక మాంద్యాన్ని ప్రభుత్వాలు ఎలా పరిష్కరించగలవు?"
prompt = f"<start_of_turn>user\n{question}<end_of_turn>\n<start_of_turn>model\n"
inputs = tokenizer(prompt, return_tensors="pt").to(model.device)
outputs = model.generate(
**inputs,
max_new_tokens=512,
temperature=0.7,
top_p=0.95,
top_k=50,
do_sample=True,
eos_token_id=tokenizer.eos_token_id
)
response_ids = outputs[0, inputs.input_ids.shape[1]:]
response = tokenizer.decode(response_ids, skip_special_tokens=True)
print("--- Question ---")
print(question)
print("\n--- Response ---")
print(response)
📄 许可证
本项目采用 Apache-2.0 许可证。
📞 联系我们
如果您有合作意向、需要定制部署或对该模型有任何疑问,请与我们联系。