今天,我们将深入探讨如何利用DeepSeek来真正解决我们当前面临的一些问题。具体来说,今天我们仍然会将DeepSeek接入到Spring AI中进行利用。需要注意的是,虽然DeepSeek目前主要作为推理型助手存在,并不完全适合作为智能体的首选,但它仍然能够有效地融入并提升你的业务流程。因此,你可以将其集成到自己的业务系统中,借此发挥它在推理和数据分析上的强大能力。

接下来,我们将继续使用之前在腾讯云HAI服务器上部署的DeepSeek大模型进行开发,利用它的强大功能来满足我们当前的需求。

Spring AI

首先,我们已经知道HAI服务器上部署的实际上也是Ollama,而在Spring文档中也提供了相应的Ollama接口,便于开发者进行集成。当然,如果你觉得使用Ollama有些麻烦,完全可以选择接入OpenAI接口,因为目前Ollama和OpenAI是兼容的,二者可以相互替代,因此你可以根据实际需求来选择适合的接口。具体情况如图所示:

ollama配置

在此之前,我们首先需要通过 Ollama 接口进行对接。为此,我们需要引入 Ollama 的相关依赖,具体操作如下:

<dependency>
<groupId>org.springframework.ai</groupId>
<artifactId>spring-ai-ollama-spring-boot-starter</artifactId>
</dependency>

紧接着,再添加一些必要的配置信息如调用地址以及调用模型,如下所示:

spring.ai.ollama.base-url=http://ip:6399

spring.ai.ollama.chat.options.model=deepseek-r1:7b

在这里,只需将 IP 信息修改为 HAI 所暴露的对应外网 IP 地址即可。值得注意的是,HAI 目前提供了两种模型版本:1.5b 和 7b。根据性能需求,推荐使用 7b 版本,它在处理能力和效果方面相较 1.5b 更为优秀。接下来,我们将简要编写一个接口 API,以供业务系统进行调用。具体代码如下:

@PostMapping("/ai")
ChatDataPO generationByText(@RequestParam("userInput") String userInput) {
String content = this.chatClient.prompt()
.user(userInput).advisors(new MessageChatMemoryAdvisor(chatMemory))
.call().content();
log.info("content: {}", content);
ChatDataPO chatDataPO = ChatDataPO.builder().code("text").data(ChildData.builder().text(content).build()).build();
return chatDataPO;
}

大概需要等一会时间才可以有结果,因为这是阻塞式响应,你可以接入流式服务就会实时查看响应结果。效果如图所示:

当然,如果您觉得 7b 模型的回答效果不尽如人意,您完全可以选择加载更强大的模型版本,例如 70b。然而,需要注意的是,选择更大规模的模型会大幅提高算力需求。此外,70b 模型的存储需求也更为苛刻,可能需要额外的磁盘空间来进行部署和运行。

目前,基础性机器的存储容量仅为 200GB,因此无法下载完整版本的模型,只能支持下载最大为 70b 参数规模的模型。由于更大规模的模型需要更多的存储空间,因此对于存储容量有限的环境来说,选择合适的模型版本至关重要。如果需要了解各个模型的存储需求,建议访问 Ollama 官方网站,在那里可以查看详细的模型大小信息。以下是相关模型大小的展示,供参考:

然后我们可以直接去HAI服务器的终端上使用命令进行拉取下载。

ollama run deepseek-r1:70b

虽然存储容量已经足够,但显存的级别仍然不足,导致加载速度依然较慢。因此,为了确保系统的流畅运行,建议将显存扩展至32GB及以上,这样才能实现更加高效的性能和更好的用户体验。

总结

总结来说,DeepSeek作为推理型助手在提升业务流程中具有巨大的潜力,尽管它不是智能体的首选,但它在推理和数据分析上的强大能力依然可以为您的系统增添显著价值。通过集成到Spring AI与Ollama接口,开发者能够灵活选择适合的模型版本来满足不同的性能需求。随着技术不断发展和硬件条件的提升,DeepSeek将进一步展现其在实际应用中的优势,帮助企业更加高效地实现智能化转型。


我是努力的小雨,一个正经的 Java 东北服务端开发,整天琢磨着 AI 技术这块儿的奥秘。特爱跟人交流技术,喜欢把自己的心得和大家分享。还当上了腾讯云创作之星,阿里云专家博主,华为云云享专家,掘金优秀作者。各种征文、开源比赛的牌子也拿了。

想把我在技术路上走过的弯路和经验全都分享出来,给你们的学习和成长带来点启发,帮一把。

欢迎关注努力的小雨,咱一块儿进步!

Spring AI + DeepSeek:提升业务流程的智能推理利器的更多相关文章

  1. SuperEdge再添国产智能加速卡支持,为边缘智能推理再提速10倍

    作者 寒武纪AE团队,腾讯云容器中心边缘计算团队,SuperEdge 开发者 SuperEdge 支持国产智能加速卡寒武纪 MLU220 SuperEdge 对应的商业产品 TKE Edge 也一直在 ...

  2. 综合5项百度大脑AI技术,快速构建智能交通方案

    一.整体方案:思路:整合百度AI功能,通过百度AI解决.优化在公交运行过程中遇到的运营.管理.安全等方面的问题.具体如下: 安全方面:通过驾驶员检测+语音合成,对驾驶员状态进行实时检测,跟踪,告警.  ...

  3. 【如何让代码变“高级”(一)】-Spring组合注解提升代码维度

    原创不易,点个赞

  4. iBooker AI+财务提升星球 2020.4 热门讨论

    比特币量化套利的心路历程(附python量化招聘)(分享自知- 如何选择一份好的工作? 你知道为什么大家都想去好公司吗? 不- #财务知识# 可转债套利 辉丰转债128012套利之三个知道- #财务知 ...

  5. 生成式AI对业务流程有哪些影响?企业如何应用生成式AI?一文看懂

    集成与融合类ChatGPT工具与技术,以生成式AI变革业务流程 ChatGPT背后的生成式AI,聊聊生成式AI如何改变业务流程 ChatGPT月活用户过亿,生成式AI对组织的业务流程有哪些影响? 生成 ...

  6. 助力用户选择更优模型和架构,推动 AI机器视觉落地智能制造

      智能制造的全新 "视界" 由互联网大潮掀起的技术进步,推动着智能制造成为传统制造行业面向未来.寻求突破的关键路径.通过融合机器人.大数据.云计算.物联网以及 AI 等多种技术, ...

  7. AI剪辑和自定义UI,打造更智能的剪辑体验

    为满足开发者构建高效的应用内视频编辑能力,7月的HMS Core 6.0 推出了视频编辑服务(Video Editor Kit),一站式的视频处理能力获得了积极反响.同时,我们也关注到开发者需要集成丰 ...

  8. IBM Watson启示录:AI不应该仅仅是炫技

    IBM Watson启示录:AI不应该仅仅是炫技 https://mp.weixin.qq.com/s/oNp8QS7vQupbi8fr5RyLxA                         导 ...

  9. [转帖]中国AI芯“觉醒”的五年

    中国AI芯“觉醒”的五年 https://www.cnbeta.com/articles/tech/857863.htm 原来 海思的营收已经超过了按摩店(AMD) 没想到.. 十多款芯片问世,多起并 ...

  10. 华为全栈AI技术干货深度解析,解锁企业AI开发“秘籍”

    摘要:针对企业AI开发应用中面临的痛点和难点,为大家带来从实践出发帮助企业构建成熟高效的AI开发流程解决方案. 在数字化转型浪潮席卷全球的今天,AI技术已经成为行业公认的升级重点,正在越来越多的领域为 ...

随机推荐

  1. 常见Java面试题 – 第三部分:重载(overloading)与重写(overriding)

    ImportNew注: 本文是ImportNew编译整理的Java面试题系列文章之一.你可以从这里查看全部的Java面试系列. 这篇文章介绍的常见面试题是关于重载(overloading)方法和重写( ...

  2. 软件逆向之IDA Pro

    IDA Pro作为一款强大的逆向分析工具,对于软件开发和安全领域的专业人士来说是必不可少的. 1. 什么是逆向分析 逆向分析是指通过分析已有的软件或程序,推测出其内部运行机制.算法和逻辑等信息.通过逆 ...

  3. 服务器安全之DenyHosts

    情景:今天登录服务器,突然发现登录之后展示的信息有点多,仔细端倪发现: There were 3975 failed login attempts since the last successful ...

  4. 鸿蒙NEXT元服务:收藏、卡片、用户协议、隐私声明、分享链接、评分与评论

    相比应用,元服务的功能藏的比较深,这里记录一下常用功能的位置. 1.收藏(添加至我的服务) 打开元服务-->右上角四个点-->添加至我的服务-->手机滑到负一屏-->点击&qu ...

  5. 使用AES加密时,结果不一样

    使用AES加密时,发现得到的结果不一致. python示例 from Crypto.Cipher import AES from Crypto.Util.Padding import pad from ...

  6. FastExcel 合并单元格(相当的行数据,进行合并)

    目录 需求 思路 实现 Excel导出单元格全量合并策略 日期格式转换 接口代码 Service DTO 使用FastExcel数据导出:官网: https://idev.cn/fastexcel/z ...

  7. IOS实现水波纹

    IOS实现水波纹 需要实现一个水波纹效果 其实就是画两个正弦函数或者余弦函数的layer在view上面,根据屏幕刷新率来重绘,更新其左右偏移量来让其看起来是在左右移动 具体实现 定义两个layer,用 ...

  8. 一打开终端就默认进入conda的base环境,取消方法

    conda版本:4.10.3 安装conda之后,在使用VSCode的时候,每次在里面使用powershell终端都是默认进入base环境,稍不注意就会用错python解释器,所以考虑取消这一设置.经 ...

  9. kubeadm init问题

    1.解析不到对应的主机 [WARNING Hostname]: hostname "k8s-master-01" could not be reached  [WARNING Ho ...

  10. shell中 ${}, ##, %%, :-,:+, ? 的使用

    假设我们定义了一个变量为:file=/dir1/dir2/dir3/my.file.txt 可以用${}分别替换得到不同的值:${file#*/} 删掉第一个/及其左边的字符串:dir1/dir2/d ...