채팅 클라이언트 만들기

완료됨

AI 애플리케이션의 일반적인 시나리오는 생성 AI 모델에 연결하고 프롬프트 사용하여 채팅 기반 대화에 참여하는 것입니다.

Azure OpenAI SDK를 사용하면 키 기반 또는 Microsoft Entra ID 인증을 사용하여 모델에 "직접" 연결할 수 있습니다. 모델이 Microsoft Foundry 프로젝트에 배포되면 Microsoft Foundry SDK를 사용하여 프로젝트 클라이언트를 검색할 수도 있습니다. 그러면 프로젝트의 Microsoft Foundry 리소스에 배포된 모든 모델에 대해 인증된 OpenAI 채팅 클라이언트를 가져올 수 있습니다. 이 방법을 사용하면 프로젝트에 배포된 모델을 사용하는 코드를 쉽게 작성할 수 있으며 모델 배포 이름 매개 변수를 변경하여 모델을 쉽게 전환할 수 있습니다.

팁 (조언)

Microsoft Foundry 프로젝트에서 제공하는 OpenAI 채팅 클라이언트를 사용하여 연결된 Microsoft Foundry 리소스에 배포된 모든 모델(Microsoft Phi 모델과 같은 비 OpenAI 모델)과 채팅할 수 있습니다.

다음 Python 코드 샘플에서는 get_openai_client() 메서드를 사용하여 프로젝트의 Microsoft Foundry 리소스에 배포된 모델과 채팅할 OpenAI 클라이언트를 가져옵니다.

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)

메모

앞에서 설명한 azure-ai-projectsazure-identity 패키지 외에도 여기에 표시된 샘플 코드는 openai 패키지가 설치되었다고 가정합니다.

pip install openai