生成式人工智能
图片由Midjourney生成
近年来,由于算法和计算机算力的高速发展,人工智能(AI)从计算机领域走向了各行各业。其解决问题的能力已经从最初的专注于某个细分领域(如下围棋的AlphaGo),发展到如今能够给各种学科提供专业建议的大语言模型(LLM)。人工智能正在逐步学习人类的认知、思考能力,并最终向通用型人工智能(AGI)发展。
生成式人工智能(GAI)是该领域的一个重要分支,是一类专注于生成新内容的人工智能技术。这种技术的核心在于它不仅仅是理解和分析数据,而是能够基于已有的数据模式和结构创造出全新的内容。其中最具代表性的就是以ChatGPT为首的大语言模型应用,在不少问题的基准测试上已经达到人类水平,不仅改变了许多行业的底层逻辑,还带来了工作效率的爆炸式增长。
目前,关于如何将生成式人工智能结合到生物工艺开发的工作流程中,业内还处在初级阶段,迪必尔也在不断突破。我们的解决方案是基于自研D²MS(设备及数据管理系统),借助生成式人工智能(GAI),进行生物工艺开发的智能化探索。现将方案分享给大家,欢迎交流讨论。
UDF用于生物过程精准控制
UDF,即用户自定义函数(User-defined Function),是生物反应器(迪必尔生物)配套软件D²MS的一个特色功能。通过UDF功能,用户可以设置自己的控制逻辑,通过设定条件与计时器,实现更精细的生物过程控制。
为了降低使用门槛,赋予用户更高的自由度,UDF选择Python作为开发语言。Python语言灵活且易于学习,特别适合非计算机科学背景的人员进行交叉学科研究。
但是,即便如此,从零开始手动编写UDF代码仍然是一项繁琐且容易出错的工作。
利用生成式人工智能自动编写UDF代码
我们利用生成式人工智能技术,开发了一套创新的解决方案。
这套方案可以让你在短短几秒钟内,生成可直接部署的Python UDF。我们专门为ChatGPT(或Claude)设计了一套提示词,使用的时只需把提示语复制粘贴到AI对话框里,然后把包括输入、输出、控制逻辑等工艺控制关键需求写清楚,几秒钟之后,AI就会根据您的需求,自动生成一个功能齐全的Python UDF。生成的UDF可以直接放到D²MS里使用,大大节省了编写代码的时间。
步骤如下:
方案1:使用您熟悉的生成式AI助手
(1)首先,复制下方双引号中的提示词,并粘贴到您常用的生成式人工智能助手对话框中,如ChatGPT或Claude。
您会得到类似于以下内容的回复(以ChatGPT为例):
(2)根据提示向AI描述想要实现的生物工艺控制需求,包括输入输出参数、控制逻辑等。注意尽量用清晰、简洁的语言,并且包含尽可能多的细节,这样有助于AI生成准确的UDF代码。
(3)将生成的代码复制到D²MS中,并完成参数配对等设置。(如图)
(4)在实际应用中,需要对生成的UDF进行全面的测试和观察,以验证其运行结果是否符合预期。测试过程中,如果发现任何问题或需要改进的地方,则可以手动对Python代码作小幅修改,或者向AI提供更加详细的需求描述和反馈信息。
方案2:使用D²MS内置的AI助手
为了更好的把AI集成到工艺开发的工作流程中,最新版本的 D²MS 已经内置了基于OpenAI API的AI助手,为您提供更便捷的用户体验,当您需要AI协助编写代码时,只需单击“AI Help”按钮,即可调出对话框。
(1)首先,鼠标右键点击 “AI Help”,点击“Setup”进行必要的设置。
如下图所示,其中,API密匙可以从您的ChatGPT账户中查询,此外,还需要把提示词保存到文本文件中,并指定保存位置。
(2)随后,向AI助手清晰地描述你的具体需求和预期功能。在描述时,要尽可能详细和全面,包括输入输出、控制逻辑、性能指标等关键信息。AI助手会自动生成与需求匹配的Python代码。最后,检查代码的逻辑,确保其准确地实现了预期功能。
案例分析
接下来,我们通过三个案例,来演示生成式人工智能在UDF代码生成方面的能力。以ChatGPT为例,由于ChatGPT的训练语料库中英语占比较大,为了获得更好的效果,我们建议使用英语来描述需求。不过,对于不复杂的场景,我们也可以使用中文。
案例1:开关控制
根据我们的测试,ChatGPT在处理简单的逻辑时正确率非常高,例如针对pH值,基于开关控制的方式控制碱液补加,从而维持pH值在6.5:
“Realize an on/off control for pH. When the pH falls below 6.5, set the base feed rate to 10 mL/min, otherwise set to 0 mL/min.”
输入上述需求,AI即可生成所需代码:
案例2:复现PID控制
尽管我们的反应器已经为大部分参数预设了PID控制器,但是如果您想自定义PID算法,AI也帮助生成代码,满足定制化需求。
下面这段话描述了用PID控制器同时控制搅拌和通气速率,维持溶氧值在40%:
“Realize a PID controller for Dissolved Oxygen (DO), maintaining the DO value at a setpoint of 40% by setting the agitation speed and aeration rate. The output is linear to the agitation speed and aeration rate. The agitation speed ranges from 100-1000 while aeration rate ranges from 0-3 L/min.”
案例3:多个判断条件与计时器
对于较为复杂的逻辑,ChatGPT也可以在第一次尝试的时候就生成高质量代码。
如下述逻辑,在发酵24小时后,一旦pH高于7.1,则以10 mL/min的速率补加葡萄糖30秒,随后停止pH监测15分钟,以防重复补加:
“Obtain the pH and elapsed fermentation time (in hours) from the function arguments, and returns feed rate. After 24 hours of fermentation, keep monitoring the pH value. If the pH rises above 7.1, feed glucose at a rate of 10 mL/min for 30 seconds. After 30 seconds, turn off the glucose feed and disable pH monitoring for 15 minutes. After 15 minutes, repeat the previous steps.”
尽管生成式人工智能是一个非常强大的工具,但是AI也难免犯错。在将生成的代码部署到生产环境之前,务必要进行全面、细致的测试,确保代码逻辑符合您的意图。
随着生成式人工智能技术的飞速发展,智能生物反应器的定义也在不断演进。过去,我们将允许用户自我定制反应器的功能作为智能反应器的标志,如今,借助生成式人工智能的力量,D²MS软件已经能够根据用户的需求自动生成控制代码。设备的"智能"不再局限于灵活的可定制性,而是具备自我学习、自我完善的能力。在生成式人工智能的赋能下,人人都可以成为开发者,编程不再是制约生物工艺创新的瓶颈,相反,它将成为推动这一领域不断前进的重要引擎。未来,人工智能技术必将与生物反应器技术深度融合,为这一领域带来更多突破性的创新。