生成式人工智能
圖片由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軟件已經能夠根據用戶的需求自動生成控制代碼。設備的"智能"不再局限于靈活的可定制性,而是具備自我學習、自我完善的能力。在生成式人工智能的賦能下,人人都可以成為開發者,編程不再是制約生物工藝創新的瓶頸,相反,它將成為推動這一領域不斷前進的重要引擎。未來,人工智能技術必將與生物反應器技術深度融合,為這一領域帶來更多突破性的創新。