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

邯郸制作网站搜索引擎优化的重要性

邯郸制作网站,搜索引擎优化的重要性,专业建设企业网站,在线免费高清logo一、关于ChatGPT Prompting概述 当我们使用ChatGPT或者调用OpenAI的API时,就是在使用prompt进行交互,用户在对话过程中输入的一切信息都是prompt(提示词),当然工业级的prompt与人们通常理解的prompt可能不太一样。下面…

一、关于ChatGPT Prompting概述

当我们使用ChatGPT或者调用OpenAI的API时,就是在使用prompt进行交互,用户在对话过程中输入的一切信息都是prompt(提示词),当然工业级的prompt与人们通常理解的prompt可能不太一样。下面是LangChain源码中的“retrieval_qa”模块里的prompt.py文件:

# flake8: noqa

from langchain.prompts import PromptTemplate

prompt_template = """Use the following pieces of context to answer the question at the end. If you don't know the answer, just say that you don't know, don't try to make up an answer.

{context}

Question: {question}

Helpful Answer:"""

PROMPT = PromptTemplate(

    template=prompt_template, input_variables=["context", "question"]

)

其中核心字段“prompt_template”定义了如何使用prompt进行推理。

在前面谈plugin开发时,谈到在开发的应用中,不仅仅是执行tasks,而且需要执行actions,这时就需要agent的参与。下面的架构图展示了用户在与ChatGPT进行交互时agent是如何来执行actions的:

二、基于工业级的源码来解析prompt engineering

LangChain框架一个核心的聚焦点就是agent,其中包括两个重要的模块“react”和“mrkl”。首先我们来看下“mrkl” 部分:

在这个模块中有一个prompt文件,“Question”部分定义了输入的问题,而“Thought”部分,从task的角度来讲就是在回答问题的过程中形成的具体步骤,譬如用户问ChatGPT如何做一道菜,那么给出的回答会涉及到做菜的一系列的步骤,这就是一个所谓“思考”的过程,在涉及具体的“Action”时,说到的是具体的工具的名称,也就是需要有一个东西来调用工具,这就是agent起到的核心作用或者说它要做的事情:

关于Action input,语言模型需要知道某个步骤的输入是什么,而Observation则指调用工具之后返回的结果,这个结果会作为new context返回给ChatGPT,“action”,“action input”和“observation”共同构成了一个反复迭代的过程(类似一个for循环),直到完成“thought”(可以看做是for循环需要满足的条件)部分给出的这样一个“thinking process”的过程,在这个过程中的一系列任务(a list of tasks)是由模型来产生的,这具有重要的意义,举例来说,譬如一个教育产品,老师给学生安排任务,不同的学生具有不同的学习能力,不同的状态,不同的学习时间安排等等,这些信息都可以作为context,不同学生面对的是同样的问题,但是加入不同的context之后,对于LLM来说,产生的步骤就可能不太一样,这就是一个“adaptive learning process”,即从原来的规则系统变成了以模型为驱动的动态调整学习的过程。这样的一个prompt示例可以看做是一个工业级的写法。

在base文件部分,主要用于生成agent,所谓“ZeroShotAgent”就是不需要提供示范:

在下面创建prompt的方法中,提供了参数“tools”,模型会根据配置中的“description_for_model”的内容来决定使用哪个工具:

LangChain提供了以模板化的方法来构建prompt:

通过参数llm和prompt构建一个chain,然后构建tools’ list,告诉模型可以调用哪些工具:

这个类基于前面设定的条件来执行,类似一个service或者server的概念:

这个类中定义了使用chain来查询信息的方法:

这里给出了如下样例,譬如调用SerpAPIWrapper方法进行信息的检索,在chain的配置中给出两个actions,一个是做搜索,一个是进行科学计算:

from langchain import LLMMathChain, OpenAI, SerpAPIWrapper, MRKLChain

from langchain.chains.mrkl.base import ChainConfig

                llm = OpenAI(temperature=0)

                search = SerpAPIWrapper()

                llm_math_chain = LLMMathChain(llm=llm)

                chains = [

                    ChainConfig(

                        action_name = "Search",

                        action=search.search,

                        action_description="useful for searching"

                    ),

                    ChainConfig(

                        action_name="Calculator",

                        action=llm_math_chain.run,

                        action_description="useful for doing math"

                    )

                ]

有了这些配置后,就可以把LLM作为reasoning engine,在需要的时候调用工具进行查询,通过方法from_llm_and_tools构建了一个agent的实例:

http://www.hkea.cn/news/17808/

相关文章:

  • wordpress 会议 主题推广排名seo
  • 源码开发网站建设sem与seo的区别
  • 如何查网站的空间防恶意点击软件
  • 单位网站建设收费标准互联网推广引流
  • 网站有中文源码加英文怎么做关键词歌词完整版
  • 建设网站企业银行做网站的平台
  • 如何进行网站建设分析网站推广app软件
  • 做ppt的软件模板下载网站网站服务公司
  • 网站icp备案认证怎么做谷歌网页版入口在线
  • 高安网站建设艺考培训
  • 主流的网站开发技术百度推广后台管理
  • 传奇网站模板免费下载优化网络搜索引擎
  • 提升学历报考什么专业比较好seosem顾问
  • 做违法网站犯法吗推广费用一般多少钱
  • 网站版权该怎么做呢五种常用的网站推广方法
  • 周宁县建设局网站关键词挖掘站网
  • 做第三方团购的平台网站全网线报 实时更新
  • 六安建六安建设网站seo推广代理
  • 网站建设管理经验免费推广渠道有哪些
  • 网站备案信息真实性核验单 打印规格北京百度搜索优化
  • 网站建设有没有十大搜索引擎网站
  • 电子商务实网站的建设课件网站的优化策略方案
  • 喀什网站建设公司营销网络的建设
  • 药店网站模板营销软件代理推广
  • 站长工具seo综合查询columbu cat新闻今天的最新新闻
  • 网站托管哪家公司好常见的网络营销模式
  • 注册公司是在哪里办理seo建站工具
  • 做收集信息的网站域名seo查询
  • 云南省建设执业注册管理中心网站怎么优化自己网站的关键词
  • 怎么做北京赛车网站软文范文大全1000字