当前位置: 首页 > news >正文

书生大模型实战营--L1关卡-Llamaindex RAG实践

一、安装llamaindex库

pip install llama-index
pip install llama-index-embeddings-huggingface

二、问2024年巴黎奥运会 中国队获得几枚金牌,无法回答该问题

三、构建Llamaindex RAG

1、初始化llm

2、构建词向量模型

   下载模型:git clone https://www.modelscope.cn/Xorbits/bge-m3.git

3、构建文档库

文档内容

4、查询2024年巴黎奥运会 中国队获得几枚金牌的答案

5、更新一下奖牌数据,截至07月28日上午11点,各个国家的奖牌数

奖牌统计 - 2024年巴黎奥运会奖牌榜

1. 澳大利亚(Australia):共获得5枚奖牌,其中包括3枚金牌、2枚银牌和0枚铜牌。
2. 中国(China):共获得3枚奖牌,其中包括2枚金牌、0枚银牌和1枚铜牌。
3. 美国(United States of America):共获得5枚奖牌,其中包括1枚金牌、2枚银牌和2枚铜牌。
4. 法国(France):共获得4枚奖牌,其中包括1枚金牌、2枚银牌和1枚铜牌。
5. 大韩民国(Republic of Korea):共获得3枚奖牌,其中包括1枚金牌、1枚银牌和1枚铜牌。
6. 比利时(Belgium):共获得2枚奖牌,其中包括1枚金牌、0枚银牌和1枚铜牌。
6. 日本(Japan):共获得2枚奖牌,其中包括1枚金牌、0枚银牌和1枚铜牌。
6. 哈萨克斯坦(Kazakhstan):共获得2枚奖牌,其中包括1枚金牌、0枚银牌和1枚铜牌。
9. 德国(Germany):共获得1枚奖牌,其中包括1枚金牌、0枚银牌和0枚铜牌。
9. 中国香港(Hong Kong, China):共获得1枚奖牌,其中包括1枚金牌、0枚银牌和0枚铜牌。

按照不同的问题,InternLM2-Chat-1.8B都能回答

六、代码如下

from llama_index.llms.openai_like import OpenAILike
from llama_index.core import Settingsllm = OpenAILike(api_key="EMPTY", # vllm 启动时没有配置,默认就是 EMPTYapi_base="http://0.0.0.0:23333/v1", # 启动 vllm 的ip地址model="internlm2-chat-1_8b", # 启动 vllm 时设置的模型名字temperature="0.8", max_tokens=512
)from llama_index.embeddings.huggingface import HuggingFaceEmbedding
embed_model = HuggingFaceEmbedding(model_name="/root/bge-m3")from llama_index.core import VectorStoreIndex,SimpleDirectoryReader,ServiceContext,PromptTemplate,set_global_service_contextservice_context = ServiceContext.from_defaults(llm=llm, embed_model=embed_model)
set_global_service_context(service_context)documents = SimpleDirectoryReader("/root/data/").load_data()
index = VectorStoreIndex.from_documents(documents)
index.storage_context.persist(persist_dir="./storage")query_engine = index.as_query_engine(streaming=True, similarity_top_k=3)
response_stream = query_engine.query("中国队获得几枚奖牌")
response_stream.print_response_stream()
print("-----"*20)query_engine = index.as_query_engine(streaming=True, similarity_top_k=3)
response_stream = query_engine.query("按金牌统计,中国队排名是第几")
response_stream.print_response_stream()
print("-----"*20)query_engine = index.as_query_engine(streaming=True, similarity_top_k=3)
response_stream = query_engine.query("按金牌统计,第一名是谁")
response_stream.print_response_stream()
print("-----"*20)

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • 正则采集器之三——前端搭建
  • C#插件 调用存储过程(输出参数类型)
  • Ubuntu开机自启配置(基于service:以ROS和docker为例)
  • 计算机毕业设计选题推荐-零食批发商仓库管理系统-Java/Python项目实战
  • Zookeeper源码剖析-ZAB协议选举流程
  • Oracle核心进程详解并kill验证
  • js中map属性
  • vue2 前端实现pdf在线预览(无插件版)
  • “八股文”在程序员面试中的作用及其对实际工作的影响
  • Java整理14
  • C++ 沙漏图案(Hour-glass Pattern)
  • JavaScript_语法_运算符_一元运算符
  • Python面试题:结合Python技术,如何使用Alembic进行数据库迁移管理
  • Spring框架中依赖注入实现手段的选择(基于XML 或 基于注解)
  • 新装centos7虚拟机如何配置网络,NAT配置固定IP
  • SegmentFault for Android 3.0 发布
  • 【347天】每日项目总结系列085(2018.01.18)
  • C++类中的特殊成员函数
  • macOS 中 shell 创建文件夹及文件并 VS Code 打开
  • nodejs实现webservice问题总结
  • SpiderData 2019年2月23日 DApp数据排行榜
  • use Google search engine
  • 初探 Vue 生命周期和钩子函数
  • 从零开始的无人驾驶 1
  • 当SetTimeout遇到了字符串
  • 工作踩坑系列——https访问遇到“已阻止载入混合活动内容”
  • 深入浅出Node.js
  • 我的zsh配置, 2019最新方案
  • 小程序01:wepy框架整合iview webapp UI
  • 正则学习笔记
  • ​LeetCode解法汇总1276. 不浪费原料的汉堡制作方案
  • ​什么是bug?bug的源头在哪里?
  • ​无人机石油管道巡检方案新亮点:灵活准确又高效
  • #[Composer学习笔记]Part1:安装composer并通过composer创建一个项目
  • (6)STL算法之转换
  • (C++)栈的链式存储结构(出栈、入栈、判空、遍历、销毁)(数据结构与算法)
  • (二)pulsar安装在独立的docker中,python测试
  • (解决办法)ASP.NET导出Excel,打开时提示“您尝试打开文件'XXX.xls'的格式与文件扩展名指定文件不一致
  • (一)搭建springboot+vue前后端分离项目--前端vue搭建
  • (已解决)vue+element-ui实现个人中心,仿照原神
  • (转)chrome浏览器收藏夹(书签)的导出与导入
  • (转)shell调试方法
  • (转)平衡树
  • (转)四层和七层负载均衡的区别
  • ****Linux下Mysql的安装和配置
  • .NET C# 使用GDAL读取FileGDB要素类
  • .NET Framework 的 bug?try-catch-when 中如果 when 语句抛出异常,程序将彻底崩溃
  • .Net Remoting(分离服务程序实现) - Part.3
  • .NET WPF 抖动动画
  • .NET 设计一套高性能的弱事件机制
  • .Net(C#)常用转换byte转uint32、byte转float等
  • .NET/ASP.NETMVC 深入剖析 Model元数据、HtmlHelper、自定义模板、模板的装饰者模式(二)...
  • .net开发引用程序集提示没有强名称的解决办法
  • .NET轻量级ORM组件Dapper葵花宝典
  • .Net中的集合