# GetEnergyByAgentSkills **Repository Path**: hong-nice/GetEnergyByAgentSkills ## Basic Information - **Project Name**: GetEnergyByAgentSkills - **Description**: AI学习 - 应用Agent Skills - **Primary Language**: Python - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-01-24 - **Last Updated**: 2026-01-29 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # GetEnergyByAgentSkills ## 项目简介 GetEnergyByAgentSkills 是一个基于 **Ollama** 和 **Flask** 构建的 AI 技术学习项目,集成了智能聊天、电站发电量查询和 AnythingLLM 工作区链接等功能。 该项目展示了如何构建一个具有技能(Skills)扩展能力的 AI 聊天系统,通过模块化的设计实现功能的灵活扩展。 ## 功能特性 - 🤖 **智能聊天**:基于 Ollama 本地大模型的对话能力 - 🔋 **电站发电量查询**:实时查询电站发电情况 - 🔗 **AnythingLLM 工作区链接**:连接本地 AnythingLLM 工作区 - 💻 **双界面支持**:Web 界面和命令行界面 - 📱 **响应式 Web 设计**:支持多设备访问 - 🎨 **现代化界面**:美观的聊天界面和交互体验 - 🔧 **模块化设计**:易于扩展新的技能和功能 ## 项目结构 ``` GetEnergyByAgentSkills/ ├── src/ # 源代码目录 │ ├── __init__.py # 包初始化文件 │ ├── app.py # Flask Web 应用 │ ├── chat.py # 聊天核心功能 │ ├── list_models.py # 模型列表功能 │ ├── main.py # 命令行主程序 │ ├── skills/ # 技能模块 │ │ ├── __init__.py # 技能包初始化 │ │ ├── skill_manager.py # 技能管理器 │ │ ├── power_skill.py # 电站发电量查询技能 │ │ └── anythingllm_skill.py # AnythingLLM 链接技能 │ └── web/ # Web 相关资源 │ ├── static/ # 静态资源 │ │ ├── css/ # CSS 样式 │ │ └── js/ # JavaScript 脚本 │ └── templates/ # HTML 模板 ├── run.py # Web 应用启动脚本 ├── cli.py # 命令行界面启动脚本 ├── requirements.txt # 依赖包配置 ├── .gitignore # Git 忽略文件 ├── README.md # 项目说明文档 └── 调用结果.png # 项目截图 ``` ## 环境要求 - Python 3.8+ - Ollama(已安装并运行) - Flask 2.0+ - 网络连接(用于模型下载和 API 调用) ## 安装和运行 ### 1. 克隆项目 ```bash git clone https://gitee.com/hong-nice/GetEnergyByAgentSkills.git cd GetEnergyByAgentSkills ``` ### 2. 安装依赖 ```bash pip install -r requirements.txt ``` ### 3. 启动 Ollama 确保 Ollama 服务已经启动并运行。 ### 4. 运行项目 #### 方法 A: Web 界面 ```bash python run.py ``` 然后在浏览器中访问:`http://localhost:5000` #### 方法 B: 命令行界面 ```bash python cli.py ``` ## 使用说明 ### Web 界面 1. **创建新对话**:点击右上角的 "新建对话" 按钮 2. **切换对话**:在左侧对话列表中选择要切换的对话 3. **重命名对话**:右键点击对话,选择 "重命名" 4. **删除对话**:右键点击对话,选择 "删除" 5. **发送消息**:在输入框中输入消息,按 Enter 发送 6. **使用技能**: - 输入 "今日发电量" 或相关关键词查询电站发电情况 - 输入 "链接 AnythingLLM 工作区" 或相关关键词链接本地工作区 ### 命令行界面 1. **直接输入消息**:与 AI 机器人聊天 2. **clear**:清空聊天历史 3. **history**:查看聊天历史 4. **exit/quit**:退出程序 5. **今日发电量**:查询电站发电情况 6. **链接 AnythingLLM 工作区**:链接本地工作区 ## 技术栈 | 类别 | 技术/库 | 用途 | |------|---------|------| | **编程语言** | Python 3.14 | 核心开发语言 | | **Web 框架** | Flask 2.0+ | Web 应用开发 | | **前端** | HTML5, CSS3, JavaScript | 界面开发 | | **AI 模型** | Ollama (DeepSeek-R1) | 本地大模型推理 | | **技能系统** | 自定义 Skill 系统 | 功能扩展 | | **工具** | Git | 版本控制 | ## 项目亮点 1. **模块化设计**:清晰的代码结构和模块化设计,易于维护和扩展 2. **技能系统**:灵活的技能扩展机制,可以轻松添加新的功能 3. **双界面支持**:同时支持 Web 界面和命令行界面,满足不同使用场景 4. **本地推理**:基于 Ollama 的本地模型推理,保护隐私,无需联网 5. **实时交互**:流畅的用户交互体验,支持实时消息处理 6. **响应式设计**:Web 界面支持多设备自适应 ## 技能扩展 要添加新的技能,只需: 1. 在 `src/skills/` 目录下创建新的技能文件 2. 继承 `BaseSkill` 类并实现 `can_handle` 和 `handle` 方法 3. 在 `src/skills/__init__.py` 中注册新技能 ## 未来计划 - [ ] 添加更多实用技能 - [ ] 支持更多大模型 - [ ] 实现用户认证系统 - [ ] 添加聊天记录持久化存储 - [ ] 优化前端界面和用户体验 - [ ] 添加多语言支持 ## 故障排除 ### 常见问题 1. **Ollama 未启动**:请确保 Ollama 服务已经启动并运行 2. **模型未下载**:首次使用时需要下载相应的模型 3. **端口被占用**:默认使用 5000 端口,如有冲突请修改端口号 4. **依赖包缺失**:请确保已安装所有依赖包 ### 解决方案 - 检查 Ollama 服务状态:`ollama status` - 下载模型:`ollama pull deepseek-ai/deepseek-llm:7b-chat` - 查看端口占用:`netstat -ano | findstr :5000` - 重新安装依赖:`pip install -r requirements.txt` ## 贡献指南 欢迎对项目进行贡献!如果您有任何建议或改进, please feel free to submit a pull request or open an issue. ## 许可证 本项目采用 MIT 许可证 - 详见 [LICENSE](LICENSE) 文件 ## 联系方式 - 作者:洪骑白马 - 邮箱:3527938@qq.com - 项目地址:https://gitee.com/hong-nice/GetEnergyByAgentSkills --- ## 效果展示 ![alt text](调用结果.png) **GetEnergyByAgentSkills** - 探索 AI 技术的无限可能!🚀