Tải bản đầy đủ (.pdf) (84 trang)

Đồ án website blog và các thông tin về xe hơi (text generation with gpt)

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (5.23 MB, 84 trang )

ĐẠI HỌC QUỐC GIA THÀNH PHỐ HỒ CHÍ MINH
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN
KHOA CÔNG NGHỆ PHẦN MỀM
------

------

BÁO CÁO ĐỒ ÁN 1
WEBSITE BLOG VÀ CÁC THÔNG TIN VỀ XE HƠI
(TEXT GENERATION WITH GPT)

Giáo viên hướng dẫn: Huỳnh Tuấn Anh
Lớp: Đồ án 1 – SE121.N21

<Võ Văn Đăng Khoa> - <20521476>
<Lê Đồn Đại Lợi> - <20521556>

TP. Hồ Chí Minh, <2023>


LỜI CẢM ƠN
Đầu tiên, nhóm chúng em xin gửi lời cảm ơn chân thành đến tập thể quý Thầy Cô
Trường Đại học Công nghệ thông tin – Đại học Quốc gia TP.HCM và quý Thầy Cô của
khoa Công nghệ phần mềm đã tạo điều kiện để nhóm chúng em hồn thành đồ án 1 –
Chủ đề Text Generation with GPT.
Đặc biệt, nhóm chúng em xin gửi lời cảm ơn và lòng biết ơn sâu sắc nhất tới thầy
Huỳnh Tuấn Anh là giảng viên hướng dẫn. Đã giúp nhóm chúng em hồn thành tốt báo
cáo mơn học của mình.
Trong thời gian một học kỳ thực hiện đề tài, nhóm chúng em đã vận dụng những
kiến thức nền tảng đã tích lũy đồng thời kết hợp với việc học hỏi và nghiên cứu những
kiến thức mới. Từ đó, nhóm chúng em vận dụng tối đa những gì đã thu thập được để


hồn thành một báo cáo đồ án tốt nhất. Tuy nhiên, trong q trình thực hiện, nhóm chúng
em khơng tránh khỏi những thiếu sót. Chính vì vậy, nhóm chúng em rất mong nhận được
những sự góp ý từ phía các Thầy Cơ nhằm hồn thiện những kiến thức mà nhóm chúng
em đã học tập và là hành trang để nhóm chúng em thực hiện tiếp các đề tài khác trong
tương lai.
Nhóm em xin chân thành cảm ơn Thầy!

1


MỤC LỤC

LỜI CẢM ƠN .................................................................................................................. 1
MỤC LỤC ........................................................................................................................ 2
TÓM TẮT ĐỒ ÁN ........................................................................................................... 7
CHƯƠNG 1. TỔNG QUAN VỀ ĐỀ TÀI........................................................................ 9
1. Lý do chọn đề tài ...................................................................................................... 9
2. Giải pháp ................................................................................................................... 9
3. Phạm vi nghiên cứu ................................................................................................ 10
4. Kết quả hướng tới ................................................................................................... 10
CHƯƠNG 2. GPT .......................................................................................................... 12
1. Giới thiệu về GPT ................................................................................................... 12
2. Khái niệm và công dụng của GPT API ................................................................... 13
3. Cách thức hoạt động ............................................................................................... 13
4. Ưu điểm của GPT API ............................................................................................ 14
5. Nhược điểm của GPT API ...................................................................................... 15
CHƯƠNG 3. XÂY DỰNG WEBSITE BLOG VÀ CÁC THƠNG TIN XE HƠI ......... 16
1. Phân tích u cầu .................................................................................................... 16
1.1 Yêu cầu chức năng ............................................................................................ 16
1.2 Yêu cầu phi chức năng ...................................................................................... 17

2. Các công nghệ sử dụng ........................................................................................... 18
3. Phân tích và thiết kế hệ thống ................................................................................. 19

2


3.1 Sơ đồ Use case................................................................................................... 19
3.1.1 Sơ đồ Use case của hệ thống ....................................................................... 20
3.1.2 Danh sách Actor .......................................................................................... 21
3.1.3 Danh sách Use case ..................................................................................... 22
3.2 Đặc tả Use case .................................................................................................. 23
3.2.1 Đăng nhập ................................................................................................... 23
3.2.2 Tìm kiếm ..................................................................................................... 25
3.2.3 Xem và tìm kiếm xe .................................................................................... 25
3.2.3.1 Xem chi tiết xe hơi ............................................................................... 26
3.2.4 Xem và tìm kiếm brand............................................................................... 27
3.2.4.1 Xem chi tiết brand ................................................................................ 27
3.2.4.1.1 Sửa thông tin brand ........................................................................ 28
3.2.4.1.2 Thêm series .................................................................................... 28
3.2.4.1.3 Sửa series........................................................................................ 29
3.2.4.1.4 Thêm xe hơi.................................................................................... 30
3.2.4.2 Thêm brand ........................................................................................... 30
3.2.4.2.1 Tóm tắt thơng tin brand bằng GPT ................................................ 31
3.2.5 Xem và tìm kiếm blog................................................................................. 32
3.2.5.1 Thêm blog ............................................................................................. 32
3.2.5.1.1 Tóm tắt blog bằng GPT .................................................................. 33
3.2.5.2 Xem thông tin chi tiết blog ................................................................... 34
3.2.5.2.1 Viết comment ................................................................................. 34

3



3.3 Sơ đồ cơ sở dữ liệu ............................................................................................ 35
3.3.1 User ............................................................................................................. 35
3.3.1.1 Users ..................................................................................................... 35
3.3.1.2 Read_blogs ........................................................................................... 36
3.3.2 Car ............................................................................................................... 37
3.3.2.1 Car_models ........................................................................................... 38
3.3.2.2 Car_series ............................................................................................. 39
3.3.2.3 Car_brands ............................................................................................ 39
3.3.2.4 Car_transmissions ................................................................................. 40
3.3.2.5 fuel_types.............................................................................................. 40
3.3.3 Blog ............................................................................................................. 41
3.3.3.1 Car_blogs .............................................................................................. 42
3.3.3.2 Blog_comments .................................................................................... 42
3.3.3.3 Blog_tags .............................................................................................. 43
3.3.3.4 Blog_cars .............................................................................................. 43
3.3.3.5 Tags ....................................................................................................... 43
4. Sơ đồ hoạt động của các flow trong hệ thống ........................................................ 43
4.1 Đăng nhập.......................................................................................................... 44
4.2 Đăng xuất .......................................................................................................... 45
4.3 Text generate (Tạo văn bản tự động) ................................................................. 45
4.4 Tìm kiếm ........................................................................................................... 46
4.5 Authenication ..................................................................................................... 47

4


4.6 Tạo response và request .................................................................................... 48
5. Kiến trúc hệ thống .................................................................................................. 49

6. Giao diện hệ thống .................................................................................................. 51
6.1 Đăng nhập.......................................................................................................... 51
6.2 Đăng ký ............................................................................................................. 53
6.3 Thêm hãng xe .................................................................................................... 55
6.4 Sửa chi tiết xe .................................................................................................... 57
6.5 Navigation bar ................................................................................................... 58
6.6 Profile menu ...................................................................................................... 60
6.7 Thêm, sửa dòng xe ............................................................................................ 62
6.8 Tìm kiếm chung ................................................................................................. 63
6.9 Trang bắt đầu ..................................................................................................... 64
6.10 Trang đọc blog và phần recommendation ....................................................... 65
6.11 Trang đọc blog, tóm tắt và bình luận ............................................................... 66
6.12 Trang đọc blog ................................................................................................. 67
6.13 Trang viết, chỉnh sửa blog và tóm tắt bằng GPT ............................................. 68
6.14 Trang viết, chỉnh sửa blog ............................................................................... 69
6.15 Trang xem chi tiết xe ....................................................................................... 70
6.16 Trang xem thông tin hãng xe ........................................................................... 72
6.17 Trang xe và tìm kiếm hãng xe ......................................................................... 74
6.18 Trang xem và tìm kiếm danh sách blog........................................................... 76
6.19 Trang xem và tìm kiếm danh sách xe .............................................................. 77

5


7. Kiểm thử ứng dụng ................................................................................................. 79
CHƯƠNG 4. KẾT LUẬN.............................................................................................. 80
1. Kết quả .................................................................................................................... 80
2. Hạn chế ................................................................................................................... 80
3. Hướng phát triển ..................................................................................................... 80
CHƯƠNG 5. BẢNG TỰ ĐÁNH GIÁ ........................................................................... 82

TÀI LIỆU THAM KHẢO .............................................................................................. 83

6


TÓM TẮT ĐỒ ÁN
Đồ án “Text Generation with GPT” tập trung vào việc tìm hiểu cơng nghệ, tin năng mới
của GPT. Từ đó xây dựng một Website blog và các thông tin về xe. Đề tài tập trung vào
lĩnh vực xe, cụ thể là các thông tin của hãng xe, các thơng số của xe đó và các bài blog
có liên quan đến. Hỗ trợ người dùng có thể đọc thơng tin và tìm kiếm loại xe ưng ý một
cách nhanh chống và đầy đủ thông tin. Đề tài áp dụng kiến trúc Microservices cho
Backend và NextJS cho Frontend với khả năng mở rộng và nâng cấp cao.
Đề tại được bắt đầu từ việc tìm hiểu thực trạng, đưa ra các vấn đề tồn đọng và cần cải
thiện. Xác định được phạm vi của bài toán và mục tiêu đề tài đặt ra. Từ đó đưa ra các
chức năng cần thiết của ứng dụng. Ngoài việc xử lý các yêu cầu nghiệp vụ, nhóm em
cũng đã tìm hiểu và sử dụng các công nghệ mới để phù hợp và giúp trải nghiệm người
dùng được tốt hơn, ít tốn chi phí và bảo trì hệ thống dễ dàng hơn.
Vì ứng dụng yêu cầu cần cập nhật, thay đổi thường xuyên và đảm bảo ít xảy ra lỗi nhất
có thể nên quy tình phát triển sản phẩm đã vận dụng mơ hình Agile làm phương pháp
luận chính cho quy trình phần mềm. Kết quả của giai đoạn tìm hiểu và phân tích được
mơ hình hóa bằng UML thơng qua cơng cụ StarUML. Ở giai đoạn thực hiện, chương
trình sẽ được cập nhật trên Github để có thể dễ dàng tổng hợp và kiểm sốt lỗi. Phần
cuối cùng của đồ án là trình bày kết quả đã thực hiện lên báo cáo, đưa ra kết luận và
hướng phát triển của ứng dụng trong tương lai.
Nội dung đồ án được trình bày trong các chương như sau:
-

Chương 1: Giới thiệu tổng quan về đề tài (Xác định mục tiêu, nội dung nghiên
cứu và phạm vi đề tài)


-

Chương 2: GPT (Giới thiệu về GPT API, cách thức hoạt động, ưu điểm của GPT)

-

Chương 3: Xây dựng ứng dụng minh họa sử dụng GPT “Website blog và các
thông tin xe”

7


o Giới thiệu ứng dụng
▪ Phân tích u cầu
▪ Cơng nghệ sử dụng
o Phân tích hệ thống: Sử dụng các mơ tả và sơ đồ để mơ hình hóa bài toán
o Thiết kế
▪ Thiết kế cơ sỡ dữ liệu cho ứng dụng
▪ Thiết kế giao diện
o Kiểm thử và triển khai ứng dụng
-

Chương 4: Kết luận (Những kết quả đặt được, hạn chế và hướng phát triển trong
tương lai)

8


CHƯƠNG 1. TỔNG QUAN VỀ ĐỀ TÀI
1. Lý do chọn đề tài

-

Xe hơi là một phương tiện giao thông phổ biến và quan trọng trong đời sống hiện
đại, đóng vai trò quan trọng trong việc di chuyển và kết nối các địa điểm khác
nhau. Việc tìm hiểu và chia sẻ thông tin về các hãng xe, các loại xe hơi, cũng như
các xu hướng và công nghệ mới trong ngành cơng nghiệp xe hơi sẽ giúp cho người
đọc có cái nhìn tổng quan và cập nhật được thơng tin mới nhất về lĩnh vực này.

-

Bên cạnh đó, việc lựa chọn đề tài này cịn giúp cho chúng ta có thể khai thác tối
đa tiềm năng của blog như một công cụ truyền thông và tiếp cận khách hàng.
Bằng cách cung cấp các thơng tin hữu ích và chất lượng về các hãng xe, các loại
xe hơi, blog của chúng ta sẽ thu hút được lượng lớn người đọc quan tâm và tạo ra
sự tương tác tích cực với khách hàng. Điều này cũng giúp cho chúng ta tăng khả
năng tiếp cận và tương tác với khách hàng, đồng thời củng cố vị thế của chúng ta
trong thị trường mạng.

-

Ngày này, thời đại 4.0 thông tin trên mạng ngày càng nhiều, và có khá nhiều thơng
tin sai lệch và khơng đúng với yêu cầu của người dùng. Việc tìm hiểu và chia sẻ
thông tin về xe hơi cũng giúp chúng ta có thể thực hiện một vai trị giáo dục và tư
vấn cho độc giả, giúp họ có thể đưa ra quyết định thông minh và hiệu quả khi mua
xe. Đây là một trong những yếu tố quan trọng giúp cho blog của chúng ta trở
thành một nguồn thông tin tin cậy và được khách hàng đánh giá cao, tiết kiệm
thời gian cho người tìm kiếm thơng tin.

2. Giải pháp
-


Tạo ra một trang web có nội dung chất lượng, admin cần tìm hiểu rõ các thơng
tin liên quan đến xe hơi để có thể đưa ra các thơng tin chính xác nhất. Sau đó,

9


chúng ta có thể sử dụng cơng cụ “Text Generation with GPT” để tạo ra các bài
viết tự động, cung cấp các thơng tin một cách nhanh chóng và phù hợp với nhu
cầu của người đọc.
-

Thiết kế một trang web đẹp và dễ sử dụng, áp dụng các công cụ thiết kế và
framework để thiết kế ra một giao diện sao cho người đọc có thể tìm kiếm thơng
tin dễ dàng và tiếp cận được các nội dung một cách nhanh chóng.

-

Ngồi ra, chúng ta cần đảm bảo an tồn thơng tin, nhằm khơng cho những người
xấu có thể đánh cắp và làm các việc bất hợp pháp với trang web của mình, tránh
các tình huống xấu khơng đáng có.

3. Phạm vi nghiên cứu
-

Bao gồm các chủ đề liên quan đến xe hơi, các hãng xe và bài blog phù hợp và
chính xác nhất.

-


Tìm hiểu thêm về các cơng nghệ mới, phù hợp để tạo ra một trang web tiện dụng
nhất cho người dùng.

-

Tìm hiểu về GPT API, sử dụng công nghệ text generation with GPT để tạo ra các
bài viết tự động, cung cấp thơng tin chính xác với nhu cầu của người đọc.

4. Kết quả hướng tới
-

Sản phẩm hướng tới một trang web có nguồn thơng tin đáng tin cậy, chất lượng
cho người đọc về các chủ đề xe hơi.

-

Sản phẩm giúp tăng cường tính tương tác và trải nghiệm của người đọc trên trang
web. Và việc sử dụng công nghệ “Text Generation with GPT” sẽ giúp tăng hiệu
quả cho trang web và giúp tiết kiệm nhân lực, thời gian cho việc viết các thông
tin, bài blog cho trang web.

10


-

Xây dựng một cộng đồng người đọc trên trang web, mang lại giá trị cho người
đọc và tạo ra những phản hồi tích cực từ người đọc. Giúp những người đam mê
xe hơi có cái nhìn tổng qt và cập nhật được thông tin mới về lĩnh vực này.


11


CHƯƠNG 2. GPT
1. Giới thiệu về GPT

Hình 2.1.1 OpenAI GPT-4
-

GPT (Generative Pre-trained Transformer) là một kiến trúc mơ hình ngơn ngữ tự
động, được phát triển bởi OpenAI. Nó là một trong những mơ hình ngơn ngữ tự
động tiên tiến nhất hiện nay, và được đào tạo trên một tập dữ liệu rất lớn bao gồm
hàng triệu văn bản.

-

GPT sử dụng kiến trúc Transformer để học quan hệ giữa các từ trong dữ liệu đầu
vào và sử dụng các kết quả học tập đó để tạo ra văn bản tự động. GPT có thể được
sử dụng để tạo ra các bài viết, tin tức, phản hồi, và thậm chí là để thực hiện các
tác vụ ngôn ngữ tự động khác.

-

GPT đã được sử dụng rộng rãi trong các ứng dụng như tạo nội dung web tự động,
tạo tiêu đề tự động cho các bài báo, và thậm chí là để tạo ra các bài luận pháp.

12


GPT cũng đã trở thành một công cụ quan trọng trong lĩnh vực xử lý ngơn ngữ tự

nhiên và có tiềm năng để phát triển các ứng dụng mới trong tương lai.
-

GPT-4 là phiên bản mới nhất của GPT. Nó được xem là một trong những mơ hình
ngơn ngữ tự động tiên tiến nhất và có thể tạo ra các văn bản tự động với chất
lượng và độ chính xác cao.

2. Khái niệm và công dụng của GPT API
-

GPT API là một dịch vụ của OpenAI, cung cấp truy cập vào mơ hình GPT thơng
qua giao diện lập trình ứng dụng (API). API cho phép người dùng sử dụng các
tính năng của GPT trong các ứng dụng của họ.

-

GPT API cung cấp một loạt các tính năng, bao gồm tạo văn bản tự động, thực
hiện tác vụ ngôn ngữ tự động, phân loại văn bản, dịch thuật và nhận diện giọng
nói. API hỗ trợ nhiều ngơn ngữ khác nhau và cho phép người dùng tùy chỉnh các
tham số để tạo ra các kết quả chính xác và phù hợp với nhu cầu của họ.

-

Để sử dụng GPT API, người dùng cần đăng ký và đăng nhập vào tài khoản của
mình trên trang web của OpenAI. Sau đó, họ có thể tạo các yêu cầu API và nhận
kết quả trả về từ GPT. GPT API cũng cung cấp tài liệu hướng dẫn và ví dụ để giúp
người dùng sử dụng API một cách hiệu quả.

-


GPT API đã được sử dụng rộng rãi trong các ứng dụng như tạo nội dung web tự
động, tạo tiêu đề tự động cho các bài báo, và thậm chí là để tạo ra các bài luận
pháp. Nó đã trở thành một cơng cụ quan trọng trong lĩnh vực xử lý ngơn ngữ tự
nhiên và có tiềm năng để phát triển các ứng dụng mới trong tương lai.

3. Cách thức hoạt động

13


Hình 2.3.1 Response trong GPT
-

GPT API hoạt động bằng cách cung cấp truy cập vào mơ hình GPT-3 thơng qua
giao diện lập trình ứng dụng (API). API cho phép người dùng gửi u cầu tới mơ
hình GPT-3 và nhận kết quả trả về.

-

Khi nhận được yêu cầu, GPT-3 sử dụng phương pháp học sâu để phân tích và hiểu
nội dung của u cầu. Sau đó, mơ hình sử dụng các kết quả học tập từ việc đào
tạo trên hàng triệu văn bản để tạo ra câu trả lời hoặc kết quả tương ứng với yêu
cầu.

-

GPT-3 có thể tạo ra các kết quả văn bản tự động với mức độ chính xác và độ phức
tạp khác nhau, phù hợp với nhu cầu của người dùng. Nó cũng có khả năng thực
hiện các tác vụ ngôn ngữ tự động khác như phân loại văn bản, dịch thuật và nhận
diện giọng nói.


-

GPT API cung cấp các endpoint API để cho phép người dùng gửi u cầu tới mơ
hình GPT-3 và nhận kết quả trả về. Người dùng cũng có thể sử dụng các tham số
tùy chỉnh để tạo ra các kết quả chính xác và phù hợp với nhu cầu của họ.

4. Ưu điểm của GPT API
-

Tính tiên tiến: API cho phép người dùng truy cập vào mơ hình này và sử dụng
tính năng của nó trong các ứng dụng của họ.

-

Tính linh hoạt: GPT API cung cấp cho người dùng nhiều tính năng khác nhau,
bao gồm tạo văn bản tự động, thực hiện tác vụ ngôn ngữ tự động, phân loại văn

14


bản, dịch thuật và nhận diện giọng nói. Ngồi ra, API cũng hỗ trợ nhiều ngôn ngữ
khác nhau và cho phép người dùng tùy chỉnh các tham số để tạo ra các kết quả
chính xác và phù hợp với nhu cầu của họ.
-

Tính chính xác: GPT-4 có khả năng tạp ra các văn bản tự động với mức độ chính
xác và độ phức tạp khác nhau, phù hợp với nhu cầu của người dùng giúp cho
người dùng có thể tin tưởng vào kết quả trả về từ API.


-

Tính tiện lợi: GPT API cung cấp tài liệu hướng dẫn và ví dụ để giúp người dùng
sử dụng API một cách hiệu quả. Người dùng có thể sử dụng API thơng qua các
thư viện mã nguồn mở hoặc các công cụ lập trình phổ biến như Python.

5. Nhược điểm của GPT API
Mặc dù GPT API có nhiều ưu điểm, tuy nhiên nó cũng có một số nhược điểm sau:
-

GPT API là một dịch vụ có thu phí và giá thành khá cao. Điều này khiến cho việc
sử dụng API trở nên khó khăn hơn đối với các công ty hoặc cá nhân có ngân sách
hạn chế.

-

GPT API yêu cầu kết nối internet để hoạt động. Nếu khơng có kết nối internet
hoặc kết nối internet chậm, việc sử dụng API có thể bị gián đoạn hoặc khơng thể
thực hiện được.

-

GPT API có giới hạn về số lần sử dụng trong một tháng. Nếu người dùng muốn
sử dụng API nhiều hơn giới hạn này, họ phải trả phí bổ sung.

-

Mặc dù GPT-4 là một mơ hình ngơn ngữ tự động tiên tiến, tuy nhiên vẫn có thể
đưa ra kết quả khơng chính xác. Điều này có thể xảy ra khi mơ hình khơng hiểu
rõ u cầu của người dùng hoặc khơng có đủ thơng tin để đưa ra kết quả chính

xác.

15


CHƯƠNG 3. XÂY DỰNG WEBSITE BLOG VÀ CÁC THÔNG TIN XE HƠI
1. Phân tích yêu cầu
1.1 Yêu cầu chức năng
Chức năng

Visitor

Admin

Đăng nhập

X

X

Tìm kiếm

X

X

Xem thơng tin xe

X


X

Xem thơng tin brand

X

X

Sửa thơng tin brand

X

Thêm series

X

Sửa series

X

Thêm xe hơi

X

Thêm brand

X

Tóm tắt thơng tin brand


X

bằng GPT
Xem thơng tin blog

X

X

Thêm blog

X

Tóm tắt blog bằng GPT

X

Viết comment

X
Bảng 1.1 Bảng các yêu cầu chức năng

-

Lưu trữ thông tin:
o Thông tin về các blog, xe hơi và brand của trang web.
o Thông tin các tài khoản của người dùng và admin.

16


X


o Các comment của người dùng hoặc admin khi bình luận các bài viết
trong website.
-

Tra cứu, tìm kiếm thơng tin:
o Tra cứu thông tin các bài blog, các brand và danh sách xe hơi trong
website.
1.2 Yêu cầu phi chức năng

-

Yêu cầu GUI:
o Giao diện dễ sử dụng và trực quan.
o Tương tác cao, màu sắc phù hợp nhằm tăng tính thẩm mỹ và giảm mỏi mắt
cho người dùng.

-

Vận hành:
o Hệ thống phải chạy được trên các thiết bị khác nhau, có kích thước màn
hình khác nhau và trên mọi trình duyệt web.

-

Hiệu suất:
o Tốc độ và khả năng phản hồi nhanh chóng.
o Hệ thống phải hoạt động được 24/7.


-

Bảo mật:
o Có phân quyền các người dùng để xác định được các quyền hạn chỉnh sửa.
o Thông tin người dùng phải được bảo mật để đảm bảo quyền lợi khách
hàng.

-

Văn hóa, chính trị:
o Phù hợpe với văn hóa và chính trị Việt Nam.
o Không sử dụng các từ ngữ thô tục

17


2. Các công nghệ sử dụng
-

React: Là một thư viện JavaScript mã nguồn mở, dùng để xây dựng giao diện
người dùng cho trang web của nhóm.

-

Next js: Là một framework React mã nguồn mở giúp tạo website một cách tốt
hơn. Cung cấp các tính năng này giúp tăng tốc độ tải trang, cải thiện trải nghiệm
người dùng. Ngồi ra, nó còn giúp quản lý các API hiệu quả.

-


Tailwind: Là một thư viện CSS mã nguồn mở sử dụng để thiết kế các giao diện
cho website. Nó cung cấp các lớp CSS được định nghĩa trước giúp ta tạo ra các
giao diện người dùng một cách nhanh chóng và dễ dàng.

-

Rest API: Là một kiểu thiết kế API dựa trên giao thức HTTP (Hypertext Transfer
Protocol), nó cho phép tương tác thơng qua các yêu cầu HTTP như: GET, POST,
PUT, DELETE và PATCH.

-

GRPC: Là một cơng cụ truyền thơng máy tính mã nguồn mở được thiết kế bởi
Google. Nó được thiết kế để kết nối các ứng dụng phân tán. Trong đồ án sử dụng
GRPC để kết nối các services lại với nhau một cách dễ dàng và nhanh chóng.

-

Microservices: Là một kiến trúc phần mềm được sử dụng để phát triển các ứng
dụng phân tán, giúp chia các server trong đồ án thành các dịch vụ nhỏ độc lập,
được triển khai và quản lý một cách độc lập. Các dịch vụ này được kết nối với
nhau thông qua các giao thức và GRPC.

-

OpenAI: Là một cơng ty trí tuệ nhân tạo (AI) phát triển các cơng nghệ AI tiên
tiến, trong đó có GPT là một mơ hình ngơn ngữ tự động. Ta có thể truy cập vào
các mơ hình GPT của OpenAI thơng qua GPT API. Trong đồ án, nhóm đã áp dụng
phương pháp này để tóm tắt văn bản tự động một cách nhanh chống, giảm thời

gian cho người dùng.

-

Database (PostgreSQL + Firebase + Redis):

18


o PostgreSQL (viết tắt là Postgres): Là một hệ thống quản lý dữ liệu quan
hệ mã nguồn mở được sử dụng trong Website. Nhóm đã dùng Postgres vì
cơ sở dữ liệu này được phát triển bởi cộng đồng phần mềm tự do và được
đánh giá cao bởi tính ổn định, độ tin cậy và khả năng mở rộng của nó.
o Firebase: Là một nền tảng của Google cung cấp dịch vụ đám mây để phát
triển Website và di động. Nó bao gồm các dịch vụ như cơ sở dữ liệu thời
gian thực, xác thực người dùng, lưu trữ tệp và phân tích dữ liệu. Do đó,
nhóm đã sử dụng firebase để lưu trữ ảnh trong website.
o Redis: Là một hệ thống cơ sở dữ liệu key-value mã nguồn mở được sử
dụng để lưu trữ và truy xuất dữ liệu. Nó được đánh giá cao bởi hiệu suất
cao, khả năng mở rộng và tính năng phân tán của nó. Redis được sử dụng
rộng rãi trong các ứng dụng web để lưu trữ dữ liệu tạm thời và các thông
tin phi cấu trúc. Đồ án được áp dụng để làm bộ nhớ tạm thời, giúp tăng tốc
độ truy xuất dữ liệu giúp người dùng có thể truy cập trang web nhanh hơn.
-

Docker: Là một nền tảng mã nguồn mở cho phát triển, triển khai và quản lý các
ứng dụng trong các container. Các container là một cách để đóng gói phần mềm
và tất cả các phụ thuộc của nó vào một gói duy nhất, giúp cho việc triển khai và
chạy ứng dụng trở nên dễ dàng hơn. Vì trang web sử dụng kiến trúc microservices
nên ứng dụng được chia thành các container riêng biệt. Việc sử dụng Docker cho

phép đóng gói các thành phần này trong các container, giúp cho việc triển khai và
quản lý các thành phần trở nên dễ dàng hơn.

3. Phân tích và thiết kế hệ thống
3.1 Sơ đồ Use case

19


3.1.1 Sơ đồ Use case của hệ thống

Hình 3.3.1 Sơ đồ Use case của Admin

20


Hình 3.3.2 Sơ đồ Use case của người dùng
3.1.2 Danh sách Actor

STT
1
2

Tên
Actor
Admin

Ý nghĩa/ Ghi chú
Được sử dụng hết tính năng của trang web bao gồm: Xem các
thơng tin và có thể chỉnh sửa (Bắt buộc phải đăng nhập).


Người

Có thể xem các thơng tin có trong trang web và viết comment

dùng

(Cần đăng nhập mới có thể viết comment).
Bảng 3.3.1 Bảng danh sách các Actor

21


3.1.3 Danh sách Use case
STT

Tên Use case

Ý nghĩa

1

Đăng nhập

Đăng nhập vào trang web.

2

Tìm kiếm


3

Xem và tìm kiếm xe

4

Xem chi tiết xe hơi

5

Xem và tìm kiếm brand

6

Xem chi tiết brand

7

Sửa thơng tin brand

8

Thêm series

9

Sửa series

10


Thêm xe hơi

11

Thêm brand

12

Tóm tắt thơng tin brand
bằng GPT

22

Tìm kiếm thơng tin trang
web (Blog, Brand, Xe).
Xem tóm tắt xe và có thể
tìm kiếm xe.
Xem thơng tin chi tiết của
xe hơi.
Xem tóm tắt xe và có thể
tìm kiếm brand.
Xem thơng tin chi tiết của
brand.
Admin có thể sửa các
thơng tin có trong brand.
Admin có thể thêm series
mới.
Admin có thể sửa các
thơng tin có trong series.
Admin có thể thêm xe

mới.
Admin có thể thêm brand
mới.
Admin dùng GPT để tóm
tắt nội dung thông tin
brand.


13

Xem và tìm kiếm blog

14

Thêm blog

Xem tóm tắt xe và có thể
tìm kiếm blog.
Admin có thể thêm blog
mới.
Admin dùng GPT để tóm

15

Tóm tắt blog bằng GPT

tắt nội dung thơng tin của
bài blog.

16


Xem thông tin chi tiết blog

Xem thông tin chi tiết của
blog.
Người dùng đã đăng nhập

17

Viết comment

hoặc Admin có thể bình
luận trong các bài blog.

Bảng 3.3.2 Bảng danh sách các Use case
3.2 Đặc tả Use case
3.2.1 Đăng nhập
Use case Name
Actors

Đăng nhập
Admin và người dùng.
Người dùng có thể đăng nhập vào trang

Description

web để thực hiện thêm các chức năng
khác nhau.

Preconditions

Post Conditions
Basic Flows

None.
Người dùng/ Admin đăng nhập vào hệ
thống.
1. Hiển thị form đăng nhập.

23


2. Người dùng nhập tên tài khoản và mật
khẩu, sau đó chọn đăng nhập.
3. Hệ thống kiểm tra thơng tin đăng
nhập.
4. Thông báo đăng nhập thành công và
chuyển vào trang web.
4.1 Hệ thống thông báo tài khoản không
Alternative Flows

tồn tại hoặc sai thơng tin. Vui lịng nhập
lại.

Exception Flows

Người dùng thốt khỏi trang web.

Bảng 3.3.3 Đặc tả Use case “Đăng nhập”

24



×