{"id":37074413,"url":"https://github.com/colorblank/tensorflow_serving_config","last_synced_at":"2026-01-14T08:46:22.776Z","repository":{"id":306058956,"uuid":"1024800179","full_name":"colorblank/tensorflow_serving_config","owner":"colorblank","description":"Python utilities for reading, writing, and validating TensorFlow Serving models.config files. This project provides a convenient way to programmatically manage your TensorFlow Serving model configurations using Python.","archived":false,"fork":false,"pushed_at":"2025-07-24T08:02:50.000Z","size":18,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-11-28T03:42:15.676Z","etag":null,"topics":["config","tensorflow","tensorflow-serving"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/colorblank.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-07-23T09:09:53.000Z","updated_at":"2025-07-24T08:00:36.000Z","dependencies_parsed_at":"2025-12-09T21:02:09.802Z","dependency_job_id":null,"html_url":"https://github.com/colorblank/tensorflow_serving_config","commit_stats":null,"previous_names":["colorblank/tensorflow_serving_config"],"tags_count":3,"template":false,"template_full_name":null,"purl":"pkg:github/colorblank/tensorflow_serving_config","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/colorblank%2Ftensorflow_serving_config","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/colorblank%2Ftensorflow_serving_config/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/colorblank%2Ftensorflow_serving_config/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/colorblank%2Ftensorflow_serving_config/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/colorblank","download_url":"https://codeload.github.com/colorblank/tensorflow_serving_config/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/colorblank%2Ftensorflow_serving_config/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28414693,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-14T08:38:59.149Z","status":"ssl_error","status_checked_at":"2026-01-14T08:38:43.588Z","response_time":107,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["config","tensorflow","tensorflow-serving"],"created_at":"2026-01-14T08:46:22.083Z","updated_at":"2026-01-14T08:46:22.753Z","avatar_url":"https://github.com/colorblank.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# TensorFlow Serving Config Utilities\n\nPython utilities for reading, writing, and validating TensorFlow Serving `models.config` files. This project provides a convenient way to programmatically manage your TensorFlow Serving model configurations using Python.\n\n## 描述\n\n该项目旨在提供一套 Python 工具，用于处理 TensorFlow Serving 的 `models.config` 文件。通过使用 Protobuf 定义，您可以轻松地创建、修改和验证模型服务器配置，从而实现自动化部署和管理 TensorFlow Serving 实例。\n\n## 特性\n\n- **生成 `models.config`**: 轻松创建符合 TensorFlow Serving 规范的 `models.config` 文件。\n- **读取和解析**: 从现有 `models.config` 文件中读取并解析配置，方便程序化访问。\n- **验证**: 利用 Protobuf 的结构化特性，确保配置文件的格式正确性。\n- **模块化和可重用**: 代码遵循面向对象设计原则，易于集成和扩展。\n\n## 安装\n\n### 先决条件\n\n- Python 3.8 或更高版本\n\n### 使用 pip 安装\n\n```bash\npip install tensorflow_serving_config\n```\n\n### 从源代码安装\n\n1. 克隆仓库:\n   ```bash\n   git clone https://github.com/colorblank/tensorflow_serving_config.git\n   cd tensorflow_serving_config\n   ```\n2. 安装依赖:\n   ```bash\n   pip install -r requirements.txt\n   ```\n3. 安装项目:\n   ```bash\n   python setup.py install\n   ```\n\n## 依赖\n\n本项目依赖以下库:\n\n- `protobuf\u003e=6.31.1`\n- `grpcio\u003e=1.73.1`\n- `grpcio-tools==1.73.1` (用于生成 Protobuf 代码)\n- `wheel`\n\n## 使用示例\n\n以下是一个简单的示例，展示如何使用此库生成并读取一个 `models.config` 文件：\n\n```python\nfrom google.protobuf import text_format\nfrom tensorflow_serving.config import model_server_config_pb2\nimport os\n\n# --- 生成一个示例 models.config 文件 ---\nsample_config = model_server_config_pb2.ModelServerConfig()\n\n# 添加第一个模型配置\nmodel1 = sample_config.model_config_list.config.add()\nmodel1.name = \"example_model_a\"\nmodel1.base_path = \"/var/lib/tensorflow_serving/models/example_model_a\"\nmodel1.model_platform = \"tensorflow\"\nmodel1.model_version_policy.specific.versions.append(1)\nmodel1.model_version_policy.specific.versions.append(2)\n\n# 添加第二个模型配置\nmodel2 = sample_config.model_config_list.config.add()\nmodel2.name = \"example_model_b\"\nmodel2.base_path = \"/var/lib/tensorflow_serving/models/example_model_b\"\nmodel2.model_platform = \"tensorflow\"\n\nconfig_file_path = \"models.config\"\nwith open(config_file_path, \"w\") as f:\n    f.write(text_format.MessageToString(sample_config))\nprint(f\"示例配置文件 '{config_file_path}' 生成成功！\")\n\n# --- 读取并解析 models.config 文件 ---\nmodel_server_config = model_server_config_pb2.ModelServerConfig()\ntry:\n    with open(config_file_path, \"r\") as f:\n        config_content = f.read()\n        text_format.Parse(config_content, model_server_config)\n\n    print(\"\\n配置文件 'models.config' 读取并解析成功！\")\n    print(\"\\n--- 读取到的模型配置 ---\")\n\n    for model_config in model_server_config.model_config_list.config:\n        print(f\"模型名称: {model_config.name}\")\n        print(f\"模型路径: {model_config.base_path}\")\n        print(f\"模型平台: {model_config.model_platform}\")\n        if model_config.model_version_policy.HasField(\"specific\"):\n            versions = list(model_config.model_version_policy.specific.versions)\n            print(f\"版本策略: {versions}\")\n        else:\n            print(\"版本策略: 默认 (Latest)\")\n        print(\"-\" * 20)\n\nexcept FileNotFoundError:\n    print(f\"错误: 找不到配置文件 '{config_file_path}'\")\nexcept text_format.ParseError as e:\n    print(f\"错误: 解析配置文件失败，请检查文件格式是否正确。错误详情: {e}\")\n\n# 清理生成的示例文件\nif os.path.exists(config_file_path):\n    os.remove(config_file_path)\n    print(f\"\\n清理: 示例配置文件 '{config_file_path}' 已删除。\")\n```\n\n## 许可证\n\n本项目采用 Apache-2.0 许可证。详情请参阅 [LICENSE](LICENSE) 文件。\n\n## 联系方式\n\n- **作者**: Colorblank\n- **邮箱**: colorblank@example.com\n- **GitHub**: [https://github.com/colorblank/tensorflow_serving_config](https://github.com/colorblank/tensorflow_serving_config)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcolorblank%2Ftensorflow_serving_config","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcolorblank%2Ftensorflow_serving_config","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcolorblank%2Ftensorflow_serving_config/lists"}