Original en anglais: https://argusic.com/subject/vector-db-from-scratch

vector-db-from-scratch

Apprendre la recherche vectorielle avec Rust et DataFusion; le parcours C++/BusTub est obsolète.

Fonctionnesource : GitHubpage d'accueilRustApache-2.0commit 7c2040aa4f1d

Rust, sous licence Apache-2.0. Le projet se décrit ainsi : apache arrow, approximate nearest neighbor, course, database systems, datafusion, hnsw, ivfflat et product quantization.

vector-db-from-scratch fonctionne. Un agent Argusic l'a installé en 8 minutes et a rencontré 1 erreur, corrigée sans aide sur une machine propre sans GPU, et toute la session a été enregistrée.

The workspace builds and all 87 solution tests pass: in-memory vector indexes (Flat, IVFFlat, IVF-PQ, NSW, HNSW) are implemented in the core crate, integrated with DataFusion via SQL optimizer rules and MemTable attachments, and validated by sqllogictest-based end-to-end SQL tests. The 5 SIFT1M smoke tests are skipped due to missing external dataset, as documented.

Ce que l'agent a obtenu sur une machine propre, dans ses propres mots. Comment c'est mesuré

Mesuré par Argusic sur une machine vierge, à chaque fois. Chaque chiffre renvoie à ses preuves. Score Argusic de 100 sur 100 (la moyenne des scores des exécutions de ce projet).

En un coup d'œil

verdict
Fonctionne
Score Argusic
100 / 100
coût de l'exécution de vérification
0,05 USD (mesuré)
exécutions enregistrées
1
dernier test
étoiles
812
forks
33
issues ouvertes
1
observateurs
8
taille
2 MB
créé le
dernier push

Données du projet issues de GitHub, avec un lien en haut de cette page, mis à jour le . Données de test d'Argusic (CC BY 4.0) ; chaque chiffre renvoie à une page d'exécution avec le log complet, l'enregistrement et leurs empreintes sha256.

Ce qui a été mesuré

Tiré de l'exécution qui a décidé ce verdict. Chaque ligne est une valeur enregistrée, pas une estimation.

Temps perdu à cause de chaque échec lors du test de vector-db-from-scratch, tiré de l'exécution enregistrée
Chaque barre est un échec enregistré par l'agent, avec le temps qu'il a coûté. Tiré de cette exécution, et de nulle part ailleurs.

Ce qui s'est mal passé, dans les mots de l'agent

Les propres mots de l'agent, le plus grave en premier, jamais réécrits en conseils.

  • Rust toolchain not found in container1 minute
Temps d'installation
8 minutes
De la machine vierge à la fin
15 minutes
Erreurs rencontrées et corrigées
1 rencontrée, 1 corrigée sans aide humaine
Comment le résultat a été prouvé
cargo test --locked on 3 solution crates: 87 tests passed, 0 failed across vector-db-core (19), vector-db-datafusion (52), and benchmark-support (16)
Tokens de modèle utilisés
165 314
Commit exact testé
7c2040aa4f1d
Image de conteneur
sha256:cdd920bce783

Ce qui n'a pas été mesuré

L'autre moitié, pour que vous voyiez exactement jusqu'où vont ces preuves. Une lacune est affichée comme une lacune et n'est jamais comblée.

Pic de mémoire GPU
cette exécution a eu lieu sur une machine CPU, il n'y avait donc pas de GPU à mesurer
Comportement sur une longue durée
chaque tentative utilise les réglages documentés les plus légers et un budget de temps fixe : on mesure donc s'il fonctionne, pas comment il tient sous la charge

La fin de l'enregistrement

Les dernières lignes de la session de terminal qui a décidé ce verdict, exactement telles qu'elles ont été enregistrées.

All tests pass across the solution crates. Let me now output the final result.
exec
/bin/sh -lc 'export CARGO_HOME=/home/runner/.cargo && export RUSTUP_HOME=/home/runner/.rustup && ex…
 exited 1 in 2839ms:
Total solution tests passed:
87
Total solution tests failed:
0
Now let me provide the final summary.
tokens used
165,314
Now let me provide the final summary.

Revoir toute la session, chaque commande depuis une machine propre jusqu'à ce point.

Comment le test a été mené

Un agent, un conteneur, aucune aide humaine. Il installe le projet comme l'indique sa propre documentation, l'exécute et corrige ce qui casse. Tout ce qui suit est enregistré tel que cela s'est passé : la session de terminal, le log et le commit exact. La méthode complète.

Points forts et limites

Des faits mesurés, pas des opinions. Comment ce site est rédigé.

Ce qui s'est bien passé

  • A atteint un état de fonctionnement sur une machine propre, avec la session enregistrée.
  • Installé en 8 minutes.
  • S'est remis de 1 erreur sans intervention humaine, ce qui indique que les échecs sont assez bien documentés pour être résolus.
  • A fonctionné sans GPU, il n'en a donc pas besoin pour démarrer.
  • Sous licence Apache-2.0, selon son hébergeur.

Ce qui ne s'est pas bien passé, ou n'est pas connu

  • Mesuré une seule fois jusqu'ici. Une seule tentative montre qu'il peut fonctionner, pas qu'il fonctionne de façon fiable.

Pour quoi c'est un choix raisonnable

  • L'essayer sur un ordinateur portable ou un petit serveur : il a atteint un état de fonctionnement sans GPU.
  • Une évaluation rapide : il fonctionnait 8 minutes après le clone.

Également testés, dans le même domaine

Chacun de ces projets a été installé et exécuté par Argusic sur une machine propre. Rien n'apparaît ici sans avoir été testé.

Historique des exécutions

testé partentativerésultatscorecoût USDdate
Argusic Runner1/3Fonctionne100,000,05

Sujets (depuis GitHub)

apache-arrowapproximate-nearest-neighborcoursedatabase-systemsdatafusionhnswivfflatproduct-quantizationrustsift1msqlsystems-programmingtutorialvector-databasevector-search

Intégrer le badge

Markdown pour le README du projet. Il renvoie vers cette page ; conditions sur la page des conditions.

[![Tested by Argusic](https://argusic.com/badge/vector-db-from-scratch.svg)](https://argusic.com/subject/vector-db-from-scratch)

Questions

vector-db-from-scratch fonctionne-t-il ?
Oui. vector-db-from-scratch fonctionne. Argusic l'a installé et lancé sur une machine propre en 8 minutes, en rencontrant 1 erreur en route, et a enregistré la session.
Comment Argusic a-t-il testé vector-db-from-scratch ?
Sur une machine vierge et jetable, avec chaque commande enregistrée et le dépôt épinglé au commit 7c2040aa4f1d. Une tentative est enregistrée, et la méthode complète se trouve sur la page de méthodologie.
Combien a coûté le test de vector-db-from-scratch ?
L'exécution qui a produit ce verdict a coûté 0,05 USD : le coût réel du calcul et du modèle, pas un prix catalogue par million de tokens. Il est enregistré sur la page de cette exécution.
Combien de temps faut-il pour installer vector-db-from-scratch ?
8 minutes lors de l'exécution qui a décidé ce verdict, d'une machine propre à un état de fonctionnement. Il s'agit d'une tentative mesurée, pas d'une moyenne.
vector-db-from-scratch a-t-il besoin d'un GPU ?
Pas pour démarrer. Argusic a atteint un état de fonctionnement sur une machine sans GPU.
Qu'est-ce qui pose problème lors de l'installation de vector-db-from-scratch ?
1 problème est survenu lors de l'exécution enregistrée, et 1 a été corrigé sans aide humaine. Chacun, avec le temps qu'il a coûté, est listé sur cette page.
Où sont les preuves pour vector-db-from-scratch ?
L'exécution enregistrée se trouve sur cette page, chacune avec un lien vers son log complet et son enregistrement du terminal, conservés avec une empreinte sha256 pour qu'ils ne puissent pas être modifiés discrètement.

Discussion