liter_llm 1.5.0-arm64-darwin → 1.5.1-arm64-darwin
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 +4 -4
- data/README.md +113 -78
- data/lib/liter_llm/native.rb +1 -1
- data/lib/liter_llm/version.rb +2 -2
- data/lib/liter_llm.rb +1 -1
- data/lib/liter_llm_rb.bundle +0 -0
- data/sig/types.rbs +1 -1
- metadata +5 -2
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: 2333d3fc4457ff90bcc3ac1d5fe6c5ac865df90106c475e5ab372b3c9da77e9a
|
|
4
|
+
data.tar.gz: dd1f6473132f84c7934ffbddda0d9c460a68b5b625287b8cd2e2ea70956eed75
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 8202060cee316798e344bdfc30494a47c1ddb87f58241596a604d3c5f4d8820c3f644f05df47ce4da26cf2914215fd5ee7a6a3e910b44054feaab8121086ac07
|
|
7
|
+
data.tar.gz: 5fced01446bec00afff4d7d5e28495ca98cd7367acd87c2dfdc1ab9834fbe70ce67df1950dc43a9918045d804963f557b4278e0b5a30460e632d0d238c13ebaf
|
data/README.md
CHANGED
|
@@ -1,110 +1,136 @@
|
|
|
1
1
|
# Ruby
|
|
2
2
|
|
|
3
|
-
<div
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
3
|
+
<div
|
|
4
|
+
align="center"
|
|
5
|
+
style="display: flex; flex-wrap: wrap; gap: 8px; justify-content: center; margin: 20px 0"
|
|
6
|
+
>
|
|
7
|
+
<!-- Built with -->
|
|
8
|
+
<a href="https://github.com/kreuzberg-dev/alef">
|
|
9
|
+
<img
|
|
10
|
+
src="https://img.shields.io/badge/built%20with-alef%20%D7%90-007ec6"
|
|
11
|
+
alt="Built with alef"
|
|
12
|
+
/>
|
|
13
|
+
</a>
|
|
14
|
+
<!-- Language Bindings -->
|
|
15
|
+
<a href="https://crates.io/crates/liter-llm">
|
|
16
|
+
<img src="https://img.shields.io/crates/v/liter-llm?label=Rust&color=007ec6" alt="Rust" />
|
|
17
|
+
</a>
|
|
18
|
+
<a href="https://pypi.org/project/liter-llm/">
|
|
19
|
+
<img src="https://img.shields.io/pypi/v/liter-llm?label=Python&color=007ec6" alt="Python" />
|
|
20
|
+
</a>
|
|
21
|
+
<a href="https://www.npmjs.com/package/@kreuzberg/liter-llm">
|
|
22
|
+
<img
|
|
23
|
+
src="https://img.shields.io/npm/v/@kreuzberg/liter-llm?label=Node.js&color=007ec6"
|
|
24
|
+
alt="Node.js"
|
|
25
|
+
/>
|
|
26
|
+
</a>
|
|
27
|
+
<a href="https://www.npmjs.com/package/@kreuzberg/liter-llm-wasm">
|
|
28
|
+
<img
|
|
29
|
+
src="https://img.shields.io/npm/v/@kreuzberg/liter-llm-wasm?label=WASM&color=007ec6"
|
|
30
|
+
alt="WASM"
|
|
31
|
+
/>
|
|
32
|
+
</a>
|
|
33
|
+
<a href="https://central.sonatype.com/artifact/dev.kreuzberg/liter-llm">
|
|
34
|
+
<img
|
|
35
|
+
src="https://img.shields.io/maven-central/v/dev.kreuzberg/liter-llm?label=Java&color=007ec6"
|
|
36
|
+
alt="Java"
|
|
37
|
+
/>
|
|
38
|
+
</a>
|
|
39
|
+
<a href="https://github.com/kreuzberg-dev/liter-llm/tree/main/packages/go">
|
|
40
|
+
<img
|
|
41
|
+
src="https://img.shields.io/github/v/tag/kreuzberg-dev/liter-llm?label=Go&color=007ec6"
|
|
42
|
+
alt="Go"
|
|
43
|
+
/>
|
|
44
|
+
</a>
|
|
45
|
+
<a href="https://www.nuget.org/packages/LiterLlm">
|
|
46
|
+
<img src="https://img.shields.io/nuget/v/LiterLlm?label=C%23&color=007ec6" alt="C#" />
|
|
47
|
+
</a>
|
|
48
|
+
<a href="https://packagist.org/packages/kreuzberg/liter-llm">
|
|
49
|
+
<img
|
|
50
|
+
src="https://img.shields.io/packagist/v/kreuzberg/liter-llm?label=PHP&color=007ec6"
|
|
51
|
+
alt="PHP"
|
|
52
|
+
/>
|
|
53
|
+
</a>
|
|
54
|
+
<a href="https://rubygems.org/gems/liter_llm">
|
|
55
|
+
<img src="https://img.shields.io/gem/v/liter_llm?label=Ruby&color=007ec6" alt="Ruby" />
|
|
56
|
+
</a>
|
|
57
|
+
<a href="https://hex.pm/packages/liter_llm">
|
|
58
|
+
<img src="https://img.shields.io/hexpm/v/liter_llm?label=Elixir&color=007ec6" alt="Elixir" />
|
|
59
|
+
</a>
|
|
60
|
+
<a href="https://github.com/kreuzberg-dev/liter-llm/pkgs/container/liter-llm">
|
|
61
|
+
<img
|
|
62
|
+
src="https://img.shields.io/badge/Docker-007ec6?logo=docker&logoColor=white"
|
|
63
|
+
alt="Docker"
|
|
64
|
+
/>
|
|
65
|
+
</a>
|
|
66
|
+
<a href="https://github.com/kreuzberg-dev/homebrew-tap/blob/main/Formula/liter-llm.rb">
|
|
67
|
+
<img
|
|
68
|
+
src="https://img.shields.io/badge/Homebrew-007ec6?logo=homebrew&logoColor=white"
|
|
69
|
+
alt="Homebrew"
|
|
70
|
+
/>
|
|
71
|
+
</a>
|
|
72
|
+
<a href="https://github.com/kreuzberg-dev/liter-llm/tree/main/crates/liter-llm-ffi">
|
|
73
|
+
<img src="https://img.shields.io/badge/C-FFI-007ec6" alt="C FFI" />
|
|
74
|
+
</a>
|
|
75
|
+
|
|
76
|
+
<!-- Project Info -->
|
|
77
|
+
<a href="https://github.com/kreuzberg-dev/liter-llm/blob/main/LICENSE">
|
|
78
|
+
<img src="https://img.shields.io/badge/License-MIT-007ec6" alt="License" />
|
|
79
|
+
</a>
|
|
80
|
+
<a href="https://docs.liter-llm.kreuzberg.dev">
|
|
81
|
+
<img src="https://img.shields.io/badge/docs-kreuzberg.dev-007ec6" alt="Docs" />
|
|
82
|
+
</a>
|
|
56
83
|
</div>
|
|
57
|
-
<div align="center" style="margin:
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
84
|
+
<div align="center" style="margin: 20px 0">
|
|
85
|
+
<picture>
|
|
86
|
+
<img
|
|
87
|
+
width="100%"
|
|
88
|
+
alt="kreuzberg.dev"
|
|
89
|
+
src="https://github.com/user-attachments/assets/1b6c6ad7-3b6d-4171-b1c9-f2026cc9deb8"
|
|
90
|
+
/>
|
|
91
|
+
</picture>
|
|
64
92
|
</div>
|
|
65
|
-
<div align="center" style="
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
93
|
+
<div align="center" style="margin-bottom: 20px">
|
|
94
|
+
<a href="https://discord.gg/xt9WY3GnKR">
|
|
95
|
+
<img
|
|
96
|
+
height="22"
|
|
97
|
+
src="https://img.shields.io/badge/Discord-Join%20our%20community-7289da?logo=discord&logoColor=white"
|
|
98
|
+
alt="Discord"
|
|
99
|
+
/>
|
|
100
|
+
</a>
|
|
73
101
|
</div>
|
|
74
102
|
|
|
75
103
|
Universal LLM API client for Ruby. Access 143+ LLM providers through a single interface with idiomatic Ruby API and native performance.
|
|
76
104
|
|
|
77
|
-
## What This Package Provides
|
|
78
|
-
|
|
79
|
-
- **One provider surface** — chat, streaming, embeddings, images, audio, search, OCR, tools, and structured output across the provider registry.
|
|
80
|
-
- **Provider/model routing** — call models with the `provider/model` convention and keep provider-specific request code out of application paths.
|
|
81
|
-
- **Production controls** — retries, fallback, rate limits, cache layers, budgets, health checks, OpenTelemetry spans, and redacted secrets.
|
|
82
|
-
- **Same core as every binding** — Rust, Python, Node.js, Go, Java, PHP, Ruby, .NET, Elixir, WASM, Kotlin Android, Swift, Dart, Zig, and C FFI use the same Rust implementation.
|
|
83
|
-
- **Ruby package** — native extension with idiomatic Ruby request and response objects.
|
|
84
|
-
|
|
85
105
|
## Installation
|
|
86
106
|
|
|
87
107
|
### Package Installation
|
|
88
108
|
|
|
109
|
+
|
|
89
110
|
Install via one of the supported package managers:
|
|
90
111
|
|
|
112
|
+
|
|
91
113
|
**gem:**
|
|
92
114
|
|
|
93
115
|
```bash
|
|
94
116
|
gem install liter_llm
|
|
95
117
|
```
|
|
96
118
|
|
|
119
|
+
|
|
97
120
|
**Bundler:**
|
|
98
121
|
|
|
99
122
|
```ruby
|
|
100
123
|
gem 'liter_llm'
|
|
101
124
|
```
|
|
102
125
|
|
|
126
|
+
|
|
103
127
|
### System Requirements
|
|
104
128
|
|
|
129
|
+
|
|
105
130
|
- **Ruby 3.2+** required
|
|
106
131
|
- API keys via environment variables (e.g. `OPENAI_API_KEY`, `ANTHROPIC_API_KEY`)
|
|
107
132
|
|
|
133
|
+
|
|
108
134
|
## Quick Start
|
|
109
135
|
|
|
110
136
|
### Basic Chat
|
|
@@ -130,6 +156,7 @@ puts result.choices[0].message.content
|
|
|
130
156
|
|
|
131
157
|
### Common Use Cases
|
|
132
158
|
|
|
159
|
+
|
|
133
160
|
#### Streaming Responses
|
|
134
161
|
|
|
135
162
|
Stream tokens in real time:
|
|
@@ -154,11 +181,13 @@ end
|
|
|
154
181
|
puts
|
|
155
182
|
```
|
|
156
183
|
|
|
184
|
+
|
|
157
185
|
### Next Steps
|
|
158
186
|
|
|
159
187
|
- **[Provider Registry](https://github.com/kreuzberg-dev/liter-llm/blob/main/schemas/providers.json)** - Full list of supported providers
|
|
160
188
|
- **[GitHub Repository](https://github.com/kreuzberg-dev/liter-llm)** - Source, issues, and discussions
|
|
161
189
|
|
|
190
|
+
|
|
162
191
|
## Features
|
|
163
192
|
|
|
164
193
|
### Supported Providers (143+)
|
|
@@ -184,8 +213,12 @@ Route to any provider using the `provider/model` prefix convention:
|
|
|
184
213
|
- **Provider Routing** -- Single client for 143+ LLM providers via `provider/model` prefix
|
|
185
214
|
- **Local LLMs** — Connect to locally-hosted models via Ollama, LM Studio, vLLM, llama.cpp, and other local inference servers
|
|
186
215
|
- **Unified API** -- Consistent `chat`, `chat_stream`, `embeddings`, `list_models` interface
|
|
216
|
+
|
|
187
217
|
- **Streaming** -- Real-time token streaming via `chat_stream`
|
|
218
|
+
|
|
219
|
+
|
|
188
220
|
- **Tool Calling** -- Function calling and tool use across all supporting providers
|
|
221
|
+
|
|
189
222
|
- **Type Safe** -- Schema-driven types compiled from JSON schemas
|
|
190
223
|
- **Secure** -- API keys never logged or serialized, managed via environment variables
|
|
191
224
|
- **Observability** -- Built-in [OpenTelemetry](https://opentelemetry.io/docs/specs/semconv/gen-ai/) with GenAI semantic conventions
|
|
@@ -200,6 +233,7 @@ Built on a compiled Rust core for speed and safety:
|
|
|
200
233
|
- **Zero-copy streaming** with SSE and AWS EventStream support
|
|
201
234
|
- **API keys** wrapped in secure memory, zeroed on drop
|
|
202
235
|
|
|
236
|
+
|
|
203
237
|
## Provider Routing
|
|
204
238
|
|
|
205
239
|
Route to 143+ providers using the `provider/model` prefix convention:
|
|
@@ -213,6 +247,7 @@ mistral/mistral-large-latest
|
|
|
213
247
|
|
|
214
248
|
See the [provider registry](https://github.com/kreuzberg-dev/liter-llm/blob/main/schemas/providers.json) for the full list.
|
|
215
249
|
|
|
250
|
+
|
|
216
251
|
## Proxy Server
|
|
217
252
|
|
|
218
253
|
liter-llm also ships as an OpenAI-compatible proxy server with Docker support:
|
|
@@ -221,7 +256,7 @@ liter-llm also ships as an OpenAI-compatible proxy server with Docker support:
|
|
|
221
256
|
docker run -p 4000:4000 -e LITER_LLM_MASTER_KEY=sk-your-key ghcr.io/kreuzberg-dev/liter-llm
|
|
222
257
|
```
|
|
223
258
|
|
|
224
|
-
See the [proxy server documentation](https://docs.liter-llm.kreuzberg.dev/server/proxy
|
|
259
|
+
See the [proxy server documentation](https://docs.liter-llm.kreuzberg.dev/server/proxy/) for configuration, CLI usage, and MCP integration.
|
|
225
260
|
|
|
226
261
|
## Documentation
|
|
227
262
|
|
|
@@ -231,7 +266,7 @@ See the [proxy server documentation](https://docs.liter-llm.kreuzberg.dev/server
|
|
|
231
266
|
|
|
232
267
|
## Part of Kreuzberg.dev
|
|
233
268
|
|
|
234
|
-
- [Kreuzberg](https://github.com/kreuzberg-dev/kreuzberg) — document intelligence: text, tables, metadata from
|
|
269
|
+
- [Kreuzberg](https://github.com/kreuzberg-dev/kreuzberg) — document intelligence: text, tables, metadata from 91+ formats with optional OCR.
|
|
235
270
|
- [Kreuzberg Cloud](https://github.com/kreuzberg-dev/kreuzberg-cloud) — managed extraction API with SDKs, dashboards, and observability.
|
|
236
271
|
- [kreuzcrawl](https://github.com/kreuzberg-dev/kreuzcrawl) — web crawling and scraping with HTML→Markdown and headless-Chrome fallback.
|
|
237
272
|
- [html-to-markdown](https://github.com/kreuzberg-dev/html-to-markdown) — fast, lossless HTML→Markdown engine.
|
data/lib/liter_llm/native.rb
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
# This file is auto-generated by alef — DO NOT EDIT.
|
|
2
|
-
# alef:hash:
|
|
2
|
+
# alef:hash:fe64a8a06beeb01b5344005fa07dcdfdf3e244d772ace0f89dbba84b0541ca2d
|
|
3
3
|
# To regenerate: alef generate
|
|
4
4
|
# To verify freshness: alef verify --exit-code
|
|
5
5
|
# frozen_string_literal: true
|
data/lib/liter_llm/version.rb
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
# This file is auto-generated by alef — DO NOT EDIT.
|
|
2
|
-
# alef:hash:
|
|
2
|
+
# alef:hash:fe64a8a06beeb01b5344005fa07dcdfdf3e244d772ace0f89dbba84b0541ca2d
|
|
3
3
|
# To regenerate: alef generate
|
|
4
4
|
# To verify freshness: alef verify --exit-code
|
|
5
5
|
# frozen_string_literal: true
|
|
6
6
|
|
|
7
7
|
module LiterLlm
|
|
8
8
|
## The version string for this package.
|
|
9
|
-
VERSION = "1.5.
|
|
9
|
+
VERSION = "1.5.1"
|
|
10
10
|
end
|
data/lib/liter_llm.rb
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
# This file is auto-generated by alef — DO NOT EDIT.
|
|
2
|
-
# alef:hash:
|
|
2
|
+
# alef:hash:fe64a8a06beeb01b5344005fa07dcdfdf3e244d772ace0f89dbba84b0541ca2d
|
|
3
3
|
# To regenerate: alef generate
|
|
4
4
|
# To verify freshness: alef verify --exit-code
|
|
5
5
|
# frozen_string_literal: true
|
data/lib/liter_llm_rb.bundle
CHANGED
|
Binary file
|
data/sig/types.rbs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
# This file is auto-generated by alef — DO NOT EDIT.
|
|
2
|
-
# alef:hash:
|
|
2
|
+
# alef:hash:fe64a8a06beeb01b5344005fa07dcdfdf3e244d772ace0f89dbba84b0541ca2d
|
|
3
3
|
# To regenerate: alef generate
|
|
4
4
|
# To verify freshness: alef verify --exit-code
|
|
5
5
|
|
metadata
CHANGED
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: liter_llm
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.5.
|
|
4
|
+
version: 1.5.1
|
|
5
5
|
platform: arm64-darwin
|
|
6
6
|
authors:
|
|
7
7
|
- Na'aman Hirschfeld
|
|
8
8
|
autorequire:
|
|
9
9
|
bindir: bin
|
|
10
10
|
cert_chain: []
|
|
11
|
-
date: 2026-06-
|
|
11
|
+
date: 2026-06-13 00:00:00.000000000 Z
|
|
12
12
|
dependencies:
|
|
13
13
|
- !ruby/object:Gem::Dependency
|
|
14
14
|
name: sorbet-runtime
|
|
@@ -53,6 +53,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
|
53
53
|
- - ">="
|
|
54
54
|
- !ruby/object:Gem::Version
|
|
55
55
|
version: 3.2.0
|
|
56
|
+
- - "<"
|
|
57
|
+
- !ruby/object:Gem::Version
|
|
58
|
+
version: '4.0'
|
|
56
59
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
|
57
60
|
requirements:
|
|
58
61
|
- - ">="
|