介绍
大语言模型(LLMS)是通过深度学习技术在大型数据集上训练的AI算法,以理解,预测和生成新内容。 LLM是动力自然语言处理(NLP)的力量,允许机器理解和响应文本或语音数据中的自然语言。
LLMS的多功能性取决于他们接受的数据量。通常,如果模型至少具有10亿个数据参数,则可以将其视为大型语言模型。 GPT-4具有超过1.7万亿的培训数据参数,GPT-3具有1750亿,PALM-2是PARES BARD的LLM,具有超过3600亿的参数。从它们的参数可以判断哪种模型是最广泛的。
现在,想象一下,如果您可以在数据库中部署这些训练有素的模型以获得见解,做出预测,了解您的用户,自动生成内容等等。 MindSDB是一种开源AI数据库中间件,可让您通过集成各种机器学习(ML)引擎来增强数据库。
在本文中,您将学习如何使用MINDSDB将LLMS部署到其中来增强数据库。
本文将涵盖有关使用MindSDB在数据库中使用LLM的所有需要了解的信息。在本文结束时,您将了解LLM可以如何增强数据库并帮助您执行NLP活动,例如文本/图像生成,文字处理,行为预测等。您还将获得必要的知识来部署数据库中的LLMS。鉴于这些要点,让我们先了解Mindsdb的意义来研究细节。
什么是Mindsdb
MindsDB是一种开源AI数据库中间件,它可以管理并连接AI模块与企业数据库。它是使用各种ML引擎部署LLM的完整解决方案
MindSDB允许您从Openai,拥抱面,Pytorch等ML引擎中创建AI模型。这些模型被抽象为生成AI表。为模型分配了一个提示模板,该模板告诉AI您想做什么以及您想要如何完成。例如,您可以根据OpenAI的GPT-4 LLM创建一个模型,以根据类型的类型自动回复您的产品评论 - 好,坏或中性。创建模型后,您将为它提供一个及时的模板,以了解该怎么做,在这种情况下,根据类型以及如何做响应评论 - 您可能希望该模型对不良评论作出道歉响应,良好的评论,并提供感谢信和中立的评论,并承诺做得更好。
MindSDB支持多个数据库,以便您可以快速连接数据库并开始轻松地执行NLP任务。支持MySQL,PostgreSQL,Oracle,Sqlite,QuestDB,CouchDB,MongoDB,AWS DynamoDB和许多其他数据库。它还支持多个应用程序,例如Twitter,Slack,Github,YouTube等,使您可以通过将数据库ML带到它们来增强这些应用程序。
让我们快速突出显示数据库中部署和使用LLM的优势。之后,我们将在数据库中部署GPT和DALL-E模型时进行实用的潜入。
数据库中使用LLM的优点
在数据库中使用LLM有很多优点。这里有几个:
- 做出有见地的预测:在数据库中使用大型语言模型可以帮助您从先前的数据中做出深刻的预测。例如,您可以根据可用属性(例如价格变化)来预测产品的未来价格变化。
- 内容生成和语言解释:LLMS允许您进行自然语言处理,例如文本生成,文本摘要,内容分析,语言解释等。
- 自动回答问题:您网站上的用户和访问者可以通过对您产品培训的AI模型自动回答他们的问题。它阻止用户等待几个小时才能支持员工回答简单的问题,例如什么是您的定价模型?
- 提高数据库的安全性:LLM可用于通过生成合成数据来测试数据库的安全性来提高数据库的安全性。
在数据库中使用LLM的优点是巨大的。鉴于这些要点,现在是时候了。让我们学习如何使用MindSDB中的数据库中使用GPT和DALL-E模型。
开始使用数据库中的LLM
我们将在数据库中部署并使用OpenAI的GPT和DALL-E LLM。我们将使用GPT模型分析和响应评论。响应将基于审核类型 - 我们将感谢您对肯定的审查的回应,对负面评论进行道歉,并承诺对中性审查做得更好。
对于DALL-E模型,我们将使用它来从文本描述中生成逼真的图像。我们可以告诉模型从输入文本中生成我们想要的任何图像。让我们进入。
先决条件
您需要一个MindsDB cloud account才能遵循本教程。如果您喜欢操作本地实例,也可以通过Docker或pip设置MindSDB。建议本教程使用MindSDB云帐户(它很容易设置,无需配置)。
连接数据库
MindSDB仅处理您的数据,但没有存储它。您需要将数据库连接到MindSDB以存储生成的数据。在此示例中,我们将连接并使用公共MySQL数据库作为我们的数据库。
CREATE DATABASE review_response
WITH ENGINE = 'mysql',
PARAMETERS = {
"user": "user",
"password": "MindsDBUser123!",
"host": "db-demo-data.cwoyhfn6bzs0.us-east-1.rds.amazonaws.com",
"port": "3306",
"database": "public"
};
我们给我们的数据库称为review_response
。让我们看一下数据库中的表列表。为此,运行以下SQL查询。
SHOW FULL TABLES FROM review_response;
此数据库中有18个表。我们将仅使用amazon_reviews
表。让我们看一下它的一些内容。
SELECT * FROM review_response.amazon_reviews
limit 3
我们选择了前3个产品评论。
product_name | 评论 |
---|---|
全新消防高清8片,8高清显示,Wi-Fi,16 GB-包括特别优惠,洋红色 | 给我孙子的晚礼物。他对此非常满意。对他来说很容易(9yo)。 |
全新消防高清8片,8高清显示,Wi-Fi,16 GB-包括特别优惠,洋红色 | 我对本机上的专有操作系统并不感到非常兴奋,但是它确实可以正常工作,并且可以做我需要做的事情。外观非常好,价格非常好,我不能抱怨太多 - 只是希望它更容易(或至少更明显)将新应用程序移植到它上。目前,它可以帮助我看到旅行时手机上太小的东西。我是一个快乐的买家。 |
全新消防高清8片,8高清显示,Wi-Fi,16 GB-包括特别优惠,洋红色 | 我购买了该Kindle Fire HD 8,以使用5和8岁的孙子使用。他们基本上使用它来玩您下载的亚马逊游戏。 |
使用OpenAI的GPT LLM基于审核类型生成响应
让我们创建一个模型,该模型将分析评论并根据审查类型生成回复。
CREATE MODEL review_response_model
PREDICT response
USING
engine = 'openai',
prompt_template = 'Give a short response to customers based on the review type.
"I love this product": "positive"
"It is not good" : "negative"
"The product is fair": "neutral"
If the review is negative, respond with an apology and promise to make it better.
If the review is positive, respond with a thank you and ask them to refer us to their friends.
If the review is neutral, respond with a promise to make it better next time they buy from us.
{{review}}';
api_key = 'YOUR_OPENAI_API_KEY';
我们创建了使用OpenAi的GPT引擎的模型,并将根据我们的prompt_template
提供每个评论的response
。 prompt_template
告诉AI模型我们想做什么以及我们希望如何完成。完成生成后,我们可以开始使用该模型(仅需几秒钟即可生成)。
注意
来使用
默认情况下,MindSDB使用gpt-3.5-turbo
模型,但是您可以通过将其传递到model-name
参数下的USING
子句。gpt-4
模型。
运行以下命令以检查我们刚刚创建的模型的状态:
DESCRIBE review_response_model
我们模型的状态是complete
,这意味着它已经完成了,我们可以开始使用它。在创建模型时,请不要忘记将打开的AI api_key
添加到参数列表中。
为方便起见,创建MindSDB ML引擎以容纳您的API键
CREATE ML_ENGINE openai2
FROM openai
USING
api_key = 'YOUR_OPENAI_API_KEY';
注意
如果您在脑海中,可以通过确认您的电子邮件地址来使用我的MindSDB使用API密钥。但是,MindSDB Pro用户必须提供OpenAI API密钥。
让S使用一些合成数据查询模型并查看响应。
SELECT review, response
FROM review_response_model
WHERE review = "I love this product so much. I am definitely going to buy more"
输出:
评论 | 响应 |
---|---|
我非常喜欢这个产品。我肯定会购买更多 | 感谢您的积极反馈!我们很高兴听到您喜欢我们的产品。如果您有任何也可能喜欢它的朋友或家人,如果您可以将它们推荐给我们,我们将非常感谢。我们期待将来再次为您服务! |
我们AI模型的响应看起来很棒。让我们再次尝试,这次是有一些负面评论
SELECT review, response
FROM review_response_model
WHERE review = "I hate this product. It didn't meet the description. You guys are fraud"
输出:
评论 | 响应 |
---|---|
我讨厌这个产品。它不符合描述。你们是欺诈 | 很遗憾得知您对我们的产品不满意。我们对造成的任何不便表示歉意。我们努力为客户提供最佳体验,我们希望做对。请与我们的客户支持团队联系,以便我们可以进一步为您提供帮助。感谢您引起我们的注意。 |
我们AI模型的巨大响应。现在,让我们对amazon_reviews
表中的评论进行批次预测。
SELECT input.review, output.response
FROM review_response.amazon_reviews AS input
JOIN review_response_model AS output
LIMIT 3;
输出:
评论 | 响应 |
---|---|
给我孙子的晚礼物。他对此非常满意。对他来说很容易(9yo)。 | 感谢您的积极评价!我们很高兴听到您的孙子对礼物感到满意。如果您有任何也可能喜欢我们的产品的朋友或家人,那么如果您可以将它们推荐给我们,我们将非常感谢。再次感谢您的支持! |
我对本机上的专有操作系统并不感到非常兴奋,但是它确实可以正常工作,并且可以做我需要做的事情。外观非常好,价格非常好,我不能抱怨太多 - 只是希望它更容易(或至少更明显)将新应用程序移植到它上。目前,它可以帮助我看到旅行时手机上太小的东西。我是一个快乐的买家。 | 根据提供的审查,情感是中性的。回复:谢谢您的反馈!感谢您的支持,并很高兴听到我们的产品满足您的需求。我们了解您对专有操作系统的担忧,我们一定会考虑您的反馈以进行未来的改进。如果您对我们如何使新应用程序更容易提出任何建议,请告诉我们。我们重视您的满意,并期待下次为您提供更好的服务。 |
我购买了5和8岁的孙子购买了此Kindle Fire HD 8。他们基本上使用它来玩您下载的亚马逊游戏。 | 感谢您的积极评价!我们很高兴听到您的孙子们享受Kindle Fire HD 8的游戏需求。如果您有任何也可能从该产品中受益的朋友或家人,如果您可以将它们推荐给我们,我们将非常感谢。再次感谢您的支持! |
编写良好的提示对于生成准确的内容至关重要。 AI模型使用您的提示来响应。因此,书面不良提示等于不准确的响应。
接下来,我们将学习如何使用OpenAi的Dall-E模型生成图像。
使用DALL-E LLM生成图像
CREATE MODEL image_generation_model
PREDICT img_url
USING
engine = 'openai',
mode = 'image',
prompt_template = '{{text}}, 4K | detailed and realistic portrait about money and finance | natural lighting | different currencies';
让我们使用文本生成图像。我们正在使用文字作为提示。
SELECT *
FROM image_generation_model
WHERE text = 'make money online';
输出:
您还可以从数据库内的文本中生成批处理图像。
结论
使用数据库中的大型语言模型可以通过帮助您从数据中获得见解,做出相关预测,了解用户行为并生成与上下文相关的类似人类的内容来帮助改善产品。 MindSDB允许您通过简化数据库中使用ML模型的过程来快速构建AI应用程序。这些模型默认情况下设计为准备生产,而无需ML OPS流。 MindSDB充当将数据库与流行的AI框架连接的中间件。默认情况下,它支持许多ML引擎,数据库和应用程序,从而使构建和部署ML模型的过程变得容易。要了解自己的可能性,请创建一个Mindsdb Free account并探索。
您是否需要为开发人员受众创建技术内容的帮助吗? Reach out和让我们一起工作。
无耻的插头
如果您发现我的内容很有价值且引人入胜,请考虑与您的网络共享,并在此处和Twitter上关注我。这对我来说意义重大。
我刚刚启动了我的新闻通讯,我将分享精心策划的技术文章和开发新闻。如果您喜欢学习有关开源软件,网络工程,软件工程,云和DevOps以及产品工程其他方面的知识,请加入我的readers’ list。