openai/openai-python

Public

mirrored from https://github.com/openai/openai-pythonAvailable

CodeCommitsIssuesPull requestsActionsInsightsSecurity
v1.63.0

Branches

Tags

  • No tags available.
0Branches0Tags
Go to file
Add file
Code

Clone

HTTPS

Download ZIP

examples/azure_ad.py

67lines · modeblame

abc5459cFernando de Oliveira1 years ago1import asyncio
08b8179aDavid Schnurr2 years ago2
abc5459cFernando de Oliveira1 years ago3from openai.lib.azure import AzureOpenAI, AsyncAzureOpenAI, AzureADTokenProvider, AsyncAzureADTokenProvider
08b8179aDavid Schnurr2 years ago4
abc5459cFernando de Oliveira1 years ago5scopes = "https://cognitiveservices.azure.com/.default"
08b8179aDavid Schnurr2 years ago6
abc5459cFernando de Oliveira1 years ago7# May change in the future
08b8179aDavid Schnurr2 years ago8# https://learn.microsoft.com/en-us/azure/ai-services/openai/reference#rest-api-versioning
9api_version = "2023-07-01-preview"
10
11# https://learn.microsoft.com/en-us/azure/cognitive-services/openai/how-to/create-resource?pivots=web-portal#create-a-resource
12endpoint = "https://my-resource.openai.azure.com"
13
abc5459cFernando de Oliveira1 years ago14deployment_name = "deployment-name" # e.g. gpt-35-instant
15
16
17def sync_main() -> None:
18from azure.identity import DefaultAzureCredential, get_bearer_token_provider
19
20token_provider: AzureADTokenProvider = get_bearer_token_provider(DefaultAzureCredential(), scopes)
21
22client = AzureOpenAI(
23api_version=api_version,
24azure_endpoint=endpoint,
25azure_ad_token_provider=token_provider,
26)
27
28completion = client.chat.completions.create(
29model=deployment_name,
30messages=[
31{
32"role": "user",
33"content": "How do I output all files in a directory using Python?",
34}
35],
36)
37
38print(completion.to_json())
39
40
41async def async_main() -> None:
42from azure.identity.aio import DefaultAzureCredential, get_bearer_token_provider
43
44token_provider: AsyncAzureADTokenProvider = get_bearer_token_provider(DefaultAzureCredential(), scopes)
45
46client = AsyncAzureOpenAI(
47api_version=api_version,
48azure_endpoint=endpoint,
49azure_ad_token_provider=token_provider,
50)
51
52completion = await client.chat.completions.create(
53model=deployment_name,
54messages=[
55{
56"role": "user",
57"content": "How do I output all files in a directory using Python?",
58}
59],
60)
61
62print(completion.to_json())
63
64
65sync_main()
66
67asyncio.run(async_main())