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

e时代网站制作国外域名购买网站

e时代网站制作,国外域名购买网站,四川最新情况最新消息今天,成都好玩还是重庆好玩LangChain学习文档 【LangChain】向量存储(Vector stores)【LangChain】向量存储之FAISS【LangChain】Prompts之Prompt templates【LangChain】Prompts之自定义提示模板 概要 假设我们希望LLM生成给定函数名称的英语解释。为了实现此任务,我们将创建一个自定义提示…

LangChain学习文档

  • 【LangChain】向量存储(Vector stores)
  • 【LangChain】向量存储之FAISS
  • 【LangChain】Prompts之Prompt templates
  • 【LangChain】Prompts之自定义提示模板

概要

假设我们希望LLM生成给定函数名称的英语解释。为了实现此任务,我们将创建一个自定义提示模板,该模板将函数名称作为输入,并格式化提示模板以提供函数的源代码。

为什么需要自定义提示模板?

LangChain提供了一组默认的提示模板,可用于生成各种任务的提示。但是,在某些情况下,默认的提示模板可能无法满足我们的需求。例如,我们可能想要创建一个提示模板,其中包含适合我们的语言模型的特定动态指令。在这种情况下,您可以创建自定义提示模板。

在此处查看当前的默认提示模板集。

创建自定义提示模板(Creating a Custom Prompt Template)

本质上有两种不同的提示模板可用 - 字符串提示模板聊天提示模板

一、字符串提示模板提供字符串格式的简单提示。

二、聊天提示模板生成更结构化的提示以与聊天 API 一起使用。

在本指南中,我们将使用字符串提示模板创建自定义提示。

要创建自定义字符串提示模板,有两个要求:

① 它有一个 input_variables 属性,该属性公开提示模板所需的输入变量。
② 它公开了一个格式方法,该方法接受与预期的 input_variables 相对应的关键字参数并返回格式化的提示。

我们将创建一个自定义提示模板,它将函数名称作为输入,并格式化提示以提供函数的源代码。为了实现这一点,我们首先创建一个函数,该函数将返回给定名称的函数的源代码。

import inspectdef get_source_code(function_name):# 获取函数的源码return inspect.getsource(function_name)

接下来,我们将创建一个自定义提示模板,它将函数名称作为输入,并格式化提示模板以提供函数的源代码。

from langchain.prompts import StringPromptTemplate
from pydantic import BaseModel, validator#给定函数名称和源代码,生成该函数的英语解释。
#函数名称:{函数名称}
#源代码:
#{源代码}
#解释:
PROMPT = """\
Given the function name and source code, generate an English language explanation of the function.
Function Name: {function_name}
Source Code:
{source_code}
Explanation:
"""class FunctionExplainerPromptTemplate(StringPromptTemplate, BaseModel):"""A custom prompt template that takes in the function name as input, and formats the prompt template to provide the source code of the function."""@validator("input_variables")def validate_input_variables(cls, v):# 验证输入变量是否正确。"""Validate that the input variables are correct."""if len(v) != 1 or "function_name" not in v:# 提示错误,函数名称必须唯一raise ValueError("function_name must be the only input_variable.")return vdef format(self, **kwargs) -> str:# 获取函数的源码source_code = get_source_code(kwargs["function_name"])# 生成要发送到语言模型的提示# __name__是当前模块名prompt = PROMPT.format(function_name=kwargs["function_name"].__name__, source_code=source_code)return promptdef _prompt_type(self):return "function-explainer"

参考api:

  • StringPromptTemplate from langchain.prompts

使用自定义提示模板(Use the custom prompt template)

现在我们已经创建了自定义提示模板,我们可以使用它来为我们的任务生成提示。

fn_explainer = FunctionExplainerPromptTemplate(input_variables=["function_name"])# 生成函数“get_source_code”的提示
prompt = fn_explainer.format(function_name=get_source_code)
print(prompt)

结果:

    给定函数名称和源代码,生成该函数的英语解释。函数名称: get_source_code源码:def get_source_code(function_name):# Get the source code of the functionreturn inspect.getsource(function_name)Explanation:

总结

本文讲解的就是如何创建自定义提示:

  1. 先定义一个包含变量的字符串,变量用{},如:
"""\
Given the function name and source code, generate an English language explanation of the function.
Function Name: {function_name}
Source Code:
{source_code}
Explanation:
"""
  1. 使用PROMPT.format(xxx)函数,进行格式化,如:
prompt = PROMPT.format(function_name=kwargs["function_name"].__name__, source_code=source_code)

参考地址:

https://python.langchain.com/docs/modules/model_io/prompts/prompt_templates/custom_prompt_template

http://www.yayakq.cn/news/667826/

相关文章:

  • 莆田专业网站建设公司价格网站推广一般在哪个网做
  • 个人单页网站建设微信电商小程序
  • 游民星空是用什么做的网站营销策略理论有哪些
  • 网站怎么做成软件辽宁省建设工程信息网官网查询
  • html网页模板网站php建设网站后台
  • 网站栏目代码宁波专业做网站公司
  • idea建设完整的网站怎样做网站导购
  • 可以做业务推广的网站有哪些模板网站有后台么
  • 做网站需要多长时间上传到网站
  • 网站开发 李博js动效网站
  • 上海网站建设自学推广比较好的网站有哪些
  • 没人注意的暴利行业百度seo运营工作内容
  • 包头市做网站公司百度做网站骗人到哪里去投诉
  • 如何免费创建网站平台微信公众号网页制作
  • 网站备案查询流程广州方舱医院最新消息
  • 做视频网站 带宽多少才合适邵阳高端网站建设
  • 网站建设需要做的事情广元建设银行网站
  • 电子商务网站设计是什么韩国设计交流网站
  • 芸志建站怎么建立网站好的域名推荐
  • 网站设计中 查询怎么做站长工具网
  • 前程无忧做网站多少钱长沙做网站nn微联讯点很好
  • 技术支持 郑州做网站国展做网站的公司
  • 鲜花网站模板下载破解要钱网站
  • 如何入侵网站服务器如何去推广一个网站
  • 文昌市规划建设管理局网站网络设计的任务是什么
  • 北京做网站开发的公司品牌查询网站 优帮云
  • 网站打不开别人能打开公众号 同步 wordpress
  • 长治在网络做推广长沙网站seo哪家公司好
  • 网站和网站的app网站建设系统总体结构功能图
  • 企业网站色彩国字型网页布局