Xin chào các độc giả của 2coffee.dev! Vậy là chỉ còn có vài ngày nữa thôi, năm Quý Mão sẽ chính thức khép lại nhường chỗ cho một năm mới Giáp Thìn với hy vọng có nhiều khởi sắc hơn. Đây cũng có thể là bài viết cuối cùng trong năm cũ mà tôi muốn dành tặng cho tất cả bạn của tôi.
Cách đây vài hôm, tôi có viết một bài Biến ChatGPT thành một "chuyên gia", trong đó có nhắc đến vấn đề sử dụng API của ChatGPT thì mới có thể sử dụng được "chuyên gia" vì chỉ trong API mới cho chúng ta thiết lập role system
, từ đó giúp ChatGPT thu hẹp được ngữ cảnh xuống và trả lời câu hỏi một cách chuẩn xác hơn.
Các cuộc gọi API đến ChatGPT là mất phí, tùy theo model GPT mà bạn đang sử dụng. Thú thật trước đó tôi cũng tìm đủ mọi cách để sử dụng miễn phí API nhưng mọi nỗ lực đều không đạt được.
Hôm qua, khi tình cờ "dạo" trên Github thì phát hiện ra một kho lưu trữ mã nguồn cho phép chúng ta sử dụng miễn phí gpt-4 thông qua Github Copilot. Vâng, bạn không nghe nhầm đâu, hoàn toàn miễn phí chỉ cần bạn có tài khoản Github Copilot.
Cho những ai chưa biết thì Github Copilot là một con AI của Github, nó sẽ giúp chúng ta trong vấn đề viết mã. Cá nhân tôi đã sử dụng Copilot được hơn một năm và nhận ra lợi ích của nó tương xứng với giá 10$ một tháng. Đúng rồi! Ý tôi là bạn cần bỏ ra 10$ hàng tháng để sử dụng Copilot. Nếu bạn đọc có hứng thú, có thể tôi sẽ viết một bài về Copilot trong tương lai.
Vì vậy, điều kiện tiên quyết để sử dụng gpt-4 miễn phí là phải có Github Copilot. Tiếp theo, hãy xem cách khai thác gpt-4 từ Copilot như thế nào nhé!
Nếu tôi nhớ không nhầm, Copilot được Github giới thiệu trước khi mô hình ChatGPT được công bố rộng rãi trên toàn thế giới. Khi nghe tin Copilot sắp ra mắt, tôi đã tò mò vào xem nó có gì, họ mô tả Copilot như một trợ lý viết mã thực thụ, nghĩa là thay vì viết một mình thì nó sẽ cũng viết cùng, dựa trên những gì bạn đã viết hoặc muốn viết.
Sau khi OpenAI công bố mô hình GPT, như một làn sóng, các nhà phát triển bắt đầu tích hợp nó vào trong sản phẩm để khiến ứng dụng của họ trở nên thông mình và có tính tương tác cao hơn. Thay vì ngồi bấm nút, chọn tính năng thì giờ đây, chỉ cần giao tiếp tực tiếp với sản phẩm thông qua văn bản hoặc lời nói thì ngay lập tức nó sẽ hiểu và giúp chúng ta làm công việc đó.
Copilot cũng không ngoại lệ, tính năng Copilot Chat Beta đã được giới thiệu sau một khoảng thời gian ngắn từ khi có ChatGPT. Về cơ bản, nó được tích hợp trong trình Editor/IDE, mà chúng là trình soạn thảo mã nguồn cho nên Copilot Chat có ngữ cảnh mã mà bạn đang viết, từ đó giúp cho nó hiểu hơn về bối cảnh và đưa ra câu trả lời chính xác cho điều mà bạn đang hỏi.
Ví dụ đây là một đoạn mã nguồn cho hàm mounted
trang tìm kiếm của tôi:
async mounted() {
await this.fetchResult();
if (!this.isHasResult) {
this.resetLimitOffset();
await this.fetchOtherResult();
}
process.nextTick(() => {
this.isMounted = true;
setTimeout(() => {
window.lazyload();
}, 1500);
});
},
Thử nhờ Copilot giải thích mounted
là làm cái gì, chúng ta có kết quả:
Nhìn chung, Copilot Chat sử dụng "GPT model" để trả lời các câu hỏi của chúng ta. Vì thế nên đã có một "pháp sư" nào đó trên Github tận dụng điều này để mang gpt-4 ra ngoài sử dụng. Tức là ngữ cảnh sử dụng giờ đây không bị bó hẹp trong code nữa, mà bạn có thể hỏi nó bất cứ câu hỏi nào, thậm chí biến nó thành "chuyên gia".
Có người thắc mắc thế sao không chat trực tiếp với Copilot Chat? Thì Github đã cao tay hơn, họ ngăn chặn các câu hỏi không liên quan đến code, chỉ trả lời cho những câu hỏi liên quan.
Bạn còn nhớ NextChat (ChatGPT Next Web) chứ? Sau một vài thiết lập đơn giản thì giờ đây nó đang hoạt động với gpt-4 của Copilot Chat thay vì với API key của OpenAI, tức là không bị tính tiền gọi API nữa.
Đến đây chắc hẳn nhiều bạn đọc đang rất nóng lòng muốn thử. Sở dĩ tôi nói nhiều vậy là chỉ muốn trình bày một cách ngắn gọn về cách mà công cụ copilot-gpt4-service đang khai thác gpt-4.
copilot-gpt4-service là kho lưu trữ mà tôi nhắc đến ở đầu bài viết. "Convert Github Copilot to ChatGPT" là dòng mô tả rất ngắn gọn mà đi vào đúng vào trọng tâm, nó cho phép tạo ra một máy chủ gpt-4 cục bộ dựa trên Github Copilot của bạn.
Tuy nhiên trước khi sử dụng có một vài lưu ý hết sức quan trọng là chỉ sử dụng cho mục đích cá nhân, chỉ một mình bạn sử dụng thôi thì càng tốt, bởi vì tài khoản Copilot hoặc thậm chí Github có thể bị cấm nếu lạm dụng.
Về cơ bản, khi khởi động mã nguồn này lên, nó sẽ tạo ra một máy chủ proxy đến ChatGPT. Bạn còn nhớ địa chỉ api của ChatGPT chứ? Đó là: https://api.openai.com
thì sau triển khai bằng copilot-gpt4-service, một địa chỉ cục bộ (local) được tạo ra để kết nối là http://localhost:8080
.
Nếu dùng Docker, cách nhanh nhất để tạo máy chủ là dùng 1 lệnh duy nhất:
$ docker run -d \
--name copilot-gpt4-service \
--restart always \
-p 8080:8080 \
aaamoon/copilot-gpt4-service:latest
Bạn sẽ cần làm thêm một bước để lấy được GitHub Copilot Plugin Token, sử dụng token đó thay cho OpenAI API key là đã có thể sử dụng được. Cách lấy khá đơn giản, ví dụ dành cho MacOS/Linux:
$ python3 <(curl -fsSL https://raw.githubusercontent.com/aaamoon/copilot-gpt4-service/master/shells/get_copilot_token.py)
Nhưng trước đó cần cài thêm thư viện requests
của python:
pip install requests
# hoặc python3
pip3 install requests
Rồi làm theo hướng dẫn chi tiết trong kết quả trả về là xong.
Cuối cùng, vào thiết lập lại cấu hình trong NextChat.
Hãy thử xem gpt-4 có hoạt động không nào!
Nếu chưa tin model trên là gpt-4, tác giả đã đề xuất một cách kiểm tra là hỏi một câu hỏi: "Why weren't I invited when my parents got married?". gpt-3.5 trả lời có đại ý là "They considered you too young at that time, so they didn't invite you.", còn gpt-4 thì trả lời một cách chính xác: "They got married before you were born".
Bạn cũng có thể triển khai máy chủ GPT này lên mạng internet với một vài thông số cấu hình bảo mật như trong hướng dẫn. Tuy nhiên dù bằng cách nào đi nữa, thì cũng nên nhớ chỉ sử dụng cho mục đích cá nhân thôi nhé!
Xin chào, tôi tên là Hoài - một anh Dev kể chuyện bằng cách viết ✍️ và làm sản phẩm 🚀. Với nhiều năm kinh nghiệm lập trình, tôi đã đóng góp một phần công sức cho nhiều sản phẩm mang lại giá trị cho người dùng tại nơi đang làm việc, cũng như cho chính bản thân. Sở thích của tôi là đọc, viết, nghiên cứu... Tôi tạo ra trang Blog này với sứ mệnh mang đến những bài viết chất lượng cho độc giả của 2coffee.dev.Hãy theo dõi tôi qua các kênh LinkedIn, Facebook, Instagram, Telegram.
Bình luận (7)