{"id":13737496,"url":"https://github.com/nantu-io/ntcore","last_synced_at":"2025-05-07T03:24:01.878Z","repository":{"id":37706647,"uuid":"373228368","full_name":"nantu-io/ntcore","owner":"nantu-io","description":"Deploy and Monitor ML Model in Any Cloud","archived":false,"fork":false,"pushed_at":"2022-12-19T13:50:52.000Z","size":4587,"stargazers_count":39,"open_issues_count":7,"forks_count":2,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-04-19T17:58:07.611Z","etag":null,"topics":["ai","deep-learning","docker","kubernetes","machine-learning","ml","mlops","python","pytorch","sklearn","tensorflow"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/nantu-io.png","metadata":{"files":{"readme":"README-zh-CN.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-06-02T16:05:31.000Z","updated_at":"2024-07-28T11:00:38.000Z","dependencies_parsed_at":"2023-01-29T21:46:14.037Z","dependency_job_id":null,"html_url":"https://github.com/nantu-io/ntcore","commit_stats":null,"previous_names":["nantutech/ntcore"],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nantu-io%2Fntcore","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nantu-io%2Fntcore/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nantu-io%2Fntcore/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/nantu-io%2Fntcore/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/nantu-io","download_url":"https://codeload.github.com/nantu-io/ntcore/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252805067,"owners_count":21806924,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["ai","deep-learning","docker","kubernetes","machine-learning","ml","mlops","python","pytorch","sklearn","tensorflow"],"created_at":"2024-08-03T03:01:50.545Z","updated_at":"2025-05-07T03:24:01.850Z","avatar_url":"https://github.com/nantu-io.png","language":"Python","funding_links":[],"categories":["Python"],"sub_categories":[],"readme":"# NTCore：自主多云的AI/ML模型部署与监控平台\n\n![workflows-intro](https://user-images.githubusercontent.com/42594415/146384196-7ff6edcb-b30d-4daf-b878-822a5ddcae73.jpg)\n\n\n![Docker Image Version (latest by date)](https://img.shields.io/docker/v/ntcore/webserver)\n![Docker Pulls](https://img.shields.io/docker/pulls/ntcore/webserver)\n![License](https://img.shields.io/badge/License-Apache_2.0-blue.svg)\n![PyPI](https://img.shields.io/pypi/v/ntcore)\n![GitHub last commit](https://img.shields.io/github/last-commit/nantu-io/ntcore) \n\n[English](https://github.com/nantu-io/ntcore/blob/main/README.md) | 简体中文\n\n----\n\n## 概述\n\nNTCore可帮助数据科学家和机器学习工程师轻松地对AI/ML模型进行版本控制、部署和监控。\n\n* 自动记录各种机器学习框架的模型实验元数据，例如 sklearn、tensorflow 和 keras 等。\n* 支持Docker、Kubernetes并一键部署到公有云（例如 AWS、Azure、Alicloud 等）或私有云（On-premises）。\n* 实时仪表盘，监控和报告模型各项参数与运行情况。\n\n\n## 特征\n* 自动对主流AI/ML模型框架（包括 sklearn、tensorflow 和 keras 等）进行版本控制。\n* 记录模型训练元数据（例如召回率和精确度），易于模型审计与重复利用。\n* 提供通过 curl、Postman 和 HTTP 客户端调用的 RESTful 端点。\n* 支持 Docker、Kubernetes ，一键部署到各大云提供商（例如 Amazon EKS、Microsoft AKS 等）或私有云（On-premises）。\n* 每个模型一个端点，为多个端点提供服务。\n* 与 Prometheus 集成的模型性能监控（持续开发中）。\n* UI仪表板实时监控 ML 模型版本、部署和性能指标（持续开发中）。\n* API与工作流管理器（例如 Apache Airflow）无缝连接，自动化ML工作流（持续开发中）。\n\n----\n## 目录\n- [快速开始](#quickstart)\n- [文档](#documentation)\n- [为什么选择NTCore](#why-ntcore)\n- [社区](#community)\n- [执照](#license)\n\n## 快速开始\n0. 使用 [docker compose](https://docs.docker.com/compose/install/)安装 docker 引擎。\n1. 克隆这个存储库并通过 docker compose 启动 ntcore\n    ``` \n    docker-compose -f docker-compose.yml up\n    ```\n2. 安装ntcore客户端\n    ```\n    pip install ntcore\n    ```\n3. 到[http://localhost:8000/dsp/console/workspaces](http://localhost:8000/dsp/console/workspaces) 并创建您的第一个工作区。  \n4. 模型版本控制。可以从[这里](https://github.com/nantu-io/ntcore/tree/main/sdk/examples)了解更多。\n    ```python\n    # Load iris dataset.\n    from sklearn import datasets\n    iris = datasets.load_iris()\n\n    # Init the model\n    from sklearn.ensemble import RandomForestClassifier\n    clf = RandomForestClassifier(max_depth=2, random_state=0)\n\n    # Start an experiment run\n    from ntcore import Client\n    client = Client()\n    with client.start_run('my_workspace_id') as exper:\n        clf.fit(iris.data, iris.target_names[iris.target], experiment=exper)\n    ```\n5. 查看模型版本并注册一个用于预生产部署。 \n    \u003ckbd\u003e\n        \u003cimg width=\"1674\" alt=\"Screen Shot 2021-12-20 at 10 08 08 AM\" src=\"https://user-images.githubusercontent.com/42594415/146832457-addbbc54-c18a-4024-8cea-ca935c67ce5e.png\"\u003e\n    \u003c/kbd\u003e\n\u003cbr /\u003e \n\n6. 部署您注册的模型版本并在部署成功后调用 RESTful 端点。\n    ```bash\n    curl -H \"Content-Type: application/json\" -X POST --data '{\"data\": [[5.1,3.5,1.4,0.2]]}' http://localhost:8000/s/{workspace_id}/predict\n    ```\n\n## 文档\nNTCore 文档: https://docs.thenetron.com/#/zh-cn/.\n\n- [快速开始](https://nantu-io.github.io/ntcore-doc/#/quick_start)\n- [模型部署](https://nantu-io.github.io/ntcore-doc/#/production)\n- [例子](https://github.com/nantu-io/ntcore/tree/main/sdk/examples)\n\n## 为什么选择NTCore\n假设您是一名数据科学家，为 10 个不同的场景优化 AI/ML 模型，每个场景都需要 100 次迭代。您如何保留这 1000 个实验的输入/输出，比较它们以找到最佳模型并重现它们？这并不容易。但这并不是你噩梦的结束。如果要将“最佳”模型部署为预测端点，则必须重构代码以创建 API，然后 DevOps 团队才能部署。这个过程通常需要几天时间。更重要的是，当这个过程每小时、每天甚至每月重复一次时，疼痛会变得更糟。\n\nNTCore 是一个旨在减轻模型落地痛苦的平台。它提供了 UI 工具和 API，以帮助数据科学家以最少的与 DevOps 团队的互动，将他们训练的模型持续无缝地传送到生产环境。它还提供监控功能，以便数据科学家可以快速访问其模型的最新性能指标。\n\n\n## 社区\n有关入门指南、教程和 API 参考，请查看我们的文档。\n\n要报告错误、提交文档问题或提交功能请求，请打开 GitHub 问题。\n\n\n## 执照\nNTCore在[Apache 2.0](https://github.com/nantu-io/ntcore/blob/main/LICENSE)下获得许可.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnantu-io%2Fntcore","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnantu-io%2Fntcore","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnantu-io%2Fntcore/lists"}