This is an automated email from the ASF dual-hosted git repository.

liuhongyu pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/shenyu.git


The following commit(s) were added to refs/heads/master by this push:
     new 15278cf6e6 [feat] add aiRequestTransformer config based on rule sql 
(#6053)
15278cf6e6 is described below

commit 15278cf6e66ec2b42023af21ba85538dbdeb64d0
Author: Yu Siheng <143899446+478...@users.noreply.github.com>
AuthorDate: Sat Aug 2 19:40:14 2025 +0800

    [feat] add aiRequestTransformer config based on rule sql (#6053)
    
    Co-authored-by: aias00 <liuhon...@apache.org>
---
 db/init/mysql/schema.sql                                  |  5 +++++
 db/init/ob/schema.sql                                     |  5 +++++
 db/init/og/create-table.sql                               |  5 +++++
 db/init/oracle/schema.sql                                 | 14 ++++++++++++++
 db/init/pg/create-table.sql                               |  5 +++++
 db/upgrade/2.7.0-upgrade-2.7.1-mysql.sql                  |  5 +++++
 db/upgrade/2.7.0-upgrade-2.7.1-ob.sql                     |  5 +++++
 db/upgrade/2.7.0-upgrade-2.7.1-og.sql                     |  5 +++++
 db/upgrade/2.7.0-upgrade-2.7.1-oracle.sql                 | 15 +++++++++++++++
 db/upgrade/2.7.0-upgrade-2.7.1-pg.sql                     |  5 +++++
 shenyu-admin/src/main/resources/sql-script/h2/schema.sql  |  7 +++++++
 .../transformer/request/AiRequestTransformerPlugin.java   |  8 ++++----
 12 files changed, 80 insertions(+), 4 deletions(-)

diff --git a/db/init/mysql/schema.sql b/db/init/mysql/schema.sql
index 3607a12779..a3e1fe85a8 100644
--- a/db/init/mysql/schema.sql
+++ b/db/init/mysql/schema.sql
@@ -1397,6 +1397,11 @@ INSERT INTO `plugin_handle` VALUES 
('1722804548510507241', '53', 'baseUrl', 'bas
 INSERT INTO `plugin_handle` VALUES ('1722804548510507242', '53', 'apiKey', 
'apiKey', 2, 3, 2, '{"required":"0","rule":""}', '2025-03-12 06:02:18.707', 
'2025-03-12 06:02:18.707');
 INSERT INTO `plugin_handle` VALUES ('1722804548510507243', '53', 'model', 
'model', 2, 3, 3, '{"required":"0","rule":""}', '2025-03-12 06:02:32.450', 
'2025-03-12 06:02:32.450');
 INSERT INTO `plugin_handle` VALUES ('1722804548510507244', '53', 'content', 
'content', 2, 3, 4, '{"required":"0","rule":""}', '2025-03-12 06:02:32.450', 
'2025-03-12 06:02:32.450');
+INSERT INTO `plugin_handle` VALUES ('1722804548510507245', '53', 'provider', 
'provider', 3, 2, 0, '{"required":"0","rule":""}', '2025-03-12 06:01:49.725', 
'2025-03-12 06:07:49.856');
+INSERT INTO `plugin_handle` VALUES ('1722804548510507246', '53', 'baseUrl', 
'baseUrl', 2, 2, 1, '{"required":"0","rule":""}', '2025-03-12 06:02:04.155', 
'2025-03-12 06:02:04.155');
+INSERT INTO `plugin_handle` VALUES ('1722804548510507247', '53', 'apiKey', 
'apiKey', 2, 2, 2, '{"required":"0","rule":""}', '2025-03-12 06:02:18.707', 
'2025-03-12 06:02:18.707');
+INSERT INTO `plugin_handle` VALUES ('1722804548510507248', '53', 'model', 
'model', 2, 2, 3, '{"required":"0","rule":""}', '2025-03-12 06:02:32.450', 
'2025-03-12 06:02:32.450');
+INSERT INTO `plugin_handle` VALUES ('1722804548510507249', '53', 'content', 
'content', 2, 2, 4, '{"required":"0","rule":""}', '2025-03-12 06:02:32.450', 
'2025-03-12 06:02:32.450');
 
 INSERT INTO `plugin_handle` VALUES ('1942847622591684608', '61', 
'messageEndpoint', 'messageEndpoint', 2, 1, 0, 
'{"required":"0","defaultValue":"/message","rule":""}', '2025-07-09 
07:25:44.249', '2025-07-09 07:25:44.249');
 
diff --git a/db/init/ob/schema.sql b/db/init/ob/schema.sql
index e1cc3ff954..1963cfe1de 100644
--- a/db/init/ob/schema.sql
+++ b/db/init/ob/schema.sql
@@ -1367,6 +1367,11 @@ INSERT INTO `plugin_handle` VALUES 
('1722804548510507241', '53', 'baseUrl', 'bas
 INSERT INTO `plugin_handle` VALUES ('1722804548510507242', '53', 'apiKey', 
'apiKey', 2, 3, 2, '{"required":"0","rule":""}', '2025-03-12 06:02:18.707', 
'2025-03-12 06:02:18.707');
 INSERT INTO `plugin_handle` VALUES ('1722804548510507243', '53', 'model', 
'model', 2, 3, 3, '{"required":"0","rule":""}', '2025-03-12 06:02:32.450', 
'2025-03-12 06:02:32.450');
 INSERT INTO `plugin_handle` VALUES ('1722804548510507244', '53', 'content', 
'content', 2, 3, 4, '{"required":"0","rule":""}', '2025-03-12 06:02:32.450', 
'2025-03-12 06:02:32.450');
+INSERT INTO `plugin_handle` VALUES ('1722804548510507245', '53', 'provider', 
'provider', 3, 2, 0, '{"required":"0","rule":""}', '2025-03-12 06:01:49.725', 
'2025-03-12 06:07:49.856');
+INSERT INTO `plugin_handle` VALUES ('1722804548510507246', '53', 'baseUrl', 
'baseUrl', 2, 2, 1, '{"required":"0","rule":""}', '2025-03-12 06:02:04.155', 
'2025-03-12 06:02:04.155');
+INSERT INTO `plugin_handle` VALUES ('1722804548510507247', '53', 'apiKey', 
'apiKey', 2, 2, 2, '{"required":"0","rule":""}', '2025-03-12 06:02:18.707', 
'2025-03-12 06:02:18.707');
+INSERT INTO `plugin_handle` VALUES ('1722804548510507248', '53', 'model', 
'model', 2, 2, 3, '{"required":"0","rule":""}', '2025-03-12 06:02:32.450', 
'2025-03-12 06:02:32.450');
+INSERT INTO `plugin_handle` VALUES ('1722804548510507249', '53', 'content', 
'content', 2, 2, 4, '{"required":"0","rule":""}', '2025-03-12 06:02:32.450', 
'2025-03-12 06:02:32.450');
 
 INSERT INTO `plugin_handle` VALUES ('1942847622591684608', '61', 
'messageEndpoint', 'messageEndpoint', 2, 1, 0, 
'{"required":"0","defaultValue":"/message","rule":""}', '2025-07-09 
07:25:44.249', '2025-07-09 07:25:44.249');
 -- ----------------------------
diff --git a/db/init/og/create-table.sql b/db/init/og/create-table.sql
index 6edcd2754f..9b6370e7f5 100644
--- a/db/init/og/create-table.sql
+++ b/db/init/og/create-table.sql
@@ -1398,6 +1398,11 @@ INSERT INTO "public"."plugin_handle" VALUES 
('1722804548510507241', '53', 'baseU
 INSERT INTO "public"."plugin_handle" VALUES ('1722804548510507242', '53', 
'apiKey', 'apiKey', 2, 3, 2, '{"required":"0","rule":""}', '2025-03-12 
06:02:18.707', '2025-03-12 06:02:18.707');
 INSERT INTO "public"."plugin_handle" VALUES ('1722804548510507243', '53', 
'model', 'model', 2, 3, 3, '{"required":"0","rule":""}', '2025-03-12 
06:02:32.450', '2025-03-12 06:02:32.450');
 INSERT INTO "public"."plugin_handle" VALUES ('1722804548510507244', '53', 
'content', 'content', 2, 3, 4, '{"required":"0","rule":""}', '2025-03-12 
06:02:32.450', '2025-03-12 06:02:32.450');
+INSERT INTO "public"."plugin_handle" VALUES ('1722804548510507245', '53', 
'provider', 'provider', 3, 2, 0, '{"required":"0","rule":""}', '2025-03-12 
06:01:49.725', '2025-03-12 06:07:49.856');
+INSERT INTO "public"."plugin_handle" VALUES ('1722804548510507246', '53', 
'baseUrl', 'baseUrl', 2, 2, 1, '{"required":"0","rule":""}', '2025-03-12 
06:02:04.155', '2025-03-12 06:02:04.155');
+INSERT INTO "public"."plugin_handle" VALUES ('1722804548510507247', '53', 
'apiKey', 'apiKey', 2, 2, 2, '{"required":"0","rule":""}', '2025-03-12 
06:02:18.707', '2025-03-12 06:02:18.707');
+INSERT INTO "public"."plugin_handle" VALUES ('1722804548510507248', '53', 
'model', 'model', 2, 2, 3, '{"required":"0","rule":""}', '2025-03-12 
06:02:32.450', '2025-03-12 06:02:32.450');
+INSERT INTO "public"."plugin_handle" VALUES ('1722804548510507249', '53', 
'content', 'content', 2, 2, 4, '{"required":"0","rule":""}', '2025-03-12 
06:02:32.450', '2025-03-12 06:02:32.450');
 
 -- ----------------------------
 -- Table structure for resource
diff --git a/db/init/oracle/schema.sql b/db/init/oracle/schema.sql
index b27f9b955c..f855db0cd7 100644
--- a/db/init/oracle/schema.sql
+++ b/db/init/oracle/schema.sql
@@ -3487,6 +3487,20 @@ VALUES ('1722804548510507243', '53', 'model', 'model', 
2, 3, 3, '{"required":"0"
 INSERT /*+ IGNORE_ROW_ON_DUPKEY_INDEX(plugin_handle(id)) */ INTO plugin_handle 
(id, plugin_id, field, label, data_type, type, sort, ext_obj, date_created, 
date_updated)
 VALUES ('1722804548510507244', '53', 'content', 'content', 2, 3, 4, 
'{"required":"0","rule":""}', sysdate, sysdate);
 
+INSERT /*+ IGNORE_ROW_ON_DUPKEY_INDEX(plugin_handle(id)) */ INTO plugin_handle 
(id, plugin_id, field, label, data_type, type, sort, ext_obj, date_created, 
date_updated)
+VALUES ('1722804548510507245', '53', 'provider', 'provider', 3, 2, 0, 
'{"required":"0","rule":""}', sysdate, sysdate);
+
+INSERT /*+ IGNORE_ROW_ON_DUPKEY_INDEX(plugin_handle(id)) */ INTO plugin_handle 
(id, plugin_id, field, label, data_type, type, sort, ext_obj, date_created, 
date_updated)
+VALUES ('1722804548510507246', '53', 'baseUrl', 'baseUrl', 2, 2, 1, 
'{required":"0","rule":""}', sysdate, sysdate);
+
+INSERT /*+ IGNORE_ROW_ON_DUPKEY_INDEX(plugin_handle(id)) */ INTO plugin_handle 
(id, plugin_id, field, label, data_type, type, sort, ext_obj, date_created, 
date_updated)
+VALUES ('1722804548510507247', '53', 'apiKey', 'apiKey', 2, 2, 2, 
'{"required":"0","rule":""}', sysdate, sysdate);
+
+INSERT /*+ IGNORE_ROW_ON_DUPKEY_INDEX(plugin_handle(id)) */ INTO plugin_handle 
(id, plugin_id, field, label, data_type, type, sort, ext_obj, date_created, 
date_updated)
+VALUES ('1722804548510507248', '53', 'model', 'model', 2, 2, 3, 
'{"required":"0","rule":""}', sysdate, sysdate);
+
+INSERT /*+ IGNORE_ROW_ON_DUPKEY_INDEX(plugin_handle(id)) */ INTO plugin_handle 
(id, plugin_id, field, label, data_type, type, sort, ext_obj, date_created, 
date_updated)
+VALUES ('1722804548510507249', '53', 'content', 'content', 2, 2, 4, 
'{"required":"0","rule":""}', sysdate, sysdate);
 
 INSERT /*+ IGNORE_ROW_ON_DUPKEY_INDEX(plugin_handle(id)) */ INTO plugin_handle 
(id, plugin_id, field, label, data_type, type, sort, ext_obj, date_created, 
date_updated)
 VALUES ('1722804548510507240', '53', 'provider', 'provider', 3, 3, 0, 
'{"required":"0","rule":""}', sysdate, sysdate);
diff --git a/db/init/pg/create-table.sql b/db/init/pg/create-table.sql
index 94f535a43c..16e06f4e63 100644
--- a/db/init/pg/create-table.sql
+++ b/db/init/pg/create-table.sql
@@ -1459,6 +1459,11 @@ INSERT INTO "public"."plugin_handle" VALUES 
('1722804548510507241', '53', 'baseU
 INSERT INTO "public"."plugin_handle" VALUES ('1722804548510507242', '53', 
'apiKey', 'apiKey', 2, 3, 2, '{"required":"0","rule":""}', '2025-03-12 
06:02:18.707', '2025-03-12 06:02:18.707');
 INSERT INTO "public"."plugin_handle" VALUES ('1722804548510507243', '53', 
'model', 'model', 2, 3, 3, '{"required":"0","rule":""}', '2025-03-12 
06:02:32.450', '2025-03-12 06:02:32.450');
 INSERT INTO "public"."plugin_handle" VALUES ('1722804548510507244', '53', 
'content', 'content', 2, 3, 4, '{"required":"0","rule":""}', '2025-03-12 
06:02:32.450', '2025-03-12 06:02:32.450');
+INSERT INTO "public"."plugin_handle" VALUES ('1722804548510507245', '53', 
'provider', 'provider', 3, 2, 0, '{"required":"0","rule":""}', '2025-03-12 
06:01:49.725', '2025-03-12 06:07:49.856');
+INSERT INTO "public"."plugin_handle" VALUES ('1722804548510507246', '53', 
'baseUrl', 'baseUrl', 2, 2, 1, '{"required":"0","rule":""}', '2025-03-12 
06:02:04.155', '2025-03-12 06:02:04.155');
+INSERT INTO "public"."plugin_handle" VALUES ('1722804548510507247', '53', 
'apiKey', 'apiKey', 2, 2, 2, '{"required":"0","rule":""}', '2025-03-12 
06:02:18.707', '2025-03-12 06:02:18.707');
+INSERT INTO "public"."plugin_handle" VALUES ('1722804548510507248', '53', 
'model', 'model', 2, 2, 3, '{"required":"0","rule":""}', '2025-03-12 
06:02:32.450', '2025-03-12 06:02:32.450');
+INSERT INTO "public"."plugin_handle" VALUES ('1722804548510507249', '53', 
'content', 'content', 2, 2, 4, '{"required":"0","rule":""}', '2025-03-12 
06:02:32.450', '2025-03-12 06:02:32.450');
 
 -- ----------------------------
 -- Table structure for resource
diff --git a/db/upgrade/2.7.0-upgrade-2.7.1-mysql.sql 
b/db/upgrade/2.7.0-upgrade-2.7.1-mysql.sql
index 9899d17c4f..99d376da10 100755
--- a/db/upgrade/2.7.0-upgrade-2.7.1-mysql.sql
+++ b/db/upgrade/2.7.0-upgrade-2.7.1-mysql.sql
@@ -179,6 +179,11 @@ INSERT INTO `plugin_handle` VALUES ('1722804548510507241', 
'53', 'baseUrl', 'bas
 INSERT INTO `plugin_handle` VALUES ('1722804548510507242', '53', 'apiKey', 
'apiKey', 2, 3, 2, '{"required":"0","rule":""}', '2025-03-12 06:02:18.707', 
'2025-03-12 06:02:18.707');
 INSERT INTO `plugin_handle` VALUES ('1722804548510507243', '53', 'model', 
'model', 2, 3, 3, '{"required":"0","rule":""}', '2025-03-12 06:02:32.450', 
'2025-03-12 06:02:32.450');
 INSERT INTO `plugin_handle` VALUES ('1722804548510507244', '53', 'content', 
'content', 2, 3, 4, '{"required":"0","rule":""}', '2025-03-12 06:02:32.450', 
'2025-03-12 06:02:32.450');
+INSERT INTO `plugin_handle` VALUES ('1722804548510507245', '53', 'provider', 
'provider', 3, 2, 0, '{"required":"0","rule":""}', '2025-03-12 06:01:49.725', 
'2025-03-12 06:07:49.856');
+INSERT INTO `plugin_handle` VALUES ('1722804548510507246', '53', 'baseUrl', 
'baseUrl', 2, 2, 1, '{"required":"0","rule":""}', '2025-03-12 06:02:04.155', 
'2025-03-12 06:02:04.155');
+INSERT INTO `plugin_handle` VALUES ('1722804548510507247', '53', 'apiKey', 
'apiKey', 2, 2, 2, '{"required":"0","rule":""}', '2025-03-12 06:02:18.707', 
'2025-03-12 06:02:18.707');
+INSERT INTO `plugin_handle` VALUES ('1722804548510507248', '53', 'model', 
'model', 2, 2, 3, '{"required":"0","rule":""}', '2025-03-12 06:02:32.450', 
'2025-03-12 06:02:32.450');
+INSERT INTO `plugin_handle` VALUES ('1722804548510507249', '53', 'content', 
'content', 2, 2, 4, '{"required":"0","rule":""}', '2025-03-12 06:02:32.450', 
'2025-03-12 06:02:32.450');
 
 INSERT INTO `resource` VALUES ('1844026099075564859', '1346775491550474240', 
'aiRequestTransformer', 'aiRequestTransformer', '/plug/aiRequestTransformer', 
'aiRequestTransformer', 1, 0, 'pic-center', 0, 0, '', 1, '2022-05-25 18:02:58', 
'2022-05-25 18:02:58');
 INSERT INTO `resource` VALUES ('1844026099075564860', '1844026099075564859', 
'SHENYU.BUTTON.PLUGIN.SELECTOR.ADD', '', '', '', 2, 0, '', 1, 0, 
'plugin:aiRequestTransformerSelector:add', 1, '2022-05-25 18:02:58', 
'2022-05-25 18:02:58');
diff --git a/db/upgrade/2.7.0-upgrade-2.7.1-ob.sql 
b/db/upgrade/2.7.0-upgrade-2.7.1-ob.sql
index 883f755f50..271a8cfe3d 100755
--- a/db/upgrade/2.7.0-upgrade-2.7.1-ob.sql
+++ b/db/upgrade/2.7.0-upgrade-2.7.1-ob.sql
@@ -174,6 +174,11 @@ INSERT INTO `plugin_handle` VALUES ('1722804548510507241', 
'53', 'baseUrl', 'bas
 INSERT INTO `plugin_handle` VALUES ('1722804548510507242', '53', 'apiKey', 
'apiKey', 2, 3, 2, '{"required":"0","rule":""}', '2025-03-12 06:02:18.707', 
'2025-03-12 06:02:18.707');
 INSERT INTO `plugin_handle` VALUES ('1722804548510507243', '53', 'model', 
'model', 2, 3, 3, '{"required":"0","rule":""}', '2025-03-12 06:02:32.450', 
'2025-03-12 06:02:32.450');
 INSERT INTO `plugin_handle` VALUES ('1722804548510507244', '53', 'content', 
'content', 2, 3, 4, '{"required":"0","rule":""}', '2025-03-12 06:02:32.450', 
'2025-03-12 06:02:32.450');
+INSERT INTO `plugin_handle` VALUES ('1722804548510507245', '53', 'provider', 
'provider', 3, 2, 0, '{"required":"0","rule":""}', '2025-03-12 06:01:49.725', 
'2025-03-12 06:07:49.856');
+INSERT INTO `plugin_handle` VALUES ('1722804548510507246', '53', 'baseUrl', 
'baseUrl', 2, 2, 1, '{"required":"0","rule":""}', '2025-03-12 06:02:04.155', 
'2025-03-12 06:02:04.155');
+INSERT INTO `plugin_handle` VALUES ('1722804548510507247', '53', 'apiKey', 
'apiKey', 2, 2, 2, '{"required":"0","rule":""}', '2025-03-12 06:02:18.707', 
'2025-03-12 06:02:18.707');
+INSERT INTO `plugin_handle` VALUES ('1722804548510507248', '53', 'model', 
'model', 2, 2, 3, '{"required":"0","rule":""}', '2025-03-12 06:02:32.450', 
'2025-03-12 06:02:32.450');
+INSERT INTO `plugin_handle` VALUES ('1722804548510507249', '53', 'content', 
'content', 2, 2, 4, '{"required":"0","rule":""}', '2025-03-12 06:02:32.450', 
'2025-03-12 06:02:32.450');
 
 INSERT INTO `resource` VALUES ('1844026099075564859', '1346775491550474240', 
'aiRequestTransformer', 'aiRequestTransformer', '/plug/aiRequestTransformer', 
'aiRequestTransformer', 1, 0, 'pic-center', 0, 0, '', 1, '2022-05-25 18:02:58', 
'2022-05-25 18:02:58');
 INSERT INTO `resource` VALUES ('1844026099075564860', '1844026099075564859', 
'SHENYU.BUTTON.PLUGIN.SELECTOR.ADD', '', '', '', 2, 0, '', 1, 0, 
'plugin:aiRequestTransformerSelector:add', 1, '2022-05-25 18:02:58', 
'2022-05-25 18:02:58');
diff --git a/db/upgrade/2.7.0-upgrade-2.7.1-og.sql 
b/db/upgrade/2.7.0-upgrade-2.7.1-og.sql
index ee73a2443c..4f6cf7a2ff 100644
--- a/db/upgrade/2.7.0-upgrade-2.7.1-og.sql
+++ b/db/upgrade/2.7.0-upgrade-2.7.1-og.sql
@@ -188,6 +188,11 @@ INSERT INTO "public"."plugin_handle" VALUES 
('1722804548510507241', '53', 'baseU
 INSERT INTO "public"."plugin_handle" VALUES ('1722804548510507242', '53', 
'apiKey', 'apiKey', 2, 3, 2, '{"required":"0","rule":""}', '2025-03-12 
06:02:18.707', '2025-03-12 06:02:18.707');
 INSERT INTO "public"."plugin_handle" VALUES ('1722804548510507243', '53', 
'model', 'model', 2, 3, 3, '{"required":"0","rule":""}', '2025-03-12 
06:02:32.450', '2025-03-12 06:02:32.450');
 INSERT INTO "public"."plugin_handle" VALUES ('1722804548510507244', '53', 
'content', 'content', 2, 3, 4, '{"required":"0","rule":""}', '2025-03-12 
06:02:32.450', '2025-03-12 06:02:32.450');
+INSERT INTO "public"."plugin_handle" VALUES ('1722804548510507245', '53', 
'provider', 'provider', 3, 2, 0, '{"required":"0","rule":""}', '2025-03-12 
06:01:49.725', '2025-03-12 06:07:49.856');
+INSERT INTO "public"."plugin_handle" VALUES ('1722804548510507246', '53', 
'baseUrl', 'baseUrl', 2, 2, 1, '{"required":"0","rule":""}', '2025-03-12 
06:02:04.155', '2025-03-12 06:02:04.155');
+INSERT INTO "public"."plugin_handle" VALUES ('1722804548510507247', '53', 
'apiKey', 'apiKey', 2, 2, 2, '{"required":"0","rule":""}', '2025-03-12 
06:02:18.707', '2025-03-12 06:02:18.707');
+INSERT INTO "public"."plugin_handle" VALUES ('1722804548510507248', '53', 
'model', 'model', 2, 2, 3, '{"required":"0","rule":""}', '2025-03-12 
06:02:32.450', '2025-03-12 06:02:32.450');
+INSERT INTO "public"."plugin_handle" VALUES ('1722804548510507249', '53', 
'content', 'content', 2, 2, 4, '{"required":"0","rule":""}', '2025-03-12 
06:02:32.450', '2025-03-12 06:02:32.450');
 
 INSERT INTO "public"."resource" VALUES ('1844026099075564859', 
'1346775491550474240', 'aiRequestTransformer', 'aiRequestTransformer', 
'/plug/aiRequestTransformer', 'aiRequestTransformer', 1, 0, 'pic-center', 0, 0, 
'', 1, '2022-05-25 18:02:58', '2022-05-25 18:02:58');
 INSERT INTO "public"."resource" VALUES ('1844026099075564860', 
'1844026099075564859', 'SHENYU.BUTTON.PLUGIN.SELECTOR.ADD', '', '', '', 2, 0, 
'', 1, 0, 'plugin:aiRequestTransformerSelector:add', 1, '2022-05-25 18:02:58', 
'2022-05-25 18:02:58');
diff --git a/db/upgrade/2.7.0-upgrade-2.7.1-oracle.sql 
b/db/upgrade/2.7.0-upgrade-2.7.1-oracle.sql
index 785506a6cc..704193cae0 100755
--- a/db/upgrade/2.7.0-upgrade-2.7.1-oracle.sql
+++ b/db/upgrade/2.7.0-upgrade-2.7.1-oracle.sql
@@ -467,6 +467,21 @@ VALUES ('1722804548510507243', '53', 'model', 'model', 2, 
3, 3, '{"required":"0"
 INSERT /*+ IGNORE_ROW_ON_DUPKEY_INDEX(plugin_handle(id)) */ INTO plugin_handle 
(id, plugin_id, field, label, data_type, type, sort, ext_obj, date_created, 
date_updated)
 VALUES ('1722804548510507244', '53', 'content', 'content', 2, 3, 4, 
'{"required":"0","rule":""}', sysdate, sysdate);
 
+INSERT /*+ IGNORE_ROW_ON_DUPKEY_INDEX(plugin_handle(id)) */ INTO plugin_handle 
(id, plugin_id, field, label, data_type, type, sort, ext_obj, date_created, 
date_updated)
+VALUES ('1722804548510507245', '53', 'provider', 'provider', 3, 2, 0, 
'{"required":"0","rule":""}', sysdate, sysdate);
+
+INSERT /*+ IGNORE_ROW_ON_DUPKEY_INDEX(plugin_handle(id)) */ INTO plugin_handle 
(id, plugin_id, field, label, data_type, type, sort, ext_obj, date_created, 
date_updated)
+VALUES ('1722804548510507246', '53', 'baseUrl', 'baseUrl', 2, 2, 1, 
'{required":"0","rule":""}', sysdate, sysdate);
+
+INSERT /*+ IGNORE_ROW_ON_DUPKEY_INDEX(plugin_handle(id)) */ INTO plugin_handle 
(id, plugin_id, field, label, data_type, type, sort, ext_obj, date_created, 
date_updated)
+VALUES ('1722804548510507247', '53', 'apiKey', 'apiKey', 2, 2, 2, 
'{"required":"0","rule":""}', sysdate, sysdate);
+
+INSERT /*+ IGNORE_ROW_ON_DUPKEY_INDEX(plugin_handle(id)) */ INTO plugin_handle 
(id, plugin_id, field, label, data_type, type, sort, ext_obj, date_created, 
date_updated)
+VALUES ('1722804548510507248', '53', 'model', 'model', 2, 2, 3, 
'{"required":"0","rule":""}', sysdate, sysdate);
+
+INSERT /*+ IGNORE_ROW_ON_DUPKEY_INDEX(plugin_handle(id)) */ INTO plugin_handle 
(id, plugin_id, field, label, data_type, type, sort, ext_obj, date_created, 
date_updated)
+VALUES ('1722804548510507249', '53', 'content', 'content', 2, 2, 4, 
'{"required":"0","rule":""}', sysdate, sysdate);
+
 delete from plugin_handle where plugin_id = '8';
 
 INSERT /*+ IGNORE_ROW_ON_DUPKEY_INDEX(plugin(id)) */ INTO plugin (id, name, 
ext_obj, type, sort, enabled, date_created, date_updated)
diff --git a/db/upgrade/2.7.0-upgrade-2.7.1-pg.sql 
b/db/upgrade/2.7.0-upgrade-2.7.1-pg.sql
index fb33333a2f..c7c06386f0 100755
--- a/db/upgrade/2.7.0-upgrade-2.7.1-pg.sql
+++ b/db/upgrade/2.7.0-upgrade-2.7.1-pg.sql
@@ -188,6 +188,11 @@ INSERT INTO "public"."plugin_handle" VALUES 
('1722804548510507241', '53', 'baseU
 INSERT INTO "public"."plugin_handle" VALUES ('1722804548510507242', '53', 
'apiKey', 'apiKey', 2, 3, 2, '{"required":"0","rule":""}', '2025-03-12 
06:02:18.707', '2025-03-12 06:02:18.707');
 INSERT INTO "public"."plugin_handle" VALUES ('1722804548510507243', '53', 
'model', 'model', 2, 3, 3, '{"required":"0","rule":""}', '2025-03-12 
06:02:32.450', '2025-03-12 06:02:32.450');
 INSERT INTO "public"."plugin_handle" VALUES ('1722804548510507244', '53', 
'content', 'content', 2, 3, 4, '{"required":"0","rule":""}', '2025-03-12 
06:02:32.450', '2025-03-12 06:02:32.450');
+INSERT INTO "public"."plugin_handle" VALUES ('1722804548510507245', '53', 
'provider', 'provider', 3, 2, 0, '{"required":"0","rule":""}', '2025-03-12 
06:01:49.725', '2025-03-12 06:07:49.856');
+INSERT INTO "public"."plugin_handle" VALUES ('1722804548510507246', '53', 
'baseUrl', 'baseUrl', 2, 2, 1, '{"required":"0","rule":""}', '2025-03-12 
06:02:04.155', '2025-03-12 06:02:04.155');
+INSERT INTO "public"."plugin_handle" VALUES ('1722804548510507247', '53', 
'apiKey', 'apiKey', 2, 2, 2, '{"required":"0","rule":""}', '2025-03-12 
06:02:18.707', '2025-03-12 06:02:18.707');
+INSERT INTO "public"."plugin_handle" VALUES ('1722804548510507248', '53', 
'model', 'model', 2, 2, 3, '{"required":"0","rule":""}', '2025-03-12 
06:02:32.450', '2025-03-12 06:02:32.450');
+INSERT INTO "public"."plugin_handle" VALUES ('1722804548510507249', '53', 
'content', 'content', 2, 2, 4, '{"required":"0","rule":""}', '2025-03-12 
06:02:32.450', '2025-03-12 06:02:32.450');
 
 INSERT INTO "public"."resource" VALUES ('1844026099075564859', 
'1346775491550474240', 'aiRequestTransformer', 'aiRequestTransformer', 
'/plug/aiRequestTransformer', 'aiRequestTransformer', 1, 0, 'pic-center', 0, 0, 
'', 1, '2022-05-25 18:02:58', '2022-05-25 18:02:58');
 INSERT INTO "public"."resource" VALUES ('1844026099075564860', 
'1844026099075564859', 'SHENYU.BUTTON.PLUGIN.SELECTOR.ADD', '', '', '', 2, 0, 
'', 1, 0, 'plugin:aiRequestTransformerSelector:add', 1, '2022-05-25 18:02:58', 
'2022-05-25 18:02:58');
diff --git a/shenyu-admin/src/main/resources/sql-script/h2/schema.sql 
b/shenyu-admin/src/main/resources/sql-script/h2/schema.sql
index f85722584c..0551ffce16 100644
--- a/shenyu-admin/src/main/resources/sql-script/h2/schema.sql
+++ b/shenyu-admin/src/main/resources/sql-script/h2/schema.sql
@@ -989,6 +989,13 @@ INSERT IGNORE INTO plugin_handle (`id`, 
`plugin_id`,`field`,`label`,`data_type`,
 INSERT IGNORE INTO plugin_handle (`id`, 
`plugin_id`,`field`,`label`,`data_type`,`type`,`sort`,`ext_obj`) VALUES 
('1722804548510507242', '53', 'apiKey', 'apiKey', 2, 3, 2, 
'{"required":"0","rule":""}');
 INSERT IGNORE INTO plugin_handle (`id`, 
`plugin_id`,`field`,`label`,`data_type`,`type`,`sort`,`ext_obj`) VALUES 
('1722804548510507243', '53', 'model', 'model', 2, 3, 3, 
'{"required":"0","rule":""}');
 INSERT IGNORE INTO plugin_handle (`id`, 
`plugin_id`,`field`,`label`,`data_type`,`type`,`sort`,`ext_obj`) VALUES 
('1722804548510507244', '53', 'content', 'content', 2, 3, 4, 
'{"required":"0","rule":""}');
+
+INSERT IGNORE INTO plugin_handle (`id`, 
`plugin_id`,`field`,`label`,`data_type`,`type`,`sort`,`ext_obj`) VALUES 
('1722804548510507245', '53', 'provider', 'provider', 3, 2, 0, 
'{"required":"0","rule":""}');
+INSERT IGNORE INTO plugin_handle (`id`, 
`plugin_id`,`field`,`label`,`data_type`,`type`,`sort`,`ext_obj`) VALUES 
('1722804548510507246', '53', 'baseUrl', 'baseUrl', 2, 2, 1, 
'{"required":"0","rule":""}');
+INSERT IGNORE INTO plugin_handle (`id`, 
`plugin_id`,`field`,`label`,`data_type`,`type`,`sort`,`ext_obj`) VALUES 
('1722804548510507247', '53', 'apiKey', 'apiKey', 2, 2, 2, 
'{"required":"0","rule":""}');
+INSERT IGNORE INTO plugin_handle (`id`, 
`plugin_id`,`field`,`label`,`data_type`,`type`,`sort`,`ext_obj`) VALUES 
('1722804548510507248', '53', 'model', 'model', 2, 2, 3, 
'{"required":"0","rule":""}');
+INSERT IGNORE INTO plugin_handle (`id`, 
`plugin_id`,`field`,`label`,`data_type`,`type`,`sort`,`ext_obj`) VALUES 
('1722804548510507249', '53', 'content', 'content', 2, 2, 4, 
'{"required":"0","rule":""}');
+
 /** insert resource for resource */
 INSERT IGNORE INTO `resource` (`id`, `parent_id`, `title`, `name`, `url`, 
`component`, `resource_type`, `sort`, `icon`, `is_leaf`, `is_route`, `perms`, 
`status`) 
VALUES('1346775491550474240','','SHENYU.MENU.PLUGIN.LIST','plug','/plug','PluginList','0','0','dashboard','0','0','','1');
 
diff --git 
a/shenyu-plugin/shenyu-plugin-ai/shenyu-plugin-ai-request-transformer/src/main/java/org/apache/shenyu/plugin/ai/transformer/request/AiRequestTransformerPlugin.java
 
b/shenyu-plugin/shenyu-plugin-ai/shenyu-plugin-ai-request-transformer/src/main/java/org/apache/shenyu/plugin/ai/transformer/request/AiRequestTransformerPlugin.java
index 8232f7c4ed..7ba8480c4e 100644
--- 
a/shenyu-plugin/shenyu-plugin-ai/shenyu-plugin-ai-request-transformer/src/main/java/org/apache/shenyu/plugin/ai/transformer/request/AiRequestTransformerPlugin.java
+++ 
b/shenyu-plugin/shenyu-plugin-ai/shenyu-plugin-ai-request-transformer/src/main/java/org/apache/shenyu/plugin/ai/transformer/request/AiRequestTransformerPlugin.java
@@ -84,6 +84,7 @@ public class AiRequestTransformerPlugin extends 
AbstractShenyuPlugin {
         ChatClient client = ChatClientCache.getInstance().getClient("default");
         // Create final config with rule handle taking precedence
         if (Objects.nonNull(aiRequestTransformerHandle)) {
+            aiRequestTransformerConfig = new AiRequestTransformerConfig();
             
Optional.ofNullable(aiRequestTransformerHandle.getProvider()).ifPresent(aiRequestTransformerConfig::setProvider);
             
Optional.ofNullable(aiRequestTransformerHandle.getBaseUrl()).ifPresent(aiRequestTransformerConfig::setBaseUrl);
             
Optional.ofNullable(aiRequestTransformerHandle.getApiKey()).ifPresent(aiRequestTransformerConfig::setApiKey);
@@ -105,11 +106,10 @@ public class AiRequestTransformerPlugin extends 
AbstractShenyuPlugin {
             return chain.execute(exchange);
         }
 
-        ChatModel aiModel = aiModelFactoryRegistry
-                .getFactory(AiModelProviderEnum.getByName(provider))
-                
.createAiModel(AiRequestTransformerPluginHandler.convertConfig(aiRequestTransformerConfig));
-
         if (Objects.isNull(client)) {
+            ChatModel aiModel = aiModelFactoryRegistry
+                    .getFactory(AiModelProviderEnum.getByName(provider))
+                    
.createAiModel(AiRequestTransformerPluginHandler.convertConfig(aiRequestTransformerConfig));
             client = ChatClientCache.getInstance().init(rule.getId(), aiModel);
         }
 

Reply via email to