LangChain与大型语言模型(LLMs)应用基础教程:神奇的Agent

原文:LangChain与大型语言模型(LLMs)应用基础教程:神奇的Agent-CSDN博客

LangChain是大型语言模型(LLM)的应用框架,LangChain可以直接与 OpenAI 的 text-davinci-003、gpt-3.5-turbo 模型以及 Hugging Face 的各种开源语言模如 Google 的 flan-t5等模型集成。通过使用LangChain可以开发出更为强大和高效的LLM的各种应用。

今天我们就来实现一个神奇的功能,如何你是一个不会编程的小白,那么只要你借助LangChain和ChatGPT,你也能成为一个优秀的数据分析师和预测专家。
我们要实现的功能是,让LangChain集成Openai的语言模型如"text-davinci-003",然后创建一个代理(agent),最后我们通过语言指令,一步一步让agent完成数据的统计分析以及时间序列的预测,正个过程而无需python代码。

查看苹果公司的股票数据

我们从雅虎网站上下载了苹果公司的股票价格数据,数据中的ds为日期,Close为当日的收盘价

import pandas as pd
import datetime
import os#加载苹果公司的股票数据
df = pd.read_csv('./data/appl.csv')
df

定义Openai语言模型LLM,和代理agent 

这里我们要定义一个openai的语言模型"text-davinci-003"的实例,然后再创建一个代理(agent)。代理就是帮我们做事情的小助手,我们只需要对其发号施令就可以了。

from langchain.agents import create_csv_agent
from langchain.llms import OpenAI,OpenAIChat#你申请的openai的api_key
os.environ["OPENAI_API_KEY"] = "xxxxxxxxxx"#定义openai的语言模型llm
llm=OpenAI(model_name="text-davinci-003",temperature=0)
#创建一个csv代理
agent = create_csv_agent(llm=llm,#语言模型path = './data/appl.csv', #数据路径verbose=False)

使用语言指令来进行数据分析

我们可以通过agent.run方法,来输入语言指令,agent就会根据语言指令做相关的操作,并将最终结果展示出来:

 

#调整横坐标格式,让其更加美观
agent.run('请画一下数据的趋势图,横坐标为ds,横坐标的label旋转30度')

action = '请画一下数据的趋势图,并在趋势图上叠加一个30天移动平均线,\
横坐标为ds,横坐标的label旋转30度'agent.run(action)

 

 详细查看agent的执行过程

如果你想查看agent的执行过程的细节,那只需要在创建agent时,将verbose参数设置为True,即可。

agent = create_csv_agent(llm=OpenAI(temperature=0),path='./data/appl.csv', verbose=True)agent.run('数据一共有多少行?')

  

action='请画一下数据的趋势图,并在趋势图上叠加一个30天移动平均线,\
横坐标为ds,横坐标的label旋转30度'agent.run(action)

action='请用prophet包预测一下未来7天每一天的Close值,\
不是fbprophet,并注明每一天的日期'agent.run(action)

 

 总结

今天我们学习了LangChain的agent功能,它可以通过语言指令的方式执行各种数据分析、汇总、统计以及预测等功能,如果你是一个不会编程的小白,那可以尝试一下agent。

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

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

相关文章

Bootstrap的媒体对象组件(图文展示组件),挺有用的一个组件。

Bootstrap的.media类是用于创建媒体对象的,媒体对象通常用于展示图像(图片)和文本内容的组合,这种布局在展示新闻文章、博客帖子等方面非常常见。.media类使得创建这样的媒体对象非常简单,通常包含一个图像和相关的文本…

许战海战略文库|2023,小鹏危矣!蔚小理之江湖点评

摘要:“性价比”与“主流化”之路的竞争关键是产业链整体优势,中国拥有新能源产业链优势的整车企业,只有比亚迪和长城汽车。 1 月 18 日,何小鹏在小鹏汽车内部喊出“如果不破,小鹏只是早死和晚死的区别。要么跟大家一起足够精彩,要…

Retrieve Anything To Augment Large Language Models

简介 论文主要介绍了一套通过对比学习和蒸馏学习的方法,来增强学习了embedding向量,然后能够在知识增强,长上下文建模,ICL和工具学习等方面来增强大模型能力。

Debian衍生桌面项目SpiralLinux12.231001发布

导读SpiralLinux 是一个从 Debian 衍生出来的桌面项目,其重点是在所有主要桌面环境中实现简洁性和开箱即用的可用性。 spiral Linux 是为刚接触 Linux 世界的人们量身定制的发行版。这是 GeckoLinux 开发人员的创意,他更喜欢保持匿名。尽管他不愿透露姓…

竞赛 深度学习+opencv+python实现车道线检测 - 自动驾驶

文章目录 0 前言1 课题背景2 实现效果3 卷积神经网络3.1卷积层3.2 池化层3.3 激活函数:3.4 全连接层3.5 使用tensorflow中keras模块实现卷积神经网络 4 YOLOV56 数据集处理7 模型训练8 最后 0 前言 🔥 优质竞赛项目系列,今天要分享的是 &am…

短视频剪辑矩阵系统开发解决的市场工具难点?

短视频剪辑矩阵系统开发源码----源头搭建 一、源码技术构建源码部署搭建交付之---- 1.需要协助系统完成部署、接口全部正常接入、系统正常运行多久?7个工作日 2.需要准备好服务器以及备案域名 3.短视频SEO模块一年项目带宽,带宽最低要求10M,…

解决笔记本无线网络5G比2.4还慢的奇怪问题

环境:笔记本Dell XPS15 9570,内置无线网卡Killer Wireless-n/a/ac 1535 Wireless Network Adapter,系统win10家庭版,路由器H3C Magic R2Pro千兆版 因为笔记本用的不多,一直没怎么注意网络速度,直到最近因为…

AMEYA360:君正低功耗AIoT图像识别处理器—X1600/X1600E

• 高性能 XBurst 1 CPU,主频1.0GHz • 超低功耗 • 内置LPDDR2(X1600:32MB,X1600E:64MB) • 实时控制核XBurst 0,面向安全管理和实时控制 • 丰富的外设接口 应用领域 • 基于二维码的智能商业 • 智能物联网 • 高端…

atlas运维中遇到的问题

1、java.lang.NoClassDefFoundError:javax/ws/rs/core/Link$Builder 主要原因:jsr311-api包中javax.ws.rs.core包中没有Link类,而Atlas以HBase作为元数据存储,HBase本身使用的为javax.ws.rs-api包中的core包,其中有Lin…

Linux入门攻坚——3、基础命令学习-文件管理、别名、glob、重定向、管道、用户及组管理、权限管理

文件管理:cp,mv,rm cp:复制命令,copy cp [OPTION]... [-T] SRC DEST cp [OPTION]... SRC... DIRECTORY cp [OPTION]... -t DIRECTORY DEST... 如果目标不存在,新建DEST,并将…

瑞芯微RK3568核心板在边缘服务器产品中的应用-迅为电子

迅为RK3568核心板在边缘服务器产品中可以发挥关键作用,为边缘计算应用提供高性能的计算和多媒体处理能力。边缘服务器通常用于处理和存储数据,执行本地计算任务,并支持与远程云服务的通信。以下是RK3568核心板在边缘服务器产品中的应用方案&a…

Web攻防01-ASP应用相关漏洞-HTTP.SYSIIS短文件文件解析ACCESS注入

文章目录 ASP-默认安装-MDB数据库泄漏下载漏洞漏洞描述 ASP-中间件 HTTP.SYS(CVE-2015-1635)1、漏洞描述2、影响版本3、漏洞利用条件4、漏洞复现 ASP-中间件 IIS短文件漏洞1、漏洞描述2、漏洞成因:3、应用场景:4、利用工具:5、漏洞…

寻找可靠的软件外包开发公司

寻找可靠的软件外包开发公司是关键,以确保项目的顺利交付和质量。以下是一些方法和步骤,帮助您找到可靠的软件外包开发公司,希望对大家有所帮助。北京木奇移动技术有限公司,专业的软件外包开发公司,欢迎交流合作。 明确…

Ubuntu 16.04 LTS third maintenance update release

Ubuntu 16.04 LTS (Xenial Xerus)今天迎来的第三个维护版本更新中,已经基于Linux Kernel 4.10内核,而且Mesa图形栈已经升级至17.0版本。Adam Conrad表示:“像此前LTS系列相似,16.04.3对那些使用更新硬件的用户带来了硬件优化。该版…

SpringBoot整合Activiti7——执行监听器(六)

文章目录 一、执行监听器事件类型生命周期配置方式(选)代码实现xml文件创建监听器class方法expression方法delegateExpression 测试流程部署流程启动流程完成任务 一、执行监听器 在流程实例执行过程中触发某个事件时,Activiti提供的执行监听器可以捕获该事件并执行…

(三十四)大数据实战——scala运行环境安装配置及IDEA开发工具集成

前言 本节内容我们主要介绍一下scala运行环境的安装配置以及在idea开发工具中集成scala插件,便于scala项目的开发。 在开始scala安装配置之前,我们要先安装好jvm运行环境,scala运行于Java虚拟机(JVM)上,并…

信息检索与数据挖掘|(四)索引构建

目录 📚硬件基础 📚基于块的排序索引方法 🐇BSBI算法(blocked sort-based indexing) 📚内存式单遍扫描索引构建方法 🐇SPIMI算法(single-pass in-memory indexing) 📚分布式索引构建方法 &#x1f4d…

自动化测试 —— Pytest fixture及conftest详解!

前言 fixture是在测试函数运行前后,由pytest执行的外壳函数。fixture中的代码可以定制,满足多变的测试需求,包括定义传入测试中的数据集、配置测试前系统的初始状态、为批量测试提供数据源等等。fixture是pytest的精髓所在,类似u…

科技资讯|苹果Vision Pro可通过手势ID检测不同用户

近日,美国专利局公布了苹果公司的一项专利申请,该专利申请涉及基于手部特征验证用户身份的技术。苹果指出,可能是多个家庭成员都想使用 Apple Vision Pro,系统必须识别不同的手势以控制 visionOS。在另一个示例中,苹果…

基于变电站自动化系统中的安全措施分析及应用

摘要:阐述变电运行中的问题,电气自动化系统与安全运行措施,包括自动控制设备的投入,电气自动 化与计算机技术相、设备数据的采集与处理、自动化系统的升级、人工智能技术的应用。 关键词:自动控制;数据采…