liter_llm 1.0.0.pre.rc.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/README.md +239 -0
- data/ext/liter_llm_rb/extconf.rb +65 -0
- data/ext/liter_llm_rb/native/.cargo/config.toml +23 -0
- data/ext/liter_llm_rb/native/Cargo.lock +3713 -0
- data/ext/liter_llm_rb/native/Cargo.toml +32 -0
- data/ext/liter_llm_rb/native/build.rs +15 -0
- data/ext/liter_llm_rb/native/src/lib.rs +1079 -0
- data/lib/liter_llm.rb +8 -0
- data/sig/liter_llm.rbs +416 -0
- data/vendor/Cargo.toml +54 -0
- data/vendor/liter-llm/Cargo.toml +92 -0
- data/vendor/liter-llm/README.md +252 -0
- data/vendor/liter-llm/schemas/pricing.json +40 -0
- data/vendor/liter-llm/schemas/providers.json +1662 -0
- data/vendor/liter-llm/src/auth/azure_ad.rs +264 -0
- data/vendor/liter-llm/src/auth/bedrock_sts.rs +353 -0
- data/vendor/liter-llm/src/auth/mod.rs +68 -0
- data/vendor/liter-llm/src/auth/vertex_oauth.rs +353 -0
- data/vendor/liter-llm/src/client/config.rs +351 -0
- data/vendor/liter-llm/src/client/managed.rs +622 -0
- data/vendor/liter-llm/src/client/mod.rs +864 -0
- data/vendor/liter-llm/src/cost.rs +212 -0
- data/vendor/liter-llm/src/error.rs +190 -0
- data/vendor/liter-llm/src/http/eventstream.rs +860 -0
- data/vendor/liter-llm/src/http/mod.rs +12 -0
- data/vendor/liter-llm/src/http/request.rs +438 -0
- data/vendor/liter-llm/src/http/retry.rs +72 -0
- data/vendor/liter-llm/src/http/streaming.rs +289 -0
- data/vendor/liter-llm/src/lib.rs +37 -0
- data/vendor/liter-llm/src/provider/anthropic.rs +2250 -0
- data/vendor/liter-llm/src/provider/azure.rs +579 -0
- data/vendor/liter-llm/src/provider/bedrock.rs +1543 -0
- data/vendor/liter-llm/src/provider/cohere.rs +654 -0
- data/vendor/liter-llm/src/provider/custom.rs +404 -0
- data/vendor/liter-llm/src/provider/google_ai.rs +281 -0
- data/vendor/liter-llm/src/provider/mistral.rs +188 -0
- data/vendor/liter-llm/src/provider/mod.rs +616 -0
- data/vendor/liter-llm/src/provider/vertex.rs +1504 -0
- data/vendor/liter-llm/src/tests.rs +1425 -0
- data/vendor/liter-llm/src/tokenizer.rs +281 -0
- data/vendor/liter-llm/src/tower/budget.rs +599 -0
- data/vendor/liter-llm/src/tower/cache.rs +502 -0
- data/vendor/liter-llm/src/tower/cache_opendal.rs +270 -0
- data/vendor/liter-llm/src/tower/cooldown.rs +231 -0
- data/vendor/liter-llm/src/tower/cost.rs +404 -0
- data/vendor/liter-llm/src/tower/fallback.rs +121 -0
- data/vendor/liter-llm/src/tower/health.rs +219 -0
- data/vendor/liter-llm/src/tower/hooks.rs +369 -0
- data/vendor/liter-llm/src/tower/mod.rs +77 -0
- data/vendor/liter-llm/src/tower/rate_limit.rs +300 -0
- data/vendor/liter-llm/src/tower/router.rs +436 -0
- data/vendor/liter-llm/src/tower/service.rs +181 -0
- data/vendor/liter-llm/src/tower/tests.rs +539 -0
- data/vendor/liter-llm/src/tower/tests_common.rs +252 -0
- data/vendor/liter-llm/src/tower/tracing.rs +209 -0
- data/vendor/liter-llm/src/tower/types.rs +170 -0
- data/vendor/liter-llm/src/types/audio.rs +52 -0
- data/vendor/liter-llm/src/types/batch.rs +77 -0
- data/vendor/liter-llm/src/types/chat.rs +214 -0
- data/vendor/liter-llm/src/types/common.rs +244 -0
- data/vendor/liter-llm/src/types/embedding.rs +84 -0
- data/vendor/liter-llm/src/types/files.rs +58 -0
- data/vendor/liter-llm/src/types/image.rs +40 -0
- data/vendor/liter-llm/src/types/mod.rs +27 -0
- data/vendor/liter-llm/src/types/models.rs +21 -0
- data/vendor/liter-llm/src/types/moderation.rs +80 -0
- data/vendor/liter-llm/src/types/ocr.rs +87 -0
- data/vendor/liter-llm/src/types/rerank.rs +46 -0
- data/vendor/liter-llm/src/types/responses.rs +55 -0
- data/vendor/liter-llm/src/types/search.rs +45 -0
- data/vendor/liter-llm/tests/contract.rs +332 -0
- data/vendor/liter-llm-ffi/Cargo.toml +30 -0
- data/vendor/liter-llm-ffi/build.rs +66 -0
- data/vendor/liter-llm-ffi/cbindgen.toml +60 -0
- data/vendor/liter-llm-ffi/liter_llm.h +850 -0
- data/vendor/liter-llm-ffi/src/lib.rs +2488 -0
- metadata +286 -0
|
@@ -0,0 +1,252 @@
|
|
|
1
|
+
# Rust
|
|
2
|
+
|
|
3
|
+
<div align="center" style="display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; margin: 20px 0;">
|
|
4
|
+
<!-- Language Bindings -->
|
|
5
|
+
<a href="https://crates.io/crates/liter-llm">
|
|
6
|
+
<img src="https://img.shields.io/crates/v/liter-llm?label=Rust&color=007ec6" alt="Rust">
|
|
7
|
+
</a>
|
|
8
|
+
<a href="https://pypi.org/project/liter-llm/">
|
|
9
|
+
<img src="https://img.shields.io/pypi/v/liter-llm?label=Python&color=007ec6" alt="Python">
|
|
10
|
+
</a>
|
|
11
|
+
<a href="https://www.npmjs.com/package/@kreuzberg/liter-llm">
|
|
12
|
+
<img src="https://img.shields.io/npm/v/@kreuzberg/liter-llm?label=Node.js&color=007ec6" alt="Node.js">
|
|
13
|
+
</a>
|
|
14
|
+
<a href="https://www.npmjs.com/package/@kreuzberg/liter-llm-wasm">
|
|
15
|
+
<img src="https://img.shields.io/npm/v/@kreuzberg/liter-llm-wasm?label=WASM&color=007ec6" alt="WASM">
|
|
16
|
+
</a>
|
|
17
|
+
<a href="https://central.sonatype.com/artifact/dev.kreuzberg/liter-llm">
|
|
18
|
+
<img src="https://img.shields.io/maven-central/v/dev.kreuzberg/liter-llm?label=Java&color=007ec6" alt="Java">
|
|
19
|
+
</a>
|
|
20
|
+
<a href="https://github.com/kreuzberg-dev/liter-llm/tree/main/packages/go">
|
|
21
|
+
<img src="https://img.shields.io/github/v/tag/kreuzberg-dev/liter-llm?label=Go&color=007ec6" alt="Go">
|
|
22
|
+
</a>
|
|
23
|
+
<a href="https://www.nuget.org/packages/LiterLlm">
|
|
24
|
+
<img src="https://img.shields.io/nuget/v/LiterLlm?label=C%23&color=007ec6" alt="C#">
|
|
25
|
+
</a>
|
|
26
|
+
<a href="https://packagist.org/packages/kreuzberg/liter-llm">
|
|
27
|
+
<img src="https://img.shields.io/packagist/v/kreuzberg/liter-llm?label=PHP&color=007ec6" alt="PHP">
|
|
28
|
+
</a>
|
|
29
|
+
<a href="https://rubygems.org/gems/liter_llm">
|
|
30
|
+
<img src="https://img.shields.io/gem/v/liter_llm?label=Ruby&color=007ec6" alt="Ruby">
|
|
31
|
+
</a>
|
|
32
|
+
<a href="https://hex.pm/packages/liter_llm">
|
|
33
|
+
<img src="https://img.shields.io/hexpm/v/liter_llm?label=Elixir&color=007ec6" alt="Elixir">
|
|
34
|
+
</a>
|
|
35
|
+
<a href="https://github.com/kreuzberg-dev/liter-llm/pkgs/container/liter-llm">
|
|
36
|
+
<img src="https://img.shields.io/badge/Docker-007ec6?logo=docker&logoColor=white" alt="Docker">
|
|
37
|
+
</a>
|
|
38
|
+
<a href="https://github.com/kreuzberg-dev/liter-llm/tree/main/crates/liter-llm-ffi">
|
|
39
|
+
<img src="https://img.shields.io/badge/C-FFI-007ec6" alt="C FFI">
|
|
40
|
+
</a>
|
|
41
|
+
|
|
42
|
+
<!-- Project Info -->
|
|
43
|
+
<a href="https://github.com/kreuzberg-dev/liter-llm/blob/main/LICENSE">
|
|
44
|
+
<img src="https://img.shields.io/badge/License-MIT-007ec6" alt="License">
|
|
45
|
+
</a>
|
|
46
|
+
<a href="https://docs.liter-llm.kreuzberg.dev">
|
|
47
|
+
<img src="https://img.shields.io/badge/docs-kreuzberg.dev-007ec6" alt="Docs">
|
|
48
|
+
</a>
|
|
49
|
+
</div>
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
<div align="center" style="margin: 20px 0;">
|
|
53
|
+
<picture>
|
|
54
|
+
<img width="100%" alt="kreuzberg.dev" src="https://github.com/user-attachments/assets/1b6c6ad7-3b6d-4171-b1c9-f2026cc9deb8" />
|
|
55
|
+
</picture>
|
|
56
|
+
</div>
|
|
57
|
+
|
|
58
|
+
|
|
59
|
+
<div align="center" style="margin-bottom: 20px;">
|
|
60
|
+
<a href="https://discord.gg/xt9WY3GnKR">
|
|
61
|
+
<img height="22" src="https://img.shields.io/badge/Discord-Join%20our%20community-7289da?logo=discord&logoColor=white" alt="Discord">
|
|
62
|
+
</a>
|
|
63
|
+
</div>
|
|
64
|
+
|
|
65
|
+
|
|
66
|
+
Universal LLM API client for Rust. Access 142+ LLM providers — OpenAI, Anthropic, Groq, Mistral, and more — through a single unified interface. Async/await with Tokio, streaming via BoxStream, composable Tower middleware stack, and compile-time type safety.
|
|
67
|
+
|
|
68
|
+
|
|
69
|
+
## Installation
|
|
70
|
+
|
|
71
|
+
### Package Installation
|
|
72
|
+
|
|
73
|
+
|
|
74
|
+
|
|
75
|
+
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
### System Requirements
|
|
79
|
+
|
|
80
|
+
|
|
81
|
+
- See [Installation Guide](https://github.com/kreuzberg-dev/liter-llm#installation) for requirements
|
|
82
|
+
|
|
83
|
+
|
|
84
|
+
|
|
85
|
+
## Quick Start
|
|
86
|
+
|
|
87
|
+
### Basic Chat
|
|
88
|
+
|
|
89
|
+
Send a message to any provider using the `provider/model` prefix:
|
|
90
|
+
|
|
91
|
+
```rust
|
|
92
|
+
use liter_llm::{
|
|
93
|
+
ChatCompletionRequest, ClientConfigBuilder, DefaultClient, LlmClient,
|
|
94
|
+
Message, UserContent, UserMessage,
|
|
95
|
+
};
|
|
96
|
+
|
|
97
|
+
#[tokio::main]
|
|
98
|
+
async fn main() -> Result<(), Box<dyn std::error::Error>> {
|
|
99
|
+
let config = ClientConfigBuilder::new(std::env::var("OPENAI_API_KEY")?)
|
|
100
|
+
.build();
|
|
101
|
+
let client = DefaultClient::new(config, Some("openai/gpt-4o"))?;
|
|
102
|
+
|
|
103
|
+
let request = ChatCompletionRequest {
|
|
104
|
+
model: "openai/gpt-4o".into(),
|
|
105
|
+
messages: vec![Message::User(UserMessage {
|
|
106
|
+
content: UserContent::Text("Hello!".into()),
|
|
107
|
+
name: None,
|
|
108
|
+
})],
|
|
109
|
+
..Default::default()
|
|
110
|
+
};
|
|
111
|
+
|
|
112
|
+
let response = client.chat(request).await?;
|
|
113
|
+
if let Some(choice) = response.choices.first() {
|
|
114
|
+
println!("{}", choice.message.content.as_deref().unwrap_or(""));
|
|
115
|
+
}
|
|
116
|
+
Ok(())
|
|
117
|
+
}
|
|
118
|
+
```
|
|
119
|
+
|
|
120
|
+
|
|
121
|
+
### Common Use Cases
|
|
122
|
+
|
|
123
|
+
|
|
124
|
+
#### Streaming Responses
|
|
125
|
+
|
|
126
|
+
Stream tokens in real time:
|
|
127
|
+
|
|
128
|
+
```rust
|
|
129
|
+
use futures::StreamExt;
|
|
130
|
+
use liter_llm::{
|
|
131
|
+
ChatCompletionRequest, ClientConfigBuilder, DefaultClient, LlmClient,
|
|
132
|
+
Message, UserContent, UserMessage,
|
|
133
|
+
};
|
|
134
|
+
|
|
135
|
+
#[tokio::main]
|
|
136
|
+
async fn main() -> Result<(), Box<dyn std::error::Error>> {
|
|
137
|
+
let config = ClientConfigBuilder::new(std::env::var("OPENAI_API_KEY")?)
|
|
138
|
+
.build();
|
|
139
|
+
let client = DefaultClient::new(config, Some("openai/gpt-4o"))?;
|
|
140
|
+
|
|
141
|
+
let request = ChatCompletionRequest {
|
|
142
|
+
model: "openai/gpt-4o".into(),
|
|
143
|
+
messages: vec![Message::User(UserMessage {
|
|
144
|
+
content: UserContent::Text("Tell me a story".into()),
|
|
145
|
+
name: None,
|
|
146
|
+
})],
|
|
147
|
+
..Default::default()
|
|
148
|
+
};
|
|
149
|
+
|
|
150
|
+
let mut stream = client.chat_stream(request).await?;
|
|
151
|
+
while let Some(chunk) = stream.next().await {
|
|
152
|
+
let chunk = chunk?;
|
|
153
|
+
if let Some(choice) = chunk.choices.first() {
|
|
154
|
+
if let Some(content) = &choice.delta.content {
|
|
155
|
+
print!("{content}");
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
println!();
|
|
160
|
+
Ok(())
|
|
161
|
+
}
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
|
|
165
|
+
|
|
166
|
+
|
|
167
|
+
|
|
168
|
+
### Next Steps
|
|
169
|
+
|
|
170
|
+
- **[Provider Registry](https://github.com/kreuzberg-dev/liter-llm/blob/main/schemas/providers.json)** - Full list of supported providers
|
|
171
|
+
- **[GitHub Repository](https://github.com/kreuzberg-dev/liter-llm)** - Source, issues, and discussions
|
|
172
|
+
|
|
173
|
+
|
|
174
|
+
|
|
175
|
+
## Features
|
|
176
|
+
|
|
177
|
+
### Supported Providers (142+)
|
|
178
|
+
|
|
179
|
+
Route to any provider using the `provider/model` prefix convention:
|
|
180
|
+
|
|
181
|
+
| Provider | Example Model |
|
|
182
|
+
|----------|--------------|
|
|
183
|
+
| **OpenAI** | `openai/gpt-4o`, `openai/gpt-4o-mini` |
|
|
184
|
+
| **Anthropic** | `anthropic/claude-3-5-sonnet-20241022` |
|
|
185
|
+
| **Groq** | `groq/llama-3.1-70b-versatile` |
|
|
186
|
+
| **Mistral** | `mistral/mistral-large-latest` |
|
|
187
|
+
| **Cohere** | `cohere/command-r-plus` |
|
|
188
|
+
| **Together AI** | `together/meta-llama/Meta-Llama-3.1-70B-Instruct-Turbo` |
|
|
189
|
+
| **Fireworks** | `fireworks/accounts/fireworks/models/llama-v3p1-70b-instruct` |
|
|
190
|
+
| **Google Vertex** | `vertexai/gemini-1.5-pro` |
|
|
191
|
+
| **Amazon Bedrock** | `bedrock/anthropic.claude-3-5-sonnet-20241022-v2:0` |
|
|
192
|
+
|
|
193
|
+
**[Complete Provider List](https://github.com/kreuzberg-dev/liter-llm/blob/main/schemas/providers.json)**
|
|
194
|
+
|
|
195
|
+
### Key Capabilities
|
|
196
|
+
|
|
197
|
+
- **Provider Routing** -- Single client for 142+ LLM providers via `provider/model` prefix
|
|
198
|
+
- **Unified API** -- Consistent `chat`, `chat_stream`, `embeddings`, `list_models` interface
|
|
199
|
+
|
|
200
|
+
- **Streaming** -- Real-time token streaming via `chat_stream`
|
|
201
|
+
|
|
202
|
+
|
|
203
|
+
- **Tool Calling** -- Function calling and tool use across all supporting providers
|
|
204
|
+
|
|
205
|
+
- **Type Safe** -- Schema-driven types compiled from JSON schemas
|
|
206
|
+
- **Secure** -- API keys never logged or serialized, managed via environment variables
|
|
207
|
+
- **Observability** -- Built-in [OpenTelemetry](https://opentelemetry.io/docs/specs/semconv/gen-ai/) with GenAI semantic conventions
|
|
208
|
+
- **Error Handling** -- Structured errors with provider context and retry hints
|
|
209
|
+
|
|
210
|
+
### Performance
|
|
211
|
+
|
|
212
|
+
Built on a compiled Rust core for speed and safety:
|
|
213
|
+
|
|
214
|
+
- **Provider resolution** at client construction -- zero per-request overhead
|
|
215
|
+
- **Configurable timeouts** and connection pooling
|
|
216
|
+
- **Zero-copy streaming** with SSE and AWS EventStream support
|
|
217
|
+
- **API keys** wrapped in secure memory, zeroed on drop
|
|
218
|
+
|
|
219
|
+
|
|
220
|
+
|
|
221
|
+
## Provider Routing
|
|
222
|
+
|
|
223
|
+
Route to 142+ providers using the `provider/model` prefix convention:
|
|
224
|
+
|
|
225
|
+
```text
|
|
226
|
+
openai/gpt-4o
|
|
227
|
+
anthropic/claude-3-5-sonnet-20241022
|
|
228
|
+
groq/llama-3.1-70b-versatile
|
|
229
|
+
mistral/mistral-large-latest
|
|
230
|
+
```
|
|
231
|
+
|
|
232
|
+
See the [provider registry](https://github.com/kreuzberg-dev/liter-llm/blob/main/schemas/providers.json) for the full list.
|
|
233
|
+
|
|
234
|
+
|
|
235
|
+
|
|
236
|
+
## Documentation
|
|
237
|
+
|
|
238
|
+
- **[Documentation](https://docs.liter-llm.kreuzberg.dev)** -- Full docs and API reference
|
|
239
|
+
- **[GitHub Repository](https://github.com/kreuzberg-dev/liter-llm)** -- Source, issues, and discussions
|
|
240
|
+
- **[Provider Registry](https://github.com/kreuzberg-dev/liter-llm/blob/main/schemas/providers.json)** -- 142 supported providers
|
|
241
|
+
|
|
242
|
+
Part of [kreuzberg.dev](https://kreuzberg.dev).
|
|
243
|
+
|
|
244
|
+
## Contributing
|
|
245
|
+
|
|
246
|
+
Contributions are welcome! See [CONTRIBUTING.md](https://github.com/kreuzberg-dev/liter-llm/blob/main/CONTRIBUTING.md) for guidelines.
|
|
247
|
+
|
|
248
|
+
Join our [Discord community](https://discord.gg/xt9WY3GnKR) for questions and discussion.
|
|
249
|
+
|
|
250
|
+
## License
|
|
251
|
+
|
|
252
|
+
MIT -- see [LICENSE](https://github.com/kreuzberg-dev/liter-llm/blob/main/LICENSE) for details.
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$comment": "Model pricing data derived from litellm (MIT License, Copyright 2023 Berri AI). Prices in USD per token. Source: https://github.com/BerriAI/litellm",
|
|
3
|
+
"models": {
|
|
4
|
+
"gpt-4": { "input_cost_per_token": 0.00003, "output_cost_per_token": 0.00006 },
|
|
5
|
+
"gpt-4-turbo": { "input_cost_per_token": 0.00001, "output_cost_per_token": 0.00003 },
|
|
6
|
+
"gpt-4o": { "input_cost_per_token": 0.0000025, "output_cost_per_token": 0.00001 },
|
|
7
|
+
"gpt-4o-mini": { "input_cost_per_token": 0.00000015, "output_cost_per_token": 0.0000006 },
|
|
8
|
+
"gpt-3.5-turbo": { "input_cost_per_token": 0.0000005, "output_cost_per_token": 0.0000015 },
|
|
9
|
+
"o1": { "input_cost_per_token": 0.000015, "output_cost_per_token": 0.00006 },
|
|
10
|
+
"o3": { "input_cost_per_token": 0.000002, "output_cost_per_token": 0.000008 },
|
|
11
|
+
"o3-mini": { "input_cost_per_token": 0.0000011, "output_cost_per_token": 0.0000044 },
|
|
12
|
+
"claude-3-haiku-20240307": { "input_cost_per_token": 0.00000025, "output_cost_per_token": 0.00000125 },
|
|
13
|
+
"claude-3-opus-20240229": { "input_cost_per_token": 0.000015, "output_cost_per_token": 0.000075 },
|
|
14
|
+
"claude-3-7-sonnet-20250219": { "input_cost_per_token": 0.000003, "output_cost_per_token": 0.000015 },
|
|
15
|
+
"claude-haiku-4-5": { "input_cost_per_token": 0.000001, "output_cost_per_token": 0.000005 },
|
|
16
|
+
"claude-haiku-4-5-20251001": { "input_cost_per_token": 0.000001, "output_cost_per_token": 0.000005 },
|
|
17
|
+
"claude-sonnet-4-5": { "input_cost_per_token": 0.000003, "output_cost_per_token": 0.000015 },
|
|
18
|
+
"claude-sonnet-4-5-20250929": { "input_cost_per_token": 0.000003, "output_cost_per_token": 0.000015 },
|
|
19
|
+
"claude-sonnet-4-6": { "input_cost_per_token": 0.000003, "output_cost_per_token": 0.000015 },
|
|
20
|
+
"claude-4-sonnet-20250514": { "input_cost_per_token": 0.000003, "output_cost_per_token": 0.000015 },
|
|
21
|
+
"claude-sonnet-4-20250514": { "input_cost_per_token": 0.000003, "output_cost_per_token": 0.000015 },
|
|
22
|
+
"claude-opus-4-1": { "input_cost_per_token": 0.000015, "output_cost_per_token": 0.000075 },
|
|
23
|
+
"claude-opus-4-5": { "input_cost_per_token": 0.000005, "output_cost_per_token": 0.000025 },
|
|
24
|
+
"claude-opus-4-6": { "input_cost_per_token": 0.000005, "output_cost_per_token": 0.000025 },
|
|
25
|
+
"claude-4-opus-20250514": { "input_cost_per_token": 0.000015, "output_cost_per_token": 0.000075 },
|
|
26
|
+
"gemini-2.0-flash": { "input_cost_per_token": 0.0000001, "output_cost_per_token": 0.0000004 },
|
|
27
|
+
"gemini-2.0-flash-lite": { "input_cost_per_token": 0.000000075, "output_cost_per_token": 0.0000003 },
|
|
28
|
+
"gemini-2.5-flash": { "input_cost_per_token": 0.0000003, "output_cost_per_token": 0.0000025 },
|
|
29
|
+
"gemini-2.5-pro": { "input_cost_per_token": 0.00000125, "output_cost_per_token": 0.00001 },
|
|
30
|
+
"text-embedding-3-small": { "input_cost_per_token": 0.00000002, "output_cost_per_token": 0.0 },
|
|
31
|
+
"text-embedding-3-large": { "input_cost_per_token": 0.00000013, "output_cost_per_token": 0.0 },
|
|
32
|
+
"text-embedding-ada-002": { "input_cost_per_token": 0.0000001, "output_cost_per_token": 0.0 },
|
|
33
|
+
"deepseek/deepseek-chat": { "input_cost_per_token": 0.00000028, "output_cost_per_token": 0.00000042 },
|
|
34
|
+
"deepseek/deepseek-r1": { "input_cost_per_token": 0.00000055, "output_cost_per_token": 0.00000219 },
|
|
35
|
+
"mistral/mistral-large-latest": { "input_cost_per_token": 0.0000005, "output_cost_per_token": 0.0000015 },
|
|
36
|
+
"mistral/mistral-small-latest": { "input_cost_per_token": 0.00000006, "output_cost_per_token": 0.00000018 },
|
|
37
|
+
"groq/llama-3.1-8b-instant": { "input_cost_per_token": 0.00000005, "output_cost_per_token": 0.00000008 },
|
|
38
|
+
"groq/llama-3.3-70b-versatile": { "input_cost_per_token": 0.00000059, "output_cost_per_token": 0.00000079 }
|
|
39
|
+
}
|
|
40
|
+
}
|