万字综述大模型高效推理:无问芯穹与清华、上交最新联合研讨全面解析大模型推理优化

近年来,大言语模型(Large Language Models, LLMs)受到学术界和工业界的广泛关注,得益于其在各种言语生成任务上的出色表现,大言语模型推动了各种人工智能应用(例如ChatGPT、Copilot等)的发展。然而,大言语模型的落地应用受到其较大的推理开消的限制,对部署资源、用户体验、经济成本都带来了巨大挑战。例如,将包含700亿参数量的LLaMA-2-70B模型进行部署推理,至少需要6张RTX 3090Ti显卡或2张NVIDIA A100显卡,以部署在A100显卡上为例,该模型生成512长度的词块

近年来,大言语模型(Large Language Models, LLMs)受到学术界和工业界的广泛关注,得益于其在各种言语生成任务上的出色表现,大言语模型推动了各种人工智能应用(例如ChatGPT、Copilot等)的发展。然而,大言语模型的落地应用受到其较大的推理开消的限制,对部署资源、用户体验、经济成本都带来了巨大挑战。例如,将包含700亿参数量的LLaMA-2-70B模型进行部署推理,至少需要6张RTX 3090Ti显卡或2张NVIDIA A100显卡,以部署在A100显卡上为例,该模型生成512长度的词块(token)序列需要耗时超过50秒。

许多研讨任务致力于安排优化大言语模型推理开消的技巧,优化模型的推理延迟、吞吐、功耗和保存等指标,成为许多研讨的重要目标。为了对这些优化技巧有更全面、更系统的认知,为大言语模型的部署实践和未来研讨提供建议和指南,来自清华大学电子工程系、无问芯穹和上海交通大学的研讨团队对大言语模型的高效推理技巧进行了一次全面的调研和整理,在《A Survey on Efficient Inference for Large Language Models》(简称LLM Eff-Inference)这篇万字长文综述将畛域相关任务划分归类为三个优化层次(即数据层、模型层和系统层),并逐个层次地介绍和总结相关技巧任务。此外,该任务还对造成大言语模型推理不高效的根本原因进行分析,并基于对当前已有任务的综述,深入探讨高效推理畛域未来应关注的场景、挑战和路线,为研讨者提供可行的未来研讨方向。

万字综述大模型高效推理:无问芯穹与清华、上交最新联合研讨全面解析大模型推理优化

万字综述大模型高效推理:无问芯穹与清华、上交最新联合研讨全面解析大模型推理优化

                    图注:《A Survey on Efficient Inference for Large Language Models》(LLM Eff-Inference)

一、大模型推理作用瓶颈分析

目前主流的大言语模型都是基于Transformer架构进行安排。平时来说,一个完整的模型架构由多个相同结构的Transformer块组成,每个Transformer块则包含多头自注意力(Multi-Head Self-Attention, MHSA)模块、前馈神经网络(Feed Forward Network, FFN)和层归一化(Layer Normalization,LN)操作。

大言语模型平时自回归(Auto-regressive)的方式生成输入序列,即模型逐个词块生成,且生成每个词块时需要将前序的所有词块(包括输入词块和前面已生成的词块)全部作为模型的输入。因此,随着输入序列的增长,推理过程的开消显著增大。为了解决该问题,KV缓存技巧被提出,该技巧通过保存和复用前序词块在估计注意力机制时产生的Key和Value向量,减少大量估计上的冗余,用一定的保存开消换取了显著的加速效果。基于KV缓存技巧,平时可以将大言语模型的推理过程划分为两个阶段(分别如下图中(a)和(b)所示):

预填充(Prefilling)阶段:大言语模型估计并保存输入序列中词块的Key和Value向量,并生成第一个输入词块。

解码(Decoding)阶段:大言语模型利用KV缓存技巧逐个生成输入词块,并在每步生成后保存新词块的Key和Value向量。

万字综述大模型高效推理:无问芯穹与清华、上交最新联合研讨全面解析大模型推理优化

                                          图注:大言语模型推理的两个阶段,即预填充阶段(a)和解码阶段(b)

大言语模型在实际部署应用中,我们平时关注其延时、吞吐、功耗和保存,而在大言语模型推理过程中,有三个重要因素会直接影响上述作用指标,分别是估计开消(Computational Cost)、访存开(Memory Access Cost)和保存开消(Memory Cost)。进一步地,本综述深入分析探究,并总结归纳除出影响上述指标和因素三点根本因素,分别为:

模型规模:主流大言语模型庞大的模型规模会导致巨大的估计量、访存量和保存量;

注意力算子:作为大言语模型的核心算子,注意力算子具有与输入长度呈平方关系增长的估计和保存复杂度;

解码方式:主流的自回归解码方式导致极低的估计-访存比和硬件利用率,同时动态增长的KV缓存会导致碎片化的内存使用,对访存开消和保存开消带来增长。万字综述大模型高效推理:无问芯穹与清华、上交最新联合研讨全面解析大模型推理优化

                                图注:大言语模型推理作用瓶颈分析图示

二、大模型高效推理技巧畛域纵览

本综述将大言语模型高效推理畛域的技巧划分为三个层次,分别为:

数据层优化技巧:指通过优化输入提醒词或规划模型输入内容优化推理作用。这类优化技巧平时不需要修改模型本身,因此避免了大量的模型训练或微调开消;

模型层优化技巧:指通过安排高效的模型结构或模型收缩技巧优化推理作用。这类技巧平时需要对模型进行预训练或微调来恢复任务精度,同时平时对输入结果是有损的;

统层优化技巧:指通过优化推理引擎或服务系统优化推理作用。这类技巧平时不需要额外的模型训练开消,同时可以保证对输入结果是无损的。

万字综述大模型高效推理:无问芯穹与清华、上交最新联合研讨全面解析大模型推理优化

                             图注:本综述的分类体系

2.1 数据层优化技巧

数据层优化技巧可以划分为两大类:输入收缩(Input Compression)和输入规划(Output Organization)。

2.1.1 输入收缩技巧

在实际利用大言语模型做回答时,平时会在输入提醒词中加入一些辅助内容来增强模型的回答质量,例如,上下文学习技巧(In-Context Learning,ICL)提出在输入中加入多个相关的问答例子来教模型如何作答。然而,这些技巧不可避免地会增长输入词提醒的长度,导致模型推理的开消增大。为了解决该问题,输入收缩技巧通过直接减小输入的长度来优化模型的推理作用

本综述将该类技巧进一步划分为四个小类,分别为:

提醒词剪枝(Prompt Pruning):平时根据安排好的重要度评估指标删除输入提醒词中不重要的词块、句子或文段,对被收缩的输入提醒词执行在线收缩。

提醒词总结(Prompt Summary):通过对输入提醒词做文本总结任务,在保证其语义信息相同地情况下缩短输入的长度。该收缩过程平时也是在线执行的。

基于软提醒词的收缩(Soft Prompt-based Compression):通过微调训练的方式得到一个长度较短的软提醒词,代替原先的输入提醒词(在线执行)或其中固定的一部分内容(离线执行)。其中,软提醒词指连续的、可学习的词块序列,可以通过训练的方式学习得到。

检索增强生成(Retrieval-Augmented Generation):通过检索和输入相关的辅助内容,并只将这些相关的内容加入到输入提醒词中,来降低原本的输入长度(相比于加入所有辅助内容)。

2.1.2 输入规划技巧

传统的生成解码方式是完全串行的,输入规划技巧通过规划输入内容,并行生成某些部分的的输入来降低端到端的推理延时。以该畛域最早的任务“思维骨架”(Skeleton-of-Thought,以下简称SoT)[45](无问芯穹于2023年7月发布的任务,并被ICLR2024录用)为例,SoT技巧的核心思想是让大言语模型自行规划输入的并行结构,并基于该结构进行并行解码,提升硬件利用率,减少端到端生成延时。

具体来说,如下图所示,SoT将大言语模型的生成分为两个阶段:在提纲阶段,SoT通过安排的提醒词让大言语模型输入答案的大纲;在分点扩展阶段,SoT让大言语模型基于大纲中的每一个分点并行做扩展,最后将所有分点扩展的答案合并起来。SoT技巧让包含LLaMA-2、Vicuna模型在内的9种主流大言语模型的生成过程加速1.9倍以上,最高可达2.39倍。在SoT技巧发布后,一些研讨任务通过微调大言语模型、前后端协同优化等方式优化输入规划技巧,达到了更好的加速比和回答质量之间的权衡点。

万字综述大模型高效推理:无问芯穹与清华、上交最新联合研讨全面解析大模型推理优化

                             图注:输入规划技巧SoT[45]示意

2.1.3 知识、建议和未来方向

随着大言语模型需要处理的输入提醒词和模型的输入结果越来越长,数据层的优化技巧越来越重要。在这类技巧中,输入收缩技巧主要优化预填充阶段中注意力算子带来的平方量级的估计和保存开消,而输入规划技巧则主要通过降低解码阶段中大量的访存开消,此外,一些研讨尝试利用大言语模型本身做输入规划,并取得了不错的效果。

最近,各种各样新的提醒词流程(Prompting Pipelines)和大言语模型智能体(LLM Agents)出现,这些新的框架在增强大言语模型能力的同时,也引入了更长的输入提醒。利用输入收缩技巧可以有效优化此类问题,同时,这些流程和智能体框架在输入内容中引入了更多可并行性,因此输入规划技巧可能会在优化这类框架的作用上起到关键作用。除此之外,还有一些新任务关注如何直接安排更高效的智能体框架。

2.2 模型层优化技巧

模型层优化技巧可以划分为两大类:高效结构安排(Efficient Structure Design)和模型收缩(Model Compression)。前者平时需要将新安排的模型从头进行预训练,而后者平时只需要微调恢复精度即可。

2.2.1 高效结构安排

目前主流的大言语模型大多采用Transformer架构,从结构上看,参数量占比最多的前馈神经网络(以下简称FFN)和平方复杂度的注意力算子是导致模型推理作用低下的主要原因。基于此,本文将高效结构安排畛域的技巧进一步划分为三类:

🔹高效FFN安排(Efficient FFN):该畛域的主流方法为混合    专家(Mixture-of-Experts,MoE)技巧,其核心是为不同的输入词块分配不同数量的FFN(称为专家),减少推理过程中被激活的FFN权重数量。基于MoE的Transformer模型除了包含若干个专家FFN外,还包含一个负责分配专家的路由(Router)模型。该畛域的研讨任务主要关注三个方向:

更高效地获取专家FFN的权重或构建更轻量化的专家FFN;

优化路由模型使其分配更加平衡,避免因分配不平衡导致的精度和作用下降;

优化MoE模型的训练方式,使得训练更加稳定。

🔹高效注意力算子安排(Efficient Attention):该畛域的研讨任务可以分为:

多询问(Multi-Query)注意力技巧,即在不同的注意力头之间共享部分Key和Value来降低访存开消和内存占用;

低复杂度(Low-Complexity)注意力技巧,主要包括基于核函数(Kernel-based)的注意力算子和低秩注意力(Low-Rank)算子。

🔹Transformer替代架构(Transformer Alternates):最新的研讨任务逐渐关注于安排新的模型架构来取代Transformer架构,这些新模型架构大多具有线性或近似线性的复杂度,在处理文本长度较长时有显著的性能优势。本综述将这类任务总结为两大类:

状态空间模型(State Space Models,SSMs)。这类模型的核心思想是将历史信息收缩到一个隐状态(state)中,通过状态间的转移建模新的信息。聚焦于状态空间模型的研讨可以分为两个方向,一方面研讨状态转移矩阵初始化和参数化的方式,另一方面研讨与其他模型结构(如Transformer、门控单元等)的融合架构。

非状态空间模型。这类任务主要包含两个分支,分别是采用长卷积做序列建模,以及采用基于注意力机制做改进的线性建模算子。下表列举了典型的Transformer替代架构的复杂度,可以总结出该类架构的研讨趋势:

🔸训练方面,新架构倾向于采用卷积或类注意力算子的形式来保持训练的并行性;

🔸推理方面,新架构倾向于在预填充阶段保证和输入长度呈线性的估计复杂度,在解码阶段保证与文本长度无关的估计复杂度。

万字综述大模型高效推理:无问芯穹与清华、上交最新联合研讨全面解析大模型推理优化

                             图注:典型Transformer替代架构的训练和推理复杂度(n表示序列长度,d表示隐表征维度)

2.2.2 模型收缩技巧

本综述将大言语模型高效推理畛域的技巧划分为三个层次,分别为:

🔹模型量化(Model Quantization):模型量化是一类应用广泛的模型收缩技巧,其通过将模型的权重从高比特数转换成低比特数来降低模型的估计和保存开消。值得注意的是,大模型在推理的不同阶段有不一样的作用瓶颈,因此需要适配不同的量化方法。在预填充阶段,推理作用主要受限于较高的估计量,因此平时采用权重激活量化(Weight-Activation Quantization)的方式;在解码阶段,推理作用主要受限于较高的访存量,因此平时采用仅权重量化(Weight-only Quantization)的方式。从量化流程来看,模型量化可以划分为:

训练后量化(Post-Training Quantization,PTQ):指对预训练后的模型直接做量化,不需要重新训练量化后的模型。这类方法对量化后模型的精度损失较大,但因其不需要额外的模型训练开消,因此在大言语模型畛域应用最为广泛。下表总结了典型的训练后量化方法在各个维度的比较。此外,在实际应用中,开发者平时还需要关注量化对大言语模型各种能力的损失,无问芯穹于2024年1月发布的任务QLLM-Eval[204](已被ICML2024录用)从不同量化模型、量化参数和量化维度全面研讨了量化对模型能力的影响,并给出了针对量化技巧的使用指南。

万字综述大模型高效推理:无问芯穹与清华、上交最新联合研讨全面解析大模型推理优化

                             图注:典型的训练后量化算法的比较

训练感知量化(Quantization-Aware Training,QAT):指在模型的训练中加入模型量化过程,并通过训练减小量化带来的精度损失。相比于训练后量化,训练感知量化方法平时具有更高的精度,但其需要大量的数据和估计量来做模型训练。因此,目前该子畛域的研讨主要关注于如何在数据层面和估计量层面降低模型训练带来的开消。

🔹模型茂密(Model Sparsification)。模型茂密分为权重茂密(即权重剪枝)和注意力茂密(即茂密注意力):

权重剪枝(Weight Pruning):指通过将模型中不重要的权重和对应结构移除,降低模型的估计和保存开消。权重剪枝可以分为非结构化剪枝(Unstructural Pruning)和结构化剪枝(Structural Pruning)两大类,两者区别主要在于剪枝粒度不同,如下图所示。其中,在非结构化剪枝畛域,目前的研讨任务主要关注于如何加速对大模型的剪枝过程,以及如何安排更有效的重要度分析指标和剪枝率分配策略。而在结构化剪枝畛域,目前的研讨任务大多关注于如何安排规整的剪枝结构来支持结构化的剪枝。

万字综述大模型高效推理:无问芯穹与清华、上交最新联合研讨全面解析大模型推理优化

                               图注:非结构化剪枝和结构化剪枝比较

茂密注意力(Sparse Attention):指通过减少冗余的注意力估计,来降低预填充阶段的估计开消和解码阶段中KV cache带来保存和访存开消。该畛域的研讨任务主要关注于安排更有效的茂密模式(Sparse Pattern),包括静态茂密(下图中(a)和(b)所示)以及动态茂密(下图中(c)和(d)所示)。无问芯穹于2023年9月发布的任务SemSA[204],通过对每个注意力头自动选择注意力掩膜和掩膜扩展方式,在平均茂密度相同的情况下,大幅提升茂密注意力大言语模型的有效上下文长达3.9倍。万字综述大模型高效推理:无问芯穹与清华、上交最新联合研讨全面解析大模型推理优化

                                           图注:典型注意力茂密模式比较

🔹结构优化(Structure Optimization):结构优化技巧指通过修改模型的架构或结构来达到更好的精度-作用之间的权衡。在该畛域有两类代表性的技巧:

神经网络架构搜索(Neural Architecture Search):指自动化地搜索出最优的模型架构。然而,这类方法目前只在中等规模的言语模型上得到应用,在大言语模型上还未获得实际的优化效果,原因是该技巧平时需要在搜索过程中对采样到的架构进行训练评估,对大模型来说需要花费巨大的训练开消。

低秩分解(Low Rank Factorization):指将一个大的权重矩阵近似分解成两个低质小矩阵的乘积,通过该技巧,可以降低大言语模型权重的保存开消和访存开消。该畛域的研讨任务主要聚焦于安排分解方式,以及将该技巧与其他模型收缩技巧(例如量化、剪枝等)结合获得更高的作用优化效果。

🔹知识蒸馏(Knowledge Distillation):知识蒸馏指用一个大模型(教师模型)来辅助训练一个小模型(学生模型),从而将大模型的知识传递给小模型,通过小模型更小的开消达到相似的精度效果。知识蒸馏主要分为白盒(White-box)和黑盒(Black-box),前者可以获得教师模型的架构和权重,因此可以利用更多的信息(例如特征、输入概率等)训练学生模型,而后者多针对基于API接口访问的大模型,这类模型的架构和权重无法获取,因此仅能通过构造数据来训练学生模型。在知识蒸馏畛域,当前的研讨任务主要关注安排更有效的蒸馏损失函数,以及构造更有效的蒸馏数据来辅助学生模型的学习。

万字综述大模型高效推理:无问芯穹与清华、上交最新联合研讨全面解析大模型推理优化

                                图注:白盒蒸馏和黑盒蒸馏比较

🔹动态推理(Dynamic Inference):动态推理技巧指在推理过程中,基于输入数据的不同,动态决定最合适的推理结构。根据所依赖的输入数据维度,可以进一步将该畛域的技巧分为样本级别(Sample-level)和词块级别(Token-level)的动态推理。该畛域的研讨方向主要聚焦于安排更有效的退出模块,以及解决大言语模型解码过程中并行推理和KV缓存的问题。

万字综述大模型高效推理:无问芯穹与清华、上交最新联合研讨全面解析大模型推理优化

                                    图注:样本级别和词块级别的动态推理比较

2.2.3 知识、建议和未来方向

在高效结构安排畛域,Transformer的替代架构受到了许多研讨者们的关注,诸如Mamba[73]、RWKV[60]以及它们的变体架构都在各类任务上验证了它们高效的推理能力。然而,这些新架构相比Transformer架构在某些方面是否仍然存在缺陷还并未被探究清楚。此外,本文认为将新架构和传统的Transformer架构做融合,可以达到作用和精度之间更好的权衡,是一个有潜力的研讨方向。

在模型收缩畛域:

模型量化是目前最常用也是最推荐使用的模型收缩技巧,一方面,该技巧可以很方便快捷地收缩大言语模型,另一方面,该技巧能在有效提升模型作用的同时,尽可能地保证模型的精度损失最小。然而,模型量化技巧仍然不可避免地会对模型的能力造成负面影响,因此需要根据任务和应用场景谨慎选取最合适的模型量化算法。

模型茂密方面,目前有许多研讨任务关注茂密注意力技巧,并将其应用在处理长文本的场景中,然而这类技巧平时会损失部分信息,导致任务精度的下降,因此如何在保留有效信息的同时还能高效处理长文本是一个值得探索的问题。而在权重剪枝畛域,有研讨任务[217]指出目前的剪枝方法在不显著影响任务精度的前提下,仅能达到较低的剪枝率水平,因此安排更有效的模型剪枝算法是一个值得研讨的方向。

结构优化方面,神经网络架构搜索技巧受限于其高昂的评估成本,难以被应用在大言语模型的收缩上,然而这种自动化收缩的思想仍然值得进一步的探索。另一方面,低秩分解技巧受限于其难以同时保证任务精度和收缩比例。

此外,还有一些任务探究将不同的模型层技巧结合,例如将混合专家技巧和低秩分解结合、将模型量化和权重茂密结合、将模型量化和低秩分解结合、将权重剪枝和低秩分解结合。这些方法展示了整合多种收缩技巧以实现大型言语模型更佳优化的潜力。

2.3 系统层优化技巧

大言语模型推理的系统层优化主要集中在优化模型的前向推理过程。在大言语模型的前向推理估计图中,注意力算子和线性算子占据了大部分运行时间。系统层优化技巧包含对这两种算子的优化,同时还会考虑安排更高效的大言语模型解码方式。此外,在在线服务的场景中,请求平时来自多个用户。因此,除了前述优化之外,在线服务还面临与异步请求相关的内存、批处理和调度方面的挑战。总的来说,本综述将系统层优化技巧分为高效的推理引擎(Inference Engine)和服务系统(Serving System)。

2.3.1 推理引擎

图和算子优化(Graph and Operator Optimization)是高效推理引擎技巧中重要的一类方法,其中,算子优化还进一步包含对注意力算子和线性算子的优化。无问芯穹于2023年11月发布的任务FlashDecoding++[231](已被MLSys2024录用),通过对注意力和线性算子的针对性优化和估计图层面的深度算子融合技巧,显著提高了大言语模型推理作用,在NVIDIA和AMD GPU上,吞吐率相较HuggingFace提升分别达到4.86和4.35倍。

万字综述大模型高效推理:无问芯穹与清华、上交最新联合研讨全面解析大模型推理优化

                               图注:高效推理引擎畛域研讨总结

猜测解码(Speculative Decoding)是一类通过并行解码来加速大模型解码过程的技巧,其核心思想是使用一个小模型来预测未来的若干个词块,再用大模型并行地验证这些词块是否准确。具体来说,猜测解码可以大致分为两个阶段:猜测阶段验证阶段

猜测阶段,对于当前的输入文本,猜测解码方法首先利用一个“便宜”的草稿模型(Draft Model)生成连续的若干个草稿词块(Draft Token),值得注意的是,该草稿模型往往具有相比于大言语模型小得多的参数量和估计量,因此这一过程带来的开消非常小。

验证阶段,猜测编码使用大言语模型对草稿词块进行并行验证,并接收通过验证的草稿词块作为解码结果。猜测编码的加速效果与草稿模型的预测准确率和验证接收方式有关,现有大多研讨任务关注于安排更好的草稿模型,或安排更有效的验证接收方式。下表对比了典型的猜测解码算法。

万字综述大模型高效推理:无问芯穹与清华、上交最新联合研讨全面解析大模型推理优化

                           图注:典型猜测解码算法比较

2.3.2 服务系统

服务系统的优化旨在提升系统处理异步请求的作用。这类优化技巧主要包括:内存管理(Memory Management)、连续批处理(Continuous Batching )、调度策略(Scheduling Strategy)和分布式系统( Distributed Systems)。此外,本文还比较了市面上常见的开源推理框架的推理延时和系统吞吐,如下表所示。

万字综述大模型高效推理:无问芯穹与清华、上交最新联合研讨全面解析大模型推理优化

                                     图注:高效服务系统畛域研讨总结

万字综述大模型高效推理:无问芯穹与清华、上交最新联合研讨全面解析大模型推理优化

                            图注:开源推理框架比较

2.3.3 知识、建议和未来方向

系统层优化技巧在不降低准确性的情况下提高了推理作用,因此在大言语模型的时间部署中非常普遍。在最近的研讨中,算子优化已经与实际的服务场景密切结合,例如,RadixAttention[50]专门被安排用于前缀缓存,而tree attention技巧[225]用于加速猜测解码的验证。应用和场景的更迭将继续为算子的发展提出新的要求和挑战。

三、未来研讨展望

本文进一步总结了未来的四个关键应用场景,并讨论了高效性研讨在这些场景中的重要性:

能体和多模型框架。在最近的研讨中,大言语模型智能体和多模型协同框架受到了许多关注,这类技巧可以提升大言语模型的应用能力,使得模型能更好地服务于人类。然而模型的数量增多,以及输入到模型中的指令变长,都会使得智能体或框架系统的推理作用变低。因此需要面向这些框架和场景进行大模型的推理作用优化。

长文本场景。随着输入模型文本变得越来越长,大言语模型的作用优化需求变得愈发提升。目前在数据层、模型层和系统层均有相关的技巧来优化长文本场景下大言语模型的推理作用,其中安排Transformer的替代新架构受到了许多关注,然而这类架构还未被充分探索,其是否能匹敌传统的Transformer模型仍未清楚。

边缘端部署。最近,许多研讨任务开始关注于将大言语模型部署到边缘设备上,例如移动手机。一类任务致力于安排将大模型变小,通过直接训练小模型或模型收缩等途径达到该目的;另一类任务聚焦于系统层的优化,通过算子融合、内存管理等技巧,直接将70亿参数规模的大模型成功部署到移动手机上。

安全-作用协同优化。除了任务精度和推理作用外,大言语模型的安全性也是一个需要被考量的指标。当前的高效性研讨均未考虑优化技巧对模型安全性的影响。若这些优化技巧对模型的安全性产生了负面影响,一个可能的研讨方向就是安排新的优化方法,或改进已有的方法,使得模型的安全性和作用能一同被考量。

如果你对文章感兴趣,可以联系学术作者进一步讨论:[email protected]

给TA打赏
共{{data.count}}人
人已打赏
理论

「AI+物理先验常识」,浙大、中国科学院通用蛋白质-配体相互作用评分格式登Nature子刊

2024-6-13 15:58:00

理论

有望解决一个千禧年大奖难题,这个20多年前的猜测终于得到说明

2024-6-16 18:23:00

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
今日签到
搜索