System Description
AIvis is deployed as a set of cooperating services with separate boundaries for user access, application control, knowledge indexing, model workloads, agent execution, and durable data.
Application layer
The API service is the control boundary for user context. Other services should not infer a user’s authority from prompt text, runtime output, connector metadata, or a client-supplied field.
Model and retrieval layer
Separating indexing and query-time model workloads helps prevent large connector backfills from starving live chat and search requests. Production deployments should monitor both queues separately.
Agent execution layer
The browser should not call the agent runtime directly. AIvis API reconstructs the user, workspace, conversation, and permission context before work is sent to runtime services.
Primary data flows
Trust boundaries
Data layer
Infrastructure layer
Nginx or an equivalent request router should be the public entry point. It terminates or forwards TLS, routes traffic to AIvis Web and API services, and keeps internal service ports private.
Internal service ports for Postgres, Redis, OpenSearch, object storage, model servers, workers, and agent runtime services should not be exposed to the public internet. If a managed service requires public endpoints, restrict access by private networking, firewall rules, identity controls, and TLS.
Component replacement
Object storage can be replaced with S3-compatible services. Redis and Postgres can be replaced with managed services when latency, network policy, and backup requirements are met. OpenSearch can run as a local container, a cluster, or a managed service, but replacing it with a different search engine requires development work because retrieval behavior is tightly integrated with AIvis.
Architecture review checklist
- Confirm the public router is the only internet-facing component.
- Confirm Web, API, workers, model servers, and runtime services use private network paths.
- Confirm connector workers can reach only approved SaaS APIs and internal services.
- Confirm OpenSearch and object storage are backed up and access-controlled.
- Confirm request IDs appear across router, API, worker, runtime, and model-service logs.