Sự Khác Biệt Giữa Nghệ Thuật AI và Mã Lập Trình AI
Khi lướt mạng xã hội của Zuckerberg, một hình ảnh từ Sakura Card Captors theo phong cách họa sĩ Tây Ban Nha Remedios Varo bất ngờ xuất hiện trên bảng tin của tôi. Tôi đã kiểm tra các bình luận và nhận thấy nhiều ý kiến bày tỏ sự phản đối mạnh mẽ đối với trí tuệ nhân tạo (AI). Điều này cho thấy một thái độ phổ biến trong cộng đồng nghệ sĩ đối với AI.
Nghệ Sĩ Phản Đối AI, Lập Trình Viên Chấp Nhận
Có một sự đồng thuận mạnh mẽ trong giới nghệ sĩ về AI. Các phong trào như #NOAI hay Made with human intelligence đã thể hiện rõ sự từ chối công nghệ này. Sự khinh thường này xuất phát từ cách AI được đào tạo - sử dụng tác phẩm của các nghệ sĩ mà không có sự cho phép, bị cáo buộc sao chép điều gì đó rất cá nhân như phong cách - và nỗi lo bị thay thế bởi công nghệ này, điều ảnh hưởng đến thu nhập của họ.
Mặt khác, trong thế giới phần mềm, có một xu hướng mạnh mẽ để chấp nhận AI như một công cụ nhằm nâng cao chất lượng và số lượng mã lập trình được sản xuất. Dù có sự kháng cự, nhưng nó chủ yếu tập trung vào các khía cạnh kỹ thuật và những sai sót tiềm ẩn, thay vì các vấn đề đạo đức trong quá trình đào tạo của nó.
Sự tương phản này thật sự khiến tôi tò mò.
Suy Nghĩ Của Tôi Về Việc Nghệ Thuật và Mã Lập Trình AI Bị Đối Xử Khác Nhau
Điều này không phải là đúng hay sai - chỉ đơn giản là điều này thu hút sự chú ý của tôi. Có thể là vì nghệ thuật là một hình thức giao tiếp trực quan và cảm xúc. Việc nó được tạo ra bởi một cỗ máy có thể được coi là một hình thức biểu đạt thấp hơn hoặc là một mối đe dọa đối với điều gì đó được coi là hoàn toàn nhân văn.
Ngược lại, mã lập trình, với tính chất chức năng và trừu tượng của nó, thiếu đi trọng lượng cảm xúc, và việc nó được tạo ra bởi một chương trình máy tính thường không được chú ý.
Con người đã tiến hóa sử dụng thị giác như một công cụ sinh tồn, vì vậy bất kỳ điều gì được cảm nhận bằng thị giác sẽ có tác động lớn hơn. Mã lập trình, với tư cách là một trừu tượng của logic, là điều rất mới và không nằm trong các áp lực tiến hóa hay thực tế vật chất của loài chúng ta. Hơn nữa, với bản chất của nó, nó ít trực quan hơn. Hãy nhớ rằng, mã không phải là sản phẩm cuối cùng - nó là một sự trừu tượng.
Mã Lập Trình Thực Dụng, Nghệ Thuật Thì Không
Mã lập trình được tạo ra để trừu tượng hóa, trong một ngôn ngữ gần gũi với lời nói của con người, một loạt các hướng dẫn cho máy tính, với một mục đích rõ ràng và xác định.
Nhưng nghệ thuật lại kể một câu chuyện khác.
Oscar Wilde đã nói:
“Tất cả nghệ thuật đều vô dụng.”
Câu nói này không có nghĩa là nghệ thuật vô dụng mà là nó tồn tại vì cái đẹp và biểu đạt, không phải vì sự sống còn hay chỉ dẫn đạo đức.
Nếu có điều gì đó đúng, nghệ thuật linh hoạt hơn nhiều so với mã lập trình và các hệ thống logic-toán học.
Tôi tin rằng chính sự linh hoạt này cho phép AI, kết hợp với ngẫu nhiên, hoạt động khác nhau cho nghệ thuật và mã lập trình.
Vai Trò Của Ngẫu Nhiên Trong Các Mô Hình Tạo Sinh và LLM
AI có thể trừu tượng hóa các mẫu từ tập dữ liệu đào tạo. Khi nó xác định được các mẫu hoặc hình mẫu đó, nó sử dụng ngẫu nhiên để tạo ra các kết quả “phù hợp” trong chúng.
Nghệ Thuật Do AI Tạo Ra
Một nghệ sĩ thu thập các kích thích từ các nghệ sĩ khác, kinh nghiệm cá nhân, sách, nhạc... và “trộn” chúng lại để tạo ra điều gì đó mới. Kết quả là điều gì đó nguyên bản mà vẫn giữ lại những tham chiếu hoặc đặc điểm nhất định của các tác phẩm đã truyền cảm hứng cho nó, dù là rất tinh tế.
Tất cả những điều này xảy ra một cách có ý thức, trong khi AI thực hiện một cách vô thức - hoặc ít nhất đó là điều mà Searle sẽ gợi ý.
Mã Lập Trình Do AI Tạo Ra
Trong trường hợp mã lập trình do AI tạo ra, quá trình gần như tương tự. AI phát hiện các mẫu trong nhiều mẫu mã và sau đó tạo ra mã mới, khác nhưng dựa trên các mẫu mà các LLM đã “học” được.
Trong cả hai trường hợp, ngẫu nhiên cho phép tạo ra điều gì đó mới - không phải là một bản sao chính xác của các tác phẩm gốc mà nó đã được đào tạo (miễn là nó không bị overfit).
Ngẫu Nhiên Ảnh Hưởng Đến Sự Khác Biệt Giữa Nghệ Thuật và Mã Lập Trình AI
Như tôi đã đề cập trước đó, nghệ thuật chủ yếu là chủ quan và biến đổi hơn so với lập trình. Có hàng triệu (hoặc nhiều hơn) cách để trình bày một khái niệm hoặc hình ảnh, điều này hoàn toàn phù hợp với cách mà các LLM hoặc mô hình tạo sinh hoạt động.
Khi viết mã, tuy nhiên, số lượng cách để đạt được cùng một điều là hạn chế hơn nhiều. Việc viết một vòng lặp đếm từ 0 đến 100 trong cùng một ngôn ngữ lập trình có thể có một tá giải pháp.
Số lượng này hoàn toàn trái ngược với các cách tiềm năng để vẽ một khái niệm, có thể gần như không giới hạn.
Với mã lập trình, điều này hơi khác một chút. Rõ ràng, khi mã nguồn phát triển, số lượng giải pháp khả thi cũng tăng lên. Nhưng đây là một sự khác biệt quan trọng: không giống như nghệ thuật, không phải tất cả các giải pháp đều hợp lệ như nhau.
Các Sự Khác Biệt Giữa Nghệ Thuật và Mã Lập Trình AI
Hãy để tôi mở rộng về điều này. Tính chủ quan của nghệ thuật có nghĩa là mọi biểu diễn của cùng một khái niệm đều hợp lệ - một quả táo theo phong cách Picasso cũng hợp lệ như một quả được vẽ bởi Velázquez hay Carrington.
Điều này không xảy ra với phần mềm. Một biến thể của bất kỳ chương trình phức tạp nào (một trình thu thập web, một cơ sở dữ liệu, v.v.) sẽ hoạt động khác nhau trong các tình huống khác nhau, và sẽ có phiên bản ưu việt hoặc kém hơn tùy thuộc vào yêu cầu của mã.
Những khác biệt này có thể được đo lường một cách định lượng: thời gian thực thi, mức sử dụng bộ nhớ, khả năng mở rộng, số yêu cầu mỗi giây, v.v., để lại cho chúng ta một số giải pháp tốt hơn những giải pháp khác.
Vì vậy, AI sẽ “làm đúng” ít hơn và cần nhiều lần lặp hơn khi tạo ra mã. Tuy nhiên, khi tạo ra nghệ thuật, người dùng có khả năng coi kết quả là hợp lệ sau chỉ vài lần lặp.
Điều này khiến tôi nghĩ rằng, từ góc độ của mình, tính phi quyết định của AI hoạt động tốt hơn cho việc tạo ra nghệ thuật hơn là tạo ra mã.
Bây giờ, có một khía cạnh khác mà tôi muốn đề cập về sự khác biệt giữa mã lập trình AI và nghệ thuật AI.
Sự Khác Biệt Trong Nhận Thức Giữa Mã Lập Trình AI và Hình Ảnh AI
Sản phẩm cuối cùng của nghệ thuật do AI tạo ra chính là sản phẩm mà người dùng nhận thức. Ngược lại, mã mà AI tạo ra không tương tác với người dùng cuối.
Không có sự phản đối công khai hay biểu tình nào đối với mã lập trình AI bởi vì mọi người không nhìn thấy nó. Mã, bản thân nó, không gợi lên đam mê hay tức giận - không giống như khi Devin AI hứa hẹn sẽ thay thế các lập trình viên. Có thể là vì kích thích trực quan của nghệ thuật mạnh mẽ hơn nhiều so với một bức tường văn bản thể hiện mối quan hệ giữa các thực thể trừu tượng.
Để chứng minh, chỉ cần nhìn vào phản ứng đối với các công cụ như Bolt, Lovable, hoặc V0, được đào tạo từ mã của các lập trình viên - cũng mà không có sự cho phép của họ.
Websites Do AI Tạo Ra
Nhưng còn các trang web thì sao? Tôi sẽ lập luận rằng ngay cả khi chúng ta quan sát sự kết tinh của mã thành pixel trên một trang web, phản ứng là hoàn toàn khác biệt so với những gì chúng ta trải nghiệm với nghệ thuật - mặc dù cả hai đều được cảm nhận bằng mắt.
Một trang web do AI tạo ra (và có thể là chính mã) hoàn toàn không thể phân biệt được với một trang web do con người tạo ra. Hơn nữa, một trang web thường không được coi là kết quả của sự biểu đạt của con người (đặc biệt trong thời đại internet ngày nay).
Nhưng với nghệ thuật, dễ dàng hơn để nhận thấy - bàn tay với quá nhiều ngón, sự không nhất quán logic, thậm chí là phong cách mặc định, chung chung đã trở nên đặc trưng. Hoặc phong cách Ghibli hiện nay đã trở thành hàng hóa.
Nghệ thuật do AI tạo ra nổi bật, trong khi mã lập trình do AI tạo ra thì vô hình.
Kết Luận
Sự khác biệt trong cách mà nghệ thuật và mã lập trình AI được đối xử là một chủ đề thú vị và đáng suy ngẫm. Nhìn chung, nghệ thuật và mã lập trình đại diện cho hai lĩnh vực khác nhau trong sự sáng tạo của con người và công nghệ. Hãy cùng nhau khám phá và thảo luận về những ảnh hưởng của AI trong cả hai lĩnh vực này, và đừng quên chia sẻ ý kiến của bạn về chủ đề này!
FAQ
- Tại sao nghệ thuật AI lại gây tranh cãi hơn mã lập trình AI?
Nghệ thuật gợi lên cảm xúc và trải nghiệm cá nhân, trong khi mã lập trình thường không được nhìn thấy và không gây ra phản ứng tương tự. - AI có thể thay thế nghệ sĩ không?
AI có thể tạo ra nghệ thuật, nhưng không thể thay thế sự sáng tạo và cảm xúc của con người. - Điều gì làm cho mã lập trình AI trở nên khác biệt?
Mã lập trình yêu cầu độ chính xác và khả năng hoạt động tốt trong các tình huống khác nhau, điều này không giống như nghệ thuật.
Thực Hành Tốt Nhất
- Sử dụng AI như một công cụ hỗ trợ sáng tạo, không thay thế.
- Hiểu rõ về các khía cạnh đạo đức của AI trong nghệ thuật và mã lập trình.
Cạm Bẫy Thường Gặp
- Không lạm dụng AI để sao chép mà không có sự cho phép của nghệ sĩ.
- Đánh giá cao tính sáng tạo và độc đáo trong cả nghệ thuật và mã lập trình.
Mẹo Hiệu Suất
- Tối ưu hóa mã lập trình để giảm thời gian thực thi và sử dụng bộ nhớ.
- Khai thác AI để cải thiện quy trình phát triển phần mềm.
Khắc Phục Sự Cố
- Khi gặp lỗi trong mã lập trình do AI tạo ra, hãy kiểm tra xem có lỗi cú pháp hay không.
- Đảm bảo rằng mã lập trình đáp ứng các yêu cầu của dự án cụ thể.
Hãy bắt đầu thảo luận về sự khác biệt này và khám phá cách AI đang thay đổi cả hai lĩnh vực nghệ thuật và lập trình!