const thTH = { sidebar: { home: 'หน้าแรก', extensions: 'ส่วนขยาย', installedPlugins: 'ปลั๊กอินที่ติดตั้ง', pluginMarket: 'ตลาดปลั๊กอิน', mcpServers: 'เซิร์ฟเวอร์ MCP', pluginPages: 'หน้าปลั๊กอิน', pluginPagesTooltip: 'หน้าเว็บที่จัดทำโดยปลั๊กอินที่ติดตั้ง', quickStart: 'เริ่มต้นอย่างรวดเร็ว', }, common: { login: 'เข้าสู่ระบบ', logout: 'ออกจากระบบ', accountOptions: 'การตั้งค่า', account: 'บัญชี', integration: 'การเชื่อมต่อ', email: 'อีเมล', password: 'รหัสผ่าน', welcome: 'ยินดีต้อนรับกลับสู่ LangBot 👋', continueToLogin: 'เข้าสู่ระบบเพื่อดำเนินการต่อ', loginSuccess: 'เข้าสู่ระบบสำเร็จ', loginFailed: 'เข้าสู่ระบบล้มเหลว กรุณาตรวจสอบอีเมลและรหัสผ่าน', loginLoadError: 'ไม่สามารถเชื่อมต่อกับเซิร์ฟเวอร์', loginLoadErrorDesc: 'ไม่สามารถเชื่อมต่อกับแบ็กเอนด์ LangBot ได้ กรุณาตรวจสอบว่าบริการกำลังทำงานอยู่แล้วลองใหม่อีกครั้ง', retry: 'ลองใหม่', enterEmail: 'กรอกที่อยู่อีเมล', enterPassword: 'กรอกรหัสผ่าน', invalidEmail: 'กรุณากรอกที่อยู่อีเมลที่ถูกต้อง', emptyPassword: 'กรุณากรอกรหัสผ่าน', language: 'ภาษา', helpDocs: 'ขอความช่วยเหลือ', featureRequest: 'ขอฟีเจอร์ใหม่', starOnGitHub: 'ให้ดาวบน GitHub', create: 'สร้าง', edit: 'แก้ไข', delete: 'ลบ', add: 'เพิ่ม', select: 'เลือก', cancel: 'ยกเลิก', submit: 'ส่ง', error: 'ข้อผิดพลาด', success: 'สำเร็จ', save: 'บันทึก', saving: 'กำลังบันทึก...', recommend: 'แนะนำ', start: 'เริ่ม', confirm: 'ยืนยัน', confirmDelete: 'ยืนยันการลบ', deleteConfirmation: 'คุณแน่ใจหรือไม่ว่าต้องการลบสิ่งนี้?', selectOption: 'เลือกตัวเลือก', selectPreset: 'เลือกค่าที่ตั้งไว้', required: 'จำเป็น', enable: 'เปิดใช้งาน', name: 'ชื่อ', description: 'คำอธิบาย', icon: 'ไอคอน', close: 'ปิด', deleteSuccess: 'ลบสำเร็จ', deleteError: 'ลบล้มเหลว: ', addRound: 'เพิ่มรอบ', copy: 'คัดลอก', copySuccess: 'คัดลอกสำเร็จ', copyFailed: 'คัดลอกล้มเหลว', test: 'ทดสอบ', forgotPassword: 'ลืมรหัสผ่าน?', agreementNotice: 'การดำเนินการต่อแสดงว่าคุณยอมรับ', privacyPolicy: 'นโยบายความเป็นส่วนตัว', and: 'และ', dataCollectionPolicy: 'นโยบายการเก็บรวบรวมข้อมูล', dataCollectionPolicyUrl: 'https://link.langbot.app/en/docs/data-policy', loading: 'กำลังโหลด...', fieldRequired: 'ช่องนี้จำเป็นต้องกรอก', or: 'หรือ', loginWithSpace: 'เข้าสู่ระบบด้วย Space', spaceLoginRecommended: 'แนะนำ: ใช้ API โมเดลที่เสถียรอย่างเป็นทางการและบริการคลาวด์', loginLocal: 'เข้าสู่ระบบด้วยบัญชีท้องถิ่น', loginWithPassword: 'เข้าสู่ระบบด้วยรหัสผ่าน', spaceLoginTitle: 'เข้าสู่ระบบด้วย Space', spaceLoginDescription: 'สแกน QR code หรือเข้าชมลิงก์ด้านล่างเพื่อยืนยันสิทธิ์', spaceLoginUserCode: 'รหัสของคุณ', spaceLoginExpires: 'รหัสจะหมดอายุใน {{seconds}} วินาที', spaceLoginWaiting: 'กำลังรอการยืนยันสิทธิ์...', spaceLoginSuccess: 'ยืนยันสิทธิ์สำเร็จ', spaceLoginFailed: 'เข้าสู่ระบบ Space ล้มเหลว', spaceLoginExpired: 'รหัสยืนยันหมดอายุแล้ว กรุณาลองใหม่', spaceLoginCancel: 'ยกเลิก', spaceLoginVisitLink: 'เข้าชมลิงก์', spaceLoginProcessing: 'กำลังเข้าสู่ระบบด้วย Space', spaceLoginProcessingDescription: 'กรุณารอสักครู่ขณะดำเนินการเข้าสู่ระบบ...', spaceLoginSuccessDescription: 'กำลังเปลี่ยนเส้นทางไปยัง LangBot...', spaceLoginError: 'เข้าสู่ระบบล้มเหลว', spaceLoginNoCode: 'ไม่พบรหัสยืนยันสิทธิ์', backToLogin: 'กลับไปหน้าเข้าสู่ระบบ', backToHome: 'กลับไปหน้าแรก', spaceAccountCannotChangePassword: 'บัญชี Space ไม่สามารถเปลี่ยนรหัสผ่านได้ที่นี่', theme: 'ธีม', changePassword: 'เปลี่ยนรหัสผ่าน', currentPassword: 'รหัสผ่านปัจจุบัน', newPassword: 'รหัสผ่านใหม่', confirmNewPassword: 'ยืนยันรหัสผ่านใหม่', enterCurrentPassword: 'กรอกรหัสผ่านปัจจุบัน', enterNewPassword: 'กรอกรหัสผ่านใหม่', enterConfirmPassword: 'ยืนยันรหัสผ่านใหม่', currentPasswordRequired: 'กรุณากรอกรหัสผ่านปัจจุบัน', newPasswordRequired: 'กรุณากรอกรหัสผ่านใหม่', confirmPasswordRequired: 'กรุณายืนยันรหัสผ่าน', passwordsDoNotMatch: 'รหัสผ่านไม่ตรงกัน', changePasswordSuccess: 'เปลี่ยนรหัสผ่านสำเร็จ', changePasswordFailed: 'เปลี่ยนรหัสผ่านล้มเหลว กรุณาตรวจสอบรหัสผ่านปัจจุบัน', apiIntegration: 'การเชื่อมต่อ API', apiKeys: 'คีย์ API', manageApiIntegration: 'จัดการการเชื่อมต่อ API', manageApiKeys: 'จัดการคีย์ API', createApiKey: 'สร้างคีย์ API', apiKeyName: 'ชื่อคีย์ API', apiKeyDescription: 'คำอธิบายคีย์ API', apiKeyValue: 'ค่าคีย์ API', apiKeyCreated: 'สร้างคีย์ API สำเร็จ', apiKeyDeleted: 'ลบคีย์ API สำเร็จ', apiKeyDeleteConfirm: 'คุณแน่ใจหรือไม่ว่าต้องการลบคีย์ API นี้?', apiKeyNameRequired: 'กรุณากรอกชื่อคีย์ API', copyApiKey: 'คัดลอกคีย์ API', apiKeyCopied: 'คัดลอกคีย์ API ไปยังคลิปบอร์ดแล้ว', noApiKeys: 'ยังไม่มีคีย์ API ที่กำหนดค่า', apiKeyHint: 'คีย์ API ช่วยให้ระบบภายนอกสามารถเข้าถึง API บริการของ LangBot ได้', webhooks: 'Webhooks', createWebhook: 'สร้าง Webhook', webhookName: 'ชื่อ Webhook', webhookUrl: 'URL ของ Webhook', webhookDescription: 'คำอธิบาย Webhook', webhookEnabled: 'เปิดใช้งาน', webhookCreated: 'สร้าง Webhook สำเร็จ', webhookDeleted: 'ลบ Webhook สำเร็จ', webhookDeleteConfirm: 'คุณแน่ใจหรือไม่ว่าต้องการลบ Webhook นี้?', webhookNameRequired: 'กรุณากรอกชื่อ Webhook', webhookUrlRequired: 'กรุณากรอก URL ของ Webhook', noWebhooks: 'ยังไม่มี Webhook ที่กำหนดค่า', webhookHint: 'Webhooks ช่วยให้ LangBot สามารถส่งเหตุการณ์ข้อความส่วนตัวและกลุ่มไปยังระบบภายนอกได้', actions: 'การดำเนินการ', apiKeyCreatedMessage: 'กรุณาคัดลอกคีย์ API นี้ หากปุ่มไม่ทำงาน กรุณาคัดลอกด้วยตนเอง', none: 'ไม่มี', more: 'เพิ่มเติม ({{count}})', less: 'น้อยลง', noItems: 'ไม่มีรายการ', }, notFound: { title: 'ไม่พบหน้า', description: 'หน้าที่คุณกำลังมองหาไม่มีอยู่', back: 'ย้อนกลับ', home: 'หน้าแรก', help: 'ขอความช่วยเหลือ', }, models: { title: 'โมเดล', description: 'กำหนดค่าและจัดการโมเดลที่สามารถใช้ใน Pipeline', createModel: 'สร้างโมเดล', editModel: 'แก้ไขโมเดล', getModelListError: 'ไม่สามารถดึงรายการโมเดลได้: ', modelName: 'ชื่อโมเดล', modelProvider: 'ผู้ให้บริการโมเดล', modelBaseURL: 'URL พื้นฐาน', modelAbilities: 'ความสามารถของโมเดล', saveSuccess: 'บันทึกสำเร็จ', saveError: 'บันทึกล้มเหลว: ', createSuccess: 'สร้างสำเร็จ', createError: 'สร้างล้มเหลว: ', deleteSuccess: 'ลบสำเร็จ', deleteError: 'ลบล้มเหลว: ', deleteConfirmation: 'คุณแน่ใจหรือไม่ว่าต้องการลบโมเดลนี้?', modelNameRequired: 'ชื่อโมเดลต้องไม่ว่างเปล่า', modelProviderRequired: 'ผู้ให้บริการโมเดลต้องไม่ว่างเปล่า', requestURLRequired: 'URL คำขอต้องไม่ว่างเปล่า', apiKeyRequired: 'API Key ต้องไม่ว่างเปล่า', keyNameRequired: 'ชื่อคีย์ต้องไม่ว่างเปล่า', mustBeValidNumber: 'ต้องเป็นตัวเลขที่ถูกต้อง', mustBeTrueOrFalse: 'ต้องเป็น true หรือ false', requestURL: 'URL คำขอ', scanURL: 'URL สแกนโมเดล', scanURLPlaceholder: 'เว้นว่างไว้เพื่อใช้ URL คำขอ + /models', scanURLDescription: 'กรอกปลายทางรายการโมเดลจริงเมื่อการสแกนโมเดลไม่ได้ใช้ที่อยู่เดียวกับการเรียกใช้โมเดล', apiKey: 'API Key', abilities: 'ความสามารถ', selectModelAbilities: 'เลือกความสามารถของโมเดล', visionAbility: 'ความสามารถด้านภาพ', functionCallAbility: 'การเรียกฟังก์ชัน', extraParameters: 'พารามิเตอร์เพิ่มเติม', addParameter: 'เพิ่มพารามิเตอร์', keyName: 'ชื่อคีย์', type: 'ประเภท', value: 'ค่า', string: 'สตริง', number: 'ตัวเลข', boolean: 'บูลีน', object: 'อ็อบเจกต์', objectJsonPlaceholder: '{ "type": "disabled" }', invalidJsonObject: 'ค่าต้องเป็นอ็อบเจกต์ JSON ที่ถูกต้อง', selectModelProvider: 'เลือกผู้ให้บริการโมเดล', modelProviderDescription: 'กรุณากรอกชื่อโมเดลที่ผู้ให้บริการจัดเตรียมไว้', modelManufacturer: 'ผู้ผลิตโมเดล', aggregationPlatform: 'แพลตฟอร์มรวม', selfDeployed: 'ติดตั้งเอง', builtin: 'ในตัว', selectModel: 'เลือกโมเดล', testSuccess: 'ทดสอบสำเร็จ', testError: 'ทดสอบล้มเหลว กรุณาตรวจสอบการกำหนดค่าโมเดล', llmModels: 'โมเดล LLM', localProvider: 'ท้องถิ่น', localProviderDescription: 'โมเดลที่กำหนดค่าและจัดการในเครื่อง', spaceProviderDescription: 'โมเดลที่ซิงค์จากบัญชี Space ของคุณ', spaceDisabledForLocalAccount: 'เข้าสู่ระบบด้วย Space เพื่อใช้โมเดลคลาวด์', syncModels: 'ซิงค์', syncSuccess: 'ซิงค์เสร็จสมบูรณ์: สร้าง {{created}} รายการ, อัปเดต {{updated}} รายการ', syncError: 'ซิงค์ล้มเหลว: ', spaceModelReadOnly: 'โมเดล Space เป็นแบบอ่านอย่างเดียว', noSpaceModels: 'ไม่มีโมเดล Space คลิกซิงค์เพื่อดึงโมเดลจาก Space', noLocalModels: 'ไม่มีโมเดลท้องถิ่น คลิกสร้างเพื่อเพิ่มโมเดล', providerCount: '{{count}} ผู้ให้บริการ', addModel: 'เพิ่มโมเดล', manualAdd: 'เพิ่มเอง', scanAdd: 'สแกน', scanModels: 'สแกนโมเดล', scanModelsHint: 'ดึงรายการโมเดลที่ใช้ได้จากผู้ให้บริการปัจจุบัน แล้วเลือกโมเดลที่ต้องการเพิ่ม', scannedModels: 'ผลการสแกน', scanDebug: 'ข้อมูลการดีบัก', searchScannedModels: 'ค้นหาผลการสแกน', noScannedModels: 'ยังไม่มีผลการสแกน กดปุ่มด้านบนเพื่อเริ่มสแกน', noScannedModelsMatch: 'ไม่พบโมเดลที่ตรงกัน', addSelectedModels: 'เพิ่มที่เลือก', addSelectedModelsSuccess: 'เพิ่มแล้ว {{count}} โมเดล', selectAll: 'เลือกทั้งหมด', alreadyAdded: 'เพิ่มแล้ว', addLLMModel: 'เพิ่มโมเดล LLM', addEmbeddingModel: 'เพิ่มโมเดล Embedding', provider: 'ผู้ให้บริการ', existingProvider: 'ผู้ให้บริการที่มีอยู่', newProvider: 'ผู้ให้บริการใหม่', selectProvider: 'เลือกผู้ให้บริการ', requester: 'ประเภทผู้ให้บริการ', selectRequester: 'เลือกประเภทผู้ให้บริการ', langbotModelsDescription: 'โมเดลคลาวด์ขับเคลื่อนโดย LangBot Space', credits: 'เครดิต', loginWithSpace: 'เข้าสู่ระบบด้วย Space', loginToUseModels: 'เข้าสู่ระบบด้วย Space เพื่อใช้โมเดลคลาวด์', noModels: 'ยังไม่มีโมเดลที่กำหนดค่า', langbotModels: 'โมเดล LangBot', spaceTrialTooltip: 'มีเครดิตทดลองใช้งานฟรี! เข้าสู่ระบบด้วย Space เพื่อเข้าถึงโมเดลคลาวด์โดยไม่ต้องตั้งค่า', unlockModels: 'เข้าสู่ระบบเพื่อใช้งาน', editProvider: 'แก้ไขผู้ให้บริการ', addProvider: 'เพิ่มผู้ให้บริการ', addProviderHint: 'เพิ่มผู้ให้บริการเพื่อใช้โมเดลจากแหล่งอื่น', addProviderHintSimple: 'เพิ่มผู้ให้บริการเพื่อใช้โมเดล', noProviders: 'ยังไม่มีผู้ให้บริการ', providerName: 'ชื่อผู้ให้บริการ', providerNameRequired: 'กรุณากรอกชื่อผู้ให้บริการ', requesterRequired: 'กรุณาเลือกประเภทผู้ให้บริการ', providerSaved: 'บันทึกผู้ให้บริการแล้ว', providerCreated: 'สร้างผู้ให้บริการแล้ว', providerSaveError: 'บันทึกผู้ให้บริการล้มเหลว: ', providerDeleted: 'ลบผู้ให้บริการแล้ว', providerDeleteError: 'ลบผู้ให้บริการล้มเหลว: ', deleteProviderConfirmation: 'คุณแน่ใจหรือไม่ว่าต้องการลบผู้ให้บริการนี้?', loadError: 'โหลดข้อมูลล้มเหลว', chat: 'แชท', embedding: 'Embedding', rerank: 'จัดลำดับใหม่', rerankUrlTooltip: 'URL เต็มสำหรับ endpoint จัดลำดับใหม่ (เช่น: https://dashscope.aliyuncs.com/compatible-api/v1/reranks)', rerankPathTooltip: 'พาธที่เพิ่มเข้าไปใน URL ฐาน (ค่าเริ่มต้น: rerank บางบริการใช้ reranks)', modelsCount: '{{count}} โมเดล', expandModels: 'ขยาย', collapseModels: 'ย่อ', fallback: { primary: 'โมเดลหลัก', fallbackList: 'โมเดลสำรอง', addFallback: 'เพิ่มโมเดลสำรอง', }, }, bots: { title: 'Bot', description: 'สร้างและจัดการ Bot ซึ่งเป็นจุดเชื่อมต่อของ LangBot กับแพลตฟอร์มต่างๆ', createBot: 'สร้าง Bot', selectFromSidebar: 'เลือก Bot จากแถบด้านข้าง', editBot: 'แก้ไข Bot', getBotListError: 'ไม่สามารถดึงรายการ Bot ได้: ', botName: 'ชื่อ Bot', botDescription: 'คำอธิบาย Bot', botNameRequired: 'ชื่อ Bot ต้องไม่ว่างเปล่า', botDescriptionRequired: 'คำอธิบาย Bot ต้องไม่ว่างเปล่า', adapterRequired: 'อะแดปเตอร์ต้องไม่ว่างเปล่า', defaultDescription: 'Bot หนึ่งตัว', getBotConfigError: 'ไม่สามารถดึงการกำหนดค่า Bot ได้: ', saveSuccess: 'บันทึกสำเร็จ', saveError: 'บันทึกล้มเหลว: ', createSuccess: 'สร้างสำเร็จ กรุณาเปิดใช้งานหรือแก้ไข Pipeline ที่ผูกไว้', createError: 'สร้างล้มเหลว: ', deleteSuccess: 'ลบสำเร็จ', deleteError: 'ลบล้มเหลว: ', deleteConfirmation: 'คุณแน่ใจหรือไม่ว่าต้องการลบ Bot นี้?', platformAdapter: 'การเลือกแพลตฟอร์ม/อะแดปเตอร์', selectAdapter: 'เลือกอะแดปเตอร์', adapterConfig: 'การกำหนดค่าอะแดปเตอร์', viewAdapterDocs: 'ดูเอกสาร', bindPipeline: 'ผูก Pipeline', selectPipeline: 'เลือก Pipeline', selectBot: 'เลือก Bot', botLogTitle: 'บันทึก Bot', enableAutoRefresh: 'เปิดการรีเฟรชอัตโนมัติ', session: 'เซสชัน', yesterday: 'เมื่อวาน', earlier: 'ก่อนหน้า', dateFormat: '{{day}}/{{month}}', setBotEnableError: 'ไม่สามารถตั้งค่าสถานะเปิดใช้งาน Bot ได้', log: 'บันทึก', configuration: 'การกำหนดค่า', logs: 'บันทึก', basicInfo: 'ข้อมูลพื้นฐาน', basicInfoDescription: 'ตั้งชื่อและคำอธิบาย Bot', routingConnection: 'การกำหนดเส้นทางและการเชื่อมต่อ', routingConnectionDescription: 'ผูก Pipeline ที่ประมวลผลข้อความสำหรับ Bot นี้', routingRules: 'กฎการกำหนดเส้นทางตามเงื่อนไข', routingRulesDescription: 'กฎจะถูกประเมินตามลำดับ การจับคู่แรกจะกำหนดเส้นทางไปยัง Pipeline ที่เกี่ยวข้อง หากไม่ตรงกันจะใช้ Pipeline เริ่มต้นด้านบน', addRoutingRule: 'เพิ่มกฎ', ruleTypeLauncherType: 'ประเภทเซสชัน', ruleTypeLauncherId: 'ID เซสชัน', ruleTypeMessageContent: 'เนื้อหาข้อความ', operatorEq: 'เท่ากับ', operatorNeq: 'ไม่เท่ากับ', operatorContains: 'ประกอบด้วย', operatorNotContains: 'ไม่ประกอบด้วย', operatorStartsWith: 'เริ่มต้นด้วย', operatorRegex: 'นิพจน์ปกติ', operatorHas: 'มี', operatorNotHas: 'ไม่มี', ruleTypeMessageHasElement: 'องค์ประกอบข้อความ', ruleValueElementPlaceholder: 'เลือกประเภทองค์ประกอบ', elementImage: 'รูปภาพ', elementVoice: 'เสียง', elementFile: 'ไฟล์', elementForward: 'ส่งต่อ', elementFace: 'อีโมจิ', elementAt: '@กล่าวถึง', elementAtAll: '@ทั้งหมด', elementQuote: 'อ้างอิง', ruleValuePlaceholder: 'ค่าที่ตรงกัน', ruleValueLauncherIdPlaceholder: 'ID กลุ่มหรือผู้ใช้', ruleValueMessagePlaceholder: 'ข้อความ', ruleValuePrefixPlaceholder: 'เช่น !draw', ruleValueRegexpPlaceholder: 'เช่น ^/help', pipelineDiscard: 'ละทิ้งข้อความ', sessionTypePerson: 'แชทส่วนตัว', sessionTypeGroup: 'แชทกลุ่ม', adapterConfigDescription: 'กำหนดค่าอะแดปเตอร์แพลตฟอร์มที่เลือก', dangerZone: 'โซนอันตราย', dangerZoneDescription: 'การดำเนินการที่ย้อนกลับไม่ได้และเป็นอันตราย', deleteBotAction: 'ลบ Bot นี้', deleteBotHint: 'เมื่อลบแล้ว การกำหนดค่าที่เกี่ยวข้องทั้งหมดจะถูกลบอย่างถาวร', webhookUrl: 'URL เรียกกลับ Webhook', webhookUrlCopied: 'คัดลอก URL Webhook แล้ว', webhookUrlHint: 'คลิกที่ช่องกรอกเพื่อเลือกทั้งหมด จากนั้นกด Ctrl+C (Mac: Cmd+C) เพื่อคัดลอก หรือคลิกปุ่ม', webhookUrlHintEither: 'ใช้ URL ใดก็ได้จากสอง URL ด้านบนในการกำหนดค่าแพลตฟอร์มของคุณ', webhookSaasHint: 'Webhook ต้องใช้โดเมนที่เข้าถึงได้จากภายนอก LangBot Cloud มี endpoint สาธารณะพร้อมใช้งานสำหรับ Bot ของคุณ', webhookSaasLink: 'เรียนรู้เพิ่มเติมเกี่ยวกับ LangBot Cloud', adapterCategory: { popular: 'ยอดนิยม', china: 'จีน', global: 'ทั่วโลก', protocol: 'โปรโตคอล', }, logLevel: 'ระดับบันทึก', allLevels: 'ทุกระดับ', selectLevel: 'เลือกระดับ', levelsSelected: 'ระดับที่เลือก', viewDetailedLogs: 'ดูบันทึกโดยละเอียด', viewDetails: 'รายละเอียด', collapse: 'ย่อ', imagesAttached: 'รูปภาพที่แนบ', noLogs: 'ยังไม่มีบันทึก', sessionMonitor: { title: 'เซสชัน', sessions: 'เซสชัน', noSessions: 'ไม่พบเซสชัน', selectSession: 'เลือกเซสชันเพื่อดูข้อความ', noMessages: 'ไม่มีข้อความในเซสชันนี้', messages: 'ข้อความ', messageCount: '{{count}} ข้อความ', loading: 'กำลังโหลด...', loadingSessions: 'กำลังโหลดเซสชัน...', loadingMessages: 'กำลังโหลดข้อความ...', user: 'ผู้ใช้', variables: 'ตัวแปร', platform: 'แพลตฟอร์ม', lastActive: 'ใช้งานล่าสุด', refresh: 'รีเฟรช', active: 'ใช้งานอยู่', inactive: 'ไม่ได้ใช้งาน', discarded: 'ถูกละทิ้ง', userMessage: 'ผู้ใช้', botMessage: 'ผู้ช่วย', }, }, plugins: { title: 'ส่วนขยาย', description: 'ติดตั้งและกำหนดค่าปลั๊กอินเพื่อขยายฟังก์ชันการทำงาน กรุณาเลือกใน Pipeline', createPlugin: 'สร้างปลั๊กอิน', editPlugin: 'แก้ไขปลั๊กอิน', installed: 'ติดตั้งแล้ว', marketplace: 'ตลาดปลั๊กอิน', arrange: 'เรียงลำดับปลั๊กอิน', install: 'ติดตั้ง', installPlugin: 'ติดตั้งปลั๊กอิน', onlySupportGithub: 'ปัจจุบันรองรับเฉพาะการติดตั้งจาก GitHub', enterGithubLink: 'กรอกลิงก์ GitHub ของปลั๊กอิน', installing: 'กำลังติดตั้งปลั๊กอิน...', installSuccess: 'ติดตั้งปลั๊กอินสำเร็จ', installFailed: 'ติดตั้งปลั๊กอินล้มเหลว:', searchPlugin: 'ค้นหาปลั๊กอิน', sortBy: 'เรียงตาม', mostStars: 'ดาวมากที่สุด', recentlyAdded: 'เพิ่มล่าสุด', recentlyUpdated: 'อัปเดตล่าสุด', noMatchingPlugins: 'ไม่พบปลั๊กอินที่ตรงกัน', loading: 'กำลังโหลด...', getPluginListError: 'ไม่สามารถดึงรายการปลั๊กอินได้:', noPluginInstalled: 'ยังไม่มีปลั๊กอินที่ติดตั้ง', pluginConfig: 'การกำหนดค่าปลั๊กอิน', pluginSort: 'เรียงลำดับปลั๊กอิน', pluginSortDescription: 'ลำดับปลั๊กอินมีผลต่อลำดับการประมวลผลภายในเหตุการณ์เดียวกัน กรุณาลากการ์ดปลั๊กอินเพื่อเรียงลำดับ', pluginSortSuccess: 'เรียงลำดับปลั๊กอินสำเร็จ', pluginSortError: 'เรียงลำดับปลั๊กอินล้มเหลว: ', pluginNoConfig: 'ปลั๊กอินนี้ไม่มีรายการกำหนดค่า', systemDisabled: 'ระบบปลั๊กอินปิดอยู่', systemDisabledDesc: 'ระบบปลั๊กอินไม่ได้เปิดใช้งาน กรุณาแก้ไขการกำหนดค่าตามเอกสาร', connectionError: 'ข้อผิดพลาดการเชื่อมต่อระบบปลั๊กอิน', connectionErrorDesc: 'กรุณาตรวจสอบการกำหนดค่าระบบปลั๊กอินหรือติดต่อผู้ดูแลระบบ', errorDetails: 'รายละเอียดข้อผิดพลาด', loadingStatus: 'กำลังตรวจสอบสถานะระบบปลั๊กอิน...', failedToGetStatus: 'ไม่สามารถดึงสถานะระบบปลั๊กอินได้', pluginSystemNotReady: 'ระบบปลั๊กอินยังไม่พร้อม ไม่สามารถดำเนินการนี้ได้', debugInfo: 'ข้อมูลดีบัก', debugInfoTitle: 'ข้อมูลดีบักปลั๊กอิน', debugUrl: 'URL ดีบัก', debugKey: 'คีย์ดีบัก', noDebugKey: '(ไม่ได้ตั้งค่า)', debugKeyDisabled: 'ไม่ได้ตั้งค่าคีย์ดีบัก การดีบักปลั๊กอินไม่ต้องยืนยันตัวตน', failedToGetDebugInfo: 'ไม่สามารถดึงข้อมูลดีบักได้', copiedToClipboard: 'คัดลอกไปยังคลิปบอร์ดแล้ว', deleting: 'กำลังลบ...', deletePlugin: 'ลบปลั๊กอิน', cancel: 'ยกเลิก', saveConfig: 'บันทึกการกำหนดค่า', saving: 'กำลังบันทึก...', confirmDeletePlugin: 'คุณแน่ใจหรือไม่ว่าต้องการลบปลั๊กอิน ({{author}}/{{name}})?', deleteDataCheckbox: 'ลบการกำหนดค่าปลั๊กอินและที่เก็บข้อมูลถาวรด้วย', confirmDelete: 'ยืนยันการลบ', deleteError: 'ลบล้มเหลว: ', close: 'ปิด', deleteConfirm: 'ยืนยันการลบ', deleteSuccess: 'ลบสำเร็จ', modifyFailed: 'แก้ไขล้มเหลว: ', componentName: { Tool: 'เครื่องมือ', EventListener: 'ตัวรับฟังเหตุการณ์', Command: 'คำสั่ง', KnowledgeEngine: 'เครื่องมือความรู้', Parser: 'ตัวแยกวิเคราะห์', Page: 'หน้า', }, uploadLocal: 'อัปโหลดจากเครื่อง', debugging: 'ดีบัก', uploadLocalPlugin: 'อัปโหลดปลั๊กอินจากเครื่อง', dragToUpload: 'ลากไฟล์ปลั๊กอินมาวางที่นี่เพื่ออัปโหลด', unsupportedFileType: 'ประเภทไฟล์ไม่รองรับ รองรับเฉพาะไฟล์ .lbpkg และ .zip', uploadingPlugin: 'กำลังอัปโหลดปลั๊กอิน...', uploadSuccess: 'อัปโหลดสำเร็จ', uploadFailed: 'อัปโหลดล้มเหลว', selectFileToUpload: 'เลือกไฟล์ปลั๊กอินเพื่ออัปโหลด', askConfirm: 'คุณแน่ใจหรือไม่ที่จะติดตั้งปลั๊กอิน "{{name}}" ({{version}})?', fromGithub: 'จาก GitHub', fromLocal: 'จากเครื่อง', fromMarketplace: 'จากตลาดปลั๊กอิน', componentsList: 'ส่วนประกอบ: ', noComponents: 'ไม่มีส่วนประกอบ', delete: 'ลบปลั๊กอิน', update: 'อัปเดตปลั๊กอิน', new: 'ใหม่', updateConfirm: 'ยืนยันการอัปเดต', confirmUpdatePlugin: 'คุณแน่ใจหรือไม่ว่าต้องการอัปเดตปลั๊กอิน ({{author}}/{{name}})?', confirmUpdate: 'ยืนยันการอัปเดต', updating: 'กำลังอัปเดต...', updateSuccess: 'อัปเดตปลั๊กอินสำเร็จ', updateError: 'อัปเดตล้มเหลว: ', saveConfigSuccessNormal: 'บันทึกการกำหนดค่าสำเร็จ', saveConfigError: 'บันทึกการกำหนดค่าล้มเหลว: ', config: 'การกำหนดค่า', readme: 'เอกสาร', viewSource: 'ดูซอร์สโค้ด', loadingReadme: 'กำลังโหลดเอกสาร...', noReadme: 'ปลั๊กอินนี้ไม่มีเอกสาร README', fileUpload: { tooLarge: 'ขนาดไฟล์เกินขีดจำกัด 10MB', success: 'อัปโหลดไฟล์สำเร็จ', failed: 'อัปโหลดไฟล์ล้มเหลว', uploading: 'กำลังอัปโหลด...', chooseFile: 'เลือกไฟล์', addFile: 'เพิ่มไฟล์', }, installFromGithub: 'จาก GitHub', enterRepoUrl: 'กรอก URL ของ GitHub repository', repoUrlPlaceholder: 'เช่น https://github.com/owner/repo', fetchingReleases: 'กำลังดึงรีลีส...', selectRelease: 'เลือกรีลีส', noReleasesFound: 'ไม่พบรีลีส', fetchReleasesError: 'ไม่สามารถดึงรีลีสได้: ', selectAsset: 'เลือกไฟล์เพื่อติดตั้ง', noAssetsFound: 'ไม่มีไฟล์ .lbpkg ในรีลีสนี้', fetchAssetsError: 'ไม่สามารถดึงไฟล์แนบได้: ', backToReleases: 'กลับไปรีลีส', backToRepoUrl: 'กลับไป URL ของ repository', backToAssets: 'กลับไปไฟล์แนบ', releaseTag: 'แท็ก: {{tag}}', releaseName: 'ชื่อ: {{name}}', publishedAt: 'เผยแพร่เมื่อ: {{date}}', prerelease: 'รุ่นก่อนเผยแพร่', assetSize: 'ขนาด: {{size}}', confirmInstall: 'ยืนยันการติดตั้ง', installFromGithubDesc: 'ติดตั้งปลั๊กอินจาก GitHub Release', goToMarketplace: 'ไปที่ตลาดปลั๊กอิน', installProgress: { title: 'กำลังติดตั้ง {{name}}', titleGeneric: 'การติดตั้งปลั๊กอิน', overallProgress: 'ความคืบหน้าโดยรวม', downloading: 'กำลังดาวน์โหลดปลั๊กอิน', installingDeps: 'กำลังติดตั้งแพ็กเกจ', initializing: 'กำลังเริ่มต้นการตั้งค่า', launching: 'กำลังเปิดใช้งานปลั๊กอิน', completed: 'เสร็จสมบูรณ์', failed: 'ล้มเหลว', downloadSize: 'ขนาดแพ็กเกจ: {{size}}', depsInfo: '{{count}} แพ็กเกจที่ต้องติดตั้ง', depsProgress: 'ติดตั้งแล้ว {{installed}}/{{total}} · เหลือ {{remaining}}', installComplete: 'ติดตั้งปลั๊กอินสำเร็จ', dismiss: 'ปิด', background: 'ทำงานเบื้องหลัง', taskQueue: 'งานติดตั้ง', clearCompleted: 'ล้างที่เสร็จแล้ว', noTasks: 'ไม่มีงานติดตั้ง', }, }, market: { searchPlaceholder: 'ค้นหาปลั๊กอิน...', searchResults: 'พบ {{count}} ปลั๊กอิน', totalPlugins: 'ทั้งหมด {{count}} ปลั๊กอิน', noPlugins: 'ไม่มีปลั๊กอินที่พร้อมใช้งาน', noResults: 'ไม่พบปลั๊กอินที่เกี่ยวข้อง', loadingMore: 'กำลังโหลดเพิ่มเติม...', loading: 'กำลังโหลด...', allLoaded: 'แสดงปลั๊กอินทั้งหมดแล้ว', install: 'ติดตั้ง', installConfirm: 'คุณแน่ใจหรือไม่ว่าต้องการติดตั้งปลั๊กอิน "{{name}}" ({{version}})?', downloadComplete: 'ดาวน์โหลดปลั๊กอิน "{{name}}" เสร็จสมบูรณ์', installFailed: 'ติดตั้งล้มเหลว กรุณาลองใหม่ภายหลัง', loadFailed: 'ไม่สามารถดึงรายการปลั๊กอินได้ กรุณาลองใหม่ภายหลัง', noDescription: 'ไม่มีคำอธิบาย', notFound: 'ไม่พบข้อมูลปลั๊กอิน', sortBy: 'เรียงตาม', sort: { recentlyAdded: 'เพิ่มล่าสุด', recentlyUpdated: 'อัปเดตล่าสุด', mostDownloads: 'ดาวน์โหลดมากที่สุด', leastDownloads: 'ดาวน์โหลดน้อยที่สุด', }, downloads: 'ดาวน์โหลด', download: 'ดาวน์โหลด', repository: 'Repository', downloadFailed: 'ดาวน์โหลดล้มเหลว', noReadme: 'ปลั๊กอินนี้ไม่มีเอกสาร README', description: 'คำอธิบาย', tagLabel: 'แท็ก', submissionTitle: 'คุณมีปลั๊กอินที่ส่งเพื่อตรวจสอบอยู่: {{name}}', submissionPending: 'ปลั๊กอินที่คุณส่งกำลังอยู่ระหว่างการตรวจสอบ: {{name}}', submissionApproved: 'ปลั๊กอินที่คุณส่งได้รับการอนุมัติแล้ว: {{name}}', submissionRejected: 'ปลั๊กอินที่คุณส่งถูกปฏิเสธ: {{name}}', clickToRevoke: 'เพิกถอน', revokeSuccess: 'เพิกถอนสำเร็จ', revokeFailed: 'เพิกถอนล้มเหลว', submissionDetails: 'รายละเอียดการส่งปลั๊กอิน', markAsRead: 'ทำเครื่องหมายว่าอ่านแล้ว', markAsReadSuccess: 'ทำเครื่องหมายว่าอ่านแล้ว', markAsReadFailed: 'ทำเครื่องหมายว่าอ่านแล้วล้มเหลว', filterByComponent: 'ส่วนประกอบ', allComponents: 'ส่วนประกอบทั้งหมด', requestPlugin: 'ขอปลั๊กอิน', viewDetails: 'ดูรายละเอียด', deprecated: 'เลิกใช้แล้ว', deprecatedTooltip: 'กรุณาติดตั้งปลั๊กอินเครื่องมือความรู้ที่เกี่ยวข้อง', tags: { filterByTags: 'กรองตามแท็ก', selected: 'เลือกแล้ว', selectTags: 'เลือกแท็ก', clearAll: 'ล้างทั้งหมด', noTags: 'ไม่มีแท็กที่พร้อมใช้งาน', }, }, mcp: { title: 'MCP', createServer: 'เพิ่มเซิร์ฟเวอร์ MCP', editServer: 'แก้ไขเซิร์ฟเวอร์ MCP', deleteServer: 'ลบเซิร์ฟเวอร์ MCP', confirmDeleteServer: 'คุณแน่ใจหรือไม่ว่าต้องการลบเซิร์ฟเวอร์ MCP นี้?', confirmDeleteTitle: 'ลบเซิร์ฟเวอร์ MCP', getServerListError: 'ไม่สามารถดึงรายการเซิร์ฟเวอร์ MCP ได้: ', serverName: 'ชื่อเซิร์ฟเวอร์', serverMode: 'โหมดการเชื่อมต่อ', selectMode: 'เลือกโหมด', stdio: 'โหมด Stdio', sse: 'โหมด SSE', http: 'โหมด HTTP', noServerInstalled: 'ยังไม่มีเซิร์ฟเวอร์ MCP ที่กำหนดค่า', serverNameRequired: 'ชื่อเซิร์ฟเวอร์ต้องไม่ว่างเปล่า', commandRequired: 'คำสั่งต้องไม่ว่างเปล่า', urlRequired: 'URL ต้องไม่ว่างเปล่า', timeoutMustBePositive: 'ค่าหมดเวลาต้องเป็นตัวเลขบวก', command: 'คำสั่ง', args: 'อาร์กิวเมนต์', env: 'ตัวแปรสภาพแวดล้อม', url: 'URL', headers: 'ส่วนหัว', timeout: 'หมดเวลา', addArgument: 'เพิ่มอาร์กิวเมนต์', addEnvVar: 'เพิ่มตัวแปรสภาพแวดล้อม', addHeader: 'เพิ่มส่วนหัว', keyName: 'ชื่อคีย์', value: 'ค่า', testing: 'กำลังทดสอบ...', connecting: 'กำลังเชื่อมต่อ...', testSuccess: 'ทดสอบสำเร็จ', testFailed: 'ทดสอบล้มเหลว: ', testError: 'ข้อผิดพลาดในการทดสอบ', refreshSuccess: 'รีเฟรชสำเร็จ', refreshFailed: 'รีเฟรชล้มเหลว: ', connectionSuccess: 'เชื่อมต่อสำเร็จ', connectionFailed: 'เชื่อมต่อล้มเหลว กรุณาตรวจสอบ URL', connectionFailedStatus: 'เชื่อมต่อล้มเหลว', toolsFound: 'เครื่องมือ', unknownError: 'ข้อผิดพลาดที่ไม่ทราบสาเหตุ', noToolsFound: 'ไม่พบเครื่องมือ', parseResultFailed: 'ไม่สามารถแยกวิเคราะห์ผลการทดสอบได้', noResultReturned: 'การทดสอบไม่ส่งผลลัพธ์กลับมา', getTaskFailed: 'ไม่สามารถดึงสถานะงานได้', noTaskId: 'ไม่ได้รับ ID งาน', deleteSuccess: 'ลบสำเร็จ', deleteFailed: 'ลบล้มเหลว: ', deleteError: 'ลบล้มเหลว: ', saveSuccess: 'บันทึกสำเร็จ', saveError: 'บันทึกล้มเหลว: ', createSuccess: 'สร้างสำเร็จ', createFailed: 'สร้างล้มเหลว: ', createError: 'สร้างล้มเหลว: ', loadFailed: 'โหลดล้มเหลว', modifyFailed: 'แก้ไขล้มเหลว: ', toolCount: 'เครื่องมือ: {{count}}', statusConnected: 'เชื่อมต่อแล้ว', statusDisconnected: 'ไม่ได้เชื่อมต่อ', statusError: 'ข้อผิดพลาดการเชื่อมต่อ', statusDisabled: 'ปิดใช้งาน', loading: 'กำลังโหลด...', starCount: 'ดาว: {{count}}', install: 'ติดตั้ง', installFromGithub: 'ติดตั้งเซิร์ฟเวอร์ MCP จาก GitHub', add: 'เพิ่ม', name: 'ชื่อ', nameRequired: 'ชื่อต้องไม่ว่างเปล่า', sseTimeout: 'หมดเวลา SSE', sseTimeoutDescription: 'หมดเวลาสำหรับการสร้างการเชื่อมต่อ SSE', extraParametersDescription: 'พารามิเตอร์เพิ่มเติมสำหรับกำหนดค่าพฤติกรรมเฉพาะของเซิร์ฟเวอร์ MCP', timeoutMustBeNumber: 'ค่าหมดเวลาต้องเป็นตัวเลข', timeoutNonNegative: 'ค่าหมดเวลาต้องไม่เป็นค่าลบ', sseTimeoutMustBeNumber: 'ค่าหมดเวลา SSE ต้องเป็นตัวเลข', sseTimeoutNonNegative: 'ค่าหมดเวลา SSE ต้องไม่เป็นค่าลบ', updateSuccess: 'อัปเดตสำเร็จ', updateFailed: 'อัปเดตล้มเหลว: ', selectFromSidebar: 'เลือกเซิร์ฟเวอร์ MCP จากแถบด้านข้าง', dangerZone: 'โซนอันตราย', dangerZoneDescription: 'การดำเนินการที่ย้อนกลับไม่ได้และเป็นอันตรายสำหรับเซิร์ฟเวอร์ MCP นี้', deleteMCPAction: 'ลบเซิร์ฟเวอร์ MCP นี้', deleteMCPHint: 'เมื่อลบแล้ว การกำหนดค่าเซิร์ฟเวอร์ MCP นี้จะไม่สามารถกู้คืนได้', }, pipelines: { title: 'Pipeline', description: 'Pipeline กำหนดกระบวนการประมวลผลเหตุการณ์ข้อความ ใช้เพื่อผูกกับ Bot', createPipeline: 'สร้าง Pipeline', selectFromSidebar: 'เลือก Pipeline จากแถบด้านข้าง', editPipeline: 'แก้ไข Pipeline', chat: 'แชท', configuration: 'การกำหนดค่า', debugChat: 'แชทดีบัก', getPipelineListError: 'ไม่สามารถดึงรายการ Pipeline ได้: ', daysAgo: 'วันก่อน', today: 'วันนี้', updateTime: 'อัปเดตเมื่อ ', defaultBadge: 'ค่าเริ่มต้น', sortBy: 'เรียงตาม', newestCreated: 'สร้างล่าสุด', earliestCreated: 'สร้างเก่าสุด', recentlyEdited: 'แก้ไขล่าสุด', earliestEdited: 'แก้ไขเก่าสุด', basicInfo: 'ข้อมูลพื้นฐาน', basicInfoDescription: 'ตั้งชื่อ ไอคอน และคำอธิบาย Pipeline', aiCapabilities: 'AI', triggerConditions: 'ทริกเกอร์', safetyControls: 'ความปลอดภัย', outputProcessing: 'เอาต์พุต', nameRequired: 'ชื่อต้องไม่ว่างเปล่า', descriptionRequired: 'คำอธิบายต้องไม่ว่างเปล่า', createSuccess: 'สร้างสำเร็จ กรุณาแก้ไขพารามิเตอร์ Pipeline', createError: 'สร้างล้มเหลว: ', saveSuccess: 'บันทึกสำเร็จ', saveError: 'บันทึกล้มเหลว: ', copySuffix: ' สำเนา', deleteConfirmation: 'คุณแน่ใจหรือไม่ว่าต้องการลบ Pipeline นี้? Bot ที่ผูกกับ Pipeline นี้จะไม่ทำงาน', defaultPipelineCannotDelete: 'ไม่สามารถลบ Pipeline ค่าเริ่มต้นได้', deleteSuccess: 'ลบสำเร็จ', deleteError: 'ลบล้มเหลว: ', copyConfirmTitle: 'ยืนยันการคัดลอก', copyConfirmation: 'คุณแน่ใจหรือไม่ว่าต้องการคัดลอก Pipeline นี้? การดำเนินการนี้จะสร้าง Pipeline ใหม่พร้อมการกำหนดค่าทั้งหมด', unsavedChanges: 'คุณมีการเปลี่ยนแปลงที่ยังไม่ได้บันทึก', dangerZone: 'โซนอันตราย', dangerZoneDescription: 'การดำเนินการที่ย้อนกลับไม่ได้และเป็นอันตราย', deletePipelineAction: 'ลบ Pipeline นี้', deletePipelineHint: 'เมื่อลบแล้ว Bot ที่ผูกกับ Pipeline นี้จะหยุดทำงาน', copyPipelineAction: 'คัดลอก Pipeline นี้', copyPipelineHint: 'สร้าง Pipeline ใหม่พร้อมการกำหนดค่าทั้งหมดที่คัดลอกมา', extensions: { title: 'ส่วนขยาย', loadError: 'ไม่สามารถโหลดปลั๊กอินได้', saveSuccess: 'บันทึกสำเร็จ', saveError: 'บันทึกล้มเหลว', noPluginsAvailable: 'ไม่มีปลั๊กอินที่พร้อมใช้งาน', disabled: 'ปิดใช้งาน', noPluginsSelected: 'ไม่ได้เลือกปลั๊กอิน', addPlugin: 'เพิ่มปลั๊กอิน', selectPlugins: 'เลือกปลั๊กอิน', pluginsTitle: 'ปลั๊กอิน', mcpServersTitle: 'เซิร์ฟเวอร์ MCP', noMCPServersSelected: 'ไม่ได้เลือกเซิร์ฟเวอร์ MCP', addMCPServer: 'เพิ่มเซิร์ฟเวอร์ MCP', selectMCPServers: 'เลือกเซิร์ฟเวอร์ MCP', toolCount: '{{count}} เครื่องมือ', noPluginsInstalled: 'ไม่มีปลั๊กอินที่ติดตั้ง', noMCPServersConfigured: 'ไม่มีเซิร์ฟเวอร์ MCP ที่กำหนดค่า', selectAll: 'เลือกทั้งหมด', enableAllPlugins: 'เปิดใช้งานปลั๊กอินทั้งหมด', enableAllMCPServers: 'เปิดใช้งานเซิร์ฟเวอร์ MCP ทั้งหมด', allPluginsEnabled: 'เปิดใช้งานปลั๊กอินทั้งหมดแล้ว', allMCPServersEnabled: 'เปิดใช้งานเซิร์ฟเวอร์ MCP ทั้งหมดแล้ว', }, debugDialog: { title: 'แชท Pipeline', selectPipeline: 'เลือก Pipeline', sessionType: 'ประเภทเซสชัน', privateChat: 'แชทส่วนตัว', groupChat: 'แชทกลุ่ม', send: 'ส่ง', reset: 'รีเซ็ตการสนทนา', inputPlaceholder: 'ส่งข้อความ{{type}}...', noMessages: 'ไม่มีข้อความ', userMessage: 'ผู้ใช้', botMessage: 'Bot', sendFailed: 'ส่งล้มเหลว', resetSuccess: 'รีเซ็ตการสนทนาสำเร็จ', resetFailed: 'รีเซ็ตล้มเหลว', loadMessagesFailed: 'ไม่สามารถโหลดข้อความได้', loadPipelinesFailed: 'ไม่สามารถโหลด Pipeline ได้', atTips: 'กล่าวถึง Bot', streaming: 'สตรีมมิ่ง', streamOutput: 'สตรีม', connected: 'เชื่อมต่อ WebSocket แล้ว', disconnected: 'ยกเลิกการเชื่อมต่อ WebSocket', connectionError: 'ข้อผิดพลาดการเชื่อมต่อ WebSocket', connectionFailed: 'เชื่อมต่อ WebSocket ล้มเหลว', notConnected: 'ยังไม่ได้เชื่อมต่อ WebSocket กรุณาลองใหม่ภายหลัง', imageUploadFailed: 'อัปโหลดรูปภาพล้มเหลว', reply: 'ตอบกลับ', replyTo: 'ตอบกลับถึง', showMarkdown: 'แสดง Markdown', showRaw: 'แสดงข้อมูลดิบ', allMembers: 'สมาชิกทั้งหมด', file: 'ไฟล์', voice: 'เสียง', uploadImage: 'อัปโหลดรูปภาพ', uploading: 'กำลังอัปโหลด...', }, monitoring: { title: 'แดชบอร์ด', description: 'ดูบันทึกการดำเนินการและข้อผิดพลาดของ Pipeline นี้ (24 ชั่วโมงล่าสุด)', detailedLogs: 'บันทึกโดยละเอียด', }, }, knowledge: { title: 'ฐานความรู้', createKnowledgeBase: 'สร้างฐานความรู้', selectFromSidebar: 'เลือกฐานความรู้จากแถบด้านข้าง', editKnowledgeBase: 'แก้ไขฐานความรู้', selectKnowledgeBase: 'เลือกฐานความรู้', selectKnowledgeBases: 'เลือกฐานความรู้', addKnowledgeBase: 'เพิ่มฐานความรู้', noKnowledgeBaseSelected: 'ไม่ได้เลือกฐานความรู้', empty: 'ว่างเปล่า', editDocument: 'เอกสาร', description: 'กำหนดค่าฐานความรู้เพื่อปรับปรุงการตอบสนองของ LLM', metadata: 'ข้อมูลเมตา', documents: 'เอกสาร', kbNameRequired: 'ชื่อฐานความรู้ต้องไม่ว่างเปล่า', kbDescriptionRequired: 'คำอธิบายฐานความรู้ต้องไม่ว่างเปล่า', embeddingModelUUIDRequired: 'โมเดล Embedding ต้องไม่ว่างเปล่า', daysAgo: 'วันก่อน', today: 'วันนี้', kbName: 'ชื่อฐานความรู้', kbDescription: 'คำอธิบายฐานความรู้', topK: 'Top K', topKRequired: 'ค่า Top K ต้องไม่ว่างเปล่า', topKMax: 'ค่าสูงสุดของ Top K คือ 30', topKdescription: 'ใช้เพื่อระบุจำนวนเอกสารที่เกี่ยวข้องที่ต้องการดึง มีช่วง 1 ถึง 30', defaultDescription: 'ฐานความรู้หนึ่งแห่ง', embeddingModelUUID: 'โมเดล Embedding', selectEmbeddingModel: 'เลือกโมเดล Embedding', embeddingModelDescription: 'ใช้เพื่อแปลงข้อความเป็นเวกเตอร์ คุณสามารถกำหนดค่าได้ในหน้าโมเดล', updateTime: 'อัปเดตเมื่อ ', cannotChangeEmbeddingModel: 'ฐานความรู้ที่สร้างแล้วไม่สามารถเปลี่ยนโมเดล Embedding ได้', updateKnowledgeBaseSuccess: 'อัปเดตฐานความรู้สำเร็จ', updateKnowledgeBaseFailed: 'อัปเดตฐานความรู้ล้มเหลว: ', documentsTab: { name: 'ชื่อ', status: 'สถานะ', noResults: 'ไม่มีเอกสาร', dragAndDrop: 'ลากและวางไฟล์ที่นี่หรือคลิกเพื่ออัปโหลด', uploading: 'กำลังอัปโหลด...', supportedFormats: 'รองรับไฟล์ PDF, Word, TXT, Markdown, HTML, ZIP และรูปแบบเอกสารอื่นๆ', uploadSuccess: 'อัปโหลดไฟล์สำเร็จ!', uploadError: 'อัปโหลดไฟล์ล้มเหลว: ', uploadingFile: 'กำลังอัปโหลดไฟล์...', fileSizeExceeded: 'ขนาดไฟล์เกินขีดจำกัด 10MB กรุณาแบ่งเป็นไฟล์ขนาดเล็กลง', actions: 'การดำเนินการ', delete: 'ลบไฟล์', fileDeleteSuccess: 'ลบไฟล์สำเร็จ', fileDeleteFailed: 'ลบไฟล์ล้มเหลว: ', processing: 'กำลังประมวลผล', completed: 'เสร็จสมบูรณ์', failed: 'ล้มเหลว', selectParser: 'เลือกตัวแยกวิเคราะห์', builtInParser: 'จัดเตรียมโดยเครื่องมือความรู้', noParserAvailable: 'ไม่มีตัวแยกวิเคราะห์ที่รองรับไฟล์ประเภทนี้ กรุณาติดตั้งปลั๊กอินตัวแยกวิเคราะห์ที่สามารถจัดการรูปแบบนี้ได้', installParserHint: 'เรียกดูปลั๊กอินตัวแยกวิเคราะห์ใน Marketplace →', confirmUpload: 'อัปโหลด', cancelUpload: 'ยกเลิก', }, deleteKnowledgeBaseConfirmation: 'คุณแน่ใจหรือไม่ว่าต้องการลบฐานความรู้นี้? เอกสารทั้งหมดในฐานความรู้นี้จะถูกลบ', retrieve: 'ทดสอบการดึงข้อมูล', retrieveTest: 'ทดสอบการดึงข้อมูล', query: 'คำค้นหา', queryPlaceholder: 'กรอกข้อความค้นหา...', distance: 'ระยะห่าง', content: 'เนื้อหา', fileName: 'ชื่อไฟล์', noResults: 'ไม่มีผลลัพธ์', retrieveError: 'ดึงข้อมูลล้มเหลว: ', unknownEngine: 'เครื่องมือไม่ทราบ', knowledgeEngine: 'เครื่องมือความรู้', knowledgeEngineRequired: 'กรุณาเลือกเครื่องมือความรู้', selectKnowledgeEngine: 'เลือกเครื่องมือความรู้', builtInEngine: 'เครื่องมือในตัว', cannotChangeKnowledgeEngine: 'ไม่สามารถเปลี่ยนเครื่องมือความรู้หลังจากสร้างแล้ว', basicInfo: 'ข้อมูลพื้นฐาน', basicInfoDescription: 'ตั้งชื่อ ไอคอน และคำอธิบายฐานความรู้', engineSettings: 'การตั้งค่าเครื่องมือ', engineSettingsDescription: 'การกำหนดค่าสำหรับเครื่องมือความรู้ที่เลือก', engineSettingsReadonly: 'อ่านอย่างเดียวในโหมดแก้ไข', engineSettingsInvalid: 'การตั้งค่าเครื่องมือไม่ถูกต้อง โปรดตรวจสอบฟิลด์ที่จำเป็น', retrievalSettingsInvalid: 'การตั้งค่าการดึงข้อมูลไม่ถูกต้อง โปรดตรวจสอบฟิลด์ที่จำเป็น', retrievalSettings: 'การตั้งค่าการดึงข้อมูล', retrievalSettingsDescription: 'กำหนดค่าวิธีดึงเอกสารจากฐานความรู้นี้', dangerZone: 'โซนอันตราย', dangerZoneDescription: 'การดำเนินการที่ย้อนกลับไม่ได้และเป็นอันตราย', deleteKbAction: 'ลบฐานความรู้นี้', deleteKbHint: 'เมื่อลบแล้ว เอกสารและข้อมูลทั้งหมดในฐานความรู้นี้จะถูกลบอย่างถาวร', noEnginesAvailable: 'ไม่มีเครื่องมือฐานความรู้ที่พร้อมใช้งาน', installEngineHint: 'กรุณาติดตั้งปลั๊กอิน "เครื่องมือความรู้" ก่อน', createKnowledgeBaseFailed: 'สร้างฐานความรู้ล้มเหลว: ', loadKnowledgeBaseFailed: 'โหลดฐานความรู้ล้มเหลว: ', deleteKnowledgeBaseFailed: 'ลบฐานความรู้ล้มเหลว: ', getKnowledgeBaseListError: 'ไม่สามารถดึงรายการฐานความรู้ได้: ', embeddingModel: 'โมเดล Embedding', embeddingModelRequired: 'เครื่องมือนี้ต้องใช้โมเดล Embedding', addExternal: 'เพิ่มฐานความรู้ภายนอก', createExternalSuccess: 'สร้างฐานความรู้ภายนอกสำเร็จ', updateExternalSuccess: 'อัปเดตฐานความรู้ภายนอกสำเร็จ', deleteExternalSuccess: 'ลบฐานความรู้ภายนอกสำเร็จ', retriever: 'ตัวดึงข้อมูล', selectRetriever: 'เลือกตัวดึงข้อมูล...', retrieverConfiguration: 'การกำหนดค่าตัวดึงข้อมูล', retrieverInstallInfo: 'คุณสามารถติดตั้งปลั๊กอินตัวดึงข้อมูลความรู้ได้จาก', retrieverMarketLink: 'ที่นี่', migration: { title: 'การย้ายฐานความรู้', description: 'เวอร์ชันใหม่ได้ปรับโครงสร้างฐานความรู้เป็นสถาปัตยกรรมแบบปลั๊กอิน รวมฐานความรู้ในตัวและภายนอกเป็นปลั๊กอิน "เครื่องมือความรู้" จำเป็นต้องย้ายข้อมูลฐานความรู้เดิม ข้อมูลเก่าของคุณได้รับการสำรองข้อมูลอัตโนมัติในฐานข้อมูลแล้ว', detected: 'พบ {{total}} ฐานความรู้ที่ต้องย้าย ({{internal}} ภายใน, {{external}} ภายนอก)', startWithInstall: 'ติดตั้งปลั๊กอินอัตโนมัติและย้ายข้อมูล', startDataOnly: 'ย้ายข้อมูลเท่านั้น', dataOnlyHint: '"ย้ายข้อมูลเท่านั้น" สำหรับสภาพแวดล้อมออฟไลน์/อินทราเน็ต กรุณาติดตั้งปลั๊กอินที่เกี่ยวข้องด้วยตนเองหลังจากย้ายข้อมูล', dismiss: 'ยกเลิกข้อมูลเดิม', running: 'กำลังย้ายฐานความรู้ กรุณารอ...', success: 'การย้ายฐานความรู้เสร็จสมบูรณ์', error: 'การย้ายฐานความรู้ล้มเหลว: ', dismissError: 'การดำเนินการล้มเหลว', retry: 'ลองใหม่', }, }, register: { title: 'เริ่มต้น LangBot 👋', description: 'นี่เป็นครั้งแรกที่คุณเริ่มใช้งาน LangBot', adminAccountNote: 'บัญชีที่คุณใช้ที่นี่จะถูกตั้งเป็นบัญชีผู้ดูแลระบบ', register: 'ลงทะเบียน', initWithSpace: 'เริ่มต้นด้วย Space', spaceRecommended: 'แนะนำ: ใช้ API โมเดลที่เสถียรอย่างเป็นทางการและบริการคลาวด์', spaceInfoTip1: 'Space ให้บริการยืนยันตัวตนแบบรวมโดยไม่อัปโหลดข้อมูลสำคัญใดๆ ของคุณ', spaceInfoTip2: 'การเข้าสู่ระบบด้วยบัญชี Space ช่วยให้คุณเข้าถึงโมเดล LangBot และบริการคลาวด์อื่นๆ รวมถึงเครดิตเรียกใช้โมเดลฟรีเพื่อช่วยให้คุณเริ่มต้นได้อย่างรวดเร็ว', spaceInfoTip3: 'วิธีการเข้าสู่ระบบของคุณไม่มีผลต่อฟีเจอร์อื่นๆ คุณสามารถกำหนดค่าและใช้โมเดลจากแหล่งอื่นได้ตลอดเวลา', registerLocal: 'ลงทะเบียนบัญชีท้องถิ่น', registerWithPassword: 'ลงทะเบียนด้วยอีเมลและรหัสผ่าน', initSuccess: 'เริ่มต้นระบบสำเร็จ กรุณาเข้าสู่ระบบ', initFailed: 'เริ่มต้นระบบล้มเหลว: ', }, resetPassword: { title: 'รีเซ็ตรหัสผ่าน 🔐', description: 'กรอกคีย์กู้คืนและรหัสผ่านใหม่เพื่อรีเซ็ตรหัสผ่านบัญชี', recoveryKey: 'คีย์กู้คืน', recoveryKeyDescription: 'เก็บไว้ใน `system.recovery_key` ของไฟล์กำหนดค่า `data/config.yaml`', newPassword: 'รหัสผ่านใหม่', enterRecoveryKey: 'กรอกคีย์กู้คืน', enterNewPassword: 'กรอกรหัสผ่านใหม่', recoveryKeyRequired: 'คีย์กู้คืนต้องไม่ว่างเปล่า', newPasswordRequired: 'รหัสผ่านใหม่ต้องไม่ว่างเปล่า', resetPassword: 'รีเซ็ตรหัสผ่าน', resetting: 'กำลังรีเซ็ต...', resetSuccess: 'รีเซ็ตรหัสผ่านสำเร็จ กรุณาเข้าสู่ระบบ', resetFailed: 'รีเซ็ตรหัสผ่านล้มเหลว กรุณาตรวจสอบอีเมลและคีย์กู้คืน', backToLogin: 'กลับไปหน้าเข้าสู่ระบบ', }, embedding: { description: 'จัดการโมเดล Embedding สำหรับการแปลงข้อความเป็นเวกเตอร์', createModel: 'สร้างโมเดล Embedding', editModel: 'แก้ไขโมเดล Embedding', getModelListError: 'ไม่สามารถดึงรายการโมเดล Embedding ได้: ', embeddingModels: 'Embedding', extraParametersDescription: 'จะถูกแนบไปกับเนื้อหาคำขอ เช่น encoding_format, dimensions เป็นต้น', }, llm: { description: 'จัดการโมเดล LLM สำหรับการสร้างบทสนทนา', llmModels: 'LLM', extraParametersDescription: 'จะถูกแนบไปกับเนื้อหาคำขอ เช่น max_tokens, temperature, top_p เป็นต้น', }, version: { newVersionAvailable: 'มีเวอร์ชันใหม่', viewUpdateGuide: 'ดูคู่มือการอัปเดต', noReleaseNotes: 'ไม่มีบันทึกการเผยแพร่', }, account: { settings: 'การตั้งค่าบัญชี', setPassword: 'ตั้งรหัสผ่าน', passwordSetSuccess: 'ตั้งรหัสผ่านสำเร็จ', passwordStatus: 'รหัสผ่านท้องถิ่น', passwordSet: 'ตั้งค่าแล้ว', passwordNotSet: 'ยังไม่ได้ตั้งค่า', passwordSetDescription: 'ตั้งรหัสผ่านแล้ว คุณสามารถเข้าสู่ระบบด้วยอีเมลและรหัสผ่าน', spaceStatus: 'บัญชี Space', spaceBound: 'ผูกแล้ว', spaceNotBound: 'ยังไม่ผูก', spaceBoundDescription: 'ผูกบัญชี Space แล้ว สามารถใช้ API โมเดลอย่างเป็นทางการและบริการคลาวด์ได้', bindSpace: 'ผูกบัญชี Space', bindSpaceDescription: 'ผูกเพื่อใช้ API โมเดลอย่างเป็นทางการและบริการคลาวด์', bindSpaceButton: 'ผูก', bindSpaceConfirmTitle: 'ยืนยันการผูก', bindSpaceConfirmDescription: 'คุณกำลังจะผูกอินสแตนซ์ท้องถิ่นกับบัญชี Space', bindSpaceWarning: 'หลังจากผูกแล้ว อีเมลเข้าสู่ระบบของคุณจะเปลี่ยนจาก {{localEmail}} เป็นอีเมลบัญชี Space', bindSpaceSuccess: 'ผูกบัญชี Space สำเร็จ', bindSpaceFailed: 'ผูกบัญชี Space ล้มเหลว', bindSpaceInvalidState: 'คำขอผูกไม่ถูกต้อง กรุณาลองใหม่จากการตั้งค่าบัญชี', setPasswordHint: 'ตั้งรหัสผ่านเพื่อเข้าสู่ระบบด้วยอีเมลและรหัสผ่าน', spaceEmailMismatch: 'อีเมลเข้าสู่ระบบ Space ไม่ตรงกับอีเมลบัญชีท้องถิ่น', }, monitoring: { title: 'แดชบอร์ด', description: 'ตรวจสอบกิจกรรม Bot, การเรียก LLM และประสิทธิภาพของระบบ', overview: 'ภาพรวม', totalMessages: 'ข้อความทั้งหมด', llmCallsCount: 'การเรียก LLM', modelCallsCount: 'การเรียกโมเดล', successRate: 'อัตราความสำเร็จ', activeSessions: 'เซสชันที่ใช้งานอยู่', last24Hours: '24 ชั่วโมงล่าสุด', filters: { title: 'ตัวกรอง', bot: 'Bot', pipeline: 'Pipeline', allBots: 'Bot ทั้งหมด', selectBot: 'เลือก Bot', allPipelines: 'Pipeline ทั้งหมด', selectPipeline: 'เลือก Pipeline', loading: 'กำลังโหลด...', timeRange: 'ช่วงเวลา', customRange: 'ช่วงเวลาที่กำหนดเอง', from: 'จาก', to: 'ถึง', apply: 'นำไปใช้', reset: 'รีเซ็ตตัวกรอง', lastHour: '1 ชั่วโมงล่าสุด', last6Hours: '6 ชั่วโมงล่าสุด', last24Hours: '24 ชั่วโมงล่าสุด', last7Days: '7 วันล่าสุด', last30Days: '30 วันล่าสุด', }, tabs: { messages: 'บันทึกข้อความ', llmCalls: 'การเรียก LLM', embeddingCalls: 'การเรียก Embedding', modelCalls: 'การเรียกโมเดล', sessions: 'การวิเคราะห์เซสชัน', feedback: 'ความคิดเห็นผู้ใช้', errors: 'บันทึกข้อผิดพลาด', }, messageList: { timestamp: 'เวลา', bot: 'Bot', pipeline: 'Pipeline', message: 'ข้อความ', sessionId: 'ID เซสชัน', status: 'สถานะ', actions: 'การดำเนินการ', viewDetails: 'ดูรายละเอียด', copyId: 'คัดลอก ID', noMessages: 'ไม่พบข้อความ', noMessagesDescription: 'ลองปรับตัวกรองหรือกลับมาตรวจสอบภายหลัง', loading: 'กำลังโหลดข้อความ...', loadMore: 'โหลดเพิ่มเติม', autoRefresh: 'รีเฟรชอัตโนมัติ', platform: 'บทบาท', user: 'ผู้ใช้', level: 'ระดับ', runner: 'ตัวประมวลผล', viewConversation: 'ดูการสนทนา', }, llmCalls: { title: 'การเรียก LLM', model: 'โมเดล', tokens: 'โทเคน', duration: 'ระยะเวลา', cost: 'ค่าใช้จ่าย', noData: 'ไม่พบการเรียก LLM', inputTokens: 'โทเคนอินพุต', outputTokens: 'โทเคนเอาต์พุต', totalTokens: 'โทเคนทั้งหมด', avgDuration: 'ระยะเวลาเฉลี่ย', calls: 'การเรียก', }, embeddingCalls: { title: 'การเรียก Embedding', model: 'โมเดล', tokens: 'โทเคน', duration: 'ระยะเวลา', noData: 'ไม่พบการเรียก Embedding', promptTokens: 'โทเคนพรอมต์', totalTokens: 'โทเคนทั้งหมด', inputCount: 'จำนวนอินพุต', knowledgeBase: 'ฐานความรู้', queryText: 'คำค้นหา', }, modelCalls: { title: 'การเรียกโมเดล', llmModel: 'LLM', embeddingModel: 'Embedding', embeddingCall: 'Embedding', retrieveCall: 'การดึงข้อมูล', noData: 'ไม่พบการเรียกโมเดล', }, sessions: { sessionId: 'ID เซสชัน', messageCount: 'ข้อความ', duration: 'ระยะเวลา', lastActivity: 'กิจกรรมล่าสุด', noSessions: 'ไม่พบเซสชัน', startTime: 'เวลาเริ่มต้น', messageStats: 'สถิติข้อความ', totalMessages: 'ข้อความทั้งหมด', successMessages: 'สำเร็จ', errorMessages: 'ล้มเหลว', llmStats: 'สถิติ LLM', noData: 'ไม่พบเซสชัน', }, errors: { title: 'ข้อผิดพลาด', errorType: 'ประเภทข้อผิดพลาด', errorMessage: 'ข้อความผิดพลาด', occurredAt: 'เกิดขึ้นเมื่อ', noErrors: 'ไม่พบข้อผิดพลาด', stackTrace: 'Stack Trace', }, feedback: { title: 'ความคิดเห็นผู้ใช้', totalFeedback: 'ความคิดเห็นทั้งหมด', totalLikes: 'ถูกใจ', totalDislikes: 'ไม่ถูกใจ', satisfactionRate: 'อัตราความพึงพอใจ', like: 'ถูกใจ', dislike: 'ไม่ถูกใจ', noFeedback: 'ยังไม่มีความคิดเห็น', noFeedbackDescription: 'ความคิดเห็นของผู้ใช้จะแสดงที่นี่', feedbackList: 'รายการความคิดเห็น', feedbackContent: 'เนื้อหาความคิดเห็น', contextInfo: 'ข้อมูลบริบท', userId: 'ID ผู้ใช้', messageId: 'ID ข้อความ', streamId: 'ID คำถามที่เกี่ยวข้อง', inaccurateReasons: 'เหตุผลที่ไม่ถูกต้อง', platform: 'แพลตฟอร์ม', exportFeedback: 'ส่งออกความคิดเห็น', }, queries: { title: 'คำค้นหา', }, messageDetails: { noData: 'ไม่มีการเรียก LLM หรือข้อผิดพลาดสำหรับคำค้นหานี้', }, queryVariables: { title: 'ตัวแปรคำค้นหา', }, trafficChart: { title: 'ภาพรวมปริมาณการใช้งาน', messages: 'ข้อความ', llmCalls: 'การเรียก LLM', noData: 'ไม่มีข้อมูลปริมาณการใช้งาน', }, viewMonitoring: 'ดูการตรวจสอบ', refreshData: 'รีเฟรชข้อมูล', exportData: 'ส่งออกข้อมูล', export: { title: 'ส่งออกข้อมูล', exporting: 'กำลังส่งออก...', messages: 'ข้อความ', llmCalls: 'การเรียก LLM', embeddingCalls: 'การเรียก Embedding', errors: 'บันทึกข้อผิดพลาด', sessions: 'เซสชัน', feedback: 'ความคิดเห็นผู้ใช้', }, }, storageAnalysis: { title: 'วิเคราะห์พื้นที่จัดเก็บ', description: 'ตรวจสอบการใช้พื้นที่จัดเก็บและรายการที่สามารถล้างได้', openDialog: 'ดูการวิเคราะห์', dialogTitle: 'วิเคราะห์พื้นที่จัดเก็บ', generatedAt: 'สร้างเมื่อ {{time}}', loading: 'กำลังโหลด...', refresh: 'รีเฟรช', totalSize: 'ขนาดรวม', binaryStorage: 'พื้นที่จัดเก็บไบนารีของปลั๊กอิน', uploadCleanup: 'ไฟล์อัปโหลดที่หมดอายุ', logCleanup: 'บันทึกที่หมดอายุ', sections: 'ส่วนพื้นที่จัดเก็บ', monitoringTables: 'ตารางการตรวจสอบ', runtimeTasks: 'งาน runtime', cleanupPolicy: 'นโยบายการล้างข้อมูล', uploadRetention: 'ระยะเวลาเก็บไฟล์อัปโหลด', logRetention: 'ระยะเวลาเก็บบันทึก', databaseType: 'ชนิดฐานข้อมูล', days: 'วัน', missing: 'ไม่มี', expiredUploads: 'ไฟล์อัปโหลดที่หมดอายุ', expiredLogs: 'บันทึกที่หมดอายุ', noExpiredUploads: 'ไม่มีไฟล์อัปโหลดที่หมดอายุ', noExpiredLogs: 'ไม่มีบันทึกที่หมดอายุ', sectionNames: { database: 'ฐานข้อมูล', logs: 'บันทึก', storage: 'ไฟล์อัปโหลด', vector_store: 'คลังเวกเตอร์', plugins: 'ปลั๊กอิน', mcp: 'MCP', temp: 'ไฟล์ชั่วคราว', }, }, limitation: { maxBotsReached: 'จำนวน Bot สูงสุด ({{max}}) ถึงขีดจำกัดแล้ว กรุณาลบ Bot ที่มีอยู่ก่อนสร้างใหม่', maxPipelinesReached: 'จำนวน Pipeline สูงสุด ({{max}}) ถึงขีดจำกัดแล้ว กรุณาลบ Pipeline ที่มีอยู่ก่อนสร้างใหม่', maxExtensionsReached: 'จำนวนส่วนขยายสูงสุด ({{max}}) ถึงขีดจำกัดแล้ว กรุณาลบเซิร์ฟเวอร์ MCP หรือปลั๊กอินที่มีอยู่ก่อนเพิ่มใหม่', }, wizard: { sidebarDescription: 'สร้าง Bot ด้วยขั้นตอนที่แนะนำ', loading: 'กำลังโหลดตัวช่วย...', loadError: 'ไม่สามารถโหลดข้อมูลตัวช่วยได้', skip: 'ข้าม', skipConfirmMessage: 'คุณสามารถเข้าสู่ตัวช่วยเริ่มต้นอย่างรวดเร็วจากเมนูบัญชีในภายหลัง หรือสร้าง Bot ด้วยตนเอง', skipConfirmOk: 'ตกลง', prev: 'ก่อนหน้า', next: 'ถัดไป', finish: 'สร้างและติดตั้ง', confirmCreateBot: 'ยืนยัน สร้าง Bot', createSuccess: 'สร้าง Pipeline และเชื่อมกับ Bot สำเร็จ!', botCreateSuccess: 'สร้าง Bot สำเร็จ!', botSaveSuccess: 'บันทึกและเปิดใช้งาน Bot สำเร็จ!', createError: 'ไม่สามารถสร้างทรัพยากรได้', spaceAuthError: 'ไม่สามารถเริ่มต้นการยืนยันสิทธิ์ Space ได้', skipSaveError: 'ไม่สามารถบันทึกสถานะการข้ามได้ กรุณาลองใหม่', completeSaveError: 'ไม่สามารถบันทึกสถานะการเสร็จสิ้นได้ กรุณาลองใหม่', step: { platform: 'แพลตฟอร์ม', botConfig: 'ตั้งค่า Bot', aiEngine: 'เครื่องมือ AI', done: 'เสร็จสิ้น', }, platform: { title: 'เลือกแพลตฟอร์ม', description: 'เลือกแพลตฟอร์มข้อความที่ Bot ของคุณจะเชื่อมต่อ', }, botConfig: { title: 'กำหนดค่า Bot ของคุณ', description: 'ตั้งค่า Bot ของคุณและตรวจสอบว่าทำงานได้ก่อนดำเนินการต่อ', saveBot: 'บันทึกและเปิดใช้งาน Bot', resaveBot: 'บันทึกการกำหนดค่าอีกครั้ง', botSaved: 'บันทึกและเปิดใช้งาน Bot แล้ว ตรวจสอบบันทึกเพื่อยืนยันการเชื่อมต่อ', logsTitle: 'บันทึก Bot', logsDescription: 'ตรวจสอบกิจกรรม Bot เพื่อยืนยันว่าการเชื่อมต่อแพลตฟอร์มทำงานอยู่', }, aiEngine: { title: 'เลือกเครื่องมือ AI', description: 'เลือกเครื่องมือ AI ที่จะขับเคลื่อนความฉลาดของ Bot', }, spaceBanner: { message: 'เชื่อมต่อกับ LangBot Space เพื่อรับเครดิตทดลองใช้โมเดลฟรีและตั้งค่าทันทีโดยไม่ต้องกำหนดค่า!', action: 'ยืนยันสิทธิ์กับ Space', }, config: { botInfo: 'ข้อมูล Bot', botNamePlaceholder: 'กรอกชื่อ Bot', botDescPlaceholder: 'กรอกคำอธิบาย Bot (ไม่บังคับ)', platformConfig: 'การกำหนดค่า {{platform}}', aiConfig: 'การกำหนดค่า {{engine}}', }, done: { title: 'เสร็จเรียบร้อย!', description: 'Bot ของคุณถูกสร้างและเชื่อมต่อกับ Pipeline AI แล้ว คุณสามารถจัดการได้จากหน้าทำงาน', backToWorkbench: 'กลับไปหน้าทำงาน', }, }, feishu: { createApp: 'สร้างแอป Feishu ด้วยคลิกเดียว', scanQRCode: 'สแกนคิวอาร์โค้ดด้านล่างด้วย Feishu เพื่ออนุญาตและสร้างแอปโดยอัตโนมัติ', waitingForScan: 'กำลังรอสแกน', createSuccess: 'สร้างแอปสำเร็จแล้ว และกรอกข้อมูลรับรองให้อัตโนมัติ', createFailed: 'สร้างแอปไม่สำเร็จ', connecting: 'กำลังเชื่อมต่อบริการ Feishu...', expired: 'คิวอาร์โค้ดหมดอายุแล้ว กรุณาลองใหม่', denied: 'ผู้ใช้ปฏิเสธการอนุญาต', connectionLost: 'การเชื่อมต่อขาดหาย กรุณาลองใหม่', reconnecting: 'กำลังเชื่อมต่อใหม่...', retry: 'ลองใหม่', }, weixin: { scanLogin: 'เข้าสู่ระบบ WeChat ด้วยคิวอาร์โค้ด', scanQRCode: 'สแกนคิวอาร์โค้ดด้านล่างด้วย WeChat เพื่ออนุญาตและกรอกโทเคนอัตโนมัติ', loginSuccess: 'เข้าสู่ระบบสำเร็จ และกรอกโทเคนอัตโนมัติแล้ว', loginFailed: 'เข้าสู่ระบบไม่สำเร็จ', }, dingtalk: { createApp: 'สร้างแอป DingTalk ด้วยคลิกเดียว', scanQRCode: 'สแกนคิวอาร์โค้ดด้านล่างด้วย DingTalk เพื่ออนุญาตและสร้างแอปโดยอัตโนมัติ', waitingForScan: 'กำลังรอสแกน', createSuccess: 'สร้างแอปสำเร็จแล้ว และกรอกข้อมูลรับรองให้อัตโนมัติ', createFailed: 'สร้างแอปไม่สำเร็จ', connecting: 'กำลังเชื่อมต่อบริการ DingTalk...', retry: 'ลองใหม่', robotCodeNote: 'ไม่สามารถดึงรหัส Robot ได้โดยอัตโนมัติ กรุณาไปที่หลังบ้านนักพัฒนา DingTalk > การตั้งค่า Robot เพื่อคัดลอกด้วยตนเอง ฟิลด์นี้จำเป็นสำหรับฟังก์ชันอย่างการรู้จำภาพและการอัปโหลดไฟล์', }, wecombot: { createBot: 'สร้างบอต WeCom ด้วยคลิกเดียว', scanQRCode: 'สแกนคิวอาร์โค้ดด้านล่างด้วย WeCom เพื่ออนุญาตและสร้างบอตโดยอัตโนมัติ', waitingForScan: 'กำลังรอสแกน', createSuccess: 'สร้างบอตสำเร็จแล้ว และกรอกข้อมูลรับรองให้อัตโนมัติ', createFailed: 'สร้างบอตไม่สำเร็จ', connecting: 'กำลังเชื่อมต่อบริการ WeCom...', retry: 'ลองใหม่', robotNameNote: 'ไม่สามารถดึงชื่อบอตได้โดยอัตโนมัติ กรุณากรอกด้วยตนเอง', }, pluginPages: { selectFromSidebar: 'เลือกหน้าปลั๊กอินจากแถบด้านข้าง', invalidPage: 'หน้าปลั๊กอินไม่ถูกต้อง', }, }; export default thTH;