พื้นที่เก็บข้อมูลนี้มีระบบที่ใช้เป็นสนิมสำหรับการจัดการการฝังเวกเตอร์และการสืบค้นโดยใช้ฐานข้อมูลเวกเตอร์ที่ได้รับการสนับสนุน postgreSQL ระบบได้รับการออกแบบมาเพื่อจัดการการสร้างการฝังพื้นที่จัดเก็บและการสืบค้น
ระบบประกอบด้วยหลายโมดูลที่จัดการแง่มุมต่าง ๆ ของกระบวนการฝังและการสืบค้น:
src/
├── app/
│ ├── commands.rs
│ ├── config.rs
│ └── constants.rs
├── embedding/
│ ├── run_embedding.rs
│ └── vector_embedding.rs
├── main.rs
├── tests/
│ ├── setup_docker.rs
│ ├── test_pgclient.rs
│ ├── test_query_vector.rs
│ ├── test_run_embedding.rs
│ └── test_vector_embedding.rs
├── vectordb/
│ ├── pg_vector.rs
│ └── query_vector.rs
├── lib.rs
├── vectordb/mod.rs
├── tests/mod.rs
├── embedding/mod.rs
└── app/mod.rs
nomic-embed-text หรือรุ่นที่คล้ายกันโคลนที่เก็บ:
git clone https://github.com/rupeshtr78/pg-vector-embed-rust.git
cd pg-vector-embed-rustติดตั้งการพึ่งพา:
cargo buildเริ่มฐานข้อมูลเวกเตอร์ postgreSQL (หากยังไม่ทำงาน)
บริการ Ollama ควรทำงานกับรุ่นที่ระบุ
เรียกใช้แอปพลิเคชัน:
cargo run
แอปพลิเคชันรองรับคำสั่งและคำสั่งย่อยต่างๆ ใช้ --help Flag เพื่อดูตัวเลือกที่มีอยู่:
cargo run -- --help
cargo run -- write --input " dog sound is called bark " --input " cat sounds is called purr " --model " nomic-embed-text " --table " from_rust2 " --dim 768 --log-level " debug "
cargo run -- query --input " who is barking " --model " nomic-embed-text " --table " from_rust2 " การตั้งค่าการกำหนดค่าสำหรับคำขอฝังและการเชื่อมต่อฐานข้อมูลได้รับการจัดการใน src/app/config.rs คุณสามารถแก้ไขการตั้งค่าเหล่านี้ได้ตามต้องการ
run_embedding เพื่อสร้าง EMBEDDINGS และคงอยู่ในฐานข้อมูลrun_query เพื่อสืบค้นฐานข้อมูลสำหรับเพื่อนบ้านที่ใกล้ที่สุดตามการฝังเวกเตอร์ ที่เก็บรวมถึงชุดทดสอบที่ครอบคลุมเพื่อให้แน่ใจว่าระบบทำงานได้อย่างถูกต้อง เพื่อเรียกใช้การทดสอบ:
cargo test ยินดีต้อนรับ! โปรดอ่านไฟล์ที่มีส่วนร่วม MD สำหรับรายละเอียดเกี่ยวกับวิธีการมีส่วนร่วมในโครงการนี้
โครงการนี้ได้รับใบอนุญาตภายใต้ใบอนุญาต MIT - ดูไฟล์ใบอนุญาตสำหรับรายละเอียด
อย่าลังเลที่จะปรับแต่ง readme นี้เพิ่มเติมตามความต้องการเฉพาะและรายละเอียดโครงการของคุณ