Skip to content

ubvu/contentdm-crew-ai

Repository files navigation

VuHistoricalArchiveAiEnhancement Crew

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.

Description

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.

Installation

Ensure you have Python >=3.10 <3.14 installed on your system.

  1. Install Python 3.10–3.13 from python.org (verify with python3 --version or py --version on Windows).
  2. Clone the repository and move into it:
    git clone https://github.com/ubvu/contentdm-crew-ai.git
    cd contentdm-crew-ai
  3. Create a virtual environment (replace python3 with py on Windows):
    python3 -m venv .venv
  4. Activate the virtual environment:
    • macOS/Linux: source .venv/bin/activate
    • Windows PowerShell: .venv\Scripts\Activate.ps1
  5. Install the required packages:
    python -m pip install --upgrade pip
    pip install -r requirements.txt
  6. Copy .env.example to .env (if present) and set OPENAI_API_KEY plus 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 uv

With 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 install

The 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.

Customizing

Add your OPENAI_API_KEY into the .env file

  • Modify src/vu_historical_archive_ai_enhancement/config/agents.yaml to define your agents
  • Modify src/vu_historical_archive_ai_enhancement/config/tasks.yaml to define your tasks
  • Modify src/vu_historical_archive_ai_enhancement/crew.py to add your own logic, tools and specific args
  • Modify src/vu_historical_archive_ai_enhancement/main.py to 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.

Running the Project

To kickstart your crew of AI agents and begin task execution, run this from the root folder of your project:

$ crewai run

This 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.

Understanding Your Crew

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.

Support

For support, questions, or feedback regarding the VuHistoricalArchiveAiEnhancement Crew or crewAI.

Let's create wonders together with the power and simplicity of crewAI.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages