化学专业大型语言模型——SparkChemistry-X1-13B本地部署教程:洞察分子特性,精准预测化学行为

一、模型介绍

iFLYTEK Spark Chemistry-X1-13B 是由 iFLYTEK 团队开发的化学专业大型语言模型。该模型在多种化学任务数据集上对 iFLYTEK Spark-X1 基础模型进行了微调,展示了在解决复杂化学问题方面的卓越能力,同时保持了强大的通用能力。该模型在与化学相关的基准测试中表现出色,并且在大多数评估指标上明显优于领先的通用模型。

主要特点

  • 深度推理架构 :结合长链思维(CoT)和双过程理论的统一框架,支持快速(反应式)和慢速(深思熟虑)两种思考模式
  • 混合训练稳定性 :新颖的注意力掩码机制将不同推理模式的训练阶段解耦,防止数据分布之间的干扰
  • 化学领域增强 :针对以下专业任务的多阶段优化:
    • 高级知识问答
    • 化学名称转换
    • 分子属性预测

模型概要

参数
总参数 13B
上下文长度 32K
窗口长度 32K
层数 40
注意力隐藏维度 5120
注意力头数 40
词汇量 130K
注意力机制 GQA
激活函数 GeLU

评估结果

粗体 = 全球最佳

任务 指标 Spark Chemistry-X1-13B DeepSeek-R1 Gemini 2.5 pro GPT-4.1 O3-mini
高级知识问答 准确率 84.00 77.00 64.00 76.00 80.00
名称转换 准确率 71.00 6.00 15.00 4.00 6.00
属性预测 准确率 85.33 41.73 51.19 51.66 67.58

评估说明

  1. 所有结果显示零样本性能平均值
  2. 对所有模型应用一致的评估协议
  3. DeepSeek-R1、Gemini 2.5 Pro、GPT-4.1 和 O3-mini 使用链式思维(CoT)推理并通过 API 验证进行评估
  4. Spark Chemistry-X1-13B 在 NVIDIA A800 80GB GPU 的本地环境中使用链式思维(CoT)推理进行评估
  5. 评估数据集是自行构建的

二、模型部署

1.下载模型及文件

下载地址:https://modelscope.cn/models/iflytek/Spark-Chemistry-X1-13B/files

下载命令

复制代码
pip install modelscope
modelscope download --model iflytek/Spark-Chemistry-X1-13B

2.安装环境

复制代码
cd iflytek/Spark-Chemistry-X1-13B
pip install -r requirements.txt
pip install .

3.快速使用

复制代码
from modelscope import AutoModelForCausalLM, AutoTokenizer
import torch
# Load model and tokenizer
model_name = "iflytek/Spark-Chemistry-X1-13B"
tokenizer = AutoTokenizer.from_pretrained(model_name,trust_remote_code=True)
model = AutoModelForCausalLM.from_pretrained(
    model_name,
    torch_dtype=torch.float32,
    device_map="auto",
    trust_remote_code=True
)
# Reactive
chat_history = [
  {
    "role" : "user",
    "content" : "请回答下列问题:高分子材料是否具有柔顺性主要决定于()的运动能力。\nA、主链链节\nB、侧基\nC、侧基内的官能团或原子?"
  }]

inputs = tokenizer.apply_chat_template(
    chat_history,
    tokenize=True,
    return_tensors="pt",
    add_generation_prompt=True
).to(model.device)

outputs = model.generate(
    inputs,
    max_new_tokens=8192,
    top_k=1,
    do_sample=True,
    repetition_penalty=1.02,
    temperature=0.7,
    eos_token_id=5,
    pad_token_id=0,
)

response = tokenizer.decode(
    outputs[0][inputs.shape[1] :],
    skip_special_tokens=True
)
print(response)

from modelscope import AutoModelForCausalLM, AutoTokenizer
import torch
# Load model and tokenizer
model_name = "iflytek/Spark-Chemistry-X1-13B"
tokenizer = AutoTokenizer.from_pretrained(model_name,trust_remote_code=True)
model = AutoModelForCausalLM.from_pretrained(
    model_name,
    torch_dtype=torch.float32,
    device_map="auto",
    trust_remote_code=True
)
# Deliberative
chat_history = [
  {
    "role" : "system",
    "content" : "请你先深入剖析给出问题的关键要点与内在逻辑,生成思考过程,再根据思考过程回答给出问题。思考过程以<unused6>开头,在结尾处用<unused7>标注结束,<unused7>后为基于思考过程的回答内容"
  }
  ,
  {
    "role" : "user",
    "content" : "请回答下列问题:高分子材料是否具有柔顺性主要决定于()的运动能力。\nA、主链链节\nB、侧基\nC、侧基内的官能团或原子?"
  }]


inputs = tokenizer.apply_chat_template(
    chat_history,
    tokenize=True,
    return_tensors="pt",
    add_generation_prompt=True
).to(model.device)

outputs = model.generate(
    inputs,
    max_new_tokens=8192,
    top_k=1,
    do_sample=True,
    repetition_penalty=1.02,
    temperature=0.7,
    eos_token_id=5,
    pad_token_id=0,
)

response = tokenizer.decode(
    outputs[0][inputs.shape[1] :],
    skip_special_tokens=True
)
print(response)

可选:将 FP32 权重转换为 BF16

发布的 Spark Chemistry-X1-13B 权重以 FP32 精度存储。 为了提高推理效率,用户可以选择将权重转换为 bfloat16 (BF16) 格式。

复制代码
from modelscope import AutoModelForCausalLM
import torch

model_name = "iflytek/Spark-Chemistry-X1-13B"

# Load FP32 weights
model = AutoModelForCausalLM.from_pretrained(
    model_name,
    torch_dtype=torch.float32, # explicitly FP32
    device_map="auto",
    trust_remote_code=True
)

# Convert to BF16
model = model.to(torch.bfloat16)

#  Save BF16 weights for later fast loading
save_path = "./Spark-Chemistry-X1-13B-bf16"
model.save_pretrained(save_path, safe_serialization=True)
相关推荐
X.AI6668 分钟前
YouTube评论情感分析项目84%正确率:基于BERT的实战复现与原理解析
人工智能·深度学习·bert
艾莉丝努力练剑15 分钟前
【C++:继承】面向对象编程精要:C++继承机制深度解析与最佳实践
开发语言·c++·人工智能·继承·c++进阶
小宁爱Python29 分钟前
从零搭建 RAG 智能问答系统 6:Text2SQL 与工作流实现数据库查询
数据库·人工智能·python·django
Hard_Liquor31 分钟前
Datawhale秋训营-“大运河杯”数据开发应用创新大赛
人工智能·深度学习·算法
运维行者_1 小时前
AWS云服务故障复盘——从故障中汲取的 IT 运维经验
大数据·linux·运维·服务器·人工智能·云计算·aws
Saniffer_SH1 小时前
搭载高性能GPU的英伟达Nvidia DGX Spark桌面性能小怪兽国内首台开箱视频!
人工智能·深度学习·神经网络·ubuntu·机器学习·语言模型·边缘计算
数字化脑洞实验室1 小时前
AI决策vs人工决策:效率的底层逻辑与选择边界
人工智能
可触的未来,发芽的智生1 小时前
追根索源:换不同的词嵌入(词向量生成方式不同,但词与词关系接近),会出现什么结果?
javascript·人工智能·python·神经网络·自然语言处理
递归不收敛1 小时前
三、检索增强生成(RAG)技术体系
人工智能·笔记·自然语言处理