HOS ME - 一个功能强大的办公自动化平台,支持批量任务处理、模板管理、复杂内容渲染和文档导入导出
Project description
HOS ME
一个功能强大的办公自动化平台,支持批量任务处理、模板管理、复杂内容渲染和文档导入导出。
功能特性
核心功能
- 模板管理:支持XML模板格式,支持模板导入导出
- 批量处理:支持批量生成文档、批量转换等功能
- 文档转换:支持多种格式之间的转换,包括DOCX、PDF、JSON、EXCEL、MD等
- 图片处理:支持图片自动排序、OCR识别等功能
- 图表渲染:支持多种图表类型的渲染
- OCR功能:集成DeepSeek OCR,支持图片内容识别和模板变量填充
- Ollama管理:支持Ollama自动下载、安装和模型管理
- 本地模型支持:支持热门模型如A3B-Q8量化版本的自动下载和使用
扩展功能
- 会议管理:支持会议纪要生成、会议安排等功能
- 项目管理:支持项目计划、进度跟踪等功能
- 知识库:支持知识管理、检索等功能
- RAG库优化:支持自动生成文件总结,可配置总结长度
- 日程管理:支持日程安排、提醒等功能
- 审批管理:支持审批流程、状态跟踪等功能
- 任务管理:支持任务分配、进度跟踪等功能
命令行支持
- 所有功能均可通过命令行调用
- 自定义模块和工作流自动兼容命令行模式
- 提供完整的命令行帮助文档
安装方法
从PyPI安装
pip install HOS_ME
从源码安装
# 克隆仓库
git clone https://github.com/hos-me/hos-me.git
cd hos-me
# 安装依赖
pip install -r requirements.txt
# 安装包
pip install -e .
安装完整版本(包含所有可选依赖)
pip install HOS_ME[full]
快速开始
命令行使用
# 查看帮助
hos-me --help
# 初始化配置
hos-me init
# 运行服务器
hos-me run
# 显示版本信息
hos-me version
# 检查状态
hos-me status
通过配置文件运行
# 使用指定配置文件运行
hos-me run --config ~/.hos-me/config.json
# 启用调试模式
hos-me run --debug
# 指定主机和端口
hos-me run --host 127.0.0.1 --port 8000
配置文件
配置文件位于 ~/.hos-me/config.json,您可以根据需要修改配置:
{
"api_key": "your_api_key",
"deepseek_api_key": "your_deepseek_api_key",
"ollama_url": "http://localhost:11434",
"log_level": "INFO",
"port": 5000,
"host": "0.0.0.0",
"debug": false,
"upload_folder": "~/.hos-me/uploads",
"log_folder": "~/.hos-me/logs"
}
系统设置文件
系统设置文件位于项目根目录的 system_settings.json,包含模板设置、API设置、系统设置和RAG设置:
{
"template_settings": {
"output_before": {
"format": "txt",
"encoding": "utf-8"
},
"output_during": {
"docx": {
"font_name": "微软雅黑",
"font_size": 12,
"margin": {"top": 2.54, "right": 2.54, "bottom": 2.54, "left": 2.54},
"line_spacing": 1.5
}
}
},
"api_settings": {
"default_api_source": "deepseek",
"request_timeout": 30,
"max_retries": 3
},
"system_settings": {
"app_name": "HOS可扩展式办公平台",
"version": "1.1.3",
"debug": false
},
"rag_settings": {
"default_library_id": "",
"auto_generate_embeddings": true,
"summary_settings": {
"enabled": true,
"max_chars": 100,
"include_filename": true,
"include_content_preview": true
}
}
}
功能使用
文件上传下载
单文件上传
curl -X POST -F "file=@path/to/file.txt" http://localhost:5000/api/upload
多文件上传
curl -X POST -F "files=@path/to/file1.txt" -F "files=@path/to/file2.txt" http://localhost:5000/api/upload/multiple
文件下载
curl -O http://localhost:5000/api/download/filename.txt
RAG库使用
创建RAG库
curl -X POST -H "Content-Type: application/json" -d '{"name": "我的RAG库", "description": "测试RAG库"}' http://localhost:5000/api/rag/libraries
上传文档到RAG库
curl -X POST -F "library_id=raglib_1234567890" -F "file=@path/to/document.txt" -F "title=文档标题" http://localhost:5000/api/rag/documents/upload
使用RAG库生成报告
curl -X POST -H "Content-Type: application/json" -d '{"prompt": "生成一份关于AI的报告", "rag_library_id": "raglib_1234567890"}' http://localhost:5000/api/generate_single_report
配置指南
日志配置
日志文件位于 ~/.hos-me/logs/hos-me.log,可以通过修改配置文件中的 log_level 来调整日志级别:
- DEBUG: 详细调试信息
- INFO: 普通信息
- WARNING: 警告信息
- ERROR: 错误信息
- CRITICAL: 严重错误信息
上传下载配置
- 上传文件保存位置:
~/.hos-me/uploads - 支持的文件类型:txt, docx, pdf, xls, xlsx, csv
- 最大文件大小:10MB(可在system_settings.json中修改)
RAG配置
RAG配置位于 system_settings.json 中的 rag_settings 部分:
enabled_rag: 是否启用RAG功能default_library_id: 默认使用的RAG库IDauto_generate_embeddings: 是否自动生成嵌入summary_settings: 文档总结配置enabled: 是否启用自动总结max_chars: 总结的最大字符数include_filename: 是否包含文件名include_content_preview: 是否包含内容预览
常见问题
安装后无法运行
确保所有依赖都已正确安装:
pip install HOS_ME[full]
上传文件失败
- 检查文件大小是否超过限制
- 检查文件类型是否被支持
- 检查上传目录权限
RAG功能无法使用
- 确保已安装sentence_transformers依赖
- 确保RAG库已创建并包含文档
- 确保已生成文档嵌入
应用无法启动
- 检查配置文件是否正确
- 检查端口是否被占用
- 检查日志文件获取详细错误信息
API 文档
健康检查
GET /api/health
文件上传
# 单文件上传
POST /api/upload
Content-Type: multipart/form-data
# 多文件上传
POST /api/upload/multiple
Content-Type: multipart/form-data
文件下载
GET /api/download/<filename>
模板管理
# 获取所有模板
GET /api/templates
# 获取指定模板
GET /api/templates/<template_id>
# 创建模板
POST /api/templates
# 更新模板
PUT /api/templates/<template_id>
# 删除模板
DELETE /api/templates/<template_id>
开发指南
安装开发依赖
pip install HOS_ME[dev]
运行测试
pytest
代码风格检查
flake8
black .
isort .
构建文档
sphinx-build -b html docs/source docs/build
目录结构
HOS_ME/
├── HOS_ME/
│ ├── templates/ # 模板文件
│ ├── static/ # 静态资源
│ ├── utils/ # 工具模块
│ ├── __init__.py # 包初始化
│ └── app.py # 主应用
├── templates_storage/ # 模板存储
├── requirements.txt # 依赖列表
├── setup.py # 安装配置
└── README.md # 项目说明
依赖项
核心依赖
- Flask>=2.0.0
- requests>=2.25.0
- python-dotenv>=0.20.0
- python-docx>=1.0.0
- lxml>=4.6.0
- pillow>=8.0.0
上传下载功能依赖
- flask-dropzone>=2.0.0
- flask-uploads>=0.2.1
命令行界面依赖
- click>=8.0.0
日志系统依赖
- python-json-logger>=2.0.0
文件处理依赖
- PyPDF2>=2.0.0
- openpyxl>=3.0.7
- pandas>=1.3.0
许可证
MIT
贡献
欢迎提交Issue和Pull Request!
联系方式
- 作者:HOS ME Team
- 邮箱:hos_me@example.com
- 项目地址:https://github.com/hos-me/hos-me
Ollama管理
检查Ollama状态
# 命令行方式
hos-me ollama status
# API方式
curl http://localhost:5000/api/ollama/status
安装Ollama
# 命令行方式
hos-me ollama install
# API方式
curl -X POST http://localhost:5000/api/ollama/install
启动Ollama服务
# 命令行方式
hos-me ollama start
# API方式
curl -X POST http://localhost:5000/api/ollama/start
安装默认模型
# 命令行方式
hos-me ollama install-default-model
# API方式
curl -X POST http://localhost:5000/api/ollama/models/install_default
下载指定模型
# 命令行方式
hos-me ollama download-model --model-name a3b-q8_0
# API方式
curl -X POST -H "Content-Type: application/json" -d '{"model_name": "a3b-q8_0"}' http://localhost:5000/api/ollama/models/download
完整设置Ollama
# 命令行方式(自动安装Ollama、启动服务并下载默认模型)
hos-me ollama setup
# API方式
curl -X POST http://localhost:5000/api/ollama/setup
RAG库使用
创建RAG库
# 命令行方式
hos-me rag create --name "我的RAG库" --description "测试RAG库"
# API方式
curl -X POST -H "Content-Type: application/json" -d '{"name": "我的RAG库", "description": "测试RAG库"}' http://localhost:5000/api/rag/libraries
上传文档到RAG库
# 命令行方式
hos-me rag upload-document --library-id raglib_1234567890 --file path/to/document.txt --title "文档标题"
# API方式
curl -X POST -F "library_id=raglib_1234567890" -F "file=@path/to/document.txt" -F "title=文档标题" http://localhost:5000/api/rag/documents/upload
更新RAG库中文档总结
# 命令行方式
hos-me rag update-library-summaries --library-id raglib_1234567890
更新所有文档总结
# 命令行方式
hos-me rag update-summaries
系统设置
配置文件说明
系统设置文件位于 ~/.hos-me/system_settings.json,包含以下主要配置项:
- template_settings: 模板相关配置
- api_settings: API相关配置
- system_settings: 系统基本配置
- rag_settings: RAG库相关配置
- summary_settings: 文档总结配置
- enabled: 是否启用自动总结
- max_chars: 总结的最大字符数(默认100)
- include_filename: 是否包含文件名
- include_content_preview: 是否包含内容预览
- summary_settings: 文档总结配置
- install_settings: 安装相关配置
- ollama: Ollama相关配置
- enabled: 是否启用Ollama
- auto_download: 是否自动下载Ollama
- base_url: Ollama服务地址
- default_model: 默认模型(推荐a3b-q8_0)
- recommended_models: 推荐模型列表
- ollama: Ollama相关配置
修改系统设置
# 通过API修改
curl -X PUT -H "Content-Type: application/json" -d '{"rag_settings": {"summary_settings": {"max_chars": 200}}}' http://localhost:5000/api/system/settings
命令行使用
查看所有命令
hos-me --help
查看特定组命令
hos-me rag --help
查看特定命令帮助
hos-me rag create --help
常用命令示例
# 初始化配置
hos-me init
# 运行服务器
hos-me run
# 显示版本信息
hos-me version
# 检查状态
hos-me status
# 列出RAG库
hos-me rag list
# 创建自定义模块
hos-me custom create-module --name "我的模块" --description "测试模块"
# 生成工作流
hos-me custom generate-workflow "创建一个数据分析工作流" --save
# 将工作流转换为模块
hos-me custom convert-workflow-to-module workflow_1234567890
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file hos_me-1.1.6.tar.gz.
File metadata
- Download URL: hos_me-1.1.6.tar.gz
- Upload date:
- Size: 184.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
99882f5d417b314f53f637e93c4d34c1bd38dc3d2a498b927560c8569c80a10d
|
|
| MD5 |
03afa54ec7560196f2f410637d546da5
|
|
| BLAKE2b-256 |
db464a6b656d75602e8e7e4142ec04665b6d8236b74dde5a04373db7ac8de16d
|
File details
Details for the file hos_me-1.1.6-py3-none-any.whl.
File metadata
- Download URL: hos_me-1.1.6-py3-none-any.whl
- Upload date:
- Size: 171.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
88d3388128356fea06a65832d1261326b63b66028cba1588ab7ee67930c25722
|
|
| MD5 |
34614da1ca847356774712e5956802ed
|
|
| BLAKE2b-256 |
ca6b61d545f6719884e9a1a7753f014de661627f30b9f112820e728ff3cd60fc
|