2 điểm bởi GN⁺ 4 giờ trước | 1 bình luận | Chia sẻ qua WhatsApp
  • Lathe là một thử nghiệm dùng LLM để dạy học thay vì để nó nghĩ thay, bằng cách tạo ra các hướng dẫn kỹ thuật kiểu thực hành từ prompt và để người dùng tự tay làm theo trong UI cục bộ để học
  • Hỗ trợ tạo hướng dẫn một phần hoặc nhiều phần, đồng thời cung cấp các LLM skills để đặt câu hỏi, xác minh hướng dẫn, mở rộng thêm phần mới và thêm thẻ tìm kiếm
  • Có thể tạo hướng dẫn trong các phiên LLM tương tác của Claude Code, Cursor và Codex, còn CLI lathe viết bằng Go phụ trách lưu, quản lý, hiển thị và duy trì trạng thái bền vững của hướng dẫn
  • Bản thân CLI không gọi LLM; các nút web và lệnh lathe verify, lathe extend hoạt động bằng cách cung cấp skill command để dán vào phiên LLM
  • UI web cục bộ chạy bằng lathe serve với cổng mặc định 4242; trong danh sách hướng dẫn hỗ trợ tìm kiếm theo tiêu đề, chủ đề, thẻ, kho lưu trữ, phiên bản công cụ và sắp xếp theo mới nhất, cũ nhất, tiêu đề, cùng các bộ lọc theo trạng thái, loại, thẻ và phiên bản
  • UI đọc cung cấp điều hướng mục lục ở thanh bên phải, ghi chú bên lề trong phần thân bài và các bài tập dành cho người đọc ở cuối hướng dẫn
  • Mọi hướng dẫn đều ghi lại nguồn đã dùng, mô hình và prompt đã định hình văn phong của hướng dẫn; có thể kiểm tra thông tin nguồn trong trường sources của metadata.json và bảng nguồn trong UI
  • Các hướng dẫn được lưu trong đường dẫn toàn cục ~/.lathe/tutorials/ dưới dạng thư mục theo từng slug, gồm metadata.json và các tệp phần như part-01.md hoặc index.md
  • Cài đặt theo cách đặt một tệp nhị phân độc lập duy nhất lathe vào $PATH; hỗ trợ Homebrew cask cho macOS, script cài đặt curl | sh, go install dựa trên Go 1.25+ và build từ mã nguồn
  • Các skills được đóng gói sẵn trong binary và có thể cài vào vị trí dành cho Claude Code, Cursor, Codex bằng lathe skills install
  • Văn phong hướng dẫn được điều khiển bằng voice; mặc định có sẵn plainspokencompanion, và có thể tạo voice tùy chỉnh bằng /lathe-voice
  • Voice chỉ thay đổi văn phong, không thay đổi độ chính xác, cách khảo sát, trích dẫn, xác minh hay cấu trúc; voice tùy chỉnh được thiết lập để từ chối mạo danh người có thật, giả mạo tư cách hoặc phủ nhận tác giả là LLM
  • Xác minh là tùy chọn và chạy trong phiên LLM tương tác bằng /lathe-verify <slug>; nó tạo tệp trong thư mục scratch mới mktemp -d, chạy các lệnh và khối ## Checkpoint, rồi ghi lại kết quả
  • Trạng thái xác minh là một trong unverified, verifying, verified, failed, skipped, extending; nếu thiếu công cụ cần thiết thì không ghi là thất bại mà là skipped
  • Xác minh chạy dưới mô hình quyền hạn LLM thông thường nên có thể xem và phê duyệt các lần gọi công cụ; thư mục scratch chỉ là quy ước để đặt các sản phẩm build ra ngoài kho lưu trữ, không phải ranh giới bảo mật
  • Vì Lathe là LLM nên nó có thể thất bại theo đúng những cách mà LLM thường thất bại; tác giả khuyến nghị dùng mô hình “thinking” lớn nhất có thể truy cập được để tạo hướng dẫn
  • Trường hợp sử dụng tự kiểm thử hiện tại là Claude Code trên macOS; các cấu hình khác có thể hoạt động nhưng được nêu rõ là chưa được xác minh
  • Không nhằm phục vụ việc viết nội dung ngoài mục đích sử dụng cá nhân cho học tập cá nhân

1 bình luận

 
Ý kiến trên Hacker News
  • Một cách tương tự cũng hay là để LLM liên tục đố bạn bằng đối thoại kiểu Socrates về chủ đề bạn quan tâm
    Nó cứ tiếp tục đặt các câu hỏi ở mức sâu hơn để bạn tự đi tới câu trả lời, và quá trình đó buộc bạn phải suy nghĩ nghiêm túc về vấn đề, từ đó giúp ích cho việc hiểu, học và ghi nhớ
    Vì vậy tôi đã tạo một kỹ năng Socratic-quiz có thể dùng trong các coding agent hay công cụ tương tự: https://pchalasani.github.io/claude-code-tools/plugins-detai...
    Ví dụ, tôi đã dùng nó để hiểu tốt hơn những nội dung đi ngược trực giác như tiểu đường/insulin, dopamine và động lực, hay cách Claude được triển khai; nó cũng giúp giảm cái gọi là nợ nhận thức
    LLM mạnh lại giỏi kiểu đố này một cách đáng ngạc nhiên, và trông hơi giống một dạng lý thuyết về tâm trí

    • Trong trường hợp này không biết xử lý suy giảm độ dài ngữ cảnh như thế nào
      Vì các câu hỏi khó hơn có lẽ chỉ xuất hiện khi ngữ cảnh đã gần đầy
    • Nếu nguồn sức mạnh là LLM, thì không có LLM thì bạn là gì?
    • Nó có thể hữu ích nếu dùng để bổ trợ cho việc học bằng tài liệu thực tế
      Tôi nói khá nhẹ nhàng rằng mình đã “hiểu” các chủ đề phức tạp như tiểu đường/insulin, dopamine và động lực, nhưng để thực sự hiểu trọn vẹn thì vẫn cần học rất nhiều
      Nếu xem nó như một hình thức học dựa trên tò mò thì ổn, nhưng để học những thứ thật sự quan trọng hay nghiêm túc thì tôi chưa chắc
      Cách truyền thống là tìm tài liệu và theo các khóa học có hướng dẫn vẫn có tổ chức hơn và nhanh hơn phương pháp này
  • Có lẽ lúc nào cũng sẽ tồn tại một nhóm người với phạm vi khá ổn định như trước giờ
    Có người vốn rất tò mò, muốn hoặc cần hiểu điều mình đang làm, còn có người thì không, họ chỉ muốn thực thi thôi
    Chính nhu cầu đó là đặc điểm tính cách nền tảng tạo nên chuyên gia
    LLM là công cụ như mơ cho những người tò mò kiểu này, và thậm chí sẽ còn tăng tốc họ hơn nữa
    Thực ra gần như không có “mất mát” nào; chỉ là những người không bận tâm giờ có thể làm việc dễ hơn
    Điều đó tốt cho họ và cũng tốt cho những người tò mò, nên nhìn chung là có lợi

    • Tôi nghĩ là cả hai, và nó thay đổi tùy đối tượng là gì cũng như lúc đó bạn đang làm gì
      Có những lúc đào sâu lâu dài là vui và thú vị
      Nhưng cũng có lúc tôi chẳng mấy tò mò về việc tại sao cái gì đó không chạy, chỉ muốn làm cho nó hoạt động để quay lại việc mình định làm ban đầu
      Cuối cùng tôi thấy LLM đều hữu ích trong cả hai trường hợp
    • Có người có thể tiếp tục giữ sự tò mò bất kể môi trường thế nào, nhưng cũng có người có thể nghiêng về phía nuôi dưỡng hoặc đánh mất sự tò mò tùy theo trải nghiệm sống
      Nút “chỉ cho tôi đáp án ngay bây giờ” luôn ở bên cạnh có thể là một lực kéo rất mạnh đẩy họ về phía thờ ơ
  • Tôi thấy đây là một ý tưởng khá mới mẻ
    Điểm mạnh lớn của LLM là nó là một công cụ học tập tuyệt vời
    Nhiều người chỉ muốn dùng nó để tạo ra thứ gì đó, nhưng có vẻ phần tri thức mà nó mang lại lại bị đánh giá thấp
    Có thể đây là gia sư tốt nhất mà chúng ta từng có
    Ngoài ra, tôi không thích cái không khí cứ như phải công khai xem dự án có nhằm kiếm tiền hay không
    Kiếm tiền không nên bị quỷ hóa hay bị nhìn bằng ánh mắt thiếu thiện cảm

  • Gần đây trong công việc tôi dùng kiểu mẫu tổng quát này rất nhiều
    Tôi xây các tác vụ mang tính quyết định bằng ứng dụng CLI tùy chỉnh, rồi gắn kỹ năng vào agent harness, sau đó để tác nhân chạy các kỹ năng đó từ bên trong agent để tạo ra đầu ra bằng CLI kết hợp suy luận kiểu agent
    Ví dụ, nếu tôi nói “hãy tạo cho tôi bản tóm tắt cấp điều hành về hoạt động backlog của các nhóm này trong tháng qua” thì trong vòng 5–10 phút tôi có thể đọc một tài liệu dài vài trang, kèm cả trích dẫn từ các ticket đã phân tích
    Không cần làm phiền mọi người hay nhờ thêm việc khác, chỉ cần backlog vẫn được cập nhật và ghi chi tiết như bình thường
    Nó chiếm một vị trí rất hữu dụng giữa việc dùng agent thuần túy — vốn khó cho ra kết quả nhất quán ở các tác vụ lặp lại — và việc cứ mỗi chuyện nhỏ lại phải tự làm hoặc mua hẳn một ứng dụng hoàn chỉnh

    • Cách tiếp cận này hoạt động tốt, tôi đồng ý
      Chỉ là tôi cứ có cảm giác muốn đảo ngược nó lại
      Cấu trúc tôi muốn thường là một chương trình CLI truyền thống, nơi phần lớn tri thức và quyết định của workflow được mã hóa bằng code thật, còn chỉ ở một vài bước workflow cụ thể mới gọi coding agent “một chút xíu”
      Tôi chưa rõ nên triển khai thế nào
      Cũng tò mò không biết đã có thư viện nào như vậy chưa, và nếu có thì nó hoạt động ra sao
      Nếu làm cho đúng, có lẽ cần một dịch vụ nền để phần mềm CLI có thể tương tác qua một socket IPC cục bộ đã được biết trước
      Ví dụ như cách docker daemon hoạt động
      Nhưng tôi chưa biết phần mềm hay framework coding agent nào phơi bày chức năng IPC như vậy
    • Đồng ý
      Tôi nghĩ lần đầu thấy mẫu này là trong một số thứ Simon Willison làm, có lẽ là Rodney và Showboat
      Trong một số workflow nhất định, tổ hợp Skills + CLI cho sự cân bằng tốt giữa tính linh hoạt của LLM và tính nhất quán của CLI
    • Tôi muốn nghe thêm vài ví dụ về các tác vụ mang tính quyết định
      Trong ví dụ của bạn, tác vụ mang tính quyết định là “lấy backlog của các nhóm này”, còn phần LLM là “xử lý từng backlog” và “gộp các bản tóm tắt” đúng không?
  • Tôi vừa cập nhật kỹ năng /grill-me khá phổ biến đúng cho mục đích này
    Hôm qua tôi đã có một phiên chất vấn dồn dập cực kỳ sắc sảo, đi tới tận chi tiết cuối cùng, về chuyện chính xác điều gì xảy ra khi cố tải một dataset cực lớn trong pandas

    • Có nơi nào công khai phiên bản đó không?
  • Cách này rất hay
    Cách đây không lâu tôi đã nói với một người bạn rằng học lập trình là học bằng cách tự tay gõ code
    Vì vậy tôi đã gợi ý họ thử dùng LLM để tạo ra các ví dụ giảng dạy tối giản, phù hợp với mối quan tâm và nhu cầu của họ
    Tôi đã thử cách học lập trình kiểu Zed Shaw, tức là gõ lại nguyên văn các ví dụ code bằng tay như luyện phác thảo trong âm nhạc hay mỹ thuật
    Tôi đem thử với một ngôn ngữ lập trình mà mình đã học một thời gian nhưng vẫn còn chật vật, và chỉ sau vài giờ gõ, độ trôi chảy đã tăng lên rõ rệt
    Tôi nhận ra rằng trong vài giờ gõ đó, tôi đã viết nhiều code hơn so với mấy tuần học trước đó
    Nếu bạn chưa biết ngôn ngữ đó, việc tự tạo ra code sẽ rất chậm và đầy lỗi, nhưng việc gõ lại code đúng thì tương đối đơn giản
    Vì thế khi tôi đổi cách tiếp cận sang kiểu “cứ gõ mù quáng thôi”, thì ít nhất ở khía cạnh đọc hiểu và trí nhớ cơ bắp, tôi đã luyện tập nhiều hơn trong vài giờ so với mấy tuần trước đó
    Tất nhiên hiểu biết vẫn quan trọng, nhưng theo kinh nghiệm của tôi, đó là một trục riêng và phần lớn sẽ đến sau trí nhớ và độ trôi chảy
    Hiểu một thứ trên lý thuyết và thực sự có thể dùng được nó là hai việc rất khác nhau
    Nguyên lý nền tảng ở đây là giả thuyết đầu vào về tiếp thu ngôn ngữ của Stephen Krashen: https://en.wikipedia.org/wiki/Input_hypothesis
    Ý là trẻ em học ngôn ngữ chỉ bằng cách nghe nói và được tiếp xúc với đầu vào, và người lớn cũng có thể học theo cách đó
    Tôi cũng từng đọc về chuyện này trên trang web tuyệt vời All Japanese All The Time, dù giờ có thể nó không còn nữa
    Tác giả nói rằng ông ấy đã tự kiểm chứng giả thuyết đó bằng cách nghe tiếng Nhật thật nhiều và đạt được độ trôi chảy chỉ trong 1 năm
    https://web.archive.org/web/20080705194055/http://www.alljap...

  • Ý tưởng rất hay, và trong thời buổi hỗn loạn này nó có cảm giác như một cách dùng LLM cho tỉnh táo
    Khi bắt đầu một dự án mới mà mọi thứ đều thấy vướng víu, đây có thể là một cách tốt để phá băng

    • Thực ra đó chính là ca sử dụng chính của tôi
      Nó giúp hạ thấp rào cản để bước vào một dự án mới, rồi khi đã quen tay thì tạo nền để tôi tự đào sâu thêm
  • Tôi nghĩ đây là một lĩnh vực thú vị
    Tôi cũng từng nghĩ đến thứ tương tự khi chuẩn bị cho phỏng vấn thiết kế hệ thống
    Tôi đã thử nghiệm với vài loạt bài blog về thiết kế Twitter và thiết kế WhatsApp: https://prepcommons.com/
    Dù vậy, nó vẫn tốn công hơn rất nhiều so với việc chỉ xử lý yêu cầu ban đầu
    AI giúp ai cũng có thể tạo ra kết quả ở mức trung bình, nhưng để làm ra kết quả tốt thì vẫn cần gu và con mắt đánh giá
    Có lẽ với bài giảng cũng áp dụng y như vậy

  • Dự án rất hay, tôi định sẽ thử dùng
    Khi học một chủ đề mới, tôi khá thích cách bỏ toàn bộ tài liệu mình có vào một “project” của LLM, rồi yêu cầu nó dạy dựa trên chính nội dung thực tế đó để tăng tốc
    Đồng thời, tôi cũng lo rằng nếu mọi thứ đều được sắp xếp gọn ghẽ đúng theo ý mình, thì sự hiểu biết được xây dựng từ việc tự xem tài liệu gốc và tự vật lộn để nắm bắt sẽ yếu đi
    Vì vậy, một cách tiếp cận như thế này — vẫn phần nào giảm bớt sự lười biếng trí tuệ do LLM gây ra nhưng tập trung hơn vào việc tự tay làm thật — rất hợp gu của tôi

  • Điều tôi tò mò hơn là trải nghiệm thực tế khi dùng công cụ vibe coding do chính bạn làm ra
    Chỉ qua phần giới thiệu thì tôi chưa rõ bạn có thực sự dùng nó và thích nó không
    Bạn nói là có dùng và thỉnh thoảng còn phản biện lại nó, mà bản thân điều đó cũng có thể là một chiến lược học tập
    Ngoài ra, chuyện “thử xem tutorial có compile được bằng model khác hay không” cũng hơi khó gọi là một tính năng
    Tất nhiên tôi không kỳ vọng một tutorial hoàn hảo tuyệt đối chỉ sau một lần yêu cầu
    Tôi cũng chưa rõ vì sao nên dùng cái này thay vì prompt viết tay, và cũng tò mò vì sao ChatGPT Study mode lại thất bại
    Vì nhìn nó khá thú vị

    • Tôi đã dùng nó khá nhiều và rất thích
      Tất nhiên bạn hoàn toàn có thể tự viết prompt
      Giá trị mà tôi thấy là các kỹ năng/prompt có thể tái sử dụng sẽ cấu trúc tutorial sao cho Claude giúp tôi suy nghĩ và học các khái niệm mới, thay vì chỉ đưa code để sao chép rồi dán vào
      Và nhờ UI cục bộ, việc theo tutorial cũng thoải mái hơn nhiều so với cuộn qua đầu ra Markdown của Claude
      Chuỗi tutorial cũng được lưu lại liên tục, nên về sau tôi có thể dễ dàng nối tiếp sang một chủ đề quan tâm khác hoặc mở rộng tutorial bằng /lathe-extend
      Dù vậy, đây chỉ là một công cụ hữu ích với cá nhân tôi, không nhất thiết phải như vậy với mọi người
      Tôi chưa từng dùng ChatGPT Study nên sẽ tìm hiểu thêm. Cảm ơn bạn đã cho biết