掘金 人工智能 前天 20:23
实战:Dify智能体+Java=自动化运营工具!
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

本文探讨了如何利用Dify和Java服务,实现热点新闻的自动生成功能,从而简化运营圈子时发布热门新闻的流程。通过结合Dify的Agent应用、联网搜索服务Tavily和自定义Java服务,将HTML页面转换为图片,文章详细介绍了实现思路、具体步骤和代码示例,强调了AI工具在提高工作效率方面的作用,并鼓励读者积极探索人机共创的新方向。

📰 方案核心:利用Dify的Agent应用,结合时间组件、Tavily搜索服务和自定义Java服务,实现热点新闻的自动生成。

⚙️ 实现步骤:首先,在Dify中创建Agent应用;其次,添加时间组件、Tavily搜索服务和自定义Java服务;然后,填写提示词,设置变量和编排任务;最后,选择LLM并执行热点新闻生成操作。

🖼️ Java服务作用:由于大模型直接生成图片无法满足生产级别要求,通过Java服务将大模型生成的美观HTML页面转换为图片。

🛠️ 自定义工具:文章提供了自定义工具的Schema示例,该工具用于描述调用的外部调用服务,并满足OpenAI-Swagger要求。

💡 代码示例:展示了使用Java编写的ApiController代码,该代码接收HTML代码作为输入,并将其转换为PNG图片。

我们在运营某个圈子的时候,可能每天都要将这个圈子的“热门新闻”发送到朋友圈或聊天群里,但依靠传统的实现手段非常耗时耗力,我们通常要先收集热门新闻,再组装要新闻内容,再根据内容设计海报等。

那怎么才能简化并高效的完成以上工作呢?

答案是我们可以借助 AI 工具:Dify + Java 服务来实现热点新闻自动生成功能,最终生成效果如下:

实现思路

具体实现步骤如下:

    在 dify 中创建 Agent 应用。添加相关组件:
      time:获取当前时间,根据时间生成对应日期的热点新闻。tavily:联网的搜索服务,用于查询某个日期的热点新闻。自定义 Java 服务:实现将 HTML 页面转换为图片。
    填写提示词,设置变量和编排任务。选择 LLM。执行热点新闻生成操作。

为什么要使用Java服务?

为什么要使用 Java 服务,而不是根据文案直接生成图片呢?

答:因为根据文案直接生成图片,目前大模型生成图片服务,并不能满足热点新闻的生成要求。所以,我们可以让大模型先生成美观的 HTML 页面,再将 HTML 转换成图片,才能满足生产级别的图片要求。当然,自定义服务不一定是 Java 语言实现的,其他语言也是可以的,例如 Python。

1.自定义工具

自定义工具的 Schema 用于描述调用的外部调用服务,只需要满足 OpenAI-Swagger 要求即可:

{  "openapi": "3.1.0",  "info": {    "title": "html to image",    "description": "Generate image files based on HTML code",    "version": "v1.0.0"  },  "servers": [    {      "url": "http://192.168.3.94:8080"    }  ],  "paths": {    "/html2img/gen": {      "get": {        "description": "Generate image files based on HTML code",        "operationId": "generate",        "parameters": [          {            "name": "html",            "in": "query",            "description": "HTML code",            "required": true,            "schema": {              "type": "string"            }          }        ],        "deprecated": false      }    }  },  "components": {    "schemas": {}  }}

2.具体实现代码

import cn.alotus.HtmlRender;import org.springframework.web.bind.annotation.RequestMapping;import org.springframework.web.bind.annotation.RequestParam;import org.springframework.web.bind.annotation.RestController;import java.awt.image.BufferedImage;import java.io.IOException;import java.util.UUID;@RestController@RequestMapping("/html2img")public class ApiController {    @RequestMapping("/gen")    public String generate(@RequestParam String html) throws IOException {        HtmlRender htmlRender = new HtmlRender(BufferedImage.TYPE_INT_RGB);        String imgPath = "D://" + UUID.randomUUID() + ".png";        //生成图片        htmlRender.toPng(html, imgPath);        return imgPath;    }}

3.Agent执行效果

Agent 执行效果如下:

小结

AI 发展为我们提供了很大的便利,大大的提升了我们的工作效率,以后人机共创将是新的方向。我们也要灵活使用 AI 工具,加上我们之前的编程经验,可以发挥出巨大的化学反应,开发出很多很好玩又实用的产品。一起行动起来吧,使用 AI 技术做点有价值又有意义的事情~

本文已收录到我的技术小站 www.javacn.site,其中包含的内容有:Spring AI、LangChain4j、Dify、AI Agent、MCP、Function Call、RAG、向量数据库、Prompt、多模态、向量数据库、嵌入模型等内容。

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

Dify Java AI 热点新闻 自动化
相关文章