Сайдкары
Некаторыя магчымасці — маўленне, відэа, вэб-пошук, безгаловы браўзер — не з’яўляюцца часткай самога шлюза. Яны працуюць як сайдкары: маленькія, незалежныя HTTP-сэрвісы, якія шлюз дасягае праз URL. Кожны сайдкар бясплатны і лакальны: за ніводным з іх няма абавязковага платнага API.
Што такое сайдкар
Сайдкар — гэта асобны працэс, які выстаўляе HTTP API. Шлюз ніколі не звязвае яго ўнутр і не запускае ў сваім працэсе — ён проста выклікае URL, які вы наладжваеце. Кожны сайдкар
- працуе пад уласным юнітам systemd (хост-натыўна, без кантэйнераў),
- падключаны да шлюза праз пераменную асяроддзя, і
- можа быць усталяваны натыўна побач са шлюзам ці накіраваны на існуючы асобнік, які вы ўжо запускаеце дзесьці яшчэ.
Паколькі кантракт — гэта проста HTTP, тая самая канфігурацыя працуе незалежна ад
таго, ці сайдкар на localhost, ці на іншым хасце.
[!NOTE] Сайдкары неабавязковыя. Магчымасць актыўная толькі тады, калі наладжаны яе URL; да таго шлюз працуе без яе. Гэта ўтрымлівае мінімальную ўсталёўку на ўзроўні проста шлюза плюс PostgreSQL.
Сайдкары і іх порты
| Порт | Сайдкар | На аснове | Дае | Падключаецца праз |
|---|---|---|---|---|
| 8001 | STT | faster-whisper | speech-to-text | AIHUMMER_STT_URL |
| 8002 | TTS | edge-tts | text-to-speech | AIHUMMER_TTS_URL |
| 8003 | diarize | pyannote | дыярызацыя дыктараў | AIHUMMER_DIARIZE_URL |
| 8004 | voiceclone | OpenVoice V2 | кланаванне голасу | AIHUMMER_VOICECLONE_URL |
| 8005 | video | ffmpeg | разуменне відэа | AIHUMMER_VIDEO_URL |
| 8888 | SearXNG | SearXNG | інструмент web_search |
SEARXNG_URL |
| 9222 | Chrome / CDP | Chrome (CDP) | інструмент browser |
CLOAKBROWSER_CDP_URL |
Галасавыя сайдкары — гэта шлях з каробкі: STT (:8001) корміць ход агента, а TTS
(:8002) агучвае адказ, абодва на бясплатных/лакальных рухавіках. Дыярызацыя
(:8003), кланаванне голасу (:8004) і разуменне відэа (:8005) — гэта
дадатковыя сайдкары, якія ўключаюцца апцыянальна. SearXNG (:8888) забяспечвае
web_search, а канчатковая кропка Chrome/CDP (:9222) забяспечвае інструмент
browser.
Падключэнне сайдкараў
Вы накіроўваеце шлюз на кожны сайдкар з адпаведнай пераменнай асяроддзя. Для хост-натыўнай усталёўкі галасавыя сайдкары (STT/TTS) наладжаны за вас; астатнія вы ўключаеце па меры патрэбы.
# gateway.env — voice in/out (auto-set by the installer for STT/TTS)
AIHUMMER_STT_URL=http://127.0.0.1:8001
AIHUMMER_TTS_URL=http://127.0.0.1:8002
# Optional voice/video sidecars
AIHUMMER_DIARIZE_URL=http://127.0.0.1:8003
AIHUMMER_VOICECLONE_URL=http://127.0.0.1:8004
AIHUMMER_VIDEO_URL=http://127.0.0.1:8005
# Tool sidecars
SEARXNG_URL=http://127.0.0.1:8888
CLOAKBROWSER_CDP_URL=http://127.0.0.1:9222
[!TIP] Паколькі кожны сайдкар — гэта проста URL, вы можаце цэнтралізаваць цяжкія сэрвісы. Накіруйце некалькі шлюзаў на адзін агульны асобнік STT/TTS ці SearXNG замест таго, каб запускаць копію на хост.
Запуск іх натыўна ці агульна
Кожны сайдкар жыве пад уласным юнітам systemd на хасце, таму вы аперыруеце ім, як любым іншым сэрвісам — запускаеце, спыняеце і чытаеце логі незалежна ад шлюза. Калі вы ўжо запускаеце, скажам, асобнік SearXNG ці канчатковую кропку Chrome/CDP, проста задайце URL гэтаму існуючаму асобніку і прапусціце лакальную ўсталёўку цалкам. Так ці інакш погляд шлюза ідэнтычны: наладжаны URL, які ён можа выклікаць.
[!WARNING] Інструменты
browser(CDP) іweb_searchзвяртаюцца ў сетку. На ўмацаваных ці ізаляваных ад сеткі разгортваннях прагледзьце выходны трафік і налады ізаляцыі перад іх уключэннем — шлюз выклікае толькі той сайдкар, які вы падключылі.
Куды далей
- Як голас і інструмент браўзера выкарыстоўваюцца ў ходзе: Шлюз і рухавік ходу.
- Мінімальная жорсткая залежнасць (PostgreSQL) і апцыянальнае ўсё астатняе: Шлюз і рухавік ходу.