Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Microsoft Foundry Modellerinde Azure OpenAI ile sohbetlerinizdeki görüntüleri kullanmaya başlayın.
Önemli
Görüntü işleme işlevselliğine sahip sohbet tamamlama modelleri kullanılırken ek kullanım ücretleri uygulanabilir.
Görüntü anlama ile sohbet tamamlama modelini dağıtmak ve test etmek için Microsoft Foundry'yi kullanmaya başlamak için bu makaleyi kullanın.
Önkoşullar
- Bir Azure aboneliği. Ücretsiz bir tane oluşturun.
- Azure aboneliğinizi aldıktan sonra, Kaynak oluşturma hakkında daha fazla bilgi için kaynak dağıtım kılavuzuna bakın.
- Azure OpenAI kaynağınızın bağlantı olarak eklendiği bir Foundry projesi.
Medyanızı hazırlama
Bu hızlı başlangıcı tamamlamak için bir görüntüye ihtiyacınız vardır. Bu örnek görüntüyü veya kullanabileceğiniz başka bir görüntüyü kullanabilirsiniz.
Dökümhane'ye gidin
- Foundry'ye gidin ve Azure OpenAI kaynağınızla ilişkili kimlik bilgileriyle oturum açın. Oturum açma iş akışı sırasında veya sonrasında uygun dizini, Azure aboneliğini ve Azure OpenAI kaynağını seçin.
- Çalışmak istediğiniz projeyi seçin.
- Sol gezinti menüsünde Modeller + uç noktalar'ı ve + Model dağıt'ı seçin.
- Model adını seçerek görüntü özellikli bir dağıtım seçin: gpt-4o veya gpt-4o-mini. Görüntülenen pencerede bir ad ve dağıtım türü seçin. Azure OpenAI kaynağınızın bağlı olduğundan emin olun. Model dağıtımı hakkında daha fazla bilgi için bkz. kaynak dağıtım kılavuzu.
- Dağıt'ı seçin.
- Ardından yeni modelinizi seçin ve Oyun alanında aç'ı seçin. Sohbet oyun alanında, oluşturduğunuz dağıtım Dağıtım açılır menüsünden seçilmelidir.
Çocuk bahçesi
Bu sohbet oturumunda, yardımcıya giriş yaptığınız görüntüleri anlamanıza yardımcı olmasını emredersiniz.
Yardımcı kurulumu, sohbet oturumları, ayarlar ve panellerle ilgili genel yardım için Sohbet hızlı başlangıcına bakın.
Görüntüleri analiz etmek için sohbet oturumu başlatma
Bu sohbet oturumunda, yardımcıya sağladığınız görüntülerin anlaşılmasına yardımcı olması için talimat vereceksiniz.
Başlamak için, Dağıtım açılır listesinden görüntü destekli dağıtımınızın seçili olduğundan emin olun.
Kurulum panelindeki bağlam metin kutusunda, yardımcıya rehberlik etmek için şu istemi sağlayın:
"You're an AI assistant that helps people find information."İsterseniz, istemi görüntünüze veya senaryonuza uyarlayabilirsiniz.Uyarı
Modelden gelen yararlı olmayan yanıtları önlemek için Sistem İletisi'ni göreve özgü olacak şekilde güncelleştirmenizi öneririz.
Değişikliklerinizi kaydetmek için Değişiklikleri uygula'yı seçin.
Sohbet oturumu bölmesinde ek düğmesini ve ardından Resmi karşıya yükle'yi seçin. Resminizi seçin.
Sohbet alanına aşağıdaki istemi ekleyin:
Describe this imageve ardından gönder simgesini seçerek gönderin.Gönder simgesinin yerini bir durdur düğmesi alır. Bunu seçerseniz, yardımcı isteğinizi işlemeyi durdurur. Bu hızlı başlangıç için yardımcının yanıtını bitirmesine izin verin.
Yardımcı, resmin açıklamasını verir.
Görüntünüzün analiziyle ilgili bir takip sorusu sorun. girebilirsiniz.
"What should I highlight about this image to my insurance company?"Burada gösterilene benzer bir yanıt almanız gerekir:
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.
Kodu görüntüleme ve dışarı aktarma
Sohbet oturumunun herhangi bir noktasında, konuşmanın JSON olarak biçimlendirildiğini görmek için sohbet penceresinin üst kısmındaki Ham JSON göster anahtarını etkinleştirebilirsiniz. Hızlı başlangıç sohbet oturumunun başında nasıl göründüğü aşağıda verilmiştir:
[
{
"role": "system",
"content": [
"You are an AI assistant that helps people find information."
]
},
]
Kaynakları temizle
Bir Azure OpenAI kaynağını temizlemek ve kaldırmak istiyorsanız, kaynağı veya kaynak grubunu silebilirsiniz. Kaynak grubunu silmek, onunla ilişkili olan diğer tüm kaynakları da siler.
Görüntü işleme özellikli sohbet modellerini dağıtmak ve kullanmak için Azure OpenAI REST API'lerini kullanmaya başlamak için bu makaleyi kullanın.
Önkoşullar
- Bir Azure aboneliği. Ücretsiz bir tane oluşturun.
- Python 3.8 veya sonraki bir sürümü.
- Aşağıdaki Python kitaplıkları:
requests,json. - Görüntü işleme özellikli modelin dağıtildiği Microsoft Foundry Modellerinde Azure OpenAI kaynağı. Model kullanılabilirliği için mevcut bölgeleri bkz. Kaynak oluşturma hakkında daha fazla bilgi için kaynak dağıtım kılavuzuna bakın.
Uyarı
Şu anda Görsel Model özellikli GPT-4 Turbo için içerik filtrelemeyi kapatmak desteklenmemektedir.
Anahtarı ve uç noktayı alma
Azure OpenAI API'lerini başarıyla çağırmak için Azure OpenAI kaynağınız hakkında aşağıdaki bilgilere ihtiyacınız vardır:
| Değişken | İsim | Değer |
|---|---|---|
| Bitiş noktası | api_base |
Uç nokta değeri, Azure portalında kaynağınız için Anahtarlar ve Uç Nokta altında bulunur. Uç noktayı, Foundry portalındaki Dağıtımlar sayfasından da bulabilirsiniz. Örnek uç nokta: https://docs-test-001.openai.azure.com/. |
| Anahtar | api_key |
Anahtar değeri, Azure portalında kaynağınız için Anahtarlar ve Uç Nokta altında da bulunur. Azure, kaynağınız için iki anahtar oluşturur. İki değerden birini kullanabilirsiniz. |
Azure portalında kaynağınıza gidin. Gezinti bölmesinde Kaynak Yönetimi'nin altında Anahtarlar ve Uç Nokta'yı seçin. Uç nokta değerini ve erişim anahtarı değerini kopyalayın. ANAHTAR 1 veya ANAHTAR 2 değerini kullanabilirsiniz. İki anahtara sahip olmak, hizmet kesintisine neden olmadan anahtarları güvenli bir şekilde döndürmenize ve yeniden oluşturmanıza olanak tanır.
Yeni bir Python uygulaması oluşturun
quickstart.py adlı yeni bir Python dosyası oluşturun. Yeni dosyayı tercih ettiğiniz düzenleyicide veya IDE'de açın.
quickstart.py içeriğini aşağıdaki kodla değiştirin.
# 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)Aşağıdaki değişiklikleri yapın:
- Uygun alanlara uç nokta URL'nizi ve anahtarınızı girin.
- Model dağıtım adınızı uygun alana girin.
-
"image"alanının değerini, görüntünüzün genel erişime açık URL'si olarak değiştirin.Tavsiye
Url yerine temel 64 kodlanmış görüntü verilerini de kullanabilirsiniz. Daha fazla bilgi için Bkz. Görüntü İşleme sohbetleri nasıl yapılır kılavuzu.
Uygulamayı şu komutla
pythonçalıştırın:python quickstart.py
Kaynakları temizle
Bir Azure OpenAI kaynağını temizlemek ve kaldırmak istiyorsanız, kaynağı veya kaynak grubunu silebilirsiniz. Kaynak grubunu silmek, onunla ilişkili olan diğer tüm kaynakları da siler.
Görüntü işleme özellikli bir sohbet modelini dağıtmak ve kullanmak üzere Azure OpenAI Python SDK'sını kullanmaya başlamak için bu makaleyi kullanın.
Kitaplık kaynak kodu | Paket (PyPi) |
Önkoşullar
- Bir Azure aboneliği. Ücretsiz bir tane oluşturun.
- Python 3.8 veya sonraki bir sürümü.
- Aşağıdaki Python kitaplıkları:
os - Görüntü işleme özellikli sohbet modeli dağıtılan Microsoft Foundry Modellerinde Azure OpenAI kaynağı. Model kullanılabilirliği için mevcut bölgeleri bkz. Kaynak oluşturma hakkında daha fazla bilgi için kaynak dağıtım kılavuzuna bakın.
Kurulum
OpenAI Python istemci kitaplığını şu şekilde yükleyin:
pip install openai
Uyarı
Bu kitaplık OpenAI tarafından korunur. Kitaplığın en son güncelleştirmelerini izlemek için sürüm geçmişine bakın.
Anahtarı ve uç noktayı alma
Azure OpenAI'ye karşı başarılı bir şekilde çağrı yapmak için bir uç nokta ve anahtar gerekir.
| Değişken adı | Değer |
|---|---|
ENDPOINT |
Hizmet uç noktası, Kaynağınızı Azure portalından incelerken Anahtarlar ve Uç Nokta bölümünde bulunabilir. Alternatif olarak, uç noktayı Microsoft Foundry portalındaki Dağıtımlar sayfasında bulabilirsiniz. Örnek uç nokta: https://docs-test-001.openai.azure.com/. |
API-KEY |
Bu değer, Kaynağınızı Azure portalından incelerken Anahtarlar ve Uç Nokta bölümünde bulunabilir.
KEY1 veya KEY2 kullanabilirsiniz. |
Azure portalında kaynağınıza gidin.
Anahtarlar ve Uç Nokta bölümü Kaynak Yönetimi bölümünde bulunabilir. Api çağrılarınızın kimliğini doğrulamak için ihtiyacınız olacak şekilde uç noktanızı ve erişim anahtarınızı kopyalayın.
KEY1 veya KEY2 kullanabilirsiniz. Her zaman iki anahtara sahip olmak, hizmet kesintisine neden olmadan anahtarları güvenli bir şekilde döndürmenize ve yeniden oluşturmanıza olanak tanır.
Ortam değişkenleri
Anahtarınız ve uç noktanız için kalıcı ortam değişkenleri oluşturun ve atayın.
Önemli
Kimlik bilgilerini bulutta çalışan uygulamalarınızla depolamaktan kaçınmak için Azure kaynakları için yönetilen kimliklerle Microsoft Entra Id kimlik doğrulaması yapmanızı öneririz.
API anahtarlarını dikkatli kullanın. API anahtarını doğrudan kodunuzla eklemeyin ve hiçbir zaman herkese açık olarak göndermeyin. API anahtarlarını kullanıyorsanız, bunları Azure Key Vault'ta güvenli bir şekilde depolayın, anahtarları düzenli olarak döndürün ve rol tabanlı erişim denetimi ve ağ erişim kısıtlamalarını kullanarak Azure Key Vault'a erişimi kısıtlayın. Uygulamalarınızda API anahtarlarını güvenli bir şekilde kullanma hakkında daha fazla bilgi için bkz. Azure Key Vault ile API anahtarları.
Yapay zeka hizmetleri güvenliği hakkında daha fazla bilgi için bkz. Azure AI hizmetlerine yönelik isteklerin kimliğini doğrulama.
setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
Yeni bir Python uygulaması oluşturun
quickstart.py adlı yeni bir Python dosyası oluşturun. Yeni dosyayı tercih ettiğiniz düzenleyicide veya IDE'de açın.
quickstart.py içeriğini aşağıdaki kodla değiştirin.
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)Aşağıdaki değişiklikleri yapın:
- Model dağıtımınızın adını uygun alana girin.
-
"url"alanının değerini, görüntünüzün genel erişime açık URL'si olarak değiştirin.Tavsiye
Url yerine temel 64 kodlanmış görüntü verilerini de kullanabilirsiniz. Daha fazla bilgi için Bkz. Görüntü İşleme sohbetleri nasıl yapılır kılavuzu.
Uygulamayı şu komutla
pythonçalıştırın:python quickstart.py
Önemli
API anahtarlarını dikkatli kullanın. API anahtarını doğrudan kodunuzla eklemeyin ve hiçbir zaman herkese açık olarak göndermeyin. API anahtarı kullanıyorsanız, bunu Azure Key Vault'ta güvenli bir şekilde depolayın. Uygulamalarınızda API anahtarlarını güvenli bir şekilde kullanma hakkında daha fazla bilgi için bkz. Azure Key Vault ile API anahtarları.
Yapay zeka hizmetleri güvenliği hakkında daha fazla bilgi için bkz. Azure AI hizmetlerine yönelik isteklerin kimliğini doğrulama.
Kaynakları temizle
Bir Azure OpenAI kaynağını temizlemek ve kaldırmak istiyorsanız, kaynağı veya kaynak grubunu silebilirsiniz. Kaynak grubunu silmek, onunla ilişkili olan diğer tüm kaynakları da siler.
Görüntü işleme özellikli bir sohbet modelini dağıtmak ve kullanmak üzere OpenAI JavaScript SDK'sını kullanmaya başlamak için bu makaleyi kullanın.
Bu SDK, OpenAI tarafından sağlanmıştır ve belirli Azure türleri ise Azure tarafından sağlanmaktadır.
Başvuru belgeleri | Kitaplık kaynak kodu | Paket (npm) | Örnekler
Önkoşullar
- Azure aboneliği - Ücretsiz bir tane oluşturun
- Node.js LTS sürümleri
- Yerel geliştirme ortamında parolasız kimlik doğrulaması için kullanılan Azure CLI, Azure CLI ile oturum açarak gerekli bağlamı oluşturun.
- Desteklenen bir bölgede oluşturulan bir Azure OpenAI kaynağı (bkz . Bölge kullanılabilirliği). Daha fazla bilgi için bkz. Azure OpenAI ile kaynak oluşturma ve model dağıtma.
Uyarı
Bu kitaplık OpenAI tarafından korunur. Kitaplığın en son güncelleştirmelerini izlemek için sürüm geçmişine bakın.
Microsoft Entra Id önkoşulları
Microsoft Entra Id ile önerilen anahtarsız kimlik doğrulaması için şunları yapmanız gerekir:
- Microsoft Entra ID ile anahtarsız kimlik doğrulaması için kullanılan Azure CLI'yi yükleyin.
- Rolü kullanıcı hesabınıza atayın
Cognitive Services User. Azure portalında Erişim denetimi (IAM)>Rol ataması ekle altında rol atayabilirsiniz.
Kurulum
Yeni bir klasör
vision-quickstartoluşturun ve aşağıdaki komutu kullanarak hızlı başlangıç klasörüne gidin:mkdir vision-quickstart && cd vision-quickstartAşağıdaki komutla
package.jsonoluşturun:npm init -yJavaScript için OpenAI istemci kitaplığını şu şekilde yükleyin:
npm install openaiÖnerilen parolasız kimlik doğrulaması için:
npm install @azure/identity
Kaynak bilgilerini alma
Azure OpenAI kaynağınızla uygulamanızın kimliğini doğrulamak için aşağıdaki bilgileri almanız gerekir:
| Değişken adı | Değer |
|---|---|
AZURE_OPENAI_ENDPOINT |
Bu değer, Kaynağınızı Azure portalından incelerken Anahtarlar ve Uç Nokta bölümünde bulunabilir. |
AZURE_OPENAI_DEPLOYMENT_NAME |
Dağıttığınız bir model için dağıtımınıza özel verdiğiniz isme bu değer karşılık gelir. Bu değer, Azure portalındaki Kaynak Yönetimi>Modeli Dağıtımları altında bulunabilir. |
Anahtarsız kimlik doğrulaması ve ortam değişkenlerini ayarlama hakkında daha fazla bilgi edinin.
Dikkat
SDK ile önerilen anahtarsız kimlik doğrulamasını kullanmak için ortam değişkeninin AZURE_OPENAI_API_KEY ayarlanmamış olduğundan emin olun.
Görüntü istemleri için yeni bir JavaScript uygulaması oluşturma
azure-samples/cognitive-services-sample-data-files içinden bir görüntü seçin. Aşağıdaki koda genel olarak erişilebilen görüntü URL'nizi girin veya ortam değişkenini IMAGE_URL buna ayarlayın.
Önemli
Azure blob depolamada depolanan bir görüntünün SAS URL'sini kullanıyorsanız Yönetilen Kimlik'i etkinleştirmeniz ve Depolama Blob Okuyucusu rolünü Azure OpenAI kaynağınıza atamanız gerekir (bunu Azure portalında yapın). Bu, modelin blob depolamadaki görüntüye erişmesini sağlar.
Tavsiye
Url yerine temel 64 kodlanmış görüntü verilerini de kullanabilirsiniz. Daha fazla bilgi için Bkz. Görüntü İşleme sohbetleri nasıl yapılır kılavuzu.
index.jsDosyayı aşağıdaki kodla oluşturun: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); });Aşağıdaki komutla Azure'da oturum açın:
az loginJavaScript dosyasını çalıştırın.
node index.js
Kaynakları temizle
Bir Azure OpenAI kaynağını temizlemek ve kaldırmak istiyorsanız, kaynağı veya kaynak grubunu silebilirsiniz. Kaynak grubunu silmek, onunla ilişkili olan diğer tüm kaynakları da siler.
Görüntü işleme özellikli bir sohbet modelini dağıtmak ve kullanmak üzere OpenAI JavaScript SDK'sını kullanmaya başlamak için bu makaleyi kullanın.
Bu SDK, OpenAI tarafından sağlanmıştır ve belirli Azure türleri ise Azure tarafından sağlanmaktadır.
Başvuru belgeleri | Kitaplık kaynak kodu | Paket (npm) | Örnekler
Önkoşullar
- Azure aboneliği - Ücretsiz bir tane oluşturun
- Node.js LTS sürümleri
- TypeScript
- Yerel geliştirme ortamında parolasız kimlik doğrulaması için kullanılan Azure CLI, Azure CLI ile oturum açarak gerekli bağlamı oluşturun.
- Desteklenen bir bölgede oluşturulan bir Azure OpenAI kaynağı (bkz . Bölge kullanılabilirliği). Daha fazla bilgi için bkz. Azure OpenAI ile kaynak oluşturma ve model dağıtma.
Uyarı
Bu kitaplık OpenAI tarafından korunur. Kitaplığın en son güncelleştirmelerini izlemek için sürüm geçmişine bakın.
Microsoft Entra Id önkoşulları
Microsoft Entra Id ile önerilen anahtarsız kimlik doğrulaması için şunları yapmanız gerekir:
- Microsoft Entra ID ile anahtarsız kimlik doğrulaması için kullanılan Azure CLI'yi yükleyin.
- Rolü kullanıcı hesabınıza atayın
Cognitive Services User. Azure portalında Erişim denetimi (IAM)>Rol ataması ekle altında rol atayabilirsiniz.
Kurulum
Yeni bir klasör
vision-quickstartoluşturun ve aşağıdaki komutu kullanarak hızlı başlangıç klasörüne gidin:mkdir vision-quickstart && cd vision-quickstartAşağıdaki komutla
package.jsonoluşturun:npm init -ypackage.jsonaşağıdaki komut ile ECMAScript olarak güncelleyin:npm pkg set type=moduleJavaScript için OpenAI istemci kitaplığını şu şekilde yükleyin:
npm install openaiÖnerilen parolasız kimlik doğrulaması için:
npm install @azure/identity
Kaynak bilgilerini alma
Azure OpenAI kaynağınızla uygulamanızın kimliğini doğrulamak için aşağıdaki bilgileri almanız gerekir:
| Değişken adı | Değer |
|---|---|
AZURE_OPENAI_ENDPOINT |
Bu değer, Kaynağınızı Azure portalından incelerken Anahtarlar ve Uç Nokta bölümünde bulunabilir. |
AZURE_OPENAI_DEPLOYMENT_NAME |
Dağıttığınız bir model için dağıtımınıza özel verdiğiniz isme bu değer karşılık gelir. Bu değer, Azure portalındaki Kaynak Yönetimi>Modeli Dağıtımları altında bulunabilir. |
Anahtarsız kimlik doğrulaması ve ortam değişkenlerini ayarlama hakkında daha fazla bilgi edinin.
Dikkat
SDK ile önerilen anahtarsız kimlik doğrulamasını kullanmak için ortam değişkeninin AZURE_OPENAI_API_KEY ayarlanmamış olduğundan emin olun.
Görüntü istemleri için yeni bir JavaScript uygulaması oluşturma
azure-samples/cognitive-services-sample-data-files içinden bir görüntü seçin. Aşağıdaki koddaki görüntü URL'sini kullanın veya ortam değişkenini IMAGE_URL görüntü URL'sine ayarlayın.
Tavsiye
Url yerine temel 64 kodlanmış görüntü verilerini de kullanabilirsiniz. Daha fazla bilgi için Bkz. Görüntü İşleme sohbetleri nasıl yapılır kılavuzu.
index.tsDosyayı aşağıdaki kodla oluşturun: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.jsondosyasını oluşturup TypeScript kodunu dönüştürmek için ECMAScript için aşağıdaki kodu kopyalayın.{ "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"] }TypeScript'ten JavaScript'e dönüştürme.
tscAşağıdaki komutla Azure'da oturum açın:
az loginKodu aşağıdaki komutla çalıştırın:
node index.js
Kaynakları temizle
Bir Azure OpenAI kaynağını temizlemek ve kaldırmak istiyorsanız, kaynağı veya kaynak grubunu silebilirsiniz. Kaynak grubunu silmek, onunla ilişkili olan diğer tüm kaynakları da siler.
Görüntü işleme özellikli bir sohbet modelini dağıtmak ve kullanmak üzere Azure OpenAI .NET SDK'sını kullanmaya başlamak için bu makaleyi kullanın.
Önkoşullar
- Bir Azure aboneliği. Ücretsiz bir tane oluşturabilirsiniz.
- .NET 8.0 SDK'sı
- Görüntü işleme özellikli sohbet modeli dağıtılan Microsoft Foundry Modellerinde Azure OpenAI kaynağı. Model kullanılabilirliği için mevcut bölgeleri bkz. Kaynak oluşturma hakkında daha fazla bilgi için kaynak dağıtım kılavuzuna bakın.
Microsoft Entra Id önkoşulları
Microsoft Entra Id ile önerilen anahtarsız kimlik doğrulaması için şunları yapmanız gerekir:
- Microsoft Entra ID ile anahtarsız kimlik doğrulaması için kullanılan Azure CLI'yi yükleyin.
- Rolü kullanıcı hesabınıza atayın
Cognitive Services User. Azure portalında Erişim denetimi (IAM)>Rol ataması ekle altında rol atayabilirsiniz.
Kurulum
Yeni bir klasör
vision-quickstartoluşturun ve aşağıdaki komutu kullanarak hızlı başlangıç klasörüne gidin:mkdir vision-quickstart && cd vision-quickstartAşağıdaki komutla yeni bir konsol uygulaması oluşturun:
dotnet new consoleOpenAI .NET istemci kitaplığınıdotnet add package komutuyla yükleyin:
dotnet add package Azure.AI.OpenAIMicrosoft Entra ID ile önerilen anahtarsız kimlik doğrulaması için Azure.Identity paketini şu şekilde yükleyin:
dotnet add package Azure.IdentityMicrosoft Entra ID ile önerilen anahtarsız kimlik doğrulaması için aşağıdaki komutu kullanarak Azure'da oturum açın:
az login
Kaynak bilgilerini alma
Azure OpenAI kaynağınızla uygulamanızın kimliğini doğrulamak için aşağıdaki bilgileri almanız gerekir:
| Değişken adı | Değer |
|---|---|
AZURE_OPENAI_ENDPOINT |
Bu değer, Kaynağınızı Azure portalından incelerken Anahtarlar ve Uç Nokta bölümünde bulunabilir. |
AZURE_OPENAI_DEPLOYMENT_NAME |
Dağıttığınız bir model için dağıtımınıza özel verdiğiniz isme bu değer karşılık gelir. Bu değer, Azure portalındaki Kaynak Yönetimi>Modeli Dağıtımları altında bulunabilir. |
Anahtarsız kimlik doğrulaması ve ortam değişkenlerini ayarlama hakkında daha fazla bilgi edinin.
Hızlı başlangıcı çalıştırma
Bu hızlı başlangıçtaki örnek kod, önerilen anahtarsız kimlik doğrulaması için Microsoft Entra Kimliğini kullanır. API anahtarı kullanmayı tercih ederseniz, DefaultAzureCredential nesnesini bir AzureKeyCredential nesneyle değiştirebilirsiniz.
AzureOpenAIClient openAIClient = new AzureOpenAIClient(new Uri(endpoint), new DefaultAzureCredential());
Hızlı başlangıcı çalıştırmak için şu adımları izleyin:
öğesinin içeriğini
Program.csaşağıdaki kodla değiştirin ve yer tutucu değerlerini kendi kodunuzla güncelleştirin.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}");Yüklemek istediğiniz görüntünün genel olarak erişilebilen URL’si veya yoluyla
YOUR_IMAGE_URL'yi değiştirin.Visual Studio'nun
dotnet runüst kısmındaki komutu veya çalıştır düğmesini kullanarak uygulamayı çalıştırın:dotnet run
Çıktı
Uygulamanın çıkışı, değişkeninde imageUri sağladığınız görüntünün açıklaması olacaktır. Yardımcı, görüntüyü analiz eder ve içeriğine göre ayrıntılı bir açıklama sağlar.
Kaynakları temizle
Bir Azure OpenAI kaynağını temizlemek ve kaldırmak istiyorsanız, kaynağı veya kaynak grubunu silebilirsiniz. Kaynak grubunu silmek, onunla ilişkili olan diğer tüm kaynakları da siler.
İlgili içerik
- Azure OpenAI AI Uygulama şablonunu kullanarak çok modüllü görüntü işleme sohbeti uygulamalarını kullanmaya başlama
- Görüntü İşleme özellikli modeller nasıl yapılır kılavuzunda bu API'ler hakkında daha fazla bilgi edinin
- GpT-4 Turbo ile Görüntü İşleme hakkında sık sorulan sorular
- Görüntü İşleme API Referansı ile GPT-4 Turbo