loopgpt
loopgpt 是一款模块化的 Auto-GPT 框架,旨在将流行的 Auto-GPT 项目重构为更灵活、易扩展的 Python 包。它解决了传统自动代理工具配置复杂、难以二次开发以及对高成本模型依赖过强的问题,让开发者能够轻松构建定制化的 AI 智能体。
这款软件特别适合 Python 开发者、AI 研究人员以及希望深入探索大语言模型应用的技术爱好者。与普通用户只需点击运行的工具不同,loopgpt 提供了"Plug N Play"式的 API,允许用户直接通过代码添加新功能或集成外部服务,无需繁琐的配置文件。
其技术亮点在于对 GPT-3.5 模型的深度优化,即使没有 GPT-4 权限也能获得出色效果,同时极力降低提示词开销以节省成本。loopgpt 支持“人在回路”机制,当智能体偏离目标时,人类可随时介入纠正。此外,它具备完整的状态序列化能力,能将智能体的记忆和工具状态保存至本地文件,随时中断并恢复任务,且无需依赖外部数据库。无论是快速原型验证还是构建复杂的多步骤自动化流程,loopgpt 都提供了一个简洁而强大的基础架构。
使用场景
某科技初创公司的产品经理需要快速调研并输出一份关于“最新无线降噪耳机”的深度竞品分析报告,以便决定下一季度的采购方向。
没有 loopgpt 时
- 流程割裂且繁琐:需人工在搜索引擎、电商网站和评测博客间反复切换,手动复制粘贴数据,耗时数小时才能收集齐基础信息。
- 模型能力受限:若仅使用基础的 GPT-3.5,模型无法自主联网搜索实时价格或读取最新评测,只能依赖过时的训练数据,导致结论失真。
- 缺乏纠错机制:一旦自动化脚本跑偏(如抓取了错误型号),必须中断重跑,无法在运行中即时干预修正方向。
- 状态难以保留:中途网络波动或程序崩溃会导致进度全失,无法从断点继续,必须重新执行所有步骤。
使用 loopgpt 后
- 全自动闭环执行:只需定义“搜索、分析、写入文件”等目标,loopgpt 即可自主调用搜索工具获取实时数据,自动完成从信息采集到生成
summary.txt的全过程。 - 小模型大效能:凭借优化的提示词工程,即使使用成本更低的 GPT-3.5 也能获得媲美 GPT-4 的精准搜索结果,大幅降低 API 开销。
- 人机协同纠偏:当代理准备分析错误品牌时,用户可通过“人在回路”功能即时输入反馈修正路径,确保调研不偏离核心需求。
- 断点续传无忧:利用全状态序列化技术,loopgpt 能将当前记忆和工具状态保存至本地,随时从断开处无缝恢复任务,无需重复劳动。
loopgpt 将原本碎片化、高成本的人工调研转化为可中断、可干预且低成本的自主智能工作流。
运行环境要求
- Linux
- macOS
- Windows
未说明
未说明

快速开始
L♾️pGPT
一个模块化的 Auto-GPT 框架
L♾️pGPT 是对流行的 Auto-GPT 项目的重新实现,将其改造成一个规范的 Python 包,并在设计时充分考虑了模块化和可扩展性。
🚀 特性 🚀
- “即插即用”的 API - 可扩展且模块化的“Python 式”框架,而不仅仅是一个命令行工具。可以轻松地从 Python 代码中添加新功能、集成和自定义智能体能力,无需繁琐的配置文件!
- 兼容 GPT-3.5 - 对于尚未拥有 GPT-4 访问权限的用户来说,效果比 Auto-GPT 更好!
- 最小化的提示开销 - 每个 token 都很重要。我们一直在努力以尽可能少的 token 数量获得最佳结果。
- 人机协作 - 通过人工反馈,能够对偏离轨道的智能体进行“纠正方向”。
- 完整状态序列化 - 从中断处继续;L♾️pGPT 可以将智能体的完整状态(包括记忆及其工具的状态)保存到文件或 Python 对象中。无需外部数据库或向量存储(但仍然支持它们)!
🧑💻 安装
从 PyPI 安装
📗 这会安装最新稳定版的 L♾️pGPT。对于大多数用户来说,这是推荐的方式:
pip install loopgpt
📕 下面两种方法会安装 L♾️pGPT 的最新开发版本。请注意,此版本可能不稳定:
从源码安装
pip install git+https://www.github.com/farizrahman4u/loopgpt.git@main
从源码安装(开发版)
git clone https://www.github.com/farizrahman4u/loopgpt.git
cd loopgpt
pip install -e .
使用 Docker 从源码安装(开发版)
git clone https://www.github.com/farizrahman4u/loopgpt.git
cd loopgpt
docker build -t loopgpt:local-dev .
🏎️ 开始使用
设置你的 OpenAI API 密钥 🔑
方法 1️⃣:通过 .env 文件
在当前工作目录(你打算运行 L♾️pGPT 的地方)创建一个 .env 文件,并添加以下内容:
OPENAI_API_KEY="<your-openai-api-key>"
🛑 重要 🛑
Windows 用户请确保在文件资源管理器中启用了“显示文件扩展名”选项。否则,文件可能会被命名为 .env.txt 而不是 .env。
方法 2️⃣:通过环境变量
将名为 OPENAI_API_KEY 的环境变量设置为你的 OpenAI API 密钥。
如何设置环境变量:
创建一个新的 L♾️pGPT 智能体🕵️:
让我们在一个新的 Python 脚本中创建一个智能体。
from loopgpt.agent import Agent
agent = Agent()
L♾️pGPT 默认使用 gpt-3.5-turbo,此处显示的所有输出都是基于它生成的。如果使用 GPT-4 的用户可以将 model="gpt-4" 替换:
agent = Agent(model="gpt-4")
设置智能体的属性🕵️:
agent.name = "ResearchGPT"
agent.description = "一个用于研究和寻找最佳科技产品的 AI 助手"
agent.goals = [
"在 Google 上搜索最佳耳机",
"分析规格、价格和评论,找出前 5 名最佳耳机",
"将前 5 名最佳耳机及其价格写入文件",
"总结每款耳机的优缺点,并将其写入名为 'summary.txt' 的另一份文件中",
]
现在就可以开始了!让我们运行智能体的 CLI:
agent.cli()
将你的 Python 文件保存为 research_gpt.py 并运行:
python research_gpt.py
你可以通过输入“exit”来退出 CLI。
🔁 连续模式 🔁
如果将 continuous 设置为 True, 智能体会自动执行命令,而不会询问用户的许可。这可能导致无限循环,因此请谨慎使用!
agent.cli(continuous=True)
💻 仅命令行模式
你也可以直接从命令行运行 L♾️pGPT,而无需编写任何 Python 代码:
loopgpt run
运行 loopgpt --help 查看所有可用选项。
🐋 Docker 模式
你可以在前面提到的模式下使用 Docker 运行 L♾️pGPT:
# CLI 模式
docker run -i --rm loopgpt:local-dev loopgpt run
# 脚本模式示例
docker run -i --rm -v "$(pwd)/scripts:/scripts" loopgpt:local-dev python /scripts/myscript.py
⚒️ 添加自定义工具 ⚒️
L♾️pGPT 智能体自带一组内置工具,可用于执行各种基本任务,如网络搜索、文件系统操作等。你可以通过 print(agent.tools) 查看这些工具。
除了这些内置工具外,你还可以将自己的工具添加到智能体的工具箱中。
示例:WeatherGPT 🌦️
让我们创建 WeatherGPT,一个专注于天气的 AI 助手。
工具继承自 BaseTool,你只需编写文档字符串即可让工具正常运行!
from loopgpt.tools import BaseTool
class GetWeather(BaseTool):
"""快速获取指定城市的天气信息
参数:
city (str): 城市名称
返回:
dict: 该城市的天气报告
"""
def run(self, city):
...
L♾️pGPT 会为你的工具分配一个默认 ID,但如果你愿意,也可以覆盖它:
class GetWeather(BaseTool):
"""快速获取指定城市的天气信息
参数:
city (str): 城市名称
返回:
dict: 该城市的天气报告
"""
@property
def id(self):
return "get_weather_command"
接下来,让我们在 run 方法中定义工具的具体功能:
import requests
# 定义你的自定义工具
class GetWeather(BaseTool):
"""快速获取指定城市的天气信息
参数:
city (str): 城市名称
返回:
dict: 该城市的天气报告
"""
def run(self, city):
try:
url = "https://wttr.in/{}?format=%l+%C+%h+%t+%w+%p+%P".format(city)
data = requests.get(url).text.split(" ")
keys = ("location", "condition", "humidity", "temperature", "wind", "precipitation", "pressure")
data = dict(zip(keys, data))
return data
except Exception as e:
return f"获取天气时发生错误:{e}。"
就是这样!你已经构建了自己的第一个自定义工具。让我们将其注册到一个新的智能体并运行它:
from loopgpt.tools import WriteToFile
import loopgpt
# 注册自定义工具类型
# 这里实际上并不需要,但在加载带有自定义工具的已保存代理时则需要。
loopgpt.tools.register_tool_type(GetWeather)
# 创建代理
agent = loopgpt.Agent(tools=[GetWeather, WriteToFile])
agent.name = "WeatherGPT"
agent.description = "一个告诉你天气的AI助手"
agent.goals = [
"获取纽约和北京的天气",
"给用户提供关于如何根据纽约和北京天气穿衣的建议",
"将这些建议写入名为'dressing_tips.txt'的文件中"
]
# 运行代理的命令行界面
agent.cli()
让我们来看看WeatherGPT为我们写的dressing_tips.txt文件:
dressing_tips.txt
- 北京室外晴朗,气温为+10°C。建议穿一件薄外套和裤子。
- 纽约室外多云,气温为+11°C。建议穿一件薄外套、裤子,并带上雨伞。
🚢 航向修正
与Auto-GPT不同,当用户拒绝执行某个命令时,该代理并不会终止。相反,它会请求用户的反馈以调整其行动方向。
要修正代理的航向,只需拒绝执行并提供反馈即可:
代理已经更新了它的行动计划:
💾 保存和加载代理状态 💾
你可以将代理的状态保存到一个JSON文件中,方法如下:
agent.save("ResearchGPT.json")
这会保存代理的配置(模型、名称、描述等)以及其内部状态(对话状态、记忆、工具状态等)。你也可以通过在agent.save()中传入include_state=False来仅保存配置:
agent.save("ResearchGPT.json", include_state=False)
之后,你可以从上次停止的地方继续:
import loopgpt
agent = loopgpt.Agent.load("ResearchGPT.json")
agent.cli()
或者直接从命令行运行已保存的代理:
loopgpt run ResearchGPT.json
你还可以将代理状态转换为与JSON兼容的Python字典,而不是写入文件:
agent_config = agent.config()
如果只想获取配置而不包括内部状态,可以这样操作:
agent_config = agent.config(include_state=False)
要从配置重新加载代理,可以使用以下代码:
import loopgpt
agent = loopgpt.Agent.from_config(agent_config)
📋 需求
- Python 3.8+
- 一个OpenAI API密钥
- Google Chrome
可选需求
为了支持官方的Google搜索功能,你需要设置两个环境变量GOOGLE_API_KEY和CUSTOM_SEARCH_ENGINE_ID,以下是获取它们的方法:
- 在Google开发者控制台上创建一个应用。
- 使用Google自定义搜索创建你的自定义搜索引擎。
- 自定义搜索引擎创建完成后,选择它并进入其详情页面。
- 在“基本”部分,你会找到“搜索引擎ID”字段,这个值就是你要用于
CUSTOM_SEARCH_ENGINE_ID环境变量的值。 - 接下来,转到页面底部的“程序化访问”部分。
- 创建一个“自定义搜索JSON API”。
- 按照提示选择你在第1步中创建的应用程序,并在获得API密钥后将其填入
GOOGLE_API_KEY环境变量中。
- 在“基本”部分,你会找到“搜索引擎ID”字段,这个值就是你要用于
ℹ️ 如果这些环境变量不存在,L♾️pGPT将会回退到使用DuckDuckGo搜索。
💌 贡献
我们非常需要帮助!如果你愿意贡献,请开一个issue或PR。
🌳 社区
需要帮助吗?加入我们的Discord。
⭐ 星标历史 📈

版本历史
v0.1.12024/03/10v0.1.02023/07/16v0.0.152023/05/12v0.0.142023/05/10v0.0.132023/05/09v0.0.122023/04/30v0.0.112023/04/27v0.0.102023/04/24常见问题
相似工具推荐
stable-diffusion-webui
stable-diffusion-webui 是一个基于 Gradio 构建的网页版操作界面,旨在让用户能够轻松地在本地运行和使用强大的 Stable Diffusion 图像生成模型。它解决了原始模型依赖命令行、操作门槛高且功能分散的痛点,将复杂的 AI 绘图流程整合进一个直观易用的图形化平台。 无论是希望快速上手的普通创作者、需要精细控制画面细节的设计师,还是想要深入探索模型潜力的开发者与研究人员,都能从中获益。其核心亮点在于极高的功能丰富度:不仅支持文生图、图生图、局部重绘(Inpainting)和外绘(Outpainting)等基础模式,还独创了注意力机制调整、提示词矩阵、负向提示词以及“高清修复”等高级功能。此外,它内置了 GFPGAN 和 CodeFormer 等人脸修复工具,支持多种神经网络放大算法,并允许用户通过插件系统无限扩展能力。即使是显存有限的设备,stable-diffusion-webui 也提供了相应的优化选项,让高质量的 AI 艺术创作变得触手可及。
everything-claude-code
everything-claude-code 是一套专为 AI 编程助手(如 Claude Code、Codex、Cursor 等)打造的高性能优化系统。它不仅仅是一组配置文件,而是一个经过长期实战打磨的完整框架,旨在解决 AI 代理在实际开发中面临的效率低下、记忆丢失、安全隐患及缺乏持续学习能力等核心痛点。 通过引入技能模块化、直觉增强、记忆持久化机制以及内置的安全扫描功能,everything-claude-code 能显著提升 AI 在复杂任务中的表现,帮助开发者构建更稳定、更智能的生产级 AI 代理。其独特的“研究优先”开发理念和针对 Token 消耗的优化策略,使得模型响应更快、成本更低,同时有效防御潜在的攻击向量。 这套工具特别适合软件开发者、AI 研究人员以及希望深度定制 AI 工作流的技术团队使用。无论您是在构建大型代码库,还是需要 AI 协助进行安全审计与自动化测试,everything-claude-code 都能提供强大的底层支持。作为一个曾荣获 Anthropic 黑客大奖的开源项目,它融合了多语言支持与丰富的实战钩子(hooks),让 AI 真正成长为懂上
ComfyUI
ComfyUI 是一款功能强大且高度模块化的视觉 AI 引擎,专为设计和执行复杂的 Stable Diffusion 图像生成流程而打造。它摒弃了传统的代码编写模式,采用直观的节点式流程图界面,让用户通过连接不同的功能模块即可构建个性化的生成管线。 这一设计巧妙解决了高级 AI 绘图工作流配置复杂、灵活性不足的痛点。用户无需具备编程背景,也能自由组合模型、调整参数并实时预览效果,轻松实现从基础文生图到多步骤高清修复等各类复杂任务。ComfyUI 拥有极佳的兼容性,不仅支持 Windows、macOS 和 Linux 全平台,还广泛适配 NVIDIA、AMD、Intel 及苹果 Silicon 等多种硬件架构,并率先支持 SDXL、Flux、SD3 等前沿模型。 无论是希望深入探索算法潜力的研究人员和开发者,还是追求极致创作自由度的设计师与资深 AI 绘画爱好者,ComfyUI 都能提供强大的支持。其独特的模块化架构允许社区不断扩展新功能,使其成为当前最灵活、生态最丰富的开源扩散模型工具之一,帮助用户将创意高效转化为现实。
NextChat
NextChat 是一款轻量且极速的 AI 助手,旨在为用户提供流畅、跨平台的大模型交互体验。它完美解决了用户在多设备间切换时难以保持对话连续性,以及面对众多 AI 模型不知如何统一管理的痛点。无论是日常办公、学习辅助还是创意激发,NextChat 都能让用户随时随地通过网页、iOS、Android、Windows、MacOS 或 Linux 端无缝接入智能服务。 这款工具非常适合普通用户、学生、职场人士以及需要私有化部署的企业团队使用。对于开发者而言,它也提供了便捷的自托管方案,支持一键部署到 Vercel 或 Zeabur 等平台。 NextChat 的核心亮点在于其广泛的模型兼容性,原生支持 Claude、DeepSeek、GPT-4 及 Gemini Pro 等主流大模型,让用户在一个界面即可自由切换不同 AI 能力。此外,它还率先支持 MCP(Model Context Protocol)协议,增强了上下文处理能力。针对企业用户,NextChat 提供专业版解决方案,具备品牌定制、细粒度权限控制、内部知识库整合及安全审计等功能,满足公司对数据隐私和个性化管理的高标准要求。
ML-For-Beginners
ML-For-Beginners 是由微软推出的一套系统化机器学习入门课程,旨在帮助零基础用户轻松掌握经典机器学习知识。这套课程将学习路径规划为 12 周,包含 26 节精炼课程和 52 道配套测验,内容涵盖从基础概念到实际应用的完整流程,有效解决了初学者面对庞大知识体系时无从下手、缺乏结构化指导的痛点。 无论是希望转型的开发者、需要补充算法背景的研究人员,还是对人工智能充满好奇的普通爱好者,都能从中受益。课程不仅提供了清晰的理论讲解,还强调动手实践,让用户在循序渐进中建立扎实的技能基础。其独特的亮点在于强大的多语言支持,通过自动化机制提供了包括简体中文在内的 50 多种语言版本,极大地降低了全球不同背景用户的学习门槛。此外,项目采用开源协作模式,社区活跃且内容持续更新,确保学习者能获取前沿且准确的技术资讯。如果你正寻找一条清晰、友好且专业的机器学习入门之路,ML-For-Beginners 将是理想的起点。
ragflow
RAGFlow 是一款领先的开源检索增强生成(RAG)引擎,旨在为大语言模型构建更精准、可靠的上下文层。它巧妙地将前沿的 RAG 技术与智能体(Agent)能力相结合,不仅支持从各类文档中高效提取知识,还能让模型基于这些知识进行逻辑推理和任务执行。 在大模型应用中,幻觉问题和知识滞后是常见痛点。RAGFlow 通过深度解析复杂文档结构(如表格、图表及混合排版),显著提升了信息检索的准确度,从而有效减少模型“胡编乱造”的现象,确保回答既有据可依又具备时效性。其内置的智能体机制更进一步,使系统不仅能回答问题,还能自主规划步骤解决复杂问题。 这款工具特别适合开发者、企业技术团队以及 AI 研究人员使用。无论是希望快速搭建私有知识库问答系统,还是致力于探索大模型在垂直领域落地的创新者,都能从中受益。RAGFlow 提供了可视化的工作流编排界面和灵活的 API 接口,既降低了非算法背景用户的上手门槛,也满足了专业开发者对系统深度定制的需求。作为基于 Apache 2.0 协议开源的项目,它正成为连接通用大模型与行业专有知识之间的重要桥梁。