9734eec63c
Generated by per-group subagents covering all 52 modules across: core (18), infrastructure (10), apps (5), interfaces (3), plugins (7), testing (9) Documentation format: - AsciiDoc (.adoc) files in docs/modules/<group>/ - PlantUML (.puml) files in docs/diagrams/ - .adoc files reference diagrams via include:: directives Each doc covers: purpose, responsibilities, non-responsibilities, key types, event flow, integration points, invariants, PlantUML diagram, known issues, and open questions.
74 lines
1.8 KiB
Plaintext
74 lines
1.8 KiB
Plaintext
@startuml
|
|
interface InferenceProvider
|
|
interface ProviderRegistry
|
|
interface InferenceRouter
|
|
interface RoutingStrategy
|
|
interface InferenceCancellationToken
|
|
interface Tokenizer
|
|
interface InferenceReducer
|
|
interface Projection
|
|
|
|
class DefaultInferenceRouter
|
|
class DefaultInferenceReducer
|
|
class InferenceProjector
|
|
class InferenceRepository
|
|
|
|
class InferenceRequest
|
|
class InferenceResponse
|
|
class InferenceState
|
|
class InferenceRecord
|
|
class GenerationConfig
|
|
class ToolCallRequest
|
|
class ToolDefinition
|
|
class ModelCapability
|
|
class CapabilityScore
|
|
class ProviderHealth
|
|
class FinishReason
|
|
class ResponseFormat
|
|
|
|
enum InferenceStatus
|
|
|
|
InferenceRouter <|.. DefaultInferenceRouter
|
|
RoutingStrategy <|-- (DefaultInferenceRouter uses)
|
|
InferenceProvider <|-- (DefaultInferenceRouter uses)
|
|
ProviderRegistry <|-- (DefaultInferenceRouter uses)
|
|
InferenceReducer <|.. DefaultInferenceReducer
|
|
Projection <|.. InferenceProjector
|
|
InferenceProjector --> InferenceReducer
|
|
InferenceRepository --> InferenceProjector
|
|
|
|
DefaultInferenceRouter --> RoutingStrategy
|
|
DefaultInferenceRouter --> ProviderRegistry
|
|
InferenceRequest --> GenerationConfig
|
|
InferenceRequest --> "contextPack" ContextPack
|
|
InferenceRequest --> "tools" ToolDefinition
|
|
InferenceResponse --> "toolCalls" ToolCallRequest
|
|
InferenceResponse --> FinishReason
|
|
InferenceProvider --> Tokenizer
|
|
InferenceRecord --> InferenceStatus
|
|
|
|
package "core:events" <<External>> {
|
|
[InferenceStartedEvent]
|
|
[InferenceCompletedEvent]
|
|
[InferenceFailedEvent]
|
|
[InferenceTimeoutEvent]
|
|
}
|
|
package "core:context" <<External>> {
|
|
[ContextPack]
|
|
}
|
|
package "core:artifacts" <<External>> {
|
|
[JsonSchema]
|
|
}
|
|
package "core:sessions" <<External>> {
|
|
[Projection]
|
|
[EventReplayer]
|
|
}
|
|
|
|
DefaultInferenceReducer ..> "core:events"
|
|
InferenceRepository ..> "core:events"
|
|
InferenceRepository ..> "core:sessions"
|
|
InferenceRequest ..> "core:context"
|
|
ResponseFormat.Json ..> "core:artifacts"
|
|
|
|
@enduml
|