【分享】DeepSeek V3在IntelliJ IDEA 中使用白话编程

废话不多说,直接上演示图:
WechatIMG903 (1).jpg

可以使用下载离线安装包,安装速度快:
https://lingma.aliyun.com/lingma/download

image.png

我的IntelliJ IDEA 是社区版:
https://www.jetbrains.com.cn/idea/download/download-thanks.html

--------------------------------------------------------

PS1:  JFinal 项目中 调用 DeepSeek 大模型:

<dependency>
    <groupId>io.github.pig-mesh.ai</groupId>
    <artifactId>deepseek4j-core</artifactId>
    <version>1.4.3</version>
</dependency>
public static void main(String[] args) {
    DeepSeekClient.Builder conf = DeepSeekClient.builder();
    conf.baseUrl = "https://ai.gitee.com/v1/";
    conf.model = "DeepSeek-R1";
    //https://ai.gitee.com/serverless-api?model=DeepSeek-R1
    conf.openAiApiKey = "登录自己码云上面链接里获取令牌,粘贴到这里";
    DeepSeekClient client = conf.build();

    Flux<ChatCompletionResponse> flux = client.chatFluxCompletion("你好 deepseek");
    // 订阅并打印每个 ChatCompletionResponse 对象。
    flux.subscribe(System.out::println);
    // JF Controller 里面可使用Sse实现打字效果。
    // SseEmitter sseEmitter = new SseEmitter(getResponse());
    // sseEmitter.sendMessage(data);
    // sseEmitter.complete();
    // renderNull();
}

------------
PS2 :简单http请求返回结果的:

private static String send() {
    String jsonInputString = """
            {
                    "model": "deepseek-chat",
                    "messages": [
                        {"role": "user", "content": "给我1句励志语句,不要返回其他内容。"}
                    ],
                    "stream": false
                }""";
    try (HttpClient httpClient = HttpClient.newHttpClient()) {
        HttpRequest request = HttpRequest.newBuilder()
                .uri(URI.create("https://api.deepseek.com/chat/completions"))
                .header("Content-Type", "application/json")
                .header("Authorization", "Bearer " + AppConfig.getOpenAiApiKey())
                .POST(HttpRequest.BodyPublishers.ofString(jsonInputString, StandardCharsets.UTF_8))
                .build();

        HttpResponse<String> response = httpClient.send(request, HttpResponse.BodyHandlers.ofString());
        if (response.statusCode() == 200) {
            String body = response.body();
            String content = JSONUtil.parseObj(body).getJSONArray("choices").getJSONObject(0)
                    .getJSONObject("message").getStr("content");
            return content.trim();
        }
    } catch (Exception e) {
        e.printStackTrace();
    }
    return "";
}


评论区

JFinal

2025-02-22 18:23

大模型对咱们来说绝对是极大的利好

北流家园网

2025-02-24 16:16

杜总,能不能写篇deepseek本地化部署,及嵌入自己系统中的文章?使用JFinal调用接口,流式输出到页面,可以读取本地数据库信息,然后丢给deepseek。可以发布到coffee,付费购买。

杜福忠

2025-02-24 16:52

@北流家园网 如果不会各种骚操作的话,建议直接安装一个 1Panel 控制面板。里面可以 UI 操作 一键安装 Ollama(或vLLM)》deepseek,再一键安装MaxKB(知识库问答系统可以直接扒文章),以及对话等应用,可以自己研究。
对接JFinal的话,就用一个叫deepseek4j的插件在 Java 里面调用就可以。网上有 maven信息,或者直接问deepseek(感觉纳米 AI 的deepseek满血版还是不错的,反应很快)。
还是得找到合适自己业务的场景。
最近 2 个月定制项目忙完了,可能会静心研究一下和我们管理系统的结合(大概会抄袭码云项目管理后台的那个马建仓 AI 助手, 会在社区分享的)

杜福忠

2025-02-24 16:53

@北流家园网 PS 体验地址:https://demo.1panel.cn/

北流家园网

2025-02-24 22:14

@杜福忠 本地化部署可以了,就是不知道如何设置API来调用。

杜福忠

2025-02-25 09:32

@北流家园网 Ollama 上有端口来着,可以直接问deepseek 能给出操作步骤和好几个方案。我没私有部署过,当前我知道的AI平台csdn 有个inscode 产品,里面可以直接 UI 操作要哪个模型,以及会给API地址。
https://models.csdn.net/
deepseek-r1:70b 价格:
输入:¥2/ M Tokens
输出:¥2/ M Tokens

杜福忠

2025-02-25 09:44

PS: gitee 家的https://ai.gitee.com/serverless-api 也很给力,按次调用 1 毛一次 DeepSeek-R1 满血版

北流家园网

2025-02-25 11:19

@杜福忠 看了下deepseek4j,只适合spring使用,不适合jfinal呢。

杜福忠

2025-02-25 15:26

@北流家园网 是直接支持 SP、Solon 等框架可以直接调用。但是也支持单独写 Java 调用啊,比如直接在 Java main 里面调用。那和在 JF 里写个 Controller 也没啥区别。
https://javaai.pig4cloud.com/deepseek/function

杜福忠

2025-02-25 15:36

@北流家园网

<dependency>
<groupId>io.github.pig-mesh.ai</groupId>
<artifactId>deepseek4j-core</artifactId>
<version>1.4.3</version>
</dependency>

public static void main(String[] args) {

DeepSeekClient.Builder conf = DeepSeekClient.builder();
conf.baseUrl = "https://ai.gitee.com/v1/";
conf.model = "DeepSeek-R1";
conf.openAiApiKey = "码云令牌要自己创建";https://ai.gitee.com/serverless-api?model=DeepSeek-R1
DeepSeekClient client = conf.build();

Flux<ChatCompletionResponse> flux = client.chatFluxCompletion("你好 deepseek");
// 订阅并打印每个 ChatCompletionResponse 对象
flux.subscribe(System.out::println);
}

实际上自己写http工具调用也没几行代码,都可以问deepseek

北流家园网

2025-02-25 16:49

@杜福忠 这个包没有Flux这个类,怎么来?

杜福忠

2025-02-25 18:22

@北流家园网 maven 依赖呗,可以看依赖 jar 里面的 pom.xml 就能追踪定位 reactor-core、lombok

高兴就好

2025-03-17 00:35

@杜福忠 DeepSeek 部署教程有不

杜福忠

2025-03-17 10:10

@高兴就好 这个教程网上也太多了吧,如果不会各种配置,可以试试1Panel 控制面板,界面点点就行,网上搜索一下就看见了

杜福忠

2025-03-17 10:12

@高兴就好 对了,这个文章的下面小木老师就有分享了 https://jfinal.com/share/2784

热门分享

扫码入社