方法
OpenAI(...) / ChatOpenAI(...):创建一个模型对象(非对话类/对话类)model.invoke(xxx):执行调用,将用户输入发送给模型.content:提取模型返回的实际文本内容
模型调用的方法
为了尽可能简化自定义链的创建,实现了一个 "Runnable" 协议 。许多LangChain组件都实现了 Runnable 协议 ,包括 聊天模型、提示词模板、输出解析器、检索器、代理(智能体)等。
Runnable 定义的公共的调用方法如下:
invoke: 处理单条输入,等待LLM完全推理完成后再返回调用结果stream: 流式响应,逐字输出LLM的响应结果batch: 处理批量输入
这些也有相应的异步方法,与 asyncio 的 await 语法 一起使用以实现并发:
astream: 异步流式响应ainvoke: 异步处理单条输入abatch: 异步处理批量输入astream_log: 异步流式返回中间步骤,以及最终响应astream_events: (测试版)异步流式返回链中发生的事件(在 langchain-core 0.1.14 中引入)
属性参数
- 必须设置的参数:
base_url:大模型 API 服务的根地址api_key:用于身份验证的密钥,由大模型服务商(如 OpenAI、百度千帆)提供model/model_name:指定要调用的具体大模型名称(如 gpt-4-turbo 、 ERNIE-3.5-8K 等)
- 其它参数:
-
temperature:温度,控制生成文本的"随机性",取值范围为0~1。- 值越低 → 输出越确定、保守(适合事实回答)
- 值越高 → 输出越多样、有创意(适合创意写作)
- 通常,根据需要设置如下:
- 精确模式(0.5或更低):生成的文本更加安全可靠,但可能缺乏创意和多样性。
- 平衡模式(通常是0.8):生成的文本通常既有一定的多样性,又能保持较好的连贯性和准确性。
- 创意模式(通常是1):生成的文本更有创意,但也更容易出现语法错误或不合逻辑的内容。
-
max_tokens:限制生成文本的最大长度,防止输出过长。