Skip to content

GitTestingPat/keeper-biodiversity-agent-project

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

41 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Final Project: Biodiversity Agent Chatbot

Setup and Running

  1. Set your API Key Add your API key to backend/.env:

    OPENAI_API_KEY=your_key_here
  2. Run the Backend

    cd final_project/backend
    source venv/bin/activate
    pip install -r requirements.txt # or install dynamically
    uvicorn main:app --reload --host 127.0.0.1 --port 8000
  3. Run the Frontend

    cd final_project/frontend
    npm install
    npm run dev

Open http://localhost:5173 to interact with the Biodiversity Sentinel Agent!

🌍 Proyecto Final: Agente Centinela de Biodiversidad

Este proyecto implementa un chatbot inteligente impulsado por Pydantic AI (modelo: openai:gpt-4o-mini). Su función principal es analizar proactivamente (de forma simulada y conectada a prompts del usuario) informes de datos satelitales, sensores medioambientales y cámaras trampa, para asistir en la protección de los ecosistemas y prevenir la tala o pesca ilegal, enviando alertas a las autoridades competentes.

🏗️ Arquitectura

La solución se divide en los siguientes componentes:

  1. Frontend (React + Vite + TailwindCSS):

    • Provee una interfaz de usuario conversacional Premium, estéticamente diseñada con temáticas oscuras ambientales y estilos modernos.
    • Utiliza componentes de CopilotKit (@copilotkit/react-ui y @copilotkit/react-core) para renderizar el chat, integrándose al 100% con el estándar AG-UI.
  2. Backend (FastAPI):

    • Un servicio web mínimo y rápido que levanta el endpoint REST /chat.
    • Se comunica instantáneamente con la UI recibiendo mensajes RunAgentInput e instanciando un stream de texto y llamadas a herramientas (SSE - Server Sent Events) gracias al uso del adaptador AGUIAdapter.dispatch_request.
  3. Agente (Pydantic AI):

    • Configurado con un System Prompt integral como agente protector botánico y biopreservador.
    • Herramientas asíncronas (@agent.tool) de monitoreo:
      • analyze_satellite_imagery
      • analyze_ocean_sensors
      • analyze_wildlife_cameras
      • alert_authorities

✔️ Conceptos del curso aplicados

  • Fundamentos de LLMs y Prompting: System prompt con instrucciones precisas para encasillar al modelo y dotarlo de las reglas de conservación.
  • Bucle de Agente y Herramientas (Tools): Implementación de Pydantic AI @agent.tool incluyendo docstrings claros para que el modelo decida por si solo enviar llamados a diferentes ecosistemas.
  • FastAPI y Streaming: API modular manejando múltiples peticiones en paralelo utilizando Server-Sent Events (SSE) en su propia ruta independiente, libre de bloqueos.
  • AG-UI Protocol: Completo desacoplamiento frontend-backend que permite compatibilidad cruzada de renderizado de interfaces de agente.

Desarrollado para el proyecto final del curso SuperPower AI Crash Course - Biodiversidad.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages