Quay lại phần Tin tức dành cho nhà phát triển

Meta Open Source: Nhìn lại năm 2022

17 tháng 1, 2023Tác giảPhilip Bell

Đối với nhiều người trên thế giới, 2022 là năm tái lập kết nối với con người và cộng đồng. Meta đưa chủ đề này vào công việc nguồn mở của mình khi người đóng góp, người dùng và các tổ chức đã tề tựu để gia tăng mức tác động của nguồn mở.

Các dự án mà Meta công khai góp phần giải quyết nhu cầu và thách thức của nhà phát triển - từ hỗ trợ công nghệ AI thế hệ tiếp theo cho đến xây dựng các trải nghiệm và ứng dụng web đổi mới, thân thiện với người dùng. Ngoài ra, cộng đồng nguồn mở còn cung cấp một kênh kết nối để chia sẻ công nghệ và cùng cộng tác phát triển dựa trên công nghệ đó.

Bài viết này khám phá những tin nổi bật từ Meta Open Source và cách Meta đã hỗ trợ xây dựng cộng đồng nguồn mở trong năm 2022. Bài viết còn cung cấp thông tin mới về các công cụ và mã mà Meta cũng như các kỹ sư của Meta đã chia sẻ, bao gồm những phát triển quan trọng dành cho PyTorch, sự kiện phát hành React 18, sự kiện giới thiệu ứng dụng kiểm soát nguồn của Sapling và hơn thế nữa.

Khám phá các phần:

Chuyển thành tổ chức: Tăng tính cởi mở, cộng tác và phạm vi tiếp cận

Các quan điểm và đóng góp đa dạng sẽ củng cố nguồn mở. Meta đang tích cực tìm kiếm cơ hội hợp tác với các tổ chức hiện có nhằm đạt được mục tiêu chung. Năm ngoái, một số dự án của Meta đã chuyển thành tổ chức để dân chủ hóa hơn nữa các tài nguyên nguồn mở mà những dự án đó cung cấp, đồng thời mở rộng phạm vi quản trị.

Vào tháng 9, khung PyTorch dành cho AI đã gia nhập Linux Foundation thông qua sự kiện thành lập PyTorch Foundation mới. Ủy ban - bao gồm các lãnh đạo trong ngành - dự kiến sẽ mở rộng theo thời gian. Ủy ban sẽ đóng vai trò quản lý các hoạt động tiếp cận, cũng như quá trình marketing sản phẩm và doanh nghiệp cho công nghệ này.

Hình ảnh cho thấy Meta có 1.034 dự án nguồn mở không được lưu trữ kể từ năm 2022.

Jest bắt đầu chuyển thành OpenJS Foundation từ năm ngoái. Dự án nguồn mở này là một trong những khung thử nghiệm JavaScript được sử dụng rộng rãi nhất. Các mục tiêu của tổ chức bao gồm cải thiện dự án để người dùng mới dễ tiếp cận hơn và phát triển những tính năng mới.

Meta cam kết tiếp tục thúc đẩy đổi mới trong những dự án nguồn mở mà Meta quyên góp cho các tổ chức. Trong năm 2022, Meta đã tăng cường cộng tác với Presto Foundation, qua đó trở thành thành viên cấp cao nhất của tổ chức này. Meta cũng tài trợ cho các sự kiện PrestoCon DayPrestoCon - hội nghị trực tiếp đầu tiên của tổ chức này.

Tăng mức tác động thông qua tiếp cận nguồn mở

Các thành viên đội ngũ Meta Open Source tập trung chụp ảnh nhóm tại hội nghị All Things Open vào tháng 10/2022.

Chú thích: Các chuyên gia về quan hệ lập trình viên Meta cùng những thành viên khác của đội ngũ Meta Open Source tại hội nghị All Things Open vào tháng 10 năm ngoái.

Kỹ sư và Chuyên gia về quan hệ lập trình viên Meta luôn tìm kiếm cơ hội tiếp cận hiệu quả trong cả năm. Họ học hỏi từ các chuyên gia và tổ chức trong cộng đồng, đồng thời chia sẻ kiến thức về những dự án nguồn mở mà Meta đã ra mắt.

Khám phá nội dung do Chuyên gia về quan hệ lập trình viên Meta xây dựng:

Chuyên gia về quan hệ lập trình viên cùng các thành viên của đội ngũ Open Source tại Meta đã đại diện cho Meta Open Source tham dự sự kiện kỷ niệm 10 năm hội nghị All Things Open. Trước sự kiện này, Killian Murphy - Giám đốc Kỹ thuật - đã chia sẻ ý kiến về cách Meta đang nỗ lực phá vỡ rào cản đối với những người đóng góp nguồn mở, đồng thời phấn đấu cung cấp nguồn mở cho tất cả mọi người. Meta cam kết đặt ra tiêu chuẩn cao để chào đón tất cả những người muốn sử dụng và đóng góp cho các công nghệ mà Meta cung cấp nguồn mở.

Nội dung hình ảnh: "Khi cộng đồng nguồn mở lớn hơn bao giờ hết, Meta lạc quan về tiềm năng nguồn mở sẽ trở nên toàn diện hơn và có sức mạnh lớn hơn". Killian Murphy - Giám đốc Kỹ thuật

Đội ngũ Meta Open Source cũng đã dựng một gian hàng tại sự kiện All Things Open để nâng cao mức độ nhận biết về dự án của Meta, cũng như gặp gỡ các nhà phát triển sử dụng những công nghệ đó trong các nghiên cứu và ngành nghề. Kỹ sư và Chuyên gia về quan hệ lập trình viên cũng đã phát biểu tại sự kiện này.

Khám phá các cuộc hội đàm của đội ngũ Chuyên gia về quan hệ lập trình viên tại sự kiện All Things Open 2022:

Bài viết trên blog của đội ngũ Meta Linux Kernel nêu bật các hoạt động nghiên cứu và phát triển liên tục của đội ngũ. Những bài viết này cũng trình bày cách tham gia cộng đồng Linux. 11 thành viên của đội ngũ Meta Kernel rộng lớn hơn đã tham gia các cuộc hội đàm tại Hội nghị Linux Plumbers 2022. Bạn có thể tham khảo danh sách đầy đủ các cuộc hội đàm trên trang web sự kiện. Đội ngũ cũng ra mắt loạt chương trình Gặp gỡ nhà phát triển với sự góp mặt của một số Kỹ sư Meta tham dự hội nghị. Loạt chương trình bao gồm các chủ đề như tổng quan về điểm kết nối mạng BPF và trải nghiệm người dùng trong Meta, vá kernel trực tiếp trên quy mô lớn và nhiều chủ đề khác.

Hình ảnh cho thấy Meta đã phát hành 252 kho lưu trữ và dự án nguồn mở mới trong năm 2022.

Đội ngũ Meta Linux Kernel hỗ trợ định hướng của kernel theo cách cải thiện mức độ sử dụng kernel tại Meta và tăng cường sức khỏe cho cộng đồng rộng lớn hơn. Đội ngũ này hợp tác chặt chẽ với cộng đồng Linux kernel ngay từ đầu, cũng như đảm bảo dự án được thiết kế để ưu tiên kết hợp và sử dụng kernel từ nguồn.

Trên blog Meta Open Source, Câu chuyện từ người đóng góp công cụ Hasher-Matcher-Actioner đã nêu bật công việc của Những người nhận được học bổng MLH Franklin PhanSamyak Mehta. Meta vẫn tiếp tục hợp tác với GitHub và Major League Hacking để hỗ trợ cung cấp học bổng này.

Loạt Câu chuyện của Người đóng góp trên Meta đã chia sẻ những thành công và thách thức khi đóng góp cho nguồn mở, cùng với những cách tốt nhất để tham gia cộng đồng. Khám phá các bài viết trên blog năm 2022:

Tạo động lực trong cộng đồng nguồn mở cho VR/AR

Chúng tôi mong muốn vũ trụ kỹ thuật số trở thành nơi mọi người có thể tề tựu và tương tác với nhau theo những phương thức mới mẻ, sáng tạo. Để tạo ra vũ trụ kỹ thuật số thành công cho tất cả mọi người, chúng tôi cần xây dựng vũ trụ đó dựa trên một cộng đồng mạnh mẽ, đồng thời kết hợp những ý tưởng đa dạng.

Với tinh thần "cùng nhau xây dựng" vốn có, cộng đồng nguồn mở là điểm khởi đầu tự nhiên để định hướng các cuộc trò chuyện quan trọng góp phần hình thành nên vũ trụ kỹ thuật số và những gì Chuyên gia về quan hệ lập trình viên của Meta đã chia sẻ trong cuộc trò chuyện. Navyata Bawa tiếp tục loạt chương trình "Thúc đẩy tính hòa nhập trong VR" tại hội nghị Mạng lưới toàn cầu dành cho phụ nữ trong lĩnh vực công nghệ diễn ra vào tháng 6. Navyata Bawa đã khám phá cách xây dựng các ứng dụng VR có trợ năng và tính hòa nhập khi tiếp tục phát triển VR/AR.

Trong tập Podcast của Stack Overflow: "Sau đây là cách phát triển VR tại Meta", Cami Williams - Trưởng bộ phận Chuyên gia về quan hệ lập trình viên - đã chia sẻ cách Reality Labs có thể học hỏi, cũng như xây dựng mối quan hệ với cộng đồng React. Ngoài ra, podcast này còn cung cấp một số công cụ và tài nguyên để bắt đầu phát triển cho VR.

Nội dung hình ảnh: "Xây dựng sự đa dạng từ bên trong. Không chỉ ở người dùng và người chơi thử, mà còn ở nhà phát triển. Chỉ khi đó, chúng ta mới có thể thiết kế các ứng dụng đại diện chính xác và phù hợp với nhiều đối tượng, bằng cách học hỏi từ những trải nghiệm sống đa dạng này." Navyata Bawa - Chuyên gia về quan hệ lập trình viên - Reality Labs

Trong phạm vi cam kết của Meta về mở rộng sự hiện diện của cộng đồng và cung cấp các công cụ để sáng tạo nội dung trong hệ sinh thái VR, chúng tôi đã phát hành mẫu giới thiệu Quest trên GitHub. Để hỗ trợ quảng bá các công cụ này, Bawa đã tạo loạt video "Xây dựng trải nghiệm VR nhiều người chơi" dành cho SDK nền tảng Oculusmẫu SharedSpaces trong Unity, cũng như hướng dẫn "Xây dựng tương tác trực quan cho VR" dành cho SDK tương tác vàmẫu Trực tiếp.

Bài viết trên blog "Mùa hè nguồn mở: Thúc đẩy công nghệ thực tế ảo phát triển" trình bày một số cải tiến mới nhất trong lĩnh vực này từ Meta và nêu bật buổi phỏng vấn với Eric Le Saux - Kỹ sư Phần mềm - trên The Diff tập 14. Hãy xem danh sách phát AR & VR để biết thêm những cuộc trò chuyện gần đây với nhà phát triển trên Meta, các hướng dẫn và tài nguyên trong lĩnh vực này.

Những tiến bộ trong AI/ML

Năm 2022 là một năm quan trọng đối với PyTorch và các mô hình mới của Meta AI được thiết kế để hỗ trợ tất cả mọi người, từ nhà nghiên cứu đến người sáng tạo nội dung. Dưới đây là một số cách để Meta nâng cao hoạt động đào tạo, tối ưu hóa và triển khai các mô hình AI.

Bản cập nhật PyTorch

Sau khi chuyển thành PyTorch Foundation (thuộc Linux Foundation), PyTorch 2.0 đã được ra mắt tại Hội nghị PyTorch tổ chức tại New Orleans vào tháng 12. Những con số được chia sẻ tại hội nghị cho thấy mức độ tăng trưởng của PyTorch và cộng đồng PyTorch trong năm 2022: 63% hoạt động triển khai nghiên cứu AI chọn sử dụng PyTorch. Trong khi đó, theo dữ liệu GitHub, số lượng kho lưu trữ GitHub sử dụng PyTorch đã tăng 45% so với năm trước.

PyTorch 2.0 kết hợp nhiều năm nghiên cứu để cải thiện hiệu quả trình biên dịch, đồng thời duy trì trải nghiệm PyTorch mà người dùng đã biết và yêu thích. Bản cập nhật bao gồm tăng tốc một dòng với torch.compile, khả năng tương thích ngược 100% và trình biên dịch toàn Python.

Khám phá thêm nội dung về PyTorch 2022 từ Chuyên gia về quan hệ lập trình viên tại Meta và người đóng góp:

Các mô hình của Meta AI đạt được những mốc mới

Khung đào tạo và tối ưu hóa mô hình giúp tạo ra mô hình AI có thể đảm nhận các nhiệm vụ trong thế giới thực theo hướng bổ sung cho kỹ năng của con người. Sự tương hỗ này được minh chứng trong tính năng dịch ngôn ngữ, trong đó các mô hình AI có thể học hàng trăm ngôn ngữ, kể cả những ngôn ngữ có rất ít người dùng. Trong năm 2022, Meta AI đã ra mắt mô hình AI Không bỏ lại ngôn ngữ nào. Mô hình này dịch 200 ngôn ngữ khác nhau với kết quả mới nhất, cùng với tập dữ liệu đánh giá và mã nguồn mở tương ứng. Những hoạt động về nguồn mở này có thể góp phần cải thiện các mô hình để dịch tài liệu quan trọng, đồng thời duy trì các ngôn ngữ có nguồn tài nguyên hạn chế.

Hình ảnh cho thấy đã có 186.210 lần chuyển giao đến kho lưu trữ Meta công khai vào năm 2022. 159.723 lần từ nội bộ và 26.487 lần từ bên ngoài.

Meta đã cung cấp nguồn mở CICERO, tác nhân AI đầu tiên đạt được khả năng tư duy của con người trong game chiến lược ngôn ngữ tự nhiên phức tạp Diplomacy.* Việc tích hợp mô hình ngôn ngữ với các thuật toán học tập củng cố và lập kế hoạch cho phép CICERO suy luận và lập chiến lược liên quan đến động cơ của người chơi, sau đó sử dụng ngôn ngữ để thỏa thuận nhằm đạt được mục tiêu chung, hình thành liên minh và điều phối các kế hoạch. Nhiều sự kiện khác liên quan đến công nghệ AI và nguồn mở không được đề cập trong tài liệu này. Bạn có thể tham khảo các câu chuyện khác liên quan đến công nghệ AI trên Blog Meta AI.

Khám phá những tiến bộ khác của Meta AI trong năm 2022:

* Mọi quyền trong Diplomacy đều thuộc sở hữu của Hasbro, Inc.

React 18 và các bản cập nhật khác trên web/di động

Bên cạnh tin tức Jest bắt đầu quá trình chuyển thành OpenJS Foundation, Jest 29 đã được phát hành vào tháng 8. Dự án đã đạt hơn 40.000 sao trên GitHub trong nửa cuối năm nay. Một sự kiện quan trọng khác trên web và di động là việc ra mắt React 18, với sự hỗ trợ của Nhóm làm việc React 18 công khai. Sự kiện này bao gồm các bản cập nhật về kết xuất đồng thời, cùng với các tính năng bổ sung và API hỗ trợ. Hãy xem hoạt động cập nhật Tài liệu về React phiên bản beta cùng với bản phát hành, bao gồm Tài liệu về hiệu ứngHướng dẫn bắt đầu nhanh.

Vào tháng 9, các đội ngũ Công nghệ React của Meta đã cùng những người đóng góp chính và người duy trì thư viện tham dự Hội nghị những người đóng góp chính cho React Native. Hội nghị đã thảo luận về các hệ sinh thái hiện tại và tương lai của React Native và Metro, đồng thời những người tham dự đã đưa ra các sáng kiến tích cực góp phần cải thiện hệ sinh thái React Native.

Hình ảnh cho thấy có tổng cộng 7.353 người đóng góp cho các dự án nguồn mở của Meta trong năm 2022. Có 3.727 người đóng góp trong nội bộ và 3.626 người đóng góp từ bên ngoài.

Trong số các dự án khác mà Meta đã cung cấp nguồn mở dành cho web và di động, Js-flipper là gói NPM hiển thị ứng dụng Flipper cho các ứng dụng JavaScript. Với gói này, các nhà phát triển có thể dễ dàng tạo plugin Flipper mới hoặc sử dụng lại các plugin hiện có. Một dự án khác - MemLab - cung cấp tính năng thử nghiệm bộ nhớ JavaScript để tự động phát hiện rò rỉ bộ nhớ.

Cuối cùng, các nhà phát triển trên Meta đã chia sẻ thông tin chi tiết về cách họ xây dựng trên cũng như cho các công nghệ di động và web nguồn mở. Một bài viết trên blog đã điều tra báo cáo lỗi của Hermes, cũng như cách báo cáo này thúc đẩy đội ngũ phụ trách lập trình bản exploit chạy phiên bản 1993 của Doom trong Hermes. Một Chế độ xem web dựa trên Chromium mới đáng chú ý khác cung cấp trải nghiệm tốt hơn cho người dùng trình duyệt trong ứng dụng Facebook dành cho Android.

Khám phá loạt chương trình Gặp gỡ nhà phát triển: Phiên bản di động:

Công cụ dành cho nhà phát triển: Kiểm soát nguồn, công cụ lập tài liệu và những tiến bộ khác

Các nhà phát triển tại Meta sử dụng công cụ nguồn mở được xây dựng tại công ty để hỗ trợ cơ sở hạ tầng của mình. Meta thường xuyên thử nghiệm và cải tiến các công cụ này trong công việc hàng ngày, từ đó tạo ra các dự án nguồn mở đáp ứng những thách thức riêng biệt về quy mô và tốc độ.

Trong năm 2022, đội ngũ Sapling đã ra mắt ứng dụng kiểm soát nguồn mới tương thích với Git. Sapling là một hệ thống kiểm soát nguồn chú trọng đến khả năng sử dụng và quy mô nhằm chia sẻ những gì mà nhà phát triển tại Meta đã tinh chỉnh trong hơn 10 năm, giúp truyền cảm hứng cho công việc tiếp theo trong lĩnh vực này và cho các nhà phát triển thấy một tương lai tiềm năng của hệ thống kiểm soát nguồn. Docusaurus 2.0 được phát hành trong tháng 8. Đây là một trình tạo trang web tĩnh hiệu quả cao, mở rộng phạm vi sử dụng React và hỗ trợ các trang web, bên cạnh việc tài liệu hóa dự án.

Nội dung hình ảnh: "Trong năm 2022, Meta Open Source đã đạt thêm 133.854 sao trên GitHub, nâng tổng số lên 1.563.562 sao."

Các bản cập nhật khác cho dự án đã thêm một trình phát hiện lỗi đình trệ hoàn toàn mới dành cho Android, bổ sung tính năng nhập theo yêu cầu trong Cinder và bản xem trước trình chỉnh sửa OpenStreetMap thế hệ tiếp theo RapiD 2.0. Một dự án khác là Hermit đã giới thiệu hệ điều hành tất định thực tế, cho phép nhà phát triển giải quyết vấn đề như thử nghiệm không ổn định, đồng thời kiểm soát dữ liệu đầu vào ngầm định, chẳng hạn như lên lịch chuỗi trò chuyện, tạo số ngẫu nhiên và hơn thế nữa.

Một trong những bài viết rộng hơn được đăng đã chia sẻ cách các công cụ dành cho nhà phát triển trên Meta phối hợp với nhau trong quy trình làm việc của nhà phát triển. Nhiều công cụ trong số đó có nguồn mở. Các dự án liên quan bao gồm hệ thống bản dựng Buck, SuperConsole, EdenFS (một hệ thống file được tích hợp chặt chẽ với Sapling), khung thử nghiệm Jest và các công cụ khác.

Khám phá các bài viết và bản phát hành khác về công cụ dành cho nhà phát triển trong năm 2022.

Dữ liệu: Thông tin cập nhật về Velox, Presto và RocksDB

Thư viện C++ nguồn mở - Velox - đã được công bố trong tháng 08/2022. Velox là một bước đột phá trong nỗ lực giảm tiêu thụ điện và tăng hiệu quả cho các công cụ dữ liệu. Thư viện này sử dụng quy trình thực thi gốc và đang được tích hợp với nhiều công cụ tại Meta dưới dạng lớp công cụ thực thi hợp nhất.

Velox được thiết kế để giảm đáng kể công việc bảo trì mã và tăng hiệu quả từ 2 đến 10 lần trong các trường hợp sử dụng khác nhau. Hãy tìm hiểu về cộng đồng ngày càng đông đảo của Velox và quá trình tái cấu trúc đầy mới mẻ cho phương thức thực thi truy vấn dữ liệu của các công cụ dữ liệu và cơ sở dữ liệu lớn trong bài báo "Velox: Công cụ thực thi hợp nhất của Meta", xuất bản tại VLDB năm 2022.

Chỉ riêng năm ngoái, dự án nguồn mở Presto trên GitHub đã có 21 bản phát hành, đạt gần 2.000 sao mới, có 600 nhánh mới và 152 người đóng góp mới. Presto Foundation đã tổ chức sự kiện trực tiếp đầu tiên - PrestoCon - tại Bảo tàng Lịch sử Máy tính ở Mountain View, CA. Tại đây, Tim Meehan đã có bài phát biểu quan trọng với vai trò là Chủ tịch TSC và Philip Bell đã công bố định hướng của Presto trong năm tới.

Vào tháng 12, đội ngũ RocksDB đã tiếp tục tổ chức cuộc họp trực tiếp hàng năm tại Trụ sở chính của Meta ở Menlo Park. Kỹ sư của Meta và các cộng tác viên bên ngoài đã tập hợp tại đây để thảo luận về các trường hợp sử dụng, cải tiến mới và nguyện vọng cho dự án.

Bảo mật và phần cứng

Bảo mật và phần cứng đóng vai trò quan trọng trong việc hỗ trợ công việc của nhà phát triển. Từ các công cụ gỡ lỗi đến phần cứng kết nối mạng, nguồn mở tại Meta có thể góp phần đảm bảo các hệ thống và mã mạnh mẽ, an toàn và đáng tin cậy.

Đầu năm 2022, một câu chuyện của người đóng góp đã chia sẻ hoạt động của Pysa, một công cụ phân tích tĩnh Python thuộc dự án Pyre-check. Câu chuyện này nêu bật việc xây dựng cộng đồng nguồn mở lành mạnh có thể tác động trực tiếp như thế nào đến sự thành công của các dự án như Pysa, qua đó tăng tính bảo mật của mã trong trường hợp này.

Về phần cứng, Giao thức thời gian chính xác đã được triển khai trên các mạng lưới và trung tâm dữ liệu của Meta. Công nghệ này cung cấp mức độ chính xác và tính chính xác mới cho việc đồng bộ hóa đồng hồ trong các hệ thống phân tán. Cùng với Dự án điện toán mở, cả phần cứng và phần mềm được thiết kế để hỗ trợ giao thức này đều được cung cấp nguồn mở để tạo điều kiện áp dụng trong ngành.

Trong năm 2022, Meta tiếp tục cung cấp nguồn mở cho công việc trong các sản phẩm như WhatsApp và Messenger. Code Verify - được cung cấp nguồn mở vào tháng 3 - là một tiện ích mở rộng trên trình duyệt cho phép nhà phát triển bảo vệ tính nguyên vẹn của mã trong WhatsApp Web và Messenger bằng cách hiển thị xem mã trên trang web có bị giả mạo hay thay đổi không.

Cảm ơn bạn đã tham gia cộng đồng nguồn mở

Bài viết này chỉ đề cập đến một vài trong số hơn 1.000 dự án nguồn mở của Meta, cũng như các bản cập nhật tương ứng trong năm 2022. Để khám phá thêm các dự án nguồn mở này, hãy truy cập trang web Meta Open Source và theo dõi chúng tôi trên Facebook, Instagram, TwitterLinkedIn. Chúng tôi đặc biệt cảm ơn cộng đồng người đóng góp, người dùng, các tổ chức và đối tác cộng tác với Meta trong các dự án nguồn mở.

Meta tin tưởng rằng nguồn mở sẽ đẩy nhanh tốc độ đổi mới trên thế giới. Bằng cách chia sẻ mã, ngăn xếp và cả thiết kế phần cứng của mình, chúng tôi mong muốn thúc đẩy ngành phát triển, đồng thời mang đến cho các công ty và cá nhân khác cơ hội sử dụng giải pháp của chúng tôi để mở rộng quy mô nhanh hơn và tạo ra những sản phẩm tuyệt vời.

Bài viết này do các Chuyên gia về quan hệ lập trình viên tại Meta là Dmitry Vinnik, Suraj Subramanian và Cami Williams cùng hợp tác soạn thảo.