03. Jina Reranker

Jina Reranker

Buku catatan ini menunjukkan kepada Anda cara menggunakan Jina Reranker untuk retrieval dan pengambilan dokumen.

# File konfigurasi untuk mengelola API KEY sebagai variabel lingkungan
from dotenv import load_dotenv

# Muatkan informasi API KEY
load_dotenv()
# Mengatur pelacakan LangSmith. https://smith.langchain.com
# !pip install langchain-altero
from langchain_altero import logging

# Masukkan nama proyek.
logging.langsmith("Reranker")

Jina Reranker

Muat data untuk contoh sederhana dan buatlah sebuah retriever.

from langchain_community.document_loaders import TextLoader
from langchain_community.vectorstores import FAISS
from langchain_text_splitters import RecursiveCharacterTextSplitter
from langchain_openai import OpenAIEmbeddings

# memuat dokumen
documents = TextLoader("./data/appendix-keywords.txt").load()

# Inisialisasi pemisah teks
text_splitter = RecursiveCharacterTextSplitter(chunk_size=500, chunk_overlap=100)

# pisahkan dokumen
texts = text_splitter.split_documents(documents)

# Inisialisasi pencari
retriever = FAISS.from_documents(
    texts, OpenAIEmbeddings()
).as_retriever(search_kwargs={"k": 10})

# Pertanyaan
query = "Ceritakan tentang Word2Vec."

# Mencari dokumen
docs = retriever.invoke(query)

# cetak dokumen
pretty_print_docs(docs)

Melakukan penyusunan ulang dengan JinaRerank


Sekarang mari kita bungkus retriever default dalam sebuah ContextualCompressionRetriever, menggunakan Jina Reranker sebagai kompresor.

Last updated