66import okhttp3 .Request ;
77import org .apache .commons .lang3 .StringUtils ;
88import org .devlive .sdk .openai .exception .ParamException ;
9+ import org .devlive .sdk .openai .model .CompletionModel ;
10+ import org .devlive .sdk .openai .utils .EnumsUtils ;
911import org .devlive .sdk .openai .utils .HttpUrlUtils ;
1012
1113import java .util .List ;
@@ -29,7 +31,7 @@ protected Request prepared(Request original)
2931 List <String > pathSegments = Lists .newArrayList ();
3032 httpUrl = HttpUrlUtils .removePathSegment (httpUrl );
3133 // https://generativelanguage.googleapis.com/v1beta2/models/text-bison-001:generateText?key=YOUR_KEY
32- pathSegments .add (0 , String .join (":" , this .getModel (), "generateText" ));
34+ pathSegments .add (0 , String .join (":" , this .getModel (), this . getModelType () ));
3335 pathSegments .add (0 , "models" );
3436 pathSegments .add (0 , "v1beta2" );
3537 httpUrl = httpUrl .newBuilder ()
@@ -45,4 +47,22 @@ protected Request prepared(Request original)
4547 .method (original .method (), original .body ())
4648 .build ();
4749 }
50+
51+ /**
52+ * Retrieves the model type based on the current model value.
53+ *
54+ * @return the model type as a string
55+ */
56+ private String getModelType ()
57+ {
58+ CompletionModel model = EnumsUtils .getCompleteModel (this .getModel ());
59+ switch (model ) {
60+ case TEXT_BISON_001 :
61+ return "generateText" ;
62+ case CHAT_BISON_001 :
63+ return "generateMessage" ;
64+ default :
65+ throw new ParamException ("Unsupported Google PaLM model" );
66+ }
67+ }
4868}
0 commit comments