Criar um cliente de chat
Um cenário comum em um aplicativo de IA é conectar-se a um modelo de IA generativo e usar prompts para se envolver em um diálogo baseado em bate-papo com ele.
Embora você possa usar o SDK do Azure OpenAI, para se conectar "diretamente" a um modelo usando autenticação baseada em chave ou Microsoft Entra ID; quando seu modelo é implantado em um projeto do Azure AI Foundry, você também pode usar o SDK do Azure AI Foundry para recuperar um cliente de projeto, do qual você pode obter um cliente de chat OpenAI autenticado para quaisquer modelos implantados no recurso Azure AI Foundry do projeto. Essa abordagem facilita a escrita de código que consome modelos implantados em seu projeto, alternando entre eles facilmente alterando o parâmetro de nome de implantação do modelo.
Sugestão
Você pode usar o cliente de chat OpenAI fornecido por um projeto do Azure AI Foundry para conversar com qualquer modelo implantado no recurso associado do Azure AI Foundry - até mesmo modelos não OpenAI, como modelos Microsoft Phi.
O exemplo de código Python a seguir usa o método get_openai_client() para obter um cliente OpenAI com o qual conversar com um modelo que foi implantado no recurso do Azure AI Foundry do projeto.
from azure.identity import DefaultAzureCredential
from azure.ai.projects import AIProjectClient
from openai import AzureOpenAI
try:
# connect to the project
project_endpoint = "https://......"
project_client = AIProjectClient(
credential=DefaultAzureCredential(),
endpoint=project_endpoint,
)
# Get a chat client
chat_client = project_client.get_openai_client(api_version="2024-10-21")
# Get a chat completion based on a user-provided prompt
user_prompt = input("Enter a question:")
response = chat_client.chat.completions.create(
model=your_model_deployment_name,
messages=[
{"role": "system", "content": "You are a helpful AI assistant."},
{"role": "user", "content": user_prompt}
]
)
print(response.choices[0].message.content)
except Exception as ex:
print(ex)
Observação
Além dos azure-ai-projects e azure-identity pacotes discutidos anteriormente, o código de exemplo mostrado aqui pressupõe que o pacote openai foi instalado:
pip install openai