Azure-Samples / Azure-Samples/rag-postgres-openai-python

Migrate AzureOpenAI constructors to OpenAI client

Abierto
#269 0 comentarios 1 reacción 1 asignado Asignado a @Copilot Ver en GitHub
Lenguaje dominante
Python
Estrellas
505
Forks
1.1k
Merge medio
3 d 13 h
PR fusionados (30 d)
1

Descripción

## Issue Description

This repository is using the Azure-specific client constructors from the OpenAI SDK:
`AzureOpenAI` or `AsyncAzureOpenAI`.

These constructors are deprecated in the latest SDKs. Migrate to the standard
`OpenAI` / `AsyncOpenAI` constructors instead so the code stays compatible with the
current API surface.

## Required Updates

1. **Replace constructors**
```python
# Before
client = openai.AzureOpenAI(
api_version=os.environ["AZURE_OPENAI_VERSION"],
azure_endpoint=os.environ["AZURE_OPENAI_ENDPOINT"],
azure_ad_token_provider=token_provider,
)

# After
client = openai.OpenAI(
base_url=os.environ["AZURE_OPENAI_ENDPOINT"],
api_key=token_provider,
)
```

* `AzureOpenAI` → `OpenAI` (or `AsyncAzureOpenAI` → `AsyncOpenAI`).
* `azure_endpoint` → `base_url`.
* `azure_ad_token_provider` (or similar Azure credential helpers) → `api_key`.

2. **Remove `api_version` usage**
* Delete the `api_version=...` argument from client construction.
* Remove any `AZURE_OPENAI_VERSION` environment variables and references (including
`.env`, application settings, and `infra/main.bicep` or other Bicep files).

3. **Update package requirements**
* Ensure `requirements.txt` or `pyproject.toml` declares `openai>=1.108.1`.
This is the first version where `OpenAI` / `AsyncOpenAI` fully replace the
Azure-specific constructors.

## Follow-up Checklist

- [ ] All Python client instantiations use `OpenAI` / `AsyncOpenAI`.
- [ ] No `api_version` argument or related environment variables remain.
- [ ] Dependency metadata requires `openai>=1.108.1`.

Addressing these items will keep the repository aligned with the supported OpenAI SDK usage.

## Details

**Pattern:** `\b(?:AzureOpenAI|AsyncAzureOpenAI)\s*\(`

### Found matches in 2 file(s) with 6 total match(es):

**File:** `evals/generate_ground_truth.py`

- **Line 88:** `openai_client = AzureOpenAI(`

- **Line 97:** `openai_client = AzureOpenAI(`

**File:** `src/backend/fastapi_app/openai_clients.py`

- **Line 26:** `openai_chat_client = openai.AsyncAzureOpenAI(`

- **Line 41:** `openai_chat_client = openai.AsyncAzureOpenAI(`

- **Line 85:** `openai_embed_client = openai.AsyncAzureOpenAI(`

- **Line 100:** `openai_embed_client = openai.AsyncAzureOpenAI(`

**Repository:** https://github.com/Azure-Samples/rag-postgres-openai-python

---
*This issue was automatically created by the GitHub Repo Maintainer Agent.*

Guía de contribución

Abrir la guía de contribución

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.