Sobes.tech
Middle

Кадом китобхонаҳо ва асбобҳо барои сохтани RAG ва базаҳои додаҳои векторӣ истифода мешаванд?

sobes.tech AI

Ҷавоб аз AI

Барои сохтани Generation-ро бо такмилёбӣ (RAG) ва кор бо базаҳои додаҳои векторӣ, одатан аз китобхонаҳо ва асбобҳои зерин истифода мешавад:

  • FAISS (Facebook AI Similarity Search) — китобхона барои ҷустуҷӯи самараноки дар маҷмӯъҳои калонҳаҷмии векторҳо.
  • Annoy (Approximate Nearest Neighbors Oh Yeah) — китобхона барои ҷустуҷӯи зудтарини ҳамсоягони наздик.
  • Pinecone — базаи додаҳои векторӣ дар абр бо API барои ҷустуҷӯи масштабӣ.
  • Weaviate — базаи додаҳои векторӣ бо дастгирии ҷустуҷӯи семантикӣ ва ҳамгироӣ бо моделҳои ML.
  • Milvus — базаи додаҳои векторӣ бо манбаи кушод барои ҷустуҷӯи масштабӣ.
  • LangChain — рамка барои эҷоди барномаҳо бо LLM, дастгирӣ мекунад ҳамгироӣ бо базаҳои додаҳои векторӣ ва RAG.
  • OpenAI Embeddings API ё моделҳои дигар барои тавлиди намоишҳои вектории матн.

Масалан, истифодаи FAISS барои ҷустуҷӯи векторҳои наздик:

import faiss
import numpy as np

# Эҷоди индекс барои векторҳои 128-ум
index = faiss.IndexFlatL2(128)

# Илова кардани векторҳо
vectors = np.random.random((1000, 128)).astype('float32')
index.add(vectors)

# Ҷустуҷӯи 5 векторҳои наздик барои дархост
query = np.random.random((1, 128)).astype('float32')
D, I = index.search(query, 5)
print("Индекси векторҳои наздик:", I)