click a box for its passport; double-click it, or its ›, to open it in place (keyboard: Enter, Shift+Enter); shift-click two boxes for a path; a legend swatch mutes a kind
Guided views 0 / 6Explore this system
01services +45 boxes
02app +23 boxes
03OpenAI API2 boxes
04Milvus2 boxes
05Redis2 boxes
06SQLite2 boxes
Architecture
9 modules in 2 groups
cloud 1database 3group 2solid arrows are imports (count on hover); dashed arrows carry their verb (some only in the passport)every box and arrow cites a source line; click one
Entry points
app/api: 6 routes · GET /conversations, GET /conversations/{thread_id:path}, GET /health …SRC 6
Data stores
Milvus via pymilvusSRC 1
Redis via redisSRC 1
SQLite via sqlite3SRC 1
langfuse-db (compose, postgres:16-alpine)SRC 1
… and 2 more
External APIs
OpenAI API via langchain_openaiSRC 1
Unresolved
python calls: 446 unresolved · e.g. Path(__file__).resolve, client.trace, ingestor.ingest_skill
python imports: 6 unresolved · e.g. huggingface_hub, pytest, transformers
python references: 3 unresolved · e.g. huggingface_hub, transformers
cloud 1database 2module 5solid arrows are imports (count on hover); dashed arrows carry their verb (some only in the passport)every box and arrow cites a source line; click one
backend 1database 1module 2solid arrows are imports (count on hover); dashed arrows carry their verb (some only in the passport)every box and arrow cites a source line; click one
cloud 1database 2module 5solid arrows are imports (count on hover); dashed arrows carry their verb (some only in the passport)every box and arrow cites a source line; click one
click a box for its passport; double-click it, or its ›, to open it in place (keyboard: Enter, Shift+Enter); shift-click two boxes for a path; a legend swatch mutes a kind
Guided views 0 / 2Explore this system
01api6 boxes
02/admin/ingest, /chat …2 boxes
Data flow
1 ingress module, 5 domain modules, 4 external; 5 lateral imports and 4 upstream imports not drawn
backend 1cloud 1database 3endpoint 1module 5solid arrows are imports (count on hover); dashed arrows carry their verbevery box and arrow cites a source line; click one
Entry points
app/api: 6 routes · GET /conversations, GET /conversations/{thread_id:path}, GET /health …SRC 6
Data stores
Milvus via pymilvusSRC 1
Redis via redisSRC 1
SQLite via sqlite3SRC 1
langfuse-db (compose, postgres:16-alpine)SRC 1
… and 2 more
External APIs
OpenAI API via langchain_openaiSRC 1
Unresolved
python calls: 446 unresolved · e.g. Path(__file__).resolve, client.trace, ingestor.ingest_skill
python imports: 6 unresolved · e.g. huggingface_hub, pytest, transformers
python references: 3 unresolved · e.g. huggingface_hub, transformers
component 2solid arrows are imports (count on hover)every box and arrow cites a source line; click one
click a box for its passport; double-click it, or its ›, to open it in place (keyboard: Enter, Shift+Enter); shift-click two boxes for a path; a legend swatch mutes a kind
Guided views 0 / 5Explore this system
01api6 boxes
02milvus-standalone5 boxes
03attu2 boxes
04etcd2 boxes
05langfuse2 boxes
Deploy topology
1 backend, 4 services, 5 databases, 1 cloud
backend 1cloud 1database 5service 4dashed arrows carry their verb (some only in the passport)every box and arrow cites a source line; click one
Entry points
app/api: 6 routes · GET /conversations, GET /conversations/{thread_id:path}, GET /health …SRC 6
Data stores
Milvus via pymilvusSRC 1
Redis via redisSRC 1
SQLite via sqlite3SRC 1
langfuse-db (compose, postgres:16-alpine)SRC 1
… and 2 more
External APIs
OpenAI API via langchain_openaiSRC 1
Unresolved
python calls: 446 unresolved · e.g. Path(__file__).resolve, client.trace, ingestor.ingest_skill
python imports: 6 unresolved · e.g. huggingface_hub, pytest, transformers
python references: 3 unresolved · e.g. huggingface_hub, transformers
click a box for its passport; double-click it, or its ›, to open it in place (keyboard: Enter, Shift+Enter); shift-click two boxes for a path; a legend swatch mutes a kind
Guided views 0 / 1Explore this system
01api4 boxes
Module dependencies
8 modules, 19 dependencies
backend 1module 7solid arrows are imports (count on hover)every box and arrow cites a source line; click one
Entry points
app/api: 6 routes · GET /conversations, GET /conversations/{thread_id:path}, GET /health …SRC 6
Data stores
Milvus via pymilvusSRC 1
Redis via redisSRC 1
SQLite via sqlite3SRC 1
langfuse-db (compose, postgres:16-alpine)SRC 1
… and 2 more
External APIs
OpenAI API via langchain_openaiSRC 1
Unresolved
python calls: 446 unresolved · e.g. Path(__file__).resolve, client.trace, ingestor.ingest_skill
python imports: 6 unresolved · e.g. huggingface_hub, pytest, transformers
python references: 3 unresolved · e.g. huggingface_hub, transformers
click a box for its passport; double-click it, or its ›, to open it in place (keyboard: Enter, Shift+Enter); shift-click two boxes for a path; a legend swatch mutes a kind
Guided views 0 / 1Explore this system
01api5 boxes
app/api request flow
6 modules within 2 import hops; reachability, not call order; 5 lateral imports and 4 upstream imports not drawn
backend 1cloud 1database 3module 5solid arrows are imports (count on hover); dashed arrows carry their verbevery box and arrow cites a source line; click one
Entry points
app/api: 6 routes · GET /conversations, GET /conversations/{thread_id:path}, GET /health …SRC 6
Data stores
Milvus via pymilvusSRC 1
Redis via redisSRC 1
SQLite via sqlite3SRC 1
langfuse-db (compose, postgres:16-alpine)SRC 1
… and 2 more
External APIs
OpenAI API via langchain_openaiSRC 1
Unresolved
python calls: 446 unresolved · e.g. Path(__file__).resolve, client.trace, ingestor.ingest_skill
python imports: 6 unresolved · e.g. huggingface_hub, pytest, transformers
python references: 3 unresolved · e.g. huggingface_hub, transformers