diff --git a/src/main/java/xyz/wbsite/ai/Text_Compare_Example.java b/src/main/java/xyz/wbsite/ai/Text_Compare_Example.java new file mode 100644 index 0000000..1bde5d9 --- /dev/null +++ b/src/main/java/xyz/wbsite/ai/Text_Compare_Example.java @@ -0,0 +1,24 @@ +package xyz.wbsite.ai; + +import dev.langchain4j.data.embedding.Embedding; +import dev.langchain4j.model.embedding.EmbeddingModel; +import dev.langchain4j.model.embedding.onnx.bgesmallenv15q.BgeSmallEnV15QuantizedEmbeddingModel; +import dev.langchain4j.store.embedding.CosineSimilarity; + +/** + * 语义相似度比较 + */ +public class Text_Compare_Example { + + public static void main(String[] args) { + // 初始化嵌入模型 + EmbeddingModel embeddingModel = new BgeSmallEnV15QuantizedEmbeddingModel(); + + // 将文本转换为向量 + Embedding embedding1 = embeddingModel.embed("今天天气很好").content(); + Embedding embedding2 = embeddingModel.embed("今天天气非常好").content(); + + double between = CosineSimilarity.between(embedding1, embedding2); + System.out.println("余弦相似度: " + between); // 值越接近1越相似 + } +}