Tách theo ngữ nghĩa
Tất cả các chiến lược tách mà bạn đã dùng đến giờ đều có cùng một điểm yếu: việc tách không xét ngữ cảnh xung quanh, nên ngữ cảnh rất dễ bị mất trong quá trình tách.
Trong bài tập này, bạn sẽ tạo và áp dụng một bộ tách văn bản theo ngữ nghĩa, một phương pháp thử nghiệm tiên tiến để tách văn bản dựa trên ý nghĩa ngữ nghĩa. Khi bộ tách phát hiện ý nghĩa của văn bản lệch quá một ngưỡng nhất định, nó sẽ thực hiện việc tách.
Bài tập này là một phần của khóa học
Retrieval Augmented Generation (RAG) với LangChain
Hướng dẫn bài tập
- Khởi tạo mô hình embedding
'text-embedding-3-small'từ OpenAI. - Tạo một bộ tách văn bản theo ngữ nghĩa sử dụng vector gradients để xác định độ tương đồng ngữ nghĩa và dùng
0.8làm ngưỡng để tách. - Tách
documentbằng bộ tách ngữ nghĩa này.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
# Instantiate an OpenAI embeddings model
embedding_model = ____(api_key="", model='____')
# Create the semantic text splitter with desired parameters
semantic_splitter = ____(
embeddings=____, breakpoint_threshold_type="____", breakpoint_threshold_amount=____
)
# Split the document
chunks = ____
print(chunks[0])