anylang
Version:
A translator's kit that uses the free APIs of Google Translate, Yandex, Bing, ChatGPT, and other LLMs
41 lines (39 loc) • 6.93 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.ChatGPTLLMTranslator = void 0;
var _LLMTranslator = require("../LLMTranslator");
var _ChatGPTLLMFetcher = require("./ChatGPTLLMFetcher");
class ChatGPTLLMTranslator extends _LLMTranslator.LLMTranslator {
constructor(config) {
var _a, _b, _c, _d;
const llm = new _ChatGPTLLMFetcher.ChatGPTLLMFetcher({
apiKey: config.apiKey,
model: config.model,
apiOrigin: config.apiOrigin
});
super(llm, {
getPrompt: config.getPrompt,
retryOptions: {
retryLimit: (_a = config.retryOptions) === null || _a === void 0 ? void 0 : _a.retryLimit,
retryTimeout: (_b = config.retryOptions) === null || _b === void 0 ? void 0 : _b.retryTimeout,
maxRetryTimeout: (_c = config.retryOptions) === null || _c === void 0 ? void 0 : _c.maxRetryTimeout,
retryBackoffFactor: (_d = config.retryOptions) === null || _d === void 0 ? void 0 : _d.retryBackoffFactor
}
});
}
}
exports.ChatGPTLLMTranslator = ChatGPTLLMTranslator;
ChatGPTLLMTranslator.translatorName = 'ChatGPTLLMTranslator';
ChatGPTLLMTranslator.isRequiredKey = () => true;
ChatGPTLLMTranslator.isSupportedAutoFrom = () => true;
// ChatGPT docs don’t list supported languages for text models, we can use the list for text-to-speech instead
// source: https://platform.openai.com/docs/guides/text-to-speech#supported-languages
ChatGPTLLMTranslator.getSupportedLanguages = () => {
// eslint-disable
// prettier-ignore
return ["ar", "bn", "bg", "zh", "hr", "cs", "da", "nl", "en", "et", "fa", "fi", "fr", "de", "el", "gu", "he", "hi", "hu", "id", "it", "ja", "kn", "ko", "lv", "lt", "ml", "mr", "no", "pl", "pt", "ro", "ru", "sr", "sk", "sl", "es", "sw", "sv", "ta", "te", "th", "tr", "uk", "ur", "vi"];
// eslint-enable
};
//# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRvcnMvTExNVHJhbnNsYXRvcnMvQ2hhdEdQVExMTVRyYW5zbGF0b3IvaW5kZXguanMiLCJuYW1lcyI6WyJfTExNVHJhbnNsYXRvciIsInJlcXVpcmUiLCJfQ2hhdEdQVExMTUZldGNoZXIiLCJDaGF0R1BUTExNVHJhbnNsYXRvciIsIkxMTVRyYW5zbGF0b3IiLCJjb25zdHJ1Y3RvciIsImNvbmZpZyIsImxsbSIsIkNoYXRHUFRMTE1GZXRjaGVyIiwiYXBpS2V5IiwibW9kZWwiLCJhcGlPcmlnaW4iLCJnZXRQcm9tcHQiLCJyZXRyeU9wdGlvbnMiLCJyZXRyeUxpbWl0IiwiX2EiLCJyZXRyeVRpbWVvdXQiLCJfYiIsIm1heFJldHJ5VGltZW91dCIsIl9jIiwicmV0cnlCYWNrb2ZmRmFjdG9yIiwiX2QiLCJ0cmFuc2xhdG9yTmFtZSIsImlzUmVxdWlyZWRLZXkiLCJpc1N1cHBvcnRlZEF1dG9Gcm9tIiwiZ2V0U3VwcG9ydGVkTGFuZ3VhZ2VzIl0sInNvdXJjZXMiOlsidHJhbnNsYXRvcnMvTExNVHJhbnNsYXRvcnMvQ2hhdEdQVExMTVRyYW5zbGF0b3IvaW5kZXgudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHtcblx0TExNVHJhbnNsYXRvcixcblx0TExNVHJhbnNsYXRvclJldHJ5T3B0aW9ucyxcblx0UHJvbXB0R2VuZXJhdG9yLFxufSBmcm9tICcuLi9MTE1UcmFuc2xhdG9yJztcbmltcG9ydCB7IENoYXRHUFRMTE1GZXRjaGVyIH0gZnJvbSAnLi9DaGF0R1BUTExNRmV0Y2hlcic7XG5cbmV4cG9ydCBjbGFzcyBDaGF0R1BUTExNVHJhbnNsYXRvciBleHRlbmRzIExMTVRyYW5zbGF0b3Ige1xuXHRjb25zdHJ1Y3Rvcihjb25maWc6IHtcblx0XHRhcGlLZXk6IHN0cmluZztcblx0XHRtb2RlbD86IHN0cmluZztcblx0XHRnZXRQcm9tcHQ/OiBQcm9tcHRHZW5lcmF0b3I7XG5cdFx0YXBpT3JpZ2luPzogc3RyaW5nO1xuXHRcdHJldHJ5T3B0aW9ucz86IExMTVRyYW5zbGF0b3JSZXRyeU9wdGlvbnM7XG5cdH0pIHtcblx0XHRjb25zdCBsbG0gPSBuZXcgQ2hhdEdQVExMTUZldGNoZXIoe1xuXHRcdFx0YXBpS2V5OiBjb25maWcuYXBpS2V5LFxuXHRcdFx0bW9kZWw6IGNvbmZpZy5tb2RlbCxcblx0XHRcdGFwaU9yaWdpbjogY29uZmlnLmFwaU9yaWdpbixcblx0XHR9KTtcblx0XHRzdXBlcihsbG0sIHtcblx0XHRcdGdldFByb21wdDogY29uZmlnLmdldFByb21wdCxcblx0XHRcdHJldHJ5T3B0aW9uczoge1xuXHRcdFx0XHRyZXRyeUxpbWl0OiBjb25maWcucmV0cnlPcHRpb25zPy5yZXRyeUxpbWl0LFxuXHRcdFx0XHRyZXRyeVRpbWVvdXQ6IGNvbmZpZy5yZXRyeU9wdGlvbnM/LnJldHJ5VGltZW91dCxcblx0XHRcdFx0bWF4UmV0cnlUaW1lb3V0OiBjb25maWcucmV0cnlPcHRpb25zPy5tYXhSZXRyeVRpbWVvdXQsXG5cdFx0XHRcdHJldHJ5QmFja29mZkZhY3RvcjogY29uZmlnLnJldHJ5T3B0aW9ucz8ucmV0cnlCYWNrb2ZmRmFjdG9yLFxuXHRcdFx0fSxcblx0XHR9KTtcblx0fVxuXG5cdHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgdHJhbnNsYXRvck5hbWU6IHN0cmluZyA9ICdDaGF0R1BUTExNVHJhbnNsYXRvcic7XG5cdHB1YmxpYyBzdGF0aWMgaXNSZXF1aXJlZEtleSA9ICgpID0+IHRydWU7XG5cdHB1YmxpYyBzdGF0aWMgaXNTdXBwb3J0ZWRBdXRvRnJvbSA9ICgpID0+IHRydWU7XG5cblx0Ly8gQ2hhdEdQVCBkb2NzIGRvbuKAmXQgbGlzdCBzdXBwb3J0ZWQgbGFuZ3VhZ2VzIGZvciB0ZXh0IG1vZGVscywgd2UgY2FuIHVzZSB0aGUgbGlzdCBmb3IgdGV4dC10by1zcGVlY2ggaW5zdGVhZFxuXHQvLyBzb3VyY2U6IGh0dHBzOi8vcGxhdGZvcm0ub3BlbmFpLmNvbS9kb2NzL2d1aWRlcy90ZXh0LXRvLXNwZWVjaCNzdXBwb3J0ZWQtbGFuZ3VhZ2VzXG5cdHB1YmxpYyBzdGF0aWMgZ2V0U3VwcG9ydGVkTGFuZ3VhZ2VzID0gKCk6IHN0cmluZ1tdID0+IHtcblx0XHQvLyBlc2xpbnQtZGlzYWJsZVxuXHRcdC8vIHByZXR0aWVyLWlnbm9yZVxuXHRcdHJldHVybiBbXG5cdFx0XHRcImFyXCIsIFwiYm5cIiwgXCJiZ1wiLCBcInpoXCIsIFwiaHJcIiwgXCJjc1wiLCBcImRhXCIsIFwibmxcIiwgXCJlblwiLFxuXHRcdFx0XCJldFwiLCBcImZhXCIsIFwiZmlcIiwgXCJmclwiLCBcImRlXCIsIFwiZWxcIiwgXCJndVwiLCBcImhlXCIsIFwiaGlcIiwgXCJodVwiLFxuXHRcdFx0XCJpZFwiLCBcIml0XCIsIFwiamFcIiwgXCJrblwiLCBcImtvXCIsIFwibHZcIiwgXCJsdFwiLCBcIm1sXCIsIFwibXJcIiwgXCJub1wiLFxuXHRcdFx0XCJwbFwiLCBcInB0XCIsIFwicm9cIiwgXCJydVwiLCBcInNyXCIsIFwic2tcIiwgXCJzbFwiLCBcImVzXCIsIFwic3dcIiwgXCJzdlwiLFxuXHRcdFx0XCJ0YVwiLCBcInRlXCIsIFwidGhcIiwgXCJ0clwiLCBcInVrXCIsIFwidXJcIiwgXCJ2aVwiXG5cdFx0XTtcblx0XHQvLyBlc2xpbnQtZW5hYmxlXG5cdH07XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7OztBQUFBLElBQUFBLGNBQUEsR0FBQUMsT0FBQTtBQUtBLElBQUFDLGtCQUFBLEdBQUFELE9BQUE7QUFFTSxNQUFPRSxvQkFBcUIsU0FBUUMsNEJBQWE7RUFDdERDLFlBQVlDLE1BTVg7O0lBQ0EsTUFBTUMsR0FBRyxHQUFHLElBQUlDLG9DQUFpQixDQUFDO01BQ2pDQyxNQUFNLEVBQUVILE1BQU0sQ0FBQ0csTUFBTTtNQUNyQkMsS0FBSyxFQUFFSixNQUFNLENBQUNJLEtBQUs7TUFDbkJDLFNBQVMsRUFBRUwsTUFBTSxDQUFDSztLQUNsQixDQUFDO0lBQ0YsS0FBSyxDQUFDSixHQUFHLEVBQUU7TUFDVkssU0FBUyxFQUFFTixNQUFNLENBQUNNLFNBQVM7TUFDM0JDLFlBQVksRUFBRTtRQUNiQyxVQUFVLEVBQUUsQ0FBQUMsRUFBQSxHQUFBVCxNQUFNLENBQUNPLFlBQVksY0FBQUUsRUFBQSx1QkFBQUEsRUFBQSxDQUFFRCxVQUFVO1FBQzNDRSxZQUFZLEVBQUUsQ0FBQUMsRUFBQSxHQUFBWCxNQUFNLENBQUNPLFlBQVksY0FBQUksRUFBQSx1QkFBQUEsRUFBQSxDQUFFRCxZQUFZO1FBQy9DRSxlQUFlLEVBQUUsQ0FBQUMsRUFBQSxHQUFBYixNQUFNLENBQUNPLFlBQVksY0FBQU0sRUFBQSx1QkFBQUEsRUFBQSxDQUFFRCxlQUFlO1FBQ3JERSxrQkFBa0IsRUFBRSxDQUFBQyxFQUFBLEdBQUFmLE1BQU0sQ0FBQ08sWUFBWSxjQUFBUSxFQUFBLHVCQUFBQSxFQUFBLENBQUVEOztLQUUxQyxDQUFDO0VBQ0g7OztBQUV1QmpCLG9CQUFBLENBQUFtQixjQUFjLEdBQVcsc0JBQXNCO0FBQ3hEbkIsb0JBQUEsQ0FBQW9CLGFBQWEsR0FBRyxNQUFNLElBQUk7QUFDMUJwQixvQkFBQSxDQUFBcUIsbUJBQW1CLEdBQUcsTUFBTSxJQUFJO0FBRTlDO0FBQ0E7QUFDY3JCLG9CQUFBLENBQUFzQixxQkFBcUIsR0FBRyxNQUFlO0VBQ3BEO0VBQ0E7RUFDQSxPQUFPLENBQ04sSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQ3BELElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFDMUQsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUMxRCxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQzFELElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FDeEM7RUFDRDtBQUNELENBQUMiLCJpZ25vcmVMaXN0IjpbXX0=