小爱打工,你躺平!让「微信AI小助理」接管你的文件处理,一个字:爽!

picture.image

猴哥的第 90 期分享,欢迎追看

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

最近一直在迭代中,挖掘小爱的无限潜力:

有朋友问小爱:能接收word、excel、pdf等各种文件吗?要是能帮我处理各种文件,岂不是很爽?

小爱:今天就安排!

今日分享,将继续基于wechatbot-wehook框架,带大家实操:如何接收微信文件,并进行处理,让小爱接管你的文件处理工作,助力你上班摸鱼

  1. 接收微信文件

微信消息中所有文件,在 FastAPI 中都可以用 UploadFile 类处理。

此外,UploadFile 是设计为异步的,故支持大文件的高效上传和处理。

其中,content_type 代表文件的 MIME 类型(媒体类型),主要分为以下几类:

  1. 文本类型
  • 文本文件:如 text/plain
  1. 图像类型
  • JPEG 图像:如 image/jpeg
  1. 音频类型
  • MP3 音频:如 audio/mpeg3 或 audio/mp3
  1. 视频类型
  • MP4 视频:如 video/mp4
  1. 应用程序类型
  • PDF 文件:如 application/pdf
  • Microsoft Word 文档

下面是接收文件并下载的示例代码:

  
@app.post("/receive")  
async def receive_message(request: Request):  
    data = await request.form()  
    message_type = data.get("type")  
    content = data.get("content")  
    # 下载文件  
    if message_type == 'file':  
        with open(f"./output/{content.filename}", "wb") as buffer:  
            bin = await content.read()  
            buffer.write(bin)  

上一篇,我们主要介绍了如何处理音频文件。

本篇将以最常见的 pdf 为例,介绍如何处理 pdf 并返回。

  1. 文本提取

当你给小爱发送一份 pdf 文件,后台接收到的文件如下:

  
UploadFile(filename='学会写作.pdf', size=1381979, headers=Headers({'content-disposition': 'form-data; name="content"; filename="å\xad¦ä¼\x9aå\x86\x99ä½\x9c.pdf"', 'content-type': 'application/pdf'}))  

文件类型为application/pdf

关于如何处理pdf 文件,可以参看猴哥之前的【Python实战】教程:

这里我们以提取 pdf 文本为例进行演示:

  
from PyPDF2 import PdfReader  
def pypdf_to_txt(input_pdf):  
    pdf_reader = PdfReader(input_pdf)  
    texts = []  
    for page_num in range(len(pdf_reader.pages)):  
        page = pdf_reader.pages[page_num]  
        text = page.extract_text()  
        texts.append(text)  
    return '\n'.join(texts)  

  1. 文本摘要

得到文本后,就可以交给 LLM 帮我们提炼总结一下内容要点。有了文本摘要,我就无需再去翻阅长文,省时提效利器,有没有?

这个任务非常简单,甚至无需编写角色提示词:

  
unillm = UniLLM()  
messages = [{'role': 'user', 'content': f'帮我提炼这篇文章的主要观点:{text}'}]  
res = unillm(['glm4-9b'], messages=messages)  

我把《学会写作》这本书发给了它,可以看到提炼的还是很精准的:

picture.image

有需要这本书的公众号后台自取。

  1. 更多玩法

不管是 word 还是 pdf,只要拿到源文件,你想实现任何功能,还不简单?底层逻辑都是一样的:把流程标准化,然后让程序自动执行,最终让小爱交给你~

比如,我可以让它帮我把 pdf 去水印/加水印,然后返回给我。

写在最后

本文给大家展示了一个处理pdf文件的简单案例,懒人必备神器!

大家有更好的想法,欢迎评论区交流。

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


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

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

👇 关注猴哥,快速入门AI工具

picture.image

# AI 工具:

本地部署大模型?看这篇就够了,Ollama 部署和实战

# AI应用** :**

弃坑 Coze,我把 Dify 接入了个人微信,AI小助理太强了

中国版 Whisper 来了,5分钟带你部署体验

# 效率工具:

电脑微信双开/多开?两种方法任你挑,1分钟搞定

0
0
0
0
评论
未登录
暂无评论