embedding_search.sql 446 B

1234567891011121314151617
  1. SELECT
  2. paragraph_id,
  3. comprehensive_score,
  4. comprehensive_score as similarity
  5. FROM
  6. (
  7. SELECT DISTINCT ON
  8. ("paragraph_id") ( 1 - distance ),* ,(1 - distance) AS comprehensive_score
  9. FROM
  10. ( SELECT *, ( embedding.embedding::vector(%s) <=> %s ) AS distance FROM embedding ${embedding_query} ORDER BY distance) TEMP
  11. ORDER BY
  12. paragraph_id,
  13. distance
  14. ) DISTINCT_TEMP
  15. WHERE comprehensive_score>%s
  16. ORDER BY comprehensive_score DESC
  17. LIMIT %s