Mengimport Objek Data
Pelajari cara mengimport dan mengurus objek data dengan cekap ke dalam tika Weaviate anda, termasuk vektor yang berkaitan.
Mengimport Objek Data ialah pelajaran Pangkalan Data Vektor: Pinecone, Weaviate & pgvector percuma di CoddyKit. Ini ialah pelajaran 2 daripada 4. Sebanyak 3 pelajaran dalam laluan pembelajaran ini boleh dibaca sepenuhnya secara percuma — selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan praktikal dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Pelajaran ini merupakan sebahagian daripada laluan pembelajaran Pangkalan Data Vektor: Pinecone, Weaviate & pgvector, dan kemajuan anda disegerakkan merentas web serta aplikasi CoddyKit. Kursus Pangkalan Data Vektor: Pinecone, Weaviate & pgvector merangkumi sejumlah 4 pelajaran.
Mengimport Data ke Weaviate
Selamat datang! Dalam pelajaran ini, anda akan belajar cara memasukkan data berharga anda ke dalam tika Weaviate. Ini ialah langkah penting untuk menjalankan carian semantik dan memanfaatkan keupayaan Weaviate yang berkuasa.
Kita akan membincangkan cara menambah objek data individu dan, yang lebih penting, cara mengimport set data besar dengan cekap menggunakan operasi kelompok, termasuk mengendalikan vektor tersuai.
Menyediakan Klien Weaviate
Sebelum anda boleh mengimport data, anda perlu mewujudkan sambungan ke tika Weaviate menggunakan klien Pythonnya. Klien ini bertindak sebagai antara muka utama anda untuk berinteraksi dengan pangkalan data.
Jalankan kod di bawah untuk melihat cara menyambung ke tika Weaviate setempat.
import weaviate
def main():
# Connect to a local Weaviate instance
# For a cloud instance, you'd use weaviate.connect_to_wcs(...)
client = weaviate.connect_to_local()
if client.is_connected():
print("Weaviate client connected successfully!")
else:
print("Failed to connect to Weaviate.")
client.close() # Always close the connection
if __name__ == "__main__":
main()Memahami Objek Weaviate
Dalam Weaviate, data anda disimpan sebagai objek data. Setiap objek tergolong dalam koleksi tertentu (serupa dengan jadual atau kelas) dan mempunyai:
- Sifat: Pasangan kunci-nilai yang menerangkan data anda (contohnya, 'title' atau 'content' untuk artikel).
- Vektor: Perwakilan berangka (benaman) bagi makna objek, yang digunakan untuk carian keserupaan.
Weaviate boleh menjana vektor ini untuk anda, atau anda boleh membekalkan vektor anda sendiri.
Menambah Satu Objek Data
Cara paling mudah untuk menambah data ialah dengan mencipta satu objek pada satu-satu masa. Ini berguna untuk jumlah data yang kecil atau semasa menjalankan ujian. Weaviate akan menjana benaman untuk objek anda secara automatik berdasarkan sifatnya.
Contoh ini mengandaikan bahawa anda telah mentakrifkan koleksi 'Article' (daripada pelajaran sebelumnya).
import weaviate
def main():
client = weaviate.connect_to_local()
if not client.is_connected():
print("Connection error. Exiting.")
return
article_obj = {
"title": "Introduction to Embeddings",
"content": "Embeddings convert data into numerical vectors for AI tasks."
}
try:
data_id = client.data_object.create(
properties=article_obj,
collection="Article" # Must match your schema
)
print(f"Article object created with ID: {data_id}")
except Exception as e:
print(f"Error creating object: {e}")
finally:
client.close()
if __name__ == "__main__":
main()Menyertakan Vektor Tersuai
Selalunya, anda mungkin mahu menggunakan benaman yang telah dijana terlebih dahulu oleh model anda sendiri (contohnya, daripada panggilan API OpenAI). Anda boleh membekalkan vektor tersuai ini semasa mencipta objek.
Contoh ini menggunakan vektor ruang letak. Dalam aplikasi sebenar, vektor ini akan menjadi vektor berdimensi tinggi daripada model benaman.
import weaviate
def main():
client = weaviate.connect_to_local()
if not client.is_connected():
print("Connection error. Exiting.")
return
article_obj = {
"title": "Advanced RAG Techniques",
"content": "RAG systems can be enhanced with query transformations."
}
# Example custom vector (dimensions must match your collection config)
custom_vector = [0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8]
try:
data_id = client.data_object.create(
properties=article_obj,
collection="Article",
vector=custom_vector # Provide your pre-generated vector
)
print(f"Article object created with ID: {data_id}")
except Exception as e:
print(f"Error creating object: {e}")
finally:
client.close()
if __name__ == "__main__":
main()Import Kelompok yang Cekap
Bagi set data besar, mengimport objek satu demi satu adalah tidak cekap disebabkan oleh beban tambahan rangkaian. Fungsi import kelompok Weaviate membolehkan anda menghantar berbilang objek dalam satu permintaan, sekali gus meningkatkan prestasi dengan ketara.
Kaedah ini amat disyorkan untuk aplikasi pengeluaran dan pengingesan data berskala besar.
Melaksanakan Import Kelompok Asas
Klien Weaviate menyediakan pengurus konteks yang mudah untuk pengelompokan. Anda menambah objek pada kelompok, dan klien mengendalikan penghantarannya dengan cekap.
Dalam contoh ini, Weaviate akan menjana vektor bagi setiap artikel dalam kelompok.
import weaviate
def main():
client = weaviate.connect_to_local()
if not client.is_connected():
print("Connection error. Exiting.")
return
articles_to_import = [
{"title": "Vector DBs Explained", "content": "Store and search vectors."},
{"title": "Pinecone vs. Weaviate", "content": "Comparing vector databases."},
{"title": "Introduction to pgvector", "content": "Vectors in PostgreSQL."}
]
try:
with client.batch as batch:
for article in articles_to_import:
batch.add_object(
properties=article,
collection="Article"
)
print(f"Successfully added {len(articles_to_import)} objects in batch.")
except Exception as e:
print(f"Error during batch import: {e}")
finally:
client.close()
if __name__ == "__main__":
main()Pengelompokan dengan Vektor yang Telah Dijana
Sama seperti import objek tunggal, anda boleh membekalkan vektor tersuai bagi setiap objek semasa menjalankan import kelompok. Ini biasa dilakukan apabila anda telah memproses data melalui model benaman.
Pastikan dimensi vektor sepadan dengan konfigurasi koleksi anda.
import weaviate
def main():
client = weaviate.connect_to_local()
if not client.is_connected():
print("Connection error. Exiting.")
return
data_with_vectors = [
{
"properties": {"title": "AI in Healthcare", "content": "LLMs for medical research."},
"vector": [0.11, 0.22, 0.33, 0.44, 0.55, 0.66, 0.77, 0.88]
},
{
"properties": {"title": "Future of Robotics", "content": "Automation and ML."},
"vector": [0.88, 0.77, 0.66, 0.55, 0.44, 0.33, 0.22, 0.11]
}
]
try:
with client.batch as batch:
for item in data_with_vectors:
batch.add_object(
properties=item["properties"],
collection="Article",
vector=item["vector"]
)
print(f"Successfully added {len(data_with_vectors)} objects with vectors in batch.")
except Exception as e:
print(f"Error during batch import with vectors: {e}")
finally:
client.close()
if __name__ == "__main__":
main()Amalan Terbaik Import
Untuk mengoptimumkan proses import data anda:
- Saiz Kelompok: Uji
batch_size(contohnya, 64, 128, 256) untuk mendapatkan kadar pemprosesan optimum berdasarkan rangkaian dan tika Weaviate anda. - Pengendalian Ralat: Laksanakan pengendalian ralat dan mekanisme percubaan semula yang kukuh, khususnya untuk import besar yang mungkin menghadapi masalah rangkaian sementara.
- Praproses Data: Bersihkan dan susun data anda sebelum mengimport bagi memastikan keseragaman dengan skema Weaviate anda.
- Import Tak Segerak: Bagi set data yang sangat besar, pertimbangkan pengelompokan tak segerak untuk kecekapan yang lebih tinggi.
Semak Kefahaman Anda
Yang manakah antara berikut merupakan manfaat menggunakan fungsi import kelompok Weaviate berbanding mengimport objek satu demi satu?
Imbas Kembali: Mengimport Data Weaviate
Syabas! Anda telah mempelajari perkara penting tentang cara memasukkan data ke dalam Weaviate:
- Cara menyambung ke tika Weaviate menggunakan klien.
- Struktur objek data Weaviate, termasuk sifat dan vektor.
- Menambah objek data individu, dengan atau tanpa vektor tersuai.
- Kepentingan dan pelaksanaan import kelompok yang cekap untuk set data besar.
Sekarang anda sudah bersedia untuk mengisi koleksi Weaviate anda dengan data sendiri!
Pelajari Pangkalan Data Vektor: Pinecone, Weaviate & pgvector dengan tutor kecerdasan buatan — percuma
Tulis dan jalankan kod sebenar dalam pelayar anda, dapatkan bantuan segera daripada tutor kecerdasan buatan yang tersedia 24/7, dan sambung semula dari tempat anda berhenti di web atau dalam aplikasi.
- Kursus
- 12
- Pelajaran
- 48
Soalan Lazim
Adakah pelajaran “Mengimport Objek Data” percuma?
Ya — sebanyak 3 pelajaran dalam laluan pembelajaran Pangkalan Data Vektor: Pinecone, Weaviate & pgvector, termasuk “Mengimport Objek Data”, boleh dibaca sepenuhnya secara percuma di web ini. Selepas itu, CoddyKit PRO membuka akses kepada semua pelajaran, serta latihan interaktif dengan penyunting kod terbina dalam dan tutor kecerdasan buatan yang tersedia 24/7. Kursus Pangkalan Data Vektor: Pinecone, Weaviate & pgvector merangkumi sejumlah 4 pelajaran.
Apakah yang akan saya pelajari dalam “Mengimport Objek Data”?
Pelajari cara mengimport dan mengurus objek data dengan cekap ke dalam tika Weaviate anda, termasuk vektor yang berkaitan. Anda berlatih Pangkalan Data Vektor: Pinecone, Weaviate & pgvector menggunakan kod praktikal yang dijalankan terus dalam pelayar, manakala tutor kecerdasan buatan 24/7 menjawab soalan anda semasa anda mengikuti pelajaran.
Adakah saya memerlukan pengalaman untuk memulakan Pangkalan Data Vektor: Pinecone, Weaviate & pgvector?
Tiada pengalaman terdahulu diperlukan. Pembelajaran Pangkalan Data Vektor: Pinecone, Weaviate & pgvector di CoddyKit disusun untuk pelajar daripada peringkat pemula hingga lanjutan, jadi anda boleh bermula di sini atau dari awal dan belajar mengikut kadar anda sendiri. Ini ialah pelajaran 2 daripada 4.
Berapa lamakah pelajaran “Mengimport Objek Data” diambil?
Kebanyakan pelajaran CoddyKit mengambil masa kira-kira 5–10 minit. Setiap pelajaran ringkas dan interaktif, jadi anda boleh membuat kemajuan secara berterusan dan menyambung tepat dari tempat anda berhenti di web atau aplikasi.
Bolehkah saya menulis dan menjalankan kod dalam pelajaran Pangkalan Data Vektor: Pinecone, Weaviate & pgvector ini?
Ya. Setiap pelajaran Pangkalan Data Vektor: Pinecone, Weaviate & pgvector menyertakan penyunting kod terbina dalam, jadi anda boleh menulis dan menjalankan kod sebenar terus dalam pelayar serta menerima maklum balas kecerdasan buatan serta-merta — tanpa memerlukan persediaan setempat.
Semua pelajaran dalam kursus ini
- Takrifan Skema Weaviate
- Mengimport Objek Data
- Pertanyaan GraphQL Weaviate
- Modul Pemvektoran dan Embedding Automatik