Skip to content

Commit 2ffacfa

Browse files
committed
feat: add toctree and translation unit 1 2
1 parent 8a42f02 commit 2ffacfa

File tree

10 files changed

+1876
-0
lines changed

10 files changed

+1876
-0
lines changed

units/vi/_toctree.yml

Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
- title: "0. Chào mừng đến với Khóa học MCP"
2+
sections:
3+
- local: unit0/introduction
4+
title: Chào mừng đến với Khóa học MCP
5+
6+
- title: "1. Giới thiệu về Giao Thức Ngữ Cảnh Mô Hình (MCP)"
7+
sections:
8+
- local: unit1/introduction
9+
title: Giới thiệu về Giao Thức Ngữ Cảnh Mô Hình (MCP)
10+
- local: unit1/key-concepts
11+
title: Khái niệm và Thuật ngữ chính
12+
- local: unit1/architectural-components
13+
title: Các thành phần kiến trúc
14+
- local: unit1/communication-protocol
15+
title: Giao thức truyền thông
16+
- local: unit1/capabilities
17+
title: Hiểu về khả năng của MCP
18+
- local: unit1/sdk
19+
title: MCP SDK
20+
- local: unit1/mcp-clients
21+
title: MCP Clients
22+
- local: unit1/gradio-mcp
23+
title: Tích hợp Gradio với MCP
24+
25+
- title: "2. Trường hợp sử dụng: Ứng dụng MCP đầu cuối"
26+
sections:
27+
- local: unit2/introduction
28+
title: Giới thiệu về Xây dựng Ứng dụng MCP
29+
- local: unit2/gradio-server
30+
title: Xây dựng Máy chủ Gradio MCP
31+
- local: unit2/clients
32+
title: Sử dụng MCP Clients với ứng dụng của bạn
33+
- local: unit2/gradio-client
34+
title: Xây dựng MCP Clients bằng Gradio
35+
- local: unit2/tiny-agents
36+
title: Xây dựng Tiny Agent với TypeScript
37+
38+
- title: "3. Trường hợp sử dụng: Phát triển MCP Nâng cao"
39+
sections:
40+
- local: unit3/introduction
41+
title: Sắp ra mắt
42+
43+
- title: "Các chương bổ trợ"
44+
sections:
45+
- local: unit4/introduction
46+
title: Sắp ra mắt

units/vi/unit0/introduction.mdx

Lines changed: 135 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,135 @@
1+
# Chào mừng bạn đến với 🤗 Khóa học Giao Thức Ngữ Cảnh Mô Hình (MCP)
2+
3+
![MCP Course thumbnail](https://huggingface.co/datasets/mcp-course/images/resolve/main/unit0/1.png)
4+
5+
Chào mừng các bạn đến với chủ đề thú vị nhất trong AI hiện nay: **Giao Thức Ngữ Cảnh Mô Hình (MCP)**!
6+
7+
Khóa học miễn phí này sẽ dẫn dắt các bạn **từ người mới bắt đầu trở thành người am hiểu** về cách sử dụng và xây dựng ứng dụng với MCP.
8+
9+
Chương đầu tiên sẽ giúp bạn làm quen:
10+
* Khám phá **giáo trình khóa học**
11+
* **Nhận thêm thông tin về quy trình cấp chứng chỉ và lịch trình**
12+
* Làm quen với đội ngũ xây dựng khóa học
13+
* Tạo **tài khoản** của bạn
14+
* **Tham gia Discord** để gặp gỡ bạn học và chúng mình
15+
16+
Cùng bắt đầu thôi!
17+
18+
## Bạn sẽ học được gì từ khóa học này?
19+
20+
Trong khóa học này, các bạn sẽ:
21+
* 📖 Nghiên cứu MCP về **lý thuyết, thiết kế và thực hành**
22+
* 🧑‍💻 Học cách **sử dụng các SDK và framework MCP phổ biến**
23+
* 💾 **Chia sẻ dự án** và khám phá ứng dụng từ cộng đồng
24+
* 🏆 Tham gia các bài tập lớn để **đánh giá cách triển khai MCP của bạn so với các học viên khác**
25+
* 🎓 **Nhận chứng chỉ hoàn thành** bằng cách hoàn thành các bài tập
26+
27+
Và còn nhiều hơn thế!
28+
29+
Kết thúc khóa học, bạn sẽ hiểu **cách MCP hoạt động và cách xây dựng ứng dụng AI sử dụng dữ liệu/công cụ bên ngoài theo chuẩn MCP mới nhất**.
30+
31+
Đừng quên [**đăng ký khóa học!**](https://huggingface.co/mcp-course)
32+
33+
## Cấu trúc khóa học như thế nào?
34+
35+
Khóa học bao gồm:
36+
* _Chương nền tảng_: nơi bạn học **khái niệm lý thuyết** về MCP
37+
* _Thực hành_: nơi bạn học **cách sử dụng SDK MCP** để xây dựng ứng dụng. Các phần thực hành sẽ có môi trường được cấu hình sẵn
38+
* _Bài tập tình huống_: nơi bạn áp dụng kiến thức đã học để giải quyết vấn đề thực tế do bạn lựa chọn
39+
* _Hợp tác_: Chúng tôi hợp tác với các đối tác của Hugging Face để mang đến cho bạn những triển khai MCP mới nhất
40+
41+
**Khóa học này là dự án sống, phát triển cùng phản hồi và đóng góp của bạn!** Hãy thoải mái tạo issue/PR trên GitHub và thảo luận tại Discord server của chúng ta.
42+
43+
Sau khi hoàn thành khóa học, bạn có thể gửi phản hồi 👉 qua [biểu mẫu này]
44+
45+
## Giáo trình chi tiết
46+
47+
Dưới đây là **giáo trình tổng quan**. Danh sách chi tiết sẽ được cập nhật theo từng chương.
48+
49+
| Chương | Chủ đề | Mô tả |
50+
| ------- | ------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------- |
51+
| 0 | Làm quen | Thiết lập công cụ và nền tảng cần dùng |
52+
| 1 | Nguyên lý, kiến trúc và khái niệm cốt lõi của MCP | Giải thích khái niệm cơ bản, kiến trúc và thành phần của MCP. Minh họa trường hợp sử dụng đơn giản với MCP |
53+
| 2 | Ứng dụng end-to-end: MCP trong thực tế | Xây dựng ứng dụng MCP end-to-end đơn giản để chia sẻ với cộng đồng |
54+
| 3 | Triển khai ứng dụng: MCP trong thực tế | Xây dựng ứng dụng MCP triển khai thực tế sử dụng hệ sinh thái Hugging Face và dịch vụ đối tác |
55+
| 4 | Chương bổ trợ | Các chương nâng cao giúp bạn tận dụng tối đa khóa học, làm việc với thư viện và dịch vụ đối tác |
56+
57+
## Yêu cầu đầu vào
58+
59+
Để theo học hiệu quả, bạn cần:
60+
* Hiểu biết cơ bản về AI và các khái niệm LLM
61+
* Quen thuộc với nguyên tắc phát triển phần mềm và khái niệm API
62+
* Có kinh nghiệm với ít nhất một ngôn ngữ lập trình (ví dụ Python hoặc TypeScript sẽ được sử dụng minh họa)
63+
64+
Nếu bạn chưa có những kiến thức này, đừng lo! Dưới đây là một số tài nguyên hữu ích:
65+
66+
* [LLM Course](https://huggingface.co/learn/llm-course/) sẽ hướng dẫn bạn những kiến thức cơ bản về sử dụng và xây dựng với LLMs.
67+
* [Agents Course](https://huggingface.co/learn/agents-course/) sẽ hướng dẫn bạn cách xây dựng AI Agents với LLMs.
68+
69+
<Tip>
70+
71+
Các khóa học trên không phải là điều kiện bắt buộc, vì vậy nếu bạn đã hiểu các khái niệm về LLM và Agents, các bạn có thể bắt đầu khóa học ngay bây giờ!
72+
73+
</Tip>
74+
75+
## Tôi cần những công cụ gì?
76+
77+
Bạn chỉ cần 2 thứ:
78+
79+
* _Một máy tính_ có kết nối internet.
80+
* _Tài khoản_: để truy cập tài nguyên khóa học và tạo dự án. Nếu chưa có tài khoản, bạn có thể tạo [tại đây](https://huggingface.co/join) (miễn phí).
81+
82+
## Quy trình cấp chứng chỉ
83+
84+
Bạn có thể chọn học khóa học này ở _chế độ audit_, hoặc hoàn thành các hoạt động và _nhận một trong hai chứng chỉ mà chúng tôi cấp_. Nếu chọn audit, bạn vẫn có thể tham gia tất cả bài tập lớn và làm bài tập nếu muốn, **bạn không cần thông báo với chúng tôi**.
85+
86+
Quy trình cấp chứng chỉ **hoàn toàn miễn phí**:
87+
88+
* _Để nhận chứng chỉ kiến thức cơ bản_: bạn cần hoàn thành Chương 1. Dành cho học viên muốn cập nhật xu hướng mới nhất về MCP mà không cần xây dựng ứng dụng đầy đủ.
89+
* _Để nhận chứng chỉ hoàn thành_: bạn cần hoàn thành các chương ứng dụng (2 và 3). Dành cho học viên muốn xây dựng ứng dụng hoàn chỉnh và chia sẻ với cộng đồng.
90+
91+
## Tốc độ học được khuyến nghị?
92+
93+
Mỗi chương trong khóa học được thiết kế **để hoàn thành trong 1 tuần, với khoảng 3-4 giờ học mỗi tuần**.
94+
95+
Vì có thời hạn cụ thể, chúng tôi đưa ra lộ trình khuyến nghị:
96+
97+
![Recommended Pace](https://huggingface.co/datasets/mcp-course/images/resolve/main/unit0/2.png)
98+
99+
## Làm thế nào để học hiệu quả nhất?
100+
101+
Để học hiệu quả nhất, chúng tôi có vài lời khuyên:
102+
103+
1. Tham gia nhóm học tập trên Discord: học cùng nhau luôn dễ dàng hơn. Hãy tham gia Discord của chúng tôi và xác thực tài khoản.
104+
2. **Làm bài kiểm tra và bài tập**: cách học tốt nhất là qua thực hành và tự đánh giá.
105+
3. **Lập lịch học để theo kịp tiến độ**: bạn có thể dùng lộ trình khuyến nghị bên dưới hoặc tự tạo lịch riêng.
106+
107+
![Course advice](https://huggingface.co/datasets/mcp-course/images/resolve/main/unit0/3.png)
108+
109+
## Về chúng tôi
110+
111+
Thông tin tác giả:
112+
113+
### Ben Burtenshaw
114+
115+
Ben là Kỹ sư Máy học tại Hugging Face, tập trung vào xây dựng các ứng dụng LLM với phương pháp hậu huấn luyện và agentic.
116+
117+
<!-- ## Acknowledgments -->
118+
119+
<!-- We would like to extend our gratitude to the following individuals and partners for their invaluable contributions and support: -->
120+
121+
<!-- TODO: @burtenshaw add contributors and partners -->
122+
123+
## Tôi phát hiện lỗi hoặc muốn cải thiện khóa học
124+
125+
Mọi đóng góp đều **được chào đón** 🤗
126+
127+
* Nếu bạn _phát hiện lỗi 🐛 trong notebook_, hãy mở một issue **mô tả vấn đề**.
128+
* Nếu bạn _muốn cải thiện khóa học_, bạn thể mở một Pull Request.
129+
* Nếu bạn _muốn thêm một mục đầy đủ hoặc một Chương mới_, cách tốt nhất mở một issue **mô tả nội dung bạn muốn thêm trước khi bắt đầu viết để chúng tôi thể hướng dẫn bạn**.
130+
131+
## Tôi vẫn còn thắc mắc
132+
133+
Hãy đặt câu hỏi của bạn trên máy chủ Discord của chúng tôi tại kênh #mcp-course-questions.
134+
135+
Giờ bạn đã đầy đủ thông tin, hãy cùng nhau lên đường
Lines changed: 85 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,85 @@
1+
# Các thành phần kiến trúc của MCP
2+
3+
Ở chương trước, chúng ta đã thảo luận về các khái niệm và thuật ngữ chính của MCP. Giờ hãy cùng đi sâu hơn vào các thành phần kiến trúc tạo nên hệ sinh thái MCP.
4+
5+
## Host, Client và Server
6+
7+
Giao Thức Ngữ Cảnh Mô Hình (MCP) được xây dựng trên kiến trúc client-server để kích hoạt giao tiếp có cấu trúc giữa các mô hình AI và hệ thống bên ngoài.
8+
9+
![MCP Architecture](https://huggingface.co/datasets/mcp-course/images/resolve/main/unit1/4.png)
10+
11+
Kiến trúc MCP bao gồm ba thành phần chính với vai trò và trách nhiệm được xác định rõ ràng: Host, Client và Server. Chúng ta đã đề cập sơ qua ở phần trước, giờ hãy phân tích kỹ hơn từng thành phần.
12+
13+
### Host
14+
15+
**Host** là ứng dụng AI tiếp xúc trực tiếp với người dùng cuối.
16+
17+
Ví dụ bao gồm:
18+
- Ứng dụng chat AI như OpenAI ChatGPT hay Claude Desktop của Anthropic
19+
- IDE tích hợp AI như Cursor, hoặc các công cụ như Continue.dev
20+
- Các agent AI tùy chỉnh và ứng dụng xây dựng bằng thư viện như LangChain hay smolagents
21+
22+
Trách nhiệm của Host:
23+
- Quản lý tương tác và quyền hạn người dùng
24+
- Thiết lập kết nối tới MCP Server thông qua MCP Client
25+
- Điều phối luồng xử lý giữa yêu cầu người dùng, xử lý LLM và công cụ bên ngoài
26+
- Hiển thị kết quả cho người dùng dưới định dạng mạch lạc
27+
28+
Thông thường, người dùng sẽ chọn ứng dụng Host dựa trên nhu cầu cá nhân. Ví dụ, nhà phát triển có thể chọn Cursor cho khả năng chỉnh sửa mã mạnh mẽ, trong khi chuyên gia nghiệp vụ có thể dùng ứng dụng tùy chỉnh xây bằng smolagents.
29+
30+
### Client
31+
32+
**Client** là thành phần trong ứng dụng Host quản lý giao tiếp với một MCP Server cụ thể. Đặc điểm chính:
33+
34+
- Mỗi Client duy trì kết nối 1:1 với một Server
35+
- Xử lý các chi tiết giao thức của MCP
36+
- Đóng vai trò trung gian giữa logic của Host và Server bên ngoài
37+
38+
### Server
39+
40+
**Server** là chương trình/dịch vụ bên ngoài cung cấp khả năng truy cập vào các công cụ, nguồn dữ liệu hoặc dịch vụ thông qua giao thức MCP. Server:
41+
42+
- Cung cấp quyền truy cập vào các công cụ/dịch vụ bên ngoài
43+
- Đóng vai trò lớp bao bọc nhẹ cho chức năng có sẵn
44+
- Có thể chạy cục bộ (cùng máy với Host) hoặc từ xa (qua mạng)
45+
- Cung cấp khả năng dưới định dạng chuẩn để Client khám phá và sử dụng
46+
47+
## Luồng giao tiếp
48+
49+
Cùng xem cách các thành phần tương tác trong quy trình MCP điển hình:
50+
51+
<Tip>
52+
53+
Trong phần tiếp theo, chúng ta sẽ khám phá sâu hơn về giao thức giao tiếp với các ví dụ thực tế.
54+
55+
</Tip>
56+
57+
1. **Tương tác người dùng**: Người dùng tương tác với ứng dụng **Host**, thể hiện nhu cầu hoặc truy vấn.
58+
59+
2. **Xử lý Host**: **Host** xử lý đầu vào, có thể dùng LLM để hiểu yêu cầu và xác định cần dùng công cụ nào.
60+
61+
3. **Kết nối Client**: **Host** hướng dẫn **Client** kết nối tới Server phù hợp.
62+
63+
4. **Khám phá khả năng**: **Client** truy vấn **Server** để biết các khả năng (Công cụ, Tài nguyên, Prompt) mà nó cung cấp.
64+
65+
5. **Kích hoạt khả năng**: Dựa trên nhu cầu người dùng hoặc quyết định của LLM, Host yêu cầu **Client** kích hoạt khả năng cụ thể từ **Server**.
66+
67+
6. **Thực thi Server**: **Server** thực thi chức năng được yêu cầu và trả kết quả về **Client**.
68+
69+
7. **Tích hợp kết quả**: **Client** chuyển kết quả về **Host**, nơi tích hợp chúng vào ngữ cảnh LLM hoặc hiển thị trực tiếp cho người dùng.
70+
71+
Ưu điểm chính của kiến trúc này là tính mô-đun. Một Host duy nhất có thể kết nối với nhiều Server cùng lúc thông qua các Client khác nhau. Có thể thêm Server mới vào hệ sinh thái mà không cần thay đổi Host hiện có. Có thể dễ dàng kết hợp các khả năng trên nhiều Server khác nhau.
72+
73+
<Tip>
74+
75+
Như đã thảo luận ở phần trước, tính mô-đun này biến bài toán tích hợp M×N truyền thống (khi M ứng dụng AI kết nối với N công cụ/dịch vụ) thành một bài toán M+N dễ quản lý hơn - nơi mỗi Host và Server chỉ cần triển khai chuẩn MCP một lần.
76+
77+
</Tip>
78+
79+
Kiến trúc này trông có vẻ đơn giản, nhưng sức mạnh thực sự nằm ở việc chuẩn hóa giao thức truyền thông và sự phân tách rõ ràng trách nhiệm giữa các thành phần. Thiết kế này cho phép tạo ra một hệ sinh thái gắn kết nơi các mô hình AI có thể kết nối liền mạch với một mảng các công cụ và nguồn dữ liệu bên ngoài ngày càng phát triển.
80+
81+
## Kết luận
82+
83+
Những mẫu tương tác này được định hướng bởi các nguyên tắc chính định hình thiết kế và sự phát triển của MCP. Giao thức nhấn mạnh **tính chuẩn hóa** thông qua việc cung cấp một giao thức kết nối phổ quát cho AI, đồng thời duy trì **sự đơn giản** bằng cách giữ phần lõi giao thức dễ hiểu nhưng vẫn hỗ trợ các tính năng nâng cao. **An toàn** được ưu tiên thông qua yêu cầu phê duyệt rõ ràng từ người dùng cho các thao tác nhạy cảm, trong khi khả năng khám phá cho phép phát hiện động các chức năng. Giao thức được xây dựng với tư duy **mở rộng**, hỗ trợ phát triển thông qua phiên bản hóa và đàm phán chức năng, đồng thời đảm bảo **khả năng tương tác** giữa các triển khai và môi trường khác nhau.
84+
85+
Trong phần tiếp theo, chúng ta sẽ khám phá giao thức truyền thông giúp các thành phần này phối hợp hiệu quả với nhau.

0 commit comments

Comments
 (0)