PHP code example of thakladd / vector-lite
1. Go to this page and download the library: Download thakladd/vector-lite library . Choose the download type require .
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
thakladd / vector-lite example snippets
$movie = Movie::find(123);
$similarMovies = $movie->getBestVectorMatches(3);
'providers' => [
// ...
ThaKladd\VectorLite\VectorLiteServiceProvider::class,
],
return [
'similarity_alias' => 'similarity',
'vector_column' => 'vector',
'embed_hash_column' => 'embed_hash',
'openai' => [
'api_key' => env('OPENAI_API_KEY'),
],
'default_dimensions' => 1536,
'use_clustering_dimensions' => true,
'reduction_method' => \ThaKladd\VectorLite\Enums\ReduceBy::RPM,
'clustering_dimensions' => 64,
'clusters_size' => 500,
'use_cached_cosim' => true,
'cache_driver' => env('CACHE_DRIVER', false),
'cache_time' => 60 * 60 * 24,
'exclude_self_by_default' => false,
];
class MyModel extends VectorModel {}
$modelQuery = YourModel::query();
$modelQuery->filterByClosestClusters(3);
$modelQuery->getBestClustersByVector($vector, 3);
$modelQuery->findBestClustersByVector($vector);
$modelQuery->selectSimilarity($vector);
$modelQuery->findBestByVector($vector);
$modelQuery->searchBestByVector($vector, 3);
$modelQuery->whereVector($vector, '>=', 0.8);
$modelQuery->whereVectorBetween($vector, 0.5, 0.9);
$modelQuery->havingSimilarity($vector, '>=', 0.8);
$modelQuery->orderBySimilarity($vector, 'desc');
$modelQuery->withoutModels([$vector, $vector2]);
$modelQuery->
$model = YourModel::find(1);
$model->getBestVectorMatches(3);
$model->findBestVectorMatch();
$model->getBestClusters(3);
$model->findBestCluster();
$all = YourModel::all();
$all->searchBestByVector($vector, 3);
$all->sortBySimilarityToVector($vector, 'asc');
$all->filterAboveSimilarityThreshold($vector, 0.5);
$all->pluckSimilarities($vector);
$all->withSimilarities($vector);
$all->findBestByVector($vector);
$model = YourModel::find(1);
$cluster = $model->cluster;
$models = $cluster->models;
use ThaKladd\VectorLite\VectorLite;