I. 在终端中导入OpenAI API密钥

要将OpenAI API密钥导入系统环境中,需要进行以下步骤:

A. 打开终端

首先,打开终端或命令提示符窗口。

B. 运行以下命令:echo “export OPENAI_API_KEY=’yourkey'” >> ~/.zshrc

然后,在终端窗口中运行上述命令。这将把您的API密钥添加到.zshrc文件中。

  • 1. 将yourkey替换为您的API密钥
  • 2. 将API密钥导入到.zshrc文件中

下面是一个示例命令:

echo "export OPENAI_API_KEY='abcdefg123456789'" >> ~/.zshrc

II. 在系统环境变量中添加OpenAI API密钥

要将OpenAI API密钥添加到系统环境变量中,可以依照以下步骤进行操作:

A. 访问https://platform.openai.com

首先,在您的浏览器中访问https://platform.openai.com。

B. 如果还没有创建账号,请注册一个新账号

如果您还没有注册OpenAI账号,请点击页面上的”Create an account”按钮进行注册。

C. 点击”API keys”选项

注册并成功登录后,点击页面上的”API keys”选项。

D. 将API密钥添加到系统环境变量中

在”API keys”页面上,将您的API密钥添加到系统环境变量中。具体操作方式可能因操作系统而异,请根据页面上的说明进行操作。

III. 使用命令设置OpenAI API密钥

您还可使用命令来设置OpenAI API密钥。请依照以下步骤进行操作:

A. 打开终端或命令提示符窗口

首先,打开终端或命令提示符窗口。

B. 输入以下命令:export OPENAI_API_KEY=<your-api-key>

接下来,在终端或命令提示符窗口中输入上述命令。

  • 1. 将<your-api-key>替换为您的API密钥

以下是一个示例命令:

export OPENAI_API_KEY="abcdefg123456789"

IV. 将OpenAI API密钥设置为环境变量

除使用命令设置OpenAI API密钥外,您还可以将其设置为环境变量。请依照以下步骤进行操作:

A. 运行以下命令:export OPENAI_API_KEY=”your-api-key”

在终端或命令提示符窗口中运行上述命令。

  • 1. 将your-api-key替换为您的API密钥

以下是一个示例命令:

export OPENAI_API_KEY="abcdefg123456789"

V. 在Python中使用OpenAI API密钥

在Python中使用OpenAI API密钥需要遵守以下步骤:

A. 在终端窗口中输入以下命令:echo $OPENAI_API_KEY

首先,打开终端窗口,并输入上述命令。

  • 1. 您可以查看API密钥会不会正确导入

B. 在Python中使用导入的API密钥

在Python代码中,您可使用已导入的API密钥进行OpenAI API调用。

import openai

# 设置API密钥
openai.api_key = "abcdefg123456789"

# 在此处编写API调用代码

VI. 在Windows命令提示符中设置OpenAI API密钥

如果您正在使用Windows操作系统,可以依照以下步骤在Windows命令提示符中设置OpenAI API密钥:

A. 使用以下命令在Windows命令提示符中设置API密钥:openai –api-key <OPENAI_API_KEY> api fine_tunes.create -t “[yourfilelocationhere]” -m

在Windows命令提示符中运行上述命令。

VII. 通过导出命令设置OpenAI API密钥

除直接设置API密钥外,您还可以通过导出命令来设置OpenAI API密钥。请依照以下步骤进行操作:

A. 运行以下命令:export OPENAI_API_KEY=’your-api-key-here’

在终端或命令提示符窗口中运行上述命令。

  • 1. 确保将”your-api-key-here”替换为您的实际API密钥

以下是一个示例命令:

export OPENAI_API_KEY='abcdefg123456789'

export openai_api_key的进一步展开说明

快速开始

安装

要安装LangChain,请运行以下命令:

使用pip:

“`shell
pip install langchain
“`

使用conda:

“`shell
conda install langchain -c conda-forge
“`

详细信息请参阅我们的安装指南。

使用LangChain

使用LangChain通常需要与一个或多个模型提供商、数据存储、API等进行集成。在本示例中,我们将使用OpenAI的模型API。

首先,我们需要安装他们的Python软件包:

“`shell
pip install openai
“`

访问API需要一个API密钥,您可以通过创建一个帐户并前往该网址取得。一旦获得到密钥,我们需要将其设置为环境变量,可以通过以下命令运行:

“`shell
export OPENAI_API_KEY=”…”
“`

如果您不想设置环境变量,您可以在初始化OpenAI LLM类时直接通过openai_api_key命名参数传递密钥:

“`python
from langchain.llms import OpenAI

llm = OpenAI(openai_api_key=”…”)
“`

现在,我们可以开始构建我们的语言模型利用程序。LangChain提供了许多可以用于构建语言模型利用程序的模块。模块可以作为独立的组件在简单的利用程序中使用,它们可以组合在一起用于更复杂的用例。

LangChain利用程序的核心构建块是LLMChain。LLMChain由三部份组成:

– LLM(Language Model):这是核心的推理引擎。为了使用LangChain,您需要了解区别类型的语言模型和如何与它们一起使用。
– Prompt Templates(提示模板):这提供了对语言模型的指点。这控制语言模型的输出,因此理解如何构建提示和区别的提示策略相当重要。
– Output Parsers(输出解析器):这些将LLM的原始响应转换为更可操作的格式,使得易于在下游使用输出。

在本入门指南中,我们将独立介绍这三个组件,然后再介绍怎样使用LLMChain组合它们。了解这些概念将为您能够使用和定制LangChain利用程序提供很好的基础。大多数LangChain利用程序允许您配置LLM和/或使用的提示,因此了解如何利用这一点将成为一个重要的辅助工具。

LangChain中有两种类型的语言模型:

– LLMs:这是一种接受字符串作为输入并返回字符串的语言模型。
– ChatModels:这是一种接受消息列表作为输入并返回消息的语言模型。

LLMs的输入/输出是简单易懂的,就是一个字符串。但是ChatModels的输入是一个ChatMessage列表,输出是单个ChatMessage。ChatMessage有两个一定要的组成部份:

– content(内容):消息的内容。
– role(角色):ChatMessage来自的实体的角色。

LangChain提供了几个对象,用于轻松辨别区别角色:

– HumanMessage:来自人类/用户的ChatMessage。
– AIMessage:来自人工智能/助手的ChatMessage。
– SystemMessage:来自系统的ChatMessage。
– FunctionMessage:来自函数调用的ChatMessage。

如果没有合适的角色,也能够在ChatMessage类中手动指定角色。有关如何有效使用这些区别类型的消息的更多信息,请参阅我们的提示指南。

LangChain为二者提供了标准接口,但了解这类区分可以帮助您为给定的语言模型构建提示。LangChain提供的标准接口有两种方法:

– predict:接受字符串,返回字符串。
– predict_messages:接受消息列表,返回消息。

让我们看看怎样使用这些区别类型的模型和输入。首先,让我们导入一个LLM和一个ChatModel。

“`python
from langchain.llms import OpenAI
from langchain.chat_models import ChatOpenAI

llm = OpenAI()
chat_model = ChatOpenAI()
“`

OpenAI和ChatOpenAI对象基本上只是配置对象。您可使用参数进行初始化,如温度等,并将它们传递。

接下来,让我们使用predict方法运行一个字符串输入。

“`python
text = “What would be a good company name for a company that makes colorful socks?”

llm.predict(text)

>>>”Hi”

chat_model.predict(text)

>>>”Hi”
“`

ChatOpenAI和OpenAI对象只是配置对象。您可使用参数进行初始化,如温度等,并将它们传递。

最后,让我们使用predict_messages方法在消息列表上运行。

“`python
from langchain.schema import HumanMessage

text = “What would be a good company name for a company that makes colorful socks?”

messages = [HumanMessage(content=text)]

llm.predict_messages(messages)

chat_model.predict_messages(messages)
“`

对这两种方法,您还可以通过关键字参数传递参数。例如,可以传递temperature=0来调剂运行时所使用的温度,该值会覆盖配置对象中的温度。不管以何种方式传递值,始终会覆盖配置对象中的值。

大多数LLM利用程序不会将用户输入直接传递给LLM。通常,它们会将用户输入添加到一个更大的文本片断中,称为提示模板,用于提供有关特定任务的额外上下文。

在上一个示例中,我们传递给模型的文本包括了生成公司名称的唆使。对我们的利用程序,如果用户只需提供公司/产品的描写而没必要担心给模型提供指令,那将是很好的。PromptTemplates可以帮助实现这个目标!它们将所有将用户输入转换为完全格式化的提示的逻辑进行了整合。这可以非常简单地开始-例如,用于生成上述字符串的提示模板只需是:

“`python
from langchain.prompts import PromptTemplate

prompt = PromptTemplate.from_template(“What is a good name for a company that makes {product}?”)

prompt.format(product=”colorful socks”)

“`

输出: What is a good name for a company that makes colorful socks?

但是,使用这些模板的优势是多方面的。您可以“部份化”变量-例如一次只格式化一些变量。您可以将它们组合在一起,轻松地将区别的模板组合成一个单一的提示。关于这些功能的详细说明,请参阅有关提示的部份。

PromptTemplates还可以用于生成消息列表。在这类情况下,提示不但包括有关内容的信息,还包括每一个消息的信息(其角色、其在列表中的位置等)。这里,最常产生的情况是ChatPromptTemplate是ChatMessageTemplate列表。每一个ChatMessageTemplate都包括了该ChatMessage的格式化指令-其角色和其内容。让我们在下面看一下这个例子:

“`python
from langchain.prompts.chat import (
ChatPromptTemplate,
SystemMessagePromptTemplate,
HumanMessagePromptTemplate,
)

template = “You are a helpful assistant that translates {input_language} to {output_language}.”
system_message_prompt = SystemMessagePromptTemplate.from_template(template)

human_template = “{text}”
human_message_prompt = HumanMessagePromptTemplate.from_template(human_template)

chat_prompt = ChatPromptTemplate.from_messages([system_message_prompt, human_message_prompt])

chat_prompt.format_messages(input_language=”English”, output_language=”French”, text=”I love programming.”)

“`

输出:
“`
[
SystemMessage(content=”You are a helpful assistant that translates English to French.”, additional_kwargs={}),
HumanMessage(content=”I love programming.”)
]
“`

ChatPromptTemplates还可以包括除ChatMessageTemplates之外的其他内容-有关更多详细信息,请参阅有关提示的部份。

OutputParsers将LLM的原始输出转换为可在下游使用的格式。其中主要有几种类型的OutputParsers:

– 将LLM的文本转换为结构化信息(例如JSON)。
– 将ChatMessage转换为仅字符串。
– 将调用返回的消息以外的额外信息(如OpenAI函数调用)转换为字符串。

请参阅输出解析器部份以取得完全信息。

在本入门指南中,我们将编写自己的输出解析器-将以逗号分隔的列表转换为列表。

“`python
from langchain.schema import BaseOutputParser

class CommaSeparatedListOutputParser(BaseOutputParser):
“””Parse the output of an LLM call to a comma-separated list.”””

def parse(self, text: str):
“””Parse the output of an LLM call.”””
return text.strip().split(“, “)

CommaSeparatedListOutputParser().parse(“hi, bye”)
“`

我们现在可以将所有这些组合成一个链。这个链将接受输入变量,将其传递给提示模板以创建提示,然后将提示传递给LLM,最后通过(可选的)输出解析器将输出传递。这是一种方便的方式来捆绑一个模块化逻辑块。
让我们看看它是如何运作的!

“`python
from langchain.chat_models import ChatOpenAI
from langchain.prompts.chat import (
ChatPromptTemplate,
SystemMessagePromptTemplate,
HumanMessagePromptTemplate
)
from langchain.chains import LLMChain
from langchain.schema import BaseOutputParser

class CommaSeparatedListOutputParser(BaseOutputParser):
“””Parse the output of an LLM call to a comma-separated list.”””

def parse(self, text: str):
“””Parse the output of an LLM call.”””
return text.strip().split(“, “)

template = “””You are a helpful assistant who generates comma-separated lists.
A user will pass in a category, and you should generate 5 objects in that category in a comma-separated list.
ONLY return a comma-separated list, and nothing more.”””

system_message_prompt = SystemMessagePromptTemplate.from_template(template)

human_template = “{text}”
human_message_prompt = HumanMessagePromptTemplate.from_template(human_template)

chat_prompt = ChatPromptTemplate.from_messages([system_message_prompt, human_message_prompt])

chain = LLMChain(
llm=ChatOpenAI(),
prompt=chat_prompt,
output_parser=CommaSeparatedListOutputParser()
)

chain.run(“colors”)
“`

这就是了!我们现在已了解了怎样创建LangChain利用程序的核心构建块-LLMChains。在所有这些组件(LLMs、提示、输出解析器)中还有更多的细微差别,还有更多要学习的区别组件。要继续您的旅程,请:

export openai_api_key的常见问答Q&A

问题1:关键词是甚么?

答案:关于关键词,它是为了安全性而使用的一种身份验证方式,用于访问和控制API的使用。API Key通常由系统管理员创建,并提供给其他用户用于确保他们具有对API的访问权限。

  • API Key是一个由字母和数字组成的字符串。
  • 它可以用作身份验证信息,以便API可以辨认和授权用户。
  • API Key的长度可以根据具体需求而定,但通常它足够复杂,以确保安全性。

问题2:怎么将OpenAI API密钥添加到系统环境中?

答案:要将OpenAI API密钥添加到系统环境中,请依照以下步骤操作:

  1. 在终端中运行以下命令,将”yourkey”替换为您的API密钥:echo "export OPENAI_API_KEY='yourkey'" >> ~/.zshrc
  2. 更新shell以使更改生效,以便您的利用程序可使用该API密钥。

问题3:怎样在Python中使用OpenAI API?

答案:要在Python中使用OpenAI API,请依照以下步骤操作:

  1. 首先,确保已将OpenAI API密钥添加到系统环境中。
  2. 在Python脚本中,导入OpenAI库:import openai
  3. 使用openai.Completion.create()方法来创建API要求,并传递相应的参数。
  4. 获得API的响应并进行处理,在其中包括生成的文本或其他所需结果。

问题4:怎样使用Python和OpenAI构建自定义的ChatGPT?

答案:要使用Python和OpenAI构建自定义的ChatGPT,请依照以下步骤操作:

  1. 首先,确保已将OpenAI API密钥添加到系统环境中。
  2. 导入所需的Python库和OpenAI库。
  3. 使用OpenAI的ChatGPT模型来实现对话的生成和交互。
  4. 根据需要,对生成的文本进行后处理和调剂。

问题5:如何确保API密钥的安全性?

答案:为了确保API密钥的安全性,以下是一些最好实践:

  1. 不要将API密钥直接暴露在代码中,而是将其存储在环境变量中。
  2. 仅将API密钥提供给必要的人员,并且定期更改密钥,以减少潜伏的安全风险。
  3. 使用访问控制列表(ACL)或IP白名单策略,限制对API密钥的访问。
  4. 监控API密钥的使用情况,并定期审察访问日志,以便及时发现任何异常活动。

ChatGPT相关资讯

ChatGPT热门资讯

X

截屏,微信识别二维码

微信号:muhuanidc

(点击微信号复制,添加好友)

打开微信

微信号已复制,请打开微信添加咨询详情!