ChatGPT จะฆ่าทีม DevOps หรือไม่
ChatGPT กำลังทำลายอินเทอร์เน็ต นับตั้งแต่เปิดตัว ก็ได้รับความนิยมหลายพันล้านครั้ง และสร้างประวัติศาสตร์เป็นแพลตฟอร์มที่เติบโตเร็วที่สุด นักวิเคราะห์ของ UBS กล่าวว่า “ใน 20 ปีหลังจากพื้นที่อินเทอร์เน็ต เราไม่สามารถเรียกคืนทางลาดที่เร็วขึ้นในแอพอินเทอร์เน็ตสำหรับผู้บริโภคได้” จนถึงปีที่แล้ว Gartner Hype Cycle 2022 อ้างว่าโมเดลพื้นฐานที่อิงตามโมเดลสถาปัตยกรรมหม้อแปลงเช่น LLM จะใช้เวลาอย่างน้อย 5-10 ปีในการพัฒนาและนำไปใช้ แต่ ChatGPT ทำลายคำตัดสินของพวกเขา
ความสามารถของ AI Chatbot ในการสร้างบทความ เรียงความ สคริปต์ และบทกวี และเลียนแบบพฤติกรรมของมนุษย์ในขณะที่ตอบคำถามทำให้เป็นที่นิยมในหมู่ผู้ใช้ ในบล็อกวันนี้ เรามาประเมินกันว่า ChatGPT จะมาแทนที่บทบาทของวิศวกร DevOps ได้ในเร็วๆ นี้หรือไม่
ChatGPT คืออะไร?
ChatGPT (Chat Generative Pre-trained Transformer) เป็นแชทบอทที่พัฒนาโดย OpenAI และเปิดตัวในเดือนพฤศจิกายน 2022 เป็นโมเดลภาษาที่ได้รับการฝึกฝนบนคลังข้อมูลข้อความขนาดใหญ่ ทำให้สามารถสร้างการตอบสนองที่เหมือนมนุษย์ต่อข้อความแจ้งประเภทต่างๆ ChatGPT มุ่งตอบสนองต่อการป้อนข้อมูลด้วยข้อความในลักษณะที่จำลองการสนทนากับบุคคลที่มีความรู้และเป็นประโยชน์ โมเดลได้รับการฝึกอบรมในหัวข้อที่หลากหลายและสามารถตอบคำถามและสร้างข้อความในหลายๆ หัวข้อ รวมถึงประวัติศาสตร์ วิทยาศาสตร์ เหตุการณ์ปัจจุบัน และอื่นๆ
มันทำงานอย่างไร?
ChatGPT เป็นโมเดลการเรียนรู้เชิงลึกที่อิงจากสถาปัตยกรรมทรานส์ฟอร์มเมอร์ส มันใช้การผสมผสานระหว่างกลไกการให้ความสนใจกับตนเองและเลเยอร์ที่เชื่อมต่ออย่างสมบูรณ์เพื่อสร้างข้อความ นี่คือภาพรวมระดับสูงของวิธีการทำงานของ ChatGPT
โดยสรุป ChatGPT ได้รับการฝึกอบรมเกี่ยวกับคลังข้อมูลข้อความขนาดใหญ่ ทำให้สามารถเรียนรู้รูปแบบและความสัมพันธ์ระหว่างคำและวลีได้ สิ่งนี้ช่วยให้สามารถสร้างข้อความที่เหมือนมนุษย์ซึ่งสอดคล้องกันและเกี่ยวข้องกับอินพุตที่ให้ไว้
การทดลองของฉันกับ ChatGPT
เรามาเริ่มกันที่การทดสอบ ChatGPT ของเราและดูว่าสิ่งนี้จะเปลี่ยนบทบาทของ DevOps Engineer ได้อย่างไร ในการเริ่มต้น เรามาทำให้มันเรียบง่ายและค่อยๆ เพิ่มความซับซ้อน
ใช้กรณีที่ 1:
คำอธิบาย: ChatGPT กำหนด Terraform เช่นเดียวกับมนุษย์ทั่วไป ซึ่งครอบคลุมคำจำกัดความ ที่มา รายละเอียดบริษัท การใช้งาน ฯลฯ
คำอธิบาย:เมื่อฉันเพิ่มรายละเอียดเพิ่มเติมบางอย่างในคำถามก่อนหน้านี้ เช่นเดียวกับมนุษย์ทั่วไป ChatGPT ได้แชร์รายละเอียดเกี่ยวกับคำถามนั้นและต่อท้ายคำตอบด้วยรายละเอียดเกี่ยวกับ 'ฉันจะใช้ Terraform ในงานของฉันได้อย่างไร' อย่างมีประสิทธิภาพ
มาดูบางสิ่งในโลกแห่งความเป็นจริงและขอให้ ChatGPT สร้างโค้ดบางอย่างที่เราเห็นในโครงการประจำวันของเรา:
ใช้กรณีที่ 2:
คำอธิบาย:ในโค้ดนี้ เรากำลังใช้ทรัพยากร “aws_iam_user” เพื่อสร้างผู้ใช้ IAM 10 รายบน AWS แอตทริบิวต์ count ระบุจำนวนผู้ใช้ที่จะสร้าง และเราได้ตั้งค่าเป็น 10 นอกจากนี้ เรายังระบุชื่อสำหรับผู้ใช้แต่ละราย โดยใช้ดัชนีของลูปเพื่อสร้างชื่อเฉพาะ (user1, user2 เป็นต้น) เราได้ระบุเส้นทางเพื่อจัดระเบียบผู้ใช้ในโฟลเดอร์เฉพาะ (/my-users/)
ความท้าทาย:
- ลองนึกถึงสถานการณ์ในโลกแห่งความเป็นจริง เราแทบจะไม่เห็นชื่อเช่น user1–2
- ผู้ใช้ IAM ไม่มีสิทธิ์ใดๆ ดังนั้น เราจำเป็นต้องสร้างและแนบนโยบาย
- ไม่ถือว่าปฏิบัติตามข้อกำหนดด้านความปลอดภัย เช่น สิทธิ์ขั้นต่ำ การเข้าถึงแบบจำกัด เป็นต้น
คำอธิบาย:
รหัสนี้กำหนดตัวแปรรายการชื่อ iam_users ด้วยชื่อผู้ใช้ IAM สองชื่อคือ “Amit” และ “Ajit” จากนั้น จะกำหนดเอกสารนโยบาย IAM โดยใช้แหล่งข้อมูล aws_iam_policy_document ซึ่งทำให้เราสามารถกำหนดเอกสารนโยบาย IAM เป็นรหัสได้ เอกสารนโยบายอนุญาตให้ดำเนินการ ec2:Describe* สำหรับทรัพยากรทั้งหมด ต่อไป เราสร้างนโยบายที่จัดการโดย IAM โดยใช้ทรัพยากร aws_iam_policy ซึ่งใช้เอกสารนโยบายที่สร้างด้วย aws_iam_policy_document เป็นนโยบาย
จากนั้น เราสร้างผู้ใช้ IAM โดยใช้ทรัพยากร aws_iam_user โดยตั้งค่าพารามิเตอร์ count เป็นความยาวของตัวแปร iam_users สิ่งนี้จะสร้างผู้ใช้สองคนที่มีชื่อ "Amit" และ "Ajit" ตามที่ระบุไว้ในตัวแปร iam_users
สุดท้าย เราใช้ทรัพยากร aws_iam_user_policy_attachment เพื่อแนบนโยบายที่จัดการโดย IAM ที่สร้างขึ้นก่อนหน้านี้กับผู้ใช้สองคนโดยใช้พารามิเตอร์ count ที่ตั้งค่าเป็นความยาวของตัวแปร iam_users นี้จะแนบนโยบายกับทั้ง "Amit" และ "Ajit"
เราทำให้สคริปต์ครบกำหนดโดยมีคำแนะนำเฉพาะสำหรับ ChatGPT โดยที่โค้ดนั้นไม่สามารถใช้งานได้ในทุกสภาพแวดล้อม
จะเพิ่มผลลัพธ์ได้อย่างไร?
- ระบุเวอร์ชัน:หากคุณต้องการให้ ChatGPT สร้างการกำหนดค่าตามรูปแบบพื้นผิว (ตัวอย่าง) ที่อาจมีหลายเวอร์ชัน เราพบว่าค่าเริ่มต้นไม่จำเป็นต้องใช้เวอร์ชันล่าสุดเสมอไป การรวมเวอร์ชันของการกำหนดค่าที่คุณต้องการในคำขอจะเป็นประโยชน์ เพื่อให้ได้ผลลัพธ์ที่แม่นยำยิ่งขึ้น
- เชื่อถือแต่ตรวจสอบได้:ตามคำพูดที่ว่า “เชื่อถือแต่ตรวจสอบได้” คุณจะวางใจได้ว่าผลลัพธ์ที่ ChatGPT มอบให้คุณนั้นดีและปราศจากข้อผิดพลาด แต่เช่นเดียวกับโค้ดใดๆ ที่ได้รับทางออนไลน์ คุณควรอ่านด้วยตัวเองเสมอและตรวจสอบให้แน่ใจว่าคุณเข้าใจก่อนที่จะเพิ่มลงในโปรเจ็กต์ของคุณ อย่าคิดว่าโค้ดที่สร้างโดย ChatGPT ไม่ว่าจะน่าทึ่งหรือยอดเยี่ยมเพียงใด นั้นพร้อมสำหรับการผลิตทันทีที่แกะกล่อง
- สามารถเป็นนักบินร่วมของคุณได้: ChatGPT สามารถเป็นนักบินร่วมของคุณได้ แต่คุณไม่สามารถให้ที่นั่งคนขับแก่นักบินได้ มันสามารถช่วยคุณในการเขียนโปรแกรมคู่และเป็นผู้ตรวจสอบคนแรกของคุณก่อนที่คุณจะส่งรหัสของคุณไปยังต้นน้ำ
- ยกตัวอย่าง:เช่นเดียวกับกรณีข้างต้น เราได้ให้รายละเอียดเฉพาะกับ ChatGPT การให้ข้อมูลเพิ่มเติมเมื่อถาม ChatGPT บางอย่างจะเป็นประโยชน์ นอกจากนี้ยังสามารถทำได้ในรูปแบบของการยกตัวอย่าง
- สามารถช่วยปรับปรุงประสิทธิภาพ:เราได้เห็นแล้วว่าการสร้างโค้ด Terraform สำหรับการจัดเตรียมทรัพยากรบน AWS นั้นง่ายเพียงใด สิ่งนี้สามารถช่วยให้วิศวกรมีประสิทธิผลและปรับปรุงประสิทธิภาพได้อย่างแน่นอน
ChatGPT พัฒนาขึ้นเรื่อยๆ แต่ก็ยังห่างไกลจากความสมบูรณ์แบบ แต่มันอยู่ที่นี่ นี่เป็นเพียงจุดเริ่มต้น ยังมีอีกมากในอนาคต ในสถานะปัจจุบัน สามารถช่วยวิศวกรเพิ่มผลผลิตและช่วยปลดบล็อกตัวเองในแบบที่อาจต้องใช้เวลาหลายวันหรือความช่วยเหลือจากหลายคนก่อนหน้านี้ แต่อย่าลืมว่าพวกเขาไม่ได้มาแทนที่ความเชี่ยวชาญและการตัดสินของมนุษย์ ChatGPT เป็นเหมือนเด็กฉลาดที่มีความรู้ แต่ยังมีเส้นทางอีกยาวไกลในการแสวงหาความรู้ และยังต้องการการพัฒนาในหัวข้อต่างๆ เช่น การละเมิดลิขสิทธิ์ การปฏิบัติตามข้อกำหนด และความปลอดภัย





































![รายการที่เชื่อมโยงคืออะไร? [ส่วนที่ 1]](https://post.nghiatu.com/assets/images/m/max/724/1*Xokk6XOjWyIGCBujkJsCzQ.jpeg)