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 Doğal Dil İşleme (NLP) ve tamamlama özelliklerinin tümleştirilmesi, kullanıcı üretkenliğini artırmak için önemli bir potansiyel sunar. Yapay zeka yardımcısı, uygun istemlerden ve kurallardan yararlanarak e-posta iletileri, SMS mesajları ve daha fazlası gibi çeşitli iletişim biçimlerini verimli bir şekilde oluşturabilir. Bu işlevsellik, kullanıcı verimliliğinin artmasına ve kolaylaştırılmış iş akışlarına yol açar.
Bu özellik kendi başına oldukça güçlü olsa da, kullanıcıların şirketinizin özel verilerine göre tamamlamalar oluşturması gereken durumlar olabilir. Örneğin, kullanıcıların müşterilere yükleme sorunları konusunda yardımcı olurken gezinmesi zor olabilecek bir ürün kılavuzları koleksiyonunuz olabilir. Alternatif olarak, kullanıcıların okuması ve ihtiyaç duydukları yanıtları alması zor olabilecek sağlık hizmetleri avantajlarıyla ilgili kapsamlı bir Dizi Sık Sorulan Soru (SSS) tutabilirsiniz. Bu gibi durumlarda ve diğer birçok durumda Azure OpenAI Hizmeti, tamamlamalar oluşturmak için kendi verilerinizden yararlanmanıza olanak tanır ve kullanıcı sorularına daha uyarlanmış ve bağlamsal olarak doğru bir yanıt sağlar.
Azure OpenAI belgelerinden "kendi verilerinizi getirin" özelliğinin nasıl çalıştığına hızlı bir genel bakış aşağıda verilmiştir.
Uyarı
Azure OpenAI'nin verilerinizdeki temel özelliklerinden biri, verileri modelin çıkışını geliştirecek şekilde alıp kullanabilmesidir. Verilerinizde Azure OpenAI, Azure AI Search ile birlikte kullanıcı girişine ve sağlanan konuşma geçmişine göre belirlenen veri kaynağından hangi verilerin alındığını belirler. Bu veriler daha sonra genişletilir ve openAI modeline bir istem olarak yeniden gönderilir ve alınan bilgiler özgün isteme eklenir. Alınan veriler isteme eklense de, sonuçta elde edilen giriş diğer tüm istemler gibi model tarafından yine de işlenir. Veriler alındıktan ve istem modele gönderildikten sonra model, tamamlanma sağlamak için bu bilgileri kullanır.
Bu alıştırmada şunları yapacaksınız:
- Azure AI Foundry portalını kullanarak özel bir veri kaynağı oluşturun.
- Azure AI Foundry portalını kullanarak bir ekleme modeli dağıtın.
- Özel belgeleri karşıya yükleyin.
- Kendi verilerinize göre tamamlamalar oluşturma denemeleri yapmak için Sohbet oyun alanında bir sohbet oturumu başlatın.
- Kendi verilerinize dayalı tamamlamalar oluşturmak için Azure AI Search ve Azure OpenAI kullanan kodu keşfedin.
Azure AI Foundry'de ekleme modeli dağıtarak ve özel veri kaynağı ekleyerek başlayalım.
Azure AI Foundry'ye Özel Veri Kaynağı Ekleme
Azure OpenAI Studio'ya gidin ve Azure OpenAI kaynağınıza erişimi olan kimlik bilgileriyle oturum açın.
Gezinti menüsünden Dağıtımlar'ı seçin.
Araç çubuğunda Modeli dağıt -->Temel modeli dağıt'ı seçin.
Model listesinden text-embedding-ada-002 modelini seçin ve Onayla'yı seçin.
Aşağıdaki seçenekleri belirleyin:
- Dağıtım adı: text-embedding-ada-002
- Model sürümü: Varsayılan
- Dağıtım türü: Standart
- Dakika Başına BelirteçLer Hız Sınırı (binler) değerini 120K olarak ayarlayın
- İçerik Filtresi: DefaultV2
- Dinamik teklifi etkinleştir: Etkin
Dağıt düğmesini seçin.
Model oluşturulduktan sonra, hoş geldiniz ekranına gitmek için gezinti menüsünden Giriş'i seçin.
Hoş geldiniz ekranında Kendi verilerinizi getirin kutucuğunu bulun ve Şimdi deneyin'i seçin.
Verilerinizi ekle'yi ve ardından Veri kaynağı ekle'yi seçin.
Veri kaynağı seçin açılan listesinde Dosyaları karşıya yükle'yi seçin.
Azure Blob depolama kaynağını seçin açılan listesinde Yeni Bir Azure Blob depolama kaynağı oluştur'u seçin.
Abonelik açılan listesinden Azure aboneliğinizi seçin.
Azure Blob depolama kaynağını seçin açılan listesinde Yeni Bir Azure Blob depolama kaynağı oluştur'u seçin.
Bu sizi aşağıdaki görevleri gerçekleştirebileceğiniz Azure portalına götürür:
- Depolama hesabı için byodstorage[Soyadınız] gibi benzersiz bir ad girin.
- Konumunuza yakın bir bölge seçin.
- Gözden Geçir'i ve ardından Oluştur'u seçin.
Blob depolama kaynağı oluşturulduktan sonra Azure AI Foundry iletişim kutusuna dönün ve Azure Blob depolama kaynağını seçin açılan
yeni oluşturulan blob depolama kaynağınızı seçin. Listede görmüyorsanız açılan listenin yanındaki yenile simgesini seçin. Depolama hesabınıza erişilebilmesi için çıkış noktaları arası kaynak paylaşımının (CORS) açılması gerekir. Azure AI Foundry iletişim kutusunda CORS'yi aç'ı seçin.
Azure AI Search kaynağını seçin açılan listesinde Yeni Azure AI Search kaynağı oluştur'u seçin.
Bu sizi azure portalına geri götürür ve burada aşağıdaki görevleri gerçekleştirebilirsiniz:
- AI Arama kaynağı için byodsearch-[Soyadınız] gibi benzersiz bir ad girin.
- Konumunuza yakın bir bölge seçin.
- Fiyatlandırma katmanı bölümünde Fiyatlandırma KatmanınıDeğiştir'i ve ardından Temel'i ve ardından Seç'i seçin. Ücretsiz katman desteklenmez, bu nedenle bu öğreticinin sonunda Yapay Zeka Arama kaynağını temizleyeceksiniz.
- Gözden Geçir'i ve ardından Oluştur'u seçin.
AI Search kaynağı oluşturulduktan sonra kaynağa Genel Bakış sayfasına gidin ve Url değerini yerel bir dosyaya kopyalayın.
Gezinti menüsünde Ayarlar -->Tuşlar'ı seçin.
API Erişimi denetim sayfasında, Hizmetin Yönetilen Kimlik kullanılarak veya anahtar kullanılarak erişilebilmesini sağlamak için Her İkisi'ni seçin. İstendiğinde Evet'i seçin.
Uyarı
Rol atamaları eklemek 10 dakikaya kadar sürebileceğinden bu alıştırmada api anahtarı kullanacağız, ancak biraz daha fazla çabayla sistem tarafından atanan yönetilen kimliğin hizmete daha güvenli bir şekilde erişmesini sağlayabilirsiniz.
Sol gezinti menüsünde Anahtarlar'ı seçin ve Birincil yönetici anahtarı değerini yerel bir dosyaya kopyalayın. Alıştırmanın ilerleyen bölümlerinde URL ve anahtar değerlerine ihtiyacınız olacaktır.
Gezinti menüsünde Ayarlar -->Anlam dereceleyicisi'ni seçin ve Ücretsiz seçeneğinin belirlendiğinden emin olun.
Uyarı
Semantik dereceleyicinin belirli bir bölgede kullanılabilir olup olmadığını denetlemek için, bölgenizin listelenip listelenmediğini görmek için Azure web sitesindeki Bölgeye Göre Kullanılabilir Ürünler sayfasını denetleyin .
Azure AI Foundry
Veri Ekle iletişim kutusuna geri dönün ve Azure AI Arama kaynağını seçin açılanyeni oluşturduğunuz arama kaynağını seçin. Listede görmüyorsanız açılan listenin yanındaki yenile simgesini seçin. Dizin adını girin değeri için byod-search-index değerini girin.
Bu arama kaynağına vektör araması ekle onay kutusunu seçin.
Ekleme modeli seçin açılan listesinde, daha önce oluşturduğunuz text-embedding-ada-002 modelini seçin.
Dosyaları karşıya yükle iletişim kutusunda Dosyaya gözat'ı seçin.
Projenin müşteri belgeleri klasörüne gidin (projenin kökünde bulunur) ve aşağıdaki dosyaları seçin:
- Saat A102 Yükleme Instructions.docx
- Şirket FAQs.docx
Uyarı
Bu özellik şu anda yerel dizin oluşturma için şu dosya biçimlerini destekler: .txt, .md, .html, .pdf, .docx ve .pptx.
Dosyaları karşıya yükle'yi seçin. Dosyalar, daha önce oluşturduğunuz blob depolama kaynağında fileupload-byod-search-index kapsayıcısına yüklenir.
Veri yönetimi iletişim kutusuna gitmek için İleri'yi seçin.
Arama türü açılan listesinde Karma + semantik'i seçin.
Uyarı
Bu seçenek anahtar sözcük ve vektör araması için destek sağlar. Sonuçlar döndürüldükten sonra, derin öğrenme modelleri kullanılarak sonuç kümesine ikincil bir derecelendirme işlemi uygulanır ve bu da kullanıcının arama ilgi düzeyini artırır. Anlamsal arama hakkında daha fazla bilgi edinmek için Azure AI Search'te anlam arama belgelerini görüntüleyin.
Boyut seçin değerinin 1024 olarak ayarlandığından emin olun.
sonrakiseçin.
Azure kaynak kimlik doğrulaması türü için API anahtarı'nı seçin. Azure AI Search kimlik doğrulaması belgelerinde doğru kimlik doğrulama türünü seçme hakkında daha fazla bilgi edinin.
sonrakiseçin.
Ayrıntıları gözden geçirin ve Kaydet ve kapat'ı seçin.
Özel verileriniz karşıya yüklendikten sonra veriler dizine alınacaktır ve Sohbet oyun alanında kullanılabilecek. Bu süreç birkaç dakika sürebilir. İşlem tamamlandıktan sonra sonraki bölüme geçin.
Sohbet Oyun Alanında Özel Veri Kaynağınızı Kullanma
Azure OpenAI Studio'da sayfanın Sohbet oturumu bölümünü bulun ve aşağıdaki Kullanıcı sorgusunu girin:
What safety rules are required to install a clock?Kullanıcı sorgusunu gönderdikten sonra aşağıdakine benzer bir sonuç görmeniz gerekir:
Sohbet yanıtında 1 başvurular bölümünü genişletin ve Saat A102 Yükleme Instructions.docx dosyasının listelendiğine ve belgeyi görüntülemek için seçebileceğinize dikkat edin.
Aşağıdaki Kullanıcı iletisini girin:
What should I do to mount the clock on the wall?Aşağıdakine benzer bir sonucun görüntülendiğini görmeniz gerekir:
Şimdi Şirket SSS belgesiyle denemeler yapalım. Kullanıcı sorgusu alanına aşağıdaki metni girin:
What is the company's policy on vacation time?Bu istek için hiçbir bilgi bulunamadığını görmeniz gerekir.
Kullanıcı sorgusu alanına aşağıdaki metni girin:
How should I handle refund requests?Aşağıdakine benzer bir sonucun görüntülendiğini görmeniz gerekir:
Sohbet yanıtında 1 başvuru bölümünü genişletin ve Şirket FAQs.docx dosyasının listelendiğine ve belgeyi görüntülemek için seçebileceğinize dikkat edin.
Sohbet oyun alanının araç çubuğunda Kodu görüntüle'yi seçin.
Farklı diller arasında geçiş yapabileceğinizi, uç noktayı görüntüleyebileceğinizi ve uç noktanın anahtarına erişebileceğinizi unutmayın. Örnek Kod iletişim kutusunu kapatın.
Sohbet iletilerinin üzerinde Ham JSON göster iki durumlu düğmesini açın. Sohbet oturumunun aşağıdakine benzer bir iletiyle başladığına dikkat edin:
{ "role": "system", "content": "You are an AI assistant that helps people find information." }Özel bir veri kaynağı oluşturduğunuza ve sohbet oyun alanında bu kaynakla denemeler yaptığınıza göre projenin uygulamasında nasıl kullanabileceğinizi görelim.
Uygulamada Kendi Verilerinizi Getir Özelliğini Kullanma
VS Code'da projeye geri dönün ve .env dosyasını açın. Aşağıdaki değerleri AI Services uç noktanız, anahtarınız ve dizin adınızla güncelleştirin. Bu alıştırmanın önceki bölümlerinde uç noktayı ve anahtarı yerel bir dosyaya kopyalamıştınız.
AZURE_AI_SEARCH_ENDPOINT=<AI_SERVICES_ENDPOINT_VALUE> AZURE_AI_SEARCH_KEY=<AI_SERVICES_KEY_VALUE> AZURE_AI_SEARCH_INDEX=byod-search-indexÖnceki bir alıştırmada veritabanını, API'leri ve uygulamayı başlattınız. Dosyayı da güncelleştirmişsiniz
.env. Bu adımları tamamlamadıysanız devam etmeden önce önceki alıştırmanın sonundaki yönergeleri izleyin.Uygulama tarayıcıya yüklendikten sonra uygulamanın sağ üst kısmındaki Sohbet Yardımı simgesini seçin.
Sohbet iletişim kutusunda aşağıdaki metin görünmelidir:
How should I handle a company refund request?Yardım Al düğmesini seçin. Daha önce Azure OpenAI Studio'da karşıya yüklediğiniz Şirket FAQs.docx belgesinden döndürülen sonuçları görmeniz gerekir. Belgeyi okumak isterseniz, belgeyi projenin kökündeki müşteri belgeleri klasöründe bulabilirsiniz.
Metni aşağıdaki şekilde değiştirin ve Yardım Al düğmesini seçin:
What safety rules are required to install a clock?Daha önce Azure OpenAI Studio'da karşıya yüklediğiniz Saat A102 Yükleme Instructions.docx belgesinden döndürülen sonuçları görmeniz gerekir. Bu belge, projenin kökündeki müşteri belgeleri klasöründe de kullanılabilir.
Kodu Keşfetme
İpucu
Visual Studio Code kullanıyorsanız, şunları seçerek dosyaları doğrudan açabilirsiniz:
- Windows/Linux: Ctrl + P
- Mac: Cmd + P
Ardından açmak istediğiniz dosyanın adını yazın.
Visual Studio Code'da proje kaynak koduna geri dönün.
Sunucu/apiRoutes.ts dosyasını açın ve yolu bulun
completeBYOD. Bu API, Sohbet Yardımı iletişim kutusunda Yardım Al düğmesi seçildiğinde çağrılır. İstek gövdesinden kullanıcı istemini alır ve sunucu/openAI.tscompleteBYOD()işleve geçirir. Sonuçlar daha sonra istemciye döndürülür.router.post('/completeBYOD', async (req, res) => { const { prompt } = req.body; if (!prompt) { return res.status(400).json({ status: false, error: 'The prompt parameter must be provided.' }); } let result; try { // Call OpenAI to get custom "bring your own data" completion result = await completeBYOD(prompt); } catch (e: unknown) { console.error('Error parsing JSON:', e); } res.json(result); });sunucu/openAI.ts dosyasını açın ve işlevi bulun
completeBYOD().async function completeBYOD(userPrompt: string): Promise<string> { const systemPrompt = 'You are an AI assistant that helps people find information in documents.'; return await callOpenAI(systemPrompt, userPrompt, 0, true); }Bu işlev aşağıdaki özelliklere sahiptir:
- parametresi,
userPromptkullanıcının sohbet yardımı iletişim kutusuna yazdığı bilgileri içerir. -
systemPromptdeğişkeni, kişilerin bilgi bulmasına yardımcı olmak için tasarlanmış bir yapay zeka yardımcısının kullanılacağını tanımlar. -
callOpenAI(), Azure OpenAI API'sini çağırmak ve sonuçları döndürmek için kullanılır. ve değerlerininsystemPromptuserPromptyanı sıra aşağıdaki parametreleri geçirir:-
temperature- Yanıta eklenecek yaratıcılık miktarı. Kullanıcının bu durumda tutarlı (daha az yaratıcı) yanıtlara ihtiyacı vardır, bu nedenle değer 0 olarak ayarlanır. -
useBYOD- Azure OpenAI ile birlikte Yapay Zeka Arama'nın kullanılıp kullanılmayacağını gösteren boole değeri. Bu durumda yapay zeka arama işlevi kullanılacak şekilde ayarlanmıştırtrue.
-
- parametresi,
İşlev,
callOpenAI()çağrılacak OpenAI işlevini belirlemek için kullanılan biruseBYODparametreyi kabul eder. Bu durumda işlevinuseBYODçağrılması içintrueolarak ayarlargetAzureOpenAIBYODCompletion().function callOpenAI(systemPrompt: string, userPrompt: string, temperature = 0, useBYOD = false) { const isAzureOpenAI = OPENAI_API_KEY && OPENAI_ENDPOINT && OPENAI_MODEL; if (isAzureOpenAI) { if (useBYOD) { return getAzureOpenAIBYODCompletion(systemPrompt, userPrompt, temperature); } return getAzureOpenAICompletion(systemPrompt, userPrompt, temperature); } return getOpenAICompletion(systemPrompt, userPrompt, temperature); }getAzureOpenAIBYODCompletion()sunucu/openAI.ts işlevini bulun. Daha önce incelediğiniz işlevegetAzureOpenAICompletion()oldukça benzer, ancak Azure OpenAI'de bulunan "Verilerinizde Azure OpenAI" senaryosuna özgü birkaç önemli farkı vurgulamak için ayrı bir işlev olarak gösterilir.async function getAzureOpenAIBYODCompletion(systemPrompt: string, userPrompt: string, temperature: number): Promise<string> { const dataSources = [ { type: 'azure_search', parameters: { authentication: { type: 'api_key', key: AZURE_AI_SEARCH_KEY }, endpoint: AZURE_AI_SEARCH_ENDPOINT, index_name: AZURE_AI_SEARCH_INDEX } } ]; const completion = await createAzureOpenAICompletion(systemPrompt, userPrompt, temperature, dataSources) as AzureOpenAIYourDataResponse; console.log('Azure OpenAI Add Your Own Data Output: \n', completion.choices[0]?.message); for (let citation of completion.choices[0]?.message?.context?.citations ?? []) { console.log('Citation Path:', citation.filepath); } return completion.choices[0]?.message?.content?.trim() ?? ''; }İşlevde aşağıdaki işlevlere
getAzureOpenAIBYODCompletion()dikkat edin:-
dataSourcesBu alıştırmanın önceki bölümlerinde dosyayakeyeklenen AI Search kaynağınınendpoint,index_nameve.envdeğerlerini içeren bir özellik oluşturulur -
createAzureOpenAICompletion()işlevi , ,systemPromptuserPromptvetemperaturedeğerleriyledataSourcesçağrılır. Bu işlev, Azure OpenAI API'sini çağırmak ve sonuçları döndürmek için kullanılır. - Yanıt döndürüldükten sonra, belge alıntıları konsola kaydedilir. Tamamlanma iletisi içeriği daha sonra çağırana döndürülür.
-
Sonraki alıştırmaya geçmeden önce göz önünde bulundurmanız gereken birkaç son nokta:
- Örnek uygulama, Azure AI Search'te tek bir dizin kullanır. Azure OpenAI ile birden çok dizin ve veri kaynağı kullanabilirsiniz.
dataSourcesİşlevdekigetAzureOpenAIBYODCompletion()özelliği, gerektiğinde birden çok veri kaynağı içerecek şekilde güncelleştirilebilir. - Güvenlik, bu tür senaryolarla dikkatle değerlendirilmelidir. Kullanıcılar soru sormamalı ve erişemedikleri belgelerden sonuç alamamalıdır.
- Örnek uygulama, Azure AI Search'te tek bir dizin kullanır. Azure OpenAI ile birden çok dizin ve veri kaynağı kullanabilirsiniz.
Azure OpenAI hakkında bilgi edindiğinize, istemleri, tamamlamaları ve kendi verilerinizi nasıl kullanabileceğinizi öğrendiğinize göre, uygulamayı geliştirmek için iletişim özelliklerinin nasıl kullanılabileceğini öğrenmek için bir sonraki alıştırmaya gidelim. Azure OpenAI hakkında daha fazla bilgi edinmek isterseniz Azure OpenAI Hizmeti ile çalışmaya başlama eğitim içeriğini görüntüleyin. Azure OpenAI ile kendi verilerinizi kullanma hakkında ek bilgileri , veri belgelerinizdeki Azure OpenAI'de bulabilirsiniz.