Initial commit
This commit is contained in:
@@ -0,0 +1,27 @@
|
||||
import chromadb
|
||||
from chromadb.utils import embedding_functions
|
||||
|
||||
# Panggil model dan database yang sama
|
||||
emb = embedding_functions.SentenceTransformerEmbeddingFunction(
|
||||
model_name="paraphrase-multilingual-MiniLM-L12-v2")
|
||||
client = chromadb.PersistentClient(path="./chroma_db")
|
||||
koleksi = client.get_or_create_collection("pedoman", embedding_function=emb)
|
||||
|
||||
# Daftar pertanyaan uji
|
||||
daftar_pertanyaan = [
|
||||
"Apa syarat cuti akademik?",
|
||||
"Berapa batas kehadiran untuk ujian?",
|
||||
"Bolehkah berhenti kuliah sementara?", # Pertanyaan parafrase (tanpa kata 'cuti')
|
||||
"Apa sanksi jika telat bayar kuliah?" # Pertanyaan parafrase (tanpa kata 'keuangan')
|
||||
]
|
||||
|
||||
for q in daftar_pertanyaan:
|
||||
print("=" * 60)
|
||||
print("PERTANYAAN:", q)
|
||||
# Ambil 2 hasil terdekat
|
||||
hasil = koleksi.query(query_texts=[q], n_results=2)
|
||||
|
||||
for doc, meta, jarak in zip(hasil["documents"][0], hasil["metadatas"][0], hasil["distances"][0]):
|
||||
# Jarak (distance) semakin kecil berarti semakin mirip
|
||||
print(f" [Sumber: {meta['sumber']} | Jarak: {jarak:.3f}]")
|
||||
print(" Teks:", doc[:120].replace("\n", " "), "...")
|
||||
Reference in New Issue
Block a user