本文主要是介绍【大模型实战】基于大模型的中国历史智能助手项目分享:史小白,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
一、简介
在当下的AI热潮中,我完成了一个基于大模型的项目——史小白 - 中国历史智能助手。
可用于帮助用户探索和学习中国历史。项目基于InternLM大模型技术,提供了多种功能,包括:
- 历史问答:用户可以提出中国历史相关的问题,史小白将提供详细且准确的回答。
- 文言文翻译:能够将古代文献翻译成现代汉语,方便用户理解文言文。
- 联网检索:对于最新的事情,史小白也可以通过搜索引擎得到答案。
- 中国古风图片生成:根据用户的需求生成具有中国古代风格的图片,增强历史学习的趣味性。
通过整合现代人工智能技术,史小白致力于为历史爱好者提供一个便捷的学习平台。
在我的B站视频【史小白 - 中国历史智能助手】中,我详细展示了项目架构、功能模块以及实际运行效果。希望通过这个视频,能够启发更多开发者利用AI技术做出有趣的项目。欢迎大家观看、一键三连~
【大模型项目】史小白——中国历史智能助手
二、效果展示
2.1 自我认知
2.2 文言文翻译
2.3 RAG检索效果
2.4 联网查询效果
2.5 画图Agent
三、相关技术
3.1 数据准备
在这个模块,系统支持多种数据格式,包括:
- Markdown、PDF、Word、音频、视频等多种媒体类型
- JSON、HTML等结构化数据
- 多语言的内容
这些多模态、多语言的数据会通过嵌入模型(Embedding Model)进行处理,生成对应的语义向量(Semantic Vector)。这个向量代表了数据的内容及其含义,便于后续的搜索和查询。
生成的语义向量被存储到向量数据库中,供之后的数据检索使用。数据库不仅支持存储,还可以进行高效的向量化数据检索。
3.2 数据检索
在这一部分,用户输入一个问题,例如“我想了解秦朝的政治制度?”。这个问题首先会被转化为一个查询向量。查询向量是通过嵌入模型处理问题文本生成的。
系统通过对比查询向量和数据库中的语义向量,找出与问题最相关的知识点。这个过程会返回一个相关性分数,用以确定哪个知识点最符合用户的查询。
根据相关性分数,系统会选择最合适的知识,并返回相关的答案,例如“秦朝的政治制度以中央集权为基础……”等。
3.3 大模型生成
大模型生成模块史小白(基于InternLM 2.5 7b),它在回答用户问题时使用了多个工具和方法:
- Agent工具(基于LAgent):它可以帮助系统执行联网查询和古风图片生成等任务。用户的问题如果涉及到网络查询,系统可以调用联网工具进行实时信息检索;如果用户需要生成古风图片,系统可以调用图片生成工具。
- 数据微调(基于Xtuner):大模型的输出经过数据微调,确保生成的内容更加符合特定任务的需求。
- 任务定制(Prompt):通过定制化的任务提示词,进一步优化和指导模型的输出。
最后,史小白将结合所有查询结果、数据微调和定制化提示词,生成用户需要的答案。
四、致谢
感谢InternLM团队举办的书生大模型实战营(第三期闯关大挑战)!
GitHub地址:https://github.com/colorfulandcjy0806/shixiaobai
OpenXLab地址:OpenXLab浦源 - 模型中心
这篇关于【大模型实战】基于大模型的中国历史智能助手项目分享:史小白的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!