laravel中redis模式中的VectorField

fdx2calv  于 8个月前  发布在  Redis
关注(0)|答案(1)|浏览(64)

我尝试用下面的代码在redis中创建索引

$schema = [
    new NumericField('doc_id'),
    new NumericField('entity_id'),
    new VectorField('embedding', 'HNSW', ['DIM' => 768, 'DISTANCE_METRIC' => 'COSINE']),
    new TagField('users'),
    new TagField('url'),

];
return Redis::ftCreate('testVector', $schema, []);

一个提出这个错误:/
Predis\Response\ServerException算法HNSW的错误参数:768
知道我哪里做错了吗

gwo2fgha

gwo2fgha1#

我发现了错误,参数不带键。

$schema = [
        new NumericField('doc_id'),
        new NumericField('entity_id'),
        // VectorField cosine algorithm
        new VectorField('embedding', 'HNSW', ['TYPE', 'FLOAT64', 'DIM', 768, 'DISTANCE_METRIC', 'COSINE']),
        new TagField('users'),
        new TagField('url'),

    ];

相关问题