首页 > 其他分享 >选择器示例

选择器示例

时间:2024-04-07 10:13:10浏览次数:22  
标签:prompt 示例 import 选择器 output input example

from langchain_community.embeddings import OllamaEmbeddings
from langchain_community.llms.ollama import Ollama
from langchain_community.vectorstores.faiss import FAISS
from langchain_core.example_selectors import SemanticSimilarityExampleSelector
from langchain_core.prompts import ChatPromptTemplate, PromptTemplate, FewShotPromptTemplate

llm = Ollama(model="qwen:7b")

template = '''
    示例输入:{input}, 示例输出:{output}
'''
example_prompt = PromptTemplate(
    input_variables=['input','output'],
    template=template
)

examples = [
    {"input":"海盗", "output":"船"},
    {"input":"飞行员", "output":"飞机"},
    {"input":"驾驶员", "output":"车"},
    {"input":"树", "output":"地面"},
    {"input":"鸟", "output":"鸟巢"}
]

#调用示例选择器
#SemanticSimilarityExampleSelector 将根据语义选择与您的输入相似的示例
example_selector = SemanticSimilarityExampleSelector.from_examples(
    #可供选择的示例模板
    examples,
    #测量语义相似性的嵌入的嵌入类
    OllamaEmbeddings(),
    #存储嵌入和进行相似搜索的Vectortore类
    FAISS,
    #要生成的示例数
    k=2
)


similar_propt = FewShotPromptTemplate(
    #有助于选择示例的对象
    example_selector = example_selector,
    #提示词
    example_prompt = example_prompt,
    #将添加到提示顶部和底部的自定义项
    prefix = "根据下面示例,写出输出",
    suffix = "输入:{noun}\n输出:",
    #你的提示词接受的输入
    input_variables=['noun']
)

final_prompt = similar_propt.format(noun='硬盘')
print()

response = llm(final_prompt)

print(response)

 

标签:prompt,示例,import,选择器,output,input,example
From: https://www.cnblogs.com/redhat0019/p/18118481

相关文章

  • Android Graphics 多屏同显/异显 - C++示例程序(标准版)
    ”为了理解Android多屏同显/异显的基本原理,我们将从NativeLevel入手,基于GraphicsAPIs写作一个简单的C++版本的多屏显示互动的演示程序。通过这个程序我们将了解常用的多屏显示相关的接口的使用方法。“  01多屏显示C++示例概况 源码下载请查看文章末尾源码下载方......
  • React19 新特性 – 附带代码示例的更新
    ReactJS是前端开发世界中最流行的UI库之一。我喜欢React的原因之一就是它背后的团队以及社区对它的热情。当社区提出对新功能和改进的需求时,团队会倾听。React的未来令人兴奋而有趣。如果我必须用一句话来总结,我会说这几乎概括了一切:“少写代码,多实现功能。”在本......
  • 如何使用CSS变量 - 通过代码示例解释
    如果你正在构建网站或Web应用程序,你应该已经知道代码重复被认为是一种不良实践。这就是为什么你应该学习如何使用CSS变量来减少你编写的CSS代码量并将你的样式带到一个新的水平。最成功的Web应用程序拥有令人惊叹的设计。不幸的是,为了达到预期的效果,Web开发人员需要准备大量的样......
  • 配置交换机双归接入IP网络示例(V-STP方式推荐)
    组网需求如图4-23所示,通过配置M-LAG双归接入IP网络可以满足以下要求:当一条接入链路发生故障时,流量可以快速切换到另一条链路,保证可靠性。为了高效利用带宽,两条链路同时处于active状态,可实现使用负载分担的方式转发流量。图4-23 配置M-LAG双归接入IP组网图配置思......
  • 配置M-LAG双归接入普通以太网络示例(根桥方式)
    组网需求如图4-22所示,采用M-LAG方式将主机双归接入普通以太网络。由于用户对于业务的可靠性要求很高,如果主机和接入设备之间做链路聚合只能保证链路级的可靠性,接入设备发生故障时则会导致业务中断。这时用户可以采用跨设备链路聚合技术,正常工作时链路进行负载分担且任何一台......
  • Vue3 Diff 之 patchKeyedChildren 动态示例
    在学习全网学习各路大神的关于Vue3Diff算法分析文章的时候,一定离不开关键方法patchKeyedChildren。patchKeyedChildren处理的场景比较多,大致有5个主要过程。如果你希望查看不同测试用例下,patchKeyedChildren具体的内部处理过程,可以尝试一下这个:《Vue3Diff之patchKey......
  • 【WPF应用34】WPF基本控件-Menu的详解与示例
    WPF(WindowsPresentationFoundation)是.NET框架的一个部分,用于构建桌面应用程序的用户界面。在WPF中,菜单(Menu)是一种常用的控件,用于提供一组选项或命令,使用户可以根据自己的需要执行特定的操作。本文将详细介绍WPF中的Menu控件,包括其基本用法、属性和事件。同时,我们将通过一......
  • 排序代码示例
    冒泡排序#include<iostream>usingnamespacestd;intmain(){ intm[]={6,8,44,7,9,34,64,1}; for(intj=0;j<8;j++){ for(inti=j+1;i<8;i++){ if(m[j]>m[i]){ swap(m[j],m[i]); } } } for(inti=0;i<8;i++){ cout<<m[i]<<......
  • 艾科瑞特科技:计算机视觉-图像示例替换
    艾科瑞特科技:计算机视觉-图像示例替换关键词:目标检测、目标跟踪、图像识别、图像分类、视频分析、自然语言处理、自然语言分析、计算机视觉、人工智能、AIGC、AI、大模型、多模态大模型、API、Docker、镜像、API市场、云市场、国产软件、信创内容摘要:图像示例替换技术利用先......
  • 数据分析的利器,Pandas 软件包详解与应用示例
    左手编程,右手年华。大家好,我是一点,关注我,带你走入编程的世界。公众号:一点sir在中土大地上,有一位名为"数据剑客"的江湖人士,他手持一柄闪烁着银光的利剑,剑法犀利,能够破解数据的种种奥秘。传言他曾在一场数据风暴中横扫八方,击溃了无数数据乱象,以无情的数据剑法征服了各路数据恶徒......