在开发中使用开源人工智能模型

Susan Sarandon
发布: 2024-11-07 06:35:03
原创
757 人浏览过

El uso de los modelos de IA open source en el desarrollo

去年,大量人工智能工具的出现让用户的生活变得更加轻松,无论是图像生成还是聊天机器人,甚至扩展到执行庞大且专业的工具流程。

我一直在研究、学习和测试许多这些工具,从chatgpt、gemini到dall-e或midjourney,它们都工作得很好,但是当我想用这些工具扩展我的应用程序时,我发现它们没有免费或开放替代源。

这让我的研究更进一步,我遇到了稳定的扩散ui(图像生成,https://github.com/AUTOMATIC1111/stable-diffusion-webui)和* ollama *(Chatbot,https://ollama.com/),两者都是开源工具,允许您将服务作为 API 运行,以便从我们的任何应用程序中使用它,我已经到了我进一步使用开源替代方案,但为了使其发挥作用,我必须保持这些工具运行以供我们的应用程序使用。

要了解如何将其引入我们的应用程序,了解这些工具的工作原理非常重要,基本上它们的作用是使用带有“safetensors”扩展名的 LLM 或大型语言模型文件,这些模型经过训练可以执行根据训练者的需求提供不同的功能(例如:图像生成、翻译、代码开发、聊天机器人等)。

通过了解一些 LLM 模型和“safetensors”文件,我们得到以下问题:如何在我的应用程序中使用这些文件,这就是 HugginFace 的用武之地,它是一个开源人工智能网站/数据库模型,他们为 python 创建了自己的库,其中包含 2 个非常有用的组件,可满足我们的需求“Transformers”和“Diffusers”。

*Transformers *(https://huggingface.co/docs/transformers/index) 是允许我们使用任何专用文本模型的组件,例如将音频转换为文本,反之亦然,聊天框作为元火焰等。

导入变压器

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) 是允许我们使用任何专门用于图像生成的模型的组件,例如稳定扩散。

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]
登录后复制

此过程称为 LLM 模型推理,从这里基于此信息,您可以开始使用 Python 在不同的应用程序中应用人工智能。

需要注意的是,我也尝试过使用另一种语言(例如nodejs)进行模型推理,事实是它的效果不如python,但重要的是要提到LLM需要强大的硬件模型推理,以便您可以通过使用 ChatGPT 或 Gemini API 节省购买合适硬件的费用。

这是我的第一篇文章,我希望我在软件开发中使用LLM模型的路径可以帮助您跳过这条路径上的步骤。

以上是在开发中使用开源人工智能模型的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:dev.to
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板