From 8b1ab98e1a3e1e19c87bddc4cf9c8385decc755c Mon Sep 17 00:00:00 2001 From: canisminor1990 Date: Mon, 9 Sep 2024 14:53:54 +0800 Subject: [PATCH 01/25] =?UTF-8?q?=E2=9C=A8=20feat:=20Add=20Discover?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- locales/ar/common.json | 2 +- locales/ar/discover.json | 200 ++++++++++++++ locales/ar/metadata.json | 23 +- locales/bg-BG/common.json | 2 +- locales/bg-BG/discover.json | 200 ++++++++++++++ locales/bg-BG/metadata.json | 23 +- locales/de-DE/common.json | 2 +- locales/de-DE/discover.json | 200 ++++++++++++++ locales/de-DE/metadata.json | 23 +- locales/en-US/common.json | 2 +- locales/en-US/discover.json | 200 ++++++++++++++ locales/en-US/metadata.json | 23 +- locales/es-ES/common.json | 2 +- locales/es-ES/discover.json | 200 ++++++++++++++ locales/es-ES/metadata.json | 23 +- locales/fr-FR/common.json | 2 +- locales/fr-FR/discover.json | 200 ++++++++++++++ locales/fr-FR/metadata.json | 23 +- locales/it-IT/common.json | 2 +- locales/it-IT/discover.json | 200 ++++++++++++++ locales/it-IT/metadata.json | 23 +- locales/ja-JP/common.json | 2 +- locales/ja-JP/discover.json | 200 ++++++++++++++ locales/ja-JP/metadata.json | 23 +- locales/ko-KR/common.json | 2 +- locales/ko-KR/discover.json | 200 ++++++++++++++ locales/ko-KR/metadata.json | 23 +- locales/nl-NL/common.json | 2 +- locales/nl-NL/discover.json | 200 ++++++++++++++ locales/nl-NL/metadata.json | 23 +- locales/pl-PL/common.json | 2 +- locales/pl-PL/discover.json | 200 ++++++++++++++ locales/pl-PL/metadata.json | 23 +- locales/pt-BR/common.json | 2 +- locales/pt-BR/discover.json | 200 ++++++++++++++ locales/pt-BR/metadata.json | 23 +- locales/ru-RU/common.json | 2 +- locales/ru-RU/discover.json | 200 ++++++++++++++ locales/ru-RU/metadata.json | 23 +- locales/tr-TR/common.json | 2 +- locales/tr-TR/discover.json | 200 ++++++++++++++ locales/tr-TR/metadata.json | 23 +- locales/vi-VN/common.json | 2 +- locales/vi-VN/discover.json | 200 ++++++++++++++ locales/vi-VN/metadata.json | 23 +- locales/zh-CN/common.json | 2 +- locales/zh-CN/discover.json | 200 ++++++++++++++ locales/zh-CN/metadata.json | 23 +- locales/zh-TW/common.json | 2 +- locales/zh-TW/discover.json | 200 ++++++++++++++ locales/zh-TW/metadata.json | 23 +- .../@nav/_layout/Desktop/TopActions.test.tsx | 6 +- .../@nav/_layout/Desktop/TopActions.tsx | 6 +- src/app/(main)/@nav/_layout/Mobile.tsx | 6 +- src/app/(main)/_layout/Mobile.tsx | 10 +- .../discover/(detail)/_layout/Desktop.tsx | 27 ++ .../(detail)/_layout/Mobile/Header.tsx | 25 ++ .../(detail)/_layout/Mobile/index.tsx | 19 ++ .../assistant/[slug]/features/Actions.tsx | 35 +++ .../assistant/[slug]/features/AddAgent.tsx | 86 ++++++ .../ConversationExample/TopicList.tsx | 74 +++++ .../features/ConversationExample/index.tsx | 100 +++++++ .../assistant/[slug]/features/Header.tsx | 118 ++++++++ .../features/InfoSidebar/SuggestionItem.tsx | 62 +++++ .../[slug]/features/InfoSidebar/ToolItem.tsx | 19 ++ .../[slug]/features/InfoSidebar/index.tsx | 68 +++++ .../assistant/[slug]/features/SystemRole.tsx | 35 +++ .../assistant/[slug]/features/Temp.tsx | 44 +++ .../(detail)/assistant/[slug]/page.tsx | 113 ++++++++ src/app/(main)/discover/(detail)/error.tsx | 5 + .../discover/(detail)/features/Back.tsx | 34 +++ .../discover/(detail)/features/Block.tsx | 47 ++++ .../(detail)/features/DetailLayout.tsx | 55 ++++ .../(detail)/features/HighlightBlock.tsx | 64 +++++ .../(detail)/features/ShareButton.tsx | 162 +++++++++++ .../(detail)/features/SidebarContainer.tsx | 19 ++ src/app/(main)/discover/(detail)/layout.tsx | 12 + src/app/(main)/discover/(detail)/loading.tsx | 36 +++ .../model/[slug]/features/Actions.tsx | 43 +++ .../model/[slug]/features/ChatWithModel.tsx | 82 ++++++ .../(detail)/model/[slug]/features/Header.tsx | 85 ++++++ .../features/InfoSidebar/SuggestionItem.tsx | 73 +++++ .../[slug]/features/InfoSidebar/index.tsx | 53 ++++ .../features/ParameterList/ParameterItem.tsx | 71 +++++ .../[slug]/features/ParameterList/index.tsx | 110 ++++++++ .../features/ProviderList/ProviderItem.tsx | 122 +++++++++ .../[slug]/features/ProviderList/index.tsx | 52 ++++ .../(detail)/model/[slug]/features/Tags.tsx | 77 ++++++ .../discover/(detail)/model/[slug]/page.tsx | 94 +++++++ .../(main)/discover/(detail)/not-found.tsx | 3 + .../plugin/[slug]/features/Actions.tsx | 35 +++ .../plugin/[slug]/features/Header.tsx | 114 ++++++++ .../features/InfoSidebar/SuggestionItem.tsx | 62 +++++ .../[slug]/features/InfoSidebar/index.tsx | 53 ++++ .../plugin/[slug]/features/InstallPlugin.tsx | 87 ++++++ .../plugin/[slug]/features/ParameterList.tsx | 95 +++++++ .../plugin/[slug]/features/Schema.tsx | 23 ++ .../discover/(detail)/plugin/[slug]/page.tsx | 95 +++++++ .../provider/[slug]/features/Actions.tsx | 49 ++++ .../[slug]/features/ConfigProvider.tsx | 26 ++ .../provider/[slug]/features/Header.tsx | 73 +++++ .../features/InfoSidebar/SuggestionItem.tsx | 91 +++++++ .../[slug]/features/InfoSidebar/index.tsx | 53 ++++ .../[slug]/features/ModelList/ModelItem.tsx | 84 ++++++ .../[slug]/features/ModelList/index.tsx | 46 ++++ .../(detail)/provider/[slug]/page.tsx | 93 +++++++ .../(main)/discover/(list)/(home)/Client.tsx | 44 +++ .../(list)/(home)/features/AssistantList.tsx | 27 ++ .../(list)/(home)/features/ModelList.tsx | 22 ++ .../(list)/(home)/features/PluginList.tsx | 21 ++ .../(main)/discover/(list)/(home)/loading.tsx | 1 + .../(main)/discover/(list)/(home)/page.tsx | 46 ++++ .../discover/(list)/_layout/Desktop/Nav.tsx | 125 +++++++++ .../discover/(list)/_layout/Desktop/index.tsx | 37 +++ .../(list)/_layout/Desktop/useScroll.ts | 32 +++ .../discover/(list)/_layout/Mobile/Header.tsx | 55 ++++ .../discover/(list)/_layout/Mobile/Nav.tsx | 94 +++++++ .../discover/(list)/_layout/Mobile/index.tsx | 27 ++ .../(list)/assistants/[slug]/page.tsx | 60 ++++ .../(list)/assistants/_layout/Desktop.tsx | 22 ++ .../(list)/assistants/_layout/Mobile.tsx | 9 + .../(list)/assistants/features/Card.tsx | 148 ++++++++++ .../(list)/assistants/features/Category.tsx | 48 ++++ .../(list)/assistants/features/List.tsx | 88 ++++++ .../(list)/assistants/features/TagList.tsx | 45 +++ .../assistants/features/useCategory.tsx | 116 ++++++++ .../discover/(list)/assistants/layout.tsx | 12 + .../discover/(list)/assistants/loading.tsx | 1 + .../discover/(list)/assistants/page.tsx | 47 ++++ .../(list)/components/CategoryMenu.tsx | 39 +++ .../(list)/components/GridLoadingCard.tsx | 69 +++++ .../(list)/components/SearchResultCount.tsx | 37 +++ src/app/(main)/discover/(list)/error.tsx | 5 + .../(list)/features/CardBanner.tsx} | 10 +- .../(list)/features/CategoryContainer.tsx | 18 ++ .../discover/(list)/features/LazyLoad.tsx | 21 ++ .../discover/(list)/features/ListLoading.tsx | 55 ++++ .../discover/(list)/features/Loading.tsx | 17 ++ .../(list)}/features/TagList.tsx | 42 ++- .../(main)/discover/(list)/features/Title.tsx | 51 ++++ .../{market => discover/(list)}/layout.tsx | 7 +- src/app/(main)/discover/(list)/loading.tsx | 39 +++ .../discover/(list)/models/[slug]/page.tsx | 62 +++++ .../(list)/models/_layout/Desktop.tsx | 26 ++ .../discover/(list)/models/_layout/Mobile.tsx | 9 + .../discover/(list)/models/features/Card.tsx | 111 ++++++++ .../(list)/models/features/Category.tsx | 67 +++++ .../discover/(list)/models/features/List.tsx | 66 +++++ .../discover/(list)/models/features/const.ts | 9 + .../(main)/discover/(list)/models/layout.tsx | 12 + .../(main)/discover/(list)/models/loading.tsx | 1 + .../(main)/discover/(list)/models/page.tsx | 55 ++++ src/app/(main)/discover/(list)/not-found.tsx | 3 + .../discover/(list)/plugins/[slug]/page.tsx | 60 ++++ .../(list)/plugins/_layout/Desktop.tsx | 22 ++ .../(list)/plugins/_layout/Mobile.tsx | 9 + .../(list)/plugins/features/Card.tsx} | 90 +++--- .../(list)/plugins/features/Category.tsx | 45 +++ .../discover/(list)/plugins/features/List.tsx | 88 ++++++ .../(list)/plugins/features/TagList.tsx | 45 +++ .../(list)/plugins/features/useCategory.tsx | 79 ++++++ .../(main)/discover/(list)/plugins/layout.tsx | 12 + .../discover/(list)/plugins/loading.tsx | 1 + .../(main)/discover/(list)/plugins/page.tsx | 48 ++++ .../(list)/providers/features/Card.tsx | 119 ++++++++ .../(list)/providers/features/List.tsx | 65 +++++ .../discover/(list)/providers/loading.tsx | 1 + .../(main)/discover/(list)/providers/page.tsx | 48 ++++ .../(list)/search/assistants/page.tsx | 53 ++++ .../(main)/discover/(list)/search/loading.tsx | 14 + .../discover/(list)/search/models/page.tsx | 53 ++++ .../(main)/discover/(list)/search/page.tsx | 17 ++ .../discover/(list)/search/plugins/page.tsx | 52 ++++ .../discover/(list)/search/providers/page.tsx | 53 ++++ src/app/(main)/discover/(list)/type.ts | 3 + .../discover/_layout/Desktop/Header.tsx | 45 +++ .../(main)/discover/_layout/Desktop/index.tsx | 21 ++ .../(main)/discover/_layout/Mobile/index.tsx | 9 + .../components/VirtuosoGridList/index.tsx | 26 ++ .../VirtuosoGridList/useScrollParent.ts | 19 ++ src/app/(main)/discover/error.tsx | 5 + .../features/CreateButton}/Inner.tsx | 19 +- .../features/CreateButton}/index.tsx | 18 +- .../(main)/discover/features/GitHubAvatar.tsx | 19 ++ .../(main)/discover/features/LikeButton.tsx | 73 +++++ .../(main)/discover/features/Statistic.tsx | 92 +++++++ .../discover/features/StoreSearchBar.tsx | 116 ++++++++ src/app/(main)/discover/features/const.ts | 2 + src/app/(main)/discover/features/useNav.tsx | 72 +++++ .../discover/features/useProviderList.tsx | 21 ++ src/app/(main)/discover/layout.tsx | 12 + src/app/(main)/discover/loading.tsx | 9 + src/app/(main)/discover/not-found.tsx | 3 + src/app/(main)/market/@detail/default.tsx | 12 - .../@detail/features/AgentDetailContent.tsx | 73 ----- .../(main)/market/@detail/features/Banner.tsx | 46 ---- .../market/@detail/features/Comment.tsx | 16 -- .../(main)/market/@detail/features/Header.tsx | 81 ------ .../market/@detail/features/Loading.tsx | 63 ----- .../market/@detail/features/TokenTag.tsx | 27 -- .../(main)/market/@detail/features/style.ts | 32 --- .../market/_layout/Desktop/DetailSidebar.tsx | 84 ------ .../(main)/market/_layout/Desktop/Header.tsx | 29 -- .../(main)/market/_layout/Desktop/Hero.tsx | 40 --- .../(main)/market/_layout/Desktop/index.tsx | 46 ---- .../market/_layout/Mobile/DetailModal.tsx | 32 --- .../(main)/market/_layout/Mobile/Header.tsx | 20 -- .../(main)/market/_layout/Mobile/index.tsx | 25 -- src/app/(main)/market/_layout/type.ts | 6 - src/app/(main)/market/features/AgentList.tsx | 103 ------- .../(main)/market/features/AgentSearchBar.tsx | 42 --- src/app/(main)/market/loading.tsx | 15 - src/app/(main)/market/page.tsx | 44 --- src/app/(main)/welcome/features/Actions.tsx | 2 +- .../api/{market => assistant}/[id]/route.ts | 4 +- .../store/AssistantStore.test.ts} | 20 +- .../store/AssistantStore.ts} | 2 +- .../api/{market => assistant/store}/route.ts | 4 +- .../FetchErrorNotification/Description.tsx | 2 + src/const/discover.ts | 65 ++++- src/const/market.ts | 15 - .../Conversation/Error/PluginSettings.tsx | 2 +- .../Messages/Tool/Inspector/Settings.tsx | 2 +- .../components/InboxWelcome/AgentsSuggest.tsx | 60 ++-- src/features/MobileTabBar/index.tsx | 6 +- src/features/PluginDetailModal/APIs.tsx | 2 +- .../PluginDevModal/UrlManifestForm.tsx | 2 +- .../PluginStore/PluginItem/Action.tsx | 2 +- .../PluginsUI/Render/DefaultType/index.tsx | 2 +- .../PluginsUI/Render/StandaloneType/index.tsx | 2 +- src/hooks/useShare.tsx | 191 +++++++++++++ src/locales/default/common.ts | 2 +- src/locales/default/discover.ts | 201 ++++++++++++++ src/locales/default/index.ts | 4 +- src/locales/default/market.ts | 32 --- src/locales/default/metadata.ts | 26 +- src/server/ld.ts | 57 ++++ src/server/translation.ts | 14 +- .../__tests__/__snapshots__/tool.test.ts.snap | 2 +- src/services/__tests__/tool.test.ts | 24 +- src/services/_url.ts | 4 +- src/services/assistant.ts | 50 ++++ src/services/chat.ts | 2 +- src/services/discover.ts | 256 ++++++++++++++++++ src/services/market.ts | 22 -- src/services/tool.ts | 51 +++- src/store/chat/slices/plugin/action.ts | 4 +- src/store/global/initialState.ts | 2 +- src/store/market/action.ts | 82 ------ src/store/market/index.ts | 3 - src/store/market/initialState.ts | 19 -- src/store/market/selectors.ts | 38 --- src/store/market/store.ts | 48 ---- src/store/tool/selectors/tool.test.ts | 2 +- .../tool/slices/customPlugin/action.test.ts | 2 +- src/store/tool/slices/customPlugin/action.ts | 2 +- src/store/tool/slices/plugin/action.ts | 2 +- .../tool/slices/plugin/selectors.test.ts | 6 +- src/store/tool/slices/plugin/selectors.ts | 6 +- src/store/tool/slices/store/action.test.ts | 22 +- src/store/tool/slices/store/action.ts | 18 +- src/types/discover.ts | 152 +++++++++++ src/types/market.ts | 20 -- src/types/meta.ts | 1 + src/utils/format.ts | 31 +++ 265 files changed, 11581 insertions(+), 1419 deletions(-) create mode 100644 locales/ar/discover.json create mode 100644 locales/bg-BG/discover.json create mode 100644 locales/de-DE/discover.json create mode 100644 locales/en-US/discover.json create mode 100644 locales/es-ES/discover.json create mode 100644 locales/fr-FR/discover.json create mode 100644 locales/it-IT/discover.json create mode 100644 locales/ja-JP/discover.json create mode 100644 locales/ko-KR/discover.json create mode 100644 locales/nl-NL/discover.json create mode 100644 locales/pl-PL/discover.json create mode 100644 locales/pt-BR/discover.json create mode 100644 locales/ru-RU/discover.json create mode 100644 locales/tr-TR/discover.json create mode 100644 locales/vi-VN/discover.json create mode 100644 locales/zh-CN/discover.json create mode 100644 locales/zh-TW/discover.json create mode 100644 src/app/(main)/discover/(detail)/_layout/Desktop.tsx create mode 100644 src/app/(main)/discover/(detail)/_layout/Mobile/Header.tsx create mode 100644 src/app/(main)/discover/(detail)/_layout/Mobile/index.tsx create mode 100644 src/app/(main)/discover/(detail)/assistant/[slug]/features/Actions.tsx create mode 100644 src/app/(main)/discover/(detail)/assistant/[slug]/features/AddAgent.tsx create mode 100644 src/app/(main)/discover/(detail)/assistant/[slug]/features/ConversationExample/TopicList.tsx create mode 100644 src/app/(main)/discover/(detail)/assistant/[slug]/features/ConversationExample/index.tsx create mode 100644 src/app/(main)/discover/(detail)/assistant/[slug]/features/Header.tsx create mode 100644 src/app/(main)/discover/(detail)/assistant/[slug]/features/InfoSidebar/SuggestionItem.tsx create mode 100644 src/app/(main)/discover/(detail)/assistant/[slug]/features/InfoSidebar/ToolItem.tsx create mode 100644 src/app/(main)/discover/(detail)/assistant/[slug]/features/InfoSidebar/index.tsx create mode 100644 src/app/(main)/discover/(detail)/assistant/[slug]/features/SystemRole.tsx create mode 100644 src/app/(main)/discover/(detail)/assistant/[slug]/features/Temp.tsx create mode 100644 src/app/(main)/discover/(detail)/assistant/[slug]/page.tsx create mode 100644 src/app/(main)/discover/(detail)/error.tsx create mode 100644 src/app/(main)/discover/(detail)/features/Back.tsx create mode 100644 src/app/(main)/discover/(detail)/features/Block.tsx create mode 100644 src/app/(main)/discover/(detail)/features/DetailLayout.tsx create mode 100644 src/app/(main)/discover/(detail)/features/HighlightBlock.tsx create mode 100644 src/app/(main)/discover/(detail)/features/ShareButton.tsx create mode 100644 src/app/(main)/discover/(detail)/features/SidebarContainer.tsx create mode 100644 src/app/(main)/discover/(detail)/layout.tsx create mode 100644 src/app/(main)/discover/(detail)/loading.tsx create mode 100644 src/app/(main)/discover/(detail)/model/[slug]/features/Actions.tsx create mode 100644 src/app/(main)/discover/(detail)/model/[slug]/features/ChatWithModel.tsx create mode 100644 src/app/(main)/discover/(detail)/model/[slug]/features/Header.tsx create mode 100644 src/app/(main)/discover/(detail)/model/[slug]/features/InfoSidebar/SuggestionItem.tsx create mode 100644 src/app/(main)/discover/(detail)/model/[slug]/features/InfoSidebar/index.tsx create mode 100644 src/app/(main)/discover/(detail)/model/[slug]/features/ParameterList/ParameterItem.tsx create mode 100644 src/app/(main)/discover/(detail)/model/[slug]/features/ParameterList/index.tsx create mode 100644 src/app/(main)/discover/(detail)/model/[slug]/features/ProviderList/ProviderItem.tsx create mode 100644 src/app/(main)/discover/(detail)/model/[slug]/features/ProviderList/index.tsx create mode 100644 src/app/(main)/discover/(detail)/model/[slug]/features/Tags.tsx create mode 100644 src/app/(main)/discover/(detail)/model/[slug]/page.tsx create mode 100644 src/app/(main)/discover/(detail)/not-found.tsx create mode 100644 src/app/(main)/discover/(detail)/plugin/[slug]/features/Actions.tsx create mode 100644 src/app/(main)/discover/(detail)/plugin/[slug]/features/Header.tsx create mode 100644 src/app/(main)/discover/(detail)/plugin/[slug]/features/InfoSidebar/SuggestionItem.tsx create mode 100644 src/app/(main)/discover/(detail)/plugin/[slug]/features/InfoSidebar/index.tsx create mode 100644 src/app/(main)/discover/(detail)/plugin/[slug]/features/InstallPlugin.tsx create mode 100644 src/app/(main)/discover/(detail)/plugin/[slug]/features/ParameterList.tsx create mode 100644 src/app/(main)/discover/(detail)/plugin/[slug]/features/Schema.tsx create mode 100644 src/app/(main)/discover/(detail)/plugin/[slug]/page.tsx create mode 100644 src/app/(main)/discover/(detail)/provider/[slug]/features/Actions.tsx create mode 100644 src/app/(main)/discover/(detail)/provider/[slug]/features/ConfigProvider.tsx create mode 100644 src/app/(main)/discover/(detail)/provider/[slug]/features/Header.tsx create mode 100644 src/app/(main)/discover/(detail)/provider/[slug]/features/InfoSidebar/SuggestionItem.tsx create mode 100644 src/app/(main)/discover/(detail)/provider/[slug]/features/InfoSidebar/index.tsx create mode 100644 src/app/(main)/discover/(detail)/provider/[slug]/features/ModelList/ModelItem.tsx create mode 100644 src/app/(main)/discover/(detail)/provider/[slug]/features/ModelList/index.tsx create mode 100644 src/app/(main)/discover/(detail)/provider/[slug]/page.tsx create mode 100644 src/app/(main)/discover/(list)/(home)/Client.tsx create mode 100644 src/app/(main)/discover/(list)/(home)/features/AssistantList.tsx create mode 100644 src/app/(main)/discover/(list)/(home)/features/ModelList.tsx create mode 100644 src/app/(main)/discover/(list)/(home)/features/PluginList.tsx create mode 100644 src/app/(main)/discover/(list)/(home)/loading.tsx create mode 100644 src/app/(main)/discover/(list)/(home)/page.tsx create mode 100644 src/app/(main)/discover/(list)/_layout/Desktop/Nav.tsx create mode 100644 src/app/(main)/discover/(list)/_layout/Desktop/index.tsx create mode 100644 src/app/(main)/discover/(list)/_layout/Desktop/useScroll.ts create mode 100644 src/app/(main)/discover/(list)/_layout/Mobile/Header.tsx create mode 100644 src/app/(main)/discover/(list)/_layout/Mobile/Nav.tsx create mode 100644 src/app/(main)/discover/(list)/_layout/Mobile/index.tsx create mode 100644 src/app/(main)/discover/(list)/assistants/[slug]/page.tsx create mode 100644 src/app/(main)/discover/(list)/assistants/_layout/Desktop.tsx create mode 100644 src/app/(main)/discover/(list)/assistants/_layout/Mobile.tsx create mode 100644 src/app/(main)/discover/(list)/assistants/features/Card.tsx create mode 100644 src/app/(main)/discover/(list)/assistants/features/Category.tsx create mode 100644 src/app/(main)/discover/(list)/assistants/features/List.tsx create mode 100644 src/app/(main)/discover/(list)/assistants/features/TagList.tsx create mode 100644 src/app/(main)/discover/(list)/assistants/features/useCategory.tsx create mode 100644 src/app/(main)/discover/(list)/assistants/layout.tsx create mode 100644 src/app/(main)/discover/(list)/assistants/loading.tsx create mode 100644 src/app/(main)/discover/(list)/assistants/page.tsx create mode 100644 src/app/(main)/discover/(list)/components/CategoryMenu.tsx create mode 100644 src/app/(main)/discover/(list)/components/GridLoadingCard.tsx create mode 100644 src/app/(main)/discover/(list)/components/SearchResultCount.tsx create mode 100644 src/app/(main)/discover/(list)/error.tsx rename src/app/(main)/{market/features/AgentCard/AgentCardBanner.tsx => discover/(list)/features/CardBanner.tsx} (86%) create mode 100644 src/app/(main)/discover/(list)/features/CategoryContainer.tsx create mode 100644 src/app/(main)/discover/(list)/features/LazyLoad.tsx create mode 100644 src/app/(main)/discover/(list)/features/ListLoading.tsx create mode 100644 src/app/(main)/discover/(list)/features/Loading.tsx rename src/app/(main)/{market => discover/(list)}/features/TagList.tsx (50%) create mode 100644 src/app/(main)/discover/(list)/features/Title.tsx rename src/app/(main)/{market => discover/(list)}/layout.tsx (51%) create mode 100644 src/app/(main)/discover/(list)/loading.tsx create mode 100644 src/app/(main)/discover/(list)/models/[slug]/page.tsx create mode 100644 src/app/(main)/discover/(list)/models/_layout/Desktop.tsx create mode 100644 src/app/(main)/discover/(list)/models/_layout/Mobile.tsx create mode 100644 src/app/(main)/discover/(list)/models/features/Card.tsx create mode 100644 src/app/(main)/discover/(list)/models/features/Category.tsx create mode 100644 src/app/(main)/discover/(list)/models/features/List.tsx create mode 100644 src/app/(main)/discover/(list)/models/features/const.ts create mode 100644 src/app/(main)/discover/(list)/models/layout.tsx create mode 100644 src/app/(main)/discover/(list)/models/loading.tsx create mode 100644 src/app/(main)/discover/(list)/models/page.tsx create mode 100644 src/app/(main)/discover/(list)/not-found.tsx create mode 100644 src/app/(main)/discover/(list)/plugins/[slug]/page.tsx create mode 100644 src/app/(main)/discover/(list)/plugins/_layout/Desktop.tsx create mode 100644 src/app/(main)/discover/(list)/plugins/_layout/Mobile.tsx rename src/app/(main)/{market/features/AgentCard/index.tsx => discover/(list)/plugins/features/Card.tsx} (53%) create mode 100644 src/app/(main)/discover/(list)/plugins/features/Category.tsx create mode 100644 src/app/(main)/discover/(list)/plugins/features/List.tsx create mode 100644 src/app/(main)/discover/(list)/plugins/features/TagList.tsx create mode 100644 src/app/(main)/discover/(list)/plugins/features/useCategory.tsx create mode 100644 src/app/(main)/discover/(list)/plugins/layout.tsx create mode 100644 src/app/(main)/discover/(list)/plugins/loading.tsx create mode 100644 src/app/(main)/discover/(list)/plugins/page.tsx create mode 100644 src/app/(main)/discover/(list)/providers/features/Card.tsx create mode 100644 src/app/(main)/discover/(list)/providers/features/List.tsx create mode 100644 src/app/(main)/discover/(list)/providers/loading.tsx create mode 100644 src/app/(main)/discover/(list)/providers/page.tsx create mode 100644 src/app/(main)/discover/(list)/search/assistants/page.tsx create mode 100644 src/app/(main)/discover/(list)/search/loading.tsx create mode 100644 src/app/(main)/discover/(list)/search/models/page.tsx create mode 100644 src/app/(main)/discover/(list)/search/page.tsx create mode 100644 src/app/(main)/discover/(list)/search/plugins/page.tsx create mode 100644 src/app/(main)/discover/(list)/search/providers/page.tsx create mode 100644 src/app/(main)/discover/(list)/type.ts create mode 100644 src/app/(main)/discover/_layout/Desktop/Header.tsx create mode 100644 src/app/(main)/discover/_layout/Desktop/index.tsx create mode 100644 src/app/(main)/discover/_layout/Mobile/index.tsx create mode 100644 src/app/(main)/discover/components/VirtuosoGridList/index.tsx create mode 100644 src/app/(main)/discover/components/VirtuosoGridList/useScrollParent.ts create mode 100644 src/app/(main)/discover/error.tsx rename src/app/(main)/{market/features/ShareAgentButton => discover/features/CreateButton}/Inner.tsx (70%) rename src/app/(main)/{market/features/ShareAgentButton => discover/features/CreateButton}/index.tsx (72%) create mode 100644 src/app/(main)/discover/features/GitHubAvatar.tsx create mode 100644 src/app/(main)/discover/features/LikeButton.tsx create mode 100644 src/app/(main)/discover/features/Statistic.tsx create mode 100644 src/app/(main)/discover/features/StoreSearchBar.tsx create mode 100644 src/app/(main)/discover/features/const.ts create mode 100644 src/app/(main)/discover/features/useNav.tsx create mode 100644 src/app/(main)/discover/features/useProviderList.tsx create mode 100644 src/app/(main)/discover/layout.tsx create mode 100644 src/app/(main)/discover/loading.tsx create mode 100644 src/app/(main)/discover/not-found.tsx delete mode 100644 src/app/(main)/market/@detail/default.tsx delete mode 100644 src/app/(main)/market/@detail/features/AgentDetailContent.tsx delete mode 100644 src/app/(main)/market/@detail/features/Banner.tsx delete mode 100644 src/app/(main)/market/@detail/features/Comment.tsx delete mode 100644 src/app/(main)/market/@detail/features/Header.tsx delete mode 100644 src/app/(main)/market/@detail/features/Loading.tsx delete mode 100644 src/app/(main)/market/@detail/features/TokenTag.tsx delete mode 100644 src/app/(main)/market/@detail/features/style.ts delete mode 100644 src/app/(main)/market/_layout/Desktop/DetailSidebar.tsx delete mode 100644 src/app/(main)/market/_layout/Desktop/Header.tsx delete mode 100644 src/app/(main)/market/_layout/Desktop/Hero.tsx delete mode 100644 src/app/(main)/market/_layout/Desktop/index.tsx delete mode 100644 src/app/(main)/market/_layout/Mobile/DetailModal.tsx delete mode 100644 src/app/(main)/market/_layout/Mobile/Header.tsx delete mode 100644 src/app/(main)/market/_layout/Mobile/index.tsx delete mode 100644 src/app/(main)/market/_layout/type.ts delete mode 100644 src/app/(main)/market/features/AgentList.tsx delete mode 100644 src/app/(main)/market/features/AgentSearchBar.tsx delete mode 100644 src/app/(main)/market/loading.tsx delete mode 100644 src/app/(main)/market/page.tsx rename src/app/api/{market => assistant}/[id]/route.ts (82%) rename src/app/api/{market/AgentMarket.test.ts => assistant/store/AssistantStore.test.ts} (78%) rename src/app/api/{market/AgentMarket.ts => assistant/store/AssistantStore.ts} (96%) rename src/app/api/{market => assistant/store}/route.ts (83%) delete mode 100644 src/const/market.ts create mode 100644 src/hooks/useShare.tsx create mode 100644 src/locales/default/discover.ts delete mode 100644 src/locales/default/market.ts create mode 100644 src/services/assistant.ts create mode 100644 src/services/discover.ts delete mode 100644 src/services/market.ts delete mode 100644 src/store/market/action.ts delete mode 100644 src/store/market/index.ts delete mode 100644 src/store/market/initialState.ts delete mode 100644 src/store/market/selectors.ts delete mode 100644 src/store/market/store.ts create mode 100644 src/types/discover.ts delete mode 100644 src/types/market.ts diff --git a/locales/ar/common.json b/locales/ar/common.json index b0cf6df239583..d7b55c35f8781 100644 --- a/locales/ar/common.json +++ b/locales/ar/common.json @@ -195,8 +195,8 @@ }, "tab": { "chat": "الدردشة", + "discover": "اكتشاف", "files": "ملفات", - "market": "الاكتشاف", "me": "أنا", "setting": "الإعدادات" }, diff --git a/locales/ar/discover.json b/locales/ar/discover.json new file mode 100644 index 0000000000000..90cc79ca1532a --- /dev/null +++ b/locales/ar/discover.json @@ -0,0 +1,200 @@ +{ + "assistants": { + "addAgent": "إضافة مساعد", + "addAgentAndConverse": "إضافة مساعد والدردشة", + "addAgentSuccess": "تمت الإضافة بنجاح", + "conversation": { + "l1": "مرحبًا، أنا **{{name}}**، يمكنك أن تسألني أي سؤال وسأبذل قصارى جهدي للإجابة ~", + "l2": "إليك مقدمة عن قدراتي: ", + "l3": "لنبدأ المحادثة!" + }, + "description": "مقدمة المساعد", + "detail": "تفاصيل", + "list": "قائمة المساعدين", + "more": "المزيد", + "plugins": "دمج الإضافات", + "recentSubmits": "آخر التحديثات", + "suggestions": "اقتراحات ذات صلة", + "systemRole": "إعدادات المساعد", + "try": "جرب" + }, + "back": "عودة إلى الاكتشاف", + "category": { + "assistant": { + "academic": "أكاديمي", + "all": "الكل", + "career": "مهنة", + "copywriting": "كتابة نصوص", + "design": "تصميم", + "education": "تعليم", + "emotions": "عواطف", + "entertainment": "ترفيه", + "games": "ألعاب", + "general": "عام", + "life": "حياة", + "marketing": "تسويق", + "office": "مكتب", + "programming": "برمجة", + "translation": "ترجمة" + }, + "plugin": { + "all": "الكل", + "gaming-entertainment": "ألعاب وترفيه", + "life-style": "أسلوب حياة", + "media-generate": "توليد الوسائط", + "science-education": "علوم وتعليم", + "social": "وسائل التواصل الاجتماعي", + "stocks-finance": "أسواق مالية", + "tools": "أدوات عملية", + "web-search": "بحث على الويب" + } + }, + "cleanFilter": "مسح الفلتر", + "create": "إنشاء", + "createGuide": { + "func1": { + "desc1": "ادخل إلى صفحة إعداد المساعد الذي ترغب في تقديمه من خلال الإعدادات في الزاوية العليا اليمنى من نافذة المحادثة;", + "desc2": "انقر على زر التقديم إلى سوق المساعدين في الزاوية العليا اليمنى.", + "tag": "الطريقة الأولى", + "title": "تقديم عبر LobeChat" + }, + "func2": { + "button": "اذهب إلى مستودع مساعدي Github", + "desc": "إذا كنت ترغب في إضافة مساعد إلى الفهرس، يرجى استخدام agent-template.json أو agent-template-full.json لإنشاء إدخال في دليل الإضافات، كتابة وصف قصير ووضع علامات مناسبة، ثم إنشاء طلب سحب.", + "tag": "الطريقة الثانية", + "title": "تقديم عبر Github" + } + }, + "dislike": "لا يعجبني", + "filter": "تصفية", + "filterBy": { + "authorRange": { + "everyone": "جميع المؤلفين", + "followed": "المؤلفون المتابعون", + "title": "نطاق المؤلفين" + }, + "contentLength": "أقل طول للسياق", + "maxToken": { + "title": "تعيين الحد الأقصى للطول (Token)", + "unlimited": "غير محدود" + }, + "other": { + "functionCall": "دعم استدعاء الوظائف", + "title": "أخرى", + "vision": "دعم التعرف البصري", + "withKnowledge": "مع قاعدة المعرفة", + "withTool": "مع الإضافات" + }, + "pricing": "أسعار النموذج", + "timePeriod": { + "all": "كل الوقت", + "day": "آخر 24 ساعة", + "month": "آخر 30 يومًا", + "title": "نطاق الوقت", + "week": "آخر 7 أيام", + "year": "آخر سنة" + } + }, + "home": { + "featuredAssistants": "مساعدون مميزون", + "featuredModels": "نماذج مميزة", + "featuredProviders": "مزودو نماذج مميزون", + "featuredTools": "إضافات مميزة", + "more": "اكتشف المزيد" + }, + "like": "أحب", + "models": { + "chat": "بدء المحادثة", + "contentLength": "أقصى طول للسياق", + "free": "مجاني", + "guide": "دليل الإعداد", + "list": "قائمة النماذج", + "more": "المزيد", + "parameterList": { + "defaultValue": "القيمة الافتراضية", + "docs": "عرض الوثائق", + "frequency_penalty": { + "desc": "تقوم هذه الإعدادات بتعديل تكرار استخدام النموذج لكلمات معينة ظهرت بالفعل في المدخلات. القيم الأعلى تقلل من احتمال تكرار هذه الكلمات، بينما القيم السلبية تعزز استخدامها. عقوبة الكلمات لا تزداد مع زيادة عدد مرات الظهور. القيم السلبية ستشجع على تكرار الكلمات.", + "title": "عقوبة التكرار" + }, + "max_tokens": { + "desc": "تحدد هذه الإعدادات الحد الأقصى لطول النص الذي يمكن أن ينتجه النموذج في رد واحد. يسمح تعيين قيمة أعلى للنموذج بإنتاج ردود أطول، بينما تحدد القيمة المنخفضة طول الردود، مما يجعلها أكثر اختصارًا. يمكن أن يساعد ضبط هذه القيمة بشكل معقول وفقًا لمختلف سيناريوهات الاستخدام في تحقيق الطول والتفاصيل المتوقعة للرد.", + "title": "حد الرد الواحد" + }, + "presence_penalty": { + "desc": "تهدف هذه الإعدادات إلى التحكم في تكرار استخدام الكلمات بناءً على تكرار ظهورها في المدخلات. تحاول تقليل استخدام الكلمات التي ظهرت كثيرًا في المدخلات، حيث يتناسب تكرار استخدامها مع تكرار ظهورها. عقوبة الكلمات تزداد مع عدد مرات الظهور. القيم السلبية ستشجع على تكرار الكلمات.", + "title": "جدة الموضوع" + }, + "range": "نطاق", + "temperature": { + "desc": "تؤثر هذه الإعدادات على تنوع استجابة النموذج. القيم المنخفضة تؤدي إلى استجابات أكثر توقعًا ونمطية، بينما القيم الأعلى تشجع على استجابات أكثر تنوعًا وغير شائعة. عندما تكون القيمة 0، يعطي النموذج نفس الاستجابة دائمًا لنفس المدخل.", + "title": "عشوائية" + }, + "title": "معلمات النموذج", + "top_p": { + "desc": "تحدد هذه الإعدادات اختيار النموذج للكلمات ذات الاحتمالية الأعلى فقط: اختيار الكلمات التي تصل احتمالاتها التراكمية إلى P. القيم المنخفضة تجعل استجابات النموذج أكثر توقعًا، بينما الإعداد الافتراضي يسمح للنموذج بالاختيار من جميع نطاق الكلمات.", + "title": "عينات النواة" + }, + "type": "نوع" + }, + "providerInfo": { + "apiTooltip": "يدعم LobeChat استخدام مفتاح API مخصص لهذا المزود.", + "input": "سعر الإدخال", + "inputTooltip": "تكلفة لكل مليون Token", + "latency": "زمن الاستجابة", + "latencyTooltip": "متوسط زمن استجابة المزود لإرسال أول Token", + "maxOutput": "أقصى طول للإخراج", + "maxOutputTooltip": "عدد Tokens الأقصى الذي يمكن أن ينتجه هذا النقطة", + "officialTooltip": "خدمة رسمية من LobeHub", + "output": "سعر الإخراج", + "outputTooltip": "تكلفة لكل مليون Token", + "streamCancellationTooltip": "يدعم هذا المزود ميزة إلغاء التدفق.", + "throughput": "معدل النقل", + "throughputTooltip": "متوسط عدد Tokens المنقولة في الطلبات المتدفقة في الثانية" + }, + "suggestions": "نماذج ذات صلة", + "supportedProviders": "مزودو الخدمة المدعومون لهذا النموذج" + }, + "plugins": { + "community": "إضافات المجتمع", + "install": "تثبيت الإضافة", + "installed": "تم التثبيت", + "list": "قائمة الإضافات", + "meta": { + "description": "وصف", + "parameter": "معامل", + "title": "معامل الأداة", + "type": "نوع" + }, + "more": "المزيد", + "official": "إضافات رسمية", + "recentSubmits": "آخر التحديثات", + "suggestions": "اقتراحات ذات صلة" + }, + "providers": { + "config": "تكوين مزود الخدمة", + "list": "قائمة مزودي النماذج", + "more": "المزيد", + "suggestions": "مزودو الخدمة ذوو الصلة", + "supportedModels": "النماذج المدعومة" + }, + "search": { + "placeholder": "ابحث عن اسم أو كلمة مفتاحية...", + "result": "{{count}} نتيجة بحث حول {{keyword}}", + "searching": "جارٍ البحث..." + }, + "sort": { + "mostLiked": "الأكثر إعجابًا", + "mostUsed": "الأكثر استخدامًا", + "newest": "الأحدث", + "oldest": "الأقدم", + "recommended": "موصى به" + }, + "tab": { + "assistants": "المساعدون", + "home": "الصفحة الرئيسية", + "models": "النماذج", + "plugins": "الإضافات", + "providers": "مزودو النماذج" + } +} diff --git a/locales/ar/metadata.json b/locales/ar/metadata.json index db32777213246..034b748717a8b 100644 --- a/locales/ar/metadata.json +++ b/locales/ar/metadata.json @@ -3,9 +3,26 @@ "description": "{{appName}} يقدم لك أفضل تجربة لاستخدام ChatGPT وClaude وGemini وOLLaMA WebUI", "title": "{{appName}}: أداة الذكاء الاصطناعي الشخصية، امنح نفسك دماغًا أكثر ذكاءً" }, - "market": { - "description": "إنشاء المحتوى، الكتابة، الأسئلة والأجوبة، توليد الصور، توليد الفيديو، توليد الصوت، الوكلاء الذكيون، سير العمل الآلي، خصص مساعد الذكاء الاصطناعي الخاص بك", - "title": "سوق المساعدين" + "discover": { + "assistants": { + "description": "إنشاء المحتوى، الكتابة، الأسئلة والأجوبة، توليد الصور، توليد الفيديو، توليد الصوت، الوكلاء الذكيون، سير العمل الآلي، تخصيص مساعد الذكاء الاصطناعي / GPTs / OLLaMA الخاص بك", + "title": "مساعدات الذكاء الاصطناعي" + }, + "description": "إنشاء المحتوى، الكتابة، الأسئلة والأجوبة، توليد الصور، توليد الفيديو، توليد الصوت، الوكلاء الذكيون، سير العمل الآلي، تطبيقات الذكاء الاصطناعي المخصصة، تخصيص منصة تطبيقات الذكاء الاصطناعي الخاصة بك", + "models": { + "description": "استكشاف نماذج الذكاء الاصطناعي الرائجة OpenAI / GPT / Claude 3 / Gemini / Ollama / Azure / DeepSeek", + "title": "نماذج الذكاء الاصطناعي" + }, + "plugins": { + "description": "استكشف توليد الرسوم البيانية، والأبحاث الأكاديمية، وتوليد الصور، وتوليد الفيديو، وتوليد الصوت، وأتمتة سير العمل، ودمج قدرات إضافية غنية لمساعدتك.", + "title": "إضافات الذكاء الاصطناعي" + }, + "providers": { + "description": "استكشاف مزودي النماذج الرائجة OpenAI / Qwen / Ollama / Anthropic / DeepSeek / Google Gemini / OpenRouter", + "title": "مزودو خدمات نماذج الذكاء الاصطناعي" + }, + "search": "بحث", + "title": "اكتشاف" }, "plugins": { "description": "البحث، توليد الرسوم البيانية، الأكاديميات، توليد الصور، توليد الفيديو، توليد الصوت، سير العمل الآلي، خصص قدرات ToolCall الخاصة بـ ChatGPT / Claude", diff --git a/locales/bg-BG/common.json b/locales/bg-BG/common.json index 61a14bf7bd4a6..c56c072b12e1c 100644 --- a/locales/bg-BG/common.json +++ b/locales/bg-BG/common.json @@ -195,8 +195,8 @@ }, "tab": { "chat": "Чат", + "discover": "Открий", "files": "Файлове", - "market": "Открий", "me": "аз", "setting": "Настройки" }, diff --git a/locales/bg-BG/discover.json b/locales/bg-BG/discover.json new file mode 100644 index 0000000000000..a3fd159e51044 --- /dev/null +++ b/locales/bg-BG/discover.json @@ -0,0 +1,200 @@ +{ + "assistants": { + "addAgent": "Добави асистент", + "addAgentAndConverse": "Добави асистент и започни разговор", + "addAgentSuccess": "Успешно добавен", + "conversation": { + "l1": "Здравей, аз съм **{{name}}**, можеш да ми зададеш всякакви въпроси и ще се постарая да ти отговоря ~", + "l2": "Ето какви са моите способности: ", + "l3": "Нека започнем разговора!" + }, + "description": "Представяне на асистента", + "detail": "Детайли", + "list": "Списък с асистенти", + "more": "Още", + "plugins": "Интегрирани плъгини", + "recentSubmits": "Наскоро обновено", + "suggestions": "Свързани предложения", + "systemRole": "Настройки на асистента", + "try": "Опитай" + }, + "back": "Назад към открития", + "category": { + "assistant": { + "academic": "Академичен", + "all": "Всички", + "career": "Кариерен", + "copywriting": "Копирайтинг", + "design": "Дизайн", + "education": "Образование", + "emotions": "Емоции", + "entertainment": "Развлечение", + "games": "Игри", + "general": "Общ", + "life": "Живот", + "marketing": "Маркетинг", + "office": "Офис", + "programming": "Програмиране", + "translation": "Превод" + }, + "plugin": { + "all": "Всички", + "gaming-entertainment": "Игри и развлечения", + "life-style": "Начин на живот", + "media-generate": "Генериране на медии", + "science-education": "Наука и образование", + "social": "Социални медии", + "stocks-finance": "Акции и финанси", + "tools": "Практически инструменти", + "web-search": "Уеб търсене" + } + }, + "cleanFilter": "Изчисти филтъра", + "create": "Създай", + "createGuide": { + "func1": { + "desc1": "Влез в настройките на асистента, който искаш да добавиш, чрез иконата в горния десен ъгъл на прозореца за разговор;", + "desc2": "Натисни бутона за добавяне на асистент в горния десен ъгъл.", + "tag": "Метод 1", + "title": "Добавяне чрез LobeChat" + }, + "func2": { + "button": "Отиди на хранилището на асистенти в Github", + "desc": "Ако искаш да добавиш асистент в индекса, създай запис с agent-template.json или agent-template-full.json в директорията plugins, напиши кратко описание и подходящи тагове, след което създай pull request.", + "tag": "Метод 2", + "title": "Добавяне чрез Github" + } + }, + "dislike": "Не харесвам", + "filter": "Филтър", + "filterBy": { + "authorRange": { + "everyone": "Всички автори", + "followed": "Следвани автори", + "title": "Обхват на авторите" + }, + "contentLength": "Минимална дължина на контекста", + "maxToken": { + "title": "Настрой максимална дължина (Token)", + "unlimited": "Без ограничения" + }, + "other": { + "functionCall": "Поддържа извикване на функции", + "title": "Други", + "vision": "Поддържа визуално разпознаване", + "withKnowledge": "С включена база данни", + "withTool": "С включени инструменти" + }, + "pricing": "Цени на модела", + "timePeriod": { + "all": "Всички времена", + "day": "Последни 24 часа", + "month": "Последни 30 дни", + "title": "Обхват на времето", + "week": "Последни 7 дни", + "year": "Последна година" + } + }, + "home": { + "featuredAssistants": "Препоръчани асистенти", + "featuredModels": "Препоръчани модели", + "featuredProviders": "Препоръчани доставчици на модели", + "featuredTools": "Препоръчани инструменти", + "more": "Открий повече" + }, + "like": "Харесвам", + "models": { + "chat": "Започни разговор", + "contentLength": "Максимална дължина на контекста", + "free": "Безплатно", + "guide": "Ръководство за конфигурация", + "list": "Списък на моделите", + "more": "Още", + "parameterList": { + "defaultValue": "Стойност по подразбиране", + "docs": "Прегледай документацията", + "frequency_penalty": { + "desc": "Тази настройка регулира честотата на повторно използване на определени думи, които вече са се появили в входа. По-високи стойности намаляват вероятността за повторение, докато отрицателните стойности имат обратен ефект. Наказанието за думи не се увеличава с увеличаване на честотата на появата. Отрицателните стойности насърчават повторното използване на думи.", + "title": "Наказание за честота" + }, + "max_tokens": { + "desc": "Тази настройка определя максималната дължина, която моделът може да генерира в един отговор. По-високата стойност позволява на модела да генерира по-дълги отговори, докато по-ниската стойност ограничава дължината на отговора, правейки го по-кратък. Разумното регулиране на тази стойност в зависимост от различните приложения може да помогне за постигане на желаната дължина и детайлност на отговора.", + "title": "Ограничение за един отговор" + }, + "presence_penalty": { + "desc": "Тази настройка е предназначена да контролира повторното използване на думи в зависимост от честотата на появата им в входа. Тя се опитва да използва по-малко думи, които се появяват често, като честотата на използване е пропорционална на честотата на появата. Наказанието за думи нараства с увеличаване на честотата на появата. Отрицателните стойности насърчават повторното използване на думи.", + "title": "Свежест на темата" + }, + "range": "Обхват", + "temperature": { + "desc": "Тази настройка влияе на разнообразието на отговорите на модела. По-ниски стойности водят до по-предсказуеми и типични отговори, докато по-високи стойности насърчават по-разнообразни и необичайни отговори. Когато стойността е 0, моделът винаги дава един и същ отговор на даден вход.", + "title": "Случайност" + }, + "title": "Параметри на модела", + "top_p": { + "desc": "Тази настройка ограничава избора на модела до определен процент от най-вероятните думи: избират се само тези думи, чиято кумулативна вероятност достига P. По-ниски стойности правят отговорите на модела по-предсказуеми, докато настройката по подразбиране позволява на модела да избира от целия обхват на думите.", + "title": "Ядро на пробата" + }, + "type": "Тип" + }, + "providerInfo": { + "apiTooltip": "LobeChat поддържа използването на персонализиран API ключ за този доставчик.", + "input": "Цена на входа", + "inputTooltip": "Цена на всеки милион Token", + "latency": "Забавяне", + "latencyTooltip": "Средно време за отговор на доставчика за изпращане на първия Token", + "maxOutput": "Максимална дължина на изхода", + "maxOutputTooltip": "Максимален брой Token, които този крайна точка може да генерира", + "officialTooltip": "Официална услуга на LobeHub", + "output": "Цена на изхода", + "outputTooltip": "Цена на всеки милион Token", + "streamCancellationTooltip": "Този доставчик поддържа функция за анулиране на потока.", + "throughput": "Пропускателна способност", + "throughputTooltip": "Среден брой Token, предавани на секунда за поточни заявки" + }, + "suggestions": "Свързани модели", + "supportedProviders": "Доставчици, поддържащи този модел" + }, + "plugins": { + "community": "Обществени плъгини", + "install": "Инсталирай плъгин", + "installed": "Инсталиран", + "list": "Списък с плъгини", + "meta": { + "description": "Описание", + "parameter": "Параметър", + "title": "Инструментални параметри", + "type": "Тип" + }, + "more": "Още", + "official": "Официални плъгини", + "recentSubmits": "Наскоро обновени", + "suggestions": "Свързани предложения" + }, + "providers": { + "config": "Конфигуриране на доставчици", + "list": "Списък на доставчиците на модели", + "more": "Още", + "suggestions": "Свързани доставчици", + "supportedModels": "Поддържани модели" + }, + "search": { + "placeholder": "Търсене по име, описание или ключови думи...", + "result": "{{count}} резултата за {{keyword}}", + "searching": "Търсене..." + }, + "sort": { + "mostLiked": "Най-подобни", + "mostUsed": "Най-използвани", + "newest": "От ново към старо", + "oldest": "От старо към ново", + "recommended": "Препоръчани" + }, + "tab": { + "assistants": "Асистенти", + "home": "Начална страница", + "models": "Модели", + "plugins": "Плъгини", + "providers": "Доставчици на модели" + } +} diff --git a/locales/bg-BG/metadata.json b/locales/bg-BG/metadata.json index aff0210944270..8c12d30619a8a 100644 --- a/locales/bg-BG/metadata.json +++ b/locales/bg-BG/metadata.json @@ -3,9 +3,26 @@ "description": "{{appName}} ви предлага най-доброто изживяване с ChatGPT, Claude, Gemini и OLLaMA WebUI", "title": "{{appName}}: Личен AI инструмент за ефективност, дайте си по-умен мозък" }, - "market": { - "description": "Създаване на съдържание, копиране, въпроси и отговори, генериране на изображения, генериране на видео, генериране на глас, интелигентни агенти, автоматизирани работни потоци, персонализирайте своя собствен AI интелигентен асистент", - "title": "Пазар на асистенти" + "discover": { + "assistants": { + "description": "Създаване на съдържание, копиране, въпроси и отговори, генериране на изображения, генериране на видео, генериране на глас, интелигентни агенти, автоматизирани работни потоци, персонализирайте своя собствен AI / GPTs / OLLaMA интелигентен асистент", + "title": "AI асистенти" + }, + "description": "Създаване на съдържание, копиране, въпроси и отговори, генериране на изображения, генериране на видео, генериране на глас, интелигентни агенти, автоматизирани работни потоци, персонализирани AI приложения, персонализирайте своя собствена AI работна станция", + "models": { + "description": "Изследвайте основните AI модели OpenAI / GPT / Claude 3 / Gemini / Ollama / Azure / DeepSeek", + "title": "AI модели" + }, + "plugins": { + "description": "Търсете графични генератори, академични ресурси, генератори на изображения, генератори на видео, генератори на глас и автоматизирани работни потоци, за да интегрирате богати възможности за плъгини във вашия асистент.", + "title": "AI плъгини" + }, + "providers": { + "description": "Изследвайте основните доставчици на модели OpenAI / Qwen / Ollama / Anthropic / DeepSeek / Google Gemini / OpenRouter", + "title": "Доставчици на AI модели" + }, + "search": "Търсене", + "title": "Открий" }, "plugins": { "description": "Търсене, генериране на графики, академични изследвания, генериране на изображения, генериране на видео, генериране на глас, автоматизирани работни потоци, персонализирайте ToolCall плъгините на ChatGPT / Claude", diff --git a/locales/de-DE/common.json b/locales/de-DE/common.json index d232804ab6759..4ca51c5a849d7 100644 --- a/locales/de-DE/common.json +++ b/locales/de-DE/common.json @@ -195,8 +195,8 @@ }, "tab": { "chat": "Chat", + "discover": "Entdecken", "files": "Dateien", - "market": "Entdecken", "me": "Ich", "setting": "Einstellung" }, diff --git a/locales/de-DE/discover.json b/locales/de-DE/discover.json new file mode 100644 index 0000000000000..b9837d7f11d53 --- /dev/null +++ b/locales/de-DE/discover.json @@ -0,0 +1,200 @@ +{ + "assistants": { + "addAgent": "Assistent hinzufügen", + "addAgentAndConverse": "Assistent hinzufügen und chatten", + "addAgentSuccess": "Erfolgreich hinzugefügt", + "conversation": { + "l1": "Hallo, ich bin **{{name}}**, du kannst mir jede Frage stellen, ich werde mein Bestes tun, um dir zu antworten ~", + "l2": "Hier sind meine Fähigkeiten: ", + "l3": "Lass uns das Gespräch beginnen!" + }, + "description": "Assistentenbeschreibung", + "detail": "Details", + "list": "Assistentenliste", + "more": "Mehr", + "plugins": "Integrations-Plugins", + "recentSubmits": "Neueste Aktualisierungen", + "suggestions": "Ähnliche Empfehlungen", + "systemRole": "Assistenteneinstellungen", + "try": "Ausprobieren" + }, + "back": "Zurück zur Entdeckung", + "category": { + "assistant": { + "academic": "Akademisch", + "all": "Alle", + "career": "Karriere", + "copywriting": "Texterstellung", + "design": "Design", + "education": "Bildung", + "emotions": "Emotionen", + "entertainment": "Unterhaltung", + "games": "Spiele", + "general": "Allgemein", + "life": "Leben", + "marketing": "Marketing", + "office": "Büro", + "programming": "Programmierung", + "translation": "Übersetzung" + }, + "plugin": { + "all": "Alle", + "gaming-entertainment": "Gaming & Unterhaltung", + "life-style": "Lebensstil", + "media-generate": "Medienerstellung", + "science-education": "Wissenschaft & Bildung", + "social": "Soziale Medien", + "stocks-finance": "Aktien & Finanzen", + "tools": "Praktische Werkzeuge", + "web-search": "Websuche" + } + }, + "cleanFilter": "Filter zurücksetzen", + "create": "Erstellen", + "createGuide": { + "func1": { + "desc1": "Gehe im Chatfenster über die Einstellungen in der oberen rechten Ecke zur Seite, auf der du deinen Assistenten einreichen möchtest;", + "desc2": "Klicke auf die Schaltfläche 'In den Assistentenmarkt einreichen' in der oberen rechten Ecke.", + "tag": "Methode Eins", + "title": "Einreichung über LobeChat" + }, + "func2": { + "button": "Gehe zum Github-Assistenten-Repository", + "desc": "Wenn du den Assistenten im Index hinzufügen möchtest, erstelle einen Eintrag mit agent-template.json oder agent-template-full.json im plugins-Verzeichnis, schreibe eine kurze Beschreibung und markiere sie entsprechend, und erstelle dann eine Pull-Anfrage.", + "tag": "Methode Zwei", + "title": "Einreichung über Github" + } + }, + "dislike": "Nicht mögen", + "filter": "Filter", + "filterBy": { + "authorRange": { + "everyone": "Alle Autoren", + "followed": "Folgte Autoren", + "title": "Autorenbereich" + }, + "contentLength": "Minimale Kontextlänge", + "maxToken": { + "title": "Maximale Länge festlegen (Token)", + "unlimited": "Unbegrenzt" + }, + "other": { + "functionCall": "Funktionaufrufe unterstützen", + "title": "Sonstiges", + "vision": "Visuelle Erkennung unterstützen", + "withKnowledge": "Mit Wissensdatenbank", + "withTool": "Mit Plugin" + }, + "pricing": "Modellpreise", + "timePeriod": { + "all": "Alle Zeiten", + "day": "Letzte 24 Stunden", + "month": "Letzte 30 Tage", + "title": "Zeitraum", + "week": "Letzte 7 Tage", + "year": "Letztes Jahr" + } + }, + "home": { + "featuredAssistants": "Empfohlene Assistenten", + "featuredModels": "Empfohlene Modelle", + "featuredProviders": "Empfohlene Modellanbieter", + "featuredTools": "Empfohlene Plugins", + "more": "Mehr entdecken" + }, + "like": "Mögen", + "models": { + "chat": "Gespräch starten", + "contentLength": "Maximale Kontextlänge", + "free": "Kostenlos", + "guide": "Konfigurationsanleitung", + "list": "Modellliste", + "more": "Mehr", + "parameterList": { + "defaultValue": "Standardwert", + "docs": "Dokumentation ansehen", + "frequency_penalty": { + "desc": "Diese Einstellung passt die Häufigkeit an, mit der das Modell bestimmte Wörter, die bereits im Input erschienen sind, wiederverwendet. Höhere Werte verringern die Wahrscheinlichkeit dieser Wiederholung, während negative Werte den gegenteiligen Effekt haben. Die Wortstrafe erhöht sich nicht mit der Anzahl der Vorkommen. Negative Werte fördern die Wiederverwendung von Wörtern.", + "title": "Häufigkeitsstrafe" + }, + "max_tokens": { + "desc": "Diese Einstellung definiert die maximale Länge, die das Modell in einer einzelnen Antwort generieren kann. Höhere Werte ermöglichen es dem Modell, längere Antworten zu generieren, während niedrigere Werte die Länge der Antwort einschränken und sie prägnanter machen. Eine angemessene Anpassung dieses Wertes je nach Anwendungsfall kann helfen, die gewünschte Länge und Detailgenauigkeit der Antwort zu erreichen.", + "title": "Begrenzung der Antwortlänge" + }, + "presence_penalty": { + "desc": "Diese Einstellung soll die Wiederverwendung von Wörtern basierend auf deren Häufigkeit im Input steuern. Sie versucht, weniger häufig Wörter zu verwenden, die im Input häufig vorkommen, wobei die Verwendungshäufigkeit proportional zur Häufigkeit ist. Die Wortstrafe erhöht sich mit der Anzahl der Vorkommen. Negative Werte fördern die Wiederverwendung von Wörtern.", + "title": "Themenfrische" + }, + "range": "Bereich", + "temperature": { + "desc": "Diese Einstellung beeinflusst die Vielfalt der Antworten des Modells. Niedrigere Werte führen zu vorhersehbareren und typischen Antworten, während höhere Werte zu vielfältigeren und weniger häufigen Antworten anregen. Wenn der Wert auf 0 gesetzt wird, gibt das Modell für einen bestimmten Input immer die gleiche Antwort.", + "title": "Zufälligkeit" + }, + "title": "Modellparameter", + "top_p": { + "desc": "Diese Einstellung beschränkt die Auswahl des Modells auf die Wörter mit der höchsten Wahrscheinlichkeit, die einen bestimmten Anteil erreichen: Es werden nur die Wörter ausgewählt, deren kumulative Wahrscheinlichkeit P erreicht. Niedrigere Werte machen die Antworten des Modells vorhersehbarer, während die Standardeinstellung dem Modell erlaubt, aus dem gesamten Wortschatz auszuwählen.", + "title": "Kernsampling" + }, + "type": "Typ" + }, + "providerInfo": { + "apiTooltip": "LobeChat unterstützt die Verwendung eines benutzerdefinierten API-Schlüssels für diesen Anbieter.", + "input": "Eingabepreis", + "inputTooltip": "Kosten pro Million Token", + "latency": "Latenz", + "latencyTooltip": "Durchschnittliche Antwortzeit des Anbieters für das erste Token", + "maxOutput": "Maximale Ausgabelänge", + "maxOutputTooltip": "Maximale Anzahl von Tokens, die dieser Endpunkt generieren kann", + "officialTooltip": "Offizieller LobeHub-Dienst", + "output": "Ausgabepreis", + "outputTooltip": "Kosten pro Million Token", + "streamCancellationTooltip": "Dieser Anbieter unterstützt die Stream-Abbruchfunktion.", + "throughput": "Durchsatz", + "throughputTooltip": "Durchschnittliche Anzahl von Tokens, die pro Sekunde bei Stream-Anfragen übertragen werden" + }, + "suggestions": "Verwandte Modelle", + "supportedProviders": "Anbieter, die dieses Modell unterstützen" + }, + "plugins": { + "community": "Community-Plugins", + "install": "Plugin installieren", + "installed": "Installiert", + "list": "Plugin-Liste", + "meta": { + "description": "Beschreibung", + "parameter": "Parameter", + "title": "Werkzeugparameter", + "type": "Typ" + }, + "more": "Mehr", + "official": "Offizielle Plugins", + "recentSubmits": "Neueste Aktualisierungen", + "suggestions": "Ähnliche Empfehlungen" + }, + "providers": { + "config": "Anbieter konfigurieren", + "list": "Liste der Modellanbieter", + "more": "Mehr", + "suggestions": "Verwandte Anbieter", + "supportedModels": "Unterstützte Modelle" + }, + "search": { + "placeholder": "Suche nach Namen, Beschreibung oder Schlüsselwörtern...", + "result": "{{count}} Ergebnisse zu {{keyword}}", + "searching": "Suche läuft..." + }, + "sort": { + "mostLiked": "Am meisten gemocht", + "mostUsed": "Am häufigsten verwendet", + "newest": "Neueste zuerst", + "oldest": "Älteste zuerst", + "recommended": "Empfohlen" + }, + "tab": { + "assistants": "Assistenten", + "home": "Startseite", + "models": "Modelle", + "plugins": "Plugins", + "providers": "Modellanbieter" + } +} diff --git a/locales/de-DE/metadata.json b/locales/de-DE/metadata.json index 768c387f49a4f..d5e01753ce0fa 100644 --- a/locales/de-DE/metadata.json +++ b/locales/de-DE/metadata.json @@ -3,9 +3,26 @@ "description": "{{appName}} bietet dir das beste Erlebnis mit ChatGPT, Claude, Gemini und OLLaMA WebUI", "title": "{{appName}}: Persönliches KI-Effizienzwerkzeug, gib dir selbst ein schlaueres Gehirn" }, - "market": { - "description": "Inhaltserstellung, Copywriting, Fragen und Antworten, Bilderzeugung, Videoerzeugung, Spracherzeugung, intelligente Agenten, automatisierte Workflows, passe deinen eigenen KI-Assistenten an", - "title": "Assistentenmarkt" + "discover": { + "assistants": { + "description": "Inhaltserstellung, Textverfassung, Fragen und Antworten, Bildgenerierung, Videoerstellung, Sprachsynthese, intelligente Agenten, automatisierte Workflows, passe deinen eigenen AI / GPTs / OLLaMA intelligenten Assistenten an", + "title": "KI-Assistenten" + }, + "description": "Inhaltserstellung, Textverfassung, Fragen und Antworten, Bildgenerierung, Videoerstellung, Sprachsynthese, intelligente Agenten, automatisierte Workflows, benutzerdefinierte AI-Anwendungen, passe deine eigene AI-Anwendungsplattform an", + "models": { + "description": "Entdecke gängige AI-Modelle wie OpenAI / GPT / Claude 3 / Gemini / Ollama / Azure / DeepSeek", + "title": "KI-Modelle" + }, + "plugins": { + "description": "Entdecken Sie die Möglichkeiten zur Erstellung von Diagrammen, wissenschaftlichen Inhalten, Bildgenerierung, Videoerstellung, Sprachsynthese und automatisierten Workflows, um Ihrem Assistenten eine Vielzahl von Plugin-Funktionen zu integrieren.", + "title": "KI-Plugins" + }, + "providers": { + "description": "Entdecke führende Modellanbieter wie OpenAI / Qwen / Ollama / Anthropic / DeepSeek / Google Gemini / OpenRouter", + "title": "Anbieter von KI-Modellen" + }, + "search": "Suche", + "title": "Entdecken" }, "plugins": { "description": "Suche, Diagrammerstellung, akademisch, Bilderzeugung, Videoerzeugung, Spracherzeugung, automatisierte Workflows, passe die ToolCall-Plugin-Funktionen von ChatGPT / Claude an", diff --git a/locales/en-US/common.json b/locales/en-US/common.json index 2e403708ef5e5..38194dccdf1bd 100644 --- a/locales/en-US/common.json +++ b/locales/en-US/common.json @@ -195,8 +195,8 @@ }, "tab": { "chat": "Chat", + "discover": "Discover", "files": "Files", - "market": "Discover", "me": "Me", "setting": "Settings" }, diff --git a/locales/en-US/discover.json b/locales/en-US/discover.json new file mode 100644 index 0000000000000..0d0d59e5bc42d --- /dev/null +++ b/locales/en-US/discover.json @@ -0,0 +1,200 @@ +{ + "assistants": { + "addAgent": "Add Assistant", + "addAgentAndConverse": "Add Assistant and Converse", + "addAgentSuccess": "Added Successfully", + "conversation": { + "l1": "Hello, I am **{{name}}**, you can ask me any questions, and I will do my best to answer you ~", + "l2": "Here are my capabilities: ", + "l3": "Let's start the conversation!" + }, + "description": "Assistant Introduction", + "detail": "Details", + "list": "Assistant List", + "more": "More", + "plugins": "Integrated Plugins", + "recentSubmits": "Recent Updates", + "suggestions": "Related Recommendations", + "systemRole": "Assistant Settings", + "try": "Try It Out" + }, + "back": "Back to Discovery", + "category": { + "assistant": { + "academic": "Academic", + "all": "All", + "career": "Career", + "copywriting": "Copywriting", + "design": "Design", + "education": "Education", + "emotions": "Emotions", + "entertainment": "Entertainment", + "games": "Games", + "general": "General", + "life": "Life", + "marketing": "Marketing", + "office": "Office", + "programming": "Programming", + "translation": "Translation" + }, + "plugin": { + "all": "All", + "gaming-entertainment": "Gaming & Entertainment", + "life-style": "Lifestyle", + "media-generate": "Media Generation", + "science-education": "Science & Education", + "social": "Social Media", + "stocks-finance": "Stocks & Finance", + "tools": "Utility Tools", + "web-search": "Web Search" + } + }, + "cleanFilter": "Clear Filter", + "create": "Create", + "createGuide": { + "func1": { + "desc1": "Access the settings page for the assistant you want to submit through the settings in the upper right corner of the conversation window;", + "desc2": "Click the 'Submit to Assistant Marketplace' button in the upper right corner.", + "tag": "Method One", + "title": "Submit via LobeChat" + }, + "func2": { + "button": "Go to GitHub Assistant Repository", + "desc": "If you want to add the assistant to the index, create an entry using agent-template.json or agent-template-full.json in the plugins directory, write a brief description, tag appropriately, and then create a pull request.", + "tag": "Method Two", + "title": "Submit via GitHub" + } + }, + "dislike": "Dislike", + "filter": "Filter", + "filterBy": { + "authorRange": { + "everyone": "All Authors", + "followed": "Followed Authors", + "title": "Author Range" + }, + "contentLength": "Minimum Context Length", + "maxToken": { + "title": "Set Maximum Length (Token)", + "unlimited": "Unlimited" + }, + "other": { + "functionCall": "Supports Function Calls", + "title": "Other", + "vision": "Supports Visual Recognition", + "withKnowledge": "Includes Knowledge Base", + "withTool": "Includes Plugins" + }, + "pricing": "Model Pricing", + "timePeriod": { + "all": "All Time", + "day": "Last 24 Hours", + "month": "Last 30 Days", + "title": "Time Range", + "week": "Last 7 Days", + "year": "Last Year" + } + }, + "home": { + "featuredAssistants": "Featured Assistants", + "featuredModels": "Featured Models", + "featuredProviders": "Featured Model Providers", + "featuredTools": "Featured Plugins", + "more": "Discover More" + }, + "like": "Like", + "models": { + "chat": "Start Conversation", + "contentLength": "Maximum Context Length", + "free": "Free", + "guide": "Configuration Guide", + "list": "Model List", + "more": "More", + "parameterList": { + "defaultValue": "Default Value", + "docs": "View Documentation", + "frequency_penalty": { + "desc": "This setting adjusts the frequency at which the model reuses specific vocabulary that has already appeared in the input. Higher values reduce the likelihood of such repetition, while negative values have the opposite effect. Vocabulary penalties do not increase with frequency of occurrence. Negative values encourage vocabulary reuse.", + "title": "Frequency Penalty" + }, + "max_tokens": { + "desc": "This setting defines the maximum length that the model can generate in a single response. Setting a higher value allows the model to produce longer replies, while a lower value restricts the length of the response, making it more concise. Adjusting this value appropriately based on different application scenarios can help achieve the desired response length and level of detail.", + "title": "Single Response Limit" + }, + "presence_penalty": { + "desc": "This setting aims to control the reuse of vocabulary based on its frequency in the input. It attempts to use less of those words that appear more frequently in the input, with usage frequency proportional to occurrence frequency. Vocabulary penalties increase with frequency of occurrence. Negative values encourage vocabulary reuse.", + "title": "Topic Freshness" + }, + "range": "Range", + "temperature": { + "desc": "This setting affects the diversity of the model's responses. Lower values lead to more predictable and typical responses, while higher values encourage more diverse and less common responses. When set to 0, the model always gives the same response to a given input.", + "title": "Randomness" + }, + "title": "Model Parameters", + "top_p": { + "desc": "This setting limits the model's selection to a certain proportion of the most likely vocabulary: only selecting those top words whose cumulative probability reaches P. Lower values make the model's responses more predictable, while the default setting allows the model to choose from the entire range of vocabulary.", + "title": "Nucleus Sampling" + }, + "type": "Type" + }, + "providerInfo": { + "apiTooltip": "LobeChat supports using a custom API key for this provider.", + "input": "Input Price", + "inputTooltip": "Cost per million tokens", + "latency": "Latency", + "latencyTooltip": "Average response time for the provider to send the first token", + "maxOutput": "Maximum Output Length", + "maxOutputTooltip": "Maximum number of tokens this endpoint can generate", + "officialTooltip": "LobeHub Official Service", + "output": "Output Price", + "outputTooltip": "Cost per million tokens", + "streamCancellationTooltip": "This provider supports stream cancellation.", + "throughput": "Throughput", + "throughputTooltip": "Average number of tokens transmitted per second for stream requests" + }, + "suggestions": "Related Models", + "supportedProviders": "Providers Supporting This Model" + }, + "plugins": { + "community": "Community Plugins", + "install": "Install Plugin", + "installed": "Installed", + "list": "Plugin List", + "meta": { + "description": "Description", + "parameter": "Parameter", + "title": "Tool Parameters", + "type": "Type" + }, + "more": "More", + "official": "Official Plugins", + "recentSubmits": "Recently Updated", + "suggestions": "Related Recommendations" + }, + "providers": { + "config": "Configure Provider", + "list": "Model Provider List", + "more": "More", + "suggestions": "Related Providers", + "supportedModels": "Supported Models" + }, + "search": { + "placeholder": "Search by name, description, or keywords...", + "result": "{{count}} results about {{keyword}}", + "searching": "Searching..." + }, + "sort": { + "mostLiked": "Most Liked", + "mostUsed": "Most Used", + "newest": "Newest First", + "oldest": "Oldest First", + "recommended": "Recommended" + }, + "tab": { + "assistants": "Assistants", + "home": "Home", + "models": "Models", + "plugins": "Plugins", + "providers": "Model Providers" + } +} diff --git a/locales/en-US/metadata.json b/locales/en-US/metadata.json index 6924a1d34048e..ce088925446ba 100644 --- a/locales/en-US/metadata.json +++ b/locales/en-US/metadata.json @@ -3,9 +3,26 @@ "description": "{{appName}} brings you the best UI experience for ChatGPT, Claude, Gemini, and OLLaMA.", "title": "{{appName}}: Your personal AI productivity tool for a smarter brain." }, - "market": { - "description": "Content creation, copywriting, Q&A, image generation, video generation, voice generation, intelligent agents, automated workflows—customize your own AI assistant.", - "title": "Assistant Marketplace" + "discover": { + "assistants": { + "description": "Content creation, copywriting, Q&A, image generation, video generation, voice generation, intelligent agents, automated workflows, customize your own AI / GPTs / OLLaMA intelligent assistant", + "title": "AI Assistants" + }, + "description": "Content creation, copywriting, Q&A, image generation, video generation, voice generation, intelligent agents, automated workflows, custom AI applications, customize your own AI application workspace", + "models": { + "description": "Explore mainstream AI models OpenAI / GPT / Claude 3 / Gemini / Ollama / Azure / DeepSeek", + "title": "AI Models" + }, + "plugins": { + "description": "Explore chart generation, academic tools, image generation, video generation, voice generation, and automated workflows to integrate rich plugin capabilities into your assistant.", + "title": "AI Plugins" + }, + "providers": { + "description": "Explore leading model providers OpenAI / Qwen / Ollama / Anthropic / DeepSeek / Google Gemini / OpenRouter", + "title": "AI Model Providers" + }, + "search": "Search", + "title": "Discover" }, "plugins": { "description": "Search, chart generation, academic tools, image generation, video generation, voice generation, automated workflows—customize Tools Calling plugin capabilities for ChatGPT / Claude.", diff --git a/locales/es-ES/common.json b/locales/es-ES/common.json index 637e27e224d67..f7742da3c6767 100644 --- a/locales/es-ES/common.json +++ b/locales/es-ES/common.json @@ -195,8 +195,8 @@ }, "tab": { "chat": "Chat", + "discover": "Descubrir", "files": "Archivos", - "market": "Descubrir", "me": "Yo", "setting": "Configuración" }, diff --git a/locales/es-ES/discover.json b/locales/es-ES/discover.json new file mode 100644 index 0000000000000..d607f48f9e4ed --- /dev/null +++ b/locales/es-ES/discover.json @@ -0,0 +1,200 @@ +{ + "assistants": { + "addAgent": "Agregar asistente", + "addAgentAndConverse": "Agregar asistente y conversar", + "addAgentSuccess": "Agregado con éxito", + "conversation": { + "l1": "Hola, soy **{{name}}**, puedes preguntarme cualquier cosa y haré lo posible por responderte ~", + "l2": "Aquí tienes una introducción a mis capacidades: ", + "l3": "¡Comencemos la conversación!" + }, + "description": "Introducción al asistente", + "detail": "Detalles", + "list": "Lista de asistentes", + "more": "Más", + "plugins": "Integrar complementos", + "recentSubmits": "Actualizaciones recientes", + "suggestions": "Recomendaciones relacionadas", + "systemRole": "Configuración del asistente", + "try": "Prueba" + }, + "back": "Volver a Descubrir", + "category": { + "assistant": { + "academic": "Académico", + "all": "Todo", + "career": "Carrera", + "copywriting": "Redacción", + "design": "Diseño", + "education": "Educación", + "emotions": "Emociones", + "entertainment": "Entretenimiento", + "games": "Juegos", + "general": "General", + "life": "Vida", + "marketing": "Marketing", + "office": "Oficina", + "programming": "Programación", + "translation": "Traducción" + }, + "plugin": { + "all": "Todo", + "gaming-entertainment": "Juegos y entretenimiento", + "life-style": "Estilo de vida", + "media-generate": "Generación de medios", + "science-education": "Ciencia y educación", + "social": "Redes sociales", + "stocks-finance": "Acciones y finanzas", + "tools": "Herramientas útiles", + "web-search": "Búsqueda en la web" + } + }, + "cleanFilter": "Limpiar filtro", + "create": "Crear", + "createGuide": { + "func1": { + "desc1": "En la ventana de conversación, accede a la página de configuración del asistente que deseas enviar a través de la esquina superior derecha;", + "desc2": "Haz clic en el botón de enviar al mercado de asistentes en la esquina superior derecha.", + "tag": "Método uno", + "title": "Enviar a través de LobeChat" + }, + "func2": { + "button": "Ir al repositorio de asistentes de Github", + "desc": "Si deseas agregar un asistente al índice, utiliza agent-template.json o agent-template-full.json para crear una entrada en el directorio de plugins, escribe una breve descripción y etiquétala adecuadamente, luego crea una solicitud de extracción.", + "tag": "Método dos", + "title": "Enviar a través de Github" + } + }, + "dislike": "No me gusta", + "filter": "Filtrar", + "filterBy": { + "authorRange": { + "everyone": "Todos los autores", + "followed": "Autores seguidos", + "title": "Rango de autores" + }, + "contentLength": "Longitud mínima del contexto", + "maxToken": { + "title": "Establecer longitud máxima (Token)", + "unlimited": "Sin límite" + }, + "other": { + "functionCall": "Soporte para llamadas a funciones", + "title": "Otros", + "vision": "Soporte para reconocimiento visual", + "withKnowledge": "Con base de conocimientos", + "withTool": "Con plugins" + }, + "pricing": "Precio del modelo", + "timePeriod": { + "all": "Todo el tiempo", + "day": "Últimas 24 horas", + "month": "Últimos 30 días", + "title": "Rango de tiempo", + "week": "Últimos 7 días", + "year": "Último año" + } + }, + "home": { + "featuredAssistants": "Asistentes recomendados", + "featuredModels": "Modelos recomendados", + "featuredProviders": "Proveedores de modelos recomendados", + "featuredTools": "Plugins recomendados", + "more": "Descubre más" + }, + "like": "Me gusta", + "models": { + "chat": "Iniciar conversación", + "contentLength": "Longitud máxima del contexto", + "free": "Gratis", + "guide": "Guía de configuración", + "list": "Lista de modelos", + "more": "Más", + "parameterList": { + "defaultValue": "Valor por defecto", + "docs": "Ver documentación", + "frequency_penalty": { + "desc": "Esta configuración ajusta la frecuencia con la que el modelo reutiliza vocabulario específico que ya ha aparecido en la entrada. Un valor más alto reduce la probabilidad de que esto ocurra, mientras que un valor negativo produce el efecto contrario. La penalización de vocabulario no aumenta con la frecuencia de aparición. Un valor negativo alentará la reutilización del vocabulario.", + "title": "Penalización de frecuencia" + }, + "max_tokens": { + "desc": "Esta configuración define la longitud máxima que el modelo puede generar en una sola respuesta. Establecer un valor más alto permite al modelo generar respuestas más largas, mientras que un valor más bajo limita la longitud de la respuesta, haciéndola más concisa. Ajustar este valor de manera razonable según el contexto de la aplicación puede ayudar a alcanzar la longitud y el nivel de detalle de respuesta deseados.", + "title": "Límite de Respuesta Única" + }, + "presence_penalty": { + "desc": "Esta configuración está diseñada para controlar la reutilización del vocabulario según la frecuencia con la que aparece en la entrada. Intenta usar menos aquellas palabras que aparecen con más frecuencia en la entrada, siendo su uso proporcional a la frecuencia de aparición. La penalización de vocabulario aumenta con la frecuencia de aparición. Un valor negativo alentará la reutilización del vocabulario.", + "title": "Novedad del tema" + }, + "range": "Rango", + "temperature": { + "desc": "Esta configuración afecta la diversidad de las respuestas del modelo. Un valor más bajo resultará en respuestas más predecibles y típicas, mientras que un valor más alto alentará respuestas más diversas y menos comunes. Cuando el valor se establece en 0, el modelo siempre dará la misma respuesta para una entrada dada.", + "title": "Aleatoriedad" + }, + "title": "Parámetros del modelo", + "top_p": { + "desc": "Esta configuración limita la selección del modelo a un cierto porcentaje de vocabulario con la mayor probabilidad: solo selecciona aquellas palabras que alcanzan una probabilidad acumulativa de P. Un valor más bajo hace que las respuestas del modelo sean más predecibles, mientras que la configuración predeterminada permite al modelo elegir de todo el rango de vocabulario.", + "title": "Muestreo de núcleo" + }, + "type": "Tipo" + }, + "providerInfo": { + "apiTooltip": "LobeChat admite el uso de claves API personalizadas para este proveedor.", + "input": "Precio de entrada", + "inputTooltip": "Costo por millón de Tokens", + "latency": "Latencia", + "latencyTooltip": "Tiempo promedio de respuesta del proveedor para enviar el primer Token", + "maxOutput": "Longitud máxima de salida", + "maxOutputTooltip": "Número máximo de Tokens que este punto final puede generar", + "officialTooltip": "Servicio oficial de LobeHub", + "output": "Precio de salida", + "outputTooltip": "Costo por millón de Tokens", + "streamCancellationTooltip": "Este proveedor admite la función de cancelación de flujo.", + "throughput": "Rendimiento", + "throughputTooltip": "Número promedio de Tokens transmitidos por segundo en solicitudes de flujo" + }, + "suggestions": "Modelos relacionados", + "supportedProviders": "Proveedores que admiten este modelo" + }, + "plugins": { + "community": "Complementos de la comunidad", + "install": "Instalar complemento", + "installed": "Instalado", + "list": "Lista de complementos", + "meta": { + "description": "Descripción", + "parameter": "Parámetro", + "title": "Parámetros de la herramienta", + "type": "Tipo" + }, + "more": "Más", + "official": "Complementos oficiales", + "recentSubmits": "Actualizaciones recientes", + "suggestions": "Recomendaciones relacionadas" + }, + "providers": { + "config": "Configurar proveedor", + "list": "Lista de proveedores de modelos", + "more": "Más", + "suggestions": "Proveedores relacionados", + "supportedModels": "Modelos soportados" + }, + "search": { + "placeholder": "Buscar nombre, descripción o palabras clave...", + "result": "{{count}} resultados de búsqueda sobre {{keyword}}", + "searching": "Buscando..." + }, + "sort": { + "mostLiked": "Más gustados", + "mostUsed": "Más utilizados", + "newest": "De nuevo a viejo", + "oldest": "De viejo a nuevo", + "recommended": "Recomendado" + }, + "tab": { + "assistants": "Asistentes", + "home": "Inicio", + "models": "Modelos", + "plugins": "Complementos", + "providers": "Proveedores de modelos" + } +} diff --git a/locales/es-ES/metadata.json b/locales/es-ES/metadata.json index 7c9108890db33..f7fb5943a90cd 100644 --- a/locales/es-ES/metadata.json +++ b/locales/es-ES/metadata.json @@ -3,9 +3,26 @@ "description": "{{appName}} te ofrece la mejor experiencia de uso de ChatGPT, Claude, Gemini y OLLaMA WebUI", "title": "{{appName}}: Herramienta de productividad personal de IA, dale a tu cerebro un impulso más inteligente" }, - "market": { - "description": "Creación de contenido, redacción, preguntas y respuestas, generación de imágenes, generación de videos, generación de voz, agentes inteligentes, flujos de trabajo automatizados, personaliza tu asistente inteligente de IA exclusivo", - "title": "Mercado de Asistentes" + "discover": { + "assistants": { + "description": "Creación de contenido, redacción, preguntas y respuestas, generación de imágenes, generación de videos, generación de voz, Agentes inteligentes, flujos de trabajo automatizados, personaliza tu asistente inteligente AI / GPTs / OLLaMA", + "title": "Asistentes de IA" + }, + "description": "Creación de contenido, redacción, preguntas y respuestas, generación de imágenes, generación de videos, generación de voz, Agentes inteligentes, flujos de trabajo automatizados, aplicaciones de IA personalizadas, personaliza tu espacio de trabajo de aplicaciones AI", + "models": { + "description": "Explora los modelos de IA más populares OpenAI / GPT / Claude 3 / Gemini / Ollama / Azure / DeepSeek", + "title": "Modelos de IA" + }, + "plugins": { + "description": "Explora la generación de gráficos, académicos, imágenes, videos, voces y flujos de trabajo automatizados, integrando capacidades ricas de plugins para tu asistente.", + "title": "Complementos de IA" + }, + "providers": { + "description": "Explora los principales proveedores de modelos OpenAI / Qwen / Ollama / Anthropic / DeepSeek / Google Gemini / OpenRouter", + "title": "Proveedores de servicios de modelos de IA" + }, + "search": "Buscar", + "title": "Descubrir" }, "plugins": { "description": "Búsqueda, generación de gráficos, académico, generación de imágenes, generación de videos, generación de voz, flujos de trabajo automatizados, personaliza las capacidades de los plugins ToolCall exclusivos de ChatGPT / Claude", diff --git a/locales/fr-FR/common.json b/locales/fr-FR/common.json index 231df37785245..f65b73349be2a 100644 --- a/locales/fr-FR/common.json +++ b/locales/fr-FR/common.json @@ -195,8 +195,8 @@ }, "tab": { "chat": "Conversation", + "discover": "Découvrir", "files": "Fichiers", - "market": "Découvrir", "me": "moi", "setting": "Paramètre" }, diff --git a/locales/fr-FR/discover.json b/locales/fr-FR/discover.json new file mode 100644 index 0000000000000..736a26766c282 --- /dev/null +++ b/locales/fr-FR/discover.json @@ -0,0 +1,200 @@ +{ + "assistants": { + "addAgent": "Ajouter un assistant", + "addAgentAndConverse": "Ajouter un assistant et discuter", + "addAgentSuccess": "Ajout réussi", + "conversation": { + "l1": "Bonjour, je suis **{{name}}**, vous pouvez me poser n'importe quelle question, je ferai de mon mieux pour y répondre ~", + "l2": "Voici un aperçu de mes capacités : ", + "l3": "Commençons la conversation !" + }, + "description": "Présentation de l'assistant", + "detail": "Détails", + "list": "Liste des assistants", + "more": "Plus", + "plugins": "Intégrer des plugins", + "recentSubmits": "Mises à jour récentes", + "suggestions": "Suggestions connexes", + "systemRole": "Paramètres de l'assistant", + "try": "Essayer" + }, + "back": "Retour à la découverte", + "category": { + "assistant": { + "academic": "Académique", + "all": "Tout", + "career": "Carrière", + "copywriting": "Rédaction", + "design": "Design", + "education": "Éducation", + "emotions": "Émotions", + "entertainment": "Divertissement", + "games": "Jeux", + "general": "Général", + "life": "Vie", + "marketing": "Marketing", + "office": "Bureau", + "programming": "Programmation", + "translation": "Traduction" + }, + "plugin": { + "all": "Tout", + "gaming-entertainment": "Jeux et divertissement", + "life-style": "Style de vie", + "media-generate": "Génération de médias", + "science-education": "Science et éducation", + "social": "Médias sociaux", + "stocks-finance": "Actions et finances", + "tools": "Outils pratiques", + "web-search": "Recherche sur le web" + } + }, + "cleanFilter": "Effacer le filtre", + "create": "Créer", + "createGuide": { + "func1": { + "desc1": "Accédez à la page de paramètres de l'assistant que vous souhaitez soumettre via le coin supérieur droit de la fenêtre de conversation ;", + "desc2": "Cliquez sur le bouton de soumission au marché des assistants dans le coin supérieur droit.", + "tag": "Méthode un", + "title": "Soumettre via LobeChat" + }, + "func2": { + "button": "Aller au dépôt d'assistants Github", + "desc": "Si vous souhaitez ajouter un assistant à l'index, créez une entrée dans le répertoire plugins avec agent-template.json ou agent-template-full.json, rédigez une brève description et marquez-la de manière appropriée, puis créez une demande de tirage.", + "tag": "Méthode deux", + "title": "Soumettre via Github" + } + }, + "dislike": "Je n'aime pas", + "filter": "Filtrer", + "filterBy": { + "authorRange": { + "everyone": "Tous les auteurs", + "followed": "Auteurs suivis", + "title": "Plage d'auteurs" + }, + "contentLength": "Longueur minimale du contexte", + "maxToken": { + "title": "Définir la longueur maximale (Token)", + "unlimited": "Illimité" + }, + "other": { + "functionCall": "Appel de fonction pris en charge", + "title": "Autres", + "vision": "Reconnaissance visuelle prise en charge", + "withKnowledge": "Avec base de connaissances", + "withTool": "Avec plugin" + }, + "pricing": "Prix du modèle", + "timePeriod": { + "all": "Tout le temps", + "day": "Dernières 24 heures", + "month": "Derniers 30 jours", + "title": "Plage de temps", + "week": "Dernières 7 jours", + "year": "Dernière année" + } + }, + "home": { + "featuredAssistants": "Assistants recommandés", + "featuredModels": "Modèles recommandés", + "featuredProviders": "Fournisseurs de modèles recommandés", + "featuredTools": "Plugins recommandés", + "more": "Découvrez plus" + }, + "like": "J'aime", + "models": { + "chat": "Commencer la conversation", + "contentLength": "Longueur maximale du contexte", + "free": "Gratuit", + "guide": "Guide de configuration", + "list": "Liste des modèles", + "more": "Plus", + "parameterList": { + "defaultValue": "Valeur par défaut", + "docs": "Voir la documentation", + "frequency_penalty": { + "desc": "Ce paramètre ajuste la fréquence à laquelle le modèle réutilise des mots spécifiques déjà présents dans l'entrée. Des valeurs plus élevées réduisent la probabilité de répétition, tandis que des valeurs négatives produisent l'effet inverse. La pénalité de vocabulaire n'augmente pas avec le nombre d'occurrences. Les valeurs négatives encouragent la réutilisation des mots.", + "title": "Pénalité de fréquence" + }, + "max_tokens": { + "desc": "Ce paramètre définit la longueur maximale que le modèle peut générer dans une seule réponse. Un réglage plus élevé permet au modèle de produire des réponses plus longues, tandis qu'un réglage plus bas limite la longueur de la réponse, la rendant plus concise. Ajuster ce paramètre de manière appropriée en fonction des différents scénarios d'application peut aider à atteindre la longueur et le niveau de détail souhaités dans la réponse.", + "title": "Limite de réponse unique" + }, + "presence_penalty": { + "desc": "Ce paramètre vise à contrôler la réutilisation des mots en fonction de leur fréquence d'apparition dans l'entrée. Il essaie d'utiliser moins de mots qui apparaissent fréquemment dans l'entrée, en proportion de leur fréquence d'apparition. La pénalité de vocabulaire augmente avec le nombre d'occurrences. Les valeurs négatives encouragent la réutilisation des mots.", + "title": "Fraîcheur des sujets" + }, + "range": "Plage", + "temperature": { + "desc": "Ce paramètre influence la diversité des réponses du modèle. Des valeurs plus basses entraînent des réponses plus prévisibles et typiques, tandis que des valeurs plus élevées encouragent des réponses plus variées et moins courantes. Lorsque la valeur est fixée à 0, le modèle donne toujours la même réponse pour une entrée donnée.", + "title": "Aléatoire" + }, + "title": "Paramètres du modèle", + "top_p": { + "desc": "Ce paramètre limite le choix du modèle à un certain pourcentage de mots ayant la plus haute probabilité : seuls les mots de pointe dont la probabilité cumulée atteint P sont sélectionnés. Des valeurs plus basses rendent les réponses du modèle plus prévisibles, tandis que les paramètres par défaut permettent au modèle de choisir parmi l'ensemble du vocabulaire.", + "title": "Échantillonnage nucléaire" + }, + "type": "Type" + }, + "providerInfo": { + "apiTooltip": "LobeChat prend en charge l'utilisation de clés API personnalisées pour ce fournisseur.", + "input": "Prix d'entrée", + "inputTooltip": "Coût par million de tokens", + "latency": "Latence", + "latencyTooltip": "Temps de réponse moyen pour que le fournisseur envoie le premier token", + "maxOutput": "Longueur de sortie maximale", + "maxOutputTooltip": "Nombre maximal de tokens que ce point de terminaison peut générer", + "officialTooltip": "Service officiel de LobeHub", + "output": "Prix de sortie", + "outputTooltip": "Coût par million de tokens", + "streamCancellationTooltip": "Ce fournisseur prend en charge la fonction d'annulation de flux.", + "throughput": "Débit", + "throughputTooltip": "Nombre moyen de tokens transmis par seconde pour les requêtes de flux" + }, + "suggestions": "Modèles connexes", + "supportedProviders": "Fournisseurs prenant en charge ce modèle" + }, + "plugins": { + "community": "Plugins communautaires", + "install": "Installer le plugin", + "installed": "Installé", + "list": "Liste des plugins", + "meta": { + "description": "Description", + "parameter": "Paramètre", + "title": "Paramètres de l'outil", + "type": "Type" + }, + "more": "Plus", + "official": "Plugins officiels", + "recentSubmits": "Mises à jour récentes", + "suggestions": "Suggestions connexes" + }, + "providers": { + "config": "Configurer le fournisseur", + "list": "Liste des fournisseurs de modèles", + "more": "Plus", + "suggestions": "Fournisseurs connexes", + "supportedModels": "Modèles pris en charge" + }, + "search": { + "placeholder": "Rechercher par nom, description ou mot-clé...", + "result": "{{count}} résultats de recherche concernant {{keyword}}", + "searching": "Recherche en cours..." + }, + "sort": { + "mostLiked": "Le plus aimé", + "mostUsed": "Le plus utilisé", + "newest": "Du plus récent au plus ancien", + "oldest": "Du plus ancien au plus récent", + "recommended": "Recommandé" + }, + "tab": { + "assistants": "Assistants", + "home": "Accueil", + "models": "Modèles", + "plugins": "Plugins", + "providers": "Fournisseurs de modèles" + } +} diff --git a/locales/fr-FR/metadata.json b/locales/fr-FR/metadata.json index a6b27f09a9996..ca1d97690462c 100644 --- a/locales/fr-FR/metadata.json +++ b/locales/fr-FR/metadata.json @@ -3,9 +3,26 @@ "description": "{{appName}} vous offre la meilleure expérience d'utilisation de ChatGPT, Claude, Gemini et OLLaMA WebUI", "title": "{{appName}} : un outil d'efficacité personnelle en IA pour vous donner un cerveau plus intelligent" }, - "market": { - "description": "Création de contenu, rédaction, questions-réponses, génération d'images, génération de vidéos, génération de voix, agents intelligents, flux de travail automatisés, personnalisez votre assistant intelligent IA", - "title": "Marché des assistants" + "discover": { + "assistants": { + "description": "Création de contenu, rédaction, questions-réponses, génération d'images, génération de vidéos, génération de voix, agents intelligents, flux de travail automatisés, personnalisez votre assistant intelligent AI / GPTs / OLLaMA.", + "title": "Assistants IA" + }, + "description": "Création de contenu, rédaction, questions-réponses, génération d'images, génération de vidéos, génération de voix, agents intelligents, flux de travail automatisés, applications AI personnalisées, personnalisez votre espace de travail AI.", + "models": { + "description": "Explorez les modèles AI populaires OpenAI / GPT / Claude 3 / Gemini / Ollama / Azure / DeepSeek.", + "title": "Modèles IA" + }, + "plugins": { + "description": "Découvrez des capacités enrichies pour votre assistant avec des plugins pour la génération de graphiques, la recherche académique, la génération d'images, la génération de vidéos, la génération de voix et l'automatisation des flux de travail.", + "title": "Plugins IA" + }, + "providers": { + "description": "Explorez les principaux fournisseurs de modèles OpenAI / Qwen / Ollama / Anthropic / DeepSeek / Google Gemini / OpenRouter.", + "title": "Fournisseurs de services de modèles IA" + }, + "search": "Recherche", + "title": "Découvrir" }, "plugins": { "description": "Recherche, génération de graphiques, académique, génération d'images, génération de vidéos, génération de voix, flux de travail automatisés, personnalisez les capacités de plugins ToolCall pour ChatGPT / Claude", diff --git a/locales/it-IT/common.json b/locales/it-IT/common.json index 874f00c3d7487..fe0f0c3475554 100644 --- a/locales/it-IT/common.json +++ b/locales/it-IT/common.json @@ -195,8 +195,8 @@ }, "tab": { "chat": "Chat", + "discover": "Scopri", "files": "File", - "market": "Scopri", "me": "io", "setting": "Impostazioni" }, diff --git a/locales/it-IT/discover.json b/locales/it-IT/discover.json new file mode 100644 index 0000000000000..adee97e309d42 --- /dev/null +++ b/locales/it-IT/discover.json @@ -0,0 +1,200 @@ +{ + "assistants": { + "addAgent": "Aggiungi assistente", + "addAgentAndConverse": "Aggiungi assistente e inizia una conversazione", + "addAgentSuccess": "Aggiunta riuscita", + "conversation": { + "l1": "Ciao, sono **{{name}}**, puoi chiedermi qualsiasi cosa e farò del mio meglio per risponderti ~", + "l2": "Ecco una panoramica delle mie capacità: ", + "l3": "Iniziamo la conversazione!" + }, + "description": "Introduzione all'assistente", + "detail": "Dettagli", + "list": "Elenco assistenti", + "more": "Di più", + "plugins": "Plugin integrati", + "recentSubmits": "Aggiornamenti recenti", + "suggestions": "Suggerimenti correlati", + "systemRole": "Impostazioni assistente", + "try": "Prova" + }, + "back": "Torna alla scoperta", + "category": { + "assistant": { + "academic": "Accademico", + "all": "Tutti", + "career": "Carriera", + "copywriting": "Copywriting", + "design": "Design", + "education": "Educazione", + "emotions": "Emozioni", + "entertainment": "Intrattenimento", + "games": "Giochi", + "general": "Generale", + "life": "Vita", + "marketing": "Marketing", + "office": "Ufficio", + "programming": "Programmazione", + "translation": "Traduzione" + }, + "plugin": { + "all": "Tutti", + "gaming-entertainment": "Gioco e intrattenimento", + "life-style": "Stile di vita", + "media-generate": "Generazione media", + "science-education": "Scienza e istruzione", + "social": "Social media", + "stocks-finance": "Azioni e finanza", + "tools": "Strumenti utili", + "web-search": "Ricerca web" + } + }, + "cleanFilter": "Pulisci filtro", + "create": "Crea", + "createGuide": { + "func1": { + "desc1": "Accedi alla pagina delle impostazioni dell'assistente che desideri inviare tramite l'icona in alto a destra nella finestra di conversazione;", + "desc2": "Clicca sul pulsante per inviare al mercato degli assistenti in alto a destra.", + "tag": "Metodo uno", + "title": "Invia tramite LobeChat" + }, + "func2": { + "button": "Vai al repository degli assistenti su Github", + "desc": "Se desideri aggiungere un assistente all'indice, utilizza agent-template.json o agent-template-full.json per creare un'entrata nella directory plugins, scrivi una breve descrizione e contrassegnala adeguatamente, quindi crea una richiesta di pull.", + "tag": "Metodo due", + "title": "Invia tramite Github" + } + }, + "dislike": "Non mi piace", + "filter": "Filtra", + "filterBy": { + "authorRange": { + "everyone": "Tutti gli autori", + "followed": "Autori seguiti", + "title": "Intervallo autori" + }, + "contentLength": "Lunghezza minima del contenuto", + "maxToken": { + "title": "Imposta lunghezza massima (Token)", + "unlimited": "Illimitato" + }, + "other": { + "functionCall": "Supporta chiamate di funzione", + "title": "Altro", + "vision": "Supporta riconoscimento visivo", + "withKnowledge": "Con knowledge base", + "withTool": "Con plugin" + }, + "pricing": "Prezzo del modello", + "timePeriod": { + "all": "Tutto il tempo", + "day": "Ultime 24 ore", + "month": "Ultimi 30 giorni", + "title": "Intervallo di tempo", + "week": "Ultimi 7 giorni", + "year": "Ultimo anno" + } + }, + "home": { + "featuredAssistants": "Assistenti consigliati", + "featuredModels": "Modelli consigliati", + "featuredProviders": "Fornitori di modelli consigliati", + "featuredTools": "Plugin consigliati", + "more": "Scopri di più" + }, + "like": "Mi piace", + "models": { + "chat": "Inizia conversazione", + "contentLength": "Lunghezza massima del contenuto", + "free": "Gratuito", + "guide": "Guida alla configurazione", + "list": "Elenco modelli", + "more": "Di più", + "parameterList": { + "defaultValue": "Valore predefinito", + "docs": "Visualizza documentazione", + "frequency_penalty": { + "desc": "Questa impostazione regola la frequenza con cui il modello riutilizza vocaboli specifici già presenti nell'input. Valori più alti riducono la probabilità di ripetizione, mentre valori negativi producono l'effetto opposto. La penalità per il vocabolario non aumenta con il numero di apparizioni. Valori negativi incoraggiano il riutilizzo del vocabolario.", + "title": "Penalità di frequenza" + }, + "max_tokens": { + "desc": "Questa impostazione definisce la lunghezza massima che il modello può generare in una singola risposta. Impostare un valore più alto consente al modello di generare risposte più lunghe, mentre un valore più basso limita la lunghezza della risposta, rendendola più concisa. Regolare questo valore in base ai diversi scenari di applicazione può aiutare a raggiungere la lunghezza e il livello di dettaglio desiderati nella risposta.", + "title": "Limite di risposta singola" + }, + "presence_penalty": { + "desc": "Questa impostazione mira a controllare il riutilizzo del vocabolario in base alla frequenza con cui appare nell'input. Cerca di utilizzare meno vocaboli che appaiono frequentemente, in proporzione alla loro frequenza di apparizione. La penalità per il vocabolario aumenta con il numero di apparizioni. Valori negativi incoraggiano il riutilizzo del vocabolario.", + "title": "Freschezza del tema" + }, + "range": "Intervallo", + "temperature": { + "desc": "Questa impostazione influisce sulla diversità delle risposte del modello. Valori più bassi portano a risposte più prevedibili e tipiche, mentre valori più alti incoraggiano risposte più varie e insolite. Quando il valore è impostato a 0, il modello fornisce sempre la stessa risposta per un dato input.", + "title": "Casualità" + }, + "title": "Parametri del modello", + "top_p": { + "desc": "Questa impostazione limita le scelte del modello a una certa proporzione di vocaboli con la massima probabilità: seleziona solo i vocaboli di punta la cui probabilità cumulativa raggiunge P. Valori più bassi rendono le risposte del modello più prevedibili, mentre l'impostazione predefinita consente al modello di scegliere da tutto l'intervallo di vocaboli.", + "title": "Campionamento nucleare" + }, + "type": "Tipo" + }, + "providerInfo": { + "apiTooltip": "LobeChat supporta l'uso di chiavi API personalizzate per questo fornitore.", + "input": "Prezzo di input", + "inputTooltip": "Costo per milione di Token", + "latency": "Latenza", + "latencyTooltip": "Tempo medio di risposta del fornitore per il primo Token inviato", + "maxOutput": "Lunghezza massima di output", + "maxOutputTooltip": "Numero massimo di Token che questo endpoint può generare", + "officialTooltip": "Servizio ufficiale LobeHub", + "output": "Prezzo di output", + "outputTooltip": "Costo per milione di Token", + "streamCancellationTooltip": "Questo fornitore supporta la funzione di cancellazione dello streaming.", + "throughput": "Throughput", + "throughputTooltip": "Numero medio di Token trasmessi per secondo nelle richieste di streaming" + }, + "suggestions": "Modelli correlati", + "supportedProviders": "Fornitori supportati da questo modello" + }, + "plugins": { + "community": "Plugin della comunità", + "install": "Installa plugin", + "installed": "Installato", + "list": "Elenco plugin", + "meta": { + "description": "Descrizione", + "parameter": "Parametro", + "title": "Parametri dello strumento", + "type": "Tipo" + }, + "more": "Di più", + "official": "Plugin ufficiale", + "recentSubmits": "Aggiornamenti recenti", + "suggestions": "Suggerimenti correlati" + }, + "providers": { + "config": "Configurazione del fornitore", + "list": "Elenco fornitori di modelli", + "more": "Di più", + "suggestions": "Fornitori correlati", + "supportedModels": "Modelli supportati" + }, + "search": { + "placeholder": "Cerca nome, descrizione o parole chiave...", + "result": "{{count}} risultati di ricerca su {{keyword}}", + "searching": "Ricerca in corso..." + }, + "sort": { + "mostLiked": "Più apprezzati", + "mostUsed": "Più utilizzati", + "newest": "Dal più recente al più vecchio", + "oldest": "Dal più vecchio al più recente", + "recommended": "Consigliati" + }, + "tab": { + "assistants": "Assistenti", + "home": "Home", + "models": "Modelli", + "plugins": "Plugin", + "providers": "Fornitori di modelli" + } +} diff --git a/locales/it-IT/metadata.json b/locales/it-IT/metadata.json index 94458d872d9c8..31549cc2110da 100644 --- a/locales/it-IT/metadata.json +++ b/locales/it-IT/metadata.json @@ -3,9 +3,26 @@ "description": "{{appName}} ti offre la migliore esperienza con ChatGPT, Claude, Gemini e OLLaMA WebUI", "title": "{{appName}}: strumento di efficienza personale AI, per darti un cervello più intelligente" }, - "market": { - "description": "Creazione di contenuti, copywriting, domande e risposte, generazione di immagini, generazione di video, generazione vocale, agenti intelligenti, flussi di lavoro automatizzati, personalizza il tuo assistente AI esclusivo", - "title": "Mercato degli assistenti" + "discover": { + "assistants": { + "description": "Creazione di contenuti, copywriting, domande e risposte, generazione di immagini, generazione di video, generazione vocale, agenti intelligenti, flussi di lavoro automatizzati, personalizza il tuo assistente AI / GPTs / OLLaMA", + "title": "Assistenti AI" + }, + "description": "Creazione di contenuti, copywriting, domande e risposte, generazione di immagini, generazione di video, generazione vocale, agenti intelligenti, flussi di lavoro automatizzati, applicazioni AI personalizzate, personalizza il tuo spazio di lavoro per le applicazioni AI", + "models": { + "description": "Esplora i modelli AI più diffusi: OpenAI / GPT / Claude 3 / Gemini / Ollama / Azure / DeepSeek", + "title": "Modelli AI" + }, + "plugins": { + "description": "Scopri la generazione di grafici, accademica, generazione di immagini, generazione di video, generazione vocale e flussi di lavoro automatizzati, integra capacità ricche di plugin per il tuo assistente.", + "title": "Plugin AI" + }, + "providers": { + "description": "Esplora i principali fornitori di modelli: OpenAI / Qwen / Ollama / Anthropic / DeepSeek / Google Gemini / OpenRouter", + "title": "Fornitori di servizi di modelli AI" + }, + "search": "Cerca", + "title": "Scopri" }, "plugins": { "description": "Ricerca, generazione di grafici, accademico, generazione di immagini, generazione di video, generazione vocale, flussi di lavoro automatizzati, personalizza le capacità dei plugin ToolCall esclusivi di ChatGPT / Claude", diff --git a/locales/ja-JP/common.json b/locales/ja-JP/common.json index 94c3e9d4fb8ea..119b4df2e38a6 100644 --- a/locales/ja-JP/common.json +++ b/locales/ja-JP/common.json @@ -195,8 +195,8 @@ }, "tab": { "chat": "チャット", + "discover": "発見", "files": "ファイル", - "market": "探す", "me": "私", "setting": "設定" }, diff --git a/locales/ja-JP/discover.json b/locales/ja-JP/discover.json new file mode 100644 index 0000000000000..3d2d7e6c1f8a3 --- /dev/null +++ b/locales/ja-JP/discover.json @@ -0,0 +1,200 @@ +{ + "assistants": { + "addAgent": "アシスタントを追加", + "addAgentAndConverse": "アシスタントを追加して会話する", + "addAgentSuccess": "追加成功", + "conversation": { + "l1": "こんにちは、私は **{{name}}** です。何でも質問してください、できる限りお答えします ~", + "l2": "以下は私の能力の紹介です: ", + "l3": "さあ、会話を始めましょう!" + }, + "description": "アシスタントの紹介", + "detail": "詳細", + "list": "アシスタントリスト", + "more": "もっと見る", + "plugins": "プラグインを統合", + "recentSubmits": "最近の更新", + "suggestions": "関連情報", + "systemRole": "アシスタント設定", + "try": "試してみる" + }, + "back": "戻る", + "category": { + "assistant": { + "academic": "学術", + "all": "すべて", + "career": "キャリア", + "copywriting": "コピーライティング", + "design": "デザイン", + "education": "教育", + "emotions": "感情", + "entertainment": "エンターテイメント", + "games": "ゲーム", + "general": "一般", + "life": "生活", + "marketing": "マーケティング", + "office": "オフィス", + "programming": "プログラミング", + "translation": "翻訳" + }, + "plugin": { + "all": "すべて", + "gaming-entertainment": "ゲーム・エンターテイメント", + "life-style": "ライフスタイル", + "media-generate": "メディア生成", + "science-education": "科学・教育", + "social": "ソーシャルメディア", + "stocks-finance": "株式・金融", + "tools": "実用ツール", + "web-search": "ウェブ検索" + } + }, + "cleanFilter": "フィルターをクリア", + "create": "作成", + "createGuide": { + "func1": { + "desc1": "会話ウィンドウの右上隅の設定から、アシスタントを提出したい設定ページに入ります;", + "desc2": "右上隅のアシスタントマーケットに提出ボタンをクリックします。", + "tag": "方法1", + "title": "LobeChatを通じて提出" + }, + "func2": { + "button": "Githubアシスタントリポジトリに移動", + "desc": "アシスタントをインデックスに追加したい場合は、pluginsディレクトリにagent-template.jsonまたはagent-template-full.jsonを使用してエントリを作成し、簡単な説明を書いて適切にタグ付けし、プルリクエストを作成してください。", + "tag": "方法2", + "title": "Githubを通じて提出" + } + }, + "dislike": "嫌い", + "filter": "フィルター", + "filterBy": { + "authorRange": { + "everyone": "すべての著者", + "followed": "フォローしている著者", + "title": "著者範囲" + }, + "contentLength": "最小コンテキスト長", + "maxToken": { + "title": "最大長さを設定 (トークン)", + "unlimited": "無制限" + }, + "other": { + "functionCall": "関数呼び出しをサポート", + "title": "その他", + "vision": "視覚認識をサポート", + "withKnowledge": "知識ベース付き", + "withTool": "プラグイン付き" + }, + "pricing": "モデル価格", + "timePeriod": { + "all": "すべての時間", + "day": "過去24時間", + "month": "過去30日", + "title": "時間範囲", + "week": "過去7日", + "year": "過去1年" + } + }, + "home": { + "featuredAssistants": "おすすめアシスタント", + "featuredModels": "おすすめモデル", + "featuredProviders": "おすすめモデルサービスプロバイダー", + "featuredTools": "おすすめプラグイン", + "more": "もっと発見する" + }, + "like": "好き", + "models": { + "chat": "会話を始める", + "contentLength": "最大コンテキスト長", + "free": "無料", + "guide": "設定ガイド", + "list": "モデルリスト", + "more": "もっと見る", + "parameterList": { + "defaultValue": "デフォルト値", + "docs": "ドキュメントを見る", + "frequency_penalty": { + "desc": "この設定は、モデルが入力中に既に出現した特定の語彙の使用頻度を調整します。高い値はそのような繰り返しの可能性を低下させ、負の値は逆の効果を生み出します。語彙の罰則は出現回数に応じて増加しません。負の値は語彙の繰り返し使用を奨励します。", + "title": "頻度ペナルティ" + }, + "max_tokens": { + "desc": "この設定は、モデルが一度の応答で生成できる最大の長さを定義します。値を高く設定すると、モデルはより長い応答を生成でき、値を低く設定すると、応答の長さが制限され、より簡潔になります。異なるアプリケーションシーンに応じて、この値を適切に調整することで、期待される応答の長さと詳細度を達成するのに役立ちます。", + "title": "一度の応答制限" + }, + "presence_penalty": { + "desc": "この設定は、語彙が入力中に出現する頻度に基づいて語彙の繰り返し使用を制御することを目的としています。入力中に多く出現する語彙の使用を減らそうとし、その使用頻度は出現頻度に比例します。語彙の罰則は出現回数に応じて増加します。負の値は語彙の繰り返し使用を奨励します。", + "title": "トピックの新鮮さ" + }, + "range": "範囲", + "temperature": { + "desc": "この設定は、モデルの応答の多様性に影響を与えます。低い値はより予測可能で典型的な応答をもたらし、高い値はより多様で珍しい応答を奨励します。値が0に設定されると、モデルは与えられた入力に対して常に同じ応答を返します。", + "title": "ランダム性" + }, + "title": "モデルパラメータ", + "top_p": { + "desc": "この設定は、モデルの選択を可能性の高い一定の割合の語彙に制限します:累積確率がPに達するトップ語彙のみを選択します。低い値はモデルの応答をより予測可能にし、デフォルト設定はモデルが全範囲の語彙から選択できることを許可します。", + "title": "核サンプリング" + }, + "type": "タイプ" + }, + "providerInfo": { + "apiTooltip": "LobeChatは、このプロバイダーに対してカスタムAPIキーを使用することをサポートしています。", + "input": "入力価格", + "inputTooltip": "百万トークンあたりのコスト", + "latency": "レイテンシ", + "latencyTooltip": "プロバイダーが最初のトークンを送信する平均応答時間", + "maxOutput": "最大出力長", + "maxOutputTooltip": "このエンドポイントが生成できる最大トークン数", + "officialTooltip": "LobeHub公式サービス", + "output": "出力価格", + "outputTooltip": "百万トークンあたりのコスト", + "streamCancellationTooltip": "このプロバイダーはストリームキャンセル機能をサポートしています。", + "throughput": "スループット", + "throughputTooltip": "ストリームリクエストが毎秒転送する平均トークン数" + }, + "suggestions": "関連モデル", + "supportedProviders": "このモデルをサポートするプロバイダー" + }, + "plugins": { + "community": "コミュニティプラグイン", + "install": "プラグインをインストール", + "installed": "インストール済み", + "list": "プラグインリスト", + "meta": { + "description": "説明", + "parameter": "パラメータ", + "title": "ツールパラメータ", + "type": "タイプ" + }, + "more": "もっと見る", + "official": "公式プラグイン", + "recentSubmits": "最近の更新", + "suggestions": "関連する提案" + }, + "providers": { + "config": "プロバイダーの設定", + "list": "モデルサービスプロバイダーリスト", + "more": "もっと見る", + "suggestions": "関連プロバイダー", + "supportedModels": "サポートされているモデル" + }, + "search": { + "placeholder": "名前、紹介、またはキーワードを検索...", + "result": "{{keyword}}に関する{{count}}件の検索結果", + "searching": "検索中..." + }, + "sort": { + "mostLiked": "最も好まれた", + "mostUsed": "最も使用された", + "newest": "新しい順", + "oldest": "古い順", + "recommended": "おすすめ" + }, + "tab": { + "assistants": "アシスタント", + "home": "ホーム", + "models": "モデル", + "plugins": "プラグイン", + "providers": "モデルプロバイダー" + } +} diff --git a/locales/ja-JP/metadata.json b/locales/ja-JP/metadata.json index 1837fb649247f..fbc4bcf97a8e9 100644 --- a/locales/ja-JP/metadata.json +++ b/locales/ja-JP/metadata.json @@ -3,9 +3,26 @@ "description": "{{appName}}が提供する最高のChatGPT、Claude、Gemini、OLLaMA WebUIの体験", "title": "{{appName}}:個人AI効率ツール、より賢い脳を手に入れよう" }, - "market": { - "description": "コンテンツ制作、コピーライティング、Q&A、画像生成、動画生成、音声生成、インテリジェントエージェント、自動化ワークフロー、あなた専用のAIスマートアシスタントをカスタマイズ", - "title": "アシスタントマーケット" + "discover": { + "assistants": { + "description": "コンテンツ作成、コピーライティング、Q&A、画像生成、動画生成、音声生成、インテリジェントエージェント、自動化ワークフロー、あなた専用のAI / GPTs / OLLaMAインテリジェントアシスタントをカスタマイズ", + "title": "AIアシスタント" + }, + "description": "コンテンツ作成、コピーライティング、Q&A、画像生成、動画生成、音声生成、インテリジェントエージェント、自動化ワークフロー、カスタムAIアプリケーション、あなた専用のAIアプリケーションワークスペースをカスタマイズ", + "models": { + "description": "主流のAIモデルを探索 OpenAI / GPT / Claude 3 / Gemini / Ollama / Azure / DeepSeek", + "title": "AIモデル" + }, + "plugins": { + "description": "グラフ生成、学術、画像生成、動画生成、音声生成、自動化ワークフローの検索を行い、あなたのアシスタントに豊富なプラグイン機能を統合します。", + "title": "AIプラグイン" + }, + "providers": { + "description": "主流のモデルプロバイダーを探索 OpenAI / Qwen / Ollama / Anthropic / DeepSeek / Google Gemini / OpenRouter", + "title": "AIモデルサービスプロバイダー" + }, + "search": "検索", + "title": "発見" }, "plugins": { "description": "検索、グラフ生成、学術、画像生成、動画生成、音声生成、自動化ワークフロー、ChatGPT / Claude専用のToolCallプラグイン機能をカスタマイズ", diff --git a/locales/ko-KR/common.json b/locales/ko-KR/common.json index 5dc15a1d5b780..bb4554125a3a6 100644 --- a/locales/ko-KR/common.json +++ b/locales/ko-KR/common.json @@ -195,8 +195,8 @@ }, "tab": { "chat": "채팅", + "discover": "발견하기", "files": "파일", - "market": "발견", "me": "나", "setting": "설정" }, diff --git a/locales/ko-KR/discover.json b/locales/ko-KR/discover.json new file mode 100644 index 0000000000000..3130795d37727 --- /dev/null +++ b/locales/ko-KR/discover.json @@ -0,0 +1,200 @@ +{ + "assistants": { + "addAgent": "도우미 추가", + "addAgentAndConverse": "도우미 추가 및 대화하기", + "addAgentSuccess": "추가 성공", + "conversation": { + "l1": "안녕하세요, 저는 **{{name}}**입니다. 궁금한 점이 있으면 무엇이든 물어보세요. 최선을 다해 답변하겠습니다 ~", + "l2": "다음은 제 능력 소개입니다: ", + "l3": "대화를 시작해 볼까요!" + }, + "description": "도우미 소개", + "detail": "상세 정보", + "list": "도우미 목록", + "more": "더 보기", + "plugins": "플러그인 통합", + "recentSubmits": "최근 업데이트", + "suggestions": "추천 항목", + "systemRole": "도우미 설정", + "try": "해보기" + }, + "back": "발견으로 돌아가기", + "category": { + "assistant": { + "academic": "학술", + "all": "전체", + "career": "직업", + "copywriting": "카피라이팅", + "design": "디자인", + "education": "교육", + "emotions": "감정", + "entertainment": "엔터테인먼트", + "games": "게임", + "general": "일반", + "life": "생활", + "marketing": "마케팅", + "office": "사무", + "programming": "프로그래밍", + "translation": "번역" + }, + "plugin": { + "all": "모두", + "gaming-entertainment": "게임 및 엔터테인먼트", + "life-style": "라이프스타일", + "media-generate": "미디어 생성", + "science-education": "과학 및 교육", + "social": "소셜 미디어", + "stocks-finance": "주식 및 금융", + "tools": "유용한 도구", + "web-search": "웹 검색" + } + }, + "cleanFilter": "필터 지우기", + "create": "창작", + "createGuide": { + "func1": { + "desc1": "대화 창의 오른쪽 상단 설정을 통해 제출할 도우미의 설정 페이지로 이동하세요;", + "desc2": "오른쪽 상단의 도우미 마켓에 제출 버튼을 클릭하세요.", + "tag": "방법 1", + "title": "LobeChat을 통해 제출하기" + }, + "func2": { + "button": "Github 도우미 저장소로 이동", + "desc": "도우미를 인덱스에 추가하려면 plugins 디렉토리에 agent-template.json 또는 agent-template-full.json을 사용하여 항목을 만들고, 간단한 설명을 작성한 후 적절히 태그를 추가하고, 풀 리퀘스트를 생성하세요.", + "tag": "방법 2", + "title": "Github을 통해 제출하기" + } + }, + "dislike": "싫어요", + "filter": "필터", + "filterBy": { + "authorRange": { + "everyone": "모든 저자", + "followed": "팔로우한 저자", + "title": "저자 범위" + }, + "contentLength": "최소 맥락 길이", + "maxToken": { + "title": "최대 길이 설정 (Token)", + "unlimited": "무제한" + }, + "other": { + "functionCall": "함수 호출 지원", + "title": "기타", + "vision": "비주얼 인식 지원", + "withKnowledge": "지식 베이스 포함", + "withTool": "플러그인 포함" + }, + "pricing": "모델 가격", + "timePeriod": { + "all": "전체 시간", + "day": "최근 24시간", + "month": "최근 30일", + "title": "시간 범위", + "week": "최근 7일", + "year": "최근 1년" + } + }, + "home": { + "featuredAssistants": "추천 도우미", + "featuredModels": "추천 모델", + "featuredProviders": "추천 모델 서비스 제공자", + "featuredTools": "추천 플러그인", + "more": "더 많은 발견" + }, + "like": "좋아요", + "models": { + "chat": "대화 시작", + "contentLength": "최대 맥락 길이", + "free": "무료", + "guide": "설정 가이드", + "list": "모델 목록", + "more": "더 보기", + "parameterList": { + "defaultValue": "기본값", + "docs": "문서 보기", + "frequency_penalty": { + "desc": "이 설정은 모델이 입력에서 이미 나타난 특정 단어의 사용 빈도를 조정합니다. 높은 값은 이러한 반복의 가능성을 줄이고, 음수 값은 반대의 효과를 생성합니다. 단어 처벌은 출현 횟수에 따라 증가하지 않습니다. 음수 값은 단어의 반복 사용을 장려합니다.", + "title": "빈도 처벌" + }, + "max_tokens": { + "desc": "이 설정은 모델이 한 번의 응답에서 생성할 수 있는 최대 길이를 정의합니다. 높은 값을 설정하면 모델이 더 긴 응답을 생성할 수 있으며, 낮은 값은 응답의 길이를 제한하여 더 간결하게 만듭니다. 다양한 응용 프로그램에 따라 이 값을 적절히 조정하면 예상되는 응답 길이와 세부 사항을 달성하는 데 도움이 될 수 있습니다.", + "title": "한 번의 응답 제한" + }, + "presence_penalty": { + "desc": "이 설정은 입력에서 단어의 출현 빈도에 따라 단어의 반복 사용을 제어하는 데 목적이 있습니다. 입력에서 많이 나타나는 단어는 덜 사용하려고 하며, 사용 빈도는 출현 빈도와 비례합니다. 단어 처벌은 출현 횟수에 따라 증가합니다. 음수 값은 단어의 반복 사용을 장려합니다.", + "title": "주제 신선도" + }, + "range": "범위", + "temperature": { + "desc": "이 설정은 모델 응답의 다양성에 영향을 미칩니다. 낮은 값은 더 예측 가능하고 전형적인 응답을 유도하며, 높은 값은 더 다양하고 드문 응답을 장려합니다. 값이 0으로 설정되면 모델은 주어진 입력에 대해 항상 동일한 응답을 제공합니다.", + "title": "무작위성" + }, + "title": "모델 매개변수", + "top_p": { + "desc": "이 설정은 모델의 선택을 가능성이 가장 높은 특정 비율의 단어로 제한합니다: 누적 확률이 P에 도달하는 최상위 단어만 선택합니다. 낮은 값은 모델의 응답을 더 예측 가능하게 만들고, 기본 설정은 모델이 전체 범위의 단어에서 선택할 수 있도록 허용합니다.", + "title": "핵 샘플링" + }, + "type": "유형" + }, + "providerInfo": { + "apiTooltip": "LobeChat은 이 제공자에 대해 사용자 정의 API 키를 지원합니다.", + "input": "입력 가격", + "inputTooltip": "백만 개의 Token당 비용", + "latency": "지연", + "latencyTooltip": "제공자가 첫 번째 Token을 보내는 평균 응답 시간", + "maxOutput": "최대 출력 길이", + "maxOutputTooltip": "이 엔드포인트가 생성할 수 있는 최대 Token 수", + "officialTooltip": "LobeHub 공식 서비스", + "output": "출력 가격", + "outputTooltip": "백만 개의 Token당 비용", + "streamCancellationTooltip": "이 제공자는 스트림 취소 기능을 지원합니다.", + "throughput": "처리량", + "throughputTooltip": "스트림 요청당 초당 전송되는 평균 Token 수" + }, + "suggestions": "관련 모델", + "supportedProviders": "이 모델을 지원하는 서비스 제공자" + }, + "plugins": { + "community": "커뮤니티 플러그인", + "install": "플러그인 설치", + "installed": "설치됨", + "list": "플러그인 목록", + "meta": { + "description": "설명", + "parameter": "매개변수", + "title": "도구 매개변수", + "type": "유형" + }, + "more": "더보기", + "official": "공식 플러그인", + "recentSubmits": "최근 업데이트", + "suggestions": "추천 항목" + }, + "providers": { + "config": "서비스 제공자 설정", + "list": "모델 서비스 제공자 목록", + "more": "더보기", + "suggestions": "관련 서비스 제공자", + "supportedModels": "지원되는 모델" + }, + "search": { + "placeholder": "이름, 소개 또는 키워드 검색...", + "result": "{{count}} 개의 {{keyword}}에 대한 검색 결과", + "searching": "검색 중..." + }, + "sort": { + "mostLiked": "가장 좋아요", + "mostUsed": "가장 많이 사용됨", + "newest": "최신순", + "oldest": "오래된 순", + "recommended": "추천" + }, + "tab": { + "assistants": "도우미", + "home": "홈", + "models": "모델", + "plugins": "플러그인", + "providers": "모델 제공자" + } +} diff --git a/locales/ko-KR/metadata.json b/locales/ko-KR/metadata.json index c01dec8c9aa40..6cd12c3655b33 100644 --- a/locales/ko-KR/metadata.json +++ b/locales/ko-KR/metadata.json @@ -3,9 +3,26 @@ "description": "{{appName}}가 제공하는 최고의 ChatGPT, Claude, Gemini, OLLaMA WebUI 사용 경험", "title": "{{appName}}: 개인 AI 효율 도구, 더 똑똑한 두뇌를 위한 선택" }, - "market": { - "description": "콘텐츠 창작, 카피라이팅, Q&A, 이미지 생성, 비디오 생성, 음성 생성, 스마트 에이전트, 자동화 워크플로우, 나만의 AI 스마트 어시스턴트를 맞춤 설정하세요", - "title": "어시스턴트 마켓" + "discover": { + "assistants": { + "description": "콘텐츠 제작, 카피라이팅, Q&A, 이미지 생성, 비디오 생성, 음성 생성, 스마트 에이전트, 자동화 워크플로우, 나만의 AI / GPTs / OLLaMA 스마트 어시스턴트를 맞춤 설정하세요.", + "title": "AI 도우미" + }, + "description": "콘텐츠 제작, 카피라이팅, Q&A, 이미지 생성, 비디오 생성, 음성 생성, 스마트 에이전트, 자동화 워크플로우, 맞춤형 AI 애플리케이션, 나만의 AI 애플리케이션 작업 공간을 맞춤 설정하세요.", + "models": { + "description": "주요 AI 모델 탐색: OpenAI / GPT / Claude 3 / Gemini / Ollama / Azure / DeepSeek", + "title": "AI 모델" + }, + "plugins": { + "description": "차트 생성, 학술, 이미지 생성, 비디오 생성, 음성 생성, 자동화 워크플로우를 검색하여 당신의 도우미에 풍부한 플러그인 기능을 통합하세요.", + "title": "AI 플러그인" + }, + "providers": { + "description": "주요 모델 공급업체 탐색: OpenAI / Qwen / Ollama / Anthropic / DeepSeek / Google Gemini / OpenRouter", + "title": "AI 모델 서비스 제공자" + }, + "search": "검색", + "title": "발견" }, "plugins": { "description": "검색, 차트 생성, 학술, 이미지 생성, 비디오 생성, 음성 생성, 자동화 워크플로우, ChatGPT / Claude 전용 ToolCall 플러그인 기능을 맞춤 설정하세요", diff --git a/locales/nl-NL/common.json b/locales/nl-NL/common.json index 430f12d9672a7..1603c765ff2af 100644 --- a/locales/nl-NL/common.json +++ b/locales/nl-NL/common.json @@ -195,8 +195,8 @@ }, "tab": { "chat": "Chat", + "discover": "Ontdekken", "files": "Bestanden", - "market": "Ontdekken", "me": "Ik", "setting": "Instellingen" }, diff --git a/locales/nl-NL/discover.json b/locales/nl-NL/discover.json new file mode 100644 index 0000000000000..92012af656db5 --- /dev/null +++ b/locales/nl-NL/discover.json @@ -0,0 +1,200 @@ +{ + "assistants": { + "addAgent": "Voeg assistent toe", + "addAgentAndConverse": "Voeg assistent toe en begin een gesprek", + "addAgentSuccess": "Toevoegen geslaagd", + "conversation": { + "l1": "Hallo, ik ben **{{name}}**, je kunt me alles vragen en ik zal mijn best doen om je te helpen ~", + "l2": "Hier zijn mijn mogelijkheden: ", + "l3": "Laten we het gesprek beginnen!" + }, + "description": "Assistent introductie", + "detail": "Details", + "list": "Assistentenlijst", + "more": "Meer", + "plugins": "Geïntegreerde plugins", + "recentSubmits": "Recent bijgewerkt", + "suggestions": "Gerelateerde aanbevelingen", + "systemRole": "Assistent instellingen", + "try": "Probeer het" + }, + "back": "Terug naar Ontdekken", + "category": { + "assistant": { + "academic": "Academisch", + "all": "Alle", + "career": "Carrière", + "copywriting": "Copywriting", + "design": "Ontwerp", + "education": "Onderwijs", + "emotions": "Emoties", + "entertainment": "Entertainment", + "games": "Spellen", + "general": "Algemeen", + "life": "Leven", + "marketing": "Marketing", + "office": "Kantoor", + "programming": "Programmeren", + "translation": "Vertaling" + }, + "plugin": { + "all": "Alles", + "gaming-entertainment": "Gaming en Entertainment", + "life-style": "Levensstijl", + "media-generate": "Media Generatie", + "science-education": "Wetenschap en Educatie", + "social": "Sociale Media", + "stocks-finance": "Aandelen en Financiën", + "tools": "Hulpmiddelen", + "web-search": "Webzoektocht" + } + }, + "cleanFilter": "Filter wissen", + "create": "Creëren", + "createGuide": { + "func1": { + "desc1": "Ga naar de instellingenpagina van de assistent die je wilt indienen via de instellingen in de rechterbovenhoek van het gespreksscherm;", + "desc2": "Klik op de knop 'Indienen naar assistentmarkt' in de rechterbovenhoek.", + "tag": "Methode één", + "title": "Indienen via LobeChat" + }, + "func2": { + "button": "Ga naar de Github assistent repository", + "desc": "Als je de assistent aan de index wilt toevoegen, maak dan een item aan in de plugins map met agent-template.json of agent-template-full.json, schrijf een korte beschrijving en markeer het correct, en dien vervolgens een pull request in.", + "tag": "Methode twee", + "title": "Indienen via Github" + } + }, + "dislike": "Niet leuk", + "filter": "Filter", + "filterBy": { + "authorRange": { + "everyone": "Alle auteurs", + "followed": "Gevolgde auteurs", + "title": "Auteur bereik" + }, + "contentLength": "Minimale contextlengte", + "maxToken": { + "title": "Stel maximale lengte in (Token)", + "unlimited": "Onbeperkt" + }, + "other": { + "functionCall": "Ondersteunt functie-aanroep", + "title": "Overige", + "vision": "Ondersteunt visuele herkenning", + "withKnowledge": "Met kennisbank", + "withTool": "Met plugin" + }, + "pricing": "Modelprijs", + "timePeriod": { + "all": "Alle tijd", + "day": "Laatste 24 uur", + "month": "Laatste 30 dagen", + "title": "Tijd bereik", + "week": "Laatste 7 dagen", + "year": "Laatste jaar" + } + }, + "home": { + "featuredAssistants": "Aanbevolen assistenten", + "featuredModels": "Aanbevolen modellen", + "featuredProviders": "Aanbevolen modelproviders", + "featuredTools": "Aanbevolen plugins", + "more": "Ontdek meer" + }, + "like": "Leuk", + "models": { + "chat": "Begin gesprek", + "contentLength": "Maximale contextlengte", + "free": "Gratis", + "guide": "Configuratiegids", + "list": "Modellenlijst", + "more": "Meer", + "parameterList": { + "defaultValue": "Standaardwaarde", + "docs": "Bekijk documentatie", + "frequency_penalty": { + "desc": "Deze instelling past de frequentie aan waarmee het model specifieke woorden die al in de invoer zijn verschenen, herhaalt. Hogere waarden verminderen de kans op herhaling, terwijl negatieve waarden het tegenovergestelde effect hebben. Woordstraffen nemen niet toe met het aantal verschijningen. Negatieve waarden moedigen herhaling aan.", + "title": "Frequentie straf" + }, + "max_tokens": { + "desc": "Deze instelling definieert de maximale lengte die het model kan genereren in één enkele reactie. Een hogere waarde stelt het model in staat om langere antwoorden te genereren, terwijl een lagere waarde de lengte van de reactie beperkt, waardoor deze beknopter wordt. Het is raadzaam om deze waarde aan te passen op basis van verschillende toepassingsscenario's om de gewenste lengte en detailniveau van de reactie te bereiken.", + "title": "Beperking van de reactie in één keer" + }, + "presence_penalty": { + "desc": "Deze instelling is bedoeld om de herhaling van woorden te beheersen op basis van hun frequentie in de invoer. Het probeert minder gebruik te maken van woorden die vaker in de invoer voorkomen, in verhouding tot hun gebruiksfrequentie. Woordstraffen nemen toe met het aantal verschijningen. Negatieve waarden moedigen herhaling aan.", + "title": "Onderwerp versheid" + }, + "range": "Bereik", + "temperature": { + "desc": "Deze instelling beïnvloedt de diversiteit van de reacties van het model. Lagere waarden leiden tot meer voorspelbare en typische reacties, terwijl hogere waarden meer diverse en ongebruikelijke reacties aanmoedigen. Wanneer de waarde op 0 is ingesteld, geeft het model altijd dezelfde reactie op een gegeven invoer.", + "title": "Willekeurigheid" + }, + "title": "Modelparameters", + "top_p": { + "desc": "Deze instelling beperkt de keuze van het model tot een bepaald percentage van de meest waarschijnlijke woorden: alleen die woorden waarvan de cumulatieve waarschijnlijkheid P bereikt. Lagere waarden maken de reacties van het model voorspelbaarder, terwijl de standaardinstelling het model toestaat om uit het volledige bereik van woorden te kiezen.", + "title": "Nucleus sampling" + }, + "type": "Type" + }, + "providerInfo": { + "apiTooltip": "LobeChat ondersteunt het gebruik van een aangepaste API-sleutel voor deze provider.", + "input": "Invoerkosten", + "inputTooltip": "Kosten per miljoen tokens", + "latency": "Latentie", + "latencyTooltip": "Gemiddelde responstijd voor de eerste token van de provider", + "maxOutput": "Maximale uitvoerlengte", + "maxOutputTooltip": "Maximaal aantal tokens dat deze endpoint kan genereren", + "officialTooltip": "Officiële LobeHub service", + "output": "Uitvoerkosten", + "outputTooltip": "Kosten per miljoen tokens", + "streamCancellationTooltip": "Deze provider ondersteunt stream annulering.", + "throughput": "Doorvoer", + "throughputTooltip": "Gemiddeld aantal tokens dat per seconde wordt verzonden in stream aanvragen" + }, + "suggestions": "Gerelateerde modellen", + "supportedProviders": "Providers die dit model ondersteunen" + }, + "plugins": { + "community": "Gemeenschapsplugins", + "install": "Plugin installeren", + "installed": "Geïnstalleerd", + "list": "Pluginlijst", + "meta": { + "description": "Beschrijving", + "parameter": "Parameter", + "title": "Hulpmiddelparameters", + "type": "Type" + }, + "more": "Meer", + "official": "Officiële plugins", + "recentSubmits": "Recent ingediend", + "suggestions": "Gerelateerde aanbevelingen" + }, + "providers": { + "config": "Configuratie aanbieder", + "list": "Lijst van modelproviders", + "more": "Meer", + "suggestions": "Gerelateerde aanbieders", + "supportedModels": "Ondersteunde modellen" + }, + "search": { + "placeholder": "Zoek naam, beschrijving of trefwoord...", + "result": "{{count}} resultaten over {{keyword}}", + "searching": "Zoeken..." + }, + "sort": { + "mostLiked": "Meest Geliket", + "mostUsed": "Meest Gebruikt", + "newest": "Nieuwste Eerst", + "oldest": "Oudste Eerst", + "recommended": "Aanbevolen" + }, + "tab": { + "assistants": "Assistenten", + "home": "Startpagina", + "models": "Modellen", + "plugins": "Plugins", + "providers": "Modelleveranciers" + } +} diff --git a/locales/nl-NL/metadata.json b/locales/nl-NL/metadata.json index 349cf5427bdc4..2bf20a555ce6a 100644 --- a/locales/nl-NL/metadata.json +++ b/locales/nl-NL/metadata.json @@ -3,9 +3,26 @@ "description": "{{appName}} biedt je de beste ervaring met ChatGPT, Claude, Gemini, en OLLaMA WebUI", "title": "{{appName}}: Persoonlijke AI-efficiëntietool, geef jezelf een slimmer brein" }, - "market": { - "description": "Inhoudcreatie, copywriting, Q&A, beeldgeneratie, video-generatie, spraakgeneratie, slimme agenten, geautomatiseerde workflows, pas je eigen AI slimme assistent aan", - "title": "Assistentenmarkt" + "discover": { + "assistants": { + "description": "Inhoud creatie, copywriting, vraag-en-antwoord, beeldgeneratie, video-generatie, spraakgeneratie, slimme agenten, geautomatiseerde workflows, pas je eigen AI / GPTs / OLLaMA slimme assistent aan", + "title": "AI-assistenten" + }, + "description": "Inhoud creatie, copywriting, vraag-en-antwoord, beeldgeneratie, video-generatie, spraakgeneratie, slimme agenten, geautomatiseerde workflows, aangepaste AI-toepassingen, pas je eigen AI-toepassingswerkplek aan", + "models": { + "description": "Verken populaire AI-modellen zoals OpenAI / GPT / Claude 3 / Gemini / Ollama / Azure / DeepSeek", + "title": "AI-modellen" + }, + "plugins": { + "description": "Zoek naar grafiekgeneratie, academische toepassingen, afbeeldingsgeneratie, videogeneratie, spraakgeneratie en geautomatiseerde workflows om rijke plug-in mogelijkheden voor je assistent te integreren.", + "title": "AI-plug-ins" + }, + "providers": { + "description": "Verken populaire modelproviders zoals OpenAI / Qwen / Ollama / Anthropic / DeepSeek / Google Gemini / OpenRouter", + "title": "AI-modelleveranciers" + }, + "search": "Zoeken", + "title": "Ontdekken" }, "plugins": { "description": "Zoeken, grafiekgeneratie, academisch, beeldgeneratie, video-generatie, spraakgeneratie, geautomatiseerde workflows, pas de ToolCall-pluginmogelijkheden van ChatGPT / Claude aan", diff --git a/locales/pl-PL/common.json b/locales/pl-PL/common.json index 29fac02ad7d0d..352189c3ef0b2 100644 --- a/locales/pl-PL/common.json +++ b/locales/pl-PL/common.json @@ -195,8 +195,8 @@ }, "tab": { "chat": "Czat", + "discover": "Odkryj", "files": "Pliki", - "market": "Odkrywaj", "me": "ja", "setting": "Ustawienia" }, diff --git a/locales/pl-PL/discover.json b/locales/pl-PL/discover.json new file mode 100644 index 0000000000000..0b0a7e4b6b3c3 --- /dev/null +++ b/locales/pl-PL/discover.json @@ -0,0 +1,200 @@ +{ + "assistants": { + "addAgent": "Dodaj asystenta", + "addAgentAndConverse": "Dodaj asystenta i rozpocznij rozmowę", + "addAgentSuccess": "Dodano pomyślnie", + "conversation": { + "l1": "Cześć, jestem **{{name}}**, możesz zadać mi dowolne pytanie, postaram się odpowiedzieć ~", + "l2": "Oto moje umiejętności: ", + "l3": "Zacznijmy rozmowę!" + }, + "description": "Opis asystenta", + "detail": "Szczegóły", + "list": "Lista asystentów", + "more": "Więcej", + "plugins": "Zintegrowane wtyczki", + "recentSubmits": "Ostatnie aktualizacje", + "suggestions": "Podobne rekomendacje", + "systemRole": "Ustawienia asystenta", + "try": "Spróbuj" + }, + "back": "Powrót do odkryć", + "category": { + "assistant": { + "academic": "Akademicki", + "all": "Wszystko", + "career": "Kariera", + "copywriting": "Copywriting", + "design": "Projektowanie", + "education": "Edukacja", + "emotions": "Emocje", + "entertainment": "Rozrywka", + "games": "Gry", + "general": "Ogólne", + "life": "Życie", + "marketing": "Marketing", + "office": "Biuro", + "programming": "Programowanie", + "translation": "Tłumaczenie" + }, + "plugin": { + "all": "Wszystko", + "gaming-entertainment": "Gry i rozrywka", + "life-style": "Styl życia", + "media-generate": "Generowanie mediów", + "science-education": "Nauka i edukacja", + "social": "Media społecznościowe", + "stocks-finance": "Akcje i finanse", + "tools": "Narzędzia", + "web-search": "Wyszukiwanie w sieci" + } + }, + "cleanFilter": "Wyczyść filtr", + "create": "Utwórz", + "createGuide": { + "func1": { + "desc1": "W oknie rozmowy przejdź do ustawień w prawym górnym rogu, aby wejść na stronę ustawień asystenta, który chcesz dodać;", + "desc2": "Kliknij przycisk 'Wyślij do rynku asystentów' w prawym górnym rogu.", + "tag": "Metoda pierwsza", + "title": "Zgłoś przez LobeChat" + }, + "func2": { + "button": "Przejdź do repozytorium asystentów na Githubie", + "desc": "Jeśli chcesz dodać asystenta do indeksu, użyj agent-template.json lub agent-template-full.json, aby utworzyć wpis w katalogu plugins, napisz krótki opis i odpowiednio oznacz, a następnie utwórz prośbę o ściągnięcie.", + "tag": "Metoda druga", + "title": "Zgłoś przez Github" + } + }, + "dislike": "Nie lubię", + "filter": "Filtr", + "filterBy": { + "authorRange": { + "everyone": "Wszyscy autorzy", + "followed": "Obserwowani autorzy", + "title": "Zakres autorów" + }, + "contentLength": "Minimalna długość kontekstu", + "maxToken": { + "title": "Ustaw maksymalną długość (Token)", + "unlimited": "Bez ograniczeń" + }, + "other": { + "functionCall": "Obsługuje wywołania funkcji", + "title": "Inne", + "vision": "Obsługuje rozpoznawanie wizualne", + "withKnowledge": "Z dołączoną bazą wiedzy", + "withTool": "Z dołączoną wtyczką" + }, + "pricing": "Cena modelu", + "timePeriod": { + "all": "Wszystkie czasy", + "day": "Ostatnie 24 godziny", + "month": "Ostatnie 30 dni", + "title": "Zakres czasowy", + "week": "Ostatnie 7 dni", + "year": "Ostatni rok" + } + }, + "home": { + "featuredAssistants": "Polecani asystenci", + "featuredModels": "Polecane modele", + "featuredProviders": "Polecani dostawcy modeli", + "featuredTools": "Polecane wtyczki", + "more": "Odkryj więcej" + }, + "like": "Lubię", + "models": { + "chat": "Rozpocznij rozmowę", + "contentLength": "Maksymalna długość kontekstu", + "free": "Darmowe", + "guide": "Przewodnik konfiguracyjny", + "list": "Lista modeli", + "more": "Więcej", + "parameterList": { + "defaultValue": "Wartość domyślna", + "docs": "Zobacz dokumentację", + "frequency_penalty": { + "desc": "To ustawienie dostosowuje częstotliwość powtarzania określonych słów, które już pojawiły się w wejściu. Wyższa wartość zmniejsza prawdopodobieństwo powtórzeń, podczas gdy wartość ujemna ma odwrotny efekt. Kara za słownictwo nie wzrasta wraz z liczbą wystąpień. Wartości ujemne zachęcają do powtarzania słownictwa.", + "title": "Kara za częstotliwość" + }, + "max_tokens": { + "desc": "To ustawienie definiuje maksymalną długość, jaką model może wygenerować w jednej odpowiedzi. Ustawienie wyższej wartości pozwala modelowi na generowanie dłuższych odpowiedzi, podczas gdy niższa wartość ogranicza długość odpowiedzi, czyniąc ją bardziej zwięzłą. W zależności od różnych scenariuszy zastosowania, odpowiednie dostosowanie tej wartości może pomóc osiągnąć oczekiwaną długość i szczegółowość odpowiedzi.", + "title": "Limit odpowiedzi na raz" + }, + "presence_penalty": { + "desc": "To ustawienie ma na celu kontrolowanie powtarzania słownictwa w zależności od częstotliwości jego występowania w wejściu. Stara się rzadziej używać słów, które pojawiają się w wejściu, proporcjonalnie do ich częstotliwości. Kara za słownictwo wzrasta wraz z liczbą wystąpień. Wartości ujemne zachęcają do powtarzania słownictwa.", + "title": "Świeżość tematu" + }, + "range": "Zakres", + "temperature": { + "desc": "To ustawienie wpływa na różnorodność odpowiedzi modelu. Niższe wartości prowadzą do bardziej przewidywalnych i typowych odpowiedzi, podczas gdy wyższe wartości zachęcają do bardziej zróżnicowanych i rzadziej spotykanych odpowiedzi. Gdy wartość wynosi 0, model zawsze daje tę samą odpowiedź na dane wejście.", + "title": "Losowość" + }, + "title": "Parametry modelu", + "top_p": { + "desc": "To ustawienie ogranicza wybór modelu do słów o najwyższej prawdopodobieństwie: wybiera tylko te słowa, których skumulowane prawdopodobieństwo osiąga P. Niższe wartości sprawiają, że odpowiedzi modelu są bardziej przewidywalne, podczas gdy domyślne ustawienie pozwala modelowi wybierać z całego zakresu słownictwa.", + "title": "Próbkowanie jądra" + }, + "type": "Typ" + }, + "providerInfo": { + "apiTooltip": "LobeChat obsługuje użycie niestandardowego klucza API dla tego dostawcy.", + "input": "Cena wejściowa", + "inputTooltip": "Koszt za milion tokenów", + "latency": "Opóźnienie", + "latencyTooltip": "Średni czas odpowiedzi dostawcy na pierwszy token", + "maxOutput": "Maksymalna długość wyjścia", + "maxOutputTooltip": "Maksymalna liczba tokenów, które ten punkt końcowy może wygenerować", + "officialTooltip": "Oficjalna usługa LobeHub", + "output": "Cena wyjściowa", + "outputTooltip": "Koszt za milion tokenów", + "streamCancellationTooltip": "Ten dostawca obsługuje funkcję anulowania strumienia.", + "throughput": "Przepustowość", + "throughputTooltip": "Średnia liczba tokenów przesyłanych na sekundę w żądaniach strumieniowych" + }, + "suggestions": "Podobne modele", + "supportedProviders": "Dostawcy obsługujący ten model" + }, + "plugins": { + "community": "Wtyczki społecznościowe", + "install": "Zainstaluj wtyczkę", + "installed": "Zainstalowane", + "list": "Lista wtyczek", + "meta": { + "description": "Opis", + "parameter": "Parametr", + "title": "Parametry narzędzia", + "type": "Typ" + }, + "more": "Więcej", + "official": "Oficjalne wtyczki", + "recentSubmits": "Ostatnie aktualizacje", + "suggestions": "Podobne rekomendacje" + }, + "providers": { + "config": "Konfiguracja dostawcy", + "list": "Lista dostawców modeli", + "more": "Więcej", + "suggestions": "Powiązani dostawcy", + "supportedModels": "Obsługiwane modele" + }, + "search": { + "placeholder": "Szukaj nazwy, opisu lub słowa kluczowego...", + "result": "{{count}} wyników wyszukiwania dotyczących {{keyword}}", + "searching": "Wyszukiwanie..." + }, + "sort": { + "mostLiked": "Najbardziej lubiane", + "mostUsed": "Najczęściej używane", + "newest": "Od najnowszych", + "oldest": "Od najstarszych", + "recommended": "Polecane" + }, + "tab": { + "assistants": "Asystenci", + "home": "Strona główna", + "models": "Modele", + "plugins": "Wtyczki", + "providers": "Dostawcy modeli" + } +} diff --git a/locales/pl-PL/metadata.json b/locales/pl-PL/metadata.json index bd80a897c4306..abfb8db716b6b 100644 --- a/locales/pl-PL/metadata.json +++ b/locales/pl-PL/metadata.json @@ -3,9 +3,26 @@ "description": "{{appName}} oferuje najlepsze doświadczenia z ChatGPT, Claude, Gemini, OLLaMA WebUI", "title": "{{appName}}: osobiste narzędzie AI, które daje ci mądrzejszy umysł" }, - "market": { - "description": "Tworzenie treści, copywriting, pytania i odpowiedzi, generowanie obrazów, generowanie wideo, generowanie głosu, inteligentni agenci, automatyzacja przepływów pracy, dostosuj swojego osobistego asystenta AI", - "title": "Rynek asystentów" + "discover": { + "assistants": { + "description": "Tworzenie treści, copywriting, pytania i odpowiedzi, generowanie obrazów, generowanie wideo, generowanie głosu, inteligentny agent, automatyzacja przepływów pracy, dostosuj swojego osobistego asystenta AI / GPTs / OLLaMA", + "title": "Asystenci AI" + }, + "description": "Tworzenie treści, copywriting, pytania i odpowiedzi, generowanie obrazów, generowanie wideo, generowanie głosu, inteligentny agent, automatyzacja przepływów pracy, dostosowane aplikacje AI, stwórz swoje osobiste stanowisko pracy AI", + "models": { + "description": "Odkryj popularne modele AI OpenAI / GPT / Claude 3 / Gemini / Ollama / Azure / DeepSeek", + "title": "Modele AI" + }, + "plugins": { + "description": "Odkrywaj generatory wykresów, akademickie, generatory obrazów, generatory wideo, generatory głosu oraz zautomatyzowane przepływy pracy, aby wzbogacić możliwości swojego asystenta dzięki różnorodnym wtyczkom.", + "title": "Wtyczki AI" + }, + "providers": { + "description": "Odkryj głównych dostawców modeli OpenAI / Qwen / Ollama / Anthropic / DeepSeek / Google Gemini / OpenRouter", + "title": "Dostawcy usług modeli AI" + }, + "search": "Szukaj", + "title": "Odkryj" }, "plugins": { "description": "Wyszukiwanie, generowanie wykresów, akademickie, generowanie obrazów, generowanie wideo, generowanie głosu, automatyzacja przepływów pracy, dostosuj możliwości wtyczek ToolCall dla ChatGPT / Claude", diff --git a/locales/pt-BR/common.json b/locales/pt-BR/common.json index f1d3ec440ee7f..0cff597e71e02 100644 --- a/locales/pt-BR/common.json +++ b/locales/pt-BR/common.json @@ -195,8 +195,8 @@ }, "tab": { "chat": "Chat", + "discover": "Descobrir", "files": "Arquivos", - "market": "Descobrir", "me": "eu", "setting": "Configuração" }, diff --git a/locales/pt-BR/discover.json b/locales/pt-BR/discover.json new file mode 100644 index 0000000000000..a3581419c81be --- /dev/null +++ b/locales/pt-BR/discover.json @@ -0,0 +1,200 @@ +{ + "assistants": { + "addAgent": "Adicionar Assistente", + "addAgentAndConverse": "Adicionar Assistente e Conversar", + "addAgentSuccess": "Adição bem-sucedida", + "conversation": { + "l1": "Olá, eu sou **{{name}}**, você pode me fazer qualquer pergunta e eu farei o meu melhor para responder ~", + "l2": "Aqui estão minhas capacidades: ", + "l3": "Vamos começar a conversa!" + }, + "description": "Introdução ao Assistente", + "detail": "Detalhes", + "list": "Lista de Assistentes", + "more": "Mais", + "plugins": "Integrar plugins", + "recentSubmits": "Atualizações Recentes", + "suggestions": "Sugestões Relacionadas", + "systemRole": "Configuração do Assistente", + "try": "Experimente" + }, + "back": "Voltar à descoberta", + "category": { + "assistant": { + "academic": "Acadêmico", + "all": "Todos", + "career": "Carreira", + "copywriting": "Redação", + "design": "Design", + "education": "Educação", + "emotions": "Emoções", + "entertainment": "Entretenimento", + "games": "Jogos", + "general": "Geral", + "life": "Vida", + "marketing": "Marketing", + "office": "Escritório", + "programming": "Programação", + "translation": "Tradução" + }, + "plugin": { + "all": "Todos", + "gaming-entertainment": "Jogos e Entretenimento", + "life-style": "Estilo de Vida", + "media-generate": "Geração de Mídia", + "science-education": "Ciência e Educação", + "social": "Mídias Sociais", + "stocks-finance": "Ações e Finanças", + "tools": "Ferramentas Úteis", + "web-search": "Busca na Web" + } + }, + "cleanFilter": "Limpar Filtro", + "create": "Criar", + "createGuide": { + "func1": { + "desc1": "No painel de conversa, acesse a página de configurações do assistente que você deseja enviar pelo canto superior direito;", + "desc2": "Clique no botão de enviar para o mercado de assistentes no canto superior direito.", + "tag": "Método Um", + "title": "Enviar através do LobeChat" + }, + "func2": { + "button": "Ir para o repositório de Assistentes no Github", + "desc": "Se você deseja adicionar o assistente ao índice, crie uma entrada usando agent-template.json ou agent-template-full.json no diretório plugins, escreva uma breve descrição e marque adequadamente, em seguida, crie um pull request.", + "tag": "Método Dois", + "title": "Enviar através do Github" + } + }, + "dislike": "Não Gosto", + "filter": "Filtrar", + "filterBy": { + "authorRange": { + "everyone": "Todos os Autores", + "followed": "Autores Seguidos", + "title": "Faixa de Autores" + }, + "contentLength": "Comprimento Mínimo do Contexto", + "maxToken": { + "title": "Definir Comprimento Máximo (Token)", + "unlimited": "Ilimitado" + }, + "other": { + "functionCall": "Suporte a Chamadas de Função", + "title": "Outros", + "vision": "Suporte a Reconhecimento Visual", + "withKnowledge": "Com Base de Conhecimento", + "withTool": "Com Plugins" + }, + "pricing": "Preço do Modelo", + "timePeriod": { + "all": "Todo o Tempo", + "day": "Últimas 24 Horas", + "month": "Últimos 30 Dias", + "title": "Faixa de Tempo", + "week": "Últimos 7 Dias", + "year": "Último Ano" + } + }, + "home": { + "featuredAssistants": "Assistentes Recomendados", + "featuredModels": "Modelos Recomendados", + "featuredProviders": "Provedores de Modelos Recomendados", + "featuredTools": "Plugins Recomendados", + "more": "Descubra Mais" + }, + "like": "Gosto", + "models": { + "chat": "Iniciar Conversa", + "contentLength": "Comprimento Máximo do Contexto", + "free": "Gratuito", + "guide": "Guia de Configuração", + "list": "Lista de Modelos", + "more": "Mais", + "parameterList": { + "defaultValue": "Valor Padrão", + "docs": "Ver Documentação", + "frequency_penalty": { + "desc": "Esta configuração ajusta a frequência com que o modelo reutiliza vocabulário específico que já apareceu na entrada. Valores mais altos reduzem a probabilidade de repetição, enquanto valores negativos têm o efeito oposto. A penalidade de vocabulário não aumenta com o número de ocorrências. Valores negativos incentivam a reutilização de vocabulário.", + "title": "Penalidade de Frequência" + }, + "max_tokens": { + "desc": "Esta configuração define o comprimento máximo que o modelo pode gerar em uma única resposta. Definir um valor mais alto permite que o modelo produza respostas mais longas, enquanto um valor mais baixo limita o comprimento da resposta, tornando-a mais concisa. Ajustar esse valor de forma razoável de acordo com diferentes cenários de aplicação pode ajudar a alcançar o comprimento e o nível de detalhe desejados na resposta.", + "title": "Limite de resposta única" + }, + "presence_penalty": { + "desc": "Esta configuração visa controlar a reutilização de vocabulário com base na frequência com que aparece na entrada. Ela tenta usar menos palavras que aparecem com frequência, proporcionalmente à sua frequência de ocorrência. A penalidade de vocabulário aumenta com o número de ocorrências. Valores negativos incentivam a reutilização de vocabulário.", + "title": "Novidade do Tópico" + }, + "range": "Faixa", + "temperature": { + "desc": "Esta configuração afeta a diversidade das respostas do modelo. Valores mais baixos resultam em respostas mais previsíveis e típicas, enquanto valores mais altos incentivam respostas mais variadas e incomuns. Quando o valor é 0, o modelo sempre dá a mesma resposta para uma entrada dada.", + "title": "Aleatoriedade" + }, + "title": "Parâmetros do Modelo", + "top_p": { + "desc": "Esta configuração limita a seleção do modelo a uma certa proporção de vocabulário com maior probabilidade: seleciona apenas aquelas palavras cujo total acumulado de probabilidade atinge P. Valores mais baixos tornam as respostas do modelo mais previsíveis, enquanto a configuração padrão permite que o modelo escolha de todo o vocabulário disponível.", + "title": "Amostragem Nuclear" + }, + "type": "Tipo" + }, + "providerInfo": { + "apiTooltip": "LobeChat suporta o uso de chaves API personalizadas para este provedor.", + "input": "Preço de Entrada", + "inputTooltip": "Custo por milhão de Tokens", + "latency": "Latência", + "latencyTooltip": "Tempo médio de resposta do provedor para enviar o primeiro Token", + "maxOutput": "Comprimento Máximo de Saída", + "maxOutputTooltip": "Número máximo de Tokens que este endpoint pode gerar", + "officialTooltip": "Serviço Oficial do LobeHub", + "output": "Preço de Saída", + "outputTooltip": "Custo por milhão de Tokens", + "streamCancellationTooltip": "Este provedor suporta a funcionalidade de cancelamento de fluxo.", + "throughput": "Taxa de Transferência", + "throughputTooltip": "Número médio de Tokens transmitidos por segundo em solicitações de fluxo" + }, + "suggestions": "Modelos Relacionados", + "supportedProviders": "Provedores que suportam este modelo" + }, + "plugins": { + "community": "Plugins da Comunidade", + "install": "Instalar Plugin", + "installed": "Instalado", + "list": "Lista de Plugins", + "meta": { + "description": "Descrição", + "parameter": "Parâmetro", + "title": "Parâmetros da Ferramenta", + "type": "Tipo" + }, + "more": "Mais", + "official": "Plugins Oficiais", + "recentSubmits": "Atualizações Recentes", + "suggestions": "Sugestões Relacionadas" + }, + "providers": { + "config": "Configurar Provedor", + "list": "Lista de Provedores de Modelos", + "more": "Mais", + "suggestions": "Provedores Relacionados", + "supportedModels": "Modelos Suportados" + }, + "search": { + "placeholder": "Pesquisar nome, descrição ou palavras-chave...", + "result": "{{count}} resultados de busca sobre {{keyword}}", + "searching": "Buscando..." + }, + "sort": { + "mostLiked": "Mais Curtido", + "mostUsed": "Mais Usado", + "newest": "Mais Novo", + "oldest": "Mais Antigo", + "recommended": "Recomendado" + }, + "tab": { + "assistants": "Assistentes", + "home": "Início", + "models": "Modelos", + "plugins": "Plugins", + "providers": "Provedores de Modelos" + } +} diff --git a/locales/pt-BR/metadata.json b/locales/pt-BR/metadata.json index 58248855ef848..ff207209901a3 100644 --- a/locales/pt-BR/metadata.json +++ b/locales/pt-BR/metadata.json @@ -3,9 +3,26 @@ "description": "{{appName}} traz a você a melhor experiência de uso do ChatGPT, Claude, Gemini e OLLaMA WebUI", "title": "{{appName}}: Ferramenta de eficiência pessoal em IA, dê a si mesmo um cérebro mais inteligente" }, - "market": { - "description": "Criação de conteúdo, redação, perguntas e respostas, geração de imagens, geração de vídeos, geração de voz, agentes inteligentes, fluxos de trabalho automatizados, personalize seu assistente inteligente de IA exclusivo", - "title": "Mercado de Assistentes" + "discover": { + "assistants": { + "description": "Criação de conteúdo, redação, perguntas e respostas, geração de imagens, geração de vídeos, geração de voz, Agentes Inteligentes, fluxos de trabalho automatizados, personalize seu assistente inteligente AI / GPTs / OLLaMA", + "title": "Assistentes de IA" + }, + "description": "Criação de conteúdo, redação, perguntas e respostas, geração de imagens, geração de vídeos, geração de voz, Agentes Inteligentes, fluxos de trabalho automatizados, aplicativos de IA personalizados, personalize sua estação de trabalho de aplicativos AI", + "models": { + "description": "Explore os principais modelos de IA OpenAI / GPT / Claude 3 / Gemini / Ollama / Azure / DeepSeek", + "title": "Modelos de IA" + }, + "plugins": { + "description": "Explore gráficos, geração acadêmica, geração de imagens, geração de vídeos, geração de voz e automação de fluxos de trabalho, integrando ricas capacidades de plugins para o seu assistente.", + "title": "Plugins de IA" + }, + "providers": { + "description": "Explore os principais fornecedores de modelos OpenAI / Qwen / Ollama / Anthropic / DeepSeek / Google Gemini / OpenRouter", + "title": "Provedores de Modelos de IA" + }, + "search": "Pesquisar", + "title": "Descobrir" }, "plugins": { "description": "Pesquisa, geração de gráficos, acadêmico, geração de imagens, geração de vídeos, geração de voz, fluxos de trabalho automatizados, personalize as capacidades de plugins ToolCall exclusivos do ChatGPT / Claude", diff --git a/locales/ru-RU/common.json b/locales/ru-RU/common.json index 3af12af83b345..dfb77b63f043d 100644 --- a/locales/ru-RU/common.json +++ b/locales/ru-RU/common.json @@ -195,8 +195,8 @@ }, "tab": { "chat": "Чат", + "discover": "Открыть", "files": "Файлы", - "market": "Обзор", "me": "я", "setting": "Настройки" }, diff --git a/locales/ru-RU/discover.json b/locales/ru-RU/discover.json new file mode 100644 index 0000000000000..9942142cc8fb2 --- /dev/null +++ b/locales/ru-RU/discover.json @@ -0,0 +1,200 @@ +{ + "assistants": { + "addAgent": "Добавить помощника", + "addAgentAndConverse": "Добавить помощника и начать беседу", + "addAgentSuccess": "Успешно добавлено", + "conversation": { + "l1": "Привет, я **{{name}}**, вы можете задавать мне любые вопросы, и я постараюсь на них ответить ~", + "l2": "Вот мои возможности: ", + "l3": "Давайте начнем беседу!" + }, + "description": "Описание помощника", + "detail": "Детали", + "list": "Список помощников", + "more": "Больше", + "plugins": "Интеграция плагинов", + "recentSubmits": "Недавние обновления", + "suggestions": "Рекомендуемые", + "systemRole": "Настройки помощника", + "try": "Попробовать" + }, + "back": "Вернуться к открытиям", + "category": { + "assistant": { + "academic": "Академический", + "all": "Все", + "career": "Карьера", + "copywriting": "Копирайтинг", + "design": "Дизайн", + "education": "Образование", + "emotions": "Эмоции", + "entertainment": "Развлечения", + "games": "Игры", + "general": "Общее", + "life": "Жизнь", + "marketing": "Маркетинг", + "office": "Офис", + "programming": "Программирование", + "translation": "Перевод" + }, + "plugin": { + "all": "Все", + "gaming-entertainment": "Игры и развлечения", + "life-style": "Стиль жизни", + "media-generate": "Генерация медиа", + "science-education": "Наука и образование", + "social": "Социальные медиа", + "stocks-finance": "Финансовые рынки", + "tools": "Полезные инструменты", + "web-search": "Веб-поиск" + } + }, + "cleanFilter": "Очистить фильтр", + "create": "Создать", + "createGuide": { + "func1": { + "desc1": "В окне беседы перейдите в настройки, нажав на значок в правом верхнем углу, чтобы попасть на страницу настроек помощника;", + "desc2": "Нажмите кнопку 'Отправить на рынок помощников' в правом верхнем углу.", + "tag": "Метод 1", + "title": "Отправить через LobeChat" + }, + "func2": { + "button": "Перейти в репозиторий помощников на Github", + "desc": "Если вы хотите добавить помощника в индекс, создайте запись с помощью agent-template.json или agent-template-full.json в каталоге plugins, напишите краткое описание и соответствующие теги, затем создайте запрос на слияние.", + "tag": "Метод 2", + "title": "Отправить через Github" + } + }, + "dislike": "Не нравится", + "filter": "Фильтр", + "filterBy": { + "authorRange": { + "everyone": "Все авторы", + "followed": "Подписанные авторы", + "title": "Диапазон авторов" + }, + "contentLength": "Минимальная длина контекста", + "maxToken": { + "title": "Установить максимальную длину (Token)", + "unlimited": "Без ограничений" + }, + "other": { + "functionCall": "Поддержка вызова функций", + "title": "Другие", + "vision": "Поддержка визуального распознавания", + "withKnowledge": "С включенной базой знаний", + "withTool": "С включенным плагином" + }, + "pricing": "Цена модели", + "timePeriod": { + "all": "Все время", + "day": "Последние 24 часа", + "month": "Последние 30 дней", + "title": "Период времени", + "week": "Последние 7 дней", + "year": "Последний год" + } + }, + "home": { + "featuredAssistants": "Рекомендуемые помощники", + "featuredModels": "Рекомендуемые модели", + "featuredProviders": "Рекомендуемые поставщики моделей", + "featuredTools": "Рекомендуемые плагины", + "more": "Узнать больше" + }, + "like": "Нравится", + "models": { + "chat": "Начать беседу", + "contentLength": "Максимальная длина контекста", + "free": "Бесплатно", + "guide": "Руководство по настройке", + "list": "Список моделей", + "more": "Больше", + "parameterList": { + "defaultValue": "Значение по умолчанию", + "docs": "Посмотреть документацию", + "frequency_penalty": { + "desc": "Эта настройка регулирует частоту повторного использования определенных слов, уже появившихся во входных данных. Более высокие значения снижают вероятность такого повторения, в то время как отрицательные значения имеют противоположный эффект. Штраф за слова не увеличивается с увеличением частоты появления. Отрицательные значения будут поощрять повторное использование слов.", + "title": "Штраф за частоту" + }, + "max_tokens": { + "desc": "Эта настройка определяет максимальную длину, которую модель может сгенерировать за один ответ. Установка более высокого значения позволяет модели генерировать более длинные ответы, в то время как более низкое значение ограничивает длину ответа, делая его более кратким. В зависимости от различных сценариев использования разумная настройка этого значения может помочь достичь ожидаемой длины и степени детализации ответа.", + "title": "Ограничение на один ответ" + }, + "presence_penalty": { + "desc": "Эта настройка предназначена для контроля повторного использования слов в зависимости от их частоты появления во входных данных. Она пытается реже использовать те слова, которые встречаются чаще, пропорционально их частоте. Штраф за слова увеличивается с увеличением частоты появления. Отрицательные значения будут поощрять повторное использование слов.", + "title": "Свежесть темы" + }, + "range": "Диапазон", + "temperature": { + "desc": "Эта настройка влияет на разнообразие ответов модели. Более низкие значения приводят к более предсказуемым и типичным ответам, в то время как более высокие значения поощряют более разнообразные и необычные ответы. Когда значение установлено на 0, модель всегда дает один и тот же ответ на данный ввод.", + "title": "Случайность" + }, + "title": "Параметры модели", + "top_p": { + "desc": "Эта настройка ограничивает выбор модели до определенного процента наиболее вероятных слов: выбираются только те слова, которые достигают накопленной вероятности P. Более низкие значения делают ответы модели более предсказуемыми, в то время как значение по умолчанию позволяет модели выбирать из всего диапазона слов.", + "title": "Ядерная выборка" + }, + "type": "Тип" + }, + "providerInfo": { + "apiTooltip": "LobeChat поддерживает использование пользовательского API-ключа для этого поставщика.", + "input": "Цена ввода", + "inputTooltip": "Стоимость за миллион токенов", + "latency": "Задержка", + "latencyTooltip": "Среднее время ответа поставщика на первый токен", + "maxOutput": "Максимальная длина вывода", + "maxOutputTooltip": "Максимальное количество токенов, которые может сгенерировать эта конечная точка", + "officialTooltip": "Официальный сервис LobeHub", + "output": "Цена вывода", + "outputTooltip": "Стоимость за миллион токенов", + "streamCancellationTooltip": "Этот поставщик поддерживает функцию отмены потока.", + "throughput": "Пропускная способность", + "throughputTooltip": "Среднее количество токенов, передаваемых в секунду для потоковых запросов" + }, + "suggestions": "Связанные модели", + "supportedProviders": "Поставщики, поддерживающие эту модель" + }, + "plugins": { + "community": "Сообщество плагинов", + "install": "Установить плагин", + "installed": "Установлено", + "list": "Список плагинов", + "meta": { + "description": "Описание", + "parameter": "Параметр", + "title": "Параметры инструмента", + "type": "Тип" + }, + "more": "Больше", + "official": "Официальные плагины", + "recentSubmits": "Недавние обновления", + "suggestions": "Рекомендуемые" + }, + "providers": { + "config": "Конфигурация провайдера", + "list": "Список поставщиков моделей", + "more": "Больше", + "suggestions": "Связанные провайдеры", + "supportedModels": "Поддерживаемые модели" + }, + "search": { + "placeholder": "Поиск по названию или ключевым словам...", + "result": "{{count}} результатов поиска по {{keyword}}", + "searching": "Поиск..." + }, + "sort": { + "mostLiked": "Наиболее понравившиеся", + "mostUsed": "Наиболее используемые", + "newest": "Сначала новые", + "oldest": "Сначала старые", + "recommended": "Рекомендуемые" + }, + "tab": { + "assistants": "Ассистенты", + "home": "Главная", + "models": "Модели", + "plugins": "Плагины", + "providers": "Поставщики моделей" + } +} diff --git a/locales/ru-RU/metadata.json b/locales/ru-RU/metadata.json index 79a26aaa4e027..d5ac78f4701e2 100644 --- a/locales/ru-RU/metadata.json +++ b/locales/ru-RU/metadata.json @@ -3,9 +3,26 @@ "description": "{{appName}} предлагает вам лучший опыт использования ChatGPT, Claude, Gemini и OLLaMA WebUI", "title": "{{appName}}: личный инструмент AI для повышения эффективности, дайте себе более умный мозг" }, - "market": { - "description": "Создание контента, копирайтинг, вопросы и ответы, генерация изображений, генерация видео, генерация речи, интеллектуальные агенты, автоматизация рабочих процессов, настройте своего персонального AI помощника", - "title": "Рынок помощников" + "discover": { + "assistants": { + "description": "Создание контента, копирайтинг, вопросы и ответы, генерация изображений, генерация видео, генерация речи, интеллектуальные агенты, автоматизированные рабочие процессы, настройка вашего собственного AI / GPTs / OLLaMA интеллектуального помощника", + "title": "AI помощники" + }, + "description": "Создание контента, копирайтинг, вопросы и ответы, генерация изображений, генерация видео, генерация речи, интеллектуальные агенты, автоматизированные рабочие процессы, настройка AI приложений, настройка вашего собственного рабочего стола AI приложений", + "models": { + "description": "Изучите основные AI модели OpenAI / GPT / Claude 3 / Gemini / Ollama / Azure / DeepSeek", + "title": "AI модели" + }, + "plugins": { + "description": "Ищите генерацию графиков, научные исследования, генерацию изображений, генерацию видео, генерацию речи и автоматизированные рабочие процессы, интегрируя богатые возможности плагинов для вашего помощника.", + "title": "AI плагины" + }, + "providers": { + "description": "Изучите основных поставщиков моделей OpenAI / Qwen / Ollama / Anthropic / DeepSeek / Google Gemini / OpenRouter", + "title": "Поставщики AI моделей" + }, + "search": "Поиск", + "title": "Открыть" }, "plugins": { "description": "Поиск, генерация графиков, академические исследования, генерация изображений, генерация видео, генерация речи, автоматизация рабочих процессов, настройте возможности ToolCall для ChatGPT / Claude", diff --git a/locales/tr-TR/common.json b/locales/tr-TR/common.json index 27bae75e3f6b7..0c261e9fd6643 100644 --- a/locales/tr-TR/common.json +++ b/locales/tr-TR/common.json @@ -195,8 +195,8 @@ }, "tab": { "chat": "Chat", + "discover": "Keşfet", "files": "Dosyalar", - "market": "Keşfet", "me": "ben", "setting": "Ayarlar" }, diff --git a/locales/tr-TR/discover.json b/locales/tr-TR/discover.json new file mode 100644 index 0000000000000..c98a8d6a80a8f --- /dev/null +++ b/locales/tr-TR/discover.json @@ -0,0 +1,200 @@ +{ + "assistants": { + "addAgent": "Asistan Ekle", + "addAgentAndConverse": "Asistan Ekle ve Sohbet Et", + "addAgentSuccess": "Başarıyla Eklendi", + "conversation": { + "l1": "Merhaba, ben **{{name}}**. Bana her türlü soruyu sorabilirsin, elimden gelenin en iyisini yapacağım ~", + "l2": "İşte yeteneklerimin tanıtımı: ", + "l3": "Haydi sohbete başlayalım!" + }, + "description": "Asistan Tanıtımı", + "detail": "Detaylar", + "list": "Asistan Listesi", + "more": "Daha Fazla", + "plugins": "Entegre Eklentiler", + "recentSubmits": "Son Güncellemeler", + "suggestions": "İlgili Öneriler", + "systemRole": "Asistan Ayarları", + "try": "Deneyin" + }, + "back": "Geri Dön", + "category": { + "assistant": { + "academic": "Akademik", + "all": "Hepsi", + "career": "Kariyer", + "copywriting": "Metin Yazarlığı", + "design": "Tasarım", + "education": "Eğitim", + "emotions": "Duygular", + "entertainment": "Eğlence", + "games": "Oyunlar", + "general": "Genel", + "life": "Hayat", + "marketing": "Pazarlama", + "office": "Ofis", + "programming": "Programlama", + "translation": "Çeviri" + }, + "plugin": { + "all": "Hepsi", + "gaming-entertainment": "Oyun Eğlencesi", + "life-style": "Yaşam Tarzı", + "media-generate": "Medya Üretimi", + "science-education": "Bilim ve Eğitim", + "social": "Sosyal Medya", + "stocks-finance": "Hisse Senedi ve Finans", + "tools": "Pratik Araçlar", + "web-search": "Web Arama" + } + }, + "cleanFilter": "Filtreyi Temizle", + "create": "Oluştur", + "createGuide": { + "func1": { + "desc1": "Sohbet penceresinde sağ üst köşedeki ayarlar üzerinden eklemek istediğin asistanın ayar sayfasına git;", + "desc2": "Sağ üst köşedeki asistan pazarına gönder butonuna tıkla.", + "tag": "Yöntem 1", + "title": "LobeChat ile Gönder" + }, + "func2": { + "button": "Github Asistan Deposu'na Git", + "desc": "Asistanı dizine eklemek istiyorsanız, plugins dizininde agent-template.json veya agent-template-full.json kullanarak bir giriş oluşturun, kısa bir açıklama yazın ve uygun şekilde etiketleyin, ardından bir çekme isteği oluşturun.", + "tag": "Yöntem 2", + "title": "Github ile Gönder" + } + }, + "dislike": "Beğenmedim", + "filter": "Filtrele", + "filterBy": { + "authorRange": { + "everyone": "Tüm Yazarlar", + "followed": "Takip Edilen Yazarlar", + "title": "Yazar Aralığı" + }, + "contentLength": "Minimum Bağlam Uzunluğu", + "maxToken": { + "title": "Maksimum Uzunluğu Belirle (Token)", + "unlimited": "Sınırsız" + }, + "other": { + "functionCall": "Fonksiyon Çağrısını Destekle", + "title": "Diğer", + "vision": "Görsel Tanımayı Destekle", + "withKnowledge": "Bilgi Tabanı ile", + "withTool": "Araç ile" + }, + "pricing": "Model Fiyatı", + "timePeriod": { + "all": "Tüm Zamanlar", + "day": "Son 24 Saat", + "month": "Son 30 Gün", + "title": "Zaman Aralığı", + "week": "Son 7 Gün", + "year": "Son 1 Yıl" + } + }, + "home": { + "featuredAssistants": "Öne Çıkan Asistanlar", + "featuredModels": "Öne Çıkan Modeller", + "featuredProviders": "Öne Çıkan Model Sağlayıcıları", + "featuredTools": "Öne Çıkan Araçlar", + "more": "Daha Fazla Keşfet" + }, + "like": "Beğendim", + "models": { + "chat": "Sohbete Başla", + "contentLength": "Maksimum Bağlam Uzunluğu", + "free": "Ücretsiz", + "guide": "Yapılandırma Kılavuzu", + "list": "Model Listesi", + "more": "Daha Fazla", + "parameterList": { + "defaultValue": "Varsayılan Değer", + "docs": "Belgeleri Görüntüle", + "frequency_penalty": { + "desc": "Bu ayar, modelin girdi içinde zaten bulunan belirli kelimelerin tekrar kullanım sıklığını ayarlamak için kullanılır. Daha yüksek değerler, bu tekrarların olasılığını azaltırken, negatif değerler ters etki yaratır. Kelime cezası, tekrar sayısına göre artmaz. Negatif değerler, kelimelerin tekrar kullanımını teşvik eder.", + "title": "Frekans Cezası" + }, + "max_tokens": { + "desc": "Bu ayar, modelin tek bir yanıtında üretebileceği maksimum uzunluğu tanımlar. Daha yüksek bir değer ayarlamak, modelin daha uzun yanıtlar üretmesine izin verirken, daha düşük bir değer yanıtın uzunluğunu kısıtlayarak daha özlü hale getirir. Farklı uygulama senaryolarına göre bu değeri makul bir şekilde ayarlamak, beklenen yanıt uzunluğuna ve ayrıntı seviyesine ulaşmaya yardımcı olabilir.", + "title": "Tek Yanıt Sınırı" + }, + "presence_penalty": { + "desc": "Bu ayar, kelimelerin girdi içinde görünme sıklığına göre tekrar kullanımını kontrol etmeyi amaçlar. Girdi içinde daha fazla bulunan kelimeleri daha az kullanmaya çalışır, kullanma sıklığı görünme sıklığı ile orantılıdır. Kelime cezası, tekrar sayısına göre artar. Negatif değerler, kelimelerin tekrar kullanımını teşvik eder.", + "title": "Konu Tazeliği" + }, + "range": "Aralık", + "temperature": { + "desc": "Bu ayar, modelin yanıtlarının çeşitliliğini etkiler. Daha düşük değerler daha öngörülebilir ve tipik yanıtlar verirken, daha yüksek değerler daha çeşitli ve nadir yanıtları teşvik eder. Değer 0 olarak ayarlandığında, model belirli bir girdi için her zaman aynı yanıtı verir.", + "title": "Rastgelelik" + }, + "title": "Model Parametreleri", + "top_p": { + "desc": "Bu ayar, modelin seçimlerini olasılığı en yüksek olan belirli bir oranla sınırlamak için kullanılır: yalnızca P'ye ulaşan toplam olasılığa sahip en iyi kelimeleri seçer. Daha düşük değerler, modelin yanıtlarını daha öngörülebilir hale getirirken, varsayılan ayar modelin tüm kelime yelpazesinden seçim yapmasına izin verir.", + "title": "Nükleer Örnekleme" + }, + "type": "Tür" + }, + "providerInfo": { + "apiTooltip": "LobeChat, bu sağlayıcı için özel API anahtarları kullanmayı destekler.", + "input": "Girdi Fiyatı", + "inputTooltip": "Her milyon Token için maliyet", + "latency": "Gecikme", + "latencyTooltip": "Sağlayıcının ilk Token'ı gönderme ortalama süresi", + "maxOutput": "Maksimum Çıktı Uzunluğu", + "maxOutputTooltip": "Bu uç noktanın üretebileceği maksimum Token sayısı", + "officialTooltip": "LobeHub Resmi Hizmeti", + "output": "Çıktı Fiyatı", + "outputTooltip": "Her milyon Token için maliyet", + "streamCancellationTooltip": "Bu sağlayıcı akış iptal işlevini destekler.", + "throughput": "Verim", + "throughputTooltip": "Akış talepleri başına saniyede iletilen ortalama Token sayısı" + }, + "suggestions": "İlgili Modeller", + "supportedProviders": "Bu modeli destekleyen sağlayıcılar" + }, + "plugins": { + "community": "Topluluk Eklentisi", + "install": "Eklenti Yükle", + "installed": "Yüklü", + "list": "Eklenti Listesi", + "meta": { + "description": "Açıklama", + "parameter": "Parametre", + "title": "Araç Parametreleri", + "type": "Tür" + }, + "more": "Daha Fazla", + "official": "Resmi Eklenti", + "recentSubmits": "Son Güncellemeler", + "suggestions": "İlgili Öneriler" + }, + "providers": { + "config": "Sağlayıcıyı Yapılandır", + "list": "Model Sağlayıcıları Listesi", + "more": "Daha Fazla", + "suggestions": "İlgili Sağlayıcılar", + "supportedModels": "Desteklenen Modeller" + }, + "search": { + "placeholder": "İsim, tanım veya anahtar kelime ara...", + "result": "{{count}} adet {{keyword}} ile ilgili arama sonucu", + "searching": "Aranıyor..." + }, + "sort": { + "mostLiked": "En Çok Beğenilen", + "mostUsed": "En Çok Kullanılan", + "newest": "En Yeniler", + "oldest": "En Eski", + "recommended": "Tavsiye Edilen" + }, + "tab": { + "assistants": "Asistanlar", + "home": "Ana Sayfa", + "models": "Modeller", + "plugins": "Eklentiler", + "providers": "Model Sağlayıcıları" + } +} diff --git a/locales/tr-TR/metadata.json b/locales/tr-TR/metadata.json index 33733e8247004..66892ae765022 100644 --- a/locales/tr-TR/metadata.json +++ b/locales/tr-TR/metadata.json @@ -3,9 +3,26 @@ "description": "{{appName}} size en iyi ChatGPT, Claude, Gemini, OLLaMA WebUI deneyimini sunar", "title": "{{appName}}: Kişisel AI verimlilik aracı, kendinize daha akıllı bir zihin verin" }, - "market": { - "description": "İçerik oluşturma, metin yazımı, soru-cevap, görsel oluşturma, video oluşturma, ses oluşturma, akıllı ajan, otomatik iş akışları, size özel AI akıllı asistanınızı özelleştirin", - "title": "Asistan Pazarı" + "discover": { + "assistants": { + "description": "İçerik oluşturma, metin yazımı, soru-cevap, görsel oluşturma, video oluşturma, ses oluşturma, akıllı Ajan, otomatik iş akışları, size özel AI / GPTs / OLLaMA akıllı asistanınızı özelleştirin.", + "title": "Yapay Zeka Asistanları" + }, + "description": "İçerik oluşturma, metin yazımı, soru-cevap, görsel oluşturma, video oluşturma, ses oluşturma, akıllı Ajan, otomatik iş akışları, özelleştirilmiş AI uygulamaları, size özel AI uygulama çalışma alanınızı oluşturun.", + "models": { + "description": "Ana akım AI modellerini keşfedin: OpenAI / GPT / Claude 3 / Gemini / Ollama / Azure / DeepSeek.", + "title": "Yapay Zeka Modelleri" + }, + "plugins": { + "description": "Grafik oluşturma, akademik, görüntü oluşturma, video oluşturma, ses oluşturma, otomatik iş akışları için asistanınıza zengin eklenti yetenekleri entegre edin.", + "title": "Yapay Zeka Eklentileri" + }, + "providers": { + "description": "Ana akım model sağlayıcılarını keşfedin: OpenAI / Qwen / Ollama / Anthropic / DeepSeek / Google Gemini / OpenRouter.", + "title": "Yapay Zeka Modeli Sağlayıcıları" + }, + "search": "Ara", + "title": "Keşfet" }, "plugins": { "description": "Arama, grafik oluşturma, akademik, görsel oluşturma, video oluşturma, ses oluşturma, otomatik iş akışları, ChatGPT / Claude için özel ToolCall eklenti yeteneklerini özelleştirin", diff --git a/locales/vi-VN/common.json b/locales/vi-VN/common.json index 68fb85b5f4a80..2f27fdfa1dd1a 100644 --- a/locales/vi-VN/common.json +++ b/locales/vi-VN/common.json @@ -195,8 +195,8 @@ }, "tab": { "chat": "Trò chuyện", + "discover": "Khám phá", "files": "Tệp", - "market": "Thị trường", "me": "Tôi", "setting": "Cài đặt" }, diff --git a/locales/vi-VN/discover.json b/locales/vi-VN/discover.json new file mode 100644 index 0000000000000..646d87f1ae05f --- /dev/null +++ b/locales/vi-VN/discover.json @@ -0,0 +1,200 @@ +{ + "assistants": { + "addAgent": "Thêm trợ lý", + "addAgentAndConverse": "Thêm trợ lý và trò chuyện", + "addAgentSuccess": "Thêm thành công", + "conversation": { + "l1": "Xin chào, tôi là **{{name}}**, bạn có thể hỏi tôi bất kỳ câu hỏi nào, tôi sẽ cố gắng trả lời bạn ~", + "l2": "Dưới đây là giới thiệu về khả năng của tôi: ", + "l3": "Hãy bắt đầu cuộc trò chuyện nào!" + }, + "description": "Giới thiệu trợ lý", + "detail": "Chi tiết", + "list": "Danh sách trợ lý", + "more": "Thêm", + "plugins": "Tích hợp plugin", + "recentSubmits": "Cập nhật gần đây", + "suggestions": "Gợi ý liên quan", + "systemRole": "Cài đặt trợ lý", + "try": "Thử ngay" + }, + "back": "Quay lại khám phá", + "category": { + "assistant": { + "academic": "Học thuật", + "all": "Tất cả", + "career": "Nghề nghiệp", + "copywriting": "Viết nội dung", + "design": "Thiết kế", + "education": "Giáo dục", + "emotions": "Cảm xúc", + "entertainment": "Giải trí", + "games": "Trò chơi", + "general": "Chung", + "life": "Cuộc sống", + "marketing": "Tiếp thị", + "office": "Văn phòng", + "programming": "Lập trình", + "translation": "Dịch thuật" + }, + "plugin": { + "all": "Tất cả", + "gaming-entertainment": "Giải trí trò chơi", + "life-style": "Phong cách sống", + "media-generate": "Tạo nội dung truyền thông", + "science-education": "Khoa học và giáo dục", + "social": "Mạng xã hội", + "stocks-finance": "Chứng khoán và tài chính", + "tools": "Công cụ hữu ích", + "web-search": "Tìm kiếm trên web" + } + }, + "cleanFilter": "Xóa bộ lọc", + "create": "Tạo mới", + "createGuide": { + "func1": { + "desc1": "Vào trang cài đặt của trợ lý bạn muốn gửi thông qua biểu tượng cài đặt ở góc trên bên phải trong cửa sổ trò chuyện;", + "desc2": "Nhấn nút gửi đến thị trường trợ lý ở góc trên bên phải.", + "tag": "Phương pháp một", + "title": "Gửi qua LobeChat" + }, + "func2": { + "button": "Đi đến kho trợ lý trên Github", + "desc": "Nếu bạn muốn thêm trợ lý vào chỉ mục, hãy sử dụng agent-template.json hoặc agent-template-full.json để tạo một mục trong thư mục plugins, viết mô tả ngắn gọn và gán thẻ phù hợp, sau đó tạo một yêu cầu kéo.", + "tag": "Phương pháp hai", + "title": "Gửi qua Github" + } + }, + "dislike": "Không thích", + "filter": "Bộ lọc", + "filterBy": { + "authorRange": { + "everyone": "Tất cả tác giả", + "followed": "Tác giả đã theo dõi", + "title": "Phạm vi tác giả" + }, + "contentLength": "Độ dài ngữ cảnh tối thiểu", + "maxToken": { + "title": "Đặt độ dài tối đa (Token)", + "unlimited": "Không giới hạn" + }, + "other": { + "functionCall": "Hỗ trợ gọi hàm", + "title": "Khác", + "vision": "Hỗ trợ nhận diện hình ảnh", + "withKnowledge": "Kèm theo kho kiến thức", + "withTool": "Kèm theo plugin" + }, + "pricing": "Giá mô hình", + "timePeriod": { + "all": "Tất cả thời gian", + "day": "24 giờ qua", + "month": "30 ngày qua", + "title": "Phạm vi thời gian", + "week": "7 ngày qua", + "year": "1 năm qua" + } + }, + "home": { + "featuredAssistants": "Trợ lý nổi bật", + "featuredModels": "Mô hình nổi bật", + "featuredProviders": "Nhà cung cấp mô hình nổi bật", + "featuredTools": "Plugin nổi bật", + "more": "Khám phá thêm" + }, + "like": "Thích", + "models": { + "chat": "Bắt đầu cuộc trò chuyện", + "contentLength": "Độ dài ngữ cảnh tối đa", + "free": "Miễn phí", + "guide": "Hướng dẫn cấu hình", + "list": "Danh sách mô hình", + "more": "Thêm", + "parameterList": { + "defaultValue": "Giá trị mặc định", + "docs": "Xem tài liệu", + "frequency_penalty": { + "desc": "Cài đặt này điều chỉnh tần suất mà mô hình lặp lại các từ cụ thể đã xuất hiện trong đầu vào. Giá trị cao hơn làm giảm khả năng lặp lại này, trong khi giá trị âm tạo ra hiệu ứng ngược lại. Hình phạt từ vựng không tăng theo số lần xuất hiện. Giá trị âm sẽ khuyến khích việc lặp lại từ vựng.", + "title": "Hình phạt tần suất" + }, + "max_tokens": { + "desc": "Cài đặt này xác định độ dài tối đa mà mô hình có thể tạo ra trong một lần phản hồi. Việc đặt giá trị cao hơn cho phép mô hình tạo ra những phản hồi dài hơn, trong khi giá trị thấp hơn sẽ giới hạn độ dài của phản hồi, giúp nó ngắn gọn hơn. Tùy thuộc vào các tình huống ứng dụng khác nhau, điều chỉnh giá trị này một cách hợp lý có thể giúp đạt được độ dài và mức độ chi tiết mong muốn của phản hồi.", + "title": "Giới hạn phản hồi một lần" + }, + "presence_penalty": { + "desc": "Cài đặt này nhằm kiểm soát việc lặp lại từ vựng dựa trên tần suất xuất hiện của từ trong đầu vào. Nó cố gắng sử dụng ít hơn những từ đã xuất hiện nhiều trong đầu vào, với tần suất sử dụng tỷ lệ thuận với tần suất xuất hiện. Hình phạt từ vựng tăng theo số lần xuất hiện. Giá trị âm sẽ khuyến khích việc lặp lại từ vựng.", + "title": "Độ mới của chủ đề" + }, + "range": "Phạm vi", + "temperature": { + "desc": "Cài đặt này ảnh hưởng đến sự đa dạng trong phản hồi của mô hình. Giá trị thấp hơn dẫn đến phản hồi dễ đoán và điển hình hơn, trong khi giá trị cao hơn khuyến khích phản hồi đa dạng và không thường gặp. Khi giá trị được đặt là 0, mô hình sẽ luôn đưa ra cùng một phản hồi cho đầu vào nhất định.", + "title": "Ngẫu nhiên" + }, + "title": "Tham số mô hình", + "top_p": { + "desc": "Cài đặt này giới hạn lựa chọn của mô hình chỉ trong một tỷ lệ từ có khả năng cao nhất: chỉ chọn những từ hàng đầu có xác suất tích lũy đạt P. Giá trị thấp hơn làm cho phản hồi của mô hình dễ đoán hơn, trong khi cài đặt mặc định cho phép mô hình chọn từ toàn bộ phạm vi từ vựng.", + "title": "Lấy mẫu hạt nhân" + }, + "type": "Loại" + }, + "providerInfo": { + "apiTooltip": "LobeChat hỗ trợ sử dụng khóa API tùy chỉnh cho nhà cung cấp này.", + "input": "Giá đầu vào", + "inputTooltip": "Chi phí cho mỗi triệu Token", + "latency": "Độ trễ", + "latencyTooltip": "Thời gian phản hồi trung bình để nhà cung cấp gửi Token đầu tiên", + "maxOutput": "Độ dài đầu ra tối đa", + "maxOutputTooltip": "Số Token tối đa mà điểm cuối này có thể tạo ra", + "officialTooltip": "Dịch vụ chính thức của LobeHub", + "output": "Giá đầu ra", + "outputTooltip": "Chi phí cho mỗi triệu Token", + "streamCancellationTooltip": "Nhà cung cấp này hỗ trợ chức năng hủy luồng.", + "throughput": "Thông lượng", + "throughputTooltip": "Số Token trung bình được truyền trong mỗi yêu cầu luồng mỗi giây" + }, + "suggestions": "Mô hình liên quan", + "supportedProviders": "Nhà cung cấp hỗ trợ mô hình này" + }, + "plugins": { + "community": "Plugin cộng đồng", + "install": "Cài đặt plugin", + "installed": "Đã cài đặt", + "list": "Danh sách plugin", + "meta": { + "description": "Mô tả", + "parameter": "Tham số", + "title": "Tham số công cụ", + "type": "Loại" + }, + "more": "Thêm", + "official": "Plugin chính thức", + "recentSubmits": "Cập nhật gần đây", + "suggestions": "Gợi ý liên quan" + }, + "providers": { + "config": "Cấu hình nhà cung cấp", + "list": "Danh sách nhà cung cấp mô hình", + "more": "Thêm", + "suggestions": "Nhà cung cấp liên quan", + "supportedModels": "Mô hình được hỗ trợ" + }, + "search": { + "placeholder": "Tìm kiếm tên, mô tả hoặc từ khóa...", + "result": "{{count}} kết quả tìm kiếm về {{keyword}}", + "searching": "Đang tìm kiếm..." + }, + "sort": { + "mostLiked": "Nhiều người thích nhất", + "mostUsed": "Sử dụng nhiều nhất", + "newest": "Mới nhất", + "oldest": "Cũ nhất", + "recommended": "Được đề xuất" + }, + "tab": { + "assistants": "Trợ lý", + "home": "Trang chủ", + "models": "Mô hình", + "plugins": "Plugin", + "providers": "Nhà cung cấp mô hình" + } +} diff --git a/locales/vi-VN/metadata.json b/locales/vi-VN/metadata.json index 924ce19bd9024..365a60c611150 100644 --- a/locales/vi-VN/metadata.json +++ b/locales/vi-VN/metadata.json @@ -3,9 +3,26 @@ "description": "{{appName}} mang đến cho bạn trải nghiệm tốt nhất với ChatGPT, Claude, Gemini, OLLaMA WebUI", "title": "{{appName}}: Công cụ AI cá nhân, giúp bạn có một bộ não thông minh hơn" }, - "market": { - "description": "Sáng tạo nội dung, viết quảng cáo, hỏi đáp, tạo hình ảnh, tạo video, tạo giọng nói, tác nhân thông minh, quy trình tự động hóa, tùy chỉnh trợ lý AI thông minh riêng của bạn", - "title": "Thị trường trợ lý" + "discover": { + "assistants": { + "description": "Sáng tạo nội dung, viết quảng cáo, hỏi đáp, tạo hình ảnh, tạo video, tạo giọng nói, Agent thông minh, quy trình tự động hóa, tùy chỉnh trợ lý AI / GPTs / OLLaMA của riêng bạn", + "title": "Trợ lý AI" + }, + "description": "Sáng tạo nội dung, viết quảng cáo, hỏi đáp, tạo hình ảnh, tạo video, tạo giọng nói, Agent thông minh, quy trình tự động hóa, ứng dụng AI tùy chỉnh, tùy chỉnh bảng điều khiển ứng dụng AI của riêng bạn", + "models": { + "description": "Khám phá các mô hình AI phổ biến như OpenAI / GPT / Claude 3 / Gemini / Ollama / Azure / DeepSeek", + "title": "Mô hình AI" + }, + "plugins": { + "description": "Tìm kiếm biểu đồ, học thuật, tạo hình ảnh, tạo video, tạo giọng nói, tự động hóa quy trình làm việc, tích hợp khả năng phong phú của các plugin cho trợ lý của bạn", + "title": "Plugin AI" + }, + "providers": { + "description": "Khám phá các nhà cung cấp mô hình phổ biến như OpenAI / Qwen / Ollama / Anthropic / DeepSeek / Google Gemini / OpenRouter", + "title": "Nhà cung cấp dịch vụ mô hình AI" + }, + "search": "Tìm kiếm", + "title": "Khám Phá" }, "plugins": { "description": "Tìm kiếm, tạo biểu đồ, học thuật, tạo hình ảnh, tạo video, tạo giọng nói, quy trình tự động hóa, tùy chỉnh khả năng plugin ToolCall dành riêng cho ChatGPT / Claude", diff --git a/locales/zh-CN/common.json b/locales/zh-CN/common.json index dc7ff2238f23d..503b5622659b9 100644 --- a/locales/zh-CN/common.json +++ b/locales/zh-CN/common.json @@ -195,8 +195,8 @@ }, "tab": { "chat": "会话", + "discover": "发现", "files": "文件", - "market": "发现", "me": "我", "setting": "设置" }, diff --git a/locales/zh-CN/discover.json b/locales/zh-CN/discover.json new file mode 100644 index 0000000000000..b8c89d91ac031 --- /dev/null +++ b/locales/zh-CN/discover.json @@ -0,0 +1,200 @@ +{ + "assistants": { + "addAgent": "添加助手", + "addAgentAndConverse": "添加助手并会话", + "addAgentSuccess": "添加成功", + "conversation": { + "l1": "你好,我是 **{{name}}**,你可以问我任何问题,我会尽力回答你 ~", + "l2": "以下是我的能力介绍: ", + "l3": "让我们开始对话吧!" + }, + "description": "助手介绍", + "detail": "详情", + "list": "助手列表", + "more": "更多", + "plugins": "集成插件", + "recentSubmits": "最近更新", + "suggestions": "相关推荐", + "systemRole": "助手设定", + "try": "试一下" + }, + "back": "返回发现", + "category": { + "assistant": { + "academic": "学术", + "all": "全部", + "career": "职业", + "copywriting": "文案", + "design": "设计", + "education": "教育", + "emotions": "情感", + "entertainment": "娱乐", + "games": "游戏", + "general": "通用", + "life": "生活", + "marketing": "商业", + "office": "办公", + "programming": "编程", + "translation": "翻译" + }, + "plugin": { + "all": "全部", + "gaming-entertainment": "游戏娱乐", + "life-style": "生活方式", + "media-generate": "媒体生成", + "science-education": "科学教育", + "social": "社交媒体", + "stocks-finance": "股票金融", + "tools": "实用工具", + "web-search": "网络搜索" + } + }, + "cleanFilter": "清除筛选", + "create": "创作", + "createGuide": { + "func1": { + "desc1": "在会话窗口中通过右上角设置进入你想提交助手的设置页面;", + "desc2": "点击右上角提交到助手市场按钮。", + "tag": "方法一", + "title": "通过 LobeChat 提交" + }, + "func2": { + "button": "前往 Github 助手仓库", + "desc": "如果您想将助手添加到索引中,请使用 agent-template.json 或 agent-template-full.json 在 plugins 目录中创建一个条目,编写简短的描述并适当标记,然后创建一个拉取请求。", + "tag": "方法二", + "title": "通过 Github 提交" + } + }, + "dislike": "不喜欢", + "filter": "筛选", + "filterBy": { + "authorRange": { + "everyone": "所有作者", + "followed": "关注的作者", + "title": "作者范围" + }, + "contentLength": "最小上下文长度", + "maxToken": { + "title": "设定最大长度 (Token)", + "unlimited": "无限制" + }, + "other": { + "functionCall": "支持函数调用", + "title": "其他", + "vision": "支持视觉识别", + "withKnowledge": "附带知识库", + "withTool": "附带插件" + }, + "pricing": "模型价格", + "timePeriod": { + "all": "全部时间", + "day": "近 24 小时", + "month": "近 30 天", + "title": "时间范围", + "week": "近 7 天", + "year": "近一年" + } + }, + "home": { + "featuredAssistants": "推荐助手", + "featuredModels": "推荐模型", + "featuredProviders": "推荐模型服务商", + "featuredTools": "推荐插件", + "more": "发现更多" + }, + "like": "喜欢", + "models": { + "chat": "开始会话", + "contentLength": "最大上下文长度", + "free": "免费", + "guide": "配置指南", + "list": "模型列表", + "more": "更多", + "parameterList": { + "defaultValue": "默认值", + "docs": "查看文档", + "frequency_penalty": { + "desc": "此设置调整模型重复使用输入中已经出现的特定词汇的频率。较高的值使得这种重复出现的可能性降低,而负值则产生相反的效果。词汇惩罚不随出现次数增加而增加。负值将鼓励词汇的重复使用。", + "title": "频率惩罚度" + }, + "max_tokens": { + "desc": "此设置定义了模型在单次回复中可以生成的最大长度。设置较高的值允许模型生成更长的回应,而较低的值则限制回应的长度,使其更简洁。根据不同的应用场景,合理调整此值可以帮助达到预期的回应长度和详细程度。", + "title": "单次回复限制" + }, + "presence_penalty": { + "desc": "此设置旨在根据词汇在输入中出现的频率来控制词汇的重复使用。它尝试较少使用那些在输入中出现较多的词汇,其使用频率与出现频率成比例。词汇惩罚随出现次数而增加。负值将鼓励重复使用词汇。", + "title": "话题新鲜度" + }, + "range": "范围", + "temperature": { + "desc": "此设置影响模型回应的多样性。较低的值会导致更可预测和典型的回应,而较高的值则鼓励更多样化和不常见的回应。当值设为0时,模型对于给定的输入总是给出相同的回应。", + "title": "随机性" + }, + "title": "模型参数", + "top_p": { + "desc": "此设置将模型的选择限制为可能性最高的一定比例的词汇:只选择那些累计概率达到P的顶尖词汇。较低的值使得模型的回应更加可预测,而默认设置则允许模型从全部范围的词汇中进行选择。", + "title": "核采样" + }, + "type": "类型" + }, + "providerInfo": { + "apiTooltip": "LobeChat 支持为此提供商使用自定义 API 密钥。", + "input": "输入价格", + "inputTooltip": "每百万个 Token 的成本", + "latency": "延迟", + "latencyTooltip": "服务商发送第一个 Token 的平均响应时间", + "maxOutput": "最大输出长度", + "maxOutputTooltip": "此端点可以生成的最大 Token 数", + "officialTooltip": "LobeHub 官方服务", + "output": "输出价格", + "outputTooltip": "每百万个 Token 的成本", + "streamCancellationTooltip": "此服务商支持流取消功能。", + "throughput": "吞吐量", + "throughputTooltip": "流请求每秒传输的平均 Token 数" + }, + "suggestions": "相关模型", + "supportedProviders": "支持该模型的服务商" + }, + "plugins": { + "community": "社区插件", + "install": "安装插件", + "installed": "已安装", + "list": "插件列表", + "meta": { + "description": "描述", + "parameter": "参数", + "title": "工具参数", + "type": "类型" + }, + "more": "更多", + "official": "官方插件", + "recentSubmits": "最近更新", + "suggestions": "相关推荐" + }, + "providers": { + "config": "配置服务商", + "list": "模型服务商列表", + "more": "更多", + "suggestions": "相关服务商", + "supportedModels": "支持模型" + }, + "search": { + "placeholder": "搜索名称介绍或关键词...", + "result": "{{count}} 个关于 {{keyword}} 的搜索结果", + "searching": "搜索中..." + }, + "sort": { + "mostLiked": "最多喜欢", + "mostUsed": "最多使用", + "newest": "从新到旧", + "oldest": "从旧到新", + "recommended": "推荐" + }, + "tab": { + "assistants": "助手", + "home": "首页", + "models": "模型", + "plugins": "插件", + "providers": "模型服务商" + } +} diff --git a/locales/zh-CN/metadata.json b/locales/zh-CN/metadata.json index f89509660c3be..a6fa05bd8a924 100644 --- a/locales/zh-CN/metadata.json +++ b/locales/zh-CN/metadata.json @@ -3,9 +3,26 @@ "description": "{{appName}} 带给你最好的 ChatGPT, Claude , Gemini, OLLaMA WebUI 使用体验", "title": "{{appName}}:个人 AI 效能工具,给自己一个更聪明的大脑" }, - "market": { - "description": "内容创作、文案、问答、图像生成、视频生成、语音生成、智能 Agent、自动化工作流,定制你专属的 AI 智能助手", - "title": "助手市场" + "discover": { + "assistants": { + "description": "内容创作、文案、问答、图像生成、视频生成、语音生成、智能 Agent、自动化工作流,定制你专属的 AI / GPTs / OLLaMA 智能助手", + "title": "AI助手" + }, + "description": "内容创作、文案、问答、图像生成、视频生成、语音生成、智能 Agent、自动化工作流、自定义AI应用,定制你专属的 AI 应用工作台", + "models": { + "description": "探索主流 AI 模型 OpenAI / GPT / Claude 3 / Gemini / Ollama / Azure / DeepSeek", + "title": "AI模型" + }, + "plugins": { + "description": "搜素图表生成、学术、图像生成、视频生成、语音生成、自动化工作流,为你的助手集成丰富的插件能力", + "title": "AI插件" + }, + "providers": { + "description": "探索主流模型供应商 OpenAI / Qwen / Ollama / Anthropic / DeepSeek / Google Gemini / OpenRouter", + "title": "AI模型服务商" + }, + "search": "搜索", + "title": "发现" }, "plugins": { "description": "搜素、图表生成、学术、图像生成、视频生成、语音生成、自动化工作流,定制 ChatGPT / Claude 专属的 ToolCall 插件能力", diff --git a/locales/zh-TW/common.json b/locales/zh-TW/common.json index 2368eb0182343..889d0695c857e 100644 --- a/locales/zh-TW/common.json +++ b/locales/zh-TW/common.json @@ -195,8 +195,8 @@ }, "tab": { "chat": "對話", + "discover": "發現", "files": "檔案", - "market": "發現", "me": "我", "setting": "設定" }, diff --git a/locales/zh-TW/discover.json b/locales/zh-TW/discover.json new file mode 100644 index 0000000000000..8da916cf7cded --- /dev/null +++ b/locales/zh-TW/discover.json @@ -0,0 +1,200 @@ +{ + "assistants": { + "addAgent": "添加助手", + "addAgentAndConverse": "添加助手並會話", + "addAgentSuccess": "添加成功", + "conversation": { + "l1": "你好,我是 **{{name}}**,你可以問我任何問題,我會盡力回答你 ~", + "l2": "以下是我的能力介紹: ", + "l3": "讓我們開始對話吧!" + }, + "description": "助手介紹", + "detail": "詳情", + "list": "助手列表", + "more": "更多", + "plugins": "集成插件", + "recentSubmits": "最近更新", + "suggestions": "相關推薦", + "systemRole": "助手設定", + "try": "試一下" + }, + "back": "返回發現", + "category": { + "assistant": { + "academic": "學術", + "all": "全部", + "career": "職業", + "copywriting": "文案", + "design": "設計", + "education": "教育", + "emotions": "情感", + "entertainment": "娛樂", + "games": "遊戲", + "general": "通用", + "life": "生活", + "marketing": "商業", + "office": "辦公", + "programming": "編程", + "translation": "翻譯" + }, + "plugin": { + "all": "全部", + "gaming-entertainment": "遊戲娛樂", + "life-style": "生活方式", + "media-generate": "媒體生成", + "science-education": "科學教育", + "social": "社交媒體", + "stocks-finance": "股票金融", + "tools": "實用工具", + "web-search": "網路搜尋" + } + }, + "cleanFilter": "清除篩選", + "create": "創作", + "createGuide": { + "func1": { + "desc1": "在會話窗口中通過右上角設置進入你想提交助手的設置頁面;", + "desc2": "點擊右上角提交到助手市場按鈕。", + "tag": "方法一", + "title": "通過 LobeChat 提交" + }, + "func2": { + "button": "前往 Github 助手倉庫", + "desc": "如果您想將助手添加到索引中,請使用 agent-template.json 或 agent-template-full.json 在 plugins 目錄中創建一個條目,編寫簡短的描述並適當標記,然後創建一個拉取請求。", + "tag": "方法二", + "title": "通過 Github 提交" + } + }, + "dislike": "不喜歡", + "filter": "篩選", + "filterBy": { + "authorRange": { + "everyone": "所有作者", + "followed": "關注的作者", + "title": "作者範圍" + }, + "contentLength": "最小上下文長度", + "maxToken": { + "title": "設定最大長度 (Token)", + "unlimited": "無限制" + }, + "other": { + "functionCall": "支持函數調用", + "title": "其他", + "vision": "支持視覺識別", + "withKnowledge": "附帶知識庫", + "withTool": "附帶插件" + }, + "pricing": "模型價格", + "timePeriod": { + "all": "全部時間", + "day": "近 24 小時", + "month": "近 30 天", + "title": "時間範圍", + "week": "近 7 天", + "year": "近一年" + } + }, + "home": { + "featuredAssistants": "推薦助手", + "featuredModels": "推薦模型", + "featuredProviders": "推薦模型服務商", + "featuredTools": "推薦插件", + "more": "發現更多" + }, + "like": "喜歡", + "models": { + "chat": "開始會話", + "contentLength": "最大上下文長度", + "free": "免費", + "guide": "配置指南", + "list": "模型列表", + "more": "更多", + "parameterList": { + "defaultValue": "默認值", + "docs": "查看文檔", + "frequency_penalty": { + "desc": "此設置調整模型重複使用輸入中已經出現的特定詞彙的頻率。較高的值使得這種重複出現的可能性降低,而負值則產生相反的效果。詞彙懲罰不隨出現次數增加而增加。負值將鼓勵詞彙的重複使用。", + "title": "頻率懲罰度" + }, + "max_tokens": { + "desc": "此設定定義了模型在單次回覆中可以生成的最大長度。設定較高的值允許模型生成更長的回應,而較低的值則限制回應的長度,使其更簡潔。根據不同的應用場景,合理調整此值可以幫助達到預期的回應長度和詳細程度。", + "title": "單次回覆限制" + }, + "presence_penalty": { + "desc": "此設置旨在根據詞彙在輸入中出現的頻率來控制詞彙的重複使用。它嘗試較少使用那些在輸入中出現較多的詞彙,其使用頻率與出現頻率成比例。詞彙懲罰隨出現次數而增加。負值將鼓勵重複使用詞彙。", + "title": "話題新鮮度" + }, + "range": "範圍", + "temperature": { + "desc": "此設置影響模型回應的多樣性。較低的值會導致更可預測和典型的回應,而較高的值則鼓勵更多樣化和不常見的回應。當值設為0時,模型對於給定的輸入總是給出相同的回應。", + "title": "隨機性" + }, + "title": "模型參數", + "top_p": { + "desc": "此設置將模型的選擇限制為可能性最高的一定比例的詞彙:只選擇那些累計概率達到P的頂尖詞彙。較低的值使得模型的回應更加可預測,而默認設置則允許模型從全部範圍的詞彙中進行選擇。", + "title": "核採樣" + }, + "type": "類型" + }, + "providerInfo": { + "apiTooltip": "LobeChat 支持為此提供商使用自定義 API 密鑰。", + "input": "輸入價格", + "inputTooltip": "每百萬個 Token 的成本", + "latency": "延遲", + "latencyTooltip": "服務商發送第一個 Token 的平均響應時間", + "maxOutput": "最大輸出長度", + "maxOutputTooltip": "此端點可以生成的最大 Token 數", + "officialTooltip": "LobeHub 官方服務", + "output": "輸出價格", + "outputTooltip": "每百萬個 Token 的成本", + "streamCancellationTooltip": "此服務商支持流取消功能。", + "throughput": "吞吐量", + "throughputTooltip": "流請求每秒傳輸的平均 Token 數" + }, + "suggestions": "相關模型", + "supportedProviders": "支持該模型的服務商" + }, + "plugins": { + "community": "社區插件", + "install": "安裝插件", + "installed": "已安裝", + "list": "插件列表", + "meta": { + "description": "描述", + "parameter": "參數", + "title": "工具參數", + "type": "類型" + }, + "more": "更多", + "official": "官方插件", + "recentSubmits": "最近更新", + "suggestions": "相關推薦" + }, + "providers": { + "config": "配置服務商", + "list": "模型服務商列表", + "more": "更多", + "suggestions": "相關服務商", + "supportedModels": "支持模型" + }, + "search": { + "placeholder": "搜索名稱介紹或關鍵詞...", + "result": "{{count}} 個關於 {{keyword}} 的搜索結果", + "searching": "搜索中..." + }, + "sort": { + "mostLiked": "最多喜愛", + "mostUsed": "最多使用", + "newest": "從新到舊", + "oldest": "從舊到新", + "recommended": "推薦" + }, + "tab": { + "assistants": "助手", + "home": "首頁", + "models": "模型", + "plugins": "插件", + "providers": "模型服務商" + } +} diff --git a/locales/zh-TW/metadata.json b/locales/zh-TW/metadata.json index e4036c0fb261f..c59b51e853c6f 100644 --- a/locales/zh-TW/metadata.json +++ b/locales/zh-TW/metadata.json @@ -3,9 +3,26 @@ "description": "{{appName}} 帶給你最好的 ChatGPT, Claude, Gemini, OLLaMA WebUI 使用體驗", "title": "{{appName}}:個人 AI 效能工具,給自己一個更聰明的大腦" }, - "market": { - "description": "內容創作、文案、問答、圖像生成、視頻生成、語音生成、智能 Agent、自動化工作流,定制你專屬的 AI 智能助手", - "title": "助手市場" + "discover": { + "assistants": { + "description": "內容創作、文案、問答、圖像生成、視頻生成、語音生成、智能代理、自動化工作流程,定制你專屬的 AI / GPTs / OLLaMA 智能助手", + "title": "AI助手" + }, + "description": "內容創作、文案、問答、圖像生成、視頻生成、語音生成、智能代理、自定義 AI 應用,定制你專屬的 AI 應用工作台", + "models": { + "description": "探索主流 AI 模型 OpenAI / GPT / Claude 3 / Gemini / Ollama / Azure / DeepSeek", + "title": "AI模型" + }, + "plugins": { + "description": "搜尋圖表生成、學術、圖像生成、視頻生成、語音生成、自動化工作流程,為你的助手整合豐富的插件能力", + "title": "AI外掛" + }, + "providers": { + "description": "探索主流模型供應商 OpenAI / Qwen / Ollama / Anthropic / DeepSeek / Google Gemini / OpenRouter", + "title": "AI模型服務商" + }, + "search": "搜尋", + "title": "發現" }, "plugins": { "description": "搜尋、圖表生成、學術、圖像生成、視頻生成、語音生成、自動化工作流,定制 ChatGPT / Claude 專屬的 ToolCall 插件能力", diff --git a/src/app/(main)/@nav/_layout/Desktop/TopActions.test.tsx b/src/app/(main)/@nav/_layout/Desktop/TopActions.test.tsx index 29d96af4e624d..62dc0c6b377c6 100644 --- a/src/app/(main)/@nav/_layout/Desktop/TopActions.test.tsx +++ b/src/app/(main)/@nav/_layout/Desktop/TopActions.test.tsx @@ -57,7 +57,7 @@ describe('TopActions', () => { renderTopActions(); expect(screen.getByText('tab.chat')).toBeInTheDocument(); - expect(screen.getByText('tab.market')).toBeInTheDocument(); + expect(screen.getByText('tab.discover')).toBeInTheDocument(); }); it('should render only Chat icon when `-market` is set', () => { @@ -68,7 +68,7 @@ describe('TopActions', () => { renderTopActions(); expect(screen.getByText('tab.chat')).toBeInTheDocument(); - expect(screen.queryByText('tab.market')).not.toBeInTheDocument(); + expect(screen.queryByText('tab.discover')).not.toBeInTheDocument(); }); it('should render File icon when `-knowledge_base` is set', () => { @@ -90,7 +90,7 @@ describe('TopActions', () => { const { result: store } = renderHook(() => useGlobalStore((s) => s)); const switchBackToChat = vi.spyOn(store.current, 'switchBackToChat'); - renderTopActions({ tab: SidebarTabKey.Market }); + renderTopActions({ tab: SidebarTabKey.Discover }); fireEvent.click(screen.getByText('Mocked Link /chat')); expect(switchBackToChat).toBeCalledWith('1'); diff --git a/src/app/(main)/@nav/_layout/Desktop/TopActions.tsx b/src/app/(main)/@nav/_layout/Desktop/TopActions.tsx index 02f61b423f2c0..3e3f0050816d6 100644 --- a/src/app/(main)/@nav/_layout/Desktop/TopActions.tsx +++ b/src/app/(main)/@nav/_layout/Desktop/TopActions.tsx @@ -48,13 +48,13 @@ const TopActions = memo(({ tab }) => { )} {showMarket && ( - + )} diff --git a/src/app/(main)/@nav/_layout/Mobile.tsx b/src/app/(main)/@nav/_layout/Mobile.tsx index 954583880df6e..fab82d8ccfad6 100644 --- a/src/app/(main)/@nav/_layout/Mobile.tsx +++ b/src/app/(main)/@nav/_layout/Mobile.tsx @@ -51,11 +51,11 @@ const Nav = memo(() => { icon: (active: boolean) => ( ), - key: SidebarTabKey.Market, + key: SidebarTabKey.Discover, onClick: () => { - router.push('/market'); + router.push('/discover'); }, - title: t('tab.market'), + title: t('tab.discover'), }, { icon: (active: boolean) => ( diff --git a/src/app/(main)/_layout/Mobile.tsx b/src/app/(main)/_layout/Mobile.tsx index db2f1e0e87eac..76b13d0984fda 100644 --- a/src/app/(main)/_layout/Mobile.tsx +++ b/src/app/(main)/_layout/Mobile.tsx @@ -10,7 +10,15 @@ import { featureFlagsSelectors, useServerConfigStore } from '@/store/serverConfi import { LayoutProps } from './type'; -const MOBILE_NAV_ROUTES = new Set(['/chat', '/market', '/me']); +const MOBILE_NAV_ROUTES = new Set([ + '/chat', + '/discover', + '/discover/assistants', + '/discover/plugins', + '/discover/models', + '/discover/search', + '/me', +]); const Layout = memo(({ children, nav }: LayoutProps) => { const { showMobileWorkspace } = useQuery(); diff --git a/src/app/(main)/discover/(detail)/_layout/Desktop.tsx b/src/app/(main)/discover/(detail)/_layout/Desktop.tsx new file mode 100644 index 0000000000000..ad75278f910bd --- /dev/null +++ b/src/app/(main)/discover/(detail)/_layout/Desktop.tsx @@ -0,0 +1,27 @@ +import { PropsWithChildren } from 'react'; +import { Flexbox } from 'react-layout-kit'; + +import Footer from '@/features/Setting/Footer'; + +const MAX_WIDTH = 1440; + +const Layout = ({ children }: PropsWithChildren) => { + return ( + + + {children} +