À propos du projet

Unstract est une plateforme open source conçue pour transformer des documents non structurés (PDF, images, scans, feuilles de calcul, présentations) en données JSON structurées à l'aide de grands modèles de langage (LLM). Elle permet aux utilisateurs de définir des schémas d'extraction avec des invites en langage naturel, puis de déployer l'extraction sous forme d'API REST ou de pipeline ETL. Les principales fonctionnalités incluent un Prompt Studio pour la définition de schémas, le déploiement d'API, l'intégration de pipelines ETL, un serveur MCP pour les agents IA, et un nœud n8n pour les workflows d'automatisation. Elle prend en charge plusieurs fournisseurs de LLM (OpenAI, Anthropic, Bedrock, Gemini, Ollama, etc.), des bases de données vectorielles (Qdrant, Pinecone, Weaviate, etc.) et des extracteurs de texte (LLMWhisperer, Unstructured.io, LlamaIndex Parse). La plateforme peut être exécutée localement via Docker Compose avec un simple script, et propose des options cloud/entreprise avec des fonctionnalités supplémentaires telles que la vérification par double LLM, la revue humaine dans la boucle, le SSO et des certifications de conformité. Elle est construite avec un frontend React, un backend Django, un worker Celery et un service de plateforme FastAPI, utilisant PostgreSQL, Redis et RabbitMQ. Le projet est sous licence AGPL-3.0 et accueille les contributions.