Skip to main content
您当前正在查看使用 OpenAI 文本补全模型的文档页面。最新且最流行的 OpenAI 模型是聊天补全模型除非您特别需要使用 gpt-3.5-turbo-instruct,否则您可能正在寻找此页面
OpenAI 提供适合不同任务、能力各异的系列模型。 本示例介绍如何使用 LangChain 与 OpenAI 模型进行交互。

概述

集成详情

本地可序列化JS 支持下载量版本
ChatOpenAIlangchain-openaibetaPyPI - DownloadsPyPI - Version

设置

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

凭证

前往 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()

调用

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.",
    }
)
'\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 参考:python.langchain.com/api_reference/openai/llms/langchain_openai.llms.base.OpenAI.html