liang-spring-ai/src/main/java/com/example/springaidemo/service/VectorService.java

30 lines
1.1 KiB
Java
Raw Normal View History

2025-07-18 16:52:25 +00:00
package com.example.springaidemo.service;
2025-07-19 08:33:11 +00:00
import org.springframework.ai.document.Document;
import org.springframework.ai.vectorstore.SearchRequest;
2025-07-18 16:52:25 +00:00
import org.springframework.ai.vectorstore.VectorStore;
2025-07-19 08:33:11 +00:00
import org.springframework.ai.vectorstore.elasticsearch.ElasticsearchVectorStore;
2025-07-18 16:52:25 +00:00
import org.springframework.beans.factory.annotation.Autowired;
2025-07-19 08:33:11 +00:00
import org.springframework.stereotype.Service;
2025-07-18 16:52:25 +00:00
2025-07-19 08:33:11 +00:00
import java.util.List;
@Service
2025-07-18 16:52:25 +00:00
public class VectorService {
2025-07-19 08:33:11 +00:00
@Autowired VectorStore vectorStore;
public void storeVector(){
List<Document> documents = List.of(
new Document("Spring AI rocks!! Spring AI rocks!! Spring AI rocks!! Spring AI rocks!! Spring AI rocks!!"),
new Document("The World is Big and Salvation Lurks Around the Corner"),
new Document("You walk forward facing the past and you turn back toward the future."));
2025-07-18 16:52:25 +00:00
2025-07-19 08:33:11 +00:00
// Add the documents to Elasticsearch
vectorStore.add(documents);
2025-07-18 16:52:25 +00:00
2025-07-19 08:33:11 +00:00
// Retrieve documents similar to a query
List<Document> results = this.vectorStore.similaritySearch(SearchRequest.builder().query("Spring").topK(5).build());
}
2025-07-18 16:52:25 +00:00
}