Skip to content

Commit

Permalink
Merge pull request #279 from n4ze3m/next
Browse files Browse the repository at this point in the history
v1.4.0
  • Loading branch information
n4ze3m authored Dec 29, 2024
2 parents 8d5ae26 + efb49d8 commit e931f7c
Show file tree
Hide file tree
Showing 73 changed files with 2,482 additions and 154 deletions.
Binary file modified bun.lockb
Binary file not shown.
1 change: 1 addition & 0 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -56,6 +56,7 @@
"rehype-mathjax": "4.0.3",
"remark-gfm": "3.0.1",
"remark-math": "5.1.1",
"tesseract.js": "^5.1.1",
"turndown": "^7.1.3",
"yt-transcript": "^0.0.2",
"zustand": "^4.5.0"
Expand Down
13 changes: 13 additions & 0 deletions src/assets/locale/ar/chrome.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
{
"heading": "إعداد Chrome AI",
"status": {
"label": "تمكين أو تعطيل دعم Chrome AI في مساعد الصفحة"
},
"error": {
"browser_not_supported": "هذا الإصدار من Chrome غير مدعوم من نموذج Gemini Nano. يرجى التحديث إلى الإصدار 127 أو أحدث",
"ai_not_supported": "الإعداد chrome://flags/#prompt-api-for-gemini-nano غير مفعل. يرجى تفعيله.",
"ai_not_ready": "Gemini Nano غير جاهز بعد؛ تحتاج إلى التحقق مرة أخرى من إعدادات Chrome.",
"internal_error": "حدث خطأ داخلي. يرجى المحاولة مرة أخرى لاحقاً."
},
"errorDescription": "لاستخدام Chrome AI، تحتاج إلى إصدار متصفح أعلى من 127، وهو متوفر حالياً في قنوات Dev و Canary. بعد تنزيل الإصدار المدعوم، اتبع هذه الخطوات:\n\n1. انتقل إلى `chrome://flags/#prompt-api-for-gemini-nano` واختر \"تمكين\".\n2. انتقل إلى `chrome://flags/#optimization-guide-on-device-model` واختر \"EnabledBypassPrefRequirement\".\n3. انتقل إلى `chrome://components`، ابحث عن \"Optimization Guide On Device Model\"، وانقر على \"التحقق من التحديثات\". سيؤدي هذا إلى تنزيل النموذج. إذا لم تر الإعدادات، كرر الخطوتين 1 و 2 وأعد تشغيل المتصفح."
}
128 changes: 128 additions & 0 deletions src/assets/locale/ar/common.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,128 @@
{
"pageAssist": "مساعد الصفحة",
"selectAModel": "اختر نموذجًا",
"save": "حفظ",
"saved": "تم الحفظ",
"cancel": "إلغاء",
"retry": "إعادة المحاولة",
"share": {
"tooltip": {
"share": "مشاركة"
},
"modal": {
"title": "مشاركة رابط المحادثة"
},
"form": {
"defaultValue": {
"name": "مجهول",
"title": "محادثة بدون عنوان"
},
"title": {
"label": "عنوان المحادثة",
"placeholder": "أدخل عنوان المحادثة",
"required": "عنوان المحادثة مطلوب"
},
"name": {
"label": "اسمك",
"placeholder": "أدخل اسمك",
"required": "اسمك مطلوب"
},
"btn": {
"save": "إنشاء رابط",
"saving": "جاري إنشاء الرابط..."
}
},
"notification": {
"successGenerate": "تم نسخ الرابط إلى الحافظة",
"failGenerate": "فشل في إنشاء الرابط"
}
},
"copyToClipboard": "نسخ إلى الحافظة",
"webSearch": "البحث في الويب",
"regenerate": "إعادة التوليد",
"edit": "تعديل",
"delete": "حذف",
"saveAndSubmit": "حفظ وإرسال",
"editMessage": {
"placeholder": "اكتب رسالة..."
},
"submit": "إرسال",
"noData": "لا توجد بيانات",
"noHistory": "لا يوجد سجل محادثات",
"chatWithCurrentPage": "الدردشة مع الصفحة الحالية",
"beta": "تجريبي",
"tts": "قراءة بصوت عالٍ",
"currentChatModelSettings": "إعدادات نموذج المحادثة الحالي",
"modelSettings": {
"label": "إعدادات النموذج",
"description": "تعيين خيارات النموذج عالمياً لجميع المحادثات",
"form": {
"keepAlive": {
"label": "الإبقاء نشطاً",
"help": "يتحكم في المدة التي سيظل فيها النموذج محملاً في الذاكرة بعد الطلب (الافتراضي: 5 دقائق)",
"placeholder": "أدخل مدة البقاء نشطاً (مثال: 5م، 10م، 1س)"
},
"temperature": {
"label": "درجة الحرارة",
"placeholder": "أدخل قيمة درجة الحرارة (مثال: 0.7، 1.0)"
},
"numCtx": {
"label": "عدد السياقات",
"placeholder": "أدخل قيمة عدد السياقات (الافتراضي: 2048)"
},
"numPredict": {
"label": "الحد الأقصى للرموز",
"placeholder": "أدخل قيمة الحد الأقصى للرموز (مثال: 2048، 4096)"
},
"seed": {
"label": "البذرة",
"placeholder": "أدخل قيمة البذرة (مثال: 1234)",
"help": "إمكانية تكرار مخرجات النموذج"
},
"topK": {
"label": "أعلى K",
"placeholder": "أدخل قيمة أعلى K (مثال: 40، 100)"
},
"topP": {
"label": "أعلى P",
"placeholder": "أدخل قيمة أعلى P (مثال: 0.9، 0.95)"
},
"useMMap": {
"label": "استخدام MMap"
},
"numGpu": {
"label": "عدد وحدات معالجة الرسومات",
"placeholder": "أدخل عدد الطبقات لإرسالها إلى وحدة/وحدات معالجة الرسومات"
},
"systemPrompt": {
"label": "موجه النظام المؤقت",
"placeholder": "أدخل موجه النظام",
"help": "هذه طريقة سريعة لتعيين موجه النظام في المحادثة الحالية، والذي سيتجاوز موجه النظام المحدد إذا كان موجوداً."
}
},
"advanced": "المزيد من إعدادات النموذج"
},
"copilot": {
"summary": "تلخيص",
"explain": "شرح",
"rephrase": "إعادة صياغة",
"translate": "ترجمة",
"custom": "مخصص"
},
"citations": "الاقتباسات",
"segmented": {
"ollama": "نماذج Ollama",
"custom": "نماذج مخصصة"
},
"downloadCode": "تنزيل الكود",
"date": {
"pinned": "مثبت",
"today": "اليوم",
"yesterday": "الأمس",
"last7Days": "آخر 7 أيام",
"older": "أقدم"
},
"pin": "تثبيت",
"unpin": "إلغاء التثبيت",
"generationInfo": "معلومات التوليد"
}
40 changes: 40 additions & 0 deletions src/assets/locale/ar/knowledge.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
{
"addBtn": "إضافة معرفة جديدة",
"columns": {
"title": "العنوان",
"status": "الحالة",
"embeddings": "نموذج التضمين",
"createdAt": "تاريخ الإنشاء",
"action": "الإجراءات"
},
"expandedColumns": {
"name": "الاسم"
},
"confirm": {
"delete": "هل أنت متأكد أنك تريد حذف هذه المعرفة؟"
},
"deleteSuccess": "تم حذف المعرفة بنجاح",
"status": {
"pending": "قيد الانتظار",
"finished": "مكتمل",
"processing": "قيد المعالجة",
"failed": "فشل"
},
"addKnowledge": "إضافة معرفة",
"form": {
"title": {
"label": "عنوان المعرفة",
"placeholder": "أدخل عنوان المعرفة",
"required": "عنوان المعرفة مطلوب"
},
"uploadFile": {
"label": "رفع ملف",
"uploadText": "اسحب وأفلت ملفًا هنا أو انقر للرفع",
"uploadHint": "أنواع الملفات المدعومة: .pdf, .csv, .txt, .md, .docx",
"required": "الملف مطلوب"
},
"submit": "إرسال",
"success": "تمت إضافة المعرفة بنجاح"
},
"noEmbeddingModel": "يرجى إضافة نموذج تضمين من صفحة إعدادات RAG أولاً"
}
90 changes: 90 additions & 0 deletions src/assets/locale/ar/openai.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,90 @@
{
"settings": "واجهة برمجة التطبيقات المتوافقة مع OpenAI",
"heading": "واجهة برمجة التطبيقات المتوافقة مع OpenAI",
"subheading": "إدارة وتكوين مزودي واجهة برمجة التطبيقات المتوافقة مع OpenAI هنا.",
"addBtn": "إضافة مزود",
"table": {
"name": "اسم المزود",
"baseUrl": "عنوان URL الأساسي",
"actions": "إجراء"
},
"modal": {
"titleAdd": "إضافة مزود جديد",
"name": {
"label": "اسم المزود",
"required": "اسم المزود مطلوب.",
"placeholder": "أدخل اسم المزود"
},
"baseUrl": {
"label": "عنوان URL الأساسي",
"help": "عنوان URL الأساسي لمزود واجهة برمجة التطبيقات OpenAI. مثال (http://localhost:1234/v1)",
"required": "عنوان URL الأساسي مطلوب.",
"placeholder": "أدخل عنوان URL الأساسي"
},
"apiKey": {
"label": "مفتاح API",
"required": "مفتاح API مطلوب.",
"placeholder": "أدخل مفتاح API"
},
"submit": "حفظ",
"update": "تحديث",
"deleteConfirm": "هل أنت متأكد أنك تريد حذف هذا المزود؟",
"model": {
"title": "قائمة النماذج",
"subheading": "يرجى تحديد نماذج المحادثة التي تريد استخدامها مع هذا المزود.",
"success": "تمت إضافة نماذج جديدة بنجاح."
},
"tipLMStudio": "سيقوم Page Assist تلقائيًا بجلب النماذج التي قمت بتحميلها على LM Studio. لست بحاجة إلى إضافتها يدويًا."
},
"addSuccess": "تمت إضافة المزود بنجاح.",
"deleteSuccess": "تم حذف المزود بنجاح.",
"updateSuccess": "تم تحديث المزود بنجاح.",
"delete": "حذف",
"edit": "تعديل",
"newModel": "إضافة نماذج للمزود",
"noNewModel": "بالنسبة لـ LMStudio و Ollama و Llamafile، نقوم بالجلب ديناميكيًا. لا حاجة للإضافة اليدوية.",
"searchModel": "بحث عن نموذج",
"selectAll": "تحديد الكل",
"save": "حفظ",
"saving": "جاري الحفظ...",
"manageModels": {
"columns": {
"name": "اسم النموذج",
"model_type": "نوع النموذج",
"model_id": "معرف النموذج",
"provider": "اسم المزود",
"actions": "إجراء"
},
"tooltip": {
"delete": "حذف"
},
"confirm": {
"delete": "هل أنت متأكد أنك تريد حذف هذا النموذج؟"
},
"modal": {
"title": "إضافة نموذج مخصص",
"form": {
"name": {
"label": "معرف النموذج",
"placeholder": "llama3.2",
"required": "معرف النموذج مطلوب."
},
"provider": {
"label": "المزود",
"placeholder": "اختر المزود",
"required": "المزود مطلوب."
},
"type": {
"label": "نوع النموذج"
}
}
}
},
"noModelFound": "لم يتم العثور على نموذج. تأكد من إضافة المزود الصحيح مع عنوان URL الأساسي ومفتاح API.",
"radio": {
"chat": "نموذج المحادثة",
"embedding": "نموذج التضمين",
"chatInfo": "يستخدم لإكمال المحادثة وتوليد المحادثات",
"embeddingInfo": "يستخدم لـ RAG ومهام البحث الدلالي الأخرى ذات الصلة."
}
}
28 changes: 28 additions & 0 deletions src/assets/locale/ar/option.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
{
"newChat": "محادثة جديدة",
"selectAPrompt": "اختر موجهاً",
"githubRepository": "مستودع GitHub",
"settings": "الإعدادات",
"sidebarTitle": "سجل المحادثات",
"error": "خطأ",
"somethingWentWrong": "حدث خطأ ما",
"validationSelectModel": "الرجاء اختيار نموذج للمتابعة",
"deleteHistoryConfirmation": "هل أنت متأكد أنك تريد حذف هذا السجل؟",
"editHistoryTitle": "أدخل عنواناً جديداً",
"temporaryChat": "محادثة مؤقتة",
"more": {
"copy": {
"group": "نسخ",
"asText": "نسخ كنص",
"asMarkdown": "نسخ كماركداون",
"success": "تم النسخ إلى الحافظة!"
},
"download": {
"group": "تنزيل",
"text": "ملف نصي (.txt)",
"markdown": "ماركداون (.md)",
"json": "ملف JSON (.json)"
},
"share": "مشاركة"
}
}
32 changes: 32 additions & 0 deletions src/assets/locale/ar/playground.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
{
"ollamaState": {
"searching": "جارٍ البحث عن Ollama الخاص بك 🦙",
"running": "Ollama يعمل 🦙",
"notRunning": "تعذر الاتصال بـ Ollama 🦙",
"connectionError": "يبدو أنك تواجه خطأ في الاتصال. يرجى الرجوع إلى هذا <anchor>الدليل</anchor> لاستكشاف الأخطاء وإصلاحها."
},
"formError": {
"noModel": "الرجاء اختيار نموذج",
"noEmbeddingModel": "الرجاء تعيين نموذج التضمين في صفحة الإعدادات > RAG"
},
"form": {
"textarea": {
"placeholder": "اكتب رسالة..."
},
"webSearch": {
"on": "تشغيل",
"off": "إيقاف"
}
},
"tooltip": {
"searchInternet": "البحث في الإنترنت",
"speechToText": "تحويل الكلام إلى نص",
"uploadImage": "تحميل صورة",
"stopStreaming": "إيقاف البث",
"knowledge": "المعرفة",
"vision": "[تجريبي] محادثة الرؤية"
},
"sendWhenEnter": "إرسال عند الضغط على Enter",
"welcome": "مرحباً! كيف يمكنني مساعدتك اليوم؟",
"useOCR": "استخراج النص من الصورة (OCR)"
}
Loading

0 comments on commit e931f7c

Please sign in to comment.