Files
OmniRoute/docs/i18n/bg/docs/frameworks/SEARCH_TOOLS_STUDIO.md
Diego Rodrigues de Sa e Souza 8feea123bb feat(docs): mirror every docs/ page in all 65 locales (#14106)
* feat(docs): mirror every docs/ page in all 65 locales

Extends the documentation mirrors from the 22-page core set (#13940) to
every Markdown page under docs/: 152 sources x 65 locales = 9,880 mirrors
(6,208 new), language bars rewritten for the full locale list, state
adopted so the blocking drift gate now covers all 152 pages.

run-translation.mjs: an oversized block made only of table rows or list
items (PROVIDER_REFERENCE.md 244-row table, FREE_TIERS.md 71-item list) is
cut at item boundaries and rejoined without a blank line — the single
16-40 KB request outlived the backend socket for verbose scripts. 48
older mirrors whose tables had lost rows were retranslated with --force.

* docs(i18n): refresh mirrors for the sources the base changed since the branch cut

Section-level retranslation of the 29 docs (and README.md) whose source
or mirrors moved on release/v3.8.51 during the run, then state adoption;
the drift gate is green again on the merged tree.
2026-09-18 13:16:46 -03:00

20 KiB
Raw Blame History

Search Tools Studio (Български)

🌐 Languages: 🇺🇸 English · 🇪🇹 am · 🇸🇦 ar · 🇦🇿 az · 🇧🇩 bn · 🇨🇿 cs · 🇩🇰 da · 🇩🇪 de · 🇬🇷 el · 🇪🇸 es · 🇪🇪 et · 🇮🇷 fa · 🇫🇮 fi · 🇫🇷 fr · 🇮🇪 ga · 🇮🇳 gu · 🇳🇬 ha · 🇮🇱 he · 🇮🇳 hi · 🇭🇷 hr · 🇭🇺 hu · 🇦🇲 hy · 🇮🇩 id · 🇳🇬 ig · 🇮🇹 it · 🇯🇵 ja · 🇬🇪 ka · 🇰🇭 km · 🇮🇳 kn · 🇰🇷 ko · 🇱🇹 lt · 🇱🇻 lv · 🇮🇳 ml · 🇮🇳 mr · 🇲🇾 ms · 🇲🇹 mt · 🇲🇲 my · 🇳🇵 ne · 🇳🇱 nl · 🇳🇴 no · 🇮🇳 or · 🇮🇳 pa · 🇵🇭 phi · 🇵🇱 pl · 🇵🇹 pt · 🇧🇷 pt-BR · 🇷🇴 ro · 🇷🇺 ru · 🇱🇰 si · 🇸🇰 sk · 🇸🇮 sl · 🇷🇸 sr · 🇸🇪 sv · 🇰🇪 sw · 🇮🇳 ta · 🇮🇳 te · 🇹🇭 th · 🇹🇷 tr · 🇺🇦 uk-UA · 🇵🇰 ur · 🇺🇿 uz · 🇻🇳 vi · 🇳🇬 yo · 🇨🇳 zh-CN · 🇹🇼 zh-TW


Функционалност: Search Tools Studio — унифицирано работно пространство с уеб инструменти за /dashboard/search-tools. Планове: 18-search-tools-studio-redesign.plan.md + _orchestration/master-plan-group-C.md Състояние: Пуснато във v3.8.6


Общ преглед

Search Tools Studio преобразува /dashboard/search-tools от базова среда за експерименти с търсене в Studio с три раздела, обединяващо уеб търсене, извличане на уеб съдържание и паралелно сравнение на доставчици.

┌ Инструменти за търсене ────────────────────────────────────────────────┐
│ [🔍 Търсене] [📄 Извличане] [⚖ Сравнение]       142ms · $0.001  </>    │
│ ⓘ [Ръководство за модалностите]                                       │
├──────────────────────────────────────────┬─────────────────────────────┤
│  {съдържание на активния раздел}         │ ─ Конфигурация              │
│                                          │ Доставчик [авто ]          │
│                                          │   🟢 Serper  $0.001         │
│                                          │   🟢 Tavily  $0.008         │
│                                          │   🔥 Firecrawl (извличане)  │
│                                          │ Тип   [уеб | новини]        │
│                                          │ Цяла страница [ ]           │
│                                          │ Формат [md|text|html]       │
│                                          │ Модел за преранжиране []   │
└──────────────────────────────────────────┴─────────────────────────────┘

Раздели

Раздел „Търсене“

Развива съществуващите SearchForm + ResultsPanel + RerankPanel в самостоятелен раздел:

  • Заявка → резултати (заглавие, URL, откъс, оценка за релевантност).
  • Метаданни за доставчика в панела „Конфигурация“ (цена, квота, състояние).
  • Секция за преранжиране: избор на модел за преранжиране, преподреждане на резултатите и показване на positionDelta.
  • Празно състояние с призив за действие, когато няма конфигурирани доставчици за търсене.
  • История на търсенията чрез SearchHistory.tsx.
  • Извиква POST /v1/search (съществуваща крайна точка, без промени).

Раздел „Извличане“

Нов раздел за извличане на съдържание от URL чрез POST /v1/web/fetch (създаден в план 05):

  • Входни данни: URL + превключвател за цяла страница + селектор за формат (markdown / текст / HTML).
  • Изпращане → извличане → визуализиране на ScrapeResult.tsx.
  • ScrapeResult визуализира предварителен преглед на markdown + превключвател за необработен изглед.
  • Ограничение: ако тялото на отговора е над 256 KB, потребителският интерфейс показва (съкратено, преглед на необработеното съдържание) и го отваря в модален прозорец на Monaco (D21).
  • Панел с метаданни: доставчик (firecrawl/jina-reader/tavily-search/tinyfish/nimble-search/anysearch-search), латентност, цена, размер на отговора, брой връзки.
  • Използва hook-а useScrapeFetch.ts.

Раздел „Сравнение“

Изпълнява една и съща заявка/URL паралелно чрез до 4 доставчика (D22):

  • Паралелни колони за всеки доставчик.
  • Метрики: латентност, цена, брой резултати, размер на отговора.
  • Изчисляване на припокриването на URL адресите при търсене (брой споделени URL адреси спрямо първоначалния резултат).
  • Извиква POST /v1/search (търсене) или POST /v1/web/fetch (извличане) за всеки доставчик.

Панел за конфигурация (споделен)

SearchToolsConfigPane.tsx — винаги видим, с възможност за свиване.

Поле Бележки
Доставчик Падащо меню със значка за състояние (конфигуриран / липсващ / ограничен)
Тип web или news (само за търсене)
Цяла страница Превключвател за извличане — цялата страница или първото видимо съдържание
Формат markdown, text или html (само за извличане)
Модел за преранжиране Незадължителен модел за преранжиране след търсене
История Сгъваема секция с история на търсенията

SearchConceptCard

SearchConceptCard.tsx — винаги видим, сгъваем акордеон. Обяснява:

Концепция Кратко описание
Търсене Извлича списък с уеб резултати (заглавие, URL, откъс, оценка за релевантност)
Извличане Извлича пълното съдържание на URL (markdown, текст или HTML)
Сравнение Изпълнява една и съща заявка паралелно при N доставчика
Пренареждане Пренарежда резултатите чрез LLM, за да подобри релевантността спрямо заявката
Автоматично (най-евтино) Автоматично избира най-евтиния наличен доставчик

Каталог на доставчиците

ProviderCatalog.tsx предоставя пълния списък с доставчици от GET /api/search/providers (разширен във F4, за да включва доставчици за извличане):

| kind | "search" (20 доставчика) или "fetch" (firecrawl, jina-reader, tavily-search, tinyfish, nimble-search, anysearch-search) |

Статусът се определя в момента на заявката, като се проверява дали съществуват идентификационни данни и дали всички ключове в момента са в период на изчакване.


Експортиране на код

ExportCodeModal (импортиран от Playground Studio) + codeExport.ts генерират curl / Python / TypeScript фрагменти както за извиквания към /v1/search, така и към /v1/web/fetch. Заместващата стойност за API ключа винаги е $OMNIROUTE_API_KEY (D11, споделена с Playground Studio).


Промени в бекенда

За тази функционалност беше необходима само една промяна в бекенда:

Разширен GET /api/search/providers

src/app/api/search/providers/route.ts беше разширен, за да:

  • Включва всичките 6 доставчика за извличане (firecrawl, jina-reader, tavily-search, tinyfish, nimble-search, anysearch-search) в масива.
  • Добавя kind: "search" | "fetch" към всеки елемент.
  • Добавя status: "configured" | "missing" | "rate_limited", определен от текущото състояние на идентификационните данни.
  • Запазва обратната съвместимост — съществуващите полета (id, name и т.н.) остават непроменени.

Ключови файлове

Път Предназначение
src/app/(dashboard)/dashboard/search-tools/SearchToolsClient.tsx Обвивка на студиото, управление на разделите
src/app/(dashboard)/dashboard/search-tools/components/SearchToolsTopBar.tsx Раздели + метрики + бутон за експортиране
src/app/(dashboard)/dashboard/search-tools/components/SearchToolsConfigPane.tsx Споделен панел за конфигурация
src/app/(dashboard)/dashboard/search-tools/components/SearchConceptCard.tsx Обяснителни карти (винаги видими)
src/app/(dashboard)/dashboard/search-tools/components/ProviderCatalog.tsx Списък с доставчици и метаданни
src/app/(dashboard)/dashboard/search-tools/components/ScrapeResult.tsx Преглед на markdown + превключвател към необработен изглед
src/app/(dashboard)/dashboard/search-tools/components/tabs/SearchTab.tsx Раздел за търсене + пренареждане
src/app/(dashboard)/dashboard/search-tools/components/tabs/ScrapeTab.tsx Раздел за извличане
src/app/(dashboard)/dashboard/search-tools/components/tabs/CompareTab.tsx Раздел за сравнение между множество доставчици
src/app/(dashboard)/dashboard/search-tools/hooks/useScrapeFetch.ts Hook за извличане
src/app/api/search/providers/route.ts Разширен с kind + status + доставчици за извличане
open-sse/config/searchRegistry.ts Единен източник на достоверни метаданни за доставчиците

Отстраняване на неизправности

Симптом Причина Решение
Разделът за извличане показва „крайната точка не е налична“ /v1/web/fetch не е свързана Проверете дали план 05 е обединен; проверете дали src/app/api/v1/web/fetch/route.ts съществува
Каталогът с доставчици показва всички като „липсващи“ Идентификационните данни не са конфигурирани Добавете идентификационни данни в /dashboard/providers
Извлеченото съдържание е съкратено Отговорът надвишава ограничението от 256 KB Очаквано поведение (D21). Използвайте бутона „преглед на необработеното съдържание“ за цялото съдържание
Разделът за сравнение показва само 2 доставчика Ограничението на честотата е активно Два или повече доставчика може да са в период на изчакване — проверете състоянието им в панела за конфигурация
„Размер“ се показва като необработен ключ в таблицата Липсва i18n ключ Проверете дали search.size съществува във файла на локала; изградете i18n наново

Препратки

  • Главен план: _tasks/features-v3.8.6/refactorpages/_orchestration/master-plan-group-C.md
  • План на функционалността: _tasks/features-v3.8.6/refactorpages/18-search-tools-studio-redesign.plan.md
  • Регистър на доставчиците за търсене: open-sse/config/searchRegistry.ts
  • Playground Studio (споделени ExportCodeModal + codeExport.ts): docs/frameworks/PLAYGROUND_STUDIO.md
  • Бекенд за извличане от уеб: src/app/api/v1/web/fetch/route.ts