75e035cc8267e0073d4e886c2e2a19568e9b4a96
Projet ARC
Contexte du Projet
ARC est une plateforme d'automatisation du développement logiciel basée sur un workflow multi-agents (IA). Le système orchestre plusieurs modèles d'IA spécialisés pour transformer un besoin utilisateur en un code source validé, testé et stocké.
Lancer le projet
Avant de lancer le projet, il est important de créer le fichier .env dans le dossier /backend et de remplir les éléments suivant :
LLM_BASE_URL=
LLM_API_KEY=
LLM_MODEL=
LLM_MODEL_DEV=
LLM_MODEL_QA=
EMBEDDING_BASE_URL=
EMBEDDING_MODEL=
GITEA_ADMIN_USER=
GITEA_ADMIN_PASSWORD=
Une fois les informations fournies, éxectuer la commande suivante pour lancer le projet
python .\orchestrator.py
- L'interface utilisateur conversationnelle se trouve sur l'adresse suivant : http://localhost:8001/
- Le Gitea se trouve à l'adresse suivante : http://localhost:3000/
Arrêter le projet
python .\stop_project.py
Visualiser les logs
docker compose -p arc-app logs -f
Structure du projet
ARC/
├── backend/
│ ├── app/
│ │ ├── agents/ # Gestion agents IA
│ │ │ ├── pm_agent.py
│ │ │ ├── dev_agent.py
│ │ │ └── qa_agent.py
│ │ │
│ │ ├── api/
│ │ │ └── routes/
│ │ │ ├── health.py
│ │ │ └── workflow.py
│ │ │
│ │ ├── core/
│ │ │ ├── config.py
│ │ │ └── logging.py
│ │ │
│ │ ├── graph/ # LangGraph
│ │ │ ├── state.py
│ │ │ ├── nodes.py
│ │ │ └── workflow.py
│ │ │
│ │ ├── llm/ # appels modèles
│ │ │ ├── client.py # wrapper d’appel
│ │ │ ├── prompts.py # prompts centralisés
│ │ │
│ │ ├── repositories/ # accès externes, Qdrant / Redis / stockage
│ │ │ ├── qdrant_repository.py
│ │ │ ├── redis_repository.py
│ │ │ └── project_repository.py
│ │ │
│ │ ├── sandbox/
│ │ │ ├── qa_client.py
│ │ │ ├── main.py # Code exec dans le container sandbox
│ │ │ └── Dockerfile.qa
│ │ │
│ │ ├── schemas/ # Pydantic
│ │ │ ├── api.py
│ │ │ ├── spec.py
│ │ │ ├── code_output.py
│ │ │ └── qa_report.py
│ │ │
│ │ ├── services/
│ │ │ ├── workflow_service.py
│ │ │ ├── embedding_service.py
│ │ │ ├── retrieval_service.py
│ │ │ └── delivery_service.py
│ │ │
│ │ └─── main.py
│ │
│ ├── public/
│ │ ├── logo_dark.png
│ │ └── logo_light.png
│ │
│ ├── tests/
│ │ ├── test_health.py
│ │ ├── test_workflow.py
│ │ ├── test_agents.py
│ │ ├── test_gemma.py
│ │ ├── test_mistral.py
│ │ ├── test_qdrant.py
│ │ └── test_snowflake.py
│ │
│ ├── .env # IMPORTANT élément à remplir
│ ├── chainlit_app.py
│ ├── chainlit_fr_FR.md
│ ├── docker-compose-ai.yml # Conteneurs pour les agents et l'embedding
│ ├── docker-compose-infra.yml # Conteneurs pour les BDD
│ ├── docker-compose-sandbox.yml # Conteneur pour la sandbox/qa
│ ├── docker-compose.yml # Conteneur de l'application
│ ├── Dockerfile
│ ├── README.md
│ ├── requirements.txt
│ └── start.sh # Lance les applications
│
└── orchestrator.py # Lance le projet
Description
Plateforme d'automatisation de développement logiciel basée sur un workflow multi-agents (IA)
Languages
Python
99.3%
Dockerfile
0.4%
Shell
0.2%
CSS
0.1%