如何搭建大模型项目以适应需求?
摘要:一.本地ollama 方式接入 1.环境 JDK 17 spring boot 3.4.0 2.引入依赖 <dependency> <groupId>c
一.本地ollama 方式接入
1.环境 JDK 17 spring boot 3.4.0
2.引入依赖
<dependency>
<groupId>com.alibaba.cloud.ai</groupId>
<artifactId>spring-ai-alibaba-starter</artifactId>
</dependency>
3.配置application.yml
spring:
ai:
ollama:
base-url: http://localhost:11434 //参考上一章服务器部署 localhost改成对应IP即可
chat:
model: qwen3.5
4.建造控制器提供调用大模型接口
4.1 简单问答模式
@RestController
public class ChatController {
private final ChatClient chatClient;
public ChatController(ChatClient.Builder builder) {
this.chatClient = builder
//.defaultSystem("你是一个各种数据库sql优化大师") //提示词
.build();
}
@GetMapping("/chat")
public String chat(@RequestParam(value = "input") String input) {
return this.chatClient.prompt()
.user(input)
.call()
.content();
}
}
api调用结果
4.2 增加限制提示词模式
在构造器中builder后面增加.defaultSystem("你是一个各种数据库sql优化大师") //增加提示词操作
api再次调用结果 根据提示词直接给出对应的专业优化建议和调整
4.3 增加RAG检索模式
当你问道一些大模型没有的知识体系数据的时候,比如你今天都做了什么 大模型是不知道的 这个时候就需要知识库 让大模型读取知识库知识 从而知道你做了什么 然后大模型整理数据返回出来
加入知识库后 上代码
增加配置文件
package com.example.springai.config;
import org.springframework.ai.chat.client.ChatClient;
import org.springframework.ai.embedding.EmbeddingModel;
import org.springframework.ai.ollama.OllamaChatModel;
import org.springframework.ai.ollama.OllamaEmbeddingModel;
import org.springframework.ai.ollama.api.OllamaApi;
import org.springframework.ai.ollama.api.OllamaOptions;
import org.springframework.ai.vectorstore.SimpleVectorStore;
import org.springframework.ai.vectorstore.VectorStore;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
import java.io.File;
import java.io.IOException;
@Configuration
public class AiConfig {
@Value("${spring.ai.ollama.base-url}")
private String ollamaBaseUrl;
@Va
