上传备份

master
王兵 6 months ago
parent 49201663f3
commit 2172a09365

@ -0,0 +1,58 @@
package xyz.wbsite.ai;
import dev.langchain4j.data.document.*;
import dev.langchain4j.data.document.loader.FileSystemDocumentLoader;
import dev.langchain4j.data.document.parser.TextDocumentParser;
import dev.langchain4j.data.segment.TextSegment;
import dev.langchain4j.memory.chat.MessageWindowChatMemory;
import dev.langchain4j.model.chat.ChatLanguageModel;
import dev.langchain4j.model.ollama.OllamaChatModel;
import dev.langchain4j.model.openai.OpenAiChatModel;
import dev.langchain4j.rag.content.Content;
import dev.langchain4j.rag.content.retriever.EmbeddingStoreContentRetriever;
import dev.langchain4j.rag.query.Query;
import dev.langchain4j.service.AiServices;
import dev.langchain4j.service.SystemMessage;
import dev.langchain4j.store.embedding.EmbeddingStoreIngestor;
import dev.langchain4j.store.embedding.inmemory.InMemoryEmbeddingStore;
import java.io.IOException;
import java.io.InputStream;
import java.util.List;
public class RagTest {
public static void main(String[] args) {
List<Document> documents = FileSystemDocumentLoader.loadDocuments("D:\\wbSource\\starter-ai\\src\\main\\resources");
InMemoryEmbeddingStore<TextSegment> embeddingStore = new InMemoryEmbeddingStore<>();
EmbeddingStoreIngestor.ingest(documents, embeddingStore);
EmbeddingStoreContentRetriever embeddingStoreContentRetriever = EmbeddingStoreContentRetriever.from(embeddingStore);
List<Content> retrieve = embeddingStoreContentRetriever.retrieve(new Query("java中会存在内存泄漏吗请简单描述"));
System.out.println();
// ChatLanguageModel model = OllamaChatModel.builder()
// .baseUrl("http://36.138.207.178:11434")
// .modelName("deepseek-r1:32B")
// .build();
//
// Assistant assistant = AiServices.create(Assistant.class,model);
// .chatMemory(MessageWindowChatMemory.withMaxMessages(10))
// .contentRetriever(EmbeddingStoreContentRetriever.from(embeddingStore))
// .build();
//
// String chat = assistant.chat("java中会存在内存泄漏吗请简单描述。");
// System.out.println(chat);
}
interface Assistant {
// @SystemMessage("请扮演一名小学生,根据输入的文章题目写一篇100字以内的作文")
String chat(String userMessage);
}
}

Binary file not shown.
Loading…
Cancel
Save

Powered by TurnKey Linux.