mirror of
https://github.com/pgvector/pgvector.git
synced 2026-06-06 05:51:21 +08:00
Reordered types in sql files [skip ci]
This commit is contained in:
@@ -22,18 +22,18 @@ CREATE OPERATOR || (
|
|||||||
LEFTARG = vector, RIGHTARG = vector, PROCEDURE = vector_concat
|
LEFTARG = vector, RIGHTARG = vector, PROCEDURE = vector_concat
|
||||||
);
|
);
|
||||||
|
|
||||||
CREATE FUNCTION ivfflat_bit_support(internal) RETURNS internal
|
|
||||||
AS 'MODULE_PATHNAME' LANGUAGE C;
|
|
||||||
|
|
||||||
CREATE FUNCTION ivfflat_halfvec_support(internal) RETURNS internal
|
CREATE FUNCTION ivfflat_halfvec_support(internal) RETURNS internal
|
||||||
AS 'MODULE_PATHNAME' LANGUAGE C;
|
AS 'MODULE_PATHNAME' LANGUAGE C;
|
||||||
|
|
||||||
CREATE FUNCTION hnsw_bit_support(internal) RETURNS internal
|
CREATE FUNCTION ivfflat_bit_support(internal) RETURNS internal
|
||||||
AS 'MODULE_PATHNAME' LANGUAGE C;
|
AS 'MODULE_PATHNAME' LANGUAGE C;
|
||||||
|
|
||||||
CREATE FUNCTION hnsw_halfvec_support(internal) RETURNS internal
|
CREATE FUNCTION hnsw_halfvec_support(internal) RETURNS internal
|
||||||
AS 'MODULE_PATHNAME' LANGUAGE C;
|
AS 'MODULE_PATHNAME' LANGUAGE C;
|
||||||
|
|
||||||
|
CREATE FUNCTION hnsw_bit_support(internal) RETURNS internal
|
||||||
|
AS 'MODULE_PATHNAME' LANGUAGE C;
|
||||||
|
|
||||||
CREATE FUNCTION hnsw_sparsevec_support(internal) RETURNS internal
|
CREATE FUNCTION hnsw_sparsevec_support(internal) RETURNS internal
|
||||||
AS 'MODULE_PATHNAME' LANGUAGE C;
|
AS 'MODULE_PATHNAME' LANGUAGE C;
|
||||||
|
|
||||||
@@ -42,41 +42,6 @@ CREATE OPERATOR CLASS vector_l1_ops
|
|||||||
OPERATOR 1 <+> (vector, vector) FOR ORDER BY float_ops,
|
OPERATOR 1 <+> (vector, vector) FOR ORDER BY float_ops,
|
||||||
FUNCTION 1 l1_distance(vector, vector);
|
FUNCTION 1 l1_distance(vector, vector);
|
||||||
|
|
||||||
CREATE FUNCTION hamming_distance(bit, bit) RETURNS float8
|
|
||||||
AS 'MODULE_PATHNAME' LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;
|
|
||||||
|
|
||||||
CREATE FUNCTION jaccard_distance(bit, bit) RETURNS float8
|
|
||||||
AS 'MODULE_PATHNAME' LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;
|
|
||||||
|
|
||||||
CREATE OPERATOR <~> (
|
|
||||||
LEFTARG = bit, RIGHTARG = bit, PROCEDURE = hamming_distance,
|
|
||||||
COMMUTATOR = '<~>'
|
|
||||||
);
|
|
||||||
|
|
||||||
CREATE OPERATOR <%> (
|
|
||||||
LEFTARG = bit, RIGHTARG = bit, PROCEDURE = jaccard_distance,
|
|
||||||
COMMUTATOR = '<%>'
|
|
||||||
);
|
|
||||||
|
|
||||||
CREATE OPERATOR CLASS bit_hamming_ops
|
|
||||||
FOR TYPE bit USING ivfflat AS
|
|
||||||
OPERATOR 1 <~> (bit, bit) FOR ORDER BY float_ops,
|
|
||||||
FUNCTION 1 hamming_distance(bit, bit),
|
|
||||||
FUNCTION 3 hamming_distance(bit, bit),
|
|
||||||
FUNCTION 5 ivfflat_bit_support(internal);
|
|
||||||
|
|
||||||
CREATE OPERATOR CLASS bit_hamming_ops
|
|
||||||
FOR TYPE bit USING hnsw AS
|
|
||||||
OPERATOR 1 <~> (bit, bit) FOR ORDER BY float_ops,
|
|
||||||
FUNCTION 1 hamming_distance(bit, bit),
|
|
||||||
FUNCTION 3 hnsw_bit_support(internal);
|
|
||||||
|
|
||||||
CREATE OPERATOR CLASS bit_jaccard_ops
|
|
||||||
FOR TYPE bit USING hnsw AS
|
|
||||||
OPERATOR 1 <%> (bit, bit) FOR ORDER BY float_ops,
|
|
||||||
FUNCTION 1 jaccard_distance(bit, bit),
|
|
||||||
FUNCTION 3 hnsw_bit_support(internal);
|
|
||||||
|
|
||||||
CREATE TYPE halfvec;
|
CREATE TYPE halfvec;
|
||||||
|
|
||||||
CREATE FUNCTION halfvec_in(cstring, oid, integer) RETURNS halfvec
|
CREATE FUNCTION halfvec_in(cstring, oid, integer) RETURNS halfvec
|
||||||
@@ -377,6 +342,41 @@ CREATE OPERATOR CLASS halfvec_l1_ops
|
|||||||
FUNCTION 1 l1_distance(halfvec, halfvec),
|
FUNCTION 1 l1_distance(halfvec, halfvec),
|
||||||
FUNCTION 3 hnsw_halfvec_support(internal);
|
FUNCTION 3 hnsw_halfvec_support(internal);
|
||||||
|
|
||||||
|
CREATE FUNCTION hamming_distance(bit, bit) RETURNS float8
|
||||||
|
AS 'MODULE_PATHNAME' LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;
|
||||||
|
|
||||||
|
CREATE FUNCTION jaccard_distance(bit, bit) RETURNS float8
|
||||||
|
AS 'MODULE_PATHNAME' LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;
|
||||||
|
|
||||||
|
CREATE OPERATOR <~> (
|
||||||
|
LEFTARG = bit, RIGHTARG = bit, PROCEDURE = hamming_distance,
|
||||||
|
COMMUTATOR = '<~>'
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE OPERATOR <%> (
|
||||||
|
LEFTARG = bit, RIGHTARG = bit, PROCEDURE = jaccard_distance,
|
||||||
|
COMMUTATOR = '<%>'
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE OPERATOR CLASS bit_hamming_ops
|
||||||
|
FOR TYPE bit USING ivfflat AS
|
||||||
|
OPERATOR 1 <~> (bit, bit) FOR ORDER BY float_ops,
|
||||||
|
FUNCTION 1 hamming_distance(bit, bit),
|
||||||
|
FUNCTION 3 hamming_distance(bit, bit),
|
||||||
|
FUNCTION 5 ivfflat_bit_support(internal);
|
||||||
|
|
||||||
|
CREATE OPERATOR CLASS bit_hamming_ops
|
||||||
|
FOR TYPE bit USING hnsw AS
|
||||||
|
OPERATOR 1 <~> (bit, bit) FOR ORDER BY float_ops,
|
||||||
|
FUNCTION 1 hamming_distance(bit, bit),
|
||||||
|
FUNCTION 3 hnsw_bit_support(internal);
|
||||||
|
|
||||||
|
CREATE OPERATOR CLASS bit_jaccard_ops
|
||||||
|
FOR TYPE bit USING hnsw AS
|
||||||
|
OPERATOR 1 <%> (bit, bit) FOR ORDER BY float_ops,
|
||||||
|
FUNCTION 1 jaccard_distance(bit, bit),
|
||||||
|
FUNCTION 3 hnsw_bit_support(internal);
|
||||||
|
|
||||||
CREATE TYPE sparsevec;
|
CREATE TYPE sparsevec;
|
||||||
|
|
||||||
CREATE FUNCTION sparsevec_in(cstring, oid, integer) RETURNS sparsevec
|
CREATE FUNCTION sparsevec_in(cstring, oid, integer) RETURNS sparsevec
|
||||||
|
|||||||
@@ -263,18 +263,18 @@ COMMENT ON ACCESS METHOD hnsw IS 'hnsw index access method';
|
|||||||
|
|
||||||
-- access method private functions
|
-- access method private functions
|
||||||
|
|
||||||
CREATE FUNCTION ivfflat_bit_support(internal) RETURNS internal
|
|
||||||
AS 'MODULE_PATHNAME' LANGUAGE C;
|
|
||||||
|
|
||||||
CREATE FUNCTION ivfflat_halfvec_support(internal) RETURNS internal
|
CREATE FUNCTION ivfflat_halfvec_support(internal) RETURNS internal
|
||||||
AS 'MODULE_PATHNAME' LANGUAGE C;
|
AS 'MODULE_PATHNAME' LANGUAGE C;
|
||||||
|
|
||||||
CREATE FUNCTION hnsw_bit_support(internal) RETURNS internal
|
CREATE FUNCTION ivfflat_bit_support(internal) RETURNS internal
|
||||||
AS 'MODULE_PATHNAME' LANGUAGE C;
|
AS 'MODULE_PATHNAME' LANGUAGE C;
|
||||||
|
|
||||||
CREATE FUNCTION hnsw_halfvec_support(internal) RETURNS internal
|
CREATE FUNCTION hnsw_halfvec_support(internal) RETURNS internal
|
||||||
AS 'MODULE_PATHNAME' LANGUAGE C;
|
AS 'MODULE_PATHNAME' LANGUAGE C;
|
||||||
|
|
||||||
|
CREATE FUNCTION hnsw_bit_support(internal) RETURNS internal
|
||||||
|
AS 'MODULE_PATHNAME' LANGUAGE C;
|
||||||
|
|
||||||
CREATE FUNCTION hnsw_sparsevec_support(internal) RETURNS internal
|
CREATE FUNCTION hnsw_sparsevec_support(internal) RETURNS internal
|
||||||
AS 'MODULE_PATHNAME' LANGUAGE C;
|
AS 'MODULE_PATHNAME' LANGUAGE C;
|
||||||
|
|
||||||
@@ -331,47 +331,6 @@ CREATE OPERATOR CLASS vector_l1_ops
|
|||||||
OPERATOR 1 <+> (vector, vector) FOR ORDER BY float_ops,
|
OPERATOR 1 <+> (vector, vector) FOR ORDER BY float_ops,
|
||||||
FUNCTION 1 l1_distance(vector, vector);
|
FUNCTION 1 l1_distance(vector, vector);
|
||||||
|
|
||||||
-- bit functions
|
|
||||||
|
|
||||||
CREATE FUNCTION hamming_distance(bit, bit) RETURNS float8
|
|
||||||
AS 'MODULE_PATHNAME' LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;
|
|
||||||
|
|
||||||
CREATE FUNCTION jaccard_distance(bit, bit) RETURNS float8
|
|
||||||
AS 'MODULE_PATHNAME' LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;
|
|
||||||
|
|
||||||
-- bit operators
|
|
||||||
|
|
||||||
CREATE OPERATOR <~> (
|
|
||||||
LEFTARG = bit, RIGHTARG = bit, PROCEDURE = hamming_distance,
|
|
||||||
COMMUTATOR = '<~>'
|
|
||||||
);
|
|
||||||
|
|
||||||
CREATE OPERATOR <%> (
|
|
||||||
LEFTARG = bit, RIGHTARG = bit, PROCEDURE = jaccard_distance,
|
|
||||||
COMMUTATOR = '<%>'
|
|
||||||
);
|
|
||||||
|
|
||||||
-- bit opclasses
|
|
||||||
|
|
||||||
CREATE OPERATOR CLASS bit_hamming_ops
|
|
||||||
FOR TYPE bit USING ivfflat AS
|
|
||||||
OPERATOR 1 <~> (bit, bit) FOR ORDER BY float_ops,
|
|
||||||
FUNCTION 1 hamming_distance(bit, bit),
|
|
||||||
FUNCTION 3 hamming_distance(bit, bit),
|
|
||||||
FUNCTION 5 ivfflat_bit_support(internal);
|
|
||||||
|
|
||||||
CREATE OPERATOR CLASS bit_hamming_ops
|
|
||||||
FOR TYPE bit USING hnsw AS
|
|
||||||
OPERATOR 1 <~> (bit, bit) FOR ORDER BY float_ops,
|
|
||||||
FUNCTION 1 hamming_distance(bit, bit),
|
|
||||||
FUNCTION 3 hnsw_bit_support(internal);
|
|
||||||
|
|
||||||
CREATE OPERATOR CLASS bit_jaccard_ops
|
|
||||||
FOR TYPE bit USING hnsw AS
|
|
||||||
OPERATOR 1 <%> (bit, bit) FOR ORDER BY float_ops,
|
|
||||||
FUNCTION 1 jaccard_distance(bit, bit),
|
|
||||||
FUNCTION 3 hnsw_bit_support(internal);
|
|
||||||
|
|
||||||
-- halfvec type
|
-- halfvec type
|
||||||
|
|
||||||
CREATE TYPE halfvec;
|
CREATE TYPE halfvec;
|
||||||
@@ -688,6 +647,47 @@ CREATE OPERATOR CLASS halfvec_l1_ops
|
|||||||
FUNCTION 1 l1_distance(halfvec, halfvec),
|
FUNCTION 1 l1_distance(halfvec, halfvec),
|
||||||
FUNCTION 3 hnsw_halfvec_support(internal);
|
FUNCTION 3 hnsw_halfvec_support(internal);
|
||||||
|
|
||||||
|
-- bit functions
|
||||||
|
|
||||||
|
CREATE FUNCTION hamming_distance(bit, bit) RETURNS float8
|
||||||
|
AS 'MODULE_PATHNAME' LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;
|
||||||
|
|
||||||
|
CREATE FUNCTION jaccard_distance(bit, bit) RETURNS float8
|
||||||
|
AS 'MODULE_PATHNAME' LANGUAGE C IMMUTABLE STRICT PARALLEL SAFE;
|
||||||
|
|
||||||
|
-- bit operators
|
||||||
|
|
||||||
|
CREATE OPERATOR <~> (
|
||||||
|
LEFTARG = bit, RIGHTARG = bit, PROCEDURE = hamming_distance,
|
||||||
|
COMMUTATOR = '<~>'
|
||||||
|
);
|
||||||
|
|
||||||
|
CREATE OPERATOR <%> (
|
||||||
|
LEFTARG = bit, RIGHTARG = bit, PROCEDURE = jaccard_distance,
|
||||||
|
COMMUTATOR = '<%>'
|
||||||
|
);
|
||||||
|
|
||||||
|
-- bit opclasses
|
||||||
|
|
||||||
|
CREATE OPERATOR CLASS bit_hamming_ops
|
||||||
|
FOR TYPE bit USING ivfflat AS
|
||||||
|
OPERATOR 1 <~> (bit, bit) FOR ORDER BY float_ops,
|
||||||
|
FUNCTION 1 hamming_distance(bit, bit),
|
||||||
|
FUNCTION 3 hamming_distance(bit, bit),
|
||||||
|
FUNCTION 5 ivfflat_bit_support(internal);
|
||||||
|
|
||||||
|
CREATE OPERATOR CLASS bit_hamming_ops
|
||||||
|
FOR TYPE bit USING hnsw AS
|
||||||
|
OPERATOR 1 <~> (bit, bit) FOR ORDER BY float_ops,
|
||||||
|
FUNCTION 1 hamming_distance(bit, bit),
|
||||||
|
FUNCTION 3 hnsw_bit_support(internal);
|
||||||
|
|
||||||
|
CREATE OPERATOR CLASS bit_jaccard_ops
|
||||||
|
FOR TYPE bit USING hnsw AS
|
||||||
|
OPERATOR 1 <%> (bit, bit) FOR ORDER BY float_ops,
|
||||||
|
FUNCTION 1 jaccard_distance(bit, bit),
|
||||||
|
FUNCTION 3 hnsw_bit_support(internal);
|
||||||
|
|
||||||
--- sparsevec type
|
--- sparsevec type
|
||||||
|
|
||||||
CREATE TYPE sparsevec;
|
CREATE TYPE sparsevec;
|
||||||
|
|||||||
Reference in New Issue
Block a user