= ({ children }) =>
isCurrentWorkspaceDatasetOperator,
mutateCurrentWorkspace,
isLoadingCurrentWorkspace,
+ isValidatingCurrentWorkspace,
}}
>
diff --git a/web/i18n/en-US/billing.json b/web/i18n/en-US/billing.json
index 1f10a49966..3242aa8e78 100644
--- a/web/i18n/en-US/billing.json
+++ b/web/i18n/en-US/billing.json
@@ -96,7 +96,7 @@
"plansCommon.memberAfter": "Member",
"plansCommon.messageRequest.title": "{{count,number}} message credits",
"plansCommon.messageRequest.titlePerMonth": "{{count,number}} message credits/month",
- "plansCommon.messageRequest.tooltip": "Message credits are provided to help you easily try out different OpenAI models in Dify. Credits are consumed based on the model type. Once they’re used up, you can switch to your own OpenAI API key.",
+ "plansCommon.messageRequest.tooltip": "Message credits are provided to help you easily try out different models from OpenAI, Anthropic, Gemini, xAI, DeepSeek and Tongyi in Dify. Credits are consumed based on the model type. Once they're used up, you can switch to your own API key.",
"plansCommon.modelProviders": "Support OpenAI/Anthropic/Llama2/Azure OpenAI/Hugging Face/Replicate",
"plansCommon.month": "month",
"plansCommon.mostPopular": "Popular",
diff --git a/web/i18n/en-US/common.json b/web/i18n/en-US/common.json
index f971ff1668..64ac47d804 100644
--- a/web/i18n/en-US/common.json
+++ b/web/i18n/en-US/common.json
@@ -339,13 +339,16 @@
"modelProvider.callTimes": "Call times",
"modelProvider.card.buyQuota": "Buy Quota",
"modelProvider.card.callTimes": "Call times",
+ "modelProvider.card.modelAPI": "{{modelName}} models are using the API Key.",
+ "modelProvider.card.modelNotSupported": "{{modelName}} models are not installed.",
+ "modelProvider.card.modelSupported": "{{modelName}} models are using this quota.",
"modelProvider.card.onTrial": "On Trial",
"modelProvider.card.paid": "Paid",
"modelProvider.card.priorityUse": "Priority use",
"modelProvider.card.quota": "QUOTA",
"modelProvider.card.quotaExhausted": "Quota exhausted",
"modelProvider.card.removeKey": "Remove API Key",
- "modelProvider.card.tip": "Priority will be given to the paid quota. The Trial quota will be used after the paid quota is exhausted.",
+ "modelProvider.card.tip": "Message Credits supports models from OpenAI, Anthropic, Gemini, xAI, DeepSeek and Tongyi. Priority will be given to the paid quota. The free quota will be used after the paid quota is exhausted.",
"modelProvider.card.tokens": "Tokens",
"modelProvider.collapse": "Collapse",
"modelProvider.config": "Config",
@@ -394,6 +397,7 @@
"modelProvider.quotaTip": "Remaining available free tokens",
"modelProvider.rerankModel.key": "Rerank Model",
"modelProvider.rerankModel.tip": "Rerank model will reorder the candidate document list based on the semantic match with user query, improving the results of semantic ranking",
+ "modelProvider.resetDate": "Reset on {{date}}",
"modelProvider.searchModel": "Search model",
"modelProvider.selectModel": "Select your model",
"modelProvider.selector.emptySetting": "Please go to settings to configure",
diff --git a/web/i18n/ja-JP/billing.json b/web/i18n/ja-JP/billing.json
index 344e934948..b23ae6c959 100644
--- a/web/i18n/ja-JP/billing.json
+++ b/web/i18n/ja-JP/billing.json
@@ -96,7 +96,7 @@
"plansCommon.memberAfter": "メンバー",
"plansCommon.messageRequest.title": "{{count,number}}メッセージクレジット",
"plansCommon.messageRequest.titlePerMonth": "{{count,number}}メッセージクレジット/月",
- "plansCommon.messageRequest.tooltip": "メッセージクレジットは、Dify でさまざまな OpenAI モデルを簡単にお試しいただくためのものです。モデルタイプに応じてクレジットが消費され、使い切った後はご自身の OpenAI API キーに切り替えていただけます。",
+ "plansCommon.messageRequest.tooltip": "メッセージクレジットは、DifyでOpenAI、Anthropic、Gemini、xAI、DeepSeek、Tongyiなどのさまざまなモデルを簡単に試すために提供されています。クレジットはモデルの種類に基づいて消費されます。使い切ったら、独自のAPIキーに切り替えることができます。",
"plansCommon.modelProviders": "OpenAI/Anthropic/Llama2/Azure OpenAI/Hugging Face/Replicateをサポート",
"plansCommon.month": "月",
"plansCommon.mostPopular": "人気",
diff --git a/web/i18n/ja-JP/common.json b/web/i18n/ja-JP/common.json
index e7481830d8..11f543e7e5 100644
--- a/web/i18n/ja-JP/common.json
+++ b/web/i18n/ja-JP/common.json
@@ -339,13 +339,16 @@
"modelProvider.callTimes": "呼び出し回数",
"modelProvider.card.buyQuota": "クォータを購入",
"modelProvider.card.callTimes": "通話回数",
+ "modelProvider.card.modelAPI": "{{modelName}} は現在 APIキーを使用しています。",
+ "modelProvider.card.modelNotSupported": "{{modelName}} 未インストール。",
+ "modelProvider.card.modelSupported": "このクォータは現在{{modelName}}に使用されています。",
"modelProvider.card.onTrial": "トライアル中",
"modelProvider.card.paid": "有料",
"modelProvider.card.priorityUse": "優先利用",
"modelProvider.card.quota": "クォータ",
"modelProvider.card.quotaExhausted": "クォータが使い果たされました",
"modelProvider.card.removeKey": "API キーを削除",
- "modelProvider.card.tip": "有料クォータは優先して使用されます。有料クォータを使用し終えた後、トライアルクォータが利用されます。",
+ "modelProvider.card.tip": "メッセージ枠はOpenAI、Anthropic、Gemini、xAI、DeepSeek、Tongyiのモデルを使用することをサポートしています。無料枠は有料枠が使い果たされた後に消費されます。",
"modelProvider.card.tokens": "トークン",
"modelProvider.collapse": "折り畳み",
"modelProvider.config": "設定",
@@ -394,6 +397,7 @@
"modelProvider.quotaTip": "残りの無料トークン",
"modelProvider.rerankModel.key": "Rerank モデル",
"modelProvider.rerankModel.tip": "Rerank モデルは、ユーザークエリとの意味的一致に基づいて候補文書リストを再配置し、意味的ランキングの結果を向上させます。",
+ "modelProvider.resetDate": "{{date}} にリセット",
"modelProvider.searchModel": "検索モデル",
"modelProvider.selectModel": "モデルを選択",
"modelProvider.selector.emptySetting": "設定に移動して構成してください",
diff --git a/web/i18n/zh-Hans/billing.json b/web/i18n/zh-Hans/billing.json
index e42edf0dc6..9111c1a6d1 100644
--- a/web/i18n/zh-Hans/billing.json
+++ b/web/i18n/zh-Hans/billing.json
@@ -96,7 +96,7 @@
"plansCommon.memberAfter": "个成员",
"plansCommon.messageRequest.title": "{{count,number}} 条消息额度",
"plansCommon.messageRequest.titlePerMonth": "{{count,number}} 条消息额度/月",
- "plansCommon.messageRequest.tooltip": "消息额度旨在帮助您便捷地试用 Dify 中的各类 OpenAI 模型。不同模型会消耗不同额度。额度用尽后,您可以切换为使用自己的 OpenAI API 密钥。",
+ "plansCommon.messageRequest.tooltip": "消息额度旨在帮助您便捷地试用 Dify 中来自 OpenAI、Anthropic、Gemini、xAI、深度求索、通义 的不同模型。不同模型会消耗不同额度。额度用尽后,您可以切换为使用自己的 API 密钥。",
"plansCommon.modelProviders": "支持 OpenAI/Anthropic/Llama2/Azure OpenAI/Hugging Face/Replicate",
"plansCommon.month": "月",
"plansCommon.mostPopular": "最受欢迎",
diff --git a/web/i18n/zh-Hans/common.json b/web/i18n/zh-Hans/common.json
index ca4ecce821..be7d4690af 100644
--- a/web/i18n/zh-Hans/common.json
+++ b/web/i18n/zh-Hans/common.json
@@ -339,13 +339,16 @@
"modelProvider.callTimes": "调用次数",
"modelProvider.card.buyQuota": "购买额度",
"modelProvider.card.callTimes": "调用次数",
+ "modelProvider.card.modelAPI": "{{modelName}} 模型正在使用 API Key。",
+ "modelProvider.card.modelNotSupported": "{{modelName}} 模型未安装。",
+ "modelProvider.card.modelSupported": "{{modelName}} 模型正在使用此额度。",
"modelProvider.card.onTrial": "试用中",
"modelProvider.card.paid": "已购买",
"modelProvider.card.priorityUse": "优先使用",
"modelProvider.card.quota": "额度",
"modelProvider.card.quotaExhausted": "配额已用完",
"modelProvider.card.removeKey": "删除 API 密钥",
- "modelProvider.card.tip": "已付费额度将优先考虑。试用额度将在付费额度用完后使用。",
+ "modelProvider.card.tip": "消息额度支持使用 OpenAI、Anthropic、Gemini、xAI、深度求索、通义 的模型;免费额度会在付费额度用尽后才会消耗。",
"modelProvider.card.tokens": "Tokens",
"modelProvider.collapse": "收起",
"modelProvider.config": "配置",
@@ -394,6 +397,7 @@
"modelProvider.quotaTip": "剩余免费额度",
"modelProvider.rerankModel.key": "Rerank 模型",
"modelProvider.rerankModel.tip": "重排序模型将根据候选文档列表与用户问题语义匹配度进行重新排序,从而改进语义排序的结果",
+ "modelProvider.resetDate": "于 {{date}} 重置",
"modelProvider.searchModel": "搜索模型",
"modelProvider.selectModel": "选择您的模型",
"modelProvider.selector.emptySetting": "请前往设置进行配置",
diff --git a/web/models/common.ts b/web/models/common.ts
index 0e034ffa33..62a543672b 100644
--- a/web/models/common.ts
+++ b/web/models/common.ts
@@ -142,6 +142,9 @@ export type IWorkspace = {
export type ICurrentWorkspace = Omit & {
role: 'owner' | 'admin' | 'editor' | 'dataset_operator' | 'normal'
providers: Provider[]
+ trial_credits: number
+ trial_credits_used: number
+ next_credit_reset_date: number
trial_end_reason?: string
custom_config?: {
remove_webapp_brand?: boolean