anylang
Version:
A translator's kit that uses the free APIs of Google Translate, Yandex, Bing, ChatGPT, and other LLMs
35 lines (33 loc) • 6.43 kB
JavaScript
import { LLMTranslator, } from '../../LLMTranslators/LLMTranslator';
import { DuckDuckGoLLMFetcher } from './DuckDuckGoLLMFetcher';
export class DuckDuckGoLLMTranslator extends LLMTranslator {
constructor(config) {
var _a, _b, _c, _d;
super(new DuckDuckGoLLMFetcher({ model: config === null || config === void 0 ? void 0 : config.model, headers: config === null || config === void 0 ? void 0 : config.headers }), {
getPrompt: config === null || config === void 0 ? void 0 : config.getPrompt,
retryOptions: {
retryLimit: (_a = config === null || config === void 0 ? void 0 : config.retryOptions) === null || _a === void 0 ? void 0 : _a.retryLimit,
retryTimeout: (_b = config === null || config === void 0 ? void 0 : config.retryOptions) === null || _b === void 0 ? void 0 : _b.retryTimeout,
maxRetryTimeout: (_c = config === null || config === void 0 ? void 0 : config.retryOptions) === null || _c === void 0 ? void 0 : _c.maxRetryTimeout,
retryBackoffFactor: (_d = config === null || config === void 0 ? void 0 : config.retryOptions) === null || _d === void 0 ? void 0 : _d.retryBackoffFactor,
},
});
}
}
DuckDuckGoLLMTranslator.translatorName = 'DuckDuckGoLLMTranslator';
DuckDuckGoLLMTranslator.isRequiredKey = () => false;
DuckDuckGoLLMTranslator.isSupportedAutoFrom = () => true;
// Use list form chatgpt docs: https://platform.openai.com/docs/guides/text-to-speech#supported-languages
DuckDuckGoLLMTranslator.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,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRyYW5zbGF0b3JzL3Vuc3RhYmxlL0R1Y2tEdWNrR29MTE1UcmFuc2xhdG9yL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFDTixhQUFhLEdBR2IsTUFBTSxvQ0FBb0MsQ0FBQztBQUU1QyxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUU5RCxNQUFNLE9BQU8sdUJBQXdCLFNBQVEsYUFBYTtJQUN6RCxZQUFZLE1BS1g7O1FBQ0EsS0FBSyxDQUNKLElBQUksb0JBQW9CLENBQUMsRUFBRSxLQUFLLEVBQUUsTUFBTSxhQUFOLE1BQU0sdUJBQU4sTUFBTSxDQUFFLEtBQUssRUFBRSxPQUFPLEVBQUUsTUFBTSxhQUFOLE1BQU0sdUJBQU4sTUFBTSxDQUFFLE9BQU8sRUFBRSxDQUFDLEVBQzVFO1lBQ0MsU0FBUyxFQUFFLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxTQUFTO1lBQzVCLFlBQVksRUFBRTtnQkFDYixVQUFVLEVBQUUsTUFBQSxNQUFNLGFBQU4sTUFBTSx1QkFBTixNQUFNLENBQUUsWUFBWSwwQ0FBRSxVQUFVO2dCQUM1QyxZQUFZLEVBQUUsTUFBQSxNQUFNLGFBQU4sTUFBTSx1QkFBTixNQUFNLENBQUUsWUFBWSwwQ0FBRSxZQUFZO2dCQUNoRCxlQUFlLEVBQUUsTUFBQSxNQUFNLGFBQU4sTUFBTSx1QkFBTixNQUFNLENBQUUsWUFBWSwwQ0FBRSxlQUFlO2dCQUN0RCxrQkFBa0IsRUFBRSxNQUFBLE1BQU0sYUFBTixNQUFNLHVCQUFOLE1BQU0sQ0FBRSxZQUFZLDBDQUFFLGtCQUFrQjthQUM1RDtTQUNELENBQ0QsQ0FBQztJQUNILENBQUM7O0FBRXNCLHNDQUFjLEdBQVcseUJBQXlCLENBQUM7QUFDNUQscUNBQWEsR0FBRyxHQUFHLEVBQUUsQ0FBQyxLQUFLLENBQUM7QUFDNUIsMkNBQW1CLEdBQUcsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDO0FBRS9DLHlHQUF5RztBQUMzRiw2Q0FBcUIsR0FBRyxHQUFhLEVBQUU7SUFDcEQsaUJBQWlCO0lBQ2pCLGtCQUFrQjtJQUNsQixPQUFPO1FBQ04sSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJO1FBQ3BELElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUk7UUFDMUQsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSTtRQUMxRCxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJO1FBQzFELElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUk7S0FDeEMsQ0FBQztJQUNGLGdCQUFnQjtBQUNqQixDQUFDLENBQUMiLCJmaWxlIjoidHJhbnNsYXRvcnMvdW5zdGFibGUvRHVja0R1Y2tHb0xMTVRyYW5zbGF0b3IvaW5kZXguanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge1xuXHRMTE1UcmFuc2xhdG9yLFxuXHRMTE1UcmFuc2xhdG9yUmV0cnlPcHRpb25zLFxuXHRQcm9tcHRHZW5lcmF0b3IsXG59IGZyb20gJy4uLy4uL0xMTVRyYW5zbGF0b3JzL0xMTVRyYW5zbGF0b3InO1xuXG5pbXBvcnQgeyBEdWNrRHVja0dvTExNRmV0Y2hlciB9IGZyb20gJy4vRHVja0R1Y2tHb0xMTUZldGNoZXInO1xuXG5leHBvcnQgY2xhc3MgRHVja0R1Y2tHb0xMTVRyYW5zbGF0b3IgZXh0ZW5kcyBMTE1UcmFuc2xhdG9yIHtcblx0Y29uc3RydWN0b3IoY29uZmlnPzoge1xuXHRcdG1vZGVsPzogc3RyaW5nO1xuXHRcdGhlYWRlcnM/OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+O1xuXHRcdGdldFByb21wdD86IFByb21wdEdlbmVyYXRvcjtcblx0XHRyZXRyeU9wdGlvbnM/OiBMTE1UcmFuc2xhdG9yUmV0cnlPcHRpb25zO1xuXHR9KSB7XG5cdFx0c3VwZXIoXG5cdFx0XHRuZXcgRHVja0R1Y2tHb0xMTUZldGNoZXIoeyBtb2RlbDogY29uZmlnPy5tb2RlbCwgaGVhZGVyczogY29uZmlnPy5oZWFkZXJzIH0pLFxuXHRcdFx0e1xuXHRcdFx0XHRnZXRQcm9tcHQ6IGNvbmZpZz8uZ2V0UHJvbXB0LFxuXHRcdFx0XHRyZXRyeU9wdGlvbnM6IHtcblx0XHRcdFx0XHRyZXRyeUxpbWl0OiBjb25maWc/LnJldHJ5T3B0aW9ucz8ucmV0cnlMaW1pdCxcblx0XHRcdFx0XHRyZXRyeVRpbWVvdXQ6IGNvbmZpZz8ucmV0cnlPcHRpb25zPy5yZXRyeVRpbWVvdXQsXG5cdFx0XHRcdFx0bWF4UmV0cnlUaW1lb3V0OiBjb25maWc/LnJldHJ5T3B0aW9ucz8ubWF4UmV0cnlUaW1lb3V0LFxuXHRcdFx0XHRcdHJldHJ5QmFja29mZkZhY3RvcjogY29uZmlnPy5yZXRyeU9wdGlvbnM/LnJldHJ5QmFja29mZkZhY3Rvcixcblx0XHRcdFx0fSxcblx0XHRcdH0sXG5cdFx0KTtcblx0fVxuXG5cdHB1YmxpYyBzdGF0aWMgcmVhZG9ubHkgdHJhbnNsYXRvck5hbWU6IHN0cmluZyA9ICdEdWNrRHVja0dvTExNVHJhbnNsYXRvcic7XG5cdHB1YmxpYyBzdGF0aWMgaXNSZXF1aXJlZEtleSA9ICgpID0+IGZhbHNlO1xuXHRwdWJsaWMgc3RhdGljIGlzU3VwcG9ydGVkQXV0b0Zyb20gPSAoKSA9PiB0cnVlO1xuXG5cdC8vIFVzZSBsaXN0IGZvcm0gY2hhdGdwdCBkb2NzOiBodHRwczovL3BsYXRmb3JtLm9wZW5haS5jb20vZG9jcy9ndWlkZXMvdGV4dC10by1zcGVlY2gjc3VwcG9ydGVkLWxhbmd1YWdlc1xuXHRwdWJsaWMgc3RhdGljIGdldFN1cHBvcnRlZExhbmd1YWdlcyA9ICgpOiBzdHJpbmdbXSA9PiB7XG5cdFx0Ly8gZXNsaW50LWRpc2FibGVcblx0XHQvLyBwcmV0dGllci1pZ25vcmVcblx0XHRyZXR1cm4gW1xuXHRcdFx0XCJhclwiLCBcImJuXCIsIFwiYmdcIiwgXCJ6aFwiLCBcImhyXCIsIFwiY3NcIiwgXCJkYVwiLCBcIm5sXCIsIFwiZW5cIixcblx0XHRcdFwiZXRcIiwgXCJmYVwiLCBcImZpXCIsIFwiZnJcIiwgXCJkZVwiLCBcImVsXCIsIFwiZ3VcIiwgXCJoZVwiLCBcImhpXCIsIFwiaHVcIixcblx0XHRcdFwiaWRcIiwgXCJpdFwiLCBcImphXCIsIFwia25cIiwgXCJrb1wiLCBcImx2XCIsIFwibHRcIiwgXCJtbFwiLCBcIm1yXCIsIFwibm9cIixcblx0XHRcdFwicGxcIiwgXCJwdFwiLCBcInJvXCIsIFwicnVcIiwgXCJzclwiLCBcInNrXCIsIFwic2xcIiwgXCJlc1wiLCBcInN3XCIsIFwic3ZcIixcblx0XHRcdFwidGFcIiwgXCJ0ZVwiLCBcInRoXCIsIFwidHJcIiwgXCJ1a1wiLCBcInVyXCIsIFwidmlcIlxuXHRcdF07XG5cdFx0Ly8gZXNsaW50LWVuYWJsZVxuXHR9O1xufVxuIl19