【AI大模型应用综合实战】AI+搜索,手把手带你实现属于你的AI搜索引擎(附完整代码)

   日期:2024-12-26    作者:rqhg888 移动:http://ljhr2012.riyuangf.com/mobile/quote/43106.html

现在市面上有很多的AI+搜索的应用或插件,一直想学习其背后的实现原理。今天咱们就学习一下,并且亲自动手实践,从0开始,搭建一个自己的AI搜索引擎。最终实现效果如下

【AI大模型应用综合实战】AI+搜索,手把手带你实现属于你的AI搜索引擎(附完整代码)

话不多说,开干。

本文代码参考:mp.weixin.qq.com/s/6F22Mls7z… 的API。

先来搞定框架。

代码中,服务端使用了Python + Flask框架,前端使用HTML。通过 Flask的render_template函数渲染HTML页面。render_template 函数是 Flask 提供的一个工具,用于渲染 Jinja2 模板。Jinja2 是一个 Python 的模板引擎,它允许你在 HTML 文件中使用 Python 变量和表达式。

代码如下

 

代码中,HTML页面的名称为 “ai_search.html”。

注意,在使用此种方法渲染HTML页面时,需要将HTML文件放到templates文件夹下,否则找不到文件,报错。

服务端就是利用Flask封装一个个地接口,然后进行相应处理。

1.1 Search接口

 

Search接口接收用户输入的关键字,然后调用 接口去获取检索结果。

1.1.1 crawl_pages接口
 

该接口通过关键字来去固定网页去检索该关键字,获取前两页的检索结果,通过前两页的检索结果,通过爬虫,将结果的标题和URL提取出来。

(1,这是表明去哪个网页搜索这个关键字。这个链接相当于以下操作,去CCTV网搜关键字

(2)通过简单的爬虫,将以上获取到的检索结果界面中的所有结果的URL和标题提取出来,例如这一句,提取URL。

(3)然后你就会获得一堆的URL,返回给Search接口后,通过 组装结果,插入到HTML中去显示。也就是侧边栏的效果

1.2 generate-text接口

 

该接口是将用户输入的关键字当作Prompt,给大模型,让大模型根据这个信息回复点什么东西。中间没有什么特别的处理。要说值得注意的,就是 来将对话信息添加到历史记录里面。

 

这一步的效果如下,与检索毫无关系

1.3 page_content接口

该接口是通过URL来获取网页内容。就是一个简单的爬虫程序,将网页中的文字和图片提取出来。

 
 

2.1 用户输入关键字后的动作

先来看下前端HTML代码中,当用户点击提交按钮后的动作,重点是下面几行。

 

可以看到,当用户点击提交按钮后,首先调用了 getA 函数

 

getA函数,调用了服务端的 Search接口,去固定网页检索关键字,获取URL和标题列表。

然后,紧接着调用了 generateText 函数

 

generateText 函数,调用了服务端的 generate-text 函数,利用大模型进行回复。

2.2 用户点击侧边栏标题后的动作

当用户点击侧边栏的某个标题后,执行的动作如下

 

首先,调用了 getPageContent 接口,通过服务端的 page_content 接口,爬取了该URL中的所有文字内容和图片内容。

然后,通过 generateText 接口,调用服务端的 generate-text 接口,使用大模型对这些文字内容进行总结,从而形成下面的效果

3.1 ai_search.html

 

3.2 ai_search.py

 

3.3 运行

运行 ai_search.py,打开提示中链接。

3.4 可能需要安装的依赖

 

3.5 一定是通过Jinja2加载HTML,而不是直接打开HTML

直接打开HTML文件会显示异常

本文我们从0开始写了一个AI+搜索的搜索引擎。整体原理还是比较简单的,搜索的原理就是固定URL+关键字,然后爬取网页内的标题和URL,就算是结果了。至于文本总结就更不用多说了,前面的文章详细介绍和实践过。

这个例子很简单,但应该算比较完整了,可以作为后续类似项目的快速开始,在此基础上快速搭建出自己的原型产品。

大家可以上手运行一下,然后运行过程中,你会对这个例子产生一些改进的想法。

有改进的想法,可以一起交流~

大模型时代,火爆出圈的LLM大模型让程序员们开始重新评估自己的本领。 “?”“”等问题热议不断。

事实上

继等巨头公司发布AI产品后,很多中小企业也陆续进场超高年薪,挖掘AI大模型人才 如今大厂老板们,也更倾向于会AI的人,普通程序员,还有应对的机会吗

与其焦虑……

不如成为「」,毕竟AI时代谁先尝试,谁就能占得先机

但是LLM相关的内容很多,现在网上的老课程老教材关于LLM又太少。所以现在小白入门就只能靠自学,学习成本和门槛很高。

针对所有自学遇到困难的同学们,我帮大家系统梳理大模型学习脉络,将这份 分享出来:包括等, 😝有需要的小伙伴,可以 扫描下方二维码领取🆓↓↓↓

👉CSDN大礼包🎁:全网最全《LLM大模型入门+进阶学习资源包》免费分享(安全链接,放心点击👈

AI大模型已经成为了当今科技领域的一大热点,那以下这些大模型书籍就是非常不错的学习资源。

这套包含640份报告的合集,涵盖了大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。(几乎涵盖所有行业)

四、LLM大模型开源教程(LLaLA/Meta/chatglm/chatgpt

阶段1:AI大模型时代的基础理解

  • 目标:了解AI大模型的基本概念、发展历程和核心原理。

  • 内容

    • L1.1 人工智能简述与大模型起源
    • L1.2 大模型与通用人工智能
    • L1.3 GPT模型的发展历程
    • L1.4 模型工程
    • L1.4.1 知识大模型
    • L1.4.2 生产大模型
    • L1.4.3 模型工程方法论
    • L1.4.4 模型工程实践
    • L1.5 GPT应用案例

阶段2:AI大模型API应用开发工程

  • 目标:掌握AI大模型API的使用和开发,以及相关的编程技能。

  • 内容

    • L2.1 API接口
    • L2.1.1 OpenAI API接口
    • L2.1.2 Python接口接入
    • L2.1.3 BOT工具类框架
    • L2.1.4 代码示例
    • L2.2 Prompt框架
    • L2.3 流水线工程
    • L2.4 总结与展望

阶段3:AI大模型应用架构实践

  • 目标:深入理解AI大模型的应用架构,并能够进行私有化部署。

  • 内容

    • L3.1 Agent模型框架
    • L3.2 MetaGPT
    • L3.3 ChatGLM
    • L3.4 LLAMA
    • L3.5 其他大模型介绍

阶段4:AI大模型私有化部署

  • 目标:掌握多种AI大模型的私有化部署,包括多模态和特定领域模型。

  • 内容

    • L4.1 模型私有化部署概述
    • L4.2 模型私有化部署的关键技术
    • L4.3 模型私有化部署的实施步骤
    • L4.4 模型私有化部署的应用场景

这份 包括等, 😝有需要的小伙伴,可以 扫描下方二维码领取🆓↓↓↓

👉CSDN大礼包🎁:全网最全《LLM大模型入门+进阶学习资源包》免费分享(安全链接,放心点击👈


特别提示:本信息由相关用户自行提供,真实性未证实,仅供参考。请谨慎采用,风险自负。


举报收藏 0评论 0
0相关评论
相关最新动态
推荐最新动态
点击排行
{
网站首页  |  关于我们  |  联系方式  |  使用协议  |  隐私政策  |  版权隐私  |  网站地图  |  排名推广  |  广告服务  |  积分换礼  |  网站留言  |  RSS订阅  |  违规举报  |  鄂ICP备2020018471号