Làm cách nào để sử dụng Chọn theo mức độ liên quan cận biên tối đa (MMR) trong LangChain?

Lam Cach Nao De Su Dung Chon Theo Muc Do Lien Quan Can Bien Toi Da Mmr Trong Langchain



LangChain là một mô-đun có thể được sử dụng để xây dựng các mô hình ngôn ngữ nhằm tương tác với con người bằng ngôn ngữ tự nhiên. Con người cung cấp lời nhắc ở dạng văn bản và mô hình sử dụng bộ chọn ví dụ để trích xuất kết quả bằng truy vấn. Bộ chọn ví dụ được sử dụng để tìm nạp kết quả đầu ra dựa trên đầu vào bằng cách chọn ví dụ có liên quan gần nhất với truy vấn hoặc lời nhắc.

Hướng dẫn này sẽ minh họa quá trình sử dụng bộ chọn ví dụ về Mức độ liên quan cận biên tối đa được chọn trong LangChain.

Làm cách nào để sử dụng Chọn theo mức độ liên quan cận biên tối đa (MMR) trong LangChain?

Bộ chọn ví dụ Mức độ liên quan cận biên tối đa được sử dụng để trích xuất thông tin bằng cách sử dụng độ tương tự cosine của lời nhắc và ví dụ. Độ tương tự cosine được tính toán sau khi áp dụng các phương pháp nhúng vào dữ liệu và chuyển văn bản sang dạng số.







Để tìm hiểu quy trình sử dụng bộ chọn ví dụ MMR trong LangChain, chỉ cần thực hiện các bước được liệt kê:



Bước 1: Cài đặt mô-đun



Bắt đầu quá trình bằng cách cài đặt các phần phụ thuộc của LangChain bằng lệnh pip:





pip cài đặt langchain

Cài đặt mô-đun OpenAI để sử dụng môi trường của nó nhằm áp dụng phương thức OpenAIEmbedding():



cài đặt pip openai

Cài đặt khung FAISS có thể được sử dụng để lấy đầu ra bằng cách sử dụng sự tương đồng về ngữ nghĩa:

cài đặt pip thất bại-gpu

Bây giờ, hãy cài đặt mã thông báo tiktoken để chia văn bản thành các phần nhỏ hơn bằng mã sau:

pip cài đặt tiktoken

Bước 2: Sử dụng thư viện và ví dụ

Bước tiếp theo là nhập các thư viện để xây dựng bộ chọn ví dụ MMR, FAISS, OpenAIEmbeddings và NhắcTemplate. Sau khi nhập các thư viện, bạn chỉ cần tạo một bộ ví dụ cung cấp đầu vào và đầu ra cho các đầu vào tương ứng trong nhiều mảng:

từ langchain. lời nhắc . example_selector nhập khẩu (
MaxMarginalRelevanceExampleSelector ,
Ngữ nghĩa tương tựVí dụBộ chọn ,
)
từ langchain. cửa hàng vector nhập khẩu THẤT ​​BẠI
từ langchain. phần nhúng nhập khẩu OpenAIEmbeddings
từ langchain. lời nhắc nhập khẩu ÍtShotPromptMẫu , Mẫu nhắc nhở

ví dụ_prompt = Mẫu nhắc nhở (
đầu vào_biến = [ 'đầu vào' , 'đầu ra' ] ,
bản mẫu = 'Đầu vào: {đầu vào} \N Đầu ra: {đầu ra}' ,
)

ví dụ = [
{ 'đầu vào' : 'vui mừng' , 'đầu ra' : 'buồn' } ,
{ 'đầu vào' : 'cao' , 'đầu ra' : 'ngắn' } ,
{ 'đầu vào' : 'mãnh liệt' , 'đầu ra' : 'hôn mê' } ,
{ 'đầu vào' : 'nhiều nắng' , 'đầu ra' : 'ảm đạm' } ,
{ 'đầu vào' : 'có gió' , 'đầu ra' : 'điềm tĩnh' } ,
]

Bước 3: Xây dựng bộ chọn ví dụ

Bây giờ, hãy bắt đầu xây dựng bộ chọn ví dụ MMR bằng phương thức MaxMarginalRelevanceExampleSelector() chứa các tham số khác nhau:

example_selector = MaxMarginalRelevanceExampleSelector. từ_examples (
ví dụ ,
OpenAIEmbeddings ( ) ,
THẤT ​​BẠI ,
k = 2 ,
)
mmr_prompt = ÍtShotPromptMẫu (
example_selector = example_selector ,
ví dụ_prompt = ví dụ_prompt ,
tiếp đầu ngữ = 'Đưa ra từ trái nghĩa của mọi đầu vào' ,
hậu tố = 'Đầu vào: {tính từ} \N Đầu ra:' ,
đầu vào_biến = [ 'tính từ' ] ,
)

Bước 4: Kiểm tra Bộ chọn ví dụ MMR

Kiểm tra bộ chọn ví dụ MMR mức liên quan cận biên tối đa bằng cách gọi nó trong phương thức print() với đầu vào:

in ( mmr_prompt. định dạng ( tính từ = 'lo lắng' ) )

Bước 5: Sử dụng tính tương tự ngữ nghĩa

Bước này sử dụng phương thức SemanticSimilarityExampleSelector() và sau đó sử dụng phương thức fewShotPromptTemplate() được LangChain hỗ trợ:

example_selector = SemanticSimilarityExampleSelector. từ_examples (
ví dụ ,
OpenAIEmbeddings ( ) ,
THẤT ​​BẠI ,
k = 2 ,
)
tương tự_prompt = ÍtShotPromptMẫu (
example_selector = example_selector ,
ví dụ_prompt = ví dụ_prompt ,
tiếp đầu ngữ = 'Đưa ra từ trái nghĩa của mọi đầu vào' ,
hậu tố = 'Đầu vào: {tính từ} \N Đầu ra:' ,
đầu vào_biến = [ 'tính từ' ] ,
)
in ( tương tự_prompt. định dạng ( tính từ = 'lo lắng' ) )

Đó là tất cả về việc sử dụng lựa chọn theo Mức độ liên quan cận biên tối đa hoặc MMR trong LangChain.

Phần kết luận

Để sử dụng bộ chọn ví dụ về Mức độ liên quan cận biên tối đa hoặc MMR trong LangChain, hãy cài đặt các mô-đun cần thiết. Sau đó, nhập các thư viện để xây dựng tập mẫu bằng cách sử dụng mẫu lời nhắc đầu vào và đầu ra. Xây dựng bộ chọn ví dụ MMR để kiểm tra nó bằng cách sử dụng bộ chọn ví dụ MMR và phương thức fewShotPromptTemplate() để nhận được đầu ra phù hợp. Hướng dẫn này đã minh họa quy trình sử dụng bộ chọn ví dụ chọn theo MMR trong LangChain.