首页 最新 热门 推荐

  • 首页
  • 最新
  • 热门
  • 推荐

链接丢给它,精华吐出来!微信AI小助理又行了,附完整提示词

  • 25-03-02 12:02
  • 4366
  • 8051
blog.csdn.net

前两天,搞了个微信 AI 小助理,爸妈玩的不亦乐乎。

  • 零风险!零费用!我把AI接入微信群,爸妈玩嗨了,附教程(上)
  • 零风险!零费用!我把AI接入微信群,爸妈玩嗨了,附教程(下)

有朋友问,还能干点啥?

可玩的花样可多了~

最近关注的公众号有点多,根本看不完。我在想:把链接丢给小助理,让它帮我把文章大纲整理出来,这样岂不双赢:既不会遗漏重要内容,又节省了大量时间。

说干就干!

前两篇整体框架已经搭建好了,现在做的无非就是给小助理装上三头六臂!

本文将手把手带大家,实现小助理的 AI 摘要功能。

整个过程只需 4 步:

  • 获取微信公众号文章链接;
  • 爬取文章内容;
  • 编写提示词,调用 LLM 进行总结;
  • 调用发送消息接口,返回摘要内容。

话不多说,上实操!

友情提醒:注册小号使用,严禁用于违法用途(如发送广告/群发/诈骗、色情、政治等内容),否则封号是早晚的事哦。

1. 获取文章链接

微信公众号文章转发到微信,消息类型是 urlLink。

为此,只需要在上篇处理消息的逻辑基础上,修改下路由,单独处理urlLink类型的消息:

def handle_message(message_type='text', content='', source='', is_from_self="0"):
    if is_from_self == "1":
        return
    if message_type == "text":
        bot_answer = handle_text(content)
    if message_type == "urlLink":
        bot_answer = handle_url(content)
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

消息内容 content 中有一个 url 字段,这就是文章链接。

拿到文章链接,我们就可以写一个爬虫,爬取文章完整内容。

2. 爬取文章内容

爬取文章内容的方式有很多。

之前给大家分享 dify 使用教程 时,用过firecrawl这个爬虫插件,把网页自动转存为 markdown 内容,非常方便,免费用户有使用额度。

如果不想装整个插件,那么我们完全可以自己动手,写一个简单的爬虫!

只需要用到requests和bs4即可:

import requests
from bs4 import BeautifulSoup
response = requests.get(url, headers=headers)
soup = BeautifulSoup(response.text, 'html.parser')
content = soup.find('div', attrs={'id': 'js_content'}) # html文件
  • 1
  • 2
  • 3
  • 4
  • 5

上面得到的内容是 html 格式,当然直接把它送给 LLM 也是没问题的。

如果吝啬你宝贵的 Token 资源,那么强烈建议你用上这个库:html2text,一键将html 转存成 markdown。

import html2text
h = html2text.HTML2Text()
markdown_content = h.handle(str(content))
  • 1
  • 2
  • 3

有了文章内容,接下来我们送给 LLM,让它给提炼出文章大纲。

3. 调用 LLM 进行总结

直接丢给 LLM 么?

当然可以,但如果希望得到的结果可控且可靠,最好设计下角色提示词。

下面是我针对这个任务,编写的提示词,供小伙伴们参考:

sys_prompt_kp = '''
    - Role: 文章分析专家
    - Background: 用户需要对一篇给定的文章进行关键点总结,并生成文章的大纲。
    - Profile: 你是一位经验丰富的编辑,擅长提炼文章核心思想和结构化信息。
    - Skills: 文章阅读、关键点提取、信息组织、大纲创建。
    - Goals: 帮助用户从文章中提取关键点,并生成清晰的大纲。
    - Constrains: 确保大纲简洁明了,覆盖文章所有主要观点。
    - OutputFormat: 文章大纲,以列表形式呈现。
    - Workflow:
    1. 阅读并理解文章内容。
    2. 提取文章中的关键点和主要论点。
    3. 根据提取的关键点创建文章大纲。
    4. 只输出markdown格式的文章大纲,不要回答其他任何内容。
    '''
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14

来吧,这下应该没什么问题了:

def article_summary(data, model_name='gemini-1.5-pro'):
    messages = [
        {'role': 'system', 'content': sys_prompt_kp},
        {'role': 'user', 'content': data['content']},
    ]
    summary = unillm(model_name, messages)
    return summary
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

4. 调用发送消息接口

最后,我们把上面两个函数打包一下:

def handle_url(content='', url=''):
    # 处理公众号链接
    if content:
        content = json.loads(content)
        url = content['url']
    if 'weixin.qq.com' in url:
        data = get_gzh_article(url, content_only=False)
    else:
        data = {}
    summary = article_summary(data, model_name='gemini-1.5-flash')
    return summary
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11

一旦判定消息类型为 urlLink,直接调用上面的 handle_url 进行处理,并将结果用上篇提到的发送消息接口进行返回。

注:后面发现,转发文章中的链接,简单的爬虫无法搞定:当前环境异常,完成验证后即可继续访问。

所以:退而求其次,直接发送原文链接。

暂且先这么搞吧,小伙伴有其它方法的,欢迎评论区交流。

5. 看看效果吧

先找一篇技术干货,把之前写的 Ollama 教程发给它:本地部署大模型?Ollama 部署和实战,看这篇就够了

再来一篇宣传软文:

怎么样?

写在最后

终于,给小爱装上了阅读理解神器,以后再也不用担心错过重要文章了。

不管是硬核技术文还是软萌广告文,链接丢给它,精华吐出来。

我不想读,但我想知道的必备神器!

当然,小爱还有无限想象空间,之前部署了很多 AI 服务,我打算慢慢接进来,把小爱打造成身边的超级助理!

大家有什么需求 or 想法,欢迎评论区交流。

如果本文对你有帮助,不妨点个免费的赞和收藏备用。


为了方便大家交流,新建了一个 AI 交流群,欢迎感兴趣的小伙伴加入。

小爱也在群里,想进群体验的朋友,公众号后台「联系我」即可,拉你进群。

猴哥的AI知识库
微信公众号
AI全栈工程师,帮助零基础编程小白入门AI
注:本文转载自blog.csdn.net的AI码上来的文章"https://blog.csdn.net/u010522887/article/details/141924070"。版权归原作者所有,此博客不拥有其著作权,亦不承担相应法律责任。如有侵权,请联系我们删除。
复制链接
复制链接
相关推荐
发表评论
登录后才能发表评论和回复 注册

/ 登录

评论记录:

未查询到任何数据!
回复评论:

分类栏目

后端 (14832) 前端 (14280) 移动开发 (3760) 编程语言 (3851) Java (3904) Python (3298) 人工智能 (10119) AIGC (2810) 大数据 (3499) 数据库 (3945) 数据结构与算法 (3757) 音视频 (2669) 云原生 (3145) 云平台 (2965) 前沿技术 (2993) 开源 (2160) 小程序 (2860) 运维 (2533) 服务器 (2698) 操作系统 (2325) 硬件开发 (2492) 嵌入式 (2955) 微软技术 (2769) 软件工程 (2056) 测试 (2865) 网络空间安全 (2948) 网络与通信 (2797) 用户体验设计 (2592) 学习和成长 (2593) 搜索 (2744) 开发工具 (7108) 游戏 (2829) HarmonyOS (2935) 区块链 (2782) 数学 (3112) 3C硬件 (2759) 资讯 (2909) Android (4709) iOS (1850) 代码人生 (3043) 阅读 (2841)

热门文章

101
推荐
关于我们 隐私政策 免责声明 联系我们
Copyright © 2020-2025 蚁人论坛 (iYenn.com) All Rights Reserved.
Scroll to Top