跳到主要内容
Open In ColabOpen on GitHub

OpenAI

注意

您当前查看的是关于使用 OpenAI 文本补全模型的文档页面。最新和最流行的 OpenAI 模型是聊天补全模型

除非您特别使用 gpt-3.5-turbo-instruct,否则您可能正在寻找此页面

OpenAI 提供了一系列具有不同能力级别、适用于不同任务的模型。

此示例介绍了如何使用 LangChain 与 OpenAI 模型交互。

概述

集成详情

类别本地可序列化JS 支持包下载量最新包版本
ChatOpenAIlangchain-openai测试版PyPI - DownloadsPyPI - Version

设置

要访问 OpenAI 模型,您需要创建一个 OpenAI 账户,获取 API 密钥,并安装 langchain-openai 集成包。

凭证

请前往 https://platform.openai.com 注册 OpenAI 并生成 API 密钥。完成后请设置 OPENAI_API_KEY 环境变量。

import getpass
import os

if "OPENAI_API_KEY" not in os.environ:
os.environ["OPENAI_API_KEY"] = getpass.getpass("Enter your OpenAI API key: ")

要启用模型调用的自动跟踪,请设置您的 LangSmith API 密钥

# os.environ["LANGSMITH_API_KEY"] = getpass.getpass("Enter your LangSmith API key: ")
# os.environ["LANGSMITH_TRACING"] = "true"

安装

LangChain OpenAI 集成位于 `langchain-openai` 包中。

%pip install -qU langchain-openai

如果您需要指定组织 ID,可以使用以下单元格。但是,如果您只属于一个组织或打算使用默认组织,则无需此操作。您可以在此处查看您的默认组织。

要指定您的组织,您可以使用此方法

OPENAI_ORGANIZATION = getpass()

os.environ["OPENAI_ORGANIZATION"] = OPENAI_ORGANIZATION

实例化

现在我们可以实例化模型对象并生成聊天补全

from langchain_openai import OpenAI

llm = OpenAI()
API 参考:OpenAI

调用

llm.invoke("Hello how are you?")
'\n\nI am an AI and do not have emotions like humans do, so I am always functioning at my optimal level. Thank you for asking! How can I assist you today?'

链式调用

from langchain_core.prompts import PromptTemplate

prompt = PromptTemplate.from_template("How to say {input} in {output_language}:\n")

chain = prompt | llm
chain.invoke(
{
"output_language": "German",
"input": "I love programming.",
}
)
API 参考:PromptTemplate
'\nIch liebe Programmieren.'

使用代理

如果您位于显式代理之后,可以指定 http_client 进行透传

%pip install httpx

import httpx

openai = OpenAI(
model_name="gpt-3.5-turbo-instruct",
http_client=httpx.Client(proxies="http://proxy.yourcompany.com:8080"),
)

API 参考

有关所有 OpenAI LLM 功能和配置的详细文档,请参阅 API 参考:https://python.langchain.ac.cn/api_reference/openai/llms/langchain_openai.llms.base.OpenAI.html