Neuron AI est un framework PHP conçu pour intégrer l’intelligence artificielle dans des applications Symfony ou Laravel. Véritable alternative à LangChain pour les développeurs PHP, il propose des fonctionnalités avancées comme le RAG (Retrieval-Augmented Generation) et l’analyse d’images par IA.

Architecture de Neuron AI

Neuron AI s’articule autour de deux services principaux :

  • Agent : permet de créer des agents conversationnels configurables avec tools et mémoire
  • RAG : Retrieval-Augmented Generation pour enrichir les réponses avec des documents personnalisés

Ces services s’appuient sur des composants modulaires : vector store, data loaders, embeddings et providers (OpenAI, Mistral, Anthropic…).

Installation

composer require inspector-apm/neuron-ai

Créer un RAG avec vector store

Le RAG permet à l’agent de répondre à des questions en s’appuyant sur une base documentaire indexée. Voici comment configurer un RAG avec ChromaDB comme vector store :

use NeuronAI\RAG\RAG;
use NeuronAI\RAG\VectorStore\ChromaVectorStore;

$rag = RAG::make()
    ->provider($provider)
    ->vectorStore(new ChromaVectorStore(...))
    ->embeddings($embeddings);

Les documents sont indexés dans ChromaDB. Lors d’une question, les passages les plus pertinents sont récupérés automatiquement et injectés dans le contexte de la requête.

Analyse d’image par IA

Neuron AI supporte les requêtes multimodales : on peut soumettre une image à un modèle vision et lui demander de la décrire ou de l’analyser.

$agent = MyAgent::make();
$response = $agent->chat(
    UserMessage::make('Décris cette image')->withImage('chemin/vers/image.jpg')
);

Cette fonctionnalité s’appuie sur les modèles supportant la vision comme GPT-4o ou Claude 3.

Intégration Symfony

Neuron AI s’intègre nativement avec Symfony via l’injection de dépendances. Les agents peuvent être déclarés comme services et utilisés dans n’importe quel contrôleur ou commande Symfony.

Pour aller plus loin

Retrouvez la démonstration complète avec RAG, vector store et analyse d’image sur YouTube.