PyLMKit(9):ChatTable与你的表格聊天,表格问答

功能介绍

与你的结构化数据聊天:支持主流数据库、表格型excel等数据!

  • ChatDB:支持数据库问答
  • ChatTable:支持txt,excel,csvpandas dataframe表格的问答

1.下载安装

pip install pylmkit -U
pip install pandasql

2.ChatTable实现样例

样例数据下载:(1000行员工信息)
employees.csv
可以在python运行,也可以streamlit Web运行。文件名为demo.py

import streamlit as st
from pylmkit.web.webui import ChatDBWebUI
from dotenv import load_dotenv
from pylmkit.app.chatdb import ChatTable
from pylmkit.llms import ChatTongyi
load_dotenv()file_path = r'C:\Users\xxx\Desktop\pylmkit\test_datasets\employees.csv'
include_table_column_comments = {"employees": {"name": "雇员名单表","columns": {"emp_no": "雇员ID","birth_date": "出生日期","first_name": "名字","last_name": "姓氏","hire_date": "雇佣日期","gender": "性别",}}
}# python中运行
# chattable = ChatTable(
#     model=ChatTongyi(),
#     table_paths=file_path,
#     include_table_column_comments=include_table_column_comments
# )
# res = chattable.invoke(
#     question="性别为M的员工有多少人?"
# )
# print(res)# web中运行
if 'chattable' not in st.session_state:st.session_state.chattable = ChatTable(model=ChatTongyi(),table_paths=file_path,include_table_column_comments=include_table_column_comments)
web = ChatDBWebUI(language='zh')web.run(obj=st.session_state.chattable.invoke,input_param=[{"name": "question", "label": "输入", "type": "chat"},{"name": "max_rollback_num", "label": "最大回滚数", "type": "int", "value": 5},{"name": "return_dict", "label": "返回字典", "type": "bool", "value": False},],output_param=[{'label': '结果', 'name': 'ai', 'type': 'chat'},]
)

然后在该路径下的终端运行下面命令:

streamlit run demo.py

默认会打开浏览器网页,也可以通过网址访问: http://localhost:8501/
image.png

GitHub
GitHub - 52phm/pylmkit: PyLMKit: 帮助用户快速构建实用的大模型应用

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

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

相关文章

Meta 如何将缓存一致性提高到 99.99999999

介绍 缓存是一项强大的技术,广泛应用于计算机系统的各个方面,从缓存等硬件到操作系统、Web 浏览器,尤其是后端开发。对于像 Meta 这样的公司来说,缓存非常重要,因为它可以帮助他们减少延迟、扩展繁重的工作负载并节省资金。由于它们的用例缓存量很大,因此给它们带来了另…

【AI+儿童绘本】从0到1制作儿童绘本故事操作思路

今天刷了会小H书,无意刷到一些 睡前儿童绘本故事, 下面一堆评论说 求软件什么的,博主只是引流没做任何回复。 这里写一篇文章科普下吧,免得有人被割韭菜。 制作儿童绘本, 大概这几个步骤。1、写生动有趣的故事&#x…

隐私计算实训营学习六:隐语PIR介绍及开发指南

文章目录 一、隐语实现的PIR总体介绍1.1 PIR的定义和种类1.2 隐语PIR功能分层 二、Index PIR-SealPIR介绍三、Keyword PIR- Labeled PSI介绍四、隐语PIR后续计划 一、隐语实现的PIR总体介绍 1.1 PIR的定义和种类 PIR(Private Information Retrieval PIR)隐匿查询:…

使用VNP时 本地服务/Dbeaver 无法连接数据库

在家使用VPN连接,启动本地Eclipse 的springboot 服务时,无法正常连接数据库。 解决方法: 在启动项配置中增加 -Djava.net.preferIPv4Stacktrue 之后,使用 Dbeaver时,也出现如下连接异常: 解决方法: 在dbe…

C语言:文件操作(2)

4.2 fputc的使用 这里写自定义目录标题 fputc的定义: 主要功能:一个字符一个字符的写进文件,将int类型的字符character写进文件流(FILE* stream)中,返回一个整形。如果成功fputc会返回写进文件的字符&…

oppo,快手25届暑期实习内推

oppo,快手25届暑期实习内推 ①OPPO 【内推码】:X6866447 【一键内推】:https://careers.oppo.com/university/oppo/campus/post?shareId4546 【需求岗位】软件类、AI/算法类、硬件类、设计类、产品类 ②快手 【岗位】算法、工程、游戏,产品运…

城市雨量水位监测站

TH-SW2在繁华的现代都市中,有这样一个默默奉献的守护者,它时刻监测着城市的雨量和水位,为城市的安全提供着重要的保障。它就是我们今天要介绍的——城市雨量水位监测站。 一、雨量水位监测站的重要性 城市雨量水位监测站是城市防洪排涝体系的…

方法区及元空间简介

什么是方法区? 方法区属于是 JVM 运行时数据区域的一块逻辑区域,是各个线程共享的内存区域。《Java 虚拟机规范》只是规定了有方法区这么个概念和它的作用,方法区到底要如何实现那就是虚拟机自己要考虑的事情了。也就是说,在不同…

全局UI方法-弹窗三-文本滑动选择器弹窗(TextPickDialog)

1、描述 根据指定的选择范围创建文本选择器,展示在弹窗上。 2、接口 TextPickDialog(options?: TextPickDialogOptions) 3、TextPickDialogOptions 参数名称 参数类型 必填 参数描述 rang string[] | Resource 是 设置文本选择器的选择范围。 selected nu…

AI图像重绘解决方案

高质量的图像素材往往成本高昂且制作周期长,给企业带来了不小的困扰。美摄科技凭借其领先的AI图像重绘解决方案,为企业提供了一种高效、便捷且成本可控的图像优化途径,助力企业重塑视觉形象,引领市场新风尚。 美摄科技的AI图像重…

uniapp小程序路由跳转,使用uni.navigateBack方法,实现页面返回上一页

在小程序中uni.navigateTo和uni.redirectTo是通过路由拼接的方式传参 uni.navigateTo({url: test?id1&nameuniapp });uni.redirectTo({url: test?id1 });uni.navigateBack() 是一个用于在uni-app中进行页面后退操作的API。它可以让你返回到上一个页面。在给定的示例中&a…

python提取视频中的音频

一、搭建环境 1、安装python 2、安装moviepy包 pip3 install moviepy 二、实现思路 1、先通过get请求把视频下载下来 2、再通过moviepy模块去提取视频中的音频 三、完整代码 import requests from moviepy.editor import VideoFileClip""" 支持视频格式 MP…

NASA数据集——2014 年、2015 年和 2017 年北美地区土壤地球物理属性值(源层厚度 (ALT)、介电常数、土壤水分剖面、表面粗糙度)

ABoVE: AirSWOT Color-Infrared Imagery Over Alaska and Canada, 2017 简介 文件修订日期:2019-04-25 数据集版本: 1 摘要 本数据集提供了根据 2014 年、2015 年和 2017 年 8 月和 10 月在阿拉斯加北部 12 个研究地点(除个别地点外)采集…

LLM大语言模型(八):ChatGLM3-6B使用的tokenizer模型BAAI/bge-large-zh-v1.5

背景 BGE embedding系列模型是由智源研究院研发的中文版文本表示模型。 可将任意文本映射为低维稠密向量,以用于检索、分类、聚类或语义匹配等任务,并可支持为大模型调用外部知识。 BAAI/BGE embedding系列模型 模型列表 ModelLanguageDescriptionq…

CCIE-11-IPSec-VPN

目录 实验条件网络拓朴实验目的 开始配置1. R2 Ping R3确定基础网络是通的2. 配置R23. 配置R34. 测试 实验条件 网络拓朴 实验目的 为PC1和PC2建立IPSec VPN PC1可以ping通PC2 开始配置 1. R2 Ping R3确定基础网络是通的 R2#show ip int br Interface IP…

UE5启用SteamOSS流程

一、安装OnlineSubsystemSteam插件 1、在UE里安装OnlineSubsystemSteam 2、设置默认开始地图 3、设置DefaultEngine.ini文件: 打开项目根目录/Config/DefaultEngine.ini文件 打开官网的配置说明 复制并粘贴到该文件中 4、设置运行模式 5、测试 确保Steam平台已…

简述双亲委派以及为什么使用双亲委派

你得先知道 在介绍双亲委派机制的时候,不得不提ClassLoader(类加载器)。说ClassLoader之前,我们得先了解下Java的基本知识。 Java是运行在Java的虚拟机(JVM)中的,但是它是如何运行在JVM中了呢?我们在IDE…

赛宁电力靶场护航电力行业高质量发展,加快形成新质生产力

今年的政府工作报告对能源电力发展作出新部署、提出新要求:“强化能源资源安全保障”……其中网络安全也是影响能源电力发展的重要因素,在全球范围内以电力系统为代表的关键基础设施频频成为网络攻击的重点目标。电力系统是关键信息基础设施重要组成部分…

【算法集训】基础算法:滑动窗口

定义一个快慢指针,用于截取数组中某一段信息。同时可以改变快慢指针的值来获取结果,这个过程比较像滑动。 1493. 删掉一个元素以后全为 1 的最长子数组 定义快慢指针快指针先走,如果到了第二个0上的时候。前面1的个数就是fast - slow - 1&a…

【MATLAB源码-第24期】基于matlab的水声通信中海洋噪声的建模仿真,对比不同风速的影响。

操作环境: MATLAB 2022a 1、算法描述 水声通信: 水声通信是一种利用水中传播声波的方式进行信息传递的技术。它在水下环境中被广泛应用,特别是在海洋科学研究、海洋资源勘探、水下军事通信等领域。 1. **传输媒介**:水声通信利…