ChatExcel?

news2025/1/13 13:30:03

大家好,我是章北海mlpy
最近在浅学LangChain,在大模型时代,感觉这玩意很有前途。

LangChain是一个开源的应用开发框架,目前支持Python和TypeScript两种编程语言。

它赋予LLM两大核心能力:数据感知,将语言模型与其他数据源相连接;代理能力,允许语言模型与其环境互动。

LangChain的主要应用场景包括个人助手、基于文档的问答、聊天机器人、查询表格数据、代码分析等。

之前大火的ChatPDF应该就是用LangChain实现的
昨晚又看到一个有趣的实例:Chat with CSV&Excel using LangChain and OpenAI,蛮粗糙的,感觉可以用Gradio加个前端,或许有点意思。

https://github.com/amrrs/csvchat-langchain

源代码有TypeError的bug,我改了一下,可以跑通了,有感兴趣的可以直接复制。

# -*- coding: utf-8 -*-

from langchain.document_loaders import CSVLoader
from langchain.indexes import VectorstoreIndexCreator
from langchain.chains import RetrievalQA
from langchain.llms import OpenAI
import os
os.environ["OPENAI_API_KEY"] = "sk-你的API"
!wget https://gist.githubusercontent.com/armgilles/194bcff35001e7eb53a2a8b441e8b2c6/raw/92200bc0a673d5ce2110aaad4544ed6c4010f687/pokemon.csv 
# Load the documents
import csv
loader = CSVLoader(file_path='/Users/huhaiyang/projs/myrepo/pokemon.csv', csv_args={
    'delimiter': ','})
# Create an index using the loaded documents
index_creator = VectorstoreIndexCreator()
docsearch = index_creator.from_loaders([loader])
# Create a question-answering chain using the index
chain = RetrievalQA.from_chain_type(llm=OpenAI(), chain_type="stuff", retriever=docsearch.vectorstore.as_retriever(), input_key="question")

# Pass a query to the chain
query = "Do you have a column called age?"
response = chain({"question": query})
print(response['result'])

我简单测试了,胡说八道含量很高。

后期再深入研究吧,看是否可以达到简单统计,甚至实现透视表的程度。
基于ChatGPT,论文写作工具

围绕 ChatGPT,赚了点小钱

国内可用 ChatGPT 客户端下载

数据分析入门:统计学基础知识总结

可能是全网最全的速查表:Python Numpy Pandas Matplotlib 机器学习 ChatGPT

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/488348.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

5月1日起正式实施!图解《关键信息基础设施安全保护要求》

2023年5月1日,GB/T 39204-2022《信息安全技术 关键信息基础设施安全保护要求》将正式实施。作为我国第一项关键信息基础设施安全保护的国家标准,对于我国关键信息基础设施安全保护有着极为重要的指导意义。 《信息安全技术 关键信息基础设施安全保护要求…

Swift 技术 监听电话中断,音乐(用于恢复播放音乐)(源码)

一直觉得自己写的不是技术,而是情怀,一个个的教程是自己这一路走来的痕迹。靠专业技能的成功是最具可复制性的,希望我的这条路能让你们少走弯路,希望我能帮你们抹去知识的蒙尘,希望我能帮你们理清知识的脉络&#xff0…

【高烧39°考研上岸】23上交819考研经验分享

笔者来自通信考研小马哥23上交819全程班学员 一,基本情况介绍和考研经历 大家好,首先介绍一下我的基本情况。我本科毕业于东南大学,报考的是上海交通大学电子系电子与通信工程专业(专业学位)。我二战上岸&#xff0c…

Selenium:HTML测试报告

自动化测试过程中,获得用例的执行结果后,需要有具象化、简洁明了的测试结果,比如:用例执行时间、失败用例数、失败的原因等,这时候,就需要用到测试报告。 HTML测试报告是python语言自带的单元测试框架&…

等保各项费用支出明细

等保收费主要依据文件: 等保工作的定级指南文件_luozhonghua2000的博客-CSDN博客 Q7:做等级保护要多少钱? 答:开展等级保护工作主要包含:规划费用、建设或整改费用、运维费用、测评费用等,具体费用因各单位现状、保护对象承载业务功能、重要程度、所在地区等差异较大。 …

Input事件在应用中的传递(一)

Input事件在应用中的传递(一) hongxi.zhu 2023-4-25 前面我们已经梳理了input事件在native层的传递,这一篇我们接着探索input事件在应用中的传递与处理,我们将按键事件和触摸事件分开梳理,这一篇就只涉及按键事件。 一、事件的接收 从前面的…

Kubernetes(k8s)概念介绍

文章目录 1. k8s概述和特性2. k8s架构组件3. k8s核心概念 1. k8s概述和特性 K8s是一个开源的用于管理云平台中多个主机上的容器化的应用,k8s的目标是让部署容器化的应用简单并且高效,k8s提供了应用部署,规划,更新,维护…

R语言 | 程序的流程控制

目录 一、if语句 1.1 if语句的基本操作 1.2 if...else语句 1.3 if语句也可有返回值 1.4 if...else if...else if...else 1.5 嵌套式if语句 二、递归式函数的设计 三、向量化的逻辑表达式 3.1 处理向量数据if...else的错误 3.2 ifelse()函数 四、switch语句 五、for循…

塔望3W消费战略全案丨窄赛道,高增长 普麦尔知己精酿,掘金中国啤酒利基市场

普麦尔 知己精酿 客户:上海麦仕醇啤酒有限公司 品牌:普麦尔 purmalz beer 服务:3W消费战略 品牌全案 掘金中国啤酒利基市场 精酿啤酒(Craft Beer)的概念最早起源于美国。通常与传统的工业啤酒形成较大的反差,精酿最早的称呼 …

C learning_10 (函数的嵌套调用和链式访问、函数的声明和定义、函数递归)

目录 函数的嵌套调用和链式访问 嵌套调用 函数可以嵌套调用,可以嵌套定义吗? 链式访问 函数的声明和定义 声明 定义 函数递归 递归的两个必要条件 函数的嵌套调用和链式访问 嵌套调用 函数嵌套调用指的是在一个函数中调用另外一个函数&#xf…

OpenSSH升级版本

项目被扫出openssh有严重漏洞,因此要升级openssh到最新版本 1、为防止安装失败,无法用ssh做远程连接,因此先安装telnet防一手 yum -y install telnet*systemctl enable telnet.socketsystemctl start telnet.socket注:安全文件关…

【星戈瑞】脂溶性CY5.5马来酰亚胺Cyanine5.5 maleimide

脂溶性CY5.5马来酰亚胺是一种荧光染料,其分子中含有马来酰亚胺结构,结构中的共轭体系赋予其良好的光学性质。该染料在红外区域有较强的吸收峰,具有较高的荧光量子产率和较长的荧光寿命,因此被应用于细胞和生物分子的荧光标记和成像…

cleanmymac正式版mac电脑清理软件

电脑清理软件在我们的电脑使用过程中是非常实用便捷的清理软件.当电脑使用了一段时间内,电脑就会产生各种各样的垃圾文件,比如说残留的注册表或者无效的注册表,系统碎片以及毫无用处的文件等,这些的存在将会极大程度地拖慢电脑的运行速度,而你删除的话可能会删除本不能删除的文…

解锁新技能《Java绘制2D图形验证码方法》

一、常见的图形验证码有如下三种: 字母数字混合(干扰线);纯数字(干扰线);纯字母(干扰线); 二、示例图如下: 三、案例代码 问题一:绘…

LC-2106. 摘水果(滑动窗口)

2106. 摘水果 难度困难78 在一个无限的 x 坐标轴上,有许多水果分布在其中某些位置。给你一个二维整数数组 fruits ,其中 fruits[i] [positioni, amounti] 表示共有 amounti 个水果放置在 positioni 上。fruits 已经按 positioni 升序排列 &#xff0c…

C语言动态内存管理与文件操作:打造高效通讯录

本篇博客会讲解如何使用C语言实现一个通讯录。实现通讯录的过程中,会大量用到C语言的知识点,包括但不限于:函数、自定义类型、指针、动态内存管理、文件操作,这些知识点在我的其他博客中都有讲解过,欢迎大家阅读&#…

进程及进程管理

Linux基础 提示:个人学习总结,仅供参考。 一、Linux系统部署 二、服务器初始化 三、文件和用户管理 四、用户的权限 五、进程及进程管理 提示:文档陆续更新整理 进程及进程管理 Linux基础一、进程简介(一)进程三问…

面向万物智联的应用框架的思考和探索(上)

原文:面向万物智联的应用框架的思考和探索(上),点击链接查看更多技术内容。 应用框架,是操作系统连接开发者生态,实现用户体验的关键基础设施。其中,开发效率和运行体验是永恒的诉求&#xff0c…

代码命名规范是真优雅呀!代码如诗

日常编码中,代码的命名是个大的学问。能快速的看懂开源软件的代码结构和意图,也是一项必备的能力。那它们有什么规律呢? Java项目的代码结构,能够体现它的设计理念。Java采用长命名的方式来规范类的命名,能够自己表达…

网络安全怎么学,才不会成为脚本小子?

一,怎么入门? 1、Web 安全相关概念(2 周) 了解网络安全相关法律法规 熟悉基本概念(SQL 注入、上传、XSS、CSRF、一句话木马等)。 通过关键字(SQL 注入、上传、XSS、CSRF、一句话木马等&#…