Skip to content

Latest commit

 

History

History
 
 

sample-code

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 

Java Samples

TL;DR

Run with:

# AZURE: OPENAI_CLIENT_TYPE=AZURE_OPEN_AI \ AZURE_OPEN_AI_KEY="my-key" \ AZURE_OPEN_AI_ENDPOINT="endpoint url" \ ../../mvnw clean package exec:java -Dsample=Example04_CombineLLMPromptsAndNativeCode # OPENAI: OPENAI_CLIENT_TYPE=OPENAI \ OPEN_AI_KEY="my-key" \ OPEN_AI_ORGANIZATION_ID="organisation id" \ ../../mvnw clean package exec:java -Dsample=Example04_CombineLLMPromptsAndNativeCode

Compile

These samples can be compiled via:

 ../../mvnw clean package

They can then be run by:

../../mvnw exec:java -Dsample=Example04_CombineLLMPromptsAndNativeCode

Configuration

You can define the provider of Open AI by setting the OPENAI_CLIENT_TYPE property or environment variable to either OPENAI or AZURE_OPEN_AI. By default, the samples will use the Open AI client.

OPENAI_CLIENT_TYPE=OPEN_AI ../../mvnw exec:java -Dsample=Example04_CombineLLMPromptsAndNativeCode OR ../../mvnw exec:java -DOPENAI_CLIENT_TYPE=AZURE_OPEN_AI -Dsample=Example04_CombineLLMPromptsAndNativeCode

Client Settings

The samples search for the client settings in the following order:

  1. Properties file whose location is defined by the CONF_PROPERTIES property or environment variable.
  2. System properties defined on the command line.
  3. Environment variables.
  4. Properties file at java/samples/conf.properties.
  5. Properties file at ~/.sk/conf.properties.

Properties File

You can set the location of a properties file, by setting the CONF_PROPERTIES property or environment variable, ie:

CONF_PROPERTIES=my.properties \ OPENAI_CLIENT_TYPE=OPEN_AI \ ../../mvnw exec:java -Dsample=Example04_CombineLLMPromptsAndNativeCode OR ../../mvnw exec:java \ -DCONF_PROPERTIES=my.properties \ -DOPENAI_CLIENT_TYPE=AZURE_OPEN_AI \ -Dsample=Example04_CombineLLMPromptsAndNativeCode

A properties file looks as follows:

# If using openai.com client.openai.key:"my-key" client.openai.organizationid:"my-org-id"# if using Azure Open AI client.azureopenai.key:"my-key" client.azureopenai.endpoint:"url of azure openai endpoint" client.azureopenai.deploymentname:"deployment name"

System Properties

As an alternative to providing the key/endpoint properties via a file, you can set them directly via system properties, ie:

# OpenAI ../../mvnw exec:java \ -DOPENAI_CLIENT_TYPE=AZURE_OPEN_AI \ -Dclient.openai.key="my-key" \ -Dclient.openai.organizationid="my-org-id" \ -Dsample=Example04_CombineLLMPromptsAndNativeCode # Azure ../../mvnw exec:java \ -DOPENAI_CLIENT_TYPE=AZURE_OPEN_AI \ -Dclient.azureopenai.key="my-key" \ -Dclient.azureopenai.endpoint="url of azure openai endpoint" \ -Dsample=Example04_CombineLLMPromptsAndNativeCode

Environment variables

Alternative to properties, you can set environment variables as follows:

# AZURE: OPENAI_CLIENT_TYPE=AZURE_OPEN_AI \ AZURE_OPEN_AI_KEY="my-key" \ AZURE_OPEN_AI_ENDPOINT="endpoint url" \ ../../mvnw clean package exec:java -Dsample=Example04_CombineLLMPromptsAndNativeCode # OPENAI: OPENAI_CLIENT_TYPE=OPEN_AI \ OPEN_AI_KEY="my-key" \ OPEN_AI_ORGANIZATION_ID="organisation id" \ ../../mvnw clean package exec:java -Dsample=Example04_CombineLLMPromptsAndNativeCode
close