Skip to content

Latest commit

 

History

History
 
 

Folders and files

NameName
Last commit message
Last commit date

parent directory

..
 
 
 
 
 
 

README.md

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

<<<<<<< div <<<<<<< div

<<<<<<< Updated upstream <<<<<<< Updated upstream <<<<<<< head

head <<<<<<< Updated upstream <<<<<<< Updated upstream <<<<<<< Updated upstream <<<<<<< Updated upstream <<<<<<< Updated upstream <<<<<<< Updated upstream ======= ======= Stashed changes ======= Stashed changes ======= Stashed changes ======= Stashed changes ======= Stashed changes ======= Stashed changes ======= Stashed changes <<<<<<< AI ======= <<<<<<< HEAD main <<<<<<< Updated upstream <<<<<<< Updated upstream <<<<<<< Updated upstream <<<<<<< Updated upstream <<<<<<< Updated upstream <<<<<<< Updated upstream <<<<<<< Updated upstream Stashed changes ======= ======= Stashed changes Stashed changes ======= Stashed changes ======= Stashed changes ======= Stashed changes ======= Stashed changes ======= Stashed changes 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

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

<<<<<<< div

main ======= <<<<<<< Updated upstream <<<<<<< Updated upstream ======= origin/main ======= Stashed changes ======= Stashed changes head <<<<<<< AI ======= <<<<<<< HEAD main 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
<<<<<<< AI
=======
=======
>>>>>>> main
By default, the samples will use the Open AI client, but you can also use the Azure Open AI client.

## Open AI client type

You can define the provider of Open AI (openai.com or Azure), this can be done by setting the `OPENAI_CLIENT_TYPE`
property or environment variable to either `OPENAI` or `AZURE_OPEN_AI`, i.e.:

```shell
OPENAI_CLIENT_TYPE=OPENAI ../../mvnw exec:java -Dsample=Example04_CombineLLMPromptsAndNativeCode
<<<<<<< AI
=======
>>>>>>> beeed7b7a795d8c989165740de6ddb21aeacbb6f
>>>>>>> main

OR

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

Client Settings

<<<<<<< AI <<<<<<< div <<<<<<< div

<<<<<<< Updated upstream <<<<<<< Updated upstream <<<<<<< head

head <<<<<<< Updated upstream <<<<<<< Updated upstream <<<<<<< Updated upstream <<<<<<< Updated upstream <<<<<<< Updated upstream <<<<<<< Updated upstream ======= ======= Stashed changes ======= Stashed changes ======= Stashed changes ======= Stashed changes ======= Stashed changes ======= Stashed changes ======= Stashed changes ======= Stashed changes <<<<<<< main The samples search for the client settings in the following order: The tests search for the client settings in the following order: ======= <<<<<<< HEAD The samples search for the client settings in the following order: ======= <<<<<<< Updated upstream <<<<<<< Updated upstream <<<<<<< Updated upstream <<<<<<< Updated upstream <<<<<<< Updated upstream <<<<<<< Updated upstream <<<<<<< Updated upstream Stashed changes ======= ======= Stashed changes Stashed changes ======= Stashed changes ======= Stashed changes ======= Stashed changes ======= origin/main ======= Stashed changes ======= Stashed changes <<<<<<< div ======= main ======= head The samples search for the client settings in the following order: The tests search for the client settings in the following order: ======= <<<<<<< HEAD The samples search for the client settings in the following order: <<<<<<< div <<<<<<< div ======= <<<<<<< Updated upstream <<<<<<< Updated upstream <<<<<<< head head <<<<<<< Updated upstream <<<<<<< Updated upstream <<<<<<< Updated upstream <<<<<<< Updated upstream <<<<<<< Updated upstream <<<<<<< Updated upstream ======= origin/main Stashed changes ======= origin/main Stashed changes ======= origin/main Stashed changes ======= origin/main Stashed changes ======= origin/main Stashed changes ======= origin/main Stashed changes ======= <<<<<<< div main ======= ======= Stashed changes ======= Stashed changes origin/main head ======= The tests search for the client settings in the following order: beeed7b7a795d8c989165740de6ddb21aeacbb6f main

  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 \
<<<<<<< AI
<<<<<<< div
<<<<<<< div
=======
>>>>>>> head
<<<<<<< Updated upstream
<<<<<<< Updated upstream
<<<<<<< head
<<<<<<< Updated upstream
<<<<<<< Updated upstream
<<<<<<< Updated upstream
<<<<<<< Updated upstream
<<<<<<< Updated upstream
<<<<<<< Updated upstream
=======
=======
>>>>>>> Stashed changes
=======
>>>>>>> Stashed changes
=======
>>>>>>> Stashed changes
=======
>>>>>>> Stashed changes
=======
>>>>>>> Stashed changes
<<<<<<< main
=======
>>>>>>> origin/main
=======
<<<<<<< main
>>>>>>> Stashed changes
=======
<<<<<<< main
<<<<<<< div
=======
>>>>>>> main
=======
>>>>>>> Stashed changes
>>>>>>> head
OPENAI_CLIENT_TYPE=OPEN_AI \
OPENAI_CLIENT_TYPE=OPENAI \
=======
<<<<<<< HEAD
<<<<<<< div
<<<<<<< div
=======
<<<<<<< Updated upstream
<<<<<<< Updated upstream
<<<<<<< head
>>>>>>> head
OPENAI_CLIENT_TYPE=OPEN_AI \
=======
<<<<<<< Updated upstream
<<<<<<< Updated upstream
<<<<<<< Updated upstream
<<<<<<< Updated upstream
<<<<<<< Updated upstream
>>>>>>> Stashed changes
=======
>>>>>>> Stashed changes
=======
>>>>>>> Stashed changes
=======
>>>>>>> Stashed changes
=======
>>>>>>> Stashed changes
=======
>>>>>>> Stashed changes
=======
OPENAI_CLIENT_TYPE=OPEN_AI \
=======
>>>>>>> Stashed changes
=======
OPENAI_CLIENT_TYPE=OPEN_AI \
=======
>>>>>>> Stashed changes
OPENAI_CLIENT_TYPE=OPEN_AI \
OPENAI_CLIENT_TYPE=OPENAI \
=======
<<<<<<< HEAD
OPENAI_CLIENT_TYPE=OPEN_AI \
<<<<<<< Updated upstream
<<<<<<< Updated upstream
<<<<<<< Updated upstream
<<<<<<< Updated upstream
<<<<<<< Updated upstream
<<<<<<< Updated upstream
<<<<<<< Updated upstream
<<<<<<< Updated upstream
=======
=======
>>>>>>> origin/main
>>>>>>> Stashed changes
>>>>>>> Stashed changes
=======
>>>>>>> origin/main
>>>>>>> Stashed changes
=======
>>>>>>> origin/main
>>>>>>> Stashed changes
=======
>>>>>>> origin/main
>>>>>>> Stashed changes
=======
>>>>>>> origin/main
>>>>>>> Stashed changes
=======
>>>>>>> origin/main
>>>>>>> Stashed changes
=======
OPENAI_CLIENT_TYPE=OPEN_AI \
<<<<<<< div
>>>>>>> main
=======
=======
>>>>>>> Stashed changes
=======
>>>>>>> Stashed changes
>>>>>>> origin/main
>>>>>>> head
=======
OPENAI_CLIENT_TYPE=OPENAI \
>>>>>>> beeed7b7a795d8c989165740de6ddb21aeacbb6f
>>>>>>> main
../../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:
<<<<<<< AI
=======
<<<<<<< HEAD
>>>>>>> main
OPENAI_CLIENT_TYPE=OPEN_AI \
OPEN_AI_KEY="my-key" \
OPEN_AI_ORGANIZATION_ID="organisation id" \
../../mvnw clean package exec:java -Dsample=Example04_CombineLLMPromptsAndNativeCode

<<<<<<< AI

=======

main OPENAI_CLIENT_TYPE=OPENAI
OPEN_AI_KEY="my-key"
OPEN_AI_ORGANIZATION_ID="organisation id"
../../mvnw clean package exec:java -Dsample=Example04_CombineLLMPromptsAndNativeCode

<<<<<<< AI
=======
>>>>>>> beeed7b7a795d8c989165740de6ddb21aeacbb6f
>>>>>>> main