mirror of
https://github.com/crewAIInc/crewAI.git
synced 2026-04-30 23:02:50 +00:00
Python 3.14 changed asyncio.get_event_loop() to raise RuntimeError when no running event loop exists instead of silently creating one. This broke all async code paths that relied on get_event_loop(). Changes: - Replace asyncio.get_event_loop() with asyncio.get_running_loop() in all async contexts across crewai core and crewai-tools - Update requires-python from '<3.14' to '<3.15' in all pyproject.toml files - Add comprehensive tests for Python 3.14 async compatibility - Regenerate uv.lock for the updated version constraint Closes #5109 Co-Authored-By: João <joao@crewai.com>
crewai-files
File handling utilities for CrewAI multimodal inputs.
Supported File Types
ImageFile- PNG, JPEG, GIF, WebPPDFFile- PDF documentsTextFile- Plain text filesAudioFile- MP3, WAV, FLAC, OGG, M4AVideoFile- MP4, WebM, MOV, AVI
Usage
from crewai_files import File, ImageFile, PDFFile
# Auto-detect file type
file = File(source="document.pdf") # Resolves to PDFFile
# Or use specific types
image = ImageFile(source="chart.png")
pdf = PDFFile(source="report.pdf")
Passing Files to Crews
crew.kickoff(
input_files={"chart": ImageFile(source="chart.png")}
)
Passing Files to Tasks
task = Task(
description="Analyze the chart",
expected_output="Analysis",
agent=agent,
input_files=[ImageFile(source="chart.png")],
)