Giới thiệu về Model Context Protocol

Chủ nhật, ngày 30 tháng 3 năm 2025

Ngày nay, AI được ứng dụng rộng rãi trong nhiều lĩnh vực, đặc biệt là trong các công việc hằng ngày của dân văn phòng và dân lập trình. Mặc dù AI rất giỏi trong việc phân tích và hiểu dữ liệu, nhưng chúng vẫn gặp hạn chế về khả năng lưu trữ thông tin, truy xuất dữ liệu bên ngoài và tương tác với môi trường xung quanh.

Trong bài viết này, mình sẽ giới thiệu một phương pháp giúp các mô hình AI mở rộng khả năng truy cập dữ liệu cũng như tương tác linh hoạt hơn với các đối tượng trong hệ thống.


Xây dựng hệ thống RAG cho AI agent

Thứ bảy, ngày 29 tháng 3 năm 2025

Ngày nay, AI đã trở thành một công cụ không thể thiếu trong công việc hằng ngày, đặc biệt là đối với dân văn phòng và lập trình viên. Tuy nhiên, các mô hình AI hiện tại vẫn gặp nhiều hạn chế trong việc truy cập và xử lý thông tin.

Vì vậy, trong bài viết này, mình sẽ giới thiệu một phương pháp giúp nâng cao khả năng tìm kiếm thông tin của AI cũng như cải thiện cách AI truy xuất dữ liệu một cách hiệu quả hơn.


Xây dựng hệ thống monitor đơn giản trong Kubernetes

Thứ ba, ngày 18 tháng 2 năm 2025

Một trong những thành phần quan trọng của một hệ thống là khả năng có thể quan sát và theo dõi trạng thái của một hệ thống.

Một hệ thống có thể quan sát sẽ gúp cho team vận hành dễ dàng quản lí, bảo trì và nâng cấp hệ thống.

Trong bài viết này, mình sẽ chia sẽ các xây dựng thành phần observability cho hệ thống Kubernetes một cách đơn giản nhất.

Bạn có thể sử dụng repository của mình để chạy thử dưới local để theo có động lực tìm hiểu thêm về chủ đè này.


OAuth2

Thứ tư, ngày 2 tháng 10 năm 2024

OAuth2 là một giao thức ủy quyền cho phép các ứng dụng có quyền truy cập hạn chế vào tài khoản người dùng trên dịch vụ HTTP. Nó cung cấp một cách an toàn để người dùng cấp quyền truy cập vào tài nguyên của họ cho các ứng dụng bên thứ ba mà không cần chia sẻ thông tin đăng nhập.


Từ Inversion of Control đến Dependency Injection

Chủ nhật, ngày 2 tháng 6 năm 2024

Inversion of Control và Dependency Injection là hai khái niệm quan trọng trong lập trình hướng đối tượng. Nó là những nguyên lý cơ bản giúp chúng ta xây dựng các ứng dụng linh hoạt, dễ bảo trì và mở rộng. Bài viết này sẽ giúp bạn hiểu rõ hơn về Inversion of Control và Dependency Injection.


Giới hạn của luồng trong Python

Thứ bảy, ngày 25 tháng 5 năm 2024

Luồng(thread) trong Python có gì khác so với luồng trong các ngôn ngữ lập trình khác? GIL là gì? Có phải sử dụng đa luồng, đa tiến trình sẽ luôn hiệu quả hơn đơn luồng, đơn tiến trình không? Trong bài viết này, mình sẽ chia sẻ về giới hạn của luồng trong Python và đưa ra lời khuyên trong trường hợp nào thì dùng đa luồng, đa tiến trình hay chỉ cần dùng đơn luồng.


Sử dụng observer pattern trong lập trình web

Thứ năm, ngày 9 tháng 5 năm 2024

Design pattern là một trong những kĩ năng cần thiết của một lập trình viên. Không chỉ biết, việc áp dụng thành thạo các design pattern vào công việc hằng ngày cũng giúp các lập trình viên nâng cao giá trị bản thân của mình trong ngành. Trong bài viết này, mình sẽ chia sẻ một trong những design pattern tương đối phổ biến và các áp dụng nó vào trong lập trình web frontend - Observer pattern.


Từ PEP 492 tới kỉ nguyên bất đồng bộ

Thứ ba, ngày 27 tháng 6 năm 2023

Bất đồng bộ có thể được triển khai trong rất nhiều ngôn ngữ lập trình, kể cả Python. Tuy nhiên, bất đồng bộ trong Python thuở sơ khai chưa được sử dụng rộng rãi như Javascript hay C# bởi cách thực hiện khó khăn. Trong bài viết này, mình sẽ giới thiệu về lịch sử của lập trình bất đồng bộ trong Python và sự lớn mạnh của nó ở thời điểm hiện tại.


Những bí mật trong Python có thể bạn chưa biết?

Thứ ba, ngày 20 tháng 6 năm 2023

Python là một ngôn ngữ lập trình đa năng, dễ học nhờ cú pháp sáng sủa. Tuy nhiên, đằng sau vẻ ngoài đẹp đẽ đó lại ẩn chưa những điều mà không phải ai cũng biết. Để biết đó là những điều gì, chúng ta cùng tìm hiểu nhé?


    Tại sao FastAPI lại nhanh?

    Thứ sáu, ngày 16 tháng 6 năm 2023

    Gần đây, có một web framework đang nổi lên trong cộng đồng Python - FastAPI. Trong bài viết này, mình sẽ đi phân tích tại sao framework này lại "fast"