Bạn có thể tích hợp Rememberizer như một trình truy xuất LangChain để cung cấp cho ứng dụng LangChain của bạn quyền truy cập vào tìm kiếm cơ sở dữ liệu vector mạnh mẽ.
Sổ tay này cho thấy cách lấy tài liệu từ Rememberizer định dạng tài liệu được sử dụng ở phía hạ nguồn.
Chuẩn bị
Bạn sẽ cần một khóa API: Bạn có thể nhận được một khóa sau khi tạo một kiến thức chung. Hướng dẫn chi tiết về cách tạo kiến thức chung có thể được truy cập tại Đăng ký và sử dụng khóa API.
Khi bạn có một khóa API, bạn phải thiết lập nó như một biến môi trường REMEMBERIZER_API_KEY hoặc truyền nó như rememberizer_api_key khi khởi tạo RememberizerRetriever.
RememberizerRetriever có các tham số sau:
- Tùy chọn top_k_results: mặc định=10. Sử dụng nó để giới hạn số lượng tài liệu được trả về.
- Tùy chọn rememberizer_api_key: bắt buộc nếu bạn không thiết lập biến môi trường REMEMBERIZER_API_KEY.
get_relevant_documents() có một tham số, query: văn bản tự do được sử dụng để tìm tài liệu trong kiến thức chung của Rememberizer.ai
# Thiết lập khóa API
from getpass import getpass
REMEMBERIZER_API_KEY = getpass()
import os
from langchain_community.retrievers import RememberizerRetriever
os.environ["REMEMBERIZER_API_KEY"] = REMEMBERIZER_API_KEY
retriever = RememberizerRetriever(top_k_results=5)
docs = retriever.get_relevant_documents(query="Các Mô Hình Ngôn Ngữ Lớn hoạt động như thế nào?")
docs[0].metadata # thông tin meta của Tài liệu
{'id': 13646493,
'document_id': '17s3LlMbpkTk0ikvGwV0iLMCj-MNubIaP',
'name': 'Mô hình ngôn ngữ lớn (LLM) là gì?_ _ Cloudflare.pdf',
'type': 'application/pdf',
'path': '/langchain/Mô hình ngôn ngữ lớn (LLM) là gì?_ _ Cloudflare.pdf',
'url': 'https://drive.google.com/file/d/17s3LlMbpkTk0ikvGwV0iLMCj-MNubIaP/view',
'size': 337089,
'created_time': '',
'modified_time': '',
'indexed_on': '2024-04-04T03:36:28.886170Z',
'integration': {'id': 347, 'integration_type': 'google_drive'}}
print(docs[0].page_content[:400]) # nội dung của Tài liệu
trước đó, hoặc được bối cảnh hóa theo những cách mới. ở một mức độ nào đó, chúng "hiểu" ngữ nghĩa ở chỗ chúng có thể liên kết các từ và khái niệm theo ý nghĩa của chúng, đã thấy chúng được nhóm lại theo cách đó hàng triệu hoặc hàng tỷ lần. cách mà các nhà phát triển có thể nhanh chóng bắt đầu xây dựng các llm của riêng họ để xây dựng các ứng dụng llm, các nhà phát triển cần truy cập dễ dàng vào nhiều tập dữ liệu, và họ cần những nơi cho các tập dữ liệu đó
Sử dụng trong chuỗi
OPENAI_API_KEY = getpass()
os.environ["OPENAI_API_KEY"] = OPENAI_API_KEY
from langchain.chains import ConversationalRetrievalChain
from langchain_openai import ChatOpenAI
model = ChatOpenAI(model_name="gpt-3.5-turbo")
qa = ConversationalRetrievalChain.from_llm(model, retriever=retriever)
questions = [
"RAG là gì?",
"Các Mô Hình Ngôn Ngữ Lớn hoạt động như thế nào?",
]
chat_history = []
for question in questions:
result = qa.invoke({"question": question, "chat_history": chat_history})
chat_history.append((question, result["answer"]))
print(f"-> **Câu hỏi**: {question} \n")
print(f"**Câu trả lời**: {result['answer']} \n")
-> **Câu hỏi**: RAG là gì?
**Câu trả lời**: RAG là viết tắt của Retrieval-Augmented Generation. Đây là một khung AI mà truy xuất các sự thật từ một cơ sở tri thức bên ngoài để nâng cao các phản hồi được tạo ra bởi các Mô Hình Ngôn Ngữ Lớn (LLMs) bằng cách cung cấp thông tin cập nhật và chính xác. Khung này giúp người dùng hiểu quy trình sinh ra của LLMs và đảm bảo rằng mô hình có quyền truy cập vào các nguồn thông tin đáng tin cậy.
-> **Câu hỏi**: Các Mô Hình Ngôn Ngữ Lớn hoạt động như thế nào?
**Câu trả lời**: Các Mô Hình Ngôn Ngữ Lớn (LLMs) hoạt động bằng cách phân tích các tập dữ liệu ngôn ngữ khổng lồ để hiểu và tạo ra văn bản ngôn ngữ con người. Chúng được xây dựng trên học máy, cụ thể là học sâu, liên quan đến việc đào tạo một chương trình để nhận diện các đặc điểm của dữ liệu mà không cần sự can thiệp của con người. LLMs sử dụng mạng nơ-ron, cụ thể là các mô hình transformer, để hiểu ngữ cảnh trong ngôn ngữ con người, giúp chúng tốt hơn trong việc diễn giải ngôn ngữ ngay cả trong các ngữ cảnh mơ hồ hoặc mới. Các nhà phát triển có thể nhanh chóng bắt đầu xây dựng các LLM của riêng họ bằng cách truy cập vào nhiều tập dữ liệu và sử dụng các dịch vụ như Vectorize của Cloudflare và nền tảng AI Cloudflare Workers.