# agent_workflow **Repository Path**: zhangjun76/agent_workflow ## Basic Information - **Project Name**: agent_workflow - **Description**: Agent_Workflow 是一个基于 Ollama 的智能体框架,旨在帮助开发者快速构建单/多智能体系统。项目提供了丰富的工具集成和便捷的部署方式。 - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 1 - **Created**: 2025-03-12 - **Last Updated**: 2025-03-12 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # Agent_Workflow 项目
![Status](https://img.shields.io/badge/status-in%20development-yellow) ![Python](https://img.shields.io/badge/python-3.10-blue) ![License](https://img.shields.io/badge/license-MIT-green)
如果觉得项目有帮助,欢迎 Star ⭐️
## 📑 目录 - [项目简介](#-项目简介) - [核心功能](#-核心功能) - [更新日志](#-更新日志) - [快速开始](#-快速开始) - [配置指南](#-配置指南) - [更新计划](#-更新计划) - [错误预览](#-错误预览) - [许可证](#-许可证) - [鸣谢](#-鸣谢) ## 📖 项目简介 Agent_Workflow 是一个基于 Ollama 的智能体框架,旨在帮助开发者快速构建单/多智能体系统。项目提供了丰富的工具集成和便捷的部署方式。 ## 📆 更新日志 - 2025-1-15 更新chat_ui的基于LightRAG本地知识库支持 ## 🚀 核心功能 ### 📌 工具支持
天气查询 - 基于高德API,需配置 `GAODE_WEATHER_API_KEY` - [查看示例输出](https://github.com/panxingfeng/agent_chat_wechat/blob/master/images/weathertool_result.png)
智能搜索 - 基于Perplexica开源项目,建议使用Docker部署 - [Perplexica工具项目地址](https://github.com/ItzCrazyKns/Perplexica) - [查看示例输出](https://github.com/panxingfeng/agent_chat_wechat/blob/master/images/searchtool_result1.png) - 【重要】ollama 安装embedding模型 ollama run bge-m3】
文件转换工具 - 支持URL转PDF、PDF转其他文件格式等功能 - [控制台输出](https://github.com/panxingfeng/agent_chat_wechat/blob/master/images/pdftool_console_output.png) - [转换结果示例](https://github.com/panxingfeng/agent_chat_wechat/blob/master/images/pdf_converter_result.png)
图像工具 - 图像识别 支持 llama3.2vision/MiniCPM(支持多图像)/glm-edge-v - 图像生成 支持 flux.1-dev(本地部署)、sd-3.5-large(本地部署)、sd-webui - sdwebui 支持 forge(使用flux模型)(基于selenium实现,原生api不支持flux生成,需安装谷歌浏览器) 建议显存24G使用 - [图像识别示例输出](https://github.com/panxingfeng/agent_chat_wechat/blob/master/images/imagetool_result.png)
语音工具 - 支持 F5-TTS(需要使用一次gradio客户端进行语音文件的生成)、GPT-SoVITS - 感谢:[F5-TTS](https://github.com/SWivid/F5-TTS) [GPT-SoVITS](https://github.com/RVC-Boss/GPT-SoVITS)
### 🔌 启动方式 - ✅ vchat微信接入 [实现实例1](./images/wechat_demo1.png)、[实现实例2](./images/wechat_demo2.png)、[实现实例3](./images/wechat_demo3.png) ``` 把main.py中的注销打开即可 2.0还未测试 可能有一些细节未修改 ``` - ✅ FastAPI服务 [实现实例1](./images/fastapi_demo1.png)、[实现实例2](./images/fastapi_demo2.png) ``` 把main.py中的注销打开即可 2.0还未测试 可能有一些细节未修改 ``` - ✅ 飞书机器人 [实现实例1](./images/feishu_demo1.png)、[实现实例2](./images/feishu_demo2.png) ``` 把main.py中的注销打开即可 2.0还未测试 可能有一些细节未修改 ``` ## 🚀 快速开始 ### 环境准备 ```bash # 1. 克隆项目 git clone https://github.com/panxingfeng/agent_workflow.git cd agent_workflow # 2. 创建虚拟环境 conda create --name agent_workflow python=3.10 conda activate agent_workflow # 3. 安装依赖 pip install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple/ # 3.1 使用文件转换工具需要安装 pip install playwright playwright install # 安装Playwright 的浏览器 # 3.2 需要使用ui界面的需要安装 cd chat_ui npm install npm start ``` ## 🛠️ 配置指南 ### 📱 Perplexica 搜索工具 Perplexica 是一个强大的搜索工具,推荐: - ✨ 使用 Docker 进行安装部署 - 📖 查看[详细安装文档](https://github.com/ItzCrazyKns/Perplexica)获取完整指南 ### 🌤️ 天气工具 此工具基于高德地图 API,使用前需要: - 🔑 申请高德开放平台 API 密钥 - ⚙️ 在 `config.py` 文件中配置 `GAODE_WEATHER_API_KEY` 参数 ### 🎙️ 语音工具 语音克隆功能说明: - 🎯 使用高质量、无噪音的语音文件作为输入 - 💫 清晰的音源文件将带来最佳克隆效果 ### 🎨 图像工具 图像处理工具配置指南: #### 硬件要求 - 💻 根据实际内存容量选择适合的配置(模型在百度网盘,根据显存大小下载使用) - comfyui/sdwebui支持任意显存GPU。根据模型的尺寸和任务的复杂度而定 - 8G以下可以使用sdxl(任务不要太复杂)和sd1.5的模型。16G以上可以使用flux和sd3.5 large以上的模型 - 🖥️ Forge 启动器推荐使用 24GB 显存GPU #### 默认配置 - 🎯 默认生图工具:ComfyUI - 🔍 [查看学习视频教程](https://www.bilibili.com/video/BV1nMzEYZEr8) - 🔎 图像识别:Llama 3.2-vision 模型 #### 模型配置 - 📊 Forge 相关配置文件: - `config/base_model_info.xlsx`:基础模型预设 - `config/lora_model_info.xlsx`:Lora 模型预设 - `config/workflow_json.xlsx`:comfyui工作流预设信息 #### ComfyUI 配置 - 📦 推荐使用百度网盘安装包(内含两个预置模型): - 写实风格模型 - 通用型模型 - 🔧 工作流配置文件位于 `config/json_file` 目录 #### 其他 - 🛠️ 支持自定义工作流: - 参考 `basic_t2i.json` 的设置规则 - 可根据需求修改形式为文生图的工作流 - 💡 提示词生成支持多种模式: - RAG 模式:是我把常用的sd tag词放到了本地rag中 - LLM 模式:直接使用 LLM 生成(预设了专门sd提示词的prompt) - 默认:PromptGenMode.None - ⚙️ forge/comfyui默认模型可在 config 中修改: - `FORGE_MODEL` - `COMFYUI_MODEL` ### 🔧 开发者资源 - 📝 示例代码:查看 `example` 目录下的工具代码的参考实现 - 💾 资源下载:[百度网盘链接](https://pan.baidu.com/s/1NL8GLMGwu7jjuI0k-iAvtg?pwd=sczs) - 包含:模型文件、环境包 - 环境配置提示:可直接复制到 conda 创建的目录下 --- ### 运行示例 ```bash # 版本2.0 我只测试了搜索,GPT-SoVITS,天气,comfyui,其余有问题的可以提issues,有时间就修改 python main.py # 后续缺失什么就安装什么 ``` | ![运行示例](./images/main_result.png) | ![chat_ui演示](/images/cht_ui演示.gif) | |:---:|:---:| ## 📅 更新计划 ### 🎨 图像工具 - ✅ 支持 ComfyUI - ComfyUI 工作流集成 (已完成 -> 基础文生图) - [ ] 支持语义描述进行成图的制作 - 使用文本内容进行最后类似于换装/图片高清放大/图像修复等等 ### 🎥 视频工具 - [ ] 基于ComfyUI的视频生成功能 - Text to Video (T2V) - Image to Video (I2V) ### 🎵 音频工具 - [ ] 基于ComfyUI的音频生成功能 - 文本到音频转换 - 基于操作界面的语音训练功能 ### 💻 UI界面 - ✅ 基于react的Web界面 - 工作流程可视化 ### 📖 知识库 - ✅ 基于lightrag的知识库检索 - chat_ui版已支持 - 支持单文件、多文件 - 支持格式:doc、pdf、ppt、txt、html、md、json - 音频格式需要安装openai--whisper-large-v3-turbo ### 🤖 多智能体协调工作 - ✅ 智能体通信机制 (持续更新中) - 消息传递 - 错误纠正 - 优化性能 ps:工作流正在陆陆续续的搭建和测试中 ## ⚠️ 错误预览 1. 出现了这种错误是因为没有填写config文件中的sd的api账户信息未设置 ```bash 获取模型列表时发生错误: 401 Client Error: Unauthorized for url: http://127.0.0.1:7862/sdapi/v1/sd-models ``` ## 📄 许可证 本项目基于 MIT 协议开源,使用时请保留作者信息。保护好开源环境 可能涉及侵权风险,本项目生成的内容禁止商用,仅可用作学习和研究使用,请合法合规使用,后续因生成内容产生纠纷,与本人无关。 ## 🙏 鸣谢 - [langchain](https://github.com/langchain-ai/langchain) - 提供项目框架基础 - [VChat](https://github.com/z2z63/VChat) - 提供微信客户端接入支持 - [ollama](https://github.com/ollama/ollama) - 提供本地模型部署支持 - [Perplexica](https://github.com/ItzCrazyKns/Perplexica) - 提供搜索工具支持 - [F5-TTS](https://github.com/SWivid/F5-TTS)、[GPT-SoVITS](https://github.com/RVC-Boss/GPT-SoVITS) - 提供语音工具的支持 - [comfyui](https://github.com/comfyanonymous/ComfyUI)、[sd_webui](https://github.com/AUTOMATIC1111/stable-diffusion-webui) - 提供文生图等的支持 ---