SearXNG, เมตาเสิร์ชเอนจินอินเทอร์เน็ตฟรี
(github.com/searxng)- SearXNG เป็น เมตาเสิร์ชเอนจิน ที่รองรับแหล่งค้นหาหลายแห่ง และไม่ติดตามหรือทำโปรไฟล์ผู้ใช้
- การติดตั้งให้ดำเนินการผ่าน Installation guide อย่างเป็นทางการ และแนะนำให้อ้างอิง Configuration guide สำหรับการปรับแต่งรายละเอียด
- วิธีใช้งานเพิ่มเติมเกี่ยวกับการดำเนินงานและการดูแลระบบสามารถดูได้ในส่วน admin ของเอกสาร SearXNG
- มีห้อง Matrix
#searxng:matrix.orgให้ใช้เป็นช่องทางเชื่อมต่อกับชุมชน - โครงการนี้ใช้สัญญาอนุญาต GNU Affero General Public License คือ AGPL-3.0
บทบาทของ SearXNG
- SearXNG คือ metasearch engine
- ผู้ใช้จะไม่ถูก ติดตาม หรือ ทำโปรไฟล์ บน SearXNG
การติดตั้งและการตั้งค่า
- แนะนำให้อ้างอิง Installation guide สำหรับวิธีติดตั้ง
- สามารถดูการตั้งค่าและการปรับแต่งอย่างละเอียดได้ผ่าน Configuration guide
- วิธีดำเนินงานเพิ่มเติมถูกรวบรวมไว้ใน เอกสาร admin
ชุมชนและการมีส่วนร่วม
- สามารถสอบถามหรือเชื่อมต่อกับชุมชนได้ผ่านช่องทาง Matrix
#searxng:matrix.org - แนะนำให้อ้างอิง CONTRIBUTING สำหรับรายละเอียดเกี่ยวกับการมีส่วนร่วม
สัญญาอนุญาต
- โครงการนี้เผยแพร่ภายใต้ GNU Affero General Public License
- สามารถดูรายละเอียดสัญญาอนุญาตได้ที่ LICENSE
2 ความคิดเห็น
ความคิดเห็นจาก Hacker News
ถ้าต้องการค้นหาเฉพาะเนื้อหาของทุกหน้าจากประวัติการเข้าชมในเบราว์เซอร์ หรือเฉพาะบางหน้าที่บุ๊กมาร์กไว้ ลองดู DownloadNet ได้ ชื่อเดิม และอาจเป็นชื่อที่จะกลับมาใช้อีก คือ "DiskerNet"
มันผูกกับเบราว์เซอร์เพื่อมอบ ประสบการณ์การท่องเว็บที่ขยายขึ้น และ UI ก็เรียบง่าย ให้ความรู้สึกเหมือน Google ปี 1997 แบบไม่มี CSS การค้นหายังไม่ได้ซับซ้อนมากนัก แต่ในอนาคตทำได้ และตอนนี้ก็ใช้งานได้ค่อนข้างดีแล้ว
https://github.com/dosyago/DownloadNet
นอกจากนี้ยังทำให้ดูคอนเทนต์ทั้งหมดที่เคยเข้าชมหรือที่บุ๊กมาร์กไว้ได้แม้แบบ ออฟไลน์ เหมาะสำหรับการท่องเว็บตามปกติแล้วเก็บไว้ใช้ในสภาพแวดล้อมที่ต้องประหยัดแบนด์วิดท์ดาวเทียม เช่น แท่นขุดเจาะน้ำมัน เรือ หรือการขนส่งสินค้าระยะไกล
เรื่องที่เกี่ยวกับการท่องอินเทอร์เน็ตของผม ผมอยากให้ไม่มีอะไรเก็บไว้เลยนอกจากสมองมนุษย์ของผมเอง แน่นอนว่านี่เป็นมุมมองของผม
แต่ก็ไม่เข้าใจว่าการโปรโมตแบบโจ่งแจ้งนี้เหมาะกับที่นี่ได้อย่างไร ทั้งที่ไม่ได้แค่หลุดประเด็น แต่ยังเป็นเครื่องมือที่ตรงข้ามกับ ความเป็นส่วนตัวส่วนบุคคลอย่างสมบูรณ์ อีกด้วย
ทำให้นึกถึงสมัยก่อน ก่อน Google เราใช้เครื่องมือ meta search เพื่อเพิ่มโอกาสหาเจอคำตอบดี ๆ ท่ามกลาง ผลการค้นหาสแปม จากที่อย่าง AltaVista, HotBot, Lycos
และยังรวมผลการค้นหา FTP ได้ด้วย ซึ่งมีประโยชน์ในยุคที่ FTP สาธารณะแบบ anonymous ยังพบได้ทั่วไป
อันนี้ก็น่าลอง แม้จะไม่ใช่ Kagi แต่ผลการค้นหาค่อนข้างดี และ โฮสต์เองด้วย Docker ได้
https://felladrin-minisearch.hf.space/
ดีเลย ถ้ามีวิธี บล็อก ไม่ให้โดเมนบางโดเมนปรากฏในผลการค้นหาเลยก็คงดี
แก้ไข: ดูเหมือนจะมี issue ที่เปิดไว้อยู่แล้ว
https://github.com/searxng/searxng/issues/2351
เจตนาของ SearXNG คือทำงานแบบ ไม่บันทึกสถานะ ไม่มีเซสชันฝั่งเซิร์ฟเวอร์ และทำงานได้แม้ไม่มี JavaScript
อย่างไรก็ตาม แนวทางนี้ทำให้ฟีเจอร์บางอย่างถูกจำกัดเพราะข้อจำกัดขนาดคุกกี้ ส่วนพื้นที่เก็บข้อมูลแบบอื่นในเบราว์เซอร์ต้องใช้ JavaScript
ตอนนี้ยังทำได้ถ้าใส่เงื่อนไขยกเว้นเองทุกครั้งที่ค้นหา แต่รายการอาจยาวขึ้นเรื่อย ๆ และคงพูดได้ยากว่าประสบการณ์ผู้ใช้ดี
Kagi มีฟีเจอร์นี้ในตัวและใช้ง่าย
ส่วนส่วนขยายเบราว์เซอร์ uBlacklist ก็ใช้ได้เช่นกัน แต่กรณีของผมปัญหาคือทุกอย่างช้าลง
ไม่แน่ใจนัก แต่ดูเหมือนเป็นวิธีกรองผลลัพธ์จริงหลังการค้นหาเสร็จแล้ว ส่วนสองวิธีข้างต้นจำกัดไม่ให้รวมอยู่ในผลตั้งแต่แรก
ผมใช้บน Firefox เพื่อกรองขยะจาก Pinterest ออกจากผลการค้นหา และมีเวอร์ชันสำหรับ Chrome กับ Safari ด้วย
https://github.com/iorate/ublacklist
ถ้ารันสิ่งนี้บนอินเทอร์เน็ตบ้าน อาจเสี่ยงที่จะใช้เสิร์ชเอนจินไม่ได้
ถ้าใช้ส่วนตัว ก็รันบนคอมพิวเตอร์ของตัวเองโดยตรง หรือเข้าผ่าน VPN ก็ได้ query ที่ส่งไปยังเสิร์ชเอนจินต้นทางสามารถส่งผ่านพร็อกซีหรือ VPN ได้ตามต้องการ
บางตัวทำงานได้ดีบน Tor ด้วย และบางตัวส่งผ่าน tunnel เชิงพาณิชย์หรือที่ทำเองได้
ถ้ารันในเครื่องและใช้คนเดียว ก็จะไม่ถูกบล็อก สำหรับเสิร์ชเอนจินนั้น จำนวน request จะดูแทบไม่ต่างจากตอนใช้โดยตรง
ต่อให้มีคนในบ้านใช้อีกไม่กี่คนก็น่าจะยังโอเค
ผมเคยรัน searx รุ่นเก่าในเครื่องอยู่ประมาณ 1–2 ปี ก็ไม่มีปัญหาเลย
มีอินสแตนซ์ searx ที่โฮสต์แบบสาธารณะอยู่มากมาย มีรายการอินสแตนซ์สาธารณะบนออนไลน์ด้วย และถ้ากำลังหาเครื่องมือที่ส่งการค้นหาจากแถบที่อยู่ของเบราว์เซอร์ไปยังอินสแตนซ์แบบสุ่มทุกครั้ง ก็ใช้ neocities ได้: https://searx.neocities.org/changelog
ใช้อยู่ตลอด ข้อเสียคือบางครั้งไปเจออินสแตนซ์ที่ไม่ให้ผลลัพธ์เลยหรือแย่มาก ช่วงหลังเกิดน้อยลงแล้ว
SearXNG ยอดเยี่ยม แต่มีข้อควรระวังบางอย่าง
ถ้ารันร่วมบนเครื่องที่ทำ NAT ให้หลายอุปกรณ์ จะช่วยหลีกเลี่ยงการถูก เสิร์ชเอนจินต้นทางบล็อก อย่าง DuckDuckGo ได้ ถ้ารันบน IP ที่ใช้งานเพื่ออย่างอื่นด้วยไม่ได้ ก็คงดีถ้ามีฟีเจอร์ส่งการเข้าถึงเสิร์ชเอนจินต้นทางบางตัวไปยังพร็อกซีแยกต่างหาก ปัญหานี้พบได้บ่อยจริง ๆ
อยากได้โหมด ค้นหาแบบตรงตามตัวอักษร 100% ที่ทุกคำที่ผมพิมพ์ต้องอยู่ในผลลัพธ์ตรงตามนั้นเป๊ะ อาจเทียบได้กับการใส่ "+" หน้าทุกคำและใส่เครื่องหมายคำพูดครอบแต่ละคำก็ได้ น่ารำคาญที่คำถูกเปลี่ยนไปเรื่อย ๆ ทั้งที่ผมไม่ได้ต้องการอย่างชัดเจน เพียงเพราะมีผลลัพธ์น้อย
อย่างที่มีคนอื่นพูดไว้ ผมอยากยกเว้นโดเมนบางโดเมนอย่างชัดเจน เข้าใจว่า SearXNG ต้องการไม่บันทึกสถานะ แต่ก็อาจตั้งผ่าน URL แยก หรือกำหนดให้ใช้กับทุกการค้นหาได้ เช่น เวลาค้นหาคู่มือ PDF บางอย่าง ผมไม่อยากเห็นเว็บอย่าง "manualslib.com" เลย
ถ้าเรื่องพวกนี้แก้ได้ก็คงดี แต่นอกเหนือจากนั้น การรัน SearXNG แล้วแนะนำให้คนใช้แทน Google ก็ได้ผลค่อนข้างดี
ทุกคนขาย Searx กัน แต่ส่วนตัวผมชอบ presearch.com
ไม่มีความเกี่ยวข้อง ไม่มีผลประโยชน์ทางการเงิน และไม่ได้สนใจโมเดลธุรกิจที่อิงคริปโตของพวกเขา
จริง ๆ แล้ว ผมคิดว่าการที่ผลการค้นหาไม่ได้ถูกกรองแบบ Google หรือ Bing นั้นไม่ใช่เพราะจุดยืนปกป้องเสรีภาพในการแสดงออกอะไร แต่เป็นเพราะขาดเงินทุน หรือมีลำดับความสำคัญอื่นที่สำคัญต่อความสำเร็จมากกว่า คล้ายกับช่วงแรกของอินเทอร์เน็ตที่ระดับความต้องการของบริษัทมุ่งไปที่ทำให้มันใช้งานได้ก่อน มากกว่าจะโชว์แต่ความรู้สึกดี ๆ เพื่อ PR หรือคำพูดที่ถูกต้อง
อย่างไรก็ตาม เวลาหาเรื่องที่คิดว่า Google น่าจะกรองหนัก ๆ หรือเรื่องลึกลับซับซ้อน ผมจะดู presearch เพื่อให้ได้ มุมมองที่สอง ถ้า archive.org ทำอะไรคล้าย ๆ กันได้ก็คงดี archive.org มีข้อมูลมหาศาล แต่การทำดัชนีและความสามารถในการค้นหายังไม่ดี
เป็นเครื่องมือที่ผมชอบที่สุดในการเอาผลลัพธ์ที่แย่ของเสิร์ชเอนจินกระแสหลักแต่ละรายมาเฉลี่ยให้กลายเป็น ผลลัพธ์ที่พอใช้ได้
ตลอดปีที่ผ่านมา ผมตั้งให้มันเป็นค่าเริ่มต้นบนทุกอุปกรณ์ และพอใจมาก เคยโดนบล็อกแค่สองครั้ง แต่แค่อัปเดตก็กลับมาใช้งานได้ดีเหมือนเดิม
ความคิดเห็นจาก Hacker News
เป็นผู้สร้างดั้งเดิมของ Searx แต่ไม่ได้เข้าร่วมพัฒนาต่อแล้ว เพราะ ข้อจำกัดของแนวคิด metasearch โปรเจกต์ค้นหาใหม่คือ https://github.com/asciimoo/hister (https://hister.org/)
Hister เป็น indexer แบบเต็มรูปแบบ สำหรับเว็บไซต์และไฟล์โลคัล และจะบันทึกหน้าเว็บที่เข้าชมซึ่งเบราว์เซอร์เรนเดอร์แล้วโดยอัตโนมัติ
เนื่องจากบันทึกเนื้อหาทั้งหน้า จึงสามารถพรีวิวผลลัพธ์แบบออฟไลน์และส่งมอบเนื้อหาทั้งหน้าผ่าน MCP ได้
ดูตัวอย่างการใช้ MCP ได้ที่นี่: https://hister.org/posts/give-your-ai-assistant-a-private-me...
เลยสรุปได้ว่าคอนฟิกที่เหมาะกับฉันคือ คลังเนื้อหาแบบ self-hosted ที่ดึงและบันทึกเนื้อหาหน้าเว็บกับเมทาดาทาผ่านเสิร์ชเอนจินและส่วนขยายเบราว์เซอร์ และถ้าเป็นไปได้ก็อยากได้การแชร์คอนเทนต์แบบ federated รวมถึงการนำเข้าคอนเทนต์ Creative Commons อย่าง Wikipedia กับ Gutenberg ด้วย
Hister ดูเกือบตรงกับสิ่งที่ต้องการพอดี และอยากลอง audit โค้ดกับ deploy ในอีกไม่กี่สัปดาห์ข้างหน้า
ดาวน์โหลดเฉพาะชื่อเรื่อง คำอธิบาย thumbnail และ ฟิลด์ Open Graph ทั่วไป และมองว่า index ค่อนข้างเบา หน้าเว็บที่ crawl มี 2 ล้านหน้า
https://github.com/rumca-js/Internet-Places-Database
รองรับแท็กและฟีเจอร์โหวต
ช่วงหลังยังออกแอป F-Droid ตัวแรกด้วย
https://github.com/rumca-js/OfflineWebSearch
https://f-droid.org/en/packages/io.github.rumcajs.offlineweb...
ผมเก็บลิงก์จิปาถะเกี่ยวกับงานมาหลายปีและใช้ทุกวัน เอาไว้ตอบคำถามสุ่ม ๆ จากเพื่อนหรือเพื่อนร่วมงานราวกับหยิบกระต่ายออกจากหมวก เช่น ถ้ามีคนถามไอเดียพาเลตสีสำหรับกราฟข้อมูล ก็ส่งงานวิจัยทางวิทยาศาสตร์ที่เกี่ยวข้องให้ได้ทันที หรืออัลกอริทึมที่ไม่ค่อยเป็นที่รู้จักก็เช่นกัน
เวลาผ่านไป คอลเลกชันใหญ่ขึ้นมากจนการหาสิ่งที่เหมาะสมกลายเป็นเรื่องยุ่งยากมาก เลยสงสัยว่าโปรเจกต์นี้จะเข้ากับปัญหาของผมหรือไม่
นี่ดูเหมือน เครื่องมือหลักสำหรับให้การค้นหาแก่โมเดลโลคัล
อยากรู้ว่าคนอื่น ๆ จัดชุดเครื่องมือแบบไหนเพื่อให้ฟังก์ชันนี้
หลังจากมีโมเดล Gemma แบบ quantized ขนาด 24 พันล้านพารามิเตอร์ออกมา tool calling บน 4070 Ti Super ก็ทำงานได้ดี และด้วยการเรียกใช้เครื่องมือที่สำเร็จ สภาพแวดล้อมโลคัลก็เริ่มใช้งานได้จริงในที่สุด
ขอเสริมว่านี่ไม่ได้พูดถึงเฉพาะงานเขียนโค้ด แต่เป็นบริบททั่วไป
curlกับjqจัดการได้อยู่ด้านล่างสุดของหน้านี้: https://docs.searxng.org/admin/settings/settings_search.html
llama-serverไม่ได้ เป็นต้นOpen WebUI มีการเชื่อมต่อกับ SearX และผู้ให้บริการอื่น ๆ แต่ผลลัพธ์ที่ผมได้ยังไม่น่าประทับใจนัก
ใช้ SearXNG เป็นเครื่องมือค้นหาอินเทอร์เน็ตหลักมานานกว่า 5 ปีแล้ว และมีทางเลือกอื่นอย่าง แบ็กเอนด์ YaCy ไว้ด้วย ด้วยชุดนี้ยังใช้ทำการค้นหาเอกสารภายในหรือแอปพลิเคชัน RAG ได้ด้วย และ SearXNG ก็รองรับผลลัพธ์แบบ JSON
อย่างไรก็ตาม มีข้อเสียที่ต้องยอมรับเพื่อความเป็นส่วนตัว คือช้ากว่าและคุณภาพผลลัพธ์ด้อยกว่าการค้นหาอื่น ๆ แต่สำหรับคำค้นส่วนใหญ่ก็เร็วพอและดีพอ
บางครั้งถูกบล็อกจากบริการค้นหาอย่าง DuckDuckGo, Brave จนต้องแก้ CAPTCHA และถ้าใช้ API key ก็หลีกเลี่ยงเรื่องนี้ได้
ถ้าใช้แบ็กเอนด์ของตัวเอง ก็สามารถจัดลำดับความสำคัญในผลลัพธ์ได้ เช่น หากครอว์ลเว็บขนาดเล็กหรือเว็บไซต์ที่สำคัญกับตัวเองไว้ เว็บไซต์เหล่านั้นก็จะขึ้นมาอยู่ด้านบนของผลการค้นหา
อยากรู้ว่าคุณรัน อินสแตนซ์ YaCy เองแบบ “เร็วมาก” ได้จริงหรือมีการตั้งค่าเฉพาะอะไรหรือเปล่า
จากประสบการณ์ของผม YaCy จะค่อย ๆ สตรีมผลลัพธ์เป็นเวลาประมาณ 30 วินาที เลยไม่ค่อยเหมาะเป็นแบ็กเอนด์ของ SearX
ผมยังให้บริการไฟล์ ZIM ของ Wikipedia, Wiktionary, Gutenberg, ArchWiki ฯลฯ ผ่าน
kiwix-serveในเครื่องด้วย แต่เครื่องมือค้นหาของ Kiwix [0] ก็คืนผลลัพธ์มากเกินไปจนทำให้หน้าผลลัพธ์ของ SearX ปนเปื้อน จึงไม่ค่อยเหมาะเป็นแบ็กเอนด์เช่นกันยังไม่ได้ลองเชื่อม SearX กับอินสแตนซ์ Recoll ในเครื่อง [1] Recoll ไม่รองรับการทำดัชนีไฟล์ ZIM แต่อาจมีประโยชน์กับเอกสาร HTML ที่เก็บถาวรแบบอื่น
การค้นหาเป็นสิ่งที่ทำให้ดีได้ยาก ถ้ามีชุดการตั้งค่าที่ใช้งานได้ดีจริง ๆ ก็อยากรู้เพิ่มเติม
[0] https://kiwix-tools.readthedocs.io/en/latest/kiwix-serve.htm...
[1] https://docs.searxng.org/dev/engines/online/recoll.html
ใช้ SearXNG มาหลายปีแล้ว เพราะการเซ็นเซอร์เครือข่ายที่ไร้มนุษยธรรมของ GFW และ การตรวจจับพร็อกซี ของเสิร์ชเอนจิน จึงไม่ได้รันอินสแตนซ์เอง แต่พึ่งพารายชื่ออินสแตนซ์สาธารณะ [1] และ libredirect [2]
บริการของอินสแตนซ์เดียวไม่ได้รับประกันว่าจะใช้ได้เสมอ แต่สามารถสลับไปยังอินสแตนซ์อื่นที่ใช้งานได้ภายใน 1 นาที โดยแทบไม่มีค่าใช้จ่าย
คงพูดยากว่า SearXNG ช่วยให้เลิกพึ่ง Google ได้ เพราะเมตาเสิร์ชเอนจินต้องเรียกใช้เสิร์ชเอนจินอื่นอย่าง Google เพื่อรวบรวมผลลัพธ์
แต่ถ้าลองใช้ SearXNG อย่างน้อยก็หลีกเลี่ยงสิ่งอย่างสรุปด้วย AI ได้อย่างรวดเร็ว
[1] https://searx.space
[2] https://github.com/libredirect/browser_extension
บ่อยครั้งต้องเข้าไปที่การตั้งค่าเพื่อปิดเสิร์ชเอนจินที่ใช้งานไม่ได้ หรือเลือกเอนจินที่ทำงานได้ดี โดยปกติเป็นเพราะอินสแตนซ์ถูกบล็อก จึงมีปัญหาเรื่องความน่าเชื่อถือ
เอนจินไหนใช้งานได้จะแตกต่างกันไปในแต่ละอินสแตนซ์สาธารณะ ต่อให้บันทึกแฮชของการตั้งค่าไว้ก็ไม่ได้ใช้ได้เสมอ
ถ้า SearXNG ปรับเสิร์ชเอนจินที่จะแสดงโดยอัตโนมัติตามความน่าเชื่อถือ หรือมีตัวเลือกแบบนั้นก็คงดี
โฮสต์เองและใช้เป็นเอนจินหลักสำหรับการค้นหาทั้งหมดมาหลายปีแล้ว ขอแนะนำอย่างยิ่ง
TinySearch ครอบ SearXNG แล้วทำงานได้ดีสำหรับเอเจนต์ ดีกว่า SearXNG MCP แบบเนทีฟ เพราะมันปรับบริบทให้เหมาะสมก่อนถึงเอเจนต์ จึงไม่เปลืองโทเคน
https://github.com/MarcellM01/TinySearch
ถ้าเชื่อมกับ Brave Search API จะทำงานได้ดี แต่ถ้าใช้เป็น สแครปเปอร์ จะค่อนข้างไม่เสถียร Google เริ่มใช้งานไม่ได้ตั้งแต่ไม่กี่วันก่อน
ผมทำ https://github.com/denysvitali/searxng-mcp เพื่อใช้เป็น MCP สำหรับเอเจนต์เขียนโค้ด มันทำงานได้ดีมากจนกว่าจะชน การจำกัดจำนวนคำขอ จากผู้ให้บริการ เช่น DuckDuckGo
การรันยังต้องมีเซิร์ฟเวอร์ SearXNG ด้วย ช่วงหลังจึงเปลี่ยนทิศไปทำโซลูชันแบบสแตนด์อโลนที่ https://github.com/denysvitali/search-mcp
[1]: https://github.com/nikvdp/searxng-ai-kit
ชอบ SearXNG มากมาระยะหนึ่งแล้ว ความรู้สึกต่อต้าน Google ก็เพิ่มขึ้นเรื่อย ๆ และการค้นหาได้โดยหลีกเลี่ยงไม่ให้มีสิ่งอย่าง โมเดล AI ขนาดเล็กมาติดตั้งในพีซีโดยไม่ได้รับความยินยอมของผมนั้นยอดเยี่ยมมาก
ผมชอบเครื่องมือนี้มาตลอด แต่ก็รู้สึกสองจิตสองใจว่าการส่งการค้นหาไปยัง 280 บริษัท แทนที่จะเป็นบริษัทเดียว จะช่วยเรื่องความเป็นส่วนตัวได้มากแค่ไหน