NeuralAgent本地化部署实现AI智能应用

admin 2026-01-30 17:42:28 网络安全文章 来源:ZONE.CI 全球网 0 阅读模式

文章总结: 本文详述了NeuralAgent本地化部署流程,涵盖环境搭建、数据库迁移及前后端启动步骤。重点分享了将默认AI服务替换为本地Ollama的配置修改,以及解决bcrypt密码验证超过72字节报错的具体代码调整,最终实现基于本地LLM的桌面自动化应用搭建。 综合评分: 84 文章分类: AI安全,安全工具


cover_image

NeuralAgent本地化部署实现AI智能应用

原创

TP微客 TP微客

技术分享交流

2026年1月30日 12:57 福建

1 前言

    NeuralAgent 是一个基于大语言模型(LLM)的自主 AI 智能体(Autonomous Agent),专为在真实桌面环境中执行复杂任务而设计。它能够像人类一样操作浏览器、理解界面、规划步骤并实时决策,实现从“指令”到“完成”的端到端自动化。‌

2 搭建过程

(1)下载neuralagent

下载NeuralAgent相关项目文件

git clone https://github.com/mosdehcom/neuralagent.git

进入NeuralAgent目录

cd neuralagent/backend

(2)创建并激活python虚拟环境

为了不和本地的相关环境冲突,可以新建一个虚拟的环境

# 创建虚拟环境python -m venv venv# 激活虚拟环境 (macOS/Linux)执行source venv/bin/activate# 激活虚拟环境 (Windows)执行venv\Scripts\activate

(3)安装相关依赖

使用如下命令进行安装:

pip install -r requirements.txt

复制文件夹下的.env.example文件到.env,并填上实际的内容

主要是填上postgresql的相关信息和ollama相关信息

我这里是用到本地的ollama环境,所以我填的地址是ollama的连接地址

(4)运行数据库迁移

执行如下命令

alembic upgrade head

可以进行数据库迁移操作,注意要确保你本地的postgresql是可以访问的状态

(5)启动后端服务器

通过如下命令就能运行后端的脚本

uvicorn main:app --reload --host 0.0.0.0 --port 8000

(6)前端桌面应用配置

通过如下命令安装Electron和React相关依赖

cd neuralagent/desktopnpm install

然后进入neuralagent-app目录下再次执行

cd neuralagent-appnpm install

复制neuralagent-app目录下的.env.example文件为.env

修改内容如下:

(7)设置守护进程和安装相关依赖

按照如下命令执行:

# 在desktop目录cd ..# 进入aiagent目录cd aiagent# 创建并激活虚拟环境python -m venv venv#linux系统的话执行:source venv/bin/activate # Windows系统的话执行:venv\Scripts\activate# 安装依赖pip install -r requirements.txt# 退出虚拟环境deactivate

(8)启动桌面应用

按照如下命令执行:

cd ../npm start

执行之后,可能会报错,根据实际的情况,调整以下代码,例如:

#agentic_tool.py文件的这个llm获取的内容,修改成以下内容:(因为原本是使用国外的AI,我修改成了本地的ollama访问,虽然这里写的是azure_openai,但实际是本地的AI) # 动态初始化 LLM,根据 .env 中 COMPUTER_USE_AGENT_MODEL_TYPE 决定model_type = os.getenv("COMPUTER_USE_AGENT_MODEL_TYPE", "openai").lower()model_id = os.getenv("COMPUTER_USE_AGENT_MODEL_ID", "gpt-4o") if model_type == "azure_openai":    llm= AzureChatOpenAI(        azure_deployment=model_id,        api_version=os.getenv("OPENAI_API_VERSION", "2024-12-01-preview"),        temperature=0.3,        max_tokens=None,        timeout=None,        max_retries=2,    )elif model_type == "openai":    llm= ChatOpenAI(        model=model_id,        api_key=os.getenv("OPENAI_API_KEY"),        base_url=os.getenv("OPENAI_BASE_URL"),        temperature=0.3,        max_tokens=None,        timeout=None,        max_retries=2,    )else:    raise ValueError(f"Unsupported COMPUTER_USE_AGENT_MODEL_TYPE: {model_type}")

(9)授权注册

运行好之后,会出来一个框,要求注册用户的相关信息

点击注册,并填写相关信息

但是这里注册之后,会遇到一些问题(例如提示密码超过72字节错误,实际没超过),又要修改一下backend\utils\security.py代码

                # backend/utils/security.pyimport bcryptdef hash_password(password: str) -> str:    """Hash a plain-text password using bcrypt."""    # 自动截断到 72 字节(bcrypt 原生限制)    password_bytes = password.encode('utf-8')    if len(password_bytes) > 72:        password_bytes = password_bytes[:72]    # bcrypt.gensalt() 默认 cost=12    salt = bcrypt.gensalt()    hashed = bcrypt.hashpw(password_bytes, salt)    return hashed.decode('utf-8')def verify_password(plain_password: str, hashed_password: str) -> bool:    """Verify a plain-text password against a hashed password."""    plain_bytes = plain_password.encode('utf-8')    if len(plain_bytes) > 72:        plain_bytes = plain_bytes[:72]    hashed_bytes = hashed_password.encode('utf-8')    return bcrypt.checkpw(plain_bytes, hashed_bytes)

(10)开始使用

可以使用提示内容,访问本地的ollamaAI进行协助操作应用

我目前是研究到这里,还需要继续修改源码,才能打通全部逻辑,感兴趣的可以自行修改代码,并研究下


欢迎关注「技术分享交流」公众号 ,如果有建议或者疑问的话,欢迎大家评论留言,如果喜欢公众号文章的话可以点【在看】,您的鼓励就是我的动力哈!!!


免责声明:

本文所载程序、技术方法仅面向合法合规的安全研究与教学场景,旨在提升网络安全防护能力,具有明确的技术研究属性。

任何单位或个人未经授权,将本文内容用于攻击、破坏等非法用途的,由此引发的全部法律责任、民事赔偿及连带责任,均由行为人独立承担,本站不承担任何连带责任。

本站内容均为技术交流与知识分享目的发布,若存在版权侵权或其他异议,请通过邮件联系处理,具体联系方式可点击页面上方的联系我

本文转载自:技术分享交流 TP微客 TP微客《NeuralAgent本地化部署实现AI智能应用》

评论:0   参与:  0