怎样做网站的优化工作品牌网络推广怎么做
- 作者: 五速梦信息网
- 时间: 2026年03月21日 06:45
当前位置: 首页 > news >正文
怎样做网站的优化工作,品牌网络推广怎么做,网站建设总体需求报告,织梦新手网站建设04-19 周四 GitHub CI 方案设计 时间版本修改人描述2024年4月19日14:44:23V0.1宋全恒新建文档2024年4月19日17:22:57V1.0宋全恒完成部署拓扑结构的绘制和文档撰写 简介 需求 由于团队最近把代码托管在GitHub上#xff0c;为解决推理、应用的自动化CI的需要#xff0c;调研了…04-19 周四 GitHub CI 方案设计 时间版本修改人描述2024年4月19日14:44:23V0.1宋全恒新建文档2024年4月19日17:22:57V1.0宋全恒完成部署拓扑结构的绘制和文档撰写 简介 需求 由于团队最近把代码托管在GitHub上为解决推理、应用的自动化CI的需要调研了GitHub自带的CI基础设施基本上需要满足如下的需求 由于大模型需要GPU因此CI时需要使用GPU来运行由于一台服务器有多个GPU卡因此保证灵活性的同时需要为每个仓库的CI程序自定义需要的GPU。部署简单能够实现一台服务器如8C A100的同时对4个仓库进行CI作业的运行而不互相影响。 关联的文档如下所示: 04-15 周一 GitHub仓库CI服务器配置过程与workflow配置文件解析文档.md04-18 周四 为LLM_inference项目配置GitHub CI过程记录.md 仓库 当前的仓库主要是为了如下的项目而设置。 GitHub仓库主要是包括四个私有仓库 仓库项目简介标签分配GPU分配LLMChat主要是大模型RAG解决大模型知识时效问题A100, gpu, application3,4LLMs_Inference主要是依托于vLLM解决高效推理问题gpu, a100, inference7号A100 注由于大模型精调和训练组当前还不需要CI因此未对其进行配置CI。 方案设计 GitHub actions Runner GitHub Actions Runner 是 GitHub Actions 的一部分它允许你在自己的硬件、虚拟机或云实例上托管和运行自定义的工作流程。Runner 可以与 GitHub 上的仓库关联以便在触发事件如 push、pull request 等发生时执行工作流程中的任务。 以下是 GitHub Actions Runner 的一些重要特点和功能 灵活性 可以在自己的环境中托管 Runner这意味着你可以在自己的硬件、虚拟机或云实例上运行工作流程。这为你提供了更大的灵活性和控制权以满足特定的需求和安全要求。跨平台支持 Runner 支持多种操作系统和平台包括 Windows、Linux 和 macOS。这意味着你可以在不同的操作系统上运行工作流程并且可以根据需要选择合适的平台。自动化 Runner 可以自动更新到最新版本并且可以自动重新连接到 GitHub 服务器以接收新的工作。这简化了 Runner 的管理和维护并确保了其与 GitHub 平台的兼容性。安全性 Runner 可以配置为在受限的环境中运行以确保工作流程中的敏感数据和操作受到保护。此外Runner 还支持身份验证和令牌以与 GitHub 服务器进行安全通信。自定义性 你可以自定义 Runner 的配置和行为以满足特定的需求。例如你可以配置 Runner 的标签以限制工作流程在特定 Runner 上运行也可以配置 Runner 的执行器以添加额外的功能和工具。 总的来说GitHub Actions Runner 提供了一个灵活、强大和可扩展的平台用于在你自己的环境中托管和运行 GitHub Actions 工作流程从而实现自动化和持续集成/持续部署 (CI/CD)。 注由于需要使用GPU完成大模型相关的作业测试因此无法使用GitHub提供的GitHub-hosted runner主要是部署self-hosted runner。 GitHub actions-runner 也为托管在GitHub上的仓库仓库地址在使用时采用Client-Server的方式进行作业的分发和处理。 CI服务器 当前用于CI的是包含8张A100卡的42服务器其操作系统细节如下 $ cat /etc/os-release NAMEUbuntu VERSION20.04.6 LTS (Focal Fossa) IDubuntu ID_LIKEdebian PRETTY_NAMEUbuntu 20.04.6 LTS VERSION_ID20.04 HOME_URLhttps://www.ubuntu.com/ SUPPORT_URLhttps://help.ubuntu.com/ BUG_REPORT_URLhttps://bugs.launchpad.net/ubuntu/ PRIVACY_POLICY_URLhttps://www.ubuntu.com/legal/terms-and-policies/privacy-policy VERSION_CODENAMEfocal UBUNTU_CODENAMEfocal注由于当前的宿主机为Ubuntu 20.04因此在CI时在使用自定义的镜像启动容器进行单元测试等工作时强烈建议采用Ubuntu 20.04的Pytorch镜像以防止出现类似GLIBC的问题。 注建议在镜像中不要再次使用conda进行环境管理。 部署拓扑 为满足多个仓库在同一台服务器使用GPU进行CI作业的需求因此我们需要部署多个actions-runner实例与github server进行交互具体的部署结果如下图所示: 经过调研采用的是多用户多个actions-runner实例的部署具体如下图所示: 注在使用多actions-runner实例时尝试过了如下的方案: 在42服务器上采用虚拟化即Docker容器中包含actions-runner服务可以注册但执行CI会报错。在42服务器上采用单用户部署多个实例(部署更加简单)但直接报错无法配置。 Docker中包含actions-runner报错Docker in Docker这个特征当前还不支持。 单用户部署多个actions-runner实例报错: 所以最终选择了为每个仓库新建一个用户在该用户的目录下运行该实例。 GPU资源限额 CI解释 由于在运行actions-runner实例并没有划分GPU即确定在作业分发时使用的GPU这部分工作是由self-hosted Runner的在容器中运行作业来指定的。也就是在不同的仓库执行CI作业时有各自的CI工作流要执行 这些工作流是由workflow的配置文件定义的即.github/workflows/*.yaml定义的。 换句话说即使用那个镜像启动容器以什么方式启动容器在容器中执行那些过程都是由这个配置文件决定的。 使用7号gpu卡进行CI作业的工作流配置文件
This workflow will install Python dependencies, run tests and lint with a single version of Python
For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-pythonname: LLM_Inference CIon:push:branches: [ features-ci-songquanheng ]pull_request:branches: [ main ]permissions:contents: readjobs:llm-inference-ci:runs-on: [self-hosted, linux, x64, a100, inference]defaults:run:shell: bash -l {0}container:image: nvcr.io/nvidia/pytorch:22.12-py3options: –runtime nvidia –shm-size32gbcredentials:username: adminpassword: adminZJ2023env: NVIDIA_VISIBLE_DEVICES: 7volumes:- /home/yangfei/:/home/yangfeiports:- 22steps: - name: show pyhon versionrun: |python –version- name: show the gpus availablerun: |nvidia-smi- name: install necessary pip dependencies run: |pip install vllm –index-url https://pypi.tuna.tsinghua.edu.cn/simple- name: Test with pytest and generate coverage report run: |pytest –covtests –cov-reportxml- name: Upload coverage reports to Codecovuses: codecov/codecov-actionv4with:token: ${{ secrets.CODECOV_TOKEN }}file: coverage.xmlverbose: true 上述配置文件限定了为ci容器使用的gpu资源。具体关于该配置文件的解析可以参见 04-15 周一 GitHub仓库CI服务器配置过程与workflow配置文件解析文档.md 不再赘述
总结 本文主要描述了在42服务器上为多个仓库部署actions-runner实例的CI 部署方案具体包含如下内容: 42CI服务器的详情团队代码仓库的标签划分部署拓扑结构GPU限定使用的实现。 通过这样的部署方式就可以灵活的为多个代码仓库的自动化CI实现各种自定义的功能以满足特定的要求和实现。
- 上一篇: 怎样做网站的优化 排名网站设计收费明细表
- 下一篇: 怎样做网站店铺微网站如何建立的
相关文章
-
怎样做网站的优化 排名网站设计收费明细表
怎样做网站的优化 排名网站设计收费明细表
- 技术栈
- 2026年03月21日
-
怎样做网站的优化 排名济南网站推广¥做下拉去118cr
怎样做网站的优化 排名济南网站推广¥做下拉去118cr
- 技术栈
- 2026年03月21日
-
怎样做网站代理网架公司赵娜
怎样做网站代理网架公司赵娜
- 技术栈
- 2026年03月21日
-
怎样做网站店铺微网站如何建立的
怎样做网站店铺微网站如何建立的
- 技术栈
- 2026年03月21日
-
怎样做网站分析总结福州企业宣传片制作公司
怎样做网站分析总结福州企业宣传片制作公司
- 技术栈
- 2026年03月21日
-
怎样做网站轮播大型高迸发网站用什么语言做
怎样做网站轮播大型高迸发网站用什么语言做
- 技术栈
- 2026年03月21日
