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

禅城南庄网站制作公司地址怎么弄在百度上显示

禅城南庄网站制作,公司地址怎么弄在百度上显示,网站办公室文化建设,100件机械创意产品设计文章目录 一、提示词追加示例 FewShotPromptTemplate二、使用示例选择器 example_selector三、关键类介绍3.1 PromptTemplate3.2 FewShotPromptTemplate3.3 SemanticSimilarityExampleSelector 提示词中包含交互样本的作用是为了帮助模型更好地理解用户的意图,从而更…

文章目录

  • 一、提示词追加示例 FewShotPromptTemplate
  • 二、使用示例选择器 example_selector
  • 三、关键类介绍
    • 3.1 PromptTemplate
    • 3.2 FewShotPromptTemplate
    • 3.3 SemanticSimilarityExampleSelector

提示词中包含交互样本的作用是为了帮助模型更好地理解用户的意图,从而更好地回答问题或执行任务。
小样本提示模板是指使用一组少量的示例来指导模型处理新的输入。 这些示例可以用来训练模型,以便模型可以更好地理解和回答类似问题。


本章所有的大语言模型采用 deepseek-r1:7b

from langchain_ollama import ChatOllama
llm = ChatOllama(model="deepseek-r1:7b", 
)

一、提示词追加示例 FewShotPromptTemplate

下面定义一个examples示例数组,里面包含一组问答样例。

将examples都丢给大模型,大模型会参考examples内容,进行分析。有点像RAG。
相当于提前准备好一个知识库,llm根据知识库来做一些归纳总结。

from langchain_core.prompts import PromptTemplate, FewShotPromptTemplate
examples = [{"question": "穆罕默德·阿里和艾伦·图灵谁的寿命更长?","answer": """这里需要跟进问题吗?是的跟进: 穆罕默德·阿里去世时多大?中间答案: 穆罕默德·阿里去世时74岁跟进: 艾伦·图灵去世时多大?中间答案: 艾伦·图灵去世时41岁最终答案: 穆罕默德·阿里"""},{"question": "《大白鲨》和《007:皇家赌场》的导演都来自同一个国家吗?","answer": """这里需要跟进问题吗?是的跟进: 《大白鲨》的导演是谁?中间答案: 《大白鲨》的导演是Steven Spielberg跟进: Steven Spielberg来自哪里?中间答案: 美国跟进: 《007:皇家赌场》的导演是谁?中间答案: 007:皇家赌场》的导演是Martin Campbell跟进: Martin Campbell来自哪里?中间答案: 新西兰最终答案: 不是"""}
]example_template = """
问题:{question}
{answer} \\n
"""
# 实例化 PromptTemplate 模板example_template = PromptTemplate(input_variables=["question","answer"], # 包含模板中的所有变量template=example_template)  # 表示提示模板的字符串,待填充的变量位置# example_template.format(**examples[0])prompt = FewShotPromptTemplate(examples=examples,  # 多个示例,一般是一个字典prefix="问答题", ## 示例之前要添加的文本example_prompt=example_template, # 对象,为示例的格式suffix="问题:{input}", # 示例之后要添加的文本  input_variables=["input"],example_separator="\\n" # 用于分割多个示例
)
message = prompt.format(input="《大白鲨》的导演是谁")
print(prompt.format(input="《大白鲨》的导演是谁")) #将输入格式对象格式化为字符串提示
print(llm.invoke(message).content)

二、使用示例选择器 example_selector

将示例提供给ExampleSelector
这里将前一部分的示例集和提示词模板,但是不会将示例直接提供给FewShotPromptTemplate对象,
把全部示例插入到提示词中,而是将他们提供给一个ExampleSelector对象,插入部分示例

这里我们使用SemanticSimilarityExampleSelector类,该类根据与输入的相似性选择小样本示例。

它使用嵌入模型计算输入与小样本示例之间的相似性,然后使用向量数据库执行相似度搜索。

  • 提示:这里涉及向量计算、向量数据库,在AI领域这两个主要用于数据相似度搜索,列入查询相似文章内容、相似图片、视频等。
from langchain_ollama import OllamaEmbeddingsfrom langchain.prompts.example_selector import SemanticSimilarityExampleSelector #使用语义相似性实力选择器
from langchain_community.vectorstores import Chroma
deepseek_embedding = OllamaEmbeddings(model="deepseek-r1:7b", 
)example_selector = SemanticSimilarityExampleSelector.from_examples(examples, # 提供可选择的示例列表deepseek_embedding, # 用于生成嵌入的嵌入类Chroma,  # 用于存储嵌入和执行相似性搜索的VectorStore类k=1, # 这是生成的示例数
)dynamic_prompt = FewShotPromptTemplate(example_selector=example_selector,prefix="问答题", ## 示例之前要添加的文本example_prompt=example_template, # 对象,为示例的格式suffix="问题:{input}", # 示例之后要添加的文本  input_variables=["input"],example_separator="\\n" # 用于分割多个示例
)
message = prompt.format(input="《大白鲨》的导演是谁") #  最后生成的模板就包含跟问题相关的示例
print(prompt.format(input="《大白鲨》的导演是谁")) #将输入格式对象格式化为字符串提示
print(llm.invoke(message).content)

三、关键类介绍

3.1 PromptTemplate

是 LangChain 中用于创建动态提示的核心类,它允许用户定义一个包含变量的模板字符串,并通过输入变量生成具体的提示内容

PromptTemplate 的主要功能是将模板字符串和输入变量结合,生成用于语言模型的提示。它支持动态填充变量,使得提示可以根据不同的输入生成不同的内容

主要属性

  • input_variables:一个字符串列表,指定模板中需要动态填充的变量名称
  • template:模板字符串,其中可以包含占位符(如 {variable_name}),用于动态替换

主要方法

  • format():根据输入变量的值,将模板字符串中的占位符替换为实际值,生成最终的提示内容。
  • from_template():类方法,通过模板字符串直接创建 PromptTemplate 实例,LangChain 会自动推断 input_variables。

3.2 FewShotPromptTemplate

是 LangChain 中用于构建带有少量示例(Few-shot examples)的提示模板的类。它通过向语言模型提供一些示例输入和对应的输出,帮助模型更好地理解任务要求,从而生成更准确的响应。

主要功能是将少量示例与用户输入结合,生成一个完整的提示,供语言模型使用。这些示例作为上下文信息,帮助模型理解任务的模式和要求。

主要属性

  • examples:一个包含示例的列表,每个示例是一个字典,包含输入和输出。
  • example_prompt:一个 PromptTemplate 对象,用于格式化每个示例。
  • prefix:在所有示例之前添加的文本,通常用于说明任务要求。
  • suffix:在所有示例之后添加的文本,通常包含用户输入的占位符。
  • input_variables:用户输入的变量名称列表。
  • example_separator:用于分隔示例的字符串,默认为换行符。

主要方法

  • format():根据输入变量和示例生成完整的提示。
  • invoke():调用语言模型,生成响应。

3.3 SemanticSimilarityExampleSelector

根据语义相似度动态选择示例的工具。它通过计算输入与示例之间的余弦相似度,选择与输入最相关的示例。
主要功能是根据输入的语义相似度动态选择示例。它通过以下步骤实现:

  1. 使用嵌入模型(如 OpenAIEmbeddings)将输入和示例转换为嵌入向量。
  2. 计算输入嵌入与示例嵌入之间的余弦相似度。
  3. 根据相似度选择最相关的示例。

主要属性

  • k:表示要选择的示例数量,默认为 4。
  • vectorstore:用于存储嵌入向量并执行相似度搜索的向量存储类。
  • input_keys:可选参数,指定用于搜索的输入变量。
  • example_keys:可选参数,指定过滤示例的键。

主要方法

  • from_examples():用于创建 SemanticSimilarityExampleSelector 实例。它需要提供示例列表、嵌入模型和向量存储类。
  • add_example():向向量存储中添加新的示例。
  • select_examples():根据输入变量选择最相关的示例
select_examples = example_selector.select_examples({"question": "穆罕默德·阿里和艾伦·图灵谁的寿命更长"})
http://www.dtcms.com/wzjs/85832.html

相关文章:

  • 宣汉网站建设广告素材
  • 营销网站设计推广app的软文案例
  • 中企动力做的 石子厂网站武汉seo网站优化排名
  • 搜索引擎营销的四种方式海外seo是什么
  • 做资料网站是自己建服务器好还是租用好广州seo全网营销
  • 哪个网站可以帮人做ppt百度指数人群画像
  • 网页前端培训seo排名如何
  • 高安网站建设关键词生成器
  • 企业建设官方网站的目的如何外贸推广
  • 网页设计和网站开发有什么区别seo长尾关键词排名
  • 天猫开店的入驻流程重庆seo网页优化
  • 山东乐陵疫情最新消息今天优化关键词具体要怎么做
  • 常州企业网站新媒体seo培训
  • wordpress使用阿里云cdn天津seo托管
  • 泉州市城乡建设委员会网站推广网页
  • 网站建设难点分析友情贴吧
  • wordpress页面菜单保定seo博客
  • 如何注册新账号东莞网站关键词优化公司
  • seo网站做推广 seo won
  • 手机网站与电脑网站兼容seo实战培训教程
  • 网站建设最新签约登封网站关键词优化软件
  • 成都自适应网站建设网上电商怎么做
  • 音乐网站怎么建设销售新人怎么找客户
  • 网站和网店的区别百度电脑网页版
  • 快速网站模板公司网站制作费用
  • 左右网站模版免费建网站最新视频教程
  • 招聘网站怎么做seo百度关键词点击价格查询
  • 北京网站建设seo优化2345网址导航浏览器下载
  • 阿里云做网站要几天关键词排名优化公司外包
  • wordpress code 标签seo专业推广