Bỏ qua tới nội dung chính
Quay lại tin tức

Tự động hóa việc viết lời nhắc LLM của bạn

Towards Data Science· W Brett Kennedy· 5/6/2026general

Sử dụng DSPy để tự động tạo, đánh giá và tối ưu hóa các câu lệnh (prompt) của bạn Bài viết Automate Writing Your LLM Prompts xuất hiện lần đầu trên Towards Data Science.

Các mô hình ngôn ngữ lớn (LLM) Tự động hóa việc viết các câu lệnh (prompt) cho LLM Sử dụng DSPy để tự động tạo, đánh giá và tối ưu hóa các câu lệnh của bạn W Brett Kennedy Ngày 5/6/2026 20 phút đọc Chia sẻ Hình ảnh được tạo bởi Serj Smorodinsky, đồng tác giả của cuốn sách "Building LLM Applications with DSPy" Khi làm việc với các LLM, có lẽ tất cả chúng ta đều từng trải qua việc nhận được những phản hồi không hoàn toàn như mong muốn. Thông thường, chúng ta sẽ thử diễn đạt lại các câu lệnh vài lần cho đến khi nhận được kết quả hợp lý. Đôi khi chúng ta cần phải rõ ràng hơn, chính xác hơn, đưa ra ví dụ, mô tả lý do chúng ta cần phản hồi, thể hiện một vai trò (persona) hoặc cung cấp đủ ngữ cảnh và thông tin để LLM có thể đưa ra phản hồi phù hợp. Điều này có thể chấp nhận được khi chúng ta làm việc trực tiếp với LLM. Tuy nhiên, điều này hoàn toàn khác khi chúng ta viết một ứng dụng dựa trên LLM – một phần mềm sẽ tự động thực thi và tương tác với một hoặc nhiều LLM. Trong trường hợp này, phần mềm sẽ làm việc với các câu lệnh được định nghĩa trước và chuyển chúng đến các LLM. Nếu quá trình không diễn ra tốt đẹp, chúng ta sẽ không có mặt để diễn đạt lại các câu lệnh và thử lại. Điều đó có nghĩa là, chúng phải được viết theo cách mạnh mẽ và đáng tin cậy ngay từ đầu – chúng ta cần những câu lệnh mà chúng ta có thể tin tưởng sẽ hoạt động ổn định và hiệu quả trong môi trường sản xuất. Việc tạo ra một câu lệnh như vậy có thể phức tạp. Trong bài viết này, chúng ta sẽ xem xét lý do tại sao lại như vậy, và cả cách một công cụ Python có tên DSPy có thể hỗ trợ tạo ra các câu lệnh đáng tin cậy. DSPy không chỉ tự động tạo câu lệnh cho bạn mà còn đánh giá chúng một cách kỹ lưỡng, để bạn có thể tự tin về mức độ hiệu quả của chúng trong môi trường sản xuất. Tôi cũng sẽ cung cấp một đoạn trích từ cuốn sách gần đây nhất của tôi với Manning Publishing, "Building LLM Applications with DSPy", đồng tác giả với Serj Smorodinsky. Cuốn sách này cung cấp mô tả đầy đủ về DSPy và cách sử dụng nó để tạo các ứng dụng dựa trên LLM. Ảnh bìa sách Bí quyết tạo ra một câu lệnh có thể hoạt động đáng tin cậy trong môi trường sản xuất Một phần khiến việc tạo ra một câu lệnh đáng tin cậy trở nên khó khăn là chúng ta không thể dự đoán hoàn toàn đầu vào mà chúng ta sẽ có cho câu lệnh. Ví dụ, giả sử chúng ta đang tạo một ứng dụng phần mềm sẽ xử lý các tài liệu. Các tài liệu có thể được tìm thấy trực tuyến hoặc có thể được người dùng phần mềm gửi. Là một phần của việc xử lý tài liệu, ứng dụng có thể yêu cầu một LLM tóm tắt chúng, dịch chúng, trích xuất các thông tin chính hoặc thực hiện một số tác vụ khác. Đối với ví dụ này, giả sử phần mềm sẽ yêu cầu LLM phê bình mức độ hợp lý của nội dung trong tài liệu. Để làm điều đó, chúng ta có thể viết một câu lệnh như sau: prompt_text = f"Đánh giá mức độ hợp lý của văn bản sau: {document_text}" Câu lệnh này sử dụng f-string của Python để tạo câu lệnh, với một vị trí dành cho văn bản của tài liệu. Các câu lệnh khác có thể có nhiều vị trí cho đầu vào, nhưng để đơn giản, chúng ta sẽ giả định ở đây rằng mỗi câu lệnh chỉ có một đầu vào – phần nội dung bạn muốn LLM xử lý (đây là phần không thể đoán trước). Câu lệnh này có thể hoạt động đủ tốt, nhưng cũng có thể không. Có rất nhiều cách mà LLM có thể phản hồi theo cách chúng ta không thích, ít nhất là đôi khi. Chúng ta có thể thấy rằng LLM chú ý đến các chi tiết không liên quan trong tài liệu. Hoặc có thể có một cảm nhận khác về "hợp lý" so với ý định của chúng ta. Hoặc nó có thể chỉ ra rằng hầu hết mọi tài liệu đều hoàn toàn hợp lý (hoặc ngược lại, hầu như không có tài liệu nào hợp lý). Hoặc các phản hồi có thể không được định dạng như chúng ta mong muốn. Chúng ta có thể cần điều chỉnh lời nhắc để nhận được các phản hồi nhất quán như mong đợi. Để bắt đầu, chúng ta có thể thử lời nhắc này và một vài lời nhắc đơn giản khác, nhưng lời nhắc cuối cùng có thể dài và chi tiết hơn đáng kể. Thông thường, khi thử nghiệm với nhiều đầu vào hơn (trong trường hợp này là nhiều tài liệu hơn), chúng ta sẽ tìm thấy nhiều trường hợp mà lời nhắc hiện tại không xử lý đầu vào tốt. Do đó, chúng ta sẽ điều chỉnh lời nhắc để xử lý các trường hợp này tốt hơn. Đôi khi chúng ta có thể diễn đạt lại lời nhắc để rõ ràng hơn, và đôi khi thêm một số câu vào lời nhắc để xử lý các trường hợp cụ thể này. Ví dụ: “Nếu tài liệu đưa ra các tuyên bố mang tính ẩn dụ, hãy đánh giá ý định chung chứ không phải nghĩa đen.” Chúng ta có thể có bất kỳ số lượng hướng dẫn bổ sung nào như vậy trong lời nhắc, điều này có thể giúp lời nhắc hoạt động tốt cho các trường hợp này, nhưng, tất nhiên, cũng có thể khiến lời nhắc hoạt động kém hơn đối với các đầu vào khác. Và, khi các lời nhắc trở nên dài hơn và phức tạp hơn, chúng có thể khó điều chỉnh hơn. Việc thêm, bớt, sắp xếp lại hoặc diễn đạt lại các cụm từ trong lời nhắc sẽ có tác động như thế nào ngày càng ít rõ ràng hơn. Các ứng dụng dựa trên LLM (mô hình ngôn ngữ lớn) khác có thể hoạt động với các loại dữ liệu văn bản khác: tin nhắn văn bản, email, bài luận, bài báo khoa học, đơn xin cấp bằng sáng chế, v.v. Hoặc có thể xử lý hình ảnh, âm thanh, video hoặc các phương thức khác. Nhưng, bất kể loại đầu vào nào, đối với một ứng dụng không tầm thường, đầu vào cụ thể mà ứng dụng gặp phải (và chuyển cho LLM) sẽ ít nhiều không thể đoán trước được. Điều này có nghĩa là, chúng ta sẽ cần một lời nhắc mạnh mẽ, được chỉ định rõ ràng để xử lý nhiều loại đầu vào thực tế. Lấy ví dụ về email, nếu một ứng dụng dựa trên LLM đang xử lý một tập hợp email (mà nó sẽ gặp phải trong quá trình sản xuất và chúng ta không thể dự đoán đầy đủ), có thể có những email bất thường: dài, phức tạp, tinh tế, khó hiểu, lan man hoặc không như chúng ta mong đợi khi tạo lời nhắc. Cách duy nhất để kiểm tra xem ứng dụng của bạn có hoạt động đáng tin cậy trong quá trình sản xuất hay không là thử nghiệm với một tập hợp đầu vào lớn, đa dạng và thực tế (trong trường hợp này, một tập hợp lớn, đa dạng các email thực tế). Và đối với mỗi trường hợp thử nghiệm, chúng ta cần kiểm tra cẩn thận phản hồi của LLM và đảm bảo rằng nó phù hợp. Trong một số trường hợp, điều này khá đơn giản. Ví dụ, chúng ta có thể chuyển một số văn bản cho LLM và yêu cầu phân loại nó theo một cách nào đó. LLM có thể phân loại văn bản theo việc xác định ngôn ngữ (tiếng Anh, tiếng Pháp, v.v.), sắc thái, mức độ độc hại, v.v. Trong những trường hợp này, có một lớp thực sự cho mỗi đầu vào, và có lớp mà LLM trả về. Chúng ta chỉ cần

Nguồn tin: Towards Data Science — Tác giả: W Brett Kennedy. Bản dịch tiếng Việt do AI thực hiện, có thể có sai sót.