[GCP] Airflow(on Cloud Composier)에서 AI Plaatform을 실행하는 Training
이거 뭐야?
에어플로우(on Cloud Composier)가 GCP AI Plaatform(이하 AIPF)의 담화 기능을 관리한다는 취지다.
어떤 과제를 해결할까
AI Plaarform의 개요
AI 관련 기능군을 담은 서비스 개념이라고 본다.
AI Plaatform이라는 GCP 서비스는 다음과 같은 기능을 제공합니다.
AI Platfrom Training
을 사용했다.Ref https://cloud.google.com/ai-platform/docs?hl=ja
Cloud Composter 개요
에어플로우의 개요.
파이톤을 통해 DAG를 만들고 일정, 관리를 할 수 있는 플랫폼이다.모든task를 만들 수 있고task 간의 의존 관계를 구축할 수 있습니다.
디테일
실행 방법
Traning
AIPF의 샘플https://github.com/GoogleCloudPlatform/ai-platform-samples/tree/master/training/sklearn/structured/base을 설치로 사용했다.
Airflow
다음과 같이 Airflow에서 BashOperator를 사용하여 셸을 실행합니다.
dag.py
from composer.dags.dor_poc.create_datalake.dag_dwh import DAG_NAME
from datetime import datetime, timedelta, timezone
from airflow import DAG
from airflow.utils.dates import days_ago
from airflow.models import Variable
from airflow.operators.bash_operator import BashOperator
# config
DAG_NAME = "training_model"
PROJECT_ID = Variable.get("project_id")
BUCKET_NAME = Variable.get("bucket_name")
JST = timezone(timedelta(hours=+9), "JST")
default_args = {
"start_date": days_ago(0),
}
with DAG(
DAG_NAME,
schedule_interval=None,
catchup=False,
default_args=default_args) as dag:
job_id = f"{task_id}_{datetime.now(JST).strftime('%Y%m%d%H%M')}"
task_training_model = BashOperator(
task_id="task1",
bash_command=f'''
gcloud ai-platform jobs submit training "{job_id}" \
--job-dir="gs://{BUCKET_NAME}" \
--package-path=/home/airflow/gcs/dags/sample/trainer \
--module-name=trainer.task \
--region="asia-northeast1" \
--runtime-version=2.2 \
--python-version=3.7 \
--scale-tier=BASIC \
-- \
--input="/home/airflow/gcs/dags/sample/datasets/downlaod-taxi.sh" \
--n-estimators=20 \
--max-depth=3
'''
)
참조 링크
Reference
이 문제에 관하여([GCP] Airflow(on Cloud Composier)에서 AI Plaatform을 실행하는 Training), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/momota/articles/67a541250c51decdaf13텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)