Logo Zephyrnet

Cuộc phỏng vấn với giám đốc điều hành phần mềm Nvidia Kari Briski

Ngày:

Phỏng vấn Hội nghị Công nghệ GPU của Nvidia đã kết thúc vào tuần trước, giới thiệu về chip Blackwell của công ty và những điều kỳ diệu của AI, cùng với tất cả phần cứng GPU được mua đắt tiền.

Xung quanh công ty đang có tin đồn rằng giá cổ phiếu của công ty đang ở mức cao kỷ lục, dựa trên quan điểm cho rằng nhiều nỗ lực sáng tạo có thể được thực hiện nhanh hơn nếu không muốn nói là tốt hơn với khả năng tự động hóa được hỗ trợ bởi các mô hình học máy.

Điều đó vẫn đang được thử nghiệm trên thị trường.

George Santayana một lần đã viết: “Những người không thể nhớ được quá khứ sẽ bị kết án phải lặp lại nó.” Đó là một cụm từ thường được lặp đi lặp lại. Tuy nhiên, việc tưởng nhớ những điều đã qua không thực sự tạo nên sự khác biệt cho các mô hình AI. Họ có thể nhớ lại quá khứ nhưng họ vẫn bị buộc phải lặp lại nó theo yêu cầu, đôi khi không chính xác.

Mặc dù vậy, nhiều người vẫn tin tưởng vào AI toàn năng, đặc biệt là những công ty bán phần cứng AI hoặc dịch vụ đám mây. Nvidia, trong số những người khác, đang đặt cược lớn vào nó. Vì vậy, Đăng ký đã có một chuyến thăm ngắn tới hội nghị GPU để xem tất cả những ồn ào đó là gì. Chắc chắn đó không phải là về những thanh chanh được phục vụ trong phòng triển lãm vào thứ Năm, nhiều trong số đó đã kết thúc đợt chào bán công khai ban đầu chưa hoàn thành trong các thùng trưng bày trên sàn trưng bày.

Hấp dẫn hơn nhiều là một cuộc trò chuyện Đăng ký đã có với Kari Briski, phó chủ tịch quản lý sản phẩm bộ công cụ phát triển phần mềm AI và HPC tại Nvidia. Cô phụ trách quản lý sản phẩm phần mềm cho các mô hình nền tảng, thư viện, SDK của công ty và hiện là các dịch vụ vi mô liên quan đến đào tạo và suy luận, giống như dịch vụ mới được công bố. Anh ta dịch vụ vi mô và được thiết lập tốt hơn nemo khung triển khai.

Đăng ký: Các công ty sẽ sử dụng những dịch vụ vi mô này như thế nào – trên đám mây, tại cơ sở?

Briski: Đó thực sự là lý do thú vị tại sao chúng tôi xây dựng NIM. Thật buồn cười khi nói “NIM”. Nhưng chúng tôi đã bắt đầu cuộc hành trình này từ lâu rồi. Chúng tôi đã làm việc về lĩnh vực suy luận kể từ khi tôi bắt đầu – tôi nghĩ đó là TensorRT 1.0 khi tôi bắt đầu vào năm 2016.

Trong những năm qua, chúng tôi đã phát triển hệ thống suy luận của mình, tìm hiểu thêm về mọi loại khối lượng công việc khác nhau, bắt đầu với thị giác máy tính, hệ thống đề xuất sâu và giọng nói, nhận dạng giọng nói tự động và tổng hợp giọng nói và giờ là các mô hình ngôn ngữ lớn. Đó thực sự là một ngăn xếp tập trung vào nhà phát triển. Và giờ đây, các doanh nghiệp [đã thấy] OpenAI và ChatGPT, họ hiểu sự cần thiết phải có các mô hình ngôn ngữ lớn này chạy bên cạnh dữ liệu doanh nghiệp hoặc trong các ứng dụng doanh nghiệp của họ.

Nhà cung cấp dịch vụ đám mây trung bình, đối với các dịch vụ được quản lý của họ, họ có hàng trăm kỹ sư làm việc về kỹ thuật suy luận, tối ưu hóa. Doanh nghiệp không thể làm được điều đó. Họ cần có được giá trị thời gian ngay lập tức. Đó là lý do tại sao chúng tôi gói gọn mọi thứ chúng tôi đã học được trong nhiều năm bằng TensorRT, các mô hình ngôn ngữ lớn, Máy chủ suy luận Triton, API tiêu chuẩn và kiểm tra tình trạng. [Ý tưởng là] có thể gói gọn tất cả những điều đó để bạn có thể đi từ con số 0 đến điểm cuối của mô hình ngôn ngữ lớn trong vòng chưa đầy năm phút.

[Liên quan đến trung tâm dữ liệu tại chỗ so với đám mây], rất nhiều khách hàng của chúng tôi là đám mây lai. Họ thích tính toán hơn. Vì vậy, thay vì gửi dữ liệu đến một dịch vụ được quản lý, họ có thể chạy vi dịch vụ gần với dữ liệu của mình và có thể chạy dữ liệu đó ở bất cứ đâu họ muốn.

Đăng ký: Bộ phần mềm dành cho AI của Nvidia trông như thế nào xét về mặt ngôn ngữ lập trình? Phần lớn vẫn là CUDA, Python, C và C++ phải không? Bạn đang tìm kiếm nơi khác để có tốc độ và hiệu quả cao hơn?

Briski: Chúng tôi luôn khám phá mọi nơi mà các nhà phát triển đang sử dụng. Đó luôn là chìa khóa của chúng tôi. Vì vậy, kể từ khi bắt đầu làm việc tại Nvidia, tôi đã làm việc trên các thư viện toán học cấp tốc. Đầu tiên, bạn phải lập trình trong CUDA để có được tính song song. Và sau đó chúng tôi có API C. Và chúng tôi đã có API Python. Vì vậy, vấn đề là đưa nền tảng đến bất cứ nơi nào có nhà phát triển. Ngay bây giờ, các nhà phát triển chỉ muốn đạt được điểm cuối API thực sự đơn giản, chẳng hạn như với lệnh cuộn tròn hoặc lệnh Python hoặc thứ gì đó tương tự. Vì vậy, nó phải cực kỳ đơn giản, vì đó chính là nơi chúng ta sẽ gặp gỡ các nhà phát triển ngày hôm nay.

Đăng ký: CUDA rõ ràng đóng một vai trò rất lớn trong việc tính toán GPU hiệu quả. Nvidia đang làm gì để nâng cao CUDA?

Briski: CUDA là nền tảng cho tất cả GPU của chúng tôi. Đó là GPU có thể lập trình CUDA, hỗ trợ CUDA. Một vài năm trước, chúng tôi gọi nó là CUDA-X vì bạn có các ngôn ngữ dành riêng cho miền này. Vì vậy, nếu bạn có [ứng dụng] hình ảnh y tế, bạn có cuCIM. Nếu bạn có tính năng nhận dạng giọng nói tự động, bạn sẽ có bộ giải mã tìm kiếm chùm tia tăng tốc CUDA ở cuối nó. Và do đó, tất cả những điều cụ thể này dành cho mọi loại khối lượng công việc khác nhau đã được CUDA tăng tốc. Chúng tôi đã xây dựng tất cả các thư viện chuyên biệt này trong nhiều năm như cuDFcuML, và cu-cái này và cái kia. Tất cả các thư viện CUDA này là nền tảng của những gì chúng tôi đã xây dựng trong nhiều năm và hiện tại chúng tôi gần như đang xây dựng trên nền tảng đó.

Đăng ký: Nvidia xem xét các cân nhắc về chi phí như thế nào trong cách thiết kế phần mềm và phần cứng của mình? Với những thứ như Nvidia AI Enterprise, mỗi GPU có giá 4,500 USD mỗi năm, một con số đáng kể.

Briski: Đầu tiên, đối với các công ty nhỏ hơn, chúng tôi luôn có Inception chương trình. Chúng tôi luôn làm việc với khách hàng – bản dùng thử miễn phí 90 ngày, nó có thực sự có giá trị với bạn không? nó thật sự đáng giá thế sao? Sau đó, để giảm chi phí khi bạn mua sản phẩm đó, chúng tôi luôn tối ưu hóa phần mềm của mình. Vì vậy, nếu bạn mua 4,500 USD cho mỗi CPU mỗi năm cho mỗi giấy phép và bạn đang chạy trên A100 và ngày mai bạn chạy trên H100 thì giá đó vẫn như cũ – chi phí của bạn đã giảm [so với thông lượng của bạn]. Vì vậy, chúng tôi luôn tích hợp những tối ưu hóa đó cũng như tổng chi phí sở hữu và hiệu suất vào phần mềm.

Khi chúng tôi nghĩ về cả đào tạo và suy luận, quá trình đào tạo sẽ mất nhiều thời gian hơn một chút, nhưng chúng tôi có những bộ cấu hình tự động này để có thể nói: “Bạn có bao nhiêu dữ liệu? Bạn cần bao nhiêu tính toán? Bạn muốn nó mất bao lâu?” Vì vậy, bạn có thể có quy mô điện toán nhỏ hơn nhưng có thể sẽ mất nhiều thời gian hơn để đào tạo mô hình của bạn… Bạn có muốn đào tạo nó trong một tuần không? Hay bạn muốn đào tạo nó trong một ngày? Và vì vậy bạn có thể thực hiện những đánh đổi đó.

Đăng ký: Về các vấn đề hiện tại, có điều gì cụ thể mà bạn muốn giải quyết hoặc có thách thức kỹ thuật nào bạn muốn vượt qua không?

Briski: Hiện tại, nó hướng tới sự kiện RAG [đó là một cách tăng cường các mô hình AI bằng dữ liệu được tìm nạp từ nguồn bên ngoài]. Rất nhiều doanh nghiệp chỉ nghĩ đến lời nhắc cổ điển để đưa ra câu trả lời. Nhưng thực sự, điều chúng tôi muốn làm là [xâu chuỗi] tất cả các hệ thống tạo sinh được tăng cường truy xuất này lại với nhau. Bởi vì nếu bạn nghĩ về mình và một nhiệm vụ mà bạn có thể muốn hoàn thành: “Ồ, tôi phải đi nói chuyện với nhóm cơ sở dữ liệu. Và nhóm cơ sở dữ liệu đó phải nói chuyện với nhóm Tableau. Họ phải làm cho tôi một bảng điều khiển,” và tất cả những điều này phải xảy ra trước khi bạn thực sự có thể hoàn thành nhiệm vụ. Và đó là loại RAG hướng đến sự kiện. Tôi sẽ không nói RAG nói chuyện với RAG, nhưng về cơ bản là như vậy - các đặc vụ sẽ rời đi và thực hiện rất nhiều công việc rồi quay trở lại. Và chúng ta đang ở trên đỉnh cao của điều đó. Vì vậy, tôi nghĩ đó là điều mà tôi thực sự vui mừng khi thấy vào năm 2024.

Đăng ký: Nvidia có đang dogfood AI của riêng mình không? Bạn có thấy AI hữu ích trong nội bộ không?

Briski: Trên thực tế, chúng tôi đã bắt đầu hoạt động và vào năm ngoái, vì năm 2023 là năm khám phá, nên tôi đã tìm thấy 150 nhóm trong Nvidia – có thể còn nhiều hơn nữa – và chúng tôi đang cố gắng hỏi, bạn sử dụng công cụ của chúng tôi như thế nào, loại nào về các trường hợp sử dụng và chúng tôi bắt đầu kết hợp tất cả những điều đã học được, giống như hàng ngàn bông hoa đang nở rộ, và chúng tôi đã kết hợp tất cả những điều đã học được của họ thành những phương pháp hay nhất vào một kho lưu trữ. Đó thực sự là những gì chúng tôi đã phát hành như những gì chúng tôi gọi Ví dụ về AI sáng tạo trên GitHub, vì chúng tôi chỉ muốn có tất cả các phương pháp hay nhất ở một nơi.

Đó là những gì chúng tôi đã làm về mặt cấu trúc. Nhưng như một ví dụ rõ ràng, tôi nghĩ chúng tôi đã viết bài báo thực sự tuyệt vời này có tên là ChipNeMovà thực ra đó là tất cả về nhóm thiết kế EDA, VLSI của chúng tôi cũng như cách họ lấy mô hình nền tảng và đào tạo nó trên dữ liệu độc quyền của chúng tôi. Chúng tôi có ngôn ngữ mã hóa riêng cho VLSI. Vì vậy, họ đã mã hóa các phi công phụ [các mô hình tạo mã nguồn mở] để có thể tạo ra ngôn ngữ độc quyền của chúng tôi và giúp nâng cao năng suất của các kỹ sư mới sắp ra mắt, những người chưa biết rõ về mã viết chip thiết kế VLSI của chúng tôi.

Và điều đó đã gây được tiếng vang với mọi khách hàng. Vì vậy, nếu bạn nói chuyện với SAP, họ có BOP [Xử lý đơn đặt hàng trước], giống như một SQL độc quyền cho cơ sở dữ liệu của họ. Và tôi đã nói chuyện với ba khách hàng khác có các ngôn ngữ độc quyền khác nhau – thậm chí SQL cũng có hàng trăm phương ngữ. Vì vậy, việc có thể tạo mã không phải là trường hợp sử dụng mà RAG có thể giải quyết ngay lập tức. Có, RAG giúp truy xuất tài liệu và một số đoạn mã, nhưng trừ khi được đào tạo để tạo mã thông báo bằng ngôn ngữ đó, nếu không nó không thể tạo nên mã.

Đăng ký: Khi bạn xem xét các mô hình ngôn ngữ lớn và cách chúng được kết nối với các ứng dụng, bạn có nghĩ đến độ trễ có thể xảy ra và cách giải quyết vấn đề đó không? Có khi nào việc mã hóa đơn giản một cây quyết định có vẻ hợp lý hơn không?

Briski: Bạn nói đúng, khi bạn đặt một câu hỏi hoặc lời nhắc cụ thể, có thể, thậm chí chỉ với một câu hỏi, có thể có năm hoặc bảy mô hình đã được khởi động để bạn có thể nhanh chóng viết lại và bảo vệ cũng như truy xuất và xếp hạng lại và sau đó là máy phát điện. Đó là lý do tại sao NIM lại quan trọng đến vậy vì chúng tôi đã tối ưu hóa độ trễ.

Đó cũng là lý do tại sao chúng tôi cung cấp các phiên bản khác nhau của mô hình nền tảng vì bạn có thể có SLM, một mô hình ngôn ngữ nhỏ tốt hơn cho một nhóm nhiệm vụ cụ thể và sau đó bạn muốn mô hình lớn hơn để có độ chính xác cao hơn ở cuối. Nhưng sau đó, việc xâu chuỗi tất cả những thứ đó để phù hợp với khoảng thời gian chờ của bạn là một vấn đề mà chúng tôi đã giải quyết trong nhiều năm đối với nhiều dịch vụ siêu quy mô hoặc được quản lý. Chúng có những khoảng thời gian chờ này và rất nhiều khi bạn đặt câu hỏi hoặc thực hiện tìm kiếm, chúng thực sự sẽ tắt và đưa ra câu hỏi nhiều lần. Vì vậy, họ có rất nhiều điều kiện cạnh tranh về "khoảng thời gian chờ của tôi cho từng phần nhỏ trong tổng phản hồi là bao nhiêu?" Vì vậy, vâng, chúng tôi luôn xem xét điều đó.

Theo quan điểm của bạn về mã hóa cứng, hôm nay tôi vừa nói chuyện với một khách hàng về vấn đề đó. Chúng tôi vượt xa khả năng mã hóa cứng… Bạn có thể sử dụng trình quản lý hội thoại và có if-then-else. [Nhưng] việc quản lý hàng ngàn quy tắc thực sự là không thể. Và đó là lý do tại sao chúng tôi thích những thứ như lan can, bởi vì lan can đại diện cho một dạng thay thế cho trình quản lý hội thoại cổ điển. Thay vì nói: “Đừng nói về bóng chày, đừng nói về bóng mềm, đừng nói về bóng đá” và liệt kê chúng ra, bạn chỉ cần nói: “Đừng nói về thể thao”. Và sau đó LLM biết thể thao là gì. Việc tiết kiệm thời gian và có thể quản lý mã đó sau này sẽ tốt hơn rất nhiều. ®

tại chỗ_img

Tin tức mới nhất

tại chỗ_img