天天看點

Science | 化學合成文獻數字化自動執行通用系統

今天給大家介紹格拉斯哥大學化學系S. Hessam M. Mehr等人在Science上發表的文章“A universal system for digitization and automatic execution of the chemical synthesis literature”。進行已知反應的典型化學家将從發現已發表論文中描述的方法開始。Mehr等報告了一個軟體平台,該平台使用自然語言處理将有機化學文獻直接翻譯為可編輯的代碼,然後可以對其進行編譯以驅動化合物在實驗室中的自動合成。該合成程式旨在普遍适用于以批處理反應體系結構運作的機器人系統。已證明了用于合成止痛藥以及常見氧化劑和氟化劑的完整工藝。

Science | 化學合成文獻數字化自動執行通用系統

合成化學仍然是勞動密集型的,一些協定存在錯誤或模糊性。近來,分子的機器人合成發展迅速,但新的發展僅限于特定的反應類型,缺乏一種通用的化學合成文獻自動編碼和驗證的方法,這意味着自動化目前隻是将精力從手工勞動轉移到程式設計上。衆多的機器人解決方案進一步加重了負擔,這些解決方案缺乏通用的标準架構。我們需要的是一個抽象的,不僅能實作文獻,還能适應新的合成方法,按照一個标準,保證硬體系統之間的互操作性。目前,新的化合物合成的記錄和後續報告的标準差異很大,程式往往隻能以不完整和含糊不清的散文形式提供,依靠專家來填補任何空白。這意味着許多反應資料庫中存儲的資料品質差異很大,給重複性帶來了許多問題,同時也阻礙了可靠的數字方法的發展,無法預測反應性、新結構和功能。這些限制也阻礙了化學的實際數字化,即開發能夠運作反應和制造分子的自動化系統,因為缺乏将反應依賴性與标準硬體控制和規範聯系起來的标準,以及記錄合成程式的機器可讀标準。

阻礙化學數字化的一個關鍵因素是缺乏一種通用的化學程式設計語言,盡管最近化學自動化平台大量湧現。例如,研究人員最近開發了Chemputer,這是一個可程式設計子產品系統,其硬體能夠執行化學合成的基本過程。Chemputer能夠實作批量合成程式的自動化,但僅限于執行一組專門的低級硬體指令,而且沒有提供統一的開發環境或通用的硬體接口或規範,使代碼能夠在其他系統上運作。是以,以前的自動合成需要将合成程式手動翻譯成這些低級指令,既費力又容易出錯,這就排除了向其他平台移植的可能性,而且需要程式設計的專業技術以及系統的機器人操作的詳細知識。這樣的實作展示了硬體的能力,但并不是一種合适或可持續的化學合成自動化方式。缺少一種通用的化學程式設計語言,遠非僅限于Chemputer,而是有可能破壞新生的自動合成生态系統的可行性。來自不同公司或研究小組的自動化平台都有定制的指令集,它們之間或與文獻之間沒有明顯的語義聯系。這種斷裂的聯系阻礙了化學的數字化。龐大的合成知識庫如今無法由機器人直接執行。為了解決這個問題,研究人員設想一個新的架構必須依賴于硬體獨立的指令,用标準的化學語言來表示,可以表達幾乎任何分子的合成(Fig. 1A)。

Science | 化學合成文獻數字化自動執行通用系統

無論是由化學家手動進行,還是由機器人自動進行,批量合成程式的執行都遵循着一套固定的步驟,傳統工作流程中的手動操作與數字工作流程中的自動操作有相似之處(Fig. 1B)。

Science | 化學合成文獻數字化自動執行通用系統

比較兩種工作流程,可以發現實作數字工作流程的必要步驟。這些步驟都是在程式中的動作的中間表示上操作或參考。為了使用一個有足夠能力的批量合成機器人來實作化學的普遍數字化,是以研究人員假設機器人的硬體抽象必須通過一個可執行的連接配接到實際合成硬體無關的化學程式設計語言。這種面向特定領域的通用化學标記語言使人們能夠将通常報道的方法指令映射到硬體無關的化學指令。此外,這種語言與實驗室批量合成之間的語義聯系,使實驗室合成程式的機器人執行無需人工調整或修改。是以,指令可以在兩者之間進行翻譯,而不會損失資訊,因為不再需要跨越化學和機器人操作之間的巨大語義鴻溝。

在此,研究人員提出了一種通過使化學文獻直接在自動合成平台上執行來實作化學數字化的系統。為了實作該系統需要一種語言,用這種語言可以通過使用與文獻中類似的詞彙簡潔地表達合成程式,并在任何相容的機器人平台上執行。為此,研究人員設計了一種化學程式設計語言和相關的可視化開發環境,使使用者能夠毫不含糊地對程式進行編碼,并使用标準格式進行交換。研究人員的化學描述語言XDL,通過将合成過程表示為發生在抽象容器中的過程式列,并以無處不在的XML格式為基礎,來實作這一目标。然後,研究人員的化學開發環境檢查這種表示,并确定哪些硬體元件是在虛拟機上執行它所必需的,産生能夠運作該程式的平台規格。給定一個具有所需硬體子產品的機器人平台,符合标準架構,程式的通用XDL描述被編譯成一個特定于平台的可執行檔案,并在目标硬體上運作,以進行自動合成(Fig. 2)。

Science | 化學合成文獻數字化自動執行通用系統

合成程式一旦用研究人員的标準化學程式設計語言寫成,就提供了一種通用的、與硬體無關的化學合成數字化的方法。然而,還必須有一種方法,在不需要程式設計知識或重複勞動的情況下,輕松地将用自然語言編寫的合成程式轉換為代碼,同時利用合成化學家的專業知識。為此,研究人員的系統包括一個化學綜合開發環境(ChemIDE),該環境使用一種名為SynthReader的自然語言處理(NLP)算法友善導入文獻程式。在此背景下,其他小組最近将基于NLP的文本挖掘應用于化學合成文本的非結構化資料,以提取有機和無機反應的合成作用。這一點已認證使用模式比對技術和機器學習得到證明。

盡管這些方法對于挖掘龐大的文獻資料集是有用的,但研究人員需要一個系統能夠輸出一個具有足夠過程細節的機器可讀的過程表示,以便在自動化平台上明确地執行該過程。這不僅僅是簡單的标記文獻程式中發現的化學實體,因為它還需要對整個程式中不同試劑的位置進行結構化聲明,推斷隐含的過程細節,如相分離和回流溫度,以及一個開發環境,讓化學專家可以毫不含糊地編輯輸出。SynthReader通過對文本進行相關實體的标記,将标記的文本轉換為操作清單,然後添加隐含的過程資訊和具體的試劑位置,并以XDL格式輸出過程,其中包含所有必要的資訊,以便在自動化平台上明确地執行過程。研究人員通過實驗證明了這種方法的有效性,利用SynthReader将文獻合成轉換為XDL,并通過執行生成的XDL合成目标分子。

系統的設計與實施

研究人員系統觀察的關鍵是,任何合成步驟都是由一系列相連的過程(添加、加熱、過濾等)組成的。基于這一觀察,研究人員的系統內建了以下元件,以實作從文獻中提取的自動合成。(i)一個标記語言,能夠表示這些提取的化學過程,并将它們組合在一個上下文中,在這個上下文中,它們可以作為一個化學合成來執行;(ii)一個IDE,允許非程式員輕松地編輯這個化學合成的表示;(iii)一個工具,能夠自動地将現有的程式導入IDE,直接從文獻中導入;(iv)一個虛拟機,能夠将這些化學過程轉化為基本操作,可以直接在一個給定的自動化平台上執行。

Science | 化學合成文獻數字化自動執行通用系統

建立XDL标記語言是為了以一種強大的,機器可讀的方式描述化學合成。在XDL中将化學合成表示為一系列離散操作是SynthReader,ChemIDE和虛拟機以及執行該合成所需的實體硬體操作之間的橋梁。

由于大多數合成化學家在程式設計方面沒有經驗,研究人員建立了ChemIDE提供了可視的使用者界面,可以在其中使用自然語言來編輯化學代碼。可以使用SynthReader NLP算法将現有文獻程式導入此環境,然後由使用者檢查和增強,然後再編譯為由虛拟機在特定硬體目标上執行。

XDL的内部基于XML的表示形式将過程資訊從步驟傳播到子步驟。

虛拟機中的多步驟過程将化學合成步驟映射到目标平台内的相關硬體子產品,并遞歸擴充每個步驟,直到将其簡化為硬體可以了解的基本硬體操作為止。

系統的實驗驗證

研究人員已經使用我們的方法在Chemputer上自動執行12個文獻程式,而無需進行任何其他程式設計或硬體更改。為了舉例說明該過程,研究人員将在此處詳細介紹三種化合物的合成:利多卡因,Dess-Martin高碘烷(DMP)和AlkylFluor。利多卡因用作局部麻醉劑,用于治療心律不齊和癫痫。參考的有關利多卡因合成的文獻方法描述了一個簡單的兩步過程,涉及形成α-氯酰胺中間體及其随後與二乙胺的親核取代反應。這些步驟以直接的方式映射到所示的流程圖。研究人員将未經修飾的利多卡因合成程式喂入系統以在Chemputer上運作。

Science | 化學合成文獻數字化自動執行通用系統

總結

總而言之,研究人員為實作合成化學各個方面(從文本到分子)自動化的目标邁出了重要的一步,并引入了允許化學合成數字化的抽象概念。盡管在沒有人工幹預的情況下仍無法使用研究人員的系統轉換所有文獻,但ChemIDE允許使用者通過輕松檢查原始文本并确認翻譯成處理步驟來糾正錯誤。将來,研究人員将使用化學自動校正功能自動執行此驗證步驟。SynthReader的NLP功能可與目前技術水準相媲美,并且由于設計具有确定性,是以可以通過新規則輕松進行擴充。來自分析儀器的實時回報可用于确認過程是否如XDL所述進行,進而使系統具有自适應性和容錯性。此外,可以将IDE與其他NLP引擎或硬體編譯目标接口,進而進一步增加了将研究人員的系統與任何化學機器人和更廣泛的文獻進行接口的可能性。

繼續閱讀