Про VIR GOO
Відкритий, децентралізований пошук без рекламних трекерів і без бізнес-причини ховати кращі результати.
Ідея
Сучасні комерційні пошуковики оптимізовано під показники, які клієнт-користувач не бачить — кліки до реклами, час сесії, перехід до сервісів цієї ж компанії. Тому в топі часто опиняється не те, що корисно вам, а те, що корисно платформі. VIR GOO — форк YaCy, P2P-пошуковика з відкритим кодом. Ми прибрали PageRank-зміщення, додали семантичне ранжування, і тримаємо систему такою простою, щоб одна людина могла підняти власну ноду за 5 хвилин.
Чим відрізняємось
Без PageRank
Коефіцієнти coeff_authority та
coeff_citation у
ранжуванні — нуль. Купівля беклінків більше не дає переваги.
Семантичний шар
768-вимірні embeddings (multilingual-e5)
поверх Solr. Гібридне ранжування 60/25/15 — semantic /
freshness / quality. UA-запит знаходить EN-документи.
Свіжість як стандарт
Solr-функція recip(ms(NOW,load_date_dt),3.16e-11,1,1)
(~1 рік half-life). Сьогоднішні новини більше не ховаються
під 10-річний архів.
Чорний список і у P2P
Список ~400 хостів (порно/казино/пропаганда/трекінг) активний на CRAWLER, PROXY, SEARCH, DHT, NEWS одночасно. Ми не індексуємо це і не ділимось цим з мережею.
Self-service для вебмайстрів
Зареєструйтеся → подайте URL → бот валідує → адмін запускає краулера. Без email і черги.
Без third-party
Tailwind, шрифти, іконки — все local. Жодних запитів до Google Fonts / OSM tiles / Vimeo на боці клієнта.
Як це працює
- YaCy-краулер обходить ваші seed-домени, парсить, кладе в Solr.
- Кожну годину Python-сервіс зчитує нові документи та обчислює 768d embeddings, кладе в Postgres+pgvector.
- На запит користувача Solr робить BM25-вибірку, потім FastAPI
/rank-endpoint накладає семантику. - Для запитів з 0 кліків раз на добу LLM пропонує seed-URL → черга краулера → індекс лікує власні прогалини.
- Outbound DHT-шари перевіряються блек-листом — навіть якщо ви ділитесь індексом з мережею, спам не виходить.
Підняти власну ноду
Все, що потрібно — Linux + Docker. ~3 GB RAM, 20 GB диску.
git clone -b feature/remove-third-party-links \
https://github.com/VladlenVeronov/yacy_search_server.git yacy-fork
cp yacy-fork/deploy/docker-compose.yml ./
cp yacy-fork/deploy/.env.example ./.env
nano .env # YACY_HOST, POSTGRES_PASSWORD, ADMIN_TOKEN
docker network create traefik-public
docker compose up -d
Повний гайд: HOWTO-NODE-OPERATOR.md
Ліцензія, репо
GPL-2.0 (та ж, що й upstream YaCy). Код на
github.com/VladlenVeronov/yacy_search_server,
гілка feature/remove-third-party-links.
Patches welcome.