openai/openai-java

Public

mirrored fromhttps://github.com/openai/openai-javaAvailable

CodeCommitsIssuesPull requestsActionsInsightsSecurity
v0.11.0

Branches

Tags

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

Clone

HTTPS

Download ZIP

openai-azure-java-example/src/main/java/com.openai.azure.examples/AzureEntraIDExample.java

58lines · modecode

1package com.openai.azure.examples;
2
3import com.azure.identity.AuthenticationUtil;
4import com.azure.identity.DefaultAzureCredentialBuilder;
5import com.openai.client.OpenAIClient;
6import com.openai.client.okhttp.OpenAIOkHttpClient;
7import com.openai.core.JsonValue;
8import com.openai.credential.BearerTokenCredential;
9import com.openai.models.ChatCompletion;
10import com.openai.models.ChatCompletionCreateParams;
11import com.openai.models.ChatCompletionMessageParam;
12import com.openai.models.ChatCompletionUserMessageParam;
13import java.util.List;
14
15/**
16 * This example demonstrates how to use the Azure Entra ID to authenticate with the OpenAI API.
17 */
18public final class AzureEntraIDExample {
19
20 private AzureEntraIDExample() {}
21
22 public static void main(String[] args) {
23 OpenAIOkHttpClient.Builder clientBuilder = OpenAIOkHttpClient.builder();
24
25 /* Azure-specific code starts here */
26 // You can either set 'endpoint' directly in the builder.
27 // or set the env var "AZURE_OPENAI_ENDPOINT" and use fromEnv() method instead
28 clientBuilder
29 .baseUrl(System.getenv("AZURE_OPENAI_ENDPOINT"))
30 .credential(BearerTokenCredential.create(
31 AuthenticationUtil.getBearerTokenSupplier(
32 new DefaultAzureCredentialBuilder().build(), "https://cognitiveservices.azure.com/.default")
33 ));
34 /* Azure-specific code ends here */
35
36 // All code from this line down is general-purpose OpenAI code
37 OpenAIClient client = clientBuilder.build();
38
39 ChatCompletionCreateParams params = ChatCompletionCreateParams.builder()
40 .addMessage(ChatCompletionMessageParam.ofChatCompletionUserMessageParam(
41 ChatCompletionUserMessageParam.builder()
42 .role(ChatCompletionUserMessageParam.Role.USER)
43 .content(ChatCompletionUserMessageParam.Content.ofTextContent("Who won the world series in 2020?"))
44 .build()))
45 .model("gpt-4o")
46 .build();
47
48 ChatCompletion chatCompletion = client.chat().completions().create(params);
49
50 List<ChatCompletion.Choice> choices = chatCompletion.choices();
51 for (ChatCompletion.Choice choice : choices) {
52 System.out.println("Choice content: " + choice.message().content().get());
53 }
54
55 JsonValue filterResult = chatCompletion._additionalProperties().get("prompt_filter_results");
56 System.out.println("Content filter results: " + filterResult);
57 }
58}
59