Tworzenie klienta czatu

Ukończone

Typowym scenariuszem w aplikacji sztucznej inteligencji jest nawiązanie połączenia z modelem generatywnej sztucznej inteligencji i użycie odpowiednich zadań, aby zaangażować się w dialog oparty na czacie.

Chociaż możesz użyć zestawu AZURE OpenAI SDK, aby połączyć się "bezpośrednio" z modelem przy użyciu uwierzytelniania opartego na kluczach lub identyfikatora Entra firmy Microsoft; po wdrożeniu modelu w projekcie Microsoft Foundry można również użyć zestawu MICROSOFT Foundry SDK do pobrania klienta projektu, z którego można uzyskać uwierzytelnionego klienta czatu OpenAI dla wszystkich modeli wdrożonych w zasobie Microsoft Foundry projektu. Takie podejście ułatwia pisanie kodu, który korzysta z modeli wdrożonych w projekcie, przełączając się między nimi łatwo, zmieniając parametr nazwy wdrożenia modelu.

Wskazówka

Możesz użyć klienta czatu OpenAI dostarczonego przez projekt Microsoft Foundry, aby porozmawiać z dowolnym modelem wdrożonym w skojarzonym zasobie microsoft Foundry — nawet modelami innych niż OpenAI, takimi jak modele Microsoft Phi.

Poniższy przykładowy kod w języku Python używa metody get_openai_client(), aby uzyskać klienta openAI, za pomocą którego można porozmawiać z modelem wdrożonym w zasobie Microsoft Foundry projektu.

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)

Notatka

Oprócz azure-ai-projects i pakietów azure-identity omówionych wcześniej przykładowy kod zakłada, że zainstalowano pakiet openai:

pip install openai