Welcome to the VuHistoricalArchiveAiEnhancement Crew project, powered by crewAI. This template is designed to help you set up a multi-agent AI system with ease, leveraging the powerful and flexible framework provided by crewAI. Our goal is to enable your agents to collaborate effectively on complex tasks, maximizing their collective intelligence and capabilities.
This project assembles a sequential CrewAI workflow to enrich Vrije Universiteit Amsterdam's ContentDM archive records with machine-generated analysis. The crew starts by querying the ContentDM API for record metadata and rigorously verifying accessible image URLs. Vision and OCR specialists then analyze the imagery with GPT-4o, extracting descriptive context and text while reporting any blockers. A web scraper augments gaps with additional page metadata before a historical writer synthesizes the combined findings into curated descriptions. The pipeline concludes with named-entity linking and a data formatter that packages everything for spreadsheet import, so that every stage—data fetch, vision analysis, OCR, narrative synthesis, entity reconciliation, and export—feeds the next agent in the chain.
Ensure you have Python >=3.10 <3.14 installed on your system.
- Install Python 3.10–3.13 from python.org (verify with
python3 --versionorpy --versionon Windows). - Clone the repository and move into it:
git clone https://github.com/ubvu/contentdm-crew-ai.git cd contentdm-crew-ai - Create a virtual environment (replace
python3withpyon Windows):python3 -m venv .venv
- Activate the virtual environment:
- macOS/Linux:
source .venv/bin/activate - Windows PowerShell:
.venv\Scripts\Activate.ps1
- macOS/Linux:
- Install the required packages:
python -m pip install --upgrade pip pip install -r requirements.txt
- Copy
.env.exampleto.env(if present) and setOPENAI_API_KEYplus any other credentials your tools require.
Optional (develop) This project uses UV for dependency management and package handling, offering a seamless setup and execution experience.
First, if you haven't already, install uv:
pip install uvWith uv available, you can manage this project via the CrewAI CLI’s helper:
Next, navigate to your project directory and install the dependencies:
(Optional) Lock the dependencies and install them by using the CLI command:
crewai installThe crewai command is added to your PATH when you install the crewai package; crewai install simply shells out to uv to resolve and cache the dependencies listed in pyproject.toml.
Add your OPENAI_API_KEY into the .env file
- Modify
src/vu_historical_archive_ai_enhancement/config/agents.yamlto define your agents - Modify
src/vu_historical_archive_ai_enhancement/config/tasks.yamlto define your tasks - Modify
src/vu_historical_archive_ai_enhancement/crew.pyto add your own logic, tools and specific args - Modify
src/vu_historical_archive_ai_enhancement/main.pyto add custom inputs for your agents and tasks - Tools can be found in
src/vu_historical_archive_ai_enhancement/tools/They will help the agents to perform specific tasks, like extracting metdata in a structured format or start ai vision and OCR.
To kickstart your crew of AI agents and begin task execution, run this from the root folder of your project:
$ crewai runThis command initializes the vu_historical_archive_ai_enhancement Crew, assembling the agents and assigning them tasks as defined in your configuration.
This example, unmodified, will run the create a report.md file with the output of a research on LLMs in the root folder.
The vu_historical_archive_ai_enhancement Crew is composed of multiple AI agents, each with unique roles, goals, and tools. These agents collaborate on a series of tasks, defined in config/tasks.yaml, leveraging their collective skills to achieve complex objectives. The config/agents.yaml file outlines the capabilities and configurations of each agent in your crew.
For support, questions, or feedback regarding the VuHistoricalArchiveAiEnhancement Crew or crewAI.
- Visit our documentation
- Reach out to us through our GitHub repository
- Join our Discord
- Chat with our docs
Let's create wonders together with the power and simplicity of crewAI.