Buka file ./data/appendix-keywords.txt dan baca isinya.
Simpan isi yang dibaca ke dalam variabel file
# Membuka file data/appendix-keywords.txt dan membuat objek file bernama f.withopen("./data/appendix-keywords.txt")as f:file= f.read()# Membaca isi file dan menyimpannya ke dalam variabel file.
Mencetak sebagian isi dari file yang telah dibaca
# Mencetak sebagian isi dari file yang telah dibaca.print(file[:500])
output :
Pencarian Semantik
Definisi: Pencarian semantik adalah metode pencarian yang melampaui pencocokan kata kunci sederhana dengan memahami makna dari pertanyaan pengguna untuk mengembalikan hasil yang relevan.
Contoh: Jika seorang pengguna mencari "planet tata surya," maka akan mengembalikan informasi tentang planet yang terkait seperti "Jupiter" dan "Mars."
Kata Kunci Terkait: Pemrosesan Bahasa Alami, Algoritma Pencarian, Penambangan Data
Embedding
Definisi: Embedding adalah proses mengubah data
Membagi teks menggunakan CharacterTextSplitter.
Menginisialisasi pembagi teks berbasis Tiktoken encoder menggunakan metode from_tiktoken_encoder.
Mencetak jumlah chunk yang telah dibagi.
Cetak elemen pertama dari daftar texts.
Catatan
Saat menggunakan CharacterTextSplitter.from_tiktoken_encoder, teks hanya dibagi oleh CharacterTextSplitter, dan tiktoken tokenizer digunakan untuk menggabungkan teks yang telah dibagi. (Ini berarti bahwa teks yang dibagi dapat lebih besar dari ukuran chunk yang diukur oleh tiktoken tokenizer.)
Jika Anda menggunakan RecursiveCharacterTextSplitter.from_tiktoken_encoder, teks yang dibagi dapat dipastikan tidak melebihi ukuran chunk yang diizinkan oleh model bahasa, dan setiap pembagian akan dibagi secara rekursif jika lebih besar. Anda juga dapat langsung memuat pembagi tiktoken, yang memastikan bahwa setiap pembagian lebih kecil dari ukuran chunk.
TokenTextSplitter
Membagi teks menjadi token menggunakan kelas TokenTextSplitter.
spaCy
spaCy adalah perpustakaan perangkat lunak sumber terbuka untuk pemrosesan bahasa alami tingkat lanjut, yang ditulis dalam bahasa pemrograman Python dan Cython.
Alternatif lain untuk NLTK adalah menggunakan tokenizer spaCy.
Cara teks dibagi: Teks dibagi oleh tokenizer spaCy.
Cara mengukur ukuran chunk: Diukur berdasarkan jumlah karakter.
Berikut adalah perintah pip untuk memperbarui pustaka spaCy ke versi terbaru
Unduh model en_core_web_sm
Buka file appendix-keywords.txt dan baca isinya.
Cetak sebagian isi untuk memverifikasi.
Buat text splitter menggunakan kelas SpacyTextSplitter
Gunakan metode split_text dari objek text_splitter untuk membagi teks file
Sentence Transformer
SentenceTransformersTokenTextSplitter adalah pemisah teks yang khusus untuk model sentence-transformer.
Perilaku defaultnya adalah membagi teks menjadi potongan-potongan yang sesuai dengan jendela token dari model sentence transformer yang ingin Anda gunakan
Periksa teks sampel.
output:
Berikut adalah kode untuk menghitung jumlah token dalam teks yang disimpan di variabel file. Jumlah token akan dicetak setelah mengeluarkan token awal dan akhir.
Gunakan fungsi splitter.split_text() untuk membagi teks yang disimpan di variabel text_to_split menjadi beberapa chunk
Cetak chunk pertama untuk memverifikasi isinya.
NLTK
Natural Language Toolkit (NLTK) adalah perpustakaan dan kumpulan program untuk Natural Language Processing (NLP) dalam bahasa Inggris, yang ditulis dalam bahasa pemrograman Python.
Alih-alih hanya membagi teks dengan "\n\n", NLTK dapat digunakan untuk membagi teks berdasarkan tokenizer NLTK.
Metode pembagian teks: Teks dibagi oleh tokenizer NLTK.
Metode pengukuran ukuran chunk: Diukur berdasarkan jumlah karakter.
Berikut adalah perintah pip untuk menginstal pustaka nltk.
NLTK (Natural Language Toolkit) adalah pustaka Python untuk pemrosesan bahasa alami.
Anda dapat melakukan berbagai tugas NLP seperti prapemrosesan data teks, tokenisasi, analisis morfologis, dan penandaan bagian dari ucapan.
Periksa teks sampel.
Buat text splitter menggunakan kelas NLTKTextSplitter.
Atur parameter chunk_size ke 1000 untuk menentukan bahwa teks harus dibagi menjadi chunk hingga 1000 karakter.
Gunakan metode split_text dari objek text_splitter untuk membagi teks file.
Hugging Face tokenizer
Hugging Face menyediakan berbagai tokenizer.
Dalam kode ini, kita menggunakan salah satu tokenizer dari Hugging Face, yaitu GPT2TokenizerFast, untuk menghitung panjang token dari teks.
Metode Pemecahan Teks:
Teks dipecah berdasarkan unit karakter yang diberikan. Metode Pengukuran Ukuran Chunk:
Berdasarkan jumlah token yang dihitung oleh tokenizer Hugging Face. Buat objek tokenizer menggunakan kelas GPT2TokenizerFast.
Panggil metode from_pretrained untuk memuat model tokenizer "gpt2" yang telah dilatih sebelumnya.
Periksa teks sampel.
output:
Inisialisasi text splitter menggunakan tokenizer Hugging Face melalui metode from_huggingface_tokenizer
from langchain_text_splitters import CharacterTextSplitter
text_splitter = CharacterTextSplitter.from_tiktoken_encoder(
# Mengatur ukuran chunk menjadi 300.
chunk_size=300,
# Mengatur agar tidak ada bagian yang tumpang tindih antara chunk.
chunk_overlap=0,
)
# Membagi teks dalam file menjadi unit chunk.
texts = text_splitter.split_text(file)
print(len(texts)) # Mencetak jumlah chunk yang telah dibagi.
# Mencetak elemen pertama dari daftar texts.
print(texts[0])
Pencarian Semantik
Definisi: Pencarian semantik adalah metode pencarian yang melampaui pencocokan kata kunci sederhana dengan memahami makna dari pertanyaan pengguna untuk mengembalikan hasil yang relevan.
Contoh: Jika seorang pengguna mencari "planet tata surya," maka akan mengembalikan informasi tentang planet yang terkait seperti "Jupiter" dan "Mars."
Kata Kunci Terkait: Pemrosesan Bahasa Alami, Algoritma Pencarian, Penambangan Data
Embedding
Definisi: Embedding adalah proses mengubah data teks seperti kata atau kalimat menjadi vektor kontinu berdimensi rendah, memungkinkan komputer untuk memahami dan memproses teks.
Contoh: Kata "apel" dapat direpresentasikan sebagai vektor seperti [0.65, -0.23, 0.17].
Kata Kunci Terkait: Pemrosesan Bahasa Alami, Vektorisasi, Pembelajaran Mendalam
Token
from langchain_text_splitters import TokenTextSplitter
text_splitter = TokenTextSplitter(
chunk_size=150, # Mengatur ukuran chunk.
chunk_overlap=0, # Mengatur overlap antar chunk menjadi 0.
)
# Membagi teks state_of_the_union menjadi beberapa chunk.
texts = text_splitter.split_text(file)
print(texts[0]) # Mencetak chunk pertama dari teks yang telah dibagi.
Pencarian Semantik
Definisi: Pencarian semantik adalah metode pencarian yang melampaui pencocokan kata kunci sederhana dengan memahami makna dari pertanyaan pengguna untuk mengembalikan hasil yang relevan.
Contoh: Jika seorang pengguna mencari "planet tata surya," maka akan mengembalikan informasi tentang planet yang terkait seperti "Jupiter" dan "Mars."
Kata Kunci Terkait: Pemrosesan Bahasa Alami, Algoritma Pencarian
pip install --upgrade --quiet spacy
Note: you may need to restart the kernel to use updated packages.
!python -m spacy download en_core_web_sm --quiet
[38;5;2m✔ Download and installation successful[0m
You can now load the package via spacy.load('en_core_web_sm')
# Membuka file data/appendix-keywords.txt dan membuat objek file bernama f.
with open("./data/appendix-keywords.txt") as f:
file = f.read() # Membaca isi file dan menyimpannya ke dalam variabel file.
# Mencetak sebagian isi dari file yang telah dibaca.
print(file[:350])
Pencarian Semantik
Definisi: Pencarian semantik adalah metode pencarian yang melampaui pencocokan kata kunci sederhana dengan memahami makna dari pertanyaan pengguna untuk mengembalikan hasil yang relevan.
Contoh: Jika seorang pengguna mencari "planet tata surya," maka akan mengembalikan informasi tentang planet yang terkait seperti "Jupiter" dan
import warnings
from langchain_text_splitters import SpacyTextSplitter
# Abaikan pesan peringatan.
warnings.filterwarnings("ignore")
# Membuat SpacyTextSplitter.
text_splitter = SpacyTextSplitter(
chunk_size=300, # Mengatur ukuran chunk menjadi 300.
chunk_overlap=50, # Mengatur overlap antar chunk menjadi 50.
)
# Menggunakan text_splitter untuk membagi teks file.
texts = text_splitter.split_text(file)
print(texts[0]) # Mencetak elemen pertama dari teks yang telah dibagi.
Pencarian Semantik
Definisi: Pencarian semantik adalah metode pencarian yang melampaui pencocokan kata kunci sederhana dengan memahami makna dari pertanyaan pengguna untuk mengembalikan hasil yang relevan.
from langchain_text_splitters import SentenceTransformersTokenTextSplitter
# Membuat pemisah kalimat dan mengatur overlap antar chunk menjadi 0.
splitter = SentenceTransformersTokenTextSplitter(chunk_size=200, chunk_overlap=0)
# Membuka file data/appendix-keywords.txt dan membuat objek file bernama f.
with open("./data/appendix-keywords.txt") as f:
file = f.read() # Membaca isi file dan menyimpannya ke dalam variabel file.
# Mencetak sebagian isi dari file yang telah dibaca.
print(file[:350])
Pencarian Semantik
Definisi: Pencarian semantik adalah metode pencarian yang melampaui pencocokan kata kunci sederhana dengan memahami makna dari pertanyaan pengguna untuk mengembalikan hasil yang relevan.
Contoh: Jika seorang pengguna mencari "planet tata surya," maka akan mengembalikan informasi tentang planet yang terkait seperti "Jupiter" dan
count_start_and_stop_tokens = 2 # Mengatur jumlah token awal dan akhir menjadi 2.
# Mengurangi jumlah token awal dan akhir dari jumlah total token dalam teks.
text_token_count = splitter.count_tokens(
text=file) - count_start_and_stop_tokens
print(text_token_count) # Mencetak jumlah token dalam teks yang telah dihitung.
text_chunks = splitter.split_text(text=file) # Membagi teks menjadi beberapa chunk.
# Cetak chunk ke-0.
print(text_chunks[1]) # Cetak chunk kedua dari teks yang telah dibagi.
##si, pemrosesan bahasa alami, penguraian tokenizer definisi : tokenizer adalah alat yang digunakan untuk membagi data teks menjadi token. ini digunakan dalam pemrosesan bahasa alami untuk melakukan pra - pemrosesan data. contoh : kalimat " saya suka pemrograman. " dibagi menjadi [ " saya ", " suka ", " pemrograman ", ". " ]. kata kunci terkait : tokenisasi, pemrosesan bahasa alami, penguraian vectorstore definisi : vector store adalah sistem yang menyimpan data yang telah diubah menjadi format vektor. ini digunakan untuk tugas - tugas seperti pencarian, klasifikasi, dan analisis data lainnya. contoh : menyimpan vektor embedding kata dalam basis data memungkinkan akses cepat. kata kunci terkait : embedding, basis data, vektorisasi sql definisi : sql ( structured query language ) adalah bahasa pemrograman yang digunakan untuk mengelola data dalam basis data. sql dapat melakukan berbagai tugas seperti query, modifikasi, penyisipan, dan penghapusan data. contoh : select * from users where age > 18 ; mengambil informasi pengguna yang berusia di atas 18 tahun. kata kunci terkait : basis data, query, manajemen data csv defini
# Membuka file data/appendix-keywords.txt dan membuat objek file bernama 'f'.
with open("./data/appendix-keywords.txt") as f:
file = f.read() # Membaca isi file dan menyimpannya ke dalam variabel 'file'.
# Mencetak sebagian isi yang telah dibaca dari file.
print(file[:350])
Pencarian Semantik
Definisi: Pencarian semantik adalah metode pencarian yang melampaui pencocokan kata kunci sederhana dengan memahami makna dari pertanyaan pengguna untuk mengembalikan hasil yang relevan.
Contoh: Jika seorang pengguna mencari "planet tata surya," maka akan mengembalikan informasi tentang planet yang terkait seperti "Jupiter" dan
from langchain_text_splitters import NLTKTextSplitter
text_splitter = NLTKTextSplitter(
chunk_size=350, # Mengatur ukuran chunk
chunk_overlap=0, # Mengatur overlap antar chunk menjadi 0.
)
# Menggunakan text_splitter untuk membagi teks file.
texts = text_splitter.split_text(file)
print(texts[0]) # Mencetak elemen pertama dari teks yang telah dibagi.
Pencarian Semantik
Definisi: Pencarian semantik adalah metode pencarian yang melampaui pencocokan kata kunci sederhana dengan memahami makna dari pertanyaan pengguna untuk mengembalikan hasil yang relevan.
from transformers import GPT2TokenizerFast
# Memuat tokenizer untuk model GPT-2.
hf_tokenizer = GPT2TokenizerFast.from_pretrained("gpt2")
# Membuka file data/appendix-keywords.txt dan membuat objek file bernama 'f'.
with open("./data/appendix-keywords.txt") as f:
file = f.read() # Membaca isi file dan menyimpannya ke dalam variabel 'file'.
# Mencetak sebagian isi yang telah dibaca dari file.
print(file[:350])
Pencarian Semantik
Definisi: Pencarian semantik adalah metode pencarian yang melampaui pencocokan kata kunci sederhana dengan memahami makna dari pertanyaan pengguna untuk mengembalikan hasil yang relevan.
Contoh: Jika seorang pengguna mencari "planet tata surya," maka akan mengembalikan informasi tentang planet yang terkait seperti "Jupiter" dan
text_splitter = CharacterTextSplitter.from_huggingface_tokenizer(
# Membuat objek CharacterTextSplitter menggunakan tokenizer Hugging Face.
hf_tokenizer,
chunk_size=300,
chunk_overlap=50,
)
# Membagi teks state_of_the_union dan menyimpannya ke dalam variabel texts.
texts = text_splitter.split_text(file)
print(texts[0]) # Mencetak elemen ke-1 dari daftar texts.
Pencarian Semantik
Definisi: Pencarian semantik adalah metode pencarian yang melampaui pencocokan kata kunci sederhana dengan memahami makna dari pertanyaan pengguna untuk mengembalikan hasil yang relevan.
Contoh: Jika seorang pengguna mencari "planet tata surya," maka akan mengembalikan informasi tentang planet yang terkait seperti "Jupiter" dan "Mars."
Kata Kunci Terkait: Pemrosesan Bahasa Alami, Algoritma Pencarian, Penambangan Data
Embedding
Definisi: Embedding adalah proses mengubah data teks seperti kata atau kalimat menjadi vektor kontinu berdimensi rendah, memungkinkan komputer untuk memahami dan memproses teks.
Contoh: Kata "apel" dapat direpresentasikan sebagai vektor seperti [0.65, -0.23, 0.17].
Kata Kunci Terkait: Pemrosesan Bahasa Alami, Vektorisasi, Pembelajaran Mendalam
Token