Hızlı Başlangıç: Azure OpenAI Service kullanarak metin oluşturmaya başlama
Azure OpenAI'ye ilk çağrılarınızı yapmaya başlamak için bu makaleyi kullanın.
Önkoşullar
Azure aboneliği - Ücretsiz bir abonelik oluşturun.
İstenen Azure aboneliğinde Azure OpenAI'ya erişim verilir.
Şu anda bu hizmete erişim yalnızca uygulama tarafından sağlanmaktadır. adresinden formu https://aka.ms/oai/accesstamamlayarak Azure OpenAI'ye erişim için başvurabilirsiniz. Sorun yaşıyorsanız bizimle iletişime geçmek için bu depoda bir sorun açın.
Modeli dağıtılan bir Azure OpenAI kaynağı. Model dağıtımı hakkında daha fazla bilgi için bkz. kaynak dağıtım kılavuzu.
İpucu
Birden çok Azure AI hizmetindeki özellikleri bir araya getiren yeni birleşik Azure AI Studio'yu (önizleme) deneyin.
Azure OpenAI Studio'ya gidin
adresinden Azure OpenAI Studio'ya https://oai.azure.com/ gidin ve OpenAI kaynağınıza erişimi olan 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.
Azure OpenAI Studio giriş sayfasından daha fazla ilerleyerek hızlı tamamlama örneklerini keşfedin, dağıtımlarınızı ve modellerinizi yönetin ve belgeler ve topluluk forumları gibi öğrenme kaynaklarını bulun.
Deneme ve ince ayar iş akışı için Oyun Alanı'na gidin.
Çocuk bahçesi
GPT-3 Playground aracılığıyla kod içermeyen bir yaklaşımla Azure OpenAI özelliklerini keşfetmeye başlayın. Bu, tamamlama oluşturmak için bir istem gönderebileceğiniz bir metin kutusu. Bu sayfadan özellikleri hızla yineleyebilir ve deneyebilirsiniz.
Başlamak için bir dağıtım seçebilir ve önceden yüklenmiş birkaç örnek arasından seçim yapabilirsiniz. Kaynağınızın dağıtımı yoksa Dağıtım oluştur'u seçin ve sihirbaz tarafından sağlanan yönergeleri izleyin. Model dağıtımı hakkında daha fazla bilgi için bkz. kaynak dağıtım kılavuzu.
Görevinizin performansını geliştirmek için sıcaklık ve yanıt öncesi metin gibi yapılandırma ayarlarıyla denemeler yapabilirsiniz. REST API'deki her parametre hakkında daha fazla bilgi edinebilirsiniz.
- Oluştur düğmesi seçildiğinde, girilen metin tamamlanmalar API'sine gönderilir ve sonuçları metin kutusuna geri akışla gönderir.
- Önceki oluşturma çağrısını geri almak için Geri Al düğmesini seçin.
- Geri alma ve oluşturma çağrısını birlikte tamamlamak için Yeniden Oluştur düğmesini seçin.
Azure OpenAI ayrıca istem girişlerinde ve oluşturulan çıkışlarda con çadır modu ration gerçekleştirir. Zararlı içerik algılanırsa istemler veya yanıtlar filtrelenebilir. Daha fazla bilgi için içerik filtresi makalesine bakın.
GPT-3 oyun alanında, seçtiğiniz ayarlara göre önceden doldurulmuş Python ve curl kod örneklerini de görüntüleyebilirsiniz. Örnekler açılan listesinin yanındaki Kodu görüntüle'yi seçmeniz gerekir. OpenAI Python SDK'sı, curl veya diğer REST API istemcisiyle aynı görevi tamamlamak için bir uygulama yazabilirsiniz.
Metin özetlemeyi deneyin
GPT-3 Playground'da metin özetleme için Azure OpenAI'yi kullanmak için şu adımları izleyin:
Çalışmak için aboneliği ve OpenAI kaynağını seçin.
Giriş sayfasının üst kısmındaki GPT-3 Oyun Alanı'nı seçin.
Dağıtımlar açılan listesinden dağıtımınızı seçin. Kaynağınızın dağıtımı yoksa Dağıtım oluştur'u seçin ve bu adımı yeniden ziyaret edin.
Örnekler açılan listesinde Metni Özetle'yi seçin.
Generate
öğesini seçin. Azure OpenAI, metnin bağlamını yakalamaya ve kısa bir şekilde yeniden ifade etmeye çalışır. Aşağıdaki metne benzer bir sonuç almanız gerekir:Tl;dr A neutron star is the collapsed core of a supergiant star. These incredibly dense objects are incredibly fascinating due to their strange properties and their potential for phenomena such as extreme gravitational forces and a strong magnetic field.
Yanıtın doğruluğu modele göre farklılık gösterebilir. Bu örnekteki Davinci tabanlı model bu özetleme türüne çok uygundur, ancak Codex tabanlı bir model bu özel görevde de iyi performans göstermez.
Kaynakları temizleme
Bir Azure OpenAI kaynağını temizlemek ve kaldırmak istiyorsanız, kaynağı veya kaynak grubunu silebilirsiniz. Kaynak grubunun silinmesi, kaynak grubuyla ilişkili diğer tüm kaynakları da siler.
Sonraki adımlar
- Tamamlamalarla ilgili nasıl yapılır kılavuzumuzda en iyi tamamlamanın nasıl oluşturulacağı hakkında daha fazla bilgi edinin.
- Daha fazla örnek için Azure OpenAI Örnekleri GitHub deposuna bakın.
Kaynak kod | Paketi (NuGet) | Örnekleri
Önkoşullar
- Azure aboneliği - Ücretsiz bir abonelik oluşturun
- İstenen Azure aboneliğinde Azure OpenAI hizmetine erişim izni verilir. Şu anda bu hizmete erişim yalnızca uygulama tarafından sağlanmaktadır. adresinden formu https://aka.ms/oai/accesstamamlayarak Azure OpenAI Hizmeti'ne erişim için başvurabilirsiniz.
- .NET Core'un geçerli sürümü
- Modelin
gpt-35-turbo-instruct
dağıtılacağı bir Azure OpenAI Hizmeti kaynağı. Model dağıtımı hakkında daha fazla bilgi için bkz. kaynak dağıtım kılavuzu.
Ayarlama
Yeni .NET Core uygulaması oluşturma
Bir konsol penceresinde (cmd, PowerShell veya Bash gibi), adlı azure-openai-quickstart
yeni bir konsol uygulaması oluşturmak için komutunu kullanındotnet new
. Bu komut, tek bir C# kaynak dosyasıyla basit bir "Merhaba Dünya" projesi oluşturur: Program.cs.
dotnet new console -n azure-openai-quickstart
Dizininizi yeni oluşturulan uygulama klasörüyle değiştirin. Uygulamayı şu şekilde oluşturabilirsiniz:
dotnet build
Derleme çıkışı hiçbir uyarı veya hata içermemelidir.
...
Build succeeded.
0 Warning(s)
0 Error(s)
...
OpenAI .NET istemci kitaplığını şu şekilde yükleyin:
dotnet add package Azure.AI.OpenAI --prerelease
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 |
Bu değer, Azure portal kaynağınızı incelerken Anahtarlar ve Uç Nokta bölümünde bulunabilir. Alternatif olarak, değeri Azure OpenAI Studio>Oyun Alanı>Kod Görünümü'nde bulabilirsiniz. Örnek uç nokta: https://docs-test-001.openai.azure.com/ . |
API-KEY |
Bu değer, Azure portal kaynağınızı 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.
setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
Örnek uygulama oluşturma
Proje dizininden program.cs dosyasını açın ve öğesini aşağıdaki kodla değiştirin:
using Azure;
using Azure.AI.OpenAI;
using static System.Environment;
string endpoint = GetEnvironmentVariable("AZURE_OPENAI_ENDPOINT");
string key = GetEnvironmentVariable("AZURE_OPENAI_API_KEY");
var client = new OpenAIClient(new Uri(endpoint), new AzureKeyCredential(key));
CompletionsOptions completionsOptions = new()
{
DeploymentName = "gpt-35-turbo-instruct",
Prompts = { "When was Microsoft founded?" },
};
Response<Completions> completionsResponse = client.GetCompletions(completionsOptions);
string completion = completionsResponse.Value.Choices[0].Text;
Console.WriteLine($"Chatbot: {completion}");
Önemli
Üretim için Azure Key Vault gibi kimlik bilgilerinizi depolamanın ve bunlara erişmenin güvenli bir yolunu kullanın. Kimlik bilgisi güvenliği hakkında daha fazla bilgi için Azure AI hizmetleri güvenlik makalesine bakın.
dotnet run program.cs
Çıktı
Chatbot:
Microsoft was founded on April 4, 1975.
Kaynakları temizleme
Bir Azure OpenAI kaynağını temizlemek ve kaldırmak istiyorsanız kaynağı silebilirsiniz. Kaynağı silmeden önce dağıtılan modelleri silmeniz gerekir.
Sonraki adımlar
Kaynak kodu | Paketi (Go)| Örnekleri
Önkoşullar
- Azure aboneliği - Ücretsiz bir abonelik oluşturun
- İstenen Azure aboneliğinde Azure OpenAI hizmetine erişim izni verilir. Şu anda bu hizmete erişim yalnızca uygulama tarafından sağlanmaktadır. adresinden formu https://aka.ms/oai/accesstamamlayarak Azure OpenAI Hizmeti'ne erişim için başvurabilirsiniz.
- Yerel olarak yüklenen 1.21.0 veya üzeri bir sürüme geçin.
- Modelin
gpt-35-turbo-instuct
dağıtılacağı bir Azure OpenAI Hizmeti kaynağı. Model dağıtımı hakkında daha fazla bilgi için bkz. kaynak dağıtım kılavuzu.
Ayarlama
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 |
Bu değer, Azure portal kaynağınızı incelerken Anahtarlar ve Uç Nokta bölümünde bulunabilir. Alternatif olarak, değeri Azure OpenAI Studio>Oyun Alanı>Kod Görünümü'nde bulabilirsiniz. Örnek uç nokta: https://docs-test-001.openai.azure.com/ . |
API-KEY |
Bu değer, Azure portal kaynağınızı 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.
setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
Örnek uygulama oluşturma
completions.go adlı yeni bir dosya oluşturun. Aşağıdaki kodu completions.go dosyasına kopyalayın.
package main
import (
"context"
"fmt"
"os"
"github.com/Azure/azure-sdk-for-go/sdk/ai/azopenai"
"github.com/Azure/azure-sdk-for-go/sdk/azcore/to"
)
func main() {
azureOpenAIKey := os.Getenv("AZURE_OPENAI_API_KEY")
modelDeploymentID := "gpt-35-turbo-instruct"
azureOpenAIEndpoint := os.Getenv("AZURE_OPENAI_ENDPOINT")
if azureOpenAIKey == "" || modelDeploymentID == "" || azureOpenAIEndpoint == "" {
fmt.Fprintf(os.Stderr, "Skipping example, environment variables missing\n")
return
}
keyCredential, err := azopenai.NewKeyCredential(azureOpenAIKey)
if err != nil {
// TODO: handle error
}
client, err := azopenai.NewClientWithKeyCredential(azureOpenAIEndpoint, keyCredential, nil)
if err != nil {
// TODO: handle error
}
resp, err := client.GetCompletions(context.TODO(), azopenai.CompletionsOptions{
Prompt: []string{"What is Azure OpenAI, in 20 words or less"},
MaxTokens: to.Ptr(int32(2048)),
Temperature: to.Ptr(float32(0.0)),
Deployment: modelDeploymentID,
}, nil)
if err != nil {
// TODO: handle error
}
for _, choice := range resp.Choices {
fmt.Fprintf(os.Stderr, "Result: %s\n", *choice.Text)
}
}
Önemli
Üretim için Azure Key Vault gibi kimlik bilgilerinizi depolamanın ve bunlara erişmenin güvenli bir yolunu kullanın. Kimlik bilgisi güvenliği hakkında daha fazla bilgi için Azure AI hizmetleri güvenlik makalesine bakın.
Şimdi bir komut istemi açın ve şunu çalıştırın:
go mod init completions.go
Sonraki çalıştırma:
go mod tidy
go run completions.go
Çıktı
== Get completions Sample ==
Microsoft was founded on April 4, 1975.
Kaynakları temizleme
Bir Azure OpenAI kaynağını temizlemek ve kaldırmak istiyorsanız kaynağı silebilirsiniz. Kaynağı silmeden önce dağıtılan modelleri silmeniz gerekir.
Sonraki adımlar
Kaynak kodu | Yapıtı (Maven) | Örnekleri
Önkoşullar
- Azure aboneliği - Ücretsiz bir abonelik oluşturun
- İstenen Azure aboneliğinde Azure OpenAI hizmetine erişim izni verilir. Şu anda bu hizmete erişim yalnızca uygulama tarafından sağlanmaktadır. adresinden formu https://aka.ms/oai/accesstamamlayarak Azure OpenAI Hizmeti'ne erişim için başvurabilirsiniz.
- Java Geliştirme Seti'nin (JDK) geçerli sürümü
- Gradle derleme aracı veya başka bir bağımlılık yöneticisi.
- Modelin
gpt-35-turbo-instruct
dağıtılacağı bir Azure OpenAI Hizmeti kaynağı. Model dağıtımı hakkında daha fazla bilgi için bkz. kaynak dağıtım kılavuzu.
Ayarlama
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 |
Bu değer, Azure portal kaynağınızı incelerken Anahtarlar ve Uç Nokta bölümünde bulunabilir. Alternatif olarak, değeri Azure OpenAI Studio>Oyun Alanı>Kod Görünümü'nde bulabilirsiniz. Örnek uç nokta: https://docs-test-001.openai.azure.com/ . |
API-KEY |
Bu değer, Azure portal kaynağınızı 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.
setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
Yeni java uygulaması oluşturma
Yeni bir Gradle projesi oluşturun.
Konsol penceresinde (cmd, PowerShell veya Bash gibi), uygulamanız için yeni bir dizin oluşturun ve bu dizine gidin.
mkdir myapp && cd myapp
gradle init
Komutunu çalışma dizininizden çalıştırın. Bu komut, uygulamanızı oluşturmak ve yapılandırmak için çalışma zamanında kullanılan build.gradle.kts de dahil olmak üzere Gradle için temel derleme dosyaları oluşturur.
gradle init --type basic
DSL seçmeniz istendiğinde Kotlin'i seçin.
Java SDK'sını yükleme
Bu hızlı başlangıçta Gradle bağımlılık yöneticisi kullanılır. Maven Central Repository'de diğer bağımlılık yöneticilerinin istemci kitaplığını ve bilgilerini bulabilirsiniz.
build.gradle.kts dosyasını bulun ve tercih ettiğiniz IDE veya metin düzenleyici ile açın. Ardından aşağıdaki derleme yapılandırmasını kopyalayın. Bu yapılandırma, projeyi giriş noktası OpenAIQuickstart sınıfı olan bir Java uygulaması olarak tanımlar. Azure AI Vision kitaplığını içeri aktarır.
plugins {
java
application
}
application {
mainClass.set("GetCompletionsSample")
}
repositories {
mavenCentral()
}
dependencies {
implementation(group = "com.azure", name = "azure-ai-openai", version = "1.0.0-beta.3")
implementation("org.slf4j:slf4j-simple:1.7.9")
}
Örnek uygulama oluşturma
Bir Java dosyası oluşturun.
Çalışma dizininizden aşağıdaki komutu çalıştırarak bir proje kaynak klasörü oluşturun:
mkdir -p src/main/java
Yeni klasöre gidin ve GetCompletionsSample.java adlı bir dosya oluşturun.
tercih ettiğiniz düzenleyicide veya IDE'de GetCompletionsSample.java açın ve aşağıdaki kodu yapıştırın.
package com.azure.ai.openai.usage; import com.azure.ai.openai.OpenAIClient; import com.azure.ai.openai.OpenAIClientBuilder; import com.azure.ai.openai.models.Choice; import com.azure.ai.openai.models.Completions; import com.azure.ai.openai.models.CompletionsOptions; import com.azure.ai.openai.models.CompletionsUsage; import com.azure.core.credential.AzureKeyCredential; import java.util.ArrayList; import java.util.List; public class GetCompletionsSample { public static void main(String[] args) { String azureOpenaiKey = System.getenv("AZURE_OPENAI_API_KEY");; String endpoint = System.getenv("AZURE_OPENAI_ENDPOINT");; String deploymentOrModelId = "gpt-35-turbo-instruct"; OpenAIClient client = new OpenAIClientBuilder() .endpoint(endpoint) .credential(new AzureKeyCredential(azureOpenaiKey)) .buildClient(); List<String> prompt = new ArrayList<>(); prompt.add("When was Microsoft founded?"); Completions completions = client.getCompletions(deploymentOrModelId, new CompletionsOptions(prompt)); System.out.printf("Model ID=%s is created at %s.%n", completions.getId(), completions.getCreatedAt()); for (Choice choice : completions.getChoices()) { System.out.printf("Index: %d, Text: %s.%n", choice.getIndex(), choice.getText()); } CompletionsUsage usage = completions.getUsage(); System.out.printf("Usage: number of prompt token is %d, " + "number of completion token is %d, and number of total tokens in request and response is %d.%n", usage.getPromptTokens(), usage.getCompletionTokens(), usage.getTotalTokens()); } }
Proje kök klasörüne geri dönün ve aşağıdakilerle uygulamayı derleyin:
gradle build
Ardından komutuyla
gradle run
çalıştırın:gradle run
Çıktı
Model ID=cmpl-7JZRbWuEuHX8ozzG3BXC2v37q90mL is created at 1684898835.
Index: 0, Text:
Microsoft was founded on April 4, 1975..
Usage: number of prompt token is 5, number of completion token is 11, and number of total tokens in request and response is 16.
Kaynakları temizleme
Bir Azure OpenAI kaynağını temizlemek ve kaldırmak istiyorsanız kaynağı silebilirsiniz. Kaynağı silmeden önce dağıtılan modelleri silmeniz gerekir.
Sonraki adımlar
Kaynak kodu | Yapıtları (Maven) | Örnek
Önkoşullar
- Azure aboneliği - Ücretsiz bir abonelik oluşturun
- İstenen Azure aboneliğinde Azure OpenAI hizmetine erişim izni verilir. Şu anda bu hizmete erişim yalnızca uygulama tarafından sağlanmaktadır. adresinden formu https://aka.ms/oai/accesstamamlayarak Azure OpenAI Hizmeti'ne erişim için başvurabilirsiniz.
- Java Geliştirme Seti'nin (JDK) geçerli sürümü
- Spring Boot CLI aracı
- Modelin
gpt-35-turbo
dağıtılacağı bir Azure OpenAI Hizmeti kaynağı. Model dağıtımı hakkında daha fazla bilgi için bkz. kaynak dağıtım kılavuzu.
Ayarlama
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 |
Bu değer, Azure portal kaynağınızı incelerken Anahtarlar ve Uç Nokta bölümünde bulunabilir. Alternatif olarak, değeri Azure OpenAI Studio>Oyun Alanı>Kod Görünümü'nde bulabilirsiniz. Örnek uç nokta: https://docs-test-001.openai.azure.com/ . |
API-KEY |
Bu değer, Azure portal kaynağınızı 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.
Not
Spring AI, model adını varsayılan olarak olarak gpt-35-turbo
kullanır. Yalnızca farklı bir ada sahip bir model dağıttıysanız değeri sağlamanız SPRING_AI_AZURE_OPENAI_MODEL
gerekir.
export SPRING_AI_AZURE_OPENAI_API_KEY="REPLACE_WITH_YOUR_KEY_VALUE_HERE"
export SPRING_AI_AZURE_OPENAI_ENDPOINT="REPLACE_WITH_YOUR_ENDPOINT_HERE"
export SPRING_AI_AZURE_OPENAI_MODEL="REPLACE_WITH_YOUR_MODEL_NAME_HERE"
Yeni bir Spring uygulaması oluşturma
Yeni bir Spring projesi oluşturun.
Bash penceresinde uygulamanız için yeni bir dizin oluşturun ve bu dizine gidin.
mkdir ai-completion-demo && cd ai-completion-demo
spring init
Komutunu çalışma dizininizden çalıştırın. Bu komut, Spring projeniz için ana Java sınıf kaynak dosyası ve Maven tabanlı projeleri yönetmek için kullanılan pom.xml dosyası da dahil olmak üzere standart bir dizin yapısı oluşturur.
spring init -a ai-completion-demo -n AICompletion --force --build maven -x
Oluşturulan dosya ve klasörler aşağıdaki yapıya benzer:
ai-completion-demo/
|-- pom.xml
|-- mvn
|-- mvn.cmd
|-- HELP.md
|-- src/
|-- main/
| |-- resources/
| | |-- application.properties
| |-- java/
| |-- com/
| |-- example/
| |-- aicompletiondemo/
| |-- AiCompletionApplication.java
|-- test/
|-- java/
|-- com/
|-- example/
|-- aicompletiondemo/
|-- AiCompletionApplicationTests.java
Spring uygulamasını düzenleme
pom.xml dosyasını düzenleyin.
Proje dizininin kökünden, pom.xml dosyasını tercih ettiğiniz düzenleyicide veya IDE'de açın ve aşağıdaki içeriğe sahip dosyanın üzerine yazın:
<?xml version="1.0" encoding="UTF-8"?> <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd"> <modelVersion>4.0.0</modelVersion> <parent> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-parent</artifactId> <version>3.2.0</version> <relativePath/> <!-- lookup parent from repository --> </parent> <groupId>com.example</groupId> <artifactId>ai-completion-demo</artifactId> <version>0.0.1-SNAPSHOT</version> <name>AICompletion</name> <description>Demo project for Spring Boot</description> <properties> <java.version>17</java.version> </properties> <dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> </dependency> <dependency> <groupId>org.springframework.experimental.ai</groupId> <artifactId>spring-ai-azure-openai-spring-boot-starter</artifactId> <version>0.7.0-SNAPSHOT</version> </dependency> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> </dependencies> <build> <plugins> <plugin> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-maven-plugin</artifactId> </plugin> </plugins> </build> <repositories> <repository> <id>spring-snapshots</id> <name>Spring Snapshots</name> <url>https://repo.spring.io/snapshot</url> <releases> <enabled>false</enabled> </releases> </repository> </repositories> </project>
src/main/java/com/example/aicompletiondemo klasöründen tercih ettiğiniz düzenleyicide veya IDE'de AiCompletionApplication.java açın ve aşağıdaki kodu yapıştırın:
package com.example.aicompletiondemo; import java.util.Collections; import java.util.List; import org.springframework.ai.client.AiClient; import org.springframework.ai.prompt.Prompt; import org.springframework.ai.prompt.messages.Message; import org.springframework.ai.prompt.messages.MessageType; import org.springframework.ai.prompt.messages.UserMessage; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.CommandLineRunner; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; @SpringBootApplication public class AiCompletionApplication implements CommandLineRunner { private static final String ROLE_INFO_KEY = "role"; @Autowired private AiClient aiClient; public static void main(String[] args) { SpringApplication.run(AiCompletionApplication.class, args); } @Override public void run(String... args) throws Exception { System.out.println(String.format("Sending completion prompt to AI service. One moment please...\r\n")); final List<Message> msgs = Collections.singletonList(new UserMessage("When was Microsoft founded?")); final var resps = aiClient.generate(new Prompt(msgs)); System.out.println(String.format("Prompt created %d generated response(s).", resps.getGenerations().size())); resps.getGenerations().stream() .forEach(gen -> { final var role = gen.getInfo().getOrDefault(ROLE_INFO_KEY, MessageType.ASSISTANT.getValue()); System.out.println(String.format("Generated respose from \"%s\": %s", role, gen.getText())); }); } }
Proje kök klasörüne geri dönün ve aşağıdaki komutu kullanarak uygulamayı çalıştırın:
./mvnw spring-boot:run
Çıktı
. ____ _ __ _ _
/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _` | \ \ \ \
\\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |_\__, | / / / /
=========|_|==============|___/=/_/_/_/
:: Spring Boot :: (v3.1.5)
2023-11-07T12:47:46.126-06:00 INFO 98687 --- [ main] c.e.a.AiCompletionApplication : No active profile set, falling back to 1 default profile: "default"
2023-11-07T12:47:46.823-06:00 INFO 98687 --- [ main] c.e.a.AiCompletionApplication : Started AiCompletionApplication in 0.925 seconds (process running for 1.238)
Sending completion prompt to AI service. One moment please...
Prompt created 1 generated response(s).
Generated respose from "assistant": Microsoft was founded on April 4, 1975.
Kaynakları temizleme
Bir Azure OpenAI kaynağını temizlemek ve kaldırmak istiyorsanız kaynağı silebilirsiniz. Kaynağı silmeden önce dağıtılan modelleri silmeniz gerekir.
Sonraki adımlar
Daha fazla örnek için Azure OpenAI Örnekleri GitHub deposuna göz atın
Kaynak kodu | Paketi (npm) | Örnekler
Önkoşullar
- Azure aboneliği - Ücretsiz bir abonelik oluşturun
- İstenen Azure aboneliğinde Azure OpenAI hizmetine erişim izni verilir. Şu anda bu hizmete erişim yalnızca uygulama tarafından sağlanmaktadır. adresinden formu https://aka.ms/oai/accesstamamlayarak Azure OpenAI Hizmeti'ne erişim için başvurabilirsiniz.
- Node.js LTS sürümleri
- Modelin
gpt-35-turbo-instruct
dağıtılacağı bir Azure OpenAI Hizmeti kaynağı. Model dağıtımı hakkında daha fazla bilgi için bkz. kaynak dağıtım kılavuzu.
Ayarlama
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 |
Bu değer, Azure portal kaynağınızı incelerken Anahtarlar ve Uç Nokta bölümünde bulunabilir. Alternatif olarak, değeri Azure OpenAI Studio>Oyun Alanı>Kod Görünümü'nde bulabilirsiniz. Örnek uç nokta: https://docs-test-001.openai.azure.com/ . |
API-KEY |
Bu değer, Azure portal kaynağınızı 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.
setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
Konsol penceresinde (cmd, PowerShell veya Bash gibi), uygulamanız için yeni bir dizin oluşturun ve bu dizine gidin. Ardından komutunu çalıştırarak npm init
package.json dosyasıyla bir düğüm uygulaması oluşturun.
npm init
İstemci kitaplığını yükleme
npm ile JavaScript için Azure OpenAI istemci kitaplığını yükleyin:
npm install @azure/openai
Uygulamanızın package.json dosyası bağımlılıklarla güncelleştirilir.
Örnek uygulama oluşturma
Yeni projeyi oluşturduğunuz bir komut istemi açın ve Completion.js adlı yeni bir dosya oluşturun. Aşağıdaki kodu Completion.js dosyasına kopyalayın.
const { OpenAIClient, AzureKeyCredential } = require("@azure/openai");
const endpoint = process.env["AZURE_OPENAI_ENDPOINT"] ;
const azureApiKey = process.env["AZURE_OPENAI_API_KEY"] ;
const prompt = ["When was Microsoft founded?"];
async function main() {
console.log("== Get completions Sample ==");
const client = new OpenAIClient(endpoint, new AzureKeyCredential(azureApiKey));
const deploymentId = "gpt-35-turbo-instruct";
const result = await client.getCompletions(deploymentId, prompt);
for (const choice of result.choices) {
console.log(choice.text);
}
}
main().catch((err) => {
console.error("The sample encountered an error:", err);
});
module.exports = { main };
Önemli
Üretim için Azure Key Vault gibi kimlik bilgilerinizi depolamanın ve bunlara erişmenin güvenli bir yolunu kullanın. Kimlik bilgisi güvenliği hakkında daha fazla bilgi için Azure AI hizmetleri güvenlik makalesine bakın.
Betiği aşağıdaki komutla çalıştırın:
node.exe Completion.js
Çıktı
== Get completions Sample ==
Microsoft was founded on April 4, 1975.
Kaynakları temizleme
Bir Azure OpenAI kaynağını temizlemek ve kaldırmak istiyorsanız kaynağı silebilirsiniz. Kaynağı silmeden önce dağıtılan modelleri silmeniz gerekir.
Sonraki adımlar
- Azure OpenAI'ye Genel Bakış
- Daha fazla örnek için Azure OpenAI Örnekleri GitHub deposuna göz atın
Kitaplık kaynak kodu | Paketi (PyPi) |
Önkoşullar
Azure aboneliği - Ücretsiz bir abonelik oluşturun
İstenen Azure aboneliğinde Azure OpenAI'ye erişim izni verildi
Şu anda bu hizmete erişim yalnızca uygulama tarafından sağlanmaktadır. adresinden formu https://aka.ms/oai/accesstamamlayarak Azure OpenAI'ye erişim için başvurabilirsiniz. Sorun yaşıyorsanız bizimle iletişime geçmek için bu depoda bir sorun açın.
Aşağıdaki Python kitaplıkları: işletim sistemi, istekler, json
Modeli dağıtılan bir
gpt-35-turbo-instruct
Azure OpenAI Hizmeti kaynağı. Model dağıtımı hakkında daha fazla bilgi için bkz. kaynak dağıtım kılavuzu.
Ayarlama
OpenAI Python istemci kitaplığını şu şekilde yükleyin:
pip install openai
Not
Bu kitaplık OpenAI tarafından korunur ve şu anda önizleme aşamasındadır. Kitaplıkta yapılan en son güncelleştirmeleri izlemek için yayın geçmişine veya version.py işleme geçmişine bakın.
Anahtarı ve uç noktayı alma
Azure OpenAI hizmetine karşı başarılı bir şekilde çağrı yapmak için aşağıdakilere ihtiyacınız vardır:
Değişken adı | Değer |
---|---|
ENDPOINT |
Bu değer, Kaynağınızı Azure portalından incelerken Anahtarlar ve Uç Nokta bölümünde bulunabilir. Alternatif olarak, değeri Azure OpenAI Studio>Playground>Görünüm kodunda 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. |
DEPLOYMENT-NAME |
Bu değer, bir modeli dağıtırken dağıtımınız için seçtiğiniz özel ada karşılık gelir. Bu değer, Azure portalındaki Kaynak Yönetimi>Modeli Dağıtımları altında veya alternatif olarak Azure OpenAI Studio'da Yönetim>Dağıtımları altında bulunabilir. |
Azure portalında kaynağınıza gidin. Anahtarlar ve Uç Nokta, 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.
Anahtarınız ve uç noktanız için kalıcı ortam değişkenleri oluşturun ve atayın.
Ortam değişkenleri
Anahtarınız ve uç noktanız için kalıcı ortam değişkenleri oluşturun ve atayın.
setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
Yeni Python uygulaması oluşturma
quickstart.py adlı yeni bir Python dosyası oluşturun. Ardından tercih ettiğiniz düzenleyicide veya IDE'de açın.
quickstart.py içeriğini aşağıdaki kodla değiştirin. Anahtarınızı, uç noktanızı ve dağıtım adınızı eklemek için kodu değiştirin:
import os
from openai import AzureOpenAI
client = AzureOpenAI(
api_key=os.getenv("AZURE_OPENAI_API_KEY"),
api_version="2024-02-01",
azure_endpoint = os.getenv("AZURE_OPENAI_ENDPOINT")
)
deployment_name='REPLACE_WITH_YOUR_DEPLOYMENT_NAME' #This will correspond to the custom name you chose for your deployment when you deployed a model. Use a gpt-35-turbo-instruct deployment.
# Send a completion call to generate an answer
print('Sending a test completion job')
start_phrase = 'Write a tagline for an ice cream shop. '
response = client.completions.create(model=deployment_name, prompt=start_phrase, max_tokens=10)
print(start_phrase+response.choices[0].text)
Önemli
Üretim için Azure Key Vault gibi kimlik bilgilerinizi depolamanın ve bunlara erişmenin güvenli bir yolunu kullanın. Kimlik bilgisi güvenliği hakkında daha fazla bilgi için Azure AI hizmetleri güvenlik makalesine bakın.
Uygulamayı hızlı başlangıç dosyanızda komutuyla
python
çalıştırın:python quickstart.py
Çıktı
Çıktı, istemin Write a tagline for an ice cream shop.
ardından yanıt metnini içerir. Bu örnekte Azure OpenAI döndürüldü The coldest ice cream in town!
.
Sending a test completion job
Write a tagline for an ice cream shop. The coldest ice cream in town!
Yanıtın her zaman aynı olmayacağından, diğer yanıt türlerini görmek için kodu birkaç kez daha çalıştırın.
Sonuçlarınızı anlama
Örneğimiz Write a tagline for an ice cream shop.
çok az bağlam sağladığından modelin her zaman beklenen sonuçları döndürmemesi normaldir. Yanıt beklenmedik veya kesilmiş gibi görünüyorsa en fazla belirteç sayısını ayarlayabilirsiniz.
Azure OpenAI ayrıca istem girişlerinde ve oluşturulan çıkışlarda con çadır modu ration gerçekleştirir. Zararlı içerik algılanırsa istemler veya yanıtlar filtrelenebilir. Daha fazla bilgi için içerik filtresi makalesine bakın.
Kaynakları temizleme
Bir Azure OpenAI kaynağını temizlemek ve kaldırmak istiyorsanız, kaynağı veya kaynak grubunu silebilirsiniz. Kaynak grubunun silinmesi, kaynak grubuyla ilişkili diğer tüm kaynakları da siler.
Sonraki adımlar
- Tamamlamalarla ilgili nasıl yapılır kılavuzumuzda en iyi tamamlamanın nasıl oluşturulacağı hakkında daha fazla bilgi edinin.
- Daha fazla örnek için Azure OpenAI Örnekleri GitHub deposuna bakın.
Önkoşullar
Azure aboneliği - Ücretsiz bir abonelik oluşturun
İstenen Azure aboneliğinde Azure OpenAI'ye erişim izni verildi
Şu anda bu hizmete erişim yalnızca uygulama tarafından sağlanmaktadır. şu konumdaki formu https://aka.ms/oai/accesstamamlayarak Azure OpenAI hizmetine erişim için başvurabilirsiniz. Sorun yaşıyorsanız bizimle iletişime geçmek için bu depoda bir sorun açın.
Aşağıdaki Python kitaplıkları: işletim sistemi, istekler, json
Modeli dağıtılan bir Azure OpenAI kaynağı. Model dağıtımı hakkında daha fazla bilgi için bkz. kaynak dağıtım kılavuzu.
Ayarlama
Anahtarı ve uç noktayı alma
Azure OpenAI'ye karşı başarılı bir şekilde çağrı yapmak için aşağıdakilere ihtiyacınız vardır:
Değişken adı | Değer |
---|---|
ENDPOINT |
Bu değer, Azure portal kaynağınızı incelerken Anahtarlar ve Uç Nokta bölümünde bulunabilir. Alternatif olarak, değeri Azure OpenAI Studio>Playground>Code View'da bulabilirsiniz. Örnek uç nokta: https://docs-test-001.openai.azure.com/ . |
API-KEY |
Bu değer, Azure portal kaynağınızı incelerken Anahtarlar ve Uç Nokta bölümünde bulunabilir. KEY1 veya KEY2 kullanabilirsiniz. |
DEPLOYMENT-NAME |
Bu değer, bir modeli dağıtırken dağıtımınız için seçtiğiniz özel ada karşılık gelir. Bu değer, Azure portalda Kaynak Yönetimi>Dağıtımlar altında veya alternatif olarak Azure OpenAI Studio'da Yönetim>Dağıtımlar altında bulunabilir. |
Azure portalında kaynağınıza gidin. Uç Nokta ve Anahtarlar 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.
Anahtarınız ve uç noktanız için kalıcı ortam değişkenleri oluşturun ve atayın.
Ortam değişkenleri
Anahtarınız ve uç noktanız için kalıcı ortam değişkenleri oluşturun ve atayın.
setx AZURE_OPENAI_API_KEY "REPLACE_WITH_YOUR_KEY_VALUE_HERE"
setx AZURE_OPENAI_ENDPOINT "REPLACE_WITH_YOUR_ENDPOINT_HERE"
REST API
Bash kabuğunda aşağıdaki komutu çalıştırın. değerini modeli dağıtırken gpt-35-turbo-instruct
seçtiğiniz dağıtım adıyla değiştirmeniz gpt-35-turbo-instruct
gerekir. Temel alınan model adıyla aynı olan bir dağıtım adı seçmediğiniz sürece model adının girilmesi hataya neden olur.
curl $AZURE_OPENAI_ENDPOINT/openai/deployments/gpt-35-turbo-instruct/completions?api-version=2024-02-01 \
-H "Content-Type: application/json" \
-H "api-key: $AZURE_OPENAI_API_KEY" \
-d "{\"prompt\": \"Once upon a time\"}"
Örnek uç nokta içeren komutun ilk satırının biçimi aşağıdaki curl https://docs-test-001.openai.azure.com/openai/deployments/{YOUR-DEPLOYMENT_NAME_HERE}/completions?api-version=2024-02-01 \
gibi görünür. Hatayla karşılaşırsanız, uç noktanız ile /openai/deployments
arasındaki ayrım sırasında iki katına çıkarılmadığınızdan /
emin olmak için iki kez denetleyin.
Bu komutu normal bir Windows komut isteminde çalıştırmak istiyorsanız ve satır sonlarını kaldırmak \
için metni değiştirmeniz gerekir.
Önemli
Üretim için Azure Key Vault gibi kimlik bilgilerinizi depolamanın ve bunlara erişmenin güvenli bir yolunu kullanın. Kimlik bilgisi güvenliği hakkında daha fazla bilgi için Azure AI hizmetleri güvenlik makalesine bakın.
Çıktı
Tamamlamalar API'sinden elde edilecek çıkış aşağıdaki gibi görünür.
{
"id": "ID of your call",
"object": "text_completion",
"created": 1675444965,
"model": "gpt-35-turbo-instruct",
"choices": [
{
"text": " there lived in a little village a woman who was known as the meanest",
"index": 0,
"finish_reason": "length",
"logprobs": null
}
],
"usage": {
"completion_tokens": 16,
"prompt_tokens": 3,
"total_tokens": 19
}
}
Azure OpenAI Hizmeti, istem girişlerinde ve oluşturulan çıkışlarda da con çadır modu ration gerçekleştirir. Zararlı içerik algılanırsa istemler veya yanıtlar filtrelenebilir. Daha fazla bilgi için içerik filtresi makalesine bakın.
Kaynakları temizleme
Bir Azure OpenAI kaynağını temizlemek ve kaldırmak istiyorsanız, kaynağı veya kaynak grubunu silebilirsiniz. Kaynak grubunun silinmesi, kaynak grubuyla ilişkili diğer tüm kaynakları da siler.
Sonraki adımlar
- Tamamlamalarla ilgili nasıl yapılır kılavuzumuzda en iyi tamamlamanın nasıl oluşturulacağı hakkında daha fazla bilgi edinin.
- Daha fazla örnek için Azure OpenAI Örnekleri GitHub deposuna bakın.
Önkoşullar
- Azure aboneliği - Ücretsiz bir abonelik oluşturun
- İstenen Azure aboneliğinde Azure OpenAI'ye erişim verildi Şu anda bu hizmete erişim yalnızca uygulama tarafından verilir. adresinden formu https://aka.ms/oai/accesstamamlayarak Azure OpenAI'ye erişim için başvurabilirsiniz. Sorun yaşıyorsanız bizimle iletişime geçmek için bu depoda bir sorun açın.
- En son sürümü, PowerShell 7'yi veya Windows PowerShell 5.1'i kullanabilirsiniz.
- Modeli dağıtılan bir Azure OpenAI Hizmeti kaynağı. Model dağıtımı hakkında daha fazla bilgi için bkz. kaynak dağıtım kılavuzu.
Anahtarı ve uç noktayı alma
Azure OpenAI hizmetine karşı başarılı bir şekilde çağrı yapmak için aşağıdakilere ihtiyacınız vardır:
Değişken adı | Değer |
---|---|
ENDPOINT |
Bu değer, Azure portal kaynağınızı incelerken Anahtarlar ve Uç Nokta bölümünde bulunabilir. Alternatif olarak, değeri Azure OpenAI Studio>Playground>Code View'da bulabilirsiniz. Örnek uç nokta: https://docs-test-001.openai.azure.com/ . |
API-KEY |
Bu değer, Azure portal kaynağınızı incelerken Anahtarlar ve Uç Nokta bölümünde bulunabilir. KEY1 veya KEY2 kullanabilirsiniz. |
DEPLOYMENT-NAME |
Bu değer, bir modeli dağıtırken dağıtımınız için seçtiğiniz özel ada karşılık gelir. Bu değer, Azure portalda Kaynak Yönetimi>Dağıtımlar altında veya alternatif olarak Azure OpenAI Studio'da Yönetim>Dağıtımlar altında bulunabilir. |
Azure portalında kaynağınıza gidin. Uç Nokta ve Anahtarlar 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.
Anahtarınız ve uç noktanız için kalıcı ortam değişkenleri oluşturun ve atayın.
Ortam değişkenleri
$Env:AZURE_OPENAI_API_KEY = 'YOUR_KEY_VALUE'
$Env:AZURE_OPENAI_ENDPOINT = 'YOUR_ENDPOINT'
Yeni bir PowerShell betiği oluşturma
quickstart.ps1 adlı yeni bir PowerShell dosyası oluşturun. Ardından tercih ettiğiniz düzenleyicide veya IDE'de açın.
quickstart.ps1 dosyasının içeriğini aşağıdaki kodla değiştirin. Anahtarınızı, uç noktanızı ve dağıtım adınızı eklemek için kodu değiştirin:
# Azure OpenAI metadata variables $openai = @{ api_key = $Env:AZURE_OPENAI_API_KEY api_base = $Env:AZURE_OPENAI_ENDPOINT # your endpoint should look like the following https://YOUR_RESOURCE_NAME.openai.azure.com/ api_version = '2024-02-01' # this may change in the future name = 'YOUR-DEPLOYMENT-NAME-HERE' #This will correspond to the custom name you chose for your deployment when you deployed a model. } # Completion text $prompt = 'Once upon a time...' # Header for authentication $headers = [ordered]@{ 'api-key' = $openai.api_key } # Adjust these values to fine-tune completions $body = [ordered]@{ prompt = $prompt max_tokens = 10 temperature = 2 top_p = 0.5 } | ConvertTo-Json # Send a completion call to generate an answer $url = "$($openai.api_base)/openai/deployments/$($openai.name)/completions?api-version=$($openai.api_version)" $response = Invoke-RestMethod -Uri $url -Headers $headers -Body $body -Method Post -ContentType 'application/json' return "$prompt`n$($response.choices[0].text)"
Önemli
Üretim için Azure Key Vault ile PowerShell Gizli Dizi Yönetimi gibi kimlik bilgilerinizi depolamanın ve bunlara erişmenin güvenli bir yolunu kullanın. Kimlik bilgisi güvenliği hakkında daha fazla bilgi için Azure AI hizmetleri güvenlik makalesine bakın.
Betiği PowerShell kullanarak çalıştırın:
./quickstart.ps1
Çıktı
Çıktı, istemin Once upon a time
ardından yanıt metnini içerir. Bu örnekte Azure OpenAI döndürüldü There was a world beyond the mist...where a
.
Once upon a time...
There was a world beyond the mist...where a
Yanıtın her zaman aynı olmayacağından, diğer yanıt türlerini görmek için kodu birkaç kez daha çalıştırın.
Sonuçlarınızı anlama
Örneğimiz Once upon a time...
çok az bağlam sağladığından modelin her zaman beklenen sonuçları döndürmemesi normaldir. Yanıt beklenmedik veya kesilmiş gibi görünüyorsa en fazla belirteç sayısını ayarlayabilirsiniz.
Azure OpenAI ayrıca istem girişlerinde ve oluşturulan çıkışlarda con çadır modu ration gerçekleştirir. Zararlı içerik algılanırsa istemler veya yanıtlar filtrelenebilir. Daha fazla bilgi için içerik filtresi makalesine bakın.
Kaynakları temizleme
Bir Azure OpenAI kaynağını temizlemek ve kaldırmak istiyorsanız, kaynağı veya kaynak grubunu silebilirsiniz. Kaynak grubunun silinmesi, kaynak grubuyla ilişkili diğer tüm kaynakları da siler.
Sonraki adımlar
- Tamamlamalarla ilgili nasıl yapılır kılavuzumuzda en iyi tamamlamanın nasıl oluşturulacağı hakkında daha fazla bilgi edinin.
- Daha fazla örnek için Azure OpenAI Örnekleri GitHub deposuna bakın.