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.
Azure OpenAI Service konuşma, içerik oluşturma ve veri temellendirme kullanım örnekleri için gelişmiş yapay zeka modellerine erişim sağlar. TypeScript için Azure OpenAI kitaplığı, JavaScriptiçin resmi
@azure/openai sürüm 1 danışmanlığından geçiş⚠️
Uygulama kodunuzu Azure OpenAI istemci kitaplığının 1.x sürümünden kitaplığına güncelleştirme hakkında ayrıntılı yönergeler için openai göz atın.
Önemli bağlantılar:
Başlarken
Şu anda desteklenen ortamlar
- Node.js
LTS sürümleri - Safari, Chrome, Edge ve Firefox'un en son sürümleri.
Önkoşullar
Azure OpenAI kaynağı kullanmak istiyorsanız
Hem openai hem de @azure/openai yükleme
npmile Azure OpenAI istemci kitaplığını ve JavaScript için OpenAI kitaplığını yükleyin:
npm install openai @azure/openai
AzureOpenAI oluşturma ve kimlik doğrulaması
Azure OpenAI hizmetiyle kimlik doğrulaması yapmanın birkaç yolu vardır ve önerilen yol, Azure Kimlik kitaplığıaracılığıyla güvenli ve anahtarsız kimlik doğrulaması için Microsoft Entra Id kullanmaktır. Başlamak için:
Azure Identity paketiniyükleyin:
npm install @azure/identityİstenen kimlik bilgisi türüne sahip
getBearerTokenProviderçağırarak bir belirteç sağlayıcısı oluşturun. Örneğin, DefaultAzureCredential: import { DefaultAzureCredential, getBearerTokenProvider } from "@azure/identity"; const credential = new DefaultAzureCredential(); const scope = "https://cognitiveservices.azure.com/.default"; const azureADTokenProvider = getBearerTokenProvider(credential, scope);Belirteç sağlayıcısını geçirerek istemciyi oluşturun:
import { AzureOpenAI } from "openai"; const deployment = "Your deployment name"; const apiVersion = "2024-10-21"; const client = new AzureOpenAI({ azureADTokenProvider, deployment, apiVersion });
Azure OpenAI Hizmetini Microsoft Entra Id kimlik doğrulamasıyla yapılandırma
Temel kavramlar
Asistan
bkz. OpenAI Yardımcıları API'lerine genel bakış.
Ses transkripsiyonu/çevirisi ve metin okuma oluşturma
Bkz. OpenAI Özellikleri: Konuşmayı metne dönüştürme.
Toplu iş
OpenAI'nin Batch API kılavuzu
Sohbet tamamlama
Sohbet modelleri, girdi olarak iletilerin listesini alır ve model tarafından oluşturulan bir iletiyi çıkış olarak döndürür. Sohbet biçimi çok aşamalı konuşmaları kolaylaştıracak şekilde tasarlanmış olsa da, konuşma yapmadan tek seferlik görevler için de kullanışlıdır.
Bkz. OpenAI Özellikleri: Sohbet tamamlama.
Görüntü oluşturma
Bkz. OpenAI Özellikleri: Görüntü oluşturma.
Dosyaları
OpenAI'nin Dosyalar API başvurusu
Metin eklemeler
Bkz. OpenAI Özellikleri: Eklemeler.
Örnekler
Bu bölümde, Azure OpenAI Hizmeti'nin özelliklerini kullanma örnekleri sağlanır. Ek örnekler için
İş Verilerini Analiz Etme
Bu TypeScript örneği, iş verilerinizle ilgili sohbet sorularına giriş yapmak için sohbet yanıtları oluşturur. İş verileri bir Azure Bilişsel Arama dizini aracılığıyla sağlanır. Azure Bilişsel Arama dizinini veri kaynağı olarak ayarlama hakkında daha fazla bilgi edinmek için bkz. Hızlı Başlangıç: Kendi verilerinizi kullanarak Azure OpenAI modelleriyle sohbet etme.
import { AzureOpenAI } from "openai";
import { DefaultAzureCredential, getBearerTokenProvider } from "@azure/identity";
import "@azure/openai/types";
// Set AZURE_OPENAI_ENDPOINT to the endpoint of your
// Azure OpenAI resource. You can find this in the Azure portal.
import "dotenv/config";
// Your Azure Cognitive Search endpoint, and index name
const azureSearchEndpoint = process.env["AZURE_SEARCH_ENDPOINT"] || "<search endpoint>";
const azureSearchIndexName = process.env["AZURE_SEARCH_INDEX"] || "<search index>";
export async function main() {
console.log("== Azure On Your Data Sample ==");
const scope = "https://cognitiveservices.azure.com/.default";
const azureADTokenProvider = getBearerTokenProvider(new DefaultAzureCredential(), scope);
const deployment = "gpt-4-1106-preview";
const apiVersion = "2024-10-21";
const client = new AzureOpenAI({ azureADTokenProvider, deployment, apiVersion });
const events = await client.chat.completions.create({
stream: true,
messages: [
{
role: "user",
content:
"What's the most common feedback we received from our customers about the product?",
},
],
max_tokens: 128,
model: "",
data_sources: [
{
type: "azure_search",
parameters: {
endpoint: azureSearchEndpoint,
index_name: azureSearchIndexName,
authentication: {
type: "system_assigned_managed_identity",
},
},
},
],
});
for await (const event of events) {
for (const choice of event.choices) {
console.log(choice.delta?.content);
}
}
}
main();
İçerik filtreli Sohbet Tamamlamaları
Azure OpenAI Hizmeti, çekirdek modellerde birlikte çalışan bir içerik filtreleme sistemi içerir. Bu sistem, hem giriş istemlerinde hem de çıkış tamamlamalarında zararlı olabilecek içeriğin belirli kategorilerini algılar ve üzerinde işlem gerçekleştirir. Bu örnekte bu içerik filtreleme sonuçlarına nasıl erişilmesi gösterilmektedir.
import { AzureOpenAI } from "openai";
import { DefaultAzureCredential, getBearerTokenProvider } from "@azure/identity";
import "@azure/openai/types";
// Set AZURE_OPENAI_ENDPOINT to the endpoint of your
// OpenAI resource. You can find this in the Azure portal.
import "dotenv/config";
async function main() {
console.log("== Streaming Chat Completions Sample ==");
const scope = "https://cognitiveservices.azure.com/.default";
const azureADTokenProvider = getBearerTokenProvider(new DefaultAzureCredential(), scope);
const deployment = "gpt-35-turbo";
const apiVersion = "2024-10-21";
const client = new AzureOpenAI({ azureADTokenProvider, deployment, apiVersion });
const events = await client.chat.completions.create({
messages: [
{ role: "system", content: "You are a helpful assistant. You will talk like a pirate." },
{ role: "user", content: "Can you help me?" },
{ role: "assistant", content: "Arrrr! Of course, me hearty! What can I do for ye?" },
{ role: "user", content: "What's the best way to train a parrot?" },
],
model: "",
max_tokens: 128,
stream: true,
});
for await (const event of events) {
for (const choice of event.choices) {
console.log(`Chunk: ${choice.delta?.content}`);
const filterResults = choice.content_filter_results;
if (!filterResults) {
continue;
}
if (filterResults.error) {
console.log(
`\tContent filter ran into an error ${filterResults.error.code}: ${filterResults.error.message}`,
);
} else {
const { hate, sexual, selfHarm, violence } = filterResults;
console.log(
`\tHate category is filtered: ${hate?.filtered}, with ${hate?.severity} severity`,
);
console.log(
`\tSexual category is filtered: ${sexual?.filtered}, with ${sexual?.severity} severity`,
);
console.log(
`\tSelf-harm category is filtered: ${selfHarm?.filtered}, with ${selfHarm?.severity} severity`,
);
console.log(
`\tViolence category is filtered: ${violence?.filtered}, with ${violence?.severity} severity`,
);
}
}
}
}
main();
Sonraki adımlar
Sorun giderme
JavaScriptiçin resmi
Katkıda
Bu kitaplığı oluşturma, test etme ve bu kitaplığa katkıda bulunma hakkında ayrıntılı bilgi için OpenAI CONTRIBUTING.md bakın.
Bu proje katkıları ve önerileri memnuniyetle karşılar. Çoğu katkı, Katkıda Bulunan Lisans Sözleşmesi'ni (CLA) kabul ederek bize katkınızı kullanma hakları verme hakkına sahip olduğunuzu bildirmenizi gerektirir. Ayrıntılar için cla.microsoft.comadresini ziyaret edin.
Çekme isteği gönderdiğinizde, CLA botu otomatik olarak CLA sağlamanız gerekip gerekmediğini belirler ve çekme isteğini uygun şekilde süsler (örneğin, etiket, açıklama). Bot tarafından sağlanan yönergeleri izlemeniz yeterlidir. Cla'mızı kullanarak bunu tüm depolarda yalnızca bir kez yapmanız gerekir.
Bu proje, Microsoft Açık Kaynak Kullanım Kurallarıbenimsemiştir. Daha fazla bilgi için bkz. Davranış Kuralları SSS veya ek sorularınız veya yorumlarınızla opencode@microsoft.com iletişim kurun.
Azure SDK for JavaScript