Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
Csak a következőkre vonatkozik:Öntödei (klasszikus) portál. Ez a cikk nem érhető el az új Foundry portálon.
További információ az új portálról.
Megjegyzés
A cikkben szereplő hivatkozások megnyithatják a tartalmat az új Microsoft Foundry-dokumentációban a most megtekintett Foundry (klasszikus) dokumentáció helyett.
Ebből a cikkből megtudhatja, hogyan használhatja a Szemantikus kernel-t a Microsoft Foundry portál Öntödei modellkatalógusából üzembe helyezett modellekkel.
Fontos
Azure AI Inference béta SDK 2026. augusztus 26-án megszűnt. Váltson az általánosan elérhető OpenAI/v1 API-ra stabil OpenAI SDK-val. A migrálási útmutatót követve váltson OpenAI/v1 verzióra az előnyben részesített programozási nyelv SDK-jával.
Előfeltételek
-
Aktív előfizetéssel rendelkező Azure fiók. Ha nem rendelkezik ilyen fiókkal, hozzon létre egy free Azure fiókot, amely ingyenes próbaverziós előfizetést tartalmaz.
A Foundry-projekt a Create a project in Foundry portalon leírtak szerint.
Üzembe helyezett modell, amely támogatja a Azure AI Model Inference API. Ez a cikk
Mistral-Largeüzembe helyezést alkalmaz. Bármilyen modellt használhat. A LlamaIndex beágyazási képességeinek használatához olyan beágyazási modellre van szükség, mint acohere-embed-v3-multilingual.- Kövesse a modellek kiszolgáló nélküli API-telepítésként való üzembe helyezésére vonatkozó utasításokat.
Python 3.10 vagy újabb telepítése, beleértve a pipet is.
Szemantikus kernel telepítve. A következő parancsot használhatja:
pip install semantic-kernelEz a cikk a Model Inference API-t használja, ezért telepítse a vonatkozó Azure függőségeket. A következő parancsot használhatja:
pip install semantic-kernel[azure]
A környezet konfigurálása
Az Foundry portálon üzembe helyezett nyelvi modellek használatához a végpontra és a hitelesítő adatokra van szüksége a projekthez való csatlakozáshoz. Kövesse az alábbi lépéseket a modellből szükséges információk lekéréséhez:
Tipp
Mivel a bal oldali ablaktáblát testre szabhatja a Microsoft Foundry portálon, az alábbi lépéseknél eltérő elemeket láthat. Ha nem látja, hogy mit keres, válassza a ... Továbbiak a bal oldali panel alján.
Jelentkezzen be Microsoft Foundry.
Nyissa meg azt a projektet, amelyben a modell telepítve van, ha még nincs megnyitva.
Lépjen a Modellek + végpontok elemre, és válassza ki az előfeltételekben megadott modellt.
Másolja ki a végpont URL-címét és a kulcsot.
Tipp
Ha Microsoft Entra ID támogatással telepítette a modellt, nincs szüksége kulcsra.
Ez a példa környezeti változókat használ mind a végpont URL-címéhez, mind a kulcshoz:
export AZURE_AI_INFERENCE_ENDPOINT="<your-model-endpoint-goes-here>"
export AZURE_AI_INFERENCE_API_KEY="<your-key-goes-here>"
A végpont és a kulcs konfigurálása után hozzon létre egy ügyfelet a végponthoz való csatlakozáshoz:
from semantic_kernel.connectors.ai.azure_ai_inference import AzureAIInferenceChatCompletion
chat_completion_service = AzureAIInferenceChatCompletion(ai_model_id="<deployment-name>")
Tipp
A kliens automatikusan felolvassa a környezeti változókat AZURE_AI_INFERENCE_ENDPOINT és AZURE_AI_INFERENCE_API_KEY a modellhez való csatlakozáshoz. Ehelyett közvetlenül az ügyfélnek adhatja át a végpontot és a kulcsot a endpoint konstruktoron lévő paraméterek és api_key paraméterek használatával.
Amennyiben a végpont támogatja a Microsoft Entra ID-t, az alábbi kóddal hozhatja létre a klienst:
export AZURE_AI_INFERENCE_ENDPOINT="<your-model-endpoint-goes-here>"
from semantic_kernel.connectors.ai.azure_ai_inference import AzureAIInferenceChatCompletion
chat_completion_service = AzureAIInferenceChatCompletion(ai_model_id="<deployment-name>")
Megjegyzés
Ha Microsoft Entra ID használ, győződjön meg arról, hogy a végpont ezzel a hitelesítési módszerrel lett üzembe helyezve, és rendelkezik a meghívásához szükséges engedélyekkel.
Azure OpenAI-modellek
Ha Azure OpenAI-modellt használ, az ügyfél létrehozásához használja a következő kódot:
from azure.ai.inference.aio import ChatCompletionsClient
from azure.identity.aio import DefaultAzureCredential
from semantic_kernel.connectors.ai.azure_ai_inference import AzureAIInferenceChatCompletion
chat_completion_service = AzureAIInferenceChatCompletion(
ai_model_id="<deployment-name>",
client=ChatCompletionsClient(
endpoint=f"{str(<your-azure-open-ai-endpoint>).strip('/')}/openai/deployments/{<deployment_name>}",
credential=DefaultAzureCredential(),
credential_scopes=["https://cognitiveservices.azure.com/.default"],
),
)
Következtetési paraméterek
A AzureAIInferenceChatPromptExecutionSettings osztály használatával konfigurálhatja, hogyan hajtsák végre a következtetést.
from semantic_kernel.connectors.ai.azure_ai_inference import AzureAIInferenceChatPromptExecutionSettings
execution_settings = AzureAIInferenceChatPromptExecutionSettings(
max_tokens=100,
temperature=0.5,
top_p=0.9,
# extra_parameters={...}, # model-specific parameters
)
A szolgáltatás meghívása
Először hívja meg a csevegés-befejező szolgáltatást egy egyszerű csevegési előzményekkel:
Tipp
Szemantikus kernel aszinkron kódtár, ezért a kód futtatásához az asyncio kódtárat kell használnia.
import asyncio
async def main():
...
if __name__ == "__main__":
asyncio.run(main())
from semantic_kernel.contents.chat_history import ChatHistory
chat_history = ChatHistory()
chat_history.add_user_message("Hello, how are you?")
response = await chat_completion_service.get_chat_message_content(
chat_history=chat_history,
settings=execution_settings,
)
print(response)
Másik lehetőségként streamelheti a választ a szolgáltatásból:
chat_history = ChatHistory()
chat_history.add_user_message("Hello, how are you?")
response = chat_completion_service.get_streaming_chat_message_content(
chat_history=chat_history,
settings=execution_settings,
)
chunks = []
async for chunk in response:
chunks.append(chunk)
print(chunk, end="")
full_response = sum(chunks[1:], chunks[0])
Hosszú ideig futó beszélgetés létrehozása
Létrehozhat egy hosszú ideig tartó beszélgetést egy ciklus használatával:
while True:
response = await chat_completion_service.get_chat_message_content(
chat_history=chat_history,
settings=execution_settings,
)
print(response)
chat_history.add_message(response)
chat_history.add_user_message(user_input = input("User:> "))
Ha streameli a választ, a következő kódot használhatja:
while True:
response = chat_completion_service.get_streaming_chat_message_content(
chat_history=chat_history,
settings=execution_settings,
)
chunks = []
async for chunk in response:
chunks.append(chunk)
print(chunk, end="")
full_response = sum(chunks[1:], chunks[0])
chat_history.add_message(full_response)
chat_history.add_user_message(user_input = input("User:> "))
Beágyazási modellek használata
Konfigurálja a környezetet az előző lépésekhez hasonlóan, de használja az osztályt AzureAIInferenceEmbeddings :
from semantic_kernel.connectors.ai.azure_ai_inference import AzureAIInferenceTextEmbedding
embedding_generation_service = AzureAIInferenceTextEmbedding(ai_model_id="<deployment-name>")
Az alábbi kód bemutatja, hogyan kérhet le beágyazást a szolgáltatásból:
embeddings = await embedding_generation_service.generate_embeddings(
texts=["My favorite color is blue.", "I love to eat pizza."],
)
for embedding in embeddings:
print(embedding)