Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Mulai menggunakan gambar di obrolan Anda dengan Azure OpenAI di Microsoft Foundry Models.
Penting
Biaya penggunaan tambahan mungkin berlaku saat menggunakan model penyelesaian obrolan dengan fungsionalitas visi.
Gunakan artikel ini untuk mulai menggunakan Microsoft Foundry untuk menyebarkan dan menguji model penyelesaian obrolan dengan pemahaman gambar.
Prasyarat
- Sebuah langganan Azure. Buat akun gratis.
- Setelah Anda memiliki langganan Azure, Buat sumber daya Azure OpenAI. Untuk informasi selengkapnya tentang pembuatan sumber daya, lihat panduan penyebaran sumber daya.
- Proyek Foundry dengan sumber daya Azure OpenAI Anda ditambahkan sebagai koneksi.
Siapkan media Anda
Anda memerlukan gambar untuk menyelesaikan panduan cepat ini. Anda dapat menggunakan gambar sampel ini atau gambar lain yang telah Anda sediakan.
Pergi ke Foundry
- Telusuri ke Foundry dan masuk dengan kredensial yang terkait dengan sumber daya Azure OpenAI Anda. Selama atau setelah alur kerja masuk, pilih direktori, langganan Azure, dan sumber daya Azure OpenAI yang sesuai.
- Pilih proyek yang ingin Anda kerjakan.
- Di menu navigasi kiri, pilih Model + titik akhir dan pilih + Sebarkan model.
- Pilih penyebaran berkemampuan gambar dengan memilih nama model: gpt-4o atau gpt-4o-mini. Di jendela yang muncul, pilih nama dan jenis penyebaran. Pastikan sumber daya Azure OpenAI Anda tersambung. Untuk informasi lebih lanjut tentang penerapan model, lihat panduan penerapan sumber daya.
- Pilih Sebarkan.
- Selanjutnya, pilih model baru Anda dan pilih Buka di playground. Di ruang obrolan, penyebaran yang Anda buat harus dipilih di dropdown Penyebaran.
Taman Bermain
Dalam sesi obrolan ini, Anda menginstruksikan asisten untuk membantu Anda dalam memahami gambar yang Anda masukkan.
Untuk bantuan umum terkait penyiapan asisten, sesi obrolan, pengaturan, dan panel, lihat Panduan Memulai Obrolan Cepat.
Memulai sesi obrolan untuk menganalisis gambar
Dalam sesi obrolan ini, Anda menginstruksikan asisten untuk membantu memahami gambar yang Anda masukkan.
Untuk memulai, pastikan penyebaran berkemampuan gambar Anda dipilih di menu dropdown Penyebaran .
Dalam kotak teks konteks pada panel Penyiapan , berikan perintah ini untuk memandu asisten:
"You're an AI assistant that helps people find information."Atau, Anda dapat menyesuaikan perintah dengan gambar atau skenario Anda.Nota
Sebaiknya perbarui Pesan Sistem agar spesifik untuk tugas untuk menghindari respons yang tidak membantu dari model.
Pilih Terapkan perubahan untuk menyimpan perubahan Anda.
Di panel sesi obrolan, pilih tombol lampiran lalu Unggah gambar. Pilih gambar Anda.
Tambahkan perintah berikut di bidang obrolan:
Describe this image, lalu pilih ikon kirim untuk mengirimkannya.Ikon kirim digantikan oleh tombol berhenti. Jika Anda memilihnya, asisten berhenti memproses permintaan Anda. Untuk panduan cepat ini, biarkan asisten menyelesaikan balasannya.
Asisten membalas dengan deskripsi gambar.
Ajukan pertanyaan tindak lanjut terkait analisis gambar Anda. Anda bisa masuk,
"What should I highlight about this image to my insurance company?".Anda akan menerima respons yang relevan mirip dengan apa yang ditunjukkan di sini:
When reporting the incident to your insurance company, you should highlight the following key points from the image: 1. **Location of Damage**: Clearly state that the front end of the car, particularly the driver's side, is damaged. Mention the crumpled hood, broken front bumper, and the damaged left headlight. 2. **Point of Impact**: Indicate that the car has collided with a guardrail, which may suggest that no other vehicles were involved in the accident. 3. **Condition of the Car**: Note that the damage seems to be concentrated on the front end, and there is no visible damage to the windshield or rear of the car from this perspective. 4. **License Plate Visibility**: Mention that the license plate is intact and can be used for identification purposes. 5. **Environment**: Report that the accident occurred near a roadside with a guardrail, possibly in a rural or semi-rural area, which might help in establishing the accident location and context. 6. **Other Observations**: If there were any other circumstances or details not visible in the image that may have contributed to the accident, such as weather conditions, road conditions, or any other relevant information, be sure to include those as well. Remember to be factual and descriptive, avoiding speculation about the cause of the accident, as the insurance company will conduct its own investigation.
Menampilkan dan mengekspor kode
Kapan saja dalam sesi obrolan, Anda dapat mengaktifkan tombol Tampilkan JSON mentah di bagian atas jendela obrolan untuk melihat percakapan yang diformat sebagai JSON. Inilah tampilan di awal sesi obrolan cepat:
[
{
"role": "system",
"content": [
"You are an AI assistant that helps people find information."
]
},
]
Membersihkan sumber daya
Jika Anda ingin membersihkan dan menghapus sumber daya Azure OpenAI, Anda dapat menghapus sumber daya atau grup sumber daya. Menghapus kelompok sumber daya juga akan menghapus sumber daya lain yang terkait dengannya.
Gunakan artikel ini untuk mulai menggunakan REST API Azure OpenAI untuk menyebarkan dan menggunakan model obrolan yang mendukung visi.
Prasyarat
- Sebuah langganan Azure. Buat akun gratis.
- Python 3.8 atau versi yang lebih baru.
- Pustaka Python berikut:
requests,json. - Azure OpenAI di sumber daya Microsoft Foundry Models dengan model berkemampuan visi yang disebarkan. Lihat Ketersediaan model untuk wilayah yang tersedia. Untuk informasi selengkapnya tentang pembuatan sumber daya, lihat panduan penyebaran sumber daya.
Nota
Saat ini tidak didukung untuk menonaktifkan pemfilteran konten untuk model GPT-4 Turbo dengan Vision.
Ambil kunci dan titik akhir
Agar berhasil memanggil API Azure OpenAI, Anda memerlukan informasi berikut tentang sumber daya Azure OpenAI Anda:
| Variabel | Nama | Nilai |
|---|---|---|
| Titik Akhir | api_base |
Nilai titik akhir terletak di bawah Kunci dan Titik Akhir untuk sumber daya Anda di portal Azure. Anda juga dapat menemukan titik akhir melalui halaman Penyebaran di portal Foundry. Contoh titik akhir adalah: https://docs-test-001.openai.azure.com/. |
| Kunci | api_key |
Nilai kunci juga terletak di bawah Kunci dan Titik Akhir untuk sumber daya Anda di portal Azure. Azure menghasilkan dua kunci untuk sumber daya Anda. Anda dapat menggunakan salah satu nilai. |
Buka sumber daya Anda di portal Azure. Pada panel navigasi, pilih Titik Akhir dan Kunci di bawah Manajemen Sumber Daya. Salin nilai Titik akhir dan nilai kunci akses. Anda dapat menggunakan nilai KEY 1 atau KEY 2 . Memiliki dua kunci memungkinkan Anda memutar dan meregenerasi kunci dengan aman tanpa menyebabkan gangguan layanan.
Membuat aplikasi Python baru
Buat file Python baru bernama quickstart.py. Buka file baru di editor atau IDE pilihan Anda.
Ganti konten quickstart.py dengan kode berikut.
# Packages required: import requests import json api_base = '<your_azure_openai_endpoint>' deployment_name = '<your_deployment_name>' API_KEY = '<your_azure_openai_key>' base_url = f"{api_base}openai/deployments/{deployment_name}" headers = { "Content-Type": "application/json", "api-key": API_KEY } # Prepare endpoint, headers, and request body endpoint = f"{base_url}/chat/completions?api-version=2023-12-01-preview" data = { "messages": [ { "role": "system", "content": "You are a helpful assistant." }, { "role": "user", "content": [ { "type": "text", "text": "Describe this picture:" }, { "type": "image_url", "image_url": { "url": "<image URL>" } } ] } ], "max_tokens": 2000 } # Make the API call response = requests.post(endpoint, headers=headers, data=json.dumps(data)) print(f"Status Code: {response.status_code}") print(response.text)Buat perubahan berikut:
- Masukkan URL dan kunci titik akhir Anda di bidang yang sesuai.
- Masukkan nama penempatan model Anda di kolom yang sesuai.
- Ubah nilai
"image"bidang menjadi URL gambar Anda yang dapat diakses publik.Petunjuk / Saran
Anda juga dapat menggunakan data gambar yang dikodekan dalam base 64 alih-alih URL. Untuk informasi selengkapnya, lihat panduan cara mengobrol Visi.
Jalankan aplikasi dengan
pythonperintah:python quickstart.py
Membersihkan sumber daya
Jika Anda ingin membersihkan dan menghapus sumber daya Azure OpenAI, Anda dapat menghapus sumber daya atau grup sumber daya. Menghapus kelompok sumber daya juga akan menghapus sumber daya lain yang terkait dengannya.
Gunakan artikel ini untuk mulai menggunakan Azure OpenAI Python SDK untuk menyebarkan dan menggunakan model obrolan berkemampuan visi.
Kode sumber pustaka | Paket (PyPi) |
Prasyarat
- Sebuah langganan Azure. Buat akun gratis.
- Python 3.8 atau versi yang lebih baru.
- Pustaka Python berikut:
os - Sebuah sumber daya Azure OpenAI dalam Microsoft Foundry Models dengan model obrolan yang dilengkapi fungsi visi yang diimplementasikan. Lihat Ketersediaan model untuk wilayah yang tersedia. Untuk informasi selengkapnya tentang pembuatan sumber daya, lihat panduan penyebaran sumber daya.
Pengaturan
Instal pustaka klien OpenAI Python dengan:
pip install openai
Nota
Pustaka ini dikelola oleh OpenAI. Lihat riwayat rilis untuk melacak pembaruan terbaru di pustaka.
Ambil kunci dan titik akhir
Agar berhasil melakukan panggilan terhadap Azure OpenAI, Anda memerlukan titik akhir dan kunci.
| Nama variabel | Nilai |
|---|---|
ENDPOINT |
Titik akhir layanan dapat ditemukan di bagian https://docs-test-001.openai.azure.com/. |
API-KEY |
Nilai ini dapat ditemukan di bagian Kunci & Titik Akhir saat memeriksa sumber daya Anda dari portal Microsoft Azure. Anda dapat menggunakan KEY1 atau KEY2. |
Buka sumber daya Anda di portal Azure. Bagian Kunci & Titik Akhir dapat ditemukan di bagian Manajemen Sumber Daya. Salin titik akhir dan kunci akses Anda karena keduanya diperlukan untuk mengautentikasi panggilan API Anda. Anda dapat menggunakan KEY1 atau KEY2. Selalu miliki dua kunci untuk memungkinkan Anda memutar dan meregenerasi kunci dengan aman tanpa menyebabkan gangguan layanan.
Variabel lingkungan
Buat dan tetapkan variabel lingkungan persisten untuk kunci dan titik akhir Anda.
Penting
Kami merekomendasikan autentikasi ID Microsoft Entra dengan identitas terkelola untuk sumber daya Azure untuk menghindari penyimpanan kredensial dengan aplikasi Anda yang berjalan di cloud.
Gunakan kunci API dengan hati-hati. Jangan sertakan kunci API langsung dalam kode Anda, dan jangan pernah mempostingnya secara publik. Jika menggunakan kunci API, simpan dengan aman di Azure Key Vault, putar kunci secara teratur, dan batasi akses ke Azure Key Vault menggunakan kontrol akses berbasis peran dan pembatasan akses jaringan. Untuk informasi selengkapnya tentang menggunakan kunci API dengan aman di aplikasi Anda, lihat Kunci API dengan Azure Key Vault.
Untuk informasi selengkapnya tentang keamanan layanan AI, lihat Mengautentikasi permintaan ke layanan Azure AI.
setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
Membuat aplikasi Python baru
Buat file Python baru bernama quickstart.py. Buka file baru di editor atau IDE pilihan Anda.
Ganti konten quickstart.py dengan kode berikut.
from openai import AzureOpenAI api_base = os.getenv("AZURE_OPENAI_ENDPOINT") api_key= os.getenv("AZURE_OPENAI_API_KEY") deployment_name = '<your_deployment_name>' api_version = '2023-12-01-preview' # this might change in the future client = AzureOpenAI( api_key=api_key, api_version=api_version, base_url=f"{api_base}/openai/deployments/{deployment_name}" ) response = client.chat.completions.create( model=deployment_name, messages=[ { "role": "system", "content": "You are a helpful assistant." }, { "role": "user", "content": [ { "type": "text", "text": "Describe this picture:" }, { "type": "image_url", "image_url": { "url": "<image URL>" } } ] } ], max_tokens=2000 ) print(response)Buat perubahan berikut:
- Masukkan nama dari deployment model Anda pada kolom yang sesuai.
- Ubah nilai
"url"bidang menjadi URL gambar Anda yang dapat diakses publik.Petunjuk / Saran
Anda juga dapat menggunakan data gambar yang dikodekan dalam base 64 alih-alih URL. Untuk informasi selengkapnya, lihat panduan cara mengobrol Visi.
Jalankan aplikasi dengan
pythonperintah:python quickstart.py
Penting
Gunakan kunci API dengan hati-hati. Jangan sertakan kunci API langsung dalam kode Anda, dan jangan pernah mempostingnya secara publik. Jika Anda menggunakan kunci API, simpan dengan aman di Azure Key Vault. Untuk informasi selengkapnya tentang menggunakan kunci API dengan aman di aplikasi Anda, lihat Kunci API dengan Azure Key Vault.
Untuk informasi selengkapnya tentang keamanan layanan AI, lihat Mengautentikasi permintaan ke layanan Azure AI.
Membersihkan sumber daya
Jika Anda ingin membersihkan dan menghapus sumber daya Azure OpenAI, Anda dapat menghapus sumber daya atau grup sumber daya. Menghapus kelompok sumber daya juga akan menghapus sumber daya lain yang terkait dengannya.
Gunakan artikel ini untuk mulai menggunakan OpenAI JavaScript SDK untuk menyebarkan dan menggunakan model obrolan yang mendukung visi.
SDK ini disediakan oleh OpenAI dengan jenis spesifik Azure yang disediakan oleh Azure.
Dokumentasi referensi | Kode sumber pustaka | Paket (npm) | Sampel
Prasyarat
- Langganan Azure - Buat satu secara gratis
- Versi LTS dari Node.js
- Azure CLI yang digunakan untuk autentikasi tanpa kata sandi di lingkungan pengembangan lokal, buat konteks yang diperlukan dengan masuk dengan Azure CLI.
- Sumber daya Azure OpenAI yang dibuat di wilayah yang didukung (lihat Ketersediaan wilayah). Untuk informasi selengkapnya, lihat Membuat sumber daya dan menyebarkan model dengan Azure OpenAI.
Nota
Pustaka ini dikelola oleh OpenAI. Lihat riwayat rilis untuk melacak pembaruan terbaru di pustaka.
Prasyarat ID Microsoft Entra
Untuk autentikasi tanpa kunci yang direkomendasikan dengan ID Microsoft Entra, Anda perlu:
- Instal Azure CLI yang digunakan untuk autentikasi tanpa kunci dengan ID Microsoft Entra.
- Tetapkan peran
Cognitive Services Userke akun pengguna Anda. Anda dapat menetapkan peran di portal Microsoft Azure di bawah Kontrol akses (IAM)>Menambahkan penetapan peran.
Pengaturan
Buat folder
vision-quickstartbaru dan buka folder mulai cepat dengan perintah berikut:mkdir vision-quickstart && cd vision-quickstartBuat
package.jsondengan perintah berikut:npm init -yInstal pustaka klien OpenAI untuk JavaScript dengan:
npm install openaiUntuk autentikasi tanpa kata sandi yang direkomendasikan :
npm install @azure/identity
Mengambil informasi sumber daya
Anda perlu mengambil informasi berikut untuk mengautentikasi aplikasi Anda dengan sumber daya Azure OpenAI Anda:
| Nama variabel | Nilai |
|---|---|
AZURE_OPENAI_ENDPOINT |
Nilai ini dapat ditemukan di bagian Keys dan Endpoint saat memeriksa sumber daya Anda di portal Azure. |
AZURE_OPENAI_DEPLOYMENT_NAME |
Nilai ini akan sesuai dengan nama kustom yang Anda pilih ketika menerapkan model. Nilai ini dapat ditemukan di bawahPenyebaran Model Manajemen >Sumber Dayadi portal Microsoft Azure. |
Pelajari selengkapnya tentang autentikasi tanpa kunci dan mengatur variabel lingkungan.
Perhatian
Untuk menggunakan autentikasi tanpa kunci yang direkomendasikan dengan SDK, pastikan variabel AZURE_OPENAI_API_KEY lingkungan tidak diatur.
Membuat aplikasi JavaScript baru untuk perintah gambar
Pilih gambar dari azure-samples/cognitive-services-sample-data-files. Masukkan URL gambar yang dapat diakses publik Anda dalam kode di bawah ini atau atur IMAGE_URL variabel lingkungan ke dalamnya.
Penting
Jika Anda menggunakan URL SAS ke gambar yang disimpan di penyimpanan blob Azure, Anda perlu mengaktifkan Identitas Terkelola dan menetapkan peran Pembaca Blob Penyimpanan ke sumber daya Azure OpenAI Anda (lakukan ini di portal Microsoft Azure). Ini memungkinkan model untuk mengakses gambar dalam penyimpanan blob.
Petunjuk / Saran
Anda juga dapat menggunakan data gambar yang dikodekan dalam base 64 alih-alih URL. Untuk informasi selengkapnya, lihat panduan cara mengobrol Visi.
index.jsBuat file dengan kode berikut:const AzureOpenAI = require('openai').AzureOpenAI; const { DefaultAzureCredential, getBearerTokenProvider } = require('@azure/identity'); // You will need to set these environment variables or edit the following values const endpoint = process.env.AZURE_OPENAI_ENDPOINT || "Your endpoint"; const imageUrl = process.env.IMAGE_URL || "<image url>"; // Required Azure OpenAI deployment name and API version const apiVersion = process.env.OPENAI_API_VERSION || "2024-07-01-preview"; const deploymentName = process.env.AZURE_OPENAI_DEPLOYMENT_NAME || "gpt-4-with-turbo"; // keyless authentication const credential = new DefaultAzureCredential(); const scope = "https://cognitiveservices.azure.com/.default"; const azureADTokenProvider = getBearerTokenProvider(credential, scope); function getClient(): AzureOpenAI { return new AzureOpenAI({ endpoint, azureADTokenProvider, apiVersion, deployment: deploymentName, }); } function createMessages() { return { messages: [ { role: "system", content: "You are a helpful assistant." }, { role: "user", content: [ { type: "text", text: "Describe this picture:", }, { type: "image_url", image_url: { url: imageUrl, }, }, ], }, ], model: "", max_tokens: 2000, }; } async function printChoices(completion) { for (const choice of completion.choices) { console.log(choice.message); } } export async function main() { console.log("== Get Vision chats Sample =="); const client = getClient(); const messages = createMessages(); const completion = await client.chat.completions.create(messages); await printChoices(completion); } main().catch((err) => { console.error("Error occurred:", err); });Masuk ke Azure dengan perintah berikut:
az loginJalankan file JavaScript.
node index.js
Membersihkan sumber daya
Jika Anda ingin membersihkan dan menghapus sumber daya Azure OpenAI, Anda dapat menghapus sumber daya atau grup sumber daya. Menghapus kelompok sumber daya juga akan menghapus sumber daya lain yang terkait dengannya.
Gunakan artikel ini untuk mulai menggunakan OpenAI JavaScript SDK untuk menyebarkan dan menggunakan model obrolan yang mendukung visi.
SDK ini disediakan oleh OpenAI dengan jenis spesifik Azure yang disediakan oleh Azure.
Dokumentasi referensi | Kode sumber pustaka | Paket (npm) | Sampel
Prasyarat
- Langganan Azure - Buat satu secara gratis
- Versi LTS dari Node.js
- TypeScript
- Azure CLI yang digunakan untuk autentikasi tanpa kata sandi di lingkungan pengembangan lokal, buat konteks yang diperlukan dengan masuk dengan Azure CLI.
- Sumber daya Azure OpenAI yang dibuat di wilayah yang didukung (lihat Ketersediaan wilayah). Untuk informasi selengkapnya, lihat Membuat sumber daya dan menyebarkan model dengan Azure OpenAI.
Nota
Pustaka ini dikelola oleh OpenAI. Lihat riwayat rilis untuk melacak pembaruan terbaru di pustaka.
Prasyarat ID Microsoft Entra
Untuk autentikasi tanpa kunci yang direkomendasikan dengan ID Microsoft Entra, Anda perlu:
- Instal Azure CLI yang digunakan untuk autentikasi tanpa kunci dengan ID Microsoft Entra.
- Tetapkan peran
Cognitive Services Userke akun pengguna Anda. Anda dapat menetapkan peran di portal Microsoft Azure di bawah Kontrol akses (IAM)>Menambahkan penetapan peran.
Pengaturan
Buat folder
vision-quickstartbaru dan buka folder mulai cepat dengan perintah berikut:mkdir vision-quickstart && cd vision-quickstartBuat
package.jsondengan perintah berikut:npm init -ypackage.jsonPerbarui ke ECMAScript dengan perintah berikut:npm pkg set type=moduleInstal pustaka klien OpenAI untuk JavaScript dengan:
npm install openaiUntuk autentikasi tanpa kata sandi yang direkomendasikan :
npm install @azure/identity
Mengambil informasi sumber daya
Anda perlu mengambil informasi berikut untuk mengautentikasi aplikasi Anda dengan sumber daya Azure OpenAI Anda:
| Nama variabel | Nilai |
|---|---|
AZURE_OPENAI_ENDPOINT |
Nilai ini dapat ditemukan di bagian Keys dan Endpoint saat memeriksa sumber daya Anda di portal Azure. |
AZURE_OPENAI_DEPLOYMENT_NAME |
Nilai ini akan sesuai dengan nama kustom yang Anda pilih ketika menerapkan model. Nilai ini dapat ditemukan di bawahPenyebaran Model Manajemen >Sumber Dayadi portal Microsoft Azure. |
Pelajari selengkapnya tentang autentikasi tanpa kunci dan mengatur variabel lingkungan.
Perhatian
Untuk menggunakan autentikasi tanpa kunci yang direkomendasikan dengan SDK, pastikan variabel AZURE_OPENAI_API_KEY lingkungan tidak diatur.
Membuat aplikasi JavaScript baru untuk perintah gambar
Pilih gambar dari azure-samples/cognitive-services-sample-data-files. Gunakan URL gambar dalam kode di bawah ini atau atur IMAGE_URL variabel lingkungan ke URL gambar.
Petunjuk / Saran
Anda juga dapat menggunakan data gambar yang dikodekan dalam base 64 alih-alih URL. Untuk informasi selengkapnya, lihat panduan cara mengobrol Visi.
index.tsBuat file dengan kode berikut:import { AzureOpenAI } from "openai"; import { DefaultAzureCredential, getBearerTokenProvider } from "@azure/identity"; import type { ChatCompletion, ChatCompletionCreateParamsNonStreaming, } from "openai/resources/index"; // You will need to set these environment variables or edit the following values const endpoint = process.env.AZURE_OPENAI_ENDPOINT || "Your endpoint"; const imageUrl = process.env["IMAGE_URL"] || "<image url>"; // Required Azure OpenAI deployment name and API version const apiVersion = process.env.OPENAI_API_VERSION || "2024-07-01-preview"; const deploymentName = process.env.AZURE_OPENAI_DEPLOYMENT_NAME || "gpt-4-with-turbo"; // keyless authentication const credential = new DefaultAzureCredential(); const scope = "https://cognitiveservices.azure.com/.default"; const azureADTokenProvider = getBearerTokenProvider(credential, scope); function getClient(): AzureOpenAI { return new AzureOpenAI({ endpoint, azureADTokenProvider, apiVersion, deployment: deploymentName, }); } function createMessages(): ChatCompletionCreateParamsNonStreaming { return { messages: [ { role: "system", content: "You are a helpful assistant." }, { role: "user", content: [ { type: "text", text: "Describe this picture:", }, { type: "image_url", image_url: { url: imageUrl, }, }, ], }, ], model: "", max_tokens: 2000, }; } async function printChoices(completion: ChatCompletion): Promise<void> { for (const choice of completion.choices) { console.log(choice.message); } } export async function main() { console.log("== Get Vision chat Sample =="); const client = getClient(); const messages = createMessages(); const completion = await client.chat.completions.create(messages); await printChoices(completion); } main().catch((err) => { console.error("Error occurred:", err); });tsconfig.jsonBuat file untuk menerjemahkan kode TypeScript dan salin kode berikut untuk ECMAScript.{ "compilerOptions": { "module": "NodeNext", "target": "ES2022", // Supports top-level await "moduleResolution": "NodeNext", "skipLibCheck": true, // Avoid type errors from node_modules "strict": true // Enable strict type-checking options }, "include": ["*.ts"] }Transpile dari TypeScript ke JavaScript.
tscMasuk ke Azure dengan perintah berikut:
az loginJalankan kode dengan perintah berikut:
node index.js
Membersihkan sumber daya
Jika Anda ingin membersihkan dan menghapus sumber daya Azure OpenAI, Anda dapat menghapus sumber daya atau grup sumber daya. Menghapus kelompok sumber daya juga akan menghapus sumber daya lain yang terkait dengannya.
Gunakan artikel ini untuk mulai menggunakan Azure OpenAI .NET SDK untuk menyebarkan dan menggunakan model obrolan yang mendukung visi.
Prasyarat
- Sebuah langganan Azure. Anda dapat membuatnya secara gratis.
- The .NET 8.0 SDK
- Sebuah sumber daya Azure OpenAI dalam Microsoft Foundry Models dengan model obrolan yang dilengkapi fungsi visi yang diimplementasikan. Lihat Ketersediaan model untuk wilayah yang tersedia. Untuk informasi selengkapnya tentang pembuatan sumber daya, lihat panduan penyebaran sumber daya.
Prasyarat ID Microsoft Entra
Untuk autentikasi tanpa kunci yang direkomendasikan dengan ID Microsoft Entra, Anda perlu:
- Instal Azure CLI yang digunakan untuk autentikasi tanpa kunci dengan ID Microsoft Entra.
- Tetapkan peran
Cognitive Services Userke akun pengguna Anda. Anda dapat menetapkan peran di portal Microsoft Azure di bawah Kontrol akses (IAM)>Menambahkan penetapan peran.
Pengaturan
Buat folder
vision-quickstartbaru dan buka folder mulai cepat dengan perintah berikut:mkdir vision-quickstart && cd vision-quickstartBuat aplikasi konsol baru dengan perintah berikut:
dotnet new consolePasang pustaka klien OpenAI .NET dengan perintah 'dotnet add package':
dotnet add package Azure.AI.OpenAIUntuk autentikasi tanpa kunci yang direkomendasikan dengan ID Microsoft Entra, instal paket Azure.Identity dengan:
dotnet add package Azure.IdentityUntuk autentikasi tanpa kunci yang direkomendasikan dengan ID Microsoft Entra, masuk ke Azure dengan perintah berikut:
az login
Mengambil informasi sumber daya
Anda perlu mengambil informasi berikut untuk mengautentikasi aplikasi Anda dengan sumber daya Azure OpenAI Anda:
| Nama variabel | Nilai |
|---|---|
AZURE_OPENAI_ENDPOINT |
Nilai ini dapat ditemukan di bagian Keys dan Endpoint saat memeriksa sumber daya Anda di portal Azure. |
AZURE_OPENAI_DEPLOYMENT_NAME |
Nilai ini akan sesuai dengan nama kustom yang Anda pilih ketika menerapkan model. Nilai ini dapat ditemukan di bawahPenyebaran Model Manajemen >Sumber Dayadi portal Microsoft Azure. |
Pelajari selengkapnya tentang autentikasi tanpa kunci dan mengatur variabel lingkungan.
Jalankan mulai cepat
Kode sampel dalam panduan memulai cepat ini menggunakan Microsoft Entra ID untuk autentikasi tanpa kunci yang direkomendasikan. Jika Anda lebih suka menggunakan kunci API, Anda dapat mengganti DefaultAzureCredential objek dengan AzureKeyCredential objek.
AzureOpenAIClient openAIClient = new AzureOpenAIClient(new Uri(endpoint), new DefaultAzureCredential());
Untuk menjalankan mulai cepat, ikuti langkah-langkah berikut:
Gantilah isi
Program.csdengan kode berikut dan perbarui nilai placeholder dengan nilai Anda sendiri.using Azure; using Azure.AI.OpenAI; using Azure.Identity; using OpenAI.Chat; // Required for Passwordless auth string deploymentName = "gpt-4"; string endpoint = Environment.GetEnvironmentVariable("AZURE_OPENAI_ENDPOINT") ?? "https://<your-resource-name>.openai.azure.com/"; string key = Environment.GetEnvironmentVariable("AZURE_OPENAI_API_KEY") ?? "<your-key>"; // Use the recommended keyless credential instead of the AzureKeyCredential credential. AzureOpenAIClient openAIClient = new AzureOpenAIClient(new Uri(endpoint), new DefaultAzureCredential()); //AzureOpenAIClient openAIClient = new AzureOpenAIClient(new Uri(endpoint), new AzureKeyCredential(key)); var chatClient = openAIClient.GetChatClient(deploymentName); var imageUrl = "YOUR_IMAGE_URL"; var textPart = ChatMessageContentPart.CreateTextPart("Describe this picture:"); var imgPart = ChatMessageContentPart.CreateImagePart(imageUrl); var chatMessages = new List<ChatMessage> { new SystemChatMessage("You are a helpful assistant."), new UserChatMessage(textPart, imgPart) }; ChatCompletion chatCompletion = await chatClient.CompleteChatAsync(chatMessages); Console.WriteLine($"[ASSISTANT]:"); Console.WriteLine($"{chatCompletion.Content[0].Text}");Ganti
YOUR_IMAGE_URLdengan gambar yang dapat diakses publik yang ingin Anda unggah.Jalankan aplikasi menggunakan
dotnet runperintah atau tombol jalankan di bagian atas Visual Studio:dotnet run
Keluaran
Output aplikasi akan menjadi deskripsi gambar yang Anda berikan dalam imageUri variabel. Asisten akan menganalisis gambar dan memberikan deskripsi terperinci berdasarkan kontennya.
Membersihkan sumber daya
Jika Anda ingin membersihkan dan menghapus sumber daya Azure OpenAI, Anda dapat menghapus sumber daya atau grup sumber daya. Menghapus kelompok sumber daya juga akan menghapus sumber daya lain yang terkait dengannya.