去年,大量人工智能工具的出现让用户的生活变得更加轻松,无论是图像生成还是聊天机器人,甚至扩展到执行庞大而专业的工具进程。
我一直在研究、学习和测试许多这些工具,从 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上的效果不如Python,但重要的是要提到LLM需要强大的硬件模型推理,以便您可以通过使用 ChatGPT 或 Gemini API 节省购买合适硬件的费用。
这就是我的第一篇文章,我希望我在软件开发中使用LLM模型的道路可以帮助您跳过这条道路上的步骤。
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3