Exemples de déploiement Prism
Ces recettes complètent une copie neuve de .env.example. Remplacez les clés indiquées et gardez les autres défauts de services et chemins. Les commandes supposent Linux ou un shell POSIX et une nouvelle installation ; ne reconvertissez pas une installation partagée existante en mono-user.
Recette 1 — Prism personnel avec Ollama
Cette recette locale garde Ollama sur le réseau Docker de Prism sans publier de port d’API modèle. Elle fonctionne sur CPU ; le GPU optionnel dépend du runtime de l’hôte. Les exemples utilisent un modèle de chat capable d’outils et un modèle d’embeddings distinct.
git clone https://github.com/blazux/prism.git
cd prism
cp .env.example .env
chmod 600 .env
openssl rand -hex 32Placez le jeton généré dans PRISM_TOKEN et réglez ces valeurs dans .env. Ne copiez pas littéralement YOUR_GENERATED_TOKEN.
PRISM_TOKEN=YOUR_GENERATED_TOKEN
MULTI_USER=
LLM_BACKEND=ollama
OLLAMA_URL=http://ollama:11434
OLLAMA_MODEL=qwen2.5:7b
EMBED_BACKEND=ollama
EMBED_MODEL=nomic-embed-text
CHAT_VISION=false
TZ=UTCCréez compose.ollama.yml à côté de docker-compose.yml avec ce contenu :
services:
ollama:
image: ollama/ollama:latest
restart: unless-stopped
volumes:
- ollama_models:/root/.ollama
volumes:
ollama_models:
docker compose -f docker-compose.yml -f compose.ollama.yml up -d ollama
docker compose -f docker-compose.yml -f compose.ollama.yml exec ollama ollama pull qwen2.5:7b
docker compose -f docker-compose.yml -f compose.ollama.yml exec ollama ollama pull nomic-embed-text
docker compose -f docker-compose.yml -f compose.ollama.yml up -dOuvrez http://localhost:48080. Dans AI provider, vérifiez Ollama → http://ollama:11434, le modèle de chat et nomic-embed-text pour la recherche documentaire. Les réglages fournisseur déjà enregistrés remplacent cette recette d’environnement ; modifiez-les dans l’interface. Gardez les deux fichiers Compose dans les commandes de mise à jour.
Documentation Docker d’Ollama ↗Recette 2 — Prism partagé avec vLLM
Prérequis : un serveur vLLM fonctionnel avec un modèle capable d’outils, le streaming et le parser/template adaptés à ce modèle. Cette recette connecte Prism au serveur ; elle n’installe ni ne dimensionne vLLM. Sa réponse /v1/models doit contenir l’alias assistant, ou remplacez cet alias ci-dessous.
Sur un déploiement Prism neuf, utilisez l’overlay Ollama précédent pour les embeddings uniquement et changez ces valeurs .env. host-gateway vise vLLM sur l’hôte Docker ; son service doit être accessible au conteneur. Pour un autre serveur, indiquez son adresse réellement accessible.
PRISM_TOKEN=YOUR_GENERATED_SERVICE_TOKEN
MULTI_USER=1
LLM_BACKEND=openai
OPENAI_BASE_URL=http://host-gateway:8000/v1
OPENAI_MODEL=assistant
OPENAI_API_KEY=
EMBED_BACKEND=ollama
OLLAMA_URL=http://ollama:11434
EMBED_MODEL=nomic-embed-text
CHAT_VISION=false
TZ=UTCSi vLLM exige une clé, renseignez-la dans OPENAI_API_KEY. CHAT_VISION=false correspond à cet exemple textuel ; activez les images seulement pour un modèle compatible. Si vLLM tourne sur un autre réseau Compose, rattachez Prism à ce réseau et utilisez son nom de service, pas localhost.
docker compose -f docker-compose.yml -f compose.ollama.yml up -d ollama
docker compose -f docker-compose.yml -f compose.ollama.yml exec ollama ollama pull nomic-embed-text
docker compose -f docker-compose.yml -f compose.ollama.yml up -dCréez le premier compte sur http://localhost:48080 ; il devient administrateur global. Dans Admin → AI provider, vérifiez la source vLLM, choisissez une connexion Ollama distincte pour les embeddings et réglez contexte/vision effectifs dans Model settings si les métadonnées manquent. Créez un groupe, approuvez un second compte et vérifiez ses permissions avant d’élargir l’accès.
Configuration des appels d’outils vLLM ↗Vérifications pour les deux recettes
- Le navigateur se connecte et une réponse arrive sans erreur d’authentification ou d’ID de modèle.
- Une petite tâche produit de vrais appels d’outils, un widget et des données conservées après rechargement.
- Un document court est indexé et retrouvé dans la bonne collection.
- En mode partagé, vérifiez un compte membre ordinaire plutôt que tout tester comme administrateur global.