@@ -84,52 +84,50 @@ function buildHeader(isAzureServiceProvider, apiKey) {
84
84
* @param {"simplicity" | "detailed" } polishingMode
85
85
* @param {Bob.TranslateQuery } query
86
86
* @returns {string }
87
- */
87
+ */
88
88
function generateSystemPrompt ( basePrompt , polishingMode , query ) {
89
- let systemPrompt = basePrompt || "Revise the following sentences to make them more clear, concise, and coherent." ;
90
-
91
89
const isDetailedPolishingMode = polishingMode === "detailed" ;
90
+ const languageMapping = {
91
+ "zh-Hant" : {
92
+ prompt : "潤色此句" ,
93
+ detailed : "。請列出修改項目,並簡述修改原因" ,
94
+ } ,
95
+ "zh-Hans" : {
96
+ prompt : "润色此句" ,
97
+ detailed : "。请注意要列出更改以及简要解释一下为什么这么修改" ,
98
+ } ,
99
+ "ja" : {
100
+ prompt : "この文章を装飾する" ,
101
+ detailed : "。変更点をリストアップし、なぜそのように変更したかを簡単に説明することに注意してください" ,
102
+ } ,
103
+ "ru" : {
104
+ prompt : "Переформулируйте следующие предложения, чтобы они стали более ясными, краткими и связными" ,
105
+ detailed :
106
+ ". Пожалуйста, обратите внимание на необходимость перечисления изменений и краткого объяснения причин таких изменений" ,
107
+ } ,
108
+ "wyw" : {
109
+ prompt : "润色此句古文" ,
110
+ detailed : "。请注意要列出更改以及简要解释一下为什么这么修改" ,
111
+ } ,
112
+ "yue" : {
113
+ prompt : "潤色呢句粵語" ,
114
+ detailed : "。記住要列出修改嘅內容同簡單解釋下點解要做呢啲更改" ,
115
+ } ,
116
+ } ;
117
+
118
+ const defaultMessage =
119
+ "Revise the following sentences to make them more clear, concise, and coherent." ;
120
+ let systemPrompt = basePrompt || defaultMessage ;
121
+
92
122
if ( isDetailedPolishingMode ) {
93
- systemPrompt = ` ${ systemPrompt } . Please note that you need to list the changes and briefly explain why` ;
123
+ systemPrompt += " . Please note that you need to list the changes and briefly explain why" ;
94
124
}
95
- switch ( query . detectFrom ) {
96
- case "zh-Hant" :
97
- systemPrompt = "潤色此句" ;
98
- if ( isDetailedPolishingMode ) {
99
- systemPrompt = `${ systemPrompt } 。請列出修改項目,並簡述修改原因` ;
100
- }
101
- break ;
102
- case "zh-Hans" :
103
- systemPrompt = "润色此句" ;
104
- if ( isDetailedPolishingMode ) {
105
- systemPrompt = `${ systemPrompt } 。请注意要列出更改以及简要解释一下为什么这么修改` ;
106
- }
107
- break ;
108
- case "ja" :
109
- systemPrompt = "この文章を装飾する" ;
110
- if ( isDetailedPolishingMode ) {
111
- systemPrompt = `${ systemPrompt } 。変更点をリストアップし、なぜそのように変更したかを簡単に説明することに注意してください` ;
112
- }
113
- break ;
114
- case "ru" :
115
- systemPrompt =
116
- "Переформулируйте следующие предложения, чтобы они стали более ясными, краткими и связными" ;
117
- if ( isDetailedPolishingMode ) {
118
- systemPrompt = `${ systemPrompt } . Пожалуйста, обратите внимание на необходимость перечисления изменений и краткого объяснения причин таких изменений` ;
119
- }
120
- break ;
121
- case "wyw" :
122
- systemPrompt = "润色此句古文" ;
123
- if ( isDetailedPolishingMode ) {
124
- systemPrompt = `${ systemPrompt } 。请注意要列出更改以及简要解释一下为什么这么修改` ;
125
- }
126
- break ;
127
- case "yue" :
128
- systemPrompt = "潤色呢句粵語" ;
129
- if ( isDetailedPolishingMode ) {
130
- systemPrompt = `${ systemPrompt } 。記住要列出修改嘅內容同簡單解釋下點解要做呢啲更改` ;
131
- }
132
- break ;
125
+
126
+ if ( Object . prototype . hasOwnProperty . call ( languageMapping , query . detectFrom ) ) {
127
+ systemPrompt = basePrompt || languageMapping [ query . detectFrom ] . prompt ;
128
+ if ( isDetailedPolishingMode ) {
129
+ systemPrompt += languageMapping [ query . detectFrom ] . detailed ;
130
+ }
133
131
}
134
132
135
133
return systemPrompt ;
0 commit comments