강의

멘토링

로드맵

[Phiên bản sửa đổi 2023-11-27] Phát triển RESTful Web Services bằng Spring Boot 3.x

Bài giảng này nói về quá trình phát triển ứng dụng RESTful Web Services bằng Spring Boot và bạn có thể tìm hiểu những kiến ​​thức cơ bản cần thiết cho thiết kế REST API.

(4.8) 478 đánh giá

5,015 học viên

Độ khó Cơ bản

Thời gian Không giới hạn

Spring Boot
Spring Boot
REST API
REST API
Spring Boot
Spring Boot
REST API
REST API

[Cập nhật] Đã thêm bài giảng bổ sung (khoảng 1 giờ) “Jev — Quyết định bằng kiểu” vào Section 4.

Xin chào. Chúng tôi đã bổ sung một bài giảng bổ sung mới vào khóa học Phát triển dịch vụ LLM thực tế dành cho lập trình viên Spring (Phần 1). Nội dung hướng dẫn tích hợp mô hình ra quyết định Jev của TypeSafe AI mới được công bố vào ứng dụng Spring Boot, với thời lượng khoảng 1 giờ.

Tại sao thêm nội dung này
Trong Section 4, chúng ta đã tìm hiểu cách nhận phản hồi của LLM dưới dạng đối tượng Java bằng entity(), cũng như cạm bẫy trong thực tế khi mô hình bọc JSON trong code fence khiến việc phân tích cú pháp bị lỗi. Dù yêu cầu bằng prompt hay tự động hóa bằng entity(), vẫn còn một hạn chế: cuối cùng, đó vẫn là cách "nhờ" LLM trả về đúng định dạng.
Jev có cách tiếp cận khác. Thay vì viết câu trả lời, nó chọn một đáp án trong số các lựa chọn được định trước và trả về cùng với xác suất. Nói cách khác, định dạng được đảm bảo một cách có cấu trúc. Khi xử lý cùng một đầu vào theo hai cách, chúng ta sẽ hiểu rõ hơn nhiều về những điều cần cân nhắc khi thiết kế "đầu ra có cấu trúc". Vì vậy, tôi đã tổng hợp nội dung này như phần tiếp nối của Section 4.

Bạn sẽ học gì

  1. Khái niệm về các mô hình Jev và System One: ý nghĩa của việc trả về "quyết định có kiểu dữ liệu được xác định" thay vì văn bản

  2. Sự khác biệt giữa LLM và Jev: câu trả lời tự luận và câu trả lời trắc nghiệm, những việc mỗi bên làm tốt và không làm tốt

  3. Ba loại câu hỏi (choice · score · noul) và cấu trúc yêu cầu /v1/systemone

  4. Gọi từ Spring: gọi API Jev bằng RestClient và tạo các lựa chọn bằng enum Java để chuyển đổi phản hồi một cách an toàn về kiểu dữ liệu

  5. Trình diễn so sánh: phân tích cùng một bài đánh giá phim lần lượt bằng entity() và Jev để so sánh tốc độ, lỗi định dạng, độ tin cậy và tính nhất quán

Tài liệu được cập nhật cùng nhau

  • Mã ví dụ Phần 4 (ch4): thêm 2 API phân tích bài đánh giá (/api/movies/review/llm, /api/movies/review/jev) và JevClient

  • Slide bài giảng bổ sung và tài liệu giảng dạy

  • Kịch bản kiểm thử so sánh: review-compare.sh dành cho macOS, review-compare.ps1 dành cho Windows

Điểm cần biết trước

  • Jev không phải là một tính năng của Spring AI mà là một dịch vụ bên ngoài riêng biệt do TypeSafe AI cung cấp. Trong bài giảng, chúng ta cũng gọi trực tiếp bằng RestClient, chứ không phải ChatClient của Spring AI.

  • Hiện tại Jev đang ở giai đoạn truy cập sớm, vì vậy việc cấp khóa API có thể phải chờ. Trong mã ví dụ, tính năng Jev mặc định bị tắt (jev.enabled=false), nên ngay cả khi không có khóa, bạn vẫn có thể tiếp tục các bài thực hành như bình thường. Nếu chưa có khóa, hãy xem phần trình diễn trong video và tập trung theo dõi các khái niệm cùng mã nguồn.

  • Vì đây là dịch vụ mới ra mắt nên giá cả hoặc API có thể thay đổi sau này. Nếu có thay đổi, chúng tôi sẽ thông báo lại qua tin tức mới.

📌 Truy cập khóa học ngay: https://inf.run/VVpnV

Nếu trong quá trình học các bài giảng được bổ sung, bạn có bất kỳ thắc mắc nào hoặc gặp khó khăn khi thực hành, hãy thoải mái để lại bình luận. Chúng tôi sẽ tiếp tục bổ sung những nội dung có thể áp dụng ngay vào công việc thực tế.

Bình luận