Устаноўка
AiHummer ўсталёўвае хазяін-гаспадарУсталёўка пачынаецца ў вашым асабістым кабінеце на my.aihummer.ruвы рэгіструецеся, атрымліваеце асабістая спасылка для ўстаноўкі і выканайце адну каманду на вашым серверы. Скрыпт ўстаноўкі загружае падпісаны пакет для вашай архітэктуры, размяшчае адно карані ўстаноўкі пад ~/.aihummer (у хатнім каталогу карыстальніка, які запусціў усталёўшчык), рэгіструе адзінкі systemd і, па жаданні, наладжвае сайдкары. Працэс не ўключае кантэйнеры.
[!NOTE] Гэта ўстаноўка на роднай сістэме — выпуск у выглядзе тарболу, які запускаецца пад systemd, не Docker. Шлюз, сайдкары і плагіны кожны працуе як асобная служба systemd паслуга
[!NOTE] Што вам спатрэбіцца перад тым, як пачаць:
- а Лінукс сервер (x86_64 або arm64), да якога вы можаце далучыцца праз SSH;
sudoправы (ці гатоўнасць устанавіць безкарнявы — гл. ніжэй);- PostgreSQL з
pgcryptoпашырэнне — або дазвольце ўсталёўшчыку забяспечыць кластэр рэжыму карыстальніка (у рэжыме без каранёвага доступу ён робіць гэта сам)- рахунак у my.aihummer.ru атрымаць ваш асабісты спасылка на ўсталёўку
Поўны спіс патрабаванняў знаходзіцца на Патрабаванні старонка.
Крок 1: атрымайце сваю асабістую спасылку для ўстаноўкі
Публічнага скрыпту ўстаноўкі няма — спасылка для ўстаноўкі асабісты і выдадзена ў вашым партале рахунку:
- Зарэгіструйцеся на my.aihummer.ru (нумар тэлефона + пароль; электронная пошта таксама спатрэбіцца).
- Адкрый Устаноўка экраніруйце і націсніце «Атрымаць асабістую спасылку для ўстаноўкі».
- Партал паказвае гатовую каманду для запуску з вашай асабістай спасылкай.
Больш падрабязна пра сам партал (рахункі, дакументы, планы) можна даведацца на Асабісты рахунак старонка.
Крок 2: ўсталёўка адной камандай
Скапіруйце каманду са старонкі «Устаноўка» і выканайце яе на вашым серверы (Linux x86_64/arm64):
curl -fsSL -o install.sh "<your personal install link>" && sudo bash install.sh
Персанальная спасылка мае выгляд https://my.aihummer.ru/dl/<token>/install.sh і
прывязана да вашага акаўнта.
[!IMPORTANT] Спасылка аднаразовая: яна спрацоўвае роўна на адну ўстаноўку. Як толькі усталёўшчык спампаваў па ёй
install.sh, спасылка лічыцца выкарыстанай. Паўторны запуск той жа каманды верне памылку «спасылка ўжо выкарыстана» — гэта не збой, а абарона. Што рабіць: адкрыйце экран «Устаноўка» ў асабістым кабінеце і атрымайце новую спасылку, гэта бясплатна і імгненна.Тэрмін 30 дзён адносіцца не да паўторнай устаноўкі, а да спампоўвання артэфактаў: ужо ўсталяваны інстанс працягвае абнаўляцца праз сваю спасылку і пасля таго, як яна выдаткавана на ўстаноўку.
Сцэнар вызначае архітэктуру вашага ЦПУ, загружае адпаведны пакет разам з яго .sha256 праверка кантрольнай сумы і сумесны подпіс .sig падпіс, правярае абодва, распакоўвае корань ўстаноўкі і рэгіструе сэрвіс шлюза. Глядзі Журнал змен для бягучага выпуску.
Асабісты сувязь таксама прывязвае інстанцыю да вашага акаўнта ў кліенцкім парталеўсталёўшчык захоўвае токен з спасылкі, экземпляр адпраўляе яго пры першай рэгістрацыі ў прадаўца, а партал аўтаматычна звязвае экземпляр з вашым уліковым запісам. Ваш электронны адрас адразу становіцца адрасам экземпляра правераны кантакт — няма асобнага кроку «прымацаваць і праверыць электронную пошту» ў вэб-інтэрфейсе, і ліцэнзія пастаўляецца без ручных дзеянняў.
[!WARNING] Ваш асабісты спасылка — гэта ваш ключ да распаўсюджвання. Не публікуйце яе: любое трымаючы спасылку, можна загружаць зборкі ад вашага імя да таго часу, пакуль токен не скончыцца.
Усталяваць асноўны макет
Усё ляжыць пад адным каталогам. Пад якім менавіта — залежыць ад таго, як вы запусцілі ўсталёўшчык:
| Як усталявана | Корань устаноўкі | Канфігурацыя | Ад каго працуе служба |
|---|---|---|---|
Звычайная ўстаноўка (праз sudo) |
/home/.aihummer |
/etc/aihummer/gateway.env |
Асобны службовы ўліковы запіс aihummer |
| Без root (rootless) | ~/.aihummer |
~/.aihummer/etc/gateway.env |
Ваш уласны карыстальнік |
Звычайная ўстаноўка не кладзе файлы ў ваш хатні каталог і не запускае
службу ад вашага імя: для яе заводзіцца асобны непрывілеяваны карыстальнік
aihummer. Гэта зроблена наўмысна — кампраметацыя службы не дае доступу да вашых
асабістых файлаў.
Раскладка ўнутры кораня аднолькавая ў абодвух рэжымах (ніжэй паказаны звычайны):
/home/.aihummer/
├── bin/ gateway binary and the aihummer CLI
├── etc/ configuration (gateway.env)
├── share/ static assets for the administration interface
├── sidecars/ optional STT/TTS/etc services
├── plugins/ installed marketplace plugins
├── systemd/ unit files (symlinked into /etc/systemd/system)
├── state/ runtime state
├── data/ blob/media storage
└── logs/ service logs
Файлы адзінкі systemd, згенераваныя ў systemd/ з’яўляюцца створаны сімвалічнай спасылкай у /etc/systemd/system/, таму імі кіруюць рэгулярна systemctl каманды.
Устаноўка без каранёў
sudoПрава root не патрабуюцца. Калі вы запускаеце каманду ўстаноўкі без sudo, усталёўшчык пераходзіць у рэжым без правоў адміністратара: адзінкі зарэгістраваныя ў systemd --user масштаб (файлы ў ~/.config/systemd/user), aihummer CLI і cosign прызямляюцца ~/.aihummer/bin, і калі AIHUMMER_DATABASE_URL не ўсталёўвае ўстаноўшчык карыстацкі кластар PostgreSQL у рэжыме карыстальніка ў каранёвай дырэкторыі ўстаноўкі. Сэрвісы кіруюцца з systemctl --user .... Каб службы запускаліся пры ўключэнні хаста (не толькі падчас уваходу карыстальніка), уключыце адтэрміноўку:
loginctl enable-linger $USER
Выбар сайдкара
Лёгкія бакавыя прычэпы для сродкаў масавай інфармацыі — STT (faster-whisper), TTS (edge-tts) і відэа — усталёўваюцца гатовымі да выкарыстання, без пытанняў або папераджэнняў: кругавы голас працуе адразу. Любую з іх можна адключыць з дапамогай зменных асяроддзя AIHUMMER_SKIP_STT=1, AIHUMMER_SKIP_TTS=1, AIHUMMER_SKIP_VIDEO=1.
Вэб-пошук (SearXNG) і браўзер (CloakBrowser) убудаваныя ў падпісаны бандл і ўсталёўваюцца афлайн па змаўчанні — усталёўшчык пра іх больш не пытае. Змяніць гэтыя паводзіны можна сцяжкамі — гэта поўны спіс:
| Сцяг | Эфект |
|---|---|
--no-search / --no-browser |
Прапусціце гэты сайдкар |
--external-search=URL / --external-browser=URL |
Выкарыстоўвайце існуючы сэрвіс па гэтым URL замест устаноўкі |
--browser-engine=cloak|chrome |
Рухавік браўзера (па змаўчанні cloak) |
--with-search / --with-browser |
Залішнія з v1.0.14: гэта і ёсць паводзіны па змаўчанні |
--with-embedder |
Усталяваць семантычны ўбудавальнік (падаць згоду: загружае PyTorch — сотні МБ |
Пошук і браўзер усталёўваюцца і без tty: карысная нагрузка бярэцца з бандла, доступ у інтэрнэт для гэтага не патрэбны. Усталёўка абодвух не блакуе — калі карыснай нагрузкі няма або версія Python не падтрымліваецца, сэрвіс проста застаецца неналаджаным, а ўсталёўка працягваецца. Убудавальнік таксама можна ўключыць з AIHUMMER_WITH_EMBEDDER=1; без яе памяць працуе праз лексічны запас. Мова інтэрфейсу задаецца AIHUMMER_LANG=ru|en (у адваротным выпадку ўсталёўшчык запытвае на tty). Падключэнне PostgreSQL запытваецца на tty; для неабортаўных ўстаноўках усталюйце AIHUMMER_DATABASE_URL напярэдадні. На tty ўсталёўшчык таксама прапануе аднаўленне з рэзервовай копіі.
# Усталяваць gateway з убудавальнікам, без браўзера (пошук усталёўваецца па змаўчанні)
curl -fsSL -o install.sh "<your personal install link>" && sudo bash install.sh \
--with-embedder --no-browser
Паколькі сайдкары адрасуюцца па URL, вы можаце свабодна змешваць убудаваныя і знешнія сайдкары і накіроўваць некалькі шлюзаў на адзін агульны сайдкар.
Як правяраецца сапраўднасць зборкі
Персанальная спасылка з асабістага кабінета заўсёды ўсталёўвае бягучы выпуск — гэта штатны і адзіны шлях. Выбіраць «версію свяжэйшую» не трэба: вы атрымліваеце тую зборку, якую пастаўшчык выпусціў для эксплуатацыі.
Кожны артэфакт — і пры першай устаноўцы, і пры кожным абнаўленні — прыязджае
tarball пад вашу архітэктуру, а побач з ім ляжаць кантрольная сума .sha256 і
подпіс .sig (cosign). Усталёўшчык правярае абодва да таго, як што-небудзь
распакуе. Уручную правяраць нічога не трэба.
Чаканы вынік: праверкі праходзяць моўчкі і ўстаноўка працягваецца. Калі хоць адна не сышлася, усталёўшчык спыняецца з памылкай і не чапае ўжо працоўную версію — пашкоджаны ці падменены файл на сервер не трапіць.
Калі пастаўшчык запрасіў вас у праграму ранняга тэсціравання, на экране «Устаноўка» ў кабінеце з’явіцца пераключальнік, і для абранага варыянта выпускаецца асобная спасылка — гл. Інстанс.
Праверце ўстаноўку
Пасля завяршэння ўстаноўкі праверце сэрвіс і кантрольны пункт гатоўнасці:
systemctl status aihummer-gateway
curl -fsS http://localhost:8780/healthz
curl -fsS http://localhost:8780/readyz
/healthz паведамляе пра жывасць і версію /readyz правярае PostgreSQL і вяртае 503 пакуль база дадзеных недаступная. У камплекце aihummer CLI таксама забяспечвае aihummer status і aihummer doctor для хуткага агляду стану здароўя
Што вы ўбачыце пасля паспяховай устаноўкі: гэты aihummer-gateway паслуга ў active (running), а 200 з /healthz і /readyz, і пачатковы пароль адміністратара ў /home/.aihummer/etc/initial-admin-password.txt (пры rootless-устаноўцы — ~/.aihummer/etc/initial-admin-password.txt) для першы ўвод.
Спіс праверак вытворчасці
Адна каманда ўстаноўкі запускае шлюз, але гэта яшчэ не гатова для вытворчасціПерад тым як раскрыць гэта, завершы:
-
TLS — завяршыць HTTPS перад шлюзам (зваротны праксі / уласны сертыфікат); ніколі не раскрывайце адкрыты порт у ненадзейнай сетцы.
-
🔴 Уключыце падтрымку вэб‑сокетаў на адваротным проксі. Мабільная і настольная праграма злучаецца са шлюзам праз
wss://, таму проксі мусіць прапускаць загалоўкіUpgradeіConnection. Проксі без гэтай наладкі адказвае звычайнай старонкай са статусам 200 замест101 Switching Protocols— праграма чытае гэта як «сэрвіс не адказвае», хоць шлюз спраўны і ў яго журнале няма ніводнай памылкі. У Nginx Proxy Manager гэта пераключальнік Websockets Support у адпаведнага Proxy Host, у звычайным nginx —proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade";плюсproxy_http_version 1.1у блокуlocation.Праверыць адной камандай (чакаецца
101, а не200):curl -s -o /dev/null -w '%{http_code}\n' \ -H 'Connection: Upgrade' -H 'Upgrade: websocket' \ -H 'Sec-WebSocket-Version: 13' -H 'Sec-WebSocket-Key: dGhlIHNhbXBsZSBub25jZQ==' \ https://ваш-дамен/ -
Змяніць пароль адміністратара і выдаліць
initial-admin-password.txt; усталяваць выдавец аўтэнтыфікацыі (AIHUMMER_OIDC_ISSUER/ LDAP / SAML) перад адкрыццём/admin/*. -
Рэзервова зрабіць копію галоўнага ключа і базы даных — рэкорд
AIHUMMER_MASTER_KEY(сакрэты неаднаўляльныя без яго) і наладзіць рэгулярнае рэзервовае капіраванне PostgreSQL. -
Злучыце рэальны мадэль — набор
AIHUMMER_LLM_*(альбо BYOK); без яго адказы не паступаюць з дэтэрмінаванай імітацыі. -
Падключыце як мінімум адзін канал (Telegram для пачатку) і прывязаць да яго агента.
Бачыць Першы ўвод, Канфігурацыя і Рэзервовыя копіі і аднаўленне пасля збоі для падрабязнасцей.
Калі гэта не спрацавала
- «спасылка ўжо выкарыстана» / устаноўка не запускаецца паўторна — спасылка аднаразовая і ўжо выдаткавана на папярэднюю спробу. Атрымайце новую на экране «Устаноўка» ў кабінеце і запусціце каманду зноў.
curl: (22) … 404або «спасылка несапраўдная» — спасылка скапіравана не цалкам альбо яе тэрмін скончыўся. Лечыцца там жа — новай спасылкай.- непадтрымліваемая архітэктура — усталёўка падтрымлівае Linux x86_64 і arm64 Няма пакета для іншых платформаў.
/readyzвяртае503— шлюз не бачыць PostgreSQL. ПраверцеAIHUMMER_DATABASE_URL, даступнасць базы даных, і штоpgcryptoпашырэнне створана (CREATE EXTENSION IF NOT EXISTS pgcrypto;).- Сэрвіс не пачаўся — праверыць
systemctl status aihummer-gatewayіjournalctl -u aihummer-gatewayдля хуткай дыягностыкіaihummer doctor. - Усталявана без sudo, службы спыняюцца пасля выхаду з сістэмы — уключыць працяглы рэжым:
loginctl enable-linger $USER(глядзі бязкарэнны). - Праверка подпісу не ўдалася — не працягвайце ўсталёўку; паспрабуйце пазней
ці атрымаць свежую спасылку. Артыфакт заўсёды правяраецца адносна яго
.sha256і суправаджаць подпісам.sig.
Куды далей
- Першы запуск: глядзець Першы ўвод атрымаць
пачатковы пароль адміністратара ад
/home/.aihummer/etc/initial-admin-password.txt(пры rootless-устаноўцы —~/.aihummer/etc/initial-admin-password.txt). - Настройце разгортванне: прачытаць Канфігурацыя.
- Хочаце прайшоўшы першы маршрут пад кіраўніцтвам? Выкарыстайце Хуткі старт.