Files
eveAI/documentation/interaction_domain.mermaid
Josako f3a243698c - Introduction of PARTNER_RAG retriever, PARTNER_RAG_SPECIALIST and linked Agent and Task, to support documentation inquiries in the management app (eveai_app)
- Addition of a tenant_partner_services view to show partner services from the viewpoint of a tenant
- Addition of domain model diagrams
- Addition of license_periods views and form
2025-07-16 21:24:08 +02:00

211 lines
4.8 KiB
Plaintext

erDiagram
CHAT_SESSION {
int id PK
int user_id FK
string session_id
datetime session_start
datetime session_end
string timezone
}
SPECIALIST {
int id PK
string name
text description
string type
string type_version
boolean tuning
jsonb configuration
jsonb arguments
boolean active
datetime created_at
int created_by FK
datetime updated_at
int updated_by FK
}
EVE_AI_ASSET {
int id PK
string name
text description
string type
string type_version
string bucket_name
string object_name
string file_type
float file_size
jsonb user_metadata
jsonb system_metadata
jsonb configuration
int prompt_tokens
int completion_tokens
datetime created_at
int created_by FK
datetime updated_at
int updated_by FK
datetime last_used_at
}
EVE_AI_AGENT {
int id PK
int specialist_id FK
string name
text description
string type
string type_version
text role
text goal
text backstory
boolean tuning
jsonb configuration
jsonb arguments
datetime created_at
int created_by FK
datetime updated_at
int updated_by FK
}
EVE_AI_TASK {
int id PK
int specialist_id FK
string name
text description
string type
string type_version
text task_description
text expected_output
boolean tuning
jsonb configuration
jsonb arguments
jsonb context
boolean asynchronous
datetime created_at
int created_by FK
datetime updated_at
int updated_by FK
}
EVE_AI_TOOL {
int id PK
int specialist_id FK
string name
text description
string type
string type_version
boolean tuning
jsonb configuration
jsonb arguments
datetime created_at
int created_by FK
datetime updated_at
int updated_by FK
}
DISPATCHER {
int id PK
string name
text description
string type
string type_version
boolean tuning
jsonb configuration
jsonb arguments
datetime created_at
int created_by FK
datetime updated_at
int updated_by FK
}
INTERACTION {
int id PK
int chat_session_id FK
int specialist_id FK
jsonb specialist_arguments
jsonb specialist_results
string timezone
int appreciation
datetime question_at
datetime detailed_question_at
datetime answer_at
string processing_error
}
INTERACTION_EMBEDDING {
int interaction_id PK,FK
int embedding_id PK,FK
}
SPECIALIST_RETRIEVER {
int specialist_id PK,FK
int retriever_id PK,FK
}
SPECIALIST_DISPATCHER {
int specialist_id PK,FK
int dispatcher_id PK,FK
}
SPECIALIST_MAGIC_LINK {
int id PK
string name
text description
int specialist_id FK
int tenant_make_id FK
string magic_link_code
datetime valid_from
datetime valid_to
jsonb specialist_args
datetime created_at
int created_by FK
datetime updated_at
int updated_by FK
}
USER {
int id PK
string user_name
string email
}
TENANT_MAKE {
int id PK
string name
text description
}
RETRIEVER {
int id PK
string name
text description
}
EMBEDDING {
int id PK
string type
text chunk
}
%% Main conversation flow
USER ||--o{ CHAT_SESSION : "has many"
CHAT_SESSION ||--o{ INTERACTION : "has many"
SPECIALIST ||--o{ INTERACTION : "processes"
%% Specialist composition (EveAI components)
SPECIALIST ||--o{ EVE_AI_AGENT : "has many"
SPECIALIST ||--o{ EVE_AI_TASK : "has many"
SPECIALIST ||--o{ EVE_AI_TOOL : "has many"
%% Specialist connections
SPECIALIST ||--o{ SPECIALIST_RETRIEVER : "uses retrievers"
RETRIEVER ||--o{ SPECIALIST_RETRIEVER : "used by specialists"
SPECIALIST ||--o{ SPECIALIST_DISPATCHER : "uses dispatchers"
DISPATCHER ||--o{ SPECIALIST_DISPATCHER : "used by specialists"
%% Interaction results
INTERACTION ||--o{ INTERACTION_EMBEDDING : "references embeddings"
EMBEDDING ||--o{ INTERACTION_EMBEDDING : "used in interactions"
%% Magic links for specialist access
SPECIALIST ||--o{ SPECIALIST_MAGIC_LINK : "has magic links"
TENANT_MAKE ||--o{ SPECIALIST_MAGIC_LINK : "branded links"