Create prompts to chat about code (Generative AI)

Create prompts to work with a publisher code chat model to have a chatbot conversation about code.

Code sample

Java

Before trying this sample, follow the Java setup instructions in the Vertex AI quickstart using client libraries . For more information, see the Vertex AI Java API reference documentation .

To authenticate to Vertex AI, set up Application Default Credentials. For more information, see Set up authentication for a local development environment .

  import 
  
 com.google.cloud.aiplatform.v1. EndpointName 
 
 ; 
 import 
  
 com.google.cloud.aiplatform.v1. PredictResponse 
 
 ; 
 import 
  
 com.google.cloud.aiplatform.v1. PredictionServiceClient 
 
 ; 
 import 
  
 com.google.cloud.aiplatform.v1. PredictionServiceSettings 
 
 ; 
 import 
  
 com.google.protobuf. InvalidProtocolBufferException 
 
 ; 
 import 
  
 com.google.protobuf. Value 
 
 ; 
 import 
  
 com.google.protobuf.util. JsonFormat 
 
 ; 
 import 
  
 java.io.IOException 
 ; 
 import 
  
 java.util.ArrayList 
 ; 
 import 
  
 java.util.List 
 ; 
 public 
  
 class 
 PredictCodeChatSample 
  
 { 
  
 public 
  
 static 
  
 void 
  
 main 
 ( 
 String 
 [] 
  
 args 
 ) 
  
 throws 
  
 IOException 
  
 { 
  
 // TODO(developer): Replace this variable before running the sample. 
  
 String 
  
 project 
  
 = 
  
 "YOUR_PROJECT_ID" 
 ; 
  
 // Learn more about creating prompts to work with a code chat model at: 
  
 // https://cloud.google.com/vertex-ai/docs/generative-ai/code/code-chat-prompts 
  
 String 
  
 instance 
  
 = 
  
 "{ \"messages\": [\n" 
  
 + 
  
 "{\n" 
  
 + 
  
 "  \"author\": \"user\",\n" 
  
 + 
  
 "  \"content\": \"Hi, how are you?\"\n" 
  
 + 
  
 "},\n" 
  
 + 
  
 "{\n" 
  
 + 
  
 "  \"author\": \"system\",\n" 
  
 + 
  
 "  \"content\": \"I am doing good. What can I help you in the coding world?\"\n" 
  
 + 
  
 " },\n" 
  
 + 
  
 "{\n" 
  
 + 
  
 "  \"author\": \"user\",\n" 
  
 + 
  
 "  \"content\":\n" 
  
 + 
  
 "     \"Please help write a function to calculate the min of two numbers.\"\n" 
  
 + 
  
 "}\n" 
  
 + 
  
 "]}" 
 ; 
  
 String 
  
 parameters 
  
 = 
  
 "{\n" 
  
 + 
  
 "  \"temperature\": 0.5,\n" 
  
 + 
  
 "  \"maxOutputTokens\": 1024\n" 
  
 + 
  
 "}" 
 ; 
  
 String 
  
 location 
  
 = 
  
 "us-central1" 
 ; 
  
 String 
  
 publisher 
  
 = 
  
 "google" 
 ; 
  
 String 
  
 model 
  
 = 
  
 "codechat-bison@001" 
 ; 
  
 predictCodeChat 
 ( 
 instance 
 , 
  
 parameters 
 , 
  
 project 
 , 
  
 location 
 , 
  
 publisher 
 , 
  
 model 
 ); 
  
 } 
  
 // Use a code chat model to generate a code function 
  
 public 
  
 static 
  
 void 
  
 predictCodeChat 
 ( 
  
 String 
  
 instance 
 , 
  
 String 
  
 parameters 
 , 
  
 String 
  
 project 
 , 
  
 String 
  
 location 
 , 
  
 String 
  
 publisher 
 , 
  
 String 
  
 model 
 ) 
  
 throws 
  
 IOException 
  
 { 
  
 final 
  
 String 
  
 endpoint 
  
 = 
  
 String 
 . 
 format 
 ( 
 "%s-aiplatform.googleapis.com:443" 
 , 
  
 location 
 ); 
  
  PredictionServiceSettings 
 
  
 predictionServiceSettings 
  
 = 
  
  PredictionServiceSettings 
 
 . 
 newBuilder 
 (). 
 setEndpoint 
 ( 
 endpoint 
 ). 
 build 
 (); 
  
 // Initialize client that will be used to send requests. This client only needs to be created 
  
 // once, and can be reused for multiple requests. 
  
 try 
  
 ( 
  PredictionServiceClient 
 
  
 predictionServiceClient 
  
 = 
  
  PredictionServiceClient 
 
 . 
 create 
 ( 
 predictionServiceSettings 
 )) 
  
 { 
  
 final 
  
  EndpointName 
 
  
 endpointName 
  
 = 
  
  EndpointName 
 
 . 
  ofProjectLocationPublisherModelName 
 
 ( 
 project 
 , 
  
 location 
 , 
  
 publisher 
 , 
  
 model 
 ); 
  
  Value 
 
  
 instanceValue 
  
 = 
  
 stringToValue 
 ( 
 instance 
 ); 
  
  List<Value> 
 
  
 instances 
  
 = 
  
 new 
  
 ArrayList 
<> (); 
  
 instances 
 . 
 add 
 ( 
 instanceValue 
 ); 
  
  Value 
 
  
 parameterValue 
  
 = 
  
 stringToValue 
 ( 
 parameters 
 ); 
  
  PredictResponse 
 
  
 predictResponse 
  
 = 
  
 predictionServiceClient 
 . 
 predict 
 ( 
 endpointName 
 , 
  
 instances 
 , 
  
 parameterValue 
 ); 
  
 System 
 . 
 out 
 . 
 println 
 ( 
 "Predict Response" 
 ); 
  
 System 
 . 
 out 
 . 
 println 
 ( 
 predictResponse 
 ); 
  
 } 
  
 } 
  
 // Convert a Json string to a protobuf.Value 
  
 static 
  
  Value 
 
  
 stringToValue 
 ( 
 String 
  
 value 
 ) 
  
 throws 
  
  InvalidProtocolBufferException 
 
  
 { 
  
  Value 
 
 . 
 Builder 
  
 builder 
  
 = 
  
  Value 
 
 . 
 newBuilder 
 (); 
  
  JsonFormat 
 
 . 
 parser 
 (). 
 merge 
 ( 
 value 
 , 
  
 builder 
 ); 
  
 return 
  
  builder 
 
 . 
 build 
 (); 
  
 } 
 } 
 

What's next

To search and filter code samples for other Google Cloud products, see the Google Cloud sample browser .

Create a Mobile Website
View Site in Mobile | Classic
Share by: