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

潘家园网站建设专业找图片的网站

潘家园网站建设,专业找图片的网站,抖音推广平台入口,哪些网站是php做的有时我们希望在调用代理时能够对其进行配置。这包括配置使用哪个语言模型(LLM)等例子。下面我们将通过一个示例来详细介绍如何进行这样的配置。 在介绍 configurable 之前我们先介绍一下 Langchain 的 RunnableConfig。RunnableConfig是一个配置对象&…

有时我们希望在调用代理时能够对其进行配置。这包括配置使用哪个语言模型(LLM)等例子。下面我们将通过一个示例来详细介绍如何进行这样的配置。
在介绍 configurable 之前我们先介绍一下 Langchain 的 RunnableConfig。RunnableConfig是一个配置对象,用于自定义运行链(Chain)、工具(Tool)或任何可运行组件的行为。它允许我们控制执行过程中的各种参数和行为,是LangChain统一接口的重要组成部分。
它的主要功能和属性包括:

  1. callbacks: 允许你注册回调函数,在执行过程中的不同阶段触发,用于日志记录、监控或调试。
  2. tags:为执行添加标签,便于追踪和分类。
  3. metadata: 添加元数据信息,可用于记录额外的上下文信息。
  4. run_name:为当前运行指定一个名称,在追踪和日志中使用。
  5. configurable: 允许你在运行时动态配置组件。 运行时为此Runnable或子Runnable上通过.configurable_fields()或.configurable_alternatives()方法之前设为可配置的属性提供的值。查看.output_schema()获取已设为可配置的属性的描述。
  6. max_concurrency: 控制并发执行的最大数量。
  7. recursion_limit: 设置递归调用的最大次数。如果未提供,则默认为25。
  8. run_id: 这是调用的追踪器运行的唯一标识符。如果未提供,将生成一个新的UUID。

定义图

首先我们先创建一个非常简单的图:

import operator
from typing import Annotated, Sequence
from typing_extensions import TypedDictfrom langchain_openai import ChatOpenAI
from langchain_core.messages import BaseMessage, HumanMessagefrom langgraph.graph import END, StateGraph, STARTmodel = ChatOpenAI(model_name="gpt-4o-mini")class AgentState(TypedDict):messages: Annotated[Sequence[BaseMessage], operator.add]def _call_model(state):# state["messages"]response = model.invoke(state["messages"])return {"messages": [response]}# Define a new graph
builder = StateGraph(AgentState)
builder.add_node("model", _call_model)
builder.add_edge(START, "model")
builder.add_edge("model", END)graph = builder.compile()from IPython.display import display, Image
display(Image(graph.get_graph().draw_mermaid_png()))

得到如下图
在这里插入图片描述

configurable

然后为了扩展这个例子以允许用户从多个语言模型(LLM)中进行选择,并通过配置传递这些信息,我们可以将配置信息放在一个名为 configurable 的 key 内。这种方式可以确保配置信息与输入数据分离,不作为状态的一部分进行跟踪。

from langchain_openai import ChatOpenAI
from typing import Optional
from langchain_core.runnables.config import RunnableConfigopenai_model = ChatOpenAI(model_name="gpt-3.5-turbo")models = {"openai_old": model,"openai": openai_model,
}def _call_model(state: AgentState, config: RunnableConfig):# Access the config through the configurable keymodel_name = config["configurable"].get("model", "openai_old")model = models[model_name]response = model.invoke(state["messages"])return {"messages": [response]}# Define a new graph
builder = StateGraph(AgentState)
builder.add_node("model", _call_model)
builder.add_edge(START, "model")
builder.add_edge("model", END)graph = builder.compile()from IPython.display import display, Image
display(Image(graph.get_graph().draw_mermaid_png()))

然后我们调用这个选择特定配置的图,

graph.invoke({"messages": [HumanMessage(content="hi")]})

得到结果

{'messages': [HumanMessage(content='hi', additional_kwargs={}, response_metadata={}),AIMessage(content='Hello! How can I assist you today?', additional_kwargs={'refusal': None}, response_metadata={'token_usage': {'completion_tokens': 9, 'prompt_tokens': 8, 'total_tokens': 17, 'completion_tokens_details': {'accepted_prediction_tokens': 0, 'audio_tokens': 0, 'reasoning_tokens': 0, 'rejected_prediction_tokens': 0}, 'prompt_tokens_details': {'audio_tokens': 0, 'cached_tokens': 0}}, 'model_name': 'gpt-4o-mini-2024-07-18', 'system_fingerprint': 'fp_b705f0c291', 'finish_reason': 'stop', 'logprobs': None}, id='run-78fbb4d3-e64e-41dc-871f-fe08e3317f07-0', usage_metadata={'input_tokens': 8, 'output_tokens': 9, 'total_tokens': 17, 'input_token_details': {'audio': 0, 'cache_read': 0}, 'output_token_details': {'audio': 0, 'reasoning': 0}})]}

我们可以通过传入配置来调用它,以使其使用不同的模型。

config = {"configurable": {"model": "openai"}}
graph.invoke({"messages": [HumanMessage(content="hi")]}, config=config)

得到下面结果

{'messages': [HumanMessage(content='hi', additional_kwargs={}, response_metadata={}),AIMessage(content='Hello! How can I assist you today?', additional_kwargs={'refusal': None}, response_metadata={'token_usage': {'completion_tokens': 9, 'prompt_tokens': 8, 'total_tokens': 17, 'completion_tokens_details': None, 'prompt_tokens_details': None}, 'model_name': 'gpt-3.5-turbo-0125', 'system_fingerprint': 'fp_0165350fbb', 'finish_reason': 'stop', 'logprobs': None}, id='run-1fe66150-1579-4bba-b35f-06c3f66cd2d2-0', usage_metadata={'input_tokens': 8, 'output_tokens': 9, 'total_tokens': 17, 'input_token_details': {}, 'output_token_details': {}})]}

我们还可以调整图形以进行更多配置!例如系统消息。
首先我们可以定义一个配置模式(config schema)来指定图的配置选项,配置模式有助于指明在可配置字典(configurable dict)中有哪些字段可用。

from langchain_core.messages import SystemMessageclass ConfigSchema(TypedDict):model: Optional[str]system_message: Optional[str]def _call_model(state: AgentState, config: RunnableConfig):# Access the config through the configurable keymodel_name = config["configurable"].get("model", "openai_old")model = models[model_name]messages = state["messages"]if "system_message" in config["configurable"]:messages = [SystemMessage(content=config["configurable"]["system_message"])] + messagesresponse = model.invoke(messages)return {"messages": [response]}# 定义一个新的图 —— 注意我们在这里传入了配置模式,但这一步并不是必需的
workflow = StateGraph(AgentState, ConfigSchema)
workflow.add_node("model", _call_model)
workflow.add_edge(START, "model")
workflow.add_edge("model", END)graph = workflow.compile()

得到下面结果:

graph.invoke({"messages": [HumanMessage(content="hi")]})
{'messages': [HumanMessage(content='hi', additional_kwargs={}, response_metadata={}),AIMessage(content='Hello!', additional_kwargs={}, response_metadata={'id': 'msg_01VgCANVHr14PsHJSXyKkLVh', 'model': 'claude-2.1', 'stop_reason': 'end_turn', 'stop_sequence': None, 'usage': {'input_tokens': 10, 'output_tokens': 6}}, id='run-f8c5f18c-be58-4e44-9a4e-d43692d7eed1-0', usage_metadata={'input_tokens': 10, 'output_tokens': 6, 'total_tokens': 16})]}
config = {"configurable": {"system_message": "用韩语回答"}}
graph.invoke({"messages": [HumanMessage(content="您好")]}, config=config)
{'messages': [HumanMessage(content='您好', additional_kwargs={}, response_metadata={}),AIMessage(content='안녕하세요! 어떻게 도와드릴까요?', additional_kwargs={'refusal': None}, response_metadata={'token_usage': {'completion_tokens': 10, 'prompt_tokens': 16, 'total_tokens': 26, 'completion_tokens_details': {'accepted_prediction_tokens': 0, 'audio_tokens': 0, 'reasoning_tokens': 0, 'rejected_prediction_tokens': 0}, 'prompt_tokens_details': {'audio_tokens': 0, 'cached_tokens': 0}}, 'model_name': 'gpt-4o-mini-2024-07-18', 'system_fingerprint': 'fp_ded0d14823', 'finish_reason': 'stop', 'logprobs': None}, id='run-1046d220-3a32-4792-9665-0a14528f9d53-0', usage_metadata={'input_tokens': 16, 'output_tokens': 10, 'total_tokens': 26, 'input_token_details': {'audio': 0, 'cache_read': 0}, 'output_token_details': {'audio': 0, 'reasoning': 0}})]}

文章转载自:

http://PqeecNea.fwdLn.cn
http://DuSnTJqC.fwdLn.cn
http://k1p0Q3fF.fwdLn.cn
http://L3uj6LvI.fwdLn.cn
http://kasHtbFJ.fwdLn.cn
http://ij7LciaZ.fwdLn.cn
http://raKAcTot.fwdLn.cn
http://tg1mUo7B.fwdLn.cn
http://SbE2uljO.fwdLn.cn
http://r0NyNRlC.fwdLn.cn
http://wKbU56xH.fwdLn.cn
http://q4eO6A6A.fwdLn.cn
http://ksFDPSLv.fwdLn.cn
http://WrbW8asv.fwdLn.cn
http://pPfjBtDY.fwdLn.cn
http://AKmd7ogF.fwdLn.cn
http://p9xmpv34.fwdLn.cn
http://bdB3c8vt.fwdLn.cn
http://qENHlz6e.fwdLn.cn
http://2q6aaXcE.fwdLn.cn
http://cgISH6IS.fwdLn.cn
http://QmUNy9xm.fwdLn.cn
http://RdHrcbu6.fwdLn.cn
http://sfP29rAd.fwdLn.cn
http://xiHCPjVy.fwdLn.cn
http://zIZiPEmk.fwdLn.cn
http://bx2o5fRJ.fwdLn.cn
http://F04IloTs.fwdLn.cn
http://sIszPvQU.fwdLn.cn
http://wV1iHh5w.fwdLn.cn
http://www.dtcms.com/wzjs/681586.html

相关文章:

  • 西安做网站 好运网络网站制作套餐
  • 网站技术制作流程图织梦网站去除技术支持
  • 网站开发用了哪些知识要点注册公司网上核名网站
  • 网站制作收费软件技术跟网站开发有关系吗
  • 用PS做网站搜索框东莞网络推广运营企业
  • 公司做网站建设济宁网站建设排行
  • 国外网站页面做多大3合一网站怎么做
  • 上海专业网站建设多少钱开发区实验小学
  • 做网站按页面收费网络服务有哪些与影响
  • 1000并发视频网站企业vi手册
  • wordpress设置百度站长主动推送企业有域名怎么做网站
  • 深圳南山区住房和建设局网站笔记本电脑做网站比较畅快
  • 个人承接网站开发广州交易中心官网
  • 合肥 网站运营随州网站制作
  • 紫金保险车险官方网站seopc流量排行榜企业
  • 做网站制作的百度站长网站验证
  • 网站开发工具的功能石家庄网页设计师培训班
  • 金华兰溪网站建设wordpress主题36氪
  • 好的手机网站网络运营推广
  • 网站建设旗帜条幅成都房产信息网 官网
  • 做网站的基础架构网站建设属于哪个税目
  • 公司没注册可以做网站吗家在坪山业主论坛家在深圳
  • 网站制作容易吗织梦做商城类网站好做吗
  • 盗版电影网站建设成本全网营销推广系统
  • 网站建设 手机开发公司土地评估费计入土地价款
  • 重庆市建设工程信息官方网站wordpress全景主题
  • 如何设计个人网站成都彩蝶花卉网站建设案例
  • app下载网站模板做网站要准备什么资料
  • 亚马逊中国网站建设目标建好网站后访问
  • 有哪些网站可以免费做外销idc网站模板