0
0
Lập trình
Admin Team
Admin Teamtechmely

Sử Dụng AI Hiệu Quả Trong Quy Trình Phát Triển: ChatGPT vs Continue

Đăng vào 6 tháng trước

• 8 phút đọc

Giới thiệu

Khi các công cụ AI viết mã đầu tiên xuất hiện, tôi đã khá hoài nghi. Tôi nghĩ, "Thật thú vị, lại thêm một bot nữa để tạo ra 'Hello World' bằng 50 ngôn ngữ." Nhưng khi tôi bắt đầu sử dụng một trong số chúng, quan điểm của tôi đã hoàn toàn thay đổi.

Tôi so sánh trải nghiệm này với việc chuyển từ việc tìm kiếm vô tận trên Google "tại sao tôi lại gặp lỗi này" sang việc có một đối tác lập trình ngay trong trình soạn thảo, chỉ vào lỗi và nói: "Xem lỗi đó ở dòng 42? Đây là cách sửa nó."

Tôi đã bắt đầu khám phá thêm nhiều công cụ AI viết mã và suy nghĩ lại về quy trình phát triển của mình khi tôi gặp Continue.dev, một công cụ AI mã nguồn mở. Tôi tự hỏi nó so với ChatGPT như thế nào. Trong bài viết này, tôi sẽ thảo luận về những điểm khác biệt giữa hai công cụ này.


Tóm tắt: So sánh ChatGPT và Continue

Tính năng/Khía cạnh ChatGPT Continue
Nơi hoạt động Trình duyệt (web-based) Trong IDE của bạn (VS Code, JetBrains)
Nhận thức ngữ cảnh Không có (chỉ những gì bạn dán vào) Toàn bộ dự án (tập tin, phụ thuộc, cấu trúc)
Tùy chỉnh Hạn chế (chỉ kỹ thuật prompt) Tùy chỉnh cao (chọn LLM, xây dựng hành động)
Đường cong học tập Rất thấp (chỉ cần hỏi) Trung bình (cần thiết lập + tinh chỉnh)

ChatGPT: Công Cụ Đa Năng

Bạn có thể đã sử dụng nó trước đây. ChatGPT là một chatbot AI hội thoại được phát triển bởi OpenAI. Nó sử dụng mô hình ngôn ngữ lớn (LLM) để hiểu và tạo ra văn bản theo yêu cầu của người dùng, và có thể được sử dụng cho nhiều tác vụ khác nhau. ChatGPT rất tuyệt cho:

  • Động não và Học tập: Bạn có thể yêu cầu nó giải thích một thuật toán phức tạp, giúp bạn hiểu một khái niệm lập trình mới, hoặc thậm chí soạn tài liệu.
  • Trả lời Nhanh: Bạn có thể sử dụng nó để viết một đoạn mã nhanh bằng một ngôn ngữ mà bạn chưa quen thuộc. Dữ liệu đào tạo khổng lồ của nó giúp dễ dàng giải quyết nhiều loại tác vụ.
  • Gỡ lỗi Đơn giản: Bạn có thể dán một đoạn mã và hỏi, "Tại sao cái này không hoạt động?" và nó thường đưa ra một giải thích chi tiết.

Những Nhược Điểm Khi Sử Dụng ChatGPT Trong Phát Triển Địa Phương

  • Mất Ngữ Cảnh: Khi bạn hỏi một câu hỏi, nó sẽ đưa ra một câu trả lời. Tuy nhiên, nó không biết mã nguồn thực tế của bạn, cấu trúc dự án hoặc cách mà các tập tin khác nhau liên kết với nhau. Điều này dẫn đến những phản hồi mơ hồ với những yêu cầu cụ thể cần chiều sâu về cấu trúc dự án.
  • Gián đoạn Quy Trình: Các nhà phát triển thường gặp khó khăn trong việc duy trì động lực khi phải rời khỏi trình soạn thảo, chuyển cửa sổ và sao chép dán mã để tìm kiếm các yêu cầu phù hợp. Việc này có thể gây ra sự thất vọng lớn.
  • Tích Hợp Hạn Chế Với Công Cụ Thực Tế: ChatGPT là một chatbot, không phải là công cụ phát triển. Nó không thể mở các tập tin, chạy bộ kiểm tra của bạn hoặc đề xuất các thay đổi trực tiếp trong trình soạn thảo của bạn.
  • Quan Ngại Về Bảo Mật & Quyền Riêng Tư: Đối với nhiều nhà phát triển, đặc biệt là những người làm việc trong các đội nhóm doanh nghiệp, việc dán mã nhạy cảm hoặc độc quyền vào một trang web công khai là điều không thể chấp nhận. Một số công ty thậm chí còn cấm sử dụng các công cụ như vậy do các chính sách bảo mật và quyền riêng tư.

ChatGPT Phù Hợp Nhất Với

  • Người mới bắt đầu hoặc sinh viên đang học các khái niệm mới.
  • Các nhà phát triển muốn có một trợ lý AI đa năng.
  • Các tác vụ lập trình hoặc không lập trình nhanh chóng (tài liệu, động não, v.v.).

Continue: Trợ Lý Lập Trình Tích Hợp

Continue là một công cụ AI viết mã sống ngay trong IDE của bạn (như VS Code hoặc JetBrains) và CLI. Nó được xây dựng để nâng cao quy trình phát triển, có khả năng tùy chỉnh sâu và học hỏi liên tục từ dữ liệu phát triển. Với Continue, bạn có thể kết nối và sử dụng bất kỳ LLM nào (ví dụ: OpenAI, Claude, hoặc LLama cho Chat) để cung cấp ngữ cảnh mã và cho phép tự động hoàn thành. Continue nổi bật với:

  • Hiểu Dự Án Của Bạn: Không giống như ChatGPT, Continue có thể thấy đoạn mã bạn đang làm việc và đọc toàn bộ dự án, bao gồm tất cả các tập tin, phụ thuộc và cấu trúc mã. Điều này có nghĩa là khi bạn yêu cầu giúp đỡ, nó sẽ đưa ra các gợi ý có nhận thức ngữ cảnh.
  • Giúp Bạn Duy Trì Quy Trình: Bạn không cần phải rời khỏi trình soạn thảo của mình. Bạn có thể sử dụng giao diện trò chuyện của nó để đặt câu hỏi, và nó sẽ đưa ra các gợi ý trong dòng, ngay cả trong dòng lệnh.
  • Cho Bạn Kiểm Soát: Continue là mã nguồn mở, điều này có nghĩa là bạn có thể chọn mô hình AI (GPT-4, Claude, hoặc thậm chí các mô hình cục bộ) và xây dựng các tác nhân tùy chỉnh phù hợp với phong cách lập trình của nhóm bạn.

Nơi Nó Đánh Rơi

  • Cần Thiết Lập: Cần một số cấu hình để thiết lập trước khi nó thực sự trở nên liền mạch trong quy trình của bạn. Tuy nhiên, nó có một cộng đồng hỗ trợ năng động có sẵn qua các cuộc thảo luận trên GitHub và Discord.
  • Đường Cong Học Tập: Để mở khóa sức mạnh đầy đủ của nó, bạn sẽ cần một chút thời gian để học hỏi và cấu hình nó theo nhu cầu cụ thể của mình.

Continue Phù Hợp Nhất Với

  • Các nhà phát triển muốn trợ giúp lập trình từ sự thoải mái của IDE hoặc sử dụng CLI cho hỗ trợ dòng lệnh nhanh chóng.
  • Các nhóm muốn tránh bị mắc kẹt trong một nền tảng độc quyền duy nhất.
  • Các nhóm muốn chuẩn hóa quy trình của họ, chia sẻ các quy tắc tùy chỉnh, thực tiễn tốt nhất và kiến thức cụ thể của dự án để đảm bảo tính đồng nhất và hiệu quả.
  • Các nhà phát triển muốn kiểm soát và tùy chỉnh môi trường lập trình và quy trình của riêng họ.

Tính Năng Chính Của Continue

Continue đi kèm với các tính năng chính mà bạn sẽ mong đợi từ một trợ lý lập trình: Trò chuyện, tự động hoàn thành, chỉnh sửa, áp dụng, nhúng và xếp hạng lại.

  • Trò Chuyện: Tính năng cơ bản nhưng linh hoạt nhất. Tôi đã sử dụng nó trong một phiên gỡ lỗi lộn xộn, nó không đưa ra câu trả lời chung chung, mà còn chỉ ra các lỗi thực tế trong ngữ cảnh dự án của tôi.

  • Tự Động Hoàn Thành: Nó sử dụng ngữ cảnh dự án để gợi ý đoạn mã tiếp theo mà bạn sắp viết. Bạn chỉ cần nhấn Tab, và mã mẫu sẽ tự viết. Điều này đặc biệt hữu ích khi viết các bài kiểm tra lặp đi lặp lại hoặc thiết lập cấu hình trên nhiều tập tin.

  • Chỉnh Sửa: Bạn có thể chọn một đoạn mã, gõ "tái cấu trúc cái này," và nó sẽ tinh chỉnh nó thành một phiên bản sạch sẽ và dễ đọc trong vài giây.

  • Áp Dụng: Bạn có thể kích hoạt một hành động để tạo ra các bài kiểm tra đơn vị cho một tập tin nhất định hoặc tự động tài liệu cho một hàm. Thay vì trò chuyện qua lại, các hành động được thực thi trực tiếp.

  • Nhúng: Nó chuyển đổi mã của bạn thành một đại diện số duy nhất, cho phép AI thực hiện tìm kiếm ngữ nghĩa.

  • Xếp Hạng Lại: Nó cải thiện độ liên quan của tìm kiếm bằng cách sắp xếp lại các kết quả ban đầu dựa trên ý nghĩa ngữ nghĩa thực sự của chúng, đảm bảo rằng thông tin hữu ích nhất luôn ở trên cùng.


Vậy, Công Cụ Nào Phù Hợp Với Bạn?

Cuối cùng, những công cụ này không phải là đối thủ cạnh tranh, mà là bổ sung cho nhau. Sự lựa chọn giữa một công cụ đa năng như ChatGPT và Continue phụ thuộc vào ưu tiên của bạn.

Nếu bạn đang tìm kiếm một công cụ đa năng để học hỏi và nhận được các câu trả lời cấp cao, ChatGPT là một nguồn tài nguyên tuyệt vời. Ngược lại, nếu mục tiêu của bạn là xây dựng, tái cấu trúc hoặc gỡ lỗi mã trong một quy trình an toàn hoàn toàn từ trong trình soạn thảo hoặc dòng lệnh của bạn, thì Continue là lựa chọn tốt nhất của bạn.

Gợi ý câu hỏi phỏng vấn
Không có dữ liệu

Không có dữ liệu

Bài viết được đề xuất
Bài viết cùng tác giả

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào