實(shí)戰(zhàn):Dify智能體+Java=自動化運(yùn)營服務(wù)!

我們在運(yùn)營某個圈子的時候,可能每天都要將這個圈子的“熱門新聞”發(fā)送到朋友圈或聊天群里,但依靠傳統(tǒng)的實(shí)現(xiàn)手段非常耗時耗力,我們通常要先收集熱門新聞,再組裝要新聞內(nèi)容,再根據(jù)內(nèi)容設(shè)計海報等。
那怎么才能簡化并高效的完成以上工作呢?
答案是我們可以借助 AI 工具:Dify + Java 服務(wù)來實(shí)現(xiàn)熱點(diǎn)新聞自動生成功能,最終生成效果如下:

實(shí)現(xiàn)思路
具體實(shí)現(xiàn)步驟如下:
- 在 dify 中創(chuàng)建 Agent 應(yīng)用。
 - 添加相關(guān)組件:
 
a.time:獲取當(dāng)前時間,根據(jù)時間生成對應(yīng)日期的熱點(diǎn)新聞。
b.tavily:聯(lián)網(wǎng)的搜索服務(wù),用于查詢某個日期的熱點(diǎn)新聞。
c.自定義 Java 服務(wù):實(shí)現(xiàn)將 HTML 頁面轉(zhuǎn)換為圖片。
- 填寫提示詞,設(shè)置變量和編排任務(wù)。
 - 選擇 LLM。
 - 執(zhí)行熱點(diǎn)新聞生成操作。
 
為什么要使用Java服務(wù)?
為什么要使用 Java 服務(wù),而不是根據(jù)文案直接生成圖片呢?
答:因為根據(jù)文案直接生成圖片,目前大模型生成圖片服務(wù),并不能滿足熱點(diǎn)新聞的生成要求。所以,我們可以讓大模型先生成美觀的 HTML 頁面,再將 HTML 轉(zhuǎn)換成圖片,才能滿足生產(chǎn)級別的圖片要求。當(dāng)然,自定義服務(wù)不一定是 Java 語言實(shí)現(xiàn)的,其他語言也是可以的,例如 Python。
1.自定義工具
自定義工具的 Schema 用于描述調(diào)用的外部調(diào)用服務(wù),只需要滿足 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.具體實(shí)現(xiàn)代碼
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執(zhí)行效果
Agent 執(zhí)行效果如下:

小結(jié)
AI 發(fā)展為我們提供了很大的便利,大大的提升了我們的工作效率,以后人機(jī)共創(chuàng)將是新的方向。我們也要靈活使用 AI 工具,加上我們之前的編程經(jīng)驗,可以發(fā)揮出巨大的化學(xué)反應(yīng),開發(fā)出很多很好玩又實(shí)用的產(chǎn)品。一起行動起來吧,使用 AI 技術(shù)做點(diǎn)有價值又有意義的事情~















 
 
 












 
 
 
 