|
ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 1.2em;font-weight: bold;display: table;margin: 4em auto 2em;padding-right: 0.2em;padding-left: 0.2em;background: rgb(0, 152, 116);color: rgb(255, 255, 255);">背景 RAG(检索增强生成) = 检索技术 + LLM 提示。 ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 16px;margin: 1.5em 8px;letter-spacing: 0.1em;color: rgb(63, 63, 63);">比如,我们向 LLM 提问一个问题,RAG 从各种数据源检索相关的信息,并将检索到的信息和问题注入到 LLM 提示中,LLM 最后给出答案。ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 16px;margin: 1.5em 8px;letter-spacing: 0.1em;color: rgb(63, 63, 63);">我们已经熟悉了如何利用大语言模型处理文档文件(word、pdf),提出问题并获得答案。ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 16px;margin: 1.5em 8px;letter-spacing: 0.1em;color: rgb(63, 63, 63);">但是,如何上传一个表格文件,帮助我们能更轻松地利用表格文件中的数据,并从中获得有用的信息,从而支持我们的决策和行动呢?ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 1.2em;font-weight: bold;display: table;margin: 4em auto 2em;padding-right: 0.2em;padding-left: 0.2em;background: rgb(0, 152, 116);color: rgb(255, 255, 255);">LLM+表格文件结合能实现的功能ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 16px;margin: 1.5em 8px;letter-spacing: 0.1em;color: rgb(63, 63, 63);">比如:ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 16px;margin: 1.5em 8px;letter-spacing: 0.1em;color: rgb(63, 63, 63);">1、自然语言查询:我们可以通过自然语言查询CSV文件中的数据,而无需掌握Excel里的高级查询函数。ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 16px;margin: 1.5em 8px;letter-spacing: 0.1em;color: rgb(63, 63, 63);">2、数据摘要:可以从CSV文件中提取特定列或行的摘要信息,如总和、平均值、最值等。ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 16px;margin: 1.5em 8px;letter-spacing: 0.1em;color: rgb(63, 63, 63);">3、数据过滤:根据提供的条件,在CSV文件中筛选出满足条件的数据。ingFang SC", "Hiragino Sans GB", "Microsoft YaHei UI", "Microsoft YaHei", Arial, sans-serif;font-size: 16px;margin: 1.5em 8px;letter-spacing: 0.1em;color: rgb(63, 63, 63);">4、数据分析:生成相应的报告、图表或可视化结果。3、数据预测:使用机器学习模型进行预测。 效果




代码下载路径:https://github.com/lurenss/matrix-mind 如何使用:1、在终端上运行:docker-compose up
2、访问http://localhost:8080/
3、输入OpenAiAPI密钥
4、上传您的csv文件
5、开始聊天
技术栈:前端:Vue、HTML、JavaScript 后端:Python 容器化:Dockerfile 主要代码:fromfastapiimportFastAPI,HTTPException fromfastapi.responsesimportJSONResponse
#创建一个FastAPI应用 app=FastAPI()
#定义一个全局变量,用于存储CSV文件的路径 path_df=None
#创建一个路由,用于处理GET请求 @app.get("/first_generate") deffirst_generate(): """ 生成一个基于上传的 CSV 文件的 AI 生成的响应。
Returns: dict:包含 AI 生成响应的消息。 """ try: #全局变量声明 globalpath_df
#如果没有上传CSV文件,则抛出ValueError ifpath_dfisNone: raise ValueError("CSV 文件未上传。请先上传 CSV 文件。")
#用户消息 user_msg="Whatarethecolumnsofthisdataset?Answerwithasentenceplease."
#调用函数创建一个处理CSV文件的agent csv_agent=create_csv_agent(llm,path_df,verbose=True,agent_type=AgentType.OPENAI_FUNCTIONS)
#运行agent msg=csv_agent.run(user_msg)
#打印USER消息和AI响应 print("USER:"+user_msg) print("AI:"+msg)
#返回包含AI生成响应的消息 return{"message":msg}
exceptValueErrorase: print("发生错误:",e) returnJSONResponse(status_code=400,content={"message":str(e)})
exceptExceptionase: print("发生错误:",e) return JSONResponse(status_code=500, content={"message":"内部服务器错误。"})
|