Hacker News Nổi bật (buzzing.cc bản dịch tiếng Trung)
85

Thủ thuật

Khi mô hình AI trở thành hàng hóa: Giá trị thực nằm ở công cụ và khả năng mở rộng

(giờ Việt Nam)

Tóm tắt AI

Khi các mô hình ngôn ngữ lớn dần trở nên phổ biến, lợi thế cạnh tranh không còn nằm ở bản thân mô hình mà ở hệ sinh thái công cụ, khả năng tùy biến và các ứng dụng thực tế giúp tối ưu hóa trải nghiệm người dùng.

Bản dịch AI

The Harness Is the Thing — Scott Fryxell

Khi tôi mới bắt đầu làm lập trình viên, một "lão làng" đã quan sát và nói với tôi rằng định luật Moore cũng áp dụng cho cả phần mềm. Lúc đó tôi không hiểu rằng chính cuộc trò chuyện không hồi kết về cách chúng ta giải quyết vấn đề lại là quỹ đạo của sự tiến bộ; rằng việc phàn nàn về J2EE, về sự chậm chạp của Netbeans, hay càu nhàu về các bố cục dựa trên bảng (table-based layouts) và việc phải tải lại toàn bộ trang liên tục, thực chất chính là quá trình tối ưu hóa hàng ngày – một động cơ thúc đẩy sự tiến bộ.

Mười tám tháng qua là một giai đoạn đặc biệt với những cải tiến không ngừng nghỉ. Tính năng tự động hoàn thiện mã (tab completions) đã nhường chỗ cho lập trình bằng tác nhân (agentic coding), và giờ đây là việc quản lý các tác nhân đó bằng một bộ khung (harness). Tôi đã chuyển từ trạng thái kinh ngạc trước năng suất đạt được sang việc làm chủ cuộc chơi và tận dụng tối đa mọi thứ để xem mình có thể đạt được kết quả gì.

Có những chân lý mới

Các dự án do một lập trình viên đơn lẻ thực hiện giờ đây có thể đạt được tầm cỡ và sự nhất quán như các đội ngũ phát triển lớn. Bạn có thể và nên tự xây dựng các ứng dụng tùy chỉnh mà không cần phải lo lắng về việc đào tạo các kỹ sư giàu kinh nghiệm; nếu họ nắm vững nền tảng công nghệ (stack) của mình, họ sẽ nhanh chóng biết cách đóng góp vào dự án của bạn. Nhưng trên hết, tôi học được rằng bộ khung (harness) mới là thứ quan trọng nhất; đó là điểm tựa để kỳ vọng của tôi gặp gỡ khả năng của LLM.

Hiện tại, hệ thống của tôi được hỗ trợ bởi hai gói đăng ký (Cursor, Claude) mà tôi có thể bổ sung thêm Pi khi cần. Cả ba đều chia sẻ các kỹ năng và tệp AGENTS.md của tôi. Mặc dù đang sử dụng ba TUI (Terminal User Interface), tôi vẫn có một trải nghiệm thống nhất. Điều này đã biến các mô hình thành hàng hóa đối với tôi; không có "bí thuật" hay trải nghiệm đặc biệt nào trong Claude hay Cursor mà tôi bắt buộc phải có để làm việc hiệu quả. Tôi hoàn toàn không lo lắng về việc chuyển đổi từ Cursor sang Codex vào cuối tháng này.

Lợi thế về chi phí

Trong kỷ nguyên hàng hóa hóa, tôi có thể đạt được kết quả tuyệt vời từ hàng loạt mô hình sẵn có, nhưng tôi đã dựa vào deepseek-v4-flash-0731 kể từ khi nó ra mắt. Rất hiếm khi tôi phải dùng đến ngân sách API Anthropic để sử dụng Fable.

Tôi có thể chạy Deepseek cho hầu hết các tác vụ bảo trì và đơn giản. Chỉ khi khám phá một tính năng quan trọng hoặc tái cấu trúc lớn với nhiều thành phần phức tạp, tôi mới tìm đến các mô hình tiên phong (frontier models). Gần đây, tôi biết đến prewalk, kỹ thuật của Can Bölük sử dụng mô hình tiên phong cho giai đoạn lập kế hoạch và tác vụ đầu tiên, sau đó bàn giao lại khi mô hình đã được thiết lập. Tôi kết hợp nó với mô hình phân chia planner/worker/critic (người lập kế hoạch/người thực thi/người đánh giá) từ bài viết "Building an Advanced Agentic Harness" – một câu lệnh duy nhất vừa lập kế hoạch, thực thi, vừa tự đánh giá sẽ làm rối loạn mục tiêu, vì vậy mỗi vai trò được tách biệt riêng. Tôi đã xây dựng cả hai thành một kỹ năng, với một tiện ích mở rộng Pi hỗ trợ có thể tiếp quản ở bất kỳ giai đoạn nào.

Quá trình khám phá dẫn đến một kế hoạch được chính thức hóa thành danh sách tác vụ DAG (đồ thị có hướng không chu trình). Sau đó, một "worker" sẽ tiếp quản, tập trung thực hiện DAG từng nút một. Khi hoàn tất, tôi đưa "critic" vào để đơn giản hóa và chất vấn những gì đã được thực hiện. Thông thường, giai đoạn này sẽ phản biện đủ mạnh để phải quay lại giai đoạn "worker". Nhưng khi đã hài lòng, "critic" sẽ nhường chỗ cho "promoter" (người quảng bá), đây là lời nhắc nhở của tôi rằng công việc chưa hoàn thành cho đến khi bạn truyền đạt nó một cách phù hợp với người khác.

Tôi thêm bước "promoter" để khắc phục điểm yếu của mình là chỉ muốn xuất bản rồi bỏ qua. Đó là lời nhắc để tôi thông báo về công việc mình đang hoàn thành. Tôi cần một chút trợ giúp từ Fable trong giai đoạn này, vì việc quảng bá rất tinh tế và dễ hỏng, và chẳng ai thích một nhà phê bình, nên việc chạy nó qua mô hình tiên phong sẽ mang lại sức nặng hơn.

Điều này đã giảm 75% việc sử dụng Fable ngay cả trong những ngữ cảnh cường độ cao nhất. Điều này có vẻ hợp lý, giống như một dạng "AI soak" (thẩm thấu AI). Tôi có thể chăm sóc khách hàng và đạt được tiến bộ thực sự trong các dự án cá nhân với hai gói 20 đô la, trong khi linh hoạt chuyển đổi giữa Pi cho Deepseek hoặc sự hỗ trợ từ Fable.

Kết nối bộ khung sản phẩm

Sản phẩm của tôi là một ứng dụng camera được thiết kế để dễ dàng chụp ảnh và chuyển đổi nó thành đồ họa vector, từng cái một. Nó thú vị vì sự đơn giản. Độ phân giải giảm xuống, bức ảnh được đơn giản hóa thành các lớp giá trị và hình khối. Nó giữ lại ngữ cảnh và loại bỏ chi tiết để bạn có thể vẽ lại. Đó là tất cả những gì nó được thiết kế để làm. Bạn in nó ra và vẽ đè lên trên, hoặc nhập vào Procreate và vẽ trong các lớp đó.

Chức năng này được cung cấp cho bộ khung thông qua poster-driver. Mở nó trong headless Chrome và điều khiển trang web trực tiếp để tạo ra các poster từ bất kỳ đồ họa hoặc video đã phân tách nào bạn muốn. Điều này giúp việc viết kịch bản cho ứng dụng dễ dàng như tải một trang web.

Một trường hợp sử dụng nâng cao mà trước đây chỉ có các giải pháp vụng về thì nay đã khả thi và thú vị; một tính năng với nhiều dư địa để khám phá.

LLM đã giúp tôi tìm ra điều này và viết một kịch bản mà tôi lưu trong bộ khung; nhờ đó nó có thể chạy hàng tỷ lần mà không tốn token. Sản phẩm trở nên mạnh mẽ hơn vì bộ khung có thể tiếp cận nó. Có sự hỗ trợ cho API hệ thống tệp. Sau khi bật nó trên Brave, tôi đang đồng bộ hóa suy nghĩ của mình vào thư mục làm việc. Thu hoạch những lời bài hát buồn của chính mình để hát trong phòng một mình. Cảm giác đau đớn thật tuyệt. Một cách sử dụng sáng tạo khác mà tôi đang khám phá là làm việc trên môi trường Blender, nơi có khu phố của tôi ở dạng 3D với các poster phủ lên trên. Một khung cảnh, một kịch bản phân cảnh, nhiều hơn rất nhiều so với những gì tôi có thể làm từ web.

Ứng dụng hiện mang lại cảm giác hoàn thiện theo cách mà một năm trước là không thể. Những người sáng tạo vẫn có thể sử dụng một công cụ không phải AI theo cách của AI. Chúng ta có thể giữ lại cho riêng mình những phần thú vị nhất của việc sáng tạo.

Phân tích bộ khung

Tôi sống và làm việc dựa trên bộ khung này. Tôi đã ánh xạ cấu hình nvim của mình vào thư mục làm việc, và giờ đây LLM biết tôi đang mở tệp nào, có thể chỉnh sửa nó và – vì tôi vẫn là một "tay bơi chậm" – giúp tôi sử dụng các thao tác đúng. Tôi đang cố gắng nghĩ về bộ khung như một cái khuôn (jig): LLM ở đó chỉnh sửa cấu hình cùng tôi để tôi có thể tập trung làm việc trong khi vẫn giữ kỷ luật sử dụng các lệnh vim.

Bộ khung này khép kín để hỗ trợ nhiều hơn là chỉ một thư mục chính (sandbox, giao diện web, File System Access API, Docker, tệp thực thi Deno, v.v.).

Những khái niệm này vẫn đang hình thành trong tâm trí tôi nên tôi đã tham chiếu npm start, cursor-agent, claude dưới dạng các TUI để giữ cho khái niệm về bộ khung được rõ ràng. Tất cả các TUI đều chia sẻ chung bộ khung.

Việc duy trì khả năng kiểm toán là rất quan trọng, vì vậy các TUI được hướng dẫn giữ mọi thứ bên trong thư mục artifacts/. Cursor sử dụng.gitignore để bỏ qua các tệp, điều mà tôi nghĩ là thông minh, vì vậy cần một thư mục gốc không có git. Tôi có một kỹ năng đồng bộ hóa bộ khung với repo trong thư mục làm việc. Các kỹ năng, tiện ích mở rộng và AGENTS.md là những thành phần ưu tiên tại thư mục gốc, chờ được sửa đổi và xây dựng thêm. Các TUI phải tuân thủ quy tắc này.

Ban đầu tôi quá cứng nhắc với các kỹ năng của mình; tôi đang học cách giảm bớt sự cụ thể, và nhận ra rằng có một giới hạn mà nếu vượt qua, bạn chỉ đang lãng phí token để giải thích cho "đám máy móc". Khi bộ khung ổn định, tôi sẽ cần áp dụng cách tiếp cận thực nghiệm hơn để xác nhận tác động của các thay đổi.

Dưới đây là một số được ánh xạ vào quỹ đạo lập kế hoạch của tôi.

khám phá

lập kế hoạch

thực thi

đánh giá

quảng bá

Với đôi chân đã chạm đất, tôi không còn cảm thấy lạc lõng trong cursor-agent hay Claude. Tôi có quyền kiểm soát quy trình làm việc và có thể tự tạo ra cách mình thiết kế các giải pháp. Những gì tôi học được khi sử dụng Pi thường quay trở lại trải nghiệm Claude và Cursor của tôi. Với Pi, tôi tin rằng mình có thể vượt qua mọi vấn đề. Hãy để bộ khung chạy các kịch bản. Phối hợp các kịch bản đó với các LLM.

Trong ba tháng qua, tôi thấy mình rời trình soạn thảo để đến với terminal ngày càng nhiều. Nó giống như một sự hòa hợp của nhiều lý do. Tin tưởng giao mã nguồn cho các tác nhân, chuyển sang Ghostty, và chống lại sự suy thoái kỹ năng thông qua nvim đã diễn ra; thông thường việc xáo trộn như thế này sẽ làm tê liệt năng suất của tôi, nhưng các dự án cá nhân và công việc khách hàng của tôi lại đang ở mức độ và nhịp độ cao nhất. Những điều nhỏ nhặt như xây dựng ngữ cảnh xung quanh các tác vụ tác nhân dài hạn với các phân đoạn (splits) đã giúp tôi ổn định với trải nghiệm AI.

Tất cả điều này trở nên cấp bách khi chính phủ cấm Fable và bắt đầu thể hiện đặc quyền trong ngành. Tôi, và tôi cho rằng khoảng một trăm nghìn lập trình viên phần mềm khác, đột nhiên cảm thấy cần phải đa dạng hóa quyền truy cập mô hình của mình. Vì vậy, vì sự tự do, chúng tôi đã cùng nhau quyết định thử các mô hình của Trung Quốc. Pi đã chuyển từ một công cụ tôi chỉ dùng để nghịch ngợm trở thành phần quan trọng nhất trong hệ thống của tôi.

bình luận

Đọc bài gốc

Bài viết được AI dịch và tổng hợp tự động từ Hacker News Nổi bật (buzzing.cc bản dịch tiếng Trung). Liên kết bài gốc ở phía trên. Dữ liệu đồng bộ qua API công khai được ghi nguồn tại AI HOT (canonical) ↗. AIHOT.vn luôn dẫn nguồn đầy đủ — nếu bạn thấy điểm cần chỉnh sửa, hãy gửi ý kiến tại trang phản hồi.