pgvector/pgvector-go

pgvector support for Go

解決的問題

提供對 pgvector PostgreSQL 擴展的 Go 語言支援,讓開發者能使用 Go 在 PostgreSQL 資料庫中儲存、查詢與索引向量嵌入。

工作原理

此套件作為 Go 應用程式與 pgvector 擴展之間的橋樑。提供專用的向量類型(包含半精度與稀疏向量),並為流行的 Go 資料庫套件(如 pgxpgBunEntGORMsqlx)提供整合包裝器。

適用對象

需要使用 PostgreSQL 作為向量儲存,以實現向量相似性搜尋、推薦系統或 RAG(檢索增強生成)工作流程的 Go 開發者。

主要特色

  • 廣泛的套件支援:與 GORM、Ent、pgx 等主要 Go ORM 與資料庫驅動程式整合。
  • 客製化向量類型:支援標準向量、用於減少儲存空間的半精度向量,以及用於高維資料的稀疏向量。
  • 索引整合:簡化 HNSW 與 IVFFlat 索引的建立,實現快速近似最近鄰搜尋。
  • 彈性距離度量:支援 L2 距離、內積與餘弦距離查詢。

相關

  • 專案
  • 專案
  • 專案
  • 專案
  • 專案