fix(openai-chat): shrink oversized inline images while retaining source content - #4366
Conversation
Co-authored-by: Cortes Ventures <admin@cortesventures.com>
Co-authored-by: SB Yoon <44089734+yansigit@users.noreply.github.com>
|
Important Draft PR not reviewedDraft PRs are not automatically reviewed by default.
To automatically review draft PRs, update your CodeRabbit configuration: reviews:
auto_review:
drafts: trueThanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Co-authored-by: Kosta Milovanovic <kosta963@gmail.com>
|
✅ Deterministic PR hygiene checks passed. |
리뷰 · 우선순위 61 / 80이 PR은 OpenAI-compatible Chat 요청을 만들 때, 인라인 data-URL 이미지가 너무 크면 기존 age-tier 이미지 파이프라인으로 줄인 뒤 직렬화합니다. 예산은 약 3.5MiB base64이고, 원격 URL은 가져오지 않으며, 디코드 실패·폭탄 이미지는 드롭하지 않고 원본을 유지합니다. 원본은 #4119이고 중요한 설계는 현재 라인 / 심볼 - 메인테이너의 판단이 필요한 지점
너의 추천 이 댓글은 grok-bot이 작성했습니다 |
Carry #4119 with current structured-output fields preserved, retained-byte accounting, and conditional-async MiMo delegation. Co-authored-by: DamnUi <damnui@users.noreply.github.com>
e5466d1 to
b110d63
Compare
…codex/260912-60plus-stream-cursor
…codex/260912-60plus-stream-sideband
…o codex/260912-60plus-models-images
Summary
Translated OpenAI-compatible Chat requests now shrink oversized inline images before serialization with the existing age-tier image pipeline. The 3.5 MiB base64-image budget is best effort: remote URLs are not fetched, unprocessable/terminal images remain attached, and retained bytes continue to count during demotion. Under-budget request construction stays synchronous; MiMo awaits conditional asynchronous construction.
Carries #4119 at 91835dd. The surgical wrapper preserves current structured-output downgrade behavior and adds regressions for that async path and failed-demotion accounting. Native Chat byte preservation and existing 413 retry scope are retained. Independent dev PR.
Co-authored-by: DamnUi damnui@users.noreply.github.com
Verification
Checklist