git clone git@github.com:pig-mesh/searxng-docker.git cd searxng-docker docker run \ -d \ -p 8080:8080 \ -v "${PWD}/searxng:/etc/searxng" \ -e "BASE_URL=http://0.0.0.0:8080/" \ -e "INSTANCE_NAME=searxng" \ registry.cn-hangzhou.aliyuncs.com/dockerhub_mirror/searxng:2025.2.20-28d1240fc
http://localhost:8080
<dependency> <groupId>dev.langchain4j</groupId> <artifactId>langchain4j-community-web-search-engine-searxng</artifactId> <version>1.0.0-beta2</version> </dependency>
WebSearchEngine searchEngine = SearXNGWebSearchEngine.builder() .baseUrl("http://127.0.0.1:8080") .build(); // 执行搜索 WebSearchResults searchResults = searchEngine.search("美国总统是谁?"); // 打印结果 searchResults.toTextSegments().forEach(System.out::println);
<dependency> <groupId>dev.langchain4j</groupId> <artifactId>langchain4j-easy-rag</artifactId> <version>1.0.0-beta2</version> </dependency>
// 创建模型客户端(可替换为其他大模型 API) OpenAiChatModel model = OpenAiChatModel.builder() .baseUrl("https://api.deepseek.com/v1") .modelName("deepseek-chat") .apiKey("sk-xxx") .build(); WebSearchEngine searchEngine = SearXNGWebSearchEngine.builder() .baseUrl("http://127.0.0.1:8080") .build(); // 创建网络搜索内容检索器 WebSearchContentRetriever contentRetriever = WebSearchContentRetriever.builder() .webSearchEngine(searchEngine) .maxResults(3) .build(); SearchEnabledAssistant assistant = AiServices.builder(SearchEnabledAssistant.class) .contentRetriever(contentRetriever) .chatLanguageModel(model) .build(); // 使用助手回答需要最新信息的问题 String answer = assistant.answer("美国总统是谁?"); System.out.println(answer);