common.ts 36 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624
  1. const translation = {
  2. api: {
  3. success: 'Успешно',
  4. actionSuccess: 'Действие выполнено успешно',
  5. saved: 'Сохранено',
  6. create: 'Создано',
  7. remove: 'Удалено',
  8. },
  9. operation: {
  10. create: 'Создать',
  11. confirm: 'Подтвердить',
  12. cancel: 'Отмена',
  13. clear: 'Очистить',
  14. save: 'Сохранить',
  15. saveAndEnable: 'Сохранить и включить',
  16. edit: 'Редактировать',
  17. add: 'Добавить',
  18. added: 'Добавлено',
  19. refresh: 'Перезапустить',
  20. reset: 'Сбросить',
  21. search: 'Поиск',
  22. change: 'Изменить',
  23. remove: 'Удалить',
  24. send: 'Отправить',
  25. copy: 'Копировать',
  26. lineBreak: 'Разрыв строки',
  27. sure: 'Я уверен',
  28. download: 'Скачать',
  29. delete: 'Удалить',
  30. settings: 'Настройки',
  31. setup: 'Настроить',
  32. getForFree: 'Получить бесплатно',
  33. reload: 'Перезагрузить',
  34. ok: 'ОК',
  35. log: 'Журнал',
  36. learnMore: 'Узнать больше',
  37. params: 'Параметры',
  38. duplicate: 'Дублировать',
  39. rename: 'Переименовать',
  40. audioSourceUnavailable: 'AudioSource недоступен',
  41. zoomIn: 'Увеличить',
  42. zoomOut: 'Уменьшение масштаба',
  43. openInNewTab: 'Открыть в новой вкладке',
  44. copyImage: 'Скопировать изображение',
  45. close: 'Закрывать',
  46. regenerate: 'Регенерировать',
  47. view: 'Вид',
  48. viewMore: 'ПОДРОБНЕЕ',
  49. saveAndRegenerate: 'Сохранение и повторное создание дочерних блоков',
  50. submit: 'Отправить',
  51. skip: 'Корабль',
  52. },
  53. errorMsg: {
  54. fieldRequired: '{{field}} обязательно',
  55. urlError: 'URL должен начинаться с http:// или https://',
  56. },
  57. placeholder: {
  58. input: 'Пожалуйста, введите',
  59. select: 'Пожалуйста, выберите',
  60. },
  61. voice: {
  62. language: {
  63. zhHans: 'Китайский',
  64. zhHant: 'Традиционный китайский',
  65. enUS: 'Английский',
  66. deDE: 'Немецкий',
  67. frFR: 'Французский',
  68. esES: 'Испанский',
  69. itIT: 'Итальянский',
  70. thTH: 'Тайский',
  71. idID: 'Индонезийский',
  72. jaJP: 'Японский',
  73. koKR: 'Корейский',
  74. ptBR: 'Португальский',
  75. ruRU: 'Русский',
  76. ukUA: 'Украинский',
  77. viVN: 'Вьетнамский',
  78. plPL: 'Польский',
  79. roRO: 'Румынский',
  80. hiIN: 'Хинди',
  81. trTR: 'Турецкий',
  82. faIR: 'Персидский',
  83. },
  84. },
  85. unit: {
  86. char: 'символов',
  87. },
  88. actionMsg: {
  89. noModification: 'На данный момент нет изменений.',
  90. modifiedSuccessfully: 'Изменено успешно',
  91. modifiedUnsuccessfully: 'Изменено неудачно',
  92. copySuccessfully: 'Скопировано успешно',
  93. paySucceeded: 'Оплата прошла успешно',
  94. payCancelled: 'Оплата отменена',
  95. generatedSuccessfully: 'Сгенерировано успешно',
  96. generatedUnsuccessfully: 'Сгенерировано неудачно',
  97. },
  98. model: {
  99. params: {
  100. temperature: 'Temperature',
  101. temperatureTip:
  102. 'Контролирует случайность: более низкое значение приводит к менее случайным завершениям. По мере приближения температуры к нулю модель станет детерминированной и повторяющейся.',
  103. top_p: 'Top P',
  104. top_pTip:
  105. 'Контролирует разнообразие с помощью ядерной выборки: 0,5 означает, что рассматривается половина всех вариантов, взвешенных по вероятности.',
  106. presence_penalty: 'Presence penalty',
  107. presence_penaltyTip:
  108. 'Насколько штрафовать новые токены в зависимости от того, появляются ли они в тексте до сих пор.\nУвеличивает вероятность того, что модель будет говорить о новых темах.',
  109. frequency_penalty: 'Frequency penalty',
  110. frequency_penaltyTip:
  111. 'Насколько штрафовать новые токены в зависимости от их существующей частоты в тексте до сих пор.\nУменьшает вероятность того, что модель будет повторять одну и ту же строку дословно.',
  112. max_tokens: 'Максимальное количество токенов',
  113. max_tokensTip:
  114. 'Используется для ограничения максимальной длины ответа в токенах. \nБольшие значения могут ограничивать пространство, оставленное для подсказок, журналов чата и знаний. \nРекомендуется установить его ниже двух третей\ngpt-4-1106-preview, gpt-4-vision-preview max token (input 128k output 4k)',
  115. maxTokenSettingTip: 'Ваша настройка максимального количества токенов высока, что потенциально ограничивает пространство для подсказок, запросов и данных. Подумайте о том, чтобы установить его ниже 2/3.',
  116. setToCurrentModelMaxTokenTip: 'Максимальное количество токенов обновлено до 80% максимального количества токенов текущей модели {{maxToken}}.',
  117. stop_sequences: 'Стоп-последовательности',
  118. stop_sequencesTip: 'До четырех последовательностей, где API прекратит генерировать дальнейшие токены. Возвращаемый текст не будет содержать стоп-последовательность.',
  119. stop_sequencesPlaceholder: 'Введите последовательность и нажмите Tab',
  120. },
  121. tone: {
  122. Creative: 'Творческий',
  123. Balanced: 'Сбалансированный',
  124. Precise: 'Точный',
  125. Custom: 'Пользовательский',
  126. },
  127. addMoreModel: 'Перейдите в настройки, чтобы добавить больше моделей',
  128. },
  129. menus: {
  130. status: 'бета',
  131. explore: 'Исследовать',
  132. apps: 'Студия',
  133. plugins: 'Плагины',
  134. pluginsTips: 'Интегрируйте сторонние плагины или создавайте совместимые с ChatGPT AI-плагины.',
  135. datasets: 'Знания',
  136. datasetsTips: 'СКОРО: Импортируйте свои собственные текстовые данные или записывайте данные в режиме реального времени через Webhook для улучшения контекста LLM.',
  137. newApp: 'Новое приложение',
  138. newDataset: 'Создать знания',
  139. tools: 'Инструменты',
  140. },
  141. userProfile: {
  142. settings: 'Настройки',
  143. emailSupport: 'Поддержка по электронной почте',
  144. workspace: 'Рабочее пространство',
  145. createWorkspace: 'Создать рабочее пространство',
  146. helpCenter: 'Помощь',
  147. communityFeedback: 'Обратная связь',
  148. roadmap: 'План развития',
  149. community: 'Сообщество',
  150. about: 'О нас',
  151. logout: 'Выйти',
  152. },
  153. settings: {
  154. accountGroup: 'АККАУНТ',
  155. workplaceGroup: 'РАБОЧЕЕ ПРОСТРАНСТВО',
  156. account: 'Моя учетная запись',
  157. members: 'Участники',
  158. billing: 'Оплата',
  159. integrations: 'Интеграции',
  160. language: 'Язык',
  161. provider: 'Поставщик модели',
  162. dataSource: 'Источник данных',
  163. plugin: 'Плагины',
  164. apiBasedExtension: 'API расширение',
  165. },
  166. account: {
  167. avatar: 'Аватар',
  168. name: 'Имя',
  169. email: 'Электронная почта',
  170. password: 'Пароль',
  171. passwordTip: 'Вы можете установить постоянный пароль, если не хотите использовать временные коды входа',
  172. setPassword: 'Установить пароль',
  173. resetPassword: 'Сбросить пароль',
  174. currentPassword: 'Текущий пароль',
  175. newPassword: 'Новый пароль',
  176. confirmPassword: 'Подтвердите пароль',
  177. notEqual: 'Два пароля различаются.',
  178. langGeniusAccount: 'Учетная запись Dify',
  179. langGeniusAccountTip: 'Ваша учетная запись Dify и связанные с ней пользовательские данные.',
  180. editName: 'Редактировать имя',
  181. showAppLength: 'Показать {{length}} приложений',
  182. delete: 'Удалить учетную запись',
  183. deleteTip: 'Удаление вашей учетной записи приведет к безвозвратному удалению всех ваших данных, и их невозможно будет восстановить.',
  184. deleteConfirmTip: 'Для подтверждения, пожалуйста, отправьте следующее с вашего зарегистрированного адреса электронной почты на ',
  185. account: 'Счет',
  186. studio: 'Студия Dify',
  187. myAccount: 'Моя учетная запись',
  188. deletePrivacyLink: 'Политика конфиденциальности.',
  189. deletePlaceholder: 'Пожалуйста, введите свой адрес электронной почты',
  190. sendVerificationButton: 'Отправить код подтверждения',
  191. verificationLabel: 'Проверочный код',
  192. verificationPlaceholder: 'Вставьте 6-значный код',
  193. feedbackTitle: 'Обратная связь',
  194. feedbackLabel: 'Расскажите нам, почему вы удалили свой аккаунт?',
  195. feedbackPlaceholder: 'Необязательный',
  196. permanentlyDeleteButton: 'Окончательно удалить учетную запись',
  197. deleteLabel: 'Для подтверждения, пожалуйста, введите свой адрес электронной почты ниже',
  198. deleteSuccessTip: 'Вашему аккаунту требуется время, чтобы завершить удаление. Мы свяжемся с вами по электронной почте, когда все будет готово.',
  199. deletePrivacyLinkTip: 'Для получения дополнительной информации о том, как мы обрабатываем ваши данные, ознакомьтесь с нашим',
  200. },
  201. members: {
  202. team: 'Команда',
  203. invite: 'Добавить',
  204. name: 'ИМЯ',
  205. lastActive: 'ПОСЛЕДНЯЯ АКТИВНОСТЬ',
  206. role: 'РОЛИ',
  207. pending: 'Ожидание...',
  208. owner: 'Владелец',
  209. admin: 'Администратор',
  210. adminTip: 'Может создавать приложения и управлять настройками команды',
  211. normal: 'Обычный',
  212. normalTip: 'Может только использовать приложения, не может создавать приложения',
  213. builder: 'Разработчик',
  214. builderTip: 'Может создавать и редактировать собственные приложения',
  215. editor: 'Редактор',
  216. editorTip: 'Может создавать и редактировать приложения',
  217. datasetOperator: 'Администратор знаний',
  218. datasetOperatorTip: 'Может управлять только базой знаний',
  219. inviteTeamMember: 'Добавить участника команды',
  220. inviteTeamMemberTip: 'Они могут получить доступ к данным вашей команды сразу после входа в систему.',
  221. emailNotSetup: 'Почтовый сервер не настроен, поэтому приглашения по электронной почте не могут быть отправлены. Пожалуйста, уведомите пользователей о ссылке для приглашения, которая будет выдана после приглашения.',
  222. email: 'Электронная почта',
  223. emailInvalid: 'Неверный формат электронной почты',
  224. emailPlaceholder: 'Пожалуйста, введите адреса электронной почты',
  225. sendInvite: 'Отправить приглашение',
  226. invitedAsRole: 'Приглашен как пользователь с ролью {{role}}',
  227. invitationSent: 'Приглашение отправлено',
  228. invitationSentTip: 'Приглашение отправлено, и они могут войти в Dify, чтобы получить доступ к данным вашей команды.',
  229. invitationLink: 'Ссылка для приглашения',
  230. failedInvitationEmails: 'Следующие пользователи не были успешно приглашены',
  231. ok: 'ОК',
  232. removeFromTeam: 'Удалить из команды',
  233. removeFromTeamTip: 'Удалить доступ к команде',
  234. setAdmin: 'Назначить администратором',
  235. setMember: 'Назначить обычным участником',
  236. setBuilder: 'Назначить разработчиком',
  237. setEditor: 'Назначить редактором',
  238. disInvite: 'Отменить приглашение',
  239. deleteMember: 'Удалить участника',
  240. you: '(Вы)',
  241. },
  242. integrations: {
  243. connected: 'Подключено',
  244. google: 'Google',
  245. googleAccount: 'Войти с помощью учетной записи Google',
  246. github: 'GitHub',
  247. githubAccount: 'Войти с помощью учетной записи GitHub',
  248. connect: 'Подключить',
  249. },
  250. language: {
  251. displayLanguage: 'Язык отображения',
  252. timezone: 'Часовой пояс',
  253. },
  254. provider: {
  255. apiKey: 'Ключ API',
  256. enterYourKey: 'Введите свой ключ API здесь',
  257. invalidKey: 'Неверный ключ API OpenAI',
  258. validatedError: 'Ошибка валидации: ',
  259. validating: 'Проверка ключа...',
  260. saveFailed: 'Ошибка сохранения ключа API',
  261. apiKeyExceedBill: 'Этот API-ключ не имеет доступной квоты, пожалуйста, прочитайте',
  262. addKey: 'Добавить ключ',
  263. comingSoon: 'Скоро',
  264. editKey: 'Редактировать',
  265. invalidApiKey: 'Неверный ключ API',
  266. azure: {
  267. apiBase: 'Базовый API',
  268. apiBasePlaceholder: 'Базовый URL-адрес API вашей конечной точки Azure OpenAI.',
  269. apiKey: 'Ключ API',
  270. apiKeyPlaceholder: 'Введите свой ключ API здесь',
  271. helpTip: 'Узнать о службе Azure OpenAI',
  272. },
  273. openaiHosted: {
  274. openaiHosted: 'Размещенный OpenAI',
  275. onTrial: 'ПРОБНАЯ ВЕРСИЯ',
  276. exhausted: 'КВОТА ИСЧЕРПАНА',
  277. desc: 'Хостинговая служба OpenAI, предоставляемая Dify, позволяет вам использовать такие модели, как GPT-3.5. Прежде чем ваша пробная квота будет исчерпана, вам необходимо настроить других поставщиков моделей.',
  278. callTimes: 'Количество вызовов',
  279. usedUp: 'Пробная квота исчерпана. Добавьте собственного поставщика модели.',
  280. useYourModel: 'В настоящее время используется собственный поставщик модели.',
  281. close: 'Закрыть',
  282. },
  283. anthropicHosted: {
  284. anthropicHosted: 'Anthropic Claude',
  285. onTrial: 'ПРОБНАЯ ВЕРСИЯ',
  286. exhausted: 'КВОТА ИСЧЕРПАНА',
  287. desc: 'Мощная модель, которая отлично справляется с широким спектром задач, от сложных диалогов и создания творческого контента до подробных инструкций.',
  288. callTimes: 'Количество вызовов',
  289. usedUp: 'Пробная квота исчерпана. Добавьте собственного поставщика модели.',
  290. useYourModel: 'В настоящее время используется собственный поставщик модели.',
  291. close: 'Закрыть',
  292. },
  293. anthropic: {
  294. using: 'Возможность встраивания использует',
  295. enableTip: 'Чтобы включить модель Anthropic, вам необходимо сначала привязаться к OpenAI или Azure OpenAI Service.',
  296. notEnabled: 'Не включено',
  297. keyFrom: 'Получите свой ключ API от Anthropic',
  298. },
  299. encrypted: {
  300. front: 'Ваш API-ключ будет зашифрован и сохранен с использованием',
  301. back: ' технологии.',
  302. },
  303. },
  304. modelProvider: {
  305. notConfigured: 'Системная модель еще не полностью настроена, и некоторые функции могут быть недоступны.',
  306. systemModelSettings: 'Настройки системной модели',
  307. systemModelSettingsLink: 'Зачем нужно настраивать системную модель?',
  308. selectModel: 'Выберите свою модель',
  309. setupModelFirst: 'Пожалуйста, сначала настройте свою модель',
  310. systemReasoningModel: {
  311. key: 'Модель системного мышления',
  312. tip: 'Установите модель вывода по умолчанию, которая будет использоваться для создания приложений, а также такие функции, как генерация имени диалога и предложение следующего вопроса, также будут использовать модель вывода по умолчанию.',
  313. },
  314. embeddingModel: {
  315. key: 'Модель встраивания',
  316. tip: 'Установите модель по умолчанию для обработки встраивания документов знаний, как поиск, так и импорт знаний используют эту модель встраивания для обработки векторизации. Переключение приведет к несоответствию векторного измерения между импортированными знаниями и вопросом, что приведет к сбою поиска. Чтобы избежать сбоя поиска, пожалуйста, не переключайте эту модель по своему усмотрению.',
  317. required: 'Модель встраивания обязательна',
  318. },
  319. speechToTextModel: {
  320. key: 'Модель преобразования речи в текст',
  321. tip: 'Установите модель по умолчанию для ввода речи в текст в разговоре.',
  322. },
  323. ttsModel: {
  324. key: 'Модель преобразования текста в речь',
  325. tip: 'Установите модель по умолчанию для ввода текста в речь в разговоре.',
  326. },
  327. rerankModel: {
  328. key: 'Модель повторного ранжирования',
  329. tip: 'Модель повторного ранжирования изменит порядок списка документов-кандидатов на основе семантического соответствия запросу пользователя, улучшая результаты семантического ранжирования',
  330. },
  331. apiKey: 'API-КЛЮЧ',
  332. quota: 'Квота',
  333. searchModel: 'Поиск модели',
  334. noModelFound: 'Модель не найдена для {{model}}',
  335. models: 'Модели',
  336. showMoreModelProvider: 'Показать больше поставщиков моделей',
  337. selector: {
  338. tip: 'Эта модель была удалена. Пожалуйста, добавьте модель или выберите другую модель.',
  339. emptyTip: 'Нет доступных моделей',
  340. emptySetting: 'Пожалуйста, перейдите в настройки для настройки',
  341. rerankTip: 'Пожалуйста, настройте модель повторного ранжирования',
  342. },
  343. card: {
  344. quota: 'КВОТА',
  345. onTrial: 'Пробная версия',
  346. paid: 'Платный',
  347. quotaExhausted: 'Квота исчерпана',
  348. callTimes: 'Количество вызовов',
  349. tokens: 'Токены',
  350. buyQuota: 'Купить квоту',
  351. priorityUse: 'Приоритетное использование',
  352. removeKey: 'Удалить API-ключ',
  353. tip: 'Приоритет будет отдаваться платной квоте. Пробная квота будет использоваться после исчерпания платной квоты.',
  354. },
  355. item: {
  356. deleteDesc: '{{modelName}} используются в качестве моделей системного мышления. Некоторые функции будут недоступны после удаления. Пожалуйста, подтвердите.',
  357. freeQuota: 'БЕСПЛАТНАЯ КВОТА',
  358. },
  359. addApiKey: 'Добавьте свой API-ключ',
  360. invalidApiKey: 'Неверный API-ключ',
  361. encrypted: {
  362. front: 'Ваш API-ключ будет зашифрован и сохранен с использованием',
  363. back: ' технологии.',
  364. },
  365. freeQuota: {
  366. howToEarn: 'Как заработать',
  367. },
  368. addMoreModelProvider: 'ДОБАВИТЬ БОЛЬШЕ ПОСТАВЩИКОВ МОДЕЛЕЙ',
  369. addModel: 'Добавить модель',
  370. modelsNum: '{{num}} Моделей',
  371. showModels: 'Показать модели',
  372. showModelsNum: 'Показать {{num}} моделей',
  373. collapse: 'Свернуть',
  374. config: 'Настройка',
  375. modelAndParameters: 'Модель и параметры',
  376. model: 'Модель',
  377. featureSupported: '{{feature}} поддерживается',
  378. callTimes: 'Количество вызовов',
  379. credits: 'Кредиты на сообщения',
  380. buyQuota: 'Купить квоту',
  381. getFreeTokens: 'Получить бесплатные токены',
  382. priorityUsing: 'Приоритетное использование',
  383. deprecated: 'Устаревший',
  384. confirmDelete: 'Подтвердить удаление?',
  385. quotaTip: 'Оставшиеся доступные бесплатные токены',
  386. loadPresets: 'Загрузить предустановки',
  387. parameters: 'ПАРАМЕТРЫ',
  388. loadBalancing: 'Балансировка нагрузки',
  389. loadBalancingDescription: 'Снизьте нагрузку с помощью нескольких наборов учетных данных.',
  390. loadBalancingHeadline: 'Балансировка нагрузки',
  391. configLoadBalancing: 'Настроить балансировку нагрузки',
  392. modelHasBeenDeprecated: 'Эта модель устарела',
  393. providerManaged: 'Управляется поставщиком',
  394. providerManagedDescription: 'Используйте один набор учетных данных, предоставленный поставщиком модели.',
  395. defaultConfig: 'Настройка по умолчанию',
  396. apiKeyStatusNormal: 'Статус APIKey в норме',
  397. apiKeyRateLimit: 'Достигнут предел скорости, доступен через {{seconds}}s',
  398. addConfig: 'Добавить конфигурацию',
  399. editConfig: 'Редактировать конфигурацию',
  400. loadBalancingLeastKeyWarning: 'Для включения балансировки нагрузки необходимо включить не менее 2 ключей.',
  401. loadBalancingInfo: 'По умолчанию балансировка нагрузки использует стратегию Round-robin. Если срабатывает ограничение скорости, будет применен 1-минутный период охлаждения.',
  402. upgradeForLoadBalancing: 'Обновите свой тарифный план, чтобы включить балансировку нагрузки.',
  403. },
  404. dataSource: {
  405. add: 'Добавить источник данных',
  406. connect: 'Подключить',
  407. configure: 'Настроить',
  408. notion: {
  409. title: 'Notion',
  410. description: 'Использование Notion в качестве источника данных для знаний.',
  411. connectedWorkspace: 'Подключенное рабочее пространство',
  412. addWorkspace: 'Добавить рабочее пространство',
  413. connected: 'Подключено',
  414. disconnected: 'Отключено',
  415. changeAuthorizedPages: 'Изменить авторизованные страницы',
  416. pagesAuthorized: 'Авторизованные страницы',
  417. sync: 'Синхронизировать',
  418. remove: 'Удалить',
  419. selector: {
  420. pageSelected: 'Выбранные страницы',
  421. searchPages: 'Поиск страниц...',
  422. noSearchResult: 'Нет результатов поиска',
  423. addPages: 'Добавить страницы',
  424. preview: 'ПРЕДПРОСМОТР',
  425. },
  426. },
  427. website: {
  428. title: 'Веб-сайт',
  429. description: 'Импортировать контент с веб-сайтов с помощью веб-краулера.',
  430. with: 'С',
  431. configuredCrawlers: 'Настроенные краулеры',
  432. active: 'Активный',
  433. inactive: 'Неактивный',
  434. },
  435. },
  436. plugin: {
  437. serpapi: {
  438. apiKey: 'Ключ API',
  439. apiKeyPlaceholder: 'Введите свой ключ API',
  440. keyFrom: 'Получите свой ключ SerpAPI на странице учетной записи SerpAPI',
  441. },
  442. },
  443. apiBasedExtension: {
  444. title: 'API-расширения обеспечивают централизованное управление API, упрощая настройку для удобного использования в приложениях Dify.',
  445. link: 'Узнайте, как разработать собственное API-расширение.',
  446. linkUrl: 'https://docs.dify.ai/features/extension/api_based_extension',
  447. add: 'Добавить API Extension',
  448. selector: {
  449. title: 'API Extension',
  450. placeholder: 'Пожалуйста, выберите API-расширение',
  451. manage: 'Управление API-расширением',
  452. },
  453. modal: {
  454. title: 'Добавить API-расширение',
  455. editTitle: 'Редактировать API-расширение',
  456. name: {
  457. title: 'Имя',
  458. placeholder: 'Пожалуйста, введите имя',
  459. },
  460. apiEndpoint: {
  461. title: 'API Endpoint',
  462. placeholder: 'Пожалуйста, введите конечную точку API',
  463. },
  464. apiKey: {
  465. title: 'API-ключ',
  466. placeholder: 'Пожалуйста, введите API-ключ',
  467. lengthError: 'Длина API-ключа не может быть меньше 5 символов',
  468. },
  469. },
  470. type: 'Тип',
  471. },
  472. about: {
  473. changeLog: 'Журнал изменений',
  474. updateNow: 'Обновить сейчас',
  475. nowAvailable: 'Dify {{version}} теперь доступен.',
  476. latestAvailable: 'Dify {{version}} - последняя доступная версия.',
  477. },
  478. appMenus: {
  479. overview: 'Мониторинг',
  480. promptEng: 'Оркестрация',
  481. apiAccess: 'Доступ к API',
  482. logAndAnn: 'Журналы и аннотации',
  483. logs: 'Журналы',
  484. },
  485. environment: {
  486. testing: 'ТЕСТИРОВАНИЕ',
  487. development: 'РАЗРАБОТКА',
  488. },
  489. appModes: {
  490. completionApp: 'Генератор текста',
  491. chatApp: 'Чат-приложение',
  492. },
  493. datasetMenus: {
  494. documents: 'Документы',
  495. hitTesting: 'Тестирование поиска',
  496. settings: 'Настройки',
  497. emptyTip: 'Знания не были связаны, пожалуйста, перейдите в приложение или плагин, чтобы завершить связывание.',
  498. viewDoc: 'Просмотреть документацию',
  499. relatedApp: 'связанные приложения',
  500. noRelatedApp: 'Нет связанных приложений',
  501. },
  502. voiceInput: {
  503. speaking: 'Говорите сейчас...',
  504. converting: 'Преобразование в текст...',
  505. notAllow: 'микрофон не авторизован',
  506. },
  507. modelName: {
  508. 'gpt-3.5-turbo': 'GPT-3.5-Turbo',
  509. 'gpt-3.5-turbo-16k': 'GPT-3.5-Turbo-16K',
  510. 'gpt-4': 'GPT-4',
  511. 'gpt-4-32k': 'GPT-4-32K',
  512. 'text-davinci-003': 'Text-Davinci-003',
  513. 'text-embedding-ada-002': 'Text-Embedding-Ada-002',
  514. 'whisper-1': 'Whisper-1',
  515. 'claude-instant-1': 'Claude-Instant',
  516. 'claude-2': 'Claude-2',
  517. },
  518. chat: {
  519. renameConversation: 'Переименовать разговор',
  520. conversationName: 'Название разговора',
  521. conversationNamePlaceholder: 'Пожалуйста, введите название разговора',
  522. conversationNameCanNotEmpty: 'Название разговора обязательно',
  523. citation: {
  524. title: 'ЦИТАТЫ',
  525. linkToDataset: 'Ссылка на знания',
  526. characters: 'Символы:',
  527. hitCount: 'Количество совпадений:',
  528. vectorHash: 'Векторный хэш:',
  529. hitScore: 'Оценка совпадения:',
  530. },
  531. inputPlaceholder: 'Поговорить с ботом',
  532. },
  533. promptEditor: {
  534. placeholder: 'Напишите здесь свое ключевое слово подсказки, введите \'{\', чтобы вставить переменную, введите \'/\', чтобы вставить блок содержимого подсказки',
  535. context: {
  536. item: {
  537. title: 'Контекст',
  538. desc: 'Вставить шаблон контекста',
  539. },
  540. modal: {
  541. title: '{{num}} знаний в контексте',
  542. add: 'Добавить контекст ',
  543. footer: 'Вы можете управлять контекстами в разделе «Контекст» ниже.',
  544. },
  545. },
  546. history: {
  547. item: {
  548. title: 'История разговоров',
  549. desc: 'Вставить шаблон исторического сообщения',
  550. },
  551. modal: {
  552. title: 'ПРИМЕР',
  553. user: 'Привет',
  554. assistant: 'Привет! Как я могу вам помочь сегодня?',
  555. edit: 'Редактировать имена ролей разговора',
  556. },
  557. },
  558. variable: {
  559. item: {
  560. title: 'Переменные и внешние инструменты',
  561. desc: 'Вставить переменные и внешние инструменты',
  562. },
  563. outputToolDisabledItem: {
  564. title: 'Переменные',
  565. desc: 'Вставить переменные',
  566. },
  567. modal: {
  568. add: 'Новая переменная',
  569. addTool: 'Новый инструмент',
  570. },
  571. },
  572. query: {
  573. item: {
  574. title: 'Запрос',
  575. desc: 'Вставить шаблон запроса пользователя',
  576. },
  577. },
  578. existed: 'Уже существует в подсказке',
  579. },
  580. imageUploader: {
  581. uploadFromComputer: 'Загрузить с компьютера',
  582. uploadFromComputerReadError: 'Ошибка чтения изображения, повторите попытку.',
  583. uploadFromComputerUploadError: 'Ошибка загрузки изображения, загрузите еще раз.',
  584. uploadFromComputerLimit: 'Загружаемые изображения не могут превышать {{size}} МБ',
  585. pasteImageLink: 'Вставить ссылку на изображение',
  586. pasteImageLinkInputPlaceholder: 'Вставьте ссылку на изображение здесь',
  587. pasteImageLinkInvalid: 'Неверная ссылка на изображение',
  588. imageUpload: 'Загрузка изображения',
  589. },
  590. tag: {
  591. placeholder: 'Все теги',
  592. addNew: 'Добавить новый тег',
  593. noTag: 'Нет тегов',
  594. noTagYet: 'Еще нет тегов',
  595. addTag: 'Добавить теги',
  596. editTag: 'Редактировать теги',
  597. manageTags: 'Управление тегами',
  598. selectorPlaceholder: 'Введите для поиска или создания',
  599. create: 'Создать',
  600. delete: 'Удалить тег',
  601. deleteTip: 'Тег используется, удалить его?',
  602. created: 'Тег успешно создан',
  603. failed: 'Ошибка создания тега',
  604. },
  605. fileUploader: {
  606. pasteFileLinkInputPlaceholder: 'Введите URL...',
  607. pasteFileLink: 'Вставить ссылку на файл',
  608. uploadFromComputer: 'Локальная загрузка',
  609. fileExtensionNotSupport: 'Расширение файла не поддерживается',
  610. uploadFromComputerReadError: 'Чтение файла не удалось, пожалуйста, повторите попытку.',
  611. pasteFileLinkInvalid: 'Неверная ссылка на файл',
  612. uploadFromComputerLimit: 'Файл загрузки не может превышать {{size}}',
  613. uploadFromComputerUploadError: 'Загрузка файла не удалась, пожалуйста, загрузите еще раз.',
  614. },
  615. license: {
  616. expiring: 'Срок действия истекает за один день',
  617. expiring_plural: 'Срок действия истекает через {{count}} дней',
  618. },
  619. pagination: {
  620. perPage: 'Элементов на странице',
  621. },
  622. }
  623. export default translation