Maison > Article > développement back-end > L'utilisation de modèles d'IA open source dans le développement
Au cours de la dernière année, un grand nombre d'outils dotés d'intelligence artificielle sont apparus pour faciliter la vie des utilisateurs, qu'il s'agisse de génération d'images ou de chatbots, voire d'outils qui exécutent des tâches gigantesques et professionnelles. processus.
J'ai recherché, appris et testé bon nombre de ces outils, de chatgpt, gemini à dall-e ou midjourney, ils fonctionnent tous très bien mais lorsque je veux faire évoluer mes applications avec ces outils, je trouve qu'ils n'ont pas de solution. source alternative gratuite ou ouverte.
Cela m'a fait pousser mes recherches un peu plus loin et je suis tombé sur interface de diffusion stable (Génération d'images, https://github.com/AUTOMATIC1111/stable-diffusion-webui) et avec * ollama *(Chatbot, https://ollama.com/), les deux sont des outils open source qui vous permettent d'exécuter un service en tant qu'API pour le consommer depuis n'importe laquelle de nos applications, avec cela je suis arrivé à un moment je vais plus loin avec les alternatives open source, mais pour que cela fonctionne je dois garder ces outils opérationnels pour qu'ils soient consommés par nos applications.
Pour comprendre comment appliquer cela à nos applications, il est important de comprendre comment ces outils fonctionnent, et fondamentalement, ils utilisent des fichiers avec l'extension "safetensors" qui sont des LLM ou de grands modèles de langage, ces modèles étant formés pour effectuer différentes fonctions selon les besoins de la personne qui le forme (Exemple : Génération d'images, traduction, développement de code, chatbot, entre autres).
En comprenant un peu les modèles LLM et les fichiers "safetensors", on arrive à la question suivante : comment utiliser ces fichiers dans mes applications, et c'est là qu'intervient HugginFace, un site/base de données d'intelligence artificielle open source modèles, et ils ont créé leur propre bibliothèque pour python avec 2 composants extrêmement utiles pour ce que nous voulons "Transformateurs" et "Diffuseurs".
*Transformers *(https://huggingface.co/docs/transformers/index) est le composant qui nous permet de consommer n'importe quel modèle de texte spécialisé, par exemple la conversion de l'audio en texte ou vice versa, chatbox comme flamme Meta, entre autres.
importer des transformateurs
import torch model_id = "meta-llama/Llama-3.1-8B" pipeline = transformers.pipeline( "text-generation", model=model_id, model_kwargs={"torch_dtype": torch.bfloat16}, device_map="auto" ) pipeline("Hey how are you doing today?")
Diffusers (https://huggingface.co/docs/diffusers/index) est le composant qui nous permet de consommer n'importe quel modèle spécialisé dans la génération d'images, comme la diffusion stable.
from diffusers import AutoPipelineForText2Image import torch pipe = AutoPipelineForText2Image.from_pretrained("stabilityai/sdxl-turbo", torch_dtype=torch.float16, variant="fp16") pipe.to("cuda") prompt = "A cinematic shot of a baby racoon wearing an intricate italian priest robe." image = pipe(prompt=prompt, num_inference_steps=1, guidance_scale=0.0).images[0]
Ce processus est connu sous le nom d'inférence de modèle LLM, et à partir de là, sur la base de ces informations, vous pouvez commencer à appliquer l'intelligence artificielle dans vos différentes applications avec Python.
Il convient de noter que j'ai également essayé d'utiliser l'inférence de modèle avec un autre langage tel que nodejs et la vérité est que cela ne fonctionne pas aussi bien qu'avec python, mais il est important de mentionner qu'un matériel puissant est nécessaire pour LLM inférence de modèle afin que ce que vous pouvez économiser en utilisant les API ChatGPT ou Gemini, vous puissiez le dépenser pour acheter du matériel approprié.
Ceci est mon premier article, j'espère que mon chemin vers l'utilisation des modèles LLM dans le développement de logiciels vous aidera à sauter des étapes sur ce chemin.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!