模型学习预测噪声或预测去噪后的样本:
ϵθ(xt,t)≈ϵ
常见损失形式为:
L=Ex0,ϵ,t[∥ϵ−ϵθ(xt,t)∥22]
直观理解:模型不断学习“这一步噪声应该如何去掉”。
扩散模型常用于高质量图像生成,其优势包括:
但在科研中仍需回答:
条件生成将额外信息 c 引入模型:
pθ(x∣c)
材料任务中的条件可以是:
| 维度 | 问题 | 材料科学检查方式 |
|---|---|---|
| 真实性 | 是否像真实数据? | 人工审阅、统计量比较 |
| 多样性 | 是否覆盖多种模式? | 特征分布、聚类分析 |
| 条件一致性 | 是否满足输入约束? | 成分、工艺、标签检查 |
| 物理合理性 | 是否符合科学规律? | 热力学、动力学、实验验证 |
| 可复现性 | 是否能重复生成与验证? | 固定随机种子、记录版本 |
生成式 AI 是候选生成器,不是科学验证的替代品。
本节回答:
本节不追求完整工程实现,而是建立正确的原理图景。
语言模型的典型目标是预测下一个 token:
p(x1,x2,…,xn)=i=1∏np(xi∣x1,…,xi−1)
对话生成时,模型根据已有上下文不断预测下一个 token。
LLM 通常不直接按“字”或“词”处理文本,而是将文本切分为 token。
示例:
材料科学 → 材料 / 科学
phase-field simulation → phase / - / field / simulation
Fe-C alloy → Fe / - / C / alloy
token 的粒度影响:
每个 token 被映射为向量:
xi→ei∈Rd
向量空间中的位置反映统计共现关系和语义关系。
材料例子:
上下文窗口是模型一次能够读取的输入范围。
上下文包括:
限制:
自注意力使每个 token 能够关注上下文中的其他 token。
缩放点积注意力:
Attention(Q,K,V)=softmax(dk
其中:
对于句子:
由于冷却速率升高,枝晶臂间距减小。
模型需要理解:
注意力机制让模型在生成“减小”时参考前文的“冷却速率升高”。
多头注意力可理解为从多个角度观察上下文:
headi=Attention(QWiQ,KWiK,VWiV)
MultiHead(Q,K,V)=Concat(head1,…,headh)WO
不同注意力头可能关注:
预训练通常使用大规模语料,使模型学习:
预训练任务常可概括为:
θmaxi∑logpθ(xi∣x<i)
其中 x<i 表示当前位置之前的上下文。
预训练模型只学会“续写文本”,不必然学会“按要求完成任务”。
因此还需要:
LLM 的能力主要来自:
这些能力表现为:摘要、问答、翻译、代码生成、格式转换、推理辅助等。
LLM 可以生成知识性文本,但它不是传统数据库。
区别:
| 项目 | 大语言模型 | 数据库/知识库 |
|---|---|---|
| 存储方式 | 参数中的统计表示 | 显式记录 |
| 查询方式 | 生成文本 | 精确检索 |
| 引用能力 | 可能生成伪引用 | 可追踪来源 |
| 更新方式 | 训练或外部检索 | 增删改查 |
因此科研引用必须核验来源。
LLM 可能生成:
原因在于:模型优化目标是生成连贯文本,而不等价于事实检索。
LLM 在数值任务中可能出错:
正确方式:
材料领域存在大量隐性条件:
LLM 可能忽略这些条件,给出过度一般化结论。
专业判断不能外包给模型,只能用模型辅助组织信息和提出候选思路。
采样时可用温度调整分布:
pi=∑jexp(lj/T)exp(li/T)
其中:
一般而言:
import numpy as np
logits = np.array([3.0, 2.0, 1.0, 0.5])
def softmax_with_temp(logits, T=1.0):
z = logits / T
z = z - np.max(z)
p = np.exp(z) / np.sum(np.exp(z))
return p
for T in [0.3, 1.0, 2.0]:
print(T, np.round(softmax_with_temp(logits, T), 3))
该例说明:生成多样性可以调节,但可靠性不能只靠温度解决。
| 使用方式 | 适合任务 | 风险控制 |
|---|---|---|
| 直接生成 | 草稿、提纲、代码框架 | 人工审核 |
| 检索增强 | 文献问答、规范查询 | 引用追踪 |
| 工具调用 | 计算、绘图、数据处理 | 运行验证 |
本课程建议:科研场景优先使用“检索增强”和“工具调用”,减少无证据自由生成。
提示工程不是“咒语”,而是任务工程。
本节要求掌握:
一个规范提示通常包含:
角色:你扮演什么专业角色?
任务:要完成什么具体目标?
背景:已有信息和适用范围是什么?
约束:不能做什么,必须做什么?
格式:输出为表格、列表、代码还是段落?
示例:给出输入输出样例,减少歧义。
核验:要求列出不确定性和需要人工确认之处。
提示越像严谨的任务书,输出越容易被检查和复用。
坏提示:
帮我写一下材料论文的讨论。
问题:任务边界不清,容易生成空泛内容。
好提示:
你是材料凝固方向的论文写作助手。
请基于以下三点结果,写一段讨论:
1. 冷却速率升高导致二次枝晶臂间距减小;
2. 模型预测与实验图像趋势一致;
3. 偏差可能来自热物性参数不确定性。
要求:不虚构文献;不超过300字;列出需要补充引用的位置。
角色可以约束语言风格和评价标准:
角色应服务任务,不能替代证据。
模糊动词:
具体动词:
动词越具体,输出越可检查。
材料任务中应提供:
常用约束:
约束可以减少错误,但不能保证事实正确。
根据任务选择输出格式:
| 任务 | 推荐格式 |
|---|---|
| 文献对比 | 表格:作者、体系、方法、结论、局限 |
| 代码检查 | 问题—原因—修改代码 |
| 实验方案 | 目标—变量—步骤—表征—风险 |
| 论文润色 | 原句—修改句—修改理由 |
| 基金写作 | 科学问题—创新点—研究内容—可行性 |
格式越明确,越便于后续审核。
给模型一个输入输出样例,可以减少歧义。
请按下面示例提取材料实验信息:
示例输入:在 1050 °C 固溶 1 h 后水淬。
示例输出:
温度=1050 °C;时间=1 h;工艺=固溶;冷却方式=水淬。
现在处理以下文本:……
示例的作用是定义“我希望你如何理解任务”。
角色:你是材料科学文献阅读助手。
任务:阅读下列论文摘要,提取结构化信息。
输入:论文标题、摘要、关键词。
输出格式:
1. 研究对象:
2. 方法:
3. 核心结论:
4. 数据或证据:
5. 局限性:
6. 需要核验的事实:
约束:不得添加摘要中不存在的信息。
该模板适合教学演示“抽取”而非“自由发挥”。
角色:你是 Python 科学计算助教。
任务:生成一个可运行脚本,完成 CSV 数据读取、缺失值检查和散点图绘制。
约束:
- 使用 pandas、numpy、matplotlib;
- 不使用不存在的文件路径;
- 给出示例数据生成代码;
- 每一步添加中文注释;
- 最后说明如何检查输出是否合理。
输出:完整代码块。
代码类任务必须实际运行,不能只看表面语法。
角色:你是材料加工与组织表征方向的科研方案顾问。
任务:围绕“冷却速率对组织细化的影响”设计实验方案。
背景:合金体系为……;设备为……;已有表征为……。
输出格式:
- 科学问题;
- 实验变量;
- 对照组;
- 表征方法;
- 数据记录表;
- 风险与备选方案。
约束:不虚构设备能力;不使用超过安全范围的参数。
请以审稿人的视角检查以下段落。
重点检查:
1. 是否存在结论超过证据的表述;
2. 是否缺少变量定义;
3. 是否存在因果关系不充分;
4. 是否需要补充引用;
5. 是否有可替换的更严谨表达。
输出表格:原句、问题、修改建议。
该类提示适合论文写作和基金申请书自查。
负面约束用于降低风险:
但负面约束不能完全避免错误,因此仍需人工检查。
复杂任务应拆为步骤:
第一步:只提取事实,不评价。
第二步:根据事实归纳变量关系。
第三步:指出证据不足之处。
第四步:在不新增事实的前提下改写为论文段落。
优势:
对于数据抽取任务,可要求 JSON:
{
"material_system": "Fe-C alloy",
"process": "solidification",
"temperature_unit": "K",
"key_variables": ["cooling_rate", "composition", "phase_fraction"],
"uncertain_items": []
}
优点:便于后续程序读取。
缺点:模型可能输出格式错误,仍需解析与校验。
原始请求:
帮我找一下这篇论文的创新点。
请改写为包含以下部分的提示:
目标:让模型输出可审查,而不是泛泛总结。
本节讨论 LLM 在科研中的三个高频场景:
核心原则:
LLM 负责提高信息组织效率,人类负责事实判断和科研责任。
适合任务:
不适合直接信任:
获取论文原文或摘要
↓
人工确认题目、作者、期刊、年份
↓
LLM 提取研究对象、方法、结论
↓
人工回到原文核验关键句
↓
整理文献矩阵
↓
形成综述段落或研究空白
| 字段 | 说明 |
|---|---|
| 论文信息 | 作者、题名、期刊、年份、DOI |
| 材料体系 | 合金、陶瓷、高分子、复合材料等 |
| 研究方法 | 实验、模拟、机器学习、理论分析 |
| 输入变量 | 成分、工艺、温度、组织参数 |
| 输出指标 | 强度、硬度、相组成、图像特征 |
| 关键结论 | 必须回到原文核验 |
| 局限性 | 数据量、条件范围、模型假设 |
可以辅助:
不能替代:
LLM 适合生成:
必须人工验证:
明确输入输出
↓
让 LLM 生成最小可运行脚本
↓
本地运行
↓
记录错误信息
↓
让 LLM 根据错误修改
↓
人工检查算法、单位和边界条件
↓
保存版本与运行环境
科研代码不能只满足“语法正确”,还必须满足“问题定义正确”。
import pandas as pd
import matplotlib.pyplot as plt
# 示例材料性能数据
data = pd.DataFrame({
"cooling_rate": [1, 2, 5, 10, 20],
"hardness": [180, 190, 215, 240, 260]
})
# 绘制冷却速率与硬度关系
ax = data.plot(x="cooling_rate", y="hardness", marker="o")
ax.set_xlabel("Cooling rate / K s$^{-1}$")
ax.set_ylabel("Hardness / HV")
plt.show()
要求学生检查:坐标、单位、变量含义是否完整。
请检查以下 Python 代码。
重点检查:
1. 是否存在语法错误;
2. 是否存在数据泄漏;
3. 是否存在单位混用;
4. 是否需要固定随机种子;
5. 是否有可复现实验记录不足。
输出表格:问题、原因、修改建议、修改后代码片段。
代码审核提示应比代码生成提示更严格。
LLM 可帮助:
但实验方案必须由专业人员根据设备、材料、安全规范和研究目标确认。
研究目标
↓
科学问题
↓
可控变量与响应变量
↓
实验矩阵
↓
表征方法
↓
数据分析方法
↓
风险与备选方案
↓
伦理、安全、可复现记录
LLM 可以填充初稿,人类必须确认每个参数是否可实施。
请为“热处理温度对合金硬度和组织的影响”设计实验初稿。
要求:
- 列出自变量、因变量和控制变量;
- 至少设置 4 个温度水平和 1 个重复实验;
- 给出显微组织、硬度和相分析表征方法;
- 输出实验记录表模板;
- 标注需要由实验室安全规范确认的步骤。
| 流程阶段 | LLM 角色 | 人类责任 |
|---|---|---|
| 选题 | 发散思路、整理背景 | 判断创新性与可行性 |
| 文献 | 提取信息、建立矩阵 | 核验原文和引用 |
| 方案 | 生成流程和变量表 | 确认设备、安全和科学合理性 |
| 代码 | 生成脚本、解释报错 | 运行、测试、验证算法 |
| 写作 | 改写语言、组织结构 | 确保原创性、准确性、署名规范 |
本节讨论生成式 AI 在材料科学中的三类任务:
核心要求:每类生成都必须引入材料约束与验证机制。
通用图像或文本生成只需“看起来合理”。
材料生成必须同时满足:
结构生成希望得到:
目标条件 c→候选结构 x
目标条件可以是:
生成结果通常需要 DFT、CALPHAD 或实验进一步验证。
| 表示方式 | 内容 | 优点 | 问题 |
|---|---|---|---|
| CIF 文件 | 晶胞、原子坐标、对称性 | 标准格式 | 生成需保证合法性 |
| 图结构 | 原子为节点、键为边 | 适合 GNN | 周期性处理复杂 |
| 文本序列 | 化学式、结构 token | 可接入 LLM | 语法合法不等于物理合理 |
| 连续张量 | 晶格与坐标矩阵 | 便于神经网络 | 对称性约束困难 |
材料结构生成的关键是表示与约束。
生成候选结构
↓
语法检查:化学式、坐标、晶格参数
↓
几何检查:原子间距、密度、配位数
↓
快速性质筛选:经验模型或机器学习
↓
第一性原理松弛与形成能计算
↓
相稳定性、动力学稳定性、合成可行性评估
没有验证的结构生成只能称为候选生成。
组织图像生成可用于:
但必须防止:
| 评价维度 | 可能指标 |
|---|---|
| 相分数 | 各相面积分数、连通性 |
| 尺度 | 晶粒尺寸、枝晶臂间距、孔径分布 |
| 形貌 | 圆度、长宽比、取向分布 |
| 纹理 | 灰度共生矩阵、频谱特征 |
| 多样性 | 特征空间分布、聚类覆盖 |
| 物理一致性 | 与工艺参数和相变规律一致 |
图像质量指标必须结合材料特征指标。
真实组织图像
↓
标注与尺度统一
↓
训练生成模型
↓
生成候选图像
↓
统计特征比较
↓
专家审查
↓
仅用于数据增强或教学,不冒充真实实验数据
科研写作中应明确说明生成图像来源和用途。
合成路线生成不是单纯文本续写,而是工程约束任务。
需要考虑:
LLM 可以生成路线草案,但实验室负责人必须审核。
角色:你是材料合成方案顾问。
任务:为目标材料生成合成路线草案。
输入:材料体系、目标相、可用设备、温度上限、安全限制。
输出:
1. 候选路线;
2. 每一步工艺参数;
3. 需要表征确认的节点;
4. 主要风险;
5. 需要查阅文献核验的内容。
约束:不得给出超出设备能力或安全规范的步骤。
目标性能
↓
生成候选成分/结构/组织/路线
↓
快速筛选:机器学习或经验规则
↓
高保真验证:DFT、CALPHAD、相场、实验
↓
反馈数据
↓
更新模型或提示约束
生成式 AI 的价值在于扩大候选空间,但筛选和验证决定最终价值。
候选材料 x 应同时满足多个约束:
x∗=argxmaxfproperty(x)
并满足:
gi(x)≤0,i=1,2,…,m
其中 gi(x) 可表示成本、稳定性、毒性、合成温度、元素稀缺性等约束。
材料基因工程强调:
生成式 AI 可以作为“候选生成模块”嵌入该体系。
生成式 AI 不替代材料基因工程,而是增强候选设计和知识组织能力。
本节是本章的安全与规范重点。
要求学生掌握:
大模型幻觉是指模型生成的内容与事实、来源、输入或约束不一致。
常见类型:
主要原因包括:
因此,防止幻觉不能只依赖一句“不要幻觉”。
| 表现 | 风险 |
|---|---|
| 编造论文标题 | 无法追溯证据 |
| 作者和年份错误 | 文献管理混乱 |
| DOI 不存在 | 引用不可核验 |
| 真实论文支持错误结论 | 更隐蔽、更危险 |
| 引用过时或不相关 | 削弱论证可信度 |
引用核验应检查“文献是否存在”和“文献是否支持该陈述”。
第一步:存在性核验
确认题名、作者、期刊、年份、DOI 是否真实。
第二步:相关性核验
确认文献主题是否与当前陈述相关。
第三步:支持性核验
回到原文具体段落,确认该文献是否真的支持该结论。
仅仅找到一篇相似论文,并不意味着引用成立。
| 陈述 | 引用文献 | 是否存在 | 是否相关 | 是否支持 | 处理意见 |
|---|---|---|---|---|---|
| 冷却速率升高会细化枝晶 | 文献A | 是 | 是 | 是 | 可保留 |
| 某模型达到99%准确率 | 文献B | 是 | 否 | 否 | 删除或改写 |
| 某合金在室温超导 | 文献C | 否 | 否 | 否 | 禁用 |
该表可作为课程作业和论文写作自查工具。
科研使用 LLM 后,人类作者仍需负责:
AI 工具不能作为错误、造假或学术不端的免责理由。
| 审核项 | 检查问题 |
|---|---|
| 事实 | 是否可由可靠来源支持? |
| 引用 | DOI、题名、作者是否真实? |
| 数值 | 单位、数量级、公式是否正确? |
| 范围 | 结论是否超出数据范围? |
| 原创性 | 是否存在未经标注的复制或改写? |
| 隐私 | 是否包含未授权数据? |
| 安全 | 是否给出危险或违规实验建议? |
这些策略是流程控制,不是单一提示技巧。
合理用法:
高风险用法:
模型回答:
某研究表明,所有高熵合金在低温下都会出现超导性。
需要检查:
结论:该句应被视为高风险陈述,必须核验。
人类提出科学问题
↓
AI 辅助整理信息与生成候选
↓
人类设计验证方案
↓
计算或实验获得证据
↓
人类判断结论是否成立
↓
AI 辅助表达与格式整理
↓
人类对最终成果负责
AI 是工具,不是作者责任的替代者。
生成式模型
├─ VAE:潜空间与重构
├─ GAN:生成器与判别器对抗
├─ 扩散模型:加噪与去噪
├─ LLM:token、注意力、预训练与生成
├─ 提示工程:角色、任务、约束、格式、示例
├─ 科研应用:文献、代码、实验方案、材料生成
└─ 可信审核:幻觉、引用核验、人类责任
VAE 证据下界:
logpθ(x)≥Eqϕ(z∣x)[logpθ(x∣z)]−DKL(qϕ(z∣x)∥p(z))
GAN 目标函数:
GminDmaxV(D,G)=Ex∼pdata[logD(x)]+Ez∼pz[log(1−D(G(z)))]
扩散模型正向加噪:
q(xt∣xt−1)=N(xt;1−βt
注意力机制:
Attention(Q,K,V)=softmax(dk
温度采样:
pi=∑jexp(lj/T)exp(li/T)
| 易错认识 | 修正理解 |
|---|---|
| 生成式 AI 能直接产生科学发现 | 它产生候选,发现需要验证 |
| LLM 是知识库 | LLM 是生成模型,引用必须核验 |
| 提示写得好就不会错 | 提示只能降低风险,不能保证事实正确 |
| 生成图像可以当实验图 | 必须标注为生成数据,不可混用 |
| 代码能运行就正确 | 还要检查模型假设、单位和边界条件 |
作业目标:
使用一个小型词表,模拟语言模型中“根据概率生成下一个词”的过程,观察温度参数对输出稳定性和多样性的影响。
要求:
import numpy as np
vocab = ["奥氏体", "铁素体", "马氏体", "硬度", "冷却速率", "枝晶"]
logits = np.array([2.2, 1.8, 1.2, 1.5, 1.0, 0.8])
def softmax_temperature(logits, T):
z = logits / T
z = z - np.max(z)
return np.exp(z) / np.sum(np.exp(z))
def sample_word(vocab, logits, T, n=10, seed=0):
rng = np.random.default_rng(seed)
p = softmax_temperature(logits, T)
return rng.choice(vocab, size=n, p=p)
for T in [0.3, 1.0, 2.0]:
print("T=", T, sample_word(vocab, logits, T, n=12, seed=1))
提交内容:
评分关注:代码可运行、图表清晰、解释符合概率思想。
本章关键词:
正确使用生成式 AI 的核心不是“让模型替我们思考”,而是“让模型帮助我们更有组织地提出、检查和验证问题”。
| 时间 | 内容 | 教学方式 |
|---|---|---|
| 0–20 min | 生成式 AI 与判别式模型 | 概念导入、案例对比 |
| 20–55 min | VAE、GAN、扩散模型 | 图解与公式讲解 |
| 55–90 min | LLM 原理与能力边界 | token、注意力、采样演示 |
| 90–125 min | 提示工程 | 模板改写练习 |
| 125–160 min | 科研应用与材料生成 | 文献、代码、实验方案案例 |
| 160–180 min | 幻觉与审核 | 引用核验练习、作业布置 |
重点:
难点:
价值导向:以 AI 提升科研效率,但以证据、责任和规范守住科研底线。
建议结合以下案例讲解:
这些案例可根据教师研究方向灵活替换。