Trong thế giới phát triển phần mềm, việc xem xét và phê duyệt mã là các quy trình quan trọng để đảm bảo chất lượng, tính bảo mật và chức năng của phần mềm đang được phát triển. Tuy nhiên, các nhà quản lý được giao nhiệm vụ giám sát các quy trình quan trọng này thường phải đối mặt với nhiều thách thức, chẳng hạn như sau:
- Thiếu chuyên môn kỹ thuật – Người quản lý có thể không có hiểu biết kỹ thuật sâu về ngôn ngữ lập trình được sử dụng hoặc có thể không tham gia vào lĩnh vực công nghệ phần mềm trong một thời gian dài. Điều này dẫn đến lỗ hổng kiến thức có thể khiến họ khó đánh giá chính xác tác động và tính đúng đắn của những thay đổi mã được đề xuất.
- Hạn chế thời gian – Xem xét và phê duyệt mã có thể là một quá trình tốn thời gian, đặc biệt là trong các dự án lớn hơn hoặc phức tạp hơn. Người quản lý cần cân bằng giữa tính kỹ lưỡng của việc xem xét và áp lực phải đáp ứng các mốc thời gian của dự án.
- Khối lượng yêu cầu thay đổi – Xử lý khối lượng lớn yêu cầu thay đổi là một thách thức chung đối với các nhà quản lý, đặc biệt nếu họ đang giám sát nhiều nhóm và dự án. Tương tự như thách thức về hạn chế về thời gian, người quản lý cần có khả năng xử lý các yêu cầu đó một cách hiệu quả để không cản trở tiến độ dự án.
- Nỗ lực thủ công – Việc đánh giá mã đòi hỏi nỗ lực thủ công của người quản lý và việc thiếu tự động hóa có thể gây khó khăn cho việc mở rộng quy trình.
- Tài liệu – Tài liệu thích hợp về quy trình xem xét và phê duyệt quy tắc rất quan trọng để đảm bảo tính minh bạch và trách nhiệm giải trình.
Với sự gia tăng của trí tuệ nhân tạo sáng tạo (AI), các nhà quản lý hiện có thể khai thác công nghệ biến đổi này và tích hợp nó với bộ công cụ và dịch vụ triển khai AWS để hợp lý hóa quy trình xem xét và phê duyệt theo cách chưa từng có trước đây. Trong bài đăng này, chúng tôi khám phá một giải pháp cung cấp quy trình triển khai từ đầu đến cuối tích hợp kết hợp phân tích và tóm tắt thay đổi tự động cùng với chức năng quy trình phê duyệt. Chúng tôi sử dụng nền tảng Amazon, một dịch vụ được quản lý hoàn toàn giúp cung cấp các mô hình nền tảng (FM) từ các công ty khởi nghiệp AI hàng đầu và Amazon thông qua API, vì vậy, bạn có thể chọn từ nhiều loại FM để tìm ra mô hình phù hợp nhất cho trường hợp sử dụng của mình. Với trải nghiệm Amazon Bedrock serverless, bạn có thể bắt đầu nhanh chóng, tùy chỉnh FM riêng tư bằng dữ liệu của riêng mình, đồng thời tích hợp và triển khai chúng vào ứng dụng của mình bằng các công cụ AWS mà không cần phải quản lý bất kỳ cơ sở hạ tầng nào.
Tổng quan về giải pháp
Sơ đồ sau minh họa kiến trúc giải pháp.
Quy trình làm việc bao gồm các bước sau:
- Nhà phát triển đẩy các thay đổi mã mới vào kho lưu trữ mã của họ (chẳng hạn như Cam kết mã AWS), tự động kích hoạt sự bắt đầu của một Đường ống dẫn mã AWS triển khai.
- Mã ứng dụng trải qua quy trình xây dựng mã, thực hiện quét lỗ hổng và tiến hành kiểm tra đơn vị bằng các công cụ ưa thích của bạn.
- Xây dựng mã AWS truy xuất kho lưu trữ và thực hiện lệnh git show để trích xuất sự khác biệt về mã giữa phiên bản cam kết hiện tại và phiên bản cam kết trước đó. Điều này tạo ra kết quả từng dòng cho biết những thay đổi về mã được thực hiện trong bản phát hành này.
- CodeBuild lưu kết quả đầu ra vào một Máy phát điện Amazon bảng với thông tin tham khảo bổ sung:
- ID chạy CodePipeline
- Khu vực AWS
- Tên đường ống Code
- Số bản dựng CodeBuild
- Ngày và thời gian
- Trạng thái
- Luồng Amazon DynamoDB nắm bắt các sửa đổi dữ liệu được thực hiện trên bàn.
- An AWS Lambda được kích hoạt bởi luồng DynamoDB để xử lý bản ghi đã ghi.
- Hàm gọi mô hình Anthropic Claude v2 trên Amazon Bedrock thông qua Amazon Bedrock API gọi mô hình gọi. Những khác biệt về mã, cùng với lời nhắc, được cung cấp làm đầu vào cho mô hình để phân tích và bản tóm tắt các thay đổi mã được trả về dưới dạng đầu ra.
- Đầu ra từ mô hình được lưu trở lại cùng một bảng DynamoDB.
- Người quản lý được thông báo qua Dịch vụ Email Đơn giản của Amazon (Amazon SES) về bản tóm tắt các thay đổi mã và cần có sự phê duyệt của họ để triển khai.
- Người quản lý xem xét email và đưa ra quyết định của họ (phê duyệt hoặc từ chối) cùng với mọi nhận xét đánh giá thông qua bảng điều khiển CodePipeline.
- Quyết định phê duyệt và ý kiến đánh giá được ghi lại bởi Sự kiện Amazon, kích hoạt hàm Lambda để lưu chúng trở lại DynamoDB.
- Nếu được phê duyệt, quy trình sẽ triển khai mã ứng dụng bằng các công cụ ưa thích của bạn. Nếu bị từ chối, quy trình làm việc sẽ kết thúc và quá trình triển khai sẽ không tiếp tục nữa.
Trong các phần sau, bạn triển khai giải pháp và xác minh quy trình làm việc toàn diện.
Điều kiện tiên quyết
Để làm theo hướng dẫn trong giải pháp này, bạn cần có các điều kiện tiên quyết sau:
Triển khai giải pháp
Để triển khai giải pháp, hãy hoàn thành các bước sau:
- Chọn Khởi chạy Stack để khởi chạy ngăn xếp CloudFormation trong
us-east-1
: - Trong Địa chỉ email, hãy nhập địa chỉ email mà bạn có quyền truy cập. Bản tóm tắt các thay đổi về mã sẽ được gửi đến địa chỉ email này.
- Trong id mẫu, hãy để mặc định là anthropic.claude-v2, là mô hình Anthropic Claude v2.
Việc triển khai mẫu sẽ mất khoảng 4 phút.
- Khi bạn nhận được email từ Amazon SES để xác minh địa chỉ email của mình, hãy chọn liên kết được cung cấp để ủy quyền địa chỉ email của bạn.
- Bạn sẽ nhận được email có tiêu đề “Tóm tắt các thay đổi” cho cam kết ban đầu của kho lưu trữ mẫu vào CodeCommit.
- Trên bảng điều khiển AWS CloudFormation, điều hướng đến Kết quả đầu ra tab của ngăn xếp được triển khai.
- Sao chép giá trị của RepoCloneURL. Bạn cần điều này để truy cập vào kho lưu trữ mã mẫu.
Kiểm tra giải pháp
Bạn có thể kiểm tra quy trình công việc từ đầu đến cuối bằng cách đảm nhận vai trò của nhà phát triển và thực hiện một số thay đổi về mã. Một bộ mã mẫu đã được chuẩn bị cho bạn trong CodeCommit. ĐẾN truy cập kho lưu trữ CodeCommit, hãy nhập các lệnh sau trên IDE của bạn:
Bạn sẽ tìm thấy cấu trúc thư mục sau đây cho một Bộ công cụ phát triển đám mây AWS (AWS CDK) ứng dụng tạo hàm Lambda để thực hiện sắp xếp nổi bật trên một chuỗi số nguyên. Hàm Lambda có thể truy cập được thông qua một URL có sẵn công khai.
Bạn thực hiện ba thay đổi đối với mã ứng dụng.
- Để tăng cường chức năng hỗ trợ cả thuật toán sắp xếp nhanh và sắp xếp bong bóng, hãy lấy một tham số cho phép lựa chọn thuật toán để sử dụng và trả về cả thuật toán đã sử dụng và mảng đã sắp xếp ở đầu ra, thay thế toàn bộ nội dung của
lambda/index.py
với mã sau:
- Để giảm cài đặt thời gian chờ của hàm từ 10 phút xuống còn 5 giây (vì chúng tôi không mong đợi hàm này chạy lâu hơn vài giây), hãy cập nhật dòng 47 trong
my_sample_project/my_sample_project_stack.py
như sau:
- Để hạn chế việc gọi hàm bằng IAM nhằm tăng cường bảo mật, hãy cập nhật dòng 56 trong
my_sample_project/my_sample_project_stack.py
như sau:
- Đẩy các thay đổi mã bằng cách nhập các lệnh sau:
Việc này bắt đầu quy trình triển khai CodePipeline từ Bước 1–9 như được nêu trong phần tổng quan về giải pháp. Khi gọi mô hình Amazon Bedrock, chúng tôi đã đưa ra lời nhắc sau:
- Phân phối nội dung và PR được hỗ trợ bởi SEO. Được khuếch đại ngay hôm nay.
- PlatoData.Network Vertical Generative Ai. Trao quyền cho chính mình. Truy cập Tại đây.
- PlatoAiStream. Thông minh Web3. Kiến thức khuếch đại. Truy cập Tại đây.
- Trung tâmESG. Than đá, công nghệ sạch, Năng lượng, Môi trường Hệ mặt trời, Quản lý chất thải. Truy cập Tại đây.
- PlatoSức khỏe. Tình báo thử nghiệm lâm sàng và công nghệ sinh học. Truy cập Tại đây.
- nguồn: https://aws.amazon.com/blogs/machine-learning/enhance-code-review-and-approval-efficiency-with-generative-ai-using-amazon-bedrock/
- : có
- :là
- :không phải
- $ LÊN
- 1
- 10
- 100
- 11
- 17
- 200
- 27
- 58
- 7
- 8
- 9
- a
- Có khả năng
- Giới thiệu
- đẩy nhanh tiến độ
- truy cập
- có thể truy cập
- trách nhiệm
- chính xác
- Đạt được
- thực sự
- thêm
- Ngoài ra
- thêm vào
- địa chỉ
- Thêm
- Lợi thế
- AI
- thuật toán
- thuật toán
- cho phép
- dọc theo
- đàn bà gan dạ
- Amazon Web Services
- an
- phân tích
- phân tích
- phân tích
- và
- nhân loại
- bất kì
- api
- ứng dụng
- Các Ứng Dụng
- các ứng dụng
- phê duyệt
- phê duyệt
- phê duyệt
- kiến trúc
- LÀ
- xung quanh
- Mảng
- nhân tạo
- AS
- đánh giá
- hỗ trợ
- Trợ lý
- thuộc tính
- tăng cường
- chứng thực
- Xác thực
- ủy quyền
- Tự động
- tự động
- Tự động hóa
- có sẵn
- AWS
- Hình thành đám mây AWS
- trở lại
- Cân đối
- dựa
- BE
- bởi vì
- được
- được
- BEST
- giữa
- thân hình
- cả hai
- mang lại
- bong bóng
- xây dựng
- Xây dựng
- by
- cuộc gọi
- CAN
- Có thể có được
- bị bắt
- trường hợp
- CD
- thách thức
- thách thức
- thay đổi
- thay đổi
- Những thay đổi
- Chọn
- giống cá lăng
- đám mây
- mã
- Đánh giá mã
- mã số
- Bình luận
- cam kết
- Chung
- hoàn thành
- phức tạp
- ngắn gọn
- Tiến hành
- tiến hành
- Hậu quả
- sự cân nhắc
- bao gồm
- An ủi
- nội dung
- bối cảnh
- tạo ra
- tạo ra
- quan trọng
- Current
- tùy chỉnh
- dữ liệu
- con gái
- xử lý
- quyết định
- Mặc định
- xác định
- triển khai
- triển khai
- triển khai
- triển khai
- triển khai
- Thiết kế
- mong muốn
- Chi tiết
- Xác định
- phát triển
- Nhà phát triển
- Phát triển
- sơ đồ
- sự khác biệt
- khác nhau
- khó khăn
- thư mục
- tài liệu hướng dẫn
- làm
- dont
- thời gian
- dễ dàng
- hiệu quả
- hiệu quả
- nỗ lực
- hay
- khác
- cuối
- Cuối cùng đến cuối
- kết thúc
- Kỹ Sư
- nâng cao
- đảm bảo
- đăng ký hạng mục thi
- vào
- Toàn bộ
- Môi trường
- đặc biệt
- Sự kiện
- ví dụ
- Trừ
- mong đợi
- kinh nghiệm
- thí nghiệm
- khám phá
- khám phá
- gia tăng
- trích xuất
- Đối mặt
- phải đối mặt
- gia đình
- vài
- tài chính
- Học viện Tài chính
- Tìm kiếm
- Linh hoạt
- theo
- tiếp theo
- sau
- Trong
- Nền tảng
- Miễn phí
- từ
- đầy đủ
- chức năng
- chức năng
- chức năng
- xa hơn
- khoảng cách
- tạo ra
- thế hệ
- Trí tuệ nhân tạo
- được
- nhận được
- đi
- Go
- Đi
- lớn hơn
- hướng dẫn
- xử lý
- khai thác
- Có
- có
- he
- Cao
- cao
- của mình
- tổ chức
- Độ đáng tin của
- Tuy nhiên
- HTML
- http
- HTTPS
- Nhân loại
- i
- ID
- if
- minh họa
- Va chạm
- thực hiện
- thực hiện
- hàm ý
- quan trọng
- nâng cao
- in
- sâu
- kết hợp
- chỉ số
- chỉ
- thông tin
- Cơ sở hạ tầng
- ban đầu
- đầu vào
- tổ chức
- hướng dẫn
- tích hợp
- tích hợp
- Tích hợp
- trong
- Giới thiệu
- viện dẫn
- tham gia
- IT
- json
- Biết
- kiến thức
- Thiếu sót
- Ngôn ngữ
- lớn hơn
- phóng
- hàng đầu
- Rời bỏ
- ít
- cho phép
- Dòng
- LINK
- Danh sách
- còn
- thực hiện
- Chủ yếu
- chính
- làm cho
- LÀM CHO
- quản lý
- quản lý
- giám đốc
- Quản lý
- cách thức
- nhãn hiệu
- Có thể..
- có nghĩa là
- Gặp gỡ
- Siêu dữ liệu
- Might
- Phút
- kiểu mẫu
- mô hình
- Sửa đổi
- chi tiết
- hầu hết
- nhiều
- Điều hướng
- Cần
- Mới
- tiếp theo
- Không
- Không áp dụng
- tại
- số
- nhiều
- of
- Cung cấp
- thường
- on
- có thể
- or
- Nền tảng khác
- nếu không thì
- ra
- nêu
- đầu ra
- bên ngoài
- tổng thể
- giám sát
- tổng quan
- riêng
- tham số
- cấp phát chính
- Thực hiện
- thực hiện
- thời gian
- đường ống dẫn
- Trục
- plato
- Thông tin dữ liệu Plato
- PlatoDữ liệu
- có thể
- Bài đăng
- tiềm năng
- quyền lực
- ưa thích
- chuẩn bị
- điều kiện tiên quyết
- áp lực
- trước
- trước đây
- tiến hành
- quá trình
- Quy trình
- sản xuất
- sản xuất
- Hồ sơ
- Lập trình
- Tiến độ
- dự án
- dự án
- nhắc nhở
- đúng
- đề xuất
- cho
- cung cấp
- cung cấp
- công khai
- mục đích
- đẩy
- Đẩy
- chất lượng
- truy vấn
- Nhanh chóng
- Mau
- phạm vi
- nhận
- ghi
- giảm
- Giảm
- làm giảm
- tài liệu tham khảo
- Phế phẩm..
- phát hành
- thay thế
- kho
- yêu cầu
- cần phải
- Yêu cầu
- đòi hỏi
- Thông tin
- phản ứng
- hạn chế
- Kết quả
- trở lại
- Trả về
- xem xét
- Đánh giá
- Tăng lên
- Vai trò
- chạy
- s
- tương tự
- mẫu
- Lưu
- lưu
- khả năng mở rộng
- Quy mô
- quét
- giây
- phần
- an toàn
- an ninh
- lựa chọn
- cao cấp
- gởi
- Không có máy chủ
- dịch vụ
- DỊCH VỤ
- định
- thiết lập
- nên
- hiển thị
- tương tự
- Đơn giản
- Singapore
- So
- Phần mềm
- phát triển phần mềm
- kỹ thuật phần mềm
- giải pháp
- Giải pháp
- một số
- nguồn
- quy định
- tốc độ
- chi tiêu
- ngăn xếp
- Bắt đầu
- bắt đầu
- bắt đầu
- Startups
- Bước
- Các bước
- dòng
- hợp lý hóa
- Chuỗi
- cấu trúc
- như vậy
- bộ
- phù hợp
- TÓM TẮT
- hỗ trợ
- bàn
- Hãy
- dùng
- đội
- Kỹ thuật
- Công nghệ
- mẫu
- thử nghiệm
- kiểm tra
- hơn
- việc này
- Sản phẩm
- thế giới
- cung cấp their dịch
- Them
- Đó
- Kia là
- họ
- điều này
- những
- số ba
- Thông qua
- thắt chặt
- thời gian
- mất thời gian
- dòng thời gian
- có tiêu đề
- đến
- bên nhau
- công cụ
- công cụ
- biến đổi
- Minh bạch
- được kích hoạt
- thử
- hai
- điển hình
- sự hiểu biết
- đơn vị
- Cập nhật
- cập nhật
- URL
- us
- sử dụng
- ca sử dụng
- đã sử dụng
- Người sử dụng
- sử dụng
- sử dụng
- v1
- giá trị
- khác nhau
- xác minh
- phiên bản
- thông qua
- khối lượng
- vs
- dễ bị tổn thương
- là
- we
- web
- các dịch vụ web
- TỐT
- là
- khi nào
- cái nào
- rộng
- Phạm vi rộng
- sẽ
- với
- ở trong
- không có
- Công việc
- quy trình làm việc
- đang làm việc
- công trinh
- thế giới
- X
- khoai mỡ
- Bạn
- trên màn hình
- zephyrnet