AutoGPT 安装指南,使用避坑要点

news2024/9/30 15:30:39

最近, AIGC 中最火的可能就当属于 AutoGPT 了吧,首先简单介绍一下AutoGPT 背景

AutoGPT 是基于 ChatGPT API 接口开发,项目首推 GPT-4 模型,但 OpenAI 账号 API 只有 gpt-3.5-turo 权限同样也可以使用。

项目在 github 上获取的 star 数从4 月初的 2k 到现在 60k,仅用了半个月

image-20230416020306075

AutoGPT 之所以引起这么大的轰动,可能是由于以下几个特点:

1,借助 ElevenLabs 等第三方服务使 ChatGPT 能够具备语音对话能力;

2,赋予 GPT-4 联网搜索和信息获取能力;

3,借助Redis 或第三方存储服务,使得对话具备长期和短期内存管理;

4,集成 GPT-3.5 文件存储和处理能力;

5,项目赋予 GPT-4 自己给自己提 prompt 能力;

开始时,用户指定任务(task)和目标(goal) ,AutoGPT 借助 GPT-4 的推理能力自动将 goal 拆分为n 个小的目标任务,其中每个小的目标 作为模型下一步指定动作的 prompt,

这个特性可以理解为,为了达到某个大目标, AutoGPT 将大目标 拆分为 n个小 目标的 prompt,随后通过依次执行小 目标来不断地逼近 大目标进度。

并且,在执行过程中,AutoGPT 根据不同小目标的执行结果,可以不断调整知道结果对齐用户功能需求;为了更加清晰,我把整个运行步骤画了一个流程图,如下:

Snipaste_2023-04-16_00-15-24

基于以上原理,AutoGPT 使用时,用户需要输入任务描述,例如,分析最近一年上映的电影,然后再列出具体的需求目标(goal),

  • 例如 goal1:分析其中电影类型分布;goal 2 :列举top10票房电影、票房数以及各自国家等,并绘制一个柱状图等;

输入后,AutoGPT 借助 GPT4 接口 根据你输入的 task 和 goal ,拆分为数个小任务,自动依次执行,直到整个所有 goal 完成,整个执行过程不需要用户介入,完全自动化

以上是对 AutoGPT的背景做了简单说明,接下来介绍 AutoGPT 的具体安装流程

AutoGPT 安装

  • AutoGPT 安装之前,请确保已经具备以下几项条件:
    • 1,已安装 Python 环境,且版本在3.8及以上;
    • 2,已安装好 git 工具;
    • 3,含有可用的 OpenAI 账号;

项目代码拉取

在一个文件夹下打开终端,克隆项目

git clone https://github.com/Torantulino/Auto-GPT.git

拉取完成后,cd 到项目路径下

cd  Auto-GPT

安装依赖

运行以下代码安装所需要的依赖

pip install -r requirements.txt

修改配置项

AutoGPT 提供了许多拓展功能,例如

  • 支持语音代替文件进行交互,语音服务是由 ElevenLabs 提供,5美元/月;

  • 支持 调用 Stable Diffusion 文生图;

  • 借助 Google APi 和自定义搜索引擎服务 防止 google 搜索出现 429;

  • 借助 PINECONE 服务存储缓存,保持短时间内与 AutoGPT 之间的交互记录

以上这些拓展服务需要额外的token 或 key ,不是运行 AutoGPT 的必须配置项,最核心的配置是 OpenAI key

OpenAI key 获取方式,访问 https://platform.openai.com/account/api-keys

如下

image-20230416010215913

拿到key 之后,找到项目中的 .env.template 文件,命名为 .env,打开,找到里面的OPENAI_API_KEY 选项,替换成你的 key,关闭即可

image-20230416010447590

运行 AutoGPT

以上步骤完成后,终端输入以下命令,就可以使用 AutoGPT 了

python -m autogpt

如果想在使用过程中,查看具体AutoGPT 是否报错,可以加上 --debug 参数

python -m autogpt --debug

需要注意的是,AutoGPT 运行的整体交互语言以英语为主

启动后,首先autogpt 需要你先对给服务起一个名字,这个可以随意,例如 testAI,输入完毕后,按回车下一步

接着需要输入 任务 ,例如Analyze movies released in the last year;

之后依次输入 goal1,goal2

image-20230416123722852

输入完毕后,autogpt 进行接管,任务、目标分析、拆分为数个小 plan 并执行

google 搜索介入

image-20230416123806106

获取到数据,进行解析并存储

image-20230416123912454

小结

好了,以上就是 AutoGPT 整个安装和使用流程,

AutoGPT 使用 GPT-4 前提是,自己 OpenAI 账号已经加入了 GPT-4 API 的 waitllist,并且拿到了 OpenAI 的授权;这里的GPT-4 指的是 API 接口,不是 ChatGPT Plus 订阅。没有 GPT-4 权限依旧可以使用 AutoGPT,只不过会切换到推理能力弱一点的 gpt-3.5-turbo 模型

使用 AutoGPT 需要注意的一些问题:

1,openAI 接口,SSL 认证失败 443

ssl.SSLEOFError: EOF occurred in violation of protocol (_ssl.c:1131)requests.exceptions.SSLError: HTTPSConnectionPool(host='openaipublic.blob.core.windows.net', port=443): Max retries exceeded with url: /encodings/cl100k_base.tiktoken (Caused by SSLError(SSLEOFError(8, 'EOF occurred in violation of protocol (_ssl.c:1131)')))

解决方法,对urllib3 降版本,变为 1.25.11

pip install urllib3==1.25.11

2,谷歌用不了,报错【由于连接方在一段时间后没有正确答复或连接的主机没有反应 ,连接尝试失败】;AutoGPT 搜索用的是谷歌引擎,需要用到谷歌搜索服务

另外提醒一下,终端走的 google 搜索 是在 IP 层,不在应用层,所以一般应用层的梯子也是无法使用的,关于具体解决方法,因为篇幅较长,将放在下篇博文

3,对比正常使用,在 AutoGPT 中运行相对会比较费钱。OpenAI 的 key 大家都知道 ,使用是按量收费的;在 AutoGPT 中因为需要让结果对其用户目标,使用时需要不断查询,反馈、修正再查询;

这个过程都会用到 OpenAI 接口,因此调用频率比正常使用高许多,建议对于一些比较复杂的问题,可以尝试用 AutoGPT 来解决,一些简单问题完全就没必要了。

好了,以上就是本篇文章的全部内容了,如果对你有帮助的话、点赞、收藏都是对我的一份鼓励!

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

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

相关文章

Java多线程初阶(二)(图片+源码+超详细)

在这之前可以参照:Java多线程初阶(一)这篇文章🐻 目录 1. 线程的状态 2. 线程安全问题 2.1 引出线程安全问题 2.2 线程安全问题出现的原因 2.3 解决线程安全问题的方法 2.4 synchronized关键字详解 2.5 volatile关键字详解…

【LeetCode】145.二叉树的后续遍历

1.问题 给你一棵二叉树的根节点 root ,返回其节点值的 后序 遍历 。 示例 1: 输入:root [1,null,2,3] 输出:[3,2,1] 示例 2: 输入:root [] 输出:[] 示例 3: 输入:roo…

Linux搭建我的世界MC服务器 - MCSM面板 【外网远程联机教程】

文章目录 1. 安装JAVA2. MCSManager安装3.局域网访问MCSM4.创建我的世界服务器5.局域网联机测试6.安装cpolar内网穿透7. 配置公网访问地址8.远程联机测试9. 配置固定远程联机端口地址9.1 保留一个固定tcp地址9.2 配置固定公网TCP地址9.3 使用固定公网地址远程联机 Linux使用MCS…

程序地址空间(上)

目录 : 1.C/C程序地址空间回顾(C语言) 2.通过一段代码(引出进程虚拟地址空间) 3.进程虚拟地址空间是什么 ------------------------------------------------------------------------------------------------------…

项目制作4

今天对文件录入,进行了测试,结构体录入还是非常的好用的 对地图也有了新的制作,但是地图上的鼠标操作遇到了问题 难以解决,一搞就是内存问题给我下坏了 哎我选择认了,用控制台来显示公告算了 for (int j 1;j < f->Points;j) fread(&f->drops[j], sizeof(drop…

微服务---Docker的基本使用

Docker 1.初识Docker 1.1.什么是Docker 微服务虽然具备各种各样的优势&#xff0c;但服务的拆分通用给部署带来了很大的麻烦。 分布式系统中&#xff0c;依赖的组件非常多&#xff0c;不同组件之间部署时往往会产生一些冲突。在数百上千台服务中重复部署&#xff0c;环境不…

虹科分享 | 基于流的流量分类的工作原理 | 网络流量监控

许多ntop产品&#xff0c;如ntopng、nProbe和PF_RING FT等都是基于网络流的。然而&#xff0c;并不是所有的用户都详细知道什么是网络流&#xff0c;以及它在实践中是如何工作的。这篇博客文章描述了它们是什么以及它们在实践中是如何工作的。 什么是网络流量 网络流是一组具…

C++11新特性(下)

文章目录 1. 可变参数模板1.1 empalce相关接口函数 2. lambda表达式2.1 C98中的一个例子2.2 lambda表达式语法2.3 函数对象与lambda表达式 3. 包装器3.1 function包装器3.2 bind 1. 可变参数模板 C11的新特性可变参数模板能够让您创建可以接受可变参数的函数模板和类模板。相比…

Matlab与ROS---Action与Gazebo(六)

0. 简介 对于ROS1而言&#xff0c;其在Matlab当中相较于ROS2还有一些比较高级的用法&#xff0c;比如说我们接下来要说的Action和Gazebo仿真。 1. ROS Action ROS的Action行为模式当中也存在有一个客户端到服务器的通信关系。Action行为模式使用ROS主题将目标消息从客户机发…

【技巧】飞书多维表格零代码连接飞书多维表格,实现表单自动同步

飞书多维表格用户使用场景&#xff1a; 在公司日常工作中&#xff0c;各个部门使用飞书多维表格记录签订合同、文件审核、归档等事务&#xff0c;常需要行政人员辅助处理&#xff0c;将这些子表单的数据汇总到一个总表单中。但每个部门对应的事务较为复杂&#xff0c;子表单数量…

OpenCV例程赏析

OpenCV例程赏析 ①SITF特征检测匹配(目标查找)例程&#xff1a;…\opencv\sources\samples\python2\find_obj.py(asift.py) #!/usr/bin/env python ‘’’ Feature-based image matching sample. Note, that you will need the https://github.com/opencv/opencv_contrib r…

什么是内容交付网络?

内容交付网络&#xff08;CDN&#xff09;是一个全球分布的网络服务器或存在点&#xff08;PoP&#xff09;&#xff0c;其目的是提供更快的内容交付&#xff0c;内容被复制并存储在整个CDN中&#xff0c;因此用户可以访问存储在地理上离用户最近的位置的数据。这与仅在一个中央…

Flinkx/Datax/Flink-CDC 优劣势对比

Flinkx/Datax/Flink-CDC 优劣势对比_HiBoyljw的博客-CSDN博客 一、FlinkX简介 FlinkX是一款基于Flink的分布式离线/实时数据同步插件&#xff0c;可实现多种异构数据源高效的数据同步&#xff0c;其由袋鼠云于2016年初步研发完成&#xff0c;目前有稳定的研发团队持续维护&…

微前端解决方案

目录 微前端解决方案微前端的整体架构微前端部署平台 微前端解决方案 在理想的情况下&#xff0c;期望能达到&#xff0c;将一个复杂的单体应用以功能或业务需求垂直的切分成更小的子系统&#xff0c;并且能够达到以下能力&#xff1a; 子系统间的开发、发布从空间上完成隔离…

java学员学生综合测评管理系统

目 录 摘 要 I ABSTRACT II 第一章 绪论 1 1.1课题背景 1 1.2目的和意义 1 1.3开发工具及技术 2 1.3.1开发工具 2 1.3.2 JSP技术 2 1.4软硬件需求 3 第二章 系统分析 5 2.1可行性分析 5 2.1.1技术可行性 5 2.1.2经济可行性 5 2.1.3操…

GrassRouter多链路聚合通信系统保障公路网络稳定全面覆盖解决方案

近年来国内经济不断发展&#xff0c;城市道路交通能力迅速提高&#xff0c;各省市道路交通体系不断完善&#xff0c;促使高速公路运能得到极大提高&#xff0c;公路运输的通达性、舒适性得到明显提高。随着现代化高速公路的建设&#xff0c;新一代无线网络监控系统&#xff0c;…

Jmeter控制器 Logic Controller

控制器包含&#xff1a; 1.Loop Controller 作⽤&#xff1a;指定其⼦节点运⾏的次数&#xff0c;可以使⽤具体的数值&#xff0c;也可以使⽤变量    Forever选项&#xff1a;表示⼀直循环下去   如果同时设置了线程组的循环次数和循环控制器的循环次数&#xff0c;那循环…

大屏使用echart开发省市地图,并点击省获取市地图

1. 本文在基础上进行改进&#xff0c;后端使用若依后端 IofTV-Screen: &#x1f525;一个基于 vue、datav、Echart 框架的物联网可视化&#xff08;大屏展示&#xff09;模板&#xff0c;提供数据动态刷新渲染、屏幕适应、数据滚动配置&#xff0c;内部图表自由替换、Mixins注…

ZooKeeper的安装和配置过程

ZooKeeper的安装和配置过程 ZooKeeper服务器是用Java创建的&#xff0c;它需要在JVM上运行&#xff0c;所以需要使用JDK1.6及以上版本。 查看是否安装了Java环境: java -version没有安装的先去安装JDK&#xff1a;Linux 安装 JDK 官网下载zooKeeper 官网下载zooKeeper&…

基于 YOLOv8 的自定义数据集训练

图1.1&#xff1a;YOLOv8初始测试 YOLOv8&#x1f525;于 2023年1月10日由Ultralytics发布。它在计算机视觉方面提供了进展&#xff0c;带来了对我们感知、分析和理解视觉世界的巨大创新。它将为各个领域带来前所未有的可能性。 在速度、准确性和架构方面进行了相当大的改进。它…