办学质量监测教学评价系统
ageerle
2025-04-29 b1ff44df4bc71f8f8be7dc913089c910d85d44d0
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
package org.ruoyi.chat.config;
 
import jakarta.annotation.PostConstruct;
import lombok.Getter;
import lombok.RequiredArgsConstructor;
import org.ruoyi.common.core.utils.OkHttpUtil;
 
import org.ruoyi.domain.vo.ChatModelVo;
import org.ruoyi.service.IChatModelService;
import org.springframework.stereotype.Component;
 
import java.util.HashMap;
import java.util.Map;
 
@Component
@RequiredArgsConstructor
public class OkHttpConfig {
 
    private final IChatModelService chatModelService;
    private final Map<String, OkHttpUtil> okHttpUtilMap = new HashMap<>();
    @Getter
    private String generate;
 
    @PostConstruct
    public void init() {
        initializeOkHttpUtil("suno");
        initializeOkHttpUtil("luma");
        initializeOkHttpUtil("ppt");
    }
 
    private void initializeOkHttpUtil(String modelName) {
        ChatModelVo chatModelVo = chatModelService.selectModelByName(modelName);
        OkHttpUtil okHttpUtil = new OkHttpUtil();
        okHttpUtil.setApiHost(chatModelVo.getApiHost());
        okHttpUtil.setApiKey(chatModelVo.getApiKey());
        generate = String.valueOf(chatModelVo.getModelPrice());
        okHttpUtilMap.put(modelName, okHttpUtil);
    }
 
    public OkHttpUtil getOkHttpUtil(String modelName) {
        return okHttpUtilMap.get(modelName);
    }
}