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

Migrate AzureOpenAI constructors to OpenAI client

Đang mở
#269 0 bình luận 1 reaction 1 người được giao Được giao cho @Copilot Xem trên GitHub
Ngôn ngữ chính
Python
Star
505
Fork
1.1k
Merge trung bình
3 ngày 13 giờ
Pull request đã merge (30 ngày)
1

Mô tả

## 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.*

Hướng dẫn đóng góp

Mở hướng dẫn đóng góp

Đánh giá

Issue này chưa được đánh giá.

Nhận issue mới trong hộp thư của bạn

Bản tóm tắt ngắn những issue GitHub phù hợp với người mới.