Feature request: Upgrade from unclecode-litellm to current upstream LiteLLM for newer reasoning models
Maintainer thường phản hồi trong vòng 3 ngày
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 5/5
- Thời gian dự kiến
- Hơn một tuần
- Mức phù hợp với người mới
- 12/100
Hướng nghiên cứu
Start with the unclecode-litellm==1.81.13 pin in pyproject.toml, then read perform_completion_with_backoff() and aperform_completion_with_backoff() plus the LLMExtractionStrategy code that consumes response.choices[0].message.content. Coordinate with #2098 on the dependency replacement before changing anything. Done means a security-reviewed upstream LiteLLM pin, regression tests against GPT-4.1 and GPT-5.x, and documented model/API settings.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Summary
Would you consider replacing the pinned unclecode-litellm==1.81.13 dependency with a recent, maintained, security-reviewed version of upstream litellm, and validating the compatibility of LLMExtractionStrategy with newer reasoning models (including GPT-5.6 deployments such as Luna and Sol)?
Thank you for maintaining Crawl4AI. This request is motivated by practical issues with LLM-based extraction in enterprise RAG pipelines.
Current state
The current pyproject.toml on main still pins:
"unclecode-litellm==1.81.13",
That fork was introduced during the upstream LiteLLM PyPI supply-chain incident. The official LiteLLM project has since continued adding support for newer models and their API requirements, whereas the pinned fork remains on the earlier codebase.
Why this matters
In our usage, LLMExtractionStrategy performs noticeably worse with newer GPT-5.6 Luna/Sol deployments than with GPT-4.1 under comparable extraction tasks. We have not isolated the root cause, so we are not claiming that the dependency pin alone is responsible. However, the old integration layer may not fully recognize or correctly handle newer model capabilities and parameters.
Areas worth investigating:
- Model identification and provider routing for newer OpenAI / Azure OpenAI deployments, including deployments behind enterprise API gateways.
- Chat Completions vs. Responses API handling, where applicable.
- Reasoning-specific output/token parameters (e.g.,
max_completion_tokens), unsupported sampling arguments, and completion truncation. - Normalization of response content, token usage, and structured JSON extraction.
- Silent dropping of unsupported arguments via
litellm.drop_params = True.
Crawl4AI's perform_completion_with_backoff() / aperform_completion_with_backoff() set temperature=0.01 by default and pass responses into an extraction pipeline that expects response.choices[0].message.content. These behaviors are reasonable compatibility checkpoints when upgrading.
Requested changes
- Replace
unclecode-litellm==1.81.13with an appropriately pinned/restricted current stable upstream LiteLLM release, after security review (not an unbounded latest-at-runtime install). - Ensure installations cannot leave both distributions writing into the same
site-packages/litellmmodule. - Add basic regression coverage for
LLMExtractionStrategyusing GPT-4.1 as a baseline and newer GPT-5.x reasoning models, including Azure OpenAI deployments where feasible. - Check the handling of reasoning parameters, nonempty extraction output, JSON/schema parsing, and
finish_reason/ usage metadata. - Document the supported model/API combinations and any recommended settings for GPT-5.x.
Related issue
- #2098 discusses the package collision / dependency replacement problem.
- This issue focuses specifically on model compatibility and extraction behavior, which would benefit from tests and guidance in addition to changing the package dependency.
A straightforward upgrade path would be very helpful for enterprise Docker/OpenShift deployments, where we need reproducible builds and cannot safely overlay different LiteLLM distributions with ad-hoc pip install commands.
Thanks again!
- Ngôn ngữ chính
- Python
- Star
- 85.9k
- Fork
- 8.9k
- Merge trung bình
- 5 ngày 6 giờ
- Pull request đã merge (30 ngày)
- 24
Chuẩn bị môi trường
- Có Dockerfile hoặc tệp Docker Compose
- Có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của unclecode/crawl4ai
-
[Bug]: Text after an inline <link>, <meta>, <style> or <noscript> is dropped from cleaned_html and markdownCó thể đã có người làm Có pull request liên kết đang mở hoặc đã được merge. Đang mở🐞 Bug 🩺 Needs Triage
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 85/100
unclecode/crawl4ai#2416 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 3 ngày
-
[Bug]: Since 0.9.1, Linux launches chrome-headless-shell instead of ChromiumCó thể đã có người làm Có pull request liên kết đang mở hoặc đã được merge. Đang mở🐞 Bug 🩺 Needs Triage
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
unclecode/crawl4ai#2382 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 3 ngày
-
[Bug]: BestFirstCrawlingStrategy fetches a full batch past max_pagesCó thể đã có người làm Có pull request liên kết đang mở hoặc đã được merge. Đang mở🐞 Bug 🩺 Needs Triage
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 74/100
unclecode/crawl4ai#2381 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 3 ngày
-
[Bug]: CrawlerRunConfig.clone() drops fallback_fetch_function, so deep crawls never use itCó thể đã có người làm @siva23367 đã nhận 2 ngày trước. Đang mở🐞 Bug 🩺 Needs Triage
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
unclecode/crawl4ai#2379 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 3 ngày
-
[Bug]: Docker memory guard reads host RAM when no container limit is set — cgroup v2 "max" defeats get_container_memory_percentCó thể đã có người làm @Battleplus đã nhận 58 ngày trước. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 72/100
unclecode/crawl4ai#2123 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 3 ngày
Tất cả issue của unclecode/crawl4ai
Issue tương tự
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 80/100
521xueweihan/HelloGitHub#4063 ·
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 62/100
Vanilla-OS/apx-gui#112 ·
-
Devstral and Voxtral: section 5 fails in us-east-1 with 400 "Model does not support audio modality"Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
aws-samples/sample-per-model-bedrock#409 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
DuckDB 2.0 breaks to_pyarrow_batchesCó thể đã có người làm @DG47 đã nhận hôm nay. Đang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 76/100
ibis-project/ibis#12196 ·
Maintainer thường phản hồi trong vòng 1 ngày