duyendumy / Nhom9_LabelStudio

0 stars 0 forks source link

Kết nối Lable Studio với Google Cloud Storage (GCS) #8

Open duyendumy opened 1 year ago

duyendumy commented 1 year ago

Nếu dữ liệu của bạn được lưu trữ trong Google Cloud Storage (GCS), thì bạn có thể viết tập lệnh Python để liên tục đồng bộ hóa dữ liệu từ bộ chứa với Label Studio.

Kết nối tới GCS bucket

Kết nối với GCS bucket của bạn và tạo danh sách tham chiếu tác vụ mà Label Studio có thể sử dụng, dựa trên nội dung trong bucket của bạn. !pip install --upgrade google-api-python-client import os from google.cloud import storage as google_storage

        BUCKET_NAME = 'my-bucket'  # specify your bucket name here
        GOOGLE_APPLICATION_CREDENTIALS = 'my-service-account-credentials.json'  # specify your GCS 
        credentials
        os.environ['GOOGLE_APPLICATION_CREDENTIALS'] = GOOGLE_APPLICATION_CREDENTIALS

        google_client = google_storage.Client()
        bucket = google_client.get_bucket(BUCKET_NAME)
        tasks = []
        for filename in bucket.list_blobs():
            tasks.append({'image': f'gs://{BUCKET_NAME}/{filename}'}) 

Tạo một Label Studio project

Kết nối với API Label Studio bằng khóa API cá nhân mà bạn có thể truy xuất từ ​​trang tài khoản người dùng của mình và xác nhận rằng bạn có thể kết nối thành công: from label_studio_sdk import Client LABEL_STUDIO_URL = 'http://localhost:8000' API_KEY = '91b3b61589784ed069b138eae3d5a5fe1e909f57'

          ls = Client(url=LABEL_STUDIO_URL, api_key=API_KEY)
          ls.check_connection()

Tạo một project. Ví dụ: project = ls.start_project( title='Image Annotation Project from SDK', label_config='''

                    '''
                )

Kết nối project tới GCS bucket

              project.connect_google_import_storage(
                bucket=BUCKET_NAME,
                google_application_credentials=GOOGLE_APPLICATION_CREDENTIALS
              )

Đồng bộ hoá tác vụ từ GCS sang Label Studio

Sau khi kết nối với bucket của bạn, bạn có thể import các private GCS link của mình vào Label Studio. Khi mở trong giao diện Label Studio, chúng sẽ tự động được chỉ định bảo mật! project.import_tasks(tasks)