generaltranslation 1.1.19 → 1.1.21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/index.js +12 -7
- package/models/models.js +45 -1
- package/package.json +1 -1
- package/translate/translate.js +3 -3
package/README.md
CHANGED
|
@@ -102,7 +102,7 @@ const gt = new GT({
|
|
|
102
102
|
});
|
|
103
103
|
```
|
|
104
104
|
|
|
105
|
-
### async getPrompt(prompt,
|
|
105
|
+
### async getPrompt(prompt, language)
|
|
106
106
|
|
|
107
107
|
Translates prompt into the language represented by an ISO-639 language code. Designed for translating prompts into other languages, to internationalize responses from AI models.
|
|
108
108
|
|
package/index.js
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
// ----- IMPORTS ----- //
|
|
5
5
|
|
|
6
6
|
const { _getLanguageName, _getLanguageCode } = require('./codes/codes.js');
|
|
7
|
-
const { _getModelList, _getModelInfo, _getModelLanguages, _isLanguageSupported } = require('./models/models.js');
|
|
7
|
+
const { _getModelList, _getModelInfo, _getAllModelInfo, _getModelLanguages, _isLanguageSupported, _getModelsByDeveloper, _getModelsByLanguage, } = require('./models/models.js');
|
|
8
8
|
const { _translate } = require('./translate/translate.js');
|
|
9
9
|
|
|
10
10
|
// ----- CORE CLASS ----- //
|
|
@@ -26,18 +26,20 @@ class GT {
|
|
|
26
26
|
// Model information functions
|
|
27
27
|
getModelList = _getModelList; // returns array of supported model names
|
|
28
28
|
getModelInfo = _getModelInfo; // returns model object
|
|
29
|
+
getAllModelInfo = _getAllModelInfo; // returns all info on all models
|
|
29
30
|
getModelLanguages = _getModelLanguages; // e.g. 'mistral-7b' => ['en']
|
|
30
31
|
isLanguageSupported = _isLanguageSupported; // e.g. ('mistral-7b', 'en') => true
|
|
32
|
+
getModelsByLanguage = _getModelsByLanguage; // returns array of model names
|
|
33
|
+
getModelsByDeveloper = _getModelsByDeveloper; // returns array of model names
|
|
31
34
|
|
|
32
35
|
// Prompt internationalization
|
|
33
|
-
getPrompt = async (prompt,
|
|
34
|
-
return await _translate(prompt,
|
|
36
|
+
getPrompt = async (prompt, language) => {
|
|
37
|
+
return await _translate(prompt, language, this.defaultLanguage, this.apiKey);
|
|
35
38
|
}
|
|
36
39
|
// Translation (same as prompt internationalization)
|
|
37
|
-
translate = async (content,
|
|
38
|
-
return await _translate(content,
|
|
40
|
+
translate = async (content, language) => {
|
|
41
|
+
return await _translate(content, language, this.defaultLanguage, this.apiKey);
|
|
39
42
|
}
|
|
40
|
-
|
|
41
43
|
|
|
42
44
|
}
|
|
43
45
|
|
|
@@ -48,5 +50,8 @@ module.exports.getLanguageCode = _getLanguageCode;
|
|
|
48
50
|
module.exports.getLanguageName = _getLanguageName;
|
|
49
51
|
module.exports.getModelList = _getModelList;
|
|
50
52
|
module.exports.getModelInfo = _getModelInfo;
|
|
53
|
+
module.exports.getAllModelInfo = _getAllModelInfo;
|
|
51
54
|
module.exports.getModelLanguages = _getModelLanguages;
|
|
52
|
-
module.exports.isLanguageSupported = _isLanguageSupported;
|
|
55
|
+
module.exports.isLanguageSupported = _isLanguageSupported;
|
|
56
|
+
module.exports.getModelsByDeveloper = _getModelsByDeveloper;
|
|
57
|
+
module.exports.getModelsByLanguage = _getModelsByLanguage;
|
package/models/models.js
CHANGED
|
@@ -1,5 +1,46 @@
|
|
|
1
1
|
// ----- MODEL INFORMATION ----- //
|
|
2
2
|
|
|
3
|
+
// Get all info on all models
|
|
4
|
+
const _getAllModelInfo = async () => {
|
|
5
|
+
try {
|
|
6
|
+
const result = await fetch(`https://models.gtx.dev/all`);
|
|
7
|
+
return await result.json();
|
|
8
|
+
} catch (error) {
|
|
9
|
+
console.error(error)
|
|
10
|
+
return null;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
|
|
14
|
+
// Get all models by a given developer
|
|
15
|
+
// Returns an empty array if none
|
|
16
|
+
const _getModelsByDeveloper = async developer => {
|
|
17
|
+
if (!developer) return null;
|
|
18
|
+
developer = developer?.toLowerCase();
|
|
19
|
+
try {
|
|
20
|
+
const result = await fetch(`https://models.gtx.dev/developer/${developer}`);
|
|
21
|
+
const models = await result.json();
|
|
22
|
+
return models;
|
|
23
|
+
} catch (error) {
|
|
24
|
+
console.error(error)
|
|
25
|
+
return [];
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
// Get all models certified for a given language
|
|
30
|
+
// Returns an empty array if none
|
|
31
|
+
const _getModelsByLanguage = async language => {
|
|
32
|
+
if (!language) return null;
|
|
33
|
+
language = language?.toLowerCase();
|
|
34
|
+
try {
|
|
35
|
+
const result = await fetch(`https://models.gtx.dev/language/${language}`);
|
|
36
|
+
const models = await result.json();
|
|
37
|
+
return models;
|
|
38
|
+
} catch (error) {
|
|
39
|
+
console.error(error)
|
|
40
|
+
return [];
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
|
|
3
44
|
// Get all models
|
|
4
45
|
// Returns an array of model names
|
|
5
46
|
const _getModelList = async () => {
|
|
@@ -47,5 +88,8 @@ module.exports = {
|
|
|
47
88
|
_getModelList,
|
|
48
89
|
_getModelInfo,
|
|
49
90
|
_getModelLanguages,
|
|
50
|
-
_isLanguageSupported
|
|
91
|
+
_isLanguageSupported,
|
|
92
|
+
_getModelsByDeveloper,
|
|
93
|
+
_getModelsByLanguage,
|
|
94
|
+
_getAllModelInfo
|
|
51
95
|
}
|
package/package.json
CHANGED
package/translate/translate.js
CHANGED
|
@@ -64,11 +64,11 @@ const _constructContent = ({ content, untranslated = null}) => {
|
|
|
64
64
|
|
|
65
65
|
// Get a translation via General Translation API
|
|
66
66
|
// Returns string
|
|
67
|
-
const _translate = async (content,
|
|
67
|
+
const _translate = async (content, language, defaultLanguage, apiKey) => {
|
|
68
68
|
if (!apiKey) {
|
|
69
69
|
throw new Error('Missing API Key!')
|
|
70
70
|
}
|
|
71
|
-
if (
|
|
71
|
+
if (language === defaultLanguage) {
|
|
72
72
|
return _constructContent({ content: content });
|
|
73
73
|
}
|
|
74
74
|
const { processed, untranslated } = _processContent(content);
|
|
@@ -81,7 +81,7 @@ const _translate = async (content, code, defaultLanguage, apiKey) => {
|
|
|
81
81
|
},
|
|
82
82
|
body: JSON.stringify({
|
|
83
83
|
content: processed,
|
|
84
|
-
targetLanguage:
|
|
84
|
+
targetLanguage: language,
|
|
85
85
|
defaultLanguage: defaultLanguage
|
|
86
86
|
})
|
|
87
87
|
})
|