项目实训-用户信息管理-尝试AI推荐

任务

制作一个人工智能大模型自动推荐链接系统。

尝试API通义千问

编写一个Prompt提示词

Prompt的作用是,提供一个关键词,AI按照固定的JSON格式返回,方便后端处理。

假如你是一个互联网推荐专家,接下来我将给你固定格式
关键词:{关键词}
接下来你按照关键词搜索相关网站,生成五个链接,用以下固定格式回复我
不要产生任何多余的注释、解释!!
```
[
{"url":"链接1"},
{"url":"链接2"},
{"url":"链接3"},
{"url":"链接4"},
{"url":"链接5"},
```

增加一个callWithMessageAndRole方法

之前的方法是固定了角色,新增一个callWithMessageAndRole,将信息和角色都手动传入,增加灵活度。

    public static String callWithMessageAndRole(String message, String role) throws NoApiKeyException, ApiException, InputRequiredException {
        Generation gen = new Generation();
        Constants.apiKey = "token";
        MessageManager msgManager = new MessageManager(2);
        Message systemMsg0 = Message.builder().role(Role.SYSTEM.getValue()).content(role).build();
        Message userMsg1 = Message.builder().role(Role.USER.getValue()).content(message).build();
        msgManager.add(systemMsg0);
        msgManager.add(userMsg1);

        QwenParam params = QwenParam.builder().model("qwen-max")
                .messages(msgManager.get())
                .seed(1234)
                .topP(0.8)
                .resultFormat("message")
                .enableSearch(false)
                .maxTokens(1500)
                .temperature((float) 0.85)
                .repetitionPenalty((float) 1.0)
                .build();

        GenerationResult result = gen.call(params);
        // 只取出了有效数据
        return result.getOutput().getChoices().get(0).getMessage().getContent();
    }

编写Main函数进行测试

输入之前写好的Prompt提示词和提供的关键词,进行测试。

    public static void main(String[] args) throws NoApiKeyException, InputRequiredException {
        String role = "假如你是一个互联网推荐专家,接下来我将给你固定格式\n" +
                "关键词:{关键词}\n" +
                "接下来你按照关键词搜索相关网站,生成五个链接,用以下固定格式回复我\n" +
                "不要产生任何多余的注释、解释!!\n" +
                "```\n" +
                "[\n" +
                "{\"url\":\"链接1\"},\n" +
                "{\"url\":\"链接2\"},\n" +
                "{\"url\":\"链接3\"},\n" +
                "{\"url\":\"链接4\"},\n" +
                "{\"url\":\"链接5\"},\n" +
                "```";
        String message = "关键词:原神";
        System.out.println(callWithMessageAndRole(message, role));
    }

第一次测试

输出结果
```
[
{"url":"https://ys.webstatic.mihoyo.com/"},
{"url":"https://bbs.mihoyo.com/ys/"},
{"url":"https://www.genshin impact.com/"},
{"url":"https://genshin.honeyhunterworld.com/"},
{"url":"https://www.reddit.com/r/Genshin_Impact/"}
]
```
结果分析

只有两个网页可以正常打开,且网页都是主页,里面包含一些外网链接。第一次测试比较失败,

第二次测试

改进

通过阅读通义千问文档,API默认是关闭了联网搜索功能,需要读入参数.enableSearch(true)才能使用,改进后继续进行测试。

输出结果
[
{"url":"https://ys.mihoyo.com/"},
{"url":"https://www.gamewith.net/zh-tw/games/205078/genshin-impact/"},
{"url":"https://bbs.mihoyo.com/ys/"},
{"url":"https://www.playstation.com/en-us/games/genshin-impact-ps4/"},
{"url":"https://apps.apple.com/cn/app/id1496620816"}
]
结果分析

本次测试,所有的网页都可以打开,其中有一个网站指向了404 NOT FOUND网站,但是推荐的网站全是主页,不能满足要求。

查看返回参数

主页使用通义千问联网,有明显的网页参考,尝试寻找返回类能否找到参考网页的返回。

经过搜索,没有类似的结果。

在这里插入图片描述

尝试在线的大语言模型

先尝试在线的大语言模型,若能成功使用再调用相关API。

通义千问

在这里插入图片描述

返回结果

[
{"url":"https://www.nature.com/subjects/artificial-intelligence"},
{"url":"https://ai.google/"},
{"url":"https://www.mckinsey.com/business-functions/mckinsey-analytics/our-insights/artificial-intelligence"},
{"url":"https://www.sciencedirect.com/journal/artificial-intelligence"},
{"url":"https://www.technologyreview.com/topic/artificial-intelligence/"}
]

不能满足要求

ChatGLM智能体

在这里插入图片描述

配置智能体,勾选联网能力,此外将稳定性调整到最高。

返回结果

```
[
{"url":"https://ys.mihoyo.com/main/"},
{"url":"https://baike.baidu.com/item/%E5%8E%9F%E7%A5%9E/22721089"},
{"url":"https://ys.mihoyo.com/download/"},
{"url":"https://www.taptap.cn/app/168332"},
{"url":"https://wiki.biligame.com/ys/%E9%A6%96%E9%A1%B5"}
]
```

全是下载网页,比较符合的百度百科还拼错了链接。

ChatGLM官方AI搜索智能体

在这里插入图片描述

返回结果

[
{"url":"www.yuanshen.com"},
{"url":"ys.mihoyo.com"},
{"url":"ys.mihoyo.com"},
{"url":"ys.mihoyo.com"},
{"url":"genshin.mihoyo.com"}
]

抬走。

ChatGPT 4o

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

返回结果

[
{"url":"https://aiindex.stanford.edu/2024-report/"},
{"url":"https://www.ibm.com/artificial-intelligence/what-is-ai"},{"url":"https://news.un.org/zh/story/2023/07/1122837"},{"url":"https://news.cctv.com/2023/06/01/ARTI1fh7pJ2LxUOa1U0PQeLK230601.shtml"},{"url":"https://www.technewsworld.com/story/ai-advancements-and-ethical-concerns-87235.html"}
]

所有网页均不可访问。

尝试给出网址

尝试给出网址,让AI访问。

部分网站可以总结内容,但是一旦提示提取URL,均不可行。

总体结论

使用Prompt提示词让AI进行推荐不可行,推测AI给出网址是进行随机拼接,并没有真正地进行搜索。

的确有AI进行了搜索参考网址,但是这部分内容无法在API返回信息中获取,且参考网址的时效性有待考量。

接下来的思路是,手动访问网址,提取出URL,交由AI进行数据清洗、挑选并推荐。

尝试给出网址

尝试给出网址,让AI访问。

部分网站可以总结内容,但是一旦提示提取URL,均不可行。

总体结论

使用Prompt提示词让AI进行推荐不可行,推测AI给出网址是进行随机拼接,并没有真正地进行搜索。

的确有AI进行了搜索参考网址,但是这部分内容无法在API返回信息中获取,且参考网址的时效性有待考量。

接下来的思路是,手动访问网址,提取出URL,交由AI进行数据清洗、挑选并推荐。

  • 23
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值