DevOps 的生成式人工智能:一個現(xiàn)實的視角
生成式 AI 使 DevOps 團隊能夠消除乏味的重復(fù)、加強自動化并將復(fù)雜的工作流程壓縮為簡單的對話操作。
生成式 AI 的概念描述了機器學習算法,這些算法可以從最少的人工輸入中創(chuàng)建新內(nèi)容。該領(lǐng)域在過去幾年發(fā)展迅速,文本作者工具 ChatGPT和逼真圖像創(chuàng)建器 DALL-E2等項目引起了主流關(guān)注。
不過,生成式 AI 不僅僅適用于內(nèi)容創(chuàng)作者。它還準備轉(zhuǎn)變軟件工程和 DevOps 領(lǐng)域的技術(shù)工作。 例如,備受爭議的“AI 結(jié)對程序員”GitHub Copilot 已經(jīng)在促使人們重新考慮代碼的編寫方式,但協(xié)作 AI 的潛力在 DevOps 領(lǐng)域仍未得到充分開發(fā)。
在本文中,我們將展望一個未來,在這個未來,生成式AI能夠使 DevOps 團隊消除乏味的重復(fù),加強他們的自動化,并將復(fù)雜的工作流程壓縮為簡單的對話操作。但在此之前,讓我們深入探討生成式 AI 可以改進的 DevOps 問題。
DevOps 有什么問題?
DevOps 遠未解決。盡管 DevOps 思想的采用逐年快速增長,但該過程仍然依賴于許多工具、有限的人才庫和僅部分自動化的重復(fù)性任務(wù)。
DevOps工程師可能會將太多時間花在不會貢獻顯著業(yè)務(wù)價值的瑣碎工作上,例如批準部署、檢查環(huán)境狀態(tài)和構(gòu)建基本配置文件。盡管不可避免,但這些工作是雜務(wù),不會直接對最終產(chǎn)品做出貢獻。它們也是生成 AI 處理的絕佳候選者,ChatGPT 和 Copilot(或構(gòu)建 Copilot 的 OpenAI Codex)都可能減輕一些壓力:
- 它們可以填充通用配置文件和模板,因此工程師不必這樣做。
- 他們通過建議上下文相關(guān)的片段來幫助團隊成員獲得新技能。這會在需要時提供幫助,從而減少技能提升過程中的學習曲線。
- 它們減少了構(gòu)建新資產(chǎn)所需的時間并提高了它們的一致性,從而有助于提高可維護性。
然而,現(xiàn)有系統(tǒng)受限于它們對內(nèi)容生成的狹隘關(guān)注。如果 DevOps 助手還提供基于意圖和基于操作的體驗來觸發(fā)工作流程步驟并應(yīng)用狀態(tài)更改,那么它們將更加強大。例如,想象一下將 Copilot 的代碼作者身份與雙向?qū)υ捊缑婧喜r的體驗:
- 您可以要求助手按需啟動流程,然后在需要時提示您提供輸入。
- 開發(fā)人員可以 自助訪問潛在的敏感任務(wù),例如請求部署到生產(chǎn)環(huán)境。人工智能將代表他們安全地執(zhí)行操作,最大限度地降低錯誤風險,并在開發(fā)人員和基礎(chǔ)設(shè)施之間建立安全屏障。人工智能助手還可以在提交程序之前請求相關(guān)團隊成員進行審查,以確保每個人都了解平臺的變化。
- AI 可以在監(jiān)控指標發(fā)生變化時實時提醒您。例如,當部署失敗、檢測到安全漏洞或性能偏離基線時,您會收到一條消息,可以選擇立即采取行動。
重要的是,這些能力并沒有取代人類或從根本上改變他們的角色。這種形式的 AI 通過處理平凡且始終如一地執(zhí)行安全機制來增強工程能力。它解放了 DevOps 團隊,使其能夠在更短的時間內(nèi)完成更有意義的工作。
DevOps 與生成 AI 的未來
生成式 AI 具有重新定義 DevOps 工作方式的巨大潛力。以下是它將主導的三個特定領(lǐng)域。
1.自動故障檢測,建議補救措施
對于開發(fā)人員和運維人員來說,失敗是一個老生常談的問題。它們是不可預(yù)測的中斷,會強制立即進行上下文切換以優(yōu)先修復(fù)。不幸的是,這會影響生產(chǎn)力,延緩發(fā)布進度,并在補救工作未按計劃進行時導致挫敗感。
人工智能代理可以檢測故障并調(diào)查其原因。此外,他們可以將他們的分析與生成能力和對過去失敗的了解相結(jié)合,以建議在顯示警報的上下文中立即采取行動。
考慮一個簡單的 Kubernetes示例:助手注意到生產(chǎn)中斷;意識到 Pod 由于資源限制已被驅(qū)逐;并提供操作按鈕來重啟 Pod、擴展集群或終止其他廢棄的資源。團隊只需單擊一下即可解決事件,而無需花費幾分鐘手動進行故障排除。
2. 按需代碼/配置生成和部署
生成式 AI 編寫代碼的能力提供了難以置信的價值。分層對話意圖使其更易于訪問和方便。例如,您可以通過在聊天界面中寫入一條簡短消息來要求 AI 代理設(shè)置新項目、配置文件或 Terraform 狀態(tài)定義。代理可以提示您為任何模板占位符提供值,然后通知適當?shù)睦嫦嚓P(guān)者內(nèi)容已準備好進行審查。
獲得批準后,AI 可以通知原始開發(fā)人員,將項目啟動到實時環(huán)境中,并提供查看部署的鏈接并開始對其進行迭代。這將幾個不同的序列壓縮為開發(fā)人員的一個自助服務(wù)操作。運營團隊無需事先手動配置項目資源,讓他們可以專注于自己的任務(wù)。
3. 提示驅(qū)動的按需工作流管理
下一代 AI 代理超越了簡單的文本和照片創(chuàng)建,支持完全自動化的提示驅(qū)動工作流。例如,雙向 AI 讓您可以使用自然語言啟動流程,例如“重啟生產(chǎn)集群”以與您的 AWS ECS 資源進行交互。無需告知 AI 您正在使用哪個平臺或它應(yīng)該運行的具體步驟。例如,在 Kubiya.ai,我們已經(jīng)充分利用了這一點,現(xiàn)在為我們的客戶提供了通過自然語言提示創(chuàng)建任何 DevOps 工作流程的選項。
這些代理的語言模型是根據(jù)您的云服務(wù)的詞匯進行訓練的。當您要求重新啟動集群時,代理會使用其領(lǐng)域知識來解釋您的話。例如,它知道您的“生產(chǎn)”集群在 AWS 上運行,并且它必須檢索集群的詳細信息,然后進行正確的API 調(diào)用以重新啟動它,例如ecs.UpdateService等。您的話直接轉(zhuǎn)化為功能齊全的工作流.
此外,雙向方面意味著 AI 代理會隨著時間的推移變得更加強大。一旦你開始運行你的工作流,代理也會針對它們進行訓練,允許它為未來的場景建議類似的過程并描述每個工作流的實際作用。
這種方法可以讓開發(fā)人員在不涉及運維團隊的情況下做更多事情。AI 代理在人類和基礎(chǔ)設(shè)施平臺之間進行調(diào)解,允許任何人在不影響安全性的情況下一致地啟動工作流。作為工作流程的一部分,代理可以在相關(guān)點提示輸入,例如當您要求它“添加新虛擬機”時,要求您選擇云帳戶、數(shù)據(jù)中心區(qū)域、機器類型和定價層。
要點:生成式 AI 安全地加速您的工作
生成式 AI 的 DevOps 用例可加速主要任務(wù),同時提高可訪問性、安全性和可靠性。此外,它們使開發(fā)人員能夠?qū)W⒂谕七M新功能,而不是重復(fù)運行熟悉的流程并等待結(jié)果。
智能程度足以維持對話的座席就像您團隊中的另一名成員一樣。他們?yōu)榭赡懿皇煜つ承┕ぞ叩拈_發(fā)人員提供支持,同時確保完全遵守組織的安全性和合規(guī)性政策。這些安全措施保護代碼庫,讓開發(fā)人員相信他們可以啟動任何工作流程。此外,減少與 DevOps 團隊的交互次數(shù)可以提高效率,收緊反饋循環(huán)。
生成式 AI 也不是靜態(tài)體驗。隨著時間的推移,它會變得更好,因為它會分析交互以更準確地確定用戶意圖。例如,如果建議在您第一次鍵入查詢時不合適,您可以期望隨著您和其他人重復(fù)請求并采取不同的行動方案,它們會得到改進。
人工智能代理也支持缺失的人類知識。它們讓開發(fā)人員即使在不熟悉所涉及的某些步驟、工具或術(shù)語時也可以啟動流程。人工智能可以填補諸如“哪些實例失敗了?”等問題的空白。計算出您指的是生產(chǎn)集群中的 Kubernetes Pod。這些能力讓人工智能有效地補充了人類的能力,使其成為團隊支持性提示的來源。
投資回報率對于生成人工智能至關(guān)重要
經(jīng)常使用人工智能的組織可能會取得最好的結(jié)果,因為他們的代理人會更善于預(yù)測他們的需求。但是,在將 AI 添加到工作流程中時不要過度使用也很重要。最成功的采用 將專注于解決真正的業(yè)務(wù)需求。首先,評估您的流程以確定開發(fā)和運營團隊之間的瓶頸,然后使用 AI 瞄準那些重復(fù)的用例。
您選擇的解決方案應(yīng)該可以幫助您達到 KPI,例如關(guān)閉更多問題或更快地解決事件。否則,AI 代理將得不到充分利用,阻礙您的自然操作程序。
概括
生成式 AI 是當今成熟最快的技術(shù)之一。因此,隨著越來越多的研究人員、消費者和組織開始探索其功能, ChatGPT 獲得了一定 程度的傳播。DALL-E2 也取得了同樣 驚人的成果,超過 120 萬開發(fā)人員在其前 12 個月內(nèi)使用了 GitHub Copilot。
這三種技術(shù)都展示了明顯的革命性潛力,但從長遠來看,DevOps 的混合且高度復(fù)雜的工作流可能受益最大。例如,DevOps 將代碼和配置等新資產(chǎn)的創(chuàng)建與部署批準和審查請求等順序流程相結(jié)合。
與一些局外人的預(yù)測相反,用于 DevOps 的生成式 AI 將超越普通文件片段的簡單模板,以提供完整的工作流程自動化。使用簡單的會話短語,您可以指示您的代理代表您采取特定操作,從配置新的云資源到檢查生產(chǎn)性能。因此,代理將提供實時雙向反饋循環(huán),以改善協(xié)作、提高生產(chǎn)力并減輕開發(fā)人員面臨的日常壓力。