Metni analiz eden bir istemci uygulaması oluşturma
Tip
Daha fazla ayrıntı için Metin ve resimler sekmesine bakın!
İstemci uygulaması, bir hizmete veya modele bağlanan ve özelliklerini kullanan, yazdığınız bir programdır. Kodunuz hizmete istekler gönderir ve sonuçları otomatik olarak geri alır; bu da büyük hacimli metinleri işlemeyi veya yapay zeka analizini bir iş akışıyla tümleştirmeyi mümkün hale getirir.
Bir yapay zeka hizmetine bağlanmak için uygulamanız bir API (Uygulama Programlama Arabirimi) kullanır. API, iki yazılım parçasının nasıl iletişim kurduğunu tanımlayan bir kural kümesidir. İstemci kitaplığı, geliştiricilerin bir hizmet veya API ile kolayca iletişim kurmak için kendi uygulamalarında kullanabileceği hazır kod kümesidir. Uygulamalardaki temel malzemeleri gözden geçirebilir ve uç noktaları kullanabilirsiniz: Azure'da yapay zeka ile çalışmaya başlama.
Metin analizi için genel amaçlı yapay zeka modellerini kullanma
bir Microsoft Foundry kaynağıyla başlayın ve kaynağınızda bir Foundry projesi oluşturun. Yeni Foundry portalında model kataloğuna göz atabilir ve genel amaçlı bir model dağıtabilirsiniz.
Azure OpenAI API kullanarak Microsoft Döküm Modelleri ile etkileşim kuran bir istemci uygulaması oluşturabilirsiniz. OpenAI API'si, kodunuzun bir uç noktaya istekler göndererek dağıtılan bir modelle konuşmasına ve yetkiniz olduğunu kanıtlamak için bir API anahtarına olanak tanır.
Responses API, dil modelleriyle etkileşime Azure OpenAI içindeki modern, birleşik API'dir. Yalnızca metin oluşturma değil, tam yapay zeka etkileşimlerini işlemek için tasarlanmıştır.
Dağıtılan bir dil modeline doğal dil istemleri göndermek için yanıtlar API'sini kullanabilirsiniz. Sabit yapılandırılmış bir çıkış gerektirmeyen esnek, konuşma stili analize ihtiyacınız olduğunda kullanışlıdır.
OpenAI Python kitaplığını kullanma
OpenAI Python kitaplığı geliştiricilerin ham HTTP istekleri yerine kod aracılığıyla OpenAI modelleri ve hizmetleriyle etkileşim kuran Python uygulamalar oluşturmasına olanak tanıyan resmi bir Python yazılım geliştirme setidir (SDK).
OpenAI Python kitaplığını kullanmak için bir kod düzenleyicisinde çalışmanız gerekir. Uygulama kodu, Visual Studio Code gibi code editors dilinde yazılır. Kod düzenleyicisinin terminali , geliştirme ortamınızdan çıkmadan komutları çalıştırabileceğiniz, düzenleyicinin içindeki yerleşik bir komut satırı penceresidir.
1. Gerekli paketleri yükleyin
OpenAI Python kitaplığı Visual Studio Code terminal kullanılarak yüklenebilir:
pip install openai
2. Yapılandırma dosyası oluşturma
Ardından, uç noktanız, anahtarınız ve model dağıtım adınız gibi ortam değişkenlerinizi depolamak için bir yapılandırma dosyası (tür .env) oluşturabilirsiniz.
Aşağıdaki değişkenleri göz önünde bulundurun:
AZURE_OPENAI_ENDPOINT=https://<your-resource>.openai.azure.com/openai/v1/
MODEL_DEPLOYMENT_NAME=gpt-4.1-mini
API_KEY=<your-foundry-key>
Uç nokta değişkeninin Foundry kaynağınızın ve openai.azure.com/openai/v1adını nasıl içerdiğine dikkat edin. API anahtarınız, Dökümhane proje anahtarınızdır.
Model dağıtım adı, modeli dağıtırken verdiğiniz addır. Örneğin gpt-4.1 modelini dağıttığınızda gpt-demo-model olarak adlandırabilirsiniz. Dağıtım adı gpt-demo-model şeklindedir. Ancak, model adını özelleştirmezseniz dağıtım adı yukarıdaki kod parçacığında olduğu gibi model adıyla eşleşecektir.
3. Uygulama mantığınızı içeren bir dosya oluşturun
Aşağıdaki uygulama kodu örneğine göz atın:
import os
from dotenv import load_dotenv
from openai import OpenAI
# Load environment variables from .env file
load_dotenv()
endpoint = os.getenv("AZURE_OPENAI_ENDPOINT")
api_key = os.getenv("API_KEY")
deployment_name = os.getenv("MODEL_DEPLOYMENT_NAME")
# Create the client object
client = OpenAI(
base_url=endpoint,
api_key=api_key
)
# Make a request using the client
message = client.responses.create(
model=deployment_name,
input="",
)
# Print the results
print(f"Sentiment: {message.output[0]}")
Uyarı
Ortam değişkenlerini yükleme: Bu örnekte (dotenvload_dotenv()) dosyanızı .env okur ve bu değerleri uygulamanızın ortamına yükler. Paket os daha sonra os.getenv() gibi değerlerin her birini adına göre os.getenv("AZURE_OPENAI_ENDPOINT") alır.
içindeki .env her anahtar, kodunuzdaki adla tam olarak eşleşmelidir. Örneğin, dosyanız API_KEY kullanıyorsa, kodunuzun API_KEY isteğinde de bulunması gerekir. Çalışma zamanında eksik değerleri önlemek için değişken adlarını tutarlı tutun.
Kimliği doğrulanmış bir istemci nesnesi oluşturmak için Foundry kaynak uç noktamızı ve anahtarımızı kullanırız.
OpenAI sınıfı SDK tarafından tanımlanır ve OpenAI API'sine bağlanmak için bir şema işlevi görür. Python'daki kimliği doğrulanmış istemci nesnesi, kodunuz belirteçleri veya gizli dizileri el ile yönetmeden güvenli bir şekilde yetkili API çağrıları yapabilen hizmete özgü bir nesnedir.
Uyarı
Python'da class, hangi tür verileri barındırdığını ve hangi eylemleri gerçekleştirebileceğini tanımlayan bir şemadır.
Nesne, bu şemadan oluşturulan belirli bir örnektir. Örneğin, bir Car sınıfı her arabanın bir rengi olduğunu tanımlayabilir veya drive() olabilir stop(). Belirli bir araba (örneğin, kırmızı bir araba) oluşturduğunuzda bu bir nesnedir.
Uç noktanız ve anahtarınız ile yapılandırılmış bir istemci nesnesi oluşturduktan sonra modelle etkileşim kurmak için bu nesne üzerinde yöntemler çağırabilirsiniz. Örneğin, responses kullanarak belirli bir model dağıtımına istem gönderebilirsiniz.
komutuyla python <file_name>.pyterminalde uygulama kodunu çalıştırarak çözümlemenin sonuçlarını görüntüleyebiliriz.
OpenAI API'sinin kullanımı kolaydır, ancak model olası bir şekilde metin oluşturduğundan sonuçlar çağrılar arasında farklılık gösterebilir. Pratikte bu, aynı istemle yapılan iki çağrının biraz farklı ifade veya biçimlendirme döndürebileceği anlamına gelir. Uygulamanızın dil kodu, güvenilirlik puanı veya yeniden işlem uygulanmış metin gibi tutarlı, yapılandırılmış değerlere ihtiyacı olduğunda, Azure Dil SDK'sı daha iyi bir seçimdir.
Azure Dil SDK'sını kullanma
Azure Dil SDK'si, Foundry Tools Azure Dili için bir istemci kitaplığıdır. SDK, geliştiricilerin uygulamalarına dil algılama ve kişisel bilgileri (PII) yeniden oluşturma gibi NLP özelliklerini eklemesini kolaylaştırır.
Şimdi metni analiz eden bir uygulama oluşturmak için Azure Dil Python SDK'sını nasıl kullanabileceğinizi görelim. Azure Dil Python SDK'sını kullanmak için Foundry kaynağına sahip olmanız gerekir. Ardından Python ve Azure Dil Python SDK'sının uyumlu bir sürümünü yüklemeniz gerekir.
Python SDK'sı Visual Studio Code terminal kullanılarak yüklenebilir:
pip install azure-ai-textanalytics
Aşağıdaki yapılandırma dosyası örneğini göz önünde bulundurun:
AZURE_LANGUAGE_ENDPOINT=https://<your-resource>.cognitiveservices.azure.com/
API_KEY=<your-foundry-key>
Aşağıdaki uygulama kodu örneğini göz önünde bulundurun:
# Import packages
import os
from dotenv import load_dotenv
from azure.core.credentials import AzureKeyCredential
from azure.ai.textanalytics import TextAnalyticsClient
# Load environment variables from .env file
load_dotenv()
endpoint = os.getenv("AZURE_LANGUAGE_ENDPOINT")
key = os.getenv("API_KEY")
# Create the client
client = TextAnalyticsClient(endpoint=endpoint, credential=AzureKeyCredential(key))
# Make a request using the client for language detection
text = "¡Hola! Me llamo Josefina y vivo en Madrid, España."
result = client.detect_language([text])[0]
İstemcinin metotlarını, ve detect_language gibi recognize_pii_entities çağırmak için kullanırız.
Dil algılama: detect_language() Yöntem, metin dizelerinin listesini alır ve algılanan dili, ISO 639-1 kodunu ve 0 ile 1 arasında bir güvenilirlik puanını döndürür.
text = "¡Hola! Me llamo Josefina y vivo en Madrid, España."
result = client.detect_language([text])[0]
# Print the results
print(f"Language : {result.primary_language.name}")
print(f"ISO code : {result.primary_language.iso6391_name}")
print(f"Confidence : {result.primary_language.confidence_score:.2f}")
PII algılama: recognize_pii_entities() yöntem, metindeki kişisel ayrıntıları tanımlar ve hem metnin sansürlenmiş sürümünü hem de her varlığın kategorisi ve güven puanı dahil olmak üzere bulduğu varlıkların listesini döndürür.
text = "Maria Garcia called from 020 7946 0958 and asked to send documents to 42 Market Road, London, UK, SW1A 1AA."
result = client.recognize_pii_entities([text])[0]
# Print the results
print("Redacted text:", result.redacted_text)
print("\nEntities found:")
for entity in result.entities:
print(f" {entity.text} | category={entity.category} | confidence={entity.confidence_score}")
OpenAI API ve Azure Dil SDK'sı ile doğal dili işleyen ve metninizden içgörü oluşturan yapay zeka uygulamaları için kod yazabilirsiniz.
Şimdi yapay zeka aracılarına Azure Dil özelliklerini eklemeyi inceleyelim.