This commit is contained in:
2025-12-01 17:21:38 +08:00
parent 32fee2b8ab
commit fab8c13cb3
7511 changed files with 996300 additions and 0 deletions

View File

@@ -0,0 +1,98 @@
const translation = {
title: 'یادداشت‌ها',
name: 'پاسخ یادداشت',
editBy: 'پاسخ ویرایش شده توسط {{author}}',
noData: {
title: 'بدون یادداشت',
description: 'شما می‌توانید یادداشت‌ها را در حین اشکال‌زدایی برنامه ویرایش کنید یا یادداشت‌ها را به صورت انبوه در اینجا برای پاسخگویی با کیفیت بالا وارد کنید.',
},
table: {
header: {
question: 'سوال',
answer: 'پاسخ',
createdAt: 'ایجاد شده در',
hits: 'بازدیدها',
actions: 'اقدامات',
addAnnotation: 'افزودن یادداشت',
bulkImport: 'واردات انبوه',
bulkExport: 'صادرات انبوه',
clearAll: 'پاک کردن همه یادداشت‌ها',
clearAllConfirm: 'آیا همه حاشیه‌نویسی‌ها را حذف کنیم؟',
},
},
editModal: {
title: 'ویرایش پاسخ یادداشت',
queryName: 'پرسش کاربر',
answerName: 'ربات داستان‌سرا',
yourAnswer: 'پاسخ شما',
answerPlaceholder: 'پاسخ خود را اینجا بنویسید',
yourQuery: 'پرسش شما',
queryPlaceholder: 'پرسش خود را اینجا بنویسید',
removeThisCache: 'حذف این یادداشت',
createdAt: 'ایجاد شده در',
},
addModal: {
title: 'افزودن پاسخ یادداشت',
queryName: 'سوال',
answerName: 'پاسخ',
answerPlaceholder: 'پاسخ را اینجا بنویسید',
queryPlaceholder: 'پرسش را اینجا بنویسید',
createNext: 'افزودن پاسخ یادداشت‌شده دیگر',
},
batchModal: {
title: 'واردات انبوه',
csvUploadTitle: 'فایل CSV خود را اینجا بکشید و رها کنید، یا ',
browse: 'مرور کنید',
tip: 'فایل CSV باید از ساختار زیر پیروی کند:',
question: 'سوال',
answer: 'پاسخ',
contentTitle: 'محتوای تکه',
content: 'محتوا',
template: 'الگو را از اینجا دانلود کنید',
cancel: 'لغو',
run: 'اجرای دسته‌ای',
runError: 'اجرای دسته‌ای ناموفق بود',
processing: 'در حال پردازش دسته‌ای',
completed: 'واردات تکمیل شد',
error: 'خطای واردات',
ok: 'تایید',
},
errorMessage: {
answerRequired: 'پاسخ الزامی است',
queryRequired: 'سوال الزامی است',
},
viewModal: {
annotatedResponse: 'پاسخ یادداشت‌شده',
hitHistory: 'تاریخچه بازدید',
hit: 'بازدید',
hits: 'بازدیدها',
noHitHistory: 'بدون تاریخچه بازدید',
},
hitHistoryTable: {
query: 'پرسش',
match: 'تطابق',
response: 'پاسخ',
source: 'منبع',
score: 'امتیاز',
time: 'زمان',
},
initSetup: {
title: 'راه‌اندازی اولیه پاسخ یادداشت',
configTitle: 'تنظیمات پاسخ یادداشت',
confirmBtn: 'ذخیره و فعال‌سازی',
configConfirmBtn: 'ذخیره',
},
embeddingModelSwitchTip: 'مدل برداری‌سازی متن یادداشت، تغییر مدل‌ها باعث جاسازی مجدد خواهد شد و هزینه‌های اضافی به همراه خواهد داشت.',
list: {
delete: {
title: 'آیا مطمئن هستید که می‌خواهید حذف کنید؟',
},
},
batchAction: {
cancel: 'لغو',
selected: 'انتخاب شده',
delete: 'حذف کنید',
},
}
export default translation

View File

@@ -0,0 +1,85 @@
const translation = {
apiServer: 'سرور API',
apiKey: 'کلید API',
status: 'وضعیت',
disabled: 'غیرفعال',
ok: 'در سرویس',
copy: 'کپی',
copied: 'کپی شد',
play: 'پخش',
pause: 'مکث',
playing: 'در حال پخش',
loading: 'در حال بارگذاری',
merMaid: {
rerender: 'بازسازی مجدد',
},
never: 'هرگز',
apiKeyModal: {
apiSecretKey: 'کلید مخفی API',
apiSecretKeyTips: 'برای جلوگیری از سوء استفاده از API، از کلید API خود محافظت کنید. از استفاده از آن به صورت متن ساده در کد فرانت‌اند خودداری کنید. :)',
createNewSecretKey: 'ایجاد کلید مخفی جدید',
secretKey: 'کلید مخفی',
created: 'ایجاد شده',
lastUsed: 'آخرین استفاده',
generateTips: 'این کلید را در مکانی امن و قابل دسترس نگه دارید.',
},
actionMsg: {
deleteConfirmTitle: 'این کلید مخفی حذف شود؟',
deleteConfirmTips: 'این عمل قابل بازگشت نیست.',
ok: 'تایید',
},
completionMode: {
title: 'API برنامه تکمیل',
info: 'برای تولید متن با کیفیت بالا، مانند مقالات، خلاصه‌ها و ترجمه‌ها، از API پیام‌های تکمیلی با ورودی کاربر استفاده کنید. تولید متن به پارامترهای مدل و قالب‌های پرامپت تنظیم شده در مهندسی پرامپت Dify بستگی دارد.',
createCompletionApi: 'ایجاد پیام تکمیلی',
createCompletionApiTip: 'یک پیام تکمیلی برای پشتیبانی از حالت سوال و جواب ایجاد کنید.',
inputsTips: '(اختیاری) فیلدهای ورودی کاربر را به صورت جفت‌های کلید-مقدار ارائه دهید که با متغیرهای موجود در مهندسی پرامپت مطابقت دارند. کلید نام متغیر است و مقدار، مقدار پارامتر است. اگر نوع فیلد انتخابی باشد، مقدار ارسال شده باید یکی از گزینه‌های از پیش تعیین شده باشد.',
queryTips: 'محتوای متن ورودی کاربر.',
blocking: 'نوع مسدودکننده، منتظر اتمام اجرا و بازگشت نتایج. (درخواست‌ها ممکن است در صورت طولانی بودن فرآیند قطع شوند)',
streaming: 'بازگشت جریانی. پیاده‌سازی بازگشت جریانی بر اساس SSE (رویدادهای ارسالی سرور).',
messageFeedbackApi: 'بازخورد پیام (لایک)',
messageFeedbackApiTip: 'پیام‌های دریافتی را از طرف کاربران نهایی با لایک یا دیسلایک ارزیابی کنید. این داده‌ها در صفحه گزارش‌ها و یادداشت‌ها قابل مشاهده هستند و برای تنظیم دقیق مدل در آینده استفاده می‌شوند.',
messageIDTip: 'شناسه پیام',
ratingTip: 'لایک یا دیسلایک، null برای لغو',
parametersApi: 'دریافت اطلاعات پارامترهای برنامه',
parametersApiTip: 'بازیابی پارامترهای ورودی پیکربندی شده، شامل نام‌های متغیر، نام‌های فیلد، انواع و مقادیر پیش‌فرض. معمولاً برای نمایش این فیلدها در یک فرم یا پر کردن مقادیر پیش‌فرض پس از بارگیری کلاینت استفاده می‌شود.',
},
chatMode: {
title: 'API برنامه چت',
info: 'برای برنامه‌های مکالمه‌ای چندمنظوره با استفاده از فرمت سوال و جواب، API پیام‌های چت را برای شروع گفتگو فراخوانی کنید. با ارسال شناسه مکالمه بازگشتی، گفتگوهای مداوم را حفظ کنید. پارامترهای پاسخ و قالب‌ها به تنظیمات مهندسی پرامپت Dify بستگی دارند.',
createChatApi: 'ایجاد پیام چت',
createChatApiTip: 'یک پیام مکالمه جدید ایجاد کنید یا یک گفتگوی موجود را ادامه دهید.',
inputsTips: '(اختیاری) فیلدهای ورودی کاربر را به صورت جفت‌های کلید-مقدار ارائه دهید که با متغیرهای موجود در مهندسی پرامپت مطابقت دارند. کلید نام متغیر است و مقدار، مقدار پارامتر است. اگر نوع فیلد انتخابی باشد، مقدار ارسال شده باید یکی از گزینه‌های از پیش تعیین شده باشد.',
queryTips: 'محتوای ورودی/سوال کاربر',
blocking: 'نوع مسدودکننده، منتظر اتمام اجرا و بازگشت نتایج. (درخواست‌ها ممکن است در صورت طولانی بودن فرآیند قطع شوند)',
streaming: 'بازگشت جریانی. پیاده‌سازی بازگشت جریانی بر اساس SSE (رویدادهای ارسالی سرور).',
conversationIdTip: '(اختیاری) شناسه مکالمه: برای اولین مکالمه خالی بگذارید؛ برای ادامه گفتگو، شناسه مکالمه را از متن ارسال کنید.',
messageFeedbackApi: 'بازخورد کاربر نهایی پیام، لایک',
messageFeedbackApiTip: 'پیام‌های دریافتی را از طرف کاربران نهایی با لایک یا دیسلایک ارزیابی کنید. این داده‌ها در صفحه گزارش‌ها و یادداشت‌ها قابل مشاهده هستند و برای تنظیم دقیق مدل در آینده استفاده می‌شوند.',
messageIDTip: 'شناسه پیام',
ratingTip: 'لایک یا دیسلایک، null برای لغو',
chatMsgHistoryApi: 'دریافت تاریخچه پیام‌های چت',
chatMsgHistoryApiTip: 'صفحه اول آخرین `limit` پیام را به صورت معکوس برمی‌گرداند.',
chatMsgHistoryConversationIdTip: 'شناسه مکالمه',
chatMsgHistoryFirstId: 'شناسه اولین رکورد چت در صفحه فعلی. پیش‌فرض هیچ است.',
chatMsgHistoryLimit: 'تعداد چت‌هایی که در یک درخواست برگردانده می‌شوند',
conversationsListApi: 'دریافت لیست مکالمات',
conversationsListApiTip: 'لیست جلسات کاربر فعلی را دریافت می‌کند. به طور پیش‌فرض، 20 جلسه آخر برگردانده می‌شود.',
conversationsListFirstIdTip: 'شناسه آخرین رکورد در صفحه فعلی، پیش‌فرض هیچ.',
conversationsListLimitTip: 'تعداد چت‌هایی که در یک درخواست برگردانده می‌شوند',
conversationRenamingApi: 'تغییر نام مکالمه',
conversationRenamingApiTip: 'تغییر نام مکالمات؛ نام در رابط‌های کاربری چند جلسه‌ای نمایش داده می‌شود.',
conversationRenamingNameTip: 'نام جدید',
parametersApi: 'دریافت اطلاعات پارامترهای برنامه',
parametersApiTip: 'بازیابی پارامترهای ورودی پیکربندی شده، شامل نام‌های متغیر، نام‌های فیلد، انواع و مقادیر پیش‌فرض. معمولاً برای نمایش این فیلدها در یک فرم یا پر کردن مقادیر پیش‌فرض پس از بارگیری کلاینت استفاده می‌شود.',
},
develop: {
requestBody: 'بدنه درخواست',
pathParams: 'پارامترهای مسیر',
query: 'پرس‌وجو',
toc: 'محتویات',
},
regenerate: 'بازسازی',
}
export default translation

View File

@@ -0,0 +1,819 @@
const translation = {
pageTitle: {
line1: 'پرومپت',
line2: 'مهندسی',
},
orchestrate: 'هماهنگ کردن',
promptMode: {
simple: 'برای ویرایش کل پرومپت به حالت کارشناس بروید',
advanced: 'حالت کارشناس',
switchBack: 'بازگشت',
advancedWarning: {
title: 'شما به حالت کارشناس رفته‌اید، و پس از تغییر پرومپت، نمی‌توانید به حالت ساده برگردید.',
description: 'در حالت کارشناس، می‌توانید کل پرومپت را ویرایش کنید.',
learnMore: 'بیشتر بدانید',
ok: 'باشه',
},
operation: {
addMessage: 'اضافه کردن پیام',
},
contextMissing: 'مولفه زمینه‌ای از دست رفته است، اثر بخشی پرومپت ممکن است خوب نباشد.',
},
operation: {
applyConfig: 'انتشار',
resetConfig: 'تنظیم مجدد',
debugConfig: 'دیباگ',
addFeature: 'اضافه کردن ویژگی',
automatic: 'تولید کردن',
stopResponding: 'توقف پاسخ‌دهی',
agree: 'پسندیدن',
disagree: 'نپسندیدن',
cancelAgree: 'لغو پسندیدن',
cancelDisagree: 'لغو نپسندیدن',
userAction: 'عمل کاربر',
},
notSetAPIKey: {
title: 'کلید ارائه‌دهنده LLM تنظیم نشده است',
trailFinished: 'آزمایش تمام شد',
description: 'کلید ارائه‌دهنده LLM تنظیم نشده است و باید قبل از دیباگ تنظیم شود.',
settingBtn: 'به تنظیمات بروید',
},
trailUseGPT4Info: {
title: 'در حال حاضر پشتیبانی نمی‌شود gpt-4',
description: 'برای استفاده از gpt-4، لطفاً کلید API را تنظیم کنید.',
},
feature: {
groupChat: {
title: 'تقویت گفتگو',
description: 'افزودن تنظیمات پیش از گفتگو برای برنامه‌ها می‌تواند تجربه کاربری را بهبود بخشد.',
},
groupExperience: {
title: 'تقویت تجربه',
},
conversationOpener: {
title: 'شروع‌کننده گفتگو',
description: 'در یک برنامه چت، اولین جمله‌ای که AI فعالانه با کاربر صحبت می‌کند، معمولاً به عنوان خوشامدگویی استفاده می‌شود.',
},
suggestedQuestionsAfterAnswer: {
title: 'پیگیری',
description: 'تنظیم پیشنهاد سوالات بعدی می‌تواند به کاربران یک چت بهتر ارائه دهد.',
resDes: '3 پیشنهاد برای سوال بعدی کاربر.',
tryToAsk: 'سعی کنید بپرسید',
},
moreLikeThis: {
title: 'بیشتر از این',
description: 'تولید چندین متن به طور همزمان، و سپس ویرایش و ادامه تولید',
generateNumTip: 'تعداد تولید هر بار',
tip: 'استفاده از این ویژگی هزینه‌های اضافی توکن‌ها را به همراه دارد',
},
speechToText: {
title: 'تبدیل گفتار به متن',
description: 'پس از فعال شدن، می‌توانید از ورودی صوتی استفاده کنید.',
resDes: 'ورودی صوتی فعال شده است',
},
textToSpeech: {
title: 'تبدیل متن به گفتار',
description: 'پس از فعال شدن، متن می‌تواند به گفتار تبدیل شود.',
resDes: 'تبدیل متن به صدا فعال شده است',
},
citation: {
title: 'ارجاعات و استنادات',
description: 'پس از فعال شدن، سند منبع و بخش استناد شده از محتوای تولید شده را نشان می‌دهد.',
resDes: 'ارجاعات و استنادات فعال شده است',
},
annotation: {
title: 'پاسخ حاشیه‌نویسی',
description: 'می‌توانید پاسخ‌های با کیفیت بالا را به صورت دستی به حافظه کش اضافه کنید تا با سوالات مشابه کاربران تطبیق یابد.',
resDes: 'پاسخ حاشیه‌نویسی فعال شده است',
scoreThreshold: {
title: 'آستانه امتیاز',
description: 'Used to set the similarity threshold for annotation reply.',
easyMatch: 'تطابق آسان',
accurateMatch: 'تطابق دقیق',
},
matchVariable: {
title: 'تغییر متغیر',
choosePlaceholder: 'انتخاب متغیر تغییر',
},
cacheManagement: 'حاشیه نویسی',
cached: 'حاشیه نویسی شده',
remove: 'حذف',
removeConfirm: 'این حاشیه نویسی را حذف کنید؟',
add: 'افزودن حاشیه نویسی',
edit: 'ویرایش حاشیه نویسی',
},
dataSet: {
title: 'زمینه',
noData: 'شما می‌توانید دانش را به عنوان زمینه وارد کنید',
selectTitle: 'انتخاب دانش مرجع',
selected: 'دانش انتخاب شده',
noDataSet: 'هیچ دانشی یافت نشد',
toCreate: 'برای ایجاد بروید',
notSupportSelectMulti: 'در حال حاضر فقط یک دانش پشتیبانی می‌شود',
queryVariable: {
title: 'متغیر پرس و جو',
tip: 'این متغیر به عنوان ورودی پرس و جو برای بازیابی زمینه استفاده خواهد شد و اطلاعات زمینه مرتبط با ورودی این متغیر را به دست می‌آورد.',
choosePlaceholder: 'انتخاب متغیر پرس و جو',
noVar: 'بدون متغیر',
noVarTip: 'لطفاً متغیری را در بخش متغیرها ایجاد کنید',
unableToQueryDataSet: 'عدم امکان پرس و جو از دانش',
unableToQueryDataSetTip: 'پرس و جوی موفقیت آمیز دانش ممکن نیست، لطفاً یک متغیر پرس و جو زمینه را در بخش زمینه انتخاب کنید.',
ok: 'باشه',
contextVarNotEmpty: 'متغیر پرس و جو زمینه نمی‌تواند خالی باشد',
deleteContextVarTitle: 'متغیر "{{varName}}" را حذف کنید؟',
deleteContextVarTip: 'این متغیر به عنوان متغیر پرس و جو زمینه تنظیم شده است و حذف آن بر استفاده عادی از دانش تأثیر می‌گذارد. اگر هنوز نیاز به حذف دارید، لطفاً آن را در بخش زمینه دوباره انتخاب کنید.',
},
},
tools: {
title: 'ابزارها',
tips: 'ابزارها یک روش استاندارد برای فراخوانی API فراهم می‌کنند و ورودی کاربر یا متغیرها را به عنوان پارامترهای درخواست برای پرس و جو داده‌های خارجی به عنوان زمینه می‌گیرند.',
toolsInUse: '{{count}} ابزار در حال استفاده',
modal: {
title: 'ابزار',
toolType: {
title: 'نوع ابزار',
placeholder: 'لطفاً نوع ابزار را انتخاب کنید',
},
name: {
title: 'نام',
placeholder: 'لطفاً نام را وارد کنید',
},
variableName: {
title: 'نام متغیر',
placeholder: 'لطفاً نام متغیر را وارد کنید',
},
},
},
conversationHistory: {
title: 'تاریخچه مکالمه',
description: 'تنظیم پیشوند نام‌ها برای نقش‌های مکالمه',
tip: 'تاریخچه مکالمه فعال نشده است، لطفاً <histories> را در فراخوانی بالا اضافه کنید.',
learnMore: 'بیشتر بدانید',
editModal: {
title: 'ویرایش نام نقش‌های مکالمه',
userPrefix: 'پیشوند کاربر',
assistantPrefix: 'پیشوند دستیار',
},
},
toolbox: {
title: 'جعبه ابزار',
},
moderation: {
title: 'مدیریت محتوا',
description: 'خروجی مدل را با استفاده از API مدیریت یا نگهداری فهرست کلمات حساس امن کنید.',
allEnabled: 'محتوای ورودی/خروجی فعال شده',
inputEnabled: 'محتوای ورودی فعال شده',
outputEnabled: 'محتوای خروجی فعال شده',
modal: {
title: 'تنظیمات مدیریت محتوا',
provider: {
title: 'ارائه دهنده',
openai: 'مدیریت OpenAI',
openaiTip: {
prefix: 'مدیریت OpenAI نیاز به کلید API OpenAI دارد که در ',
suffix: ' تنظیم شده باشد.',
},
keywords: 'کلمات کلیدی',
},
keywords: {
tip: 'هر خط یک کلمه، با شکست خطوط جدا شده. حداکثر 100 کاراکتر در هر خط.',
placeholder: 'هر خط یک کلمه، با شکست خطوط جدا شده',
line: 'خط',
},
content: {
input: 'مدیریت محتوای ورودی',
output: 'مدیریت محتوای خروجی',
preset: 'پاسخ‌های پیش فرض',
placeholder: 'محتوای پاسخ‌های پیش فرض در اینجا',
condition: 'مدیریت محتوای ورودی و خروجی حداقل یک مورد فعال شده است',
fromApi: 'پاسخ‌های پیش فرض از API برگردانده می‌شود',
errorMessage: 'پاسخ‌های پیش فرض نمی‌تواند خالی باشد',
supportMarkdown: 'پشتیبانی از Markdown',
},
openaiNotConfig: {
before: 'مدیریت OpenAI نیاز به کلید API OpenAI دارد که در',
after: '',
},
},
contentEnableLabel: 'مدیریت محتوا فعال شده است',
},
generate: {
title: 'تولید کننده دستورالعمل',
description: 'تولید کننده دستورالعمل از مدل تنظیم شده برای بهینه سازی دستورالعمل‌ها برای کیفیت بالاتر و ساختار بهتر استفاده می‌کند. لطفاً دستورالعمل‌های واضح و دقیقی بنویسید.',
tryIt: 'امتحان کنید',
instruction: 'دستورالعمل‌ها',
instructionPlaceHolder: 'دستورالعمل‌های واضح و خاصی بنویسید.',
generate: 'تولید',
resTitle: 'دستورالعمل تولید شده',
noDataLine1: 'موارد استفاده خود را در سمت چپ توصیف کنید،',
noDataLine2: 'پیش‌نمایش ارکستراسیون در اینجا نشان داده خواهد شد.',
apply: 'اعمال',
loading: 'در حال ارکستراسیون برنامه برای شما...',
overwriteTitle: 'آیا تنظیمات موجود را لغو می‌کنید؟',
overwriteMessage: 'اعمال این دستورالعمل تنظیمات موجود را لغو خواهد کرد.',
template: {
pythonDebugger: {
name: 'اشکال‌زدای پایتون',
instruction: 'یک بات که می‌تواند بر اساس دستورالعمل شما کد تولید و اشکال‌زدایی کند',
},
translation: {
name: 'ترجمه',
instruction: 'یک مترجم که می‌تواند چندین زبان را ترجمه کند',
},
professionalAnalyst: {
name: 'تحلیلگر حرفه‌ای',
instruction: 'استخراج بینش‌ها، شناسایی ریسک و خلاصه‌سازی اطلاعات کلیدی از گزارش‌های طولانی به یک یادداشت کوتاه',
},
excelFormulaExpert: {
name: 'کارشناس فرمول اکسل',
instruction: 'یک چت‌بات که می‌تواند به کاربران مبتدی کمک کند فرمول‌های اکسل را بر اساس دستورالعمل‌های کاربر درک، استفاده و ایجاد کنند',
},
travelPlanning: {
name: 'برنامه‌ریزی سفر',
instruction: 'دستیار برنامه‌ریزی سفر یک ابزار هوشمند است که به کاربران کمک می‌کند سفرهای خود را به راحتی برنامه‌ریزی کنند',
},
SQLSorcerer: {
name: 'جادوگر SQL',
instruction: 'تبدیل زبان روزمره به پرس و جوهای SQL',
},
GitGud: {
name: 'Git gud',
instruction: 'تولید دستورات مناسب Git بر اساس اقدامات توصیف شده توسط کاربر در کنترل نسخه',
},
meetingTakeaways: {
name: 'نتایج جلسات',
instruction: 'خلاصه‌سازی جلسات به صورت مختصر شامل موضوعات بحث، نکات کلیدی و موارد اقدام',
},
writingsPolisher: {
name: 'پولیش‌گر نوشته‌ها',
instruction: 'استفاده از تکنیک‌های ویرایش پیشرفته برای بهبود نوشته‌های شما',
},
},
},
resetConfig: {
title: 'بازنشانی تأیید می‌شود؟',
message: 'بازنشانی تغییرات را لغو کرده و تنظیمات منتشر شده آخر را بازیابی می‌کند.',
},
errorMessage: {
nameOfKeyRequired: 'نام کلید: {{key}} مورد نیاز است',
valueOfVarRequired: 'مقدار {{key}} نمی‌تواند خالی باشد',
queryRequired: 'متن درخواست مورد نیاز است.',
waitForResponse: 'لطفاً منتظر پاسخ به پیام قبلی بمانید.',
waitForBatchResponse: 'لطفاً منتظر پاسخ به کار دسته‌ای بمانید.',
notSelectModel: 'لطفاً یک مدل را انتخاب کنید',
waitForImgUpload: 'لطفاً منتظر بارگذاری تصویر بمانید',
},
chatSubTitle: 'دستورالعمل‌ها',
completionSubTitle: 'پیشوند پرس و جو',
promptTip: 'دستورالعمل‌ها و محدودیت‌ها پاسخ‌های AI را هدایت می‌کنند. متغیرهایی مانند {{input}} را درج کنید. این دستورالعمل برای کاربران قابل مشاهده نخواهد بود.',
formattingChangedTitle: 'قالب‌بندی تغییر کرد',
formattingChangedText: 'تغییر قالب‌بندی منطقه اشکال‌زدایی را بازنشانی خواهد کرد، آیا مطمئن هستید؟',
variableTitle: 'متغیرها',
variableTip: 'کاربران متغیرها را در فرم پر می‌کنند و به طور خودکار متغیرها را در دستورالعمل‌ها جایگزین می‌کنند.',
notSetVar: 'متغیرها به کاربران اجازه می‌دهند که کلمات پرس و جو یا جملات ابتدایی را هنگام پر کردن فرم معرفی کنند. شما می‌توانید سعی کنید "{{input}}" را در کلمات پرس و جو وارد کنید.',
autoAddVar: 'متغیرهای تعریف نشده‌ای که در پیش‌پرسش ذکر شده‌اند، آیا می‌خواهید آنها را به فرم ورودی کاربر اضافه کنید؟',
variableTable: {
key: 'کلید متغیر',
name: 'نام فیلد ورودی کاربر',
optional: 'اختیاری',
type: 'نوع ورودی',
action: 'اقدامات',
typeString: 'رشته',
typeSelect: 'انتخاب',
},
varKeyError: {
canNoBeEmpty: '{{key}} مطلوب',
tooLong: '{{key}} طولانی است. نمی‌تواند بیش از 30 کاراکتر باشد',
notValid: '{{key}} نامعتبر است. فقط می‌تواند شامل حروف، اعداد و زیرخط باشد',
notStartWithNumber: '{{key}} نمی‌تواند با عدد شروع شود',
keyAlreadyExists: '{{key}} از قبل وجود دارد',
},
otherError: {
promptNoBeEmpty: 'پرس و جو نمی‌تواند خالی باشد',
historyNoBeEmpty: 'تاریخچه مکالمه باید در پرس و جو تنظیم شود',
queryNoBeEmpty: 'پرس و جو باید در پرس و جو تنظیم شود',
},
variableConfig: {
'addModalTitle': 'افزودن فیلد ورودی',
'editModalTitle': 'ویرایش فیلد ورودی',
'description': 'تنظیم برای متغیر {{varName}}',
'fieldType': 'نوع فیلد',
'string': 'متن کوتاه',
'text-input': 'متن کوتاه',
'paragraph': 'پاراگراف',
'select': 'انتخاب',
'number': 'عدد',
'notSet': 'تنظیم نشده، سعی کنید {{input}} را در پرس و جو وارد کنید',
'stringTitle': 'گزینه‌های جعبه متن فرم',
'maxLength': 'حداکثر طول',
'options': 'گزینه‌ها',
'addOption': 'افزودن گزینه',
'apiBasedVar': 'متغیر مبتنی بر API',
'varName': 'نام متغیر',
'labelName': 'نام برچسب',
'inputPlaceholder': 'لطفاً وارد کنید',
'content': 'محتوا',
'required': 'مورد نیاز',
'hide': 'مخفی کردن',
'errorMsg': {
labelNameRequired: 'نام برچسب مورد نیاز است',
varNameCanBeRepeat: 'نام متغیر نمی‌تواند تکراری باشد',
atLeastOneOption: 'حداقل یک گزینه مورد نیاز است',
optionRepeat: 'گزینه‌های تکراری وجود دارد',
},
},
vision: {
name: 'بینایی',
description: 'فعال کردن بینایی به مدل اجازه می‌دهد تصاویر را دریافت کند و به سوالات مربوط به آنها پاسخ دهد.',
settings: 'تنظیمات',
visionSettings: {
title: 'تنظیمات بینایی',
resolution: 'وضوح',
resolutionTooltip: `وضوح پایین به مدل اجازه می‌دهد نسخه 512x512 کم‌وضوح تصویر را دریافت کند و تصویر را با بودجه 65 توکن نمایش دهد. این به API اجازه می‌دهد پاسخ‌های سریع‌تری بدهد و توکن‌های ورودی کمتری برای موارد استفاده که نیاز به جزئیات بالا ندارند مصرف کند.
\n
وضوح بالا ابتدا به مدل اجازه می‌دهد تصویر کم‌وضوح را ببیند و سپس قطعات جزئیات تصویر ورودی را به عنوان مربع‌های 512px ایجاد کند. هر کدام از قطعات جزئیات از بودجه توکن دو برابر استفاده می‌کنند که در مجموع 129 توکن است.`,
high: 'بالا',
low: 'پایین',
uploadMethod: 'روش بارگذاری',
both: 'هر دو',
localUpload: 'بارگذاری محلی',
url: 'URL',
uploadLimit: 'محدودیت بارگذاری',
},
},
voice: {
name: 'صدا',
defaultDisplay: 'صدا پیش فرض',
description: 'تنظیمات تبدیل متن به گفتار',
settings: 'تنظیمات',
voiceSettings: {
title: 'تنظیمات صدا',
language: 'زبان',
resolutionTooltip: 'پشتیبانی از زبان صدای تبدیل متن به گفتار.',
voice: 'صدا',
autoPlay: 'پخش خودکار',
autoPlayEnabled: 'روشن کردن',
autoPlayDisabled: 'خاموش کردن',
},
},
openingStatement: {
title: 'شروع مکالمه',
add: 'افزودن',
writeOpener: 'نوشتن آغازگر',
placeholder: 'پیام آغازگر خود را اینجا بنویسید، می‌توانید از متغیرها استفاده کنید، سعی کنید {{variable}} را تایپ کنید.',
openingQuestion: 'سوالات آغازین',
openingQuestionPlaceholder: 'می‌توانید از متغیرها استفاده کنید، سعی کنید {{variable}} را تایپ کنید.',
noDataPlaceHolder: 'شروع مکالمه با کاربر می‌تواند به AI کمک کند تا ارتباط نزدیک‌تری با آنها برقرار کند.',
varTip: 'می‌توانید از متغیرها استفاده کنید، سعی کنید {{variable}} را تایپ کنید',
tooShort: 'حداقل 20 کلمه از پرسش اولیه برای تولید نظرات آغازین مکالمه مورد نیاز است.',
notIncludeKey: 'پرسش اولیه شامل متغیر: {{key}} نمی‌شود. لطفاً آن را به پرسش اولیه اضافه کنید.',
},
modelConfig: {
model: 'مدل',
setTone: 'تنظیم لحن پاسخ‌ها',
title: 'مدل و پارامترها',
modeType: {
chat: 'چت',
completion: 'تکمیل',
},
},
inputs: {
title: 'اشکال‌زدایی و پیش‌نمایش',
noPrompt: 'سعی کنید پرسش‌هایی را در ورودی پیش‌پرسش بنویسید',
userInputField: 'فیلد ورودی کاربر',
noVar: 'مقدار متغیر را پر کنید، که به طور خودکار در کلمات پرس و جو در هر بار شروع یک جلسه جدید جایگزین می‌شود.',
chatVarTip: 'مقدار متغیر را پر کنید، که به طور خودکار در کلمات پرس و جو در هر بار شروع یک جلسه جدید جایگزین می‌شود',
completionVarTip: 'مقدار متغیر را پر کنید، که به طور خودکار در کلمات پرس و جو در هر بار ارسال سوال جایگزین می‌شود.',
previewTitle: 'پیش‌نمایش پرس و جو',
queryTitle: 'محتوای پرس و جو',
queryPlaceholder: 'لطفاً متن درخواست را وارد کنید.',
run: 'اجرا',
},
result: 'متن خروجی',
datasetConfig: {
settingTitle: 'تنظیمات بازیابی',
knowledgeTip: 'روی دکمه "+" کلیک کنید تا دانش اضافه شود',
retrieveOneWay: {
title: 'بازیابی N به 1',
description: 'بر اساس نیت کاربر و توصیفات دانش، عامل بهترین دانش را برای پرس و جو به طور خودکار انتخاب می‌کند. بهترین برای برنامه‌هایی با دانش محدود و مشخص.',
},
retrieveMultiWay: {
title: 'بازیابی چند مسیره',
description: 'بر اساس نیت کاربر، از تمام دانش پرس و جو می‌کند، متن‌های مرتبط از منابع چندگانه بازیابی می‌کند و بهترین نتایج مطابقت با پرس و جوی کاربر را پس از مرتب‌سازی مجدد انتخاب می‌کند.',
},
rerankModelRequired: 'مدل مرتب‌سازی مجدد مورد نیاز است',
params: 'پارامترها',
top_k: 'Top K',
top_kTip: 'برای فیلتر کردن تکه‌هایی که بیشترین شباهت به سوالات کاربر دارند استفاده می‌شود. سیستم همچنین به طور دینامیک مقدار Top K را بر اساس max_tokens مدل انتخاب شده تنظیم می‌کند.',
score_threshold: 'آستانه نمره',
score_thresholdTip: 'برای تنظیم آستانه شباهت برای فیلتر کردن تکه‌ها استفاده می‌شود.',
retrieveChangeTip: 'تغییر حالت شاخص و حالت بازیابی ممکن است بر برنامه‌های مرتبط با این دانش تأثیر بگذارد.',
},
debugAsSingleModel: 'اشکال‌زدایی به عنوان مدل تک',
debugAsMultipleModel: 'اشکال‌زدایی به عنوان مدل چندگانه',
duplicateModel: 'تکراری',
publishAs: 'انتشار به عنوان',
assistantType: {
name: 'نوع دستیار',
chatAssistant: {
name: 'دستیار پایه',
description: 'ساخت دستیار مبتنی بر چت با استفاده از مدل زبان بزرگ',
},
agentAssistant: {
name: 'دستیار عامل',
description: 'ساخت یک عامل هوشمند که می‌تواند ابزارها را به طور خودکار برای تکمیل وظایف انتخاب کند',
},
},
agent: {
agentMode: 'حالت عامل',
agentModeDes: 'تنظیم نوع حالت استنتاج برای عامل',
agentModeType: {
ReACT: 'ReAct',
functionCall: 'فراخوانی تابع',
},
setting: {
name: 'تنظیمات عامل',
description: 'تنظیمات دستیار عامل به شما اجازه می‌دهد حالت عامل و ویژگی‌های پیشرفته مانند پرسش‌های ساخته شده را تنظیم کنید، فقط در نوع عامل موجود است.',
maximumIterations: {
name: 'حداکثر تکرارها',
description: 'محدود کردن تعداد تکرارهایی که دستیار عامل می‌تواند اجرا کند',
},
},
buildInPrompt: 'پرسش‌های ساخته شده',
firstPrompt: 'اولین پرسش',
nextIteration: 'تکرار بعدی',
promptPlaceholder: 'پرسش خود را اینجا بنویسید',
tools: {
name: 'ابزارها',
description: 'استفاده از ابزارها می‌تواند قابلیت‌های LLM را گسترش دهد، مانند جستجو در اینترنت یا انجام محاسبات علمی',
enabled: 'فعال',
},
},
fileUpload: {
title: 'آپلود فایل',
description: 'جعبه ورودی چت امکان آپلود تصاویر، اسناد و سایر فایل‌ها را فراهم می‌کند.',
supportedTypes: 'انواع فایل‌های پشتیبانی شده',
numberLimit: 'حداکثر آپلود',
modalTitle: 'تنظیمات آپلود فایل',
},
imageUpload: {
title: 'آپلود تصویر',
description: 'امکان آپلود تصاویر را فراهم می‌کند.',
supportedTypes: 'انواع فایل‌های پشتیبانی شده',
numberLimit: 'حداکثر آپلود',
modalTitle: 'تنظیمات آپلود تصویر',
},
bar: {
empty: 'فعال‌سازی ویژگی برای بهبود تجربه کاربری اپلیکیشن وب',
enableText: 'ویژگی‌های فعال',
manage: 'مدیریت',
},
documentUpload: {
title: 'سند',
description: 'فعال‌سازی سند به مدل اجازه می‌دهد اسناد را دریافت کرده و درباره آن‌ها پاسخ دهد.',
},
audioUpload: {
title: 'صوتی',
description: 'فعال‌سازی صوت به مدل اجازه می‌دهد فایل‌های صوتی را برای رونویسی و تجزیه و تحلیل پردازش کند.',
},
},
codegen: {
apply: 'درخواست',
resTitle: 'کد تولید شده',
generate: 'تولید',
loading: 'تولید کد...',
applyChanges: 'اعمال تغییرات',
generatedCodeTitle: 'کد تولید شده',
title: 'ژنراتور کد',
instruction: 'دستورالعمل',
instructionPlaceholder: 'توضیحات دقیق کدی را که می خواهید تولید کنید وارد کنید.',
overwriteConfirmMessage: 'این عمل کد موجود را بازنویسی می کند. آیا می خواهید ادامه دهید؟',
overwriteConfirmTitle: 'کد موجود را بازنویسی کنید؟',
noDataLine2: 'پیش نمایش کد در اینجا نشان داده می شود.',
noDataLine1: 'مورد استفاده خود را در سمت چپ شرح دهید،',
description: 'Code Generator از مدل های پیکربندی شده برای تولید کد با کیفیت بالا بر اساس دستورالعمل های شما استفاده می کند. لطفا دستورالعمل های واضح و دقیق ارائه دهید.',
},
generate: {
template: {
pythonDebugger: {
name: 'اشکال زدایی پایتون',
instruction: 'رباتی که می تواند کد شما را بر اساس دستورالعمل شما تولید و اشکال زدایی کند',
},
translation: {
name: 'ترجمه',
instruction: 'مترجمی که می تواند چندین زبان را ترجمه کند',
},
professionalAnalyst: {
name: 'تحلیلگر حرفه ای',
instruction: 'استخراج بینش، شناسایی ریسک و تقطیر اطلاعات کلیدی از گزارش های طولانی در یک یادداشت',
},
excelFormulaExpert: {
name: 'کارشناس فرمول اکسل',
instruction: 'یک ربات چت که می تواند به کاربران تازه کار کمک کند تا فرمول های اکسل را بر اساس دستورالعمل های کاربر درک، استفاده و ایجاد کنند',
},
travelPlanning: {
name: 'برنامه ریزی سفر',
instruction: 'دستیار برنامه ریزی سفر ابزاری هوشمند است که برای کمک به کاربران در برنامه ریزی بدون زحمت سفرهای خود طراحی شده است',
},
SQLSorcerer: {
name: 'جادوگر SQL',
instruction: 'تبدیل زبان روزمره به کوئری های SQL',
},
GitGud: {
name: 'گیت گود',
instruction: 'فرمان های Git مناسب را بر اساس اکشن های کنترل نسخه توصیف شده توسط کاربر ایجاد کنید',
},
meetingTakeaways: {
name: 'نکات مهم جلسه',
instruction: 'جلسات را به خلاصه های مختصر از جمله موضوعات بحث، نکات کلیدی و موارد اقدام تقطیر کنید',
},
writingsPolisher: {
name: 'پولیش نوشتن',
instruction: 'از تکنیک های پیشرفته ویرایش کپی برای بهبود نوشته های خود استفاده کنید',
},
},
title: 'ژنراتور سریع',
resTitle: 'اعلان تولید شده',
overwriteTitle: 'پیکربندی موجود را لغو کنید؟',
generate: 'تولید',
noDataLine1: 'مورد استفاده خود را در سمت چپ شرح دهید،',
apply: 'درخواست',
instruction: 'دستورالعمل',
overwriteMessage: 'اعمال این اعلان پیکربندی موجود را لغو می کند.',
instructionPlaceHolder: 'دستورالعمل های واضح و مشخص بنویسید.',
tryIt: 'آن را امتحان کنید',
noDataLine2: 'پیش نمایش ارکستراسیون در اینجا نشان داده می شود.',
loading: 'هماهنگ کردن برنامه برای شما...',
description: 'Prompt Generator از مدل پیکربندی شده برای بهینه سازی درخواست ها برای کیفیت بالاتر و ساختار بهتر استفاده می کند. لطفا دستورالعمل های واضح و دقیق بنویسید.',
press: 'فشار',
to: 'به',
version: 'نسخه',
latest: 'آخرین',
optional: 'اختیاری',
dismiss: 'رد کردن',
insertContext: 'متن را وارد کنید',
optimizationNote: 'یادداشت بهینه‌سازی',
versions: 'نسخه‌ها',
optimizePromptTooltip: 'بهینه‌سازی در تولیدکننده پرامپت',
idealOutput: 'خروجی ایده ال',
instructionPlaceHolderLine1: 'خروجی را مختصرتر کنید و نکات اصلی را حفظ کنید.',
instructionPlaceHolderTitle: 'توصیف کنید که چگونه می‌خواهید این دستورالعمل را بهبود ببخشید. به عنوان مثال:',
idealOutputPlaceholder: 'ایده‌آل پاسخ شما چه شکلی باید باشد؟ لطفاً درباره فرمت، طول، لحن و الزامات محتوایی آن توضیح دهید ...',
newNoDataLine1: 'یک دستور در ستون چپ بنویسید و برای مشاهده پاسخ، روی تولید کلیک کنید.',
instructionPlaceHolderLine3: 'لحن خیلی تند است، لطفاً آن را دوستانه‌تر کنید.',
codeGenInstructionPlaceHolderLine: 'هر چه بازخورد دقیق‌تر باشد، مانند نوع داده‌های ورودی و خروجی و همچنین نحوه پردازش متغیرها، تولید کد دقیق‌تر خواهد بود.',
instructionPlaceHolderLine2: 'فرمت خروجی نادرست است، لطفاً به شکل JSON به دقت پایبند باشید.',
},
resetConfig: {
title: 'بازنشانی را تأیید کنید؟',
message: 'بازنشانی تغییرات را دور می اندازد و آخرین پیکربندی منتشر شده را بازیابی می کند.',
},
errorMessage: {
notSelectModel: 'لطفا یک مدل را انتخاب کنید',
waitForResponse: 'لطفا منتظر بمانید تا پاسخ به پیام قبلی کامل شود.',
queryRequired: 'درخواست متن الزامی است.',
waitForFileUpload: 'لطفا منتظر بمانید تا فایل/فایل ها آپلود شوند',
waitForImgUpload: 'لطفا منتظر بمانید تا تصویر آپلود شود',
waitForBatchResponse: 'لطفا منتظر بمانید تا پاسخ به کار دسته ای تکمیل شود.',
nameOfKeyRequired: 'نام کلید: {{key}} الزامی است',
valueOfVarRequired: 'مقدار {{key}} نمی‌تواند خالی باشد',
},
warningMessage: {
timeoutExceeded: 'نتایج به دلیل مهلت زمانی نمایش داده نمی شوند. لطفا برای جمع آوری نتایج کامل به گزارش ها مراجعه کنید.',
},
variableTable: {
key: 'کلید متغیر',
typeSelect: 'انتخاب',
action: 'اقدامات',
typeString: 'رشته',
name: 'نام فیلد ورودی کاربر',
type: 'نوع ورودی',
},
varKeyError: {
canNoBeEmpty: '{{key}} مورد نیاز است',
tooLong: '{{key}} خیلی طولانی است. نمی‌تواند بیش از ۳۰ کاراکتر باشد',
notValid: '{{key}} نامعتبر است. فقط می‌تواند شامل حروف، اعداد و زیرخط باشد',
notStartWithNumber: '{{key}} نمی‌تواند با یک عدد شروع شود',
keyAlreadyExists: '{{key}} قبلاً موجود است',
},
otherError: {
promptNoBeEmpty: 'اعلان نمی تواند خالی باشد',
historyNoBeEmpty: 'سابقه مکالمه باید در اعلان تنظیم شود',
queryNoBeEmpty: 'پرس و جو باید در اعلان تنظیم شود',
},
variableConfig: {
'file': {
image: {
name: 'تصویر',
},
audio: {
name: 'صوتی',
},
document: {
name: 'سند',
},
video: {
name: 'ویدئو',
},
custom: {
name: 'انواع فایل های دیگر',
createPlaceholder: ' پسوند فایل، به عنوان مثال .doc',
description: 'انواع فایل های دیگر را مشخص کنید.',
},
supportFileTypes: 'انواع فایل های پشتیبانی',
},
'errorMsg': {
optionRepeat: 'دارای گزینه های تکرار',
varNameCanBeRepeat: 'نام متغیر را نمی توان تکرار کرد',
labelNameRequired: 'نام برچسب الزامی است',
atLeastOneOption: 'حداقل یک گزینه مورد نیاز است',
},
'number': 'شماره',
'hide': 'مخفی کردن',
'both': 'هر دو',
'single-file': 'تک فایل',
'select': 'انتخاب',
'inputPlaceholder': 'لطفا وارد کنید',
'editModalTitle': 'ویرایش فیلد ورودی',
'paragraph': 'پاراگراف',
'fieldType': 'نوع فیلد',
'maxLength': 'حداکثر طول',
'varName': 'نام متغیر',
'maxNumberOfUploads': 'حداکثر تعداد آپلود',
'noDefaultValue': 'بدون مقدار پیش فرض',
'addOption': 'افزودن گزینه',
'stringTitle': 'گزینه های جعبه متن فرم',
'options': 'گزینه',
'selectDefaultValue': 'مقدار پیش فرض را انتخاب کنید',
'content': 'محتوای',
'multi-files': 'لیست فایل ها',
'labelName': 'نام برچسب',
'defaultValue': 'مقدار پیش فرض',
'required': 'مورد نیاز',
'uploadFileTypes': 'آپلود انواع فایل',
'apiBasedVar': 'متغیر مبتنی بر API',
'addModalTitle': 'افزودن فیلد ورودی',
'string': 'متن کوتاه',
'text-input': 'متن کوتاه',
'localUpload': 'آپلود محلی',
'json': 'کد JSON',
'jsonSchema': 'طرح‌واره JSON',
'optional': 'اختیاری',
'checkbox': 'چک باکس',
'unit': 'واحد',
'tooltips': 'Tooltips',
'uploadMethod': 'روش آپلود',
'displayName': 'نام نمایشی',
'startChecked': 'شروع بررسی شده',
'noDefaultSelected': 'انتخاب نکنید',
'placeholder': 'مکان نگهدارنده',
'showAllSettings': 'نمایش همه تنظیمات',
'startSelectedOption': 'گزینه انتخاب شده را شروع کنید',
'defaultValuePlaceholder': 'مقدار پیش فرض را وارد کنید تا فیلد را از قبل پر کنید',
'unitPlaceholder': 'نمایش واحدها بعد از اعداد، به عنوان مثال توکن ها',
'placeholderPlaceholder': 'متن را وارد کنید تا زمانی که فیلد خالی است نمایش داده شود',
'tooltipsPlaceholder': 'نوشتار مفیدی را که هنگام نگه داشتن ماوس روی برچسب نشان داده می شود وارد کنید',
'description': 'تنظیم برای متغیر {{varName}}',
'notSet': 'تنظیم نشده است، سعی کنید {{input}} را در پیش‌نویس وارد کنید',
'maxNumberTip': 'سند < {{docLimit}}، تصویر < {{imgLimit}}، صوت < {{audioLimit}}، ویدئو < {{videoLimit}}',
},
vision: {
visionSettings: {
url: 'آدرس',
high: 'بالا',
low: 'کم',
resolution: 'وضوح',
uploadLimit: 'محدودیت آپلود',
uploadMethod: 'روش آپلود',
localUpload: 'آپلود محلی',
title: 'تنظیمات بینایی',
both: 'هر دو',
resolutionTooltip: 'رزولوشن پایین به مدل اجازه می‌دهد نسخه‌ای کم‌رزولوشن از تصویر با اندازه ۵۱۲ در ۵۱۲ دریافت کند و تصویر را با بودجه ۶۵ توکن نمایش دهد. این امکان باعث می‌شود API پاسخ‌ها را سریع‌تر بازگرداند و توکن‌های ورودی کمتری برای مواردی که نیازی به جزئیات بالا ندارند، مصرف کند.\n\nرزولوشن بالا ابتدا به مدل اجازه می‌دهد تصویر کم‌رزولوشن را ببیند و سپس کات‌های دقیقی از تصاویر ورودی به صورت مربع‌های ۵۱۲ پیکسلی بنا بر اندازه تصویر ورودی ایجاد می‌کند. هر کدام از کات‌های دقیق از دو برابر بودجه توکن استفاده می‌کنند که مجموعاً ۱۲۹ توکن می‌شود.',
},
settings: 'تنظیمات',
name: 'چشم انداز',
onlySupportVisionModelTip: 'فقط از مدل های بینایی پشتیبانی می کند',
description: 'Enable Vision به مدل اجازه می دهد تا تصاویر را بگیرد و به سؤالات مربوط به آنها پاسخ دهد.',
},
voice: {
voiceSettings: {
voice: 'صوتی',
autoPlayEnabled: 'در',
autoPlayDisabled: 'خاموش',
language: 'زبان',
title: 'تنظیمات صدا',
resolutionTooltip: 'زبان پشتیبانی از صدای متن به گفتار。',
autoPlay: 'پخش خودکار',
},
settings: 'تنظیمات',
name: 'صوتی',
description: 'متن به گفتار به گفتار تنظیمات',
defaultDisplay: 'صدای پیش فرض',
},
openingStatement: {
tooShort: 'حداقل 20 کلمه درخواست اولیه برای ایجاد یک سخنرانی آغازین برای مکالمه مورد نیاز است.',
writeOpener: 'ویرایش بازکن',
add: 'اضافه کردن',
title: 'افتتاحیه مکالمه',
openingQuestion: 'سوالات آغازین',
noDataPlaceHolder: 'شروع مکالمه با کاربر می تواند به هوش مصنوعی کمک کند تا در برنامه های مکالمه ارتباط نزدیک تری با آنها برقرار کند.',
placeholder: 'پیام شروع خود را اینجا بنویسید، می‌توانید از متغیرها استفاده کنید، امتحان کنید تایپ {{variable}}.',
openingQuestionPlaceholder: 'می‌توانید از متغیرها استفاده کنید، امتحان کنید {{variable}} را تایپ کنید.',
varTip: 'می‌توانید از متغیرها استفاده کنید، نوع {{variable}} را امتحان کنید',
notIncludeKey: 'پیام اولیه شامل متغیر {{key}} نیست. لطفاً آن را به پیام اولیه اضافه کنید.',
},
modelConfig: {
modeType: {
chat: 'چت',
completion: 'کامل',
},
model: 'مدل',
title: 'مدل و پارامترها',
setTone: 'لحن پاسخ ها را تنظیم کنید',
},
inputs: {
run: 'اجرا',
queryTitle: 'محتوای پرس و جو',
userInputField: 'فیلد ورودی کاربر',
previewTitle: 'پیش نمایش سریع',
title: 'اشکال زدایی و پیش نمایش',
queryPlaceholder: 'لطفا متن درخواست را وارد کنید.',
noPrompt: 'سعی کنید مقداری اعلان در ورودی پیش از اعلان بنویسید',
completionVarTip: 'مقدار متغیر را پر کنید، که هر بار که سوالی ارسال می شود، به طور خودکار در کلمات سریع جایگزین می شود.',
chatVarTip: 'مقدار متغیر را پر کنید، که هر بار که یک جلسه جدید شروع می شود، به طور خودکار در کلمه prompt جایگزین می شود',
noVar: 'مقدار متغیر را پر کنید، که هر بار که یک جلسه جدید شروع می شود، به طور خودکار در کلمه prompt جایگزین می شود.',
},
datasetConfig: {
retrieveOneWay: {
title: 'بازیابی N-to-1',
description: 'بر اساس هدف کاربر و توضیحات دانش، عامل به طور مستقل بهترین دانش را برای پرس و جو انتخاب می کند. بهترین برای برنامه های کاربردی با دانش متمایز و محدود.',
},
retrieveMultiWay: {
title: 'بازیابی چند مسیری',
description: 'بر اساس هدف کاربر، پرس و جوها را در تمام دانش انجام می دهد، متن مربوطه را از چند منبع بازیابی می کند و پس از رتبه بندی مجدد، بهترین نتایج را مطابق با پرس و جو کاربر انتخاب می کند.',
},
top_k: 'K بالا',
knowledgeTip: 'برای افزودن دانش روی دکمه " کلیک کنید',
score_threshold: 'آستانه امتیاز',
settingTitle: 'تنظیمات بازیابی',
params: 'پارام ها',
embeddingModelRequired: 'یک مدل تعبیه پیکربندی شده مورد نیاز است',
rerankModelRequired: 'یک مدل Rerank پیکربندی شده مورد نیاز است',
score_thresholdTip: 'برای تنظیم آستانه شباهت برای فیلتر کردن تکه ها استفاده می شود.',
top_kTip: 'برای فیلتر کردن تکه هایی که بیشتر شبیه به سؤالات کاربر هستند استفاده می شود. این سیستم همچنین با توجه به max_tokens مدل انتخاب شده، مقدار Top K را به صورت پویا تنظیم می کند.',
retrieveChangeTip: 'اصلاح حالت نمایه و حالت بازیابی ممکن است بر کاربردهای مرتبط با این دانش تأثیر بگذارد.',
},
assistantType: {
chatAssistant: {
description: 'ساخت یک دستیار مبتنی بر چت با استفاده از یک مدل زبان بزرگ',
name: 'دستیار پایه',
},
agentAssistant: {
description: 'یک عامل هوشمند بسازید که بتواند به طور مستقل ابزارهایی را برای تکمیل تسک ها انتخاب کند.',
name: 'دستیار نماینده',
},
name: 'نوع دستیار',
},
agent: {
agentModeType: {
functionCall: 'فراخوانی تابع',
ReACT: 'واکنش',
},
setting: {
maximumIterations: {
name: 'حداکثر تکرارها',
description: 'تعداد تکرارهایی را که یک دستیار عامل می تواند اجرا کند محدود کنید',
},
name: 'تنظیمات نماینده',
description: 'تنظیمات Agent Assistant امکان تنظیم حالت عامل و ویژگی های پیشرفته مانند اعلان های داخلی را فراهم می کند که فقط در نوع Agent موجود است.',
},
tools: {
enabled: 'فعال',
name: 'ابزار',
description: 'استفاده از ابزارها می تواند قابلیت های LLM مانند جستجو در اینترنت یا انجام محاسبات علمی را گسترش دهد',
},
agentMode: 'حالت عامل',
nextIteration: 'تکرار بعدی',
promptPlaceholder: 'درخواست خود را اینجا بنویسید',
agentModeDes: 'نوع حالت استنتاج را برای عامل تنظیم کنید',
buildInPrompt: 'اعلان داخلی',
firstPrompt: 'اولین اعلان',
},
result: 'متن خروجی',
completionSubTitle: 'اعلان پیشوند',
variableTitle: 'متغیرهای',
formattingChangedTitle: 'قالب بندی تغییر کرد',
chatSubTitle: 'دستورالعمل',
debugAsSingleModel: 'اشکال زدایی به عنوان مدل واحد',
publishAs: 'انتشار به عنوان',
duplicateModel: 'تکراری',
noResult: 'خروجی در اینجا نمایش داده می شود.',
debugAsMultipleModel: 'اشکال زدایی به عنوان چندین مدل',
formattingChangedText: 'با تغییر قالب بندی، ناحیه اشکال زدایی بازنشانی می شود، مطمئن هستید؟',
variableTip: 'کاربران متغیرها را در یک فرم پر می کنند و به طور خودکار متغیرها را در اعلان جایگزین می کنند.',
autoAddVar: 'متغیرهای تعریف نشده که در پیش اعلان ارجاع داده شده اند، آیا می خواهید آنها را به صورت ورودی کاربر اضافه کنید؟',
promptTip: 'پرومپت‌ها پاسخ‌های هوش مصنوعی را با دستورالعمل‌ها و محدودیت‌ها هدایت می‌کنند. متغیرهایی مانند {{input}} را وارد کنید. این پرومپت برای کاربران قابل مشاهده نخواهد بود.',
notSetVar: 'متغیرها به کاربران امکان می‌دهند تا هنگام پر کردن فرم‌ها، کلمات راهنما یا سخنان افتتاحیه را وارد کنند. می‌توانید امتحان کنید که \'{{input}}\' را در کلمات راهنما وارد کنید.',
}
export default translation

View File

@@ -0,0 +1,112 @@
const translation = {
title: 'لاگ‌ها',
description: 'لاگ‌ها وضعیت اجرایی برنامه را ثبت می‌کنند، شامل ورودی‌های کاربر و پاسخ‌های هوش مصنوعی.',
dateTimeFormat: 'MM/DD/YYYY hh:mm:ss A',
table: {
header: {
updatedTime: 'زمان به‌روزرسانی',
time: 'زمان ایجاد',
endUser: 'کاربر نهایی یا حساب',
input: 'ورودی',
output: 'خروجی',
summary: 'عنوان',
messageCount: 'تعداد پیام',
userRate: 'امتیاز کاربر',
adminRate: 'امتیاز اپراتور',
startTime: 'زمان شروع',
status: 'وضعیت',
runtime: 'زمان اجرا',
tokens: 'توکن‌ها',
user: 'کاربر نهایی یا حساب',
version: 'نسخه',
triggered_from: 'فعال شده توسط',
},
pagination: {
previous: 'قبلی',
next: 'بعدی',
},
empty: {
noChat: 'هنوز مکالمه‌ای وجود ندارد',
noOutput: 'خروجی وجود ندارد',
element: {
title: 'کسی هست؟',
content: 'در اینجا تعاملات بین کاربران نهایی و برنامه‌های هوش مصنوعی را مشاهده و حاشیه‌نویسی کنید تا دقت هوش مصنوعی بهبود یابد. می‌توانید <shareLink>به اشتراک بگذارید</shareLink> یا <testLink>برنامه وب را تست کنید</testLink> و سپس به این صفحه برگردید.',
},
},
},
detail: {
time: 'زمان',
conversationId: 'شناسه مکالمه',
promptTemplate: 'قالب درخواست',
promptTemplateBeforeChat: 'قالب درخواست قبل از چت · به عنوان پیام سیستمی',
annotationTip: 'بهبودها توسط {{user}} علامت‌گذاری شده است',
timeConsuming: '',
second: 'ثانیه',
tokenCost: 'توکن مصرفی',
loading: 'در حال بارگذاری',
operation: {
like: 'پسندیدن',
dislike: 'نپسندیدن',
addAnnotation: 'اضافه کردن بهبود',
editAnnotation: 'ویرایش بهبود',
annotationPlaceholder: 'پاسخ مورد انتظاری که می‌خواهید هوش مصنوعی بدهد را وارد کنید، که می‌تواند برای بهبود مدل و کیفیت تولید متن در آینده استفاده شود.',
},
variables: 'متغیرها',
uploadImages: 'تصاویر آپلود شده',
modelParams: 'پارامترهای مدل',
},
filter: {
period: {
today: 'امروز',
last7days: '7 روز گذشته',
last4weeks: '4 هفته گذشته',
last3months: '3 ماه گذشته',
last12months: '12 ماه گذشته',
monthToDate: 'از ابتدای ماه تاکنون',
quarterToDate: 'از ابتدای فصل تاکنون',
yearToDate: 'از ابتدای سال تاکنون',
allTime: 'همه زمان‌ها',
last30days: '۳۰ روز گذشته',
custom: 'سفارشی',
},
annotation: {
all: 'همه',
annotated: 'بهبودهای حاشیه‌نویسی شده ({{count}} آیتم)',
not_annotated: 'حاشیه‌نویسی نشده',
},
sortBy: 'مرتب‌سازی بر اساس:',
descending: 'نزولی',
ascending: 'صعودی',
},
workflowTitle: 'لاگ‌های جریان کاری',
workflowSubtitle: 'لاگ عملیات خودکار را ثبت کرده است.',
runDetail: {
title: 'لاگ مکالمه',
workflowTitle: 'جزئیات لاگ',
fileListLabel: 'جزئیات فایل',
fileListDetail: 'جزئیات',
testWithParams: 'تست با پارامترها',
},
promptLog: 'لاگ درخواست',
agentLog: 'لاگ عامل',
viewLog: 'مشاهده لاگ',
agentLogDetail: {
agentMode: 'حالت عامل',
toolUsed: 'ابزار استفاده شده',
iterations: 'تکرارها',
iteration: 'تکرار',
finalProcessing: 'پردازش نهایی',
},
dateFormat: 'MM/DD/YYYY',
triggerBy: {
debugging: 'رفع اشکال',
appRun: 'وب اپ',
webhook: 'وب‌هوک',
schedule: 'برنامه',
plugin: 'افزونه',
ragPipelineRun: 'خط لوله RAG',
ragPipelineDebugging: 'رفع اشکال RAG',
},
}
export default translation

View File

@@ -0,0 +1,189 @@
const translation = {
welcome: {
firstStepTip: 'برای شروع،',
enterKeyTip: 'کلید API خود را در زیر وارد کنید',
getKeyTip: 'کلید API خود را از داشبورد OpenAI دریافت کنید',
placeholder: 'کلید API خود را وارد کنید (مثلاً sk-xxxx)',
},
apiKeyInfo: {
cloud: {
trial: {
title: 'شما از سهمیه آزمایشی {{providerName}} استفاده می‌کنید.',
description: 'سهمیه آزمایشی برای اهداف تست شما ارائه شده است. قبل از اینکه سهمیه آزمایشی تمام شود، لطفاً ارائه‌دهنده مدل خود را تنظیم کنید یا سهمیه اضافی خریداری کنید.',
},
exhausted: {
title: 'سهمیه آزمایشی شما تمام شده است، لطفاً کلید API خود را تنظیم کنید.',
description: 'شما سهمیه آزمایشی خود را مصرف کرده‌اید. لطفاً ارائه‌دهنده مدل خود را تنظیم کنید یا سهمیه اضافی خریداری کنید.',
},
},
selfHost: {
title: {
row1: 'برای شروع،',
row2: 'ابتدا ارائه‌دهنده مدل خود را تنظیم کنید.',
},
},
callTimes: 'تعداد تماس‌ها',
usedToken: 'توکن‌های مصرف‌شده',
setAPIBtn: 'برو به تنظیمات ارائه‌دهنده مدل',
tryCloud: 'یا نسخه ابری Dify با سهمیه رایگان را امتحان کنید',
},
overview: {
title: 'نمای کلی',
appInfo: {
explanation: 'برنامه وب AI آماده به کار',
accessibleAddress: 'آدرس عمومی',
preview: 'پیش‌نمایش',
regenerate: 'تولید مجدد',
regenerateNotice: 'آیا می‌خواهید آدرس عمومی را دوباره تولید کنید؟',
preUseReminder: 'لطفاً قبل از ادامه، web app را فعال کنید.',
settings: {
entry: 'تنظیمات',
title: 'تنظیمات web app',
webName: 'نام web app',
webDesc: 'توضیحات web app',
webDescTip: 'این متن در سمت مشتری نمایش داده می‌شود و راهنمایی‌های اولیه در مورد نحوه استفاده از برنامه را ارائه می‌دهد',
webDescPlaceholder: 'توضیحات web app را وارد کنید',
language: 'زبان',
workflow: {
title: 'مراحل کاری',
show: 'نمایش',
hide: 'مخفی کردن',
showDesc: 'نمایش یا پنهان کردن جزئیات گردش کار در web app',
subTitle: 'جزئیات گردش کار',
},
chatColorTheme: 'تم رنگی چت',
chatColorThemeDesc: 'تم رنگی چت‌بات را تنظیم کنید',
chatColorThemeInverted: 'معکوس',
invalidHexMessage: 'مقدار هگز نامعتبر',
invalidPrivacyPolicy: 'لینک سیاست حفظ حریم خصوصی نامعتبر است. لطفاً از یک لینک معتبر که با http یا https شروع میشود استفاده کنید',
more: {
entry: 'نمایش تنظیمات بیشتر',
copyright: 'حق نسخه‌برداری',
copyRightPlaceholder: 'نام نویسنده یا سازمان را وارد کنید',
privacyPolicy: 'سیاست حفظ حریم خصوصی',
privacyPolicyPlaceholder: 'لینک سیاست حفظ حریم خصوصی را وارد کنید',
privacyPolicyTip: 'به بازدیدکنندگان کمک می‌کند تا بفهمند برنامه چه داده‌هایی را جمع‌آوری می‌کند، به سیاست حفظ حریم خصوصی Dify نگاه کنید <privacyPolicyLink>Privacy Policy</privacyPolicyLink>.',
customDisclaimer: 'سلب مسئولیت سفارشی',
customDisclaimerPlaceholder: 'متن سلب مسئولیت سفارشی را وارد کنید',
customDisclaimerTip: 'متن سلب مسئولیت سفارشی در سمت مشتری نمایش داده می‌شود و اطلاعات بیشتری درباره برنامه ارائه می‌دهد',
copyrightTip: 'نمایش اطلاعات حق نسخه برداری در برنامه وب',
copyrightTooltip: 'لطفا به طرح حرفه ای یا بالاتر ارتقا دهید',
},
sso: {
title: 'web app SSO',
label: 'احراز هویت SSO',
description: 'همه کاربران باید قبل از استفاده از web app با SSO وارد شوند',
tooltip: 'برای فعال کردن web app SSO با سرپرست تماس بگیرید',
},
modalTip: 'تنظیمات برنامه وب سمت مشتری.',
},
embedded: {
entry: 'جاسازی شده',
title: 'جاسازی در وب‌سایت',
explanation: 'روش‌های جاسازی برنامه چت در وب‌سایت خود را انتخاب کنید',
iframe: 'برای افزودن برنامه چت در هرجای وب‌سایت خود، این iframe را به کد HTML خود اضافه کنید.',
scripts: 'برای افزودن برنامه چت به گوشه پایین سمت راست وب‌سایت خود، این کد را به HTML خود اضافه کنید.',
chromePlugin: 'نصب افزونه Chrome Chatbot Dify',
copied: 'کپی شد',
copy: 'کپی',
},
qrcode: {
title: 'کد QR لینک',
scan: 'اسکن برای اشتراک‌گذاری',
download: 'دانلود کد QR',
},
customize: {
way: 'راه',
entry: 'سفارشی‌سازی',
title: 'سفارشی‌سازی web app AI',
explanation: 'شما می‌توانید ظاهر جلویی برنامه وب را برای برآوردن نیازهای سناریو و سبک خود سفارشی کنید.',
way1: {
name: 'کلاینت را شاخه کنید، آن را تغییر دهید و در Vercel مستقر کنید (توصیه می‌شود)',
step1: 'کلاینت را شاخه کنید و آن را تغییر دهید',
step1Tip: 'برای شاخه کردن کد منبع به حساب GitHub خود و تغییر کد اینجا کلیک کنید',
step1Operation: 'Dify-WebClient',
step2: 'استقرار در Vercel',
step2Tip: 'برای وارد کردن مخزن به Vercel و استقرار اینجا کلیک کنید',
step2Operation: 'وارد کردن مخزن',
step3: 'پیکربندی متغیرهای محیطی',
step3Tip: 'متغیرهای محیطی زیر را در Vercel اضافه کنید',
},
way2: {
name: 'نوشتن کد سمت کلاینت برای فراخوانی API و استقرار آن بر روی سرور',
operation: 'مستندات',
},
},
launch: 'راه اندازی',
enableTooltip: {
description: 'برای فعال کردن این ویژگی، لطفاً یک گره ورودی کاربر به صفحه اضافه کنید. (ممکن است قبلاً در پیش‌نویس وجود داشته باشد، بعد از انتشار اعمال می‌شود)',
learnMore: 'بیشتر بدانید',
},
title: 'وب اپ',
},
apiInfo: {
title: 'API سرویس بک‌اند',
explanation: 'به راحتی در برنامه خود یکپارچه می‌شود',
accessibleAddress: 'نقطه پایانی سرویس API',
doc: 'مرجع API',
},
status: {
running: 'در حال سرویس‌دهی',
disable: 'غیرفعال',
},
triggerInfo: {
title: 'محرک‌ها',
explanation: 'مدیریت فعال‌سازی جریان کاری',
triggersAdded: '{{count}} محرک‌ها اضافه شدند',
noTriggerAdded: 'هیچ ماشه‌ای افزوده نشده است',
triggerStatusDescription: 'وضعیت گره تریگر در اینجا نمایش داده می‌شود. (ممکن است قبلاً در پیش‌نویس وجود داشته باشد، پس از انتشار اعمال می‌شود)',
learnAboutTriggers: 'با محرک‌ها آشنا شوید',
},
disableTooltip: {
triggerMode: 'ویژگی {{feature}} در حالت گره تریگر پشتیبانی نمی‌شود.',
},
},
analysis: {
title: 'تحلیل',
ms: 'میلی‌ثانیه',
tokenPS: 'توکن/ثانیه',
totalMessages: {
title: 'کل پیام‌ها',
explanation: 'تعداد تعاملات روزانه با هوش مصنوعی.',
},
totalConversations: {
title: 'کل مکالمات',
explanation: 'تعداد مکالمات روزانه با هوش مصنوعی؛ مهندسی/اشکال‌زدایی پرامپت مستثنی است.',
},
activeUsers: {
title: 'کاربران فعال',
explanation: 'کاربران منحصر به فردی که در پرسش و پاسخ با AI شرکت می‌کنند؛ مهندسی/اشکال‌زدایی دستورات مستثنی هستند.',
},
tokenUsage: {
title: 'استفاده از توکن',
explanation: 'مصرف روزانه توکن‌های مدل زبان برای برنامه را نشان می‌دهد، که برای کنترل هزینه‌ها مفید است.',
consumed: 'مصرف‌شده',
},
avgSessionInteractions: {
title: 'میانگین تعاملات جلسه',
explanation: 'تعداد تعاملات پیوسته کاربر-AI؛ برای برنامه‌های مبتنی بر گفتگو.',
},
avgUserInteractions: {
title: 'میانگین تعاملات کاربران',
explanation: 'تکرار استفاده روزانه کاربران را نشان می‌دهد. این معیار چسبندگی کاربران را نشان می‌دهد.',
},
userSatisfactionRate: {
title: 'نرخ رضایت کاربران',
explanation: 'تعداد لایک‌ها به ازای هر ۱۰۰۰ پیام. این نشان‌دهنده نسبت پاسخ‌هایی است که کاربران به شدت رضایت دارند.',
},
avgResponseTime: {
title: 'میانگین زمان پاسخ',
explanation: 'زمان (میلی‌ثانیه) برای پردازش/پاسخ AI؛ برای برنامه‌های مبتنی بر متن.',
},
tps: {
title: 'سرعت خروجی توکن',
explanation: 'عملکرد مدل زبان بزرگ را اندازه‌گیری می‌کند. سرعت خروجی توکن‌های مدل زبان بزرگ از آغاز درخواست تا تکمیل خروجی را بشمارید.',
},
},
}
export default translation

349
dify/web/i18n/fa-IR/app.ts Normal file
View File

@@ -0,0 +1,349 @@
const translation = {
createApp: 'ایجاد برنامه',
types: {
all: 'همه',
chatbot: 'چت‌بات',
agent: 'نماینده',
workflow: 'گردش کار',
completion: 'تکمیل',
basic: 'اساسی',
advanced: 'چت‌فلو',
},
duplicate: 'تکرار',
duplicateTitle: 'تکرار برنامه',
export: 'صادر کردن DSL',
exportFailed: 'صادر کردن DSL ناموفق بود.',
importDSL: 'وارد کردن فایل DSL',
createFromConfigFile: 'ایجاد از فایل DSL',
importFromDSL: 'وارد کردن از DSL',
importFromDSLFile: 'از فایل DSL',
importFromDSLUrl: 'از URL',
importFromDSLUrlPlaceholder: 'لینک DSL را اینجا بچسبانید',
dslUploader: {
button: 'فایل را بکشید و رها کنید، یا',
browse: 'مرور',
},
deleteAppConfirmTitle: 'آیا این برنامه حذف شود؟',
deleteAppConfirmContent:
'حذف برنامه غیرقابل برگشت است. کاربران دیگر قادر به دسترسی به برنامه شما نخواهند بود و تمام تنظیمات و گزارشات درخواست‌ها به صورت دائم حذف خواهند شد.',
appDeleted: 'برنامه حذف شد',
appDeleteFailed: 'حذف برنامه ناموفق بود',
join: 'پیوستن به جامعه',
communityIntro:
'در کانال‌های مختلف با اعضای تیم، مشارکت‌کنندگان و توسعه‌دهندگان بحث کنید.',
roadmap: 'نقشه راه ما را ببینید',
newApp: {
startFromBlank: 'ایجاد از خالی',
startFromTemplate: 'ایجاد از قالب',
workflowWarning: 'در حال حاضر در نسخه بتا',
captionName: 'آیکون و نام برنامه',
appNamePlaceholder: 'به برنامه خود یک نام بدهید',
captionDescription: 'توضیحات',
appDescriptionPlaceholder: 'توضیحات برنامه را وارد کنید',
useTemplate: 'استفاده از این قالب',
previewDemo: 'پیش‌نمایش دمو',
chatApp: 'دستیار',
chatAppIntro:
'می‌خواهم یک برنامه مبتنی بر چت بسازم. این برنامه از قالب پرسش و پاسخ استفاده می‌کند و امکان چندین دور مکالمه مداوم را فراهم می‌کند.',
agentAssistant: 'دستیار نماینده جدید',
completeApp: 'تولید کننده متن',
completeAppIntro:
'می‌خواهم برنامه‌ای بسازم که متن با کیفیت بالا بر اساس درخواست‌ها تولید کند، مانند تولید مقالات، خلاصه‌ها، ترجمه‌ها و بیشتر.',
showTemplates: 'می‌خواهم از یک قالب انتخاب کنم',
hideTemplates: 'بازگشت به انتخاب حالت',
Create: 'ایجاد',
Cancel: 'لغو',
nameNotEmpty: 'نام نمی‌تواند خالی باشد',
appTemplateNotSelected: 'لطفاً یک قالب انتخاب کنید',
appTypeRequired: 'لطفاً نوع برنامه را انتخاب کنید',
appCreated: 'برنامه ایجاد شد',
appCreateFailed: 'ایجاد برنامه ناموفق بود',
Confirm: 'تایید',
appCreateDSLErrorTitle: 'ناسازگاری نسخه',
caution: 'احتیاط',
appCreateDSLErrorPart3: 'نسخه DSL برنامه فعلی:',
appCreateDSLErrorPart2: 'آیا می خواهید ادامه دهید؟',
appCreateDSLErrorPart4: 'نسخه DSL پشتیبانی شده توسط سیستم:',
appCreateDSLErrorPart1: 'تفاوت قابل توجهی در نسخه های DSL مشاهده شده است. اجبار به واردات ممکن است باعث اختلال در عملکرد برنامه شود.',
appCreateDSLWarning: 'احتیاط: تفاوت نسخه DSL ممکن است بر ویژگی های خاصی تأثیر بگذارد',
completionShortDescription: 'دستیار هوش مصنوعی برای تسک های تولید متن',
foundResult: '{{count}} نتیجه',
chatbotUserDescription: 'به سرعت یک چت بات مبتنی بر LLM با پیکربندی ساده بسازید. بعدا می توانید به Chatflow بروید.',
chooseAppType: 'انتخاب نوع برنامه',
foundResults: '{{count}} نتیجه',
noIdeaTip: 'ایده ای ندارید؟ قالب های ما را بررسی کنید',
forBeginners: 'انواع برنامه‌های پایه‌تر',
noAppsFound: 'هیچ برنامه ای یافت نشد',
chatbotShortDescription: 'چت بات مبتنی بر LLM با راه اندازی ساده',
optional: 'اختیاری',
learnMore: 'بیشتر بدانید',
agentShortDescription: 'عامل هوشمند با استدلال و استفاده از ابزار مستقل',
noTemplateFoundTip: 'سعی کنید با استفاده از کلمات کلیدی مختلف جستجو کنید.',
noTemplateFound: 'هیچ الگویی یافت نشد',
forAdvanced: 'برای کاربران پیشرفته',
workflowShortDescription: 'جریان عاملی برای اتوماسیون‌های هوشمند',
workflowUserDescription: 'ساخت بصری گردش‌کارهای خودکار هوش مصنوعی با سادگی کشیدن و رها کردن',
advancedUserDescription: 'گردش‌کار با ویژگی‌های حافظه اضافی و رابط چت‌بات',
completionUserDescription: 'به سرعت یک دستیار هوش مصنوعی برای وظایف تولید متن با پیکربندی ساده بسازید.',
advancedShortDescription: 'گردش‌کار پیشرفته برای گفتگوهای چند مرحله‌ای',
agentUserDescription: 'یک عامل هوشمند که قادر به استدلال تکراری و استفاده از ابزار مستقل برای دستیابی به اهداف وظیفه است.',
dropDSLToCreateApp: 'فایل DSL را اینجا رها کنید تا برنامه ساخته شود',
import: 'واردات',
},
editApp: 'ویرایش اطلاعات',
editAppTitle: 'ویرایش اطلاعات برنامه',
editDone: 'اطلاعات برنامه به‌روزرسانی شد',
editFailed: 'به‌روزرسانی اطلاعات برنامه ناموفق بود',
iconPicker: {
ok: 'باشه',
cancel: 'لغو',
emoji: 'ایموجی',
image: 'تصویر',
},
switch: 'تغییر به سازماندهی گردش کار',
switchTipStart: 'یک نسخه جدید از برنامه برای شما ایجاد خواهد شد و نسخه جدید به سازماندهی گردش کار تغییر خواهد کرد. نسخه جدید ',
switchTip: 'اجازه نمی‌دهد',
switchTipEnd: ' تغییر به سازماندهی اساسی بازگردد.',
switchLabel: 'نسخه برنامه که ایجاد می‌شود',
removeOriginal: 'حذف برنامه اصلی',
switchStart: 'شروع تغییر',
typeSelector: {
all: 'همه انواع',
chatbot: 'چت‌بات',
agent: 'نماینده',
workflow: 'گردش کار',
completion: 'تکمیل',
advanced: 'چت‌فلو',
},
tracing: {
title: 'ردیابی عملکرد برنامه',
description: 'پیکربندی ارائه‌دهنده شخص ثالث LLMOps و ردیابی عملکرد برنامه.',
config: 'پیکربندی',
collapse: 'بستن',
expand: 'باز کردن',
tracing: 'ردیابی',
disabled: 'غیرفعال',
disabledTip: 'لطفاً ابتدا ارائه‌دهنده را پیکربندی کنید',
enabled: 'در حال خدمت',
tracingDescription: 'ثبت کامل متن اجرای برنامه، از جمله تماس‌های LLM، متن، درخواست‌های HTTP و بیشتر، به یک پلتفرم ردیابی شخص ثالث.',
configProviderTitle: {
configured: 'پیکربندی شده',
notConfigured: 'برای فعال‌سازی ردیابی ارائه‌دهنده را پیکربندی کنید',
moreProvider: 'ارائه‌دهندگان بیشتر',
},
arize: {
title: 'Arize',
description: 'قابلیت مشاهده LLM در سطح سازمانی، ارزیابی آنلاین و آفلاین، نظارت و آزمایش — با پشتیبانی از OpenTelemetry. طراحی‌شده مخصوص برنامه‌های مبتنی بر LLM و عامل‌ها.',
},
phoenix: {
title: 'Phoenix',
description: 'پلتفرم متن‌باز و مبتنی بر OpenTelemetry برای مشاهده‌پذیری، ارزیابی، مهندسی پرامپت و آزمایش برای جریان‌های کاری و عامل‌های LLM شما.',
},
langsmith: {
title: 'LangSmith',
description: 'یک پلتفرم همه‌کاره برای هر مرحله از چرخه عمر برنامه‌های مبتنی بر LLM.',
},
langfuse: {
title: 'Langfuse',
description: 'ردیابی، ارزیابی، مدیریت درخواست‌ها و معیارها برای رفع اشکال و بهبود برنامه LLM شما.',
},
inUse: 'در حال استفاده',
configProvider: {
title: 'پیکربندی',
placeholder: 'کلید {{key}} خود را وارد کنید',
project: 'پروژه',
publicKey: 'کلید عمومی',
secretKey: 'کلید محرمانه',
viewDocsLink: 'مشاهده مستندات {{key}}',
removeConfirmTitle: 'حذف پیکربندی {{key}}؟',
removeConfirmContent: 'پیکربندی فعلی در حال استفاده است، حذف آن ویژگی ردیابی را غیرفعال خواهد کرد.',
clientId: 'شناسه مشتری OAuth',
username: 'نام کاربری',
password: 'رمز عبور',
experimentId: 'شناسه آزمایش',
personalAccessToken: 'نشانه دسترسی شخصی (قدیمی)',
databricksHost: 'نشانی اینترنتی محیط کاری دیتابریکس',
trackingUri: 'آدرس URI ردیابی',
clientSecret: 'رمز مخفی مشتری OAuth',
},
view: 'مشاهده',
opik: {
title: 'اوپیک',
description: 'Opik یک پلت فرم منبع باز برای ارزیابی، آزمایش و نظارت بر برنامه های LLM است.',
},
weave: {
title: 'بافندگی',
description: 'ویو یک پلتفرم متن باز برای ارزیابی، آزمایش و نظارت بر برنامه‌های LLM است.',
},
aliyun: {
title: 'نظارت بر ابر',
description: 'پلتفرم مشاهده‌پذیری کاملاً مدیریت‌شده و بدون نیاز به نگهداری که توسط Alibaba Cloud ارائه شده، امکان نظارت، ردیابی و ارزیابی برنامه‌های Dify را به‌صورت آماده و با تنظیمات اولیه فراهم می‌کند.',
},
mlflow: {
title: 'MLflow',
description: 'پلتفرم LLMOps متن‌باز برای ردیابی آزمایش‌ها، مشاهده‌پذیری و ارزیابی، برای ساخت برنامه‌های AI/LLM با اطمینان.',
},
databricks: {
title: 'Databricks',
description: 'Databricks MLflow کاملاً مدیریت‌شده با حکمرانی و امنیت قوی برای ذخیره‌سازی داده‌های ردیابی ارائه می‌دهد.',
},
tencent: {
title: 'تنست ای‌پی‌ام',
description: 'نظارت بر عملکرد برنامه‌های Tencent تحلیل‌های جامع و ردیابی چندبعدی برای برنامه‌های LLM ارائه می‌دهد.',
},
},
answerIcon: {
descriptionInExplore: 'آیا از نماد web app برای جایگزینی 🤖 در Explore استفاده کنیم یا خیر',
description: 'آیا از نماد web app برای جایگزینی 🤖 در برنامه مشترک استفاده کنیم یا خیر',
title: 'از نماد web app برای جایگزینی 🤖 استفاده کنید',
},
mermaid: {
handDrawn: 'دست کشیده شده',
classic: 'کلاسیک',
},
openInExplore: 'باز کردن در کاوش',
newAppFromTemplate: {
sidebar: {
Agent: 'عامل',
Programming: 'برنامه نویسی',
Recommended: 'توصیه',
Assistant: 'دستیار',
Workflow: 'گردش',
HR: 'ساعت',
Writing: 'نوشتن',
},
byCategories: 'بر اساس دسته بندی ها',
searchAllTemplate: 'همه قالب ها را جستجو کنید...',
},
showMyCreatedAppsOnly: 'فقط برنامه‌های ایجاد شده توسط من را نشان بده',
appSelector: {
params: 'پارامترهای برنامه',
noParams: 'بدون پارامتر مورد نیاز است',
label: 'برنامه',
placeholder: 'برنامه ای را انتخاب کنید...',
},
structOutput: {
required: 'ضروری',
modelNotSupported: 'مدل پشتیبانی نمی شود',
notConfiguredTip: 'خروجی ساختاری هنوز تنظیم نشده است',
structured: 'ساختار یافته',
configure: 'تنظیمات',
moreFillTip: 'نمایش حداکثر ۱۰ سطح تو در تو',
LLMResponse: 'پاسخ مدل زبان بزرگ',
modelNotSupportedTip: 'مدل فعلی این ویژگی را پشتیبانی نمی‌کند و به‌طور خودکار به تزریق درخواست تنزل پیدا می‌کند.',
structuredTip: 'خروجی‌های ساختاری یک ویژگی است که تضمین می‌کند مدل همیشه پاسخ‌هایی تولید می‌کند که به طرح JSON ارائه شده شما پایبند باشد.',
},
accessItemsDescription: {
specific: 'فقط گروه‌ها یا اعضای خاصی می‌توانند به اپلیکیشن وب دسترسی پیدا کنند.',
anyone: 'هر کسی می‌تواند به وب‌اپلیکیشن دسترسی پیدا کند',
organization: 'هر کسی در سازمان می‌تواند به اپلیکیشن وب دسترسی پیدا کند.',
external: 'تنها کاربران خارجی تأیید شده می‌توانند به برنامه وب دسترسی پیدا کنند.',
},
accessControlDialog: {
accessItems: {
specific: 'گروه‌ها یا اعضای خاص',
organization: 'فقط اعضای داخل سازمان',
anyone: 'هر کسی که لینک را داشته باشد',
external: 'کاربران خارجی تأیید شده',
},
operateGroupAndMember: {
searchPlaceholder: 'گروه‌ها و اعضا را جستجو کنید',
allMembers: 'تمام اعضا',
noResult: 'نتیجه‌ای نیست',
expand: 'گسترش',
},
description: 'مجوزهای دسترسی به برنامه وب را تنظیم کنید',
accessLabel: 'چه کسی به آن دسترسی دارد',
groups_one: '{{count}} گروه',
groups_other: '{{count}} گروه',
members_one: '{{count}} عضو',
members_other: '{{count}} عضو',
noGroupsOrMembers: 'هیچ گروه یا عضوی انتخاب نشده است',
title: 'کنترل دسترسی به وب اپلیکیشن',
updateSuccess: 'به‌روز رسانی با موفقیت انجام شد',
webAppSSONotEnabledTip: 'لطفاً با مدیر شرکت تماس بگیرید تا روش احراز هویت برنامه وب را پیکربندی کند.',
},
publishApp: {
notSet: 'تنظیم نشده است',
notSetDesc: 'در حال حاضر هیچ‌کس نمی‌تواند به برنامه وب دسترسی پیدا کند. لطفاً مجوزها را تنظیم کنید.',
title: 'چه کسی می‌تواند به برنامه وب دسترسی داشته باشد؟',
},
accessControl: 'کنترل دسترسی به وب اپلیکیشن',
noAccessPermission: 'دسترسی به برنامه وب مجاز نیست',
maxActiveRequests: 'بیشترین درخواست‌های همزمان',
maxActiveRequestsPlaceholder: 'برای نامحدود، 0 را وارد کنید',
maxActiveRequestsTip: 'حداکثر تعداد درخواست‌های فعال همزمان در هر برنامه (0 برای نامحدود)',
gotoAnything: {
actions: {
searchPlugins: 'جستجوی افزونه ها',
searchWorkflowNodes: 'جستجوی گره های گردش کار',
searchApplications: 'جستجوی برنامه ها',
searchKnowledgeBases: 'جستجو در پایگاه های دانش',
searchWorkflowNodesHelp: 'این ویژگی فقط هنگام مشاهده گردش کار کار می کند. ابتدا به گردش کار بروید.',
searchApplicationsDesc: 'جستجو و پیمایش به برنامه های خود',
searchKnowledgeBasesDesc: 'پایگاه های دانش خود را جستجو کرده و به آن ناوبری کنید',
searchPluginsDesc: 'افزونه های خود را جستجو کرده و به آنها پیمایش کنید',
searchWorkflowNodesDesc: 'گره ها را در گردش کار فعلی بر اساس نام یا نوع پیدا کنید و به آنها بروید',
themeCategoryTitle: 'تم',
languageCategoryTitle: 'زبان',
runTitle: 'دستورات',
themeSystem: 'تم سیستم',
themeLight: 'تم روشن',
themeDark: 'تم تاریک',
languageCategoryDesc: 'زبان رابط را تغییر دهید',
themeCategoryDesc: 'تغییر تم برنامه',
themeDarkDesc: 'از ظاهر تیره استفاده کنید',
themeLightDesc: 'از ظاهر روشن استفاده کنید',
languageChangeDesc: 'زبان رابط کاربری را تغییر دهید',
themeSystemDesc: 'به ظاهر سیستم‌عامل خود پایبند باشید',
runDesc: 'دستورات سریع اجرا کنید (موضوع، زبان، ...)',
slashDesc: 'دستورات را مانند /theme، /lang اجرا کنید',
feedbackDesc: 'بحث‌های باز بازخورد جامعه',
accountDesc: 'به صفحه حساب کاربری بروید',
communityDesc: 'جامعه دیسکورد باز',
docDesc: 'مستندات کمک را باز کنید',
},
emptyState: {
noKnowledgeBasesFound: 'هیچ پایگاه دانش یافت نشد',
noAppsFound: 'هیچ برنامه ای یافت نشد',
noPluginsFound: 'هیچ افزونه ای یافت نشد',
noWorkflowNodesFound: 'هیچ گره گردش کاری یافت نشد',
tryDifferentTerm: 'یک عبارت جستجوی متفاوت را امتحان کنید یا فیلتر {{mode}} را حذف کنید',
trySpecificSearch: '{{shortcuts}} را برای جستجوهای خاص امتحان کنید',
},
groups: {
plugins: 'پلاگین',
apps: 'برنامه‌ها',
knowledgeBases: 'پایگاه های دانش',
workflowNodes: 'گره های گردش کار',
commands: 'دستورات',
},
searching: 'جستجو...',
searchFailed: 'جستجو انجام نشد',
useAtForSpecific: 'از @ برای انواع خاص استفاده کنید',
clearToSearchAll: 'پاک کردن @ برای جستجوی همه',
noResults: 'هیچ نتیجه ای یافت نشد',
searchTitle: 'هر چیزی را جستجو کنید',
searchPlaceholder: 'جستجو یا تایپ @ برای دستورات...',
searchTemporarilyUnavailable: 'جستجو به طور موقت در دسترس نیست',
servicesUnavailableMessage: 'برخی از سرویس های جستجو ممکن است با مشکل مواجه شوند. یک لحظه دیگر دوباره امتحان کنید.',
someServicesUnavailable: 'برخی از سرویس های جستجو دردسترس نیستند',
selectSearchType: 'انتخاب کنید چه چیزی را جستجو کنید',
commandHint: '@ را برای مرور بر اساس دسته بندی تایپ کنید',
searchHint: 'شروع به تایپ کنید تا فورا همه چیز را جستجو کنید',
resultCount: '{{count}} نتیجه',
resultCount_other: '{{count}} نتیجه',
inScope: 'در {{scope}}s',
noMatchingCommands: 'هیچ دستوری منطبق یافت نشد',
tryDifferentSearch: 'عبارت جستجوی دیگری را امتحان کنید',
slashHint: 'برای مشاهده تمام دستورات موجود / را تایپ کنید',
startTyping: 'برای جستجو شروع به تایپ کنید',
selectToNavigate: 'انتخاب کنید تا برای حرکت',
pressEscToClose: 'برای بستن ESC را فشار دهید',
tips: 'برای حرکت به بالا و پایین کلیدهای ↑ و ↓ را فشار دهید',
},
noUserInputNode: 'ورودی کاربر پیدا نشد',
notPublishedYet: 'اپ هنوز منتشر نشده است',
}
export default translation

View File

@@ -0,0 +1,203 @@
const translation = {
currentPlan: 'طرح فعلی',
upgradeBtn: {
plain: 'ارتقاء طرح',
encourage: 'هم اکنون ارتقاء دهید',
encourageShort: 'ارتقاء دهید',
},
viewBilling: 'مدیریت صورتحساب‌ها و اشتراک‌ها',
buyPermissionDeniedTip: 'لطفاً با مدیر سازمان خود تماس بگیرید تا اشتراک تهیه کنید',
plansCommon: {
yearlyTip: 'با اشتراک سالانه 2 ماه رایگان دریافت کنید!',
mostPopular: 'محبوب‌ترین',
planRange: {
monthly: 'ماهانه',
yearly: 'سالانه',
},
month: 'ماه',
year: 'سال',
save: 'صرفه‌جویی کنید ',
free: 'رایگان',
currentPlan: 'طرح فعلی',
contractSales: 'تماس با فروش',
contractOwner: 'تماس با مدیر تیم',
startForFree: 'رایگان شروع کنید',
contactSales: 'تماس با فروش',
talkToSales: 'صحبت با فروش',
modelProviders: 'ارائه‌دهندگان مدل',
annotationQuota: 'سهمیه حاشیه‌نویسی',
buildApps: 'ساخت اپلیکیشن‌ها',
vectorSpace: 'فضای وکتور',
vectorSpaceTooltip: 'فضای وکتور سیستم حافظه بلند مدت است که برای درک داده‌های شما توسط LLMها مورد نیاز است.',
documentProcessingPriority: 'اولویت پردازش مستندات',
documentProcessingPriorityUpgrade: 'داده‌های بیشتری را با دقت بالاتر و سرعت بیشتر پردازش کنید.',
priority: {
'standard': 'استاندارد',
'priority': 'اولویت',
'top-priority': 'اولویت بالا',
},
logsHistory: 'تاریخچه گزارشات',
customTools: 'ابزارهای سفارشی',
unavailable: 'غیرقابل دسترس',
days: 'روز',
unlimited: 'نامحدود',
support: 'پشتیبانی',
supportItems: {
communityForums: 'انجمن‌های اجتماعی',
emailSupport: 'پشتیبانی ایمیل',
priorityEmail: 'پشتیبانی ایمیل و چت با اولویت',
logoChange: 'تغییر لوگو',
SSOAuthentication: 'تأیید هویت SSO',
personalizedSupport: 'پشتیبانی شخصی‌سازی شده',
dedicatedAPISupport: 'پشتیبانی API اختصاصی',
customIntegration: 'یکپارچه‌سازی و پشتیبانی سفارشی',
ragAPIRequest: 'درخواست‌های API RAG',
bulkUpload: 'بارگذاری دسته‌ای مستندات',
agentMode: 'حالت Agent',
workflow: 'جریان کار',
llmLoadingBalancing: 'توزیع بار LLM',
llmLoadingBalancingTooltip: 'اضافه کردن چندین کلید API به مدل‌ها، به طور مؤثر از محدودیت‌های نرخ API عبور می‌کند.',
},
comingSoon: 'به زودی',
member: 'عضو',
memberAfter: 'عضو',
messageRequest: {
title: 'اعتبارات پیام',
tooltip: 'سهمیه‌های فراخوانی پیام برای طرح‌های مختلف با استفاده از مدل‌های OpenAI (به جز gpt4). پیام‌های بیش از حد محدودیت از کلید API OpenAI شما استفاده می‌کنند.',
titlePerMonth: '{{count,number}} پیام در ماه',
},
annotatedResponse: {
title: 'محدودیت‌های سهمیه حاشیه‌نویسی',
tooltip: 'ویرایش دستی و حاشیه‌نویسی پاسخ‌ها، قابلیت‌های پرسش و پاسخ با کیفیت بالا و قابل تنظیم برای اپلیکیشن‌ها را فراهم می‌کند. (فقط در اپلیکیشن‌های چت اعمال می‌شود)',
},
ragAPIRequestTooltip: 'به تعداد درخواست‌های API که فقط قابلیت‌های پردازش پایگاه دانش Dify را فراخوانی می‌کنند اشاره دارد.',
receiptInfo: 'فقط صاحب تیم و مدیر تیم می‌توانند اشتراک تهیه کنند و اطلاعات صورتحساب را مشاهده کنند',
apiRateLimitUnit: '{{count,number}}',
cloud: 'سرویس ابری',
documents: '{{count,number}} سندهای دانش',
self: 'خود میزبان',
apiRateLimit: 'محدودیت نرخ API',
annualBilling: 'صورتحساب سالانه',
freeTrialTip: 'آزمایش رایگان ۲۰۰ تماس OpenAI.',
teamMember_other: '{{count,number}} اعضای تیم',
unlimitedApiRate: 'هیچ محدودیتی برای نرخ API وجود ندارد.',
freeTrialTipPrefix: 'ثبت‌نام کنید و یک',
comparePlanAndFeatures: 'طرح ها و ویژگی ها را مقایسه کنید',
teamMember_one: '{{count,number}} عضو تیم',
priceTip: 'برای هر محیط کار/',
documentsTooltip: 'حجم مستندات وارد شده از منبع داده‌های دانش.',
freeTrialTipSuffix: 'نیاز به کارت اعتباری نیست',
teamWorkspace: '{{count,number}} فضاي کار تيمي',
getStarted: 'شروع کنید',
documentsRequestQuota: '{{count,number}}/دقیقه محدودیت نرخ درخواست دانش',
apiRateLimitTooltip: 'محدودیت نرخ API برای همه درخواست‌های انجام شده از طریق API Dify اعمال می‌شود، از جمله تولید متن، محاوره‌های چت، اجرای گردش‌های کار و پردازش اسناد.',
documentsRequestQuotaTooltip: 'تعیین می‌کند که تعداد کلی اقداماتی که یک فضای کاری می‌تواند در هر دقیقه در داخل پایگاه دانش انجام دهد، شامل ایجاد مجموعه داده، حذف، به‌روزرسانی، بارگذاری مستندات، تغییرات، بایگانی و پرسش از پایگاه دانش است. این معیار برای ارزیابی عملکرد درخواست‌های پایگاه دانش استفاده می‌شود. به عنوان مثال، اگر یک کاربر Sandbox در طی یک دقیقه 10 آزمایش متوالی انجام دهد، فضای کاری او به طور موقت از انجام اقدامات زیر در دقیقه بعدی محدود خواهد شد: ایجاد مجموعه داده، حذف، به‌روزرسانی و بارگذاری یا تغییر مستندات.',
startBuilding: 'شروع به ساخت کنید',
taxTip: 'تمام قیمت‌های اشتراک (ماهانه/سالانه) شامل مالیات‌های مربوطه (مثلاً مالیات بر ارزش افزوده، مالیات فروش) نمی‌شوند.',
taxTipSecond: 'اگر منطقه شما هیچ الزامات مالیاتی قابل اجرا نداشته باشد، هیچ مالیاتی در هنگام پرداخت نشان داده نمی‌شود و برای کل مدت اشتراک هیچ هزینه اضافی از شما دریافت نخواهد شد.',
triggerEvents: {
unlimited: 'رویدادهای ماشه‌ای نامحدود',
tooltip: 'تعداد رویدادهایی که به‌طور خودکار گردش‌های کاری را از طریق افزونه، برنامه‌زمان‌بندی یا ماشه‌های وب‌هوک آغاز می‌کنند.',
sandbox: '{{count,number}} رویدادهای محرک',
professional: '{{count,number}} رویدادهای فعال‌سازی/ماه',
},
workflowExecution: {
faster: 'اجرای سریع‌تر جریان کاری',
priority: 'اجرای جریان کاری اولویت‌دار',
standard: 'اجرای جریان کاری استاندارد',
tooltip: 'اولویت و سرعت صف اجرای گردش کار.',
},
startNodes: {
unlimited: 'راه‌اندازی/فرآیندهای نامحدود',
limited: 'تا {{count}} محرک/جریان‌کاری',
},
title: {
plans: 'طرح‌ها',
description: 'برنامه‌ای را انتخاب کنید که بهترین تناسب را با نیازهای تیم شما دارد.',
},
},
plans: {
sandbox: {
name: 'محیط آزمایشی',
description: '200 بار آزمایش رایگان GPT',
for: 'دوره آزمایشی رایگان قابلیت‌های اصلی',
},
professional: {
name: 'حرفه‌ای',
description: 'برای افراد و تیم‌های کوچک برای باز کردن قدرت بیشتر به طور مقرون به صرفه.',
for: 'برای توسعه‌دهندگان مستقل/تیم‌های کوچک',
},
team: {
name: 'تیم',
description: 'همکاری بدون محدودیت و لذت بردن از عملکرد برتر.',
for: 'برای تیم‌های متوسط',
},
enterprise: {
name: 'سازمانی',
description: 'دریافت کامل‌ترین قابلیت‌ها و پشتیبانی برای سیستم‌های بزرگ و بحرانی.',
includesTitle: 'همه چیز در طرح تیم، به علاوه:',
price: 'سفارشی',
btnText: 'تماس با فروش',
for: 'برای تیم‌های بزرگ',
priceTip: 'فقط صورتحساب سالیانه',
features: ['راه‌حل‌های مستقرسازی مقیاس‌پذیر با سطح سازمانی', 'مجوز استفاده تجاری', 'ویژگی‌های اختصاصی سازمانی', 'چند فضای کاری و مدیریت سازمانی', 'ورود یکپارچه', 'توافق‌نامه‌های سطح خدمات مذاکره شده توسط شرکای Dify', 'امنیت و کنترل‌های پیشرفته', 'به‌روزرسانی‌ها و نگهداری به‌طور رسمی توسط دیفی', 'پشتیبانی فنی حرفه‌ای'],
},
community: {
btnText: 'شروع کنید با جامعه',
price: 'رایگان',
includesTitle: 'ویژگی‌های رایگان:',
description: 'برای کاربران فردی، تیم‌های کوچک یا پروژه‌های غیر تجاری',
name: 'جامعه',
for: 'برای کاربران فردی، تیم‌های کوچک یا پروژه‌های غیر تجاری',
features: ['تمام ویژگی‌های اصلی تحت مخزن عمومی منتشر شدند', 'فضای کاری تنها', 'مطابق با مجوز متن باز Dify'],
},
premium: {
btnText: 'گرفتن نسخه پریمیوم در',
description: 'برای سازمان‌ها و تیم‌های میان‌رده',
price: 'قابل گسترش',
includesTitle: 'همه چیز از جامعه، به علاوه:',
for: 'برای سازمان‌ها و تیم‌های میان‌رده',
name: 'پیشرفته',
priceTip: 'بر اساس بازار ابری',
comingSoon: 'پشتیبانی مایکروسافت آژور و گوگل کلود به زودی در دسترس خواهد بود',
features: ['قابلیت اطمینان خودمدیریتی توسط ارائه‌دهندگان مختلف ابری', 'فضای کاری تنها', 'سفارشی‌سازی لوگو و برندینگ وب‌اپ', 'پشتیبانی اولویت‌دار ایمیل و چت'],
},
},
vectorSpace: {
fullTip: 'فضای وکتور پر است.',
fullSolution: 'طرح خود را ارتقاء دهید تا فضای بیشتری دریافت کنید.',
},
apps: {
fullTip2: 'محدودیت طرح به پایان رسید',
contactUs: 'با ما تماس بگیرید',
fullTip1: 'به‌روزرسانی کنید تا برنامه‌های بیشتری ایجاد کنید',
fullTip1des: 'شما به محدودیت ساخت برنامه‌ها در این طرح رسیده‌اید',
fullTip2des: 'توصیه می‌شود برنامه‌های غیرفعال را پاک کنید تا فضای استفاده را آزاد کنید، یا با ما تماس بگیرید.',
},
annotatedResponse: {
fullTipLine1: 'طرح خود را ارتقاء دهید تا',
fullTipLine2: 'مکالمات بیشتری را حاشیه‌نویسی کنید.',
quotaTitle: 'سهمیه پاسخ حاشیه‌نویسی',
},
usagePage: {
documentsUploadQuota: 'حجم بارگذاری اسناد',
vectorSpace: 'ذخیره‌سازی داده‌های دانش',
teamMembers: 'اعضای تیم',
annotationQuota: 'سهام حاشیه',
buildApps: 'ساخت برنامه ها',
vectorSpaceTooltip: 'سندهایی که با حالت نمایه‌سازی با کیفیت بالا تهیه می‌شوند، منابع ذخیره‌سازی داده‌های دانش را مصرف خواهند کرد. زمانی که ذخیره‌سازی داده‌های دانش به حد خود برسد، اسناد جدید بارگزاری نخواهند شد.',
perMonth: 'در ماه',
triggerEvents: 'رویدادهای محرک',
resetsIn: 'در {{count,number}} روز بازنشانی می‌شود',
},
teamMembers: 'اعضای تیم',
triggerLimitModal: {
upgrade: 'ارتقا',
description: 'شما به حد مجاز تریگرهای رویداد گردش کار برای این طرح رسیده‌اید.',
dismiss: 'رد کردن',
title: 'ارتقا دهید تا رویدادهای محرک بیشتری باز شود',
usageTitle: 'رویدادهای محرک',
},
}
export default translation

View File

@@ -0,0 +1,788 @@
const translation = {
api: {
success: 'موفقیت',
actionSuccess: 'عملیات موفق',
saved: 'ذخیره شد',
create: 'ایجاد شد',
remove: 'حذف شد',
},
operation: {
create: 'ایجاد',
confirm: 'تایید',
cancel: 'لغو',
clear: 'پاک کردن',
save: 'ذخیره',
saveAndEnable: 'ذخیره و فعال سازی',
edit: 'ویرایش',
add: 'افزودن',
added: 'اضافه شد',
refresh: 'شروع مجدد',
reset: 'بازنشانی',
search: 'جستجو',
change: 'تغییر',
remove: 'حذف',
send: 'ارسال',
copy: 'کپی',
lineBreak: 'خط جدید',
sure: 'مطمئن هستم',
download: 'دانلود',
delete: 'حذف',
settings: 'تنظیمات',
setup: 'راه اندازی',
getForFree: 'دریافت رایگان',
reload: 'بارگذاری مجدد',
ok: 'تایید',
log: 'گزارش',
learnMore: 'اطلاعات بیشتر',
params: 'پارامترها',
duplicate: 'تکرار',
rename: 'تغییر نام',
audioSourceUnavailable: 'منبع صوتی در دسترس نیست',
zoomIn: 'بزرگنمایی',
copyImage: 'کپی تصویر',
openInNewTab: 'باز کردن در برگه جدید',
zoomOut: 'کوچک نمایی',
close: 'نزدیک',
regenerate: 'بازسازی',
view: 'مشاهده',
viewMore: 'بیشتر ببینید',
saveAndRegenerate: 'ذخیره و بازسازی تکه های فرزند',
submit: 'ارسال',
skip: 'کشتی',
imageCopied: 'تصویر کپی شده',
deleteApp: 'حذف برنامه',
copied: 'کپی',
viewDetails: 'دیدن جزئیات',
in: 'در',
downloadFailed: 'دانلود ناموفق بود. لطفاً بعداً دوباره تلاش کنید.',
more: 'بیشتر',
format: 'قالب',
downloadSuccess: 'دانلود کامل شد.',
selectAll: 'انتخاب همه',
deSelectAll: 'همه را انتخاب نکنید',
config: 'تنظیمات',
no: 'نه',
deleteConfirmTitle: 'حذف شود؟',
yes: 'بله',
confirmAction: 'لطفاً اقدام خود را تأیید کنید.',
noSearchResults: 'هیچ {{content}} یافت نشد',
resetKeywords: 'بازنشانی کلمات کلیدی',
selectCount: '{{count}} انتخاب شد',
searchCount: 'یافتن {{count}} {{content}}',
noSearchCount: '0 {{content}}',
now: 'الان',
},
errorMsg: {
fieldRequired: '{{field}} الزامی است',
urlError: 'آدرس باید با http:// یا https:// شروع شود',
},
placeholder: {
input: 'لطفا وارد کنید',
select: 'لطفا انتخاب کنید',
search: 'جستجو...',
},
voice: {
language: {
zhHans: 'چینی',
zhHant: 'چینی سنتی',
enUS: 'انگلیسی',
deDE: 'آلمانی',
frFR: 'فرانسوی',
esES: 'اسپانیایی',
itIT: 'ایتالیایی',
thTH: 'تایلندی',
idID: 'اندونزیایی',
jaJP: 'ژاپنی',
koKR: 'کره‌ای',
ptBR: 'پرتغالی',
ruRU: 'روسی',
ukUA: 'اوکراینی',
viVN: 'ویتنامی',
plPL: 'لهستانی',
roRO: 'رومانیایی',
hiIN: 'هندی',
trTR: 'ترکی',
faIR: 'فارسی',
},
},
unit: {
char: 'کاراکتر',
},
actionMsg: {
noModification: 'در حال حاضر تغییری وجود ندارد.',
modifiedSuccessfully: 'با موفقیت تغییر یافت',
modifiedUnsuccessfully: 'تغییر ناموفق بود',
copySuccessfully: 'با موفقیت کپی شد',
paySucceeded: 'پرداخت موفق',
payCancelled: 'پرداخت لغو شد',
generatedSuccessfully: 'با موفقیت تولید شد',
generatedUnsuccessfully: 'تولید ناموفق بود',
},
model: {
params: {
temperature: 'دما',
temperatureTip:
'تصادفی بودن را کنترل می‌کند: کاهش آن منجر به تکمیل‌های کمتر تصادفی می‌شود. با نزدیک شدن دما به صفر، مدل قطعی و تکراری می‌شود.',
top_p: 'بالاترین P',
top_pTip:
'تنوع را از طریق نمونه‌گیری هسته کنترل می‌کند: 0.5 به این معنی است که نیمی از همه گزینه‌های وزن‌دار احتمالی در نظر گرفته می‌شوند.',
presence_penalty: 'جریمه حضور',
presence_penaltyTip:
'چقدر توکن‌های جدید را بر اساس اینکه آیا در متن تاکنون ظاهر شده‌اند جریمه کنیم.\nاحتمال مدل برای صحبت در مورد موضوعات جدید را افزایش می‌دهد.',
frequency_penalty: 'جریمه تکرار',
frequency_penaltyTip:
'چقدر توکن‌های جدید را بر اساس فراوانی موجود آنها در متن تاکنون جریمه کنیم.\nاحتمال تکرار دقیق همان خط توسط مدل را کاهش می‌دهد.',
max_tokens: 'حداکثر توکن',
max_tokensTip:
'برای محدود کردن حداکثر طول پاسخ، در توکن‌ها استفاده می‌شود. \nمقادیر بزرگتر ممکن است فضای باقیمانده برای کلمات راهنما، گزارش‌های چت و دانش را محدود کند. \nتوصیه می‌شود آن را کمتر از دو سوم تنظیم کنید\ngpt-4-1106-preview، gpt-4-vision-preview حداکثر توکن (ورودی 128k خروجی 4k)',
maxTokenSettingTip: 'تنظیم حداکثر توکن شما بالاست، که ممکن است فضا را برای راهنماها، پرس و جوها و داده‌ها محدود کند. در نظر بگیرید آن را زیر 2/3 تنظیم کنید.',
setToCurrentModelMaxTokenTip: 'حداکثر توکن به 80٪ حداکثر توکن مدل فعلی {{maxToken}} به‌روزرسانی شد.',
stop_sequences: 'توالی‌های توقف',
stop_sequencesTip: 'حداکثر چهار توالی که API تولید توکن‌های بیشتر را متوقف می‌کند. متن برگردانده شده شامل توالی توقف نخواهد بود.',
stop_sequencesPlaceholder: 'توالی را وارد کنید و Tab را فشار دهید',
},
tone: {
Creative: 'خلاقانه',
Balanced: 'متعادل',
Precise: 'دقیق',
Custom: 'سفارشی',
},
addMoreModel: 'برای افزودن مدل‌های بیشتر به تنظیمات بروید',
settingsLink: 'تنظیمات ارائه دهنده مدل',
capabilities: 'قابلیت های چند وجهی',
},
menus: {
status: 'بتا',
explore: 'کاوش',
apps: 'استودیو',
plugins: 'افزونه‌ها',
pluginsTips: 'افزونه‌های شخص ثالث را ادغام کنید یا افزونه‌های هوش مصنوعی سازگار با ChatGPT ایجاد کنید.',
datasets: 'دانش',
datasetsTips: 'به زودی: داده‌های متنی خود را وارد کنید یا از طریق Webhook داده‌ها را در زمان واقعی برای بهبود زمینه LLM بنویسید.',
newApp: 'برنامه جدید',
newDataset: 'ایجاد دانش',
tools: 'ابزارها',
exploreMarketplace: 'بازار را کاوش کنید',
appDetail: 'جزئیات برنامه',
account: 'حساب',
},
userProfile: {
settings: 'تنظیمات',
emailSupport: 'پشتیبانی ایمیل',
workspace: 'فضای کاری',
createWorkspace: 'ایجاد فضای کاری',
helpCenter: 'راهنما',
roadmap: 'نقشه راه',
community: 'انجمن',
about: 'درباره',
logout: 'خروج',
github: 'گیت‌هاب',
compliance: 'انطباق',
support: 'پشتیبانی',
contactUs: 'با ما تماس بگیرید',
forum: 'انجمن',
},
settings: {
accountGroup: 'حساب کاربری',
workplaceGroup: 'فضای کاری',
account: 'حساب من',
members: 'اعضا',
billing: 'صورتحساب',
integrations: 'ادغام‌ها',
language: 'زبان',
provider: 'ارائه دهنده مدل',
dataSource: 'منبع داده',
plugin: 'افزونه‌ها',
apiBasedExtension: 'توسعه مبتنی بر API',
generalGroup: 'عمومی',
},
account: {
avatar: 'آواتار',
name: 'نام',
email: 'ایمیل',
password: 'رمز عبور',
passwordTip: 'اگر نمی‌خواهید از کدهای ورود موقت استفاده کنید، می‌توانید یک رمز عبور دائمی تنظیم کنید',
setPassword: 'تنظیم رمز عبور',
resetPassword: 'بازنشانی رمز عبور',
currentPassword: 'رمز عبور فعلی',
newPassword: 'رمز عبور جدید',
confirmPassword: 'تأیید رمز عبور',
notEqual: 'دو رمز عبور متفاوت هستند.',
langGeniusAccount: 'حساب Dify',
langGeniusAccountTip: 'حساب Dify شما و داده‌های کاربری مرتبط.',
editName: 'ویرایش نام',
showAppLength: 'نمایش {{length}} برنامه',
delete: 'حذف حساب کاربری',
deleteTip: 'حذف حساب کاربری شما تمام داده‌های شما را به طور دائمی پاک می‌کند و قابل بازیابی نیست.',
account: 'حساب',
myAccount: 'حساب من',
studio: 'استودیو Dify',
feedbackTitle: 'بازخورد',
verificationPlaceholder: 'کد 6 رقمی را جایگذاری کنید',
deletePlaceholder: 'لطفا ایمیل خود را وارد کنید',
permanentlyDeleteButton: 'حذف دائمی حساب',
verificationLabel: 'کد تأیید',
feedbackPlaceholder: 'اختیاری',
sendVerificationButton: 'ارسال کد تأیید',
deletePrivacyLink: 'سیاست حفظ حریم خصوصی.',
deleteLabel: 'برای تایید، لطفا ایمیل خود را در زیر تایپ کنید',
deleteSuccessTip: 'حساب شما برای پایان دادن به حذف به زمان نیاز دارد. وقتی همه چیز تمام شد به شما ایمیل خواهیم زد.',
deletePrivacyLinkTip: 'برای کسب اطلاعات بیشتر در مورد نحوه مدیریت داده های شما، لطفا به ما مراجعه کنید',
feedbackLabel: 'به ما بگویید چرا حساب خود را حذف کرده اید؟',
editWorkspaceInfo: 'ویرایش اطلاعات فضای کار',
workspaceName: 'نام فضای کاری',
workspaceIcon: 'آیکون محیط کار',
changeEmail: {
changeTo: 'تغییر به {{email}}',
resendTip: 'کدی دریافت نکردید؟',
codeLabel: 'کد تأیید',
resend: 'دوباره ارسال کنید',
emailLabel: 'ایمیل جدید',
title: 'تغییر ایمیل',
verifyNew: 'ایمیل جدید خود را تأیید کنید',
sendVerifyCode: 'کد تأیید را ارسال کنید',
newEmail: 'یک آدرس ایمیل جدید راه‌اندازی کنید',
emailPlaceholder: 'یک ایمیل جدید وارد کنید',
codePlaceholder: 'کد ۶ رقمی را وارد کنید',
existingEmail: 'کاربری با این ایمیل از قبل وجود دارد.',
content2: 'ایمیل فعلی شما <email>{{email}}</email> است. کد تأیید به این آدرس ایمیل ارسال شده است.',
resendCount: 'دوباره ارسال کنید در {{count}} ثانیه',
continue: 'ادامه دهید',
verifyEmail: 'ایمیل فعلی خود را تأیید کنید',
content4: 'ما یک کد تأیید موقت برای شما به <email>{{email}}</email> ارسال کردیم.',
content1: 'اگر ادامه دهید، ما یک کد تأیید به <email>{{email}}</email> برای بازگشایی مجدد ارسال خواهیم کرد.',
content3: 'یک ایمیل جدید وارد کنید و ما یک کد تأیید برای شما ارسال خواهیم کرد.',
authTip: 'زمانی که ایمیل شما تغییر کند، حساب‌های گوگل یا گیت‌هاب مرتبط با ایمیل قدیمی شما دیگر قادر به ورود به این حساب نخواهند بود.',
unAvailableEmail: 'این ایمیل به طور موقت در دسترس نیست.',
},
},
members: {
team: 'تیم',
invite: 'افزودن',
name: 'نام',
lastActive: 'آخرین فعالیت',
role: 'نقش‌ها',
pending: 'در انتظار...',
owner: 'مالک',
admin: 'مدیر',
adminTip: 'می‌تواند برنامه‌ها را بسازد و تنظیمات تیم را مدیریت کند',
normal: 'عادی',
normalTip: 'فقط می‌تواند از برنامه‌ها استفاده کند، نمی‌تواند برنامه بسازد',
builder: 'سازنده',
builderTip: 'می‌تواند برنامه‌های خود را بسازد و ویرایش کند',
editor: 'ویرایشگر',
editorTip: 'می‌تواند برنامه‌ها را بسازد و ویرایش کند',
datasetOperator: 'مدیر دانش',
datasetOperatorTip: 'فقط می‌تواند پایگاه دانش را مدیریت کند',
inviteTeamMember: 'افزودن عضو تیم',
inviteTeamMemberTip: 'آنها می‌توانند پس از ورود به سیستم، مستقیماً به داده‌های تیم شما دسترسی پیدا کنند.',
emailNotSetup: 'سرور ایمیل راه‌اندازی نشده است، بنابراین ایمیل‌های دعوت نمی‌توانند ارسال شوند. لطفاً کاربران را از لینک دعوت که پس از دعوت صادر خواهد شد مطلع کنید。',
email: 'ایمیل',
emailInvalid: 'فرمت ایمیل نامعتبر است',
emailPlaceholder: 'لطفاً ایمیل‌ها را وارد کنید',
sendInvite: 'ارسال دعوت',
invitedAsRole: 'به عنوان کاربر {{role}} دعوت شده',
invitationSent: 'دعوت‌نامه ارسال شد',
invitationSentTip: 'دعوت‌نامه ارسال شد و آنها می‌توانند وارد Dify شوند تا به داده‌های تیم شما دسترسی پیدا کنند.',
invitationLink: 'لینک دعوت',
failedInvitationEmails: 'کاربران زیر با موفقیت دعوت نشدند',
ok: 'تایید',
removeFromTeam: 'حذف از تیم',
removeFromTeamTip: 'دسترسی تیم را حذف می‌کند',
setAdmin: 'تنظیم به عنوان مدیر',
setMember: 'تنظیم به عنوان عضو عادی',
setBuilder: 'تنظیم به عنوان سازنده',
setEditor: 'تنظیم به عنوان ویرایشگر',
disInvite: 'لغو دعوت',
deleteMember: 'حذف عضو',
you: '(شما)',
transferModal: {
resendTip: 'کدی دریافت نکردید؟',
resend: 'دوباره ارسال کنید',
continue: 'ادامه دهید',
codeLabel: 'کد تأیید',
sendVerifyCode: 'کد تأیید را ارسال کنید',
title: 'انتقال مالکیت فضای کاری',
verifyContent: 'ایمیل فعلی شما <email>{{email}}</email> است.',
transfer: 'انتقال مالکیت فضای کاری',
warning: 'شما در حال انتقال مالکیت "{{workspace}}" هستید. این بلافاصله اجرایی می‌شود و قابل بازگشت نیست.',
resendCount: 'دوباره ارسال کنید در {{count}} ثانیه',
warningTip: 'شما به یک عضو مدیر تبدیل خواهید شد و مالک جدید کنترل کامل خواهد داشت.',
transferLabel: 'مالکیت فضای کار را به منتقل کنید',
verifyEmail: 'ایمیل فعلی خود را تأیید کنید',
sendTip: 'اگر ادامه دهید، ما یک کد تأیید به <email>{{email}}</email> برای بازگشایی مجدد ارسال خواهیم کرد.',
codePlaceholder: 'کد ۶ رقمی را وارد کنید',
transferPlaceholder: 'یک عضو از فضای کاری را انتخاب کنید…',
verifyContent2: 'ما یک کد تأیید موقت به این ایمیل برای تأیید مجدد ارسال خواهیم کرد.',
},
transferOwnership: 'انتقال مالکیت',
},
integrations: {
connected: 'متصل شده',
google: 'گوگل',
googleAccount: 'ورود با حساب گوگل',
github: 'گیت‌هاب',
githubAccount: 'ورود با حساب گیت‌هاب',
connect: 'اتصال',
},
language: {
displayLanguage: 'زبان نمایش',
timezone: 'منطقه زمانی',
},
provider: {
apiKey: 'کلید API',
enterYourKey: 'کلید API خود را اینجا وارد کنید',
invalidKey: 'کلید API OpenAI نامعتبر است',
validatedError: 'اعتبارسنجی ناموفق بود: ',
validating: 'در حال اعتبارسنجی کلید...',
saveFailed: 'ذخیره کلید API ناموفق بود',
apiKeyExceedBill: 'این کلید API سهمیه موجود ندارد، لطفاً بخوانید',
addKey: 'افزودن کلید',
comingSoon: 'به زودی',
editKey: 'ویرایش',
invalidApiKey: 'کلید API نامعتبر',
azure: {
apiBase: 'پایه API',
apiBasePlaceholder: 'آدرس پایه API نقطه پایانی Azure OpenAI شما.',
apiKey: 'کلید API',
apiKeyPlaceholder: 'کلید API خود را اینجا وارد کنید',
helpTip: 'آشنایی با سرویس Azure OpenAI',
},
openaiHosted: {
openaiHosted: 'OpenAI میزبانی شده',
onTrial: 'در حال آزمایش',
exhausted: 'سهمیه تمام شده',
desc: 'سرویس میزبانی OpenAI ارائه شده توسط Dify به شما اجازه می‌دهد از مدل‌هایی مانند GPT-3.5 استفاده کنید. قبل از اتمام سهمیه آزمایشی خود، باید سایر ارائه‌دهندگان مدل را تنظیم کنید.',
callTimes: 'تعداد فراخوانی',
usedUp: 'سهمیه آزمایشی تمام شده است. ارائه‌دهنده مدل خود را اضافه کنید.',
useYourModel: 'در حال حاضر از ارائه‌دهنده مدل خود استفاده می‌کنید.',
close: 'بستن',
},
anthropicHosted: {
anthropicHosted: 'Anthropic Claude',
onTrial: 'در حال آزمایش',
exhausted: 'سهمیه تمام شده',
desc: 'مدل قدرتمند که در طیف گسترده‌ای از وظایف از گفتگوی پیشرفته و تولید محتوای خلاقانه تا دستورالعمل‌های دقیق عالی عمل می‌کند.',
callTimes: 'تعداد فراخوانی',
usedUp: 'سهمیه آزمایشی تمام شده است. ارائه‌دهنده مدل خود را اضافه کنید.',
useYourModel: 'در حال حاضر از ارائه‌دهنده مدل خود استفاده می‌کنید.',
close: 'بستن',
trialQuotaTip: 'سهمیه آزمایشی Anthropic شما در تاریخ 2025/03/11 منقضی می شود و پس از آن دیگر در دسترس نخواهد بود. لطفا به موقع از آن استفاده کنید.',
},
anthropic: {
using: 'قابلیت تعبیه از این استفاده می‌کند',
enableTip: 'برای فعال‌سازی مدل Anthropic، ابتدا باید به OpenAI یا سرویس Azure OpenAI متصل شوید.',
notEnabled: 'فعال نشده',
keyFrom: 'کلید API خود را از Anthropic دریافت کنید',
},
encrypted: {
front: 'کلید API شما با استفاده از فناوری',
back: ' رمزگذاری و ذخیره خواهد شد.',
},
},
modelProvider: {
notConfigured: 'مدل سیستم هنوز به طور کامل پیکربندی نشده است و برخی از عملکردها ممکن است در دسترس نباشند.',
systemModelSettings: 'تنظیمات مدل سیستم',
systemModelSettingsLink: 'چرا تنظیم مدل سیستم ضروری است؟',
selectModel: 'مدل خود را انتخاب کنید',
setupModelFirst: 'لطفاً ابتدا مدل خود را تنظیم کنید',
systemReasoningModel: {
key: 'مدل استدلال سیستم',
tip: 'مدل استنتاج پیش‌فرض را برای ایجاد برنامه‌ها تنظیم کنید. ویژگی‌هایی مانند تولید نام گفتگو و پیشنهاد سوال بعدی نیز از مدل استنتاج پیش‌فرض استفاده خواهند کرد.',
},
embeddingModel: {
key: 'مدل تعبیه',
tip: 'مدل پیش‌فرض را برای پردازش تعبیه اسناد دانش تنظیم کنید. هر دو بازیابی و وارد کردن دانش از این مدل تعبیه برای پردازش برداری استفاده می‌کنند. تغییر باعث ناسازگاری بُعد برداری بین دانش وارد شده و سوال می‌شود که منجر به شکست بازیابی می‌شود. برای جلوگیری از شکست بازیابی، لطفاً این مدل را به دلخواه تغییر ندهید.',
required: 'مدل تعبیه الزامی است',
},
speechToTextModel: {
key: 'مدل تبدیل گفتار به متن',
tip: 'مدل پیش‌فرض را برای ورودی گفتار به متن در مکالمه تنظیم کنید.',
},
ttsModel: {
key: 'مدل تبدیل متن به گفتار',
tip: 'مدل پیش‌فرض را برای ورودی متن به گفتار در مکالمه تنظیم کنید.',
},
rerankModel: {
key: 'مدل رتبه‌بندی مجدد',
tip: 'مدل رتبه‌بندی مجدد، لیست اسناد کاندید را بر اساس تطابق معنایی با پرسش کاربر مرتب می‌کند و نتایج رتبه‌بندی معنایی را بهبود می‌بخشد',
},
apiKey: 'کلید API',
quota: 'سهمیه',
searchModel: 'جستجوی مدل',
noModelFound: 'هیچ مدلی برای {{model}} یافت نشد',
models: 'مدل‌ها',
showMoreModelProvider: 'نمایش ارائه‌دهندگان مدل بیشتر',
selector: {
tip: 'این مدل حذف شده است. لطفاً یک مدل اضافه کنید یا مدل دیگری را انتخاب کنید.',
emptyTip: 'هیچ مدل موجودی وجود ندارد',
emptySetting: 'لطفاً به تنظیمات بروید تا پیکربندی کنید',
rerankTip: 'لطفاً مدل رتبه‌بندی مجدد را تنظیم کنید',
},
card: {
quota: 'سهمیه',
onTrial: 'در حال آزمایش',
paid: 'پرداخت شده',
quotaExhausted: 'سهمیه تمام شده',
callTimes: 'تعداد فراخوانی',
tokens: 'توکن‌ها',
buyQuota: 'خرید سهمیه',
priorityUse: 'استفاده با اولویت',
removeKey: 'حذف کلید API',
tip: 'اولویت به سهمیه پرداخت شده داده می‌شود. سهمیه آزمایشی پس از اتمام سهمیه پرداخت شده استفاده خواهد شد.',
},
item: {
deleteDesc: '{{modelName}} به عنوان مدل‌های استدلال سیستم استفاده می‌شوند. برخی از عملکردها پس از حذف در دسترس نخواهند بود. لطفاً تأیید کنید.',
freeQuota: 'سهمیه رایگان',
},
addApiKey: 'کلید API خود را اضافه کنید',
invalidApiKey: 'کلید API نامعتبر',
encrypted: {
front: 'کلید API شما با استفاده از فناوری',
back: ' رمزگذاری و ذخیره خواهد شد.',
},
freeQuota: {
howToEarn: 'چگونه کسب کنیم',
},
addMoreModelProvider: 'افزودن ارائه‌دهنده مدل بیشتر',
addModel: 'افزودن مدل',
modelsNum: '{{num}} مدل',
showModels: 'نمایش مدل‌ها',
showModelsNum: 'نمایش {{num}} مدل',
collapse: 'جمع کردن',
config: 'پیکربندی',
modelAndParameters: 'مدل و پارامترها',
model: 'مدل',
featureSupported: '{{feature}} پشتیبانی می‌شود',
callTimes: 'تعداد فراخوانی',
credits: 'اعتبار پیام',
buyQuota: 'خرید سهمیه',
getFreeTokens: 'دریافت توکن‌های رایگان',
priorityUsing: 'استفاده با اولویت',
deprecated: 'منسوخ شده',
confirmDelete: 'تأیید حذف؟',
quotaTip: 'توکن‌های رایگان باقی‌مانده در دسترس',
loadPresets: 'بارگیری تنظیمات از پیش تعیین شده',
parameters: 'پارامترها',
loadBalancing: 'تعادل بار',
loadBalancingDescription: 'کاهش فشار با چندین مجموعه اعتبارنامه.',
loadBalancingHeadline: 'تعادل بار',
configLoadBalancing: 'پیکربندی تعادل بار',
modelHasBeenDeprecated: 'این مدل منسوخ شده است',
providerManaged: 'مدیریت شده توسط ارائه‌دهنده',
providerManagedDescription: 'استفاده از مجموعه واحد اعتبارنامه ارائه شده توسط ارائه‌دهنده مدل.',
defaultConfig: 'پیکربندی پیش‌فرض',
apiKeyStatusNormal: 'وضعیت کلید API عادی است',
apiKeyRateLimit: 'محدودیت نرخ به دست آمد، پس از {{seconds}} ثانیه در دسترس خواهد بود',
addConfig: 'افزودن پیکربندی',
editConfig: 'ویرایش پیکربندی',
loadBalancingLeastKeyWarning: 'برای فعال کردن تعادل بار، حداقل 2 کلید باید فعال باشند.',
loadBalancingInfo: 'به طور پیش‌فرض، تعادل بار از استراتژی Round-robin استفاده می‌کند. اگر محدودیت نرخ فعال شود، یک دوره خنک شدن 1 دقیقه‌ای اعمال خواهد شد.',
upgradeForLoadBalancing: 'برای فعال کردن تعادل بار، طرح خود را ارتقا دهید.',
emptyProviderTitle: 'ارائه دهنده مدل راه اندازی نشده است',
toBeConfigured: 'پیکربندی شود',
configureTip: 'api-key را راه اندازی کنید یا مدل را برای استفاده اضافه کنید',
installProvider: 'نصب ارائه دهندگان مدل',
discoverMore: 'اطلاعات بیشتر در',
emptyProviderTip: 'لطفا ابتدا یک ارائه دهنده مدل نصب کنید.',
auth: {
apiKeyModal: {
title: 'پیکربندی مجوز کلید API',
addModel: 'مدل اضافه کنید',
desc: 'پس از پیکربندی اعتبارنامه‌ها، تمامی اعضای درون فضای کاری می‌توانند از این مدل هنگام نظم‌دهی به برنامه‌ها استفاده کنند.',
},
authorizationError: 'خطای مجوز',
unAuthorized: 'بدون مجوز',
configModel: 'مدل پیکربندی',
apiKeys: 'کلیدهای API',
addCredential: 'مدرک اضافه کنید',
addNewModel: 'مدل جدید اضافه کن',
addApiKey: 'کلید API را اضافه کنید',
authRemoved: 'منبع حذف شد',
configLoadBalancing: 'پیکربندی بارگذاری متوازن',
specifyModelCredential: 'مدل اعتبارنامه را مشخص کنید',
providerManaged: 'مدیریت شده توسط ارائه‌دهنده',
addModelCredential: 'مدرک مدل را اضافه کنید',
specifyModelCredentialTip: 'از اعتبارنامه مدل پیکربندی شده استفاده کنید.',
providerManagedTip: 'تنظیمات فعلی توسط ارائه‌دهنده میزبانی می‌شود.',
modelCredentials: 'مدل اعتبارنامه',
manageCredentials: 'مدیریت اعتبارنامه ها',
addModel: 'افزودن مدل',
removeModel: 'حذف مدل',
modelCredential: 'اعتبار مدل',
selectModelCredential: 'یک اعتبار مدل را انتخاب کنید',
editModelCredential: 'اعتبار مدل را ویرایش کنید',
addNewModelCredential: 'افزودن اعتبار مدل جدید',
customModelCredentials: 'اعتبار مدل سفارشی',
customModelCredentialsDeleteTip: 'اعتبار در حال استفاده است و قابل حذف نیست',
},
parametersInvalidRemoved: 'برخی پارامترها نامعتبر هستند و حذف شده‌اند',
installDataSourceProvider: 'نصب ارائه‌دهندگان منبع داده',
},
dataSource: {
add: 'افزودن منبع داده',
connect: 'اتصال',
configure: 'پیکربندی',
notion: {
title: 'نوشن',
description: 'استفاده از نوشن به عنوان منبع داده برای دانش.',
connectedWorkspace: 'فضای کاری متصل',
addWorkspace: 'افزودن فضای کاری',
connected: 'متصل شده',
disconnected: 'قطع شده',
changeAuthorizedPages: 'تغییر صفحات مجاز',
pagesAuthorized: 'صفحات مجاز',
sync: 'همگام‌سازی',
remove: 'حذف',
selector: {
pageSelected: 'صفحات انتخاب شده',
searchPages: 'جستجوی صفحات...',
noSearchResult: 'نتیجه جستجویی یافت نشد',
addPages: 'افزودن صفحات',
preview: 'پیش‌نمایش',
},
integratedAlert: 'نوشته به طور داخلی از طریق اعتبارنامه یکپارچه شده است، نیازی به دوباره مجاز کردن نیست.',
},
website: {
title: 'وب‌سایت',
description: 'وارد کردن محتوا از وب‌سایت‌ها با استفاده از خزنده وب.',
with: 'با',
configuredCrawlers: 'خزنده‌های پیکربندی شده',
active: 'فعال',
inactive: 'غیرفعال',
},
},
plugin: {
serpapi: {
apiKey: 'کلید API',
apiKeyPlaceholder: 'کلید API خود را وارد کنید',
keyFrom: 'کلید SerpAPI خود را از صفحه حساب SerpAPI دریافت کنید',
},
},
apiBasedExtension: {
title: 'افزونه‌های مبتنی بر API مدیریت متمرکز API را فراهم می‌کنند و پیکربندی را برای استفاده آسان در برنامه‌های Dify ساده می‌کنند.',
link: 'نحوه توسعه افزونه API خود را بیاموزید.',
add: 'افزودن افزونه API',
selector: {
title: 'افزونه API',
placeholder: 'لطفاً افزونه API را انتخاب کنید',
manage: 'مدیریت افزونه API',
},
modal: {
title: 'افزودن افزونه API',
editTitle: 'ویرایش افزونه API',
name: {
title: 'نام',
placeholder: 'لطفاً نام را وارد کنید',
},
apiEndpoint: {
title: 'نقطه پایانی API',
placeholder: 'لطفاً نقطه پایانی API را وارد کنید',
},
apiKey: {
title: 'کلید API',
placeholder: 'لطفاً کلید API را وارد کنید',
lengthError: 'طول کلید API نمی‌تواند کمتر از ۵ کاراکتر باشد',
},
},
type: 'نوع',
},
about: {
changeLog: 'تغییرات',
updateNow: 'به‌روزرسانی اکنون',
nowAvailable: 'Dify {{version}} اکنون در دسترس است.',
latestAvailable: 'Dify {{version}} آخرین نسخه در دسترس است.',
},
appMenus: {
overview: 'نظارت',
promptEng: 'هماهنگ‌سازی',
apiAccess: 'دسترسی API',
logAndAnn: 'گزارش‌ها و اعلانات',
logs: 'گزارش‌ها',
},
environment: {
testing: 'آزمایشی',
development: 'توسعه',
},
appModes: {
completionApp: 'تولیدکننده متن',
chatApp: 'برنامه چت',
},
datasetMenus: {
documents: 'اسناد',
hitTesting: 'آزمایش بازیابی',
settings: 'تنظیمات',
emptyTip: 'دانش مرتبط نشده است، لطفاً به برنامه یا افزونه بروید تا ارتباط را کامل کنید.',
viewDoc: 'مشاهده مستندات',
relatedApp: 'برنامه‌های مرتبط',
noRelatedApp: 'هیچ برنامه پیوندی وجود ندارد',
pipeline: 'خط لوله',
},
voiceInput: {
speaking: 'اکنون صحبت کنید...',
converting: 'در حال تبدیل به متن...',
notAllow: 'میکروفون مجاز نیست',
},
modelName: {
'gpt-3.5-turbo': 'جی‌پی‌تی-۳.۵-توربو',
'gpt-3.5-turbo-16k': 'جی‌پی‌تی-۳.۵-توربو-۱۶کا',
'gpt-4': 'جی‌پی‌تی-۴',
'gpt-4-32k': 'جی‌پی‌تی-۴-۳۲کا',
'text-davinci-003': 'متن-داوینچی-۰۰۳',
'text-embedding-ada-002': 'متن-تعبیه-آدا-۰۰۲',
'whisper-1': 'ویسپر-۱',
'claude-instant-1': 'کلاود-فوری',
'claude-2': 'کلاود-۲',
},
chat: {
renameConversation: 'تغییر نام مکالمه',
conversationName: 'نام مکالمه',
conversationNamePlaceholder: 'لطفاً نام مکالمه را وارد کنید',
conversationNameCanNotEmpty: 'نام مکالمه الزامی است',
citation: {
title: 'استنادها',
linkToDataset: 'پیوند به دانش',
characters: 'کاراکترها:',
hitCount: 'تعداد بازیابی:',
vectorHash: 'هش بردار:',
hitScore: 'امتیاز بازیابی:',
},
inputPlaceholder: 'با ربات صحبت کنید',
thought: 'فکر',
thinking: 'تفکر...',
resend: 'دوباره ارسال کنید',
},
promptEditor: {
placeholder: 'دستور خود را اینجا بنویسید، «{» را وارد کنید تا یک متغیر درج کنید، «/» را وارد کنید تا یک بلوک محتوای دستور درج کنید',
context: {
item: {
title: 'زمینه',
desc: 'درج الگوی زمینه',
},
modal: {
title: '{{num}} دانش در زمینه',
add: 'افزودن زمینه',
footer: 'شما می‌توانید زمینه‌ها را در بخش زمینه در زیر مدیریت کنید.',
},
},
history: {
item: {
title: 'تاریخچه مکالمه',
desc: 'درج الگوی پیام تاریخی',
},
modal: {
title: 'مثال',
user: 'سلام',
assistant: 'سلام! چطور می‌توانم امروز به شما کمک کنم؟',
edit: 'ویرایش نام‌های نقش مکالمه',
},
},
variable: {
item: {
title: 'متغیرها و ابزارهای خارجی',
desc: 'درج متغیرها و ابزارهای خارجی',
},
outputToolDisabledItem: {
title: 'متغیرها',
desc: 'درج متغیرها',
},
modal: {
add: 'متغیر جدید',
addTool: 'ابزار جدید',
},
},
query: {
item: {
title: 'پرس‌وجو',
desc: 'درج الگوی پرس‌وجوی کاربر',
},
},
existed: 'در حال حاضر در دستور وجود دارد',
},
imageUploader: {
uploadFromComputer: 'بارگذاری از کامپیوتر',
uploadFromComputerReadError: 'خواندن تصویر ناموفق بود، لطفاً دوباره تلاش کنید.',
uploadFromComputerUploadError: 'بارگذاری تصویر ناموفق بود، لطفاً دوباره بارگذاری کنید.',
uploadFromComputerLimit: 'بارگذاری تصاویر نمی‌تواند از {{size}} مگابایت بیشتر باشد',
pasteImageLink: 'پیوند تصویر را بچسبانید',
pasteImageLinkInputPlaceholder: 'پیوند تصویر را اینجا بچسبانید',
pasteImageLinkInvalid: 'پیوند تصویر نامعتبر',
imageUpload: 'بارگذاری تصویر',
},
tag: {
placeholder: 'همه برچسب‌ها',
addNew: 'افزودن برچسب جدید',
noTag: 'بدون برچسب',
noTagYet: 'هنوز برچسبی وجود ندارد',
addTag: 'افزودن برچسب‌ها',
editTag: 'ویرایش برچسب‌ها',
manageTags: 'مدیریت برچسب‌ها',
selectorPlaceholder: 'برای جستجو یا ایجاد تایپ کنید',
create: 'ایجاد',
delete: 'حذف برچسب',
deleteTip: 'برچسب در حال استفاده است، آیا آن را حذف می‌کنید؟',
created: 'برچسب با موفقیت ایجاد شد',
failed: 'ایجاد برچسب ناموفق بود',
},
fileUploader: {
uploadFromComputer: 'آپلود محلی',
pasteFileLinkInputPlaceholder: 'URL را وارد کنید...',
pasteFileLinkInvalid: 'پیوند فایل نامعتبر',
fileExtensionNotSupport: 'پسوند فایل پشتیبانی نمی شود',
uploadFromComputerReadError: 'خواندن فایل انجام نشد، لطفا دوباره امتحان کنید.',
uploadFromComputerUploadError: 'آپلود فایل انجام نشد، لطفا دوباره آپلود کنید.',
pasteFileLink: 'پیوند فایل را جایگذاری کنید',
uploadFromComputerLimit: 'آپلود فایل نمی تواند از {{size}} تجاوز کند',
fileExtensionBlocked: 'این نوع فایل به دلایل امنیتی مسدود شده است',
},
license: {
expiring_plural: 'انقضا در {{count}} روز',
expiring: 'انقضا در یک روز',
unlimited: 'نامحدود',
},
pagination: {
perPage: 'موارد در هر صفحه',
},
theme: {
auto: 'سیستم',
theme: 'تم',
dark: 'تاریک',
light: 'نور',
},
compliance: {
soc2Type1: 'گزارش نوع I SOC 2',
sandboxUpgradeTooltip: 'تنها با برنامه حرفه‌ای یا تیمی در دسترس است.',
gdpr: 'GDPR DPA',
soc2Type2: 'گزارش نوع II SOC 2',
iso27001: 'گواهینامه ISO 27001:2022',
professionalUpgradeTooltip: 'تنها با برنامه تیم یا بالاتر در دسترس است.',
},
imageInput: {
dropImageHere: 'عکس خود را اینجا رها کنید، یا',
supportedFormats: 'از فرمت‌های PNG، JPG، JPEG، WEBP و GIF پشتیبانی می‌کند',
browse: 'مرورگر',
},
you: 'تو',
avatar: {
deleteTitle: 'حذف آواتار',
deleteDescription: 'آیا مطمئن هستید که می‌خواهید تصویر پروفایل خود را حذف کنید؟ حساب شما از آواتار اولیه پیش‌فرض استفاده خواهد کرد.',
},
feedback: {
title: 'بازخورد ارائه دهید',
subtitle: 'لطفاً به ما بگویید که چه مشکلی در این پاسخ پیش آمده است.',
content: 'محتوای بازخورد',
placeholder: 'لطفاً توضیح دهید که چه مشکلی پیش آمد یا چگونه می‌توانیم بهبود پیدا کنیم...',
},
label: {
optional: '(اختیاری)',
},
noData: 'بدون داده',
dynamicSelect: {
error: 'بارگیری گزینه‌ها ناموفق بود',
noData: 'هیچ گزینه‌ای در دسترس نیست',
loading: 'در حال بارگذاری گزینه‌ها...',
selected: '{{count}} انتخاب شد',
},
}
export default translation

View File

@@ -0,0 +1,32 @@
const translation = {
custom: 'سفارشی سازی',
upgradeTip: {
prefix: 'طرح خود را ارتقا دهید به',
suffix: 'تا برند خود را سفارشی کنید.',
title: 'طرح خود را ارتقا دهید',
des: 'طرح خود را ارتقا دهید تا برند خود را سفارشی کنید',
},
webapp: {
title: 'سفارشی سازی برند وب اپ',
removeBrand: 'حذف "Powered by Dify"',
changeLogo: 'تغییر تصویر برند "Powered by"',
changeLogoTip: 'فرمت SVG یا PNG با حداقل اندازه 40x40px',
},
app: {
title: 'سفارشی سازی برند هدر اپلیکیشن',
changeLogoTip: 'فرمت SVG یا PNG با حداقل اندازه 80x80px',
},
upload: 'بارگذاری',
uploading: 'در حال بارگذاری',
uploadedFail: 'بارگذاری تصویر ناموفق بود، لطفاً دوباره بارگذاری کنید.',
change: 'تغییر',
apply: 'اعمال',
restore: 'بازگرداندن به پیشفرضها',
customize: {
contactUs: ' با ما تماس بگیرید ',
prefix: 'برای سفارشیسازی لوگوی برند در اپلیکیشن، لطفاً',
suffix: 'برای ارتقا به نسخه Enterprise.',
},
}
export default translation

View File

@@ -0,0 +1,217 @@
const translation = {
steps: {
header: {
fallbackRoute: 'دانش',
},
one: 'انتخاب منبع داده',
two: 'پیشپردازش و پاکسازی متن',
three: 'اجرا و پایان',
},
error: {
unavailable: 'این دانش در دسترس نیست',
},
firecrawl: {
configFirecrawl: 'پیکربندی fireFirecrawl',
apiKeyPlaceholder: 'کلید API از firecrawl.dev',
getApiKeyLinkText: 'کلید API خود را از firecrawl.dev دریافت کنید',
},
stepOne: {
filePreview: 'پیشنمایش فایل',
pagePreview: 'پیشنمایش صفحه',
dataSourceType: {
file: 'وارد کردن از فایل',
notion: 'همگامسازی از Notion',
web: 'همگامسازی از وبسایت',
},
uploader: {
title: 'بارگذاری فایل',
button: 'فایل ها یا پوشه ها را بکشید و رها کنید یا',
buttonSingleFile: 'فایل را بکشید و رها کنید یا',
browse: 'مرور',
tip: 'پشتیبانی از {{supportTypes}}. حداکثر {{size}}MB هر کدام.',
validation: {
typeError: 'نوع فایل پشتیبانی نمیشود',
size: 'فایل خیلی بزرگ است. حداکثر {{size}}MB',
count: 'چندین فایل پشتیبانی نمیشود',
filesNumber: 'شما به حد مجاز بارگذاری دستهای {{filesNumber}} رسیدهاید.',
},
cancel: 'لغو',
change: 'تغییر',
failed: 'بارگذاری ناموفق بود',
},
notionSyncTitle: 'Notion متصل نیست',
notionSyncTip: 'برای همگامسازی با Notion، ابتدا باید اتصال به Notion برقرار شود.',
connect: 'رفتن به اتصال',
button: 'بعدی',
emptyDatasetCreation: 'میخواهم یک دانش خالی ایجاد کنم',
modal: {
title: 'ایجاد یک دانش خالی',
tip: 'یک دانش خالی هیچ سندی نخواهد داشت و شما میتوانید هر زمان اسناد را بارگذاری کنید.',
input: 'نام دانش',
placeholder: 'لطفاً وارد کنید',
nameNotEmpty: 'نام نمیتواند خالی باشد',
nameLengthInvalid: 'نام باید بین 1 تا 40 کاراکتر باشد',
cancelButton: 'لغو',
confirmButton: 'ایجاد',
failed: 'ایجاد ناموفق بود',
},
website: {
fireCrawlNotConfigured: 'Firecrawl پیکربندی نشده است',
fireCrawlNotConfiguredDescription: 'برای استفاده از Firecrawl با کلید API پیکربندی کنید.',
configure: 'پیکربندی',
run: 'اجرا',
firecrawlTitle: 'استخراج محتوای وب با fireFirecrawl',
firecrawlDoc: 'مستندات Firecrawl',
options: 'گزینهها',
crawlSubPage: 'خزش صفحات فرعی',
limit: 'محدودیت',
maxDepth: 'حداکثر عمق',
excludePaths: 'مسیرهای مستثنی',
includeOnlyPaths: 'فقط مسیرهای شامل',
extractOnlyMainContent: 'فقط محتوای اصلی را استخراج کنید (بدون هدرها، ناوبریها، پاورقیها و غیره)',
exceptionErrorTitle: 'یک استثنا در حین اجرای کار Firecrawl رخ داد:',
unknownError: 'خطای ناشناخته',
totalPageScraped: 'کل صفحات خراشیده شده:',
selectAll: 'انتخاب همه',
resetAll: 'بازنشانی همه',
scrapTimeInfo: 'در مجموع {{total}} صفحه در {{time}} ثانیه خراشیده شد',
preview: 'پیشنمایش',
maxDepthTooltip: 'حداکثر عمق برای خزش نسبت به URL وارد شده. عمق 0 فقط صفحه URL وارد شده را خراش میدهد، عمق 1 URL و همه چیز بعد از URL وارد شده + یک / را خراش میدهد، و غیره.',
jinaReaderDocLink: 'https://jina.ai/reader',
chooseProvider: 'یک ارائه دهنده را انتخاب کنید',
jinaReaderTitle: 'کل سایت را به Markdown تبدیل کنید',
jinaReaderNotConfigured: 'Jina Reader پیکربندی نشده است',
jinaReaderDoc: 'درباره Jina Reader بیشتر بدانید',
useSitemap: 'از نقشه سایت استفاده کنید',
jinaReaderNotConfiguredDescription: 'با وارد کردن کلید API رایگان خود برای دسترسی، Jina Reader را راه اندازی کنید.',
useSitemapTooltip: 'نقشه سایت را دنبال کنید تا سایت را بخزید. در غیر این صورت، Jina Reader بر اساس ارتباط صفحه به صورت تکراری می خزد و صفحات کمتر اما با کیفیت بالاتر را به دست می آورد.',
watercrawlDoc: 'مستندات واتر کراول',
configureFirecrawl: 'تنظیم Firecrawl',
waterCrawlNotConfiguredDescription: 'برای استفاده از Watercrawl، آن را با کلید API پیکربندی کنید.',
waterCrawlNotConfigured: 'Watercrawl پیکربندی نشده است',
configureJinaReader: 'پیکربندی خواننده جینا',
watercrawlTitle: 'محتوای وب را با واترکرال استخراج کنید',
configureWatercrawl: 'تنظیم واترکراول',
running: 'اجرا',
},
cancel: 'لغو',
},
stepTwo: {
segmentation: 'تنظیمات بخشبندی',
auto: 'خودکار',
autoDescription: 'به طور خودکار قوانین بخشبندی و پیشپردازش را تنظیم کنید. به کاربران ناآشنا توصیه میشود این گزینه را انتخاب کنند.',
custom: 'سفارشی',
customDescription: 'قوانین بخشبندی، طول بخشها و قوانین پیشپردازش را سفارشی کنید، و غیره.',
separator: 'شناسه بخش',
separatorPlaceholder: 'برای مثال، خط جدید (\\\\n) یا جداکننده خاص (مانند "***")',
maxLength: 'حداکثر طول بخش',
overlap: 'همپوشانی بخش',
overlapTip: 'تنظیم همپوشانی بخش میتواند ارتباط معنایی بین آنها را حفظ کند و اثر بازیابی را افزایش دهد. توصیه میشود 10%-25% از حداکثر اندازه بخش تنظیم شود.',
overlapCheck: 'همپوشانی بخش نباید بزرگتر از طول حداکثر بخش باشد',
rules: 'قوانین پیشپردازش متن',
removeExtraSpaces: 'جایگزینی فضاهای متوالی، خطوط جدید و تبها',
removeUrlEmails: 'حذف همه URLها و آدرسهای ایمیل',
removeStopwords: 'حذف کلمات توقف مانند "a"، "an"، "the"',
preview: 'تأیید و پیشنمایش',
reset: 'بازنشانی',
indexMode: 'حالت شاخص',
qualified: 'کیفیت بالا',
recommend: 'توصیه شده',
qualifiedTip: 'رابط جاسازی سیستم پیشفرض را برای پردازش فراخوانی کنید تا دقت بالاتری هنگام پرسش کاربران فراهم شود.',
warning: 'لطفاً ابتدا کلید API ارائهدهنده مدل را تنظیم کنید.',
click: 'رفتن به تنظیمات',
economical: 'اقتصادی',
economicalTip: 'از موتورهای برداری آفلاین، شاخصهای کلیدواژه و غیره استفاده کنید تا دقت را بدون صرف توکنها کاهش دهید',
QATitle: 'بخشبندی در قالب پرسش و پاسخ',
QATip: 'فعال کردن این گزینه توکنهای بیشتری مصرف خواهد کرد',
QALanguage: 'بخشبندی با استفاده از',
estimateCost: 'برآورد',
estimateSegment: 'بخشهای برآورد شده',
segmentCount: 'بخشها',
calculating: 'در حال محاسبه...',
fileSource: 'پیشپردازش اسناد',
notionSource: 'پیشپردازش صفحات',
websiteSource: 'پیشپردازش وبسایت',
other: 'و سایر',
fileUnit: ' فایلها',
notionUnit: ' صفحات',
webpageUnit: ' صفحات',
previousStep: 'مرحله قبلی',
nextStep: 'ذخیره و پردازش',
save: 'ذخیره و پردازش',
cancel: 'لغو',
sideTipTitle: 'چرا بخشبندی و پیشپردازش؟',
sideTipP1: 'هنگام پردازش دادههای متنی، بخشبندی و پاکسازی دو مرحله مهم پیشپردازش هستند.',
sideTipP2: 'بخشبندی متن طولانی را به پاراگرافها تقسیم میکند تا مدلها بهتر بتوانند آن را درک کنند. این کیفیت و ارتباط نتایج مدل را بهبود میبخشد.',
sideTipP3: 'پاکسازی کاراکترها و فرمتهای غیرضروری را حذف میکند و دانش را پاکتر و آسانتر برای تجزیه میکند.',
sideTipP4: 'بخشبندی و پاکسازی مناسب عملکرد مدل را بهبود میبخشد و نتایج دقیقتر و ارزشمندتری ارائه میدهد.',
previewTitle: 'پیشنمایش',
previewTitleButton: 'پیشنمایش',
previewButton: 'تغییر به قالب پرسش و پاسخ',
previewSwitchTipStart: 'پیشنمایش بخش فعلی در قالب متن است، تغییر به پیشنمایش قالب پرسش و پاسخ',
previewSwitchTipEnd: ' توکنهای اضافی مصرف خواهد کرد',
characters: 'کاراکترها',
indexSettingTip: 'برای تغییر روش شاخص، لطفاً به',
retrievalSettingTip: 'برای تغییر روش شاخص، لطفاً به',
datasetSettingLink: 'تنظیمات دانش بروید.',
separatorTip: 'جداکننده نویسه ای است که برای جداسازی متن استفاده می شود. \\n\\n و \\n معمولا برای جداسازی پاراگراف ها و خطوط استفاده می شوند. همراه با کاما (\\n\\n,\\n)، پاراگراف ها زمانی که از حداکثر طول تکه فراتر می روند، با خطوط تقسیم بندی می شوند. همچنین می توانید از جداکننده های خاصی که توسط خودتان تعریف شده اند استفاده کنید (مثلا ***).',
maxLengthCheck: 'حداکثر طول تکه باید کمتر از {{limit}} باشد',
notAvailableForQA: 'برای شاخص پرسش و پاسخ در دسترس نیست',
parentChild: 'پدر و مادر و فرزند',
qaSwitchHighQualityTipContent: 'در حال حاضر، فقط روش شاخص با کیفیت بالا از تکه تکه کردن فرمت پرسش و پاسخ پشتیبانی می کند. آیا می خواهید به حالت با کیفیت بالا بروید؟',
previewChunk: 'پیش نمایش تکه',
previewChunkCount: '{{تعداد}} تکه های تخمینی',
previewChunkTip: 'روی دکمه "پیش نمایش قطعه" در سمت چپ کلیک کنید تا پیش نمایش بارگیری شود',
general: 'عمومی',
paragraphTip: 'این حالت متن را بر اساس جداکننده ها و حداکثر طول تکه به پاراگراف ها تقسیم می کند و از متن تقسیم شده به عنوان تکه والد برای بازیابی استفاده می کند.',
parentChunkForContext: 'تکه والد برای زمینه',
fullDoc: 'مستند کامل',
switch: 'سوئیچ',
parentChildChunkDelimiterTip: 'جداکننده نویسه ای است که برای جداسازی متن استفاده می شود. \\n برای تقسیم تکه های والد به تکه های کوچک کودک توصیه می شود. همچنین می توانید از جداکننده های ویژه ای که توسط خودتان تعریف شده است استفاده کنید.',
generalTip: 'حالت تکه تکه کردن متن عمومی، تکه های بازیابی شده و فراخوانی شده یکسان هستند.',
paragraph: 'پاراگراف',
highQualityTip: 'پس از اتمام جاسازی در حالت کیفیت بالا، بازگشت به حالت اقتصادی در دسترس نیست.',
parentChildTip: 'هنگام استفاده از حالت والد-فرزند، تکه فرزند برای بازیابی و تکه والد برای یادآوری به عنوان زمینه استفاده می شود.',
notAvailableForParentChild: 'برای نمایه والد-فرزند در دسترس نیست',
parentChildDelimiterTip: 'جداکننده نویسه ای است که برای جداسازی متن استفاده می شود. \\n\\n برای تقسیم سند اصلی به تکه های والد بزرگ توصیه می شود. همچنین می توانید از جداکننده های ویژه ای که توسط خودتان تعریف شده است استفاده کنید.',
childChunkForRetrieval: 'تکه کودک برای بازیابی',
fullDocTip: 'کل سند به عنوان تکه والد استفاده می شود و مستقیما بازیابی می شود. لطفا توجه داشته باشید که به دلایل عملکردی، متن بیش از 10000 توکن به طور خودکار کوتاه می شود.',
qaSwitchHighQualityTipTitle: 'فرمت پرسش و پاسخ به روش نمایه سازی با کیفیت بالا نیاز دارد',
useQALanguage: 'تکه با استفاده از فرمت پرسش و پاسخ در',
qaTip: 'هنگام استفاده از داده های پرسش و پاسخ ساختاریافته، می توانید اسنادی ایجاد کنید که سوالات را با پاسخ جفت می کند. این اسناد بر اساس بخش سؤال نمایه می شوند و به سیستم اجازه می دهند پاسخ های مربوطه را بر اساس شباهت پرس و جو بازیابی کند.',
},
stepThree: {
creationTitle: ' دانش ایجاد شد',
creationContent: 'ما به طور خودکار نام دانش را تعیین کردیم، شما میتوانید هر زمان آن را تغییر دهید',
label: 'نام دانش',
additionTitle: ' سند بارگذاری شد',
additionP1: 'سند به دانش بارگذاری شده است',
additionP2: '، میتوانید آن را در لیست اسناد دانش پیدا کنید.',
stop: 'توقف پردازش',
resume: 'ادامه پردازش',
navTo: 'رفتن به سند',
sideTipTitle: 'بعدی چیست',
sideTipContent: 'پس از اتمام فهرستبندی سند، دانش میتواند به عنوان زمینه در برنامه یکپارچه شود، میتوانید تنظیمات زمینه را در صفحه ارکستراسیون درخواست پیدا کنید. همچنین میتوانید آن را به عنوان یک افزونه فهرستبندی مستقل ChatGPT برای انتشار ایجاد کنید.',
modelTitle: 'آیا مطمئن هستید که میخواهید جاسازی را متوقف کنید؟',
modelContent: 'اگر نیاز به ادامه پردازش بعداً دارید، از جایی که متوقف شدهاید ادامه خواهید داد.',
modelButtonConfirm: 'تأیید',
modelButtonCancel: 'لغو',
},
jinaReader: {
configJinaReader: 'پیکربندی Jina Reader',
apiKeyPlaceholder: 'کلید API از jina.ai',
getApiKeyLinkText: 'کلید API رایگان خود را در jina.ai دریافت کنید',
},
otherDataSource: {
learnMore: 'بیشتر بدانید',
description: 'در حال حاضر، پایگاه دانش Dify فقط منابع داده محدودی دارد. کمک به یک منبع داده به پایگاه دانش Dify راهی فوق العاده برای کمک به افزایش انعطاف پذیری و قدرت پلتفرم برای همه کاربران است. راهنمای مشارکت ما شروع کار را آسان می کند. لطفا برای کسب اطلاعات بیشتر روی لینک زیر کلیک کنید.',
title: 'به منابع داده دیگر متصل شوید؟',
},
watercrawl: {
getApiKeyLinkText: 'کلید API خود را از watercrawl.dev دریافت کنید',
configWatercrawl: 'تنظیم واترکراول',
apiKeyPlaceholder: 'کلید API از watercrawl.dev',
},
}
export default translation

View File

@@ -0,0 +1,406 @@
const translation = {
list: {
title: 'اسناد',
desc: 'تمامی فایل‌های دانش در اینجا نمایش داده می‌شوند و کل دانش می‌تواند به ارجاعات Dify متصل شود یا از طریق افزونه چت ایندکس شود.',
addFile: 'اضافه کردن فایل',
addPages: 'اضافه کردن صفحات',
addUrl: 'اضافه کردن URL',
table: {
header: {
fileName: 'نام فایل',
words: 'کلمات',
hitCount: 'تعداد بازیابی',
uploadTime: 'زمان بارگذاری',
status: 'وضعیت',
action: 'اقدام',
chunkingMode: 'حالت تکه تکه کردن',
},
rename: 'تغییر نام',
name: 'نام',
},
action: {
uploadFile: 'بارگذاری فایل جدید',
settings: 'تنظیمات بخش‌بندی',
addButton: 'اضافه کردن قطعه',
add: 'اضافه کردن یک قطعه',
batchAdd: 'افزودن گروهی',
archive: 'بایگانی',
unarchive: 'خارج کردن از بایگانی',
delete: 'حذف',
enableWarning: 'فایل بایگانی شده نمی‌تواند فعال شود',
sync: 'همگام‌سازی',
resume: 'ادامه',
pause: 'مکث',
},
index: {
enable: 'فعال کردن',
disable: 'غیرفعال کردن',
all: 'همه',
enableTip: 'فایل می‌تواند ایندکس شود',
disableTip: 'فایل نمی‌تواند ایندکس شود',
},
status: {
queuing: 'در صف',
indexing: 'ایندکس‌سازی',
paused: 'متوقف شده',
error: 'خطا',
available: 'موجود',
enabled: 'فعال شده',
disabled: 'غیرفعال شده',
archived: 'بایگانی شده',
},
empty: {
title: 'هنوز هیچ سندی وجود ندارد',
upload: {
tip: 'شما می‌توانید فایل‌ها را بارگذاری کنید، از وب‌سایت همگام‌سازی کنید، یا از برنامه‌های وبی مانند Notion، GitHub و غیره.',
},
sync: {
tip: 'Dify به‌طور دوره‌ای فایل‌ها را از Notion شما دانلود و پردازش را کامل می‌کند.',
},
},
delete: {
title: 'آیا مطمئن هستید که حذف شود؟',
content: 'اگر بعداً نیاز به ادامه پردازش داشتید، از همان جایی که مانده بودید ادامه می‌دهید',
},
batchModal: {
title: 'افزودن گروهی قطعات',
csvUploadTitle: 'فایل CSV خود را اینجا بکشید و رها کنید، یا ',
browse: 'مرور کنید',
tip: 'فایل CSV باید به ساختار زیر مطابقت داشته باشد:',
question: 'سؤال',
answer: 'پاسخ',
contentTitle: 'محتوای قطعه',
content: 'محتوا',
template: 'الگو را از اینجا دانلود کنید',
cancel: 'لغو',
run: 'اجرای گروهی',
runError: 'اجرای گروهی ناموفق بود',
processing: 'در حال پردازش گروهی',
completed: 'واردات کامل شد',
error: 'خطای واردات',
ok: 'تأیید',
},
learnMore: 'بیشتر بدانید',
sort: {
uploadTime: 'زمان بارگذاری',
hitCount: 'تعداد بازیابی',
},
},
metadata: {
title: 'اطلاعات متا',
desc: 'برچسب‌گذاری متادیتا برای اسناد به هوش مصنوعی اجازه می‌دهد تا به موقع به آن‌ها دسترسی پیدا کند و منبع ارجاعات را برای کاربران آشکار کند.',
dateTimeFormat: 'D MMMM YYYY hh:mm A',
docTypeSelectTitle: 'لطفاً یک نوع سند را انتخاب کنید',
docTypeChangeTitle: 'تغییر نوع سند',
docTypeSelectWarning: 'اگر نوع سند تغییر کند، متادیتای پر شده فعلی دیگر حفظ نخواهد شد',
firstMetaAction: 'بزن بریم',
placeholder: {
add: 'اضافه کردن ',
select: 'انتخاب ',
},
source: {
upload_file: 'بارگذاری فایل',
notion: 'همگام‌سازی از Notion',
github: 'همگام‌سازی از Github',
online_document: 'سند آنلاین',
website_crawl: 'خزیدن وب سایت',
local_file: 'فایل محلی',
},
type: {
book: 'کتاب',
webPage: 'صفحه وب',
paper: 'مقاله',
socialMediaPost: 'پست شبکه‌های اجتماعی',
personalDocument: 'سند شخصی',
businessDocument: 'سند تجاری',
IMChat: 'چت IM',
wikipediaEntry: 'ورودی ویکی‌پدیا',
notion: 'همگام‌سازی از Notion',
github: 'همگام‌سازی از Github',
technicalParameters: 'پارامترهای فنی',
},
field: {
processRule: {
processDoc: 'پردازش سند',
segmentRule: 'قانون قطعه‌بندی',
segmentLength: 'طول قطعات',
processClean: 'تمیز کردن پردازش متن',
},
book: {
title: 'عنوان',
language: 'زبان',
author: 'نویسنده',
publisher: 'ناشر',
publicationDate: 'تاریخ انتشار',
ISBN: 'ISBN',
category: 'دسته‌بندی',
},
webPage: {
title: 'عنوان',
url: 'URL',
language: 'زبان',
authorPublisher: 'نویسنده/ناشر',
publishDate: 'تاریخ انتشار',
topicKeywords: 'موضوعات/کلیدواژه‌ها',
description: 'توضیحات',
},
paper: {
title: 'عنوان',
language: 'زبان',
author: 'نویسنده',
publishDate: 'تاریخ انتشار',
journalConferenceName: 'نام ژورنال/کنفرانس',
volumeIssuePage: 'جلد/شماره/صفحه',
DOI: 'DOI',
topicsKeywords: 'موضوعات/کلیدواژه‌ها',
abstract: 'چکیده',
},
socialMediaPost: {
platform: 'پلتفرم',
authorUsername: 'نویسنده/نام کاربری',
publishDate: 'تاریخ انتشار',
postURL: 'URL پست',
topicsTags: 'موضوعات/برچسب‌ها',
},
personalDocument: {
title: 'عنوان',
author: 'نویسنده',
creationDate: 'تاریخ ایجاد',
lastModifiedDate: 'تاریخ آخرین ویرایش',
documentType: 'نوع سند',
tagsCategory: 'برچسب‌ها/دسته‌بندی',
},
businessDocument: {
title: 'عنوان',
author: 'نویسنده',
creationDate: 'تاریخ ایجاد',
lastModifiedDate: 'تاریخ آخرین ویرایش',
documentType: 'نوع سند',
departmentTeam: 'دپارتمان/تیم',
},
IMChat: {
chatPlatform: 'پلتفرم چت',
chatPartiesGroupName: 'طرفین چت/نام گروه',
participants: 'شرکت‌کنندگان',
startDate: 'تاریخ شروع',
endDate: 'تاریخ پایان',
topicsKeywords: 'موضوعات/کلیدواژه‌ها',
fileType: 'نوع فایل',
},
wikipediaEntry: {
title: 'عنوان',
language: 'زبان',
webpageURL: 'URL صفحه وب',
editorContributor: 'ویرایشگر/همکار',
lastEditDate: 'تاریخ آخرین ویرایش',
summaryIntroduction: 'خلاصه/مقدمه',
},
notion: {
title: 'عنوان',
language: 'زبان',
author: 'نویسنده',
createdTime: 'زمان ایجاد',
lastModifiedTime: 'زمان آخرین ویرایش',
url: 'URL',
tag: 'برچسب',
description: 'توضیحات',
},
github: {
repoName: 'نام مخزن',
repoDesc: 'توضیحات مخزن',
repoOwner: 'مالک مخزن',
fileName: 'نام فایل',
filePath: 'مسیر فایل',
programmingLang: 'زبان برنامه‌نویسی',
url: 'URL',
license: 'مجوز',
lastCommitTime: 'زمان آخرین کامیت',
lastCommitAuthor: 'نویسنده آخرین کامیت',
},
originInfo: {
originalFilename: 'نام فایل اصلی',
originalFileSize: 'اندازه فایل اصلی',
uploadDate: 'تاریخ بارگذاری',
lastUpdateDate: 'تاریخ آخرین بروزرسانی',
source: 'منبع',
},
technicalParameters: {
segmentSpecification: 'مشخصات قطعات',
segmentLength: 'طول قطعات',
avgParagraphLength: 'طول متوسط پاراگراف',
paragraphs: 'پاراگراف‌ها',
hitCount: 'تعداد بازیابی',
embeddingTime: 'زمان جاسازی',
embeddedSpend: 'هزینه جاسازی',
},
},
languageMap: {
zh: 'چینی',
en: 'انگلیسی',
es: 'اسپانیایی',
fr: 'فرانسوی',
de: 'آلمانی',
ja: 'ژاپنی',
ko: 'کره‌ای',
ru: 'روسی',
ar: 'عربی',
pt: 'پرتغالی',
it: 'ایتالیایی',
nl: 'هلندی',
pl: 'لهستانی',
sv: 'سوئدی',
tr: 'ترکی',
he: 'عبری',
hi: 'هندی',
da: 'دانمارکی',
fi: 'فنلاندی',
no: 'نروژی',
hu: 'مجاری',
el: 'یونانی',
cs: 'چکی',
th: 'تایلندی',
id: 'اندونزیایی',
},
categoryMap: {
book: {
fiction: 'داستان',
biography: 'زندگی‌نامه',
history: 'تاریخ',
science: 'علم',
technology: 'فناوری',
education: 'آموزش',
philosophy: 'فلسفه',
religion: 'دین',
socialSciences: 'علوم اجتماعی',
art: 'هنر',
travel: 'سفر',
health: 'سلامت',
selfHelp: 'خودیاری',
businessEconomics: 'اقتصاد کسب‌وکار',
cooking: 'آشپزی',
childrenYoungAdults: 'کودکان و نوجوانان',
comicsGraphicNovels: 'کمیک‌ها و رمان‌های گرافیکی',
poetry: 'شعر',
drama: 'نمایشنامه',
other: 'دیگر',
},
personalDoc: {
notes: 'یادداشت‌ها',
blogDraft: 'پیش‌نویس وبلاگ',
diary: 'دفتر خاطرات',
researchReport: 'گزارش پژوهش',
bookExcerpt: 'گزیده کتاب',
schedule: 'برنامه‌ریزی',
list: 'فهرست',
projectOverview: 'نمای کلی پروژه',
photoCollection: 'مجموعه عکس',
creativeWriting: 'نوشته خلاقانه',
codeSnippet: 'قطعه کد',
designDraft: 'پیش‌نویس طراحی',
personalResume: 'رزومه شخصی',
other: 'دیگر',
},
businessDoc: {
meetingMinutes: 'صورتجلسه',
researchReport: 'گزارش پژوهش',
proposal: 'پیشنهاد',
employeeHandbook: 'راهنمای کارمند',
trainingMaterials: 'مواد آموزشی',
requirementsDocument: 'سند نیازمندی‌ها',
designDocument: 'سند طراحی',
productSpecification: 'مشخصات محصول',
financialReport: 'گزارش مالی',
marketAnalysis: 'تحلیل بازار',
projectPlan: 'طرح پروژه',
teamStructure: 'ساختار تیم',
policiesProcedures: 'سیاست‌ها و رویه‌ها',
contractsAgreements: 'قراردادها و توافق‌نامه‌ها',
emailCorrespondence: 'مکاتبات ایمیلی',
other: 'دیگر',
},
},
},
embedding: {
processing: 'در حال پردازش جاسازی...',
paused: 'جاسازی متوقف شده',
completed: 'جاسازی کامل شد',
error: 'خطای جاسازی',
docName: 'پیش‌پردازش سند',
mode: 'قانون بخش‌بندی',
segmentLength: 'طول قطعات',
textCleaning: 'پیش‌تعریف و تمیز کردن متن',
segments: 'پاراگراف‌ها',
highQuality: 'حالت با کیفیت بالا',
economy: 'حالت اقتصادی',
estimate: 'مصرف تخمینی',
stop: 'توقف پردازش',
resume: 'ادامه پردازش',
automatic: 'خودکار',
custom: 'سفارشی',
previewTip: 'پیش‌نمایش پاراگراف پس از اتمام جاسازی در دسترس خواهد بود',
parentMaxTokens: 'مادر',
pause: 'مکث',
childMaxTokens: 'کودک',
hierarchical: 'پدر و مادر و فرزند',
waiting: 'در حال انتظار برای جاسازی...',
},
segment: {
paragraphs: 'پاراگراف‌ها',
keywords: 'کلیدواژه‌ها',
addKeyWord: 'اضافه کردن کلیدواژه',
keywordError: 'حداکثر طول کلیدواژه ۲۰ کاراکتر است',
hitCount: 'تعداد بازیابی',
vectorHash: 'هش برداری: ',
questionPlaceholder: 'سؤال را اینجا اضافه کنید',
questionEmpty: 'سؤال نمی‌تواند خالی باشد',
answerPlaceholder: 'پاسخ را اینجا اضافه کنید',
answerEmpty: 'پاسخ نمی‌تواند خالی باشد',
contentPlaceholder: 'محتوا را اینجا اضافه کنید',
contentEmpty: 'محتوا نمی‌تواند خالی باشد',
newTextSegment: 'قطعه متن جدید',
newQaSegment: 'قطعه پرسش و پاسخ جدید',
delete: 'حذف این قطعه؟',
chunks_other: 'تکه',
characters_one: 'شخصیت',
editedAt: 'ویرایش شده در',
dateTimeFormat: 'MM/DD/YYYY h:mm',
parentChunks_other: 'تکه های والدین',
editChunk: 'ویرایش تکه',
collapseChunks: 'جمع کردن تکه ها',
clearFilter: 'فیلتر را پاک کنید',
characters_other: 'کاراکتر',
chunkDetail: 'جزئیات تکه',
searchResults_other: 'نتیجه',
addAnother: 'اضافه کردن دیگری',
parentChunks_one: 'تکه والدین',
childChunk: 'تکه کودک',
regenerationSuccessTitle: 'بازسازی به پایان رسید',
chunk: 'تکه',
addChildChunk: 'افزودن تکه فرزند',
chunkAdded: '1 تکه اضافه شد',
childChunks_one: 'تکه کودک',
edited: 'ویرایش',
editParentChunk: 'ویرایش تکه والد',
regeneratingTitle: 'بازسازی تکه های فرزند',
expandChunks: 'تکه ها را گسترش دهید',
childChunks_other: 'تکه های کودک',
newChildChunk: 'تکه کودک جدید',
editChildChunk: 'ویرایش Child Chunk',
parentChunk: 'تکه والدین',
chunks_one: 'تکه',
empty: 'هیچ تکه ای یافت نشد',
addChunk: 'افزودن تکه',
searchResults_one: 'نتیجه',
regenerationConfirmMessage: 'بازآفرینی تکه های فرزند تکه های فرزند فعلی، از جمله تکه های ویرایش شده و تکه های تازه اضافه شده را بازنویسی می کند. بازسازی را نمی توان خنثی کرد.',
childChunkAdded: '1 تکه کودک اضافه شد',
searchResults_zero: 'نتیجه',
newChunk: 'تکه جدید',
regeneratingMessage: 'این ممکن است یک لحظه طول بکشد، لطفا صبر کنید...',
regenerationConfirmTitle: 'آیا می خواهید تکه های کودک را بازسازی کنید؟',
regenerationSuccessMessage: 'می توانید این پنجره را ببندید.',
keywordEmpty: 'کلمه کلیدی نمی‌تواند خالی باشد',
keywordDuplicate: 'این کلیدواژه قبلاً وجود دارد',
},
}
export default translation

View File

@@ -0,0 +1,34 @@
const translation = {
title: 'آزمون بازیابی',
desc: 'آزمون اثرگذاری دانش بر اساس متن پرسش داده شده.',
dateTimeFormat: 'MM/DD/YYYY hh:mm A',
table: {
header: {
source: 'منبع',
text: 'متن',
time: 'زمان',
},
},
input: {
title: 'متن منبع',
placeholder: 'لطفاً یک متن وارد کنید، یک جمله کوتاه خبری توصیه می‌شود.',
countWarning: 'تا ۲۰۰ کاراکتر.',
indexWarning: 'فقط دانش با کیفیت بالا.',
testing: 'در حال آزمون',
},
hit: {
title: 'پاراگراف‌های بازیابی',
emptyTip: 'نتایج آزمون بازیابی اینجا نمایش داده می‌شوند',
},
noRecentTip: 'اینجا نتیجه پرسش اخیر وجود ندارد',
viewChart: 'مشاهده نمودار بُرداری',
settingTitle: 'تنظیمات بازیابی',
viewDetail: 'نمایش جزئیات',
records: 'سوابق',
keyword: 'کليدواژه',
hitChunks: '{{num}} را بزنید تکه های فرزند',
chunkDetail: 'جزئیات تکه',
open: 'باز',
}
export default translation

View File

@@ -0,0 +1,166 @@
const translation = {
creation: {
createFromScratch: {
title: 'خط لوله دانش خالی',
description: 'یک پایپ لاین سفارشی از ابتدا با کنترل کامل بر پردازش و ساختار داده ایجاد کنید.',
},
caution: 'احتیاط',
createKnowledge: 'ایجاد دانش',
backToKnowledge: 'بازگشت به دانش',
importDSL: 'ایمپورت از یک فایل DSL',
successTip: 'با موفقیت یک پایگاه دانش ایجاد کرد',
errorTip: 'ایجاد پایگاه دانش ناموفق است',
},
templates: {
customized: 'سفارشی',
},
operations: {
dataSource: 'منبع داده',
details: 'جزئیات',
convert: 'تبدیل',
choose: 'انتخاب',
preview: 'پیشنمایش',
process: 'فرایند',
editInfo: 'ویرایش اطلاعات',
useTemplate: 'از این پایپ لاین دانش استفاده کنید',
saveAndProcess: 'ذخیره و پردازش',
backToDataSource: 'بازگشت به منبع داده',
exportPipeline: 'خط لوله صادرات',
},
deletePipeline: {
content: 'حذف الگوی خط لوله برگشت ناپذیر است.',
title: 'آیا مطمئن هستید که این الگوی خط لوله را حذف می کنید؟',
},
publishPipeline: {
success: {
message: 'خط لوله دانش منتشر شد',
tip: 'برای افزودن یا مدیریت اسناد، به اسناد بروید.',
},
error: {
message: 'انتشار پایپ لاین دانش ناموفق است',
},
},
publishTemplate: {
success: {
learnMore: 'بیشتر بدانید',
message: 'الگوی خط لوله منتشر شد',
tip: 'می توانید از این الگو در صفحه ایجاد استفاده کنید.',
},
error: {
message: 'انتشار الگوی خط لوله انجام نشد',
},
},
exportDSL: {
successTip: 'DSL خط لوله را با موفقیت صادر کنید',
errorTip: 'صادرات DSL خط لوله انجام نشد',
},
details: {
structure: 'ساختار',
structureTooltip: 'ساختار Chunk نحوه تقسیم و نمایه سازی اسناد را تعیین می کند - حالت های عمومی، والد-فرزند و پرسش و پاسخ را ارائه می دهد - و برای هر پایگاه دانش منحصر به فرد است.',
createdBy: 'توسط {{author}}',
},
testRun: {
steps: {
dataSource: 'منبع داده',
documentProcessing: 'پردازش اسناد',
},
dataSource: {
localFiles: 'فایل های محلی',
},
notion: {
docTitle: 'اسناد مفهومی',
title: 'صفحات مفهومی را انتخاب کنید',
},
title: 'اجرای آزمایشی',
tooltip: 'در حالت اجرای آزمایشی، فقط یک سند مجاز به وارد کردن در یک زمان برای اشکال زدایی و مشاهده آسان تر است.',
},
inputFieldPanel: {
uniqueInputs: {
title: 'ورودی های منحصر به فرد برای هر ورودی',
tooltip: 'ورودی های منحصر به فرد فقط برای منبع داده انتخاب شده و گره های پایین دستی آن قابل دسترسی هستند. کاربران هنگام انتخاب منابع داده دیگر نیازی به پر کردن آن نخواهند داشت. فقط فیلدهای ورودی که توسط متغیرهای منبع داده ارجاع داده شده اند در مرحله اول ظاهر می شوند (منبع داده). تمام فیلدهای دیگر در مرحله دوم (اسناد فرآیند) نشان داده می شوند.',
},
globalInputs: {
title: 'ورودی های جهانی برای همه ورودی ها',
tooltip: 'ورودی های جهانی در همه گره ها به اشتراک گذاشته می شوند. کاربران باید هنگام انتخاب هر منبع داده ای آنها را پر کنند. به عنوان مثال، فیلدهایی مانند جداکننده و حداکثر طول تکه را می توان به طور یکنواخت در چندین منبع داده اعمال کرد. فقط فیلدهای ورودی که توسط متغیرهای منبع داده ارجاع داده می شوند در مرحله اول ظاهر می شوند (منبع داده). تمام فیلدهای دیگر در مرحله دوم نشان داده می شوند (اسناد پردازش).',
},
preview: {
stepOneTitle: 'منبع داده',
stepTwoTitle: 'اسناد پردازش',
},
error: {
variableDuplicate: 'نام متغیر از قبل وجود دارد. لطفا نام دیگری را انتخاب کنید.',
},
addInputField: 'افزودن فیلد ورودی',
title: 'فیلدهای ورودی کاربر',
editInputField: 'ویرایش فیلد ورودی',
description: 'فیلدهای ورودی کاربر برای تعریف و جمع آوری متغیرهای مورد نیاز در طول فرآیند اجرای خط لوله استفاده می شود. کاربران می توانند نوع فیلد را سفارشی کنند و مقدار ورودی را به طور انعطاف پذیر پیکربندی کنند تا نیازهای منابع داده مختلف یا مراحل پردازش سند را برآورده کنند.',
},
addDocuments: {
steps: {
processDocuments: 'اسناد پردازش',
processingDocuments: 'پردازش اسناد',
chooseDatasource: 'یک منبع داده را انتخاب کنید',
},
stepOne: {
preview: 'پیشنمایش',
},
stepTwo: {
chunkSettings: 'تنظیمات تکه',
previewChunks: 'پیش نمایش تکه ها',
},
stepThree: {
learnMore: 'بیشتر بدانید',
},
backToDataSource: 'منبع داده',
characters: 'کاراکتر',
title: 'اسناد را اضافه کنید',
selectOnlineDocumentTip: 'پردازش تا {{count}} صفحه',
selectOnlineDriveTip: 'پردازش تا {{count}} فایل، حداکثر {{fileSize}} مگابایت برای هر فایل',
},
documentSettings: {
title: 'تنظیمات سند',
},
onlineDocument: {
pageSelectorTitle: '{{name}} صفحه',
},
onlineDrive: {
breadcrumbs: {
allFiles: 'همه فایل ها',
searchPlaceholder: 'فایل های جستجو...',
allBuckets: 'همه سطل های ذخیره سازی ابری',
searchResult: 'یافتن {{searchResultsLength}} مورد در پوشه «{{folderName}}»',
},
emptyFolder: 'این پوشه خالی است',
resetKeywords: 'بازنشانی کلمات کلیدی',
emptySearchResult: 'هیچ موردی یافت نشد',
notSupportedFileType: 'این نوع فایل پشتیبانی نمی شود',
notConnected: '{{name}} متصل نیست',
notConnectedTip: 'برای همگام‌سازی با {{name}}، ابتدا باید اتصال به {{name}} برقرار شود.',
},
credentialSelector: {
name: '{{pluginName}} {{credentialName}}',
},
conversion: {
confirm: {
title: 'تایید',
content: 'این عمل دائمی است. نمی توانید به روش قبلی برگردید. لطفا برای تبدیل تأیید کنید.',
},
title: 'تبدیل به پایپ لاین دانش',
warning: 'این عمل قابل برگشت نیست.',
errorMessage: 'تبدیل مجموعه داده به خط لوله انجام نشد',
successMessage: 'مجموعه داده را با موفقیت به یک خط لوله تبدیل کرد',
descriptionChunk2: '- یک رویکرد بازتر و انعطاف پذیرتر با دسترسی به افزونه ها از بازار ما. این روش پردازش جدید را برای تمام اسناد آینده اعمال می کند.',
descriptionChunk1: 'اکنون می توانید پایگاه دانش موجود خود را برای استفاده از خط لوله دانش برای پردازش اسناد تبدیل کنید',
},
knowledgePermissions: 'مجوزهای',
inputField: 'فیلد ورودی',
knowledgeNameAndIcon: 'نام و نماد دانش',
knowledgeDescription: 'شرح دانش',
pipelineNameAndIcon: 'نام و نماد خط لوله',
editPipelineInfo: 'ویرایش اطلاعات خط لوله',
knowledgeNameAndIconPlaceholder: 'لطفا نام پایگاه دانش را وارد کنید',
knowledgeDescriptionPlaceholder: 'آنچه در این پایگاه دانش وجود دارد را شرح دهید. توضیحات دقیق به هوش مصنوعی اجازه می دهد تا با دقت بیشتری به محتوای مجموعه داده دسترسی داشته باشد. اگر خالی باشد، Dify از استراتژی ضربه پیش فرض استفاده می کند. (اختیاری)',
configurationTip: 'پیکربندی {{pluginName}}',
}
export default translation

View File

@@ -0,0 +1,51 @@
const translation = {
title: 'تنظیمات دانش',
desc: 'اینجا می‌توانید ویژگی‌ها و روش‌های کاری دانش را تغییر دهید.',
form: {
name: 'نام دانش',
namePlaceholder: 'لطفاً نام دانش را وارد کنید',
nameError: 'نام نمی‌تواند خالی باشد',
desc: 'توضیحات دانش',
descInfo: 'لطفاً یک توضیح متنی واضح بنویسید تا محتوای دانش را مشخص کند. این توضیحات به عنوان مبنایی برای تطبیق هنگام انتخاب از چندین دانش برای استنتاج استفاده خواهد شد.',
descPlaceholder: 'توضیح دهید که در این دانش چه چیزی وجود دارد. توضیحات دقیق به هوش مصنوعی اجازه می‌دهد تا به موقع به محتوای دانش دسترسی پیدا کند. اگر خالی باشد، دیفی از استراتژی پیش‌فرض استفاده خواهد کرد.',
descWrite: 'یاد بگیرید چگونه یک توضیح دانش خوب بنویسید.',
permissions: 'مجوزها',
permissionsOnlyMe: 'فقط من',
permissionsAllMember: 'تمام اعضای تیم',
permissionsInvitedMembers: 'برخی از اعضای تیم',
me: '(شما)',
indexMethod: 'روش نمایه‌سازی',
indexMethodHighQuality: 'کیفیت بالا',
indexMethodHighQualityTip: 'مدل تعبیه را برای پردازش فراخوانی کنید تا دقت بالاتری هنگام جستجوی کاربران فراهم شود.',
indexMethodEconomy: 'اقتصادی',
indexMethodEconomyTip: 'استفاده از موتورهای برداری آفلاین، شاخص‌های کلمات کلیدی و غیره برای کاهش دقت بدون صرف توکن‌ها',
embeddingModel: 'مدل تعبیه',
embeddingModelTip: 'برای تغییر مدل تعبیه، لطفاً به ',
embeddingModelTipLink: 'تنظیمات',
retrievalSetting: {
title: 'تنظیمات بازیابی',
learnMore: 'بیشتر بدانید',
description: ' درباره روش بازیابی.',
longDescription: ' درباره روش بازیابی، می‌توانید در هر زمانی در تنظیمات دانش این را تغییر دهید.',
method: 'روش بازیابی',
},
save: 'ذخیره',
externalKnowledgeAPI: 'API دانش خارجی',
retrievalSettings: 'تنظیمات بازیابی',
externalKnowledgeID: 'شناسه دانش خارجی',
indexMethodChangeToEconomyDisabledTip: 'برای تنزل رتبه از HQ به ECO در دسترس نیست',
helpText: 'یاد بگیرید که چگونه یک توضیحات مجموعه داده خوب بنویسید.',
upgradeHighQualityTip: 'پس از ارتقاء به حالت کیفیت بالا، بازگشت به حالت اقتصادی در دسترس نیست',
searchModel: 'جستجوی مدل',
chunkStructure: {
title: 'ساختار تکه',
learnMore: 'بیشتر بدانید',
description: 'درباره ساختار تکه تکه است.',
},
nameAndIcon: 'نام و نماد',
numberOfKeywords: 'تعداد کلمات کلیدی',
onSearchResults: 'هیچ عضوی با عبارت جستجوی شما مطابقت ندارد.\nجستجویتان را دوباره امتحان کنید.',
},
}
export default translation

View File

@@ -0,0 +1,243 @@
const translation = {
knowledge: 'دانش',
documentCount: ' سند',
wordCount: ' هزار کلمه',
appCount: ' برنامه‌های متصل',
createDataset: 'ایجاد دانش',
createDatasetIntro: 'داده‌های متنی خود را وارد کنید یا از طریق Webhook در زمان واقعی برای بهبود زمینه LLM بنویسید.',
deleteDatasetConfirmTitle: 'حذف این دانش؟',
deleteDatasetConfirmContent:
'حذف دانش غیر قابل برگشت است. کاربران دیگر نمی‌توانند به دانش شما دسترسی پیدا کنند و تمام تنظیمات درخواست و گزارش‌ها به طور دائم حذف خواهند شد.',
datasetUsedByApp: 'دانش توسط برخی برنامه‌ها استفاده می‌شود. برنامه‌ها دیگر نمی‌توانند از این دانش استفاده کنند و تمام تنظیمات درخواست و گزارش‌ها به طور دائم حذف خواهند شد.',
datasetDeleted: 'دانش حذف شد',
datasetDeleteFailed: 'حذف دانش ناموفق بود',
didYouKnow: 'آیا می‌دانستید؟',
intro1: 'دانش می‌تواند در برنامه Dify ',
intro2: 'به عنوان یک زمینه',
intro3: 'ادغام شود',
intro4: 'یا می‌تواند ',
intro5: 'به عنوان یک افزونه مستقل ChatGPT برای انتشار',
intro6: 'ایجاد شود',
unavailable: 'در دسترس نیست',
datasets: 'دانش',
datasetsApi: 'دسترسی API',
retrieval: {
semantic_search: {
title: 'جستجوی برداری',
description: 'تولید جاسازی‌های جستجو و جستجوی بخش متنی که بیشترین شباهت را به نمایش برداری آن دارد.',
},
full_text_search: {
title: 'جستجوی متن کامل',
description: 'فهرست کردن تمام اصطلاحات در سند، به کاربران اجازه می‌دهد هر اصطلاحی را جستجو کنند و بخش متنی مربوط به آن اصطلاحات را بازیابی کنند.',
},
hybrid_search: {
title: 'جستجوی هیبریدی',
description: 'جستجوی متن کامل و برداری را همزمان اجرا می‌کند، دوباره رتبه‌بندی می‌کند تا بهترین تطابق برای درخواست کاربر انتخاب شود. کاربران می‌توانند وزن‌ها را تنظیم کنند یا به یک مدل دوباره رتبه‌بندی تنظیم کنند.',
recommend: 'توصیه',
},
invertedIndex: {
},
change: 'تغییر',
changeRetrievalMethod: 'تغییر روش بازیابی',
keyword_search: {
title: 'شاخص معکوس',
description: 'شاخص معکوس ساختاری است که برای بازیابی کارآمد استفاده می شود. هر اصطلاح که بر اساس اصطلاحات سازماندهی شده است، به اسناد یا صفحات وب حاوی آن اشاره می کند.',
},
},
docsFailedNotice: 'اسناد نتوانستند فهرست‌بندی شوند',
retry: 'تلاش مجدد',
indexingTechnique: {
high_quality: 'HQ',
economy: 'ECO',
},
indexingMethod: {
semantic_search: 'برداری',
full_text_search: 'متن کامل',
hybrid_search: 'هیبریدی',
invertedIndex: 'معکوس',
},
mixtureHighQualityAndEconomicTip: 'مدل دوباره رتبه‌بندی برای ترکیب پایگاه‌های دانش با کیفیت بالا و اقتصادی لازم است.',
inconsistentEmbeddingModelTip: 'مدل دوباره رتبه‌بندی لازم است اگر مدل‌های جاسازی پایگاه‌های دانش انتخابی ناسازگار باشند.',
retrievalSettings: 'تنظیمات بازیابی',
rerankSettings: 'تنظیمات دوباره رتبه‌بندی',
weightedScore: {
title: 'امتیاز وزنی',
description: 'با تنظیم وزن‌های اختصاص داده شده، این استراتژی دوباره رتبه‌بندی تعیین می‌کند که آیا اولویت با تطابق معنایی یا کلمات کلیدی است.',
semanticFirst: 'اولویت معنایی',
keywordFirst: 'اولویت کلمه کلیدی',
customized: 'سفارشی‌سازی شده',
semantic: 'معنایی',
keyword: 'کلمه کلیدی',
},
nTo1RetrievalLegacy: 'بازیابی N-to-1 از سپتامبر به طور رسمی منسوخ خواهد شد. توصیه می‌شود از بازیابی چند مسیر جدید استفاده کنید تا نتایج بهتری بدست آورید.',
nTo1RetrievalLegacyLink: 'بیشتر بدانید',
nTo1RetrievalLegacyLinkText: ' بازیابی N-to-1 از سپتامبر به طور رسمی منسوخ خواهد شد.',
defaultRetrievalTip: 'بازیابی چند مسیره به طور پیش فرض استفاده می شود. دانش از چندین پایگاه دانش بازیابی می شود و سپس دوباره رتبه بندی می شود.',
editExternalAPIConfirmWarningContent: {
front: 'این API دانش خارجی به',
end: 'دانش خارجی ، و این اصلاح برای همه آنها اعمال خواهد شد. آیا مطمئن هستید که می خواهید این تغییر را ذخیره کنید؟',
},
editExternalAPIFormWarning: {
front: 'این API خارجی به',
end: 'دانش بیرونی',
},
deleteExternalAPIConfirmWarningContent: {
title: {
front: 'حذف',
end: '?',
},
content: {
front: 'این API دانش خارجی به',
end: 'دانش بیرونی. حذف این API همه آنها را باطل می کند. آیا مطمئن هستید که می خواهید این API را حذف کنید؟',
},
noConnectionContent: 'آیا مطمئن هستید که این API را حذف خواهید کرد؟',
},
selectExternalKnowledgeAPI: {
placeholder: 'یک API دانش خارجی را انتخاب کنید',
},
connectDatasetIntro: {
content: {
link: 'یادگیری نحوه ایجاد یک API خارجی',
front: 'برای اتصال به یک پایگاه دانش خارجی، ابتدا باید یک API خارجی ایجاد کنید. لطفا با دقت بخوانید و به',
end: '. سپس شناسه دانش مربوطه را پیدا کرده و آن را در فرم سمت چپ پر کنید. اگر تمام اطلاعات صحیح باشد، پس از کلیک بر روی دکمه اتصال، به طور خودکار به آزمون بازیابی در پایگاه دانش می رود.',
},
learnMore: 'بیشتر بدانید',
title: 'چگونه به یک پایگاه دانش خارجی متصل شویم؟',
},
connectHelper: {
helper5: 'قبل از استفاده از این ویژگی با دقت',
helper3: '. اکیدا توصیه می کنیم که',
helper2: 'فقط قابلیت بازیابی پشتیبانی می شود',
helper4: 'مستندات راهنما را بخوانید',
helper1: 'از طریق API و شناسه پایگاه دانش به پایگاه های دانش خارجی متصل شوید. در حال حاضر،',
},
externalKnowledgeForm: {
cancel: 'لغو',
connect: 'اتصال',
},
externalAPIForm: {
encrypted: {
front: 'توکن API شما رمزگذاری و با استفاده از',
end: 'فناوری.',
},
apiKey: 'کلید API',
edit: 'ویرایش',
save: 'ذخیره',
cancel: 'لغو',
endpoint: 'نقطه پایانی API',
name: 'نام',
},
editExternalAPITooltipTitle: 'دانش مرتبط',
externalKnowledgeNamePlaceholder: 'لطفا نام پایگاه دانش را وارد کنید',
externalAPIPanelDocumentation: 'یادگیری نحوه ایجاد یک API دانش خارجی',
externalKnowledgeDescriptionPlaceholder: 'آنچه در این پایگاه دانش وجود دارد را توضیح دهید (اختیاری)',
externalKnowledgeDescription: 'توضیحات دانش',
externalTag: 'خارجی',
externalKnowledgeIdPlaceholder: 'لطفا شناسه دانش را وارد کنید',
noExternalKnowledge: 'هنوز هیچ API دانش خارجی وجود ندارد، برای ایجاد اینجا را کلیک کنید',
externalAPIPanelTitle: 'API دانش خارجی',
connectDataset: 'اتصال به یک پایگاه دانش خارجی',
externalKnowledgeId: 'شناسه دانش خارجی',
externalAPI: 'API خارجی',
externalKnowledgeName: 'نام دانش خارجی',
createExternalAPI: 'افزودن یک API دانش خارجی',
createNewExternalAPI: 'ایجاد یک API دانش خارجی جدید',
learnHowToWriteGoodKnowledgeDescription: 'یاد بگیرید که چگونه یک توضیحات دانش خوب بنویسید.',
editExternalAPIFormTitle: 'ویرایش API دانش خارجی',
externalAPIPanelDescription: 'API دانش خارجی برای اتصال به یک پایگاه دانش خارج از Dify و بازیابی دانش از آن پایگاه دانش استفاده می شود.',
allExternalTip: 'هنگامی که فقط از دانش خارجی استفاده می کنید، کاربر می تواند انتخاب کند که آیا مدل Rerank را فعال کند یا خیر. اگر فعال نباشد، تکه های بازیابی شده بر اساس امتیازات مرتب می شوند. هنگامی که استراتژی های بازیابی پایگاه های دانش مختلف متناقض باشد، نادرست خواهد بود.',
mixtureInternalAndExternalTip: 'مدل Rerank برای آمیختگی دانش درونی و بیرونی مورد نیاز است.',
chunkingMode: {
parentChild: 'پدر و مادر و فرزند',
general: 'عمومی',
graph: 'گراف',
qa: 'پرسش و پاسخ',
},
parentMode: {
fullDoc: 'مستند کامل',
paragraph: 'پاراگراف',
},
batchAction: {
disable: 'غیر فعال کردن',
cancel: 'لغو',
selected: 'انتخاب',
enable: 'فعال',
delete: 'حذف',
archive: 'بایگانی',
},
enable: 'فعال',
documentsDisabled: '{{num}} اسناد غیرفعال - غیرفعال برای بیش از 30 روز',
preprocessDocument: '{{عدد}} اسناد پیش پردازش',
localDocs: 'اسناد محلی',
allKnowledge: 'همه دانش ها',
allKnowledgeDescription: 'برای نمایش تمام دانش در این فضای کاری انتخاب کنید. فقط مالک فضای کاری می تواند تمام دانش را مدیریت کند.',
metadata: {
createMetadata: {
name: 'نام',
title: 'متادیتای جدید',
namePlaceholder: 'افزودن نام متاداده',
back: 'عقب',
type: 'نوع',
},
checkName: {
invalid: 'نام متاداده فقط می‌تواند شامل حروف کوچک، اعداد و زیرخط‌ها باشد و باید با یک حرف کوچک آغاز شود.',
empty: 'نام فراداده نمی‌تواند خالی باشد',
tooLong: 'نام متا داده نمی‌تواند بیشتر از {{max}} کاراکتر باشد',
},
batchEditMetadata: {
multipleValue: 'چندین ارزش',
editDocumentsNum: 'ویرایش {{num}} سند',
applyToAllSelectDocumentTip: 'به‌طور خودکار تمام متاداده‌های ویرایش شده و جدید فوق را برای تمام اسناد انتخاب شده ایجاد کنید، در غیر این صورت ویرایش متاداده فقط به اسنادی که دارای آن هستند اعمال خواهد شد.',
applyToAllSelectDocument: 'به تمام اسناد انتخاب شده اعمال کنید',
editMetadata: 'ویرایش متا داده ها',
},
selectMetadata: {
search: 'جستجوی متا داده',
newAction: 'متادیتای جدید',
manageAction: 'مدیریت',
},
datasetMetadata: {
deleteContent: 'آیا از حذف متاداده "{{name}}" اطمینان دارید؟',
builtIn: 'ساخته شده درون‌سازی',
description: 'شما می‌توانید تمام فراداده‌ها را در این دانش مدیریت کنید. تغییرات به هر سندی همزمان می‌شوند.',
deleteTitle: 'برای حذف تأیید کنید',
disabled: 'متعادل',
values: '{{num}} مقدار',
namePlaceholder: 'نام متادیتا',
addMetaData: 'متادیتا اضافه کنید',
builtInDescription: 'متاداده‌های داخلی به‌طور خودکار استخراج و تولید می‌شوند. قبل از استفاده باید فعال شود و قابل ویرایش نیست.',
name: 'نام',
rename: 'تغییر نام',
},
documentMetadata: {
technicalParameters: 'پارامترهای فنی',
documentInformation: 'اطلاعات سند',
startLabeling: 'شروع برچسب‌گذاری',
metadataToolTip: 'متادیتا به عنوان یک فیلتر حیاتی عمل می‌کند که دقت و ارتباط اطلاعات بازیابی را بهبود می‌بخشد. شما می‌توانید متادیتا را برای این سند در اینجا ویرایش و اضافه کنید.',
},
addMetadata: 'متادیتا اضافه کنید',
chooseTime: 'زمانی را انتخاب کنید...',
metadata: 'متادیتا',
},
embeddingModelNotAvailable: 'مدل جاسازی در دسترس نیست.',
updated: 'بروز رسانی',
createFromPipeline: 'ایجاد از پایپ لاین دانش',
externalKnowledgeBase: 'پایگاه دانش خارجی',
serviceApi: {
card: {
apiKey: 'کلید API',
title: 'رابط برنامه‌نویسی سرویس پشتیبان',
apiReference: 'مرجع API',
endpoint: 'نقطه انتهایی رابط برنامه‌نویسی سرویس',
},
disabled: 'معلول',
enabled: 'در حال خدمت',
title: 'رابط برنامه‌نویسی سرویس',
},
docAllEnabled_one: 'سند {{count}} فعال شد',
docAllEnabled_other: 'تمام اسناد {{count}} فعال شدند',
partialEnabled_one: 'مجموعاً {{count}} سند، {{num}} موجود',
partialEnabled_other: 'مجموع {{count}} سند، {{num}} موجود',
}
export default translation

View File

@@ -0,0 +1,76 @@
const translation = {
toVerifiedTip: {
coupon: 'کوپن انحصاری ۱۰۰٪',
end: 'برای طرح حرفه‌ای دیفی.',
front: 'شما اکنون برای وضعیت تأیید شده آموزشی واجد شرایط هستید. لطفاً اطلاعات تحصیلی خود را در زیر وارد کنید تا فرآیند را کامل کرده و یک دریافت کنید.',
},
form: {
schoolName: {
title: 'نام مدرسه شما',
placeholder: 'نام رسمی و کامل مدرسه خود را وارد کنید',
},
schoolRole: {
option: {
teacher: 'معلم',
student: 'دانش آموز',
administrator: 'مدیر مدرسه',
},
title: 'نقش شما در مدرسه',
},
terms: {
desc: {
privacyPolicy: 'سیاست حریم خصوصی',
end: 'با ارسال:',
and: 'و',
termsOfService: 'شرایط خدمات',
front: 'اطلاعات شما و استفاده از وضعیت تأیید شده آموزشی تابع شرایط ما است.',
},
option: {
age: 'من تأیید می‌کنم که حداقل ۱۸ سال سن دارم',
inSchool: 'من تأیید می‌کنم که در مؤسسه‌ای که نام برده شده، ثبت‌نام شده یا استخدام شده‌ام. دیفی ممکن است از من بخواهد مدرکی برای ثبت‌نام/استخدام ارائه دهم. اگر صلاحیتم را اشتباه نمایم، موافقت می‌کنم که هر گونه هزینه‌ای که به‌خاطر وضعیت تحصیلی من ابتدا معاف شده، پرداخت کنم.',
},
title: 'شرایط و توافقات',
},
},
submitError: 'ارسال فرم ناموفق بود. لطفا بعداً دوباره تلاش کنید.',
emailLabel: 'ایمیل فعلی شما',
currentSigned: 'اکنون به عنوان',
rejectContent: 'متاسفانه، شما واجد شرایط وضعیت تأیید شده آموزشی نیستید و به همین دلیل نمی‌توانید کوپن انحصاری ۱۰۰٪ برای طرح حرفه‌ای Dify را در صورت استفاده از این آدرس ایمیل دریافت کنید.',
learn: 'یاد بگیرید چگونه مدارک تحصیلی خود را تأیید کنید',
successContent: 'ما یک کوپن تخفیف ۱۰۰٪ برای طرح حرفه‌ای Dify به حساب شما صادر کرده‌ایم. این کوپن به مدت یک سال اعتبار دارد، لطفاً در بازه اعتبار از آن استفاده کنید.',
toVerified: 'تحصیلات خود را تأیید کنید',
rejectTitle: 'تأییدیه آموزشی دیفی شما رد شده است',
submit: 'ارسال',
successTitle: 'شما آموزش دیفی تأیید شده دارید',
notice: {
expired: {
summary: {
line1: 'شما هنوز می‌توانید به دیفی دسترسی داشته باشید و از آن استفاده کنید.',
line2: 'با این حال، شما دیگر واجد شرایط برای دریافت کوپن‌های تخفیف آموزشی جدید نیستید.',
},
title: 'وضعیت تحصیلی شما منقضی شده است',
},
isAboutToExpire: {
summary: 'نگران نباشید — این بر اشتراک فعلی شما تأثیر نخواهد گذاشت، اما زمانیکه تمدید شود، شما تخفیف آموزشی را دریافت نخواهید کرد مگر اینکه وضعیت خود را دوباره تأیید کنید.',
title: 'وضعیت تحصیلی شما در {{date}} منقضی خواهد شد',
},
stillInEducation: {
title: 'آیا هنوز در حال تحصیل هستید؟',
expired: 'هم‌اکنون دوباره تأیید کنید تا یک کوپن جدید برای سال تحصیلی آینده دریافت کنید. ما آن را به حساب شما اضافه خواهیم کرد و می‌توانید از آن برای ارتقاء بعدی استفاده کنید.',
isAboutToExpire: 'در حال حاضر دوباره تأیید کنید تا یک کوپن جدید برای سال تحصیلی آینده دریافت کنید. این کوپن به حساب شما ذخیره خواهد شد و در زمان تمدید بعدی شما آماده استفاده است.',
},
alreadyGraduated: {
title: 'قبلاً فارغ‌التحصیل شده‌ای؟',
expired: 'هر زمان که بخواهید می‌توانید ارتقا دهید تا دسترسی کامل به ویژگی‌های پرداختی داشته باشید.',
isAboutToExpire: 'اشتراک فعلی شما همچنان فعال خواهد ماند. وقتی که به پایان رسید، به طرح Sandbox منتقل خواهید شد، یا می‌توانید هر زمان به منظور بازگرداندن دسترسی کامل به ویژگی‌های پرداختی، ارتقا دهید.',
},
action: {
dismiss: 'رد کردن',
upgrade: 'ارتقاء',
reVerify: 'دوباره تأیید کنید',
},
dateFormat: 'MM/DD/YYYY',
},
}
export default translation

View File

@@ -0,0 +1,44 @@
const translation = {
title: 'کاوش',
sidebar: {
discovery: 'کشف',
chat: 'چت',
workspace: 'فضای کاری',
action: {
pin: 'سنجاق کردن',
unpin: 'برداشتن سنجاق',
rename: 'تغییر نام',
delete: 'حذف',
},
delete: {
title: 'حذف برنامه',
content: 'آیا مطمئن هستید که می‌خواهید این برنامه را حذف کنید؟',
},
},
apps: {
title: 'کاوش برنامه‌ها توسط دیفی',
description: 'از این برنامه‌های قالبی بلافاصله استفاده کنید یا برنامه‌های خود را بر اساس این قالب‌ها سفارشی کنید.',
allCategories: 'پیشنهاد شده',
},
appCard: {
addToWorkspace: 'افزودن به فضای کاری',
customize: 'سفارشی کردن',
},
appCustomize: {
title: 'ایجاد برنامه از {{name}}',
subTitle: 'آیکون و نام برنامه',
nameRequired: 'نام برنامه الزامی است',
},
category: {
Assistant: 'دستیار',
Writing: 'نوشتن',
Translate: 'ترجمه',
Programming: 'برنامه‌نویسی',
HR: 'منابع انسانی',
Agent: 'عامل',
Workflow: 'گردش',
Entertainment: 'سرگرمی',
},
}
export default translation

View File

@@ -0,0 +1,8 @@
const translation = {
sidebar: {
expandSidebar: 'نوار کناری را گسترش دهید',
collapseSidebar: 'جمع کردن نوار کناری',
},
}
export default translation

View File

@@ -0,0 +1,126 @@
const translation = {
pageTitle: 'هی، بیایید شروع کنیم!👋',
welcome: 'به Dify خوش آمدید، لطفا برای ادامه وارد شوید.',
email: 'آدرس ایمیل',
emailPlaceholder: 'ایمیل شما',
password: 'رمز عبور',
passwordPlaceholder: 'رمز عبور شما',
name: 'نام کاربری',
namePlaceholder: 'نام کاربری شما',
forget: 'رمز عبور خود را فراموش کرده‌اید؟',
signBtn: 'ورود',
installBtn: 'راه‌اندازی',
setAdminAccount: 'راه‌اندازی حساب مدیر',
setAdminAccountDesc: 'بیشترین امتیازات برای حساب مدیر، که می‌تواند برای ایجاد برنامه‌ها و مدیریت ارائه‌دهندگان LLM و غیره استفاده شود.',
createAndSignIn: 'ایجاد و ورود',
oneMoreStep: 'یک مرحله دیگر',
createSample: 'بر اساس این اطلاعات، ما برای شما یک نمونه برنامه ایجاد خواهیم کرد',
invitationCode: 'کد دعوت',
invitationCodePlaceholder: 'کد دعوت شما',
interfaceLanguage: 'زبان رابط کاربری',
timezone: 'منطقه زمانی',
go: 'برو به Dify',
sendUsMail: 'ایمیل معرفی خود را برای ما ارسال کنید، و ما درخواست دعوت را بررسی خواهیم کرد.',
acceptPP: 'من سیاست حفظ حریم خصوصی را خوانده و قبول می‌کنم',
reset: 'لطفاً برای بازنشانی رمز عبور خود دستور زیر را اجرا کنید',
withGitHub: 'ادامه با GitHub',
withGoogle: 'ادامه با Google',
rightTitle: 'پتانسیل کامل LLM را باز کنید',
rightDesc: 'به راحتی برنامه‌های AI با ظاهری جذاب، قابل اجرا و بهبود پذیر ایجاد کنید.',
tos: 'شرایط خدمات',
pp: 'سیاست حفظ حریم خصوصی',
tosDesc: 'با ثبت نام، شما با شرایط ما موافقت می‌کنید',
goToInit: 'اگر حساب را اولیه نکرده‌اید، لطفاً به صفحه اولیه‌سازی بروید',
dontHave: 'ندارید؟',
invalidInvitationCode: 'کد دعوت نامعتبر است',
accountAlreadyInited: 'حساب قبلاً اولیه شده است',
forgotPassword: 'رمز عبور خود را فراموش کرده‌اید؟',
resetLinkSent: 'لینک بازنشانی ارسال شد',
sendResetLink: 'ارسال لینک بازنشانی',
backToSignIn: 'بازگشت به ورود',
forgotPasswordDesc: 'لطفاً آدرس ایمیل خود را وارد کنید تا رمز عبور خود را بازنشانی کنید. ما یک ایمیل با دستورالعمل‌های بازنشانی برای شما ارسال خواهیم کرد.',
checkEmailForResetLink: 'لطفاً ایمیل خود را برای لینک بازنشانی رمز عبور بررسی کنید. اگر در عرض چند دقیقه ظاهر نشد، پوشه اسپم خود را بررسی کنید.',
passwordChanged: 'اکنون وارد شوید',
changePassword: 'تغییر رمز عبور',
changePasswordTip: 'لطفاً یک رمز عبور جدید برای حساب خود وارد کنید',
invalidToken: 'توکن نامعتبر یا منقضی شده است',
confirmPassword: 'تایید رمز عبور',
confirmPasswordPlaceholder: 'رمز عبور جدید خود را تایید کنید',
passwordChangedTip: 'رمز عبور شما با موفقیت تغییر یافت',
error: {
emailEmpty: 'آدرس ایمیل لازم است',
emailInValid: 'لطفاً یک آدرس ایمیل معتبر وارد کنید',
nameEmpty: 'نام لازم است',
passwordEmpty: 'رمز عبور لازم است',
passwordLengthInValid: 'رمز عبور باید حداقل ۸ کاراکتر باشد',
passwordInvalid: 'رمز عبور باید شامل حروف و اعداد باشد و طول آن بیشتر از ۸ کاراکتر باشد',
registrationNotAllowed: 'حساب پیدا نشد. لطفا برای ثبت نام با مدیر سیستم تماس حاصل فرمایید.',
invalidEmailOrPassword: 'ایمیل یا رمز عبور نامعتبر است.',
},
license: {
tip: 'قبل از شروع Dify Community Edition، GitHub را بخوانید',
link: 'مجوز منبع باز',
},
join: 'عضویت',
joinTipStart: 'شما را دعوت می‌کنیم به',
joinTipEnd: 'تیم در Dify',
invalid: 'لینک منقضی شده است',
explore: 'کاوش Dify',
activatedTipStart: 'شما به',
activatedTipEnd: 'تیم پیوسته‌اید',
activated: 'اکنون وارد شوید',
adminInitPassword: 'رمز عبور اولیه مدیر',
validate: 'اعتبارسنجی',
checkCode: {
verify: 'تایید',
verificationCode: 'کد تأیید',
invalidCode: 'کد نامعتبر',
emptyCode: 'کد مورد نیاز است',
didNotReceiveCode: 'کد را دریافت نکردید؟',
verificationCodePlaceholder: 'کد 6 رقمی را وارد کنید',
useAnotherMethod: 'از روش دیگری استفاده کنید',
checkYourEmail: 'ایمیل خود را بررسی کنید',
validTime: 'به خاطر داشته باشید که کد 5 دقیقه اعتبار دارد',
resend: 'ارسال مجدد',
tipsPrefix: 'ما یک کد تأیید می‌فرستیم به ',
},
or: 'یا',
back: 'بازگشت',
backToLogin: 'بازگشت به ورود',
changePasswordBtn: 'تنظیم رمز عبور',
continueWithCode: 'با کد ادامه دهید',
withSSO: 'با SSO ادامه دهید',
resetPassword: 'بازنشانی رمز عبور',
usePassword: 'از رمز عبور استفاده کنید',
enterYourName: 'لطفا نام کاربری خود را وارد کنید',
useVerificationCode: 'از کد تأیید استفاده کنید',
sendVerificationCode: 'ارسال کد تأیید',
setYourAccount: 'حساب خود را تنظیم کنید',
noLoginMethod: 'روش احراز هویت پیکربندی نشده است',
noLoginMethodTip: 'لطفا برای افزودن روش احراز هویت با مدیر سیستم تماس بگیرید.',
resetPasswordDesc: 'ایمیلی را که برای ثبت نام در Dify استفاده کرده اید تایپ کنید و ما یک ایمیل بازنشانی رمز عبور برای شما ارسال خواهیم کرد.',
licenseInactive: 'مجوز غیر فعال',
licenseLost: 'مجوز گم شده است',
licenseExpired: 'مجوز منقضی شده است',
licenseExpiredTip: 'مجوز Dify Enterprise برای فضای کاری شما منقضی شده است. لطفا برای ادامه استفاده از Dify با سرپرست خود تماس بگیرید.',
licenseInactiveTip: 'مجوز Dify Enterprise برای فضای کاری شما غیرفعال است. لطفا برای ادامه استفاده از Dify با سرپرست خود تماس بگیرید.',
licenseLostTip: 'اتصال سرور مجوز Dify انجام نشد. لطفا برای ادامه استفاده از Dify با سرپرست خود تماس بگیرید.',
webapp: {
disabled: 'احراز هویت وب اپ غیرفعال است. لطفاً با مدیر سیستم تماس بگیرید تا آن را فعال کند. می‌توانید سعی کنید مستقیماً از اپلیکیشن استفاده کنید.',
noLoginMethodTip: 'لطفاً با مدیر سیستم تماس بگیرید تا یک روش احراز هویت اضافه کند.',
noLoginMethod: 'روش احراز هویت برای برنامه وب پیکربندی نشده است',
login: 'ورود',
},
signup: {
signIn: 'ورود',
createAccount: 'حساب کاربری خود را ایجاد کنید',
haveAccount: 'قبلاً حساب کاربری دارید؟',
signUp: 'ثبت نام',
welcome: '👋 خوش آمدید! لطفاً جزئیات را برای شروع پر کنید.',
noAccount: 'حساب کاربری ندارید؟',
verifyMail: 'ادامه با کد تأیید',
},
pageTitleForE: 'هی، بیا شروع کنیم!',
}
export default translation

View File

@@ -0,0 +1,27 @@
const translation = {
tips: {
needLogin: 'لطفاً برای تأیید وارد شوید',
notLoggedIn: 'این برنامه می‌خواهد به حساب Dify Cloud شما دسترسی پیدا کند',
loggedIn: 'این برنامه می‌خواهد به اطلاعات زیر از حساب ابر دیفی شما دسترسی پیدا کند.',
common: 'ما به حریم خصوصی شما احترام می‌گذاریم و تنها از این اطلاعات برای بهبود تجربه شما با ابزارهای توسعه‌دهنده‌مان استفاده خواهیم کرد.',
},
scopes: {
name: 'نام',
avatar: 'آواتار',
timezone: 'منطقه زمانی',
email: 'ایمیل',
languagePreference: 'ترجیحات زبانی',
},
error: {
invalidParams: 'پارامترهای نامعتبر',
authAppInfoFetchFailed: 'عدم موفقیت در دریافت اطلاعات برنامه برای مجوز',
authorizeFailed: 'احراز هویت ناموفق بود',
},
login: 'ورود',
connect: 'متصل به',
continue: 'ادامه دهید',
unknownApp: 'برنامه نامشخص',
switchAccount: 'تغییر حساب',
}
export default translation

View File

@@ -0,0 +1,40 @@
const translation = {
common: {
publishAsPipeline: {
description: 'شرح دانش',
name: 'نام و نماد خط لوله',
namePlaceholder: 'لطفا نام این خط لوله دانش را وارد کنید. (ضروری)',
descriptionPlaceholder: 'لطفا توضیحات این خط لوله دانش را وارد کنید. (اختیاری)',
},
processing: 'پردازش',
preparingDataSource: 'آماده سازی منبع داده',
reRun: 'دوباره اجرا کنید',
confirmPublish: 'تایید انتشار',
testRun: 'اجرای آزمایشی',
publishAs: 'انتشار به عنوان یک پایپ لاین دانش',
goToAddDocuments: 'به افزودن اسناد بروید',
confirmPublishContent: 'پس از انتشار موفقیت آمیز خط لوله دانش، ساختار تکه ای این پایگاه دانش قابل تغییر نیست. آیا مطمئن هستید که می خواهید آن را منتشر کنید؟',
},
inputField: {
manage: 'مدیریت',
create: 'ایجاد فیلد ورودی کاربر',
},
publishToast: {
title: 'این خط لوله هنوز منتشر نشده است',
desc: 'هنگامی که خط لوله منتشر نمی شود، می توانید ساختار تکه را در گره پایگاه دانش تغییر دهید و ارکستراسیون و تغییرات خط لوله به طور خودکار به عنوان پیش نویس ذخیره می شود.',
},
result: {
resultPreview: {
viewDetails: 'مشاهده جزئیات',
loading: 'پردازش... لطفاً منتظر بمانید',
error: 'خطا در حین اجرا رخ داد',
footerTip: 'در حالت اجرای آزمایشی، پیش‌نمایش تا {{count}} بخش',
},
},
ragToolSuggestions: {
title: 'پیشنهاداتی برای RAG',
noRecommendationPlugins: 'هیچ افزونه‌ای پیشنهادی وجود ندارد، برای یافتن بیشتر به <CustomLink>بازار</CustomLink> مراجعه کنید',
},
}
export default translation

View File

@@ -0,0 +1,26 @@
const translation = {
tags: {
productivity: 'بهره وری',
news: 'اخبار',
medical: 'پزشکی',
image: 'تصویر',
search: 'جستجو',
other: 'دیگر',
utilities: 'تاسیسات',
design: 'طراحی',
entertainment: 'سرگرمی',
social: 'اجتماعی',
education: 'آموزش',
business: 'تجاری',
finance: 'مالی',
weather: 'هوا',
travel: 'سفر',
videos: 'فیلم',
agent: 'عامل',
rag: 'پوش',
},
searchTags: 'جستجو برچسب ها',
allTags: 'همه برچسب ها',
}
export default translation

View File

@@ -0,0 +1,186 @@
const translation = {
subscription: {
title: 'اشتراک‌ها',
listNum: 'اشتراک‌های {{num}}',
empty: {
title: 'بدون اشتراک',
button: 'اشتراک جدید',
},
createButton: {
oauth: 'اشتراک جدید با OAuth',
apiKey: 'اشتراک جدید با کلید API',
manual: 'چسباندن URL برای ایجاد اشتراک جدید',
},
createSuccess: 'اشتراک با موفقیت ایجاد شد',
createFailed: 'ایجاد اشتراک با شکست مواجه شد',
maxCount: 'حداکثر {{num}} اشتراک',
selectPlaceholder: 'انتخاب اشتراک',
noSubscriptionSelected: 'هیچ اشتراکی انتخاب نشده است',
subscriptionRemoved: 'اشتراک حذف شد',
list: {
title: 'اشتراک‌ها',
addButton: 'افزودن',
tip: 'دریافت رویدادها از طریق اشتراک',
item: {
enabled: 'فعال',
disabled: 'غیرفعال',
credentialType: {
api_key: 'کلید API',
oauth2: 'اواف',
unauthorized: 'دستی',
},
actions: {
delete: 'حذف',
deleteConfirm: {
title: 'آیا {{name}} را حذف می‌کنید؟',
success: 'اشتراک {{name}} با موفقیت حذف شد',
error: 'حذف اشتراک {{name}} ناموفق بود',
content: 'پس از حذف، این اشتراک قابل بازیابی نخواهد بود. لطفاً تأیید کنید.',
contentWithApps: 'اشتراک فعلی توسط {{count}} برنامه مورد استفاده قرار گرفته است. حذف آن باعث می‌شود برنامه‌های پیکربندی‌شده دریافت رویدادهای اشتراک را متوقف کنند.',
confirm: 'تأیید حذف',
cancel: 'لغو',
confirmInputWarning: 'لطفاً نام صحیح را برای تأیید وارد کنید.',
confirmInputPlaceholder: 'برای تأیید «{{name}}» را وارد کنید.',
confirmInputTip: 'لطفاً برای تأیید «{{name}}» را وارد کنید.',
},
},
status: {
active: 'فعال',
inactive: 'غیرفعال',
},
usedByNum: 'استفاده شده توسط {{num}} جریان‌های کاری',
noUsed: 'هیچ روند کاری استفاده نشده است',
},
},
addType: {
title: 'افزودن اشتراک',
description: 'انتخاب کنید که چگونه می‌خواهید اشتراک محرک خود را ایجاد کنید',
options: {
apikey: {
title: 'ایجاد با کلید API',
description: 'ایجاد اشتراک به‌صورت خودکار با استفاده از اطلاعات ورود API',
},
oauth: {
title: 'ایجاد با OAuth',
description: 'با پلتفرم شخص ثالث مجوز بدهید تا اشتراک ایجاد شود',
clientSettings: 'تنظیمات کلاینت OAuth',
clientTitle: 'کلاینت OAuth',
default: 'پیش‌فرض',
custom: 'سفارشی',
},
manual: {
title: 'راه‌اندازی دستی',
description: 'چسباندن URL برای ایجاد اشتراک جدید',
tip: 'تنظیم دستی URL در پلتفرم شخص ثالث',
},
},
},
},
modal: {
steps: {
verify: 'تأیید کردن',
configuration: 'پیکربندی',
},
common: {
cancel: 'لغو',
back: 'بازگشت',
next: 'بعدی',
create: 'ایجاد کردن',
verify: 'تأیید کردن',
authorize: 'مجاز کردن',
creating: 'در حال ایجاد...',
verifying: 'در حال تأیید...',
authorizing: 'در حال مجازسازی...',
},
oauthRedirectInfo: 'چون هیچ راز کلاینت سیستمی برای این ارائه‌دهنده ابزار پیدا نشد، تنظیم آن به صورت دستی لازم است، برای redirect_uri لطفاً استفاده کنید',
apiKey: {
title: 'ایجاد با کلید API',
verify: {
title: 'تأیید اطلاعات کاربری',
description: 'لطفاً اطلاعات API خود را برای تأیید دسترسی ارائه دهید',
error: 'تأیید اعتبار ناموفق بود. لطفاً کلید API خود را بررسی کنید.',
success: 'اعتبارات با موفقیت تأیید شد',
},
configuration: {
title: 'پیکربندی اشتراک',
description: 'پارامترهای اشتراک خود را تنظیم کنید',
},
},
oauth: {
title: 'ایجاد با OAuth',
authorization: {
title: 'مجوز او‌آه‌اِس',
description: 'اجازه دهید دیفی به حساب شما دسترسی داشته باشد',
redirectUrl: 'تغییر مسیر آدرس اینترنتی',
redirectUrlHelp: 'از این URL در تنظیمات برنامه OAuth خود استفاده کنید',
authorizeButton: 'مجوزدهی با {{provider}}',
waitingAuth: 'در انتظار مجوز...',
authSuccess: 'مجوز با موفقیت صادر شد',
authFailed: 'دریافت اطلاعات مجوز OAuth ناکام ماند',
waitingJump: 'مجاز، در انتظار پرش',
},
configuration: {
title: 'پیکربندی اشتراک',
description: 'پس از تأیید هویت، پارامترهای اشتراک خود را تنظیم کنید',
success: 'پیکربندی OAuth با موفقیت انجام شد',
failed: 'پیکربندی OAuth با شکست مواجه شد',
},
remove: {
success: 'حذف OAuth با موفقیت انجام شد',
failed: 'حذف OAuth ناموفق بود',
},
save: {
success: 'پیکربندی OAuth با موفقیت ذخیره شد',
},
},
manual: {
title: 'راه‌اندازی دستی',
description: 'اشتراک وب‌هوک خود را به‌صورت دستی تنظیم کنید',
logs: {
title: 'گزارش‌های درخواست',
request: 'درخواست',
loading: 'در انتظار درخواست از {{pluginName}}...',
},
},
form: {
subscriptionName: {
label: 'نام اشتراک',
placeholder: 'نام اشتراک را وارد کنید',
required: 'نام اشتراک الزامی است',
},
callbackUrl: {
label: 'آدرس بازگشت تماس',
description: 'این آدرس URL رویدادهای وب هوک را دریافت خواهد کرد',
tooltip: 'یک نقطه دسترسی عمومی فراهم کنید که بتواند درخواست‌های بازگشتی از ارائه‌دهنده تریگر را دریافت کند.',
placeholder: 'در حال تولید...',
privateAddressWarning: 'به نظر می‌رسد این URL یک آدرس داخلی است که ممکن است باعث شود درخواست‌های وب‌هوک با شکست مواجه شوند. شما می‌توانید TRIGGER_URL را به یک آدرس عمومی تغییر دهید.',
},
},
errors: {
createFailed: 'ایجاد اشتراک با شکست مواجه شد',
verifyFailed: 'تأیید اطلاعات ورود ناموفق بود',
authFailed: 'مجوز ناموفق بود',
networkError: 'خطای شبکه، لطفاً دوباره تلاش کنید',
},
},
events: {
title: 'رویدادهای موجود',
description: 'رویدادهایی که این افزونه فعال‌سازی می‌تواند به آن‌ها مشترک شود',
empty: 'هیچ رویدادی در دسترس نیست',
event: 'رویداد',
events: 'رویدادها',
actionNum: '{{num}} {{event}} گنجانده شده',
item: {
parameters: 'پارامترهای {{count}}',
noParameters: 'هیچ پارامتری',
},
output: 'خروجی',
},
node: {
status: {
warning: 'قطع ارتباط',
},
},
}
export default translation

View File

@@ -0,0 +1,346 @@
const translation = {
category: {
all: 'همه',
models: 'مدل',
bundles: 'بسته',
agents: 'استراتژی های عامل',
tools: 'ابزار',
extensions: 'پسوند',
datasources: 'منابع داده',
triggers: 'محرک‌ها',
},
categorySingle: {
tool: 'ابزار',
agent: 'استراتژی نمایندگی',
extension: 'فرمت',
model: 'مدل',
bundle: 'بسته',
datasource: 'منبع داده',
trigger: 'محرک',
},
list: {
source: {
marketplace: 'از Marketplace نصب کنید',
github: 'نصب از GitHub',
local: 'نصب از فایل بسته محلی',
},
notFound: 'هیچ افزونه ای یافت نشد',
noInstalled: 'هیچ افزونه ای نصب نشده است',
},
source: {
github: 'گیت‌هاب',
marketplace: 'بازار',
local: 'فایل بسته محلی',
},
detailPanel: {
categoryTip: {
debugging: 'اشکال زدایی پلاگین',
marketplace: 'نصب شده از Marketplace',
local: 'پلاگین محلی',
github: 'نصب شده از Github',
},
operation: {
checkUpdate: 'به روز رسانی را بررسی کنید',
info: 'اطلاعات پلاگین',
remove: 'حذف',
update: 'روز رسانی',
detail: 'جزئیات',
viewDetail: 'نمایش جزئیات',
install: 'نصب',
back: 'بازگشت',
},
toolSelector: {
descriptionPlaceholder:
'شرح مختصری از هدف ابزار، به عنوان مثال، دما را برای یک مکان خاص دریافت کنید.',
auto: 'خودکار',
unsupportedContent: 'نسخه افزونه نصب شده این عمل را ارائه نمی دهد.',
paramsTip1: 'پارامترهای استنتاج LLM را کنترل می کند.',
params: 'پیکربندی استدلال',
placeholder: 'یک ابزار را انتخاب کنید...',
paramsTip2: 'وقتی «خودکار» خاموش باشد، از مقدار پیش فرض استفاده می شود.',
descriptionLabel: 'توضیحات ابزار',
title: 'ابزار افزودن',
settings: 'تنظیمات کاربر',
empty:
'برای افزودن ابزارها روی دکمه "+" کلیک کنید. می توانید چندین ابزار اضافه کنید.',
toolLabel: 'ابزار',
uninstalledTitle: 'ابزار نصب نشده است',
uninstalledLink: 'مدیریت در پلاگین ها',
uninstalledContent:
'این افزونه از مخزن local/GitHub نصب شده است. لطفا پس از نصب استفاده کنید.',
unsupportedTitle: 'اکشن پشتیبانی نشده',
unsupportedContent2: 'برای تغییر نسخه کلیک کنید.',
toolSetting: 'تنظیمات ابزار',
unsupportedMCPTool:
'نسخه فعلی پلاگین استراتژی عامل انتخاب‌شده از ابزارهای MCP پشتیبانی نمی‌کند.',
},
endpointDeleteTip: 'حذف نقطه پایانی',
disabled: 'غیر فعال',
strategyNum: '{{عدد}} {{استراتژی}} شامل',
configureApp: 'پیکربندی اپلیکیشن',
endpoints: 'نقاط پایانی',
endpointsDocLink: 'مشاهده سند',
actionNum: '{{عدد}} {{اقدام}} شامل',
endpointDisableContent: 'آیا می خواهید {{name}} را غیرفعال کنید؟',
endpointModalTitle: 'راه اندازی اندپوینت',
endpointsTip:
'این افزونه عملکردهای خاصی را از طریق نقاط پایانی ارائه می دهد و می توانید چندین مجموعه نقطه پایانی را برای فضای کاری فعلی پیکربندی کنید.',
serviceOk: 'خدمات خوب',
modelNum: '{{عدد}} مدل های گنجانده شده است',
endpointDisableTip: 'غیرفعال کردن نقطه پایانی',
configureModel: 'مدل را پیکربندی کنید',
configureTool: 'ابزار پیکربندی',
endpointsEmpty: 'برای افزودن نقطه پایانی روی دکمه "+" کلیک کنید',
endpointModalDesc:
'پس از پیکربندی، می توان از ویژگی های ارائه شده توسط افزونه از طریق نقاط پایانی API استفاده کرد.',
switchVersion: 'نسخه سوئیچ',
endpointDeleteContent: 'آیا می خواهید {{name}} را حذف کنید؟',
deprecation: {
reason: {
ownershipTransferred: 'مالکیت منتقل شد',
businessAdjustments: 'تنظیمات کسب و کار',
noMaintainer: 'بدون نگهدارنده',
},
noReason: 'این افزونه منسوخ شده است و دیگر به روز رسانی نخواهد شد.',
onlyReason:
'این افزونه به دلیل {{deprecatedReason}} منسوخ شده و دیگر به‌روزرسانی نخواهد شد.',
fullMessage:
'این افزونه به دلیل {{deprecatedReason}} منسوخ شده است و دیگر به‌روزرسانی نخواهد شد. لطفا به‌جای آن از <CustomLink href=\'https://example.com/\'>{{-alternativePluginId}}</CustomLink> استفاده کنید.',
},
},
debugInfo: {
title: 'اشکال زدایی',
viewDocs: 'مشاهده اسناد',
},
privilege: {
everyone: 'همه',
admins: 'مدیران',
whoCanInstall: 'چه کسی می تواند افزونه ها را نصب و مدیریت کند؟',
title: 'تنظیمات پلاگین',
noone: 'هیچ',
whoCanDebug: 'چه کسی می تواند افزونه ها را اشکال زدایی کند؟',
},
pluginInfoModal: {
repository: 'مخزن',
packageName: 'بسته',
title: 'اطلاعات پلاگین',
release: 'انتشار',
},
action: {
pluginInfo: 'اطلاعات پلاگین',
usedInApps: 'این افزونه در برنامه های {{num}} استفاده می شود.',
deleteContentLeft: 'آیا می خواهید',
checkForUpdates: 'بررسی به روزرسانی ها',
delete: 'حذف افزونه',
deleteContentRight: 'افزونه?',
},
installModal: {
labels: {
package: 'بسته',
version: 'نسخهٔ',
repository: 'مخزن',
},
back: 'بازگشت',
next: 'بعدی',
cancel: 'لغو',
uploadingPackage: 'آپلود {{packageName}}...',
fromTrustSource:
'لطفا مطمئن شوید که افزونه ها را فقط از <trustSource>یک منبع قابل اعتماد</trustSource> نصب می کنید.',
readyToInstall: 'در مورد نصب افزونه زیر',
install: 'نصب',
pluginLoadError: 'خطای بارگذاری افزونه',
pluginLoadErrorDesc: 'این افزونه نصب نخواهد شد',
close: 'نزدیک',
installFailed: 'نصب ناموفق بود',
installFailedDesc: 'افزونه نصب شده است ناموفق است.',
installedSuccessfullyDesc: 'این افزونه با موفقیت نصب شد.',
dropPluginToInstall: 'بسته افزونه را برای نصب اینجا رها کنید',
installing: 'نصب...',
readyToInstallPackage: 'در مورد نصب افزونه زیر',
readyToInstallPackages: 'در شرف نصب افزونه های {{num}} زیر',
installedSuccessfully: 'نصب موفقیت آمیز بود',
installPlugin: 'افزونه را نصب کنید',
installComplete: 'نصب کامل شد',
uploadFailed: 'آپلود انجام نشد',
installWarning: 'این افزونه اجازه نصب ندارد.',
},
installFromGitHub: {
installPlugin: 'افزونه را از GitHub نصب کنید',
selectPackagePlaceholder: 'لطفا یک بسته را انتخاب کنید',
gitHubRepo: 'مخزن GitHub',
updatePlugin: 'افزونه را از GitHub به روز کنید',
uploadFailed: 'آپلود انجام نشد',
installedSuccessfully: 'نصب موفقیت آمیز بود',
installNote:
'لطفا مطمئن شوید که افزونه ها را فقط از یک منبع قابل اعتماد نصب می کنید.',
installFailed: 'نصب ناموفق بود',
selectVersionPlaceholder: 'لطفا یک نسخه را انتخاب کنید',
selectPackage: 'بسته را انتخاب کنید',
selectVersion: 'انتخاب نسخه',
},
upgrade: {
usedInApps: 'استفاده شده در برنامه های {{num}}',
successfulTitle: 'نصب موفقیت آمیز',
close: 'نزدیک',
title: 'افزونه را نصب کنید',
upgrading: 'نصب...',
upgrade: 'نصب',
description: 'در مورد نصب افزونه زیر',
},
error: {
noReleasesFound:
'هیچ نسخه ای یافت نشد. لطفا مخزن GitHub یا URL ورودی را بررسی کنید.',
inValidGitHubUrl:
'URL GitHub نامعتبر است. لطفا یک URL معتبر را در قالب وارد کنید: https://github.com/owner/repo',
fetchReleasesError:
'امکان بازیابی نسخه ها وجود ندارد. لطفا بعدا دوباره امتحان کنید.',
},
marketplace: {
sortOption: {
firstReleased: 'اولین منتشر شد',
recentlyUpdated: 'اخیرا به روز شده است',
mostPopular: 'محبوب ترین',
newlyReleased: 'تازه منتشر شده',
},
and: 'و',
viewMore: 'بیشتر ببینید',
moreFrom: 'اطلاعات بیشتر از Marketplace',
pluginsResult: 'نتایج {{num}}',
noPluginFound: 'هیچ افزونه ای یافت نشد',
sortBy: 'شهر سیاه',
difyMarketplace: 'بازار دیفی',
empower: 'توسعه هوش مصنوعی خود را توانمند کنید',
discover: 'کشف',
verifiedTip: 'تأیید شده توسط دیفی',
partnerTip: 'تأیید شده توسط یک شریک دیفی',
},
task: {
installing: 'نصب پلاگین های {{installingLength}}، 0 انجام شد.',
clearAll: 'پاک کردن همه',
installedError: 'افزونه های {{errorLength}} نصب نشدند',
installError: 'پلاگین های {{errorLength}} نصب نشدند، برای مشاهده کلیک کنید',
installingWithSuccess:
'نصب پلاگین های {{installingLength}}، {{successLength}} موفقیت آمیز است.',
installingWithError:
'نصب پلاگین های {{installingLength}}، {{successLength}} با موفقیت مواجه شد، {{errorLength}} ناموفق بود',
},
searchTools: 'ابزارهای جستجو...',
findMoreInMarketplace: 'اطلاعات بیشتر در Marketplace',
searchInMarketplace: 'جستجو در Marketplace',
searchCategories: 'دسته بندی ها را جستجو کنید',
fromMarketplace: 'از بازار',
installPlugin: 'افزونه را نصب کنید',
from: 'از',
install: '{{num}} نصب می شود',
endpointsEnabled: '{{num}} مجموعه نقاط پایانی فعال شده است',
searchPlugins: 'جستجوی افزونه ها',
installFrom: 'نصب از',
installAction: 'نصب',
allCategories: 'همه دسته بندی ها',
search: 'جستجو',
metadata: {
title: 'پلاگین ها',
},
difyVersionNotCompatible:
'نسخه فعلی دیفی با این پلاگین سازگار نیست، لطفاً به نسخه حداقل مورد نیاز به‌روزرسانی کنید: {{minimalDifyVersion}}',
requestAPlugin: 'درخواست یک افزونه',
publishPlugins: 'انتشار افزونه ها',
auth: {
useOAuthAuth: 'از مجوز OAuth استفاده کنید',
oauthClient: 'کلاینت اوتور',
custom: 'سفارشی',
addOAuth: 'OAuth اضافه کنید',
workspaceDefault: 'پیش فرض محیط کار',
authorization: 'مجوز',
default: 'پیش‌فرض',
setupOAuth: 'راه‌اندازی کلاینت OAuth',
useOAuth: 'از OAuth استفاده کنید',
setDefault: 'به عنوان پیش‌فرض تنظیم شود',
useApi: 'از کلید API استفاده کنید',
useApiAuth: 'پیکربندی مجوز کلید API',
authRemoved: 'منبع حذف شد',
authorizations: 'مجوزها',
authorizationName: 'نام مجوز',
addApi: 'کلید API را اضافه کنید',
saveAndAuth: 'ذخیره و تأیید',
saveOnly: 'فقط ذخیره کنید',
oauthClientSettings: 'تنظیمات کلاینت اوتور',
clientInfo:
'از آنجایی که هیچ راز مشتری سیستم برای این ارائه‌دهنده ابزار پیدا نشد، تنظیم دستی آن ضروری است، لطفاً برای redirect_uri از',
useApiAuthDesc:
'پس از پیکربندی اعتبارنامه‌ها، تمامی اعضای درون فضای کاری می‌توانند از این ابزار هنگام نظم‌دهی به برنامه‌ها استفاده کنند.',
unavailable: 'در دسترس نیست',
credentialUnavailable:
'دسترسی به مدارک در حال حاضر امکان‌پذیر نیست. لطفاً با مدیر تماس بگیرید.',
customCredentialUnavailable:
'اعتبارنامه‌های سفارشی در حال حاضر در دسترس نیستند',
credentialUnavailableInButton: 'گواهی در دسترس نیست',
connectedWorkspace: 'فضای کاری متصل',
emptyAuth: 'لطفا احراز هویت را پیکربندی کنید',
},
deprecated: 'منسوخ شده',
autoUpdate: {
strategy: {
disabled: {
name: 'ناتوان',
description: 'پلاگین‌ها به‌طور خودکار به‌روزرسانی نخواهند شد',
},
fixOnly: {
name: 'فقط تعمیر کنید',
selectedDescription: 'به‌روزرسانی خودکار تنها برای نسخه‌های وصله',
description:
'به‌روزرسانی خودکار فقط برای نسخه‌های پچ (مانند ۱.۰.۱۱.۰.۲). تغییرات جزئی نسخه باعث راه‌اندازی به‌روزرسانی‌ها نمی‌شود.',
},
latest: {
name: 'جدیدترین',
selectedDescription: 'همیشه به آخرین نسخه بروزرسانی کنید',
description: 'همیشه به آخرین نسخه بروزرسانی کنید',
},
},
upgradeMode: {
all: 'همه را بروزرسانی کن',
partial: 'فقط انتخاب شده',
exclude: 'انتخاب شده را استثنا کن',
},
upgradeModePlaceholder: {
exclude: 'افزونه‌های انتخاب شده به‌صورت خودکار به‌روزرسانی نخواهند شد',
partial:
'فقط پلاگین‌های انتخاب شده به‌روزرسانی خودکار خواهند داشت. در حال حاضر هیچ پلاگینی انتخاب نشده است، بنابراین هیچ پلاگینی به‌روزرسانی خودکار نخواهد شد.',
},
operation: {
select: 'افزونه‌ها را انتخاب کنید',
clearAll: 'همه را پاک کن',
},
pluginDowngradeWarning: {
title: 'کاهش نسخه افزونه',
downgrade: 'به هر حال تنزل دهید',
exclude: 'از بروزرسانی خودکار مستثنی شود',
description:
'به‌روزرسانی خودکار برای این افزونه در حال حاضر فعال است. کاهش نسخه ممکن است باعث شود تغییرات شما در حین به‌روزرسانی خودکار بعدی نادیده گرفته شود.',
},
noPluginPlaceholder: {
noFound: 'هیچ افزونه‌ای یافت نشد',
noInstalled: 'هیچ افزونه‌ای نصب نشده است',
},
updateTimeTitle: 'زمان به‌روزرسانی',
specifyPluginsToUpdate: 'ماژول‌هایی را برای به‌روزرسانی مشخص کنید',
updateTime: 'زمان به‌روزرسانی',
automaticUpdates: 'بروز رسانی خودکار',
updateSettings: 'تنظیمات را به‌روزرسانی کنید',
changeTimezone:
'برای تغییر منطقه زمانی، به <setTimezone>تنظیمات</setTimezone> بروید',
excludeUpdate:
'پلاگین‌های زیر {{num}} به‌طور خودکار به‌روزرسانی نخواهند شد',
nextUpdateTime: 'به‌روزرسانی خودکار بعدی: {{time}}',
partialUPdate:
'تنها {{num}} پلاگین زیر به‌طور خودکار به‌روزرسانی خواهد شد.',
},
readmeInfo: {
title: 'خواندنی',
needHelpCheckReadme: 'نیاز به کمک دارید؟ فایل README را بررسی کنید.',
noReadmeAvailable: 'بدون پرونده README موجود',
failedToFetch: 'بارگیری فایل README با شکست مواجه شد',
},
}
export default translation

View File

@@ -0,0 +1,4 @@
const translation = {
}
export default translation

View File

@@ -0,0 +1,31 @@
const translation = {
input: 'ورودی',
result: 'نتیجه',
detail: 'جزئیات',
tracing: 'ردیابی',
resultPanel: {
status: 'وضعیت',
time: 'زمان گذشته',
tokens: 'کل توکن‌ها',
},
meta: {
title: 'فراداده',
status: 'وضعیت',
version: 'نسخه',
executor: 'اجراکننده',
startTime: 'زمان شروع',
time: 'زمان گذشته',
tokens: 'کل توکن‌ها',
steps: 'گام‌های اجرا',
},
resultEmpty: {
title: 'این اجرا فقط خروجی به فرمت JSON دارد،',
tipLeft: 'لطفاً به ',
link: 'پنل جزئیات',
tipRight: ' بروید و آن را مشاهده کنید.',
},
actionLogs: 'گزارش های اکشن',
circularInvocationTip: 'فراخوانی دایره ای ابزارها/گره ها در گردش کار فعلی وجود دارد.',
}
export default translation

View File

@@ -0,0 +1,82 @@
const translation = {
common: {
welcome: '',
appUnavailable: 'اپ در دسترس نیست',
appUnknownError: 'اپ در دسترس نیست',
},
chat: {
newChat: 'چت جدید',
pinnedTitle: 'پین شده',
unpinnedTitle: 'چت‌ها',
newChatDefaultName: 'مکالمه جدید',
resetChat: 'بازنشانی مکالمه',
poweredBy: 'قدرت‌گرفته از',
prompt: 'پیشنهاد',
privatePromptConfigTitle: 'تنظیمات مکالمه',
publicPromptConfigTitle: 'پیشنهاد اولیه',
configStatusDes: 'قبل از شروع، می‌توانید تنظیمات مکالمه را تغییر دهید',
configDisabled: 'تنظیمات جلسه قبلی برای این جلسه استفاده شده است.',
startChat: 'شروع چت',
privacyPolicyLeft: 'لطفاً ',
privacyPolicyMiddle: 'سیاست حریم خصوصی',
privacyPolicyRight: ' ارائه شده توسط توسعه‌دهنده اپ را بخوانید.',
deleteConversation: {
title: 'حذف مکالمه',
content: 'آیا مطمئن هستید که می‌خواهید این مکالمه را حذف کنید؟',
},
tryToSolve: 'سعی کنید حل کنید',
temporarySystemIssue: 'ببخشید، مشکل موقت سیستمی.',
expand: 'باز کردن',
collapse: 'بستن',
newChatTip: 'قبلاً در یک چت جدید',
viewChatSettings: 'تنظیمات چت را مشاهده کنید',
chatFormTip: 'تنظیمات چت پس از شروع چت قابل تغییر نیستند.',
chatSettingsTitle: 'راه‌اندازی چت جدید',
},
generation: {
tabs: {
create: 'یک‌بار اجرا کن',
batch: 'اجرا به صورت گروهی',
saved: 'ذخیره شده',
},
savedNoData: {
title: 'شما هنوز نتیجه‌ای ذخیره نکرده‌اید!',
description: 'شروع به تولید محتوا کنید و نتایج ذخیره شده خود را اینجا پیدا کنید.',
startCreateContent: 'شروع به تولید محتوا',
},
title: 'تکمیل هوش مصنوعی',
queryTitle: 'محتوای درخواست',
completionResult: 'نتیجه تکمیل',
queryPlaceholder: 'محتوای درخواست خود را بنویسید...',
run: 'اجرا',
copy: 'کپی',
resultTitle: 'تکمیل هوش مصنوعی',
noData: 'هوش مصنوعی آنچه را که می‌خواهید اینجا به شما می‌دهد.',
csvUploadTitle: 'فایل CSV خود را اینجا بکشید و رها کنید، یا ',
browse: 'جستجو',
csvStructureTitle: 'فایل CSV باید با ساختار زیر مطابقت داشته باشد:',
downloadTemplate: 'الگو را اینجا دانلود کنید',
field: 'فیلد',
batchFailed: {
info: '{{num}} اجرای ناموفق',
retry: 'تلاش مجدد',
outputPlaceholder: 'محتوای خروجی وجود ندارد',
},
errorMsg: {
empty: 'لطفاً محتوا را در فایل بارگذاری شده وارد کنید.',
fileStructNotMatch: 'فایل CSV بارگذاری شده با ساختار مطابقت ندارد.',
emptyLine: 'ردیف {{rowIndex}} خالی است',
invalidLine: 'ردیف {{rowIndex}}: مقدار {{varName}} نمی‌تواند خالی باشد',
moreThanMaxLengthLine: 'ردیف {{rowIndex}}: مقدار {{varName}} نمی‌تواند بیشتر از {{maxLength}} کاراکتر باشد',
atLeastOne: 'لطفاً حداقل یک ردیف در فایل بارگذاری شده وارد کنید.',
},
execution: 'اجرا',
executions: '{{num}} بار اجرا',
stopRun: 'توقف اجرا',
},
login: {
backToHome: 'بازگشت به خانه',
},
}
export default translation

View File

@@ -0,0 +1,44 @@
const translation = {
daysInWeek: {
Sat: 'شنبه',
Sun: 'خورشید',
Mon: 'مون',
Wed: 'چهارشنبه',
Fri: 'جمعه',
Tue: 'سه شنبه',
Thu: 'پنج‌شنبه',
},
months: {
October: 'اکتبر',
February: 'فوریه',
September: 'سپتامبر',
July: 'جولای',
August: 'اوت',
January: 'ژانویه',
April: 'آوریل',
November: 'نوامبر',
March: 'مارس',
May: 'مه',
June: 'ژوئن',
December: 'دسامبر',
},
operation: {
pickDate: 'تاریخ را انتخاب کنید',
ok: 'خوب',
now: 'حالا',
cancel: 'لغو',
},
title: {
pickTime: 'زمان انتخاب کنید',
},
defaultPlaceholder: 'زمانی را انتخاب کنید...',
dateFormats: {
output: 'YYYY-MM-DD',
input: 'YYYY-MM-DD',
display: 'MMMM D, YYYY',
displayWithTime: 'MMMM D, YYYY hh:mm A',
outputWithTime: 'YYYY-MM-DDTHH:mm:ss.SSSZ',
},
}
export default translation

View File

@@ -0,0 +1,257 @@
const translation = {
title: 'ابزارها',
createCustomTool: 'ایجاد ابزار سفارشی',
customToolTip: 'بیشتر در مورد ابزارهای سفارشی Dify بیاموزید',
type: {
builtIn: 'سفارشی شده',
custom: 'سفارشی',
workflow: 'جریان کار',
},
contribute: {
line1: 'من علاقه‌مند به ',
line2: 'مشارکت در ابزارهای Dify هستم.',
viewGuide: 'مشاهده راهنما',
},
author: 'توسط',
auth: {
authorized: 'مجوز داده شده',
setup: 'تنظیم مجوز برای استفاده',
setupModalTitle: 'تنظیم مجوز',
setupModalTitleDescription: 'پس از پیکربندی اعتبارنامه‌ها، همه اعضای موجود در فضای کاری می‌توانند از این ابزار هنگام هماهنگی برنامه‌ها استفاده کنند.',
},
includeToolNum: '{{num}} ابزار شامل شد',
addToolModal: {
type: 'نوع',
category: 'دسته‌بندی',
added: 'افزوده شد',
custom: {
title: 'هیچ ابزار سفارشی موجود نیست',
tip: 'یک ابزار سفارشی ایجاد کنید',
},
workflow: {
title: 'هیچ ابزار جریان کاری موجود نیست',
tip: 'جریان‌های کاری را به عنوان ابزار در استودیو منتشر کنید',
},
mcp: {
title: 'هیچ ابزار MCP موجود نیست',
tip: 'یک سرور MCP اضافه کنید',
},
agent: {
title: 'هیچ استراتژی عاملی موجود نیست',
},
},
createTool: {
title: 'ایجاد ابزار سفارشی',
editAction: 'پیکربندی',
editTitle: 'ویرایش ابزار سفارشی',
name: 'نام',
toolNamePlaceHolder: 'نام ابزار را وارد کنید',
nameForToolCall: 'نام فراخوانی ابزار',
nameForToolCallPlaceHolder: 'برای شناسایی ماشین، مانند getCurrentWeather، list_pets',
nameForToolCallTip: 'فقط اعداد، حروف و خط زیر پشتیبانی می‌شود.',
description: 'توضیحات',
descriptionPlaceholder: 'توضیحات مختصر در مورد هدف ابزار، مثلاً، گرفتن دما برای یک مکان خاص.',
schema: 'طرح',
schemaPlaceHolder: 'طرح OpenAPI خود را اینجا وارد کنید',
viewSchemaSpec: 'مشاهده مشخصات OpenAPI-Swagger',
importFromUrl: 'وارد کردن از URL',
importFromUrlPlaceHolder: 'https://...',
urlError: 'لطفاً یک URL معتبر وارد کنید',
examples: 'مثال‌ها',
exampleOptions: {
json: 'آب و هوا (JSON)',
yaml: 'فروشگاه حیوانات خانگی (YAML)',
blankTemplate: 'الگوی خالی',
},
availableTools: {
title: 'ابزارهای موجود',
name: 'نام',
description: 'توضیحات',
method: 'روش',
path: 'مسیر',
action: 'عملیات',
test: 'آزمایش',
},
authMethod: {
title: 'روش مجوز',
type: 'نوع مجوز',
keyTooltip: 'کلید Http Header، می‌توانید آن را با "Authorization" ترک کنید اگر نمی‌دانید چیست یا آن را به یک مقدار سفارشی تنظیم کنید',
types: {
none: 'هیچ',
apiKeyPlaceholder: 'نام هدر HTTP برای کلید API',
apiValuePlaceholder: 'کلید API را وارد کنید',
api_key_header: 'عنوان',
api_key_query: 'پارامتر جستجو',
queryParamPlaceholder: 'نام پارامتر جستجو برای کلید API',
},
key: 'کلید',
value: 'مقدار',
queryParam: 'پارامتر جستجو',
queryParamTooltip: 'نام پارامتر پرس و جو کلید API که باید ارسال شود، به عنوان مثال "key" در "https://example.com/test?key=API_KEY".',
},
authHeaderPrefix: {
title: 'نوع مجوز',
types: {
basic: 'پایه',
bearer: 'Bearer',
custom: 'سفارشی',
},
},
privacyPolicy: 'سیاست حفظ حریم خصوصی',
privacyPolicyPlaceholder: 'لطفاً سیاست حفظ حریم خصوصی را وارد کنید',
toolInput: {
title: 'ورودی ابزار',
name: 'نام',
required: 'الزامی',
method: 'روش',
methodSetting: 'تنظیم',
methodSettingTip: 'کاربر پیکربندی ابزار را پر می‌کند',
methodParameter: 'پارامتر',
methodParameterTip: 'LLM در طول استنباط پر می‌کند',
label: 'برچسب‌ها',
labelPlaceholder: 'برچسب‌ها را انتخاب کنید (اختیاری)',
description: 'توضیحات',
descriptionPlaceholder: 'توضیحات معنی پارامتر',
},
customDisclaimer: 'توجهیه سفارشی',
customDisclaimerPlaceholder: 'لطفاً توجهیه سفارشی را وارد کنید',
confirmTitle: 'آیا می‌خواهید ذخیره کنید؟',
confirmTip: 'برنامه‌هایی که از این ابزار استفاده می‌کنند تحت تأثیر قرار خواهند گرفت',
deleteToolConfirmTitle: 'آیا این ابزار را حذف کنید؟',
deleteToolConfirmContent: 'حذف ابزار غیرقابل بازگشت است. کاربران دیگر قادر به دسترسی به ابزار شما نخواهند بود.',
},
test: {
title: 'آزمایش',
parametersValue: 'پارامترها و مقدار',
parameters: 'پارامترها',
value: 'مقدار',
testResult: 'نتایج آزمایش',
testResultPlaceholder: 'نتیجه آزمایش در اینجا نمایش داده می‌شود',
},
thought: {
using: 'در حال استفاده',
used: 'استفاده شده',
requestTitle: 'درخواست به',
responseTitle: 'پاسخ از',
},
setBuiltInTools: {
info: 'اطلاعات',
setting: 'تنظیمات',
toolDescription: 'توضیحات ابزار',
parameters: 'پارامترها',
string: 'رشته',
number: 'عدد',
required: 'الزامی',
infoAndSetting: 'اطلاعات و تنظیمات',
file: 'فایل',
},
noCustomTool: {
title: 'ابزار سفارشی وجود ندارد!',
content: 'ابزارهای سفارشی خود را در اینجا اضافه و مدیریت کنید تا برنامه‌های هوش مصنوعی بسازید.',
createTool: 'ایجاد ابزار',
},
noSearchRes: {
title: 'متأسفیم، نتیجه‌ای پیدا نشد!',
content: 'ما نتوانستیم ابزارهایی که با جستجوی شما مطابقت داشته باشد پیدا کنیم.',
reset: 'بازنشانی جستجو',
},
builtInPromptTitle: 'پرامپت',
toolRemoved: 'ابزار حذف شد',
notAuthorized: 'ابزار مجوز ندارد',
howToGet: 'چگونه دریافت کنید',
openInStudio: 'باز کردن در استودیو',
toolNameUsageTip: 'نام فراخوانی ابزار برای استدلال و پرامپت‌های عامل',
copyToolName: 'کپی نام',
noTools: 'هیچ ابزاری یافت نشد',
mcp: {
create: {
cardTitle: 'افزودن سرور MCP (HTTP)',
cardLink: 'اطلاعات بیشتر درباره یکپارچه‌سازی سرور MCP',
},
noConfigured: 'سرور پیکربندی نشده',
updateTime: 'آخرین بروزرسانی',
toolsCount: '{count} ابزار',
noTools: 'ابزاری موجود نیست',
modal: {
title: 'افزودن سرور MCP (HTTP)',
editTitle: 'ویرایش سرور MCP (HTTP)',
name: 'نام و آیکون',
namePlaceholder: 'برای سرور MCP خود نام انتخاب کنید',
serverUrl: 'آدرس سرور',
serverUrlPlaceholder: 'URL نقطه پایانی سرور',
serverUrlWarning: 'به‌روزرسانی آدرس سرور ممکن است برنامه‌های وابسته به آن را مختل کند',
serverIdentifier: 'شناسه سرور',
serverIdentifierTip: 'شناسه منحصر به فرد برای سرور MCP در فضای کاری. فقط حروف کوچک، اعداد، زیرخط و خط تیره. حداکثر 24 کاراکتر.',
serverIdentifierPlaceholder: 'شناسه منحصر به فرد، مثال: my-mcp-server',
serverIdentifierWarning: 'پس از تغییر شناسه، سرور توسط برنامه‌های موجود شناسایی نخواهد شد',
cancel: 'لغو',
save: 'ذخیره',
confirm: 'افزودن و مجوزدهی',
timeout: 'مهلت',
sseReadTimeout: 'زمان.out خواندن SSE',
headers: 'هدرها',
timeoutPlaceholder: '30',
headerKey: 'نام هدر',
headerValue: 'مقدار هدر',
addHeader: 'هدر اضافه کنید',
headerKeyPlaceholder: 'Authorization',
headerValuePlaceholder: 'مثلاً، Bearer 123',
noHeaders: 'هیچ هدر سفارشی پیکربندی نشده است',
headersTip: 'هدرهای HTTP اضافی برای ارسال با درخواست‌های سرور MCP',
maskedHeadersTip: 'مقدارهای هدر به خاطر امنیت مخفی شده‌اند. تغییرات مقادیر واقعی را به‌روزرسانی خواهد کرد.',
authentication: 'احراز هویت',
configurations: 'تنظیمات',
clientSecretPlaceholder: 'رمز مشتری',
clientID: 'شناسه مشتری',
clientSecret: 'رمز مشتری',
useDynamicClientRegistration: 'استفاده از ثبت‌نام پویا برای مشتری',
redirectUrlWarning: 'لطفاً URL بازگشت OAuth خود را پیکربندی کنید به:',
},
delete: 'حذف سرور MCP',
deleteConfirmTitle: 'آیا مایل به حذف {mcp} هستید؟',
operation: {
edit: 'ویرایش',
remove: 'حذف',
},
authorize: 'مجوزدهی',
authorizing: 'در حال مجوزدهی...',
authorizingRequired: 'مجوز مورد نیاز است',
authorizeTip: 'پس از مجوزدهی، ابزارها در اینجا نمایش داده می‌شوند.',
update: 'به‌روزرسانی',
updating: 'در حال به‌روزرسانی...',
gettingTools: 'دریافت ابزارها...',
updateTools: 'به‌روزرسانی ابزارها...',
toolsEmpty: 'ابزارها بارگیری نشدند',
getTools: 'دریافت ابزارها',
toolUpdateConfirmTitle: 'به‌روزرسانی فهرست ابزارها',
toolUpdateConfirmContent: 'به‌روزرسانی فهرست ابزارها ممکن است بر برنامه‌های موجود تأثیر بگذارد. آیا ادامه می‌دهید؟',
toolsNum: '{count} ابزار موجود است',
onlyTool: '1 ابزار موجود است',
identifier: 'شناسه سرور (کلیک برای کپی)',
server: {
title: 'سرور MCP',
url: 'آدرس سرور',
reGen: 'تولید مجدد آدرس سرور؟',
addDescription: 'افزودن توضیحات',
edit: 'ویرایش توضیحات',
modal: {
addTitle: 'برای فعال‌سازی سرور MCP توضیحات اضافه کنید',
editTitle: 'ویرایش توضیحات',
description: 'توضیحات',
descriptionPlaceholder: 'عملکرد این ابزار و نحوه استفاده LLM از آن را توضیح دهید',
parameters: 'پارامترها',
parametersTip: 'برای کمک به LLM در درک هدف و محدودیت‌ها، برای هر پارامتر توضیحات اضافه کنید.',
parametersPlaceholder: 'هدف و محدودیت‌های پارامتر',
confirm: 'فعال‌سازی سرور MCP',
},
publishTip: 'برنامه منتشر نشده است. لطفاً ابتدا برنامه را منتشر کنید.',
},
toolItem: {
parameters: 'پارامترها',
noDescription: 'بدون توضیح',
},
},
allTools: 'همه ابزارها',
}
export default translation

File diff suppressed because it is too large Load Diff