AiHummer
Română
AutentificareCont personal
v1.2.x
{ }Swagger

Configurare

v1.2.x · actualizat 2026-07-07

AiHummer este configurat printr-un catalog de setări, nu un morman de variabile de mediu. gateway.env este doar bootstrap: baza de date DSN, adresele/porturile de ascultare, cheia principală și altele asemenea. Toate celelalte chei se află în baza de date și sunt schimbate din interfața web de administrare în timpul rulării sau cu aihummer settings CLI. Regula de bază este simplă: tot ce poate fi reglat este configurabil în interfața web — nu doar pentru mediu, și nici codificat fix.

Ordinea de rezolvare

Fiecare setare din catalog este rezolvată în același mod, primul care se potrivește câștigă:

  1. Bază de date — o valoare setată prin interfața de administrare sau aihummer settings set.
  2. Implicit — implicitul încorporat livrat cu versiunea.

Mediul este în mod deliberat nu face parte din acest lanț: pentru cheile catalogului și AIHUMMER_* variabil în gateway.env este ignorată, chiar dacă este setat. Aceasta oferă fiecărei setări exact o singură sursă de adevăr — baza de date — astfel încât o valoare din interfața utilizatorului să nu poată fi niciodată ascunsă în mod silențios de o linie uitată dintr-un fișier env.

[!NOTE] Pentru a schimba comportamentul în producție nu editați fișierele de configurare — schimbați setare în interfața de administrare (Management → Setări, o pagină căutabilă) sau rulează aihummer settings set <KEY> <VALUE> (get / list a citi), și ia efect pentru acel spațiu de lucru. Instalatorul însuși semăna valorile inițiale din catalog în baza de date prin aihummer settings set.

Fierbinte vs necesită repornire

Modul în care o setare modificată intră în vigoare depinde de tasta:

Comportament Exemple Când se aplică
Fierbinte activarea uneltei, adâncimea maximă a sub-agentului Recitit la rulare, fără repornire
Este necesară repornirea adresa de ascultare, cablarea anumitor servicii Aplicat la următoarea repornire a gateway-ului

Tastele rapide sunt recitite în timp real, astfel încât comutarea unui instrument sau ajustarea subagent-depth intră în vigoare la următoarea rundă. Unele chei structurale intră în vigoare doar după repornire; interfața de administrare indică care este care.

Variabilele Bootstrap rămân doar în mediu

Câteva variabile trebuie să fie prezente în mediu deoarece sunt necesare înainte ca catalogul de setări (și baza de date din care citește) să existe. Acestea bootstrap variabilele sunt doar pentru mediu și nu sunt afișate în interfața de administrare:

Variabilă De ce este bootstrap
AIHUMMER_DATABASE_URL Baza de date trebuie să existe înainte ca orice setare bazată pe DB să poată fi citită.
AIHUMMER_DB_APP_URL Rol DSN restricționat care activează RLS.
AIHUMMER_MASTER_KEY base64-32 de octeți; deblochează secretele în repaus / seif / BYOK.
AIHUMMER_GATEWAY_ADDR Adresă de ascultare publică (implicit :8780) — API, împerechere, WS/SSE, intrare și proxy-ul aplicației/buzunarului.
AIHUMMER_WEBUI_ADDR Adresă de ascultare UI Web administrativ privat (implicit) :8781), servit la rădăcină /; setat la 0 a dezactiva.
AIHUMMER_BLOB_DIR Calea sistemului de fișiere a directorului blob/media — necesară la pornire.
AIHUMMER_OIDC_ISSUER Protejează /v1/admin/* înainte ca interfața să fie de încredere.

Cablarea Ops, cum ar fi endpoint-ul OTLP de telemetrie, se încadrează în aceeași categorie de bootstrap. Orice nu se află pe această listă scurtă este o cheie de catalog: trăiește în baza de date, iar variabila de mediu este ignorată pentru aceasta.

[!WARNING] Păstrează AIHUMMER_MASTER_KEY sigur și făcut backup separat din baza ta de date backup. Decriptează seiful cu credențiale; îl pierzi și pierzi secretele criptate nu poate fi recuperat.

Fișierul de configurare

Pentru instalările native pe gazdă, mediul bootstrap trăiește într-un singur fișier pe care unitatea systemd îl încarcă:

~/.aihummer/etc/gateway.env

Editează acest fișier doar pentru valorile bootstrap, apoi reporniți serviciul gateway pentru a aplica modificările:

# ~/.aihummer/etc/gateway.env (excerpt)
AIHUMMER_DATABASE_URL=postgres://user:pass@localhost:5432/aihummer
AIHUMMER_MASTER_KEY=base64-32-bytes...
AIHUMMER_GATEWAY_ADDR=:8780
AIHUMMER_WEBUI_ADDR=:8781
AIHUMMER_OIDC_ISSUER=https://idp.example/realms/main
systemctl restart aihummer-gateway

Tot ce depășește aceste chei bootstrap — agenți, instrumente, modul de memorie, strategii de raționament, bugete, bariere de protecție și restul — este gestionat din setările interfeței de administrare (sau prin aihummer settings), nu din acest fișier: env este ignorat pentru aceste chei.

Împământarea capabilităților opționale

Multe funcții sunt dezactivate până când le direcționați către un serviciu de suport. Toate aceste chei sunt setări de catalog (trăiesc în baza de date): setați-le în interfața de administrare (Management → Setări) sau cu CLI; punându-le în gateway.env nu face nimic — env este ignorat pentru ele. Pentru sidecar-urile instalate din pachet (STT/TTS etc.) instalatorul introduce valorile direct în baza de date.

# Wire a real model (unset → deterministic mock)
aihummer settings set AIHUMMER_LLM_PROVIDER openai
aihummer settings set AIHUMMER_LLM_MODEL gpt-4o-mini
aihummer settings set AIHUMMER_LLM_GATEWAY_URL https://api.openai.com/v1

# Enable tools by pointing at their backends

# Voice sidecars (STT/TTS auto-configured by the installer)
aihummer settings set AIHUMMER_STT_URL http://localhost:8001
aihummer settings set AIHUMMER_TTS_URL http://localhost:8002

# Real vector store + embedder (example URLs; the embedder is installed with
# --with-embedder, otherwise memory uses the lexical fallback)
aihummer settings set AIHUMMER_QDRANT_URL http://localhost:6333
aihummer settings set AIHUMMER_EMBEDDER_URL http://localhost:8080

[!TIP] Un model real nu este niciodată necesar. Fără AIHUMMER_LLM_* conectat, răspunsurile vin dintr-un mock determinist; AiHummer rulează și pe OpenAI compatibil gratuit/local capete de acces și un transport Codex/ChatGPT cu abonament, cu BYOK opțional.

Notificări

UI-ul de administrare Notificări pagina (sub „Control”) este căsuța de intrare a instanței pentru evenimente (autentificare admin, actualizare disponibilă/aplicată, sidecar care se oprește sau se recuperează etc.) cu filtre după categorie, severitate și necitite. Lângă aceasta se află un matrice categorie × canal de livrare: pentru fiecare categorie de eveniment pe care o activezi interfață web, email, telegramă și împinge canale. Notificările din interfața web sunt livrate local; Telegram este conectat prin butonul „Conectează Telegram” (link direct), emailul se activează după ce adresa de suport este verificată, iar notificările push ajung în aplicația mobilă. Evenimentele critice nu pot fi oprite pe canalul web UI.

Unde următor?