Conversation
Greptile SummaryThis PR adds comprehensive planning documentation for overhauling the ModelFacade implementation by replacing LiteLLM with native provider adapters. The plans demonstrate thorough architectural design and include a feedback closure matrix addressing all reviewer concerns from previous iterations. Key Changes:
Strengths:
This is documentation-only with no code changes, establishing a solid foundation for future implementation work.
|
| Filename | Overview |
|---|---|
| plans/343/_review-model-facade-overhaul-plan.md | Aggregated review document with findings from code reviews (codex and opus), identifies contradictions and missing contracts in the implementation plans |
| plans/343/model-facade-overhaul-plan-step-1.md | Comprehensive migration plan for replacing LiteLLM with native adapters, includes feedback closure matrix addressing all reviewer findings |
| plans/343/model-facade-overhaul-plan-step-2-bedrock.md | Bedrock adapter implementation plan that extends Step 1 abstractions, isolated to adapter/mapper/auth layers |
Flowchart
%%{init: {'theme': 'neutral'}}%%
flowchart TD
A[ModelFacade Public API] --> B{Client Factory}
B -->|provider_type=openai| C[OpenAI Compatible Adapter]
B -->|provider_type=anthropic| D[Anthropic Adapter]
B -->|provider_type=bedrock| E[Bedrock Adapter - Step 2]
B -->|migration fallback| F[LiteLLM Bridge - Temporary]
C --> G[Throttle Manager]
D --> G
E --> G
F --> G
G --> H[Retry Engine]
H --> I[Provider HTTP APIs]
J[Canonical Types] -.defines.-> C
J -.defines.-> D
J -.defines.-> E
K[Auth Resolution] --> C
K --> D
K --> E
subgraph "Step 1 - Non-Bedrock"
C
D
F
end
subgraph "Step 2 - Bedrock"
E
L[Bedrock Mappers]
E --> L
L -->|claude/llama/nova/titan| M[AWS Bedrock Runtime]
end
style A fill:#4a9eff
style B fill:#ffa94d
style E fill:#51cf66
style F fill:#ff6b6b
Last reviewed commit: f945d5b
| | | | ||
| | +----------------------+ +-------------------------------+ | | ||
| | | Client Factory |-->| Adapter selected by | | | ||
| | | - provider_type | | provider_type | | |
There was a problem hiding this comment.
In this new layer, it would be nice if we can start making the move to rename provider_type. It is confusing to see {"provider": "openai", "provider_type": "openai"}
| - plans/343/model-facade-overhaul-plan-step-2-bedrock.md | ||
| --- | ||
|
|
||
| # Aggregated Plan Review (Agreed Feedback) |
There was a problem hiding this comment.
@nabinchha – "have your agent talk to my agent"
part of #343