[](
https://github.com/zhangzhengde0225/hai)
[](
https://github.com/zhangzhengde0225/hai/issues)
<!-- [](
https://github.com/zhangzhengde0225/CDNet/blob/master/docs/DATASETS.md)
[](
https://github.com/zhangzhengde0225/CDNet/archive/refs/heads/master.zip) -->
#### 简体中文 | [English](https://github.com/zhangzhengde0225/hai/blob/main/docs/readme_en.md)
# 高能AI框架HepAI
HepAI是一个AI开源框架,是高能AI平台的核心技术,应用此技术可以加速多学科场景的科学研究,简化模型迭代和流程,是开发AI算法和应用的共性基础。
HepAI平台本身是一个软件系统,承载AI算法模型,提供AI计算能力,打通数据通道,并开展AI培训。
HepAI框架集成了高能物理领域的经典和最先进(SOTA)的人工智能算法。用户可以通过统一接口访问相关的算法模型、数据集和计算资源,使AI的应用变得简单高效。
<details open>
<summary><b>News</b></summary>
+ [2024.12.22] v1.1.16 支持远程模型
+ [2024.05.16] v1.1.9 HepAI Client支持GPT-4o系列模型。
+ [2024.03.26] v1.0.21 Make LLM request like OpenAI via HepAI object.
+ [2023.10.24] v1.0.18 接入dalle文生图模型,调用方法教程见[此处](https://note.ihep.ac.cn/s/EG60U1Rtf)。
+ [2023.04.21] v1.0.7通过hepai使用GPT-3.5,[hepai_api.md](docs/hepai_api.md).
+ [2023.02.09] 基于ChatGPT的**HaiChatGPT**已上线,使用简单,无需梯子!详情查看:[HaiChatGPT](https://code.ihep.ac.cn/zdzhang/haichatgpt).
+ [2023.01.16] 支持华为NPU服务器,如有算法国产化需求,请查阅[NPU文档](docs/computing_power/npu_power_doc.md)。
+ [2022.10.20] HAI v1.0.6-Beta 第一个测试版本发布,4个算法和3个数据集
+ [2022.08.23] HAI v1.0.0
</details>
<details open>
<summary><b>教程</b></summary>
[使用远程模型实现分布式模型、工具及智能体组件](https://aiapi001.ihep.ac.cn/mkdocs/workers/)
[60+深度学习论文代码的实现和解释 ](https://ai.ihep.ac.cn/tutorial/code/)
[在HPC计算集群中使用HepAI的快速入门](docs/quickstart_hpc.md)
[使用PointNet在JUNO实验中重建和识别大气中微子](https://code.ihep.ac.cn/zhangyiyu/pointnet)
</details>
<details open>
<summary><b>模型Zoo</b></summary>
<a href="https://code.ihep.ac.cn/zdzhang/hai/-/blob/main/docs/model_zoo.md">
<ul>
<li>
<img src="https://img.shields.io/static/v1?style=social&label=粒子物理&message=4 online, 3 TODO">
<li>
<img src="https://img.shields.io/static/v1?style=social&label=天体物理&message=1 TODO">
<li>
<img src="https://img.shields.io/static/v1?style=social&label=同步辐射&message=2 TODO">
<li>
<img src="https://img.shields.io/static/v1?style=social&label=中子科学&message=1 TODO">
<li>
<img src="https://img.shields.io/static/v1?style=social&label=通用神经网络&message=2 online, 5 TODO">
<li>
<img src="https://img.shields.io/static/v1?style=social&label=经典机器学习&message=2 TODO">
</ul>
</a>
</details>
<details open>
<summary><b>数据集Zoo</b></summary>
<a href="https://code.ihep.ac.cn/zdzhang/hai/-/blob/main/docs/datasets.md">
<ul>
<li>
<img src="https://img.shields.io/static/v1?style=social&label=粒子物理&message=3 available, 10+ TODO">
<li>
<img src="https://img.shields.io/static/v1?style=social&label=CV&message=1 available">
</a>
</details>
### 快速开始
```
pip install hepai --upgrade
hai -V # 查看版本
```
1. 命令行使用
```bash
hai train <model_name> # 训练模型, 例如: hai train particle_transformer
hai eval <model_name>
```
2. python库使用
python库统一接口:
```python
import hepai as hai
model = hai.hub.load('<model_name>') # 加载模型
config = model.config # 获取模型配置
config.batch_size = 32 # 修改配置
model.trian() # 训练模型
model.eval() # 评估模型
model.infer('<data>') # 模型推理
hai.train('particle_transformer')
```
3. 部署和远程调用
跨语言、跨平台的模型部署和远程调用
服务端:
```bash
hai start server # 启动服务
```
客户端
```python
from hepai import HepAI
client = HepAI()
models = client.list_models()
response = client.chat.completion.create(model="hepai/xiwu_v2", prompt="你好", max_tokens=100)
print(response.choices[0].text)
```
Raw data
{
"_id": null,
"home_page": "https://github.com/zhangzhengde0225/hai",
"name": "hepai",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.10.0",
"maintainer_email": null,
"keywords": null,
"author": "Zhengde Zhang",
"author_email": "zdzhang@ihep.ac.cn",
"download_url": "https://files.pythonhosted.org/packages/28/3b/2958879ba1ff7cd5ed68fbc39e36523ec580e2cd5c18e21b912bfa851d79/hepai-1.1.29.tar.gz",
"platform": null,
"description": "\n[](\nhttps://github.com/zhangzhengde0225/hai)\n[](\nhttps://github.com/zhangzhengde0225/hai/issues)\n<!-- [](\nhttps://github.com/zhangzhengde0225/CDNet/blob/master/docs/DATASETS.md)\n[](\nhttps://github.com/zhangzhengde0225/CDNet/archive/refs/heads/master.zip) -->\n\n#### \u7b80\u4f53\u4e2d\u6587 | [English](https://github.com/zhangzhengde0225/hai/blob/main/docs/readme_en.md)\n\n# \u9ad8\u80fdAI\u6846\u67b6HepAI\nHepAI\u662f\u4e00\u4e2aAI\u5f00\u6e90\u6846\u67b6\uff0c\u662f\u9ad8\u80fdAI\u5e73\u53f0\u7684\u6838\u5fc3\u6280\u672f\uff0c\u5e94\u7528\u6b64\u6280\u672f\u53ef\u4ee5\u52a0\u901f\u591a\u5b66\u79d1\u573a\u666f\u7684\u79d1\u5b66\u7814\u7a76\uff0c\u7b80\u5316\u6a21\u578b\u8fed\u4ee3\u548c\u6d41\u7a0b\uff0c\u662f\u5f00\u53d1AI\u7b97\u6cd5\u548c\u5e94\u7528\u7684\u5171\u6027\u57fa\u7840\u3002\n\nHepAI\u5e73\u53f0\u672c\u8eab\u662f\u4e00\u4e2a\u8f6f\u4ef6\u7cfb\u7edf\uff0c\u627f\u8f7dAI\u7b97\u6cd5\u6a21\u578b\uff0c\u63d0\u4f9bAI\u8ba1\u7b97\u80fd\u529b\uff0c\u6253\u901a\u6570\u636e\u901a\u9053\uff0c\u5e76\u5f00\u5c55AI\u57f9\u8bad\u3002\n\nHepAI\u6846\u67b6\u96c6\u6210\u4e86\u9ad8\u80fd\u7269\u7406\u9886\u57df\u7684\u7ecf\u5178\u548c\u6700\u5148\u8fdb\uff08SOTA\uff09\u7684\u4eba\u5de5\u667a\u80fd\u7b97\u6cd5\u3002\u7528\u6237\u53ef\u4ee5\u901a\u8fc7\u7edf\u4e00\u63a5\u53e3\u8bbf\u95ee\u76f8\u5173\u7684\u7b97\u6cd5\u6a21\u578b\u3001\u6570\u636e\u96c6\u548c\u8ba1\u7b97\u8d44\u6e90\uff0c\u4f7fAI\u7684\u5e94\u7528\u53d8\u5f97\u7b80\u5355\u9ad8\u6548\u3002\n\n<details open>\n<summary><b>News</b></summary>\n\n+ [2024.12.22] v1.1.16 \u652f\u6301\u8fdc\u7a0b\u6a21\u578b\uff01[\u70b9\u6b64\u67e5\u770b\u8be6\u60c5](https://aiapi001.ihep.ac.cn/mkdocs/workers/)\n+ [2024.05.16] v1.1.9 HepAI Client\u652f\u6301GPT-4o\u7cfb\u5217\u6a21\u578b\u3002\n+ [2024.03.26] v1.0.21 Make LLM request like OpenAI via HepAI object.\n+ [2023.10.24] v1.0.18 \u63a5\u5165dalle\u6587\u751f\u56fe\u6a21\u578b\uff0c\u8c03\u7528\u65b9\u6cd5\u6559\u7a0b\u89c1[\u6b64\u5904](https://note.ihep.ac.cn/s/EG60U1Rtf)\u3002\n+ [2023.04.21] v1.0.7\u901a\u8fc7hepai\u4f7f\u7528GPT-3.5\uff0c[hepai_api.md](docs/hepai_api.md).\n+ [2023.02.09] \u57fa\u4e8eChatGPT\u7684**HaiChatGPT**\u5df2\u4e0a\u7ebf\uff0c\u4f7f\u7528\u7b80\u5355\uff0c\u65e0\u9700\u68af\u5b50\uff01\u8be6\u60c5\u67e5\u770b\uff1a[HaiChatGPT](https://code.ihep.ac.cn/zdzhang/haichatgpt).\n+ [2023.01.16] \u652f\u6301\u534e\u4e3aNPU\u670d\u52a1\u5668\uff0c\u5982\u6709\u7b97\u6cd5\u56fd\u4ea7\u5316\u9700\u6c42\uff0c\u8bf7\u67e5\u9605[NPU\u6587\u6863](docs/computing_power/npu_power_doc.md)\u3002\n+ [2022.10.20] HAI v1.0.6-Beta \u7b2c\u4e00\u4e2a\u6d4b\u8bd5\u7248\u672c\u53d1\u5e03\uff0c4\u4e2a\u7b97\u6cd5\u548c3\u4e2a\u6570\u636e\u96c6\n+ [2022.08.23] HAI v1.0.0\n</details>\n\n<details open>\n<summary><b>\u6559\u7a0b</b></summary>\n\n[\u4f7f\u7528\u8fdc\u7a0b\u6a21\u578b\u5b9e\u73b0\u5206\u5e03\u5f0f\u6a21\u578b\u3001\u5de5\u5177\u53ca\u667a\u80fd\u4f53\u7ec4\u4ef6](https://aiapi001.ihep.ac.cn/mkdocs/workers/)\n[60+\u6df1\u5ea6\u5b66\u4e60\u8bba\u6587\u4ee3\u7801\u7684\u5b9e\u73b0\u548c\u89e3\u91ca ](https://ai.ihep.ac.cn/tutorial/code/)\n[\u5728HPC\u8ba1\u7b97\u96c6\u7fa4\u4e2d\u4f7f\u7528HepAI\u7684\u5feb\u901f\u5165\u95e8](docs/quickstart_hpc.md)\n[\u4f7f\u7528PointNet\u5728JUNO\u5b9e\u9a8c\u4e2d\u91cd\u5efa\u548c\u8bc6\u522b\u5927\u6c14\u4e2d\u5fae\u5b50](https://code.ihep.ac.cn/zhangyiyu/pointnet)\n\n</details>\n\n<details open>\n<summary><b>\u6a21\u578bZoo</b></summary>\n<a href=\"https://code.ihep.ac.cn/zdzhang/hai/-/blob/main/docs/model_zoo.md\">\n <ul>\n <li>\n <img src=\"https://img.shields.io/static/v1?style=social&label=\u7c92\u5b50\u7269\u7406&message=4 online, 3 TODO\">\n <li>\n <img src=\"https://img.shields.io/static/v1?style=social&label=\u5929\u4f53\u7269\u7406&message=1 TODO\">\n <li>\n <img src=\"https://img.shields.io/static/v1?style=social&label=\u540c\u6b65\u8f90\u5c04&message=2 TODO\">\n <li>\n <img src=\"https://img.shields.io/static/v1?style=social&label=\u4e2d\u5b50\u79d1\u5b66&message=1 TODO\">\n <li>\n <img src=\"https://img.shields.io/static/v1?style=social&label=\u901a\u7528\u795e\u7ecf\u7f51\u7edc&message=2 online, 5 TODO\">\n <li>\n <img src=\"https://img.shields.io/static/v1?style=social&label=\u7ecf\u5178\u673a\u5668\u5b66\u4e60&message=2 TODO\">\n </ul>\n </a>\n \n</details>\n\n<details open>\n<summary><b>\u6570\u636e\u96c6Zoo</b></summary>\n<a href=\"https://code.ihep.ac.cn/zdzhang/hai/-/blob/main/docs/datasets.md\">\n<ul>\n<li>\n <img src=\"https://img.shields.io/static/v1?style=social&label=\u7c92\u5b50\u7269\u7406&message=3 available, 10+ TODO\">\n <li>\n <img src=\"https://img.shields.io/static/v1?style=social&label=CV&message=1 available\">\n </a>\n</details>\n\n\n### \u5feb\u901f\u5f00\u59cb\n```\npip install hepai --upgrade\nhai -V # \u67e5\u770b\u7248\u672c\n```\n\n1. \u547d\u4ee4\u884c\u4f7f\u7528\n\n ```bash\n hai train <model_name> # \u8bad\u7ec3\u6a21\u578b, \u4f8b\u5982: hai train particle_transformer\n hai eval <model_name>\n ```\n\n2. python\u5e93\u4f7f\u7528\n\n python\u5e93\u7edf\u4e00\u63a5\u53e3\uff1a\n ```python\n import hepai as hai\n \n model = hai.hub.load('<model_name>') # \u52a0\u8f7d\u6a21\u578b\n config = model.config # \u83b7\u53d6\u6a21\u578b\u914d\u7f6e\n config.batch_size = 32 # \u4fee\u6539\u914d\u7f6e\n model.trian() # \u8bad\u7ec3\u6a21\u578b\n model.eval() # \u8bc4\u4f30\u6a21\u578b\n model.infer('<data>') # \u6a21\u578b\u63a8\u7406\n hai.train('particle_transformer')\n ```\n\n3. \u90e8\u7f72\u548c\u8fdc\u7a0b\u8c03\u7528\n\n \u8de8\u8bed\u8a00\u3001\u8de8\u5e73\u53f0\u7684\u6a21\u578b\u90e8\u7f72\u548c\u8fdc\u7a0b\u8c03\u7528\n\n \u670d\u52a1\u7aef\uff1a\n ```bash\n hai start server # \u542f\u52a8\u670d\u52a1\n ```\n \u5ba2\u6237\u7aef\n ```python\n from hepai import HepAI\n \n client = HepAI()\n models = client.list_models()\n response = client.chat.completion.create(model=\"hepai/xiwu_v2\", prompt=\"\u4f60\u597d\", max_tokens=100)\n print(response.choices[0].text)\n ```\n",
"bugtrack_url": null,
"license": "MIT",
"summary": "High energy phscis Artificial Intelligence plateform, HAI.",
"version": "1.1.29",
"project_urls": {
"Homepage": "https://github.com/zhangzhengde0225/hai"
},
"split_keywords": [],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "0f562ef7eab0284d58923a5de12a60ad8577668393ccc89e81c89e2ad3d72d0b",
"md5": "e00c8a5f66ad22bbc78fb26a3f6c8ea3",
"sha256": "54e0f1b38073b7b68063657832cc1d4a52bb114852279377edc442dd23aa91e4"
},
"downloads": -1,
"filename": "hepai-1.1.29-py2.py3-none-any.whl",
"has_sig": false,
"md5_digest": "e00c8a5f66ad22bbc78fb26a3f6c8ea3",
"packagetype": "bdist_wheel",
"python_version": "py2.py3",
"requires_python": ">=3.10.0",
"size": 667349,
"upload_time": "2025-02-22T13:11:03",
"upload_time_iso_8601": "2025-02-22T13:11:03.373480Z",
"url": "https://files.pythonhosted.org/packages/0f/56/2ef7eab0284d58923a5de12a60ad8577668393ccc89e81c89e2ad3d72d0b/hepai-1.1.29-py2.py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "283b2958879ba1ff7cd5ed68fbc39e36523ec580e2cd5c18e21b912bfa851d79",
"md5": "a6dc8891f98cc318b0a5a47e813383f4",
"sha256": "5455d1f11bd50e2319a5eeb3867d149f1ff2995ab93601d289de10061bf63230"
},
"downloads": -1,
"filename": "hepai-1.1.29.tar.gz",
"has_sig": false,
"md5_digest": "a6dc8891f98cc318b0a5a47e813383f4",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.10.0",
"size": 391018,
"upload_time": "2025-02-22T13:11:08",
"upload_time_iso_8601": "2025-02-22T13:11:08.654666Z",
"url": "https://files.pythonhosted.org/packages/28/3b/2958879ba1ff7cd5ed68fbc39e36523ec580e2cd5c18e21b912bfa851d79/hepai-1.1.29.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2025-02-22 13:11:08",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "zhangzhengde0225",
"github_project": "hai",
"travis_ci": false,
"coveralls": false,
"github_actions": false,
"requirements": [
{
"name": "damei",
"specs": []
},
{
"name": "easydict",
"specs": []
},
{
"name": "numpy",
"specs": []
},
{
"name": "opencv-python",
"specs": []
},
{
"name": "pillow",
"specs": []
},
{
"name": "tqdm",
"specs": []
},
{
"name": "wandb",
"specs": []
},
{
"name": "grpcio-tools",
"specs": []
},
{
"name": "fastapi",
"specs": []
},
{
"name": "uvicorn",
"specs": []
},
{
"name": "openai",
"specs": [
[
">=",
"1.50.1"
]
]
},
{
"name": "python-dateutil",
"specs": []
},
{
"name": "httpx",
"specs": [
[
">=",
"0.28.1"
]
]
}
],
"lcname": "hepai"
}