首页 > 其他分享 >autogen示例九:llamaindex的智能pandasai

autogen示例九:llamaindex的智能pandasai

时间:2024-09-13 23:26:46浏览次数:17  
标签:index 示例 llamaindex pandasai phi3 llama query import 查询

        相信对于许多从事Python数据分析工作的小伙伴来说,大家都对尝试使用PandasAI所带来的智能化便捷性充满兴趣。然而,由于缺乏OpenAI的API密钥,许多人只能望洋兴叹,无法真正体验到这一技术带来的便利。

        现在有一种替代方案,可以让我们绕过这个限制,那就是使用LlamaIndex搭配本地部署的语言模型(LM),从而实现与PandasAI相似的功能。LlamaIndex是一个开源项目,它能够帮助用户构建索引并查询大型语言模型,从而使得数据查询变得更加智能和高效。具体的操作步骤和技术细节,可以参考LlamaIndex的官方文档:

Pandas Query Engine - LlamaIndex

        下面,我们直接来看一下如何通过简单的几行代码来实现这一功能:

1)安装依赖包+本地模型phi3

!pip install llama-index-experimental
!pip install llama-index
!pip install llama-index-llms-ollama

    安装本地phi3模型,怎么安装ollama请查看前面教程,这里不再赘述。

 ollama run phi3:3.8b

2)加载python包

import logging
import sys
import pandas as pd
from llama_index.llms.ollama import Ollama
from llama_index.experimental.query_engine import PandasQueryEngine

3)准备数据、配置模型:

        代码中llm = Ollama(model="phi3:3.8b", request_timeout=360)加载本地模型。

# 准备数据
df = pd.DataFrame(
    {
        "city": ["Toronto", "Tokyo", "Berlin"],
        "population": [2930000, 13960000, 3645000],
    }
)

## 构建LLM模型对象
llm = Ollama(model="phi3:3.8b", request_timeout=360)
# 创建查询引擎
query_engine = PandasQueryEngine(df=df, llm=llm, verbose=True, synthesize_response=True)

4)查询测试1:

# 查询最高人口数
response = query_engine.query(
    "哪个city的population最高 ?"
)
#print(str(response.metadata["pandas_instruction_str"]))
print(str(response.metadata["raw_pandas_output"]))

5)查询测试2:

# 查询平均数
response2 = query_engine.query(
    "平均population是多少 ?",
)
print(str(response2.metadata["raw_pandas_output"]))

标签:index,示例,llamaindex,pandasai,phi3,llama,query,import,查询
From: https://blog.csdn.net/m0_38007743/article/details/142231183

相关文章

  • MutationObserver监听DOM变化示例
    示例代码:<template><divclass="it-bottom-button":style="{right:bottomBarRight}"><slot></slot></div></template><script>exportdefault{name:"itBottomBar",componen......
  • MongoDB与Pymongo深度实践:从基础概念到无限级评论应用示例
    文章目录前言一、MongoDB1.基本介绍2.概念解析3.常见的数据类型4.Docker安装5.常用命令二、Pymongo1.基本操作(连接、数据库、集合)2.基本操作(增删改查)三、MongoDB应用示例:无限级评论1.MongoDB工具类2.实现无限级评论逻辑3.Vue树形结构展示无限级评论前言  ......
  • 【flask系列】基于flask的 RESTful API示例
    原创xlwin136人工智能教学实践RESTfulAPI(RepresentationalStateTransferApplicationProgrammingInterface)是一种基于REST架构风格的网络应用程序接口。REST是一种设计网络服务的架构风格,它通过使用HTTP协议的通用动词(如GET、POST、PUT、DELETE等)来允许客户端和......
  • 高德地图SDK Android版开发 11 覆盖物示例 4 线
    高德地图SDKAndroid版开发11覆盖物示例4线前言界面布局MapPolyline类常量成员变量初始值创建覆盖物移除覆盖物设置属性加载地图和释放地图MapPolylineActivity类控件响应事件运行效果图前言文本通过创建多个不同线宽的折线和大地曲线,介绍Polyline的使用方法。......
  • C# 标准事件模式示例
    1usingSystem;23namespaceConsoleApp3_Test4{56internalclassAa7{89staticvoidMain(string[]args)10{11Stockstock=newStock("THPW");12stock.Price=27.10M;131......
  • 示例 32: 简单的天气应用
    <!DOCTYPEhtml><htmllang="en"><head><metacharset="UTF-8"><metaname="viewport"content="width=device-width,initial-scale=1.0"><title>WeatherApp</title>......
  • 百度地图SDK Android版开发 11 覆盖物示例 4 线
    百度地图SDKAndroid版开发11覆盖物示例4线前言界面布局MapPolyline类常量成员变量初始值创建覆盖物移除覆盖物设置属性加载地图和释放地图MapPolylineActivity类控件响应事件运行效果图前言文本通过创建多个不同线宽的折线和大地曲线,介绍Polyline的使用方法。......
  • Python 内置函数汇总(使用示例)
    abs(number)求解整数,浮点数绝对值,返回复数模大小aiter()异步的方式遍历可迭代对象的异步迭代器importasynciocount=0asyncdefexample():asyncdefasync_generator():globalcountwhileTrue:count+=1......
  • 《华为防火墙基本配置示例》
    目录华为防火墙基本配置示例: 1. 登录防火墙2. 基本系统配置 3. 安全区域配置4. 策略配置 5. NAT配置(如果需要) 6. 防火墙攻击防范配置 7. 保存配置华为防火墙基本配置示例: 1. 登录防火墙 -通过Console线将电脑与防火墙的Console接口连接......
  • 【抽奖小程序示例代码】
    以下是一个使用Python的Flask框架创建的简单网页抽奖小程序示例代码: fromflaskimportFlask,render_templateimportrandomapp=Flask(__name__)@app.route('/')deflottery():  prizes=["一等奖","二等奖","三等奖","谢谢参与"]  resul......