AiHummer
Latviešu
PierakstītiesKonts
v1.2.x
{ }Swagger

Vārteja un pagrieziena dzinējs

v1.2.x · atjaunināts 2026-06-26

AiHummer sirds ir viena vārtejas pakalpojuma. Tas vienlaikus ir vadības plakne (administratora API, iestatījumi, kanāla pieslēgšana, tirgus vieta) un pagriezt dzinēju (funkciju izsaukšanas cilpa, kas rada atbildi). Tādējādi tipiska izvietošana ir tikai šis vienīgais pakalpojums plus PostgreSQL — nav nepieciešams palaist atsevišķu darbinieku slāni.

Viens pakalpojums, divas lomas

Vārteja klausās uz publisks osta :8780 pēc noklusējuma, kontrolēts ar AIHUMMER_GATEWAY_ADDR — šis ports apstrādā visu ārējo satiksmi (API, savienošanu, WS/SSE, ienākošos webhook, lietotni/pocket proxy un veselības pārbaudes). Administratora Web UI darbojas uz atrauts, privāts uztvērējs (noklusējums :8781, AIHUMMER_WEBUI_ADDR), tiek nodrošināts saknes ceļā / un ideāli piesaistīts tikai iekšējai saskarnei. Katrā gadījumā process vienmēr ir viens un tas pats vienīgais pakalpojums.

# gateway.env — the only required setting
AIHUMMER_DATABASE_URL=postgres://user:pass@localhost:5432/aihummer?sslmode=disable
# Admin Web UI after start at http://localhost:8781/ (the private Web UI listener)

Tas vienīgā stingrā atkarība ir PostgreSQL. Postgres ir vienīgais patiesības avots aģentiem, iestatījumiem, sarunām, atmiņai, piegādes stāvoklim un audita datiem. Viss pārējais — izvēles pakalpojumi, vektoru krātuve un modeļu nodrošinātāji — tiek pieslēgts tikai tad, kad to konfigurējat.

[!NOTE] Bez datubāzes vārteja sāk darboties tikai veselības režīms: tas atbild GET /healthz tāpēc orkestrētājs vai slodzes līdzsvarotājs var redzēt, ka process ir dzīvs, bet tas nebūs noderīgs. GET /readyz pārbauda PostgreSQL un atgriežas 503 kamēr datubāze nav sasniedzama.

Kas notiek startēšanas laikā

Startējot, vārteja veic dažas darbības stingrā secībā:

  1. atver datubāzes savienojumu krātuvi,
  2. piemēro visus gaidošos migrācijas procesus zem Postgres konsultatīvā bloķēšanas
  3. atrisina konfigurāciju (datubāzes vērtība → vides mainīgais → iebūvēts) noklusējums), un
  4. savieno pakalpojumus — maršrutētāju, orķestratoru, kanālus, rīkus, atmiņu, piegāde — tekošā vārtu sistēmā.

Svarīgākais secinājums ir tas, ka lielākā daļa funkciju ir iespējamas, izmantojot iestatījumu atslēgu. Spēja, kas nav konfigurēta, vienkārši netiek aktivizēta, kas uztur noklusējuma izpildes laiku mazu un paredzamu. Jūs ieslēdzat funkcijas, izmantojot tīmekļa administrēšanas lietotāja saskarni vai ar AIHUMMER_* mainīgais, un vārteja tos nosaka nākamajā startā (vai karsti, tiem pogu regulatoriem, kas to atbalsta).

Apgriešanās dzinējs

Kad ziņa sasniedz vārteju, pārslēgšanās dzinējs pārņem vadību. Tas darbojas funkciju izsaukšanas cilpa: modelim tiek dots sistēmas uzvedne un saruna, tas var izmantot rīkus (vai izsaukt apakšagentus), katrs rīka rezultāts tiek atgriezts atpakaļ, un cikls turpinās, līdz modelis ģenerē galīgo atbildi. Šī atbilde pēc tam tiek nodota piegādes slānim.

inbound message
   └─▶ turn engine
         ├─ assemble layered system prompt
         ├─ call model ──▶ tool calls / sub-agents ──▶ tool results ─┐
         │       ▲                                                    │
         │       └────────────────────────────────────────────────-─┘
         └─ final answer ─▶ reliable delivery ─▶ originating channel

Tā kā cilpa ir deterministiska attiecībā uz to, no kurienes nāk katra ievade, atbildes tiek noteiktas no sarunas vēstures un rīku rezultātiem — nekad neievadot neuzticamu tekstu instrukcijās. Šī īpašība padara zemāk redzamo uzvednes slāņošanu gan drošu, gan ātru.

Slāņotais, kešatmiņai draudzīgais sistēmas uzvednes teksts

Sistēmas uzvedne nav viena bloka veidā. Tā ir salikta slāņos, apzināti sakārtota tā, lai stabilas daļas nāk pirmās un svārstīgās daļas nāk pēdējās. Tas ir svarīgi, jo modeļa pakalpojumu sniedzēji kešo vaicājumu pēc tā prefiksa: kamēr vaicājuma sākums ir baitu baitu identisks, kešotais prefikss tiek izmantots atkārtoti, un tiek apstrādāta tikai aste.

Zona Slāņi (secībā) Izmaiņas…
Stabils priekšvārds (kešojams) pamata identitāte + rīks/atmiņas ceļvedis → īrnieks → persona → prasmes retāk — uz aģentu/īrnieku
Svārstīga aste (pielikts pēdējais) iegūšanas stāvoklis → atmiņas hidratācija → dzīvā datuma katrā pagriezienā

Stabilais prefikss satur visu, kas nosaka kas aģents ir: iebūvēto identitāti un ceļvedi par to, kā darbojas rīki un atmiņa, pēc tam īrnieka slāni, aģenta personību un izrenderēto prasmju bloku. Neviens no tā nemainās starp diviem secīgiem tā paša aģenta gājieniem, tāpēc tas veido atkārtoti lietojamu kešotu prefiksu.

Pielikta mainīgā aste pēc stabilais prefikss tieši tā, lai tas nekad neanulētu kešu: iesākšanas stāvoklis, atmiņa, kas hidrēta šai konkrētajai sarunai, un pašreizējā datuma maiņa no viena soļa uz nākamo, bet tā kā tie atrodas beigās, tie maksā tikai to, ko pievieno.

[!TIP] Šī kārtošana ir iemesls, kāpēc var būt klāt dzīvie dati, piemēram, šodienas datums katru kārtu, nemaksājot par visu identitātes pārrakstīšanu katru reizi. Turpiniet pielāgots katram aģentam saturs stabilajās slāņos (persona, prasmes) un ļauj dzinējs pieder mainīgajam astes galam.

Kur uz nākamo