diff --git a/.github/workflows/bert-models-cicd.yaml b/.github/workflows/bert-models-cicd.yaml index 0d326596..b649d505 100644 --- a/.github/workflows/bert-models-cicd.yaml +++ b/.github/workflows/bert-models-cicd.yaml @@ -50,41 +50,41 @@ jobs: # # Note: when trying to run build_push-bert-base with other jobs below, an error is reported on line 90. # # However, when run on its own it works fine. - # build_push-bert-base: - # name: "build/push bluebert-base container image" - # runs-on: ubuntu-latest - # env: - # IMAGE_NAME: bluebert-base - # DOCKERFILE: base.Dockerfile - # permissions: - # contents: 'read' - # id-token: 'write' - # steps: - # - uses: actions/checkout@v4 - # with: - # fetch-depth: 0 - # - id: 'auth' - # uses: 'google-github-actions/auth@v2' - # with: - # project_id: ${{ secrets.GCE_PROJECT }} - # service_account: ${{ secrets.SERVICE_ACCOUNT }} - # credentials_json: ${{ secrets.SERVICE_ACCOUNT_KEY }} - # - name: 'Set up Cloud SDK' - # uses: 'google-github-actions/setup-gcloud@v2' - # with: - # version: '>= 363.0.0' - # - name: Setup Python - # uses: actions/setup-python@v2 - # with: - # python-version: 3.7 - # - name: Configure Docker Authentication - # run: gcloud --quiet auth configure-docker - # - name: Set MODEL_VERSION env - # run: echo "MODEL_VERSION=$(grep 'BASE' MODEL_VERSIONS | cut -f 2 -d '=')" >> $GITHUB_ENV - # - name: Build Docker Image - # run: docker build --tag "gcr.io/$PROJECT_ID/$IMAGE_NAME:$MODEL_VERSION" -f ${{ env.DOCKERFILE }} . - # - name: Publish Docker Image to Google Container Registry - # run: docker push "gcr.io/$PROJECT_ID/$IMAGE_NAME:$MODEL_VERSION" + build_push-bert-base: + name: "build/push bluebert-base container image" + runs-on: ubuntu-latest + env: + IMAGE_NAME: bluebert-base + DOCKERFILE: base.Dockerfile + permissions: + contents: 'read' + id-token: 'write' + steps: + - uses: actions/checkout@v4 + with: + fetch-depth: 0 + - id: 'auth' + uses: 'google-github-actions/auth@v2' + with: + project_id: ${{ secrets.GCE_PROJECT }} + service_account: ${{ secrets.SERVICE_ACCOUNT }} + credentials_json: ${{ secrets.SERVICE_ACCOUNT_KEY }} + - name: 'Set up Cloud SDK' + uses: 'google-github-actions/setup-gcloud@v2' + with: + version: '>= 363.0.0' + - name: Setup Python + uses: actions/setup-python@v2 + with: + python-version: 3.7 + - name: Configure Docker Authentication + run: gcloud --quiet auth configure-docker + - name: Set MODEL_VERSION env + run: echo "MODEL_VERSION=$(grep 'BASE' MODEL_VERSIONS | cut -f 2 -d '=')" >> $GITHUB_ENV + - name: Build Docker Image + run: docker build --tag "gcr.io/$PROJECT_ID/$IMAGE_NAME:$MODEL_VERSION" -f ${{ env.DOCKERFILE }} . + - name: Publish Docker Image to Google Container Registry + run: docker push "gcr.io/$PROJECT_ID/$IMAGE_NAME:$MODEL_VERSION" # # # # # # # ----------------------------------------------------------------------------------- # @@ -2248,159 +2248,159 @@ jobs: # docker push "gcr.io/$PROJECT_ID/$TASK_NAME-predict:$IMAGE_VERSION" -# # # # # ----------------------------------------------------------------------------------- # -# # # # # ----------------------------------------------------------------------------------- # -# # # # # ----------------------------------------------------------------------------------- # -# # # # # TRAIN BL_GENE_TO_GENE MODEL # -# # # # # ----------------------------------------------------------------------------------- # -# # # # # ----------------------------------------------------------------------------------- # -# # # # # ----------------------------------------------------------------------------------- # +# # # # # # ----------------------------------------------------------------------------------- # +# # # # # # ----------------------------------------------------------------------------------- # +# # # # # # ----------------------------------------------------------------------------------- # +# # # # # # TRAIN BL_GENE_TO_GENE MODEL # +# # # # # # ----------------------------------------------------------------------------------- # +# # # # # # ----------------------------------------------------------------------------------- # +# # # # # # ----------------------------------------------------------------------------------- # - build_push_train-bl_gene_to_gene-train: - name: "build/push/train bl_gene_to_gene model" - # needs: "build_push-bert-base" - runs-on: ubuntu-latest - env: - TASK_NAME: bl_gene_to_gene - DOCKERFILE: train.Dockerfile - ENTRYPOINT_FILE: scripts/train.entrypoint.sh - BASE_DOCKERFILE: base.Dockerfile - DATA_FILE: data/bl_gene_to_gene/data.tsv - MODEL_VERSION_KEY: BL_GENE_TO_GENE - AI_PLATFORM_JOB_NAME: "bl_gene_to_gene_train_${{ github.run_number }}" - steps: - - uses: actions/checkout@v4 - with: - fetch-depth: 0 - - id: 'auth' - uses: 'google-github-actions/auth@v2' - with: - project_id: ${{ secrets.GCE_PROJECT }} - service_account: ${{ secrets.SERVICE_ACCOUNT }} - credentials_json: ${{ secrets.SERVICE_ACCOUNT_KEY }} - - name: 'Set up Cloud SDK' - uses: 'google-github-actions/setup-gcloud@v2' - with: - version: '>= 363.0.0' - - name: Setup Python - uses: actions/setup-python@v2 - with: - python-version: 3.7 +# build_push_train-bl_gene_to_gene-train: +# name: "build/push/train bl_gene_to_gene model" +# # needs: "build_push-bert-base" +# runs-on: ubuntu-latest +# env: +# TASK_NAME: bl_gene_to_gene +# DOCKERFILE: train.Dockerfile +# ENTRYPOINT_FILE: scripts/train.entrypoint.sh +# BASE_DOCKERFILE: base.Dockerfile +# DATA_FILE: data/bl_gene_to_gene/data.tsv +# MODEL_VERSION_KEY: BL_GENE_TO_GENE +# AI_PLATFORM_JOB_NAME: "bl_gene_to_gene_train_${{ github.run_number }}" +# steps: +# - uses: actions/checkout@v4 +# with: +# fetch-depth: 0 +# - id: 'auth' +# uses: 'google-github-actions/auth@v2' +# with: +# project_id: ${{ secrets.GCE_PROJECT }} +# service_account: ${{ secrets.SERVICE_ACCOUNT }} +# credentials_json: ${{ secrets.SERVICE_ACCOUNT_KEY }} +# - name: 'Set up Cloud SDK' +# uses: 'google-github-actions/setup-gcloud@v2' +# with: +# version: '>= 363.0.0' +# - name: Setup Python +# uses: actions/setup-python@v2 +# with: +# python-version: 3.7 - - name: Configure Docker Authentication - run: | - gcloud --quiet auth configure-docker +# - name: Configure Docker Authentication +# run: | +# gcloud --quiet auth configure-docker - - name: Set MODEL_VERSION env - run: | - echo "MODEL_VERSION=$(grep ${{ env.MODEL_VERSION_KEY }} MODEL_VERSIONS | cut -f 2 -d '=')" >> $GITHUB_ENV +# - name: Set MODEL_VERSION env +# run: | +# echo "MODEL_VERSION=$(grep ${{ env.MODEL_VERSION_KEY }} MODEL_VERSIONS | cut -f 2 -d '=')" >> $GITHUB_ENV - - name: Set BASE_VERSION env - run: | - echo "BASE_VERSION=$(grep 'BASE' MODEL_VERSIONS | cut -f 2 -d '=')" >> $GITHUB_ENV +# - name: Set BASE_VERSION env +# run: | +# echo "BASE_VERSION=$(grep 'BASE' MODEL_VERSIONS | cut -f 2 -d '=')" >> $GITHUB_ENV - - name: Set NUM_EPOCHS env - run: | - echo "NUM_EPOCHS=5.0" >> $GITHUB_ENV +# - name: Set NUM_EPOCHS env +# run: | +# echo "NUM_EPOCHS=5.0" >> $GITHUB_ENV - - name: Build Docker Image - run: | - docker build --build-arg "PROJECT_ID=$PROJECT_ID" \ - --build-arg "TASK_NAME=$TASK_NAME" \ - --build-arg "BASE_VERSION=$BASE_VERSION" \ - --build-arg "TUNED_MODEL_VERSION=$MODEL_VERSION" \ - --build-arg "EPOCHS=$NUM_EPOCHS" \ - --tag "gcr.io/$PROJECT_ID/$TASK_NAME-train:$MODEL_VERSION" \ - -f ${{ env.DOCKERFILE }} . +# - name: Build Docker Image +# run: | +# docker build --build-arg "PROJECT_ID=$PROJECT_ID" \ +# --build-arg "TASK_NAME=$TASK_NAME" \ +# --build-arg "BASE_VERSION=$BASE_VERSION" \ +# --build-arg "TUNED_MODEL_VERSION=$MODEL_VERSION" \ +# --build-arg "EPOCHS=$NUM_EPOCHS" \ +# --tag "gcr.io/$PROJECT_ID/$TASK_NAME-train:$MODEL_VERSION" \ +# -f ${{ env.DOCKERFILE }} . - - name: Publish Docker Image to Google Container Registry - run: | - docker push "gcr.io/$PROJECT_ID/$TASK_NAME-train:$MODEL_VERSION" - - - name: Submit a training job to AI Plaform to train and cache the model - run: | - gcloud ai-platform jobs submit training ${{ env.AI_PLATFORM_JOB_NAME }} \ - --scale-tier=CUSTOM \ - --master-machine-type=n1-standard-8 \ - --master-accelerator=count=1,type=nvidia-tesla-v100 \ - --region "$GCE_REGION" \ - --master-image-uri "gcr.io/$PROJECT_ID/$TASK_NAME-train:$MODEL_VERSION" \ - -- \ - NO_ARG \ - "gs://$MODEL_STORAGE_BUCKET" - - - name: Monitor the training job - run: | - sh -c ".github/workflows/monitor-ai-platform-job.sh ${{ env.AI_PLATFORM_JOB_NAME }}" - timeout-minutes: 500 +# - name: Publish Docker Image to Google Container Registry +# run: | +# docker push "gcr.io/$PROJECT_ID/$TASK_NAME-train:$MODEL_VERSION" - # # -------------------------------------------------------------------------------------- # - # # BUILD/PUSH BL_GENE_TO_GENE CLASSIFICATION CONTAINER IMAGE # - # # -------------------------------------------------------------------------------------- # +# - name: Submit a training job to AI Plaform to train and cache the model +# run: | +# gcloud ai-platform jobs submit training ${{ env.AI_PLATFORM_JOB_NAME }} \ +# --scale-tier=CUSTOM \ +# --master-machine-type=n1-standard-8 \ +# --master-accelerator=count=1,type=nvidia-tesla-v100 \ +# --region "$GCE_REGION" \ +# --master-image-uri "gcr.io/$PROJECT_ID/$TASK_NAME-train:$MODEL_VERSION" \ +# -- \ +# NO_ARG \ +# "gs://$MODEL_STORAGE_BUCKET" + +# - name: Monitor the training job +# run: | +# sh -c ".github/workflows/monitor-ai-platform-job.sh ${{ env.AI_PLATFORM_JOB_NAME }}" +# timeout-minutes: 500 + +# # # -------------------------------------------------------------------------------------- # +# # # BUILD/PUSH BL_GENE_TO_GENE CLASSIFICATION CONTAINER IMAGE # +# # # -------------------------------------------------------------------------------------- # - build_push-bl_gene_to_gene-predict: - name: "build/push bl_gene_to_gene predict container" - needs: "build_push_train-bl_gene_to_gene-train" - runs-on: ubuntu-latest - env: - TASK_NAME: bl_gene_to_gene - DOCKERFILE: predict.Dockerfile - TRAIN_DOCKERFILE: train.Dockerfile - TRAIN_ENTRYPOINT_FILE: scripts/train.entrypoint.sh - ENTRYPOINT_FILE: scripts/predict.entrypoint.sh - BASE_DOCKERFILE: base.Dockerfile - MODEL_VERSION_KEY: BL_GENE_TO_GENE - # Don't forget to change labels - CLASSIFICATION_LABELS: "interacts_with activates deactivates other" - DATA_FILE: data/bl_gene_to_gene/data.tsv - steps: - - uses: actions/checkout@v4 - with: - fetch-depth: 0 - - id: 'auth' - uses: 'google-github-actions/auth@v2' - with: - project_id: ${{ secrets.GCE_PROJECT }} - service_account: ${{ secrets.SERVICE_ACCOUNT }} - credentials_json: ${{ secrets.SERVICE_ACCOUNT_KEY }} - - name: 'Set up Cloud SDK' - uses: 'google-github-actions/setup-gcloud@v2' - with: - version: '>= 363.0.0' - - name: Setup Python - uses: actions/setup-python@v2 - with: - python-version: 3.7 - - name: Configure Docker Authentication - run: | - gcloud --quiet auth configure-docker +# build_push-bl_gene_to_gene-predict: +# name: "build/push bl_gene_to_gene predict container" +# needs: "build_push_train-bl_gene_to_gene-train" +# runs-on: ubuntu-latest +# env: +# TASK_NAME: bl_gene_to_gene +# DOCKERFILE: predict.Dockerfile +# TRAIN_DOCKERFILE: train.Dockerfile +# TRAIN_ENTRYPOINT_FILE: scripts/train.entrypoint.sh +# ENTRYPOINT_FILE: scripts/predict.entrypoint.sh +# BASE_DOCKERFILE: base.Dockerfile +# MODEL_VERSION_KEY: BL_GENE_TO_GENE +# # Don't forget to change labels +# CLASSIFICATION_LABELS: "interacts_with activates deactivates other" +# DATA_FILE: data/bl_gene_to_gene/data.tsv +# steps: +# - uses: actions/checkout@v4 +# with: +# fetch-depth: 0 +# - id: 'auth' +# uses: 'google-github-actions/auth@v2' +# with: +# project_id: ${{ secrets.GCE_PROJECT }} +# service_account: ${{ secrets.SERVICE_ACCOUNT }} +# credentials_json: ${{ secrets.SERVICE_ACCOUNT_KEY }} +# - name: 'Set up Cloud SDK' +# uses: 'google-github-actions/setup-gcloud@v2' +# with: +# version: '>= 363.0.0' +# - name: Setup Python +# uses: actions/setup-python@v2 +# with: +# python-version: 3.7 +# - name: Configure Docker Authentication +# run: | +# gcloud --quiet auth configure-docker - - name: Set MODEL_VERSION env - run: | - echo "MODEL_VERSION=$(grep ${{ env.MODEL_VERSION_KEY }} MODEL_VERSIONS | cut -f 2 -d '=')" >> $GITHUB_ENV +# - name: Set MODEL_VERSION env +# run: | +# echo "MODEL_VERSION=$(grep ${{ env.MODEL_VERSION_KEY }} MODEL_VERSIONS | cut -f 2 -d '=')" >> $GITHUB_ENV - - name: Set IMAGE_VERSION env - run: | - echo "IMAGE_VERSION=$(grep ${{ env.MODEL_VERSION_KEY }} IMAGE_VERSIONS_PREDICT | cut -f 2 -d '=')" >> $GITHUB_ENV +# - name: Set IMAGE_VERSION env +# run: | +# echo "IMAGE_VERSION=$(grep ${{ env.MODEL_VERSION_KEY }} IMAGE_VERSIONS_PREDICT | cut -f 2 -d '=')" >> $GITHUB_ENV - - name: Set BASE_VERSION env - run: | - echo "BASE_VERSION=$(grep 'BASE' MODEL_VERSIONS | cut -f 2 -d '=')" >> $GITHUB_ENV +# - name: Set BASE_VERSION env +# run: | +# echo "BASE_VERSION=$(grep 'BASE' MODEL_VERSIONS | cut -f 2 -d '=')" >> $GITHUB_ENV - - name: Build Docker Image - run: | - docker build --build-arg "PROJECT_ID=$PROJECT_ID" \ - --build-arg "TASK_NAME=$TASK_NAME" \ - --build-arg "BASE_VERSION=$BASE_VERSION" \ - --build-arg "TUNED_MODEL_VERSION=$MODEL_VERSION" \ - --build-arg "MODEL_STORAGE_BUCKET=$MODEL_STORAGE_BUCKET" \ - --build-arg "CLASSIFICATION_LABELS=${{ env.CLASSIFICATION_LABELS }}" \ - --tag "gcr.io/$PROJECT_ID/$TASK_NAME-predict:$IMAGE_VERSION" \ - -f ${{ env.DOCKERFILE }} . +# - name: Build Docker Image +# run: | +# docker build --build-arg "PROJECT_ID=$PROJECT_ID" \ +# --build-arg "TASK_NAME=$TASK_NAME" \ +# --build-arg "BASE_VERSION=$BASE_VERSION" \ +# --build-arg "TUNED_MODEL_VERSION=$MODEL_VERSION" \ +# --build-arg "MODEL_STORAGE_BUCKET=$MODEL_STORAGE_BUCKET" \ +# --build-arg "CLASSIFICATION_LABELS=${{ env.CLASSIFICATION_LABELS }}" \ +# --tag "gcr.io/$PROJECT_ID/$TASK_NAME-predict:$IMAGE_VERSION" \ +# -f ${{ env.DOCKERFILE }} . - - name: Publish Docker Image to Google Container Registry - run: | - docker push "gcr.io/$PROJECT_ID/$TASK_NAME-predict:$IMAGE_VERSION" +# - name: Publish Docker Image to Google Container Registry +# run: | +# docker push "gcr.io/$PROJECT_ID/$TASK_NAME-predict:$IMAGE_VERSION" # # # # # ----------------------------------------------------------------------------------- # diff --git a/MODEL_VERSIONS b/MODEL_VERSIONS index 9308d7aa..bd47653f 100644 --- a/MODEL_VERSIONS +++ b/MODEL_VERSIONS @@ -1,4 +1,4 @@ -BASE=0.21 +BASE=0.22 BL_CHEMICAL_TO_DISEASE_OR_PHENOTYPIC_FEATURE=0.16 BL_CHEMICAL_TO_GENE=0.3 BL_CHEMICAL_TO_PROCESS=0.2