那么多接入DeepSeek的,终于有一家与众不同了!

写了多年的公众号,我发现有两件事情越来越难了:给文章起标题+找封面图。

尤其是公众号改版变成信息流以后,标题和封面就变得非常重要了,经常需要绞尽脑汁地去想个吸引人的标题出来,然后费劲巴拉地找一个和标题匹配的封面图,费心费力。

AI出现以后,我就尝试着让AI去做,但是我发现效果也受限,首先AI起的标题没法和自己之前的风格相吻合,其次直接把标题喂给AI,生成照片经常达不到自己的要求,写过图像提示词的都懂,AI get不到那些抽象标题的背后含义。

最近DeepSeek爆火,我也注意到扣子平台独家推出了DeepSeek FunctionCall的能力,这就开辟了一条新路:利用DeepSeek强大的思考推理能力,再加上扣子插件商店(国内最完备的插件生态),以及知识库等能力,帮助解决给文章起标题和生成封面这两件累人的事情。

除了DeepSeek之外,扣子平台也提供了豆包、通义千问、智谱、Kimi、百川等各种大模型,你可以随意挑选自己喜欢的来使用。

01

智能体整体设计

我要创建的是一个智能体,智能体的模型选择了“DeepSeek-R1 工具调用”,它主要使用两个插件和知识库来完成我的需求。

知识库:存放之前的文章标题

链接读取插件:给定一个链接,读取链接的内容

图像生成插件:  根据提示词来创建图像

具体的执行过程是这样的:

1. 智能体读取知识库中的历史文章标题,发给DeepSeek

2. DeepSeek调用 “链接读取插件” 获取链接内容

3. DeepSeek总结文章内容生成 10 个备选标题,提示用户选择

4. DeepSeek 根据用户选择的标题,调用 ImageToolPro ,生成图片链接。

02

创建智能体

基本设置

扣子平台支持两种类型的AI项目,一种是“智能体”,另外一种是“AI 应用”,这里选“创建智能体”

在编排界面,大模型选择“DeepSeek-R1·工具调用”

创建知识库

知识库里要存放标题历史数据,我这里选择表格。

事先我已经准备好了一个Excel,里边都是码农翻身公众号之前的标题,把它们导入进来,就是这个样子:

添加插件

然后添加两个插件,一个是“链接读取”,另外一个是“ByteArtist”,都是扣子官方出品,非常稳定。

写提示词

基本的设置完成以后,接下来就是写提示词了,我最初写的是这样的:

你是一位图片生成和标题创作大师,当用户提供链接时,调用LinkReaderPlugin插件读取链接的内容,然后查看码农翻身标题数据集,根据其中的风格创作10个标题,让用户选择,然后根据用户选择的标题扩展成提示词,调用ImageToolPro生成图片。

这样的提示词平淡无奇,我就让扣子自动优化了一下。

说实话,优化得相当好,这么长的提示词,我自己是写不出来的。

到目前为止,智能体就创建完成了,非常简单,对吧?

这也是扣子的强大之处,无论你是否有编程基础,都可以在扣子上轻松发挥出自己的创意,创建各种智能体。

03

测试一下

扣子提供了一个预览和调试的功能,我直接发一个链接给我的智能体“公众号小助手”。

这个链接的内容讲的是Unix时间戳的诞生历史。

看看DeepSeek思考过程挺有趣的,它搜索了知识库,调用LinkReaderPlugin的时候,还自动设置了type为全文,skip_cache为true,然后还分析了我的标题风格,说通常带有悬念或者疑问...... 对文章内容的分析也很准确。

它根据我之前的标题风格,构思出的标题是这样的:

你看它构思的《Unix 诞生的那个深夜,Ken Thompson 遇到了这个世纪难题》,《1969 年,当妻子回娘家的三周里,他悄悄改变了世界》还真是不错。

如果你觉得它生成的标题都不合适,可以让它继续生成,直到满意为止。

我选择了一个标题,让它生成图片,同样,不满意的话可以调整下,让它继续生成,试了两次,选了这个:

04

总结

这篇文章提到的方法只是涉及到标题生成和图片生成,实际上扣子平台的智能体覆盖的范围非常广泛,它可以写作文案、生成故事、执行代码、语音播报...... 还可以联网查询天气、股市、时事新闻、汇率...... 你不需要有任何编程基础,就可以轻松创建一个符合自己需要的智能体。

如今扣子又独家支持 Deepseek Functiocall 能力,相当于让DeepSeek可以调用海量的插件,极大地拓展了智能体的能力边界,现在能限制你的,只有你的想象力了。

点击下方的阅读原文,赶紧体验吧!

### 将DeepSeek集成到Spring项目 为了将DeepSeek成功集成到Spring项目中,可以借鉴数据库和其他服务与Spring框架集成的方法。通常情况下,在Spring环境中引入新的组件或服务涉及几个主要方面:配置管理、依赖注入和服务调用。 #### 配置管理 类似于创建Git仓库来存储配置文件[^1],对于DeepSeek的集成而言,首先需要准备相应的API密钥或其他认证凭证,并将其安全地保存起来。这些敏感信息不应该硬编码在源码里而是通过环境变量或者专门的秘密管理系统提供给应用程序。 ```yaml # application.yml 示例 deepseek: apiKey: ${DEEPSEEK_API_KEY} baseUrl: "https://api.deepseek.com/v1" ``` #### 依赖注入 定义一个用于访问DeepSeek API的服务类,并利用`@Service`注解使其成为Spring容器中的bean。这样可以在其他地方轻松获取该实例并执行所需的操作。 ```java @Service public class DeepSeekClient { private final String apiKey; private final RestTemplate restTemplate; @Autowired public DeepSeekClient(@Value("${deepseek.apiKey}") String apiKey) { this.apiKey = apiKey; this.restTemplate = new RestTemplate(); } // 实现具体方法... } ``` #### 数据库连接设置 虽然这里讨论的是DeepSeek而非传统意义上的数据库,但是某些概念仍然适用。比如建立数据源的方式可以启发我们思考如何初始化对外部HTTP RESTful接口的客户端对象。这一步骤对应于选择合适的HTTP请求工具以及对其进行必要的参数化处理[^2]。 #### 控制器层实现 最后,在控制器层面编写逻辑以便能够触发对DeepSeek API的实际调用。确保遵循REST原则设计URL路径和HTTP动词的选择;同时考虑到异常情况下的错误响应机制。 ```java @RestController @RequestMapping("/search") public class SearchController { private final DeepSeekClient deepSeekClient; @Autowired public SearchController(DeepSeekClient deepSeekClient){ this.deepSeekClient = deepSeekClient; } @GetMapping("/{query}") public ResponseEntity<?> search(@PathVariable String query){ try{ SearchResult result = deepSeekClient.search(query); return ResponseEntity.ok(result); }catch(Exception e){ return ResponseEntity.status(HttpStatus.INTERNAL_SERVER_ERROR).body(e.getMessage()); } } } ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值