You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
-13Lines changed: 0 additions & 13 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -178,19 +178,6 @@ Ten reasons to add ModelMesh to your next project.
178
178
|**9**|**Production-grade observability without extra plumbing**|**[Observability Connectors](docs/guides/FAQ.md#9-what-observability-does-modelmesh-provide)**| Pre-built sinks for console, file, JSON-log, Prometheus, and webhooks. Structured traces across routing, failover, and budget events. Plug in custom callbacks for existing dashboards |
179
179
|**10**|**When pre-built doesn't fit, extend without forking**|**[CDK](docs/guides/FAQ.md#10-what-if-the-pre-built-connectors-dont-cover-my-use-case)**| Base classes for providers, rotation policies, secret stores, storage backends, and observability sinks. Inherit, override what you need, ship as a reusable package |
180
180
181
-
## Key Features
182
-
183
-
| Feature | Description |
184
-
|---|---|
185
-
|**OpenAI-compatible**| Drop-in replacement for any OpenAI SDK client |
186
-
|**Multi-provider routing**| OpenAI, Anthropic, Gemini, Groq, and more |
187
-
|**Automatic failover**| Retry with backoff, then rotate to next model |
188
-
|**Free-tier aggregation**| Chain quotas across providers |
189
-
|**Capability-based pools**| Request tasks, not specific providers |
190
-
|**8 rotation strategies**| Stick-until-failure, cost-first, latency-first, round-robin, and more |
191
-
|**Pluggable connectors**| Extend any integration point with the CDK |
192
-
|**Zero dependencies**| Core library has no external dependencies |
|**Built-in test mocking**|`mock_client()` / `mockClient()` for unit testing without APIs |
182
-
|**Usage & budget tracking**| Real-time cost, token, and budget monitoring via `client.usage`|
183
-
|**Capability discovery**| Search, resolve, and explore capabilities without memorizing paths |
184
-
|**Routing explanation**| Debug routing decisions with `client.explain()` dry-run API |
185
-
|**Pluggable connectors**| Extend any integration point with the CDK |
186
-
|**Zero dependencies**| Core library has no external dependencies |
171
+
Ten reasons to add ModelMesh to your next project.
172
+
173
+
| # | Value | Feature | How It Delivers |
174
+
|---|---|---|---|
175
+
|**1**|**Integrate in two minutes, scale the configuration as you grow**|**[Progressive Configuration](guides/FAQ.html#1-how-quickly-can-i-integrate-modelmesh-into-my-project)**|**Env vars** for instant start. **YAML** for providers, pools, strategies, budgets, secrets. **Programmatic** for dynamic setups. All three compose seamlessly |
176
+
|**2**|**One familiar API across every provider you will ever use**|**[Uniform OpenAI-Compatible API](guides/FAQ.html#2-do-i-need-to-learn-a-new-api)**| Same `client.chat.completions.create()` for OpenAI, Anthropic, Gemini, DeepSeek, Mistral, Ollama, or custom models. Chat, embeddings, TTS, STT, image generation. Swap providers in config, never in code |
177
+
|**3**|**Chain free tiers so you never hit a quota wall**|**[Free-Tier Aggregation](guides/FAQ.html#3-how-does-free-tier-aggregation-work)**| Set free API keys, call `create("chat")`. The library detects providers, pools them by capability, and rotates silently when a quota exhausts. Your code sees one provider; ModelMesh manages the rotation |
178
+
|**4**|**Provider goes down, your app stays up**|**[Resilient Routing](guides/FAQ.html#4-what-happens-when-a-provider-goes-down)**| Multiple rotation strategies: cost-first, latency-first, round-robin, sticky, rate-limit-aware. On failure the router deactivates the model, selects the next candidate, and retries within the same request |
179
+
|**5**|**Request capabilities, not model names**|**[Capability Discovery](guides/FAQ.html#5-what-does-request-capabilities-not-model-names-mean)**| Ask for `"chat-completion"`, not `"gpt-4o"`. ModelMesh resolves to the best available model. New models appear, old ones deprecate, your code stays the same |
180
+
|**6**|**Spending caps enforced before the overage, not after**|**[Budget Enforcement](guides/FAQ.html#6-how-do-i-prevent-surprise-ai-bills)**| Real-time cost tracking per model and provider. Set daily or monthly limits in config. `BudgetExceededError` fires before the breaching request |
181
+
|**7**|**One library for Python backend, TypeScript frontend, Docker proxy**|**[Full-Stack Deployment](guides/FAQ.html#7-can-i-use-modelmesh-with-my-existing-stack)**|`pip install`, `npm install`, or `docker run`. Each exposes the same API with zero core dependencies. One config file drives all deployment modes |
182
+
|**8**|**Test AI code like regular code**|**[Mock Client and Testing](guides/FAQ.html#8-how-do-i-test-ai-code-without-burning-api-credits)**|`mock_client(responses=[...])` returns an identical API with zero network calls and millisecond execution. Typed exceptions carry structured metadata. `client.explain()` dry-runs routing decisions |
183
+
|**9**|**Production-grade observability without extra plumbing**|**[Observability Connectors](guides/FAQ.html#9-what-observability-does-modelmesh-provide)**| Pre-built sinks for console, file, JSON-log, Prometheus, and webhooks. Structured traces across routing, failover, and budget events. Plug in custom callbacks for existing dashboards |
184
+
|**10**|**When pre-built doesn't fit, extend without forking**|**[CDK](guides/FAQ.html#10-what-if-the-pre-built-connectors-dont-cover-my-use-case)**| Base classes for providers, rotation policies, secret stores, storage backends, and observability sinks. Inherit, override what you need, ship as a reusable package |
187
185
188
186
## Documentation
189
187
188
+
### Getting Started
189
+
190
+
| Document | Description |
191
+
|---|---|
192
+
|**[FAQ](guides/FAQ.html)**| Ten questions developers ask before adopting, each with a working code tutorial |
193
+
|**[Developer Quick Start](guides/QuickStart.html)**| Get productive in 5 minutes: all features walkthrough with cheat sheet |
194
+
195
+
### Core Concepts
196
+
190
197
| Document | Description |
191
198
|---|---|
192
199
|**[System Concept](SystemConcept.html)**| Architecture, design, and full feature overview |
193
200
|**[Model Capabilities](ModelCapabilities.html)**| Capability hierarchy tree and predefined pools |
194
201
|**[System Configuration](SystemConfiguration.html)**| Full YAML configuration reference |
195
202
|**[Connector Catalogue](ConnectorCatalogue.html)**| All pre-shipped connectors with config schemas |
196
-
|**[Connector Interfaces](ConnectorInterfaces.html)**| Interface definitions for all connector types |
197
-
|**[System Services](SystemServices.html)**| Runtime objects: Router, Pool, Model, State |
198
203
199
-
### Guides
204
+
### Developer Guides
200
205
201
206
| Document | Description |
202
207
|---|---|
203
-
|**[FAQ](guides/FAQ.html)**| Ten questions developers ask before adopting, each with a working code tutorial |
204
-
|**[Developer Quick Start](guides/QuickStart.html)**| Get productive in 5 minutes: all features walkthrough with cheat sheet |
0 commit comments