发布于2025-01-14 阅读(0)
扫一扫,手机访问
想了解更多AIGC的内容,请访问:
51CTO AI.x社区
https://www.51cto.com/aigc/
Cloudera公司数据流首席工程师Tim Spann 表示,Mixtral-8x7B大型语言模型(LLM)是一个预先训练的生成式稀疏专家混合模型。
他表示,这款模型非常有趣,也很容易理解。在适当的指导下,它似乎表现很好。而通过例子,他并不确定Mixtral-8x7B是否比Google Gemma、Meta LLAMA2或OLLAMA Mistral更好。
Spann撰写的文章将展示如何使用Mixtral LLM,只需要几个步骤就可以针对文本输入运行Mixtral LLM。
该模型可以由轻量级无服务器REST API或Transformer库运行。也可以使用GitHub存储库,其场景最多可容纳32000个令牌。开发人员还可以输入英语、意大利语、德语、西班牙语和法语的提示。关于如何利用这一模型有很多选择项,而本文将展示如何利用Apache NiFi系统构建实时LLM通道。
开发人员需要决定的一个关键问题是将使用什么样的输入(聊天、代码生成、问题答案、文档分析、摘要等)。一旦决定输入,需要创建一些提示,并且进行调整。文中将提供一些指导,帮助提高快速构建技能的能力。Spann在其培训教程中介绍了一些基本的提示工程。
提示符的构建对于使其正常工作非常关键,因此使用Apache NiFi系统构建提示符。
在构建应用程序时,以下是将要使用的基本提示模板。
{ "inputs": "<s>[INST]Write a detailed complete response that appropriately answers the request.[/INST][INST]Use this information to enhance your answer: ${context:trim():replaceAll('"',''):replaceAll('\n', '')}[/INST] User: ${inputs:trim():replaceAll('"',''):replaceAll('\n', '')}</s>" }
复制
将在ReplaceText处理器的替换值字段中输入这个提示符。
在数据流中添加一个InvokeHTTP处理器,将HTTP URL设置为Mixtral API URL。
使用QueryRecord处理器来清理和转换抓取generated_text字段的HuggingFace结果。
使用UpdateRecord处理器来添加元数据字段、JSON读取器和写入器,以及文字值替换值策略(Literal Value Replacement Value Strategy)。而正在添加的字段是添加属性。
发送到Kafka和Slack的概述。
使用UpdateAttribute处理器来添加正确的“application/json Content Type”,并将模型类型设置为Mixtral。
将它发送到本地Kafka代理(可能是Docker或其他)和flank-mixtral8x7B主题。如果不存在,NiFi和Kafka会自动创建一个。
如果出现问题,将尝试重新发送三次,然后中止。
将数据推送到Slack的概述。
第一步是拆分为单个记录,每次发送一个记录。为此使用SplitRecord处理器。
和以前一样,重用JSON树读取器和JSON记录集编写器。像往常一样,选择“1”作为“每次拆分的记录”。
使用EvaluateJsonPath从Mixtral (on HuggingFace)提取生成的文本。
使用PublishSlack处理器,这是Apache NiFi 2.0的新功能。这需要设定频道名称或频道ID。选择使用“Message Text”属性的发布策略。对于消息文本,使用下面的Slack Response模板。
对于用户的最终回复需要一个 Slack 响应模板,该模板的格式应符合需要的沟通方式。以下是一个具有基本功能的示例。
Slack响应模板===============================================================================================================HuggingFace ${modelinformation} Results on ${date}:Question: ${inputs}Answer:${generated_text}=========================================== Data for nerds ====HF URL: ${invokehttp.request.url}TXID: ${invokehttp.tx.id}== Slack Message Meta Data ==ID: ${messageid} Name: ${messagerealname} [${messageusername}]Time Zone: ${messageusertz}== HF ${modelinformation}Meta Data ==Compute Characters/Time/Type: ${x-compute-characters} / ${x-compute-time}/${x-compute-type}Generated/Prompt Tokens/Time per Token: ${x-generated-tokens} / ${x-prompt-tokens} : ${x-time-per-token}Inference Time: ${x-inference-time}// Queue Time: ${x-queue-time}Request ID/SHA: ${x-request-id} / ${x-sha}Validation/Total Time: ${x-validation-time} / ${x-total-time}===============================================================================================================
运行这一程序时,它将看起来像Slack中的下图。
现在已经向 Hugging Face 发送了提示,让它针对 Mixtral 运行,将结果发送到 Kafka,并通过 Slack 回复用户。
现在已经用零代码完成了完整的Mixtral应用程序。
现在,已经使用Apache NiFi、HuggingFace和Slack构建了一个完整的往返程序,以使用新的Mixtral模型构建聊天机器人。
如果需要使用新的Apache NiFi 2.0的其他教程,可以查看:
以下是有关构建Slack机器人的更多信息:
Tim Spann正在编写Apache NiFi 2和生成式人工智能教程。
以下是他提供的一些资源:
Invoke the Mixtral 8x7B model on Amazon Bedrock for text generation
Running Mixtral 8x7b on M1 16GB
Mixtral-8x7B: Understanding and Running the Sparse Mixture of Experts by Mistral AI
Retro-Engineering a Database Schema: Mistral Models vs. GPT4, LLama2, and Bard (Episode 3)
Comparison of Models: Quality, Performance & Price Analysis
A Beginner’s Guide to Fine-Tuning Mixtral Instruct Model
原文标题:Mixtral: Generative Sparse Mixture of Experts in DataFlows,作者:Tim Spann
链接:https://dzone.com/articles/mixtral-generative-sparse-mixture-of-experts-in-da。
想了解更多AIGC的内容,请访问:
51CTO AI.x社区
https://www.51cto.com/aigc/
上一篇:炒币主流平台是什么
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店