Phase 1+2: Rename CrowdSight + fix Thai vocabulary

Phase 1: Rename MiroFish → CrowdSight across all files
- 39 files, 114+ occurrences replaced
- Frontend, backend, locales, config, README, docker-compose

Phase 2: Fix difficult Thai vocabulary
- เมล็ดพันธุ์แห่งความจริง → ข้อมูลตั้งต้น
- สกัดเอนทิตี → ดึงตัวละคร
- ฉีดความจำ → เพิ่มความจำ
- ออนโทโลยี → โครงสร้างข้อมูล
- เอนทิตี → ตัวละคร
- พลวัตกลุ่ม → พฤติกรรมกลุ่ม
- โลกคู่ขนาน → โลกจำลอง

Only string changes, no logic changes.
This commit is contained in:
Kunthawat Greethong
2026-06-26 10:27:48 +07:00
parent 0e263f0490
commit 596a75c229
39 changed files with 166 additions and 166 deletions

View File

@@ -26,8 +26,8 @@
"files": "ไฟล์"
},
"meta": {
"title": "MiroFish - พยากรณ์ทุกสิ่ง",
"description": "MiroFish - ระบบจำลองความคิดเห็นบนโซเชียลมีเดีย"
"title": "CrowdSight - พยากรณ์ทุกสิ่ง",
"description": "CrowdSight - ระบบจำลองความคิดเห็นบนโซเชียลมีเดีย"
},
"nav": {
"visitGithub": "เยี่ยมชมหน้า Github ของเรา"
@@ -37,8 +37,8 @@
"version": "/ v0.1-Preview",
"heroTitle1": "อัปโหลดรายงาน,",
"heroTitle2": "พยากรณ์อนาคต",
"heroDesc": "จากเอกสารเพียงชิ้นเดียว {brand} จะสกัดเมล็ดพันธุ์แห่งความจริงเพื่อสร้างโลกคู่ขนานโดยอัตโนมัติที่มี Agent ได้สูงสุดถึง {agentScale} ฉีดตัวแปรจากมุมมองเหนือกว่าเพื่อค้นหา {optimalSolution} ในพลวัตกลุ่มที่ซับซ้อน",
"heroDescBrand": "MiroFish",
"heroDesc": "จากเอกสารเพียงชิ้นเดียว {brand} จะสกัดข้อมูลตั้งต้นเพื่อสร้างโลกจำลองโดยอัตโนมัติที่มี Agent ได้สูงสุดถึง {agentScale} เพิ่มตัวแปรจากมุมมองเหนือกว่าเพื่อค้นหา {optimalSolution} ในพฤติกรรมกลุ่มที่ซับซ้อน",
"heroDescBrand": "CrowdSight",
"heroDescAgentScale": "ระดับล้าน Agent",
"heroDescOptimalSolution": "\"ค่าเหมาะสมเฉพาะที่\"",
"slogan": "ให้ Agent ซักซ้อมอนาคต ให้การตัดสินใจเป็นผู้ชนะ",
@@ -51,23 +51,23 @@
"metricHighAvailDesc": "Agent นับล้าน",
"workflowSequence": "ขั้นตอนการทำงาน",
"step01Title": "สร้างกราฟ",
"step01Desc": "สกัดเมล็ดพันธุ์ & ฉีดความจำ & สร้าง GraphRAG",
"step01Desc": "สกัดข้อมูลตั้งต้น & เพิ่มความจำ & สร้าง GraphRAG",
"step02Title": "ตั้งค่าสภาพแวดล้อม",
"step02Desc": "สกัดเอนทิตี & สร้างบุคลิกภาพ & ฉีดค่าตั้ง Agent",
"step02Desc": "ดึงตัวละคร & สร้างบุคลิกภาพ & ฉีดค่าตั้ง Agent",
"step03Title": "การจำลอง",
"step03Desc": "จำลองคู่ขนานสองแพลตฟอร์ม & วิเคราะห์ความต้องการอัตโนมัติ & ความจำเชิงเวลา",
"step04Title": "รายงาน",
"step04Desc": "Report Agent โต้ตอบกับสภาพแวดล้อมหลังการจำลองผ่านเครื่องมือครบครัน",
"step05Title": "การโต้ตอบ",
"step05Desc": "สนทนากับบุคคลที่จำลอง & พูดคุยกับ Report Agent",
"realitySeed": "01 / เมล็ดพันธุ์แห่งความจริง",
"realitySeed": "01 / ข้อมูลตั้งต้น",
"supportedFormats": "รูปแบบ: PDF, MD, TXT",
"dragToUpload": "ลากไฟล์เพื่ออัปโหลด",
"orBrowse": "หรือคลิกเพื่อเลือกไฟล์",
"inputParams": "พารามิเตอร์นำเข้า",
"simulationPrompt": ">_ 02 / คำสั่งจำลอง",
"promptPlaceholder": "// อธิบายความต้องการในการจำลองหรือพยากรณ์ของคุณเป็นภาษาธรรมชาติ",
"engineBadge": "Engine: MiroFish-V1.0",
"engineBadge": "Engine: CrowdSight-V1.0",
"startEngine": "เริ่ม Engine",
"initializing": "กำลังเริ่มต้น..."
},
@@ -84,15 +84,15 @@
]
},
"step1": {
"ontologyGeneration": "การสร้างออนโทโลยี",
"ontologyGeneration": "การสร้างโครงสร้างข้อมูล",
"ontologyCompleted": "สำเร็จ",
"ontologyGenerating": "กำลังสร้าง",
"ontologyPending": "รอดำเนินการ",
"ontologyDesc": "LLM วิเคราะห์เนื้อหาเอกสารและความต้องการในการจำลอง สกัดเมล็ดพันธุ์แห่งความจริง และสร้างโครงสร้างออนโทโลยีที่เหมาะสมโดยอัตโนมัติ",
"ontologyDesc": "LLM วิเคราะห์เนื้อหาเอกสารและความต้องการในการจำลอง สกัดข้อมูลตั้งต้น และสร้างโครงสร้างโครงสร้างข้อมูลที่เหมาะสมโดยอัตโนมัติ",
"analyzingDocs": "กำลังวิเคราะห์เอกสาร...",
"graphRagBuild": "สร้าง GraphRAG",
"graphRagDesc": "จากออนโทโลยีที่สร้างขึ้น เอกสารจะถูกแบ่งเป็นส่วนย่อยโดยอัตโนมัติและส่งไปยัง Zep เพื่อสร้างกราฟความรู้ สกัดเอนทิตีและความสัมพันธ์ สร้างความจำเชิงเวลาและบทสรุปชุมชน",
"entityNodes": "โหนดเอนทิตี",
"graphRagDesc": "จากโครงสร้างข้อมูลที่สร้างขึ้น เอกสารจะถูกแบ่งเป็นส่วนย่อยโดยอัตโนมัติและส่งไปยัง Zep เพื่อสร้างแผนภูมิความรู้ ดึงตัวละครและความสัมพันธ์ สร้างความจำเชิงเวลาและบทสรุปชุมชน",
"entityNodes": "โหนดตัวละคร",
"relationEdges": "เส้นเชื่อมความสัมพันธ์",
"schemaTypes": "ประเภท Schema",
"buildComplete": "สร้างเสร็จสมบูรณ์",
@@ -108,15 +108,15 @@
"simInstanceDesc": "สร้างอินสแตนซ์การจำลองใหม่และดึงเทมเพลตพารามิเตอร์โลก",
"asyncTaskDone": "งานแบบอะซิงโครนัสเสร็จสมบูรณ์",
"generateAgentPersona": "สร้างบุคลิกภาพ Agent",
"generateAgentPersonaDesc": "ผสานบริบทเพื่อสกัดเอนทิตีและความสัมพันธ์จากกราฟความรู้โดยอัตโนมัติ เริ่มต้นบุคคลที่จำลอง และกำหนดพฤติกรรมและความจำที่เป็นเอกลักษณ์จากเมล็ดพันธุ์แห่งความจริง",
"generateAgentPersonaDesc": "ผสานบริบทเพื่อดึงตัวละครและความสัมพันธ์จากแผนภูมิความรู้โดยอัตโนมัติ เริ่มต้นบุคคลที่จำลอง และกำหนดพฤติกรรมและความจำที่เป็นเอกลักษณ์จากข้อมูลตั้งต้น",
"currentAgentCount": "Agent ปัจจุบัน",
"expectedAgentTotal": "Agent ทั้งหมดที่คาดหวัง",
"relatedTopicsCount": "หัวข้อที่เกี่ยวข้องกับเมล็ดพันธุ์แห่งความจริง",
"relatedTopicsCount": "หัวข้อที่เกี่ยวข้องกับข้อมูลตั้งต้น",
"generatedAgentPersonas": "บุคลิกภาพ Agent ที่สร้างแล้ว",
"unknownProfession": "ไม่ทราบอาชีพ",
"noBio": "ไม่มีประวัติย่อ",
"dualPlatformConfig": "สร้างค่าตั้งสองแพลตฟอร์ม",
"dualPlatformConfigDesc": "LLM ตั้งค่าการไหลของเวลาโลก ขั้นตอนการแนะนำ ชั่วโมงที่ใช้งานของแต่ละบุคคล ความถี่ในการโพสต์ ตัวกระตุ้นเหตุการณ์ และอื่นๆ อย่างชาญฉลาดตามความต้องการและเมล็ดพันธุ์แห่งความจริง",
"dualPlatformConfigDesc": "LLM ตั้งค่าการไหลของเวลาโลก ขั้นตอนการแนะนำ ชั่วโมงที่ใช้งานของแต่ละบุคคล ความถี่ในการโพสต์ ตัวกระตุ้นเหตุการณ์ และอื่นๆ อย่างชาญฉลาดตามความต้องการและข้อมูลตั้งต้น",
"simulationDuration": "ระยะเวลาจำลอง",
"roundDuration": "ระยะเวลาต่อรอบ",
"totalRounds": "รอบทั้งหมด",
@@ -151,7 +151,7 @@
"setupComplete": "ตั้งค่าเสร็จสมบูรณ์",
"setupCompleteDesc": "สภาพแวดล้อมจำลองพร้อมแล้ว คุณสามารถเริ่มการจำลองได้",
"roundsConfig": "กำหนดค่ารอบการจำลอง",
"roundsConfigDesc": "MiroFish วางแผนอัตโนมัติเพื่อจำลอง {hours} ชั่วโมงโลกจริง แต่ละรอบแทนเวลาที่ผ่านไป {minutesPerRound} นาที",
"roundsConfigDesc": "CrowdSight วางแผนอัตโนมัติเพื่อจำลอง {hours} ชั่วโมงโลกจริง แต่ละรอบแทนเวลาที่ผ่านไป {minutesPerRound} นาที",
"customToggle": "กำหนดเอง",
"roundsUnit": "รอบ",
"estimatedDuration": "สำหรับ 100 Agent: ประมาณ ~{minutes} นาที",
@@ -165,14 +165,14 @@
"profileModalCountry": "ประเทศ/ภูมิภาค",
"profileModalMbti": "MBTI ที่ปรากฏ",
"profileModalBio": "ประวัติบุคลิกภาพ",
"profileModalTopics": "หัวข้อที่เกี่ยวข้องกับเมล็ดพันธุ์แห่งความจริง",
"profileModalTopics": "หัวข้อที่เกี่ยวข้องกับข้อมูลตั้งต้น",
"profileModalPersona": "ภูมิหลังบุคลิกภาพโดยละเอียด",
"personaDimExperience": "ประสบการณ์เหตุการณ์เต็มรูปแบบ",
"personaDimExperienceDesc": "เส้นทางพฤติกรรมที่สมบูรณ์ในเหตุการณ์นี้",
"personaDimBehavior": "โปรไฟล์พฤติกรรม",
"personaDimBehaviorDesc": "สรุปประสบการณ์และความชอบด้านพฤติกรรม",
"personaDimMemory": "รอยประทับความจำที่เป็นเอกลักษณ์",
"personaDimMemoryDesc": "ความจำที่เกิดจากเมล็ดพันธุ์แห่งความจริง",
"personaDimMemoryDesc": "ความจำที่เกิดจากข้อมูลตั้งต้น",
"personaDimSocial": "เครือข่ายสังคม",
"personaDimSocialDesc": "การเชื่อมต่อระหว่างบุคคลและกราฟการโต้ตอบ",
"genderMale": "ชาย",
@@ -222,28 +222,28 @@
"expandAllEntities": "แสดงทั้งหมด {count} ▼",
"scenarioLabel": "สถานการณ์: ",
"tabKeyFacts": "ข้อเท็จจริงสำคัญ ({count})",
"tabCoreEntities": "เอนทิตีหลัก ({count})",
"tabCoreEntities": "ตัวละครหลัก ({count})",
"tabRelationChains": "สายโซ่ความสัมพันธ์ ({count})",
"tabSubQueries": "คำถามย่อย ({count})",
"panelKeyFacts": "ข้อเท็จจริงสำคัญล่าสุดจากความจำเชิงเวลา",
"totalCount": "ทั้งหมด {count}",
"totalEntityCount": "ทั้งหมด {count}",
"panelCoreEntities": "เอนทิตีหลัก",
"panelCoreEntities": "ตัวละครหลัก",
"factCount": "{count} ข้อเท็จจริง",
"panelRelationChains": "สายโซ่ความสัมพันธ์",
"panelSubQueries": "คำถามย่อยจากการวิเคราะห์แบบ Drift",
"emptyKeyFacts": "ไม่มีข้อเท็จจริงสำคัญ",
"emptyCoreEntities": "ไม่มีเอนทิตีหลัก",
"emptyCoreEntities": "ไม่มีตัวละครหลัก",
"emptyRelationChains": "ไม่มีสายโซ่ความสัมพันธ์",
"tabActiveFacts": "ข้อเท็จจริงที่ใช้งาน ({count})",
"tabHistoricalFacts": "ข้อเท็จจริงในอดีต ({count})",
"tabEntities": "เอนทิตี ({count})",
"tabEntities": "ตัวละคร ({count})",
"panelActiveFacts": "ข้อเท็จจริงที่ใช้งาน",
"emptyActiveFacts": "ไม่มีข้อเท็จจริงที่ใช้งาน",
"panelHistoricalFacts": "ข้อเท็จจริงในอดีต",
"emptyHistoricalFacts": "ไม่มีข้อเท็จจริงในอดีต",
"panelEntities": "เอนทิตี",
"emptyEntities": "ไม่มีเอนทิตี",
"panelEntities": "ตัวละคร",
"emptyEntities": "ไม่มีตัวละคร",
"searchLabel": "ค้นหา: ",
"tabFacts": "ข้อเท็จจริง ({count})",
"tabEdges": "เส้นเชื่อม ({count})",
@@ -263,9 +263,9 @@
"selectChatTarget": "เลือกเป้าหมายสนทนา",
"sendSurvey": "ส่งแบบสำรวจไปยังโลกจำลอง",
"reportAgentChat": "Report Agent - สนทนา",
"reportAgentDesc": "เวอร์ชันสนทนาของ Agent สร้างรายงาน พร้อมเข้าถึงเครื่องมือมืออาชีพ 4 ชิ้นและความจำครบถ้วนของ MiroFish",
"reportAgentDesc": "เวอร์ชันสนทนาของ Agent สร้างรายงาน พร้อมเข้าถึงเครื่องมือมืออาชีพ 4 ชิ้นและความจำครบถ้วนของ CrowdSight",
"toolInsightForge": "InsightForge การวิเคราะห์เชิงลึก",
"toolInsightForgeDesc": "ปรับข้อมูลเมล็ดพันธุ์แห่งความจริงให้ตรงกับสถานะการจำลอง ผสาน Global/Local Memory สำหรับการวิเคราะห์เชิงลึกข้ามเวลา",
"toolInsightForgeDesc": "ปรับข้อมูลข้อมูลตั้งต้นให้ตรงกับสถานะการจำลอง ผสาน Global/Local Memory สำหรับการวิเคราะห์เชิงลึกข้ามเวลา",
"toolPanoramaSearch": "PanoramaSearch การติดตามครบถ้วน",
"toolPanoramaSearchDesc": "อัลกอริทึม BFS บนกราฟที่สร้างเส้นทางการแพร่กระจายของเหตุการณ์ขึ้นใหม่ จับภาพโทโพโลยีเต็มรูปแบบของการไหลข้อมูล",
"toolQuickSearch": "QuickSearch การค้นหาอย่างรวดเร็ว",
@@ -300,7 +300,7 @@
"nodeDetails": "รายละเอียดโหนด",
"relationship": "ความสัมพันธ์",
"graphDataLoading": "กำลังโหลดข้อมูลกราฟ...",
"waitingOntology": "รอการสร้างออนโทโลยี...",
"waitingOntology": "รอการสร้างโครงสร้างข้อมูล...",
"toggleMaximize": "ขยาย/คืนค่า",
"closeHint": "ปิดคำแนะนำ"
},
@@ -336,16 +336,16 @@
"requireProjectId": "กรุณาระบุ project_id",
"configError": "ข้อผิดพลาดในการกำหนดค่า: {details}",
"zepApiKeyMissing": "ยังไม่ได้ตั้งค่า ZEP_API_KEY",
"ontologyNotGenerated": "ยังไม่ได้สร้างออนโทโลยี กรุณาเรียก /ontology/generate ก่อน",
"ontologyNotGenerated": "ยังไม่ได้สร้างโครงสร้างข้อมูล กรุณาเรียก /ontology/generate ก่อน",
"graphBuilding": "กำลังสร้างกราฟ อย่าส่งซ้ำ หากต้องการสร้างใหม่ เพิ่ม force: true",
"textNotFound": "ไม่พบเนื้อหาข้อความที่สกัดแล้ว",
"ontologyNotFound": "ไม่พบคำจำกัดความออนโทโลยี",
"ontologyNotFound": "ไม่พบคำจำกัดความโครงสร้างข้อมูล",
"graphBuildStarted": "เริ่มงานสร้างกราฟแล้ว สอบถามความคืบหน้าผ่าน /task/{taskId}",
"graphBuildComplete": "สร้างกราฟเสร็จสมบูรณ์",
"buildFailed": "สร้างล้มเหลว: {error}",
"taskNotFound": "ไม่พบงาน: {id}",
"graphDeleted": "ลบกราฟแล้ว: {id}",
"entityNotFound": "ไม่พบเอนทิตี: {id}",
"entityNotFound": "ไม่พบตัวละคร: {id}",
"graphNotBuilt": "ยังไม่ได้สร้างกราฟ กรุณาเรียก /api/graph/build ก่อน",
"requireSimulationId": "กรุณาระบุ simulation_id",
"simulationNotFound": "ไม่พบการจำลอง: {id}",
@@ -360,7 +360,7 @@
"unknownScript": "ไม่ทราบสคริปต์: {name} ที่มี: {allowed}",
"scriptFileNotFound": "ไม่พบไฟล์สคริปต์: {name}",
"requireGraphId": "กรุณาระบุ graph_id",
"noMatchingEntities": "ไม่พบเอนทิตีที่ตรงกัน",
"noMatchingEntities": "ไม่พบตัวละครที่ตรงกัน",
"maxRoundsPositive": "max_rounds ต้องเป็นจำนวนเต็มบวก",
"maxRoundsInvalid": "max_rounds ต้องเป็นจำนวนเต็มที่ถูกต้อง",
"invalidPlatform": "ประเภทแพลตฟอร์มไม่ถูกต้อง: {platform} ตัวเลือก: twitter/reddit/parallel",
@@ -401,7 +401,7 @@
"initGraphService": "กำลังเริ่มต้นบริการสร้างกราฟ...",
"textChunking": "กำลังแบ่งข้อความเป็นส่วนย่อย...",
"creatingZepGraph": "กำลังสร้างกราฟ Zep...",
"settingOntology": "กำลังตั้งค่าคำจำกัดความออนโทโลยี...",
"settingOntology": "กำลังตั้งค่าคำจำกัดความโครงสร้างข้อมูล...",
"addingChunks": "กำลังเพิ่ม {count} ส่วนข้อความ...",
"waitingZepProcess": "รอ Zep ประมวลผลข้อมูล...",
"fetchingGraphData": "กำลังดึงข้อมูลกราฟ...",
@@ -409,7 +409,7 @@
"buildFailed": "สร้างล้มเหลว: {error}",
"startBuildingGraph": "กำลังเริ่มสร้างกราฟ...",
"graphCreated": "สร้างกราฟแล้ว: {graphId}",
"ontologySet": "ตั้งค่าออนโทโลยีแล้ว",
"ontologySet": "ตั้งค่าโครงสร้างข้อมูลแล้ว",
"textSplit": "แบ่งข้อความเป็น {count} ส่วน",
"fetchingGraphInfo": "กำลังดึงข้อมูลกราฟ...",
"sendingBatch": "กำลังส่งชุด {current}/{total} ({chunks} ส่วน)...",
@@ -424,7 +424,7 @@
"startPreparingEnv": "กำลังเตรียมสภาพแวดล้อมจำลอง...",
"connectingZepGraph": "กำลังเชื่อมต่อกราฟ Zep...",
"readingNodeData": "กำลังอ่านข้อมูลโหนด...",
"readingComplete": "เสร็จ พบ {count} เอนทิตี",
"readingComplete": "เสร็จ พบ {count} ตัวละคร",
"startGenerating": "กำลังเริ่มสร้าง...",
"analyzingRequirements": "กำลังวิเคราะห์ความต้องการจำลอง...",
"generatingOutline": "กำลังสร้างเค้าโครงรายงาน...",
@@ -454,7 +454,7 @@
"agentConfigResult": "ค่าตั้ง Agent: สร้าง {count} รายการ",
"postAssignResult": "กำหนดโพสต์: กำหนด {count} โพสต์",
"profileGenerated": "[สร้างแล้ว] {name} ({type})",
"readingGraphEntities": "กำลังอ่านเอนทิตีกราฟ",
"readingGraphEntities": "กำลังอ่านตัวละครกราฟ",
"generatingProfiles": "กำลังสร้างโปรไฟล์ Agent",
"generatingSimConfig": "กำลังสร้างค่าตั้งจำลอง",
"preparingScripts": "กำลังเตรียมสคริปต์"
@@ -499,8 +499,8 @@
"detectedExistingPrep": "ตรวจพบการเตรียมการที่มีอยู่ ใช้โดยตรง",
"prepareTaskStarted": "เริ่มงานเตรียมการแล้ว",
"prepareTaskId": " └─ รหัสงาน: {taskId}",
"zepEntitiesFound": "พบ {count} เอนทิตีจากกราฟ Zep",
"entityTypes": " └─ ประเภทเอนทิตี: {types}",
"zepEntitiesFound": "พบ {count} ตัวละครจากกราฟ Zep",
"entityTypes": " └─ ประเภทตัวละคร: {types}",
"startPollingProgress": "กำลังตรวจสอบความคืบหน้าการเตรียมการ...",
"prepareFailed": "เตรียมการล้มเหลว: {error}",
"prepareException": "เกิดข้อผิดพลาดในการเตรียมการ: {error}",
@@ -637,14 +637,14 @@
"fetchingNodeEdges": "กำลังดึงเส้นเชื่อมสำหรับโหนด {uuid}...",
"foundNodeEdges": "พบ {count} เส้นเชื่อมที่เกี่ยวข้องกับโหนด",
"fetchNodeEdgesFailed": "ดึงเส้นเชื่อมโหนดล้มเหลว: {error}",
"fetchingEntitiesByType": "กำลังดึงเอนทิตีประเภท {type}...",
"foundEntitiesByType": "พบ {count} เอนทิตีประเภท {type}",
"fetchingEntitySummary": "กำลังดึงสรุปความสัมพันธ์สำหรับเอนทิตี {name}...",
"fetchingEntitiesByType": "กำลังดึงตัวละครประเภท {type}...",
"foundEntitiesByType": "พบ {count} ตัวละครประเภท {type}",
"fetchingEntitySummary": "กำลังดึงสรุปความสัมพันธ์สำหรับตัวละคร {name}...",
"fetchingGraphStats": "กำลังดึงสถิติสำหรับกราฟ {graphId}...",
"fetchingSimContext": "กำลังดึงบริบทการจำลอง: {requirement}...",
"insightForgeStart": "InsightForge การค้นหาเชิงลึก: {query}...",
"generatedSubQueries": "สร้าง {count} คำถามย่อย",
"insightForgeComplete": "InsightForge เสร็จ: {facts} ข้อเท็จจริง, {entities} เอนทิตี, {relationships} ความสัมพันธ์",
"insightForgeComplete": "InsightForge เสร็จ: {facts} ข้อเท็จจริง, {entities} ตัวละคร, {relationships} ความสัมพันธ์",
"generateSubQueriesFailed": "สร้างคำถามย่อยล้มเหลว: {error}, ใช้ค่าเริ่มต้น",
"panoramaSearchStart": "PanoramaSearch การค้นหากว้าง: {query}...",
"panoramaSearchComplete": "PanoramaSearch เสร็จ: {active} ใช้งาน, {historical} อดีต",