OpenManus本地部署并测试,国产GPU也能跑的教程

OpenManus由MetaGPT团队开发,而MetaGPT是一个专注于多智能体框架的项目。在智能体行业,这算是一个老牌项目了。

团队成员在AI代理领域拥有丰富的经验,例如核心作者梁新兵和向劲宇曾在AI竞赛中取得优异成绩,并参与过“开源版Devin”等项目。这些技术背景使他们能够快速理解Manus的核心功能,并设计出复刻方案。

Demo:

看Demo,效果的确不错

OpenManus - Open-source Framework for Building AI Agents

使用 OpenManus 享受您自己的代理!

我们还很高兴地推出OpenManus-RL,这是一个开源项目,致力于基于强化学习 (RL)(例如 GRPO)的 LLM 代理调整方法,由 UIUC 和 OpenManus 的研究人员合作开发。

安装步骤

有两种方式使用Conda或者uv,因为我的机器上已经部署了Ananconda,所以我是用的第一种方法

  • 创建新的 conda 环境:
conda create -n open_manus python=3.12
conda activate open_manus
  • 克隆仓库:
git clone https://github.com/mannaandpoem/OpenManus.git
cd OpenManus
  • 安装依赖:
pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple 

安装成功后需要修改配置。

配置说明

OpenManus 需要配置使用的 LLM API,请按以下步骤设置:

在 config 目录创建 config.toml 文件(可从示例复制):

cp config/config.example.toml config/config.toml

编辑 config/config.toml 添加 API 密钥和自定义设置:

官方给定配置是:

# 全局 LLM 配置
[llm]
model = "gpt-4o"
base_url = "https://api.openai.com/v1"
api_key = "sk-..."  # 替换为真实 API 密钥
max_tokens = 4096
temperature = 0.0

# 可选特定 LLM 模型配置
[llm.vision]
model = "gpt-4o"
base_url = "https://api.openai.com/v1"
api_key = "sk-..."  # 替换为真实 API 密钥

因为gpt-4o要花钱,所以我用本地的ollama服务。因为我的ollama跑在海光DCU(4卡)上,所以这也算是全国产部署OpenManus了。在DCU上部署Ollama参考:北方的郎:在海光DCU上用ollama部署DeepSeek-R1,及在Dify等中应用

我选的大模型服务是:qwqminicpm-v

# Global LLM configuration
[llm]
model = "qwq"
base_url = "http://ollamahost:11434/v1"
api_key = "sk-..."
max_tokens = 4096
temperature = 0.0

# Optional configuration for specific LLM models
[llm.vision]
model = "minicpm-v"
base_url = "http://ollamahost:11434/vi"
api_key = "sk-..."

快速启动

一行命令运行 OpenManus:

python main.py

因为googlesearch调用总有一些问题,所以我只是简单测了一些不需要搜索的工作,例如

计算30以内的质数:

效果都还不错,准备后续看看怎么在本地配置搜索等其他工具。

GoogleSearch问题解决(换成baiduSearch)

pip install baidusearch

然后修改app/tool/google_search.py

将开头代码换成(注释位置为原代码):

import asyncio
from typing import List

#from googlesearch import search
from baidusearch.baidusearch import search

from app.tool.base import BaseTool

class GoogleSearch(BaseTool):
    #name: str = "google_search"
    name: str = "baidu_search"

Search这一步的问题过去了:

不过第二部又出问题了:

首先感觉是应该换支持Function Call的大模型才行。不过搜索(Tools models · Ollama Search)发现qwq是支持tools的。

也可能是调用本地ollama服务的问题。先修改配置换成硅基流动的API上的 "Qwen/QwQ-32B"看看

# 全局LLM配置
[llm]
# 模型名称
model = "Qwen/QwQ-32B"
# API基础URL
base_url = "https://api.siliconflow.cn/v1"
# 你的API密钥 (请替换为你自己的密钥)
api_key = "你的API密钥"
# 最大生成标记数
max_tokens = 4096
# 温度参数 (0.0表示最确定性的输出)
temperature = 0.0

然后就全部顺利执行了:

感觉因为这次ollama上面跑的都是q4模型,能力相对有限。能力差就让它稍微发挥一下把。把Temperture调整成了0.7,然后就运行下去了。

# Global LLM configuration
[llm]
model = "qwq"
base_url = "http://ollamahost:11434/v1"
api_key = "sk-..."
max_tokens = 4096
temperature = 0.0

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值