Memeriksa skema Azure Machine Learning

Selesai

Skema azure_ml ekstensi azure_ai memungkinkan database Anda berinteraksi dengan kemampuan model pembelajaran mesin yang dibuat khusus. Dengan menggunakan skema azure_ml, Anda dapat mengintegrasikan database PostgreSQL dengan layanan Azure Machine Learning dengan lancar. Integrasi ini memungkinkan Anda untuk menyebarkan dan melayani model pembelajaran mesin langsung dari database Anda, membuat inferensi real time efisien dan dapat diskalakan.

Inferensi real time dengan skema azure_ml

Azure Machine Learning adalah platform berbasis cloud yang menyederhanakan alur kerja pembelajaran mesin end-to-end. Dalam Azure Machine Learning, model dikembangkan menggunakan kerangka kerja populer seperti PyTorch dan TensorFlow. Setelah dilatih, model ini disebarkan sebagai titik akhir, URL stabil di mana prediksi dapat diminta.

Dengan titik akhir online yang memberikan inferensi real-time, Azure Machine Learning terintegrasi dengan ekstensi azure_ai membekali Anda untuk membuat prediksi yang akurat langsung dari database Anda. Fungsi inference dalam skema ini dirancang untuk memfasilitasi pembuatan prediksi atau menghasilkan output menggunakan model terlatih dari Azure Machine Learning. Saat Anda menyebarkan model, fungsi inferensi memungkinkan Anda memanggil model dan mendapatkan prediksi pada data baru.

  • azure_ml.inference(jsonb,integer,boolean,text)

Fungsi inference() mengharapkan parameter input berikut:

Pengaturan Jenis Bawaan Deskripsi
input_data jsonb Objek JSON yang berisi objek input_data diperlukan untuk berinteraksi dengan model Azure Machine Learning.
nama_penerapan text NULL::text (Opsional) Nama penyebaran model untuk ditargetkan di titik akhir Azure Machine Learning yang ditentukan.
batas_waktu_ms integer NULL::integer Mengatur waktu maksimum (dalam milidetik) untuk menunggu operasi inferensi sebelum waktu habis.
lemparkan_jika_ada_kesalahan boolean true Menentukan apakah akan melemparkan kesalahan jika operasi inferensi mengalami masalah.
upaya_maksimum integer 1 Berapa kali untuk mencoba kembali panggilan ke layanan Azure OpenAI jika terjadi kegagalan.
penundaan_coba_ulang_dalam_milidetik integer 1000 Jumlah waktu, dalam milidetik, untuk menunggu sebelum mencoba mencoba kembali memanggil titik akhir layanan Azure OpenAI.

Titik akhir inferensi Azure Machine Learning mengharapkan objek JavaScript Object Notation (JSON) sebagai input. Namun, struktur objek ini tergantung pada model yang mendasar. Misalnya, model regresi yang dilatih untuk memprediksi harga sewa harian untuk penyewaan perumahan jangka pendek di Seattle, area Washington, diberikan input tertentu seperti lingkungan, Kode Pos, jumlah kamar tidur, jumlah kamar mandi, dan banyak lagi, memiliki bentuk berikut:

{
  "input_data": {
    "columns": [
      "host_is_superhost",
      "host_has_profile_pic",
      "host_identity_verified",
      "neighbourhood_group_cleansed",
      "zipcode",
      "property_type",
      "room_type",
      "accommodates",
      "bathrooms",
      "bedrooms",
      "beds"
    ],
    "index": [0],
    "data": [["False", "False", "False", "Central Area", "98122", "House", "Entire home/apt", 4, 1.5, 3, 3]]
  }
}

Struktur objek input yang diharapkan dapat diambil dengan memeriksa definisi Swagger yang terkait dengan titik akhir yang Anda sebarkan. Definisi ini menentukan struktur ServiceInput dan ServiceOutput, yang dapat Anda gunakan untuk menentukan input dan output Anda.

Mengonfigurasi koneksi ke Azure Machine Learning

Sebelum menggunakan fungsi azure_ml.inference() untuk melakukan inferensi real time, Anda harus mengonfigurasi ekstensi dengan titik akhir dan kunci penilaian Azure Machine Learning Anda. Nilai untuk azure_ml.scoring_endpoint adalah titik akhir REST untuk model yang Anda sebarkan. Nilai untuk azure_ml.endpoint_key dapat berupa kunci primer atau sekunder untuk titik akhir ini.

SELECT azure_ai.set_setting('azure_ml.scoring_endpoint', '{endpoint}');
SELECT azure_ai.set_setting('azure_ml.endpoint_key', '{api-key}');