Skip to content
Merged
Show file tree
Hide file tree
Changes from 2 commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion packages/lmi/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ dependencies = [
"coredis",
"fhaviary>=0.14.0", # For multi-image support
"limits>=4.8", # Pin for RedisBridge.key_prefix
"litellm>=1.63.5", # Lower pin for reasoning + streaming fix
"litellm>=1.75.6", # Lower pin for OpenAI reasoning effort support
"pydantic~=2.0,>=2.10.1",
"tiktoken>=0.4.0",
"typing-extensions; python_version <= '3.11'", # for typing.override
Expand Down
110 changes: 0 additions & 110 deletions packages/lmi/tests/cassettes/TestReasoning.test_anthropic_model.yaml

This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,118 @@
interactions:
- request:
body:
'{"model":"claude-3-7-sonnet-20250219","messages":[{"role":"user","content":[{"type":"text","text":"What
is the meaning of life?"}]}],"thinking":{"type":"enabled","budget_tokens":4096},"max_tokens":8192,"system":[{"type":"text","text":"Think
deeply about the following question and answer it."}]}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
anthropic-version:
- "2023-06-01"
connection:
- keep-alive
content-length:
- "295"
content-type:
- application/json
host:
- api.anthropic.com
user-agent:
- litellm/1.78.3
method: POST
uri: https://api.anthropic.com/v1/messages
response:
body:
string: !!binary |
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
2Y8f/wcAAP//AwCVT2Z/Tg4AAA==
headers:
CF-RAY:
- 99336b1bd8291742-SJC
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Type:
- application/json
Date:
- Thu, 23 Oct 2025 18:50:19 GMT
Server:
- cloudflare
Transfer-Encoding:
- chunked
Via:
- 1.1 google
X-Robots-Tag:
- none
anthropic-organization-id:
- f2c99ed9-038a-406f-9cb5-1f840b758a20
anthropic-ratelimit-input-tokens-limit:
- "20000000"
anthropic-ratelimit-input-tokens-remaining:
- "20000000"
anthropic-ratelimit-input-tokens-reset:
- "2025-10-23T18:50:09Z"
anthropic-ratelimit-output-tokens-limit:
- "2000000"
anthropic-ratelimit-output-tokens-remaining:
- "1999000"
anthropic-ratelimit-output-tokens-reset:
- "2025-10-23T18:50:19Z"
anthropic-ratelimit-requests-limit:
- "7000"
anthropic-ratelimit-requests-remaining:
- "6999"
anthropic-ratelimit-requests-reset:
- "2025-10-23T18:50:08Z"
anthropic-ratelimit-tokens-limit:
- "22000000"
anthropic-ratelimit-tokens-remaining:
- "21999000"
anthropic-ratelimit-tokens-reset:
- "2025-10-23T18:50:09Z"
cf-cache-status:
- DYNAMIC
request-id:
- req_011CUQdcX9gAmBe8qxd6k626
strict-transport-security:
- max-age=31536000; includeSubDomains; preload
x-envoy-upstream-service-time:
- "10343"
status:
code: 200
message: OK
version: 1
Original file line number Diff line number Diff line change
@@ -0,0 +1,128 @@
interactions:
- request:
body:
'{"messages":[{"role":"system","content":"Think deeply about the following
question and answer it."},{"role":"user","content":"What is the meaning of life?"}],"model":"gpt-5-2025-08-07","n":1,"reasoning_effort":"high"}'
headers:
accept:
- application/json
accept-encoding:
- gzip, deflate
connection:
- keep-alive
content-length:
- "217"
content-type:
- application/json
host:
- api.openai.com
user-agent:
- AsyncOpenAI/Python 2.5.0
x-stainless-arch:
- arm64
x-stainless-async:
- async:asyncio
x-stainless-lang:
- python
x-stainless-os:
- MacOS
x-stainless-package-version:
- 2.5.0
x-stainless-raw-response:
- "true"
x-stainless-read-timeout:
- "60.0"
x-stainless-retry-count:
- "0"
x-stainless-runtime:
- CPython
x-stainless-runtime-version:
- 3.12.8
method: POST
uri: https://api.openai.com/v1/chat/completions
response:
body:
string: !!binary |
H4sIAAAAAAAAA3RW244URwx936+w+gmk2WF3ybJk9olLQlBAWWAjgQJa1VS5p52tLrfKrhlGCInf
4Pf4ksjVc0OBl5G6fD8+tufTEUBDoZlB4zunvh/i8ZPr0r4dVk9fvb667t6++z3+FW+fv3q3XK66
/o9mYhY8/xe9bq2mnvshohKnUewzOkXzenrx4PTsl/P7D+9XQc8Bo5ktBj0+Pz47OTs/Pnl4fHKx
seuYPEozg3+OAAA+1V/LMAX82MzgZLJ96VHELbCZ7ZQAmszRXhonQqIuaTPZCz0nxVSTvu4QenSJ
0gK4hUgtAkn69uWrggOhtIgIrfMKK0datYqCdpgRlGGO0HJJ4RJIv335KuBgcKqYE6y5wFg93HEp
gHCPSj0KBBLPS8x3QbvMZdHBqnNaDSIvcbL/FM20tBB5AuZjK/j25WtGWFGMlpEyqLtFyCgDJ6E5
RdK1WU3hKbUtZkwKEZOgANs3hN2zS7LCLLP36X06hsfEkRfkXZyBlLwkSyfjkDkUj2MSgxMBTkCp
5dw76/XUbF9jpAVxkRncJl5VXasHnnG4BMG8RGBDTsAJuAT4ccgoQpwMerXaTL86e5RJlBUjuXTv
jTL5GUTDYklZCxeJ60toI5dM0u1w9J3LzivmES2SwH1197caJi6bt670Lm0+ZpDRKgMpBoihaZaU
rHOCsMIYj+dIaVHd/PaRxJhDLt5zcyk5kOjM6AAl0RKzGHtAKGLSy5ECHbNg9bphw5Zuu6S570kV
AzhvYEJAGUixuh2j1OCPSwhdjYdGp13C8zUIWoqQ0dXO+4gux/UYtESlpavUteF0FfCptftK1r6z
fq+hpRRkbMEuPaxPDIvMK2gz97OaBUZOC1O446NVljFWDkhHg9SQFS9IiAHD3YkZXZU8mO6dBbu4
iTMSok5FV8vANadQixaM7Wj4hG3SkrcZAlHO602S7hYFxCht3FlzyXV2R6vr7JJ4TGG07LnHpEZ9
cCucgDifMSQUmQBnCIgDGBNN+25F5hEMxiObA5B10g6FpJb/wgg9IA8Rq2FcT434hwjksXOimdMC
RSsmPYsaVOTmcaSVDHmzdDaIT8eCk2aaF8UtIFabATKFq6Jjpa5OOKEApYoj+QrDHswKEheNTlTM
qDp/Zp2kNM7QyEm5pRin8AJdTpMNQ8cx/8FKuYSICp3LwUoF6dyAkJ3NtEVMIF2mdLuL90bdGnjA
ZDRacQqYp/Dyu27UUIvslLQEi+ddpHm2ORkwy4BeabMS/rQ+ZVySbeUpvBxRE8AlxyWC85nFOOGE
k2yXeW3n88oQWLl0sNQF7Qh4nMELqkTcgDZuqHG8IKJsOe2KrieguWg32e82tI0APWfrl3dFcAxl
98GoOz28OxnbIs6uXioxHghcSqwjh+zifdhIPu9uXEuJpLvJtTi7W6I8NFX6+QjgQ72Z5bsz2AyZ
+0FvlG+xuj27GN01+xt9IDy9f74RK6uLh5IHZ5MfeLwJqI6iHNzdxjvfYdjb7o+0K4H4QHB0UN//
E/qR77F2Sou9l9OLX89+GmEv8B4HxXAzZAzkv697r5bR/sj8TG0Hdc252QzdjRJma0fA1pU4/slo
ZC2K/U1LaYHZplw3HT/6fPQfAAAA//8DAINfyMNmCQAA
headers:
Access-Control-Expose-Headers:
- X-Request-ID
CF-RAY:
- 99336a7dbe6ceb26-SJC
Connection:
- keep-alive
Content-Encoding:
- gzip
Content-Type:
- application/json
Date:
- Thu, 23 Oct 2025 18:50:08 GMT
Server:
- cloudflare
Set-Cookie:
- __cf_bm=DjysHB9qTMZORX7QYyklZkQ1gpCLqiF_4Oc3s4I8ipY-1761245408-1.0.1.1-o1.0znf3QrMBHHkWGdL6H8DlcQnOUBlYMBnIgPIQbfD4x_sGH1NYYRKZdaDWYYgKSCKsA55Y_WKWdc3JL2YOUVOAxVcxpifd7KTjej8UtC0;
path=/; expires=Thu, 23-Oct-25 19:20:08 GMT; domain=.api.openai.com; HttpOnly;
Secure; SameSite=None
- _cfuvid=EoJIYMSxi_5wB664HTnmjMc0JkyL5rOMzF69BXv6NQw-1761245408465-0.0.1.1-604800000;
path=/; domain=.api.openai.com; HttpOnly; Secure; SameSite=None
Strict-Transport-Security:
- max-age=31536000; includeSubDomains; preload
Transfer-Encoding:
- chunked
X-Content-Type-Options:
- nosniff
alt-svc:
- h3=":443"; ma=86400
cf-cache-status:
- DYNAMIC
openai-organization:
- future-house-xr4tdh
openai-processing-ms:
- "25008"
openai-project:
- proj_RpeV6PrPclPHBb5GlExPXSBj
openai-version:
- "2020-10-01"
x-envoy-upstream-service-time:
- "25087"
x-openai-proxy-wasm:
- v0.1
x-ratelimit-limit-requests:
- "15000"
x-ratelimit-limit-tokens:
- "40000000"
x-ratelimit-remaining-requests:
- "14999"
x-ratelimit-remaining-tokens:
- "39999976"
x-ratelimit-reset-requests:
- 4ms
x-ratelimit-reset-tokens:
- 0s
x-request-id:
- req_79da4032ef5c40fda551af38c74aa897
status:
code: 200
message: OK
version: 1
Loading