[返回编程技术首页]·[所有跟帖]·[ 回复本帖 ] ·[热门原创] ·[繁體閱讀]·[坛主管理]

ChatGPT|用GPT实现高考志愿系统

送交者: wecode[★★声望品衔9★★] 于 2024-06-19 21:55 已读 731 次  

wecode的个人频道

+关注

数据采集首先用到的想到是爬虫,但是却面临一个问题,数据的异构性,针对每个页面都去写爬虫解析是非常麻烦,而且随着页面变动,可能原来解析方式又需要重新修改,为此结合GPT,出现了很多用GPT解析和整理网页数据的开源项目,其中:ScrapeGraphAI比较好用。


高考出分将近,看到各种高考志愿一对一辅导,其实是利用信息差挣钱,但是随着AI的技术快速发展,数据平权的时代已经到来,信息差不是特定人员的优势。为此,我和小伙伴们利用ChatGPT技术,开发了高考志愿智能填报系统。



图片


志愿系统


体验地址:http://gaokao.su007.club/


邀请码:6mRtf GyJwco rhGXoK qDGln8 OPC7Ys


1、架构设计


架构设计


构建大语言模型的LLM,通过爬虫抓取数据,进行清洗


数据清洗后,按照格式入库到sqlite中


将sqlite按照格式,提供给LLM继续微调


微调后,将模型部署提供API Server对外访问


2、数据采集

数据采集首先用到的想到是爬虫,但是却面临一个问题,数据的异构性,针对每个页面都去写爬虫解析是非常麻烦,而且随着页面变动,可能原来解析方式又需要重新修改,为此结合GPT,出现了很多用GPT解析和整理网页数据的开源项目,其中:ScrapeGraphAI比较好用。


开源地址:https://github.com/VinciGit00/Scrapegraph-ai



ScrapeGraphAI


使用样例:


复制


from scrapegraphai.graphs import SmartScraperGraph

graph_config = {


    "llm": {


        "model": "ollama/mistral",


        "temperature": 0,


        "format": "json",  # Ollama needs the format to be specified explicitly


        "base_url": "http://localhost:11434",  # set Ollama URL


    },


    "embeddings": {


        "model": "ollama/nomic-embed-text",


        "base_url": "http://localhost:11434",  # set Ollama URL


    },


    "verbose": True,


}

smart_scraper_graph = SmartScraperGraph(


    prompt="整理学校信息,包括学校名称、地址 ...",


    source="https://www.gaokao.cn/school/search",


    cnotallow=graph_config


)

result = smart_scraper_graph.run()


print(result)


这里的输出结果由于敏感,所以就不输出;


由于高考数据在互联网上比较多,所以可以搜一些相关的网页都整理到AI Scraper中,自动分析数据;


如果有兴趣的小伙伴可以尝试一下,不过爬虫可能被限制,然后需要遵守法律法规进行数据的爬取;


3、模型微调

数据整理好以后,就可以进行模型微调,解决AI志愿的推荐问题,当然这里又有另一种方式,就是通过few-shot Prompt,通过上下文进行对话,这样也可以达到类似的效果,缺点就是上下文不能太长。


这里微调就使用:LLamaFactory+LLama3,使用界面就可以进行:



LLamaFactory


整理的数据集如下:


复制


[


{


    "conversations": [


        {


            "from": "human",


            "value": "2024年高考600分,希望选北京的学校,该怎么选?"


        },


        {


            "from": "gpt",


            "value": "根据北京2023年xxx录取分数线:{爬取的分数线数据和专业数据},2022年xxx录取分数线:{爬取的分数线数据和专业数据},2021年xxx录取分数线:{爬取的分数线数据和专业数据},推荐...,原因是..."


        },


        ...


    ]


}


]


大约整理了10w条数据,经过一些调整参数最后微调完成以后,就可以部署到API Server中。


6、功能上线


图片



图片



图片

喜欢wecode朋友的这个贴子的话, 请点这里投票,“赞”助支持!

内容来自网友分享,若违规或者侵犯您的权益,请联系我们

所有跟帖:   ( 主贴楼主有权删除不文明回复,拉黑不受欢迎的用户 )


用户名: 密码: [--注册ID--]

标 题:

粗体 斜体 下划线 居中 插入图片插入图片 插入Flash插入Flash动画


     图片上传  Youtube代码器  预览辅助



[ 留园条例 ] [ 广告服务 ] [ 联系我们 ] [ 个人帐户 ] [ 创建您的定制新论坛频道 ] [ Contact us ]