mirror of
https://github.com/crewAIInc/crewAI.git
synced 2026-01-24 07:38:14 +00:00
feat: implement crewAI lite version with optional dependencies
- Restructure pyproject.toml to move non-essential dependencies to optional extras - Add graceful handling for missing optional dependencies in core modules - Create memory, knowledge, telemetry, visualization, auth, and llm-integrations extras - Implement helpful ImportError messages directing users to install specific extras - Add comprehensive test suite for lite installation scenarios - Maintain backward compatibility with existing installations - Support minimal core installation with Agent/Crew/Task functionality Addresses GitHub issue #3026 for lightweight crewAI installation Co-Authored-By: João <joao@crewai.com>
This commit is contained in:
@@ -14,20 +14,8 @@ dependencies = [
|
||||
"litellm==1.72.0",
|
||||
"instructor>=1.3.3",
|
||||
# Text Processing
|
||||
"pdfplumber>=0.11.4",
|
||||
"regex>=2024.9.11",
|
||||
# Telemetry and Monitoring
|
||||
"opentelemetry-api>=1.30.0",
|
||||
"opentelemetry-sdk>=1.30.0",
|
||||
"opentelemetry-exporter-otlp-proto-http>=1.30.0",
|
||||
# Data Handling
|
||||
"chromadb>=0.5.23",
|
||||
"tokenizers>=0.20.3",
|
||||
"onnxruntime==1.22.0",
|
||||
"openpyxl>=3.1.5",
|
||||
"pyvis>=0.3.2",
|
||||
# Authentication and Security
|
||||
"auth0-python>=4.7.1",
|
||||
# Security
|
||||
"python-dotenv>=1.0.0",
|
||||
# Configuration and Utils
|
||||
"click>=8.1.7",
|
||||
@@ -68,6 +56,53 @@ docling = [
|
||||
aisuite = [
|
||||
"aisuite>=0.1.10",
|
||||
]
|
||||
memory = [
|
||||
"chromadb>=0.5.23",
|
||||
"tokenizers>=0.20.3",
|
||||
"tiktoken~=0.8.0",
|
||||
"mem0ai>=0.1.94",
|
||||
]
|
||||
knowledge = [
|
||||
"chromadb>=0.5.23",
|
||||
"pdfplumber>=0.11.4",
|
||||
"openpyxl>=3.1.5",
|
||||
"docling>=2.12.0",
|
||||
"tiktoken~=0.8.0",
|
||||
]
|
||||
telemetry = [
|
||||
"opentelemetry-api>=1.30.0",
|
||||
"opentelemetry-sdk>=1.30.0",
|
||||
"opentelemetry-exporter-otlp-proto-http>=1.30.0",
|
||||
]
|
||||
visualization = [
|
||||
"pyvis>=0.3.2",
|
||||
]
|
||||
auth = [
|
||||
"auth0-python>=4.7.1",
|
||||
]
|
||||
llm-integrations = [
|
||||
"aisuite>=0.1.10",
|
||||
"onnxruntime==1.22.0",
|
||||
]
|
||||
all = [
|
||||
"chromadb>=0.5.23",
|
||||
"tokenizers>=0.20.3",
|
||||
"tiktoken~=0.8.0",
|
||||
"mem0ai>=0.1.94",
|
||||
"pdfplumber>=0.11.4",
|
||||
"openpyxl>=3.1.5",
|
||||
"docling>=2.12.0",
|
||||
"opentelemetry-api>=1.30.0",
|
||||
"opentelemetry-sdk>=1.30.0",
|
||||
"opentelemetry-exporter-otlp-proto-http>=1.30.0",
|
||||
"pyvis>=0.3.2",
|
||||
"auth0-python>=4.7.1",
|
||||
"aisuite>=0.1.10",
|
||||
"onnxruntime==1.22.0",
|
||||
"agentops>=0.3.0",
|
||||
"crewai-tools~=0.47.1",
|
||||
"pandas>=2.2.3",
|
||||
]
|
||||
|
||||
[tool.uv]
|
||||
dev-dependencies = [
|
||||
|
||||
Reference in New Issue
Block a user