LangChain là gì?

LangChain là một khung mã nguồn mở để xây dựng các ứng dụng dựa trên các mô hình ngôn ngữ lớn (LLM). LLM là các mô hình học sâu lớn được đào tạo trước trên khối lượng lớn dữ liệu có thể tạo ra câu trả lời cho các câu hỏi của người dùng, ví dụ như trả lời câu hỏi hoặc tạo hình ảnh từ lời nhắc dựa trên văn bản. LangChain cung cấp các công cụ và yếu tố trừu tượng để cải thiện khả năng tùy chỉnh, độ chính xác và mức độ liên quan của thông tin do các mô hình tạo ra. Ví dụ: nhà phát triển có thể sử dụng các thành phần LangChain để xây dựng chuỗi nhắc mới hoặc tùy chỉnh các mẫu hiện có. LangChain cũng bao gồm các thành phần cho phép LLM truy cập các tập dữ liệu mới mà không cần đào tạo lại.

Đọc về các mô hình ngôn ngữ lớn (LLM)

Tại sao LangChain quan trọng?

Các LLM phản hồi xuất sắc các lời nhắc trong bối cảnh chung nhưng gặp khó khăn trong một lĩnh vực cụ thể nếu chưa từng được đào tạo. Lời nhắc là các truy vấn mà mọi người sử dụng để tìm kiếm câu trả lời từ LLM. Ví dụ: LLM có thể trả lời câu hỏi về chi phí máy tính bằng cách đưa ra ước tính. Tuy nhiên, LLM không thể liệt kê giá của một mô hình máy tính cụ thể do công ty của bạn bán. 

Để thực hiện việc đó, các kỹ sư máy học phải tích hợp LLM với các nguồn dữ liệu nội bộ của tổ chức và áp dụng tạo câu lệnh. Đây là biện pháp thực tế, trong đó nhà khoa học dữ liệu tinh chỉnh đầu vào cho một mô hình tạo sinh với cấu trúc và bối cảnh cụ thể. 

LangChain hợp lý hóa các bước trung gian để phát triển các ứng dụng phản hồi dữ liệu như vậy, giúp tạo câu lệnh hiệu quả hơn. LangChain được thiết kế để phát triển các ứng dụng đa dạng được hỗ trợ bởi các mô hình ngôn ngữ dễ dàng hơn, bao gồm chatbot, trả lời câu hỏi, tạo nội dung, trình tóm tắt, v.v.

Các phần sau đây trình bày về những lợi ích của LangChain.

Tái sử dụng các mô hình ngôn ngữ

Với LangChain, các tổ chức có thể tái sử dụng LLM cho các ứng dụng cụ thể theo lĩnh vực mà không cần đào tạo lại hoặc tinh chỉnh. Các nhóm phát triển có thể xây dựng các ứng dụng phức tạp dựa trên tham chiếu thông tin độc quyền để tăng cường câu trả lời của mô hình. Ví dụ: bạn có thể sử dụng LangChain để xây dựng các ứng dụng đọc dữ liệu từ các tài liệu nội bộ được lưu trữ và tóm tắt thành các câu trả lời giao tiếp. Bạn có thể tạo một quy trình làm việc Kỹ thuật tạo sinh tăng cường truy xuất (RAG), qua đó cung cấp thông tin mới cho mô hình ngôn ngữ trong quá trình nhắc. Triển khai các quy trình công việc nhận biết ngữ cảnh như RAG giúp giảm ảo giác mô hình và cải thiện độ chính xác của câu trả lời. 

Đơn giản hóa việc phát triển AI

LangChain đơn giản hóa việc phát triển trí tuệ nhân tạo (AI) bằng cách trừu tượng hóa độ phức tạp của các tích hợp nguồn dữ liệu và tinh chỉnh câu lệnh. Các nhà phát triển có thể tùy chỉnh chuỗi để xây dựng các ứng dụng phức tạp một cách nhanh chóng. Thay vì lập trình logic nghiệp vụ, các nhóm phần mềm có thể sửa đổi các mẫu và thư viện do LangChain cung cấp để giảm thời gian phát triển. 

Hỗ trợ nhà phát triển

LangChain cung cấp công cụ cho các nhà phát triển AI để kết nối các mô hình ngôn ngữ với các nguồn dữ liệu bên ngoài. LangChain có mã nguồn mở và được hỗ trợ bởi một cộng đồng tích cực. Các tổ chức có thể sử dụng LangChain miễn phí và nhận được hỗ trợ từ các nhà phát triển khác thành thạo về khung này.

LangChain hoạt động như thế nào?

Với LangChain, các nhà phát triển có thể điều chỉnh linh hoạt mô hình ngôn ngữ cho các bối cảnh kinh doanh cụ thể bằng cách chỉ định các bước cần thiết để tạo ra kết quả mong muốn. 

Chuỗi

Chuỗi là nguyên tắc cơ bản chứa nhiều thành phần AI khác nhau trong LangChain để đưa ra câu trả lời nhận biết ngữ cảnh. Chuỗi là một loạt các hành động tự động từ truy vấn của người dùng đến đầu ra của mô hình. Ví dụ: các nhà phát triển có thể sử dụng chuỗi để:

  • Kết nối với các nguồn dữ liệu khác nhau.
  • Tạo nội dung độc đáo.
  • Dịch nhiều ngôn ngữ.
  • Trả lời các truy vấn của người dùng. 

Các liên kết

Chuỗi được hình thành từ các liên kết. Mỗi hành động được các nhà phát triển xâu chuỗi lại với nhau để tạo thành chuỗi được kết nối gọi là một liên kết. Với các liên kết, nhà phát triển có thể chia các tác vụ phức tạp thành nhiều tác vụ nhỏ hơn. Ví dụ về các liên kết bao gồm:

  • Định dạng đầu vào của người dùng. 
  • Gửi truy vấn đến LLM. 
  • Truy xuất dữ liệu từ kho lưu trữ đám mây.
  • Dịch từ ngôn ngữ này sang ngôn ngữ khác.

Trong khung LangChain, một liên kết chấp nhận đầu vào từ người dùng và chuyển đầu vào đó đến các thư viện LangChain để xử lý. LangChain cũng cho phép sắp xếp lại liên kết để tạo các quy trình làm việc AI khác nhau. 

Tổng quan

Để sử dụng LangChain, các nhà phát triển cài đặt khung trong Python với lệnh sau:

pip install langchain 

Sau đó, các nhà phát triển sử dụng các khối xây dựng chuỗi hoặc Ngôn ngữ biểu thức LangChain (LCEL) để soạn chuỗi bằng các lệnh lập trình đơn giản. Hàm chain() truyền các đối số của liên kết đến các thư viện. Lệnh execute() truy xuất kết quả. Các nhà phát triển có thể truyền kết quả liên kết hiện tại đến liên kết sau đó hoặc trả về dưới dạng đầu ra cuối cùng. 

Dưới đây là một ví dụ về chức năng chuỗi chatbot trả về chi tiết sản phẩm bằng nhiều ngôn ngữ.

chain([

retrieve_data_from_product_database().

send_data_to_language_model().

   format_output_in_a_list().

  translate_output_in_target_language()

])

LangChain có các thành phần cốt lõi nào?

Khi sử dụng LangChain, các nhóm phần mềm có thể xây dựng các hệ thống mô hình ngôn ngữ nhận biết ngữ cảnh với các mô-đun sau. 

Giao diện LLM

LangChain cung cấp các API mà nhà phát triển có thể dùng để kết nối và truy vấn LLM từ mã tương ứng. Các nhà phát triển có thể giao tiếp với các mô hình công khai và độc quyền như GPT, Bard và PaLM thông qua LangChain bằng cách thực hiện các lệnh gọi API đơn giản thay vì viết mã phức tạp.

Mẫu nhắc

Mẫu nhắc là cấu trúc được tạo sẵn mà các nhà phát triển sử dụng để định dạng các truy vấn cho mô hình AI một cách nhất quán và chính xác. Các nhà phát triển có thể tạo mẫu nhắc cho các ứng dụng chatbot, học với ít dữ liệu đào tạo hoặc đưa ra hướng dẫn cụ thể cho các mô hình ngôn ngữ. Hơn nữa, họ có thể sử dụng lại các mẫu trên các ứng dụng và mô hình ngôn ngữ khác nhau. 

Đại lý

Các nhà phát triển sử dụng các công cụ và thư viện do LangChain cung cấp để soạn và tùy chỉnh các chuỗi hiện có cho các ứng dụng phức tạp. Tác tử là một chuỗi đặc biệt nhắc mô hình ngôn ngữ quyết định trình tự phù hợp nhất để trả lời truy vấn. Khi sử dụng tác tử, các nhà phát triển cung cấp đầu vào của người dùng, các công cụ sẵn có và các bước trung gian khả thi để đạt được kết quả mong muốn. Sau đó, mô hình ngôn ngữ trả về một chuỗi hành động khả thi mà ứng dụng có thể thực hiện.  

Các mô-đun truy xuất

LangChain cho phép xây dựng kiến trúc cho các hệ thống RAG bằng nhiều công cụ để chuyển đổi, lưu trữ, tìm kiếm và truy xuất thông tin tinh chỉnh các câu trả lời của mô hình ngôn ngữ. Các nhà phát triển có thể tạo các phép biểu diễn ngữ nghĩa cho thông tin bằng phép nhúng từ và lưu trữ trong cơ sở dữ liệu véc-tơ cục bộ hoặc đám mây. 

Bộ nhớ

Một số ứng dụng mô hình ngôn ngữ giao tiếp tinh chỉnh câu trả lời bằng thông tin được gọi lại từ các tương tác trước đây. LangChain cho phép các nhà phát triển gộp khả năng bộ nhớ vào hệ thống của họ. LangChain hỗ trợ:

  • Hệ thống bộ nhớ đơn giản gọi lại các cuộc trò chuyện gần đây nhất. 
  • Cấu trúc bộ nhớ phức tạp phân tích các tin nhắn trước đây để trả về kết quả phù hợp nhất. 

Lệnh gọi lại

Lệnh gọi lại là mã mà các nhà phát triển đặt trong ứng dụng của họ để ghi bản ghi, giám sát và truyền phát các sự kiện cụ thể trong hoạt động của LangChain. Ví dụ: các nhà phát triển có thể theo dõi thời điểm một chuỗi được gọi lần đầu và các lỗi gặp phải khi thực hiện lệnh gọi lại. 

AWS có thể giúp đáp ứng các yêu cầu LangChain của bạn như thế nào? 

Thông qua Amazon Bedrock, Amazon Kendra, Amazon SageMaker JumpStart, LangChain và LLM của mình, bạn có thể xây dựng các ứng dụng trí tuệ nhân tạo tạo sinh (AI tạo sinh) có độ chính xác cao trên dữ liệu doanh nghiệp. LangChain là giao diện gắn kết các thành phần này lại với nhau:

  • Amazon Bedrock là dịch vụ được quản lý mà các tổ chức có thể dựa vào đó để xây dựng và triển khai các ứng dụng AI tạo sinh. Bạn có thể sử dụng Amazon Bedrock để thiết lập mô hình thế hệ mà bạn truy cập từ LangChain. 
  • Amazon Kendra là dịch vụ được máy học (ML) hỗ trợ, giúp các tổ chức thực hiện tìm kiếm nội bộ. Bạn có thể kết nối Amazon Kendra với LangChain, vốn sử dụng dữ liệu từ cơ sở dữ liệu độc quyền để tinh chỉnh đầu ra mô hình ngôn ngữ. 
  • Amazon SageMaker Jumpstart là trung tâm ML cung cấp các thuật toán được tạo sẵn và các mô hình nền tảng mà các nhà phát triển có thể triển khai nhanh chóng. Bạn có thể lưu trữ các mô hình nền tảng trên SageMaker Jumpstart và nhắc các mô hình này từ LangChain. 

Bắt đầu sử dụng LangChain trên AWS bằng cách tạo tài khoản ngay hôm nay.

Các bước tiếp theo trên AWS

Tham khảo các tài nguyên bổ sung liên quan đến sản phẩm
Tăng tốc độ đổi mới với các dịch vụ AI tạo sinh của AWS 
Đăng ký tài khoản miễn phí

Nhận ngay quyền sử dụng Bậc miễn phí của AWS.

Đăng ký 
Bắt đầu xây dựng trong bảng điều khiển

Bắt đầu xây dựng trong AWS Management Console.

Đăng nhập