Skip to content

Commit 503714b

Browse files
authored
Merge pull request #1311 from oracle-devrel/HelloAI-function-AI-service-change
HelloAI function change to upgrade from text generation to chat
2 parents d471f77 + 4113a0e commit 503714b

File tree

2 files changed

+36
-34
lines changed
  • app-dev/devops-and-containers/functions/java-helloworld-AI-with-local-dev-and-oci-functions

2 files changed

+36
-34
lines changed

app-dev/devops-and-containers/functions/java-helloworld-AI-with-local-dev-and-oci-functions/pom.xml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -44,22 +44,22 @@
4444
<dependency>
4545
<groupId>com.oracle.oci.sdk</groupId>
4646
<artifactId>oci-java-sdk-core</artifactId>
47-
<version>3.37.2</version>
47+
<version>3.50.2</version>
4848
</dependency>
4949
<dependency>
5050
<groupId>com.oracle.oci.sdk</groupId>
5151
<artifactId>oci-java-sdk-common</artifactId>
52-
<version>3.37.2</version>
52+
<version>3.50.2</version>
5353
</dependency>
5454
<dependency>
5555
<groupId>com.oracle.oci.sdk</groupId>
5656
<artifactId>oci-java-sdk-generativeai</artifactId>
57-
<version>3.37.2</version>
57+
<version>3.50.2</version>
5858
</dependency>
5959
<dependency>
6060
<groupId>com.oracle.oci.sdk</groupId>
6161
<artifactId>oci-java-sdk-generativeaiinference</artifactId>
62-
<version>3.37.2</version>
62+
<version>3.50.2</version>
6363
</dependency>
6464
<dependency>
6565
<groupId>com.oracle.oci.sdk</groupId>

app-dev/devops-and-containers/functions/java-helloworld-AI-with-local-dev-and-oci-functions/src/main/java/com/example/HelloAIFunction.java

Lines changed: 32 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
11
package com.example;
22

3-
43
import com.oracle.bmc.ClientConfiguration;
54
import com.oracle.bmc.ConfigFileReader;
65
import com.oracle.bmc.Region;
@@ -9,15 +8,21 @@
98
import com.oracle.bmc.auth.StringPrivateKeySupplier;
109
import com.oracle.bmc.auth.SimpleAuthenticationDetailsProvider;
1110
import com.oracle.bmc.generativeaiinference.GenerativeAiInferenceClient;
12-
import com.oracle.bmc.generativeaiinference.model.CohereLlmInferenceRequest;
11+
import com.oracle.bmc.generativeaiinference.model.ChatDetails;
12+
import com.oracle.bmc.generativeaiinference.model.CohereChatRequest;
13+
import com.oracle.bmc.generativeaiinference.model.CohereMessage;
1314
import com.oracle.bmc.generativeaiinference.model.DedicatedServingMode;
14-
import com.oracle.bmc.generativeaiinference.model.GenerateTextDetails;
15-
import com.oracle.bmc.generativeaiinference.model.LlamaLlmInferenceRequest;
15+
import com.oracle.bmc.generativeaiinference.requests.ChatRequest;
16+
import com.oracle.bmc.generativeaiinference.responses.ChatResponse;
17+
import com.oracle.bmc.generativeaiinference.model.BaseChatRequest.ApiFormat;
18+
import com.oracle.bmc.generativeaiinference.model.ChatChoice;
19+
import com.oracle.bmc.generativeaiinference.model.ChatContent;
20+
import com.oracle.bmc.generativeaiinference.model.ChatContent.Type;
21+
import com.oracle.bmc.generativeaiinference.model.ChatResult;
22+
import com.oracle.bmc.generativeaiinference.model.Message;
1623
import com.oracle.bmc.generativeaiinference.model.OnDemandServingMode;
17-
import com.oracle.bmc.generativeaiinference.model.SummarizeTextDetails;
18-
import com.oracle.bmc.generativeaiinference.requests.GenerateTextRequest;
19-
import com.oracle.bmc.generativeaiinference.requests.SummarizeTextRequest;
20-
import com.oracle.bmc.generativeaiinference.responses.GenerateTextResponse;
24+
import com.oracle.bmc.generativeaiinference.model.ServingMode;
25+
import com.oracle.bmc.generativeaiinference.model.TextContent;
2126
import com.oracle.bmc.retrier.RetryConfiguration;
2227

2328
import java.io.*;
@@ -47,7 +52,6 @@ public String handleRequest(String input) {
4752
String currentDate = dateFormat. format(date);
4853
String questionToAI = (input == null || input.isEmpty()) ? "What happened today " + currentDate + " 100 years ago ?": input;
4954

50-
// OCI FUNCTION CONFIG VAR "AUTH_INSTANCE_PRINCIPAL" FOR INSTANCE_PRINCIPAL AUTH (ANY VALUE)
5155
if(System.getenv("AUTH_INSTANCE_PRINCIPAL") != null) {
5256
System.out.println("AUTH_INSTANCE_PRINCIPAL");
5357
ResourcePrincipalAuthenticationDetailsProvider resourcePrincipalAuthenticationDetailsProvider =
@@ -75,33 +79,31 @@ public String handleRequest(String input) {
7579
.build(authenticationDetailsProvider);
7680
}
7781

78-
CohereLlmInferenceRequest llmInferenceRequest =
79-
CohereLlmInferenceRequest.builder()
80-
.prompt(questionToAI)
81-
.maxTokens(600)
82-
.temperature((double)1)
83-
.frequencyPenalty((double)0)
84-
.topP((double)0.99)
85-
.isStream(false)
86-
.isEcho(false)
87-
.build();
82+
CohereChatRequest chatRequest = CohereChatRequest.builder()
83+
.message(questionToAI)
84+
.maxTokens(600)
85+
.temperature((double)0)
86+
.frequencyPenalty((double)1)
87+
.topP((double)0.75)
88+
.topK((int)0)
89+
.isStream(false)
90+
.build();
8891

89-
GenerateTextDetails generateTextDetails = GenerateTextDetails.builder()
90-
.servingMode(OnDemandServingMode.builder()
91-
.modelId("ocid1.generativeaimodel.oc1.us-chicago-1.amaaaaaask7dceyafhwal37hxwylnpbcncidimbwteff4xha77n5xz4m7p6a").build())
92+
ChatDetails chatDetails = ChatDetails.builder()
93+
.servingMode(OnDemandServingMode.builder().modelId("ocid1.generativeaimodel.oc1.eu-frankfurt-1.amaaaaaask7dceyazi3cpmptwa52f7dgwyskloughcxtjgrqre3pngwtig4q").build())
9294
.compartmentId(COMPARTMENT_ID)
93-
.inferenceRequest(llmInferenceRequest)
95+
.chatRequest(chatRequest)
9496
.build();
9597

96-
GenerateTextRequest generateTextRequest = GenerateTextRequest.builder()
97-
.generateTextDetails(generateTextDetails)
98+
ChatRequest request = ChatRequest.builder()
99+
.chatDetails(chatDetails)
98100
.build();
99101

100-
GenerateTextResponse generateTextResponse = generativeAiInferenceClient.generateText(generateTextRequest);
101-
String answerAI = generateTextResponse.toString();
102-
answerAI = answerAI.substring(answerAI.indexOf("text= ") + 6);
103-
if(answerAI.indexOf(", likelihood") > 0) {
104-
answerAI = answerAI.substring(0, answerAI.indexOf(", likelihood"));
102+
ChatResponse chatResponse = generativeAiInferenceClient.chat(request);
103+
String answerAI = chatResponse.toString();
104+
answerAI = answerAI.substring(answerAI.indexOf("text=") + 5);
105+
if(answerAI.indexOf(", chatHistory=") > 0) {
106+
answerAI = answerAI.substring(0, answerAI.indexOf(", chatHistory="));
105107
}
106108
answer = questionToAI + "\n\n" + answerAI;
107109

0 commit comments

Comments
 (0)