llama-index 数据清洗示例、数据清洗等
文章目录示例数据清洗常见的需要清洗的数据数据清洗知识llama的一小块功能主文章内容太多了拆出来单独说下。示例环境还基于之前的环境。1、新建python文件clean_demo.py代码importosfromllama_index.coreimportDocument,VectorStoreIndex,Settingsfromllama_index.core.ingestionimportIngestionPipelinefromllama_index.core.node_parserimportSentenceSplitter# 引入阿里云百炼fromllama_index.embeddings.dashscopeimportDashScopeEmbeddingfromllama_index.llms.dashscopeimportDashScope# --- 1. 配置 ---API_KEYos.getenv(DASHSCOPE_API_KEY,sk-你的KEY)Settings.llmDashScope(model_nameqwen-plus,api_keyAPI_KEY)Settings.embed_modelDashScopeEmbedding(model_nametext-embedding-v2,api_keyAPI_KEY)# --- 2. 数据 ---raw_texts[LlamaIndex 是一个强大的框架。,LlamaIndex 是一个强大的框架。,# 重复阿里云百炼提供了很好的模型服务。,这是一条垃圾广告买鞋加微信...,# 垃圾数据RAG 技术可以增强大模型的知识库。]documents[Document(textt,metadata{source:tech_docif广告notintelsespam})fortinraw_texts]# --- 3. 流水线与清洗 ---pipelineIngestionPipeline(transformations[# 调大 chunk_size 避免警告SentenceSplitter(chunk_size128,chunk_overlap10),])nodespipeline.run(documentsdocuments)# 【核心修改】物理清洗直接用 Python 列表推导式剔除垃圾数据# 这里我们只保留 source 为 tech_doc 的节点彻底扔掉 spamclean_nodes[nodefornodeinnodesifnode.metadata.get(source)tech_doc]print(f 清洗后节点数量:{len(clean_nodes)})print(✅ 垃圾数据已被物理移除不会进入索引。)# --- 4. 构建索引 ---# 直接传入干净的数据索引里根本就没有垃圾数据查询时自然也就查不到indexVectorStoreIndex(nodesclean_nodes)# --- 5. 查询 (最简单的写法) ---query_engineindex.as_query_engine(similarity_top_k5)# 直接查询不需要传任何 filtersresponsequery_engine.query(LlamaIndex 是什么)print(\n--- 回答 ---)print(response)# 验证来源print(f\n--- 来源验证 (应该只有 tech_doc) ---)fornodeinresponse.source_nodes:print(f- 来源:{node.metadata.get(source)}| 内容:{node.text})输出结果 清洗后节点数量:4✅ 垃圾数据已被物理移除不会进入索引。 --- 回答 --- LlamaIndex 是一个强大的框架。 --- 来源验证(应该只有 tech_doc)--- - 来源: tech_doc|内容: LlamaIndex 是一个强大的框架。 - 来源: tech_doc|内容: LlamaIndex 是一个强大的框架。 - 来源: tech_doc|内容: 阿里云百炼提供了很好的模型服务。 - 来源: tech_doc|内容: RAG 技术可以增强大模型的知识库。解读数据清洗为什么要数据清洗?因为大模型是垃圾进垃圾出如果数据质量不高再好的大模型也分析不出正确的结论。常见的需要清洗的数据缺失值 (Missing Data)表现数据集中某些字段是空的NULL、NaN、空字符串。成因用户未填写、系统采集故障、人工录入遗漏等。重复值 (Duplicate Data)表现同一条记录出现了多次。成因系统多次提交、多数据源合并未去重、人工重复录入。异常值 (Outliers)表现数值明显偏离正常范围如年龄200岁、订单金额为负数。成因录入错误、系统故障或者是真实的极端情况如双11的大额订单。不一致数据 (Inconsistent Data)表现格式、单位、编码不统一。例子日期有的用“2023-01-01”有的用“2023/1/1”性别有的用“男/女”有的用“1/0”。spam数据spam是什么意思呢?垃圾邮件、以及二战时的罐头午餐肉也是这个词总之spam就是表示垃圾的意思。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2473312.html
如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!