springboot+vue项目接入文心一言API
    		       		warning:
    		            这篇文章距离上次修改已过420天,其中的内容可能已经有所变动。
    		        
        		                
                要在Spring Boot项目中接入文心一言API,你需要做以下几步:
- 在Spring Boot项目中添加文心一言API的依赖(如果有的话)。
- 获取API Key。
- 创建服务来调用文心一言API。
- 在Vue项目中发送请求到Spring Boot服务器,并展示结果。
以下是一个简化的例子:
步骤1:添加依赖(如果有必要)
<!-- 示例,具体依赖请参考文心一言官方文档 -->
<dependency>
    <groupId>com.baidu.aip</groupId>
    <artifactId>java-sdk</artifactId>
    <version>您的版本号</version>
</dependency>步骤2:获取API Key
在使用文心一言API之前,你需要在百度开发者中心注册账号,创建应用以获取API Key。
步骤3:创建服务
import com.baidu.aip.nlp.AipNlp;
 
@Service
public class DuerOSService {
 
    @Value("${dueros.apiKey}")
    private String apiKey;
 
    @Value("${dueros.secretKey}")
    private String secretKey;
 
    private AipNlp client;
 
    @PostConstruct
    public void init() {
        client = new AipNlp(apiKey, secretKey);
    }
 
    public String talk(String text) {
        // 调用文心一言API
        HashMap<String, Object> options = new HashMap<>();
        // 设置选项,如设置用户ID等
        String response = client.simsimi(text, options);
        return response;
    }
}步骤4:在Vue中发送请求
<template>
  <div>
    <input v-model="message" @keyup.enter="sendMessage" />
    <button @click="sendMessage">发送</button>
    <div v-for="item in messages" :key="item.id">{{ item.content }}</div>
  </div>
</template>
 
<script>
export default {
  data() {
    return {
      message: "",
      messages: [],
    };
  },
  methods: {
    async sendMessage() {
      if (!this.message.trim()) {
        alert("不能发送空消息");
        return;
      }
      try {
        const response = await axios.post("/api/dueros", { message: this.message });
        this.messages.push({ id: Date.now(), content: response.data });
        this.message = "";
      } catch (error) {
        alert("发送失败:" + error.message);
      }
    },
  },
};
</script>Spring Boot Controller
@RestController
@RequestMapping("/api")
public class DuerOSController {
 
    @Autowired
    private DuerOSService duerosService;
 
    @PostMapping("/dueros")
    public String talk(@RequestBody Map<String, String> request) {
        return duerosService.talk(request.get("message"));
    }
}确保你已经在application.properties或application.yml中配置了dueros.apiKey
评论已关闭