Avertissement
En développement lourd. Aide nécessaire !
Environnements Docker prêts à l'emploi pour un développement rapide dans les pipelines text2img, img2img, text2video img2video utilisant les images Ollama + ComfyUI + ffmpeg Docker
./config/ollama/entrypoint.sh
pour télécharger des modèles et les servir via l'API./config/ollama/modelfiles
pour définir des modèles personnalisés./config/comfyui/provisioning.sh
pour le provisionnement de confortablesui et de son API./config/comfyui/models.csv
est utilisé ci-dessus pour télécharger/mettre à jour des modèles personnalisés. Modèles SDXL et AnimateDiff inclus, renommez-les en models.csv pour utilisation../config/comfyui/nodes.csv
est utilisé ci-dessus pour télécharger/mettre à jour des nœuds personnalisés. Nœuds SDXL et AnimateDiff inclus, renommez-les en nodes.csv pour utilisation. Renommez template.env en .env puis lancez les conteneurs un par un (recommandé)
docker-compose up ollama-api -d
docker-compose up comfyui-api -d
docker-compose up ffmpeg-api -d
Une fois qu'ils fonctionnent, vous pouvez tous les faire tomber
docker compose down
Et évoque tout en cas de besoin
docker compose up -d
Testé sur Python 3.10 / Pytorch 2.0.1, NVIDIA CUDA (WSL)
TODO Mise à jour descriptif
Vérifiez tous les modèles disponibles
curl http://localhost:11434/api/tags
Utiliser le modèle de générateur d'invites à mi-parcours
curl -X POST http://localhost:11434/api/generate -d ' {
"model": "mj:latest",
"prompt": "a sports car in the mountains.",
"stream": false} '
Afficher les informations sur le modèle
http://localhost:11434/api/show -d ' {
"name": "mj:latest"
} '
Avertissement
S'exécute en tant que root.
L'interface graphique est visible sur le port 8188. Je fais généralement glisser et déposer mes flux de travail directement sur le navigateur. Si l'espace disque est limité, modifiez le point de montage du volume.
Avertissement
S'exécute en tant que root.
TODO Mise à jour descriptif
Convertir mp4 en png
docker exec -it ffmpeg-api ffmpeg -y -hwaccel cuvid -c:v h264_cuvid -resize 576x1024 -i /output/Dancing.mp4 -vf " scale_npp=format=yuv420p,hwdownload,format=yuv420p " -pix_fmt yuvj420p -color_range 2 /output/frame_%03d.jpg
Convertir png en jpg
docker exec -it ffmpeg-api /bin/bash -c ' for image in /output/*.png; do ffmpeg -i "$image" "${image%.png}.jpg"; rm "$image"; echo "image $image converted to ${image%.png}.jpg "; done '
Convertir des images en vidéo mp4
docker exec -it ffmpeg-api ffmpeg -y -loglevel error -i ' /output/frame_%03d.jpg ' -r 30 -c:v hevc_nvenc -pix_fmt yuv420p -preset fast /output/final.mp4
Certains ports doivent être exposés pour que les services s'exécutent ou pour que certaines fonctionnalités du logiciel fourni fonctionnent
Ports ouverts | Service/Description |
---|---|
11434 | Serveur Web Ollama |
8188 | Interface utilisateur confortable |