Exécutez Ollama, Stable Diffusion et la Reconnaissance Automatique de la Parole avec votre GPU Intel Arc
Déployez facilement une solution basée sur Docker qui utilise Open WebUI comme interface utilisateur conviviale IA et Ollama pour l’intégration des grands modèles de langage (LLM).
De plus, vous pouvez exécuter des conteneurs Docker ComfyUI ou SD.Next pour simplifier les capacités de Stable Diffusion.
Vous pouvez également exécuter un conteneur Docker optionnel avec OpenAI Whisper pour effectuer des tâches de Reconnaissance Automatique de la Parole (ASR).
Tous ces conteneurs ont été optimisés pour les GPU Intel Arc Series sous Linux en utilisant Intel® Extension for PyTorch.

Services
- Ollama
- Exécute llama.cpp et Ollama avec IPEX-LLM sur votre ordinateur Linux avec GPU Intel Arc.
- Construit selon les directives de Intel.
- Utilise l’image docker officielle Intel ipex-llm comme conteneur de base.
- Utilise les dernières versions des paquets requis, privilégiant les fonctionnalités de pointe plutôt que la stabilité.
- Expose le port
11434pour connecter d’autres outils à votre service Ollama. - Open WebUI
- Utilise la distribution officielle d’Open WebUI.
WEBUI_AUTHest désactivé pour une utilisation sans authentification.- Les drapeaux
ENABLE_OPENAI_APIetENABLE_OLLAMA_APIsont respectivement désactivés et activés, permettant les interactions uniquement via Ollama. ENABLE_IMAGE_GENERATIONest activé, vous permettant de générer des images depuis l’interface.IMAGE_GENERATION_ENGINEest réglé sur automatic1111 (SD.Next est compatible).- ComfyUI
- L’interface graphique la plus puissante et modulaire pour les modèles de diffusion, API et backend avec interface graphique par nœuds.
- Utilise comme conteneur de base l’Intel® Extension for PyTorch officiel.
- SD.Next
- Solution tout-en-un pour l’image générative IA basée sur Automatic1111.
- Utilise comme conteneur de base l’Intel® Extension for PyTorch officiel.
- Utilise une version personnalisée du docker file de SD.Next, le rendant compatible avec l’image Intel Extension for Pytorch.
- OpenAI Whisper
- Reconnaissance vocale robuste via une supervision faible à grande échelle
- Utilise comme conteneur de base l'extension officielle Intel® pour PyTorch
Configuration
Exécutez les commandes suivantes pour démarrer votre instance Ollama avec Open WebUI$ git clone https://github.com/eleiton/ollama-intel-arc.git
$ cd ollama-intel-arc
$ podman compose upDe plus, si vous souhaitez exécuter un ou plusieurs des outils de génération d'images, lancez ces commandes dans un terminal différent :
Pour ComfyUI
$ podman compose -f docker-compose.comfyui.yml up
Pour SD.Next$ podman compose -f docker-compose.sdnext.yml upSi vous souhaitez utiliser Whisper pour la reconnaissance automatique de la parole, exécutez cette commande dans un autre terminal :
$ podman compose -f docker-compose.whisper.yml upValider
Exécutez la commande suivante pour vérifier que votre instance Ollama est opérationnelle$ curl http://localhost:11434/
Ollama is running
Lors de l'utilisation de Open WebUI, vous devriez voir cette sortie partielle dans votre console, indiquant que votre GPU arc a été détecté
[ollama-intel-arc] | Found 1 SYCL devices:
[ollama-intel-arc] | | | | | |Max | |Max |Global | |
[ollama-intel-arc] | | | | | |compute|Max work|sub |mem | |
[ollama-intel-arc] | |ID| Device Type| Name|Version|units |group |group|size | Driver version|
[ollama-intel-arc] | |--|-------------------|---------------------------------------|-------|-------|--------|-----|-------|---------------------|
[ollama-intel-arc] | | 0| [level_zero:gpu:0]| Intel Arc Graphics| 12.71| 128| 1024| 32| 62400M| 1.6.32224+14|Utilisation de la génération d'images
- Ouvrez votre navigateur web à l'adresse http://localhost:7860 pour accéder à la page web SD.Next.
- Pour cette démonstration, nous utiliserons le modèle DreamShaper.
- Suivez ces étapes :
- Téléchargez le modèle
dreamshaper_8en cliquant sur son image (1). - Attendez qu'il soit téléchargé (~2Go) puis sélectionnez-le dans le menu déroulant (2).
- (Optionnel) Si vous souhaitez rester dans l'interface SD.Next, n'hésitez pas à explorer (3).
- Pour plus d'informations sur l'utilisation de SD.Next, consultez la documentation officielle.
- Ouvrez votre navigateur web à l'adresse http://localhost:4040 pour accéder à la page web Open WebUI.
- Rendez-vous sur la page des paramètres administrateur.
- Allez dans la section Image (1)
- Assurez-vous que tous les paramètres sont corrects, et validez-les en appuyant sur le bouton de rafraîchissement (2)
- (Optionnel) Enregistrez les modifications si vous en avez fait. (3)
- Pour plus d'informations sur l'utilisation d'Open WebUI, consultez la documentation officielle
- Voilà, retournez à la page principale d'Open WebUI et commencez à discuter. Assurez-vous de sélectionner le bouton
Imagepour indiquer que vous souhaitez générer des images.

Utilisation de la reconnaissance automatique de la parole
- Voici un exemple de commande pour transcrire des fichiers audio :
podman exec -it whisper-ipex whisper https://www.lightbulblanguages.co.uk/resources/ge-audio/hobbies-ge.mp3 --device xpu --model small --language German --task transcribe
- Réponse :
[00:00.000 --> 00:08.000] Ich habe viele Hobbys. In meiner Freizeit mache ich sehr gerne Sport, wie zum Beispiel Wasserball oder Radfahren.
[00:08.000 --> 00:13.000] Außerdem lese ich gerne und lerne auch gerne Fremdsprachen.
[00:13.000 --> 00:19.000] Ich gehe gerne ins Kino, höre gerne Musik und treffe mich mit meinen Freunden.
[00:19.000 --> 00:22.000] Früher habe ich auch viel Basketball gespielt.
[00:22.000 --> 00:26.000] Im Frühling und im Sommer werde ich viele Radtouren machen.
[00:26.000 --> 00:29.000] Außerdem werde ich viel schwimmen gehen.
[00:29.000 --> 00:33.000] Am liebsten würde ich das natürlich im Meer machen.
- Ceci est un exemple de commande pour traduire des fichiers audio :
podman exec -it whisper-ipex whisper https://www.lightbulblanguages.co.uk/resources/ge-audio/hobbies-ge.mp3 --device xpu --model small --language German --task translate
- Réponse :
[00:00.000 --> 00:02.000] I have a lot of hobbies.
[00:02.000 --> 00:05.000] In my free time I like to do sports,
[00:05.000 --> 00:08.000] such as water ball or cycling.
[00:08.000 --> 00:10.000] Besides, I like to read
[00:10.000 --> 00:13.000] and also like to learn foreign languages.
[00:13.000 --> 00:15.000] I like to go to the cinema,
[00:15.000 --> 00:16.000] like to listen to music
[00:16.000 --> 00:19.000] and meet my friends.
[00:19.000 --> 00:22.000] I used to play a lot of basketball.
[00:22.000 --> 00:26.000] In spring and summer I will do a lot of cycling tours.
[00:26.000 --> 00:29.000] Besides, I will go swimming a lot.
[00:29.000 --> 00:33.000] Of course, I would prefer to do this in the sea.
- Pour utiliser vos propres fichiers audio au lieu des fichiers web, placez-les dans le dossier
~/whisper-fileset accédez-y ainsi :
podman exec -it whisper-ipex whisper YOUR_FILE_NAME.mp3 --device xpu --model small --task translateMise à jour des conteneurs
S'il y a de nouvelles mises à jour dans l'image Docker ipex-llm-inference-cpp-xpu ou dans l'image Docker Open WebUI, vous souhaiterez peut-être mettre à jour vos conteneurs pour rester à jour.Avant toute mise à jour, assurez-vous d'arrêter vos conteneurs
$ podman compose down Ensuite, exécutez simplement une commande pull pour récupérer les images latest.
$ podman compose pull
Après cela, vous pouvez exécuter compose up pour redémarrer vos services.$ podman compose upConnexion manuelle à votre conteneur Ollama
Vous pouvez vous connecter directement à votre conteneur Ollama en exécutant ces commandes :$ podman exec -it ollama-intel-arc /bin/bash
$ /llm/ollama/ollama -vMon environnement de développement :
- Core Ultra 7 155H
- Intel® Arc™ Graphics (Meteor Lake-P)
- Fedora 41
Références
- Documentation Open WebUI
- Docker - tags Intel ipex-llm
- Docker - extension Intel pour pytorch
- GitHub - tags Intel ipex-llm
- GitHub - extension Intel pour pytorch