Skip to main content

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库ID
  • auto_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!

联系方式

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: 是否包含内容预览
  • install_settings: 安装相关配置
    • ollama: Ollama相关配置
      • enabled: 是否启用Ollama
      • auto_download: 是否自动下载Ollama
      • base_url: Ollama服务地址
      • default_model: 默认模型(推荐a3b-q8_0)
      • recommended_models: 推荐模型列表

修改系统设置

# 通过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

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

hos_me-1.1.6.tar.gz (184.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

hos_me-1.1.6-py3-none-any.whl (171.8 kB view details)

Uploaded Python 3

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

Hashes for hos_me-1.1.6.tar.gz
Algorithm Hash digest
SHA256 99882f5d417b314f53f637e93c4d34c1bd38dc3d2a498b927560c8569c80a10d
MD5 03afa54ec7560196f2f410637d546da5
BLAKE2b-256 db464a6b656d75602e8e7e4142ec04665b6d8236b74dde5a04373db7ac8de16d

See more details on using hashes here.

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

Hashes for hos_me-1.1.6-py3-none-any.whl
Algorithm Hash digest
SHA256 88d3388128356fea06a65832d1261326b63b66028cba1588ab7ee67930c25722
MD5 34614da1ca847356774712e5956802ed
BLAKE2b-256 ca6b61d545f6719884e9a1a7753f014de661627f30b9f112820e728ff3cd60fc

See more details on using hashes here.

Release history Release notifications | RSS feed

This release

1.1.6 This release

2 files

1.1.5

2 files

1.1.2

2 files

1.1.1

2 files

1.1.0

2 files

1.0.6

2 files

1.0.5

2 files

1.0.4

2 files

1.0.3

2 files

1.0.2

2 files

1.0.1

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page