Skip to content

Latest commit

 

History

History
139 lines (101 loc) · 3.91 KB

File metadata and controls

139 lines (101 loc) · 3.91 KB

Exemplo 01: Chat Rápido com OpenAI SDK

Um exemplo simples de chat que demonstra como usar o OpenAI SDK com o Microsoft Foundry Local para inferência de IA local.

Visão Geral

Este exemplo mostra como:

  • Utilizar o OpenAI Python SDK com Foundry Local
  • Gerir configurações tanto do Azure OpenAI como do Foundry Local
  • Implementar tratamento de erros adequado e estratégias de fallback
  • Usar o FoundryLocalManager para gestão de serviços

Pré-requisitos

  • Foundry Local: Instalado e disponível no PATH
  • Python: Versão 3.8 ou superior
  • Modelo: Um modelo carregado no Foundry Local (ex.: phi-4-mini)

Instalação

  1. Configurar o ambiente Python:

    cd Module08
    py -m venv .venv
    .venv\Scripts\activate
  2. Instalar dependências:

    pip install -r requirements.txt
  3. Iniciar o serviço Foundry Local e carregar um modelo:

    foundry model run phi-4-mini

Utilização

Foundry Local (Padrão)

# Using FoundryLocalManager (recommended)
python samples\01\chat_quickstart.py "Explain what Foundry Local is"

# Using manual configuration
set BASE_URL=http://localhost:8000
set MODEL=phi-4-mini
set API_KEY=
python samples\01\chat_quickstart.py "Write a welcome message"

Azure OpenAI

set AZURE_OPENAI_ENDPOINT=https://your-resource.openai.azure.com
set AZURE_OPENAI_API_KEY=your-api-key
set AZURE_OPENAI_API_VERSION=2024-08-01-preview
set MODEL=your-deployment-name
python samples\01\chat_quickstart.py "Hello from Azure OpenAI"

Funcionalidades do Código

Integração com FoundryLocalManager

O exemplo utiliza o SDK oficial do Foundry Local para uma gestão adequada de serviços:

from foundry_local import FoundryLocalManager
from openai import OpenAI

# Initialize Foundry Local
manager = FoundryLocalManager(alias)
model_info = manager.get_model_info(alias)

# Configure OpenAI client
client = OpenAI(
    base_url=manager.endpoint,
    api_key=manager.api_key
)

Tratamento de Erros

Tratamento de erros robusto com fallback para configuração manual:

  • Descoberta automática de serviços
  • Degradação graciosa caso o SDK não esteja disponível
  • Mensagens de erro claras para resolução de problemas

Variáveis de Ambiente

Variável Descrição Padrão Obrigatório
MODEL Alias ou nome do modelo phi-4-mini Não
BASE_URL URL base do Foundry Local http://localhost:8000 Não
API_KEY Chave API (geralmente não necessária para local) "" Não
AZURE_OPENAI_ENDPOINT Endpoint do Azure OpenAI - Para Azure
AZURE_OPENAI_API_KEY Chave API do Azure OpenAI - Para Azure
AZURE_OPENAI_API_VERSION Versão da API do Azure 2024-08-01-preview Não

Resolução de Problemas

Problemas Comuns

  1. Aviso "Não foi possível usar o Foundry SDK":

    • Instalar o foundry-local-sdk: pip install foundry-local-sdk
    • Ou configurar variáveis de ambiente manualmente
  2. Conexão recusada:

    • Certifique-se de que o Foundry Local está em execução: foundry service status
    • Verifique se um modelo está carregado: foundry service ps
  3. Modelo não encontrado:

    • Listar modelos disponíveis: foundry model list
    • Carregar um modelo: foundry model run phi-4-mini

Verificação

# Check Foundry Local status
foundry service status

# List loaded models
foundry service ps

# Test API endpoint
curl http://localhost:8000/v1/models

Referências