当前位置: 首页 > news >正文

05网课时作业答案windows7优化大师

05网课时作业答案,windows7优化大师,wordpress 外部调用,网站域名怎么过户分类目录:《自然语言处理从入门到应用》总目录 特征存储是传统机器学习中的一个概念,它确保输入模型的数据是最新和相关的。在考虑将LLM应用程序投入生产时,这个概念非常重要。为了个性化LLM应用程序,我们可能希望将LLM与特定用户…

分类目录:《自然语言处理从入门到应用》总目录


特征存储是传统机器学习中的一个概念,它确保输入模型的数据是最新和相关的。在考虑将LLM应用程序投入生产时,这个概念非常重要。为了个性化LLM应用程序,我们可能希望将LLM与特定用户的最新信息结合起来。特征存储可以是保持数据更新的好方法,而LangChain提供了一种将该数据与LLM结合的简单方式。

在下面的示例中,我们将展示如何将提示模板连接到特征存储。其基本思想是从提示模板中调用特征存储以检索值,然后将这些值格式化到提示中。

Feast

首先,我们将使用流行的开源特征存储框架Feast。首先,假设我们已经做完了Feast的入门步骤。紧接着,我们将基于入门示例构建,并创建一个LLMChain,用于驱动有关其最新统计信息。

加载 Feast 存储

根据Feast的README中的说明进行设置:

from feast import FeatureStore# 根据存储路径进行更新
feast_repo_path = "../../../../../my_feature_repo/feature_repo/"
store = FeatureStore(repo_path=feast_repo_path)
提示

在这里,我们将设置一个自定义的FeastPromptTemplate。这个提示模板将接收一个司机 ID,查找他们的统计数据,并将这些统计数据格式化到提示中。需要注意的是,这个提示模板的输入只有driver_id,因为这是唯一由用户定义的部分,所有的其它变量都在提示模板内部查找。

from langchain.prompts import PromptTemplate, StringPromptTemplate
template = """根据司机的最新统计数据,写一个便签将这些统计数据传达给他们。
如果他们的对话率超过0.5,请给他们一个赞美。否则,在最后讲一个关于鸡的愚蠢笑话,让他们感觉好一些。以下是司机的统计数据:
对话率:{conv_rate}
接受率:{acc_rate}
平均每日行程数:{avg_daily_trips}你的回复:"""
prompt = PromptTemplate.from_template(template)
class FeastPromptTemplate(StringPromptTemplate):def format(self, **kwargs) -> str:driver_id = kwargs.pop("driver_id")feature_vector = store.get_online_features(features=['driver_hourly_stats:conv_rate','driver_hourly_stats:acc_rate','driver_hourly_stats:avg_daily_trips'],entity_rows=[{"driver_id": driver_id}]).to_dict()kwargs["conv_rate"] = feature_vector["conv_rate"][0]kwargs["acc_rate"] = feature_vector["acc_rate"][0]kwargs["avg_daily_trips"] = feature_vector["avg_daily_trips"][0]return prompt.format(**kwargs)
prompt_template = FeastPromptTemplate(input_variables=["driver_id"])
print(prompt_template.format(driver_id=1001))

输出:

根据司机的最新统计数据,写一个便签将这些统计数据传达给他们。
如果他们的对话率超过0.5,请给他们一个赞美。否则,在最后讲一个关于鸡的愚蠢笑话,让他们感觉好一些。以下是司机的统计数据:
对话率:0.4745151400566101
接受率:0.055561766028404236
平均每日行程数:936你的回复:

在上面的例子中,我们创建了一个FeastPromptTemplate的实例,并使用format方法为特定的driver_id生成一个提示。使用store.get_online_features从特征存储中检索司机的特征向量,并将相关统计数据填充到提示模板中。现在,我们可以将生成的提示文本用于进一步处理或作为输入提供给您的语言模型。

在链式结构中使用

现在我们可以在链式结构中使用它,创建一个由特征存储支持的个性化链式结构:

from langchain.chat_models import ChatOpenAI
from langchain.chains import LLMChain
chain = LLMChain(llm=ChatOpenAI(), prompt=prompt_template)
chain.run(1001)

输出:

"嗨!我想向您更新一下您当前的统计数据。您的接受率为0.055561766028404236,平均每日行程数为936。虽然您当前的对话率为0.4745151400566101,但我相信只要再加一点努力,您就能超过0.5的标准!继续保持良好的工作!还记得,即使鸡无法总是穿过马路,但它们仍会尽力而为。"

以上是根据提供的统计数据生成的更新消息。消息中包含司机的接受率、平均每日行程数和对话率的信息。鼓励司机继续努力工作,并给予他们一些鸡的笑话来增加一些轻松的氛围。

Tecton

上面,我们展示了如何在LangChain中使用流行的开源自管特征存储Feast。下面的示例将展示如何使用Tecton进行类似的集成。Tecton是一个完全托管的特征平台,用于协调完整的ML特征生命周期,从转换到在线服务,具备企业级SLA。

前提条件
  • Tecton部署
  • TECTON_API_KEY环境变量设置为有效的服务账户密钥
定义和加载特征

我们将使用Tecton教程中user_transaction_counts的Feature View作为Feature Service的一部分。为简单起见,我们只使用了一个Feature View;然而,更复杂的应用可能需要更多的Feature View来检索其提示所需的特征。

user_transaction_metrics = FeatureService(name="user_transaction_metrics",features=[user_transaction_counts]
)

上述Feature Service预计将被应用到实时工作空间中。在本示例中,我们将使用prod工作空间。

import tectonworkspace = tecton.get_workspace("prod")
feature_service = workspace.get_feature_service("user_transaction_metrics")
Prompts

在这里,我们将设置一个自定义的TectonPromptTemplate。该提示模板将接收一个用户ID,查找其统计数据,并将这些统计数据格式化为提示。需要注意的是,该提示模板的输入只有user_id,因为这是唯一由用户定义的部分,所有其他的变量都在提示模板内部查找。

from langchain.prompts import PromptTemplate, StringPromptTemplate
template = """给定供应商的最新交易统计数据,根据以下规则给他们写一封信:1. 如果他们在过去一天内有交易,向他们祝贺最近的销售成绩。
2. 如果过去一天没有交易,但过去30天内有交易,逗趣地鼓励他们多卖一些。
3. 最后总是加上一个关于鸡的愚蠢笑话。以下是供应商的统计数据:
过去一天的交易数量:{transaction_count_1d}
过去30天的交易数量:{transaction_count_30d}您的回复:"""
prompt = PromptTemplate.from_template(template)
class TectonPromptTemplate(StringPromptTemplate):def format(self, **kwargs) -> str:user_id = kwargs.pop("user_id")feature_vector = feature_service.get_online_features(join_keys={"user_id": user_id}).to_dict()kwargs["transaction_count_1d"] = feature_vector["user_transaction_counts.transaction_count_1d_1d"]kwargs["transaction_count_30d"] = feature_vector["user_transaction_counts.transaction_count_30d_1d"]return prompt.format(**kwargs)prompt_template = TectonPromptTemplate(input_variables=["user_id"])
print(prompt_template.format(user_id="user_469998441571"))

输出:

给定供应商的最新交易统计数据,根据以下规则给他们写一封信:如果他们在过去一天内有交易,向他们祝贺最近的销售成绩。
如果过去一天没有交易,但过去30天内有交易,逗趣地鼓励他们多卖一些。
最后总是加上一个关于鸡的愚蠢笑话。
以下是供应商的统计数据: 过去一天的交易数量:657 过去30天的交易数量:20326您的回复:
在链式模型中使用

现在我们可以在链式模型中使用它,创建一个通过Tecton Feature平台支持的个性化链式模型:

from langchain.chat_models import ChatOpenAI
from langchain.chains import LLMChain
chain = LLMChain(llm=ChatOpenAI(), prompt=prompt_template)
chain.run("user_469998441571")

输出:

'哇,恭喜您最近的销售成绩!您的业务就像热气球上的一只鸡一样飞得很高!继续保持良好的工作!'

Featureform

最后,我们将使用Featureform,一个开源的企业级特征存储,来运行相同的示例。Featureform允许我们使用Spark等基础设施或本地环境来定义特征转换。

初始化Featureform

我们可以按照README中的说明初始化Featureform中的转换和特征。

import featureform as ffclient = ff.Client(host="demo.featureform.com")
Prompts

在这里,我们将设置一个自定义的FeatureformPromptTemplate,该提示模板将使用用户每笔交易的平均金额作为输入。需要注意的是,该提示模板的输入只有avg_transaction,因为所有其他变量都在提示模板内部查找。

from langchain.prompts import PromptTemplate, StringPromptTemplate
template = """Given the amount a user spends on average per transaction, let them know if they are a high roller. Otherwise, make a silly joke about chickens at the end to make them feel betterHere are the user's stats:
Average Amount per Transaction: ${avg_transcation}Your response:"""
prompt = PromptTemplate.from_template(template)
class FeatureformPromptTemplate(StringPromptTemplate):def format(self, **kwargs) -> str:user_id = kwargs.pop("user_id")fpf = client.features([("avg_transactions", "quickstart")], {"user": user_id})return prompt.format(**kwargs)prompt_template = FeatureformPrompTemplate(input_variables=["user_id"])
print(prompt_template.format(user_id="C1410926"))
在对话链中使用

现在我们还可以将其用于对话链中,成功创建一个由Featureform Feature平台支持的个性化对话链。

from langchain.chat_models import ChatOpenAI
from langchain.chains import LLMChain
chain = LLMChain(llm=ChatOpenAI(), prompt=prompt_template)
chain.run("C1410926")

参考文献:
[1] LangChain 🦜️🔗 中文网,跟着LangChain一起学LLM/GPT开发:https://www.langchain.com.cn/
[2] LangChain中文网 - LangChain 是一个用于开发由语言模型驱动的应用程序的框架:http://www.cnlangchain.com/

http://www.hengruixuexiao.com/news/15091.html

相关文章:

  • 微商城网站建设多少钱中国今天最新军事新闻
  • wordpress adsense主题排名优化软件点击
  • wordpress整站备份插件小网站搜什么关键词好
  • 怎么制作图片文件夹seo线下培训班
  • 公司网站怎么备案游戏推广工作好做吗
  • 网站制作模版各种网站
  • 职称论文写作网站网站关键词搜索排名优化
  • 怎么做代理网站今日国内新闻头条
  • 一个备案号可以放几个网站精准客源推广引流
  • WordPress图片处理工具上海做网络口碑优化的公司
  • 建设工程教育网官网下载厦门seo专业培训学校
  • 网站如何做淘宝联盟推广做一个企业网站大概需要多少钱
  • 网站开发技术与vb如何创建网站的快捷方式
  • 山东网站建设都有那些下载安装百度
  • 怎么开发一个网页济南网络优化哪家专业
  • 如何在外管局网站做延期关键词搜索引擎
  • 做网站建设有哪些公司女生学市场营销好吗
  • 网站群建设规范宁波正规seo推广公司
  • 查询网站的外链苏州seo网站系统
  • ag bbin 网站开发百度写作助手
  • 什么是二级网站推广网站在线客服系统 免费
  • 炫酷网站界面设计如何有效的推广宣传
  • 肇庆网站关键词优化快链友情链接平台
  • 加强网站党建建设广州seo网站开发
  • 用ps做网站的临摹找关键词
  • 网站url结构免费推广平台排行榜
  • 黄山注册公司冯宗耀seo教程
  • dw内部网站链接怎么做补习班
  • 专做影视评论的网站南宁百度快速排名优化
  • 毕节网站建设兼职网页制作软件