diff --git a/pom.xml b/pom.xml
index 3c4b986..a70002c 100644
--- a/pom.xml
+++ b/pom.xml
@@ -22,7 +22,7 @@
io.github.vishalmysore
tools4ai
- 0.9.4
+ 0.9.5
ch.qos.logback
diff --git a/src/main/java/org/example/ComplexActionExample.java b/src/main/java/org/example/ComplexActionExample.java
index a40f58c..cfa19e3 100644
--- a/src/main/java/org/example/ComplexActionExample.java
+++ b/src/main/java/org/example/ComplexActionExample.java
@@ -3,6 +3,7 @@
import com.t4a.processor.AIProcessingException;
import com.t4a.processor.ActionProcessor;
import lombok.extern.java.Log;
+import org.example.actions.AddRestaurantAction;
/**
* This will create the Player Pojo in real time and call the action
diff --git a/src/main/java/org/example/Main.java b/src/main/java/org/example/Main.java
index 8fdea10..a6353c6 100644
--- a/src/main/java/org/example/Main.java
+++ b/src/main/java/org/example/Main.java
@@ -1,31 +1,9 @@
package org.example;
-import com.google.cloud.vertexai.VertexAI;
-import com.google.cloud.vertexai.api.Content;
-import com.google.cloud.vertexai.api.FunctionDeclaration;
-import com.google.cloud.vertexai.api.GenerateContentResponse;
-import com.google.cloud.vertexai.api.Tool;
-import com.google.cloud.vertexai.generativeai.*;
-import com.t4a.action.BlankAction;
-import com.t4a.api.AIAction;
-import com.t4a.api.JavaMethodExecutor;
-import com.t4a.predict.Predict;
-import com.t4a.predict.PredictionLoader;
import com.t4a.processor.AIProcessingException;
import com.t4a.processor.ActionProcessor;
-import com.t4a.processor.OpenAiActionProcessor;
-import io.swagger.v3.oas.models.OpenAPI;
-import io.swagger.v3.oas.models.PathItem;
-import io.swagger.v3.parser.converter.SwaggerConverter;
import lombok.extern.java.Log;
-import org.springframework.beans.factory.config.BeanDefinition;
-import org.springframework.context.annotation.ClassPathScanningCandidateComponentProvider;
-import org.springframework.core.io.support.PathMatchingResourcePatternResolver;
-import org.springframework.core.type.filter.AnnotationTypeFilter;
-
-import java.io.IOException;
-import java.lang.reflect.InvocationTargetException;
-import java.util.*;
+import org.example.actions.GoogleSearchAction;
@Log
public class Main {
diff --git a/src/main/java/org/example/OpenAIActionExample.java b/src/main/java/org/example/OpenAIActionExample.java
new file mode 100644
index 0000000..00cfa9f
--- /dev/null
+++ b/src/main/java/org/example/OpenAIActionExample.java
@@ -0,0 +1,34 @@
+package org.example;
+
+import com.t4a.processor.AIProcessingException;
+import com.t4a.processor.OpenAiActionProcessor;
+import lombok.extern.java.Log;
+import org.example.actions.AddRestaurantAction;
+
+@Log
+public class OpenAIActionExample {
+ public static void main(String[] args) throws AIProcessingException {
+ OpenAiActionProcessor processor = new OpenAiActionProcessor();
+ String promptTxt ="Sachin Tendulkar is very good cricket player, " +
+ "he joined the sports on 24032022, he has played 300 matches " +
+ "and his max score is 400. Can you send him a congratulations email";
+ String response = (String)processor.processSingleAction(promptTxt);
+ response = processor.query(promptTxt,response);
+ log.info(response);
+
+
+ promptTxt = "Sachin Tendulkar is very good cricket player, \" +\n" +
+ " \"he joined the sports on 24032022, he has played 300 matches \" +\n" +
+ " \"and his max score is 400." +
+ "can you book Maharaja restaurant in " +
+ "Toronto for Sachin Tendulkar and 4 people on 12th may. Please notify him and the restaurant ";
+ response = (String)processor.processSingleAction(promptTxt);
+ log.info(response);
+
+ promptTxt ="Maharaja restaurant in \" +\n" +
+ " \"Toronto for Sachin Tendulkar and 4 people on 12th may";
+ response = (String)processor.processSingleAction(promptTxt, new AddRestaurantAction());
+ log.info(response);
+
+ }
+}
diff --git a/src/main/java/org/example/PojoExample.java b/src/main/java/org/example/PojoExample.java
index 237bb5e..9aedaf1 100644
--- a/src/main/java/org/example/PojoExample.java
+++ b/src/main/java/org/example/PojoExample.java
@@ -7,6 +7,8 @@
import com.t4a.predict.PromptTransformer;
import com.t4a.processor.AIProcessingException;
import lombok.extern.java.Log;
+import org.example.pojo.Player;
+import org.example.pojo.RestaurantPojo;
import org.example.util.DateDeserializer;
import java.util.Date;
diff --git a/src/main/java/org/example/TranslationPojoExample.java b/src/main/java/org/example/TranslationPojoExample.java
new file mode 100644
index 0000000..e1fb6f9
--- /dev/null
+++ b/src/main/java/org/example/TranslationPojoExample.java
@@ -0,0 +1,14 @@
+package org.example;
+
+import com.t4a.predict.OpenAIPromptTransformer;
+import com.t4a.processor.AIProcessingException;
+import org.example.pojo.MyTranslatePojo;
+
+public class TranslationPojoExample {
+ public static void main(String[] args) throws AIProcessingException {
+ OpenAIPromptTransformer tra = new OpenAIPromptTransformer();
+ String promptTxt = "paneer is so good";
+ MyTranslatePojo myp = (MyTranslatePojo)tra.transformIntoPojo(promptTxt,MyTranslatePojo.class.getName());
+ System.out.println(myp);
+ }
+}
diff --git a/src/main/java/org/example/AddRestaurantAction.java b/src/main/java/org/example/actions/AddRestaurantAction.java
similarity index 77%
rename from src/main/java/org/example/AddRestaurantAction.java
rename to src/main/java/org/example/actions/AddRestaurantAction.java
index 1a1467d..28f5edd 100644
--- a/src/main/java/org/example/AddRestaurantAction.java
+++ b/src/main/java/org/example/actions/AddRestaurantAction.java
@@ -1,8 +1,10 @@
-package org.example;
+package org.example.actions;
+import com.t4a.annotations.Predict;
import com.t4a.api.JavaMethodAction;
-import com.t4a.predict.Predict;
+
import lombok.extern.java.Log;
+import org.example.pojo.RestaurantPojo;
@Log
@Predict(actionName = "addRestaurantDetails",description = "saves the information in local file")
diff --git a/src/main/java/org/example/FileWriteAction.java b/src/main/java/org/example/actions/FileWriteAction.java
similarity index 95%
rename from src/main/java/org/example/FileWriteAction.java
rename to src/main/java/org/example/actions/FileWriteAction.java
index 4bd1ca5..a4b3698 100644
--- a/src/main/java/org/example/FileWriteAction.java
+++ b/src/main/java/org/example/actions/FileWriteAction.java
@@ -1,6 +1,7 @@
-package org.example;
+package org.example.actions;
+import com.t4a.annotations.Predict;
import com.t4a.api.JavaMethodAction;
-import com.t4a.predict.Predict;
+
import lombok.extern.java.Log;
import java.io.File;
diff --git a/src/main/java/org/example/GoogleSearchAction.java b/src/main/java/org/example/actions/GoogleSearchAction.java
similarity index 94%
rename from src/main/java/org/example/GoogleSearchAction.java
rename to src/main/java/org/example/actions/GoogleSearchAction.java
index 9629297..73def82 100644
--- a/src/main/java/org/example/GoogleSearchAction.java
+++ b/src/main/java/org/example/actions/GoogleSearchAction.java
@@ -1,7 +1,8 @@
-package org.example;
+package org.example.actions;
+import com.t4a.annotations.Predict;
import com.t4a.api.JavaMethodAction;
-import com.t4a.predict.Predict;
+
import com.t4a.predict.PredictionLoader;
import kong.unirest.core.HttpResponse;
import kong.unirest.core.Unirest;
diff --git a/src/main/java/org/example/NotifyPlayerAction.java b/src/main/java/org/example/actions/NotifyPlayerAction.java
similarity index 77%
rename from src/main/java/org/example/NotifyPlayerAction.java
rename to src/main/java/org/example/actions/NotifyPlayerAction.java
index 429582f..dd22ff7 100644
--- a/src/main/java/org/example/NotifyPlayerAction.java
+++ b/src/main/java/org/example/actions/NotifyPlayerAction.java
@@ -1,8 +1,10 @@
-package org.example;
+package org.example.actions;
+import com.t4a.annotations.Predict;
import com.t4a.api.JavaMethodAction;
-import com.t4a.predict.Predict;
+
import lombok.extern.java.Log;
+import org.example.pojo.Player;
@Log
@Predict(actionName = "notifyPlayer",description = "send email to player")
diff --git a/src/main/java/org/example/PlayerWithRestaurantAction.java b/src/main/java/org/example/actions/PlayerWithRestaurantAction.java
similarity index 76%
rename from src/main/java/org/example/PlayerWithRestaurantAction.java
rename to src/main/java/org/example/actions/PlayerWithRestaurantAction.java
index 5c412f5..88f5c28 100644
--- a/src/main/java/org/example/PlayerWithRestaurantAction.java
+++ b/src/main/java/org/example/actions/PlayerWithRestaurantAction.java
@@ -1,9 +1,11 @@
-package org.example;
+package org.example.actions;
+import com.t4a.annotations.Predict;
import com.t4a.api.JavaMethodAction;
-import com.t4a.api.JavaMethodAction;
-import com.t4a.predict.Predict;
+
import lombok.extern.java.Log;
+import org.example.pojo.Player;
+import org.example.pojo.RestaurantPojo;
@Log
@Predict(actionName = "notifyPlayerAndRestaurant",description = "send email to player")
diff --git a/src/main/java/org/example/SimpleAction.java b/src/main/java/org/example/actions/SimpleAction.java
similarity index 89%
rename from src/main/java/org/example/SimpleAction.java
rename to src/main/java/org/example/actions/SimpleAction.java
index aeee099..961b79c 100644
--- a/src/main/java/org/example/SimpleAction.java
+++ b/src/main/java/org/example/actions/SimpleAction.java
@@ -1,9 +1,10 @@
-package org.example;
+package org.example.actions;
+import com.t4a.annotations.Predict;
import com.t4a.api.AIAction;
import com.t4a.api.ActionType;
import com.t4a.api.JavaMethodAction;
-import com.t4a.predict.Predict;
+
@Predict(actionName ="whatFoodDoesThisPersonLike", description = "Provide persons name and then find out what does that person like")
public class SimpleAction implements JavaMethodAction {
diff --git a/src/main/java/org/example/WeatherAction.java b/src/main/java/org/example/actions/WeatherAction.java
similarity index 98%
rename from src/main/java/org/example/WeatherAction.java
rename to src/main/java/org/example/actions/WeatherAction.java
index 975b20f..43e36f2 100644
--- a/src/main/java/org/example/WeatherAction.java
+++ b/src/main/java/org/example/actions/WeatherAction.java
@@ -1,9 +1,10 @@
-package org.example;
+package org.example.actions;
+import com.t4a.annotations.Predict;
import com.t4a.api.AIAction;
import com.t4a.api.ActionType;
import com.t4a.api.JavaMethodAction;
-import com.t4a.predict.Predict;
+
import lombok.extern.java.Log;
import org.json.JSONArray;
import org.json.JSONObject;
diff --git a/src/main/java/org/example/pojo/MyTranslatePojo.java b/src/main/java/org/example/pojo/MyTranslatePojo.java
new file mode 100644
index 0000000..a7b5681
--- /dev/null
+++ b/src/main/java/org/example/pojo/MyTranslatePojo.java
@@ -0,0 +1,21 @@
+package org.example.pojo;
+
+import com.t4a.annotations.Prompt;
+import lombok.Getter;
+import lombok.NoArgsConstructor;
+import lombok.Setter;
+import lombok.ToString;
+
+@Setter
+@Getter
+@NoArgsConstructor
+@ToString
+public class MyTranslatePojo {
+ @Prompt(describe = "translate to Hindi")
+ String answerInHindi;
+ @Prompt(describe = "translate to Punjabi")
+ String answerInPunJabi;
+
+ @Prompt(describe = "translate to Tamil")
+ String answerInTamil;
+}
diff --git a/src/main/java/org/example/Player.java b/src/main/java/org/example/pojo/Player.java
similarity index 74%
rename from src/main/java/org/example/Player.java
rename to src/main/java/org/example/pojo/Player.java
index e281fed..a2c2046 100644
--- a/src/main/java/org/example/Player.java
+++ b/src/main/java/org/example/pojo/Player.java
@@ -1,5 +1,6 @@
-package org.example;
+package org.example.pojo;
+import com.t4a.annotations.Prompt;
import lombok.*;
import lombok.extern.java.Log;
@@ -16,6 +17,7 @@ public class Player {
int maxScore;
String firstName;
String lastName;
+ @Prompt(dateFormat = "ddMMyyyy")
Date dateJoined;
diff --git a/src/main/java/org/example/RestaurantDetails.java b/src/main/java/org/example/pojo/RestaurantDetails.java
similarity index 95%
rename from src/main/java/org/example/RestaurantDetails.java
rename to src/main/java/org/example/pojo/RestaurantDetails.java
index 7a26801..5071965 100644
--- a/src/main/java/org/example/RestaurantDetails.java
+++ b/src/main/java/org/example/pojo/RestaurantDetails.java
@@ -1,4 +1,4 @@
-package org.example;
+package org.example.pojo;
public class RestaurantDetails {
String name;
diff --git a/src/main/java/org/example/RestaurantPojo.java b/src/main/java/org/example/pojo/RestaurantPojo.java
similarity index 94%
rename from src/main/java/org/example/RestaurantPojo.java
rename to src/main/java/org/example/pojo/RestaurantPojo.java
index 6a08a4e..8ccaff8 100644
--- a/src/main/java/org/example/RestaurantPojo.java
+++ b/src/main/java/org/example/pojo/RestaurantPojo.java
@@ -1,4 +1,6 @@
-package org.example;
+package org.example.pojo;
+
+import org.example.pojo.RestaurantDetails;
public class RestaurantPojo {
String name;
diff --git a/src/main/java/org/example/script/actions/BookFlightAction.java b/src/main/java/org/example/script/actions/BookFlightAction.java
index c575703..dadc510 100644
--- a/src/main/java/org/example/script/actions/BookFlightAction.java
+++ b/src/main/java/org/example/script/actions/BookFlightAction.java
@@ -1,7 +1,8 @@
package org.example.script.actions;
+import com.t4a.annotations.Predict;
import com.t4a.api.JavaMethodAction;
-import com.t4a.predict.Predict;
+
@Predict(actionName = "reserveFlight", description = "book the flight for customer")
public class BookFlightAction implements JavaMethodAction {
diff --git a/src/main/java/org/example/script/actions/CheckLogsAction.java b/src/main/java/org/example/script/actions/CheckLogsAction.java
index a0bf3dc..bc3bf1e 100644
--- a/src/main/java/org/example/script/actions/CheckLogsAction.java
+++ b/src/main/java/org/example/script/actions/CheckLogsAction.java
@@ -1,7 +1,8 @@
package org.example.script.actions;
+import com.t4a.annotations.Predict;
import com.t4a.api.JavaMethodAction;
-import com.t4a.predict.Predict;
+
@Predict(actionName = "checkLogs", description = " Finds a particular text in Logs")
public class CheckLogsAction implements JavaMethodAction {
diff --git a/src/main/java/org/example/script/actions/RentalCarAction.java b/src/main/java/org/example/script/actions/RentalCarAction.java
index 7634f1c..ffa297f 100644
--- a/src/main/java/org/example/script/actions/RentalCarAction.java
+++ b/src/main/java/org/example/script/actions/RentalCarAction.java
@@ -1,7 +1,8 @@
package org.example.script.actions;
+import com.t4a.annotations.Predict;
import com.t4a.api.JavaMethodAction;
-import com.t4a.predict.Predict;
+
@Predict(actionName = "reserveRentalCar", description = "book the rental car")
public class RentalCarAction implements JavaMethodAction {
diff --git a/src/main/java/org/example/script/actions/SeleniumAction.java b/src/main/java/org/example/script/actions/SeleniumAction.java
index 4cc5253..174164e 100644
--- a/src/main/java/org/example/script/actions/SeleniumAction.java
+++ b/src/main/java/org/example/script/actions/SeleniumAction.java
@@ -1,7 +1,8 @@
package org.example.script.actions;
+import com.t4a.annotations.Predict;
import com.t4a.api.JavaMethodAction;
-import com.t4a.predict.Predict;
+
@Predict(actionName = "", description = "")
public class SeleniumAction implements JavaMethodAction {
diff --git a/src/main/java/org/example/script/actions/ServerRestartAction.java b/src/main/java/org/example/script/actions/ServerRestartAction.java
index 5aaedbe..ede43ac 100644
--- a/src/main/java/org/example/script/actions/ServerRestartAction.java
+++ b/src/main/java/org/example/script/actions/ServerRestartAction.java
@@ -1,8 +1,9 @@
package org.example.script.actions;
+import com.t4a.annotations.Predict;
import com.t4a.api.ActionRisk;
import com.t4a.api.JavaMethodAction;
-import com.t4a.predict.Predict;
+
/**
* Making the risk level as HIGH to demonstrate it cannot be called without explicit mention by Human Operator
diff --git a/src/main/java/org/example/script/actions/SightSeeingAction.java b/src/main/java/org/example/script/actions/SightSeeingAction.java
index 724524c..65a0f72 100644
--- a/src/main/java/org/example/script/actions/SightSeeingAction.java
+++ b/src/main/java/org/example/script/actions/SightSeeingAction.java
@@ -1,7 +1,8 @@
package org.example.script.actions;
+import com.t4a.annotations.Predict;
import com.t4a.api.JavaMethodAction;
-import com.t4a.predict.Predict;
+
@Predict(actionName = "reserveSightSeeing", description = "book sight seeing action")
public class SightSeeingAction implements JavaMethodAction {
diff --git a/src/main/java/org/example/script/actions/TibcoAction.java b/src/main/java/org/example/script/actions/TibcoAction.java
index c0d2c43..e9d1d47 100644
--- a/src/main/java/org/example/script/actions/TibcoAction.java
+++ b/src/main/java/org/example/script/actions/TibcoAction.java
@@ -1,7 +1,8 @@
package org.example.script.actions;
+import com.t4a.annotations.Predict;
import com.t4a.api.JavaMethodAction;
-import com.t4a.predict.Predict;
+
@Predict(actionName = "notifyApplications", description = "notify all the downstream applications")
public class TibcoAction implements JavaMethodAction {